Telegram instant messaging TelegramBot - Empfangen und Senden per FHEM

Begonnen von viegener, 20 Juni 2015, 18:59:41

Vorheriges Thema - Nächstes Thema

viegener

Zitat von: Wasserwerk33 am 04 April 2022, 17:59:05
wo müsste ich das den machen??


Habe mal Filter im Event Monitor gemacht. Im Log steht garnix drin
Das kamm dabei raus.
2022-04-04 17:53:46 TelegramBot TelegramBot msgText: /m
2022-04-04 17:53:53 HOMEMODE Zuhause fhemMsgRcvPush: /m4 = /Einkaufsliste  =  set testlistbot start TelegramBot
2022-04-04 17:53:53 ROOMMATE rr_Stefan fhemMsgRcvPush: /m4 = /Einkaufsliste  =  set testlistbot start TelegramBot
2022-04-04 17:53:53 TelegramBot TelegramBot msgText: /m4 = /Einkaufsliste  =  set testlistbot start TelegramBot
2022-04-04 17:54:16 PostMe testpostme postme03Name: testlist
2022-04-04 17:54:16 PostMe testpostme postme03Cont:
2022-04-04 17:54:16 PostMe testpostme postmeCnt: 3
2022-04-04 17:54:27 TelegramBot TelegramBot msgText: /m
2022-04-04 17:54:29 HOMEMODE Zuhause fhemMsgRcvPush: /m4 = /Einkaufsliste  =  set testlistbot start TelegramBot
2022-04-04 17:54:29 ROOMMATE rr_Stefan fhemMsgRcvPush: /m4 = /Einkaufsliste  =  set testlistbot start TelegramBot
2022-04-04 17:54:29 TelegramBot TelegramBot msgText: /m4 = /Einkaufsliste  =  set testlistbot start TelegramBot
2022-04-04 17:54:29 TelegramBot TelegramBot queryInline @680783950 (ok:TBL_testlistbot%list_ok|ändern:TBL_testlistbot%list_menu|hinzu:TBL_testlistbot%list_askadd) Liste testlist ist leer
2022-04-04 17:54:29 TBot_List testlistbot start TelegramBot
2022-04-04 17:54:40 TelegramBot TelegramBot msgForceReply @680783950 Liste testlist Neuen Eintrag eingeben:
2022-04-04 17:54:46 TelegramBot TelegramBot msgText: Zucker
2022-04-04 17:54:59 TelegramBot TelegramBot msgForceReply @680783950 Liste testlist Neuen Eintrag eingeben:
2022-04-04 17:55:07 TelegramBot TelegramBot msgText: Milch


einen Chat habe ich nicht direkt geöffnet. Nur meine Frau und ich benutzen, den selben Bot. Bis jetzt haben wir damit aber auch ejar nur Garagentor geöffnet und Licht angemacht. Mehr nicht. Das hat nie probleme gemacht, und macht es jetzt auch nicht.

wenn ich mir den msg text anschaue, würde ich sagen er weiß nicht wohin damit

zu favoritesinline) Nein ich glaube nicht dass es einen Unterschied macht - es geht um das Attribut

zu chats) Ich meinte ob der Bot Teil einer Gruppe in Telegram ist und der Bot über Nachrichten in dieser Gruppe angeschrieben wird oder direkt im Client ohne die Gruppe

logfile) wenn ich log file meine - geht es um den logfile von FHEM - dort würden alle Fehlermeldung landen wie zum Beispiel diejenige, die Du unten schreibst

zu eventviewer) Das hilft normalerweise nicht weiter, in diesem Fall aber vielleicht schon: Ich kann die eventviewer-Einträge nicht genau interpretieren, aber es siht so aus, als ob das Kommando "set testlistbot start TelegramBot" mehrfach hintereinander ausgelöst wird, das wäre eine Erklärung dafür, dass bei OK ein Problem entsteht. Wenn mehrere dieser TBOT_List-Dialoge parallel für denselben Kontakt laufen, dann klappt die Zuordnung nicht mehr



Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

Wasserwerk33

Habe meinen Fehler gefunden. Habe mir alles nochmal angeschaut Zeile für Zeile. Weiß nur nicht wieso ich den gesetzt habe.
Habe dieses im Telgrambot gelöscht und nun läuft er.

event-on-change-reading state
   event-on-update-reading msgText


Ich danke dir für die Hilfe.

NewMatic

Zitat von: Heatseeker am 14 Februar 2021, 18:13:17
Naja,

FHEM friert ein, oder wird extrem langsam...

