Hallo,
ich habe ein kleines Problem mit dem |-Trennzeichen, vielleicht kann mir Jemand einen Tipp geben.
Beim Threshold-Modul (https://fhem.de/commandref.html#THRESHOLD) wird das | als Trennzeichen verwendet um die Commands zu trennen.
Beim Pushbullet-Modul (https://bartman121.mooo.com/fhem/docs/commandref.html#Pushbullet) wird das | als Trennzeichen verwendet um Titel,Nachricht und Empfänger zu trennen.
hier mal ein List vom Threshold-Device:
Internals:
CHANGED
DEF BA.TEMP:humidity:5:65 PB|set @ message Bad: Luftfeuchtigkeit zu hoch, Lüften nötig | set @ message Bad: Luftfeuchtigkeit okay, Lüften fertig
FUUID 5c8d403c-f33f-1dd6-d5ba-703496f3a2e02177
NAME threshold_bad
NR 302
NTFY_ORDER 50-threshold_bad
STATE active 65.0
TYPE THRESHOLD
cmd1_gt set PB message Bad: Luftfeuchtigkeit zu hoch, Lüften nötig
cmd2_lt set PB message Bad: Luftfeuchtigkeit okay, Lüften fertig
cmd_default 0
hysteresis 5
init_desired_value 65
offset 0
sensor BA.TEMP
sensor_reading humidity
READINGS:
2019-03-17 09:38:53 cmd cmd2_lt
2019-03-17 05:44:43 desired_value 65
2019-03-17 05:44:43 mode active
2019-03-17 17:10:28 sensor_value 64
2019-03-16 19:46:41 state active 65.0
2019-03-17 05:44:43 threshold_max 65
2019-03-17 05:44:43 threshold_min 60
Attributes:
DbLogExclude .*
number_format %.1f
state_cmd1_gt high
state_cmd2_lt okay
state_format _m _dv
Im o.g. Beispiel habe ich die Trenner weggelassen und einfach eine Nachricht an "alle" ohne Titel gesendet, das geht. Ich würde aber gern Titel, Nachricht und Empfänger spezifizieren. Wie kann ich das Zeichen "escapen"(? heißt das so?), sodass ich in den Commands auch | verwenden kann.
Hat Jemand einen Tipp oder ist das schlicht nicht möglich?
Danke schon im Voraus
Zitat von: bartman121 am 17 März 2019, 17:54:07
Hallo,
ich habe ein kleines Problem mit dem |-Trennzeichen, vielleicht kann mir Jemand einen Tipp geben.
Beim Threshold-Modul (https://fhem.de/commandref.html#THRESHOLD) wird das | als Trennzeichen verwendet um die Commands zu trennen.
Beim Pushbullet-Modul (https://bartman121.mooo.com/fhem/docs/commandref.html#Pushbullet) wird das | als Trennzeichen verwendet um Titel,Nachricht und Empfänger zu trennen.
hier mal ein List vom Threshold-Device:
Internals:
CHANGED
DEF BA.TEMP:humidity:5:65 PB|set @ message Bad: Luftfeuchtigkeit zu hoch, Lüften nötig | set @ message Bad: Luftfeuchtigkeit okay, Lüften fertig
FUUID 5c8d403c-f33f-1dd6-d5ba-703496f3a2e02177
NAME threshold_bad
NR 302
NTFY_ORDER 50-threshold_bad
STATE active 65.0
TYPE THRESHOLD
cmd1_gt set PB message Bad: Luftfeuchtigkeit zu hoch, Lüften nötig
cmd2_lt set PB message Bad: Luftfeuchtigkeit okay, Lüften fertig
cmd_default 0
hysteresis 5
init_desired_value 65
offset 0
sensor BA.TEMP
sensor_reading humidity
READINGS:
2019-03-17 09:38:53 cmd cmd2_lt
2019-03-17 05:44:43 desired_value 65
2019-03-17 05:44:43 mode active
2019-03-17 17:10:28 sensor_value 64
2019-03-16 19:46:41 state active 65.0
2019-03-17 05:44:43 threshold_max 65
2019-03-17 05:44:43 threshold_min 60
Attributes:
DbLogExclude .*
number_format %.1f
state_cmd1_gt high
state_cmd2_lt okay
state_format _m _dv
Im o.g. Beispiel habe ich die Trenner weggelassen und einfach eine Nachricht an "alle" ohne Titel gesendet, das geht. Ich würde aber gern Titel, Nachricht und Empfänger spezifizieren. Wie kann ich das Zeichen "escapen"(? heißt das so?), sodass ich in den Commands auch | verwenden kann.
Hat Jemand einen Tipp oder ist das schlicht nicht möglich?
Danke schon im Voraus
THRESHOLD kann damit nicht umgehen.
set-Aufruf in eigene Perl-Funktion auslagern oder statt THRESHOLD DOIF nehmen.