Shelly.call return von Informationen

Hinweis zur Nutzung von Skripten (für Nutzer)

Die Verwendung von Skripten erfolgt ausdrücklich auf eigene Gefahr. Weder Shelly noch die jeweiligen Autoren oder Entwickler der Skripte übernehmen irgendeine Form der Haftung für mögliche Schäden, Fehlfunktionen, Datenverluste oder anderweitige Beeinträchtigungen, die durch die Nutzung dieser Skripte entstehen könnten. Bitte stellen Sie vor dem Einsatz sicher, dass Sie den Quellcode verstehen und sich der möglichen Auswirkungen bewusst sind. Die Skripte werden ohne Gewähr bereitgestellt und unterliegen keiner regelmäßigen Wartung oder offiziellen Unterstützung.


Hinweis für Entwickler

Wenn Sie eigene Skripte bereitstellen, achten Sie bitte darauf, eine klare Beschreibung, eventuelle Einschränkungen und Sicherheitsaspekte zu dokumentieren. Beachten Sie zudem, dass Nutzer Ihre Skripte grundsätzlich auf eigenes Risiko verwenden. Eine Haftung für Schäden ist ausgeschlossen, sofern diese nicht vorsätzlich oder grob fahrlässig verursacht wurden oder gesetzlich anderweitig geregelt ist.

  • Hallo, weiß jemand wie man aus einer callback_function im shelly.call Daten in das Hauptprogramm bringt? In die Funktion hinein geht es über userdata, aber Änderungen kommen nicht zurück. In der Doku habe ich dazu nichts gefunden. Ich teste mit einem Shelly Plus 1.


    Hier mein Test Code Ausschnitt:

    let laststate=true

    Shelly.call("Switch.set","{ id:0, on: false }",function (result, error_code, error_message, ls) {

    print("was on=", result.was_on);

    print(ls); // kommt von außen korrekt an

    ls = result.was_on;

    print(ls); // Änderung wird erfolgreich angezeigt

    laststate = ls // macht keinen Sinn, da die Änderung im umgebenden Programm nicht ankommt.

    // globale Variable? aber wie?

    }, laststate);

    print("laststate = ", laststate ); // kommt nicht an


    -----------------------------------------

    VG

  • Der Aufruf vom Shelly.Call ist asynchron, das Script arbeitet weiter bevor die Änderungen übrhaupt im Hauptteil vom Script ankommen.

    Wie sich das umgehen lässt hab ich z.B. hier beschrieben:

    Seven of Nine
    26. August 2022 um 19:00

    >100 Shellies, darunter so gut wie alles was der Hersteller produziert hat. ;)
    :!: ich beantworte grundsätzlich keine Fragen per persönlicher Nachricht:!: