Beiträge von perlscrip

    stell dir 1 zimmer vor mit 4 lichtstromkreisen an der zimmertüre, wenn du den raum verlässt ist dort nur ein Taster über den i4 der entweder alles aus und wenn alles aus ist dann nur ein bestimmtes licht anschaltet, die anderen lichter kann man dann über schalter direkt im raum über andere taster direkt am shelly verdrahtet schalten

    vorteil wäre man braucht keine 4 taster am eingang

    Hallo, ich bin leider nicht so fit in javascript, vlt. kann mir wer helfen.

    Script Beschreibung:

    Shelly I4, input 1 triggert auf button down die Abfrage von 4 shelly Plus1

    wenn alle 4 shelly's aus sind schaltet er shelly 1 ein.

    wenn einer oder mehrere shelly's an sind schaltet er alle aus.

    Sozusagen ein alles aus und wenn alles aus ist schalte nur definierte Shelly's ein.

    Mein script läuft, es ist gruselig aber es läuft.

    Zu meinem Problem:

    Wenn einer der shelly's nicht erreichbar ist oder z.B. weil die Authentication an ist oder der response nicht ankommt wegen Timeout etc. dann bleibt das script stehen.

    Da ich es gerne ein wenig stabiler bekommen würde sollte das Script weiterlaufen.

    Folgende Fehlermeldung bekomme ich in der Debug Console:


    shelly_http.cpp:99 0x3ffe16a0 HTTP Request timeout

    at script_6.js:80

    at api_rpc.js:8

    RPC cb error: type error

    shelly_notification:161 Status change of script:6: {"id":6,"errors":["type_error"],"running":false}

    idealerweise sollte er einen nicht erreichbaren shelly als "false" sprich aus annehmen, irgendwie ist mir nicht ganz klar welche Parameter da die funktion in script_6.js:80 erwartet.

    Das Script sollte hald einfach bei einem Fehler weiterlaufen, irgendwann kommt der shelly wieder.


    Hier als Beispiel das Script:

    ich weis console.log und print kommen auf das gleiche raus.

    Vielen Dank für eure Kommentare.