Willkommen im Forum.
Und wenn du dann beim Skripten angekommen bist, wirst du feststellen, dass man mit Shelly (fast) zaubern kann
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.
Willkommen im Forum.
Und wenn du dann beim Skripten angekommen bist, wirst du feststellen, dass man mit Shelly (fast) zaubern kann
Du hast ja meinen Tipp zur Blindtime mit umgesetzt.
Damit man das mal als Gesamtes beurteilen kann, poste mal bitte ALLE Aktion, die du eingetragen hast.
Nach dem Muster:
Unter Button 1 switched ON url sind folgende eingetragen:
xxxx
yyyy
Button 1 switched OFF url
aaaa
bbbb
Output switched ON url
cccc
dddd
...
Poste bitte ALLE von dir eingetragenen URLs
Drehen der URLs und Localhost auf IP ändern und Turn=off dazu bringt nichts.
localhost musst du bei meinem Vorschlag so lassen. NUR die Reihenfolge ändern. turn=on/turn=off ist wohl notwendig, wie du durch den Vorschlag von apreick getestet hast.
Tausche mal bitte testhalber die Reihenfolge der URLs.
Zeige mal bitte einen Screenshot von
Button 1 switched ON url
Einfach im http-call als Adresse 127.0.0.1 oder localhost eingeben.
Ich hätte noch einen Vorschlag. Der HTTP-Server sendet bei dir keine Antwort an den BWM, so dass dieser nach seinem HTTP-Request wartet, bis zum timeout.
Funktioniert, ist aber in manchen Fällen lästig. Kannst du testen, wenn du:
im Browser eingibst.
Sende ihm einfach eine Antwort. Füge in dein Skript einfach folgende Funktion mit ein.
function send_response(response, body) {
response.code = 200;
response.body = body;
response.send();
}
und ändere deinen Code so:
HTTPServer.registerEndpoint('on',
function (request, response) {
send_response(response, "OK"); //<----- Diese Zeile zusätzlich.
if (on!==true) { // false or null or undefined
Shelly.call("Switch.set", {'id': 0, 'on': true});
if (request.query.length > 0) {
let dur = JSON.parse(request.query);
if(!isNaN(dur) && dur>0) {
th = Timer.set(Math.floor(1000*dur), false,
function () {
Shelly.call("Switch.set", {'id': 0, 'on': false});
}
);
}
}
}
}
);
Alles anzeigen
Ahh, jetzt ja,,, Danke!
Die Toolbox ist schon cool. Leider etwas schwer lesbar durch die Komprimierung
Finde im Code keine Blink function . Ist das in der Api seitens Shelly implementiert?
Ok, dann werde ich mal EIN TRV updaten. Bin gespannt...
meine TRVs laufen mit der neuen Firmware
Genau da liegt das Problem. Schau dir bitte einmal das an:
Shuter Modus aus.
Hochfahren.
Shuter Modus an.
Kalibrieren.
EDIT: Hatte den Beitrag von Devil noch nicht gesehen.
Out of memory deutet auf zu viele, bzw. zu lange Skripte hin. NUR dein oben geposteter Code sollte problemlos laufen.