Telegram instant messaging TelegramBot - Empfangen und Senden per FHEM

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

Vorheriges Thema - Nächstes Thema

micomat

Synology DS218+ with fhem+iobroker in docker, 2x RasPi w. ser2net, CUL433+868, IT, EGPM2LAN, THZ/LWZ, FB_Callmonitor, HMS100TF, Homematic, 2x TX3-TH, Pushover, USB-IR-SML-Head, SONOS, GHoma, MBus, KLF200

sinus61

Zitat von: viegener am 24 Januar 2017, 00:06:19
Das sind zwei ganz unterschiedliche Meldungen vielleicht kannst Du etwas mehr Informationen liefern?

Einen Proxy habe ich nicht.
Die Meldungen kommen beide immer wenn ich aus dem Telegram Client einen Befehl absetze. Die Befehle werden dann nicht ausgeführt. Das ist bei allen Befehlen die probiert habe so, Umlaute sind da keien drin. Es passiert  erst seitdem ich parseModeSend auf 1_Markdown gestellt habe, stelle ich das auf 0 oder 2 funktioniert alles.

Meldungen die ich in fhem definiert habe und die automatisch kommen, kommen auch an, das Markdown wird da auch beachtet. Das geht also.

sinus61

Gerade nochmal Zuhause getestet, tatsächlich werden die Befehle ausgeführt, es gibt aber im Telegram Client keine Rückmeldung.


2017.01.24 18:18:12 3: TelegramBot_Callback TeleBot: resulted in :Callback returned error:Bad Request: Can't parse message text: Can't find end of the entity starting at byte offset 37:: from SendIt
2017.01.24 18:18:12 3: TelegramBot_Callback TeleBot: Reached max retries (ret: Callback returned error:Bad Request: Can't parse message text: Can't find end of the entity starting at byte offset 37:) for msg 188133579 : TelegramBot FHEM : \n    Befehl:set au_Carport toggle:\n  Ergebnis:\nOK


Wie gesagt aber nur wenn parseModeSend auf 1 steht.

viegener

Zitat von: sinus61 am 24 Januar 2017, 18:24:36
Gerade nochmal Zuhause getestet, tatsächlich werden die Befehle ausgeführt, es gibt aber im Telegram Client keine Rückmeldung.


2017.01.24 18:18:12 3: TelegramBot_Callback TeleBot: resulted in :Callback returned error:Bad Request: Can't parse message text: Can't find end of the entity starting at byte offset 37:: from SendIt
2017.01.24 18:18:12 3: TelegramBot_Callback TeleBot: Reached max retries (ret: Callback returned error:Bad Request: Can't parse message text: Can't find end of the entity starting at byte offset 37:) for msg 188133579 : TelegramBot FHEM : \n    Befehl:set au_Carport toggle:\n  Ergebnis:\nOK


Wie gesagt aber nur wenn parseModeSend auf 1 steht.


Irgendwie komme ich mit den Informationen nicht klar, denn es sind irgendwie viele Bruchstücke dabei:
- Vielleicht kannst Du mal etwas genauer zusammenfassen was Du machst
- was geht und was nicht,
- ob es vorher alles funktioniert hat und welche Änderungen Du vielleicht seitdem gemacht hast.

Ein list des Devices (bitte authtoken maskieren und in Code-tags) wäre hilfreich und vielleicht ein paar Tests, was wirklich geht.
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

sinus61

Hab jetzt parseModeSend auf 2 gestellt und die Meldung wo ich Markdown genutzt hatte auf HTML umgestellt, dann läuft alles andere auch wieder. Muss mich jetzt nach dem Ftui Update erstmal um meine Tabs kümmern.

viegener

#1205
Zitat von: sinus61 am 24 Januar 2017, 18:24:36
Gerade nochmal Zuhause getestet, tatsächlich werden die Befehle ausgeführt, es gibt aber im Telegram Client keine Rückmeldung.


2017.01.24 18:18:12 3: TelegramBot_Callback TeleBot: resulted in :Callback returned error:Bad Request: Can't parse message text: Can't find end of the entity starting at byte offset 37:: from SendIt
2017.01.24 18:18:12 3: TelegramBot_Callback TeleBot: Reached max retries (ret: Callback returned error:Bad Request: Can't parse message text: Can't find end of the entity starting at byte offset 37:) for msg 188133579 : TelegramBot FHEM : \n    Befehl:set au_Carport toggle:\n  Ergebnis:\nOK


Wie gesagt aber nur wenn parseModeSend auf 1 steht.

Ahh, Oh wunder - ich habe mir die log message nochmal angeschaut. Ja das kann nicht gehen, denn die nachricht die gesendet werden soll enthält einen Unterstrich(übrigens genau wie telegram sagt an Position 37 in "au_Carport") aber nur einen - Dies sorgt bei parseMode 1 dafür dass ein italic-text nicht abgeschlossen ist.

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

Yil

Stichwort: Sonderzeichen:

Zitat von: viegener am 07 Juni 2016, 20:23:09
Bisher gibt es das nicht, ich nehme das mal auf meine Todoliste, ist aber momentan etwas knapp ich versuche immer noch rauszufinden was momentan die Probleme mit Umlauten auslöst.

Gibt es dazu schon ein Update? Ich möchte mir gerne per Telegram die Liste der Befehle anzeigen lassen, schön gegliedert mit einem Aufzählungszeichen á la "•" - zwar zeigt er das sauber an, aber nach dem Semikolon wird die Anzeige beendet.
HM CCU2 mit ca. 35 HM-Komponenten inkl. Bausätzen
fhem auf RPi mit Sonos, EnOcean-CUL, ZWAVE-CUL und Bluetooth
Osram Lightify

