FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: Freee84neu am 09 Juni 2020, 21:56:54

Titel: Mehrere devStateIcon
Beitrag von: Freee84neu am 09 Juni 2020, 21:56:54
Hallo

Habe ein Device mit mehreren devStateIcon.

Gibt es da eine Möglichkeiten die Icon's etwas auseinander zu rücken.
Titel: Antw:Mehrere devStateIcon
Beitrag von: amenomade am 09 Juni 2020, 22:15:28
Wie ist dein devStateIcon Attribut definiert?
Titel: Antw:Mehrere devStateIcon
Beitrag von: KernSani am 09 Juni 2020, 22:57:40
Bist du sicher, dass das mehrere devStateIcon sind (macht in meinen Augen keinen Sinn). Sind das nicht eher cmdIcons? bzw. sollten die das nicht besser welche sein?
Titel: Antw:Mehrere devStateIcon
Beitrag von: mumpitzstuff am 09 Juni 2020, 23:51:20
Einfach einmal oder mehrfach   verwenden sollte vermutlich gehen.
Titel: Antw:Mehrere devStateIcon
Beitrag von: Freee84neu am 10 Juni 2020, 00:30:11
Definiert ist es so ..


devStateIcon
1.1:fts_shutter_20 1.3:fts_shutter_40 1.2:fts_shutter_90 3.Runter:fts_shutter_down:on1 2.Hoch:fts_shutter_up:on2 Stop:fts_shutter_manual:Stop


Ja es sind devStateIcons aber denke das es wohl doch mehr sind macht es mit cmdIclons zu machen

Titel: Antw:Mehrere devStateIcon
Beitrag von: amenomade am 10 Juni 2020, 19:36:25
devStateIcon sollte aber nicht mehrere Icons generieren, sondern nur ein, abhängig vom Status des Devices.
ZitatdevStateIcon
Erste Variante:

    Leerzeichen getrennte Auflistung von regexp:icon-name:cmd Dreierpärchen, icon-name und cmd dürfen leer sein.
    Wenn STATE des Gerätes mit der regexp übereinstimmt, wird als icon-name das entsprechende Status Icon angezeigt, und (falls definiert), löst ein Klick auf das Icon das entsprechende cmd aus. Wenn FHEM icon-name nicht finden kann, wird STATE als Text angezeigt.

Was hast Du denn als STATE des Devices, wenn er so mehrere Icons zeigt?
Poste bitte am Besten ein kompletes "list" des Devices.
Titel: Antw:Mehrere devStateIcon
Beitrag von: TomLee am 10 Juni 2020, 20:02:31
ZitatdevStateIcon sollte aber nicht mehrere Icons generieren, sondern nur ein, abhängig vom Status des Devices.

