Formatierung von reading in telegram message

Begonnen von Werner, 24 November 2021, 12:19:34

Vorheriges Thema - Nächstes Thema

Werner

Gelöst! Ich lasse mir täglich einen Report vom Haus per telegram schicken, das funktioniert auch prima. Dazu gehört ein Bild von der Haustür(ob der Paketdienst da was abgelegt hat) und diverse Meßwerte und Statusinformation.
Gesendet wird z.B. "([12:05]) (set myTelegramBot message  Rolladen Terrassentür [Rollo_2:state]\n", im Telegram steht dann "Rolladen Terrassentür on" (oder off), weil ja state ausgelesen wird. Im Attribut eventMap steht  on:rauf off:runter, gibt es eine Möglichkeit, diese Information anstelle des readings zu übertragen, damit dann Rolladen rauf(runter) zu lesen ist? in STATE wird ja rauf bzw runter angezeigt. 

MadMax-FHEM

InternalVal("Devicename", "STATE", "Ersatzwert") sollte gehen.

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

Beta-User

#2
...oder eben die "Abkürzung" nehmen:  [Rollo_2:STATE] ;)
Damit (wie auch mit dem vorgeschlagenen InternalVal()) bekommt man dann auch die Formatierungen via stateFormat "frei Haus", wenn man z.B. Temperaturwerte mit Einheiten versieht usw..
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

Werner

#3
Beta-User: Bei set myTelegramBot message  Rolladen Terrassentür [Rollo_2:STATE]  kommt garnichts, obwohl rauf drinsteht.   StateFormat habe ich bei den Ansagen für Meßwerte drin, das klappt und ich bekomme im telegram dann sehr schön z.B. 25°C ausgegeben.
MadMax-FHEM: kannst Du das bitte etwas näher erläutern? InternalVal("Devicename", "STATE", "Ersatzwert")  InternalVal ist nicht in der Liste der Attribute.   

Otto123

#4
So wäre set magic mit Perl - nachzulesen in der commandref unter set
set myTelegramBot message  Rolladen Terrassentür {(InternalVal("Rollo_2", "STATE", "Ersatzwert"))}

Wieso die Kurzform nicht gehen soll erschließt sich nicht. Zur Diagnose wäre ein list Rollo_2 hilfreich! Nachzulesen unter diesem Forenbeitrag. ;)
Die Aussage "InternalVal ist nicht in der Liste der Attribute. " verstehe ich nicht. ::)
Die Beschreibung der nützlichen Funktionen wie InternalVal() findet sich in der commandref im Abschnitt Perl Specials.
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Werner

läuft! vielen Dank, mir war nicht klar, daß ich das als Perl in geschweifte Klammern setzen muß. Wieder was gelernt, man ist ja nicht mehr der Jüngste.....