Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Verfügbarkeit von Sensoren über Node Red überwachen

    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

    Verfügbarkeit von Sensoren über Node Red überwachen

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

      Ich versuche hier mal den Flow der die ganzen Daten sammelt zu erklären.
      Am Ende kommt jeweils ein der Payload mit sämtlichen Flowvariablen, mit denen ich dann die Tabelle bastel.

      ffa25cea-ab05-4023-9148-590e977de095-image.png
      Ich habe hier vergessen zu erwähnen dass nach 500ms die Flowvariablen in den Payload geladen und rausgegeben werden, um die Tabelle dann auch darzustellen.

      2737bd5d-c59a-409b-b9df-477fc432d024-image.png

      78f4120d-42ae-4eee-b80e-d78c401c126c-image.png

      EDIT: ich hab das auf einem kleinen Fernseher den ich als Monitor benutze gemacht, auf dem richtigen Monitor ist das alles leider furchtbar klein... sorry 😞
      EDIT2:
      Das sieht zwar alles furchtbar aus, funktioniert so aber erstmal.
      Was ich halt nicht hinbekomme ist da irgendwo einzubauen dass beim Aktualisieren eines Sensors die Zeitdifferenzen für ALLE Sensoren neu berechnet werden.

      mickym 1 Reply Last reply Reply Quote 0
      • mickym
        mickym Most Active @Schmetterfliege last edited by

        @schmetterfliege sagte in Verfügbarkeit von Sensoren über Node Red überwachen:

        Was ich halt nicht hinbekomme ist da irgendwo einzubauen dass beim Aktualisieren eines Sensors die Zeitdifferenzen für ALLE Sensoren neu berechnet werden.

        Nun wie gesagt - ich kenne den Flow ja in Grundzügen, den hab ich ja mit entwickelt. Dein Schaubild unten fand ich auch etwas übersichtlicher. Wie gesagt wenn Du es nur um das aktualisieren der anderen Zeitstempel geht und Du alles aktuell hast, wenn ein Gerät triggert - dann zeig einfach die Flow variable wie die Zeitstempel gespeichert sind.

        S 1 Reply Last reply Reply Quote 0
        • S
          Schmetterfliege @mickym last edited by

          @mickym
          998d5829-9e05-4679-8bce-c84b0046cfb1-image.png
          Last update ist die Differenz aus der Initialisierung, timestamp ist der UNIX timestamp den ich bei jedem Update aktualisiere.
          Also genau so abgespeichert wie ich es dann auch für die Berechnung bei der Initialisierung benutze.

          mickym 1 Reply Last reply Reply Quote 0
          • mickym
            mickym Most Active @Schmetterfliege last edited by

            @schmetterfliege Nein nicht die Objekte für die Tabelle - ich sagte doch Du sollst die Zeitstempel in einer eigenen Variable ausserhalb der Tabelle speichern.

            S 1 Reply Last reply Reply Quote 0
            • S
              Schmetterfliege @mickym last edited by

              @mickym said in Verfügbarkeit von Sensoren über Node Red überwachen:

              @schmetterfliege Nein nicht die Objekte für die Tabelle - ich sagte doch Du sollst die Zeitstempel in einer eigenen Variable ausserhalb der Tabelle speichern.

              Also die Objekte für die Tabelle speichere ich unter "Zigbee" ab.
              e3112cfc-eeb9-4d58-94aa-24d0e2b2dc30-image.png
              Meinst du damit ich soll die Timestamps nicht unter "Zigbee" abspeichern, sondern unter zb. "Timestamps"?

              mickym 1 Reply Last reply Reply Quote 0
              • mickym
                mickym Most Active @Schmetterfliege last edited by

                @schmetterfliege Ja das sage ich doch die ganze Zeit. In einer eigenen Variable aber auch mit der ID - als Schlüssel. Du kannst diese an der gleichen Stelle aktualisieren bzw. initialisieren, aber werden zu diesem Zeitpunkt noch nicht in die zigbee Objekte aufgenommen.

                S 1 Reply Last reply Reply Quote 0
                • S
                  Schmetterfliege @mickym last edited by

                  @mickym

                  3e52d031-5487-43d5-b2c2-852f88426a5e-image.png
                  Erledigt.

                  mickym 1 Reply Last reply Reply Quote 0
                  • mickym
                    mickym Most Active @Schmetterfliege last edited by mickym

                    @schmetterfliege Ok - dann sollten die Zigbee Objekte jetzt wieder ohne Zeitangaben sein? Und möchtest Du die ts denn in der Tabelle als UNIX ts haben oder formatiert?

                    S 1 Reply Last reply Reply Quote 0
                    • S
                      Schmetterfliege @mickym last edited by

                      @mickym said in Verfügbarkeit von Sensoren über Node Red überwachen:

                      @schmetterfliege Ok - dann sollten die Zigbee Objekte jetzt wieder ohne Zeitangaben sein?

                      Genau, die Timestamps sind da nicht mehr drin.
                      Nur die berechnete Zeitdifferenz.

                      mickym 1 Reply Last reply Reply Quote 0
                      • mickym
                        mickym Most Active @Schmetterfliege last edited by

                        @schmetterfliege Na die brauchst auch nicht da drin - das machen wir jetzt - Du willst die doch über alle Objekte haben - dachte ich.

                        S 1 Reply Last reply Reply Quote 0
                        • S
                          Schmetterfliege @mickym last edited by

                          @mickym said in Verfügbarkeit von Sensoren über Node Red überwachen:

                          @schmetterfliege Na die brauchst auch nicht da drin - das machen wir jetzt - Du willst die doch über alle Objekte haben - dachte ich.

                          Okay, die hab ich jetzt auch rübergeschoben:
                          d9ac3718-8d06-4a46-853c-83373c6dd7ce-image.png

                          ich bin ehrlich: ich verstehe nicht so ganz wieso ich die in einem eigenen Objekt speichern soll.
                          Was für einen Unterschied macht das ob die in Zigbee gespeichert sind oder unter einem eigenen Objekt?

                          mickym 1 Reply Last reply Reply Quote 0
                          • mickym
                            mickym Most Active @Schmetterfliege last edited by mickym

                            @schmetterfliege Du musst die Zeitdifferenz da nicht rüberschieben - das machen wir erst jetzt. Wir brauchen nur eine Flow Variable ausserhalb der Tabelle die die aktuellen Zeitstempel enthält.

                            Mach bitte einfach vor der letzten function Node eine split und eine join Node. Die join Node kann auf automatisch bleiben. Hinter die Split Node nur noch mal schauen, ob da quasi jedes Zigbee Objekt als eigene payload auftaucht. Als Debug Fenster posten.

                            Also da wo debug 11 ist nochmal ein split und eine join node und die debug 11 an die split node.

                            S 1 Reply Last reply Reply Quote 0
                            • S
                              Schmetterfliege @mickym last edited by Schmetterfliege

                              @mickym
                              Nevermind, bin schon dabei

                              mickym 1 Reply Last reply Reply Quote 0
                              • mickym
                                mickym Most Active @Schmetterfliege last edited by

                                @schmetterfliege Ja wo die debug 11 in Deinem bild ist:

                                9ff03f07-647b-40e2-bc20-6b89387b4465-image.png

                                1 Reply Last reply Reply Quote 0
                                • S
                                  Schmetterfliege last edited by

                                  587b84be-03b5-4951-ac97-f762d72343af-image.png

                                  So richtig? Die einzelnen Zigbee Objekte sind ein eigener Payload und enthalten keine Timestamps, aber die Zeitdifferenzen

                                  mickym 1 Reply Last reply Reply Quote 0
                                  • S
                                    Schmetterfliege last edited by

                                    Aber wieso nochmal die Split und die Join Node?
                                    Da kommt exakt das gleiche Ergebnis raus wie bei Split und Join davor:
                                    f831ddab-c2a3-44fc-bb1b-256267075a73-image.png

                                    mickym 1 Reply Last reply Reply Quote 0
                                    • mickym
                                      mickym Most Active @Schmetterfliege last edited by

                                      @schmetterfliege Passt. 🙂 - Bei einer ist zwar schon wieder lastupdate drin - aber das wird eh jetzt überschrieben - aber machs halt weg, wo Du es reingeschrieben hast.

                                      Im Prinzip kommt dazwischen nun die Change Node rein, die ich unten gepostet habe. Ich passe das gerade an.

                                      1 Reply Last reply Reply Quote 0
                                      • mickym
                                        mickym Most Active @Schmetterfliege last edited by

                                        @schmetterfliege sagte in Verfügbarkeit von Sensoren über Node Red überwachen:

                                        Aber wieso nochmal die Split und die Join Node?
                                        Da kommt exakt das gleiche Ergebnis raus wie bei Split und Join davor:
                                        f831ddab-c2a3-44fc-bb1b-256267075a73-image.png

                                        Wartest Du bitte bis ich die Change Node fertig habe?

                                        S 1 Reply Last reply Reply Quote 0
                                        • S
                                          Schmetterfliege @mickym last edited by

                                          @mickym

                                          Klar 🙂
                                          Bezüglich der Zeitdifferenz: Also das LastUpdate schmeiße ich vorher komplett raus?

                                          mickym 1 Reply Last reply Reply Quote 0
                                          • mickym
                                            mickym Most Active @Schmetterfliege last edited by mickym

                                            @schmetterfliege Ja - Du willst doch für alle berechnen . Wichtig ist doch nur dass am Anfang bzw. beim Aktualisieren die timestamp Variable die aktuellen Timestamps enthält.

                                            So zwischen die neue split und join node hängst die folgende Change Node - die sollte Dir dann alle Timestamps und Differenzen in die zigbee Objekte mit einfügen.

                                            f81cbede-91cb-4d17-a50b-112651a88613-image.png

                                            [
                                               {
                                                   "id": "78bd52751cb69f1f",
                                                   "type": "change",
                                                   "z": "0b2773fbdc77eea3",
                                                   "name": "",
                                                   "rules": [
                                                       {
                                                           "t": "set",
                                                           "p": "payload.lastupdate",
                                                           "pt": "msg",
                                                           "to": "$moment(\t   $lookup($flowContext(\"timestamps\"), payload.id)\t).fromNow()",
                                                           "tot": "jsonata"
                                                       },
                                                       {
                                                           "t": "set",
                                                           "p": "payload.timestamp",
                                                           "pt": "msg",
                                                           "to": "$moment(    $lookup($flowContext(\"timestamps\"), payload.id) ).format(\"DD.MM.YYYY - HH:mm:ss)",
                                                           "tot": "str"
                                                       }
                                                   ],
                                                   "action": "",
                                                   "property": "",
                                                   "from": "",
                                                   "to": "",
                                                   "reg": false,
                                                   "x": 290,
                                                   "y": 500,
                                                   "wires": [
                                                       []
                                                   ]
                                               }
                                            ]
                                            

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate
                                            FAQ Cloud / IOT
                                            HowTo: Node.js-Update
                                            HowTo: Backup/Restore
                                            Downloads
                                            BLOG

                                            891
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            5
                                            426
                                            49795
                                            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