ich hab ein ähnliches Problem. Sobald ich den TelegramBot aktiviere und pollingtimeout größer 0 einstelle, wird fhem derart langsam, dass ich meine Rollosteuerung fast nicht mehr bedienen kann (extrem zeitverzögert). Sobald ich den TelegramBot in Fhem auf disable setze, passt alles und FHEM reagiert wie gewohnt.

Das Ganze ist auf einem aktuellen Debian Bullseye auf einen RPI3 installiert. Generell kann der Bot mit Telegram kommunizieren, aber bremst leider generell FHEM aus. Hat jemand eine Idee oder Lösung dazu gefunden?


viegener

Zitat von: NewMatic am 06 April 2022, 14:45:18
ich hab ein ähnliches Problem. Sobald ich den TelegramBot aktiviere und pollingtimeout größer 0 einstelle, wird fhem derart langsam, dass ich meine Rollosteuerung fast nicht mehr bedienen kann (extrem zeitverzögert). Sobald ich den TelegramBot in Fhem auf disable setze, passt alles und FHEM reagiert wie gewohnt.

Das Ganze ist auf einem aktuellen Debian Bullseye auf einen RPI3 installiert. Generell kann der Bot mit Telegram kommunizieren, aber bremst leider generell FHEM aus. Hat jemand eine Idee oder Lösung dazu gefunden?

Die übliche n Fragen:
- Was hat sich geändert oder hat das nie funktioniert bei Dir
- gibt es auffällige Meldung im log (nicht nur von telegrambot)
- Läuft Dein FHEM im Container oder "direkt"
- Ist fhem aktuell
- SInd andere Netzwerkkomponente beteiligt (pihole oder ähnliches)
- ist das dnsserver attribut gesetzt
- gibt es andere devices (die nach aussen Verbindungen aufmachen) z.B. httpmod und geht es dort ohen verzögerungen
- gibt es Meldungen auf Linux ebene?

Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

NewMatic

- Was hat sich geändert oder hat das nie funktioniert bei Dir
>>hat auf den RPI3 nie funktioniert (wie gesagt frisch aufgesetzt)
- gibt es auffällige Meldung im log (nicht nur von telegrambot)
>>Außer Telegrambot nichts auffälliges
- Läuft Dein FHEM im Container oder "direkt"
>>Läuft "direkt"
- Ist fhem aktuell
>>Ja Installation wurde neu aufgesetzt und ist aktuell
- SInd andere Netzwerkkomponente beteiligt (pihole oder ähnliches)
>>Nein
- ist das dnsserver attribut gesetzt
>>habe ich gesetzt. Mit DNS 8.8.8.8 wird das ganze extrem langsam aber funktioniert. Mit DNS auf den Router geht er in ein pollingtimeout
- gibt es andere devices (die nach aussen Verbindungen aufmachen) z.B. httpmod und geht es dort ohen verzögerungen
>>nein
- gibt es Meldungen auf Linux ebene?
>>das kann ich nicht beantworten. wo bzw. in welchen log könnte ich da nachsehen?

viegener

#2675
Zitat von: NewMatic am 08 April 2022, 10:17:21
- Was hat sich geändert oder hat das nie funktioniert bei Dir
>>hat auf den RPI3 nie funktioniert (wie gesagt frisch aufgesetzt)
- gibt es auffällige Meldung im log (nicht nur von telegrambot)
>>Außer Telegrambot nichts auffälliges
- Läuft Dein FHEM im Container oder "direkt"
>>Läuft "direkt"
- Ist fhem aktuell
>>Ja Installation wurde neu aufgesetzt und ist aktuell
- SInd andere Netzwerkkomponente beteiligt (pihole oder ähnliches)
>>Nein
- ist das dnsserver attribut gesetzt
>>habe ich gesetzt. Mit DNS 8.8.8.8 wird das ganze extrem langsam aber funktioniert. Mit DNS auf den Router geht er in ein pollingtimeout
- gibt es andere devices (die nach aussen Verbindungen aufmachen) z.B. httpmod und geht es dort ohen verzögerungen
>>nein
- gibt es Meldungen auf Linux ebene?
>>das kann ich nicht beantworten. wo bzw. in welchen log könnte ich da nachsehen?

Das klingt alles erstmal danach, als ob der TelegramBot hier ein Symptom aufdeckt. Ich vermute zuerst einmal ein Problem im System selbst.
Um das zu bestätigen wäre es sinnvoll vielleicht mal ein HTTPMod aufzusetzen, das Daten über eine externe https-Verbindung ausliest.

