(Gelöst) Doif und State von Milight Device

Begonnen von Rolfg, 16 August 2017, 22:21:37

Vorheriges Thema - Nächstes Thema

Rolfg

Hallo zusammen,

habe mal wieder ein Problem. Ich habe im Wohnzimmer ein Led Streifen der über MilightBridge in fhem gesteuert wird. Dieser wird über at und sunrise entsprechen eingeschaltet. Das ist alles ok. Ich möchte aber,wenn der Fernseher an ist, das die Leds auf 30 gedimmt werden und blau sind.  Der Fernseher selber ist nicht in Fhem aber das Ambilight über Fritzdect. Jetzt habe ich ein Doif erstellt, das wenn beides an ist die Led auf dim30 und blau gehen soll. Das Problem ist, das der State von dem Milight nicht on ist, sondern on 28. Die Zahl enspricht dem dimmwert. Jetzt habe ich mir gedacht das ich den string irgendwie zerlegen muß und einer variablen zuweißen kann. Aber ich weiß schon nicht wie ich denn nach dem on abgeschnitten bekomme.

hier mal mein doif:
Internals:
   CHANGED
   DEF        ([Wz.Ambilight:"on"] and [Wz.StribeFarbe:"on"]) (set Wz.StribeFarbe hue 196, set Wz.StribeFarbe dim 30)
   NAME       di_LedStribeFarbe_Blau
   NR         123
   NTFY_ORDER 50-di_LedStribeFarbe_Blau
   STATE      initialized
   TYPE       DOIF
   Readings:
     2017-08-16 22:14:05   cmd             0
     2017-08-16 22:14:05   state           initialized
   Condition:
     0          EventDoIf('Wz.Ambilight',$hash,'on',1) and EventDoIf('Wz.StribeFarbe',$hash,'on',1)
   Devices:
     0           Wz.Ambilight Wz.StribeFarbe
     all         Wz.Ambilight Wz.StribeFarbe
   Do:
     0:
       0          set Wz.StribeFarbe hue 196, set Wz.StribeFarbe dim 30
     1:
   Helper:
     globalinit 1
     last_timer 0
     sleeptimer -1
   Itimer:
   Regexp:
     All:
   State:
     State:
   Trigger:
     all         Wz.Ambilight Wz.StribeFarbe
Attributes:
   do         always
   event-on-change-reading 1
   room       Wohnzimmer


und hier der relevante teil von dem Led

Internals:
   DEF        RGBW MilightBridge 8
   INIT       0
   IODev      MilightBridge
   LEDTYPE    RGBW
   NAME       Wz.StribeFarbe
   NR         22
   NTFY_ORDER 50-Wz.StribeFarbe
   SLOT       8
   SLOTID     8
   STATE      on 28
   TYPE       MilightDevice
   Readings:
     2017-08-16 21:56:09   brightness      28
     2017-08-16 21:56:04   brightness_on   28
     2017-08-16 21:56:09   discoMode       0
     2017-08-16 21:56:09   discoSpeed      0
     2017-08-16 21:56:09   hsv             195,100,28
     2017-08-16 21:56:09   hue             195
     2017-08-16 21:56:09   previousState   170,100,28
     2017-08-16 21:56:09   rgb             003547
     2017-08-16 21:56:09   saturation      100
     2017-08-16 21:56:09   state           on 28
     2017-08-16 21:56:09   transitionInProgress 0



Das merkwürdige ist das das Doif auch nicht im room Wohnzimmer angezeigt wird. Hat irgendeiner eine Idee wie ich die Led auf on prüfen kann?

Danke und Gruß Rolf

Rolfg

Hallo nochmal,

ich habs jetzt anders gemacht. So funktioniert es anscheinend:


([Wz.Ambilight:"on"] and [Wz.StribeFarbe:brightness] > 1) (set Wz.StribeFarbe hue 196, set Wz.StribeFarbe dim 30)


Allerdings verstehe ich nicht, warum es nicht im room Wohnzimmer angezeigt wird.

Gruß rolf

amenomade

Wenn Du im FHEMWEB auf "room" klickst, ist Wohnzimmer in der Liste gehackt?
Wenn Du im FHEMWEB "list room=Wohnzimmer", wird es gelistet?
Brauche ich Popcorn?
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

amenomade

Ubrigens:
event-on-change-reading 1 Was soll das bedeuten?
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

Beta-User

Zitat von: amenomade am 17 August 2017, 15:34:08
Wenn Du im FHEMWEB auf "room" klickst, ist Wohnzimmer in der Liste gehackt?
Wenn Du im FHEMWEB "list room=Wohnzimmer", wird es gelistet?
Brauche ich Popcorn?

Sowas mit "verschwundenen" Devices ist mir auch schon untergekommen; soweit ich mich entsinne, hatte ich da versucht, sie Sortierung von Gruppen in FHEMWEB vorzugeben...

