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
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
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
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
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.
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