Beiträge von akreienbring

VPN/Proxy erkannt

Es scheint, dass Sie einen VPN- oder Proxy-Dienst verwenden. Bitte beachten Sie, dass die Nutzung eines solchen Dienstes die Funktionalität dieser Webseite einschränken kann.

    Hallo Shelly Fans,

    ich fange gerade erst mit dem Shelly Scripting an, bin aber schon länger mit Javascript vertraut.

    Asynchronität war noch nie mein Lieblingsthema, aber wie geht man im Shelly Script am Besten vor, wenn es verschachtelte Calls gibt?

    Mein Script, auf einem PlusI4 wird instabil (stoppt einfach ohne Fehlermeldung), wenn ich z.B. sowas mache:

    Die Idee ist natürlich asynchrone Aufrufe in eine Reihenfolge zu bringen. Dafür gibt es ja sonst Promises und ähnliche Konstrukte...

    Warum mag mein PlusI4 das nicht und reagiert dem unkommentierten Stop des Scriptes? Folgendes scheint weniger Probleme zu machen:

    Vielleicht gibt es also bei Variante eins auch Probleme mit den Scopes der Variablen (z.B. 'res') ...

    Bin gespannt, ob auch andere diese "Abbruch-Probleme" haben und wie man das am Besten macht.

    Supi! :-) Hier mal mein Code für andere, die evtl. das gleiche Problem haben:

    Code
    Shelly.call("HTTP.GET",
        { url: "http://[VintageIP]/light/0?status"},
        function (result, error_code, error_msg, ud) {
        let lightIsOn = false;
        if (result.code === 200) {
            let body = JSON.parse(result.body);
            lightIsOn = body.ison;
            console.log("lightIsOn= ", lightIsOn);
        ...

    Hallo,

    kann ich bei einer Vintage mit "http://[ipaddress]/rpc/Light.GetStatus?id=0" festellen, ob sie gerade angeschaltet ist? Lt. https://shelly-api-docs.shelly.cloud/gen2/ComponentsAndServices/Light sollte das doch gehen, oder?

    Ich bekomme als Antwort allerdings nur ein "404 Not Found". Shelly.ListMethods liefert ebenfalls nichts. :-(

    Firmware ist jedenfalls aktuell. Und die HTTP Actions funktionieren auch.

    Schon jetzt vielen Dank für eure Hilfe.