Vielleicht ist es sowas in der Art?????

Gruß, Beta-User
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

amenomade

#5
Stimmt. Wenn Groups definiert sind, und man Spalten im Layout gesetzt hat. Und dann wenn man vergisst, den "group" Attribut auf dem Gerät zu setzen.
Beispiel:
attr WEB column LivingRoom:FS20,notify|FHZ,notify DiningRoom:FS20|FHZ
Wenn ein Device in Raum DiningRoom weder in der Gruppe FS20 noch in der Gruppe FHZ ist, sieht man es im DiningRoom einfach nicht
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

Beta-User

Wenn es das war, will ich aber auch popcorn 8) .
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

Rolfg

Hallo,
Zitat von: amenomade am 17 August 2017, 15:36:04
Ubrigens:
event-on-change-reading 1 Was soll das bedeuten?

nennen wir es Jugend forscht oder so. Einfach mal ausprobiert und in der Ahnungslosigkeit. Hier der list von room Wohnzimmer:

Fernshen_an
GuteNacht
Handy_Rolf
N_Fernsehen
N_Wz.StribeFarbeFernsehen
RG_Kalender_Rolf
Radio_Morgens
SWR3
SWR_3_an
Wetter
Wohnzimmer_Sribe_Morgens_an
Wohnzimmer_Stribe_Abend_an
Wohnzimmer_Stribe_Morgens_aus
Wz.Ambilight
Wz.Computer
Wz.LampeDimmer
Wz.Stereoanlage
Wz.StribeFarbe
Wz_Gute_Nacht
di_LedStribeFarbe_Blau


Und ganz unten wird er aufgeführt aber nicht angezeigt. Habe mal gerade bei einem anderen Dvice den room Wohnzimmer angehakt und es war sofort sichtbar. Habe auch heute mal ein anderes doif ausprobiert. Das wird auch nicht im Wohnzimmer angezeigt. Irgentwas hab ich da verstellt. Ich habe mal ganz am anfang was am Style gestellt. Weiß aber nicht mehr wo und was. Muss ich noch mal googeln. Oder ihr könnt mir vielleicht helfen. In anderen Räumen wird das doif sofort angezeigt. Nur der Interesse halber, kann mann das on 20 von dem state irgenwie auf on formatieren? Im Netzt finde ich nichts richtiges.

Danke und Gruß Rolf

Rolfg

Hallo,

Zitat von: amenomade am 17 August 2017, 16:53:43
Stimmt. Wenn Groups definiert sind, und man Spalten im Layout gesetzt hat. Und dann wenn man vergisst, den "group" Attribut auf dem Gerät zu setzen.
Beispiel:
attr WEB column LivingRoom:FS20,notify|FHZ,notify DiningRoom:FS20|FHZ
Wenn ein Device in Raum DiningRoom weder in der Gruppe FS20 noch in der Gruppe FHZ ist, sieht man es im DiningRoom einfach nicht

genau das war es. Weiß garnicht mehr wann ich das colum angelegt habe. Habe mal DOIf dazugeschrieben und jetzt geht's.

Ich schmeiß dann mal ne runde Popcorn!

Danke und Gruß Rolf

Beta-User

Zitat von: Rolfg am 17 August 2017, 21:17:42
Ich schmeiß dann mal ne runde Popcorn!
Wo abzuholen? 8) ::) ;D
Im Ernst: Schön, dass wir das klären konnten...
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

Rolfg

Hallo,

ich muß das jetzt noch mal vorholen weil es nicht so funktioniert wie ich mir das vorgestellt habe. Das DOIF schaltet mit die Led jetzt immer auf blau auch wenn das Ambilight aus ist. Eigentlich dachte ich das es nur agiert wenn beide Geräte on sind.
Hier noch mal ein list: Ambilight ist aus.


