HowTo: Gardena Smart System
Einklappen
X
-
Gast anbei die versprochene index.php
Bitte mal mit "http://DEINEURL/index.php?action=DEBUG" ausführen. Dann kannst du mal prüfen ob Passwort und Username korrekt eingetragen sind. Bitte auch sicherstellen, dass dort kein Leerzeichen enthalten ist oder eventuell eine andere Zeichencodierung.
Dann mal schauen ob du dich mit den Daten auch wirklich online einloggen kannst: https://sg-api.dss.husqvarnagroup.ne.../#/session/new
Wenn das klappt. Sollten eigentlich so oder so bereits Rohdaten sichtbar sein. Wenn nicht kannst du mal den Output (natürlich ohne Passwort und Username) hier posten.
Grüße
Michael -
Ich lade mal eine neue index.php hoch da habe ich eine DEBUG Variante eingebaut. Mal sehen ob wir damit weiter kommen -
Hi, hier mal meine Ausgabe:
Notice: Trying to get property of non-object in [...]\xampp\htdocs\gardena\gardena.class.inc.php on line 71
Notice: Trying to get property of non-object in [...]\xampp\htdocs\gardena\gardena.class.inc.php on line 71
Notice: Trying to get property of non-object in [...]\xampp\htdocs\gardena\gardena.class.inc.php on line 72
Notice: Trying to get property of non-object in [...]\xampp\htdocs\gardena\gardena.class.inc.php on line 72
Notice: Trying to get property of non-object in [...]\xampp\htdocs\gardena\gardena.class.inc.php on line 97
Warning: Invalid argument supplied for foreach() in [...]\xampp\htdocs\gardena\gardena.class.inc.php on line 103
CATEGORY_WATERINGCOMPUTER
Notice: Trying to get property of non-object in [...]\xampp\htdocs\gardena\gardena.class.inc.php on line 214
Warning: Invalid argument supplied for foreach() in [...]\xampp\htdocs\gardena\gardena.class.inc.php on line 214
[...]
Inhalte der Zeilen 71 und 72:
$this -> token = $data -> sessions -> token;
$this -> user_id = $data -> sessions -> user_id;
Ich verwende es (jedenfalls versuche ich es) mit PHP 5.6.20 und PHP 7.0.21 -
Bei mir sieht die Ausgabe so aus (siehe unten).
Das Skript läuft auf einem synology nas, dort ist PHP in der Version 7.0 und ein Apache in der Version 2.4 aktiv.
Beginne doch mal in der index.php alles aus zu kommentieren und die zeile 12 einzukommentieren. Da solltest du schon sehen ob überhaupt Daten da sind.
Grüße
Michael
CATEGORY_MOWER
device_info
**last_time_online**: string(20) "2017-07-20T18:19:27Z"
**version**: string(41) "3-2.4.7-1.2.0-4380-MODIFIED-ICD1.16_1.2.0"
**serial_number**: string(8) "xxxxxxxx"
internal_temperature
**temperature**: int(24)
battery
**level**: int(100)
**rechargeable_battery_status**: string(2) "ok" ---Key:1
Possible Values for rechargeable_battery_status: array ( 0 => 'weak', 1 => 'ok', 2 => 'undefined', )
**charging**: bool(false) ---Key:
Possible Values for charging: array ( 0 => 'true', 1 => 'false', )
mower
**manual_operation**: bool(false)
**status**: string(12) "parked_timer" ---Key:7
Possible Values for status: array ( 0 => 'paused', 1 => 'ok_cutting', 2 => 'ok_searching', 3 => 'ok_charging', 4 => 'ok_leaving', 5 => 'wait_updating', 6 => 'wait_power_up', 7 => 'parked_timer', 8 => 'parked_park_selected', 9 => 'off_disabled', 10 => 'off_hatch_open', 11 => 'unknown', 12 => 'error', 13 => 'error_at_power_up', 14 => 'off_hatch_closed', 15 => 'ok_cutting_timer_overridden', 16 => 'parked_autotimer', 17 => 'parked_daily_limit_reached', 18 => 'undefined', )
**error**: string(10) "no_message" ---Key:0
Possible Values for error: array ( 0 => 'no_message', 1 => 'outside_working_area', 2 => 'no_loop_signal', 3 => 'wrong_loop_signal', 4 => 'loop_sensor_problem_front', 5 => 'loop_sensor_problem_rear', 6 => 'trapped', 7 => 'upside_down', 8 => 'low_battery', 9 => 'empty_battery', 10 => 'no_drive', 11 => 'lifted', 12 => 'stuck_in_charging_station', 13 => 'charging_station_blocked', 14 => 'collision_sensor_problem_rear', 15 => 'collision_sensor_problem_front', 16 => 'wheel_motor_blocked_right', 17 => 'wheel_motor_blocked_left', 18 => 'wheel_drive_problem_right', 19 => 'wheel_drive_problem_left', 20 => 'cutting_system_blocked', 21 => 'invalid_sub_device_combination', 22 => 'settings_restored', 23 => 'electronic_problem', 24 => 'charging_system_problem', 25 => 'tilt_sensor_problem', 26 => 'wheel_motor_overloaded_right', 27 => 'wheel_motor_overloaded_left', 28 => 'charging_current_too_high', 29 => 'temporary_problem', 30 => 'guide_1_not_found', 31 => 'guide_2_not_found', 32 => 'guide_3_not_found', 33 => 'difficult_finding_home', 34 => 'guide_calibration_accomplished', 35 => 'guide_calibration_failed', 36 => 'temporary_battery_problem', 37 => 'battery_problem', 38 => 'alarm_mower_switched_off', 39 => 'alarm_mower_stopped', 40 => 'alarm_mower_lifted', 41 => 'alarm_mower_tilted', 42 => 'connection_changed', 43 => 'connection_not_changed', 44 => 'com_board_not_available', 45 => 'slipped', )
**source_for_next_start**: string(10) "week_timer" ---Key:2
Possible Values for source_for_next_start: array ( 0 => 'no_source', 1 => 'completed_cutting_daily_limit', 2 => 'week_timer', 3 => 'countdown_timer', 4 => 'mower_charging', 5 => 'completed_cutting_autotimer', 6 => 'undefined', )
**timestamp_next_start**: string(20) "2017-07-21T06:59:44Z"
**override_end_time**: string(17) "1970-01-01T00:00Z"
radio
**quality**: int(50)
**connection_status**: string(7) "unknown" ---Key:0
Possible Values for connection_status: array ( 0 => 'unknown', 1 => 'status_device_unreachable', 2 => 'status_device_alive', )
**state**: string(4) "poor" ---Key:1
Possible Values for state: array ( 0 => 'bad', 1 => 'poor', 2 => 'good', 3 => 'undefined', )
CATEGORY_GATEWAY
device_info
**last_time_online**: string(3) "N/A"
**version**: string(6) "1.2.23"
**serial_number**: string(3) "N/A"
gateway
**ip_address**: string(13) "192.168.1.107"
**time_zone**: string(28) " Europe/Berlin (CEST, +0200)"Zuletzt geändert von Diablo_Vmax1200; 20.07.2017, 20:33. -
Servus @Diablo_Vmax1200
Das fehlende Hochkomma hatte ich bemerkt.
Wenn es bei dir funktioniert, kannst du mir sagen, welche PHP-Version du nutzt bzw. wie ist dein lokaler Aufbau?
Ein Beispiel der Ergebnisseite wäre auch ganz nett.
Bin ich denn der einzige, bei dem das nicht läuft?Zuletzt geändert von Gast; 20.07.2017, 13:20. -
Nein ohne Internet geht der Robi auch. Wird nur zur Einstellung benötigt. Wobei es auch komplett ohne geht. -
Hi Martin,
da ich auch nicht den ganzen code geschrieben habe und auch nur von anderen geerbt habe kenne ich mich auch nicht genau aus was wo passiert. Aber ich vermute anhand der Stelle die gemeldet wird, dass der login nicht geklappt hat. Prüfe bitte ob du in der data.inc.php alles korrekt eingetragen hast.
In der Vorlage habe ich so wie ich sehe bei der Email Adresse der Hochkomma vergessen:
$pw_user_maeher = 'xxxxxxxxx@xxxx.xxx';
$pw_pawo_maeher = 'xxxxxxx'; -
und wenn Internet mal nicht geht, (kommt zumindest bei uns schon mal des öfteren vor) dann bleibt das Schaf im Stall ?
Obwohl ich mich seit meinem ca 8 Lebensjahr mit digital Elektronik beschäftige gehöre ich mit meinen 46 Jahren wohl nicht direkt zu den "Digital Natives" und kann vermutlich auch deshalb die Gelassenheit bei so einer Abhängigkeit nicht verstehen
-
Ein Gast antworteteVon mir auch ein großes Dankeschön für das Teilen
Bei Zeiten werde ich das auf jeden Fall mal probieren.
Labmaster Ich weis nicht ob unsere paar Daten den Wert des Roboters aufwiegen würden
Wirklich arg stören wird die Cloud wohl keinen , sonst hätte man den Robi ohne Smart gekauft.
Einen Kommentar schreiben:
-
Mal was grundsätzliches zu dem System:
Interessant wird das ganze erst wenn man rausfindet wie man direkt mit den Geräten kommunizieren kann ohne über eine Cloud (in dem Fall wohl .husqvarnagroup.net) gehen zu müssen.
Wer will schon seine Geräte Zuhause über den Umweg durch eine Internetcloud eines Herstellers gesteuert haben, würde jedenfalld bei mir nie in Frage kommen. (ausser ich würde die Hardware (Roboter, Sensor ... ) dafür gratis bekommen, bzw würde dann ja mit meinen Daten dafür bezahlen).Zuletzt geändert von Labmaster; 19.07.2017, 15:28.Einen Kommentar schreiben:
-
Ein Gast antworteteHallo zusammen.
Erst einmal danke für die Bereitstellung der Skripte.
Ich komme allerdings nicht über die folgende Meldung beim Aufruf der Info-Seite(http://localhost/gardena/index.php?action=INFO) hinweg
Wobei es von dieser Art mehrere gibt, das ist nur der erste Eintrag.Notice: Trying to get property of non-object in C:\Users\[...]\gardena\gardena.class.inc.php on line 71
Wo stolpere ich, ohne es zu merken?
Zuletzt geändert von Gast; 19.07.2017, 13:31.Einen Kommentar schreiben:
-
HI User407,
danke! Beim Auslesen passen auch ein paar Daten noch nicht.
z.B. der Akku Zustand
Bin aber leider noch nicht zum korrigieren gekommen.
Grüße
MichaelEinen Kommentar schreiben:
-
Ein Gast antworteteHabe das so bei mir in betrieb genommen und es funktioniert super! Besten dank für die php und xml libs. Das hat mir riesig viel arbeit gespart da ich mit php nicht wirklich fit bin
Diablo_Vmax1200 bei den xml vorlagen ist bei folgenden ausgängen ein $ statt ein & drin.
Ist:
/index.php?action=START$duration=1440
/index.php?action=START$duration=360
Soll:
/index.php?action=START&duration=1440
/index.php?action=START&duration=360
Einen Kommentar schreiben:
-
Hi,
ja benötigst du, die Kommunikation funktioniert wie folgt.
Gardena Endgeräte <-Lemonbeat->Gardenagateway <-LAN/WLAN-> Router <-Internet->Gardena Cloud <-Internet->Router<-LAN/WLAN->Raspi<-LAN/WLAN->Router<-LAN->MiniServer<-LAN->Router <-LAN/WLAN-> GUI LoxoneEinen Kommentar schreiben:
Einen Kommentar schreiben: