FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: bajogger am 22 September 2024, 17:59:42

Titel: Einmal wöchentlich eine Telegramm Message
Beitrag von: bajogger am 22 September 2024, 17:59:42
Habe den Conbee2 Stick im Einsatz. Dort Aquara Temp Sensoren angemeldet. Möchte von diesen einmal die Woche den Batteriestatus per Telegramm Mitteilung bekommen.

Ich hatte im ersten Schritt eine tägliche Mitteilung eingerichtet

*23:59:00 set PushTelegrBot message @123456789 Batterie Wohnzimmer [HUESensor2:batteryPercent]%,
Schlafzimmer [HUESensor5:batteryPercent]%, Garage [HUESensor26:batteryPercent]%, Bad [HUESensor11:batteryPercent]%,
Waschküche [HUESensor23:batteryPercent]%, Kinderschlafz [HUESensor14:batteryPercent]%

Das funktioniert

Jetzt versuche ich dies nur an einem Tag der Woche machen. Nutze dazu die Funktion $wday

*23:59:00 { if ($wday == 5) { fhem ("set PushTelegrBot message @123456789 Batterie Wohnzimmer [HUESensor2:batteryPercent]%,
Schlafzimmer [HUESensor5:batteryPercent]%, Garage [HUESensor26:batteryPercent]%, Bad [HUESensor11:batteryPercent]%,
Waschküche [HUESensor23:batteryPercent]%, Kinderschlafz [HUESensor14:batteryPercent]%") } }

Leider bekomme ich nun Fehlermeldungen

Global symbol "@123456789" requires explicit package name (did you forget to declare "my @Gernot_Zimmer"?) at (eval 29393) line 1.
Ich vermute mal wieder falsche Klammersetzung. Werde wohl nie dies kapieren. Vielleicht kann mir jemand helfen
Titel: Aw: Einmal wöchentlich eine Telegramm Message
Beitrag von: MadMax-FHEM am 22 September 2024, 18:05:00
Warum Klammern?

Ich denke dass so wie du das @ verwendest es escaped werden muss, also z.B. statt '@' eben '\@' oder '@@'

Ob "setMagic", das [Device:Reading] dort wo du es verwendest funktioniert weiß ich nicht, wirst du aber ja merken ;)

Gruß, Joachim
Titel: Aw: Einmal wöchentlich eine Telegramm Message
Beitrag von: bajogger am 22 September 2024, 18:16:42
Tatsächlich das war es. Doppel@ nicht, aber \@ hat funktioniert.

Wenn ich es noch verstehen würde, wäre nicht schlecht

Vielen Dank für die Hilfe
Titel: Aw: Einmal wöchentlich eine Telegramm Message
Beitrag von: MadMax-FHEM am 22 September 2024, 18:25:20
Zitat von: bajogger am 22 September 2024, 18:16:42Wenn ich es noch verstehen würde, wäre nicht schlecht
Z.B.: https://de.wikipedia.org/wiki/Maskierungszeichen

Das @ wird durch den fhem-Interpreter/Perl als Variable bzw. Array-Definition interpretiert. Um das zu verhindern, muss es escaped/maskiert werden.

Komisch, dass \@ nicht geht, sollte genauso klappen...

Gruß, Joachim
Titel: Aw: Einmal wöchentlich eine Telegramm Message
Beitrag von: bajogger am 22 September 2024, 18:37:49
Nochmals Danke für deine Erklärung

Hatte geschrieben das \@ funktioniert und @@ hat tatsächlich bei mir nicht funktioniert bzw brachte noch die gleiche Fehlermeldung.
Titel: Aw: Einmal wöchentlich eine Telegramm Message
Beitrag von: MadMax-FHEM am 22 September 2024, 19:16:20
Zitat von: bajogger am 22 September 2024, 18:37:49Hatte geschrieben das \@ funktioniert und @@ hat tatsächlich bei mir nicht funktioniert bzw brachte noch die gleiche Fehlermeldung.
Ups, ok falsch gelesen ;) 8)

Gruß, Joachim