コンテンツにスキップ

OpenClawとNextcloud Talkを連携:5分で完了する設定ガイド

自前でチャットツールを運用していると、ボットとの連携や通知の自動化で苦労することがよくありますよね。特に Nextcloud Talk のようなセルフホスト型の環境では、外部ツールとの接続設定が複雑になりがちです。

OpenClaw を使えば、Nextcloud Talk を強力なコミュニケーションハブとして活用できます。ダイレクトメッセージ(DM)やルームへの対応はもちろん、リアクション機能もサポートされているので、インタラクティブなボットをすぐに構築できます。

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

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

CLI(npm レジストリ)経由でインストールする場合:

Terminal window
openclaw plugins install @openclaw/nextcloud-talk

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

Terminal window
openclaw plugins install ./path/to/local/nextcloud-talk-plugin

セットアップ中に Nextcloud Talk を選択し、git チェックアウトが検出された場合、OpenClaw は自動的にローカルのインストールパスを提案します。

詳細:Plugins

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

Section titled “クイックセットアップ(初心者向け)”
  1. Nextcloud Talk プラグインをインストールします。

  2. Nextcloud サーバー上でボットを作成します:

    Terminal window
    ./occ talk:bot:install "OpenClaw" "<shared-secret>" "<webhook-url>" --feature reaction
  3. 対象となるルームの設定でボットを有効にします。

  4. OpenClaw を設定します:

    • 設定ファイル:channels.nextcloud-talk.baseUrl + channels.nextcloud-talk.botSecret
    • または環境変数:NEXTCLOUD_TALK_BOT_SECRET(デフォルトアカウントのみ)
  5. Gateway を再起動します(またはセットアップを完了させます)。

最小構成の例:

{
channels: {
"nextcloud-talk": {
enabled: true,
baseUrl: "https://cloud.example.com",
botSecret: "shared-secret",
dmPolicy: "pairing",
},
},
}
  • ボットから DM を開始することはできません。ユーザーが最初にボットへメッセージを送る必要があります。
  • Webhook URL は Gateway から到達可能である必要があります。プロキシの背後にある場合は webhookPublicUrl を設定してください。
  • ボット API ではメディアのアップロードがサポートされていません。メディアは URL として送信されます。
  • Webhook のペイロードでは DM とルームを区別できません。ルームタイプのルックアップを有効にするには、apiUser と apiPassword を設定してください(設定しない場合、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 のユーザー ID にのみ一致します。表示名は無視されます。
  • デフォルト設定:channels.nextcloud-talk.groupPolicy = "allowlist"(メンションが必要)。
  • channels.nextcloud-talk.rooms でルームを許可リストに登録します:
{
channels: {
"nextcloud-talk": {
rooms: {
"room-token": { requireMention: true },
},
},
},
}
  • ルームを一切許可しない場合は、許可リストを空にするか、channels.nextcloud-talk.groupPolicy="disabled" を設定してください。
機能ステータス
ダイレクトメッセージ対応済み
ルーム対応済み
スレッド未対応
メディアURL のみ
リアクション対応済み
ネイティブコマンド未対応

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

Section titled “設定リファレンス(Nextcloud Talk)”

完全な設定ガイド:Configuration

プロバイダーオプション:

  • channels.nextcloud-talk.enabled: チャネルの起動を有効/無効にします。
  • channels.nextcloud-talk.baseUrl: Nextcloud インスタンスの URL。
  • channels.nextcloud-talk.botSecret: ボットの共有シークレット。
  • channels.nextcloud-talk.botSecretFile: シークレットファイルのパス。シンボリックリンクは拒否されます。
  • channels.nextcloud-talk.apiUser: ルームルックアップ(DM 検出)用の API ユーザー。
  • channels.nextcloud-talk.apiPassword: ルームルックアップ用の API/アプリパスワード。
  • channels.nextcloud-talk.apiPasswordFile: API パスワードファイルのパス。
  • channels.nextcloud-talk.webhookPort: Webhook リスナーポート(デフォルト:8788)。
  • channels.nextcloud-talk.webhookHost: Webhook ホスト(デフォルト:0.0.0.0)。
  • channels.nextcloud-talk.webhookPath: Webhook パス(デフォルト:/nextcloud-talk-webhook)。
  • channels.nextcloud-talk.webhookPublicUrl: 外部から到達可能な Webhook URL。
  • channels.nextcloud-talk.dmPolicy: pairing | allowlist | open | disabled。
  • channels.nextcloud-talk.allowFrom: DM の許可リスト(ユーザー ID)。open の場合は "*" が必要です。
  • channels.nextcloud-talk.groupPolicy: allowlist | open | disabled。
  • channels.nextcloud-talk.groupAllowFrom: グループの許可リスト(ユーザー ID)。
  • channels.nextcloud-talk.rooms: ルームごとの設定と許可リスト。
  • channels.nextcloud-talk.historyLimit: グループ履歴の制限(0 で無効)。
  • channels.nextcloud-talk.dmHistoryLimit: DM 履歴の制限(0 で無効)。
  • channels.nextcloud-talk.dms: DM ごとのオーバーライド設定(historyLimit)。
  • channels.nextcloud-talk.textChunkLimit: 送信テキストのチャンクサイズ(文字数)。
  • channels.nextcloud-talk.chunkMode: length(デフォルト)または newline(長さで分割する前に空行で分割)。
  • channels.nextcloud-talk.blockStreaming: このチャネルのブロックストリーミングを無効にします。
  • channels.nextcloud-talk.blockStreamingCoalesce: ブロックストリーミングの結合調整。
  • channels.nextcloud-talk.mediaMaxMb: 受信メディアの容量制限(MB)。
  • Channels Overview — サポートされている全チャネルの概要
  • Pairing — DM 認証とペアリングのフロー
  • Groups — グループチャットの動作とメンション制御
  • Channel Routing — メッセージのセッションルーティング
  • Security — アクセスモデルとセキュリティ強化

次のステップ: 設定で迷ったことがあれば、AI アシスタントに相談してみてください。 AI Setup Assistant

OpenClaw

OpenClaw Expert

まだ解決しませんか?

このページで解決しない場合は、OpenClaw Expertに直接質問してください。