18-02-2017, 11:23:51
(Dieser Beitrag wurde zuletzt bearbeitet: 18-02-2017, 11:26:10 von CooperCologne.)
Anbei noch mal meine aktuellen PHP Scripts für die LaMetric.
Das LaMetricIP.php Script ist per Editor entsprechend zu ändern - IP der LaMetric, Port (bleibt in der Regel bei 8080) und API Key aus dem Developer-Portal holen. Alle anderen Scripts holen sich die Daten dann entsprechend aus dieser Datei. Die drei anderen sind entsprechend als Gerät in der UI mit einer URL zum Script hinzuzufügen.
1. LaMetricDisplay.php - einstellen des Displays - Auto-Helligkeit oder Helligkeit zwischen 1-100
Beispiel Parameterübergabe: brightness=50&brightness_mode=manual
brightness: 0-100 (Achtung, brightness setzt brightness_mode manual voraus)
brightness_mode: auto oder manual
2. LaMetricAppSelect.php - wechseln zur nächsten bzw. vorhergehenden App
Parameterübergabe: app=next / app=prev
Nutze ich z.B. über die Innogy Fernbedienung, so muss ich nicht immer zum Handy greifen
3. LaMetricNotification.php - Senden einer Nachricht auf das Display bzw. löschen einer Nachricht vom Display
A. Senden einer Nachricht
Mögliche Parameter: text, priority, icon_type, cycles, lifetime, icon, category, id, repeat
Die Bedeutung der einzelnen Parameter holt man sich am besten aus dem Developer Portal (http://lametric-documentation.readthedoc...tions.html) und experimentiert einfach ein bisschen rum. Ich habe das Script allerdings so geschrieben, dass wenn man nur text übergibt, alle anderen Parameter mit Defaults belegt werden.
Ein komplexerer Aufruf sieht dann z.B. so aus (Co2 erhöht): priority=critical&cycles=0&icon=a7791&text=Achtung, CO2 Wert erhöht!&category=notifications&id=negative5&repeat=1&icon_type=alert
In diesem Beispiel wurde der Parameter cycles=0 gesetzt, das bedeutet, die Nachricht bleibt auf dem Display, bis sie per Tastendruck an der Uhr quittiert wird. Da ich das aber auch steuern wollte, habe ich das Script wie folgt erweitert:
B. Löschen einer Nachricht vom Display
wobei delete=current - löscht die aktuelle Nachricht auf dem Display
und delete=all - löscht alle noch in der Warteschlange befindlichen Nachrichten
Achtung A. und B. lassen sich nicht kombinieren. Das Script wertet auf das Vorhandensein von text oder delete aus. Ist keiner dieser Parameter vorhanden, wird es einfach beendet.
Bei Fragen einfach fragen
Das LaMetricIP.php Script ist per Editor entsprechend zu ändern - IP der LaMetric, Port (bleibt in der Regel bei 8080) und API Key aus dem Developer-Portal holen. Alle anderen Scripts holen sich die Daten dann entsprechend aus dieser Datei. Die drei anderen sind entsprechend als Gerät in der UI mit einer URL zum Script hinzuzufügen.
1. LaMetricDisplay.php - einstellen des Displays - Auto-Helligkeit oder Helligkeit zwischen 1-100
Beispiel Parameterübergabe: brightness=50&brightness_mode=manual
brightness: 0-100 (Achtung, brightness setzt brightness_mode manual voraus)
brightness_mode: auto oder manual
2. LaMetricAppSelect.php - wechseln zur nächsten bzw. vorhergehenden App
Parameterübergabe: app=next / app=prev
Nutze ich z.B. über die Innogy Fernbedienung, so muss ich nicht immer zum Handy greifen
3. LaMetricNotification.php - Senden einer Nachricht auf das Display bzw. löschen einer Nachricht vom Display
A. Senden einer Nachricht
Mögliche Parameter: text, priority, icon_type, cycles, lifetime, icon, category, id, repeat
Die Bedeutung der einzelnen Parameter holt man sich am besten aus dem Developer Portal (http://lametric-documentation.readthedoc...tions.html) und experimentiert einfach ein bisschen rum. Ich habe das Script allerdings so geschrieben, dass wenn man nur text übergibt, alle anderen Parameter mit Defaults belegt werden.
Ein komplexerer Aufruf sieht dann z.B. so aus (Co2 erhöht): priority=critical&cycles=0&icon=a7791&text=Achtung, CO2 Wert erhöht!&category=notifications&id=negative5&repeat=1&icon_type=alert
In diesem Beispiel wurde der Parameter cycles=0 gesetzt, das bedeutet, die Nachricht bleibt auf dem Display, bis sie per Tastendruck an der Uhr quittiert wird. Da ich das aber auch steuern wollte, habe ich das Script wie folgt erweitert:
B. Löschen einer Nachricht vom Display
wobei delete=current - löscht die aktuelle Nachricht auf dem Display
und delete=all - löscht alle noch in der Warteschlange befindlichen Nachrichten
Achtung A. und B. lassen sich nicht kombinieren. Das Script wertet auf das Vorhandensein von text oder delete aus. Ist keiner dieser Parameter vorhanden, wird es einfach beendet.
Bei Fragen einfach fragen
1 Innogy Smarthome Zentrale, Fußbodenheizung, diverse UP-Schalter, Dimmer, Taster, Bewegungsmelder, Fenster/Türkontakte, Philips Hue, Netatmo, Anbindung von Sonos, Nuki Smartlock und LaMetric Time, Neato Botvac D5 Connected