Auslesen der BMW-Daten mit FHEM (225xe)

  • Hi,

    ich hab jetzt noch mal eine Frage. Geht der Link auf das alte Portal oder das neue? Bei mir ist der Wagen vom alten ins neue umgezogen und ich denke mal, ich müßte ihn auch im alten registriert lassen, oder?

    Lg, Tschimi

  • Na ja, es gibt doch jetzt MyBMW... :(


    er meint die folgende Seite und die neue, häsliche myBMW App dazu..

    https://www.bmw.de/de/topics/mein-bmw.html


    Also, einmall registrieren reicht aus :0007:

    Mit Deinem User und Passwort kommst Du in den weiß bauen "online" Himmel überall hinein, die Zugangsdaten passen bei allen Diensten von BMW..


    myBMW wird uns eventuell zukünftig nur ärger machen und wenn myBMW die Connected App abgelöst hat werden wir vielleicht mit FHEM, iObroker und Co. ausgesperrt.


    Die wunderbare newTIS Seite (Technik Seite) wurde schon dicht gemacht!!


    Ist ja auch ärgerlich wenn der Kunde dem BMW Service erzählt was er falsch macht oder dasder Klimakompressor beim 225xe keine Magnetkupplung hat und voll elektrisch funktioniert :0039:


    So etwas geht überhaupt nicht und warum einfach wenn es auch umständlich geht.


    Also liebe Leute von BMW, sorgt dafür das der interessierte Kunde wieder "kostenlos" in die TIS einblick nehmen darf, auch wenn es den Händlern und Werkstätten nicht gefällt.


    Für mich war das ein Argument keinen AUDI zu kaufen!!


    Was ich auch fürchterlich finde, ist das große ALLES OK in der myBMW App!

    Wie grausam ist das denn??

    Also liebe BMW Entwickler, als BMW Kunde gehe ich grundsätzlich davon aus das mein Wagen Top in Ordnung ist, nehmt das dusselige und geschriene "ALLES OK" vom Screen!


    Es reicht doch ein ein blinkender Screen mit ACHTUNG! wenn etwas nicht stimmt!

  • Rumbel

    Eine Frage zu 99_myBMWUtils.pm


    Mit dem script werden die Daten vom BMW Server abgeholt und in die Log Datei geschrieben?

    Dabei handelt es sich um die Daten von Dynamic und efficiency...


    https://www.bmw-connecteddrive.de/api/vehicle/dynamic/v1/$sVim?offset=-60

    https://www.bmw-connecteddrive.de/api/vehicle/efficiency/v1/$sVim



    In der FHEM.cfg stehen dann die Anweisungen was im entsprechenden Raum von FHEM angezeigt wird?


    könnte ich nicht einfach auf der Basis der beiden voran schon integrierten Routinen noch die Daten aus Navigation hinzufügen???

    https://www.bmw-connecteddrive.de/api/vehicle/navigation/v1/$sVim



    Allen aktiven und engagierten hier im Forum einen schönen ersten Advent!!:0008:

  • Vielen Dank für das Modul für Fhem. Endlich kann ich mein 225XE auch in der Lametric Visualisieren. Und die Daten sind echt super. Die originale App ist Schrott gegen das was hier gebastelt wurde.


    Kann mir noch jemand sagen wo und wie ich meinen API Key für Google Maps integrieren muss, damit der Developer Schatten in der Map Ansicht verschwindet?


    VIELEN DANK und besinnliche Weihnachtszeit und


    BLEIBT ALLE GESUND!!!


    Vg Denny

  • Hallo Zusammen,


    so nach zwei Tagen Test und lesen von Seite 1 - Seite 15 muss ich mitteilen, das auch die letzte Version V0.51 Beta leider nicht funktioniert. Auch nicht der FIX auf Seite 14 mit den Login Daten.


    Habe dabei alle Versionen nach und nach geprüft.

    Es folgt immer nach den 1 erfolgreichen Request ein "invalid Bearer" Und danach scheint kein Login mehr möglich.


    Passwort hat keine Sonderzeichen sondern nur Buchstaben und Zahlen

    User hat ein "-" im Domain Name. Ob das ein Problem ist weis ich nicht.


    Habt Ihr noch einen Tipp?


    Vg Denny

  • Bitte das Zitat lesen, dort erfolgt folgender Hinweis:


    $sBearer = ReadingsVal("BMW_CurrentBearer", "state","");

    muss geändert werden in:

    $sBearer = ReadingsVal("BMW_CurrentBearer", "","");


    Hast Du die Sonderzeichen umgewandelt?

    für das @ in der E-Mail Adresse zum Beispiel bite %40 verwenden!


    https://de.wikipedia.org/wiki/URL-Encoding


  • Hallo HansDampf,


    Danke für den Hinweis. Genau das habe ich getan aber leider führte das nicht zum Erfolg.

    Ich habe es im Moment gelöst, indem ich den URL encoded Benutzer Name über den Dummy erstellt habe und nicht in der Datei 99_myBMWUtils.pm direkt in der URL verwende.

    Denn das funktioniert leider nicht.

    Passwort muss ich nicht URL encoden.


    Damit funktioniert es jetzt sogar für zwei Fahrzeuge innerhalb von FHEM.


    Ich frage somit in zwei Räume [BMW und BMW1] ab. Beide haben jeweils einen eigenen Login auf dem BMW Portal. Es handelt sich also tatsächlich um zwei Fahrzeuge gleichen Modells.

    Auch verwenden beide User die neu myBMW APP. Ich dachte Anfangs das dies eines der Probleme sei. Scheint dann doch nicht so zu sein.

    ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------


    Als Hinweis dazu wollte ich die auf Seite 8 verlinkten Files verwenden. Diese funktionieren aber unter Anwendung des Workaround welcher hier besprochen wird definitiv nicht.

    Das ist etwas schade, da ich somit die Commands nicht habe. Auch die Readings sind umfangreicher als in der jetzigen Version welche ich verwende.

    Was ich auch verwunderlich finde,


    Wieso hat die BETA 0.51 ein älteres Datum als 0.2 BETA ?


    Wenn die Möglichkeit besteht, würde ich gern noch herausfinden warum ich die 0.51 nicht ans Laufen bekomme. Die Fehlermeldung ist [ERROR: 400 Bad Request@myBMWUtils_ReceiveCommandAnswer()]


    Diese Funktion gibt es ja in der BETA 0.2 nicht. Daher denke ich, das sich hier grundlegend andere Abfrage Logik unterscheidet.



    Funktional ist bei mir folgende Version:

    Code
    ################################
    
    #MyBMWUtils.pm
    
    #V0.2 Beta
    
    #Rumbel, 26.03.19
    
    
    package main;

    Änderung wurden nur in Codezeile 411 wie im Workaround beschrieben vorgenommen:


    $sBearer = ReadingsVal("BMW_CurrentBearer", "state","");

    muss geändert werden in:

    $sBearer = ReadingsVal("BMW_CurrentBearer", "","");

    ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------


    Nicht funktional ist diese hier:

    Änderung wurden nur in Codezeile 625 wie im Workaround beschrieben vorgenommen:

    $sBearer = ReadingsVal("BMW_CurrentBearer", "state","");

    muss geändert werden in:

    $sBearer = ReadingsVal("BMW_CurrentBearer", "","");




    Vielen Dank für das Modul. Top Arbeit!


    Vg Denny