update HUEBridge/HUEDevice/LightScene

Begonnen von justme1968, 09 Oktober 2015, 16:49:37

Vorheriges Thema - Nächstes Thema

justme1968

anbei neue versionen von HUEBridge, HUEDevice und LightScene zum testen.

mit diesem update werden szenen in der bridge bzw. den einzelnen hue lampen unterstützt. diese szenen können auch mit LightScene verwendet werden. der vorteil der szenen in der bridge ist das sie mit nur einem kommando ohne overhead und im prinzip ohne verzögerung aktiviert werden können. der nachteil ist das der status in fhem erst verzögert angezeigt wird und das sich nachträglich nicht 'nachsehen' lässt wie genau eine solche szene ausschaut ohne sie zu aktivieren.

es gibt die folgenden änderungen/erweiterungen:

  • get <bridge> scenes
    listet alle in der bridge bekannten szenen auf.
  • set <bridge> savescene <id> <lampe1>,[<lampe2>,[...,<lampeN>]]
    speichert den aktuellen zustand der angegebenen lampen in einer szene mit der angegebenen id. lampen können als nummer, fhem device name oder name eines hue gruppe devices angegeben werden.
  • set <bridge> modifyscene <id> <light> <args>
    ändert einstellungen für eine lampe in einer szene. args können die meisten kommandos für hue lampen sein. light kann eine nummer oder ein fhem device sein.
  • set <bridge> scene <id>
    aktiver die szene mit der angegebenen id.
  • set <device> savescene <id>
    speichert den aktuellen zustand aller lampen für dieses hue gruppen device unter der angegebenen id.
  • set <device> scene <id>
    aktiviert diese szene für die schnittenge aus den lampen für dieses gruppen device und den in der szene angegebenen lampen.
  • LightScene erzeugt bei einem save für die beteiligten hue gruppen devices automatisch eine szenen in der bridge. wenn die gespeicherte LightScene wieder hergestellt wird dann wird für beteiligte hue gruppen devices die szene über die bridge wieder hergestellt.

die bridge kann maximal 200 szenen verwalten. sobald mehr angelegt werden werden automatisch ältere gelöscht. szenen lassen sich übrigens nicht löschen. das ist im api nicht vorgesehen.

bevor ich diese version einchecke werde ich vermutlich noch für die szenen und gruppen die angabe der lampen von mit leerzeichen getrennt auf mit komma getrennt umstellen. das würde dann auch leerzeichen in gruppen namen sowie die angaben von szenen namen (auch mit leerzeichen) erlauben.

gruss
  andre

edit:

  • bei alle kommandos die eine liste von lampen erwarten (creategroup, savescene, lights) muss diese jetzt als komma getrennte liste ohne leerzeichen angegebenen werden. hierbei können lampen nummern oder fhem device namen für lampen und gruppen verwendet werden.
  • dadurch ist es jetzt möglich bei creategroup und savescene namen mit leerzeichenzu verwenden.
  • nach einem set auf eine gruppe wird nicht mehr der status jeder einzelnen lampe abgefragt sondern alles mit einer einzigen abfrage.
  • bessere meldung der set kommandos bei fehlenden parametern.


  • es gibt ein neues attribut queryAfterSet. wenn es nicht gesetzt ist (das ist der default!) dann wird nach einem set die direkte antwort der bridge ausgewertet und keine query auf den aktuellen zustand mehr gemacht. besonders in verbindung mit pollDevices sollte die anzahl der requests an die bridge deutlich sinken und verzögerungen minimiert werden.

bitte testen. wenn es keine probleme gibt checke ich die versionen so ein.

edit: ich habe die versionen mit dem obigen funktionsumfang eingecheckt. zusätzlich gibt es noch ein neues attribut asyncDelay für LightScene das genau so wie das gleichnamige attribut in structure funktioniert. wenn es mit fs20 oder homematic komponenten probleme gibt kann es sinnvoll sein es mal zu probieren.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Loredo

Ich verwalte meine Scenes in Verbindung sowie die komplexere Programmierung des HUE Tab derzeit mit der iConnectHue.app. Kann man das dann kombinieren?
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

justme1968

