ich habe mir vor 2 Tagen einen Telegram-Bot erstellt, und bisher läuft alles ganz gut. Ich wollte dann Buttons hinzufügen, um ein Command zu senden, z. B. /start.
Problem:
Der Button wird mir zwar angezeigt, aber sobald ich darauf klicke, lädt es und lädt es, doch es passiert nichts. Nach einer Weile bricht der Vorgang dann ab. Ich habe bereits viele Foren durchstöbert und verschiedene Dinge ausprobiert, aber bisher keine Lösung gefunden.
Kennt ihr eine?
Habe ich vielleicht etwas übersehen?
Mach ich was falsch?
sieht das bei dir ganz anders aus als in der Doku:
...
actions:
- action: notify.NOTIFIER_NAME
data:
title: "*Send a message*"
message: "That's an example that _sends_ a *formatted* message with a custom inline keyboard."
data:
inline_keyboard:
- 'Task 1:/command1, Task 2:/command2'
- 'Task 3:/command3, Task 4:/command4'
müssen ja auch Aktionen den Tasten zugeordnet werden.
Woher soll denn HA wissen, was passieren soll?
Wie man das macht, frage ich mich auch gerade und wäre sehr dankbar, wenn es jemand erklären könnte.
Bei mir sieht es aktuell so aus:
action: notify.home
data:
title: "*Aquarium*"
message: Der Filter ist seit 30 min aus.
data:
inline_keyboard:
- Anschalten:/command1, Ignorieren:/command2
Aber wie kann ich nun die CallBacks auswerten?
Ich habe jetzt schon ne Stunde bei Onkel Google verbracht, aber nirgends gibt es eine schöne Beschreibung, wie das geht…
Edit:
Ein Stück bin ich schon weitergekommen.
Mit der folgenden Automation kann ich zu mindest die im Chat eingegebenen Befehle abfragen und verarbeiten:
ich habe es jetzt mit 2 Automationen geschafft.
Diese kann man natürlich noch richtig schick machen.
Es handelt sich hierbei noch um die Testautomationen.
Nachricht an Telegram mit Inline Keyboard senden:
Gebe ich in telegram /test ein, wird die Nachricht geschickt.
Den Auslöser kann man dann natürlich an jeden Sensor, etc. koppeln.
alias: Sende Nachricht an Telegram
description: ""
triggers:
- event_type: telegram_command
event_data:
command: /test
trigger: event
conditions: []
actions:
- action: notify.home
data:
title: "*Aquarium*"
message: Der Filter ist seit 30 min aus.
data:
inline_keyboard:
- Anschalten:/command1, Ignorieren:/command2
- In 5min erinnern:/command3
initial_state: "on"
mode: single
CallBack auswerten und Tasten weitergeben:
Zum Test lasse ich mir hier Bestätigungen an Telegram schicken.
Das kann man aber gegen jede x beliebige Aktion ersetzen