LIFX einbinden

Anbindung von FS20-Komponenten, ELV-Wetterstationen, EnOcean und DMX an HomeMatic

Moderator: Co-Administratoren

Antworten
ElGrande72
Beiträge: 49
Registriert: 05.09.2012, 11:31

LIFX einbinden

Beitrag von ElGrande72 » 26.06.2015, 22:02

Hallo und guten Abend,

ich benötige mal fachmännische Unterstützung.
Würde gerne meine LIFX-WLAN-LED einbinden und wollte hierfür die HTTP-API von LIFX nutzen.
Über die Developer-Seite von LIFX http://developer.lifx.com/ habe ich einen Token für meine Anwendung angefordert und dort folgende Infos gefunden:

HTTP API 1.0.b1
EXAMPLE REQUEST

$ curl -u "TOKEN" \
-X PUT \
-d "state=on" \
"https://api.lifx.com/v1beta1/lights/all/power"

Ich habe jetzt versucht, diese Daten in einem Script umzusetzen, leider bislang ohne Erfolg:

Code: Alles auswählen

dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("LD_LIBRARY_PATH=/usr/local/addons/cuxd /usr/local/addons/cuxd/curl -u 'TOKEN' -X PUT -d 'state=on' https://api.lifx.com/v1beta1/lights/all/power");
Leider habe ich nicht genügend Ahnung, um die richtigen Parameter zu finden,
vielleicht kann hier jemand helfen und mir sagen, ob mit diesen Parametern überhaupt eine Anbindung möglich ist.

Vielen Dank für Eure Hilfe und allen schon mal ein schönes Wochenende.
Gruß
El Grande

===========================================================
YAHM CCU2 auf RPi3 mit Home Assistant

Archie
Beiträge: 1
Registriert: 25.10.2015, 18:55

Re: LIFX einbinden

Beitrag von Archie » 25.10.2015, 19:02

Hallo!

Ich hab das so gelöst: möglicherweise hilft das.
Aufpassen musst Du ob PUT oder POST verwendet wid.
Im Falle von PUT musst Du JSON verwendet.

Das Beispiel unten verwendet PUT um den Status aller LIFX auf ON zu setzen, wenn CUxD installiert ist und ein System-Exec Gerät installiert ist was bei Dir der Fall sein dürfte dann müsste das Script out of the Box funken:

Code: Alles auswählen

string nachricht = '{"power": "on"}';
string json = "Content-Type: application/json";
string token = "Authorization: Bearer DEIN-TOKEN-HIER";
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("LD_LIBRARY_PATH=/usr/local/addons/cuxd /usr/local/addons/cuxd/curl -k -H '"#json#"' -H '"#token#"' -X PUT -d '"#nachricht#"' https://api.lifx.com/v1/lights/all/state");
Lg
Archie

ElGrande72
Beiträge: 49
Registriert: 05.09.2012, 11:31

Re: LIFX einbinden

Beitrag von ElGrande72 » 05.11.2015, 21:39

Hallo Archie,

vielen Dank für den Tipp,
habe ich gleich nach meinem Urlaub mal ausprobiert.

In der Entwicklungsumgebung von HQ WebUI funktioniert das Script problemlos.
Wenn ich es aber über das original WebUI einsetze, klappt es nicht und ich erhalte folgende Fehlermeldung:

Error: IseESP::SyntaxError= Error 1 at row 4 col 237 near ^#"' -H '"#token#"' -X PUT -d '"#nachricht#"' https://api.lifx.com/v1/lights/all/^M

Kann man anhand der Meldung sehen, wo das Problem liegt ?
Gruß
El Grande

===========================================================
YAHM CCU2 auf RPi3 mit Home Assistant

ElGrande72
Beiträge: 49
Registriert: 05.09.2012, 11:31

Re: LIFX einbinden

Beitrag von ElGrande72 » 06.11.2015, 22:24

Ok,

Fehler hatte nichts mit dem Script zu tun.
Nach einem Reboot der CCU läuft das Script perfekt.

Große Klasse, damit kann ich sehr schön unterschiedliche Meldungen visualisieren.

Nach mal vielen Dank.
Gruß
El Grande

===========================================================
YAHM CCU2 auf RPi3 mit Home Assistant

criedl
Beiträge: 15
Registriert: 17.01.2017, 17:06
Hat sich bedankt: 1 Mal

Re: LIFX einbinden

Beitrag von criedl » 17.01.2017, 17:14

Hallo zusammen,
danke schon mal für den Input Achie. Das Script läuft, allerdings möchte ich nun nur eine Lampe ansteuern und habe auf der Developerseite von LIFX anch dem "Selector" gesucht, den ich auch gefunden habe. allerdings bekomme ich es nicht hin, diesen in das Script einzubauen, bzw. weiß nicht, wo er hin müßte.

Könntest du eine Scriptzeile zur Verfügung stellen, die beispielhaft nur eine Lampe auswählt?

Wäre super - besten Dank

Grüße

criedl

criedl
Beiträge: 15
Registriert: 17.01.2017, 17:06
Hat sich bedankt: 1 Mal

Re: LIFX einbinden

Beitrag von criedl » 17.01.2017, 20:44

Hi,
habe die Lösung zum Ansteuern für eine Lampe gefunden. Nun stehe ich aber vor einem anderen ;-)

Ich möchte gerne die Pulse Funktion ( siehe LIFX Developer side[url][https://api.developer.lifx.com/docs/pulse-effect/url]) verwenden, allerdings klappt es nicht. Kann es sein, dass hier der POST Befehl verwendet werden muss?

Code: Alles auswählen

string nachricht = '{"color": "red", "period": 2, "cycles": 5, "power": "on",}';
string json = "Content-Type: application/json";
string token = "Authorization Bearer MEIN TOKEN";
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("LD_LIBRARY_PATH=/usr/local/addons/cuxd /usr/local/addons/cuxd/curl -k -H '"#json#"' -H '"#token#"' -X PUT -d '"#nachricht#"' https://api.lifx.com/v1/lights/id:d073d500edcb/effects/pulse");
/code]

Würde mich über ein paar Ideen oder Hinweise freuen.

Danke

criedl

Antworten

Zurück zu „CUxD“