wenn stateformat mehrzeilig (https://forum.fhem.de/index.php/topic,97586.msg908277.html#msg908277) ist schon


Edit:

und da Namen für die Zeilen angegeben sind, gehe ich davon das das so ist
Titel: Antw:Mehrere devStateIcon
Beitrag von: amenomade am 10 Juni 2020, 21:13:13
Siehst Du aber irgendeinen Hinweis, dass sein devStateIcon mehrzeilig wäre?
Namen? Sehe ich nicht. Ich sehe nur eine Leerzeichen-getrennte Liste von regex:icon:ggfKommando
Titel: Antw:Mehrere devStateIcon
Beitrag von: TomLee am 10 Juni 2020, 21:23:44
Die Namen sind die vor dem Punkt
Titel: Antw:Mehrere devStateIcon
Beitrag von: TomLee am 10 Juni 2020, 21:27:57
Ok, sehe gerade, was genau passiert wenn man regex weglässt das mir selbst noch nicht klar, zweimal ist der Name aber angegeben.
Titel: Antw:Mehrere devStateIcon
Beitrag von: TomLee am 10 Juni 2020, 21:36:22
Falsch, der Name ist bis auf stop immer angegeben nur die regex (Reading) nicht, wie auch immer, wenn man regex weg lässt ist mir boch nicht klar was genau Sache ist.
Titel: Antw:Mehrere devStateIcon
Beitrag von: amenomade am 10 Juni 2020, 21:46:26
Nein, devStateIcon sagt nur
STATEregex:Icon:Kommando andereSTATEregex:anderesIcon:anderesKommando, usw

Nur stateFormat ist evtl mehrzeilig (siehe Beispiel in deinem Link)

Deswegen: bitte ein "list" bzw. "list -r" vom Device
Titel: Antw:Mehrere devStateIcon
Beitrag von: TomLee am 10 Juni 2020, 22:02:57
1.1:fts_shutter_20

1.= Name
1: = regex/Readingwert
fts_shutter_20 = icon
kein Kommando/setter

Wie siehst du das ?

[OT]Hier mal ein Beispiel wie ich das bei einem Device umgesetzt habe an dem ich mich orientiere, die erste Zeile braucht keinen Namen[/OT]

defmod MQTT2_EG_Flur_Kueche_Tuer MQTT2_DEVICE DVES_81BCA7
attr MQTT2_EG_Flur_Kueche_Tuer IODev MQTT2_Server
attr MQTT2_EG_Flur_Kueche_Tuer devStateIcon online:10px-kreis-gruen@green offline:10px-kreis-rot@red\
1.on:fts_door_right_open@red:POWER3+off 1.off:fts_door_right@green:POWER3+on\
2.on:fts_door@green:POWER1+off 2.off:fts_door_open@red:POWER1+on\
3.on:message_presence@red:PIR1+off 3.off:message_presence@green:PIR1+on
attr MQTT2_EG_Flur_Kueche_Tuer event-on-change-reading .*
attr MQTT2_EG_Flur_Kueche_Tuer fhem_widget_channels [{"controlled_attribute":"POWER1","order":1,"alias":"Türküche","allowed_values":["off","on"]}]
attr MQTT2_EG_Flur_Kueche_Tuer readingList tele/sonoff_pir_flurkueche/PIRSENSOR:.* { json2nameValue($EVENT) }\
tele/sonoff_pir_flurkueche/LWT:.* LWT\
tele/sonoff_pir_flurkueche/STATE:.* { json2nameValue($EVENT) }\
tele/sonoff_pir_flurkueche/SENSOR:.* { json2nameValue($EVENT) }\
tele/sonoff_pir_flurkueche/INFO.:.* { json2nameValue($EVENT) }\
stat/sonoff_pir_flurkueche/RESULT:.* { json2nameValue($EVENT) }\
DVES_81BCA7:cmnd/sonoff_pir_flurkueche/POWER:.* POWER\
DVES_81BCA7:tele/sonoff_pir_flurkueche/UPTIME:.* { json2nameValue($EVENT, 'UPTIME_', $JSONMAP) }\
DVES_81BCA7:stat/sonoff_pir_flurkueche/POWER3:.* POWER3\
DVES_81BCA7:stat/sonoff_pir_flurkueche/POWER1:.* POWER1\
DVES_81BCA7:stat/sonoff_pir_flurkueche/POWER2:.* POWER2\
DVES_81BCA7:stat/sonoff_pir_flurkueche/POWER:.* POWER
attr MQTT2_EG_Flur_Kueche_Tuer room Fhem_Widget,Homekit,MQTT2_DEVICE
attr MQTT2_EG_Flur_Kueche_Tuer setList off:noArg    cmnd/sonoff_pir_flurkueche/POWER1 0\
on:noArg     cmnd/sonoff_pir_flurkueche/POWER1 1
attr MQTT2_EG_Flur_Kueche_Tuer stateFormat LWT\
1:POWER3\
2:POWER1\
3:PIR1\
<br>\
<a href="http://IPAddress" target="_blank">IPAddress</a>

setstate MQTT2_EG_Flur_Kueche_Tuer online\
1:off\
2:off\
3:off\
<br>\
<a href="http://192.168.188.39" target="_blank">192.168.188.39</a>
setstate MQTT2_EG_Flur_Kueche_Tuer 2019-07-04 18:17:13 Command Unknown
setstate MQTT2_EG_Flur_Kueche_Tuer 2020-05-11 10:01:34 FallbackTopic DVES_81BCA7
setstate MQTT2_EG_Flur_Kueche_Tuer 2020-05-11 10:01:34 GroupTopic sonoffs
setstate MQTT2_EG_Flur_Kueche_Tuer 2020-05-11 10:01:34 Hostname sonoff_pir_flurkueche-7335
setstate MQTT2_EG_Flur_Kueche_Tuer 2020-05-11 10:01:34 IPAddress 192.168.188.39
setstate MQTT2_EG_Flur_Kueche_Tuer 2020-06-08 11:16:31 LWT online
setstate MQTT2_EG_Flur_Kueche_Tuer 2020-05-11 10:01:34 Module Generic
setstate MQTT2_EG_Flur_Kueche_Tuer 2020-01-22 14:08:54 Once off
setstate MQTT2_EG_Flur_Kueche_Tuer 2020-06-10 21:39:21 PIR1 off
setstate MQTT2_EG_Flur_Kueche_Tuer 2020-06-08 11:16:31 POWER
setstate MQTT2_EG_Flur_Kueche_Tuer 2020-06-10 21:55:11 POWER1 off
setstate MQTT2_EG_Flur_Kueche_Tuer 2020-06-10 21:55:11 POWER2 off
setstate MQTT2_EG_Flur_Kueche_Tuer 2020-06-10 21:55:11 POWER3 off
setstate MQTT2_EG_Flur_Kueche_Tuer 2020-01-16 11:38:46 Restart Restarting
setstate MQTT2_EG_Flur_Kueche_Tuer 2020-05-11 10:01:34 RestartReason Hardware Watchdog
setstate MQTT2_EG_Flur_Kueche_Tuer 2020-01-22 14:08:54 Rule on
setstate MQTT2_EG_Flur_Kueche_Tuer 2020-01-22 14:08:54 Rules on switch2#state=1 do publish tele/sonoff_pir_flurkueche/PIRSENSOR {
setstate MQTT2_EG_Flur_Kueche_Tuer 2020-06-10 21:55:11 Switch1 on
setstate MQTT2_EG_Flur_Kueche_Tuer 2020-06-10 21:55:11 Switch2 off
setstate MQTT2_EG_Flur_Kueche_Tuer 2020-06-10 21:55:11 Switch3 off
setstate MQTT2_EG_Flur_Kueche_Tuer 2020-06-10 21:55:11 Time 2020-06-10T20:55:11
setstate MQTT2_EG_Flur_Kueche_Tuer 2020-06-10 21:02:00 UPTIME_Time 2020-06-10T20:02:00
setstate MQTT2_EG_Flur_Kueche_Tuer 2020-03-01 22:02:01 UPTIME_UPTIME_Time 2020-03-01T22:02:00
setstate MQTT2_EG_Flur_Kueche_Tuer 2020-03-01 22:02:01 UPTIME_UPTIME_Uptime 0T11:12:47
setstate MQTT2_EG_Flur_Kueche_Tuer 2020-06-10 21:02:00 UPTIME_Uptime 30T11:00:45
setstate MQTT2_EG_Flur_Kueche_Tuer 2020-06-10 21:55:11 Uptime 30T11:53:56
setstate MQTT2_EG_Flur_Kueche_Tuer 2020-06-10 21:55:11 Vcc 3.500
setstate MQTT2_EG_Flur_Kueche_Tuer 2020-05-11 10:01:34 Version 5.13.1
setstate MQTT2_EG_Flur_Kueche_Tuer 2020-05-11 10:01:34 WebServerMode Admin
setstate MQTT2_EG_Flur_Kueche_Tuer 2020-06-10 21:55:11 Wifi_AP 1
setstate MQTT2_EG_Flur_Kueche_Tuer 2020-06-10 21:55:11 Wifi_APMac FE:EC:DA:FD:26:1A
setstate MQTT2_EG_Flur_Kueche_Tuer 2020-06-10 21:55:11 Wifi_RSSI 24
setstate MQTT2_EG_Flur_Kueche_Tuer 2020-06-10 21:55:11 Wifi_SSId FBF
setstate MQTT2_EG_Flur_Kueche_Tuer 2020-05-27 13:14:18 state on
setstate MQTT2_EG_Flur_Kueche_Tuer 2020-06-10 16:40:44 subscriptions cmnd/DVES_81BCA7/# cmnd/sonoff_pir_flurkueche/# cmnd/sonoffs/#



Titel: Antw:Mehrere devStateIcon
Beitrag von: xenos1984 am 10 Juni 2020, 22:08:13
Genau, wenn STATE mehrzeilig ist, wird devStateIcon für jede Zeile ausgewertet und liefert daher auch für jede Zeile ein Icon, wodurch man mehere Icons generieren kann:

http://forum.fhem.de/index.php/topic,97586.0.html
http://fhem.de/commandref.html#devStateIcon (letzte Zeile über devStateStyle)
Titel: Antw:Mehrere devStateIcon
Beitrag von: amenomade am 10 Juni 2020, 22:17:31
Passt aber nicht zu der Definition hier: https://forum.fhem.de/index.php/topic,111975.msg1062731.html#msg1062731

Mit Kombination von stateFormat und devStateIcon passiert folgendes (nehmen wir das Beispiel von TomLee):
1 ist Reading POWER3, 2 ist Reading POWER1, 3 ist Reading PIR1

So weit so gut.
Aber was sollen jetzt die "set" Kommandos sein?
*1.on:fts_door_right_open@red:POWER3+off 1.off:fts_door_right@green:POWER3+on
Wenn POWER3 gleich on, Icon fts_door_right_open, Kommando "set <device> POWER3 off"

Die Kommandos, die der TE aber definiert, sind: on1, on2 oder Stop. Für welche Readings/Devices?

Erst mit einem "list" wird man sowieso weiter analysieren können. Aber ich wette gerne ;)

Titel: Antw:Mehrere devStateIcon
Beitrag von: amenomade am 10 Juni 2020, 22:33:37
Hmmm. Jetzt, wenn ich das Bild im ersten Post wieder gucke, kann es doch sein, dass ihr Recht habt... Es gäbe ein Reading mit der Position, und dann 2 mögliche Kommandos, die z.B. verschiedene Relais oder verschiedene Inputs des Devices schalten, und noch ein Kommando, um das ganze zu deaktivieren...

Ok, ich nehme alles zurück und warte auf dem "list" ;)
Titel: Antw:Mehrere devStateIcon
Beitrag von: Freee84neu am 11 Juni 2020, 17:13:46
Hi

Es waren wirklich mehrer devStateIcon. Kann dir aber jetzt gerade kein List mehr schicken da ich jetzt alles auf cmdicon umgestellt habe.

Zu mehreren DevStateIcon steht hier was
https://wiki.fhem.de/wiki/DevStateIcon