FHEM Forum

FHEM - Hausautomations-Systeme => Unterstützende Dienste => Thema gestartet von: czcbe am 18 März 2019, 09:29:54

Titel: Telegram schneidet Nachrichten ab
Beitrag von: czcbe am 18 März 2019, 09:29:54
Es ist mir aufgefallen, dass TelegramBot Nachrichten seit kurzer Zeit nach einem Zeilenumbruch in der Nachricht (\n) abgeschnitten werden. Der Rest fehlt komplett. Ich benutze dies im Zusammenhang mit dem Monitoringmodul und Temperatursensorüberwachung.
Auch das Telegram-Attribut "parseModeSend" auf HTML nutzt dabei nichts.

Kann mir jemand Unterstützung geben? Ich will die Nachrichten ja nicht umbauen und alle in einer Zeile lesen müssen...

Titel: Antw:Telegram schneidet Nachrichten ab
Beitrag von: czcbe am 18 März 2019, 21:50:43
Nachtrag:

Im folgenden DOIF wird $msg nur bis zum ersten Zeilenumbruch via Telegram gesendet, der Rest scheint abgeschnitten und verloren:

defmod ServiceNotifications_DI DOIF ((\
   [":^error add:"]\
   || [$SELF:cmd] == 2\
) \
&& (\
   (\
     [ServiceNotifications_cu:state] eq "ein"\
     && [NRW:state] eq "none"\
   ) \
   || AttrVal("$DEVICE", "priority", 0) == 1\
) \
)(\
  {my $msg = fhem("get TYPE=monitoring default");;\
   my $oldMsg = $defs{$SELF}{helper}{oldMsg};;\
\
   if($msg && (!$oldMsg || $msg ne $oldMsg)){\
    fhem("set telegramBot message $msg");;\
\
$defs{$SELF}{helper}{oldMsg} = $msg;;\
   }\
   \
   return;;\
  }\
)\
DOELSEIF\
([":^error add:"])

attr ServiceNotifications_DI cmdState send notifications|notifications pending
attr ServiceNotifications_DI cmdpause 60*15
attr ServiceNotifications_DI do always
attr ServiceNotifications_DI wait 60*15