NEWS
Unfolded Circle Remote 3
-
Guten Tag zusammen
Um diverse Befehle von ioBroker zur Remote (Unfolded Circle 3) zu senden, nutze ich den Baustein "EXEC".
Sofern ich es richtig versanden habe, wäre es besser, wenn diese HTTP-Befehle direkt mit dem "HTTP-Get"-Block gesendet werden und nicht mit EXEC?
Dies kann ich jedoch nicht umsetzen, sprich ich schaffe die "Authentifizierung" nicht.
Falls der "HTTP-Get" Block wirklich besser ist als der "EXEC" Block besser wäre, dann wäre ich für die Unterstützung dankbar.
Was ich versucht habe, den Befehl in ein JavaScript zu schreiben, was funktioniert. Leider lässt sich die "Ausgabe" nur in ein Objekt schreiben, und nicht ohne weiteres als Variable mit Blockly weiterverwenden.
const url = 'http://' + IP + '/api/system/power/battery'; const token = Token; // Ersetzen Sie 'xxx' durch Ihren tatsächlichen Token httpGet( url, { // Konfigurationsobjekt, um Header zu übergeben headers: { 'Authorization': 'Bearer ' + token } }, (error, response) => { if (error) { console.error('HTTP GET Fehler:', error); return; } if (response.statusCode === 200) { // Erfolgreiche Antwort setState('0_userdata.0.Unfolded_Circle.Antwort', (response.data)); //console.log(response.data); // Hier können Sie die Daten in einen ioBroker-Datenpunkt schreiben // setState('0_userdata.0.Batteriestatus', JSON.parse(response.data)); } else { // Fehlerhafte Antwort (z.B. 401 Unauthorized) console.warn('Remote ist nicht erreichbar.'); } } ); -
Guten Tag zusammen
Um diverse Befehle von ioBroker zur Remote (Unfolded Circle 3) zu senden, nutze ich den Baustein "EXEC".
Sofern ich es richtig versanden habe, wäre es besser, wenn diese HTTP-Befehle direkt mit dem "HTTP-Get"-Block gesendet werden und nicht mit EXEC?
Dies kann ich jedoch nicht umsetzen, sprich ich schaffe die "Authentifizierung" nicht.
Falls der "HTTP-Get" Block wirklich besser ist als der "EXEC" Block besser wäre, dann wäre ich für die Unterstützung dankbar.
Was ich versucht habe, den Befehl in ein JavaScript zu schreiben, was funktioniert. Leider lässt sich die "Ausgabe" nur in ein Objekt schreiben, und nicht ohne weiteres als Variable mit Blockly weiterverwenden.
const url = 'http://' + IP + '/api/system/power/battery'; const token = Token; // Ersetzen Sie 'xxx' durch Ihren tatsächlichen Token httpGet( url, { // Konfigurationsobjekt, um Header zu übergeben headers: { 'Authorization': 'Bearer ' + token } }, (error, response) => { if (error) { console.error('HTTP GET Fehler:', error); return; } if (response.statusCode === 200) { // Erfolgreiche Antwort setState('0_userdata.0.Unfolded_Circle.Antwort', (response.data)); //console.log(response.data); // Hier können Sie die Daten in einen ioBroker-Datenpunkt schreiben // setState('0_userdata.0.Batteriestatus', JSON.parse(response.data)); } else { // Fehlerhafte Antwort (z.B. 401 Unauthorized) console.warn('Remote ist nicht erreichbar.'); } } );@kusi sagte: Leider lässt sich die "Ausgabe" nur in ein Objekt schreiben, und nicht ohne weiteres als Variable mit Blockly weiterverwenden.
Du kannst auf den Datenpunkt "0_userdata.0.Unfolded_Circle.Antwort" triggern, um die Ausgabe per Blockly zu verarbeiten.
-
@kusi sagte: Leider lässt sich die "Ausgabe" nur in ein Objekt schreiben, und nicht ohne weiteres als Variable mit Blockly weiterverwenden.
Du kannst auf den Datenpunkt "0_userdata.0.Unfolded_Circle.Antwort" triggern, um die Ausgabe per Blockly zu verarbeiten.
@paul53 Danke für die rasche Antwort.
Der Trigger auf den Datenpunkt "0_userdata.0.Unfolded_Circle.Antwort" habe ich testweise eingefügt.
Jedoch stellt sich für mich weiterhin die Frage, soll ich die bereits bestehende Befehle mit dem "EXEC"-Block senden oder wäre der HTTP-Befehl in einem JavaScript besser?
Oder wäre es ggfs. sogar möglich auf den HTTP-Get Block zu gehen?
Was ist Ressourcenschonender?
Meinerswissens nutzt man EXEC doch eher für interne Operationen auf einem Gerät und nicht im Netzwerk?
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