Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Online/Offline Status Endgeräte

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Online/Offline Status Endgeräte

    This topic has been deleted. Only users with topic management privileges can see it.
    • TG70
      TG70 Forum Testing last edited by

      Hallo, ich habe ein kleines Blocky um den Online und Offline Status von Endgeräten zu prüfen. Den Wert hole ich mir vom Adapter "tr-064.0". Zu gewissen Zeiten bekomme ich einen schnellen Wechsel von Online und Oflline Status gemeldet. Wie kann ich das verhindern? Ich habe mir gedacht, vllt eine Abfrageverzögerung einzubauen, dass nur alle 30 Sekunden die Abfrage stattfindet. Oder gibt es eine bessere Lösung für mein vorhaben??

      OFFLINE BLOCKLY

      cccacf47-027e-48f1-b2b6-8d8f5a1a4f57-image.png

      ONLINE BLOCKLY

      201c92a4-63e7-4595-b078-79472db323ee-image.png

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

        @TG70 sagte:

        Blocky um den Online und Offline Status von Endgeräten zu prüfen... nur alle 30 Sekunden die Abfrage stattfindet.

        Immer nur einen Trigger pro Datenpunkt verwenden.

        Blockly_temp.JPG

        <xml xmlns="http://www.w3.org/1999/xhtml">
         <variables>
           <variable type="undefined" id="timeout">timeout</variable>
           <variable type="" id=")5.@%hIcC!N[,4.{gc_W">msg</variable>
         </variables>
         <block type="on_ext" id=").cAyv-tz0},iv=gd#ux" x="62" y="13">
           <mutation items="1"></mutation>
           <field name="CONDITION">ne</field>
           <field name="ACK_CONDITION"></field>
           <value name="OID0">
             <shadow type="field_oid" id="Rs]`U=j^WSiQdM(+IIAo">
               <field name="oid">default</field>
             </shadow>
           </value>
           <statement name="STATEMENT">
             <block type="controls_if" id="R)NE*uvvILb:J~G{S_+(">
               <value name="IF0">
                 <block type="logic_negate" id="|h7BbV%j?[/$3yS*cfSd">
                   <value name="BOOL">
                     <block type="variables_get" id="I3+*/Hy~/MhccFzyr5yd">
                       <field name="VAR" id="timeout" variabletype="undefined">timeout</field>
                     </block>
                   </value>
                 </block>
               </value>
               <statement name="DO0">
                 <block type="controls_if" id="xK3_5+-+onvFk`DjhuAw">
                   <mutation else="1"></mutation>
                   <value name="IF0">
                     <block type="on_source" id="9j67ercie#~=+m]B{pR,">
                       <field name="ATTR">state.val</field>
                     </block>
                   </value>
                   <statement name="DO0">
                     <block type="variables_set" id="8kzyb5:D;FhGg8z95K1?">
                       <field name="VAR" id=")5.@%hIcC!N[,4.{gc_W" variabletype="">msg</field>
                       <value name="VALUE">
                         <block type="text" id="{*?68*`Uz0^D!?^[sz3d">
                           <field name="TEXT">XYZ online</field>
                         </block>
                       </value>
                     </block>
                   </statement>
                   <statement name="ELSE">
                     <block type="variables_set" id="0QzGHfSagQsPIli_BjU?">
                       <field name="VAR" id=")5.@%hIcC!N[,4.{gc_W" variabletype="">msg</field>
                       <value name="VALUE">
                         <block type="text" id="{0KO%!gp$LdNMwJO5!i/">
                           <field name="TEXT">XYZ offline</field>
                         </block>
                       </value>
                     </block>
                   </statement>
                   <next>
                     <block type="pushover" id="924rSSGx/SwO!lUL{fZy">
                       <field name="INSTANCE"></field>
                       <field name="SOUND"></field>
                       <field name="PRIORITY">0</field>
                       <field name="LOG"></field>
                       <value name="MESSAGE">
                         <shadow type="text" id="Tvy?hU4nfj5jrCYCMZMX">
                           <field name="TEXT">text</field>
                         </shadow>
                         <block type="variables_get" id="AJBdB$_}s:_:E]!;RWT`">
                           <field name="VAR" id=")5.@%hIcC!N[,4.{gc_W" variabletype="">msg</field>
                         </block>
                       </value>
                       <value name="TITLE">
                         <block type="variables_get" id="/b3+Dz6Iy]|k5AX50T:P">
                           <field name="VAR" id=")5.@%hIcC!N[,4.{gc_W" variabletype="">msg</field>
                         </block>
                       </value>
                       <next>
                         <block type="timeouts_settimeout" id="aY?YS#,]g%l~l4gLe;Go">
                           <field name="NAME">timeout</field>
                           <field name="DELAY">30</field>
                           <field name="UNIT">sec</field>
                           <statement name="STATEMENT">
                             <block type="variables_set" id="eYOYC4yvbOt?fl1U;_/q">
                               <field name="VAR" id="timeout" variabletype="undefined">timeout</field>
                               <value name="VALUE">
                                 <block type="logic_null" id="_Zeb){b,p;AQO7xZB3E1"></block>
                               </value>
                             </block>
                           </statement>
                         </block>
                       </next>
                     </block>
                   </next>
                 </block>
               </statement>
             </block>
           </statement>
         </block>
        </xml>
        

        TG70 1 Reply Last reply Reply Quote 1
        • TG70
          TG70 Forum Testing @paul53 last edited by TG70

          Hallo, vielen Dank für deine Rückmeldung.
          Was muss ich außer der Objekt ID noch anpassen?
          Woher nimmer die Blockly sich die "true" bzw. "false" Werte?

          Der TR-064 Adapter reagiert ja ziemlich langsam.
          Ping und Ring waren in letzter Zeit bei mir aber auch alles andere als zuverlässig.
          Was wäre die optimale Variante für eine Online/Offline Meldung bzw. in der Folge auch Statusanzeige?

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

            @TG70 sagte:

            Was muss ich außer der Objekt ID noch anpassen?

            Den Meldungstext.

            @TG70 sagte in Online/Offline Status Endgeräte:

            Woher nimmer die Blockly sich die "true" bzw. "false" Werte?

            Was meinst Du ?

            TG70 1 Reply Last reply Reply Quote 0
            • TG70
              TG70 Forum Testing @paul53 last edited by

              @paul53 ... ja sorry - genau den Meldungstext sieht man als Selbstverständlich an :)))

              Ich verstehe das Blockly in dem Punkt nicht, wie das Blocky das True/False von dem Datenpunkt erkennt
              bzw. wie das in das Blockly einfließt.

              Was wäre ansich die optimale Online/Offline Abfrage die zuverlässig und schnell ist ???

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

                @TG70 sagte:

                Blocky das True/False von dem Datenpunkt erkennt

                falls Wert prüft den Wert des Trigger-Datenpunktes und mache wird bei true, sonst wird bei false ausgeführt.

                @TG70 sagte in Online/Offline Status Endgeräte:

                Was wäre ansich die optimale Online/Offline Abfrage die zuverlässig und schnell ist ???

                Keine Ahnung, verwende solche Abfragen nicht. Das Script reagiert sofort auf die Änderung des Trigger-Datenpunktes und sperrt dann für 30 s (Entprellen).

                TG70 1 Reply Last reply Reply Quote 0
                • TG70
                  TG70 Forum Testing @paul53 last edited by TG70

                  @paul53 ... OK verstanden.... wo ist aber definiert das mache = true und sonst = false ist...

                  Den Online Status wirft der TR-064 Adapter ziemlich zeitnah aus ... bis der Offline Status ankommt vergehen leider 10 Min. Liegt aber an der Fritzbox selber.
                  Vielleicht hat da noch jemand eine Idee, mit welchem Adapter man das effektiver gestalten könnte

                  paul53 BBTown 3 Replies Last reply Reply Quote 0
                  • paul53
                    paul53 @TG70 last edited by paul53

                    @TG70 sagte:

                    wo ist aber definiert das mache = true und sonst = false ist...

                    In der Definition von Javascript-Bedingungen bzw. deren Umsetzung mit Blockly.

                    1 Reply Last reply Reply Quote 1
                    • BBTown
                      BBTown @TG70 last edited by BBTown

                      @TG70
                      Javascript "erwartet" bei einer Frage dass ein true zurückkommt, daher musst Du nicht "ist wahr" hinterherfragen, das steckt bereits in der Frage selbst drinnen, daher kann man sich die Schreibweise leichter machen.

                      Es ist nur ungewohnt am Anfang, dass nicht "Object ist wahr" dort steht wie bei "Object ist falsch"

                      paul53 1 Reply Last reply Reply Quote 1
                      • paul53
                        paul53 @BBTown last edited by

                        @BBTown sagte:

                        wie bei "Object ist falsch"

                        ... oder wie bei "nicht Wert von Objekt"

                        1 Reply Last reply Reply Quote 0
                        • BBTown
                          BBTown @TG70 last edited by BBTown

                          @TG70

                          hier das ganze als Bild:

                          6e3a213d-a42d-48c6-acda-1e50c531a781-grafik.png

                          beachte das "nicht" in der letzten Bedingung

                          paul53 1 Reply Last reply Reply Quote 1
                          • paul53
                            paul53 @BBTown last edited by paul53

                            @BBTown
                            Die Aussage "völlig identisch" trifft aber nur für Werte vom Typ "boolean" zu.

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

                              @paul53
                              ja das ist wahr, ich war gefangen in der Annahme dass wir hier über boolsche Werte sprechen 😬

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

                              Support us

                              ioBroker
                              Community Adapters
                              Donate

                              916
                              Online

                              31.6k
                              Users

                              79.5k
                              Topics

                              1.3m
                              Posts

                              3
                              13
                              462
                              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