Internals:
   DEF        ([Wz.Ambilight:"on"] and [Wz.StribeFarbe:brightness] > 1) (set Wz.StribeFarbe hue 196, set Wz.StribeFarbe dim 30)
   NAME       di_LedStribeFarbe_Blau
   NR         123
   NTFY_ORDER 50-di_LedStribeFarbe_Blau
   STATE      cmd_1
   TYPE       DOIF
   Readings:
     2017-08-18 16:33:45   Device          Wz.StribeFarbe
     2017-08-18 16:33:45   cmd             1
     2017-08-18 16:33:45   cmd_event       Wz.Ambilight
     2017-08-18 16:33:45   cmd_nr          1
     2017-08-18 16:33:45   e_Wz.Ambilight_events off,present: yes,FBNAME: FRITZ!DECT 200 #1 Ambilight,FBPROP: powerMeter,tempSensor,switch,energy: 5159 Wh,temperature: 27.0 C (measured),tempadjust: 0.0 C,fwversion: 03.87,ID: 16,AIN: 08761 0340418,mode: manuell,locked: no,power: 0.00 W,FBTYPE: FRITZ!DECT 200
     2017-08-18 16:33:45   e_Wz.StribeFarbe_brightness 30
     2017-08-18 16:33:45   e_Wz.StribeFarbe_events transitionInProgress: 0
     2017-08-18 16:33:45   state           cmd_1
   Condition:
     0          EventDoIf('Wz.Ambilight',$hash,'on',1) and ReadingValDoIf($hash,'Wz.StribeFarbe','brightness') > 1
   Devices:
     0           Wz.Ambilight Wz.StribeFarbe
     all         Wz.Ambilight Wz.StribeFarbe
   Do:
     0:
       0          set Wz.StribeFarbe hue 196, set Wz.StribeFarbe dim 30
     1:
   Helper:
     event      transitionInProgress: 0
     globalinit 1
     last_timer 0
     sleeptimer -1
     timerdev   Wz.Ambilight
     timerevent fwversion: 03.87
     triggerDev Wz.StribeFarbe
     timerevents:
       off
       present: yes
       FBNAME: FRITZ!DECT 200 #1 Ambilight
       FBPROP: powerMeter,tempSensor,switch
       energy: 5159 Wh
       temperature: 27.0 C (measured)
       tempadjust: 0.0 C
       fwversion: 03.87
       ID: 16
       AIN: 08761 0340418
       mode: manuell
       locked: no
       power: 0.00 W
       FBTYPE: FRITZ!DECT 200
     timereventsState:
       state: off
       present: yes
       FBNAME: FRITZ!DECT 200 #1 Ambilight
       FBPROP: powerMeter,tempSensor,switch
       energy: 5159 Wh
       temperature: 27.0 C (measured)
       tempadjust: 0.0 C
       fwversion: 03.87
       ID: 16
       AIN: 08761 0340418
       mode: manuell
       locked: no
       power: 0.00 W
       FBTYPE: FRITZ!DECT 200
     triggerEvents:
       transitionInProgress: 0
     triggerEventsState:
       transitionInProgress: 0
   Internals:
   Itimer:
   Readings:
     0           Wz.StribeFarbe:brightness
     all         Wz.StribeFarbe:brightness
   Regexp:
     0:
     All:
   State:
     State:
   Trigger:
     all         Wz.Ambilight
Attributes:
   do         always
   room       Notify,Wohnzimmer


Und mal ein list von Ambilight:


Internals:
   DEF        fbahahttp:08761_0340418 powerMeter,tempSensor,switch
   IODev      fbahahttp
   LASTInputDev fbahahttp
   MSGCNT     514
   NAME       Wz.Ambilight
   NR         49
   STATE      off
   TYPE       FBDECT
   fbahahttp_MSGCNT 514
   fbahahttp_TIME 2017-08-18 16:38:45
   id         08761_0340418
   props      powerMeter,tempSensor,switch
   Readings:
     2017-08-18 16:38:45   AIN             08761 0340418
     2017-08-18 16:38:45   FBNAME          FRITZ!DECT 200 #1 Ambilight
     2017-08-18 16:38:45   FBPROP          powerMeter,tempSensor,switch
     2017-08-18 16:38:45   FBTYPE          FRITZ!DECT 200
     2017-08-18 16:38:45   ID              16
     2017-08-18 16:38:45   energy          5159 Wh
     2017-08-18 16:38:45   fwversion       03.87
     2017-08-18 16:38:45   locked          no
     2017-08-18 16:38:45   mode            manuell
     2017-08-18 16:38:45   power           0.00 W
     2017-08-18 16:38:45   present         yes
     2017-08-18 16:38:45   state           off
     2017-08-18 16:38:45   tempadjust      0.0 C
     2017-08-18 16:38:45   temperature     27.0 C (measured)
Attributes:
   IODev      fbahahttp
   event-min-interval power:120
   group      Licht
   room       FBDECT,Wohnzimmer


Irgendwie verstehe ich das nicht. Vielleicht kann mir ja jemand helfen.

Danke und Gruß Rolf

Rolfg

#11
So, habe es jetzt gelöst:


([Wz.Ambilight] eq "on" and [Wz.StribeFarbe:brightness] > 1) (set Wz.StribeFarbe hue 196, set Wz.StribeFarbe dim 30) DOELSE


so funktioniert es jetzt. Das do always musste ich auch noch entfernen.

Gruß Rolf

Rolfg

Jetzt habe ich auch die erste Frage gelöst. So funktioniert es auch, falls es mal jemand braucht:


([Wz.Ambilight] eq "on" and [Wz.StribeFarbe] =~ "An") (set Wz.StribeFarbe hue 196, set Wz.StribeFarbe dim 30) DOELSE


Man sollte doch öfter mal die Commandref lesen ::)
Gruß Rolf