Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Zigbee2mqtt installation

    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

    Zigbee2mqtt installation

    This topic has been deleted. Only users with topic management privileges can see it.
    • mickym
      mickym Most Active @Schmetterfliege last edited by

      @schmetterfliege Ja

      19204216-0aef-466c-9417-160b77998c1a-image.png

      Erstens ist Deine Wildcard verkehrt. Die ist nicht wie bei einem Dateinamen, sondern gilt für Hierarchieebenen.

      Das Topic müsste in meinen Augen

      mqtt.0.zigbee2mqtt.Multisensor.*
      

      lauten. Bei Dir fehlt der Punkt.
      Ja und statt Objekt - benötigst Du doch nur noch den Value - das Objekt hast Du nur früher gebraucht, da Du common Attribute des Datenpunktes gebraucht hast, um den Raum zu mappen.

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

        @schmetterfliege Das Einzige - was ich nicht mehr im Kopf habe - ob Du irgendwie die Zeitstempel im Objekt gebraucht hast. Das war irgendwie zum Initialisieren, wann die letzte Änderung war. Also lass es auf Objekt.

        Also von mir aus lass es als Objekt - da ich glaube Du initialisiert damit Deine Zeitstempel

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

          @mickym

          Wie das bei den Zigbee Daten war weiß ich leider nicht mehr, und die Daten sind gelöscht, kann ich also nicht mehr anschauen.
          Aber, das hier ist der output wenn ich das als Value auslese und den Punkt der fehlen soll noch nicht rein gemacht habe:
          158dea8a-bbb7-476d-9852-f6c33ec75df2-image.png

          Timestamp ist auch bei Value dabei 🙂
          Wenn der Punkt fehlt, wieso geht das dann trotzdem? 😁

          Edit: Sorry, in dem Screenshot ist nicht die originale ausgabe, sondern Topic angepasst an Raumname und das JSON bereits zerlegt

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

            @schmetterfliege sagte in Zigbee2mqtt installation:

            Wenn der Punkt fehlt, wieso geht das dann trotzdem?

            Keine Ahnung. 😁 - Also alles gelöst?

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

              @mickym said in Zigbee2mqtt installation:

              @schmetterfliege sagte in Zigbee2mqtt installation:

              Wenn der Punkt fehlt, wieso geht das dann trotzdem?

              Keine Ahnung. 😁 - Also alles gelöst?

              Jep - aber eine Frage noch.
              dd3c5517-3c02-4e4c-987d-2782b6524241-image.png
              a9fe1fa0-0e84-4e73-98f8-719692706d94-image.png
              Müsste ich mit der IN Node nicht auch den "Availability" Datenpunkt bekommen?
              Weil nach * kann ja alles kommen.
              Also nicht nur /Abstellkammer/Regal sondern auch /Abstellkammer/Regal/availability.
              Wieso tut's das nicht?
              Ich will den nicht - aber verstehe nicht wieso er nicht in NR ankommt^^

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

                @schmetterfliege Vielleicht ist das das Problem ohne Punkt. 😉

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

                  Nevermind... beim Updaten der Sensoren wird dieser Datenpunkt nicht geupdated.
                  Wie stelle ich am besten sicher dass dieser Datenpunkt nicht in der IN Node landet? bzw dass ich ihn danach verwerfe?

                  Einfach ne Switchnode die die Topic anschaut und wenn da "availability" vorkommt verwerfen?

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

                    @schmetterfliege sagte in Zigbee2mqtt installation:

                    Einfach ne Switchnode die die Topic anschaut und wenn da "availability" vorkommt verwerfen?

                    Genau - ich mach Dir gerade so was. 😉

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

                      @mickym
                      ist doch einfach nur das, oder?
                      73066b05-0726-4203-9e9e-51249221c411-image.png

                      Dachte vielleicht gibts ne Möglichkeit über eine Ausdruck in der IN Node schon das auszuschließen^^

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

                        @schmetterfliege

                        Ist doch einfach nur das, oder?

                        Ja ist nur das - ich wollte dir nur eine Switch Node mit einem Ausgang basteln. 😉

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

                          @mickym said in Zigbee2mqtt installation:

                          @schmetterfliege

                          Ist doch einfach nur das, oder?

                          Ja ist nur das - ich wollte dir nur eine Switch Node mit einem Ausgang basteln. 😉

                          Mit einem ? Da bin ich gespannt! 🙂
                          Eine "enthält nicht" Option whsl über Regex gelöst nehme ich an 😁

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

                            @schmetterfliege sagte in Zigbee2mqtt installation:

                            @mickym said in Zigbee2mqtt installation:

                            @schmetterfliege

                            Ist doch einfach nur das, oder?

                            Ja ist nur das - ich wollte dir nur eine Switch Node mit einem Ausgang basteln. 😉

                            Mit einem ? Da bin ich gespannt! 🙂
                            Eine "enthält nicht" Option whsl über Regex gelöst nehme ich an 😁

                            Richtig - mit RegEx. 😉

                            2bc79e15-3fe9-44dc-a6ad-ad2850ac63d6-image.png

                            $exists($match(topic,/.*availability$/))
                            
                            S 1 Reply Last reply Reply Quote 0
                            • S
                              Schmetterfliege @mickym last edited by

                              @mickym said in Zigbee2mqtt installation:

                              $exists($match(topic,/.*availability$/))

                              Genial! vielen Dank 🙂

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

                                @schmetterfliege Wenn Du mqtt Nodes verwendest - in der mqtt Notation kann man die unteren Ebenen so ausschließen:

                                zigbee2mqtt/Multisensor/+/+
                                
                                S 1 Reply Last reply Reply Quote 0
                                • S
                                  Schmetterfliege @mickym last edited by

                                  @mickym said in Zigbee2mqtt installation:

                                  @schmetterfliege Wenn Du mqtt Nodes verwendest - in der mqtt Notation kann man die unteren Ebenen so ausschließen:

                                  zigbee2mqtt/Multisensor/+/+
                                  

                                  eef4811f-9e93-4e18-84a6-c0e3db8e01a9-image.png
                                  Hab ich tatsächlich als erstes so getestet. Kam dann aber drauf dass ich damit ja nicht bei einem NR Neustart initialisieren kann, sondern da aus IoB die Werte holen muss.
                                  Und dann hab ich eben auch zum "Updaten" die IoB Daten genommen statt MQTT.
                                  Aber ja, wäre whsl ein wenig eleganter so!

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

                                    @schmetterfliege Gut zum Initialisieren ist iob besser.

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

                                      Ich wollte mir mal ne Tabelle basteln um mir den Onlinestatus der Zigbee Devices anzeigen zu lassen.
                                      Ich hab da versehentlich was echt geiles gemacht glaube ich:
                                      37ae5982-e306-4467-bb3b-c494f5d3adc6-image.png

                                      Alle Datenpunkte initialisieren mit .availability.
                                      In der Change Node wird nur die Topic angepasst damit das mqtt.0.zigbee2mqtt nicht mehr drin steht und am ende ".availability" abgeschnitten.
                                      7b03d441-f6d1-472d-95f9-9e9e591a9dc1-image.png
                                      In der Function Node schreibe ich dann den Status in den Flow Kontext.
                                      Ich hätte jetzt eigentlich erwartet dass da sowas rauskommt wie:
                                      Availability

                                      • Sp15.Schlafzimmer.Eingang
                                      • Status: Online
                                      • Multisensor.Büro.Besta
                                      • Status: Online
                                        usw.
                                        Aber da kam das raus:
                                        a82fdb49-406f-446e-9ff7-ce5a340893f3-image.png
                                        Also irgendwie perfekt alles im Kontext, sortiert nach Gerätetyp, Raum und dann - wenn vorhanden - Ort.
                                        Keine Ahnung wieso das so da raus kommt, aber es ist Hammer.
                                        Nur... wie addressiere ich im weiteren nun die einzelnen "Kategorien"?
                                        Mit sowas wie [0], [1] wenn ich zb. die Gerätetypen haben will? (Also 0 = Heizungsthermostat, 1 = Kontaktsensor, usw)
                                        Bei der anderen Tabelle hab ichs ja leider nicht geschafft diese "Werte" aus dem Kontext zu verwenden (sondern musste ja den Raum separat in den Payload packen nach der Join Node.
                                        Das dürfte hier aber nicht so easy funktionieren weil es je nach Gerätetyp mehr oder weniger "Ebenen" gibt (Thermostate haben zb nur den Raum, keinen Ort)

                                      Splitten geht hier ja nicht weil es Kategorien und Unterkategorien gibt, ein Split würde mir ja das ganze Ding dann kaputt machen

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

                                        @schmetterfliege Na ja deswegen hab ich ja auch den availabilty Punkt- Solche Dinge stehen aber in der Beschreibung:

                                        2ca720f0-1931-46c0-8683-06607e14e49f-image.png

                                        Das dürfte hier aber nicht so easy funktionieren weil es je nach Gerätetyp mehr oder weniger "Ebenen" gibt (Thermostate haben zb nur den Raum, keinen Ort)

                                        Aber bei Deinen Gerätetypen sind doch immer die erste Ebene - wo ist da das Problem? (Egal wieviele Ebenen darunter sind?)

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

                                          @mickym

                                          Ich glaube mit etwas rumprobieren sollte ich das hinbekommen.
                                          Nachdem der Kontext in den Payload geladen wird, sieht das so aus:
                                          715cb442-5c39-4257-8f2b-b1d8e607aeb7-image.png

                                          Damit kann man also schon mal arbeiten und schritt für schritt splitten.

                                          In der Tabelle soll ja nicht nur der Gerätetyp stehen, sondern auch der Raum und wenn vorhanden der Ort.
                                          Und da bin ich halt unsicher wie das geht wenn es verschiedene "Ebenen" gibt, als wenn pro Gerät Raum und Ort jeweils eigene Werte sind die direkt da drunter stehen - statt verschachtelt in Ebenen

                                          EDIT:
                                          017b56bf-93e7-4679-85e2-6584ff14571e-image.png
                                          So sieht es nach dem ersten Splitt aus. Wird also erstmal nach Typen gesplittet.
                                          Dann whsl einfach eine switch node die die Gerätetypen kennt (kommt ja per Topic rein) und dann je nach Typ noch 1 oder 2 Split Nodes - den Aufbau der einzelnen Typen kenne ich ja.

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

                                            @schmetterfliege Verstehe ich alles nicht. Mach mal praktisches Beispiel

                                            1. Ebene ist doch immer Gerätetyp
                                            2. Ebene Raum
                                            3. Ebene ist Ort oder availability
                                            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

                                            873
                                            Online

                                            31.9k
                                            Users

                                            80.2k
                                            Topics

                                            1.3m
                                            Posts

                                            6
                                            284
                                            29114
                                            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