mqtt2.template: bugs, Fragen, Anregungen

Begonnen von Beta-User, 15 Dezember 2018, 11:44:43

Vorheriges Thema - Nächstes Thema

grappa24

#360
Eine Frage zu den Shelly templates bzgl. devStateIcon:

Ich versuche nachzuvollziehen, wie die grün/gelb/roten Punkte zum eigentlichen Icon "dazugemischt" werden.

{my $onl = ReadingsVal($name,"online","false") eq "false" ? "rot" : ReadingsVal($name,"new_fw","false") eq "true" ? "gelb" : "gruen"; my $light = ReadingsVal($name,"state","off"); my $show = '<a href="';$show .= $onl eq "gelb" ? "/fhem?cmd.dummy=set $name x_update&XHR=1\">" : "http://".ReadingsVal($name,"ip","none").' "target="_blank">'; $show .= FW_makeImage("10px-kreis-".$onl)."</a>"; "<div> $show <a href=\"/fhem?cmd.dummy=set $name toggle&XHR=1\">".FW_makeImage($light)."</a></div>" }

Wenn ich das richtig verstehe verbirgt sich das Icon hinter der Variablen $light, die entweder on/off ist und die dafür sorgt, dass das Icon "Glühbirne" angezogen wird.

Geht das auch mit anderen Icons als mit den standardmäßigen FS20.on/FS20.off Glühbirnen? Sprich, ich möchte die Status-Punkte zu eigenen/anderen Icons kombinieren ... ?

Schöne Aufgabe für einen verregneten Sonntag  ;)
grappa24
Gebäudesicherheit/-komfort, PV-Prognose/Verbrauchssteuerung, Heizungssteuerung, Multimedia, ...
KNX, FS20, HM, HUE, Tradfri, Shellies, KLF200, Netatmo, Nuki, SolarForecast, HEOS, Alexa-FHEM, ...
FHEM 6.4, 2 x RasPi 3B+, Debian Bullseye

Otto123

#361
Hi,

hier scheint die Sonne  8)

Du suchst ja den Punkt, der steckt hier FW_makeImage("10px-kreis-".$onl)
Wenn $light nur on oder off enthält wird das default Icon genommen - die Birne. FW_makeImage($light)
Wenn Du die analog zu dem Kreis mit einem Namen des Icons füllst wird dieses angezeigt.

Zumindest versteh ich den Code so ;) muss nicht unbedingt stimmen.

Aber eine konkrete Frage dazu solltest Du eventuell neu beginnen, da es hier eher um die vorhandenen Templates geht :)

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Beta-User

Passt schon mit der Frage, und das Verhalten ist auch nicht Shelly-spezifisch...

Die FS20-Birne ist übrigens nicht immer das default-Icon für on/off, das hängt u.A. am verwendeten FHEMWEB-Style und/oder dem defaultIcon-Attribut der FHEMWEB-Instanz.

Vermutlich bist du besser beraten, entweder den Style auf f18 umzustellen (da sind es die durchscheinenden "Strahlebirnchen" wie im angehängten Bild), oder eben das Attribut anzupassen.

Wenn du es nur lokal ändern willst: der ursprüngliche Vorschlag von 87insane (?) sah eine "Pendelleuchte" vor, die je nach Status eine unterschiedliche Farbe hatte. Da (müßte in dem Shelly-template-Thread sein) findest du dann auch andere Varianten, was an FW_makeImage() übergeben werden kann ;) ).
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

grappa24

Danke, da kann ich ansetzen.

Style-Änderung nützt mir nichts in diesem Fall, da mein Shelly ein Garagentor steuert und ich die beiden anliegenden Icons verwende. Werde es mal mit FW_makeImage() versuchen einzubauen. Sehe nur noch nicht, wie ich die beiden Zustände hineinbekomme ....  :-\
Gebäudesicherheit/-komfort, PV-Prognose/Verbrauchssteuerung, Heizungssteuerung, Multimedia, ...
KNX, FS20, HM, HUE, Tradfri, Shellies, KLF200, Netatmo, Nuki, SolarForecast, HEOS, Alexa-FHEM, ...
FHEM 6.4, 2 x RasPi 3B+, Debian Bullseye