viegener

Zitat von: Yil am 30 Januar 2017, 09:06:31
Stichwort: Sonderzeichen:

Gibt es dazu schon ein Update? Ich möchte mir gerne per Telegram die Liste der Befehle anzeigen lassen, schön gegliedert mit einem Aufzählungszeichen á la "•" - zwar zeigt er das sauber an, aber nach dem Semikolon wird die Anzeige beendet.

Umlaute und auch Emoticons funktionieren ohne Probleme
Das Semikolon ist in FHEM ein Befehlstrenner, so dass Du hier ";;" verwenden musst, dann wird der Befehl auch nicht getrennt
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

Yil

HM CCU2 mit ca. 35 HM-Komponenten inkl. Bausätzen
fhem auf RPi mit Sonos, EnOcean-CUL, ZWAVE-CUL und Bluetooth
Osram Lightify

SlrG

Hallo,

ersteinmal vielen Dank für das tolle Modul. Ich benutze es für diverse Zustandsbenachrichtigungen und es funktioniert wunderbar.

Nun wollte ich gern eine Idee vorstellen, bzw. hätte ich einen Feature Request und wollte fragen, ob sich das vielleicht umsetzen lässt.

Ein Beispiel:
Ist die Waschmaschine fertig, schicke ich die Benachrichtigung darüber an eine Gruppe, in der alle Familienmitglieder sind.
Das funktioniert soweit sehr gut, ist aber verbesserungsfähig.

Über die Gruppe bekommen auch alle, die nicht zu Hause sind, eine Nachricht. Das ist aber Quatsch, denn von unterwegs können sie die Maschine nicht leeren.

Ich würde mir deshalb eine Anbindung an das Residents bzw. Roommate Modul wünschen. Ideal wäre, wenn man den Bot dann beauftragen könnte, eine Nachricht an die einzelnen Kontakte der zu Hause befindlichen Familienmitglieder zu schicken, anstatt an die Gruppe.

Für andere Dinge wäre es interessant eine Nachricht nur an die nicht zu Hause befindlichen Bewohner zu schicken.

Was haltet ihr von der Idee?

Michael

MadMax-FHEM

Musst dir mal das "Message-Modul" (msg?) ansehen.
Glaube gelesen zu haben, dass das bereits mit Residents gekoppelt werden kann...

Es ist auch konfigurierbar wann/warum welche Nachricht über welchen Kanal (Mail, Telegram, ...) geschickt wird...

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)

gelbwichtel

Hi,
besteht die Möglichkeit beim Kommandosenden aus telegram auch einen Alias anzusprechen ?
Hab nirgends einen Hinweis darauf gefunden.
Gruß
Bodo
cu
gelbwichtel

viegener

Zitat von: gelbwichtel am 01 Februar 2017, 22:55:52
Hi,
besteht die Möglichkeit beim Kommandosenden aus telegram auch einen Alias anzusprechen ?
Hab nirgends einen Hinweis darauf gefunden.
Gruß
Bodo

Kannst Du erklären, was Du mit "einen Alias anzusprechen" meinst?
Generell kann ein Kommando genau dasselbe enthalten, was im Eingabefenster von FHEM möglich ist.
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

gelbwichtel

Hi,
so hätte ich das auch mal angenommen.

Ich habe hier eine Minikonfig

define Leuchte FS20 2739 81
attr Leuchte IODev CUL2
attr Leuchte alias Leuchter
attr Leuchte genericDeviceType switch
attr Leuchte room FS20


Die telebotConfig sieht so aus:

define telebot TelegramBot 22.......g7J9LACG4
attr telebot cmdKeyword fhem2
attr telebot cmdRestrictedPeer 3....981
attr telebot defaultPeer 3....981
attr telebot pollingTimeout 120
attr telebot room Devices
define nty_Leuchte notify Leuchte set telebot message Leuchte $EVENT
define nty_Leuchter notify Leuchter set telebot message Leuchter $EVENT



Vom Handy aus schaltet ein fhem2 set Leuchte on die Lampe ein.
Quittung kommt mit Leuchte on

Benutze ich allerdings den Alias, so kommt auf ein  fhem2 set Leuchter on als Antwort

TelegramBot FHEM:
Befehl: set Leuchter on:
Ergebnis:
Please define Leuchter first


Schalte ich von der Oberfläche aus den Leuchter, so wird mit set Leuchte on/off quittiert.


Steh ich total auf dem Schlauch, oder geht das wirklich nicht ?
Vorab mal Danke für jegliche Hilfestellung.

cu
gelbwichtel

viegener

Zitat von: gelbwichtel am 02 Februar 2017, 19:08:49
Benutze ich allerdings den Alias, so kommt auf ein  fhem2 set Leuchter on als Antwort

TelegramBot FHEM:
Befehl: set Leuchter on:
Ergebnis:
Please define Leuchter first


Schalte ich von der Oberfläche aus den Leuchter, so wird mit set Leuchte on/off quittiert.


Steh ich total auf dem Schlauch, oder geht das wirklich nicht ?
Vorab mal Danke für jegliche Hilfestellung.

Wie gesagt es geht das, was Du auch im Eingabefenster eingeben kannst.
Wenn Du set Leuchter on in der Kommandoeingabe von fhemweb eingibst kommt dieselbe Fehlermeldung.
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können