Gerade in größeren Setups ist es eigentlich total unsinnig auf der hue-bridge einzelne Lampen anzusteuern. Wenn man schon diesen wunderbaren Lichtcontroller mit allen seinen Möglichkeiten hat, dann sollte man dort eigentlich keine Lampen direkt ansteuern sondern Szenen, die man dann vom Homecenter aus startet. Das ist deutlich effektiver als viele Lampen einzeln anzusteuern und es bietet viel mehr Möglichkeiten wie z.B. Einblendzeiten usw. Wenn ich mich recht erinnere bietet die hue API auch die Möglichkeit über die Gruppen API Szenen zu steuern. Hat das schon mal jemand in Angriff genommen und ein Script dazu erstellt oder gefunden?
Sorry Freunde - so lange kann ich nicht warten! Hier ist so ein Script. Allerdings noch etwas rudimentär weil in Eile zusammengedrechselt aber ich habe es gerade ausprobiert und es läuft. Viel Spaß damit. Anbei auch noch das virtuelle Modul zum Importieren.
-----------------------------------------------------------------------------
-- Philips HUE Scene Selector
-----------------------------------------------------------------------------
--[[
-----------------------------------------------------------------------------
V. 0.1.0
by i3ke
-----------------------------------------------------------------------------
--]]
-- PART OF CODE FOR USERS TO EDIT AND SETUP ---------------------------------
-- enter HUE scene to set. You can get this ID eg. in the all4hue Android app
local hueSceneID = "QLfLRvafY7JVSYz"
local hueGroupID = "4"
local hueOn = true
-- enter name of the user that you added to the HUE bridge into a global variable hueUser1
local hueUser = fibaro:getGlobal("hueUser1")
-- Icons are subject of a future version of this script
-- ICON ... blablabla
-- END OF USER DEFINED SETUP --------------------------
-- build API strings
local hueAPIget ="/api/"..hueUser.."/groups/"..hueGroupID
local hueAPIput = hueAPIget.."/action"
local hueAPIaction = '{"scene":"'..hueSceneID..'"}'
-- get this virtual device ID
vDeviceID = fibaro:getSelfId()
-- get IP address and TCP port for PhilipsHUE bridge
hueIP = fibaro:get(vDeviceID, "IPAddress")
huePort = fibaro:get(vDeviceID, "TCPPort")
-- verify API call
fibaro:debug(hueAPIget)
fibaro:debug(hueAPIput)
fibaro:debug(hueAPIaction)
-- connect to the Hue bridge
Hue = Net.FHttp(hueIP,huePort)
-- this is the moment where the frog is running into the water
-- HTTP GET to get all the info from the scene
response ,status , errorCode = Hue:GET(hueAPIget);
-- continue if HTTP status code is 200
if (tonumber(status) == 200) then
fibaro:debug("connection OK");
-- HTTP PUT to set the new values
response, status, errorCode = Hue:PUT(hueAPIput, hueAPIaction);
if (tonumber(status) == 200) then
fibaro:debug("scene OK")
else
fibaro:debug("scene error")
end
else
fibaro:log("Hue: not reachable");
end
Anbei habe ich mal ein Virtuelles Modul zur Szenensteuerung gebastelt. Es gibt fünf Schalter zur Lichtszenenauswahl, einen Slider um die Gruppe zu dimmen und zwei Knöpfe um die Lichter der Gruppe an und aus zu schalten.
Bisher ist das Ganze nur oneway - es werden also noch keine Werte aus der hue bridge gelesen - in diesem Punkt ist die hue API - um es vorsichtig auszudrücken “etwas beschränkt”.
Da man hier leider nichts hochladen kann, ein Link zur Dropbox Freigabe:
Philips hue SceneController
Viel Spaß damit und vielleicht hat ja jemand Lust die Rückmeldungen von der hue Bridge auch noch zu scripten und ein paar hübsche Icons einzubinden.
Die API ist schlecht aber gut dokumentiert: hue API - Registrierung erforderlich
Als zip oder txt kann man es hochladen.
Gruß
Hallo zusammen
Ist zwar schon etwas älter aber besten Dank i3ke für das Script. Finde die Einbindung der Hue Leuchten über Gruppen um einiges eleganter als über einzelne Leuchten. Mit 10 Deckenspots sieht eine Schaltung über die einzelnen ID’s und Schleife doch etwas suboptimal aus.
Ein Tipp noch für die, welche die Szenen möglichst einfach ins Lua reinkopieren möchten. Gebt direkt im Browser folgendes ein: http://“ip-adresse-bridge”/api/“nutzer-als-token”/scenes
Das ganze spuckt unter anderem folgendes aus: “lmtrEv0L17R6y34”:{“name”:“Konzentrieren”,“type”:“GroupScene”,“group”:“6”,“lights”:[“18”,“19”,“21”,“22”]
Das fett gedruckte ist eure Szenen ID.
Beste Grüsse und Danke allen für die Arbeit in diesem Forum!
Hab jetzt endlich mal die Zeit gefunden es auch zu implementieren. Funktioniert wirklich klasse. Vielen Dank dafür.
Was auch super geht ist mittels “bri_inc”: die ganze Gruppe auf- oder abzudimmen. Das war ohne das immer recht hakelig.
gibts dieses script auch für HC3?