Beta-User

Ausgehend davon, dass es  im Moment so aussieht:
attr DEVICE devStateIcon {my $onl = ReadingsVal($name,"online","false") eq "false" ? "rot" : ReadingsVal($name,"new_fw","false") eq "true" ? "gelb" : "gruen"; my $light = ReadingsVal($name,"state","off"); my $show = '<a href="';$show .= $onl eq "gelb" ? "/fhem?cmd.dummy=set $name x_update&XHR=1\">" : "http://".ReadingsVal($name,"ip","none").' "target="_blank">'; $show .= FW_makeImage("10px-kreis-".$onl)."</a>"; "<div> $show <a href=\"/fhem?cmd.dummy=set $name toggle&XHR=1\">".FW_makeImage($light)."</a></div>" }'
Wäre dann (nur) der $light-Teil vermutlich so zu ändern:
my $light = ReadingsVal($name,"state","off") eq "off" ? "garage_up_down" : "garage_up_down_working";
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

grappa24

blöd, jetzt kann ich mir schon wieder ein neues Projekt suchen  ;D
Danke!

Gebäudesicherheit/-komfort, PV-Prognose/Verbrauchssteuerung, Heizungssteuerung, Multimedia, ...
KNX, FS20, HM, HUE, Tradfri, Shellies, KLF200, Netatmo, Nuki, SolarForecast, HEOS, Alexa-FHEM, ...
FHEM 6.4, 2 x RasPi 3B+, Debian Bullseye

Heimweh

Ich habe einen SONOFF4CH den ich mit Tasmota geflasht habe. Die 4 Kanäle sind als einzelne Devices angelegt worden.
Ein Template habe ich hier nicht verwendet (wenn ich mich recht erinnere) - ich kann auch keines setzen, set attrTemplate wird hier gar nicht angeboten, sowie das
bei meinen zahlreichen S20 SONOFFs der Fall ist. Aufgefallen ist mir das weil ich nach dem Wikieintrag "Praxisbeispiele" MQTT2 gerne ein on-for-timer über Pulsetime in der setList hinzufügen wollte.
Muss ich das in meinem Fall über eventMap "nachrüsten"?
Meine zweite Frage ist, wieso hab ich das Atribut setList gar nicht zur Auswahl habe...

Hier mal ein list des SONOFF4CH Kanals


Internals:
   DEF        192.168.178.71 80 espBridge SONOFF4CH_Relais1
   ESP_BUILD  148
   ESP_SLEEP  0
   ESP_UNIT   0
   ESP_VERSION 9
   FUUID      5d74fb5a-f33f-55ed-389d-24ac42ad68a73820
   HOST       192.168.178.71
   IDENT      SONOFF4CH_Relais1
   INTERVAL   300
   IODev      espBridge
   LASTInputDev espBridge
   MAX_CMD_DURATION 1
   MSGCNT     12092
   NAME       ESPEasy_SONOFF4CH_Relais1
   NOTIFYDEV  global
   NR         1097
   NTFY_ORDER 50-ESPEasy_SONOFF4CH_Relais1
   PORT       80
   STATE      off
   SUBTYPE    device
   TYPE       ESPEasy
   VERSION    2.18
   espBridge_MSGCNT 12092
   espBridge_TIME 2020-11-20 11:26:21
   READINGS:
     2020-11-20 11:26:21   Relais          off
     2020-11-20 11:23:34   presence        present
     2020-11-20 11:26:21   state           Rel: off
   helper:
     fpc        1605262409
     mapLightCmds:
     pm:
       Encode     1
       JSON       1
     received:
       Relais     1605867981
   sec:
     admpwd     
Attributes:
   IODev      espBridge
   Interval   300
   alias      Strang 1 - EG Badezimmer
   devStateIcon on:rc_GREEN:off off:rc_RED:on absent:rc_BLUE:off gpio:rc_YELLOW:off
   eventMap   /gpio 12 on:on/gpio 12 off:off/gpio 12 gpio:off/gpio 12 output:off/
   group      Heizung
   icon       sani_heating_manual
   presenceCheck 1
   readingSwitchText 1
   room       EG_Temperaturen,Heizungskeller
   setState   3
   stateFormat {ReadingsVal($name,"presence","") eq "absent" ? "absent" : ReadingsVal($name,"Relais","")}
   userattr   Straenge_EG Straenge_EG_map structexclude
