Rückgabewerte wird von "Telegram" falsch interpretiert

Begonnen von Sirel, 30 Mai 2021, 17:50:57

Vorheriges Thema - Nächstes Thema

Sirel

Hallo zusammen,
über eine kleine Subroutine ermittle ich, welche Personen derzeit anwesend sind. Nur diese Personen sollen per Telegram informiert werden, wenn bspw. ein Fenster offen ist. Über das Skript werden die Namen der Anwesenden so aufbereitet, dass der Rückgabewert die Form @Name1 @Name2 usw. hat. Das funktioniert auch, sofern ich den Rückgabewert bspw. in einem DOIF mit Telegram verwende.
(set xxxxtelegram send {(com_control)} hallo pallo)
com_control ist die Subroutine welche ermittelt, welche Personen anwesend sind.

Jetzt probiere ich, aus einer anderen Subroutine die "com_control" Routine aufzurufen. In der Telegram Nachricht steht auch der richte @Name, allerding versteht Telegram das nicht als Ziel wohin die Nachricht soll, sonder als Text der Nachricht.

Hat jemand eine Idee was ich machen muss, damit Telegram das @Name nicht als Text, sondern als Ziel versteht.

Also konkret:

{fhem ("set xxxx_telegram message {(com_control)} Morgen müssen xxxx")};  führt als Nachricht zu
Zitat@Name Morgen müssen xxxxx

Vielen Dank vorab und Grüße,

Max



sumsum

#1
Als Idee: du übergibst der Funktion fhem einen String. Was passiert wenn du den @Name direkt in den String schreibst,  also ohne Funktionsaufruf?