Alternativ kannst Du auch mal versuchen per "curl" in der Shell einen Web-Request zum Laden eienr Datei anzustossen und schauen ob das normal funktioniert.

Da ich Dein Sytem jetzt nicht genauer kenne, wird Dir bei Systemlogs vermutlich google eher helfen können - Kandidaten sind der Bootprozess (entweder am Bildschirm) oder per dmesg // Ausserdem sind die Dateien unter /var/log (also insbesondere syslog) hilfreich um nach Meldungen / Auffälligkeiten zu suchen

Und natürlich gibt es Auffälligkeiten im fhem log (nicht telegrambot)

Ausserdem immer die Frage - was ist anders als vorher / auf anderen Systemen - das führt möglicherweise auf die Spur



Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

DetlefR

Ich habe mal eine Frage zum Livestandort in Telegram.
Vielleicht gibt es ja schon etwas und ich habe es nur nicht gefunden.
Ich möchte meinen Livestandort teilen. Und zwar, ohne dass ich noch eine zusätzliche App installieren muss. Das lässt sich auf dem Telefon im Bot einfach bewerkstelligen. Das kommt auch in FHEM an und wird gleich in Lang/Long aufgeteilt. Soweit so gut.
Aber wie kann ich nun von FHEM aus einen Aktualisierungswunsch an das Telefon schicken. Dazu reicht mein Verständnis der Telegram API nicht.
Aber vielleicht kann mir ja jemand helfen.

Gruß Detlef

NewMatic

Zitat von: viegener am 07 April 2022, 22:41:53
- ist das dnsserver attribut gesetzt

was sollte den beim dnsserver attribut gesetzt werden? Der lokale router oder 8.8.8.8 ?

viegener

Zitat von: NewMatic am 14 April 2022, 15:35:15
was sollte den beim dnsserver attribut gesetzt werden? Der lokale router oder 8.8.8.8 ?

Das ist für das Verhalten von fhem nicht unbedingt relevant, es geht erstmal darum, ob das Attribut gesetzt ist. Es ist interessant, dass bei Dir so extrem langsam läuft. Hast Du mal versucht das dnsserver attribut nicht zu setzen?



Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

Andre09

Hallo zusammen.

Ich nutzte den telegram bot bisher ohne Probleme als Info zentrale (wer klingelt) als Menü etc. Mein System ist seit über 200 Tagen unverändert. Jetzt habe ich gemerkt das nicht mehr alles bei mir ankommt. Z.b muss ich 3 x ,,menü" eingeben damit es dann beim 3. mal klappt. Wenn es klingelt kommt nur noch jedes 2. mal das Bild aber manchmal auch jedes.

Ich hab mir dann den bot angeschaut und unter readings gesehen das da eine fast 20 seitige Liste an contacts ist (steht bei List unter contacts) und vermute das es damit zu tun hat. Vielleicht geht der Befehl unter wegen der Masse an readings die da erzeugt werden. Hat jemand eine Idee ob das normal ist oder kann mit meiner Beschreibung was anfangen ?

