Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Node-Red
    5. PAJ GPS mit Node-Red abfragen

    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

    PAJ GPS mit Node-Red abfragen

    This topic has been deleted. Only users with topic management privileges can see it.
    • Negalein
      Negalein Global Moderator @mickym last edited by

      @mickym sagte in PAJ GPS mit Node-Red abfragen:

      Ja aus Fehlern lernt man,

      definitiv 🙂

      was ein vergessenes Zeichen nur ausmacht 😉

      a11bc008-8eca-44db-b38b-9e60e5a24934-image.png

      bdbad130-bf15-4ebc-96ae-d4feaad26a23-image.png

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

        @negalein Super aber wir kommen weiter. Nun werden wir also mal an dem Success Ast weitermachen und wir brauchen ja das Token für die Authentifizierung. Also kopieren wir mal den Pfad zum Token aus dem Nachrichtenobjekt raus. Das ist die Schaltfläche davor.
        Also mit der Maus - auf die Nachrichteneigenschaft des Tokens gehen und den Pfad rauskopieren und hier wieder in CodeTags einstellen bitte:

        97bd18d8-2386-4876-894a-450b569c626e-image.png

        Negalein 1 Reply Last reply Reply Quote 0
        • Negalein
          Negalein Global Moderator @mickym last edited by

          @mickym sagte in PAJ GPS mit Node-Red abfragen:

          und hier wieder in CodeTags einstellen bitte:

          payload.success.token
          
          mickym 1 Reply Last reply Reply Quote 0
          • mickym
            mickym Most Active @Negalein last edited by mickym

            @negalein Sehr gut - wie werden diesen Pfad gleich brauchen. Wir werden jetzt in den Flow eine neue Nachrichteneigenschaft einführen.

            Nun noch etwas Theorie:

            https://swagger.io/docs/specification/authentication/bearer-authentication/

            d7826828-767d-4ce0-994f-24443331832c-image.png

            Hier siehst, dass Du bei zukünftigen http Aufrufen im Header in einer Eigenschaft Authiorization, den String "Bearer" und das Token mitgeben müssen.

            Dazu werden wir mit einer ChangeNode eine Eigenschaft auth erstellen, die den String "Bearer " und aus der Nachricht das Token extrahieren:

            b50505e6-9a90-4abd-94ce-779530df1e86-image.png

            Achte darauf als Datentyp - JSONATA zu verwenden.

            Anschließend hängst wieder eine Debug Node an, nennst diese auth und lässt Dir die Nachrichteneigenschaften auth ausgeben.

            360c3f0f-d402-4e89-881c-2774c1d6d918-image.png

            Die Nachrichteneigenschaft auth, sollte dann einen String ausgeben mit "Bearer ....." und Deinem Token.

            Negalein 1 Reply Last reply Reply Quote 0
            • Negalein
              Negalein Global Moderator @mickym last edited by Negalein

              @mickym

              48d3a074-f623-4c2d-8dae-f473aafe2a4d-image.png

              mickym 2 Replies Last reply Reply Quote 0
              • mickym
                mickym Most Active @Negalein last edited by

                @negalein Sehr gut 👍 - und diese Node hängst Du nun auch an den success Ausgang also an den untern Ausgang der switch Node und dann die entsprechenden Debug Node ausgeben.

                8ebf6042-602c-4e89-b04c-00507655514c-image.png

                Negalein 1 Reply Last reply Reply Quote 0
                • Negalein
                  Negalein Global Moderator @mickym last edited by

                  @mickym

                  1a1cea24-79ec-4509-ad2f-2b72ddca6cd9-image.png
                  6f76c137-4e85-443a-aaf4-f260f01d7060-image.png

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

                    @negalein Wieder hervorragend - so diese Token musst Du also wie gesagt immer in den Authorization-Header mitgeben.

                    Nun willst Du ja Daten abrufen.

                    4688c2f2-7468-40de-9de0-cf181348fa30-image.png

                    Ist denn diese ID immer fix oder musst Du diese durch weitere Aufrufe ermitteln?

                    Hiermit kannst Du ja alle IDs abfragen?

                    6afa3b86-045d-4594-811b-8efb7a19fa95-image.png

                    Negalein 1 Reply Last reply Reply Quote 0
                    • Negalein
                      Negalein Global Moderator @mickym last edited by

                      @mickym sagte in PAJ GPS mit Node-Red abfragen:

                      Ist denn diese ID immer fix oder musst Du diese durch weitere Aufrufe ermitteln?

                      ist bei verschiedenen Tokens immer gleich geblieben.

                      88739051-7347-43e1-bdc9-315d20a2c64f-image.png

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

                        @negalein Gut ansonsten kannst Du die ja speichern und dann weiterverarbeiten. Dann rufst Du jetzt die Daten über eine weitere HTTP-Request Node ab und gibst nun aber den Authorisation Header mit.

                        Also nehmen ich mal als ID: 1234. 😉

                        16a0b155-7273-436b-98be-f11eba19a56f-image.png

                        Ich gehe also mal von diesem GET Aufruf aus. 😉

                        Als Ergebnis kommt dann so was raus:

                        {
                          "0": {
                            "id": 2,
                            "iddevice": 2,
                            "imei": null,
                            "name": null,
                            "iconname": "paj_iconset_auto",
                            "cmd": "P001",
                            "dateunix": 1583531519,
                            "datum": null,
                            "uhrzeit": null,
                            "lat": 2.2,
                            "lat_symbol": null,
                            "lng": 2.2,
                            "lng_symbol": null,
                            "speed": 79,
                            "direction": 269,
                            "mcc": null,
                            "mnc": null,
                            "ta": null,
                            "num": null,
                            "lac": null,
                            "cid": null,
                            "rxlev": null,
                            "battery": 0,
                            "alarmcode": null,
                            "datastatus": null,
                            "acc": null,
                            "door": null,
                            "obd": 0,
                            "dtc": 0,
                            "dtc_code": null,
                            "rohdaten": "imei:2,001,2,,F,2.000,A,2.2,N,2.0009,E,42.52,268.69,,0,,0.00%,,;"
                          },
                          "success": {
                            "id": 1,
                            "iddevice": 1,
                            "imei": null,
                            "name": null,
                            "iconname": "paj_iconset_auto",
                            "cmd": "P001",
                            "dateunix": 1583531491,
                            "datum": null,
                            "uhrzeit": null,
                            "lat": 1.1,
                            "lat_symbol": null,
                            "lng": 1.1,
                            "lng_symbol": null,
                            "speed": 88,
                            "direction": 305,
                            "mcc": null,
                            "mnc": null,
                            "ta": null,
                            "num": null,
                            "lac": null,
                            "cid": null,
                            "rxlev": null,
                            "battery": 0,
                            "alarmcode": null,
                            "datastatus": null,
                            "acc": null,
                            "door": null,
                            "obd": 0,
                            "dtc": 0,
                            "dtc_code": null,
                            "rohdaten": "imei:1,001,1,,F,215131.000,A,1.1,N,1.1,E,47.42,304.95,,0,,0.00%,,;"
                          }
                        }
                        

                        Also hinter die ChangeNode nun einen HTTP-Request Node mit der URL.

                        Das Ergebnis lassen wir uns dann in einer Debug Node Trackdata ausgeben:

                        892d4ea7-3550-4e4c-8ce8-69261ca6e345-image.png

                        Negalein 1 Reply Last reply Reply Quote 0
                        • Negalein
                          Negalein Global Moderator @mickym last edited by

                          @mickym sagte in PAJ GPS mit Node-Red abfragen:

                          Das Ergebnis lassen wir uns dann in einer Debug Node Trackdata ausgeben:

                          da kommt ein Unauthenticated

                          a2aaebbe-a255-4160-8fd2-291e42366620-image.png

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

                            @negalein Ja - Du hast Dir ja einen String ausgeben lassen und nicht das Token mitgegeben:

                            Die HTTP Request Node wird also wie folgt konfiguriert:

                            076b5d41-b9f3-432f-8afd-5bb7145bfdfb-image.png

                            1. Methode GET
                            2. URL eingeben
                            3. Keinen STRING sonder ein JSON Objekt ausgeben lassen
                            4. Einen Authorisation Header mitgeben, der in der Nachrichteneigenschaft auth ist.

                            Deswegen haben wir das GANZE ja gemacht, dass wir das Bearer Token mitgeben können.

                            Negalein 1 Reply Last reply Reply Quote 0
                            • Negalein
                              Negalein Global Moderator @mickym last edited by

                              @mickym sagte in PAJ GPS mit Node-Red abfragen:

                              Die HTTP Request Node wird also wie folgt konfiguriert:

                              Ah, das mit der Kopfzeile wusste ich noch nicht.
                              Wieder was dazugelernt. 🙂

                              dbb7d0c4-59f7-4b35-83e1-afbabcc1f85a-image.png

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

                                @negalein Na ja Du siehst es wird alles gut - und ist doch auch spannend - jedenfalls funktioniert es jetzt. Nun ist die Frage, willst du alles oder nur bestimmte Daten in Datenpunkten haben?

                                Wenn Du nur einzelne Datenpunkte haben willst dann kannst Du Dir die Pfade aus den Objekten kopieren in eine payload schreiben und dann mit iobroker-out Nodes in einzelne Datenpunkte - Du kannst auch meinen Flow nehmen, der Dir automatisch jedes Objekt in einzelne Datenpunkte zerlegt.

                                Was willst Du?

                                Negalein 1 Reply Last reply Reply Quote 0
                                • Negalein
                                  Negalein Global Moderator @mickym last edited by

                                  @mickym sagte in PAJ GPS mit Node-Red abfragen:

                                  und ist doch auch spannend

                                  Ja, macht echt Spaß. Ist komplettes Neuland. Nix mehr nur copy/paste. 🙂

                                  willst du alles oder nur bestimmte Daten

                                  Von dieser Abfrage wären es:
                                  lat
                                  lng
                                  dateunix
                                  battery

                                  Du kannst auch meinen Flow nehmen, der Dir automatisch jedes Objekt in einzelne Datenpunkte zerlegt.

                                  hört sich cool an 🙂

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

                                    @negalein sagte in PAJ GPS mit Node-Red abfragen:

                                    Ja, macht echt Spaß. Ist komplettes Neuland. Nix mehr nur copy/paste.

                                    Na nur wenn Du langsam verstehst, was das für ein cooles Tool ist - dann wirst Du Dein Blocklies bald in die Tonne treten.

                                    Wenn Du nur diese 4 Datenbrauchst, dann brauchst Du den Flow nicht, aber wenn Du mal komplexere Objekte hast, dann hier nochmal der Link zu dem Subflow, der Dir alle Objekte etc. in einzelne Datenpunkte zerlegt:
                                    https://forum.iobroker.net/topic/43856/json-oder-javascript-objekt-in-iobroker-datenpunkte-zerlegen

                                    Wenn Du nur diese 4 Datenpunkte brauchst, dann nimm einfach 4 Change Nodes an das Ergebnis. 😉

                                    9ddc89bd-ce97-428e-bade-415f6a589c35-image.png

                                    und setze die payload auf die 4 Pfade.

                                    63a9cae7-625c-42ec-8506-1e84a549cded-image.png

                                    Du kopierst also den Pfad der Eigenschaft die Du in einen Datenpunkt schreiben willst und setzt die payload auf die entsprechende Nachrichteneigenschaft.

                                    Generell prüfe auch noch mal in der Konfiguration Deines NodeRed Adapters, dass Du diese beide Optionen angehakt hast:

                                    7334ca17-a6cb-497e-a816-53dc0074801d-image.png

                                    Negalein 2 Replies Last reply Reply Quote 0
                                    • Negalein
                                      Negalein Global Moderator @mickym last edited by

                                      @mickym sagte in PAJ GPS mit Node-Red abfragen:

                                      Du kopierst also den Pfad der Eigenschaft die Du in einen Datenpunkt schreiben willst und setzt die payload auf die entsprechende Nachrichteneigenschaft.

                                      Ist das passend, wenn er den Pfad so kopiert (die eckige Klammer)?

                                      payload.success[0].battery

                                      398f479f-3777-495b-8951-eaa9ee552729-image.png

                                      mickym 1 Reply Last reply Reply Quote 0
                                      • Negalein
                                        Negalein Global Moderator @mickym last edited by

                                        @mickym sagte in PAJ GPS mit Node-Red abfragen:

                                        Generell prüfe auch noch mal in der Konfiguration Deines NodeRed Adapters, dass Du diese beide Optionen angehakt hast:

                                        sind aktiv

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

                                          @negalein Ja sollte gehen. Du kannst ja ein Debug Node hinten zur Kontrolle dran machen.

                                          Ansonsten kannst du auch immer die eckigen Klammern durch Punkte ersetzen:

                                          also:

                                          payload.success.0.battery

                                          Zeig auch mal was aus Deiner dateunix Change Node rauskommt.

                                          Negalein 1 Reply Last reply Reply Quote 0
                                          • Negalein
                                            Negalein Global Moderator @mickym last edited by

                                            @mickym sagte in PAJ GPS mit Node-Red abfragen:

                                            Zeig auch mal was aus Deiner dateunix Change Node rauskommt.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            900
                                            Online

                                            31.9k
                                            Users

                                            80.2k
                                            Topics

                                            1.3m
                                            Posts

                                            6
                                            153
                                            9042
                                            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