FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: stewen am 18 August 2017, 16:00:22

Titel: TelegramBot und Rückmeldungen
Beitrag von: stewen am 18 August 2017, 16:00:22
Servus,
ich bräuchte bitte für folgendes Szenario eure Hilfe:
Ich schicke per TelegramBot an eine Reihe von Empfängern eine Nachricht. Darin enthalten sind vier mögliche Antworten per Schaltfläche.
Wie kann ich die jeweiligen Antworten der User so einsammeln, dass ich a) mir eine Übersicht über die Antworten per Telegram-Befehl zuschicken lassen kann und b) die Antworten dauerhaft archivieren kann, um eine Nachbearbeitung zu ermöglichen.

Mein Befehl lautet etwa:
set TelegramBot msg @12345 @12346 @12347 (ja|nein|vielleicht|k.A.) Kommst du heute?

Ich würde jetzt gerne für jeden Empfänger die jeweilige Antwort abspeichern.
Zudem würde ich gerne per Telegram-Befehl (z.B. /status) eine Übersicht über die bereits eingegangenen Antworten gesendet bekommen.
Wie würdet ihr vorgehen?

Danke für eure Hilfe!
Stephan
Titel: Antw:TelegramBot und Rückmeldungen
Beitrag von: igami am 18 August 2017, 16:50:23
Dafür gibt es den pollbot.
Titel: Antw:TelegramBot und Rückmeldungen
Beitrag von: stewen am 20 August 2017, 19:16:12
Ich hab den Pollbot angeschaut und (erstmal?) nicht kapiert, wie er mir helfen kann.
Gibt es keine Möglichkeit, per notify z.B. den Text und den Absender jeder eingehender Nachricht in ein Reading oder eine Textdatei zu schreiben?
Titel: Antw:TelegramBot und Rückmeldungen
Beitrag von: amenomade am 20 August 2017, 20:30:47
ZitatGibt es keine Möglichkeit, per notify z.B. den Text und den Absender jeder eingehender Nachricht in ein Reading oder eine Textdatei zu schreiben?

define ntbot notify <BotName>:msgText.* setreading <device> text [<BotName>:msgText];; setreading <device> sender [<BotName>:msgPeer]
Titel: Antw:TelegramBot und Rückmeldungen
Beitrag von: igami am 20 August 2017, 20:39:38
Zitat von: stewen am 20 August 2017, 19:16:12
Ich hab den Pollbot angeschaut und (erstmal?) nicht kapiert, wie er mir helfen kann.
Gibt es keine Möglichkeit, per notify z.B. den Text und den Absender jeder eingehender Nachricht in ein Reading oder eine Textdatei zu schreiben?
Für FHEM bringt der gar nichts, aber für normale Umfragen
Titel: Antw:TelegramBot und Rückmeldungen
Beitrag von: viegener am 20 August 2017, 21:42:41
Wenn Du es innerhalb von FHEM machen willst, könnt readingsHistory vielleicht helfen die Nachrichten zu sammeln?

Den Statusbefehl musst Du dann vermutlich selber zusammenbauen

Titel: Antw:TelegramBot und Rückmeldungen
Beitrag von: stewen am 21 August 2017, 12:27:02
Danke für eure Hilfe. Ich werde die Tage nochmal ein wenig rumspielen und dann wieder berichten! Danke :)
Titel: Antw:TelegramBot und Rückmeldungen
Beitrag von: stewen am 26 August 2017, 12:37:10
Kommts mir nur so vor, oder lösen eingehende Nachrichten keine Aktion aus?
Ein Notify "notify <BotName>:msgText.*" wird jedenfalls nie ausgelöst, "notify <BotName>:.*" nur beim Senden durch den Bot.
Soll das so sein oder is das nur bei mir so? Hilfe!!

Grüße
Stephan
Titel: Antw:TelegramBot und Rückmeldungen
Beitrag von: amenomade am 26 August 2017, 14:33:13
Schau mal einfach die Events im Eventmonitor, die generiert werden, und bau dann dein Notify (Zeile markieren, und "create device" Knopf)
Titel: Antw:TelegramBot und Rückmeldungen
Beitrag von: stewen am 26 August 2017, 15:37:34
Hab ich gemacht. Komischerweise erzeugt eine eingehende Nachricht bei mir (trotz Verbose Level 5) keinerlei Eintrag in den Eventmonitor. Nur im Logfile wird was geplottet, aber keinerlei Events. Beim Ausgang einer Nachricht schreibt er sauber in den Monitor. Was kann da los sein?
Titel: Antw:TelegramBot und Rückmeldungen
Beitrag von: amenomade am 26 August 2017, 20:13:06
Verbose 5 hat nichts mit Events zu tun. Kannst Du ein "list TelegramBot" bitte liefern? Nur die Attributes interessieren mich in erster Linie. Die Kontakten und peerIds kannst mit xxxx ausblenden.
Titel: Antw:TelegramBot und Rückmeldungen
Beitrag von: viegener am 27 August 2017, 00:07:31
Eine eingehende Nachricht sollte üblicherweise so etwa folgende Events auslösen:

2017-08-27 00:03:55 TelegramBot einbot msgId: 10318
2017-08-27 00:03:55 TelegramBot einbot msgPeer: Dein_Name
2017-08-27 00:03:55 TelegramBot einbot msgPeerId: 123456789
2017-08-27 00:03:55 TelegramBot einbot msgChat: Dein_Name
2017-08-27 00:03:55 TelegramBot einbot msgChatId: 99234876
2017-08-27 00:03:55 TelegramBot einbot msgText: test
2017-08-27 00:03:55 TelegramBot einbot msgReplyMsgId:
2017-08-27 00:03:55 TelegramBot einbot msgFileId:


Wenn nicht hast Du vermutilich kein Polling am Laufen, oder die Events auf andere Weise unterdrückt
Titel: Antw:TelegramBot und Rückmeldungen
Beitrag von: stewen am 27 August 2017, 11:27:54
Oh je, mein Fehler! Ich hatte tatsächlich noch eine "event-on-change-reading"-Beschränkung drin, die nur beim Senden ausgelöst wird. Hab mich selber ausgetrickst! Sorry  ::)