NEWS
PAJ GPS mit Node-Red abfragen
-
@negalein sagte in PAJ GPS mit Node-Red abfragen:
{"success":[],"number_of_records":0}
Na das ist doch SUPER. Dann kannst Du doch einen Filter davor setzen, dass die Nachrichten nur durch kommen, wenn die Anzahl records größer 0 ist.
Also machst Du direkt hinter die HTTP-request Node eine switch Node, in der Du prüfst ob die number_of_records >0 ist. Ich gehe mal davon aus, dass Du eine payload gepostet hast.
So ich simuliere mal die Ausgabe aus der HTTP Request Node:
Oben einmal mit mehren Records.
Unten wenn keine Alarme vorhanden sind.
Als erstes werden wir also filtern, dass wir nur Records brauchen, wenn die number of records >0 sind.
-
@mickym sagte in PAJ GPS mit Node-Red abfragen:
Also machst Du direkt hinter die HTTP-request Node eine switch Node, in der Du prüfst ob die number_of_records >0 ist. Ich gehe mal davon aus, dass Du eine payload gepostet hast.
so?
-
@negalein sagte in PAJ GPS mit Node-Red abfragen:
@mickym sagte in PAJ GPS mit Node-Red abfragen:
Also machst Du direkt hinter die HTTP-request Node eine switch Node, in der Du prüfst ob die number_of_records >0 ist. Ich gehe mal davon aus, dass Du eine payload gepostet hast.
so?
Ja aber die Node machen wir natürlich komplett hinter die request Nodes - weil wir GAR KEINE Nachrichten brauchen, wenn keine Records vorhanden sind.
Also trenn mal alle Kabel vor deinen Nodes auf. Ausserdem bekommst du ja eine Liste. Wenn du nur den letzten Record haben willst, dann musst du das success Array in einzelne Elemente aufspalten.
Dazu setzen wir die payload direkt auf das success Array.
So sieht das vorher aus
und nun legen wir das Success Array direkt auf die payload, dann siehst das so aus.So und wenn Dir das egal ist wieviele ungelesene Du hast, werden wir nun einfach alle durchlaufen - letztlich wird dann nur der letzte Record angezeigt.
Damit hast du nun alles in Einzelobjekten
Da kannst Du dann Deine ChangeNodes wieder dran machen - achte aber auf die PFade - da Du jetzt kein Array mehr hast.
Hier für Dich zum Import:
-
Also meine 3 Nodes direkt an die Http Request nodes und Dein Change nodes dann hinten dran machen und die Pfade anpassen.
Oder gibts ein Problem?
-
@mickym sagte in PAJ GPS mit Node-Red abfragen:
Da kannst Du dann Deine ChangeNodes wieder dran machen - achte aber auf die PFade - da Du jetzt kein Array mehr hast.
So?
Oder meinst du alle Change so?
Welche Pfade meinst du?
-
-
@negalein So
und die Pfade in den Change Nodes anpassen. Nimm ein Objekt aus der Debug Node - und kopiere die Pfade. Es gibt kein success mehr.
Also in der dataunix Node ist der Pfad nun.
setze payload auf payload.dateunix usw.
-
-
@negalein Na Hauptsache Du verstehst, was WIR so tun.
-
@mickym sagte in PAJ GPS mit Node-Red abfragen:
Na Hauptsache Du verstehst, was WIR so tun.
Ja, hab mir auch schon ein paar Tuts reingezogen.
Aber einfacher ist es, das an einem echten Projekt zu lernen. -
@negalein sagte in PAJ GPS mit Node-Red abfragen:
@mickym sagte in PAJ GPS mit Node-Red abfragen:
Na Hauptsache Du verstehst, was WIR so tun.
Ja, hab mir auch schon ein paar Tuts reingezogen.
Aber einfacher ist es, das an einem echten Projekt zu lernen.Klar - Du kannst ja mal beschreiben, was die Nodes so tun und warum was wie gemacht wird. Dann sehe ich ja, ob wir das gleiche Verständnis haben.
-
Guten Morgen
hab ein Problem
Seit gestern funktioniert der Flow nicht mehr.
16.11.2024, 11:29:18node: debug 1 0_userdata/0/PAJ/abfrage : msg.payload : boolean false 16.11.2024, 11:29:19node: Payload 0_userdata/0/PAJ/abfrage : msg.payload : Object { success: object } 16.11.2024, 11:29:20node: success 0_userdata/0/PAJ/abfrage : msg.payload : Object { success: object } 16.11.2024, 11:29:21node: auth 0_userdata/0/PAJ/abfrage : msg.auth : string[7] "Bearer " 16.11.2024, 11:29:22node: Trackdata 0_userdata/0/PAJ/abfrage : msg.payload : Object { error: "Unauthenticated" } 16.11.2024, 11:29:22node: dateunix msg : string[87] "Invalid JSONata expression: The left side of the "*" operator must evaluate to a number" 16.11.2024, 11:29:22node: lat 0_userdata/0/PAJ/abfrage : msg.payload : Object { error: "Unauthenticated" } 16.11.2024, 11:29:22node: Trackdata Alert 0_userdata/0/PAJ/abfrage : msg.payload : Object { error: "Unauthenticated" }
User und PW passen
-
@negalein Ja schwierig - ich hab erst mal wieder schauen müssen, was wir da gemacht haben. Im Prinzip funktioniert trotzdem mit der Authentisierung was nicht mehr. Du siehst ja dass da kein Token mehr mitgegeben wird. Du musst also das Objekt dass bei success rauskommt nochmals näher unterschen und schauen, ob das Token nun wo anders ist und die msg.auth ggf. modifizieren.
Wichtig ist ja erst mal, dass (kann ja vielleicht auch nicht nur ich helfen), auch mal jemand anders ein Blick auf den Flow wirft. Hier hattest Du mal ein Überblick gepostet: https://forum.iobroker.net/post/1185075, damit man sich wieder orientieren kann.
Da in dieser Nachricht muss ja das Token sein, aber vielleicht woanders.
Hier war ja das Token noch in der Eigenschaft token. https://forum.iobroker.net/post/1178163
-
@mickym sagte in PAJ GPS mit Node-Red abfragen:
Im Prinzip funktioniert trotzdem mit der Authentisierung was nicht mehr
hab im Debug gesehn, dass das PW einen Reset wollte.
Ok, nun neues PW (funktioniert auf dem Webportal und im API-Manager).
Aber in NR kommt trotzdem "Password is incorrect"16.11.2024, 13:54:39node: debug 1 0_userdata/0/PAJ/abfrage : msg.payload : boolean false 16.11.2024, 13:54:40node: Payload 0_userdata/0/PAJ/abfrage : msg.payload : Object object error: object passwordError: "Password is incorrect." 16.11.2024, 13:54:41node: error 0_userdata/0/PAJ/abfrage : msg.payload : Object object error: object passwordError: "Password is incorrect."
-
@negalein Ja dann hast Du halt entweder in der Inject Node oder in der Change Node noch ein falsches Passwort stehen.
-
@mickym sagte in PAJ GPS mit Node-Red abfragen:
Ja dann hast Du halt entweder in der Inject Node oder in der Change Node noch ein falsches Passwort stehen.
das hab ich x-mal überprüft.
kann es sein, dass der Inject-Node mit Sonderzeichen nicht klar kommt?
PWD: XXXXXXX
#
XXX -
@negalein Das glaube ich nicht, aber das sind jedenfalls die einzigen Stellen, wo Du ein Passwort mitgibst. Wenn also falsches Passwort rauskommt, dann ist es das nicht. Ich würde halt auf jedenfall die Wiederholung erstmal rausnehmen, nicht dass Dich die Webseite sperrt, weil zuoft ein falsches Passwort eingegeben wurde.
-
@mickym sagte in PAJ GPS mit Node-Red abfragen:
Das glaube ich nicht, aber das sind jedenfalls die einzigen Stellen, wo Du ein Passwort mitgibst.
hab jetzt ein neues PWD ohne
#
erstellt.Es funktioniert wieder!
-
@negalein Ja dann hat das nichts mit der Inject NOde zu tun, sondern dass Du in die URL wo Du das Passwort ggf. mitgibst, man das Zeichen erst hätte umwandeln müssen. Eine URL kennt auch keine Umlaute oder sonstige Sonderzeichen, sondern die muss man dann codieren.
Und für das nächste Mal weisst Du Bescheid und wie gut, dass Du im Debug - gesehen hast, dass ein Passwortwechsel fällig war.
Wenn Du also ein
#
das nächste Mal in einer URL eingeben willst, dann musst Du das wie folgt codieren:
-
@mickym sagte in PAJ GPS mit Node-Red abfragen:
sondern dass Du in die URL wo Du das Passwort ggf. mitgibst, man das Zeichen erst hätte umwandeln müssen
ah, also aus xxxxxx#xxxx muss ich xxxxxx%23xxxx machen