Beitrag
von elabgrando » 14.03.2020, 02:17
Hi Leute,
ich habe mal endlich wieder Zeit für mein Smarthome.
Ich bin auch auf Alchy's Script gestoßen und es voller Begeisterung eingesetzt und war ebenfalls noch auf der Suche nach HUE Einbindung.
Also was ich getestet habe man kann den Aktor darüber wie folgt ansprechen:
Code: Alles auswählen
!Gerät einschalten
dom.GetObject("VirtualDevices.HU-Hue white01:1.LEVEL").State(1.0);
!Gerät ausschalten
dom.GetObject("VirtualDevices.HU-Hue white01:1.LEVEL").State(0.0);
Alternativ habe ich das noch, bitte nicht schlagen wenn das mal irgendwer geschrieben hat es ist im Ursprung nicht von mir
Code: Alles auswählen
! Script was prüft ob ein HUE Aktor eingeschaltet ist wenn das Level größer 0.0 schaltet er Ihn aus wenn Level gleich 0.0 dann schaltet er Ihn an
! Deckenlampe
var object = "VirtualDevices.HU-Hue white01:1.LEVEL";
var dafl = dom.GetObject(object).State();
WriteLine(dafl);
if(dafl == 0.0)
{
dafl = 1.00;
dom.GetObject(object).State(dafl);
}
else
{
dafl = 0.0;
dom.GetObject(object).State(dafl);
}
WriteLine(dafl);
Beim Ausführen des Scriptes zur Kanalzuordnung wird folgendes ausgegeben
Code: Alles auswählen
Gerät: WZ Deckenlampe li
DeviceTyp: VIR-LG-DIM
Kanal: Tisch
KanalTyp: VIR-LG-DIM-CH
Jetzt hatte ich versucht den Kanaltyp in Alchy's Script zu erweitern es funktioniert leider nur beim ausschalten. Beim einschalten passiert nichts. Ich kann mir vorstellen das es wirklich damit zusammenhängt das der Status nicht abgefragt wird oder hat jemand eine andere Idee.
Code: Alles auswählen
! Alle Aktoren in wählbaren verschiedenen Gewerken/Favoriten (trennen mit \t )
! mit HssType des Items ausschalten wenn eingeschalten
! v 0.8 (c) by Alchy
string liste = "Licht";
! Dont touch behind this Line
string index;
foreach (index, liste) {
object sec = dom.GetObject(index);
if (sec) {
string itemId;
foreach(itemId, sec.EnumUsedIDs()) {
var item = dom.GetObject(itemId);
if (item.IsTypeOf(OT_CHANNEL)) {
var device = dom.GetObject(item.Device());
var hssType = item.HssType();
if ( (hssType == "SWITCH") && (item.DPByHssDP("STATE").Value()) ) {item.DPByHssDP("STATE").State(0);}
if ( (hssType == "DIMMER") && (item.DPByHssDP("LEVEL").Value()) ) {item.DPByHssDP("LEVEL").State(0.0);}
if ( (hssType == "SWITCH_VIRTUAL_RECEIVER") && (item.DPByHssDP("STATE").Value()) ) {item.DPByHssDP("STATE").State(0);}
if ( (hssType == "DIMMER_VIRTUAL_RECEIVER") && (item.DPByHssDP("LEVEL").Value()) ) {item.DPByHssDP("LEVEL").State(0);}
if ( (hssType == "VIRTUAL_DIMMER") && (item.DPByHssDP("LEVEL").Value()) ) {item.DPByHssDP("LEVEL").State(0);}
if ( (hssType == "VIR-LG-DIM-CH") && (item.DPByHssDP("LEVEL").State()) ) {item.DPByHssDP("LEVEL").State(0);}
if ( (hssType == "DIGITAL_OUTPUT") && (item.DPByHssDP("STATE").Value()) ) {item.DPByHssDP("STATE").State(0);}
}
}
}
}
Jemand noch ne Idee wie wir die Hue Geräte auch wieder anschalten können?
Grüße Elabgrando
Klug zu fragen, ist schwieriger, als klug zu antworten.
--------------------------------------------------------------------
286 Kanäle in 70 Geräten:
2x HM-LC-Sw1PBU-FM, 5x HM-LC-Sw1-FM, 2x HMIP-PSM, 8x HM-RC-2-PBU-FM, 1x HM-LC-Sw2-FM, 2x HmIP-WRC6, 1x HM-LC-Sw1-Ba-PCB, 4x HM-LC-Dim1TPBU-FM, 7x HmIP-SWDO-I, 2x HM-RC-Key4-3, 1x HM-RC-Key4-2, 1x HmIP-eTRV-2, 4x VIR-LG-ONOFF, 4x VIR-LG-RGBW-DIM, 1x HM-Sec-Key, 1x HmIP-SPI, 7x HM-LC-Bl1PBU-FM, 1x HmIP-FROLL, 3x HM-Sec-SD-2, 1x HM-Sec-SD-2-Team, 1x VIR-HUE-GTW, 7x HmIP-BWTH, 2x VIR-LG-DIM, 1x HM-RC-19, 1x HmIP-RCV-50
--------------------------------------------------------------------