第23回: Telegram連携セットアップ — 秘書とチャットする
この回で学ぶこと
OpenClawとTelegram Botの接続設定
ペアリング(利用者の承認)の仕組み
スマホから秘書と会話する体験
接続トラブルの対処法
前回のおさらい
前回、BotFatherでTelegram Botを作成し、トークンを取得した。Botの箱はできたが、まだ中身(OpenClaw)と繋がっていない。今回その接続を行う。
OpenClawにTelegramトークンを設定する
OpenClawとTelegram Botを接続するには、前回取得したトークンをOpenClawの設定ファイルに書き込む。
手順:
OpenClawの設定ファイル
openclaw.jsonを開く
~/.openclaw/openclaw.json
channelsセクションにTelegramの設定を追加する
{
"channels": {
"telegram": {
"enabled": true,
"botToken": "ここにBotFatherから取得したトークンを貼り付ける",
"dmPolicy": "pairing"
}
}
}
3つの設定項目の意味:
enabled: true— Telegramチャネルを有効にするbotToken— 前回BotFatherから取得したトークン(秘書の部屋の鍵)dmPolicy: "pairing"— 誰がBotに話しかけられるかのセキュリティ設定(後述)
ファイルを保存する
注意: トークンの前後に余分なスペースを入れないこと。1文字でも違うと接続できない。BotFatherのチャット履歴からトークンをコピーし直すのが確実。
ゲートウェイを起動する
設定ファイルを保存したら、ゲートウェイを起動する。ゲートウェイとは、OpenClawとTelegramの間を橋渡しする仕組みのこと。
Dockerの場合
cd 自分のプロジェクトフォルダ && docker compose up -d openclaw-gateway
※claude codeに貼り付けて正しいコマンドを出力してもらってください
自分のPCに直接インストールしている場合
openclaw gateway
ログに以下のようなメッセージが表示されれば接続成功:
Telegram channel started Connected as @あなたのBot名
ログの確認コマンド
docker compose logs -f openclaw-gateway
もしエラーが出た場合は、トークンの入力ミスが最も多い原因。openclaw.json を開いてトークンを再確認する。
ペアリング — 「この人は話しかけていい人です」と承認する
ここが重要なポイント。Botを作って接続しただけでは、まだ誰もBotと会話できない。
先ほどの設定で dmPolicy: "pairing" と書いた。これは「事前に承認した人だけがBotと会話できる」というセキュリティ設定。玄関にオートロックがかかっている状態だと思えばいい。
承認の手順:
スマホのTelegramで自分のBotを検索し、「Start」をタップしてメッセージを送る
Botからペアリングコード(6桁の数字など)が返ってくる
PCのターミナルで以下のコマンドを実行して、承認待ちのコードを確認する
Dockerバージョン
docker compose exec openclaw-gateway node dist/index.js pairing list telegram
npmバージョン
openclaw pairing list telegram
表示されたコードを承認する
Dockerバージョン
docker compose exec openclaw-gateway node dist/index.js pairing approve telegram <コード>
npmバージョン
openclaw pairing approve telegram コード
これで「この人は話しかけていい人」として登録される。一度承認すれば、以降はコードなしで会話できる。
ペアリングコードの有効期限は1時間。期限切れになったら、もう一度Botにメッセージを送れば新しいコードが届く。
なぜこの仕組みがあるのか? — Botのユーザー名は公開されているので、知らない人が勝手に話しかけてくる可能性がある。ペアリングは「自分だけが使える秘書」を実現するための安全装置。
スマホから秘書に話しかける
ペアリングが完了したら、いよいよスマホから秘書と会話してみる。
Telegramで自分のBotのチャット画面を開く
テキストを送信する(例:「こんにちは」)
秘書が返事を返してくる
この時点で、データはこういう流れで動いている:
スマホ(Telegram)→ Telegramサーバー → あなたのPC(OpenClaw) → AIモデル → PC → Telegramサーバー → スマホ
つまり、外出先からでもスマホさえあれば、自宅のPCで動いている秘書に指示を出せる。
試しにいくつかのメッセージを送ってみるといい:
「今日のニュースを教えて」→ 秘書がウェブ検索して結果を返す
「明日の予定は?」→ MEMORY.mdに予定があれば参照して答える
「この前話した○○の件、どうなった?」→ メモリから過去の会話を検索して答える
大事な注意点:PCの電源が必要
Telegramで秘書と話すには、自宅のPCが起動していて、ゲートウェイが動いている必要がある。 PCの電源を切ったりスリープ状態にすると、Botに話しかけても返事が返ってこない。
「じゃあ外出中はPCつけっぱなしにするの?」と思うかもしれない。その通り。24時間秘書を使いたい場合は、常時稼働の仕組みが必要になる(Mac miniを使う方法などは、後のPart 7で扱う)。
今の段階では「PCが動いている間はスマホから秘書に話しかけられる」と理解しておけばOK。
うまくいかないときの対処法
接続がうまくいかない場合、ログを確認するのが最優先:
openclaw logs --follow
よくあるトラブルと対処法:
Botにメッセージを送っても何も返ってこない
最も多い原因:ペアリングの承認をしていない。
openclaw pairing list telegramで承認待ちがないか確認する次に多い原因:トークンのコピーミス。
openclaw.jsonのトークンをBotFatherで再確認するゲートウェイが起動していない。
openclaw gatewayを実行する
「401 Unauthorized」エラーが出る
トークンが間違っているか、無効になっている。BotFatherで
/revokeして新しいトークンを取得し、openclaw.jsonを更新してopenclaw gateway restartで再起動する
返事が遅い
AIモデルのレスポンス時間が原因。軽量モデル(Haiku)に変更すると速くなる
インターネット回線が遅い場合もある
外出先から返事が来ない
自宅のPCがスリープしていないか確認する。スリープ設定を「しない」に変更するか、外出前にゲートウェイの稼働を確認する
まとめ
openclaw.jsonにトークンを設定し、openclaw gatewayで接続を開始したペアリングで「自分だけが使えるBot」として承認した
スマホのTelegramから秘書と会話できるようになった
PCが起動している間は、外出先からでも秘書に指示を出せる
ゴール状態
スマホのTelegramから秘書と会話できている
ペアリングの仕組みを理解している
「外出先からも秘書に指示できる」を実感