Zum Hauptinhalt springen

Telegram-Trigger

Durch den Trigger können Sie neue Befehle dem Plug-in hinzufügen. Mit dem Telegram-Trigger ist es zudem möglich, durch einen Befehl, Nachrichten auf dem Endgerät zu empfangen, unten im Beispiel. Weiterhin kann der Trigger eine geschriebene Nachricht ausgeben.

Telegram-Trigger

Stellen Sie nach Doppelklick auf den Trigger folgende Eigenschaften ein:

EigenschaftBeschreibung
AnbindungWählen Sie eine Anbindung aus dem Drop-down-Menü aus.
BefehlGeben Sie einen Befehl ein /<Befehl>
Hilfetext

Geben Sie hier einen Hilfetext ein, welcher dann zusammen mit dem Befehl angezeigt wird.

Hinweis: Der Hilfetext ist erforderlich, da sonst die Commands nicht an den Bot übergeben werden können.

NachrichtentypWählen Sie einen Nachrichtentypen aus dem Drop-down-Menü aus z. B. Textnachricht, Sprachnachricht usw. Beim Nachrichtentyp „Jede Datei“ können alle Dateiformen gesendet werden (Texte, Bilder, Videos usw.)
Authentifizierung benötigtAktivieren Sie die Checkbox, wenn Sie nur zugelassenen Benutzern erlauben wollen, die Nachrichten zu erhalten.
Zugelassene BenutzerWählen Sie zugelassene Benutzer aus dem Drop-down-Menü aus.
BenutzerfilterHier haben Sie noch die Möglichkeit einen Filter einzugeben, um gezielt zugelassene Benutzer auszuwählen.

Sie können mit dem Telegram-Trigger jede Form einer Datei empfangen. Um vom OPC Router eine Datei an Telegram zu senden, benötigen Sie dagegen das Telegram-Transferobjekt. Um dem OPC Router eine Datei zu senden, z.B. ein Bild, müssen Sie als Beschreibung den Trigger-Befehl angeben. Der Dateiname des Bildes wird dabei jedoch nicht mitgeschickt und Sie müssen der Datei anschließend einen neuen Namen vergeben, wenn Sie die Datei abspeichern möchten.

Um auf das Drücken einer Keyboard-Schaltfläche zu reagieren, verwenden Sie den Telegram-Callback-Trigger.

Beispiel Telegram-Anbindung

In unserem kleinen Beispiel wird die Kesseltemperatur abgefragt. Die Daten werden vom OPC Router erfasst und können über Telegram abgefragt werden.

Telegram Beispiel

Um sich auf einem entfernten webfähigen Gerät die Kesseltemperatur anzeigen zu lassen gehen Sie wie folgt vor:

  1. Gehen Sie in den Link Ihres Bots, den Sie zusammen mit dem AccessToken vom BotFather erhalten haben.
  2. Geben Sie das Kommando /start ein.
  3. Wenn Sie auf /help klicken, gibt Ihnen der BotFather alle möglichen Kommandos vor.
  4. Wählen Sie das Kommando /Kesseltemperatur aus.
  5. Es wird Ihnen dann die Kesseltemperatur und der Hilfetext auf Ihrem Gerät angezeigt.

Zusammenspiel mit Telegram

Wie diese Darstellung zu lesen ist, erklärt der Abschnitt Sequenzdiagramme.

Der Telegram-Trigger holt eingehende Nachrichten laufend vom Telegram-Server ab; der OPC Router meldet dafür keinen Webhook an. Passt eine Nachricht zum konfigurierten Befehl und ist der Benutzer zugelassen, startet der Trigger einen Transfer und wartet auf dessen Ende. Dieses Warten ist fest eingebaut und lässt sich nicht abschalten; das Zeitbudget ist das Timeout der Anbindung. Beachten Sie dabei, dass in denselben Chat drei verschiedene Stellen antworten können: die fachliche Antwort kommt aus dem Flow, eine Fehlermeldung kommt vom Trigger nach dem Transfer, und Standardbefehle wie /start und /help beantwortet die Telegram-Anbindung ganz ohne Transfer.

Telegram-Trigger: Auslöseverhalten und Antwortwege

Das Diagramm trennt die drei Stellen, die in denselben Chat schreiben: das Telegram-Transferobjekt im Flow (fachliche Antwort, noch während der Transfer läuft), der Trigger nach dem Transfer (nur bei Fehler) und die Telegram-Anbindung selbst (Standardbefehle, ohne Transfer). Es zeigt außerdem, dass der Trigger den Transfer immer abwartet und die Bearbeitung der nächsten Nachricht so lange steht. Neue Nachrichten holt der Router dabei laufend selbst vom Telegram-Server ab, einen Webhook meldet er nicht an, was das Verhalten der Telegram-Bibliothek ist. Erst nach dem Transferende nimmt die Anbindung die nächste Nachricht an, während Tastendrücke auf Inline-Tasten davon unabhängig weiterlaufen.

Ablauf eines Telegram-Triggers: fachliche Antwort aus dem Flow, Fehlermeldung vom Trigger, Standardbefehle von der Anbindung.