Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly
  5. Ausfal IP erst melden wenn mehr als 2 Minuten nicht erreichbar!

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    3.2k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.1k

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.4k

Ausfal IP erst melden wenn mehr als 2 Minuten nicht erreichbar!

Geplant Angeheftet Gesperrt Verschoben Blockly
32 Beiträge 4 Kommentatoren 2.5k Aufrufe 4 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • MyzerATM Offline
    MyzerATM Offline
    MyzerAT
    schrieb am zuletzt editiert von
    #17

    schaffs leider nicht, kenn den Baustein Meldung noch nicht, eventuell kann mir jemand den zusamenstoppeln, bitte, thx

    <xml xmlns="http://www.w3.org/1999/xhtml">
      <block type="procedures_defnoreturn" id="QcHn*};`aes=*M[62[T_" x="-287" y="-737">
        <mutation>
          <arg name="name"></arg>
          <arg name="onoff"></arg>
        </mutation>
        <field name="NAME">Meldung</field>
        <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
      </block>
      <block type="on" id="wN;UvwDV@#P(A[|y2/s." x="-287" y="-637">
        <field name="OID">ping.1.RDJL_Home.192_168_0_64</field>
        <field name="CONDITION">ne</field>
        <field name="ACK_CONDITION"></field>
        <statement name="STATEMENT">
          <block type="controls_if" id="@ec_w*anU[C5_:,q!@u6">
            <mutation else="1"></mutation>
            <value name="IF0">
              <block type="on_source" id="}}|XsyQ@;d%*`Qa*P8MP">
                <field name="ATTR">state.val</field>
              </block>
            </value>
            <statement name="DO0">
              <block type="timeouts_cleartimeout" id="A{9nUa,_OgF[Kk%e1?=]">
                <field name="NAME">timeout</field>
                <next>
                  <block type="procedures_callnoreturn" id="V#,#{?LCEl=]otxJ:bR?" inline="false">
                    <mutation name="Meldung">
                      <arg name="name"></arg>
                      <arg name="onoff"></arg>
                    </mutation>
                    <value name="ARG0">
                      <block type="on_source" id="}?{-v*u;R@:1CN2rC1Xj">
                        <field name="ATTR">common.name</field>
                      </block>
                    </value>
                    <value name="ARG1">
                      <block type="text" id="?m;9gH%m`,/WoimPO):w">
                        <field name="TEXT">wieder online</field>
                      </block>
                    </value>
                  </block>
                </next>
              </block>
            </statement>
            <statement name="ELSE">
              <block type="timeouts_settimeout" id=".7u4Jf,98)qr,a7{wnQ!">
                <field name="NAME">timeout</field>
                <field name="DELAY">120</field>
                <field name="UNIT">sec</field>
                <statement name="STATEMENT">
                  <block type="procedures_callnoreturn" id="%cW2F!J99yEG-GB,y2p-">
                    <mutation name="Meldung">
                      <arg name="name"></arg>
                      <arg name="onoff"></arg>
                    </mutation>
                    <value name="ARG0">
                      <block type="on_source" id="C^c@O*hX=FfH5JVUwY+w">
                        <field name="ATTR">common.name</field>
                      </block>
                    </value>
                    <value name="ARG1">
                      <block type="text" id="G;p)5ufI}S0vLSaQ/%@R">
                        <field name="TEXT">offline</field>
                      </block>
                    </value>
                  </block>
                </statement>
              </block>
            </statement>
          </block>
        </statement>
      </block>
      <block type="control" id="Do1*(d;FPVdH~`jRHrS{" x="112" y="-612">
        <mutation delay_input="false"></mutation>
        <field name="OID">alexa2.0.Echo-Devices.G090U61084851BG7.Commands.speak</field>
        <field name="WITH_DELAY">FALSE</field>
        <value name="VALUE">
          <block type="text_join" id="F*lKSls!iLkoww%{/oGK">
            <mutation items="2"></mutation>
            <value name="ADD0">
              <block type="text" id="QhdzP|.,qK;9WW=ntGe:">
                <field name="TEXT">Achtung, Achtung</field>
              </block>
            </value>
            <value name="ADD1">
              <block type="text_join" id="yxj=D(V8-%`{-#R[f}n@">
                <mutation items="2"></mutation>
                <value name="ADD0">
                  <block type="on_source" id="(u)KQ`c0}#hjgB#:1=Q8">
                    <field name="ATTR">common.name</field>
                  </block>
                </value>
                <value name="ADD1">
                  <block type="text" id="(na[4nbf:VY3wdj#k(s|">
                    <field name="TEXT">  ist Offline und nicht mehr Erreichbar!</field>
                  </block>
                </value>
              </block>
            </value>
          </block>
        </value>
        <next>
          <block type="telegram" id="dZ`NtV^dV-qDs6eotVJJ">
            <field name="INSTANCE">.0</field>
            <field name="LOG">log</field>
            <field name="SILENT">FALSE</field>
            <field name="PARSEMODE">default</field>
            <value name="MESSAGE">
              <shadow type="text" id="c`J_.dZ/@?4%P(]3=`)]">
                <field name="TEXT">text</field>
              </shadow>
              <block type="text_join" id="o.6x{#j+oDiK_78Ko-.*">
                <mutation items="2"></mutation>
                <value name="ADD0">
                  <block type="on_source" id="g8?Bc*R%JK;Md-=qGk`5">
                    <field name="ATTR">common.name</field>
                  </block>
                </value>
                <value name="ADD1">
                  <block type="text" id="MV0rG#7UV!D!|hhEo|Y=">
                    <field name="TEXT">  ist Offline und nicht mehr Erreichbar!</field>
                  </block>
                </value>
              </block>
            </value>
          </block>
        </next>
      </block>
      <block type="control" id="V(Y@289(@J(E+1/0EzSp" x="-188" y="-188">
        <mutation delay_input="false"></mutation>
        <field name="OID">alexa2.0.Echo-Devices.G090U61084851BG7.Commands.speak</field>
        <field name="WITH_DELAY">FALSE</field>
        <value name="VALUE">
          <block type="text_join" id="A8.SkLP#n-RrWsB+btl#">
            <mutation items="2"></mutation>
            <value name="ADD0">
              <block type="text" id="cA8jZ;,.Omp[1+/suq%]">
                <field name="TEXT">Achtung, Achtung</field>
              </block>
            </value>
            <value name="ADD1">
              <block type="text_join" id="3HqC)]gq0iXtK%*[p3hQ">
                <mutation items="2"></mutation>
                <value name="ADD0">
                  <block type="on_source" id="PG:W-rk=a5]ZuvHl}VE,">
                    <field name="ATTR">common.name</field>
                  </block>
                </value>
                <value name="ADD1">
                  <block type="text" id="Y[(cQLz?0|*6U*0f=tp]">
                    <field name="TEXT">  ist wieder Online!</field>
                  </block>
                </value>
              </block>
            </value>
          </block>
        </value>
        <next>
          <block type="telegram" id="L,8yMe,dS8:R8|pT6_}N">
            <field name="INSTANCE">.0</field>
            <field name="LOG">log</field>
            <field name="SILENT">FALSE</field>
            <field name="PARSEMODE">default</field>
            <value name="MESSAGE">
              <shadow type="text" id="c`J_.dZ/@?4%P(]3=`)]">
                <field name="TEXT">text</field>
              </shadow>
              <block type="text_join" id="%-:a5R8;,|80W4V3lgRw">
                <mutation items="2"></mutation>
                <value name="ADD0">
                  <block type="on_source" id="7gvj54ZeLKjOW1JqBvlM">
                    <field name="ATTR">common.name</field>
                  </block>
                </value>
                <value name="ADD1">
                  <block type="text" id="f17}4~e+wfLf5x{*1zF5">
                    <field name="TEXT">  ist wieder Online!</field>
                  </block>
                </value>
              </block>
            </value>
          </block>
        </next>
      </block>
    </xml>
    

    lg Rudi

    Master Debian 12 (Wien)
    Intel NUC6CAYH 16GB RAM, 500 GB SSD & auf Proxmox 8. 7. als VM

    Slave Debian 12. (TULLN) --> OpenVPN to Vienna
    Intel NUC6CAYH 16GB RAM, 500 GB SSD & auf Proxmox 8.7. als VM

    Node 20.19.0
    Nodejs 20.19.0
    npm 10.8.2
    js-controller 7.0.6

    1 Antwort Letzte Antwort
    0
    • MyzerATM Offline
      MyzerATM Offline
      MyzerAT
      schrieb am zuletzt editiert von MyzerAT
      #18

      meinst du so?

      dd1df459-d19e-4439-b105-50b8598d2287-grafik.png

      lg Rudi

      Master Debian 12 (Wien)
      Intel NUC6CAYH 16GB RAM, 500 GB SSD & auf Proxmox 8. 7. als VM

      Slave Debian 12. (TULLN) --> OpenVPN to Vienna
      Intel NUC6CAYH 16GB RAM, 500 GB SSD & auf Proxmox 8.7. als VM

      Node 20.19.0
      Nodejs 20.19.0
      npm 10.8.2
      js-controller 7.0.6

      paul53P 1 Antwort Letzte Antwort
      0
      • MyzerATM Offline
        MyzerATM Offline
        MyzerAT
        schrieb am zuletzt editiert von
        #19

        nee da kommen fehler im log

        lg Rudi

        Master Debian 12 (Wien)
        Intel NUC6CAYH 16GB RAM, 500 GB SSD & auf Proxmox 8. 7. als VM

        Slave Debian 12. (TULLN) --> OpenVPN to Vienna
        Intel NUC6CAYH 16GB RAM, 500 GB SSD & auf Proxmox 8.7. als VM

        Node 20.19.0
        Nodejs 20.19.0
        npm 10.8.2
        js-controller 7.0.6

        1 Antwort Letzte Antwort
        0
        • MyzerATM MyzerAT

          meinst du so?

          dd1df459-d19e-4439-b105-50b8598d2287-grafik.png

          paul53P Offline
          paul53P Offline
          paul53
          schrieb am zuletzt editiert von
          #20

          @MyzerAT
          Nein, so:

          ```
          <xml xmlns="http://www.w3.org/1999/xhtml">
          <block type="procedures_defnoreturn" id="QcHn*};aes=*M[62[T_" x="-287" y="-912"> <mutation> <arg name="name"></arg> <arg name="onoff"></arg> </mutation> <field name="NAME">Meldung</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> <statement name="STACK"> <block type="control" id="Do1*(d;FPVdH~jRHrS{">
          <mutation delay_input="false"></mutation>
          <field name="OID">alexa2.0.Echo-Devices.G090U61084851BG7.Commands.speak</field>
          <field name="WITH_DELAY">FALSE</field>
          <value name="VALUE">
          <block type="text_join" id="FlKSls!iLkoww%{/oGK">
          <mutation items="2"></mutation>
          <value name="ADD0">
          <block type="variables_get" id="p-zuzzRM0dn;3q6]ZXUt">
          <field name="VAR">name</field>
          </block>
          </value>
          <value name="ADD1">
          <block type="variables_get" id="avU1Hb)TNf@#D~#iC?h-">
          <field name="VAR">onoff</field>
          </block>
          </value>
          </block>
          </value>
          <next>
          <block type="telegram" id="dZNtV^dV-qDs6eotVJJ"> <field name="INSTANCE">.0</field> <field name="LOG">log</field> <value name="MESSAGE"> <shadow type="text" id="cJ_.dZ/@?4%P(]3=)]"> <field name="TEXT">text</field> </shadow> <block type="text_join" id="o.6x{#j+oDiK_78Ko-.*"> <mutation items="2"></mutation> <value name="ADD0"> <block type="variables_get" id="LLD9mGN)Su%b@r#6.Tqs"> <field name="VAR">name</field> </block> </value> <value name="ADD1"> <block type="variables_get" id="?:%CEN8{}h/wX)sV;y%">
          <field name="VAR">onoff</field>
          </block>
          </value>
          </block>
          </value>
          </block>
          </next>
          </block>
          </statement>
          </block>
          <block type="on" id="wN;UvwDV@#P(A[|y2/s." x="-287" y="-637">
          <field name="OID">ping.1.RDJL_Home.192_168_0_64</field>
          <field name="CONDITION">ne</field>
          <field name="ACK_CONDITION"></field>
          <statement name="STATEMENT">
          <block type="controls_if" id="@ec_w
          anU[C5_:,q!@u6">
          <mutation else="1"></mutation>
          <value name="IF0">
          <block type="on_source" id="}}|XsyQ@;d%Qa*P8MP"> <field name="ATTR">state.val</field> </block> </value> <statement name="DO0"> <block type="timeouts_cleartimeout" id="A{9nUa,_OgF[Kk%e1?=]"> <field name="NAME">timeout</field> <next> <block type="procedures_callnoreturn" id="V#,#{?LCEl=]otxJ:bR?" inline="false"> <mutation name="Meldung"> <arg name="name"></arg> <arg name="onoff"></arg> </mutation> <value name="ARG0"> <block type="on_source" id="}?{-v*u;R@:1CN2rC1Xj"> <field name="ATTR">common.name</field> </block> </value> <value name="ARG1"> <block type="text" id="?m;9gH%m,/WoimPO):w">
          <field name="TEXT"> ist wieder online</field>
          </block>
          </value>
          </block>
          </next>
          </block>
          </statement>
          <statement name="ELSE">
          <block type="timeouts_settimeout" id=".7u4Jf,98)qr,a7{wnQ!">
          <field name="NAME">timeout</field>
          <field name="DELAY">120</field>
          <field name="UNIT">sec</field>
          <statement name="STATEMENT">
          <block type="procedures_callnoreturn" id="%cW2F!J99yEG-GB,y2p-">
          <mutation name="Meldung">
          <arg name="name"></arg>
          <arg name="onoff"></arg>
          </mutation>
          <value name="ARG0">
          <block type="on_source" id="C^c@O
          hX=FfH5JVUwY+w">
          <field name="ATTR">common.name</field>
          </block>
          </value>
          <value name="ARG1">
          <block type="text" id="G;p)5ufI}S0vLSaQ/%@R">
          <field name="TEXT"> ist offline</field>
          </block>
          </value>
          </block>
          </statement>
          </block>
          </statement>
          </block>
          </statement>
          </block>
          </xml>

          Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
          Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

          1 Antwort Letzte Antwort
          0
          • AsgothianA Asgothian

            @rantanplan sagte in Ausfal IP erst melden wenn mehr als 2 Minuten nicht erreichbar!:

            Namensgebung: "timeout" als lokale Variable UND als Timername macht die ganze Sache unübersichtlich.

            Da bin ich anderer Meinung. Die Variable timeout und die Variable die den timeout selber steuert ist ein und die selbe. Es sind eben nicht 2 Variablen

            timeout = null
            "null" ist nicht gleich "0".
            Mit "null" setzt Du eine Variable in einen undefinierten Zustand zurück. Diese muss dann jedesmal, bei Benutzung, neu initialisiert werden. Wird das vergessen gibt es "error".

            Das ist Absicht.. Ich prüfe diese Variable ja explizit auf NULL ab. Einzig das clear timeout könnte zu einem Problem werden. Das könnte man aber auch in ein "else" packen, so das es nur gemacht wird wenn timeout nicht null ist, und damit der Timeout noch läuft.

            Nachtrag: da ich nicht weiss was fuer ein Typ die Variable timeout hat wenn sie durch das setTimeout gesetzt wird, kann ich halt nicht einfach auf bool oder int prüfen. Ein Vergleich mit NULL ist aber immer erlaubt und führt so wie ich den nutze nicht zu Fehlern.

            rantanplanR Offline
            rantanplanR Offline
            rantanplan
            schrieb am zuletzt editiert von
            #21

            @Asgothian Die Varible "timeout" hat nichts mit dem Timer "timeout" zutun.
            Probiere das mal und beobachte das Log.
            timer.png

            Rantanplan

            CCU3 / MS Server 2019(VM) / Scripten mit Blockly

            paul53P 1 Antwort Letzte Antwort
            1
            • MyzerATM Offline
              MyzerATM Offline
              MyzerAT
              schrieb am zuletzt editiert von
              #22

              ich muss kurz weg zum arzt, mach dann weiter, thx an alle einstwelien!

              lg Rudi

              Master Debian 12 (Wien)
              Intel NUC6CAYH 16GB RAM, 500 GB SSD & auf Proxmox 8. 7. als VM

              Slave Debian 12. (TULLN) --> OpenVPN to Vienna
              Intel NUC6CAYH 16GB RAM, 500 GB SSD & auf Proxmox 8.7. als VM

              Node 20.19.0
              Nodejs 20.19.0
              npm 10.8.2
              js-controller 7.0.6

              1 Antwort Letzte Antwort
              0
              • rantanplanR rantanplan

                @Asgothian Die Varible "timeout" hat nichts mit dem Timer "timeout" zutun.
                Probiere das mal und beobachte das Log.
                timer.png

                paul53P Offline
                paul53P Offline
                paul53
                schrieb am zuletzt editiert von
                #23

                @rantanplan sagte:

                Die Varible "timeout" hat nichts mit dem Timer "timeout" zutun.

                Doch: Wenn die Variable timeout auf null gesetzt wird, kann der Timer nicht mehr mit clearTimeout(timeout) gestoppt werden, denn die Variable timeout "addressiert" den Timer.

                Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                rantanplanR 1 Antwort Letzte Antwort
                0
                • paul53P paul53

                  @rantanplan sagte:

                  Die Varible "timeout" hat nichts mit dem Timer "timeout" zutun.

                  Doch: Wenn die Variable timeout auf null gesetzt wird, kann der Timer nicht mehr mit clearTimeout(timeout) gestoppt werden, denn die Variable timeout "addressiert" den Timer.

                  rantanplanR Offline
                  rantanplanR Offline
                  rantanplan
                  schrieb am zuletzt editiert von
                  #24

                  @paul53 sagte in Ausfal IP erst melden wenn mehr als 2 Minuten nicht erreichbar!:

                  @rantanplan sagte:

                  Die Varible "timeout" hat nichts mit dem Timer "timeout" zutun.

                  Doch: Wenn die Variable timeout auf null gesetzt wird, kann der Timer nicht mehr mit clearTimeout(timeout) gestoppt werden, denn die Variable timeout "addressiert" den Timer.

                  ??? Und warum läuft mein Beispiel durch?

                  Rantanplan

                  CCU3 / MS Server 2019(VM) / Scripten mit Blockly

                  AsgothianA 1 Antwort Letzte Antwort
                  0
                  • rantanplanR rantanplan

                    @paul53 sagte in Ausfal IP erst melden wenn mehr als 2 Minuten nicht erreichbar!:

                    @rantanplan sagte:

                    Die Varible "timeout" hat nichts mit dem Timer "timeout" zutun.

                    Doch: Wenn die Variable timeout auf null gesetzt wird, kann der Timer nicht mehr mit clearTimeout(timeout) gestoppt werden, denn die Variable timeout "addressiert" den Timer.

                    ??? Und warum läuft mein Beispiel durch?

                    AsgothianA Offline
                    AsgothianA Offline
                    Asgothian
                    Developer
                    schrieb am zuletzt editiert von
                    #25

                    @rantanplan sagte in Ausfal IP erst melden wenn mehr als 2 Minuten nicht erreichbar!:

                    ??? Und warum läuft mein Beispiel durch?

                    Steht da doch. Wenn du die Variable timeout auf null setzt, dann macht das clear timeout nichts, sprich der Timer läuft durch.
                    Fehler gibt es (zumindest bei mir) keine. Dein Log sollte also die Meldungen in der folgenden Reihenfolge liefern:
                    Timer gestartet
                    Variable auf NULL gesetzt
                    Ups, ich bin trotzdem da

                    ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
                    "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

                    rantanplanR 1 Antwort Letzte Antwort
                    0
                    • AsgothianA Asgothian

                      @rantanplan sagte in Ausfal IP erst melden wenn mehr als 2 Minuten nicht erreichbar!:

                      ??? Und warum läuft mein Beispiel durch?

                      Steht da doch. Wenn du die Variable timeout auf null setzt, dann macht das clear timeout nichts, sprich der Timer läuft durch.
                      Fehler gibt es (zumindest bei mir) keine. Dein Log sollte also die Meldungen in der folgenden Reihenfolge liefern:
                      Timer gestartet
                      Variable auf NULL gesetzt
                      Ups, ich bin trotzdem da

                      rantanplanR Offline
                      rantanplanR Offline
                      rantanplan
                      schrieb am zuletzt editiert von
                      #26

                      @Asgothian sagte in Ausfal IP erst melden wenn mehr als 2 Minuten nicht erreichbar!:

                      Steht da doch. Wenn du die Variable timeout auf null setzt, dann macht das clear timeout nichts, sprich der Timer läuft durch.

                      Hmmm, der Sinn des Ganzen bleibt mir bleibt mir momentan noch verschlossen:face_with_rolling_eyes:

                      Rantanplan

                      CCU3 / MS Server 2019(VM) / Scripten mit Blockly

                      AsgothianA 1 Antwort Letzte Antwort
                      0
                      • rantanplanR rantanplan

                        @Asgothian sagte in Ausfal IP erst melden wenn mehr als 2 Minuten nicht erreichbar!:

                        Steht da doch. Wenn du die Variable timeout auf null setzt, dann macht das clear timeout nichts, sprich der Timer läuft durch.

                        Hmmm, der Sinn des Ganzen bleibt mir bleibt mir momentan noch verschlossen:face_with_rolling_eyes:

                        AsgothianA Offline
                        AsgothianA Offline
                        Asgothian
                        Developer
                        schrieb am zuletzt editiert von
                        #27

                        @rantanplan sagte in Ausfal IP erst melden wenn mehr als 2 Minuten nicht erreichbar!:

                        Hmmm, der Sinn des Ganzen bleibt mir bleibt mir momentan noch verschlossen

                        Jo.. mir auch. In dieser Reihenfolge macht es keinen Sinn.

                        Wenn Du dir aber das Scriptbeispiel von mir oben anschaust, dann setze ich die Variable auf NULL in genau 3 Fällen

                        • am Anfang
                        • wenn der Timeout sauber durchgelaufen ist
                        • wenn der Timeout gelöscht wurde.

                        Und all das mit dem Ziel das ich über if timeout == NULL sicher prüfen kann ob der Timeout noch läuft, ohne eine Hilfsvariable zu spendieren.

                        A.

                        ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
                        "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

                        paul53P rantanplanR 2 Antworten Letzte Antwort
                        0
                        • AsgothianA Asgothian

                          @rantanplan sagte in Ausfal IP erst melden wenn mehr als 2 Minuten nicht erreichbar!:

                          Hmmm, der Sinn des Ganzen bleibt mir bleibt mir momentan noch verschlossen

                          Jo.. mir auch. In dieser Reihenfolge macht es keinen Sinn.

                          Wenn Du dir aber das Scriptbeispiel von mir oben anschaust, dann setze ich die Variable auf NULL in genau 3 Fällen

                          • am Anfang
                          • wenn der Timeout sauber durchgelaufen ist
                          • wenn der Timeout gelöscht wurde.

                          Und all das mit dem Ziel das ich über if timeout == NULL sicher prüfen kann ob der Timeout noch läuft, ohne eine Hilfsvariable zu spendieren.

                          A.

                          paul53P Offline
                          paul53P Offline
                          paul53
                          schrieb am zuletzt editiert von paul53
                          #28

                          @Asgothian sagte in:

                          wenn der Timeout sauber durchgelaufen ist

                          Das ist die einzige Stelle, wo es sinnvoll ist, denn den Rest macht die Blockly-Funktion stop timeout bereits:

                          (function () {if (timeout) {clearTimeout(timeout); timeout = null;}})();
                          

                          Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                          Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                          AsgothianA rantanplanR 2 Antworten Letzte Antwort
                          1
                          • AsgothianA Asgothian

                            @rantanplan sagte in Ausfal IP erst melden wenn mehr als 2 Minuten nicht erreichbar!:

                            Hmmm, der Sinn des Ganzen bleibt mir bleibt mir momentan noch verschlossen

                            Jo.. mir auch. In dieser Reihenfolge macht es keinen Sinn.

                            Wenn Du dir aber das Scriptbeispiel von mir oben anschaust, dann setze ich die Variable auf NULL in genau 3 Fällen

                            • am Anfang
                            • wenn der Timeout sauber durchgelaufen ist
                            • wenn der Timeout gelöscht wurde.

                            Und all das mit dem Ziel das ich über if timeout == NULL sicher prüfen kann ob der Timeout noch läuft, ohne eine Hilfsvariable zu spendieren.

                            A.

                            rantanplanR Offline
                            rantanplanR Offline
                            rantanplan
                            schrieb am zuletzt editiert von
                            #29

                            @Asgothian sagte in Ausfal IP erst melden wenn mehr als 2 Minuten nicht erreichbar!:

                            Und all das mit dem Ziel das ich über if timeout == NULL sicher prüfen kann ob der Timeout noch läuft, ohne eine Hilfsvariable zu spendieren.

                            Das muss ich mal verinnerlichen. Grundsätzlich gefällt mir die Idee Hilfsvariablen zu sparen.
                            Ich bin allerdings auch nicht so der Optimierungs-Freak, wenn es auf Kosten der Lesbarkeit geht. Werde es aber auf jeden Fall mal ausprobieren.

                            Rantanplan

                            CCU3 / MS Server 2019(VM) / Scripten mit Blockly

                            1 Antwort Letzte Antwort
                            0
                            • paul53P paul53

                              @Asgothian sagte in:

                              wenn der Timeout sauber durchgelaufen ist

                              Das ist die einzige Stelle, wo es sinnvoll ist, denn den Rest macht die Blockly-Funktion stop timeout bereits:

                              (function () {if (timeout) {clearTimeout(timeout); timeout = null;}})();
                              
                              AsgothianA Offline
                              AsgothianA Offline
                              Asgothian
                              Developer
                              schrieb am zuletzt editiert von
                              #30

                              @paul53 sagte in Ausfal IP erst melden wenn mehr als 2 Minuten nicht erreichbar!:

                              Das ist die einzige Stelle, wo es sinnvoll ist, denn den Rest macht die Blockly-Funktion stop timeout bereits:

                              Und da zeigt sich das ich Blockly schlecht kenne. Ich baue alle meine Scripte direkt inJS. Deswegen hab ich zur Sicherheit den Punkt mal mit eingebaut. Um so besser (und lesbarer) wenn es gar nicht notwendig ist.

                              ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
                              "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

                              1 Antwort Letzte Antwort
                              0
                              • paul53P paul53

                                @Asgothian sagte in:

                                wenn der Timeout sauber durchgelaufen ist

                                Das ist die einzige Stelle, wo es sinnvoll ist, denn den Rest macht die Blockly-Funktion stop timeout bereits:

                                (function () {if (timeout) {clearTimeout(timeout); timeout = null;}})();
                                
                                rantanplanR Offline
                                rantanplanR Offline
                                rantanplan
                                schrieb am zuletzt editiert von
                                #31

                                @paul53 sagte in Ausfal IP erst melden wenn mehr als 2 Minuten nicht erreichbar!:

                                Das ist die einzige Stelle, wo es sinnvoll ist, denn den Rest macht die Blockly-Funktion stop timeout bereits:

                                (function () {if (timeout) {clearTimeout(timeout); timeout = null;}})();
                                

                                Danke!
                                Jetzt wird ein Schuh daraus:relaxed:
                                timer2.png

                                Rantanplan

                                CCU3 / MS Server 2019(VM) / Scripten mit Blockly

                                1 Antwort Letzte Antwort
                                1
                                • MyzerATM Offline
                                  MyzerATM Offline
                                  MyzerAT
                                  schrieb am zuletzt editiert von
                                  #32

                                  so wieder da bin und dank @rantanplan, weiß ich jetzt auch wie man Debug Bausteine einsetzt :+1:

                                  so ich mahc mich mal wieder an script, mal sehen ob ich das jetzt zusammen bekomme!

                                  lg Rudi

                                  Master Debian 12 (Wien)
                                  Intel NUC6CAYH 16GB RAM, 500 GB SSD & auf Proxmox 8. 7. als VM

                                  Slave Debian 12. (TULLN) --> OpenVPN to Vienna
                                  Intel NUC6CAYH 16GB RAM, 500 GB SSD & auf Proxmox 8.7. als VM

                                  Node 20.19.0
                                  Nodejs 20.19.0
                                  npm 10.8.2
                                  js-controller 7.0.6

                                  1 Antwort Letzte Antwort
                                  0
                                  Antworten
                                  • In einem neuen Thema antworten
                                  Anmelden zum Antworten
                                  • Älteste zuerst
                                  • Neuste zuerst
                                  • Meiste Stimmen


                                  Support us

                                  ioBroker
                                  Community Adapters
                                  Donate

                                  642

                                  Online

                                  32.7k

                                  Benutzer

                                  82.3k

                                  Themen

                                  1.3m

                                  Beiträge
                                  Community
                                  Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                  ioBroker Community 2014-2025
                                  logo
                                  • Anmelden

                                  • Du hast noch kein Konto? Registrieren

                                  • Anmelden oder registrieren, um zu suchen
                                  • Erster Beitrag
                                    Letzter Beitrag
                                  0
                                  • Home
                                  • Aktuell
                                  • Tags
                                  • Ungelesen 0
                                  • Kategorien
                                  • Unreplied
                                  • Beliebt
                                  • GitHub
                                  • Docu
                                  • Hilfe