Fonzo, da hast Du Dich ja auch ganz schön ins Zeug gelegt! Das Modul ist eine Kopie vom Doorbird, oder? Kommt an manchen Stellen noch durch Aber auf den ersten Blick sieht es verdammt gut aus.
Vielleicht schaffe ich es heute noch zu testen - gebe Dir Bescheid!
bool(false)
Notice: Undefined property: stdClass::$vin in /var/lib/symcon/modules/IPSymconBMWConnectedDrive/BMW/module.php on line 425
Notice: Undefined property: stdClass::$angleUrls in /var/lib/symcon/modules/IPSymconBMWConnectedDrive/BMW/module.php on line 428
Warning: Invalid argument supplied for foreach() in /var/lib/symcon/modules/IPSymconBMWConnectedDrive/BMW/module.php on line 430
Notice: Undefined variable: picture_url in /var/lib/symcon/modules/IPSymconBMWConnectedDrive/BMW/module.php on line 446
NULL
Bist Dir sicher das dass mit dem Token schon funzt? Debug Fenster liefert nicht sehr viel
Anscheinend funktioniert es noch nicht sonst käme nicht false beim Token bei var_dump, muss mal noch mehr Debug Messages ergänzen. Bin jetzt erst mal unterwegs vielleicht komme ich heute Abend mal dazu mir das noch mal anzuschauen. Ansonsten kannst Du ja vielleicht mal schauen ob Du einen Fehler findest bzw. was Du anders machst um der Token zu holen.
Die Implementierung der CURLOPT_POSTFIELDS ist bei mir anders gelöst. Ich bin aber da nicht der größte PHP Fachmann. Du machst das über ein ARRAY und ich über einen String der die einzelnen Wertepare mit & verknüpft.
Wird ein Array automatisch so konvertiert?
Ich bin mir nicht sicher, eventuell verändert das den Header und es sollte durch als String mit & übergeben werden. Bin noch unterwegs kannst Du mal die Funktion isoliert in IPS testen und den Array vorher durch PHP: http_build_query - Manual
jagen. Ich schaue mir das heute Abend noch mal näher an.
Ich habe mal die Türen ergänzt und die Änderung für den Token übernommen. Was versuchst Du für eine Funktion aufzurufen? Wo kommt da genau die Meldung? Bin da auf realitiv genaue Infos angewiesen, da ich selber nicht mit echten Daten testen kann.
var_dump (BMW_GetVehicleData(10049 /*[BMW Modul Test\BMW]*/));
Ergibt:
object(stdClass)#2 (2) {
["error"]=>
string(13) "invalid_token"
["error_description"]=>
string(87) "The access token provided is expired, revoked, malformed, or invalid for other reasons."
}
Sollst Du nicht posten, es geht nur darum ob Du was angezeigt bekommst.
Ansonsten hatte ich vergessen die Fahrgestellnummer (VIN) im Konfigurationsformular sichtbar zu machen, dafür gibt es jetzt ein Eingabefeld und dieses muss zwingend ausgefüllt werden.