前提条件
ステップ1 — Telegramボットの作成
1
@BotFatherを開く
Telegramを開き、@BotFatherとの会話を開始します。
2
新しいボットを作成
コマンド
/newbotを送信し、指示に従います。3
ボットトークンをコピー
BotFatherが成功メッセージを返信します。これにボットトークンが含まれています —
123456789:ABCdefGhIJKlmNoPQRsTUVwxyZのような形式です。コピーして安全に保存してください。ステップ2 — トークンをEKBに追加
- Workflow Builder
- Agent Builder
- ワークフローにTelegramツールキットステップを追加します。
- Select a Connection → Create a Connectionをクリックします。
- Connection Nameを入力し、ボットトークンを貼り付けます。
- Saveをクリックします。
トークンの管理
ボットトークンはボットのマスターキーです。公開リポジトリにコミットしたり、クライアントサイドコードで公開したりせず、共有しないでください。
- @BotFatherにメッセージを送信
/mybotsを送信- ボットを選択
- API Token → Revoke current tokenをタップ
利用可能なツール
トリガー — New Message
誰かがTelegramボットにメッセージを送信するたびに、ワークフローを自動的に開始します。 セットアップ:1
トリガーを追加
New Messageトリガーをワークフローの最初のステップとして追加します。トリガー設定パネルから
/tool-webhook/{workflow-id}URLをコピーします。2
Webhookを登録
Register Webhookステップを使用して、TelegramにそのURLにメッセージを配信するよう指示します。一度実行します — 以下のRegister Webhookを参照してください。
3
テスト
ボットにテストメッセージを送信します。ワークフローが発火し、すべてのメッセージデータが変数として利用可能になります。
メッセージングアクション
Send Text Message
ボットから任意のTelegramチャットにテキストメッセージを送信します。 主要な入力:
後続ステップでの出力参照:
- メッセージID(後でEditやDeleteに必要):
{{ step.output.message_id }} - チャットID:
{{ step.output.chat_id }}
Send Media
Telegramチャットに写真、動画、スタンプ、アニメーションGIFを送信します。 主要な入力:Media URLもMedia IDも提供しない場合、ステップはエラーを返します。URLは公開アクセス可能でなければなりません。ローカルまたはプライベートURLは機能しません。
Edit Message Text
ボットが以前に送信したメッセージのテキストを更新します。 主要な入力:
使用例: まず「リクエストを処理中…」と送信します。ワークフローロジックを実行します。その後、最終結果でそのメッセージを編集します — ユーザーは2つのメッセージではなく1つのメッセージを見ます。
Delete Message
チャットからメッセージを削除します。 主要な入力:ボットはチャットの管理者でない限り、自分のメッセージのみを削除できます。Telegramは時間制限も設けています — 48時間以上経過したメッセージは通常、ボットでは削除できません。
チャットとメンバーのアクション
Get Chat Info
チャットのメタデータを取得します。 主要な入力:
後続ステップでの値参照:
- チャットタイトル:
{{ step.output.title }} - 説明:
{{ step.output.description }} - 招待リンク:
{{ step.output.invite_link }}
Get Chat Member
チャット内の特定のユーザーを参照し、メンバーシップ状態とロールを返します。 主要な入力:
後続ステップでの値参照:
- Status:
{{ step.output.status }} - Username:
{{ step.output.username }}
creator、administrator、member、restricted、left、kicked
使用例: {{ step.output.status }}を確認し、leftまたはkickedの場合、メッセージの送信をスキップしてエラーを処理します。
Create Invite Link
グループまたはチャンネルの新しい招待リンクを生成します。ボットは対象チャットで「ユーザー招待」権限を持つ管理者である必要があります。
後続ステップでのリンク参照:
- 招待URL:
{{ step.output.invite_link }}
出力の
expire_dateはunixタイムスタンプ(整数秒)であり、ISO形式ではありません。creates_join_requestは、チャットが新しいメンバーに管理者の承認を要求する場合にtrueになります。Webhook設定アクション
これらの2つのステップはNew Messageトリガーをボットに接続します。ワークフローごとに一度実行します。Register Webhook
TelegramにボットからのメッセージをワークフローURLに転送するよう指示します。 主要な入力:1
トリガーURLをコピー
New Messageトリガー付きのワークフローを作成します。トリガーパネルから
/tool-webhook/{workflow-id}URLをコピーします。2
Register Webhookを追加
別の1回限りのワークフローまたは手動テスト実行で、Register Webhookステップを追加し、上記の入力を記入します。
3
一度実行
ステップを実行します。次にボットにメッセージを送信します — メインのワークフローが発火するはずです。
Telegramボットは同時に1つのアクティブなWebhookしか持つことができません。新しいURLを登録すると、以前のURLは自動的に置き換えられます。
Deregister Webhook
Webhookを削除し、Telegramがワークフローにメッセージを配信するのを停止します。 主要な入力:ワークフローを退役またはアーカイブする場合はWebhookの登録を解除してください。Webhookを登録したままワークフローを非アクティブにすると、Telegramは応答のないリクエストを送信し続けます。