NEWS
Json 2 Datenpunkt
-
Hallo zusammen,
folgendes Script:
var url = "https://connect.paj-gps.de/api/customer";
var XMLHttpRequest = require('xhr2');
var xhr = new XMLHttpRequest();
xhr.open("GET", url);xhr.setRequestHeader("Accept", "application/json");
xhr.setRequestHeader("Authorization", "Bearer MeinToken");xhr.onreadystatechange = function () {
if (xhr.readyState === 4) {
console.log(xhr.status);
console.log(xhr.responseText);
}};xhr.send();
liefert mir in"xhr.responseText" einen JSON Datensatz.
Nun möchte ich eizene Werte in Datenpunkte schreiben.Kann mir jemand helfen ???
Vielen Dank,
Michael -
Hallo zusammen,
folgendes Script:
var url = "https://connect.paj-gps.de/api/customer";
var XMLHttpRequest = require('xhr2');
var xhr = new XMLHttpRequest();
xhr.open("GET", url);xhr.setRequestHeader("Accept", "application/json");
xhr.setRequestHeader("Authorization", "Bearer MeinToken");xhr.onreadystatechange = function () {
if (xhr.readyState === 4) {
console.log(xhr.status);
console.log(xhr.responseText);
}};xhr.send();
liefert mir in"xhr.responseText" einen JSON Datensatz.
Nun möchte ich eizene Werte in Datenpunkte schreiben.Kann mir jemand helfen ???
Vielen Dank,
Michaelgelöscht
-
Hallo zusammen,
folgendes Script:
var url = "https://connect.paj-gps.de/api/customer";
var XMLHttpRequest = require('xhr2');
var xhr = new XMLHttpRequest();
xhr.open("GET", url);xhr.setRequestHeader("Accept", "application/json");
xhr.setRequestHeader("Authorization", "Bearer MeinToken");xhr.onreadystatechange = function () {
if (xhr.readyState === 4) {
console.log(xhr.status);
console.log(xhr.responseText);
}};xhr.send();
liefert mir in"xhr.responseText" einen JSON Datensatz.
Nun möchte ich eizene Werte in Datenpunkte schreiben.Kann mir jemand helfen ???
Vielen Dank,
Michael@drfirebird sagte: liefert mir in"xhr.responseText" einen JSON Datensatz.
Wie sieht der aus?
Welche Werte sollen in Datenpunkte?Beispiel für Vorname:
let obj = JSON.parse(xhr.responseText).success; setState('0_userdata.0.Swagger.Nutzerdaten.Vorname', obj.firstname, true); -
@drfirebird sagte: liefert mir in"xhr.responseText" einen JSON Datensatz.
Wie sieht der aus?
Welche Werte sollen in Datenpunkte?Beispiel für Vorname:
let obj = JSON.parse(xhr.responseText).success; setState('0_userdata.0.Swagger.Nutzerdaten.Vorname', obj.firstname, true);@paul53
Vielen Dank. -
@paul53
Vielen Dank.
moin. Möchte die info auf zeile 17 im Iobroker als datenpunkt hinterlegen...
leider habe ich keine ahnung wie das geht... die diverse anleitungen beziehen sich meist auf einen direkt erreichbaren datenpunkt...
danke
-

moin. Möchte die info auf zeile 17 im Iobroker als datenpunkt hinterlegen...
leider habe ich keine ahnung wie das geht... die diverse anleitungen beziehen sich meist auf einen direkt erreichbaren datenpunkt...
danke
@vanom-vine bitte code als text in code-tags posten!
https://forum.iobroker.net/topic/51555/hinweise-für-gute-forenbeiträge/1der Ausschnitt hilft wahrscheinlich auch nichts
-
Hallo zusammen,
folgendes Script:
var url = "https://connect.paj-gps.de/api/customer";
var XMLHttpRequest = require('xhr2');
var xhr = new XMLHttpRequest();
xhr.open("GET", url);xhr.setRequestHeader("Accept", "application/json");
xhr.setRequestHeader("Authorization", "Bearer MeinToken");xhr.onreadystatechange = function () {
if (xhr.readyState === 4) {
console.log(xhr.status);
console.log(xhr.responseText);
}};xhr.send();
liefert mir in"xhr.responseText" einen JSON Datensatz.
Nun möchte ich eizene Werte in Datenpunkte schreiben.Kann mir jemand helfen ???
Vielen Dank,
Michael@drfirebird
Wenn du XMLHttpRequest verwendest dann bist du aktuell im Browser/vis unterwegs?
Besser wäre es das Skript auf dem Server also Iobroker selbst laufen zu lassen. Leider ist XMLHttpRequest dort ohne zusätzliche Bibliothek nicht verfügbar.
https://www.npmjs.com/package/xmlhttprequestOder man verwendet eine andere Bibliothek wie axios, die bereits in Iobroker verfügbar ist.
Die Befehle um eine datenpunkt zu schreiben sind
Im Browser
vis.setValue(datenpunkt,wert);
Und unter Iobroker im Skript-Adapter
setState(datenpunkt,wert);Der datenpunkt muss jeweils schon angelegt worden sein.
-

moin. Möchte die info auf zeile 17 im Iobroker als datenpunkt hinterlegen...
leider habe ich keine ahnung wie das geht... die diverse anleitungen beziehen sich meist auf einen direkt erreichbaren datenpunkt...
danke
@vanom-vine sagte: Möchte die info auf zeile 17 im Iobroker als datenpunkt hinterlegen...
Liegt das JSON schon in einem Datenpunkt vor?
Prinzipiell so:let zeile17 = JSON.parse(json).series[0].fields[0].values._chunks[0][0]; setState('0_userdata.0.meineWerte.Zeile17', zeile17, true); // In Datenpunkt vom Typ "number" -
@vanom-vine sagte: Möchte die info auf zeile 17 im Iobroker als datenpunkt hinterlegen...
Liegt das JSON schon in einem Datenpunkt vor?
Prinzipiell so:let zeile17 = JSON.parse(json).series[0].fields[0].values._chunks[0][0]; setState('0_userdata.0.meineWerte.Zeile17', zeile17, true); // In Datenpunkt vom Typ "number"leider greife ich die Json von jemand anderes ab, daher habe ich sie nur so vorliegen, und kann den text auch nicht kopieren.
-
leider greife ich die Json von jemand anderes ab, daher habe ich sie nur so vorliegen, und kann den text auch nicht kopieren.
@vanom-vine sagte: greife ich die Json von jemand anderes ab
Wie? Du musst es in ein Skript bekommen.
EDIT: Zeile 17 enthält den Zeitstempel vom 27.08.22 09:05 Uhr MESZ.
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden