Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Wenn "Ping" länger als X Sekunden "false" dann

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Wenn "Ping" länger als X Sekunden "false" dann

    This topic has been deleted. Only users with topic management privileges can see it.
    • S
      steimi @Modjo last edited by steimi

      @Modjo im Ping-Adapter stellst du die Zeit ein wann das Gerät als nicht erreichbar gemeldet wird. Auf das False triggerst du. Mit Control-Objekt schaltest du das Sonoff-Gerät aus und dann mit 'Control-Objekt mit Verzögerung' wieder ein. Den Sonoff-Adapter hast du installiert?

      1 Reply Last reply Reply Quote 0
      • M
        Modjo last edited by

        Hallo @steimi ,

        vielen Dank für deine Antwort. Die Sonoff Geräte sind bereits eingebunden und lassen sich über die Objekte steuern.
        Die Einstellungen im Ping Adapter habe ich auch schon gesetzt.
        Mein Problem ist hierbei nur, dass es WLAN-Kameras sind, welche hin und wieder mal ein Ping verlieren. Triggert der Ping Adapter genau in diesem Zeitpunkt, dann setzt er Ping ja auf false und das Script läuft los.
        Da ich diese kurzen Aussetzer von ein paar Pings abfangen möchte, soll er ja erst über Sonoff schalten, sobald der Ping länger als 120 Sekunden nicht verfügbar ist.

        Viele Grüße

        Modjo

        crunchip Hogy 2 Replies Last reply Reply Quote 0
        • crunchip
          crunchip Forum Testing Most Active @Modjo last edited by

          @Modjo du musst über deinen falls Block ein timeout setzen, in deinem Fall 120sek
          wenn du hier runterblätterst und dir die Suggested Topics betrachtest, sind in der Regel ähnliche Themen dabei, die zur Lösung führen

          1 Reply Last reply Reply Quote 0
          • Dr. Bakterius
            Dr. Bakterius Most Active last edited by Dr. Bakterius

            @Modjo Probier es so:

            <xml xmlns="http://www.w3.org/1999/xhtml">
             <variables>
               <variable type="undefined" id="timeout">timeout</variable>
               <variable type="" id="$Ekxsg$10ps]YpWSmx6l">Wert</variable>
             </variables>
             <block type="on_ext" id="T|6;v2{W;hphtf(tw(?D" x="38" y="38">
               <mutation items="1"></mutation>
               <field name="CONDITION">ne</field>
               <field name="ACK_CONDITION"></field>
               <value name="OID0">
                 <shadow type="field_oid" id="9qa1Z#i^n3%Y5B$RyN!#">
                   <field name="oid">ping.0.192_168_1_99</field>
                 </shadow>
               </value>
               <statement name="STATEMENT">
                 <block type="controls_if" id="e3XyaNpfQoGotu6R/N@6">
                   <mutation else="1"></mutation>
                   <value name="IF0">
                     <block type="logic_compare" id="F!{X:*tcyeCkl9k-7^mD">
                       <field name="OP">EQ</field>
                       <value name="A">
                         <block type="variables_get" id="DIt42|j{..)as0V]X-rn">
                           <field name="VAR" id="$Ekxsg$10ps]YpWSmx6l" variabletype="">Wert</field>
                         </block>
                       </value>
                       <value name="B">
                         <block type="logic_boolean" id="j]PtqN+k#1l{:W3%#lYn">
                           <field name="BOOL">FALSE</field>
                         </block>
                       </value>
                     </block>
                   </value>
                   <statement name="DO0">
                     <block type="timeouts_settimeout" id="J~9r3!R8Xh6G#;E)s|44">
                       <field name="NAME">timeout</field>
                       <field name="DELAY">2</field>
                       <field name="UNIT">min</field>
                       <statement name="STATEMENT">
                         <block type="control" id="G3`?N/#Od45YHf1md5#H">
                           <mutation delay_input="false"></mutation>
                           <field name="OID">sonoff.0.Steckdose.POWER</field>
                           <field name="WITH_DELAY">FALSE</field>
                           <value name="VALUE">
                             <block type="logic_boolean" id="twPVyoU/,98~sh^|IGHO">
                               <field name="BOOL">FALSE</field>
                             </block>
                           </value>
                           <next>
                             <block type="control" id="!R+LHs~A_aYQxod9[Vj8">
                               <mutation delay_input="true"></mutation>
                               <field name="OID">sonoff.0.Steckdose.POWER</field>
                               <field name="WITH_DELAY">TRUE</field>
                               <field name="DELAY_MS">5</field>
                               <field name="UNIT">sec</field>
                               <field name="CLEAR_RUNNING">FALSE</field>
                               <value name="VALUE">
                                 <block type="logic_boolean" id="e!oo_C.k0fj+Vn9M[tt~">
                                   <field name="BOOL">TRUE</field>
                                 </block>
                               </value>
                             </block>
                           </next>
                         </block>
                       </statement>
                     </block>
                   </statement>
                   <statement name="ELSE">
                     <block type="timeouts_cleartimeout" id="Nb)6$19z*(ga7JSfIy_K">
                       <field name="NAME">timeout</field>
                     </block>
                   </statement>
                 </block>
               </statement>
             </block>
            </xml>
            

            blockly.jpg

            BigWumpus 1 Reply Last reply Reply Quote 0
            • Hogy
              Hogy @Modjo last edited by

              @Modjo
              Ich habe etwas ähnliches so gelöst...
              Hier ist es eine Art Master-Slave Schaltung. Das heißt, dass wenn der Stromverbrauch sich in einem entsprechend niedrigen Wert befindet (zwischen 2 Watt und xxx Watt) dann zähle jede Minute einen Wert hoch.
              Wenn der hochgezählte Wert einen bestimmten Wert überschreitet, dann schalte aus.
              Vorteil: Ich kann die Obergrenze des Stromverbrauchs und den Wert, wie lange gewartet werden soll, über Vis setzen.
              Nachteil: Dafür sind weitere manuelle Datenpunkte erforderlich.
              5614f85a-6cd0-4bd8-a4b8-39ae0c0680d8-image.png

              Evtl. hilft dir das weiter.
              Schöne Grüße

              1 Reply Last reply Reply Quote 0
              • M
                Modjo last edited by

                Vielen Dank @Dr-Bakterius & @Hogy für eure Vorschläge,

                ich habe mich für die Varante von Dr-Bakterius entschieden. Es sieht nun wie folgt aus:
                bf6d1b09-dbb6-45db-9e43-105ed45046d5-grafik.png

                Ist das so okay? Kann man das kürzer fassen?
                Ich habe überigens den Timeout auf 5 Minuten erhöht.

                VG
                Modjo

                Hogy Dr. Bakterius 2 Replies Last reply Reply Quote 0
                • Hogy
                  Hogy @Modjo last edited by Hogy

                  @Modjo
                  Schaut für mich (noch Anfänger) gut aus.

                  1 Reply Last reply Reply Quote 0
                  • Dr. Bakterius
                    Dr. Bakterius Most Active @Modjo last edited by

                    @Modjo sagte in Wenn "Ping" länger als X Sekunden "false" dann:

                    Ist das so okay?

                    Musst du probieren ob das auch zuverlässig läuft. Vor allem wenn eine wirklich weg ist und die zweite nur kurz, kann es hier zu Problemen kommen wenn Timer gestartet und gestoppt werden.

                    Um sicher zu gehen, würde ich für jede Cam einen eigenen Trigger setzen.

                    1 Reply Last reply Reply Quote 0
                    • M
                      Modjo last edited by

                      @Dr-Bakterius said in Wenn "Ping" länger als X Sekunden "false" dann:

                      Musst du probieren ob das auch zuverlässig läuft. Vor allem wenn eine wirklich weg ist und die zweite nur kurz, kann es hier zu Problemen kommen wenn Timer gestartet und gestoppt werden.

                      Um sicher zu gehen, würde ich für jede Cam einen eigenen Trigger setzen.

                      Klingt gut. Habe das jetzt in 2 Trigger umgebaut:

                      d2555d58-b9bd-42cc-9545-2696e36d2cc8-grafik.png
                      Ich werde es jetzt mal testen.

                      VG
                      Modjo

                      Dr. Bakterius 1 Reply Last reply Reply Quote 0
                      • Dr. Bakterius
                        Dr. Bakterius Most Active @Modjo last edited by

                        @Modjo Wenn alles klappt, setze das Thema doch bitte auf "gelöst". 🙂

                        1 Reply Last reply Reply Quote 0
                        • BigWumpus
                          BigWumpus @Dr. Bakterius last edited by BigWumpus

                          Hallo,
                          der Timeout-Befehl hier wird nicht das gewünschte bewirken, weil das Abschalten der Kamera einfach stumpf um 2 Minuten verzögert wird.
                          Da muß etwas besseres her.

                          So wie per Zeitplan alle Minute eine Routine starten, die:
                          -wenn Kamera per Ping erreichbar ist:

                            • das Relais in 5,1 Minuten einschaltet und alle laufenden Timer löscht
                            • das Relais in 5,0 Minuten ausschaltet
                              Fehlt der Ping wird in 5 Minuten ausgeschaltet und 0,1 Minuten später wieder ein.
                              Aber nur einmal, wenn dann immer noch kein Ping kommt ist alles vorbei...
                          1 Reply Last reply Reply Quote 0
                          • First post
                            Last post

                          Support us

                          ioBroker
                          Community Adapters
                          Donate

                          985
                          Online

                          31.9k
                          Users

                          80.2k
                          Topics

                          1.3m
                          Posts

                          6
                          12
                          808
                          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