Telegram instant messaging TelegramBot - Empfangen und Senden per FHEM

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

Vorheriges Thema - Nächstes Thema

PeterS

Hallo Gerd

Danke für die Info :-)

Mein Test hat nun funktioniert. Einfach nur das Icon direkt in die Message reinkopieren (kein UTF-8 oder unicode) und sie wird korrekt verschickt

Gruss Peter

viegener

Zitat von: Maista am 19 Dezember 2015, 14:32:38
Wie man sieht kann man das Emoji auch hier einfügen!?

Gruss Gerd

PS: Johannes, schreib doch die URL zu den Emojis mit in die Hilfe :=)

Danke fürs Ausprobieren und gute Idee, ich habe den URL ins fhemwiki eingefügt.

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

viegener

Zitat von: ulli am 09 Dezember 2015, 18:13:46
Kann man irgendwie blockieren das neue Benutzer hinzugefügt und davon Nachrichten akzeptiert werden?
Ich bekomme manchmal Nachrichten von mysteriösen Kontakten und habe Angst das diese Kommandos ausführen  können. ..

@ulli: Ich habe eine neue Version (bisher nur in github) eingestellt, die das hinzufügen neuer Kontakte (und das Empfangen von Nachrichten unbekannter Kontakte) unterbindet. Dafür gibt es ein neues Attribut: allowUnknownContacts
Vielleicht hilft das in Deinem Fall?

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

PeterS

Hallo

Wie kann die Message Routine in Perl genutzt werden ?
Bei Verwndung in Perl wird der Empfänger @Tester nicht gefunden ?

define Notify_TestSchalter_On notify TestSchalter:on {fhem("set teleBot message @Tester Perl-Test-String")}

Gruss Peter

viegener

Zitat von: PeterS am 19 Dezember 2015, 20:00:51
Hallo

Wie kann die Message Routine in Perl genutzt werden ?
Bei Verwndung in Perl wird der Empfänger @Tester nicht gefunden ?

define Notify_TestSchalter_On notify TestSchalter:on {fhem("set teleBot message @Tester Perl-Test-String")}

Gruss Peter

Das @ hat in perl auch innerhalb von Strings eine Bedeutung (Arrayvariablen). Also muss es am besten in einfach Anführungszeichen gesetzt werden. Das sollte funktionieren:

define Notify_TestSchalter_On notify TestSchalter:on {fhem('set teleBot message @Tester Perl-Test-String')}
oder
define Notify_TestSchalter_On notify TestSchalter:on {fhem("set teleBot message ".'@Tester'."Perl-Test-String")}

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

e3xtreme

Ich würde gerne mit dem Drücken meiner Klingel ein Bild von meiner IPCAM direkt per TelegramBot verschicken, muss ich da extra mit der get image routine vom IPCAM modul arbeiten oder gibt es da eine on-the-fly Möglichkeit?


viegener

Zitat von: e3xtreme am 20 Dezember 2015, 00:01:35
Ich würde gerne mit dem Drücken meiner Klingel ein Bild von meiner IPCAM direkt per TelegramBot verschicken, muss ich da extra mit der get image routine vom IPCAM modul arbeiten oder gibt es da eine on-the-fly Möglichkeit?

Das Bild muss als lokale Datei vorliegen, insofern benötigst Du wohl die image routine.
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

e3xtreme

Also in der Richtung

set mein_TelegramBot sendimage {"get Ipcam Image 1 10"}

wird keinesfalls klappen?
Schaff es nicht das Bild abzuspeichern und dann gleich abzurufen, das ist ihm so schnell hintereinander scheinbar zu viel...

???

det.

Ich hatte das Anfangs in einem gemeinsamen notify mit dem Ergebnis, das Bild vom vorherigen Klingeln gesendet zu bekommen. Erzeuge jetzt als Antwort auf die Klingelsignalerkennung das Bild und ein zweites notify auf das Speichern der CAM sendet dann das aktuelle Bild.
LG
det.

viegener

Zitat von: e3xtreme am 20 Dezember 2015, 02:15:59
Also in der Richtung

set mein_TelegramBot sendimage {"get Ipcam Image 1 10"}

wird keinesfalls klappen?
Schaff es nicht das Bild abzuspeichern und dann gleich abzurufen, das ist ihm so schnell hintereinander scheinbar zu viel...

???

Im Prinzip kann es als eine Befehlsfolge funktionieren, wenn die Zeit zu, abspeichern des bildes konstant ist.

Also folgende schritte
- abholen des bildes und speichern des dateinamens
- entweder feste wartezeit oder schleife bis datei existiert und dann kurz warten
- set bot sendImage <dateiname>

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

PeterS

Hallo

Das Modul logt nur Fehlermeldung, richtig ?
Ein Sende-Eintrag in log muss manuell via {Log 3, "teleBot message ..."} erzeugt werden, oder gibt es ein Attribut ?

Gruss Peter

viegener

Ja und ich habe die Infos zu gesendeten Messages als Internals abgelegt, damit kann man da leider auch kein notify dranhängen.
Wenn das anderen auch relevant erscheint, könnte man daraus Readings machen oder ein zusätzliches Reading bei gesendeten Nachrichten einführen?

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

PeterS

Hallo

Internals kann mW. leider nicht direkt auslesen. Als readings könnte man es direkt mit {Log 3,ReadingsVal("teleBot","sentMsgText",0)} im Log posten.
Cool wäre auch ein optinales Attribut, welches, wenn gesetzt, direkt die messages im Log einträgt.

Eine Nachricht an mehrere Empfänger zu senden funktioniert bei mir noch nicht ?
Ich habe die Empfänger durch Space getrennt (set teleBot message @Tester1 @Tester2 Multi-Test).

Gibt es dabei noch was zu beachten ?

Gruss Peter

viegener

Zitat von: PeterS am 20 Dezember 2015, 15:20:19
Hallo

Internals kann mW. leider nicht direkt auslesen. Als readings könnte man es direkt mit {Log 3,ReadingsVal("teleBot","sentMsgText",0)} im Log posten.
Cool wäre auch ein optinales Attribut, welches, wenn gesetzt, direkt die messages im Log einträgt.

Eine Nachricht an mehrere Empfänger zu senden funktioniert bei mir noch nicht ?
Ich habe die Empfänger durch Space getrennt (set teleBot message @Tester1 @Tester2 Multi-Test).

Gibt es dabei noch was zu beachten ?

Gruss Peter

Doch internals kann man mit InternalVal auslesen, aber man kann nicht auf eine veränderung reagieren.

Eigentlich sollte der versand an mehrere empfänger so gehen, was ist das ergbnis und was sagt das log?
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

PeterS

Hallo

Das log sagt hier standardmässig nichts.
Der  2. Empfänger wird als Text erkannt:
sentMsgText: @Tester2 Multi-Test

Bei deinem Beispiel nutzt du 2@ ?!
set aTelegramBotDevice message @@someusername @1234567 a message to be sent to multiple receipients
   
Gruss Peter