NEWS
PAJ GPS mit Node-Red abfragen
-
@negalein Na in meinen Augen hilft das nicht, wenn was schief hängt.
Ich würde mal "iob diag" laufen lassen. Dann poste halt mal den gesamten Output von diesem Befehl.
Dann würde ich das Repository wieder auf default umstellen. Bei dem latest hast Du halt ggf. auch Adapter im Beta Stadium dabei.
Wie gesagt jeder Adapter der installiert wird, schreibt was in das Log.Du bist doch schon ein iobroker-Veteran - Du solltest doch mitbekommen, wie oft bei Leuten das System oft schief hängt, wenn sich Adapter nicht installieren lassen (unabhängig von der Art des Adapters).
-
@mickym sagte in PAJ GPS mit Node-Red abfragen:
Ich würde mal "iob diag" laufen lassen.
hab ich vorhin gemacht.
Da passt alles.Na in meinen Augen hilft das nicht, wenn was schief hängt.
hat geholfen
nega@ioBroker:/opt/iobroker$ iobroker install node-red NPM version: 10.7.0 Installing iobroker.node-red@5.2.1... (System call) added 186 packages, and changed 8 packages in 30s 458 packages are looking for funding run `npm fund` for details host.ioBroker install adapter node-red upload [13] node-red.admin /opt/iobroker/node_modules/iobroker.node-red/admin/i18n/de/translations.json i18n/de/translations.json application/json upload [12] node-red.admin /opt/iobroker/node_modules/iobroker.node-red/admin/i18n/en/translations.json i18n/en/translations.json application/json upload [11] node-red.admin /opt/iobroker/node_modules/iobroker.node-red/admin/i18n/es/translations.json i18n/es/translations.json application/json upload [10] node-red.admin /opt/iobroker/node_modules/iobroker.node-red/admin/i18n/fr/translations.json i18n/fr/translations.json application/json upload [9] node-red.admin /opt/iobroker/node_modules/iobroker.node-red/admin/i18n/it/translations.json i18n/it/translations.json application/json upload [8] node-red.admin /opt/iobroker/node_modules/iobroker.node-red/admin/i18n/nl/translations.json i18n/nl/translations.json application/json upload [7] node-red.admin /opt/iobroker/node_modules/iobroker.node-red/admin/i18n/pl/translations.json i18n/pl/translations.json application/json upload [6] node-red.admin /opt/iobroker/node_modules/iobroker.node-red/admin/i18n/pt/translations.json i18n/pt/translations.json application/json upload [5] node-red.admin /opt/iobroker/node_modules/iobroker.node-red/admin/i18n/ru/translations.json i18n/ru/translations.json application/json upload [4] node-red.admin /opt/iobroker/node_modules/iobroker.node-red/admin/i18n/uk/translations.json i18n/uk/translations.json application/json upload [3] node-red.admin /opt/iobroker/node_modules/iobroker.node-red/admin/i18n/zh-cn/translations.json i18n/zh-cn/translations.json application/json upload [2] node-red.admin /opt/iobroker/node_modules/iobroker.node-red/admin/jsonConfig.json jsonConfig.json application/json upload [1] node-red.admin /opt/iobroker/node_modules/iobroker.node-red/admin/node-red.png node-red.png image/png upload [0] node-red.admin /opt/iobroker/node_modules/iobroker.node-red/admin/words.js words.js application/javascript host.ioBroker object system.adapter.node-red created/updated nega@ioBroker:/opt/iobroker$ iobroker add node-red host.ioBroker create instance node-red host.ioBroker object system.adapter.node-red.0.alive created host.ioBroker object system.adapter.node-red.0.connected created host.ioBroker object system.adapter.node-red.0.compactMode created host.ioBroker object system.adapter.node-red.0.cpu created host.ioBroker object system.adapter.node-red.0.cputime created host.ioBroker object system.adapter.node-red.0.memHeapUsed created host.ioBroker object system.adapter.node-red.0.memHeapTotal created host.ioBroker object system.adapter.node-red.0.memRss created host.ioBroker object system.adapter.node-red.0.uptime created host.ioBroker object system.adapter.node-red.0.inputCount created host.ioBroker object system.adapter.node-red.0.outputCount created host.ioBroker object system.adapter.node-red.0.eventLoopLag created host.ioBroker object system.adapter.node-red.0.sigKill created host.ioBroker object system.adapter.node-red.0.logLevel created host.ioBroker object node-red.0.info created host.ioBroker object node-red.0.info.connection created host.ioBroker Set default value of node-red.0.info.connection: false host.ioBroker object system.adapter.node-red.0 created nega@ioBroker:/opt/iobroker$
Dann würde ich das Repository wieder auf default umstellen. Bei dem latest hast Du halt ggf. auch Adapter im Beta Stadium dabei.
Yes, das ist mir bewusst und so gewollt
Wie gesagt jeder Adapter der installiert wird, schreibt was in das Log.
mir ist was in Erinnerung, dass solche Probleme öfter mal von Usern berichtet wurden.
Muss mal das Forum durchforsten.Du bist doch schon ein iobroker-Veteran - Du solltest doch mitbekommen, wie oft bei Leuten das System oft schief hängt, wenn sich Adapter nicht installieren lassen (unabhängig von der Art des Adapters).
Ja, bald ein halbes Jahrhundert Und schon lange (mit 2 Anläufen) hier.
Ich denke, das PAJ-Projekt gehn wir dann morgen mal an.
-
@negalein Ok - Super. - Also der Adapter läuft nun?
-
@mickym sagte in PAJ GPS mit Node-Red abfragen:
Also der Adapter läuft nun?
Ja, ich komm auf die Konfig, aber NR bleibt weiß (bei klick in der linken Leiste) und über die Kachel in Übersicht macht er àbout:blank` auf.
node-red.0 2024-07-04 23:30:21.930 warn Node-RED: 4 Jul 23:30:21 - [warn] Projects disabled : editorTheme.projects.enabled=false node-red.0 2024-07-04 23:30:19.706 info Node-RED started successfully (PID: 3015936) node-red.0 2024-07-04 23:30:19.700 info Starting node-red: --max-old-space-size=128 /opt/iobroker/node_modules/node-red/red.js -v --settings /opt/iobroker/iobroker-data/node-red/settings.js node-red.0 2024-07-04 23:30:18.471 warn Cannot enable the dynamic object read as admin has authentication node-red.0 2024-07-04 23:30:18.430 info Requested NPM packages: [] node-red.0 2024-07-04 23:30:18.349 info starting. Version 5.2.1 in /opt/iobroker/node_modules/iobroker.node-red, node: v20.14.0, js-controller: 5.0.19 node-red.0 2024-07-04 23:30:14.255 info terminating node-red.0 2024-07-04 23:30:13.756 info Terminated (NO_ERROR): Without reason node-red.0 2024-07-04 23:30:13.756 info terminating node-red.0 2024-07-04 23:30:13.751 info cleaned everything up... node-red.0 2024-07-04 23:30:08.760 info Node-RED exited with 0 node-red.0 2024-07-04 23:30:08.748 info kill node-red task node-red.0 2024-07-04 23:16:50.577 warn Node-RED: 4 Jul 23:16:50 - [warn] Projects disabled : editorTheme.projects.enabled=false node-red.0 2024-07-04 23:16:48.523 info Node-RED started successfully (PID: 3015593) node-red.0 2024-07-04 23:16:48.520 info Starting node-red: --max-old-space-size=128 /opt/iobroker/node_modules/node-red/red.js -v --settings /opt/iobroker/iobroker-data/node-red/settings.js node-red.0 2024-07-04 23:16:47.204 warn Cannot enable the dynamic object read as admin has authentication node-red.0 2024-07-04 23:16:47.166 info Requested NPM packages: [] node-red.0 2024-07-04 23:16:47.085 info starting. Version 5.2.1 in /opt/iobroker/node_modules/iobroker.node-red, node: v20.14.0, js-controller: 5.0.19
admin.0 2024-07-04 23:35:47.829 warn node-red has an invalid jsonConfig: [{"instancePath":"/items/_authentication/items/authExt/items/2","schemaPath":"#/items/allOf/35/then/allOf/1/additionalProperties","keyword":"additionalProperties","params":{"additionalProperty":"width"},"message":"must NOT have additional properties"},{"instancePath":"/items/_authentication/items/authExt","schemaPath":"#/patternProperties/%5E.%2B/allOf/23/if","keyword":"if","params":{"failingKeyword":"then"},"message":"must match \"then\" schema"},{"instancePath":"/items/_authentication","schemaPath":"#/properties/items/patternProperties/%5E.%2B/allOf/8/if","keyword":"if","params":{"failingKeyword":"then"},"message":"must match \"then\" schema"},{"instancePath":"","schemaPath":"#/if","keyword":"if","params":{"failingKeyword":"then"},"message":"must match \"then\" schema"}]
-
mit manueller Eingabe von IP:Port funktionierts.
-
@negalein Hmm
Cannot enable the dynamic object read as admin has authentication
da scheinst Du irgendeine Art Authentifizierung im iobroker zu haben.
Schau mal ob Du node-red direkt im Browser aufmachen kannst.
Ich geh mal davon aus, dass Dein iobroker die IP 10.0.1.202 hat.Dann solltest Du Node-Red mit
http://10.0.1.202:1880
öffnen können
-
@negalein sagte in PAJ GPS mit Node-Red abfragen:
mit manueller Eingabe von IP:Port funktionierts.
Ah dann haben sich unsere Posts überschnitten. Wie gesagt - irgendwas an Deinem iobroker hängt schief, aber über den Browser können wir ja morgen dann auch arbeiten.
Du scheinst aber schon irgendwelche Flows da drin zu haben - also hattest Du nochwas in deinem
/opt/iobroker/iobroker-data/node-red
Verzeichnis.
Wenn Du die Flows nicht brauchst, dann lösch die Flows am Besten.
-
@mickym sagte in PAJ GPS mit Node-Red abfragen:
Wie gesagt - irgendwas an Deinem iobroker hängt schief, aber über den Browser können wir ja morgen dann auch arbeiten.
ich forsch noch etwas weiter.
Bis Morgen
Gn8
-
@negalein sagte in PAJ GPS mit Node-Red abfragen:
@mickym sagte in PAJ GPS mit Node-Red abfragen:
Wie gesagt - irgendwas an Deinem iobroker hängt schief, aber über den Browser können wir ja morgen dann auch arbeiten.
ich forsch noch etwas weiter.
Bis Morgen
Gn8
Jo schlaf gut - und wie gesagt - die Flows würde ich löschen - das sind noch Reste von einer vergangenen Installation.
-
@negalein sagte in PAJ GPS mit Node-Red abfragen:
ich forsch noch etwas weiter
mach mal
iob upload all
auf der console
-
@oliverio sagte in PAJ GPS mit Node-Red abfragen:
iob upload all
bleibt so.
In der Kachel ist
httpundefined://10.0.1.202:1880/
hinterlegt.
Das lässt sich nicht ändern. -
Sorry für die Abwesenheit.
Hatte Stress mit der Kleinen.
NR läuft nun (mit direkter URL im Browser; über IOB selbes wie gestern (trotz Reboot, Fix, Deinstall, usw.).
Dazu mach ich demnächst einen eigenen Thread auf.
Hier nun zum PAJ die Links
Login:
https://connect.paj-gps.de/api/v1/login?email=christian%40xxxxxxxx.xx&password=xxxxxxxx
{ "success": { "token": "xxxxxxxxxxxxxxxxxxxx", "refresh_token": "xxxxxxxxxxxxxxxxxxxx", "expires_in": 2592000, "isAdmin": 0, "userID": xxxxxxxxxx, "routeIcon": "arrow", "Petsevices": 0 } }
Tracking Data:
https://connect.paj-gps.de/api/v1/trackerdata/---ID---/last_points?lastPoints=1&gps=1&wifi=0
hier der letzte GPS-Standort{ "success": [ { "id": "xxxxxxxxxxxxx", "lat": xx.xxxxx, "lng": xx.xxxxx, "direction": 0, "dateunix": 1720124721, "battery": 100, "speed": 0, "iddevice": xxxxxxxxxx, "steps": 0, "heartbeat": 0, "accuracy": 0, "wifi": null, "note": null, "upt": null } ], "number_of_correct_markers": 1, "faulty_markers": [], "number_of_faulty_markers": 0, "distance": 0 }
-
Also wenn Du wieder da bist, dann können wir ja mal einen Versuch wagen.
Die Doku der API ist ja hier: https://connect.paj-gps.de/api/documentation
-
hast du in node-red schon einen request durchführen können?
du kannst ja mal den folgenden flow mal als lernbasis verwenden.
einfach den inhalt kopieren und im burgermenü von node-red oben rechts auf import gehen und als neuen flow importieren.
danach auf Übernahme/deploy drücken (muss man bei jeder Änderung machen.Danach kannst du den kleinen Knopf rechts der ersten Inject node drücken. das startet diesen Flow manuell. Das Ergebnis der debug-node kannst du rechts unterhalb des Burger menüs durch druck auf das Käfersymbol dann sehen.
Der Flow ruft mal eine Beispiel API ab und ruft Beispielobjekte (irgendwelche Filmfiguren) ab.Eine node kann man dann durch Doppelklick auf einer node konfigurieren. Also bei dir dann bei http-request..
Die automatisierung mit iobroker machen wir dann später. erst muss die Kernfunktionalität funktionieren.
wenn du eine node konfigurierst und rechts neben dem käfersymbol auf das buch icon klickst, siehst du die hilfe für die ausgewählte node
[ { "id": "366db1589150b476", "type": "tab", "label": "Flow 3", "disabled": false, "info": "", "env": [] }, { "id": "e8c8fbba21beb8a4", "type": "http request", "z": "366db1589150b476", "name": "", "method": "GET", "ret": "obj", "paytoqs": "body", "url": "https://api.sampleapis.com/futurama/characters", "tls": "", "persist": false, "proxy": "", "insecureHTTPParser": false, "authType": "", "senderr": false, "headers": [], "x": 410, "y": 120, "wires": [ [ "8118e4eac98c67a6" ] ] }, { "id": "8118e4eac98c67a6", "type": "debug", "z": "366db1589150b476", "name": "debug", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "targetType": "msg", "statusVal": "", "statusType": "auto", "x": 570, "y": 120, "wires": [] }, { "id": "f3570f56bea9a4eb", "type": "inject", "z": "366db1589150b476", "name": "", "props": [ { "p": "topic", "vt": "str" } ], "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, "topic": "", "x": 250, "y": 120, "wires": [ [ "e8c8fbba21beb8a4" ] ] } ]
-
@mickym sagte in PAJ GPS mit Node-Red abfragen:
dann können wir ja mal einen Versuch wagen.
bin da, aber eventuell bald stromlos wegen Gewitter.
Die Doku der API ist ja hier: https://connect.paj-gps.de/api/documentation
daraus hab ich mir die obigen 2 Abfragen erstellt.
@oliverio sagte in PAJ GPS mit Node-Red abfragen:
Danach kannst du den kleinen Knopf rechts der ersten Inject node drücken
Ok, den
http request
hab ich so.
Da kommt dann nur
6.7.2024, 17:19:25node: e8c8fbba21beb8a4 msg : string[16] "JSON parse error" 6.7.2024, 17:19:25node: debug msg.payload : string[1009] <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="robots" content="noindex,nofollow,noarchive" /> <title>An Error Occurred: Method Not Allowed</title> <link rel="icon" href="data:image/svg+xml,<svg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 128 128%22><text y=%221.2em%22 font-size=%2296%22>❌</text></svg>" /> <style>body { background-color: #fff; color: #222; font: 16px/1.5 -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; margin: 0; } .container { margin: 30px; max-width: 600px; } h1 { color: #dc3545; font-size: 24px; } h2 { font-size: 18px; }</style> </head> <body> <div class="container"> <h1>Oops! An Error Occurred</h1> <h2>The server returned a "405 Method Not Allowed".</h2> <p> Something is broken. Please let us know what you were doing when this error occurred. We will fix it as soon as possible. Sorry for any inconvenience caused. </p> </div> </body...
-
funktioniert
hab das übersehn.von GET auf POST
jetzt bekomm ich den Token
jetzt muss dann der Token noch für die Session gespeichert werden?
Oder kann ich gleich den nächsten http request anhängen?
Ok, so gehts nicht.
6.7.2024, 17:38:25node: debug msg.payload : string[27] "{"error":"Unauthenticated"}"
-
@negalein Also ich will mich grundsätzlich nicht parallel hier reindrängen, wenn @OliverIO das Projekt mit Dir durchführen will, dann kann ich mich auch auf die Beobachterrolle zurückziehen.
Grundsätzlich, um ggf. nachvollziehen zu können, müsstest Du Dein token ggf. mitteilen, was aber kein Problem sein sollte, weil das token ja nur begrenzte Gültigkeit hat. Dein Anmeldedaten musst Du immer für Dich behalten.
Vielleicht ein paar Grundlagen für Node-Red. Während in Blockly alles von oben nach unten verläuft, ist in NodeRed wie in einem Buch, sprich der Flow verläuft in der Regel von links nach rechts so wie Du liest.
Jede Node hat in der Regel - einen Eingang oder keinen Eingang (wenn sie selbst triggert oder wie bei der Inject Node eine Taste hat) und ein oder mehrere Ausgänge.
Über die Debug Node - kannst Du Dir entweder das ganze Nachrichtenobjekt ausgeben lassen oder nur eine Eigenschaft des Nachrichtenobjektes (standardmässig) ist das immer die Eigenschaft "payload" des Nachrichtenobjektes.
Wenn Du eine Node auswählst und rechts im Fenster auf das Buch klickst, dann bekommst Du in der Regel einen Hilfetext zu einer Node.
Wenn Du eine Inject Node rausziehst, ist diese immer mit einem timestamp als payload und einem leeren topic vorbelegt.
Wenn Du also direkt eine Debug Node anschließt, dann kannst Du nun entweder nur die payload, das topic als einzelne Eigenschaft ins Debugfenster oder das gesamte Nachrichtenobjekt.
Aber wie gesagt, wenn Du einfach so loslegen willst, kannst Du es gerne tun. Du weißt ja - viele Köche verderben den Brei.
-
@mickym sagte in PAJ GPS mit Node-Red abfragen:
müsstest Du Dein token ggf. mitteilen
aktueller Token (per PN auch gerne die Zugangsdaten an dich und Oliver)
{ "success": { "token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiIzOCIsImp0aSI6IjA0NDYzYjMzZGQ0NGM2OTExOTcyOWYwNzk1MGJiNjg2MWZjZWVjMmQwYzNiY2E5ZjQ3Y2U1MjM1YWIzNGM1YWQwOTM3MTNkYmIzODg2MGE5IiwiaWF0IjoxNzIwMjgwOTMwLjIyODE0MiwibmJmIjoxNzIwMjgwOTMwLjIyODE0NSwiZXhwIjoxNzIyODcyOTMwLjE5OTYzOCwic3ViIjoiMjk1MjM0NSIsInNjb3BlcyI6W119.f5oY-BKAoDaxyO-jskPIQdZe3Hy7fK_YRidCRRyKXSZ3TGS0iy5U_21wnkasgQVlTkMk-7Kxvk30CWZx6PdI3bAJypTmXsiQ7j6sLVCNdpjbY6uedCnDoXSP50W8sYLPZy8ws-Z_qXc3s3Ylld2TUeiH-9r-LYImFi1s2jO1Jrk9PSoQp2f7EVuvfZFDRV9izewU0GgsQ7QdT3h5xrxDYvI1vzOfJu8CnltKy20E-w2YBRKVUWVdAKQMyNhLNMJFNFWnJBH5maV5Y5dELoPgjAGwiVKYont0GYLUmsKdy4bFyEZFbguJbuyR4thNKEEzQpZx3hWDbe2_BSyCDSzltw0nywumVTHRYjsHutCL3AcwHxw5AY5WBziPa5mTrXwi4K1aaUPGP7ixmKT3kVR56c2_HHUKOsiFJaodjwG6SIpocMqJJxdIqGfuNAzztmtO4Ck5oMOMp67jP6wjsJJ9MQgxY-lrx5wgpzVJ8hgwsG7cLTKbjPqUKiVZfwUzigzwO3uPurZ7K0jUq1ifCzR1-iYml1CvKeZLYG0ZG5qPDBiPkwMFbpFHLnLsA2fjfU-G9h6klYJyxpC7w5jzrCJ_Iboqs-WVXU2wyUF_syZrPf4PQav3h86ClJInvh9EvREnFQ7Ndzks-QAis7cuFp3vB6XmAf4YVY-55kOrFVrN1Yc", "refresh_token": "def502002ce29ee67844eac2a70befa3a2964f1603076e414fd40a287246c0927f5044f7a7918c06b4d9a3a2296c84dde80810c7bf76afc5a5eb1a7684d949100709172c7b893f8dab518ab564f217a6e3df401f7d1b2e4c7343eb050bfb286f5f0b919f99250e8274f8d9bd5712075dde672b3566d7ad1cbffcf9486ba118532a66c4cf1bb68c4a08b69a05a447848502b51d8e5c65d7d9ff90bcd7af073f53fdc8fb665a7b5ad1776349ddeadf9ef6d7e954d77b44b411e228f1af8fd0ae3ac21de40f505146b7e77f2453346c14340fa895bb05db28bc7ab4514c2f6e24e84245dfdac6b577428259b233a23ab897a232dbc0262965287b9d4e10e5feab0fce5f85b2410b5d2b73b90fa68eda0c155e0107622b55a780d12a1e2533f9b07754d98972acf77c4dc94585b4f5b88b16cdad6fd3ac55c3029abece858f71605b6f0ca4c4793bdcfd87ad05e02d7317f21e84f2e4b1338b9069efdd8ad9aa704c2baf19e6b62d04bf", "expires_in": 2592000, "isAdmin": 0, "userID": 2952345, "routeIcon": "arrow", "Petsevices": 0 } }
Wenn Du eine Node auswählst und rechts im Fenster auf das Buch klickst, dann bekommst Du in der Regel einen Hilfetext zu einer Node.
hab ich gefunden und gelesen
Flow verläuft in der Regel von links nach rechts so wie Du liest
müsste dann obiger Screenshot mit 2 Request nacheinander passen?
Aber wo macht er den Login inkl. Token?
-
@negalein Ja im Moment wollte ich den noch gar nicht. Hast Du mal meinen Flow importiert und verstanden wie ein Nachrichtenobjekt aufgebaut ist und welche Möglichkeiten Du hast, Eigenschaften des Nachrichtenobjektes im Debugfenster ausgeben zu lassen?
-
@negalein sagte in PAJ GPS mit Node-Red abfragen:
müsste dann obiger Screenshot mit 2 Request nacheinander passen?
Nein das passt noch lange nicht. Aber ich dachte, wir entwickeln das zusammen?