NEWS
PAJ GPS abfragen
-
Hallo
Ich möchte gerne den PAJ-Tracker in ioB bringen.
Es gibt von denen eine API, jedoch hab ich da null Ahnung.
https://connect.paj-gps.de/api/documentationMir geht es hauptsächlich um die aktuelle Position und eventuell der Strecke vom aktuellen Tag.
Akkustand und Alarmmeldungen wären falls abfragbar auch sehr nützlich.Ob JS oder Blockly wäre egal.
Kann mir hierbei jemand behilflich sein (Kaffee oder Bierchen inbegriffen )
-
@negalein Auf der Seite mit der Doku - kannst Du doch alle Befehle ausprobieren und siehst die Rückmeldung. Wenn das dann alles nach wunsch geht, brauchst Du doch nur die gleichen Befehle anwenden. Wenn Du Dich angemeldet hast, kannst Du oben auf der Seite das Token eintragen.
-
@mickym sagte in PAJ GPS abfragen:
kannst Du doch alle Befehle ausprobieren
Ja, das hab ich bereits gemacht (noch nicht alle durch).
Aber wie ich das dann mit JS oder Blockly in ioB bringe, da stehts dann an. -
@negalein Na wenn Du auf der Webseite zum Beispiel die Tracking Daten aufrufst, nachdem Du Dich authentifiziert hast,
dann siehst Du doch wie die URL aussehen muss, um die Daten zurückzubekommen.
s. grüner Pfeil
und den kannst Du doch dann mit Blockly ausführen:
Vorher musst halt wohl noch den Login ebenfalls machen - keine Ahnung wie lange die Sitzung gültig ist.
Jedenfalls siehst Du ja als allererstes ob dein login erfolgreich war;
und wo email und passwort hinkommen in der URL
-
@mickym sagte in PAJ GPS abfragen:
dann siehst Du doch wie die URL aussehen muss, um die Daten zurückzubekommen.
Ja, aber wenn man in JS 0 Ahnung hat, ist es schwierig.
Wie frage ich ab (irgendwas mit http-Get schätz ich), wie bring ich die einzelnen Abfragen in die DP, usw.
Vorher musst halt wohl noch den Login ebenfalls machen - keine Ahnung wie lange die Sitzung gültig ist.
Gültigkeit müsste ich mich rantasten. Dazu findet man nichts.
Kann mann 2 http (Get) Bausteine hintereinander ausführen?
Und dann müsste der Token auch wo gespeichert werden, damit er wieder mitgeschickt werden kann? -
@negalein sagte in PAJ GPS abfragen:
Wie frage ich ab (irgendwas mit http-Get schätz ich), wie bring ich die einzelnen Abfragen in die DP, usw
Ich bin ja bekannterweise kein Blockly Fan, aber ich habe Dir ja unten den Baustein gepostet mit dem Du nun GET Abfragen machst.
Die Antwort bekommst dann in der DATA Variablen, die kannst Du dann wieder einer eigenen Variablen zuweisen oder gleich in einen Datenpunkt schreiben und dann später weiter verarbeiten.
Also so:
-
@negalein Probiers mal mit 2 Gets nacheinander - ich weiss das auch nicht genau, ob dann die Session verwenden kann oder ob man das Token dann in einem Header mitgeben muss.
In NodeRed kann man folgenden Header mitgeben
"accept":"application/json", "Authorization":"Bearer " & payload
und in der payload kommt dann das Token.
Ansonsten muss man wohl den Axios Aufruf nehmen, wenn man dem Blockly keinen Header mitgeben kann. Aber da sollen sich dann die Javascript Freaks mit beschäftigen. Das sind halt wieder mal Dinge, warum ich NodeRed liebe.
-
@mickym sagte in PAJ GPS abfragen:
Ich bin ja bekannterweise kein Blockly Fan
Yes, ist bekannt
Würde auch JS nehmen, wenns da einfacher wäre.aber ich habe Dir ja unten den Baustein gepostet mit dem Du nun GET Abfragen machst.
Die Antwort bekommst dann in der DATA Variablen, die kannst Du dann wieder einer eigenen Variablen zuweisen oder gleich in einen Datenpunkt schreiben und dann später weiter verarbeiten.Ok, also in die Data-Variable speichert er den Token?
Probiers mal mit 2 Gets nacheinander - ich weiss das auch nicht genau, ob dann die Session verwenden kann oder ob man das Token dann in einem Header mitgeben muss.
ich versuch es.
-
@negalein Ja wenn Du es mit JS machst, dann musst halt die Axios Bibliothek nutzen:
https://axios-http.com/docs/req_configaber ich bin da raus, weil mir das einfach zuviel Codiererei ist. Aber @OliverIO kann wahrscheinlich helfen. Er programmiert ja nur in JS und kennt sich mit Webseiten bzw. dem HTTP Protokoll super aus.
-
@mickym sagte in PAJ GPS abfragen:
Aber @OliverIO kann wahrscheinlich helfen. Er programmiert ja nur in JS und kennt sich mit Webseiten bzw. dem HTTP Protokoll super aus.
Ja, Oliver hat mir schon so manches gescript.
Da wird @OliverIO noch zum Kaffee-Junky -
@negalein Ansonsten könnten wir ja gemeinsam ein NodeRed Projekt daraus machen.
-
@mickym sagte in PAJ GPS abfragen:
Ansonsten könnten wir ja gemeinsam ein NodeRed Projekt daraus machen.
ich nehm alles, was mich zum Ergebnis bringt.
Hatte NR sogar irgendwann mal wegen Alexa laufen. -
@negalein sagte in PAJ GPS abfragen:
@mickym sagte in PAJ GPS abfragen:
Ansonsten könnten wir ja gemeinsam ein NodeRed Projekt daraus machen.
ich nehm alles, was mich zum Ergebnis bringt.
Hatte NR sogar irgendwann mal wegen Alexa laufen.Na dann können wir es ja probieren, vielleicht meldet sich @OliverIO ja dann auch zwischenzeitlich, dann schmeisst Du es halt wieder weg. Kannst ja mal einen eigenen Thread im NodeRed Forum aufmachen, damit es nicht zu unübersichtlich wird. Vielleicht hat sich das ja auch ganz schnell erledigt, weil ich da auch nicht weiterkomme.
-
Also Bearer/Token-authentication ist eigentlich gar nicht so schwierig
und kann mit einem aktuellen node sogar von nicht JS-Kennern erstellt werden.Beim Authentifizieren übergibt man dem Service zunächst seine Daten.
Das kann entweder ID+Passwort oder auch ein API-Token sein.
Bei PAJ gibt es nur ein einziges Feld, also geh ich mal von einem API-Token aus.Wenn man das abgeschickt hat, erhält man vom Server ein sogenanntes Bearer/Session-Token zurück, das meist nur eine gewisse Zeit lang gilt (meist mehrere Minuten), manchmal steht die Zeit in der Anwort auch mit drin.
Dieses Token muss man für alle nachfolgenden Daten-Abfragen im header mit angeben "Bearer: 0123abd"
das war es schon.Wie ein Anfänger das mit einer Swagger-Seite machen kann:
über die swagger seite kann man dann jeweils die login abfrage und die datenabfrage machen,
sich über die web developer tools des browsers die anfrage direkt als node js fetch befehl kopieren.
dann ein wenig code um den token aus der ersten anfrage zu extrahieren und dann in die nachfolgenden datenabfragen einzufügen, fertig -
@negalein Darf ich mal fragen, wie der Stand ist? Was kannst du alles auslesen? Ich habe auch einen GPS-Tracker im Auto und bin deshalb daran interessiert.
-
@rene55 sagte in PAJ GPS abfragen:
@negalein Darf ich mal fragen, wie der Stand ist? Was kannst du alles auslesen? Ich habe auch einen GPS-Tracker im Auto und bin deshalb daran interessiert.
Tja wenn man bereit ist, sich auf das beste grafische Entwicklertool einzulassen, dann geht das.
Die API wurde ja oben verlinkt - und das kann man alles auslesen.
-
@mickym Ich weiß ja, dass du der absolute Node-Red-Fan bist. Das ist auch gut so. Für mich habe ich das auch mal kurz versucht - und auch wieder aufgegeben. Ich mach halt mehr mit javascript.
Ich hab auch mitgelesen, dass du einen Crash-Kurs gegeben hast. Ich wollte aktuell nur wissen, was @Negalein bisher schon auslesen kann. -
@rene55 sagte in PAJ GPS abfragen:
was @Negalein bisher schon auslesen kann.
dies sind für mich die wichtigsten Daten.
-
@negalein Danke für die Rückmeldung. In lat/lng stehen dann die Koordinaten drin. Wie oft rufst du die ab? Ich habe auch Geofences definiert. Gibt es davon auch Meldungen (verlassen/betreten) ?
-
@rene55 sagte in PAJ GPS abfragen:
In lat/lng stehen dann die Koordinaten drin.
Ja
Wie oft rufst du die ab?
alle 10 Minuten
Ich habe auch Geofences definiert. Gibt es davon auch Meldungen (verlassen/betreten) ?
hab keine eingerichtet.
Aber ja, müsste gehen.