Nextcloud TalkでOpenClawを使う(Webhook Bot)

【最新版】Nextcloud TalkでOpenClawを使う方法(Webhook Bot連携)

Nextcloud Talk

Nextcloud Talk(プラグイン)

ステータス:プラグイン(Webhook Bot)経由でサポート。ダイレクトメッセージ、ルーム、リアクション、Markdownメッセージに対応しています。

プラグインが必要

Nextcloud Talk はプラグインとして提供されており、コアインストールには同梱されていません。

CLI(npm レジストリ)でインストール:

openclaw plugins install @openclaw/nextcloud-talk

ローカルチェックアウト(git リポジトリから実行している場合):

openclaw plugins install ./extensions/nextcloud-talk

セットアップ中に Nextcloud Talk を選び、かつ git チェックアウトが検出されると、OpenClaw はローカルのインストールパスを自動で提案します。

詳細: Plugins

クイックセットアップ(初心者向け)

  1. Nextcloud Talk プラグインをインストールします。
  2. Nextcloud サーバー上でボットを作成します:
    ./occ talk:bot:install "OpenClaw" "<shared-secret>" "<webhook-url>" --feature reaction
  3. 対象ルームの設定でボットを有効化します。
  4. OpenClaw を設定します:
    • Config:channels.nextcloud-talk.baseUrl + channels.nextcloud-talk.botSecret
    • または env:NEXTCLOUD_TALK_BOT_SECRET(デフォルトアカウントのみ)
  5. Gateway を再起動します(またはセットアップを完了します)。

最小の config:

{
  channels: {
    "nextcloud-talk": {
      enabled: true,
      baseUrl: "https://cloud.example.com",
      botSecret: "shared-secret",
      dmPolicy: "pairing",
    },
  },
}

Notes

  • ボットは DM を開始できません。ユーザー側から先にボットへメッセージを送る必要があります。
  • Webhook URL は Gateway から到達可能である必要があります。プロキシの背後にある場合は webhookPublicUrl を設定してください。
  • Bot API はメディアアップロードをサポートしません。メディアは URL として送信されます。
  • Webhook payload は DM とルームを区別しません。apiUser + apiPassword を設定するとルーム種別のルックアップが可能になります(未設定の場合、DM はルームとして扱われます)。

アクセス制御(DM)

  • デフォルト:channels.nextcloud-talk.dmPolicy = "pairing"。未知の送信者にはペアリングコードが返ります。
  • 承認:
openclaw pairing list nextcloud-talk
openclaw pairing approve nextcloud-talk <CODE>
  • 公開 DM:channels.nextcloud-talk.dmPolicy="open" に加え、channels.nextcloud-talk.allowFrom=["*"] が必要です。
  • allowFrom は Nextcloud の user ID のみにマッチします(表示名は無視されます)。

ルーム(グループ)

  • デフォルト:channels.nextcloud-talk.groupPolicy = "allowlist"(メンション必須)。
  • channels.nextcloud-talk.rooms でルームを allowlist します:
{
  channels: {
    "nextcloud-talk": {
      rooms: {
        "room-token": { requireMention: true },
      },
    },
  },
}
  • ルームを一切許可しない場合、allowlist を空にするか channels.nextcloud-talk.groupPolicy="disabled" を設定します。

Capabilities

  • Direct messages: Supported
  • Rooms: Supported
  • Threads: Not supported
  • Media: URL-only
  • Reactions: Supported
  • Native commands: Not supported

設定リファレンス(Nextcloud Talk)

フル設定: Configuration

Provider options:

  • channels.nextcloud-talk.enabled:チャネル起動の有効/無効
  • channels.nextcloud-talk.baseUrl:Nextcloud インスタンス URL
  • channels.nextcloud-talk.botSecret:bot shared secret
  • channels.nextcloud-talk.botSecretFile:通常ファイルの secret パス(symlink は拒否)
  • channels.nextcloud-talk.apiUser:ルームルックアップ用 API ユーザー(DM 判定)
  • channels.nextcloud-talk.apiPassword:ルームルックアップ用 API/app password
  • channels.nextcloud-talk.apiPasswordFile:API パスワードのファイルパス
  • channels.nextcloud-talk.webhookPort:webhook listener port(デフォルト:8788)
  • channels.nextcloud-talk.webhookHost:webhook host(デフォルト:0.0.0.0)
  • channels.nextcloud-talk.webhookPath:webhook path(デフォルト:/nextcloud-talk-webhook)
  • channels.nextcloud-talk.webhookPublicUrl:外部から到達可能な webhook URL
  • channels.nextcloud-talk.dmPolicypairing | allowlist | open | disabled
  • channels.nextcloud-talk.allowFrom:DM allowlist(user IDs)。open には "*" が必要
  • channels.nextcloud-talk.groupPolicyallowlist | open | disabled
  • channels.nextcloud-talk.groupAllowFrom:group allowlist(user IDs)
  • channels.nextcloud-talk.rooms:ルーム単位設定 + allowlist
  • channels.nextcloud-talk.historyLimit:グループ履歴上限(0 で無効)
  • channels.nextcloud-talk.dmHistoryLimit:DM 履歴上限(0 で無効)
  • channels.nextcloud-talk.dms:DM 単位の上書き(historyLimit)
  • channels.nextcloud-talk.textChunkLimit:送信テキストのチャンクサイズ(文字数)
  • channels.nextcloud-talk.chunkModelength(デフォルト)または newline(空行で段落分割→長さ分割)
  • channels.nextcloud-talk.blockStreaming:このチャネルで block streaming を無効化
  • channels.nextcloud-talk.blockStreamingCoalesce:block streaming coalesce の調整
  • channels.nextcloud-talk.mediaMaxMb:受信メディア上限(MB)

参考

BizClaw 導入支援

OpenClaw の構築を
まるごと代行します

Mac mini のセットアップから Slack・iMessage 連携まで、届いた日から使える状態でお届けします。

サービスを見る

関連記事

Read article
AIエージェントのメモリスタックとは?2026年に重要度が上がる理由をやさしく解説

AIエージェントのメモリスタックとは?2026年に重要度が上がる理由をやさしく解説

Read article
OpenClaw vs Hermes vs Claude、創業者はどれを選ぶべき?2026年版の実務比較

OpenClaw vs Hermes vs Claude、創業者はどれを選ぶべき?2026年版の実務比較

Read article
X公式MCPサーバーとは?AIエージェント運用で何が変わるのかを実務目線で解説

X公式MCPサーバーとは?AIエージェント運用で何が変わるのかを実務目線で解説