NEWS
Adapter: bmw zum Auslesen von BMW's ConnectedDrive Daten
-
@fsjoke
Dieser Befehl klappt nicht:
sendTo('bmw.0','send','530D.StarteLichthupe');
Dieser Befehl klappt:
setState('bmw.0.530D.StarteLichthupe', 'on');
Was mach ich falsch bei dem sentTo?
Habe mein Problem mit dem widget wie folgt gelöst:
-
hqwidget als Taster (sendet true und false)
-
Manuelle Variablen angelegt unter "javascript.0.Status…..."
-
Script geschrieben, was bei true reagiert und o.g. "on" sendet.
Für alle die es brauchen können:
on({id: "javascript.0.Status.BMW.Lichthupe", change: "ne", val: true}, function() { log("Auslöser Taster BMW: Starte Lichthupe"); setState('bmw.0.530D.StarteLichthupe', 'on'); });
mfg
Dieter
P.S.
Vielen Dank für den tollen Adapter.
Alleine die Funktion "Starte Klima" ist gold wert.
-
-
Ahh, ich sehe du bist Javascript-fähig :)!
hab's gerade probiert mit 1.3.1:
Kannst mal
sendTo('bmw.0', 'get', '530D.StarteLichthupe' ,function(ret) {log(JSON.stringify(ret),'info');});
probieren und sehen ob sowas zurückkommt:
{"val":"An Farzeug gesendet","ack":true,"ts":1505933645825,"q":0,"from":"system.adapter.bmw.0","lc":1505933645825}
? Wenn ja (wobei die Werte anders sein können aber kein Error gezeigt wird) kannst das get mal auf send austauschen.
im debug log (wenn eingeschaltet) kann bei wirklichen 'send's dann sowas stehen….
! ````
bmw.0 2017-09-20 20:39:46.990 info debug: execute RLF state/execution: { remoteServiceType: 'RLF', remoteServiceStatus: 'EXECUTED', eventId: '563738323832352155725C00@bmw.de', created: '2017-09-20T2
bmw.0 2017-09-20 20:39:41.617 info debug: execute RLF state/execution: { remoteServiceType: 'RLF', remoteServiceStatus: 'DELIVERED_TO_VEHICLE', eventId: '563738323832352155725C00@bmw.de', created: '
bmw.0 2017-09-20 20:39:36.155 info debug: execute RLF state/execution: { remoteServiceType: 'RLF', remoteServiceStatus: 'PENDING', eventId: '563738323832352155725C00@bmw.de', created: '2017-09-20T20
bmw.0 2017-09-20 20:39:30.804 info debug: execute RLF state/execution: { remoteServiceType: 'RLF', remoteServiceStatus: 'PENDING', eventId: '563738323832352155725C00@bmw.de', created: '2017-09-20T20
javascript.0 2017-09-20 20:39:25.318 info script.js.script.TestSendMessage: returned: "returned: "{ val: 29.9, ack: true, ts: 1505932688230, q: 0, from: 'system.adapter.broadlink2.0', lc: 1505932688230 }""
javascript.0 2017-09-20 20:39:25.317 info script.js.script.TestSendMessage: returned: "{ val: 29.9, ack: true, ts: 1505932688230, q: 0, from: 'system.adapter.broadlink2.0', lc: 1505932688230 }"
broadlink2.0 2017-09-20 20:39:25.300 info Message from 'system.adapter.javascript.0', command 'get', message 'broadlink2.0.RM2:RMPROPLUS.Temperature' executed with result:"{ val: 29.9, ack: true, ts: 1505932688230, q: 0, from: 'syste
javascript.0 2017-09-20 20:39:25.283 info script.js.script.TestSendMessage: send command 'get' with message 'broadlink2.0.RM2:RMPROPLUS.Temperature'
javascript.0 2017-09-20 20:39:25.280 info script.js.script.TestSendMessage: returned: "got message sent: 225xe.StarteLichthupe"
bmw.0 2017-09-20 20:39:25.274 info Message from 'system.adapter.javascript.0', command 'send', message '225xe.StarteLichthupe' executed with result:"got message sent: 225xe.StarteLichthupe"
bmw.0 2017-09-20 20:39:25.273 info debug: got message sent: 225xe.StarteLichthupe
bmw.0 2017-09-20 20:39:25.265 info debug: execute RLF for 225xe.StarteLichthupe resulted in: { remoteServiceEvent: { remoteServiceType: 'RLF', remoteServiceStatus: 'PENDING', eventId: '56373
bmw.0 2017-09-20 20:39:22.983 info debug: I should execute RLF for 225xe.StarteLichthupe on xxxxxxxxxxxxxxxxx with path /api/vehicle/remoteservices/v1/xxxxxxxxxx/RLF!
bmw.0 2017-09-20 20:39:22.962 info debug: Execute command "send" with Message 225xe.StarteLichthupe
bmw.0 2017-09-20 20:39:22.961 info debug: received Message { command: 'send', message: '225xe.StarteLichthupe', from: 'system.adapter.javascript.0', callback: { message: '225xe.StarteLichthupe'... -
@fsjoke:Ahh, ich sehe du bist Javascript-fähig :)! `
Ein bisschen; Einschätzung vielleicht Fortgeschrittener (aber ganz am Anfang).Das mit dem sendto probier ich aus.
Meld mich dann wieder.
mfg
-
@fsjoke
Habe probiert:
sendTo('bmw.0', 'get', '530D.StarteLichthupe' ,function(ret) {log(JSON.stringify(ret),'info');});
Und im log: nichts
Es kommt gar keine Meldung.
Benutze sendTo sehr oft bei der Meldung an telegram; da klappt dies einwandfrei.
mfg
Dieter
-
@bahnuhr: Dann hab ich keine Ahnung!
Wenn da nix zurückkommt dann kann fast nur vorkommen dass nix empfangen wird…
Bitte um letzte Eventualitäten auszuschließen: Nochmal von Git laden (ist ja eh schin im admin als Paket gelistet).
Mach dann bitte auch nen 'iobroker upload bmw' ums sicher zu sein dass das letzte io-package.json hochjeladen wird da drinnen ein flag ist welches den Adapter überhaupt erst erlaubt Daten per sendTo zu Empfangen. Hatte ich bis vor einer Woche auch nicht gewusst!
Danke
-
Jo,
das mit dem upload hat geklappt.
Jetzt bekomme ich bei diesem langen Befehl auch ne Rückmeldung.
Und der Befehl:
sendTo('bmw.0','send','530D.StarteLichthupe');
klappt auch.
Jetzt bekomme ich im log entsprechende Rückinfo.
Bis hin zum "executed".
Danke dir.
mfg
Dieter
-
Ich mische mich hier ja nur sehr ungern ein, aber mal eine kleine Frage: ginge so etwas auch für die CarNET Daten von VW / Audi?
Einen Zugang könnte ich gern bereitstellen..
Viele Grüße
Christian
-
Im Prinzip sollte es funktionieren, hab zumindest ein Python-Library im Internet gesehen mit dem man Daten abrufen kann.
Habe in 1-2 Wochen vielleicht Zeit mir das im Javascript-Adapter anzusehen und wenn ich dann Zugang brauche rühr ich mich mit PM.
-
@fsjoke:Im Prinzip sollte es funktionieren, hab zumindest ein Python-Library im Internet gesehen mit dem man Daten abrufen kann.
Habe in 1-2 Wochen vielleicht Zeit mir das im Javascript-Adapter anzusehen und wenn ich dann Zugang brauche rühr ich mich mit PM. `
Oh das klingt ja super, vielen Dank! Ich unterstütze gern, wenn ich irgendwie kann.. -
Hi,
habe durch ein anderes Problem bei mir gesehen das der BMW Adapter sich scheinbar irgendwie im History Adapter verewigt–> siehe Bild
Warum ist das so bzw. muss das so sein oder ist das ein Bug?
-
sich scheinbar irgendwie im History Adapter verewigt- `
Das ist nicht der History-Adapter, sondern das "Einstell-popup" zu einem Datenpunkt.Hier werden Einstellungen für den Datenpunkt für diverse Adapter gemacht.
Das können History, SQL, influxDB sein, oder aber auch mqtt.
Und bei dir ist das der Datenpunkt modbus.0.inputRegisters.30057_Seriennummer
Du solltest dich (oder wen auch immer) fragen, was der BMW-Adapter mit diesem Datenpunkt will.
Gruß
Rainer
-
Hallo Rainer,
Das steht seit installation des BMW Adapters in allen Datenpunkten die ich logge bzw. In allen die geloggt werden können…. zumindest bei mir.
Das war nur ein Beispiel.
Ich habe außer den BMW Adapter zu installieren nichts anderes gemacht.
Mirko
-
Hallo,
bei mir ebenso (habe es eben auch gerade gesehen)
BMW steht bei allen Punkten drin.
Warum weiß ich nicht.
mfg
Dieter
-
Hallo mitsammen!
Danke für die Info, hab ich selbst noch nicht bemerkt aber ich sehe es jetzt auch bei mir.
Grundsätzlich klinkt sich der Adapter nicht in history ein!
Es kann jedoch sein dass er zufällig in der Config was verwendet was ioBroker glauben löässt dass etwas für history konfiguriert werden kann.
Ich hoffe es liest BlueFox oder Alcazone mit um eine Info zu geben!
Eigenartig ist dass ich die selben Unterroutinen verwende wie bei fast allen anderen meiner Adapter und die scheinen nicht auf!
Im Moment ignoriere die (sowieso nicht vorhandene und angezeigte) Meldung!
-
@fsjoke:Hallo mitsammen!
Danke für die Info, hab ich selbst noch nicht bemerkt aber ich sehe es jetzt auch bei mir.
Grundsätzlich klinkt sich der Adapter nicht in history ein!
Es kann jedoch sein dass er zufällig in der Config was verwendet was ioBroker glauben löässt dass etwas für history konfiguriert werden kann.
Ich hoffe es liest BlueFox oder Alcazone mit um eine Info zu geben!
Eigenartig ist dass ich die selben Unterroutinen verwende wie bei fast allen anderen meiner Adapter und die scheinen nicht auf!
Im Moment ignoriere die (sowieso nicht vorhandene und angezeigte) Meldung! `
Hi fsjoke,
Siehe post von Bluefox hier da hat er angegeben welche stelle auf github der verursacher ist
-
Hallo Frank,
@fsjoke:Grundsätzlich klinkt sich der Adapter nicht in history ein! `
Wie oben bereits geschrieben ist das NICHT history.Das wäre jetzt eine falsche Fährte.
Gruß
Rainer
-
Hallo Homoran,
ich glaube auch dass es nicht am History liegt, glaub mehr an admin oder js-controller.
Die Doku ist sehr dünn und nicht alle Abhängigkeiten erklärt/bekannt.
-
Ok, Problem scheint gefunden!
Es scheinen Einträge in io-package.json zu sein!
"preserveSettings": "custom", "supportCustoms": true,
In einem anderen Thread hab ich schon die Ursache von BlueFox genannt bekommen.
Hab gerade geschaut, in meiner original 1.0.1-Version war das nocht nicht drinnen und ich kenn sie auch nicht.
Da diese Datei bei jeder Versionsänderung beschrieben wird ist es jetzt schwer herhauszufinden warum sie hineingekommen sind.
Egal, werde auf Git + npm 'ne neue Version ohne den Zeilen posten was auch schon passiert ist!
Leider ist das nicht die ganze Lösung da js-controller oder admin diesen Status irgenwo zwischenspeichert.
Ich hab auf dem Testsystem definitiv die Einträge weg und der Adapter ist auf 1.3.2 und upgeloaded, system sogar neu gestartet, und trotzdem kommt die Meldung!
Brauche da weitere Hilfe von BlueFox …
-
@fsjoke:Hab gerade geschaut, in meiner original 1.0.1-Version war das nocht nicht drinnen und ich kenn sie auch nicht.
Da diese Datei bei jeder Versionsänderung beschrieben wird ist es jetzt schwer herhauszufinden warum sie hineingekommen sind. `
Blame sagt, es ist in 1.3.0 dazugekommen: -
Hallo mitsammen !
V1.3.3 ist am git & npm und es setzt dieEinträge aktiv auf false was ioBroker dazu bringt den Cache umzuschreiben und nach Adapter upload/restart taucht es bei mir nach einem Tag nicht mehr auf!
p.s.: Sind wahrscheinlich durch cut/paste unabsichtlich hineingeraten.