RaspberryPi, 8 x Intertechnosteckdosen, ETA PU15 über HTTPMOD, Youless Eneergiemonitor, 8 x Technoline Funk Temperatur / Feuchtesensoren über jeeLink, Fritzbox Anbindung, Homematic Rolladen Aktoren, MAX Heizkörperventile + Cube, SONOFF S20, S26, POW, 4ch, OWD, Alexa-fhem, enOcean / Eltako,

Otto123

@Heimweh Du bist im falschen Board? Hier geht es um mqtt2, Du machst ESPEasy ... ::)
ZitatTYPE       ESPEasy
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Heimweh

Zitat von: Otto123 am 20 November 2020, 11:32:24
@Heimweh Du bist im falschen Board? Hier geht es um mqtt2, Du machst ESPEasy ... ::)

:o da ist was durcheinander gekommen. SORRY
RaspberryPi, 8 x Intertechnosteckdosen, ETA PU15 über HTTPMOD, Youless Eneergiemonitor, 8 x Technoline Funk Temperatur / Feuchtesensoren über jeeLink, Fritzbox Anbindung, Homematic Rolladen Aktoren, MAX Heizkörperventile + Cube, SONOFF S20, S26, POW, 4ch, OWD, Alexa-fhem, enOcean / Eltako,

Snocksman

Hallo zusammen,

ich habe mir mal ein paar Zigbee Devices besorgt und diese bislang auch Problemlos angebunden bekommen... Danke hier schonmal für die Templates ! Nun habe ich mir einen Heizkörperthermostat vorgenommen; Hier mal ein link zu dem Teil: https://de.aliexpress.com/item/4001050739921.html?spm=a2g0s.9042311.0.0.54624c4dCtUJKR
Angelernt wurde das Teil und FHEM bekommt auch Daten, aber wenn ich das richtig sehe, gibt es für Zigbee Heizkörperthermostate noch kein Template ? Wäre cool, wenn das jemand ergänzen könnte.

Hier einmal die RAW-definition:

defmod MQTT2_zigbee_0xbc33acfffe45850a MQTT2_DEVICE zigbee_0xbc33acfffe45850a
attr MQTT2_zigbee_0xbc33acfffe45850a IODev MQTT2_FHEM_Server
attr MQTT2_zigbee_0xbc33acfffe45850a readingList zigbee2mqtt/0xbc33acfffe45850a:.* { json2nameValue($EVENT) }
attr MQTT2_zigbee_0xbc33acfffe45850a room MQTT2_DEVICE

setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 13:02:38 associatedWith MQTT2_zigbee_bridge
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 auto_lock MANUAL
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 away_mode OFF
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 away_preset_days 1
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 away_preset_temperature 15
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 boost_time 300
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 child_lock UNLOCKED
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 comfort_temperature 20
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 current_heating_setpoint 27.5
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 eco_temperature 15
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 force normal
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 holidays_1_hour 6
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 holidays_1_minute 0
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 holidays_1_temperature 20
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 holidays_2_hour 8
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 holidays_2_minute 0
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 holidays_2_temperature 15
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 holidays_3_hour 11
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 holidays_3_minute 30
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 holidays_3_temperature 15
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 holidays_4_hour 12
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 holidays_4_minute 30
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 holidays_4_temperature 15
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 holidays_5_hour 17
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 holidays_5_minute 30
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 holidays_5_temperature 20
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 holidays_6_hour 22
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 holidays_6_minute 0
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 holidays_6_temperature 15
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 16:53:12 linkquality 99
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 local_temperature 22.0
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 local_temperature_calibration -1.0
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 max_temperature 35
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 min_temperature 5
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 position 100
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 preset manual
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 system_mode manual
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 week 5+2
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 window_detection OFF
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 window_detection_params_minutes 10
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 window_detection_params_temperature 5
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 workdays_1_hour 6
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 workdays_1_minute 0
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 workdays_1_temperature 20
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 workdays_2_hour 8
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 workdays_2_minute 0
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 workdays_2_temperature 15
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 workdays_3_hour 11
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 workdays_3_minute 30
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 workdays_3_temperature 15
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 workdays_4_hour 12
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 workdays_4_minute 30
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 workdays_4_temperature 15
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 workdays_5_hour 17
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 workdays_5_minute 30
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 workdays_5_temperature 20
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 workdays_6_hour 22
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 workdays_6_minute 0
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 workdays_6_temperature 15

