Zum wiederholten mal: eventMap, devStateIcon, setList und webCmd

Begonnen von supernova1963, 04 März 2019, 07:27:27

Vorheriges Thema - Nächstes Thema

supernova1963

Sorry, ich bekomme es nicht hin:

Ich möchte einen aus einem reading generierten web-Link zusätzlich in webcmd aufnehmen.
Wenn ich das Gelesene richtig verstanden habe, gibt es scheinbar nur die Möglichkeit ein notify auf show zu erstellen!?
Fragen:
Ist das notify der einzige Lösungsweg?
- Wenn ja, kann man ein notify für mehrere devices TYPE=MQTT2_DEVICE anlegen, oder empfiehlt sich ein notify pro device?
- Wenn ja, wie muss der Perl Code im notify aussehen, damit sich die "$link = "http://".ReadingsVal("IPAddress",$DEVICE,""); " in einem neuen Fenster/Tab öffnet?

oder gibt es eine elegante geeignete Alternative?

Vielen Dank,

Gernot

Mögliches Muster für ein einzelnes notify:
defmod MQTT2_SONOFFPOW063_notify_1 notify MQTT2_SONOFFPOW063:show {
  my $link = "http://".ReadingsVal("IPAddress",$DEVICE,"");
  # ...
}


Muster device (gibt es z.Zt. 6 Stück von):

defmod MQTT2_SONOFFPOW063 MQTT2_DEVICE SONOFFPOW063
attr MQTT2_SONOFFPOW063 IODev mqtt2
attr MQTT2_SONOFFPOW063 alias Dunstabzugshaube
attr MQTT2_SONOFFPOW063 cmdIcon on:general_an@#e56524 off:general_aus status:rc_INFO2@#3a5fcd show:it_internet@#3a5fcd
attr MQTT2_SONOFFPOW063 devStateIcon off:radio_unchecked:on on:radio_checked@#e56524:off status:rc_INFO2@#3a5fcd show:it_internet@#3a5fcd .*:message_attention@red
attr MQTT2_SONOFFPOW063 group 4 Geräte
attr MQTT2_SONOFFPOW063 icon vent_exhaust_air
attr MQTT2_SONOFFPOW063 readingList SONOFFPOW063:tele/03_Dunstabzugshaube/LWT:.* LWT\
SONOFFPOW063:cmnd/03_Dunstabzugshaube/POWER:.* POWER\
SONOFFPOW063:tele/03_Dunstabzugshaube/INFO1:.* { json2nameValue($EVENT) }\
SONOFFPOW063:tele/03_Dunstabzugshaube/INFO2:.* { json2nameValue($EVENT) }\
SONOFFPOW063:tele/03_Dunstabzugshaube/INFO3:.* { json2nameValue($EVENT) }\
SONOFFPOW063:stat/03_Dunstabzugshaube/RESULT:.* { json2nameValue($EVENT) }\
SONOFFPOW063:stat/03_Dunstabzugshaube/POWER:.* POWER\
SONOFFPOW063:tele/03_Dunstabzugshaube/STATE:.* { json2nameValue($EVENT) }\
SONOFFPOW063:tele/03_Dunstabzugshaube/SENSOR:.* { json2nameValue($EVENT) }\
SONOFFPOW063:stat/03_Dunstabzugshaube/STATUS:.* { json2nameValue($EVENT) }\
SONOFFPOW063:stat/03_Dunstabzugshaube/STATUS1:.* { json2nameValue($EVENT) }\
SONOFFPOW063:stat/03_Dunstabzugshaube/STATUS2:.* { json2nameValue($EVENT) }\
SONOFFPOW063:stat/03_Dunstabzugshaube/STATUS3:.* { json2nameValue($EVENT) }\
SONOFFPOW063:stat/03_Dunstabzugshaube/STATUS4:.* { json2nameValue($EVENT) }\
SONOFFPOW063:stat/03_Dunstabzugshaube/STATUS5:.* { json2nameValue($EVENT) }\
SONOFFPOW063:stat/03_Dunstabzugshaube/STATUS6:.* { json2nameValue($EVENT) }\
SONOFFPOW063:stat/03_Dunstabzugshaube/STATUS7:.* { json2nameValue($EVENT) }\
SONOFFPOW063:stat/03_Dunstabzugshaube/STATUS9:.* { json2nameValue($EVENT) }\
SONOFFPOW063:stat/03_Dunstabzugshaube/STATUS10:.* { json2nameValue($EVENT) }\
SONOFFPOW063:stat/03_Dunstabzugshaube/STATUS11:.* { json2nameValue($EVENT) }\
SONOFFPOW063:tele/03_Dunstabzugshaube/UPTIME:.* { json2nameValue($EVENT) }
attr MQTT2_SONOFFPOW063 room 03_Küche,99_MQTT2_DEVICE
attr MQTT2_SONOFFPOW063 setList off:noArg    cmnd/03_Dunstabzugshaube/POWER1 0 \
on:noArg     cmnd/03_Dunstabzugshaube/POWER1 1 \
toggle:noArg cmnd/03_Dunstabzugshaube/POWER1 2 \
status:noArg cmnd/03_Dunstabzugshaube/status 0 \
show:noArg   1
attr MQTT2_SONOFFPOW063 webCmd on:off:status:show




