[Modul] TelegramBot

Es scheint an dieser Erweiterung von @Attain zu liegen: allow sending of html or markdown formatted messages (#2) · symcon/TelegramBot@3c6fd15 · GitHub

@Attain: Hast du eine Idee, wie wir das Problem ggf. gelöst bekommen?

paresy

Ich schau es mir mal an.

Funktioniert, Danke!

TB_SendMessageEx($ID_Telegram_Bot, addcslashes($Text_Telegram, '‚!:.#-()[]{}<>'), 'Simon');

Und wenn es sich das Modul in Zukunft darum kümmert noch besser :slight_smile:

Ja, es hat mit der Änderung zu tun. Damit war der Standard Parse Mode „Markdown“.
Hier werden die Sonderzeichen zum formatieren des Textes benutzt.

grafik

Ich habe einen PR gestellt, damit der Standard Mode reiner Text ist und keine Sonderzeichen maskiert werden müssen.

Um Texte zu formatieren, können weiterhin HTML Tags genutzt werden.
Beispiel:

$Message = "Normaler Text <b>Fetter Text</b>";
TB_SendMessageEx(12345,$Message,'Ich');

Moin!

Erstens eine Bitte: den PullRequest von Attain bitte dringend mergen! Das nervt hier grad mit dem ParseMode :wink:

Zweitens eine Frage: ich würde in einer Action gerne nur dem Telegram-Recipient antworten, der die Action mit einem Befehl getriggert hat. Gibt es eine Variable, die ich für TB_SendMessageEx nutzen kann? Also sowas wie „[TB_Sender“]" ?

Hallo zusammen,

ich beabsichtige mir eine Nachricht (einen Snapshot der Überwachungskamera) via Telegram senden zu lassen, sobald die Türklingel aktiviert wird.

Den Bot habe ich gem. Anleitung (TelegramBot/TelegramBot at master · symcon/TelegramBot · GitHub) eingerichtet.
Ich trage die Bot API ein, den dazugehörigen Bot Benutzernahmen, trage dann in der Benutzerzeile Benutzer und ID ein, die eine Nachricht erhalten sollen.
Es wird mir angezeigt, dass die Web-Hook Registrierung erfolgreich war.
Dann teste ich, indem ich ganz unten eine Testnachricht erstelle und auf „senden“ drücke.

Fehlermeldung… „Senden der Nachricht fehlgeschlagen“.
Mehr leider nicht…

Was könnte da schiefgegangen sein?
Beste Grüße
Sebastian

Die Web-Hook Registrierung ist fürs Senden nicht wichtig - daran kann es nicht liegen. Da es nicht viele Parameter zum Einstellen gibt, vermute ich, dass bei der BotID oder bei der BenutzerID nur etwas falsch sein kann. Ist dort evtl. ein Leerzeichen beim Eintippen reingerutscht? Oder ein Zahlendreher drin?

paresy

Ist endlich gemerged und im Beta-Kanal verfügbar.

Aktuell nein. Du müsstest eine neue Aktion erstellen und diese aus der module.php sauber mit genau diesen Informationen befüllen. Stell uns dazu auch gerne einen PR :slight_smile:

paresy

ich komme mit TB_SendImageEx nicht klar… Muss es tatsächlich eine Mediendatei sein welche zuvor im Medienpool angelegt wird? Sprich von einer Webcam ein Bild welches ich via „http://IP/snapshot.jpg“ aufrufen kann muss ich erst downloaden, verbinden usw?

Danke Gruss Marco

Korrekt. Das kannst du aber sehr effizient über den Image Grabber (eine Instanz) erledigen. Diese hält das Bild auch nur im RAM, sodass es nicht auf die Platte muss.

paresy

1 „Gefällt mir“

Danke @paresy Image Grabber kannte ich gar nicht, muss ich mir mal ansehen…

entschuldige @paresy jetzt muss ich doch nochmal nachfragen… Image Grabber funktioniert soweit, gibt es aber die Möglichkeit diesen manual einmalig zu triggern, wenn ich ein Bild zu einem bestimmten Ereignis benötige? Oder wäre der Ansatz Image Grabber im Sekunden Intervall laufen zu lassen und dann bei Ereignis auf das aktuelle (Sekunden) Bild zu verweisen?

Danke Gruss Marco

Klar. Schau mal hier: IG_UpdateImage — IP-Symcon :: Automatisierungssoftware

paresy

1 „Gefällt mir“

perfekt! Danke @paresy

Guten Morgen,

kann ich auch Nachrichten aus einem Chat mit dem Modul empfangen, um Infos aus der Nachricht weiterzuverarbeiten (so wie mit dem TelegramMessenger Modul)?

Viele Grüße!

Das müsste doch bereits gehen:

Empfangen geht ja per getUpdates (so macht es offenbar das Telegram Messenger Modul) oder per Webhook, wobei per Webhook wie push zu funktionieren scheint, während getUpdates immer wieder aktiv abzurufen wäre. Im TelegramBot Modul scheint die Webhook-Variante zur Anwendung zu kommen:

Wenn mein Verständnis richtig ist, würde ich lieber dieses Modul als das das Telegram Messenger Modul verwenden. Allerdings kann ich aus der Dokumentation nicht erkennen, wie ich die Bot-Nachrichten in IPS (wohl als Array) empfangen kann, um Infos aus dem Array weiterzuverarbeiten. Hintergrund ist, dass ich den Bot verwende, um mir Infos per Nachricht aus anderen Anwendungen zu schicken.

Kann hier keiner helfen?

Viele Grüße…

Hallo Paresy,
gratulation und Danke für das tolle Telegram-Modul :smiley:
Frage: Denkst du, du könntest noch ergänzen, dass man Audiofiles (Sprachchats, .ogg Dateien) auch mit deinem Modul EMPFANGEN kann? Ich würde gerne Sprachnachrichten aus dem Telegram Bot Kanal mit IPS runterladen und IPS sozusagen als „Gateway“ für andere Audioanwendungen (z.B. Telefon) verwenden, z.B. per VOIP eine Durchsage an ein Telefon machen mit einer Sprachnachricht, die man zuvor per Telegram gesendet hat. Oder per Mail weiterleiten. Könntest du das machen? Das wäre suuuper!! :smiley:
Gruß Fritz

Ich befürchte, dass ich da keine Zeit für habe (und dies eher aufwendig ist).

paresy

Moin paresy,

ist es möglich den Bot mit „SendVideo“ zu erweitern ? Wäre ne coole Sache

Grüße Christian

1 „Gefällt mir“

Servus @paresy kann die Instanz TelegramBot bedenkenlos mehrfach angelegt werden um unterschiedliche Bots zu nutzen? Ich finde das Modul einfach nur cool, müsste aber bzgl. Alarmierung unterschiedliche Bots verwenden… Danke Gruss Marco