Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Adapter: bmw zum Auslesen von BMW's ConnectedDrive Daten

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Adapter: bmw zum Auslesen von BMW's ConnectedDrive Daten

    This topic has been deleted. Only users with topic management privileges can see it.
    • S
      Strobelix @lemonbiter last edited by

      @lemonbiter
      EZ 2021? Du bist ja deiner Zeit vorraus.
      Ok dann verstehe ich das jetzt auch nicht ganz.
      Ich habe einen x3 Hybrid von 05/2020 und anhand dessen Daten habe ich das Blockly erstellt

      lemonbiter 1 Reply Last reply Reply Quote 0
      • lemonbiter
        lemonbiter @Strobelix last edited by

        @strobelix

        Sorry... latürnich 2020... LOL

        So.. habe den Datenbaum aktualisiert. es kommt nun mehr... aber vieles ist offen. So sieht es aktuell aus...

        759d1991-a740-4818-98f0-873f3cf24c4e-image.png

        S 1 Reply Last reply Reply Quote 0
        • S
          Strobelix @lemonbiter last edited by Strobelix

          @lemonbiter
          Danke dir.
          Du hast aber nur ein Fahrzeug im Connected Drive Portal oder?

          Die CBS Daten in deiner Log sind die Abfragen für den Servicebedarf, in dem Fall das Datum cbsDueDate.
          Warum es die Daten in deinem Fall nicht gibt, verstehe ich leider auch nicht.
          Ich hab keine Ahnung wie viele unterschiedliche Antworten es von BMW auf diese Abfragen gibt.

          lemonbiter 1 Reply Last reply Reply Quote 0
          • lemonbiter
            lemonbiter @Strobelix last edited by lemonbiter

            @strobelix

            Ja, nur ein Fahrzeug im Portal... mmmh

            Und Standort usw. kann er auch nicht auslesen...?

            S 1 Reply Last reply Reply Quote 0
            • S
              Strobelix @lemonbiter last edited by Strobelix

              @lemonbiter

              Es gibt vier API Endpunkte

              1. Token abfrage - geht bei dir
              2. Fahrzeugdaten abfragen - geht bei dir
              3. Befehle senden - geht bei dir
              4. Status inkl Standort, Servicebedarf abfragen - geht bei dir nicht.

              Frag mich jetzt nicht warum das nicht geht.. ist auf jeden Fall seltsam.
              Ich müsste mir dazu mal die JSON Antwort ansehen.

              Magst mal bitte das Script starten und schauen was da im log zurück kommt?

                  var https = require("https");
                  var request = require("request");
              
                  var options = {
                    url: 'https://b2vapi.bmwgroup.com/webapi/v1/user/vehicles/'+(getState("0_userdata.0.BMW.Fahrzeug.Fahrgestellnummer").val)+'/status',
                    headers: {'Content-Type': 'application/x-www-form-urlencoded'},
                    auth: {
                      bearer: (getState("0_userdata.0.BMW.Token").val)}
                  };
              
                  function callback(error,response,body){
                  var result = JSON.parse(body);
              
                  console.log(body);
              
                  };
                  request.get(options, callback);
              
              
              lemonbiter 1 Reply Last reply Reply Quote 0
              • lemonbiter
                lemonbiter @Strobelix last edited by lemonbiter

                @strobelix

                Prima. So sieht das Blockly aus:
                3f25c729-1af8-4751-b1c0-998feb61f0fc-image.png

                Im Log kommt nüx an
                4ab82852-5f1e-453d-8645-f5d39df3fb15-image.png

                Muss ich noch was einstellen??

                S 1 Reply Last reply Reply Quote 0
                • S
                  Strobelix @lemonbiter last edited by

                  @lemonbiter
                  probiers bitte mit dem JS das ich oben ausgetauscht habe.
                  Dürfte zwar keinen Unterschied machen, aber da frag ich direkt den Body ab und nicht das JSON result

                  lemonbiter 1 Reply Last reply Reply Quote 0
                  • lemonbiter
                    lemonbiter @Strobelix last edited by

                    @strobelix

                    Mist, jetzt hast Du mich leider verloren... Ich weiss leider nicht was Du meinst... Welches JSON?? WO? WIE? WAS?

                    MEA CULPA

                    S 1 Reply Last reply Reply Quote 0
                    • S
                      Strobelix @lemonbiter last edited by

                      @lemonbiter

                      nimm das script, kopiere es in ein leeres Javascript (kein Blockly) und starte es.
                      Dann sollte hoffenltich mehr kommen als nur der cbs Fehler

                          var https = require("https");
                          var request = require("request");
                       
                          var options = {
                            url: 'https://b2vapi.bmwgroup.com/webapi/v1/user/vehicles/'+(getState("0_userdata.0.BMW.Fahrzeug.Fahrgestellnummer").val)+'/status',
                            headers: {'Content-Type': 'application/x-www-form-urlencoded'},
                            auth: {
                              bearer: (getState("0_userdata.0.BMW.Token").val)}
                          };
                       
                          function callback(error,response,body){
                          var result = JSON.parse(body);
                       
                          console.log(body);
                       
                          };
                          request.get(options, callback);
                       
                      
                      
                      lemonbiter 1 Reply Last reply Reply Quote 0
                      • lemonbiter
                        lemonbiter @Strobelix last edited by

                        @strobelix

                        88329554-3b87-4a40-bab5-224fd67b758c-image.png

                        NÜX...

                        2585b629-51e7-497a-9354-5b7751c3adda-image.png

                        S 1 Reply Last reply Reply Quote 0
                        • S
                          Strobelix @lemonbiter last edited by Strobelix

                          @lemonbiter

                          für mal unter

                          console.log(body);
                          noch hinzu:
                          console.log(response);
                          console.log(error);

                          ach ja.. und schalte mal das BMW Blocky vorher aus. Sonst kommen die Fehlermeldungen ja von dem

                          lemonbiter 1 Reply Last reply Reply Quote 0
                          • lemonbiter
                            lemonbiter @Strobelix last edited by

                            @strobelix

                            Jetzt bin ich ganz weg...MANNOOOOOH

                            lemonbiter 1 Reply Last reply Reply Quote 0
                            • lemonbiter
                              lemonbiter @lemonbiter last edited by lemonbiter

                              @lemonbiter

                              so?

                              75236790-b2eb-47b7-963c-e04252fa07c7-image.png

                              Falls so richtig... Ich habe das Blockly aus und dieses Java gestartet... KEIN EINTRAG im Log

                              Danke für Dein Engagement!!

                              S 1 Reply Last reply Reply Quote 0
                              • S
                                Strobelix @lemonbiter last edited by

                                @lemonbiter

                                ja genau

                                lemonbiter M 2 Replies Last reply Reply Quote 1
                                • lemonbiter
                                  lemonbiter @Strobelix last edited by

                                  @strobelix

                                  Ich habe das Blockly aus und dieses Java neu gestartet... KEIN EINTRAG im Log

                                  Danke für Dein Engagement!!

                                  1 Reply Last reply Reply Quote 0
                                  • M
                                    mameier1234 @Strobelix last edited by

                                    @strobelix

                                    Bei mir kommen auch 2 Fehler im Log...

                                    javascript.0	2021-02-08 16:50:00.199	error	(15744) Error in request callback: SyntaxError: Unexpected end of JSON input
                                    javascript.0	2021-02-08 16:50:00.164	error	(15744) Error in request callback: SyntaxError: Unexpected end of JSON input
                                    
                                    

                                    Im Status ist so gut wie nichts gefüllt...

                                    mit der letzen Version , ging das alles noch..

                                    S 1 Reply Last reply Reply Quote 0
                                    • S
                                      Strobelix @mameier1234 last edited by

                                      @mameier1234

                                      Danke für den Hinweis
                                      Ich schau es mir an

                                      Q 1 Reply Last reply Reply Quote 0
                                      • Q
                                        qwertz @Strobelix last edited by

                                        @strobelix
                                        Saugeil ! Vielen Dank für das Script ! Endlich kann die bessere Hälfte wieder mit Siri die Klima starten !

                                        Klappt bei meinem i3 jedoch erst nachdem ich cbsDueDate auskommentiert habe.
                                        cbsDueDate hat bei mir auch die Fehlermeldung geworfen und alle folgenden Abfragen abgebrochen: (888) Error in request callback: TypeError: Cannot read property 'cbsDueDate' of undefined

                                        S 1 Reply Last reply Reply Quote 0
                                        • S
                                          Strobelix @qwertz last edited by

                                          @qwertz
                                          Danke für den Hinweis mit dem cbsDueDate.
                                          Welches hast du denn auskommentiert? Gibt ja mehrere.

                                          Dann kann ich den Fehler vielleicht nachvollziehen. Bei mir läuft es nämlich

                                          Q 1 Reply Last reply Reply Quote 0
                                          • Q
                                            qwertz @Strobelix last edited by

                                            @strobelix

                                            Hi !

                                            Diese beiden Zeilen mag mein i3 (ohne Range Extender) nicht und habe ich auskommentieren müssen:

                                            //setState("0_userdata.0.BMW.Servicebedarf.Hauptuntersuchung.Datum", ''+result.cbsData[3].cbsDueDate, true);
                                            //setState("0_userdata.0.BMW.Servicebedarf.Hauptuntersuchung.Status", ''+result.cbsData[3].cbsState, true);
                                            

                                            So sieht der komplette Dump aus, wenn ich dein o.g. JS-Script (ohne Blockly) laufen lasse (Der BMW denkt TÜV sei abgelaufen, weil die beim letzten TÜV den Zähler nicht zurückgesetzt haben)

                                            {"vehicleStatus":
                                            {"vin":"xxxxxxxxxxxxxxxxxxx",
                                            "mileage":34106,
                                            "updateReason":"CHARGING_DONE",
                                            "updateTime":"2021-02-11T08:27:34+0000",
                                            "doorDriverFront":"CLOSED",
                                            "doorDriverRear":"CLOSED",
                                            "doorPassengerFront":"CLOSED",
                                            "doorPassengerRear":"CLOSED",
                                            "windowDriverFront":"CLOSED",
                                            "windowDriverRear":"CLOSED",
                                            "windowPassengerFront":"CLOSED",
                                            "windowPassengerRear":"CLOSED",
                                            "trunk":"CLOSED",
                                            "rearWindow":"INVALID",
                                            "hood":"CLOSED",
                                            "doorLockState":"SECURED",
                                            "parkingLight":"OFF",
                                            "positionLight":"OFF",
                                            "remainingFuel":0,
                                            "remainingRangeElectric":80,
                                            "remainingRangeElectricMls":49,
                                            "maxRangeElectric":80,
                                            "maxRangeElectricMls":49,
                                            "connectionStatus":"CONNECTED",
                                            "chargingStatus":"FINISHED_FULLY_CHARGED",
                                            "chargingLevelHv":100,
                                            "lastChargingEndReason":"CHARGING_GOAL_REACHED",
                                            "lastChargingEndResult":"SUCCESS",
                                            "position":{"status":"DRIVER_DISABLED"},
                                            "internalDataTimeUTC":"2021-02-11T08:27:34",
                                            "singleImmediateCharging":false,
                                            "chargingConnectionType":"CONDUCTIVE",
                                            "chargingInductivePositioning":"NOT_POSITIONED",
                                            "vehicleCountry":"DE",
                                            "checkControlMessages":[],
                                            
                                            "cbsData":[
                                            	{"cbsType":"VEHICLE_TUV",
                                            "cbsState":"OVERDUE",
                                            "cbsDueDate":"2020-11",
                                            "cbsDescription":"Statutory vehicle inspection overdue!"},
                                            
                                            {"cbsType":"BRAKE_FLUID",
                                            "cbsState":"OK",
                                            "cbsDueDate":"2021-08",
                                            "cbsDescription":"Next change due at the latest by the stated date."},
                                            
                                            {"cbsType":"VEHICLE_CHECK",
                                            "cbsState":"OK",
                                            "cbsDueDate":"2021-08",
                                            "cbsDescription":"Next visual inspection due when the stated distance has been covered or by the stated date."}
                                            ],
                                            "DCS_CCH_Activation":"NA",
                                            "DCS_CCH_Ongoing":false}}
                                            

                                            Besten Dank nochmal !

                                            S 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate
                                            FAQ Cloud / IOT
                                            HowTo: Node.js-Update
                                            HowTo: Backup/Restore
                                            Downloads
                                            BLOG

                                            868
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            49
                                            305
                                            55529
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo