TelegramBot Favorit mit Variablen

Begonnen von Joachim2112, 07 Juli 2020, 09:18:05

Vorheriges Thema - Nächstes Thema

Joachim2112

Hallo,

ich hätte gern in den Favoriten meines TelegramBots einen Wert (Zeitwert) inkrementiert.
Meine Codeidee war:

attr myTelegramBot favorites /[change zeit1]={my $myzeit1=ReadingsVal("zeit1","state",0);;;;if($myzeit1<1200)($myzeit1=myzeit1+100)else($myzeit1=30);;;;set zeit1 $myzeit1};;


Soweit ich verstanden habe müssen die 4 Semikolon für die Trennung der einzelnen Befehle in einem Favoriten sein.

Aber ich bekomme eine Fehlermeldung Meldung "Unknown command {my, try help."
Irgendwie ist mir das ja sogar klar, weil die Variable hier scheinbar nicht so angelegt werden kann. Ich arbeite sonst in defines (z.B. at ... erfolgreich mit my ...).
Mir ist nur nicht klar wie ich hier am Besten vorgehen kann.

Hat jemand eine Idee ????


Beta-User

Was die konkrete Umsetzung innerhalb der Favoriten angeht, bin ich auch etwas ratlos und würde sowieso empfehlen, das in eine myUtils-Routine auszulagern. Da kannst du besser testen und im log stehen dann vermutlich ein paar aufschlussreichere Infos ;) .

Es sind aber im Perl-Code auch mindestens zwei Fehler drin: zum einen sind die if - else - Blöcke in geschweiften Klammern {} zu schreiben, nicht in runden, und zum anderen kannst du nicht so einfach zwischen der Perl- und  FHEM-Befehlsebene hin- und herwechseln. Das abschließende "set"-Kommando muß als fhem("set...") notiert werden.
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files