carlos

Ich mache das jetzt dank https://forum.fhem.de/index.php/topic,97586 so:
defmod MQTT2_gosund4 MQTT2_DEVICE gosund4
attr MQTT2_gosund4 IODev m2s
attr MQTT2_gosund4 alias Nespresso
attr MQTT2_gosund4 autocreate 0
attr MQTT2_gosund4 devStateIcon 1.on:on:POWER1+off 1.off:off:POWER1+on Online:10px-kreis-gruen@green Offline:10px-kreis-rot@red
attr MQTT2_gosund4 event-on-change-reading .*
attr MQTT2_gosund4 icon hue_filled_outlet
attr MQTT2_gosund4 model A_01c_tasmota_POW
attr MQTT2_gosund4 readingList tele/gosund4/LWT:.* LWT\
tele/gosund4/STATE:.* { json2nameValue($EVENT) }\
tele/gosund4/SENSOR:.* { json2nameValue($EVENT) }\
tele/gosund4/INFO.:.* { json2nameValue($EVENT) }\
stat/gosund4/RESULT:.* { json2nameValue($EVENT) }
attr MQTT2_gosund4 room 20_Küche,MQTT2_DEVICE
attr MQTT2_gosund4 setList POWER1:on,off,toggle cmnd/gosund4/POWER1 $EVTPART1
attr MQTT2_gosund4 setStateList on off toggle
attr MQTT2_gosund4 stateFormat LWT\
<a href="http://IPAddress" target="_blank">Hostname</a>\
Version\
1:POWER1\
<br>\
aktuell: ENERGY_Power W - ENERGY_Voltage V - ENERGY_Current A \
<br>\
Heute: ENERGY_Today kWh - Gestern: ENERGY_Yesterday kWh\
<br> \
Gesamt: ENERGY_Total kWh\

attr MQTT2_gosund4 userReadings state {ReadingsVal($name,"STATE_POWER","")}
attr MQTT2_gosund4 webCmd on:off

setstate MQTT2_gosund4 Online\
<a href="http://192.168.178.60" target="_blank">gosund4-4494</a>\
6.4.1.19(9f42e6d-sonoff)\
1:on\
<br>\
aktuell: 6 W - 254 V - 0.186 A \
<br>\
Heute: 0.113 kWh - Gestern: 0.212 kWh\
<br> \
Gesamt: 16.168 kWh\

