(10-12-2013, 16:12:52)Paedy94 schrieb: D.h.:
PHP-Code:$sh = new \Bubelbub\SmartHomePHP\SmartHome('Hostname or IP address', 'Username', 'Password');
$setState = new SetActuatorStatesRequest($this);
$setState->addRoomTemperatureActuatorState($logicalDeviceId, $temperature, 'Auto'); // Auto kann auch Manu sein!
Hallo,
vorangeschickt: Ich habe heute zum ersten Mal ein paar Zeilen PHP geschrieben. D. h. ich weiß nicht wirklich, was ich tue. ;-)
Ich habe mir die PHP-Dateien von https://github.com/Bubelbub/SmartHome-PHP gezogen und das mal ausprobiert. Muss ich dem Konstruktor von SetActuatorStatesRequest nicht $sh statt $this mitgeben? Jedenfalls gibt es mit $this eine entsprechende Fehlermeldung, mit $sh geht es.
Leider schaltet hier meine Heizung gar nicht. Auch eine Funktion addSwitchActuatorState(), die ich mir nach dem gleichen Muster wie addRoomTemperatureActuatorState() angelegt habe, um einen Zwischenstecker zu schalten, bewirkt nichts.
Ich nehme die Logical Device IDs aus dem mobilen UI bzw. aus der Antwort von getAllLogicalDeviceStates().
Ich nehme an, man muss noch $setState->send() aufrufen? Das gibt mir aber leider immer nur eine leere Antwort:
SimpleXMLElement Object ( )
Wo kann der Fehler liegen?
Gruß,
Christian.
PS: Unter OSX Mavericks laufen die PHP-Programme auch ohne Installation von XAMPP direkt auf der Kommandozeile. Nice. ;-)
Was ich letztendlich vorhabe: Mein Drucker soll automatisch eingeschaltet werden, sobald ein Druckauftrag vorliegt. Er hat als Laserdrucker einen hohen Standby-Verbrauch und ist daher außerhalb der Bürozeiten aus.
Eventuell läuft so etwas dann alle fünf Minuten:
Code:
lpq | grep "no entries" || php drucker_ein.php