Beta-User

Uiuiuiuiui...

Das wird vermutlich kompliziert, kannst du dafür ein neues Topic aufmachen und mal RAW-JSON-Daten loggen?
Vorab empfehle ich die Lektüre der Threads zu den beiden Spirit-attrTemplates (zigbee2mqtt_eurotronic_spirit => https://forum.fhem.de/index.php/topic,114994.0.html und tasmota_zigbee2tasmota_eurotronic_spirit => https://forum.fhem.de/index.php/topic,116094.0.html).
Der letztere ist etwas mehr straight-forward, der erstere ist zigbee2mqtt-bezogen und das attrTemplate vermutlich die geschicktere Ausgangsbasis)....

Es wird aber definitiv nicht einfach "jemand" machen können, sondern aktives Mitarbeiten erforderlich sein, und für Temperaturlisten (das Teil scheint sowas zu können) etc. braucht es vermutlich myUtils-Code.

Bein blakadder scheint das die richtige Page zu sein, auch wenn der Link bei zigbee2mqtt dann ein ganz anderes Teil zeigt...?!?
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

dcboy

Zitat von: Snocksman am 06 Dezember 2020, 17:22:47
Hallo zusammen,

ich habe mir mal ein paar Zigbee Devices besorgt und diese bislang auch Problemlos angebunden bekommen... Danke hier schonmal für die Templates ! Nun habe ich mir einen Heizkörperthermostat vorgenommen; Hier mal ein link zu dem Teil: https://de.aliexpress.com/item/4001050739921.html?spm=a2g0s.9042311.0.0.54624c4dCtUJKR
Angelernt wurde das Teil und FHEM bekommt auch Daten, aber wenn ich das richtig sehe, gibt es für Zigbee Heizkörperthermostate noch kein Template ? Wäre cool, wenn das jemand ergänzen könnte.

Hier einmal die RAW-definition:

defmod MQTT2_zigbee_0xbc33acfffe45850a MQTT2_DEVICE zigbee_0xbc33acfffe45850a
attr MQTT2_zigbee_0xbc33acfffe45850a IODev MQTT2_FHEM_Server
attr MQTT2_zigbee_0xbc33acfffe45850a readingList zigbee2mqtt/0xbc33acfffe45850a:.* { json2nameValue($EVENT) }
attr MQTT2_zigbee_0xbc33acfffe45850a room MQTT2_DEVICE

setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 13:02:38 associatedWith MQTT2_zigbee_bridge
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 auto_lock MANUAL
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 away_mode OFF
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 away_preset_days 1
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 away_preset_temperature 15
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 boost_time 300
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 child_lock UNLOCKED
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 comfort_temperature 20
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 current_heating_setpoint 27.5
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 eco_temperature 15
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 force normal
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 holidays_1_hour 6
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 holidays_1_minute 0
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 holidays_1_temperature 20
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 holidays_2_hour 8
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 holidays_2_minute 0
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 holidays_2_temperature 15
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 holidays_3_hour 11
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 holidays_3_minute 30
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 holidays_3_temperature 15
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 holidays_4_hour 12
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 holidays_4_minute 30
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 holidays_4_temperature 15
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 holidays_5_hour 17
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 holidays_5_minute 30
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 holidays_5_temperature 20
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 holidays_6_hour 22
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 holidays_6_minute 0
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 holidays_6_temperature 15
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 16:53:12 linkquality 99
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 local_temperature 22.0
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 local_temperature_calibration -1.0
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 max_temperature 35
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 min_temperature 5
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 position 100
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 preset manual
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 system_mode manual
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 week 5+2
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 window_detection OFF
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 window_detection_params_minutes 10
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 window_detection_params_temperature 5
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 workdays_1_hour 6
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 workdays_1_minute 0
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 workdays_1_temperature 20
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 workdays_2_hour 8
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 workdays_2_minute 0
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 workdays_2_temperature 15
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 workdays_3_hour 11
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 workdays_3_minute 30
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 workdays_3_temperature 15
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 workdays_4_hour 12
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 workdays_4_minute 30
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 workdays_4_temperature 15
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 workdays_5_hour 17
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 workdays_5_minute 30
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 workdays_5_temperature 20
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 workdays_6_hour 22
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 workdays_6_minute 0
setstate MQTT2_zigbee_0xbc33acfffe45850a 2020-12-06 17:06:24 workdays_6_temperature 15


