Hallo Igami,
hier mein meta_Dialog:
defmod meta_Dialog msgDialog {\
"%me%": {\
"match": "\/?(start|%me%)",\
"commands":\
"deletereading TYPE=msgDialog $recipient_history",\
"message": [\
"{return('(' . join(') (', sort{lc($a) cmp lc($b)} (split('\n', fhem('get TYPE=msgDialog:FILTER=NAME!=$SELF:FILTER=allowed=.*($recipient|everyone).* trigger', 1)))) . ') (🔚beenden) ')}",\
"{'Hallo ' . AttrVal('$recipient', 'group','') . ', was kann ich für dich tun?'}"\
]\
},\
"🔙zurück": {\
"commands": "set $recipient_history=.+ say @$recipient {(ReadingsVal($DEV, '$recipient_history', '') =~ m/((.+)\\|.+$)/;;;;;;;; return($2 || $1);;;;;;;;)}"\
},\
"zurück": {\
"commands": "set $recipient_history=.+ say @$recipient {(ReadingsVal($DEV, '$recipient_history', '') =~ m/((.+)\\|.+$)/;;;;;;;; return($2 || $1);;;;;;;;)}"\
},\
"🔚abbrechen": {\
"match": "🔚\/?abbrechen",\
"commands": "deletereading TYPE=msgDialog $recipient_history",\
"message": [\
"(%me%) ",\
"Dialog abgebrochen."\
]\
},\
"🔚beenden": {\
"match": "🔚\/?beenden",\
"commands": "deletereading TYPE=msgDialog $recipient_history",\
"message": [\
"(%me%) ",\
"Dialog beendet."\
]\
}\
}
attr meta_Dialog allowed everyone
attr meta_Dialog room Chatten
Und hier der kürzere Kühler_Dialog:
defmod Kuehler_Dialog msgDialog {"Kühl- und Tiefkühlschränke":{\
"message": [\
"(Bad Tiefkühler) ",\
"(Bad Kühlschrank) ",\
"(Küche Tiefkühler) ",\
"(Küche Kühlschrank) ",\
"(🔚beenden|🔙zurück|🔄aktualisieren) ",\
"{return('Bad Kühlschrank: [Bad.KuehlschrankActTemp:state]°/[dyParameter:Bad.Kuehlschrank_limit]° [Bad.KuehlschrankActHum:state]% ')}",\
"{return('Bad Tiefkühler : [Bad.TiefkuehlerActTemp:state]°/[dyParameter:Bad.Tiefkuehler_limit]° [Bad.TiefkuehlerActHum:state]% ')}",\
"{return('Küche Kühlschrank: [Kueche.KuehlschrankActTemp:state]°/[dyParameter:Kueche.Kuehlschrank_limit]° [Kueche.KuehlschrankActHum:state]% ')}",\
"{return('Küche Tiefkühler : [Kueche.TiefkuehlerActTemp:state]°/[dyParameter:Kueche.Tiefkuehler_limit]° [Kueche.TiefkuehlerActHum:state]% ')}",\
"Möchtest Du ein Verlaufsdiagramm sehen? "\
],\
"Bad Tiefkühler": {\
"commands": "set %TelegramBot% cmdSend {plotAsPng('SVG_FileLog_Bad.TiefkuehlerTemp_1')}"\
},\
"Bad Kühlschrank": {\
"commands": "set %TelegramBot% cmdSend {plotAsPng('SVG_FileLog_Bad.KuehlschrankTemp_1')}"\
},\
"Küche Tiefkühler": {\
"commands": "set %TelegramBot% cmdSend {plotAsPng('SVG_FileLog_Kueche.TiefkuehlerTemp_1')}"\
},\
"Küche Kühlschrank": {\
"commands": "set %TelegramBot% cmdSend {plotAsPng('SVG_FileLog_Kueche.KuehlschrankTemp_1')}"\
},\
"🔄aktualisieren": {\
"commands": [\
"set $SELF say @$recipient %me%|Kühl- und Tiefkühlschränke"\
]\
},\
"🔙zurück": {\
"commands": [\
"set $SELF say @$recipient %me%"\
]\
}\
}\
}
attr Kuehler_Dialog allowed everyone
attr Kuehler_Dialog room Chatten
Das mit "zurück" funktioniert bei keinem meiner Dialoge.
Danke für Deine Hilfe.
Die msgDialog.pm ist übrigens diese hier:
76_msgDialog.pm 16814 2018-06-04 03:30:08Z igami
lg, Gerhard