discordのInteractionについてのいろいろまとめ。
概要
Interactionを登録・送信してから、それらに対してのリアクション(例えばスラッシュコマンドであればコマンド実行時)があるとInteraction Create
イベント or Webhook経由のどちらかでそれを受け取ることができる。
Webhook経由で受け取りたい場合、Interactions Endpoint URL
という項目を設定すればOK。
Interaction
Application Command
コマンドをあらかじめREST APIで登録しておく。
GuildとGlobalコマンドがあり、
Globalコマンドすべてのギルドで使えるが、登録・更新に最高1時間かかる。
Guildコマンドは特定のギルドでしか使えないが、即座に登録・更新される。
そのため、開発ではGuildコマンドを利用し、本番ではGlobalコマンドを利用する運用が良さそう。
Slash Command
ご存知スラッシュコマンド
/から始まるメッセージを送ることで実行されるコマンド。
User Commands
右クリックメニューから使えるコマンド。
Message Commands
メッセージを選択して右クリックメニューからつかえるコマンド。
これを使った場合、Interactionに指定したMessageの内容が入る。
Message Components
メッセージの新しいフィールドとして使えるので、メッセージを送信する時やInteractionへのレスポンスの時に利用できる。
ボタン
押しボタン。
色もいろいろ変えれる。
プルダウンメニュー
メニューから項目を選択するメニュー。
設定次第で選択数の制限(例えば2個以上5個以下選択しなければならないなど)もできる。