Da hatten wir wohl heute beide den gleichen Gedanke, ich habe mir auch am Singles Day Thermostate bestellt und heute festgestellt, dass es bisher noch kein Template dafür gibt. Meine sind jedoch diese hier:
https://zigbee.blakadder.com/Moes_HY368-ZB.html
https://de.aliexpress.com/item/4001065031604.html

Das angelegte Device liefert aber bei mir so ziemlich die gleichen Daten:


defmod MQTT2_zigbee_0x842e14fffee56f43 MQTT2_DEVICE zigbee_0x842e14fffee56f43
attr MQTT2_zigbee_0x842e14fffee56f43 IODev MQTT2_FHEM_Server
attr MQTT2_zigbee_0x842e14fffee56f43 readingList zigbee2mqtt/0x842e14fffee56f43:.* { json2nameValue($EVENT) }
attr MQTT2_zigbee_0x842e14fffee56f43 room MQTT2_DEVICE

setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 associatedWith MQTT2_zigbee_bridge
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 auto_lock MANUAL
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 away_mode OFF
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 away_preset_days 1
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 away_preset_temperature 15
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 battery_low false
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 boost_time 300
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 child_lock UNLOCKED
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 comfort_temperature 20
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 current_heating_setpoint 20
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 eco_temperature 15
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 force normal
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 holidays_1_hour 6
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 holidays_1_minute 0
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 holidays_1_temperature 20
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 holidays_2_hour 8
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 holidays_2_minute 0
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 holidays_2_temperature 15
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 holidays_3_hour 11
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 holidays_3_minute 30
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 holidays_3_temperature 15
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 holidays_4_hour 12
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 holidays_4_minute 30
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 holidays_4_temperature 15
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 holidays_5_hour 145
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 holidays_5_minute 30
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 holidays_5_temperature 20
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 holidays_6_hour 22
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 holidays_6_minute 0
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 holidays_6_temperature 15
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 local_temperature 19.5
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 local_temperature_calibration -1
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 max_temperature 35
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 min_temperature 5
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 position 25
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 preset schedule
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 system_mode auto
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 week 5+2
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 window_detection OFF
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 window_detection_params_minutes 10
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 window_detection_params_temperature 5
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 workdays_1_hour 6
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 workdays_1_minute 0
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 workdays_1_temperature 20
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 workdays_2_hour 8
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 workdays_2_minute 0
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 workdays_2_temperature 15
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 workdays_3_hour 11
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 workdays_3_minute 30
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 workdays_3_temperature 15
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 workdays_4_hour 12
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 workdays_4_minute 30
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 workdays_4_temperature 15
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 workdays_5_hour 17
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 workdays_5_minute 30
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 workdays_5_temperature 20
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 workdays_6_hour 22
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 workdays_6_minute 0
setstate MQTT2_zigbee_0x842e14fffee56f43 2020-12-06 18:30:42 workdays_6_temperature 15


Wenn ich was testen oder Daten liefern soll, gerne. Bin allerdings nicht so ganz tief drin bei FHEM, lese mich da aber gerne mit Unterstützung ein!

Otto123

#372
Hallo Jörg,

das Template owntracks_device
Ich denke da gibt es Fehler:
Die getList will immer im Reading raw überprüfen ob was zurückkam. Keiner legt aber dieses Reading an? Wobei die Frage noch ist wie man es richtig macht?
owntracks/TRACKER_ID/DEV_ID.* raw
da geht auch jeder Befehl sofort in dieses Reading.