setstate MQTT2_gosund4 2019-03-04 07:34:44 ENERGY_ApparentPower 47
setstate MQTT2_gosund4 2019-03-04 07:34:44 ENERGY_Current 0.186
setstate MQTT2_gosund4 2019-03-04 07:34:44 ENERGY_Factor 0.14
setstate MQTT2_gosund4 2019-03-04 07:33:33 ENERGY_Period 1
setstate MQTT2_gosund4 2019-03-04 07:34:44 ENERGY_Power 6
setstate MQTT2_gosund4 2019-03-04 07:34:44 ENERGY_ReactivePower 47
setstate MQTT2_gosund4 2019-03-04 07:34:44 ENERGY_Today 0.113
setstate MQTT2_gosund4 2019-03-04 07:34:44 ENERGY_Total 16.168
setstate MQTT2_gosund4 2019-03-04 07:34:44 ENERGY_TotalStartTime 2018-10-30T23:47:03
setstate MQTT2_gosund4 2019-03-04 07:34:44 ENERGY_Voltage 254
setstate MQTT2_gosund4 2019-03-04 07:34:44 ENERGY_Yesterday 0.212
setstate MQTT2_gosund4 2019-03-02 18:25:52 FallbackTopic cmnd/gosund4_fb/
setstate MQTT2_gosund4 2019-03-02 18:25:52 GroupTopic sonoffs
setstate MQTT2_gosund4 2019-03-02 18:25:52 Hostname gosund4-4494
setstate MQTT2_gosund4 2019-03-02 18:25:52 IPAddress 192.168.178.60
setstate MQTT2_gosund4 2019-03-04 01:47:16 LWT Online
setstate MQTT2_gosund4 2019-03-04 07:33:33 LoadAvg 19
setstate MQTT2_gosund4 2019-03-02 18:25:52 Module BlitzWolf SHP
setstate MQTT2_gosund4 2019-03-04 07:33:33 POWER1 on
setstate MQTT2_gosund4 2019-03-02 18:25:53 RestartReason Software/System restart
setstate MQTT2_gosund4 2019-02-28 21:49:35 SaveData on
setstate MQTT2_gosund4 2019-02-28 21:49:35 SetOption26 on
setstate MQTT2_gosund4 2019-03-04 07:33:33 Sleep 50
setstate MQTT2_gosund4 2019-03-04 07:33:33 SleepMode Dynamic
setstate MQTT2_gosund4 2019-02-28 21:49:34 StateText1 off
setstate MQTT2_gosund4 2019-02-28 21:49:34 StateText2 on
setstate MQTT2_gosund4 2019-02-28 21:49:35 StateText3 toggle
setstate MQTT2_gosund4 2019-02-28 21:49:35 StateText4 hold
setstate MQTT2_gosund4 2019-03-04 07:34:44 Time 2019-03-04T07:34:44
setstate MQTT2_gosund4 2019-03-04 07:33:33 Uptime 1T13:07:46
setstate MQTT2_gosund4 2019-03-04 07:33:33 Vcc 3.399
setstate MQTT2_gosund4 2019-03-02 18:25:52 Version 6.4.1.19(9f42e6d-sonoff)
setstate MQTT2_gosund4 2019-03-02 18:25:52 WebServerMode Admin
setstate MQTT2_gosund4 2019-03-04 07:33:33 Wifi_AP 1
setstate MQTT2_gosund4 2019-03-04 07:33:33 Wifi_BSSId 5C:49:79:FA:1F:0F
setstate MQTT2_gosund4 2019-03-04 07:33:33 Wifi_Channel 1
setstate MQTT2_gosund4 2019-03-04 07:33:33 Wifi_Downtime 0T00:00:09
setstate MQTT2_gosund4 2019-03-04 07:33:33 Wifi_LinkCount 3
setstate MQTT2_gosund4 2019-03-04 07:33:33 Wifi_RSSI 84
setstate MQTT2_gosund4 2019-03-04 07:33:33 Wifi_SSId FB6590
setstate MQTT2_gosund4 2019-03-04 07:34:44 state

Gruß
Carlos
FHEM svn auf Intel NUC mit proxmox, 3 Raspberry Pi, signalduino, nanoCUL,  toom Baumarkt Funksteckdosen, einige sonoffs, hue, shelly

supernova1963

Wow, das ging ja schnell, Carlos,

ich probiere es gleich aus und ändere den Betreff auf [gelöst], wenn funktioniert.

Danke, danke, danke,

Gernot

supernova1963

Sorry,
aber ich bekomme es nicht hin.
Sobald ich ein in einem stateFormat:
state \<a href="http://IPAddress" target="_blank">Hostname</a>

eingebe, werden die Angaben aus devStateFormat nicht mehr verwendet (Standard Icons für on|off und Text für Status).

Das ist scheinbar genauso kompliziert, wie den Link ins webCmd zu bekommen.

Dennoch noch einmal danke für den Tip.

Gernot

justme1968

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

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