NEWS
Zugriff auf eine JSON Tabelle
-
Hallo,
ich bräuchte mal Hilfe. Ich habe es mit Node Red hinbekommen die Anruferliste aus meiner Telefonanlage anzuzeigen, Dies passiert über eine JSON Tabelle in der vis. Nun würde ich gerne per Telegram eine Mitteilung senden, verpasster Anruf. Aber wie kann ich auf einzelne Zelle in der Tabelle zugreifen?
-
Für ein konkretes Beispiel wäre es gut wenn du die JSO-Tabelle mal posten könntest…
-
Sehr gerne, allerdings steht bei den Objekten kein Text sondern immer nur [Object] wie kann ich mir den String denn anzeigen lassen?
-
allerdings steht bei den Objekten kein Text sondern immer nur [Object] wie kann ich mir den String denn anzeigen lassen? `
Dann ist es kein JSON, sondern ein Objekt, aus dem man zur Anzeige einen JSON-String machen muss.log(JSON.stringify(obj));
-
so geht's
var anrufer= "node-red.0.Anrufe"; var loggen=false; // Logausgaben aktiveren var obj; var anrufname; var anrufnummer; var anrufdatum; var anrufzeit; var anrufmeldung; on ({id: anrufer, change: "ne"}, function () { obj = getState("node-red.0.Anrufe").val; anrufname = JSON.stringify(obj[0].extName); anrufnummer = JSON.stringify(obj[0].extRufNr); anrufdatum = JSON.stringify(obj[0].datum); anrufzeit = JSON.stringify(obj[0].startZeit); if (anrufname==='""') {anrufname="Unbekannt"} anrufmeldung="Anruf von "+anrufname+" ("+anrufnummer+") am "+anrufdatum+" um "+anrufzeit+"."; //log(anrufmeldung.replace(/"/g, "")); sendTo('telegram.0', { text: anrufmeldung.replace(/"/g, ""), disable_notification: false }); });
-
anrufname = JSON.stringify(obj[0].extName); anrufnummer = JSON.stringify(obj[0].extRufNr); anrufdatum = JSON.stringify(obj[0].datum); anrufzeit = JSON.stringify(obj[0].startZeit); ```` `
Das JSON.stringify wird wahrscheinlich nicht benötigt, da die 4 Eigenschaften des Objektes sicherlich Strings enthalten. JSON.stringify(obj) wird nur benötigt, wenn man ein Objekt in einen JSON-String wandeln will (z.B., um das Objekt anzuzeigen).