Hallo zusammen,
ich versuche innerhalb einer Notify auf eine eingehende Nachricht aus Telegram ebenso zu reagieren.
z.B.
Ich: Status
Fhem: Alles i.O.
Nun möchte ich, dass die Rückmeldung nicht an den defaultpeer geht, sondern entweder an einen fest definierten peer, z.B. @rr_name, oder an den, welcher die Nachricht an FHEM gesendet hat ("ReadingsVal("WEB_TelegramBot", "msgChatId", "")")
Es folgt ein Auszug aus meinem Code:
elsif ($EVTPART1 eq 'Hilfe') {
fhem("set $NAME send
Filer - Starte Fileserver
Rest - Restmüll zählen
Bio - Biomüll zählen
Status - Heizungsstatus
Benzin - Benzinpreise
Diesel - Dieselpreise");
Theroetisch müsste nach dem Befehl 'send' der peer folgen (send @rr_name), das funktioniert jedoch nicht.
Zitat aus der CMDRef
ZitatDas Zeichen @ wird ersetzt durch den Gerätenamen.
Um % oder @ im Text selbst benutzen zu können, müssen sie verdoppelt werden (%% oder @@).
Funktioniert aber auch nicht (@@rr_name).
Ich könnte mir vorstellen, dass es an der Abkündigung liegt.
ZitatAchtung: Folgende Vorgehensweise ist abgekündigt, funktioniert bis featurelevel 5.6 und wird in einem zukünftigen Release von FHEM nicht mehr unterstützt. Wenn keine der oben genannten Variablen ($NAME/$EVENT/usw.) in der Anweisung gefunden wird, werden Platzhalter ersetzt.
Daher meine Frage, gibt es eine Möglichkeit, meine Fragestellung innerhalb von notify anders umzusetzen?
@ in Perl ist Sonderzeichen, und muss ggf. geschuetzt werden.
Die @@/%% Schreibweise ist seit featurelevel 5.7 nicht mehr notwedig, weil @ und % nicht mehr mit NAME und EVENT ersetzt werden.