Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Nachricht, nur wenn Shelly > als 2 Sekunden aktiviert ist.

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Nachricht, nur wenn Shelly > als 2 Sekunden aktiviert ist.

    This topic has been deleted. Only users with topic management privileges can see it.
    • paul53
      paul53 @hardl last edited by paul53

      @hardl sagte: Mit timeout und pause habe ich es nicht geschafft.

      Bild_2021-06-17_195240.png

      Wert findet man unter "Trigger".

      H 2 Replies Last reply Reply Quote 0
      • H
        hardl @paul53 last edited by

        @paul53 Vielen Dank für die schnelle Hilfe,
        Das funktioniert genau wie ich wollte. Meine Versuche sahen ähnlich aus, aber das mit
        sonst: stop timeout fehlte bei mir.

        1 Reply Last reply Reply Quote 0
        • H
          hardl @paul53 last edited by

          @paul53 Wieso bekomme ich nach Ausführung eine Warnung: (29707) script.js.telegram.Kanal: clearTimeout() => not foundBildschirmfoto 2021-06-23 um 13.36.51.png

          paul53 1 Reply Last reply Reply Quote 0
          • paul53
            paul53 @hardl last edited by

            @hardl sagte: Wieso bekomme ich nach Ausführung eine Warnung: (29707) script.js.telegram.Kanal: clearTimeout() => not found

            Keine Ahnung. Poste mal den erzeugten Javascript-Code ohne die letzte Zeile in Code tags.

            H 1 Reply Last reply Reply Quote 0
            • H
              hardl @paul53 last edited by

              @paul53

              var timeout;
              
              
              on({id: 'shelly.0.SHSW-1#E098068D0BFA#1.Relay0.Switch', change: "ne"}, async function (obj) {
                var value = obj.state.val;
                var oldValue = obj.oldState.val;
                if ((obj.state ? obj.state.val : "")) {
                  timeout = setTimeout(async function () {
                    setState("shelly.0.SHSW-1#E098068D0A33#1.Relay0.Switch"/*Switch*/, true);
                    setState("alexa2.0.Echo-Devices.G000WV0484231KF4.Commands.speak-volume"/*Volume to use for speak commands*/, 50);
                    setState("alexa2.0.Echo-Devices.G000WV0484231KF4.Commands.speak"/*speak*/, ('Achtung, bitte Kanal prüfen'));
                    sendTo("telegram.0", "send", {
                        text: 'Achtung Kanal-Pumpe läuft'
                    });
                    sendTo("telegram.0", "call", {
                        text: 'Achtung, bitte Pumpe vom Kanal prüfen',
                        user: '@XX',
                        lang: "",
                        repeats: "1"
                    });
                    setStateDelayed("shelly.0.SHSW-1#E098068D0A33#1.Relay0.Switch"/*Switch*/, false, 5000, false);
                  }, 5000);
                } else {
                  (function () {if (timeout) {clearTimeout(timeout); timeout = null;}})();
                }
              });```
              paul53 1 Reply Last reply Reply Quote 0
              • paul53
                paul53 @hardl last edited by paul53

                @hardl
                Das ist in Ordnung, sollte also nicht die Warnung erzeugen.
                Es handelt sich um das Skript "Kanal" unter der Gruppe "telegram"?

                H 1 Reply Last reply Reply Quote 0
                • H
                  hardl last edited by

                  @hardl ja

                  1 Reply Last reply Reply Quote 0
                  • H
                    hardl @paul53 last edited by

                    @paul53 Ich bräuchte bitte nochmals Hilfe: Das Skript funktioniert prima, nur klappt das mit den Anrufen über telegram nicht mehr:

                    var timeout;
                    
                    
                    on({id: 'shelly.0.SHSW-1#E098068D0BFA#1.Relay0.Switch', change: "ne"}, async function (obj) {
                      var value = obj.state.val;
                      var oldValue = obj.oldState.val;
                      if ((obj.state ? obj.state.val : "")) {
                        timeout = setTimeout(async function () {
                          setState("shelly.0.SHSW-1#E098068D0A33#1.Relay0.Switch"/*Switch*/, true);
                          setState("alexa2.0.Echo-Devices.G000WV0484231KF4.Commands.speak-volume"/*Volume to use for speak commands*/, 20);
                          setState("alexa2.0.Echo-Devices.G000WV0484231KF4.Commands.speak"/*speak*/, ('Achtung, bitte Kanal prüfen'));
                          sendTo("telegram.0", "send", {
                              text: 'Achtung Kanal-Pumpe läuft'
                          });
                          sendTo("telegram.0", "call", {
                              text: 'Achtung,bitte Pumpe vom Kanal pruefen',
                              user: '@muellerreinhard',
                              lang: "de-DE-Standard-B",
                              repeats: "1"
                          });
                          setStateDelayed("shelly.0.SHSW-1#E098068D0A33#1.Relay0.Switch"/*Switch*/, false, 5000, true);
                        }, 5000);
                      } else {
                        (function () {if (timeout) {clearTimeout(timeout); timeout = null;}})();
                      }
                    });
                    
                    18.8.2021, 16:13:30.157	[info ]: javascript.0 (165) Start javascript script.js.telegram.Kanal
                    18.8.2021, 16:13:30.175	[info ]: javascript.0 (165) script.js.telegram.Kanal: subscribe: {"pattern":{"id":"shelly.0.SHSW-1#E098068D0BFA#1.Relay0.Switch","change":"ne","q":0},"name":"script.js.telegram.Kanal"}
                    18.8.2021, 16:13:30.176	[info ]: javascript.0 (165) script.js.telegram.Kanal: registered 1 subscription and 0 schedules
                    18.8.2021, 16:13:53.188	[info ]: javascript.0 (165) script.js.telegram.Kanal: setTimeout(ms=5000)
                    18.8.2021, 16:13:58.190	[info ]: javascript.0 (165) script.js.telegram.Kanal: setForeignState(id=shelly.0.SHSW-1#E098068D0A33#1.Relay0.Switch, state={"val":true,"ack":false,"c":"script.js.telegram.Kanal"})
                    18.8.2021, 16:13:58.190	[info ]: javascript.0 (165) script.js.telegram.Kanal: setForeignState(id=alexa2.0.Echo-Devices.G000WV0484231KF4.Commands.speak-volume, state={"val":20,"ack":false,"c":"script.js.telegram.Kanal"})
                    18.8.2021, 16:13:58.191	[info ]: javascript.0 (165) script.js.telegram.Kanal: setForeignState(id=alexa2.0.Echo-Devices.G000WV0484231KF4.Commands.speak, state={"val":"Achtung, bitte Kanal prüfen","ack":false,"c":"script.js.telegram.Kanal"})
                    18.8.2021, 16:13:58.191	[info ]: javascript.0 (165) script.js.telegram.Kanal: sendTo(adapter=telegram.0, cmd=send, msg={"text":"Achtung Kanal-Pumpe läuft"})
                    18.8.2021, 16:13:58.195	[info ]: javascript.0 (165) script.js.telegram.Kanal: sendTo(adapter=telegram.0, cmd=call, msg={"text":"Achtung,bitte Pumpe vom Kanal pruefen","user":"@muellerreinhard","lang":"de-DE-Standard-B","repeats":"1"})
                    18.8.2021, 16:13:58.203	[info ]: javascript.0 (165) script.js.telegram.Kanal: setStateDelayed(id=shelly.0.SHSW-1#E098068D0A33#1.Relay0.Switch, state=false, isAck=false, delay=5000, clearRunning=true)
                    18.8.2021, 16:13:58.204	[info ]: javascript.0 (165) script.js.telegram.Kanal: setStateDelayed: no running timers
                    18.8.2021, 16:14:03.205	[info ]: javascript.0 (165) script.js.telegram.Kanal: setForeignState(id=shelly.0.SHSW-1#E098068D0A33#1.Relay0.Switch, state={"val":false,"ack":false,"c":"script.js.telegram.Kanal"})
                    18.8.2021, 16:14:03.222	[warn ]: javascript.0 (165) script.js.telegram.Kanal: clearTimeout() => not found
                    

                    Anrufe über telegram und Test mit API auf callMeBot.com funktionieren. Ich habe schon stundenlang probiert und komme nicht weiter.

                    paul53 1 Reply Last reply Reply Quote 0
                    • paul53
                      paul53 @hardl last edited by

                      @hardl sagte: nur klappt das mit den Anrufen über telegram nicht mehr:

                      Mit telegram kenne ich mich nicht aus.

                      H 1 Reply Last reply Reply Quote 0
                      • H
                        hardl @paul53 last edited by

                        @paul53 Ok danke, vielleicht kann ja jemand anderes helfen.

                        1 Reply Last reply Reply Quote 0
                        • First post
                          Last post

                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        840
                        Online

                        32.0k
                        Users

                        80.5k
                        Topics

                        1.3m
                        Posts

                        2
                        11
                        449
                        Loading More Posts
                        • Oldest to Newest
                        • Newest to Oldest
                        • Most Votes
                        Reply
                        • Reply as topic
                        Log in to reply
                        Community
                        Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                        The ioBroker Community 2014-2023
                        logo