NEWS
Test Adapter PSA v0.0.x Peugeot Opel Citroen
-
@sigi234
... 8.4.0 brachte keine Besserung, habe jetzt das letzte Backup (mit 7.8.0) eingespielt und hoffe, dass es wieder funktioniert.Vielleicht hat doch noch jemand eine Lösung zu meinen Fehlern aus #287 ?
EDIT:
7.8.0 funktioniert (wieder) ... also "verträgt" sich das Script aus #210 irgendwie nicht mit 8.4.0 ...
Gegenüber dem Original-Script habe ich das Intervall geändert (letzte Zeile) ... ist da das Problem ?function iter(name, obj) { for(let i in obj) { if(typeof obj[i] == 'object') iter(name + '.' + i, obj[i]); else { log(name + '.' + i + ': ' + obj[i]); if(existsState(name + '.' + i)) setState(name + '.' + i, obj[i]); else createState(name + '.' + i, obj[i]); // type: "mixed" } } } function SendRequest(){ var options = { url: 'http://192.168.178.100:5000/get_vehicleinfo/VXKUHZKXZMxxxxxxx' }; request(options, function (error, response, body){ if (!error) iter('javascript.0.PSA', JSON.parse(body)); else console.error(error); }); } schedule('0 */3 * * *', SendRequest);
-
@raspiuser
hab das Problem mit der 8.3. auch und ich hab nix geändert am Script!
Allerdings momentan deaktiviert, da es seitens evcc gelöst wurde und momentan stabil läuft -
@docsnyder7
Issue auf GitHub eröffnet ... -
@raspiuser said in Test Adapter PSA v0.0.x Peugeot Opel Citroen:
@docsnyder7
Issue auf GitHub eröffnet ...Hast ihr euch vor dem Update einer MAJOR Relese den Changelog angesehen? MAJOR Release enthalten oft BREAKING changes...
Wahrscheinlich nicht, denn dort ist klar dokumentiert, dass REQUEST nicht mehr standardmäig verfügbar ist:
https://github.com/ioBroker/ioBroker.javascript/blob/master/CHANGELOG_OLD.md#800-2024-04-05
Zitat:
(klein0r) Breaking change: Removed support for binary states (deprecated since v6.2.0)
(klein0r) Breaking change: Protected filesystem (iobroker-data/files) to prevent direct file writes
(klein0r) Breaking change: request property has been removed of the sandbox (require the module if still needed)Das Verhalten ist also ein dokumentierter breaking change und kein Bug.
Require request explizit oder wechsle auf axios / httpGet . -
Und was die Frage / das Problem mit Test Adapter PSA v0.0.x Peugeot Opel Citroen zu tun hat ist noch ne andere Frage...
-
@mcm1957 sagte in Test Adapter PSA v0.0.x Peugeot Opel Citroen:
Wahrscheinlich nicht, denn dort ist klar dokumentiert, dass REQUEST nicht mehr standardmäig verfügbar ist:
.... sorry .... mein Fehler ... da war ich schneller als dein Hinweis ...
Aber ich habe da jetzt reingeschaut und fest gestellt, dass ich das mit meinen Javascript-Kenntnissen eh nicht (richtig) interpretiert hätte ...@mcm1957 sagte in Test Adapter PSA v0.0.x Peugeot Opel Citroen:
Require request explizit oder wechsle auf axios / httpGet .
Wäre nett, wenn Du mir das noch erkären könntest (auch wenn das hier nicht wirklich rienpasst
-
@raspiuser
Schau mal da rein:
https://forum.iobroker.net/topic/74893/hilfe-für-javascript-legastheniker-und-js-v8-3-x/33
Bzw. frag im Javascript subforum. Im prinzip sollte es reichen das request package explizit zu requiren.Im Kern gibts 2 Optionen - soweit ich weiß:
- requiren von 'require'
sollte keine Anpassungen am Skript erfordern dafür gibt je Start eine Warning dass require deprecated ist - umstellen auf httpGet oder axios
aufwändiger aber die Zukunft
Da ich aber javascript im js-Adapter nur minimalst einsetze will ich nichts falsches raten. Im JavaScript subforum solltes du aber Hilfe finden. Gibt m.W. dazu einige Topics.
- requiren von 'require'
-
@mcm1957
Vielen Dank für die Hinweise ... da werde ich mich reinlesen. -
@mcm1957 said in Test Adapter PSA v0.0.x Peugeot Opel Citroen:
umstellen auf httpGet oder axios
So läuft das Script jetzt bei mir mit AXIOS. IP-Adresse und VIN austauschen
const axios = require('axios'); schedule('*/5 * * * *', SendRequest); // Alle 5 Minute // Ruft die Daten aus dem FLOBZ-Adapter ab function SendRequest() { var options = { url: 'http://192.168.XXX.XXX:5000/get_vehicleinfo/VR3UXXXXXXXXXXX' }; axios(options) .then(response => { iter('javascript.0.PSA', response.data); }) .catch(error => { console.error(error); }); } // Teilt den erhaltenen String in die einzelnen Merkmale auf und speichert diese in den in Objekt-Variablen unter "javascript.0.PSA" ab function iter(name, obj) { for (let i in obj) { if (typeof obj[i] == 'object') { iter(name + '.' + i, obj[i]); } else { log(name + '.' + i + ': ' + obj[i]); if (existsState(name + '.' + i)) { setState(name + '.' + i, obj[i]); } else { createState(name + '.' + i, obj[i]); // type: "mixed" } } } }
-
@raspiuser sagte in Test Adapter PSA v0.0.x Peugeot Opel Citroen:
da werde ich mich reinlesen.
... ich bin nicht weiter gekommen und freue mich, dass Du die Lösung hier postest !!!
-
Seit einigen Wochen gibt es ja die V3.5.1, ich habe noch die V3.5.0 installiert.
Bin kein Linuxer, kann man einfach mit
pip3 install psa-car-controller
ein Update machen?
-
@hg6806 sagte in Test Adapter PSA v0.0.x Peugeot Opel Citroen:
psa-car-controller
Der?
https://github.com/flobz/psa_car_controller/blob/master/docs/Install.md
-
Genau. 3.5.0 läuft ja schon bei mir
Geht nur um ein Update auf 3.5.1.
Genügt da ein
pip3 install psa-car-controller
?
-
Kommt darauf an, wie du es initial installiert hast.
Per pip kommt halt das aktuelle Release an Land. -
@hg6806 said in Test Adapter PSA v0.0.x Peugeot Opel Citroen:
Genau. 3.5.0 läuft ja schon bei mir
Geht nur um ein Update auf 3.5.1.
Genügt da ein
pip3 install psa-car-controller
?
Was hat das mit dem ioBroker Adapter psa zu tun? Dieses Topic ist der Testthread für den ioBroker Adapter. Dinge die nichts mit dem Testen dieses Adapters zu tun haben sollten in ein eigenes Topic ...
-
Der iobroker PSA adapter funktioniert nicht mehr seit der Umstellung bei PSA.
Die letzten 100 Posts hier haben alle von der PSA CarController Alternative gehandelt. -
Ich hatte es so installiert.
Jetzt noch einmal den gleichen Befehl ausgeführt.
Beim Start zeigt aber wieder die alte Version V3.5.0 -
@hg6806 said in Test Adapter PSA v0.0.x Peugeot Opel Citroen:
Der iobroker PSA adapter funktioniert nicht mehr seit der Umstellung bei PSA.
Die letzten 100 Posts hier haben alle von der PSA CarController Alternative gehandelt.@Homoran
Wäre es dann nicht sinnvolll die letzen 100 Posts abzutrennen?
Im TESTER Bereich ist in einem Testtopic zum Adapter xyz eine umfangreiche Diskussion zu einer alternativen Software nicht passend. Soll nicht heißen, dass nicht über sinnvolle / notwendige / gute Alternativen diskutiert werden soll - nur das hat so wie es sich liest nichts (mehr) mit dem Adapter zu tun. -
@mcm1957 Hab diesen Thread nich unter Beobachtung weil ich mit PSA nix am Hut hab.
jetzt due letzten x Posts zu lesen und zu erkennen was wirklich keinen Bezug zu dem Thead hat und abzutrennen eird daher für mich auch schwierig.
Dabei noch zu beachten, dass in beiden Threads keine Zusammenhänge fehlen kommt noch oben drauf.Sorry
-
OK, wahrscheinlich wäre es dann sinnvoll einen neuen Topic mit einem zum Inhalt passenden Titel anzulegen und hier auf diesen zu verweisen.
Da der Adapter PSA derzeit nicht zu funktionieren scheint und zumindest im Moment keine Aktionen oder Aussagen ob und wann mit einer Anpassung des Adapters - sofern das üebrhaupt möglich ist - zu rechnen ist habe ich mal im Repo ein eindeutiges Issue mit der Bitte um Stellungnahme erstellt. Sollte bis Ende Juli weder eine Reaktion (wo bei ein 'ja wird gefixed, kann aber noch bis xxx dauern' vollkommen ausreicht) erfolgen und auch keine neue funktionierende Release verfügbar sein, fliegt der Adapter auch aus dem LATEST Repository. Eine Neuaufnahme ist natürlich jederzeit wieder möglich sobald eine funktioniernde Release existiert.
Sollte dieser Fall eintreten, dann kann hier jedenfalls geschlossen werden, da es den Adapter dann ja nicht mehr gibt. Kann man aber ggF besprechen wenn es soweit kommen sollte. Ich hoffe dass TA2K den Adapter aktualisieren kann / wird - er leistet ja sonst auch einen super Support für zig Adapter.