Telegram
AnyyはボットトークンとBot APIロングポーリングプロファイルでTelegramに接続します。ダイレクトメッセージ、グループ、受信メディア、ペアリング、稼働中のヘルスチェックに対応します。
1. Telegramボットを作成する
Telegramで公式のBotFatherアカウントを開きます。
/newbotを送ります。- ボットの表示名とユーザー名を選びます。
- ボットトークンを一度コピーします。
- グループにボットを追加する予定なら、BotFatherのプライバシー/グループ設定を確認します。
トークンはパスワードと同様に扱ってください。持っている人は誰でもボットとして操作できます。
2. Anyyにアカウントを追加する
Dashboard → Channel → Add → Telegramを開きます。Bot APIロングポーリングの項目にアカウントIDとボットトークンを入力します。ポリシー設定には下記のCLIウィザードを使います。Dashboardの認証情報フォームには含まれません。
CLIでも設定できます。
anyy setup channel
ウィザードでTelegramを選びます。設定処理はトークンをProfileのシークレット参照として保存し、アダプターが正常になる前にTelegramのgetMeでリモートの識別情報を検証します。
3. アクセスポリシーを選ぶ
既定のポリシーは次のとおりです。
| 会話 | 既定値 |
|---|---|
| ダイレクトメッセージ | pairing |
| グループ | mention |
ダイレクトメッセージポリシーはopen、allowlist、pairing、disabledにできます。現在の設定カタログではグループポリシーにmention、allowlist、open、disabledを選べます。既存の許可リストにはTelegramの数値のユーザー/チャット識別情報を使います。現在のTelegram設定にはリスト項目の編集機能はありません。共通の設定上の制限を参照してください。
公開されたボットは、想定外の送信者によってプロバイダーの利用枠を消費されたり、ツールを使われたりする可能性があります。アクセスを広げる前に送信者のアクセスポリシーと有効なツールを確認してください。
4. 起動して検証する
anyy channel reload
anyy channel doctor telegram
次にボットにダイレクトメッセージを送ります。既定のペアリングポリシーでは、CLIで保留中の送信者を一覧表示して承認します。
anyy channel pairing list --channel telegram
anyy channel pairing approve --request REQUEST_ID
送信者のペアリング要求を承認したら、もう一度メッセージを送り、Anyyが同じTelegramの会話に返信することを確認します。
グループとメンション
グループにボットを追加し、@usernameを既定のmentionポリシーで使います。Telegramのプライバシー設定によって対象のグループメッセージを受信できない場合は、BotFatherで設定を調整し、Telegramの要件に応じてボットを再追加/再読み込みします。
現在のアダプターはTelegramスレッドへの対応を表明していません。トピック別のルーティングを前提にしないでください。
メディアと長い返信
Anyyは対応するTelegram受信メディアをセッション用に配置できます。長い送信テキストはアダプターのテキスト上限に合わせて分割されます。メディアのダウンロードとメッセージサイズには、アダプターおよびTelegramの制限が引き続き適用されます。
トラブルシューティング
| 症状 | 確認する項目 |
|---|---|
| トークンが拒否される | BotFatherトークンを再生成/コピーし、保存済み認証情報を置換 |
| ボットがバックオフ状態のまま | anyy channel doctor telegramを実行し、getMeとBot APIへのネットワーク接続を確認 |
| DMにペアリング通知だけが届き回答がない | 保留中の要求を承認してから、新しいメッセージを送信 |
| グループメッセージが無視される | ボットをメンションし、グループポリシー/許可リストとBotFatherのプライバシーモードを確認 |
| 重複/古いメッセージが表示される | ロングポーリングの健全性を確認して再読み込み。AnyyはTelegram更新オフセットを永続化する |
共通のチャンネル操作は、メッセージングプラットフォームを参照してください。