投稿する
📚 OpenClaw基礎講座

第23回: Telegram連携セットアップ — 秘書とチャットする

この回で学ぶこと

  • OpenClawとTelegram Botの接続設定

  • ペアリング(利用者の承認)の仕組み

  • スマホから秘書と会話する体験

  • 接続トラブルの対処法


前回のおさらい

前回、BotFatherでTelegram Botを作成し、トークンを取得した。Botの箱はできたが、まだ中身(OpenClaw)と繋がっていない。今回その接続を行う。


OpenClawにTelegramトークンを設定する

OpenClawとTelegram Botを接続するには、前回取得したトークンをOpenClawの設定ファイルに書き込む。

手順:

  1. OpenClawの設定ファイル openclaw.json を開く

~/.openclaw/openclaw.json
  1. channels セクションにTelegramの設定を追加する

{
  "channels": {
    "telegram": {
      "enabled": true,
      "botToken": "ここにBotFatherから取得したトークンを貼り付ける",
      "dmPolicy": "pairing"
    }
  }
}

3つの設定項目の意味:

  • enabled: true — Telegramチャネルを有効にする

  • botToken — 前回BotFatherから取得したトークン(秘書の部屋の鍵)

  • dmPolicy: "pairing" — 誰がBotに話しかけられるかのセキュリティ設定(後述)

  1. ファイルを保存する

注意: トークンの前後に余分なスペースを入れないこと。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と会話できる」というセキュリティ設定。玄関にオートロックがかかっている状態だと思えばいい。

承認の手順:

  1. スマホのTelegramで自分のBotを検索し、「Start」をタップしてメッセージを送る

  2. Botからペアリングコード(6桁の数字など)が返ってくる

  3. PCのターミナルで以下のコマンドを実行して、承認待ちのコードを確認する

Dockerバージョン

docker compose exec openclaw-gateway node dist/index.js pairing list telegram

npmバージョン

openclaw pairing list telegram
  1. 表示されたコードを承認する

Dockerバージョン

docker compose exec openclaw-gateway node dist/index.js pairing approve telegram <コード>

npmバージョン

openclaw pairing approve telegram コード

これで「この人は話しかけていい人」として登録される。一度承認すれば、以降はコードなしで会話できる。

ペアリングコードの有効期限は1時間。期限切れになったら、もう一度Botにメッセージを送れば新しいコードが届く。

なぜこの仕組みがあるのか? — Botのユーザー名は公開されているので、知らない人が勝手に話しかけてくる可能性がある。ペアリングは「自分だけが使える秘書」を実現するための安全装置。


スマホから秘書に話しかける

ペアリングが完了したら、いよいよスマホから秘書と会話してみる。

  1. Telegramで自分のBotのチャット画面を開く

  2. テキストを送信する(例:「こんにちは」)

  3. 秘書が返事を返してくる

この時点で、データはこういう流れで動いている:

スマホ(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から秘書と会話できている

  • ペアリングの仕組みを理解している

  • 「外出先からも秘書に指示できる」を実感