Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Gerät im Netzwerk true false wechselt ständig

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Gerät im Netzwerk true false wechselt ständig

    This topic has been deleted. Only users with topic management privileges can see it.
    • M
      Mika 0 last edited by

      Hallo, ich versuche über Blockly eine Telegram Nachricht zu erhalten, wenn das Gerät State: active auf true im TR-064 ist.
      Alle paar Sekunden bekomme ich dazu Gerät ist da - nicht da - da usw.
      Obwohl das Gerät dauerhaft an ist. Man sieht auch im Adapter beim Objekt, dass das immer kurz von true auf false wechselt.
      Ich habe schon extra eine Variable mit rein, bringt aber nichts, wenn vom Adapter da schwanken kommt.
      Kann man das irgendwie glätten?

      13104677-0fbf-4609-ae83-7015afe190e8-image.png

      <xml xmlns="https://developers.google.com/blockly/xml">
        <variables>
          <variable id=":eIX~g(e3w}XE@DTr=kY">Senden</variable>
        </variables>
        <block type="on" id="Nyqtrt3?#(Z2?8#_s-O?" x="37" y="65">
          <field name="OID">tr-064.0.devices.Synology710Plus.active</field>
          <field name="CONDITION">ne</field>
          <field name="ACK_CONDITION"></field>
          <statement name="STATEMENT">
            <block type="controls_if" id="4J=X{J~[K/Y--+?uMFLj">
              <mutation else="1"></mutation>
              <value name="IF0">
                <block type="logic_multi_and" id="kW/5gq?c%,#y21?OWpc3">
                  <mutation xmlns="http://www.w3.org/1999/xhtml" items="2"></mutation>
                  <value name="AND0">
                    <block type="on_source" id="t[+VZN(vZ?sR^dt*WZ}Q">
                      <field name="ATTR">state.val</field>
                    </block>
                  </value>
                  <value name="AND1">
                    <block type="logic_compare" id="~i5JRT.gPMk4!9SNnOjz">
                      <field name="OP">EQ</field>
                      <value name="A">
                        <block type="variables_get" id="Jh]#!Ju#QMVYh*I]y!-u">
                          <field name="VAR" id=":eIX~g(e3w}XE@DTr=kY">Senden</field>
                        </block>
                      </value>
                      <value name="B">
                        <block type="logic_boolean" id="I}FDG_~WcM/oWR]zs^8W">
                          <field name="BOOL">FALSE</field>
                        </block>
                      </value>
                    </block>
                  </value>
                </block>
              </value>
              <statement name="DO0">
                <block type="telegram" id="+b]gZcZ$mL55+CUSp(@v">
                  <field name="INSTANCE"></field>
                  <field name="LOG"></field>
                  <field name="SILENT">FALSE</field>
                  <field name="PARSEMODE">default</field>
                  <field name="ESCAPING">FALSE</field>
                  <field name="DISABLE_WEB_PAGE_PREVIEW">FALSE</field>
                  <value name="MESSAGE">
                    <shadow type="text" id=",+1t27,t*2H!p`~Xzz{@">
                      <field name="TEXT">Synology 710 ist wieder an</field>
                    </shadow>
                  </value>
                  <next>
                    <block type="variables_set" id="nTi]gUUWfVy%Amc.giou">
                      <field name="VAR" id=":eIX~g(e3w}XE@DTr=kY">Senden</field>
                      <value name="VALUE">
                        <block type="logic_boolean" id="n:wd0ulC(*=RE!B0Tm*E">
                          <field name="BOOL">TRUE</field>
                        </block>
                      </value>
                    </block>
                  </next>
                </block>
              </statement>
              <statement name="ELSE">
                <block type="telegram" id="C4revv[^%b/]W*Mf@0wc">
                  <field name="INSTANCE"></field>
                  <field name="LOG"></field>
                  <field name="SILENT">FALSE</field>
                  <field name="PARSEMODE">default</field>
                  <field name="ESCAPING">FALSE</field>
                  <field name="DISABLE_WEB_PAGE_PREVIEW">FALSE</field>
                  <value name="MESSAGE">
                    <shadow type="text" id="|j#V^NW%p_*n/s80DSr%">
                      <field name="TEXT">Synology 710 ist wieder aus</field>
                    </shadow>
                  </value>
                  <next>
                    <block type="variables_set" id="]2K?](WNAc@:DF+[_o-o">
                      <field name="VAR" id=":eIX~g(e3w}XE@DTr=kY">Senden</field>
                      <value name="VALUE">
                        <block type="logic_boolean" id="]C(/q%B`u}u2pelLOJ^!">
                          <field name="BOOL">FALSE</field>
                        </block>
                      </value>
                    </block>
                  </next>
                </block>
              </statement>
            </block>
          </statement>
        </block>
      </xml>
      
      paul53 1 Reply Last reply Reply Quote 0
      • paul53
        paul53 @Mika 0 last edited by paul53

        @mika-0 sagte: Alle paar Sekunden bekomme ich dazu Gerät ist da - nicht da - da

        Dann versuche es mal mit Timeout.

        Blockly_temp.JPG

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

          @paul53 leider hat das nicht zum Erfolg geführt. Habe ein Video gemacht, was das Verhalten zeigt. Vielleicht habt ihr dazu ja noch eine Idee.
          Video ist leider zu groß. Ich habe es verkleinert. Sehen kann man zwar nicht viel, aber man erkennt die Wechsel von Gerät ist active True - zu false und wieder true

          Desktop2.mp4

          Homoran paul53 2 Replies Last reply Reply Quote 0
          • Homoran
            Homoran Global Moderator Administrators @Mika 0 last edited by

            @mika-0 bitte keinen externen Hoster nutzen!

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

              @mika-0 sagte: leider hat das nicht zum Erfolg geführt

              Wie ist jetzt das Verhalten (ich schaue keine Videos)? Alle paar Sekunden kann es nicht mehr senden, wenn es richtig nachgebaut wurde.

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

                @paul53

                Momentan kommt ein zweites <Aus> über Telegram. <An> kommt nur einmal. Das ist aber erstmal nicht das Problem, da ist dein Lösungsansatz sicherlich perfekt.

                Habe das Verhalten mal mitgeloggt: Es ist rhythmisch (obwohl das Gerät dauerhaft im Netzwerk verfügbar ist):

                a2802e4c-38c8-4b8c-a089-8cc148b80e72-image.png

                Eine Idee habe ich wie das umgangen werden könnte, aber wie meine Vorstellung im Blockly umgesetzt werden kann, boa da bin ich überfragt:

                Wenn Trigger kommt: false - warte 30 Sekunden und sende dann die Telegram Nachricht.
                Wenn während der 30 Sekunden warten ein true kommt, ignoriere das false.

                Wenn Trigger kommt: true - warte 30 Sekunden und sende dann die Telegram Nachricht.
                Wenn während der 30 Sekunden warten ein false kommt, ignoriere das true.

                Damit kann man leben, eine Verzögerung von paar Sekunden 😉
                Hast eine Idee wie das im Blockly umsetzbar sein könnte?

                paul53 haselchen 2 Replies Last reply Reply Quote 0
                • paul53
                  paul53 @Mika 0 last edited by paul53

                  @mika-0 sagte: Habe das Verhalten mal mitgeloggt:

                  Also in einem Zyklus von 13,5 s ändert sich der Wert? Dann sollte eine Verzögerung für die Aus-Nachricht von 15 s genügen.

                  Blockly_temp.JPG

                  1 Reply Last reply Reply Quote 0
                  • haselchen
                    haselchen Most Active @Mika 0 last edited by

                    @mika-0

                    Vielleicht solltest du den Ping Adapter nutzen.
                    Zuverlässiger als die TR-064 Abfrage.

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

                    Support us

                    ioBroker
                    Community Adapters
                    Donate

                    862
                    Online

                    32.0k
                    Users

                    80.4k
                    Topics

                    1.3m
                    Posts

                    4
                    8
                    319
                    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