FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: wendeling am 23 Februar 2019, 23:06:25

Titel: Readings über TelegramBot versenden
Beitrag von: wendeling am 23 Februar 2019, 23:06:25
Hallo,
ist es möglich das Ergebnis von einer Readingroup per TelegramBot zu versenden ?

Ich möchte das Ergebnis Pollenflugvorhersage versenden.

Gruß
Wendelin
Titel: Antw:Readings über TelegramBot versenden
Beitrag von: Ralph am 24 Februar 2019, 08:56:10
Schreibe die Readings in eine Datei und dann
attr your_bot favorites /[ DeinLog ]={fhem("set your_bot sendDocument /opt/fhem/Dein.log")};;\
Titel: Antw:Readings über TelegramBot versenden
Beitrag von: wendeling am 24 Februar 2019, 14:25:07
Danke für die Antwort,
blöde Frage , wie schreibe ich das in eine Datei ? Per Log ?
Hatte mir vorgestellt ich bekomme es so hin wie es mir angezeigt wird (grafisch) mit den farbigen dots

Gruß
Wendelin
Titel: Antw:Readings über TelegramBot versenden
Beitrag von: Ralph am 24 Februar 2019, 15:53:05
Moin,
für die Generierung einer Art Bildschirmabzug habe ich kein KnoffHoff.

Hierin gibt es irgendwo eine Funktion Schreiben in eine Datei, such mal.

Wenn die - welche auch immer - Datei vorliegt, dann kann die immer mit dem in den geschweiften Klammern stehenden Befehl versandt werden.
Das müsste auch mit einem Notify auf die Fertigstellung des Bildschirmabzuges funktionieren.

Gestolpert bin ich auf der Empfangsseite. Ein Eierfon mag bestimmte Dateiarten ( z.B. .log) nicht ohne ZusatzApp anzeigen.  .txt geht am besten.

Montagabend kann ich Dir meine Statusprozedur einstellen, die ist aber nur Text.
Titel: Antw:Readings über TelegramBot versenden
Beitrag von: wendeling am 24 Februar 2019, 15:55:18
Hallo,
danke schon mal für Deinen Antwort !

Gruß
Wendelin
Titel: Antw:Readings über TelegramBot versenden
Beitrag von: Ralph am 24 Februar 2019, 16:04:18
Readings schreiben in Datei.

https://forum.fhem.de/index.php/topic,14993.msg96817.html#msg96817
Titel: Antw:Readings über TelegramBot versenden
Beitrag von: Ralph am 25 Februar 2019, 18:56:06
Ergänze Deine 99_myUtils.pm in Verzeichnis fhem/FHEM um:

sub schrdatei($$) {
   my ($was, $wohin) = @_;
   open  (DATEI, $wohin) or die $!;
   print  DATEI  $was;
   close (DATEI);
   return
}


Lege in Verzeichnis fhem (kleingeschrieben)
eine Datei namens aDUMP an mit folgendem (hier nur meine Beispiele) Inhalt:

{schrdatei(("Hz_Bad ".ReadingsVal("Hz_Bad","state","0")." ".ReadingsTimestamp("Hz_Bad","state","0")."\r\n"),'>/opt/fhem/log/status.txt')}
{schrdatei(("Hz_Buero ".ReadingsVal("Hz_Buero","state","0")." ".ReadingsTimestamp("Hz_Buero","state","0")."\r\n"),'>>/opt/fhem/log/status.txt')}
{schrdatei(("Hz_WoZi ".ReadingsVal("Hz_WoZi","state","0")." ".ReadingsTimestamp("Hz_WoZi","state","0")."\r\n"),'>>/opt/fhem/log/status.txt')}
{schrdatei(("Hz_zRes ".ReadingsVal("Hz_zRes","state","0")." ".ReadingsTimestamp("Hz_zRes","state","0")."\r\n"),'>>/opt/fhem/log/status.txt')}
{schrdatei(("TH_Kueche ".ReadingsVal("TH_Kueche","state","0")." ".ReadingsTimestamp("TH_Kueche","state","0")."\r\n"),'>>/opt/fhem/log/status.txt')}
{schrdatei(("TH_SchlaZi ".ReadingsVal("TH_SchlaZi","state","0")." ".ReadingsTimestamp("TH_SchlaZi","state","0")."\r\n"),'>>/opt/fhem/log/status.txt')}
{schrdatei(("TH_WoZiTisch ".ReadingsVal("TH_Z_Z","state","0")." ".ReadingsTimestamp("TH_Z_Z","state","0")."\r\n"),'>>/opt/fhem/log/status.txt')}
{schrdatei(("TH_Z_Kuehl ".ReadingsVal("TH_Z_Kuehl","state","0")." ".ReadingsTimestamp("TH_Z_Kuehl","state","0")."\r\n"),'>>/opt/fhem/log/status.txt')}
{schrdatei(("TH_Aussen ".ReadingsVal("TH_Aussen","state","0")." ".ReadingsTimestamp("TH_Aussen","state","0")."\r\n"),'>>/opt/fhem/log/status.txt')}
{schrdatei(("SD_Aussen ".ReadingsVal("SD_WS_51_TH_1","state","0")." ".ReadingsTimestamp("SD_WS_51_TH_1","state","0")."\r\n"),'>>/opt/fhem/log/status.txt')}
{schrdatei(("U_Eingang ".ReadingsVal("U_Eingang","state","0")." ".ReadingsTimestamp("U_Eingang","state","0")."\r\n"),'>>/opt/fhem/log/status.txt')}
{schrdatei(("U_Keller ".ReadingsVal("U_Keller","state","0")." ".ReadingsTimestamp("U_Keller","state","0")."\r\n"),'>>/opt/fhem/log/status.txt')}
{schrdatei(("U_USV_RasPi ".ReadingsVal("I2C_USV","Voltage","0")." V  ".ReadingsVal("I2C_USV","Percent","0")." %  ".ReadingsTimestamp("I2C_USV","state","0")."\r\n"),'>>/opt/fhem/log/status.txt')}
{schrdatei(("U_USV_PC_FB ".ReadingsVal("U_USV_PC_FB","state","0")." ".ReadingsTimestamp("U_USV_PC_FB","state","0")."\r\n"),'>>/opt/fhem/log/status.txt')}
{schrdatei(("U_ZweitAkku ".ReadingsVal("U_ZweitAkku","state","0")." ".ReadingsTimestamp("U_ZweitAkku","state","0")."\r\n"),'>>/opt/fhem/log/status.txt')}
{schrdatei(("U_Auto ".ReadingsVal("U_Auto","state","0")." ".ReadingsTimestamp("U_Auto","state","0")."\r\n"),'>>/opt/fhem/log/status.txt')}

{fhem("set dein_bot sendDocument /opt/fhem/log/status.txt")}


Ergänze Deinen dein_bot mit:

attr dc5un_bot favorites /[ DUMP ]=incl aDUMP;;\

und / oder rufe es in der Befehlszeile auf mit incl aDUMP