Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Schnelle Änderungen am Triggerobjekt auswerten?

    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

    Schnelle Änderungen am Triggerobjekt auswerten?

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

      @dark-angel sagte: in einen Event

      Gibt es einen Event-Datenpunkt?

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

        @paul53
        Der Datenpunkt in ioBroker (über den Shelly Adapter) heist direkt Event:

        shelly.0.shellyplus2pm#9015068820c0#1.Input0.Event
        

        Da werden direkt hintereinander die 3 Meldungen aus dem Eröffnungspost quitiert.

        OliverIO paul53 2 Replies Last reply Reply Quote 0
        • OliverIO
          OliverIO @Dark Angel last edited by

          @dark-angel

          aber jeweils einzeln? oder steht da die liste von oben drin?

          Dark Angel 1 Reply Last reply Reply Quote 0
          • Dark Angel
            Dark Angel @OliverIO last edited by

            @oliverio
            Die Ausgabe ist aus dem Debugfenster auf dem Shelly kopiert.

            Die Idee mit dem Script geht schon in der Richtung wie ich mir die Lösung des Problems vorstelle.
            Muss dann heute Abend gleich mal herumexperimentieren...

            Danke für den Richtungsanstoß.

            1 Reply Last reply Reply Quote 0
            • Dark Angel
              Dark Angel @OliverIO last edited by

              @oliverio
              Einzeln. So schnell kann ich gar nicht schauen, wie sich der Wert ändert ... 😵

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

                @dark-angel sagte: die 3 Meldungen aus dem Eröffnungspost

                Das komplette JSON? Sicherlich die 3 Events unmittelbar nacheinander?

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

                  @paul53
                  01282801-06fe-4333-91a0-284890aa7987-grafik.png

                  Bzw.:
                  a8966fbc-2822-4186-93cf-e5aeca3c3822-grafik.png

                  OliverIO paul53 2 Replies Last reply Reply Quote 0
                  • OliverIO
                    OliverIO @Dark Angel last edited by OliverIO

                    @dark-angel
                    da ist doch schon ein datenpunkt namens event.
                    dann musst doch nur einen trigger auf diesen datenpunkt setzen und unterscheiden ob da short oder long drin steht und deine aktionen auslösen
                    da muss man nicht mal die verrenkungen mit dem skript machen

                    wie gesagt, die geschwindigkeit ist kein problem. die events werden der reihe nach reinkommen, die datenpunkte aktualisisert werden.
                    auch wenn du uU die Änderungen auf der Oberfläche nicht wahrnimmst

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

                      @dark-angel
                      "Event" enthält doch, was man braucht.

                      Blockly_temp.JPG

                      "hold" bleibt true bis losgelassen wird.

                      EDIT: Anstelle des Schreibens in die eigenen Datenpunkte können auch direkt die Aktionen zur jeweiligen Tastenbetätigung ausgeführt werden.

                      Anmerkung: Wenn es "single_push" gibt, gibt es vielleicht auch "double_push"? Zum Erkennen von "long_push" wird immerhin 1 s benötigt.

                      Dark Angel 1 Reply Last reply Reply Quote 1
                      • Dark Angel
                        Dark Angel @paul53 last edited by

                        @paul53
                        Das Problem ist, dass Event immer 3 Meldungen ausgibt (3 Zustände hintereinander)
                        Wenn ich Event triggere ist der erste Zustand immer "btn_down".
                        Bei SinglePress kommt erst "btn_up" und dann bleibt Event bei "single_push" stehen.
                        Anders allerdings bei LongPress: da kommt als nächstes "long_push" und zum Schluss bleibt es bei "btn_up" stehen.
                        Wenn ich zu 100% sicher wäre, dass die letzte Meldung bei LongPress immer "btn_up" sein wird, dann könnte ich das in mein Script einbauen (Event Auswertung mit kleine Verzögerung um sicher zu stellen, dass alle Eventmeldungen schon durch sind?).
                        Der Ursprung der "Geschichte" ist HIER nachzulesen. Das Shelly die Logic geändert hat finde ich persönlich nicht sehr prickelnd, aber die werden sich schon was dabei gedacht haben...

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

                          @dark-angel sagte: Event immer 3 Meldungen ausgibt (3 Zustände hintereinander)
                          Wenn ich Event triggere ist der erste Zustand immer "btn_down".

                          Ja und ...? "btn_down" wird nicht ausgewertet, also ignoriert.

                          @dark-angel sagte in Schnelle Änderungen am Triggerobjekt auswerten?:

                          "long_push" und zum Schluss bleibt es bei "btn_up" stehen.

                          Genau dieses Verhalten wird in meinem Blockly-Vorschlag berücksichtigt.

                          1 Reply Last reply Reply Quote 0
                          • Dark Angel
                            Dark Angel last edited by

                            Erster (mehr, oder weniger) Erfolg, erzielt durch folg. Blockly:

                            ad4420bb-5d2b-4e15-ae36-42d7b218949c-grafik.png
                            Shelly Output ist "momentary" mit invertet Input
                            So wird das Licht auch ohne ioBroker funktionsfähig bleiben, nur eben ohne den Zusatz des Longpushs.
                            Wenn Output auf "detached" gesetzt würde, geht das Licht wenn Longpush erkannt wurde, oder aber eben beim loslassen an (in etwa wie "momentary_on_release" bei Shelly Gen.1). Nachteil: Wenn keine Kommunikation mit ioBroker, dann bleibt es dunkel.

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

                            Support us

                            ioBroker
                            Community Adapters
                            Donate

                            749
                            Online

                            31.9k
                            Users

                            80.1k
                            Topics

                            1.3m
                            Posts

                            4
                            18
                            555
                            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