Die setList
Für alle: es fehlt doch eine Eingabemöglichkeit? :textField
waypoints
waypoints owntracks/TRACKER_ID/DEV_ID/cmd {"_type":"cmd","action":"setWaypoints","waypoints":{"_type":"waypoints","waypoints":$EVTPART1}\
Da fehlt mindestens eine } Klammer am Ende, dann müsste man [{wp1},{wp2},{wp3}] - also mit den [] einwerfen. Ich würde die auch noch in den Befehl packen:
waypoints:textField owntracks/TRACKER_ID/DEV_ID/cmd {"_type":"cmd","action":"setWaypoints","waypoints":{"_type":"waypoints","waypoints":[$EVTPART1]}}\

Die Frage ist noch: gerade hier - wie sag ich dem User eigentlich sollen solche setter verwendet werden? Der Syntax ist ja nicht ableitbar, man muss ins Handbuch schauen!

Ein Schönheitsproblem: damit entstehen Readings der Form waypoints_waypoints_x - sollte man so anbieten? Was bringt das außer eine volle Readingliste?
owntracks/TRACKER_ID/DEV_ID/waypoints:.* { json2nameValue($EVENT,'waypoints_',$JSONMAP) }

Die jsonMap verstehe ich in weiten Bereichen gar nicht, aber ich habe Android und da fehlen einige Readings/Bereiche sowieso, die Frage wäre ein Template für Android und ein Template für Apfel? Für Android könnte ich vorschlagen - noch Ideen zur Strukturierung?

generell: Im Template gleich das attr devicetopic anlegen und konsequent im Code verwenden?

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Beta-User

#373
Hmm, also: das owntracks-Ding habe ich einfach so übernommen, (leider scheint der Link falsch zu sein, woher...) EDIT: das wäre richtig: https://forum.fhem.de/index.php/topic,99666.msg1019884.html#msg1019884
Das mit den waypoints-Klammern ziehe ich nach.

Das mit der User-Info ist in der Tat hier und an ein paar anderen Stellen nicht so einfach, und grade bei komplexeren Dingen (die ich zu einem nicht unerheblichen Teil auch nie selbst genutzt oder (funktional) ausgetestet habe), gibt's vermutlich nicht DEN Königsweg.
MAn. könnte das in diesem speziellen Fall mit einem Handbuch-Link via comment gelöst werden, weil auch das Zusammenspiel mit dem owntracks-Modul erklärungsbedürftig sein dürfte.

Das Thema mit der Doku war einer der Gründe, warum ich zuletzt etwas darauf gedrängt habe, dass bestimmte Teile der MQTT2_DEVICE-Familie eigene Wiki-Artikel bekommen; dann kann das jeweils leichter von den Nutzern dieser Geräte-(Gruppe) ergänzt oder verbessert werden. Sollte man z.B. auch bei OpenMQTTGateway bei Gelegenheit mal machen (in https://wiki.fhem.de/wiki/MQTT#OpenMQTTGateway hat mal irgendjemand was ziemlich halblebiges eingefügt; das auszuweiten etc. hat aber für mich selbst im Moment auch nicht die hohe Prio, aber evtl. findet sich ja jemand (?)).

Zu Owntracks speziell würde ich vorschlagen, die Diskussion auszulagern, entweder in den Thread, in dem Loredo (?) das gepostet hatte, oder eben in einen Neuen (wäre für letzteres).



@dcboy und Snocksman:
Wie gesagt: vermutlich ist das ganze bis zu einem gewissen Grad machbar, aber bitte auch das als separates Thema und mit etwas mehr Info über den "rohen" MQTT-Verkehr, damit wir wenigstens die "basics" hingebogen bekommen...
Das bei blakadder/https://www.zigbee2mqtt.io/devices/TS0601_thermostat.html liest sich aber so, als wäre das mit dem "Spirit"-attrTemplate schon in der Basis regelbar? (Das ist aber auch noch teils ungetestet, weil der User, der die Rohdaten geliefert hatte sich nicht überzeugen hat lassen, dass desired-temp und measured-temp "gute" Reading-Namen wären...)
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

Snocksman