wenn es szenen sind die du über den tab aktivieren kannst dann sind es szenen in der bridge. die solltest du bei einem get <bridge> scenes sehen. und du kannst du auch aus fhem heraus anlegen und verändern.

alles was bei einem get <bridge> scenes nicht auftaucht ist nicht über die bridge realisiert sondern passiert in der jeweiligen app.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Loredo

Jupp, landet alles in der Bridge. Dann bin ich mal gespannt!
Die Verwendung einer LightScene in FHEM ist aber kein Muss, oder?
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

justme1968

hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Loredo

Ich brauche keine LightScene in FHEM, um die HUE Szenen zu verwalten?
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

justme1968

achso. nein. beides ist unabhängig.

nur wenn du ein hue gruppen device in einer LightScene verwendest werden im hintergrund automatisch szenen in der bridge angelegt und verwendet.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Loredo

Ok. Bereits vorhandene HUE Szenen kann ich dann umgekehrt direkt nutzen? :)
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

justme1968

ja. einfach mit set <bridge> scene <id> aufrufen.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

P.A.Trick

Ich bekomme immer noch einen Fehler von der Lightscene!

2015.10.10 11:34:39.169 1: PERL WARNING: Use of uninitialized value $devices in pattern match (m//) at ./FHEM/31_LightScene.pm line 757.
2015.10.10 11:34:39.169 3: stacktrace:
2015.10.10 11:34:39.170 3:     main::__ANON__                      called by ./FHEM/31_LightScene.pm (757)
2015.10.10 11:34:39.171 3:     main::LightScene_updateHelper       called by ./FHEM/31_LightScene.pm (683)
2015.10.10 11:34:39.171 3:     main::LightScene_Set                called by fhem.pl (3071)
2015.10.10 11:34:39.172 3:     main::CallFn                        called by fhem.pl (1531)
2015.10.10 11:34:39.173 3:     main::DoSet                         called by fhem.pl (1561)
2015.10.10 11:34:39.174 3:     main::CommandSet                    called by fhem.pl (1042)
2015.10.10 11:34:39.174 3:     main::AnalyzeCommand                called by fhem.pl (913)
2015.10.10 11:34:39.175 3:     main::AnalyzeCommandChain           called by fhem.pl (3088)
2015.10.10 11:34:39.176 3:     main::fhem                          called by (eval 313) (6)
2015.10.10 11:34:39.176 3:     (eval)                              called by fhem.pl (963)
2015.10.10 11:34:39.177 3:     main::AnalyzePerlCommand            called by fhem.pl (983)
2015.10.10 11:34:39.178 3:     main::AnalyzeCommand                called by fhem.pl (913)
2015.10.10 11:34:39.178 3:     main::AnalyzeCommandChain           called by ./FHEM/91_notify.pm (93)
2015.10.10 11:34:39.179 3:     main::notify_Exec                   called by fhem.pl (3076)
2015.10.10 11:34:39.180 3:     main::CallFn                        called by fhem.pl (2999)
2015.10.10 11:34:39.180 3:     main::DoTrigger                     called by fhem.pl (3294)
2015.10.10 11:34:39.181 3:     main::Dispatch                      called by ./FHEM/93_FHEM2FHEM.pm (176)
2015.10.10 11:34:39.182 3:     main::FHEM2FHEM_Read                called by fhem.pl (3076)
2015.10.10 11:34:39.182 3:     main::CallFn                        called by fhem.pl (651)


Cubietruck,RPI,QNAP Ts-419p+, FS20, FRITZ!DECT200, 7 MAX! Thermostate, 3 MAX! Fensterkontakte, Kodi, CUL V3.3, EM1000S, LW12, LD382, HUE, HM-CFG-USB-2, 1x HM-LC-SW1-FM, 2x HM-LC-SW2-FM, 2x HM-LC-Sw1PBU-FM, 3xHM-LC-Bl1PBU-FM,HM-SEC-RHS, 2xHM-SEC-SD,HM-WDS30-T-O, 3x HM-LC-Dim1TPBU-FM, RPI+AddOn

P.A.Trick

Also bei mir klappt das leider nicht. Bekomme weiterhin die empty-Message Meldungen wenn ich httpsutils, polldevices und delay update gesetzt habe!
Cubietruck,RPI,QNAP Ts-419p+, FS20, FRITZ!DECT200, 7 MAX! Thermostate, 3 MAX! Fensterkontakte, Kodi, CUL V3.3, EM1000S, LW12, LD382, HUE, HM-CFG-USB-2, 1x HM-LC-SW1-FM, 2x HM-LC-SW2-FM, 2x HM-LC-Sw1PBU-FM, 3xHM-LC-Bl1PBU-FM,HM-SEC-RHS, 2xHM-SEC-SD,HM-WDS30-T-O, 3x HM-LC-Dim1TPBU-FM, RPI+AddOn

bruece-lee

#11
Hallo!

Meine HUE's lassen sich seit dem Update gar nicht mehr schalten. Die Bride steht auf INITIALIZED, das HUEDEVICE jeweils auf state UNKNOWN. Hat noch jemand das Problem? Gibt es noch Änderungen seit dem Update, die zu beachten sind?

Meine bis zum Update funktionierende Konfiguration:

define hueBridge1 HUEBridge 192.168.178.54
attr hueBridge1 alias HUE Bridge
attr hueBridge1 key XXXXXXXXXXXXXXXXXXX
attr hueBridge1 room Schlafzimmer

define sz_chr_hue_tuerseite HUEDevice 1
attr sz_chr_hue_tuerseite IODev hueBridge1
attr sz_chr_hue_tuerseite alias Wandlampe Türseite
attr sz_chr_hue_tuerseite color-icons 2
attr sz_chr_hue_tuerseite devStateIcon {(HUEDevice_devStateIcon($name),"toggle")}
attr sz_chr_hue_tuerseite model LCT001
attr sz_chr_hue_tuerseite room Schlafzimmer
attr sz_chr_hue_tuerseite subType extcolordimmer
attr sz_chr_hue_tuerseite webCmd rgb

Danke und Gruß,

Bruece-Lee


*** UPDATE: Ich konnte mein Problem lösen, hatte mit dem Router zu tun und nichts mit der neuen Version des Moduls. Werde nun die neuen Funktionen mit den Szenen mal testen. Vielen Dank für die stetige Weiterentwicklung des Moduls! Die HUE's in Kombination mit FHEM sind einfach toll! ***

justme1968

in den hier angehängten files geht es nur um die szenen und das sie mit LightScene verwendet werden. den LightScene fehler schaue ich mir noch an.

mit den empty messages hat das auch erst mal nichts zu tun. außer du schaltest viele lampen auf ein mal. dann solltest du nicht mehr einzelne lampen sondern hue gruppen devices verwenden. dann ist zumindest das schalten zuverlässig.

das auswerten der rückmeldung statt zu pollen kommt erst noch.


die änderungen hier sind noch garnicht eingecheckt. können also nichts mit deinem problem zu tun haben. was steht bei verbose 5 im log?

zeig mal ein list auf die bridge und auf eine lampe die nicht geht.

gruß
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

2P4u

Danke Andre!.
Genau sowas hab ich gesucht. Wollte grade anfangen das alles so zu basteln:
define Wz1_Btn05short notify Wz1_Btn05.Short.* {
fhem("set HUEDevice1 on");;
fhem("set HUEDevice2 on");;
fhem("set HUEDevice4 on");;
fhem("set HUEDevice6 on");;
fhem("set HUEDevice1 rgb FFA227");;
fhem("set HUEDevice2 rgb A5C621");;
fhem("set HUEDevice4 rgb FF5F36");;
fhem("set HUEDevice6 rgb FC4E10");;
}


Die Hue Scenen anzusteuern ist natürlich viiiiiiel eleganter.
DANKE und EINCHECKEN!

Gruss Daniel
1x Ubuntu Server
1x LaCrosse Gateway für PCA301 /1x HMLAN /1x HMLGW
2x HueBridge mit Devices/ 1x Logitech Harmony Ultimate

justme1968

ich habe die HUE module im ersten beitrag noch mal aktualisiert.

beschreibung dort: http://forum.fhem.de/index.php/topic,42003.msg342251.html#msg342251.

bitte vor allem queryAfterSet testen.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968