FHEM Forum

FHEM - Hausautomations-Systeme => MQTT => Thema gestartet von: Typ1er am 21 Februar 2020, 16:32:04

Titel: Brauche etwas Hilfe meinen Awtrix2 in FEHM einzubinden
Beitrag von: Typ1er am 21 Februar 2020, 16:32:04
Hallo
Ich brauch mal etwas Hilfe einen Befehl über MQTT abzusetzen.

wie baue ich das publishSet auf, wie bekomme ich hier die Klammern mit übermittelt?

Die MQTT Befehle sind,
für on/off
/awtrix/basics {"power": true}
/awtrix/basics {"power": false}

als Slider von 0-100%
/awtrix/settings {"Brightness":5}
/awtrix/settings {"Brightness":100}

Hat hier jemand mal ein Beispiel? Oder eine Lösung?
Titel: Antw:Brauche etwas Hilfe meinen Awtrix2 in FEHM einzubinden
Beitrag von: Typ1er am 23 Februar 2020, 01:06:32
Erste Versuche, Slider und ein paar Buttons funktionieren mit :

defmod Awtrix2 MQTT2_DEVICE _awtrix
attr Awtrix2 IODev Broker2
attr Awtrix2 readingList _awtrix:/awtrix/HostOnline:.* HostOnline\
_awtrix:/awtrix/activeApp:.* activeApp\
_awtrix:/awtrix/MatrixOnline:.* MatrixOnline\
_awtrix:/awtrix/PowerState:.* PowerState\
_awtrix:/awtrix/response:.* { json2nameValue($EVENT,'',$JSONMAP) }\

attr Awtrix2 room MQTT2_DEVICE
attr Awtrix2 setList on:noArg /awtrix/basics {"power": true}\
off:noArg /awtrix/basics {"power": false}\
Next:noArg /awtrix/basics {"app": "next"}\
Next:noArg /awtrix/basics {"app": "next"}\
Back:noArg /awtrix/basics {"app": "back"}\
Pause:noArg /awtrix/basics {"app": "pause"}\
Hold:noArg /awtrix/basics {"app": "hold"}\
brightness:colorpicker,BRI,0,1,99 /awtrix/settings {"Brightness":$EVTPART1}
attr Awtrix2 webCmd toggle:on:off:brightness:Back:Pause:Next:Hold

Wie bekomme ich es hin das der Slider die aktuelle eingeschaltete positions sich merkt, momentan springt er am Ende wieder auf 0.


Und ein weiteres neues Problem. Wie sende ich verschiedene Parameter über MQTT, diese kommen dann als Readings alle über /awtrix/response rein?
als Beispiel:
/awtrix/basics  {"get":"uptime"}
/awtrix/basics  {"get":"AppList"}

und die Antworten kommen dann über:
/awtrix/response:.* { json2nameValue($EVENT,'',$JSONMAP) }