Bin sehr auf die telegram Steuerung angewiesen wegen Nachrichten zu Bewegungen als Sicherheit etc. Und bisher hat es immer ohne Probleme funktioniert :(



FAILS      1
   FUUID      5c84befe-f33f-1dc2-1cb6-ca21b31691911185
   NAME       teleBot
   NR         1156
   OLD_POLLING 38
   POLLING    38
   SNAME      teleBot
   STATE      Polling
   TYPE       TelegramBot
   UPDATER    0
   WAIT       0
   me         560908489:Hausinfo:@Horster_bot
   offset_id  233003801
   sentLastResult SUCCESS
   sentMsgId 
   sentMsgOptions
   sentMsgPeer André
   sentMsgPeerId 528847740
   sentMsgText AnswerInline:  - 2271383750737875521
   sourceVersion $Id: 50_TelegramBot.pm 23001 2020-10-21 19:33:31Z viegener $
   .attraggr:
   .attrminint:
   AliasCmds:
   Contacts:
     -1001651144827 -1001651144827::#🇿🇦🇸🇸🇩🇪🇫🇷🇺🇲_✪_24/7_CRYPTO_WORLD_🌍_INVESTMENT📉📈📊
     1000275218 1000275218:максим_Гиров:@Magor232
     1000393434 1000393434:Hannelore_Schaffeld:@Hannelore1
     1000526567 1000526567:Rainer:@Lehmann5
     1000885959 1000885959:Carien_Veldman:@Carien_Veldman
     1000949352 1000949352:Obada_Hammoush:@obhamm
     1001230290 1001230290:doreen:@Doreen217
     1001392619 1001392619:H_Lina:@Shelina7502564
     1001708893 1001708893:Richard:@Sandilemabilisa
     1001787290 1001787290:Иван_Широченко:@ivan64
     1001787964 1001787964:Anik_Bonarde:@Bonarde
     1002758531 1002758531:Dixon_Mtile:@Mtilee
     1002898569 1002898569:Leudis_Góis:@leudisgois
     1003000877 1003000877:mazafaka___:@flatt1678
     1003145077 1003145077:Maleah:@Malehuh
     1003582262 1003582262:Bhekisisa_Ncube:@Bheki99
     1003633279 1003633279:Ceylan_inanır:@ceylan140817
     1003706482 1003706482:Thabo:@Thaboxolani
     1004092388 1004092388:Maletsatsi_Pauline:@maletsatsip
     1005007104 1005007104:AGNETHE_SCHMIDT:@SCHMIDT68
     1005007120 1005007120:Ephraine_MADOUELE:@Ephraine
     1005053753 1005053753:Sandie_Nandipha:@Nandipha92
     1005464492 1005464492:Vladimir_Vladimirovich:@vladimir96
     1005594749 1005594749:Nicklaus_Micaelson:@klaus91
     1005806785 1005806785:Karsten_Zintz:@Karsten97
     1005917726 1005917726:Budi_Saputra:@kohler_93
     1005918083 1005918083:Marina_Homs:@mahog


Da kommen jetzt seitenweise die Kontakte ...



MadMax-FHEM

#2680
Willst du die Kontakte alle haben?

Wenn nicht: löschen und v.a. attr allowUnknownContacts auf 0 setzen!!
(steht aber denke ich auch im Wiki
EDIT: https://wiki.fhem.de/wiki/TelegramBot#Privacyeinstellungen und https://wiki.fhem.de/wiki/TelegramBot#Befehle_von_Telegram_an_FHEM_senden und auch hier: https://forum.fhem.de/index.php/topic,51425.0.html)

Ebenfalls hoffe ich (sieht man im list ja nicht), dass du auch restrctedPeers gesetzt hast und/oder überpfüfst, wer denn die "Menü-Anfrage" oder gar eine "Befehls-Ausführung" anfordert: msgPeerID (glaube ich)!

Ob es daran liegt: keine Ahnung...

Manchmal hat aber auch Telegram selber "Probleme" oder das Internet hängt grad (auf deiner Seite) oder fhem "hängt" grad: fhem ist Single-Threaded. Wenn also irgendein Modul "hängt" (z.B. wartet z.B. auf einen Internetrequest und wenn dieser nicht "non-blocking" implementiert ist), dann reagiert auch TelegramBot nicht/langsam(er)...

Also evtl. mal auf "Freezes" prüfen: FreezeMon

Ist Attribut dnsServer in global gesetzt?

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)

Andre09

Zitat von: MadMax-FHEM am 24 April 2022, 12:37:16
Willst du die Kontakte alle haben?

Wenn nicht: löschen und v.a. attr allowUnknownContacts auf 0 setzen!!
(steht aber denke ich auch im Wiki
EDIT: https://wiki.fhem.de/wiki/TelegramBot#Privacyeinstellungen und https://wiki.fhem.de/wiki/TelegramBot#Befehle_von_Telegram_an_FHEM_senden und auch hier: https://forum.fhem.de/index.php/topic,51425.0.html)


Erstmal vielen Dank. Nein ich will natürlich nicht diese Millionen Kontakte haben. Ich habe mit Replace jetzt die IDs von mir und meiner Frau eingesetz und anschließend allowUnknownContacts auf 0 gesetzt, war vorher 1...

Zitat
Ebenfalls hoffe ich (sieht man im list ja nicht), dass du auch restrctedPeers gesetzt hast und/oder überpfüfst, wer denn die "Menü-Anfrage" oder gar eine "Befehls-Ausführung" anfordert: msgPeerID (glaube ich)!

nein das habe ich tatsächlich nicht, dachte es können auch nur commands von den contacts ausgeführt werden, die ja jetzt nur noch ich und Frau sind... Okay im Wiki steht Achtung: Bei den Kommandos sollten man unbedingt das Attribut "cmdRestrictedPeer" setzen, damit nicht jeder Kommandos auf dem FHEM-Server ausführen kann. Dazu sollten die BenutzerIDs der erlaubten Benutzer (durch Leerzeichen getrennt angeben).

Mein Code für den Menüaufruf ist:

define teleBotMenu notify teleBot.msgText:.Menü set teleBot queryInline @[teleBot:msgPeer] (Ⓜ|R⬇|🔔|🌡) (👣|💡|ℹ|💻) (3D|📆) 🔝 <b>Hauptmenü</b>

Habe aber jetzt das attr cmdRestrictedPeer bei meinem Telebot gesetz und die beiden IDs von uns eingesetzt. Da der Menüaufruf noch geht, war das wohl richtig :)

Zitat

Ob es daran liegt: keine Ahnung...

Manchmal hat aber auch Telegram selber "Probleme" oder das Internet hängt grad (auf deiner Seite) oder fhem "hängt" grad: fhem ist Single-Threaded. Wenn also irgendein Modul "hängt" (z.B. wartet z.B. auf einen Internetrequest und wenn dieser nicht "non-blocking" implementiert ist), dann reagiert auch TelegramBot nicht/langsam(er)...

Mal gucken ob die gemachten Änderungen Auswirkungen haben. Komisch ist halt das es 200 Tage geht und ich dann merke es kommt nicht alles an. Bei meiner Frau kam aber alles an (z.B. Klingelscreenshot)..so ist erst aufgefallen das es nur bei mir das Problem war. Ich konnte es dann durch mein Menü rekonstruieren wo auch nicht jeder Aufruf klappte. Aktuell klappt alles daher hoffe ich das dies schon alles geholfen hat.

Zitat
Also evtl. mal auf "Freezes" prüfen: FreezeMon
Das sagt mir gar nichts, wo mache ich das?
Zitat
Ist Attribut dnsServer in global gesetzt?

attr global dnsServer 192.168.178.1
ist eingetragen.

Danke erstmal für alles

Andre09

Da ich irgendwie meinen Beitrag nicht editieren kann, was mir noch aufgefallen ist ein Log eintrag den ich nicht zuordnen kann:

2022.04.24 19:07:14.218 1: ERROR evaluating my $EVENT=   $evalSpecials->{'%EVENT'};my $EVTPART0=   $evalSpecials->{'%EVTPART0'};my $EVTPART1=   $evalSpecials->{'%EVTPART1'};my $NAME=   $evalSpecials->{'%NAME'};my $SELF=   $evalSpecials->{'%SELF'};my $TYPE=   $evalSpecials->{'%TYPE'};{ Telegram("teleBot","msgText")}: Undefined subroutine &main::Telegram called at (eval 5354) line 1.

MadMax-FHEM

Zitat von: Andre09 am 24 April 2022, 19:17:14
Da ich irgendwie meinen Beitrag nicht editieren kann, was mir noch aufgefallen ist ein Log eintrag den ich nicht zuordnen kann:

2022.04.24 19:07:14.218 1: ERROR evaluating my $EVENT=   $evalSpecials->{'%EVENT'};my $EVTPART0=   $evalSpecials->{'%EVTPART0'};my $EVTPART1=   $evalSpecials->{'%EVTPART1'};my $NAME=   $evalSpecials->{'%NAME'};my $SELF=   $evalSpecials->{'%SELF'};my $TYPE=   $evalSpecials->{'%TYPE'};{ Telegram("teleBot","msgText")}: Undefined subroutine &main::Telegram called at (eval 5354) line 1.


Dazu kann ich leider nichts sagen :-\

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)

MadMax-FHEM

Zitat
Mal gucken ob die gemachten Änderungen Auswirkungen haben. Komisch ist halt das es 200 Tage geht und ich dann merke es kommt nicht alles an. Bei meiner Frau kam aber alles an (z.B. Klingelscreenshot)..so ist erst aufgefallen das es nur bei mir das Problem war. Ich konnte es dann durch mein Menü rekonstruieren wo auch nicht jeder Aufruf klappte. Aktuell klappt alles daher hoffe ich das dies schon alles geholfen hat.

Naja, wenn es "parallel" bei deiner Frau geht und bei dir nicht, dann kann das schon sein, dass es auf Telegram-Seite liegt.
Evtl. ist dein Account an anderen Servern "unterwegs" als der deiner Frau...
...o.ä.

cmdRestrictedPeer ist doch für fhem-Commands, also mit dem "Schlüsselwort"?

Ich prüfe welcher Peer etwas gesendet hat, bevor es eine Antwort gibt...
...sicher ist sicher.

Also so, wie im Link bzgl. chatbot...

Freezes: mal suchen bzw. Freezemon definieren und schauen, ob der was entdeckt...
https://forum.fhem.de/index.php?topic=83909.0
oder: help freezemon in FhemWeb-cmd ;)

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)