Discord
Discordでの仕組み
メンバーは、通常のチャットではなくスラッシュコマンドでボットに話しかけます。/ask 配送料はいくらですか?と入力すると回答が返ります。チャンネルに配送料はいくらですか?と入力しても、回答は返りません。
これは意図的な仕様です。サーバー内のすべてのメッセージを読むボットは、コミュニティの会話にはるかに広いアクセスが必要になり、参加を依頼されていない雑談にクレジットを使ってしまいます。スラッシュコマンドは、サーバーのそれ以外の部分を非公開のまま保ち、ボットが聞き取る時期をメンバーが決められるようにします。
サーバーに追加する(ワンクリック)
ダッシュボードのサイドバーで設定 → チャネルを開き、Discordのカードで承認を選んでください。ダイアログが開き、ProxyAIのボットをサーバーに追加とサーバーに追加ボタンが表示されます。
- サーバーに追加を選びます。Discordの権限画面が新しいタブで開きます。
- サーバーを選びます。そのサーバーでサーバーの管理権限が必要です。これは、どのアプリを追加する場合でもDiscordが定めたルールで、ProxyAI独自のルールではありません。
- 承認を選びます。ProxyAIのダッシュボードに戻ります。
これで、メンバーはそのサーバーで/askを使えます。作成するものも、設定するものも、訪問する開発者サイトもありません。
ボットが求める権限は、チャンネルを表示とメッセージを送信の2つです。スラッシュコマンドはどちらがなくても動作します。これらは、チームの人がProxyAIの受信トレイからチャンネルに返信できるようにするためのものです。
2つ目のサーバーに追加するには、もう一度サーバーに追加を選び、そのサーバーを選んでください。ボットを削除するには、Discordでサーバーから削除してください。
知っておくと役立つ点があります。カードの再確認メニューは、下の詳細設定だけを確認するため、ワンクリックでインストールした後は「未設定」と表示されます。接続は問題ありません。サーバーで/askを実行して確認してください。
詳細設定:ご自身のボットを使う
ボットにご自身の名前とアイコンを持たせたい場合、ask以外のコマンドを使いたい場合、またはダイレクトメッセージに回答させたい場合に選んでください。Discordの開発者サイトでアプリケーションを作成する必要があるため、手間が増えます。
- Discord開発者ポータルを開き、New Applicationを選びます。ここで付けた名前が、メンバーに表示されます。
- Botタブを開き、Reset Tokenを選んで、Bot Tokenをコピーします。Discordはこれを一度しか表示しません。
- General Informationを開き、Public Keyをコピーします。ProxyAIは、リクエストが本当にDiscordから来ていることを確認するためにこれを使います。
- ProxyAIのダイアログで、詳細設定、ご自身のボットを持ち込むの下に両方を貼り付けます。
- 必要に応じてスラッシュコマンド名を設定します。小文字で、スペースは使わないでください。空欄のままにすると
askになります。 - 保存を選びます。
ダイアログには、コピーボタン付きのInteractions endpoint URLも表示されます。これは必要ありません。保存すると、ボットの確認、スラッシュコマンドの作成、アプリケーションをProxyAIに向ける処理が自動で行われます。
その後、ボットを招待します。
- 開発者ポータルでInstallationを開きます。
- Installation Contextsで、サーバー向けにGuild Installを有効にします。ボットにダイレクトメッセージへの回答をさせたい場合は、User Installも有効にします。
- Default Install Settingsで、
applications.commandsとbotのスコープ、そしてメッセージを送信の権限を付与します。 - Install Linkをコピーし、開いて、サーバーを選びます。
どちらの値も秘密情報です。どちらかが漏えいした場合は、Discordのサイトでトークンを再発行し、新しいものをここで保存してください。
テスト
ボットをインストールしたサーバーで/askと入力し、質問を送信してください。Discordにボットが考え中と表示され、数秒後に回答が届きます。
- コマンドが表示されない:新しく作成したコマンドが、すべてのサーバーに反映されるまで最大1時間かかることがあり、Discordはデバイスごとにリストをキャッシュします。少し待ってから、Ctrl+R(Macでは Cmd+R)で再読み込みしてください。ボットが
applications.commandsのスコープで招待されているかも確認してください。 - 「このサーバーはまだアシスタントに接続されていません」:ボットはサーバーにいますが、ProxyAIのボットがまだ割り当てられていません。ダッシュボードからサーバーに追加を実行してください。
- 「このアシスタントはサーバー内で動作します」:ProxyAIの共有ボットに個人的にメッセージを送りました。共有ボットはサーバー内でのみ回答します。ダイレクトメッセージには、User Installを有効にしたご自身のボットが必要です。
- 「アプリケーションが応答しませんでした」:回答に時間がかかりすぎたか、接続が拒否されました。詳細設定のルートでは、Discordの設定をもう一度保存してください。
- 無効なトークンのエラーで保存に失敗する:コピーした後にトークンが再発行されました。もう一度再発行し、新しい値を貼り付けてください。
- 担当者の返信がまったく届かない:そのチャンネルでボットにメッセージを送信の権限がありません。サーバー全体のロールだけでなく、そのチャンネル自体の権限を確認してください。
会話とプライバシー
エージェント受信トレイでは、会話は1人のメンバーではなく、Discordのチャンネルに属します。共有チャンネルでは、そこでコマンドを使うすべての人が1つの履歴を共有し、担当者の返信はチャンネル全体から見えます。ダイレクトメッセージを有効にしている場合、それは各メンバーにとって非公開のままです。
ボットが見るのは、コマンドに入力されたテキストだけです。サーバーでのそれ以外の発言は、ProxyAIには届きません。