Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Tester
    4. Test Adapter owntracks v1.0.x Github

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Test Adapter owntracks v1.0.x Github

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

      @wildbill Die Entschlüsselung der Daten wird von mosquitto selbst vorgenommen.

      Zwischen Handy und der mosquitto Bridge ist verschlüsselt. Der Broker greift verschüsselt auf die Bridge zu und entschlüsselt dabei . In dem Diagramm habe ich das mit Port 8883 markiert (verschlüsselte Kommunikation) und 1883 ist die entschlüsselte Kommunikation.

      Das Ganze wird auch auf die owntracks topic begrenzt und gefiltert! - So dass nichts auf der Bridge verfügbar ist, was dort nicht sein soll.

      Um aus JSONs eigene Datenpunkte zu machen mit NodeRed zu machen - siehe hier - ggf. muss man nun noch für die Folder Objekte seit dem admin5 noch das Skript von @fastfoot drüber laufen lassen.

      Ansonsten macht der NodeRed Subflow aus jedem JS Objekt, JSON String etc. einzelne Datenpunkte:
      https://forum.iobroker.net/topic/43856/json-string-oder-java-object-in-iobroker-struktur

      W 1 Reply Last reply Reply Quote 0
      • W
        Wildbill @mickym last edited by

        @mickym Jetzt verstehe ich. Du redest von der Verschlüsselung der Verbindung und bekommst im Mosquitto die Daten in lesbarer Form. Bei mir ist aber zusätzlich die Payload encryption aktiv. Die Daten kommen also nicht lesbar an sondern z.B. so:

        {"_type":"encrypted","data":"zwulyo9ma+u41Kn.....E+Drvb68Wj448lzodHdk\/y68zDhuAxXvFCyolQD07Tm3Cogthbatgj6uN1......r6vTCNwY6WQNP7SQx+HX2ZIA2J+SAjURmOZIEH\/\/faqnIlCxQzM6Xo0TN34EHP.....39Z+DexylLCIlSXIKK6yiUChOxuka5bjAZx\/s1csjAexhrFiTzC6A6jM0.....oUrYkrFJCECoCpWRF8ztqXgECoVOgbMhX2t5H8tCglD6Vtza\/Thg.....braiA=="}
        

        Für den or-recorder und das Frontend kein Problem, die entschlüsseln das. Ebenso der Owncloud-Adapter, dort kann man den Encryption-Key auch eintragen. Nur denke ich, es wird schwer, selbst daraus was Lesbares zu machen?!
        Gruss, Jürgen

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

          @wildbill Im Broker sind die Daten entschlüsselt auf der Bridge verschlüsselt.

          Gut dann ist das keine Lösung.

          Aber ich habe gesehen, dass es eine Node-Red Node gibt: https://flows.nodered.org/node/node-red-contrib-owntracks

          Die nimmt als Input eine mqtt-In Node und man kann anscheinend ein preshared secret angeben zur Entschlüsselung. Vielleicht funktioniert es ja damit. Zusammen mit meinem Subflow könntest Du dann eigene Datenpunkte erstellen.

          W 1 Reply Last reply Reply Quote 0
          • W
            Wildbill @mickym last edited by

            @mickym Danke, das könnte in der Tat genau das sein, was ich suche. Muss ich mich mal einarbeiten. Jetzt ist erstmal ausspannen... ⛱️
            Gruß, Jürgen

            W 1 Reply Last reply Reply Quote 0
            • W
              Wildbill @Wildbill last edited by

              @mickym Mit dem node-red-contrib-owntracks habe ich es sogar hinbekommen. Allerdings nicht alles in node-red, da bin ich wohl nicht tief genug in node-red drin. Aber so ist nun mein Ablauf:
              Mit Node-red bei Änderung des MQTT-Datenpunktes mittel des owntracks-nodes decrypten und die gesamte Payload dann in lesbarem Klartext als String in einen Datenpunkt unter userdata.0 schreiben.
              Mit Javascript einen Trigger auf diesen Datenpunkt und dann aus dem String in einzelne Daten auflösen und in einzelne Datenpunkte unter userdata schreiben.
              Im Prinzip also im Ergebnis wohl das gleiche, als wie Du es komplett in node-red machst. Vielleicht nicht die beste und eleganteste Lösung, aber es funktioniert und ich spare mir den Owntracks-Adapter und einige graue Haare. 😊
              Danke für den Tip mit dem node-red-contrib-owntracks. 👍 👍 Da hätte ich nie sowas gesucht, da ich in node-red bislang fast nichts gemacht habe, außer ein paar Alexa-Datenpunkten.

              Gruss, Jürgen

              1 Reply Last reply Reply Quote 0
              • W
                Wildbill last edited by

                Kleines Update:
                Da ich Fehlermeldungen bekam, wenn Owntracks nur mal ein "PING-Paket" ohne komplette Payload geschickt hat, wenn es nichts zum Auswerten gab, und es doch nicht so ganz lief, wie ich wollte, habe ich mich nochmal hingesetzt, meinen ganzen Grips zusammengenommen und im Forum gesucht, was man so mit node-red machen kann. Und nun läuft alles direkt in node-red, ohne dass ich den verschlüsselten Payload vom MQTT erst in einen zweiten Datenpunkt entschlüsseln und von dem dann auswerten muss. Dies ging eh nicht so richtig, da das node-red-contrib-owntracks zwar den JSON direkt entgegennimmt, aber dann einen String ausgibt/schreibt. Falls jemand mal vor dem gleichen Problem hängt, und in node-red entschlüsseln und anschliessend als JSON weiterverarbeiten will muss der Eingang so aussehen:
                a79a7d37-1379-453a-bfe7-abecd1e9627f-grafik.png
                Ohne das wieder in ein JSON zu wandeln nach dem entschlüsseln, hagelt es sonst nur Fehler und es kommt nichts an.
                Gruss, Jürgen

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

                  @wildbill Nimm doch einfach meinen Subflow - da ist alles angegeben - das kann zwar am Anfang Fehler spuken wegen dem admin 5.

                  https://forum.iobroker.net/topic/43856/json-string-oder-java-object-in-iobroker-struktur

                  Lege über eine Change NOde alles beschrieben in der Subflow Node - wo Du Deinen Datenbaum hinhaben willst und erlaube dem NodeRed Adapter, dass er Daten schreiben darf. Den Subflow Node hängst Du hinter Deine Owntracks Node

                  Einfach den Code aus dem ersten Post in dem Thread importieren. Dort habe ich alles geschrieben, mit Anleitung

                  Der Flow sollte auch mit Javascript Objekten in der payload und auch Arrays funktionieren. In dem Thread gibts auch Beispielflows.

                  Die JSON Node wandelt einen JSON String in ein Javaobjekt und umgekehrt.

                  Mach einfach eine Debug Node hinten dran und gib das komplette Nachrichtenobjekt aus, dann sehe ich ja was aus der owntracks Node raus kommt.

                  Zu dem Flow habe ich ja auch extra eine Hilfe geschrieben:

                  70bab56d-97f8-4685-9560-0b0b3755a97a-image.png

                  W 1 Reply Last reply Reply Quote 1
                  • W
                    Wildbill @mickym last edited by

                    @mickym Ich hatte ursprünglich sogar versucht, mit Deinem Ansatz klar zu kommen, aber, da fehlte mir dennoch zu viel Grundwissen, was bei node-red wo hin muss und wie was gemacht wird. Also habe ich gemacht, was ich schon immer am besten konnte. Bestehendes nehmen und so anpassen, wie ich es will. 😁
                    In einem älteren Thread gab es schon einmal einen Flow, der aus einem Owntracks-Json Datenpunkte erstellt. Den habe ich genommen, nicht benötigte Datenpunkte gelöscht und dafür andere, die mir gefehlt haben ergänzt. Erst ohne Payload encryption getestet und dann rausgefunden, wie ich es mit hin bekomme. Dann nochmal einen flow für transition, um direkt Datenpunkte für das betreten oder verlassen von waypoints zu bekommen. Das ganze dann für meine drei User und fertig. In blockly noch ein kleines Skript, welches zu jedem User meine jeweipigen Anwesenheitsdatenpunkte auf true oder false stellt und das wars. Test war mehr als erfolgreich. Alle Daten im iobroker, alle events, inklusive IBeacon kommen an und die Anwesenheiten passen auch. Mehr will und brauche ich nicht mehr.
                    Aber Danke, dass Du mich in die richtige Richtung gestossen hast. Muss mich wohl doch mehr mit node-red beschäftigen. Da geht eindeutig mehr als mit Javascript/Blockly. 👍
                    Gruß, Jürgen

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

                      @wildbill Ich mach Dir das ja gerne wohin möchtest Du denn Deine Datenpunkte geschrieben haben?

                      Hast Du die Erstellung von Fremdobjekt in der NodeRed Adapterkonfiguration zugelassen?

                      W 1 Reply Last reply Reply Quote 0
                      • W
                        Wildbill @mickym last edited by

                        @mickym Nochmal, es läuft bereits. Meine Flows schreiben mir die Datenpunkte in eine eigene Struktur unter userdata.0. Schön sortiert nach User und ob es ein Location- oder Transition-Payload war. Das mit Fremdobjekte erstellen habe ich auch zugelassen, es wurden von node-red alle Datenpunkte sauber und als passendes Objekt (string, array oder number, je nachdem) erstellt. Es läuft ohne jegiche Meldungen im Log und voll zufriedenstellend.
                        Gruss, Jürgen

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

                          @wildbill Ah OK - dann hatte ich das falsch verstanden, weil Du was von Fehlermeldungen geschrieben hast und unten ja nicht der komplette Flow sein kann. Du musst ja was mit einer iobroker out Node wegschreiben und ich sah halt nur eine function Node als Abschluss (wobei ich dieser Node kritisch gegenüberstehe, weil sie oft das Prinzip von NodeRed kaputt macht).

                          Letztlich kannst Du in einer function Node - ja alles in JS schreiben. 😉

                          W 1 Reply Last reply Reply Quote 0
                          • W
                            Wildbill @mickym last edited by

                            @mickym Das Bild sollte nur den Eingang des Flow zeigen, weil nach dem owntracks-node erst wieder ein Json gemacht werden muss. Nur, falls jemand mal was nachbauen will mit Payload encryption. Ohne die ging der Flow, den ich gefunden und angepasst hatte problemlos, nur mit halt zuerst nicht mehr.
                            Aber wie gesagt, alles läuft nun.
                            Gruß, Jürgen

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

                            Support us

                            ioBroker
                            Community Adapters
                            Donate

                            541
                            Online

                            31.7k
                            Users

                            79.8k
                            Topics

                            1.3m
                            Posts

                            owntracks adapter
                            7
                            37
                            2107
                            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