こんにちは。鮎月です。
Discordのアップデートにより、スラッシュコマンドの使用者をサーバー管理者が決められるようになりました。
これにより、コマンド全体や一部コマンドのみ使用者を制限することや、指定チャンネルで使えないように、といったことも出来ます。
Discordさんは上記の記事でこう言ってます:
In the age of text commands, if you wanted a bot to stop cluttering a channel, you could simply turn off its ability to read messages, kind of like putting earmuffs on a bot. With slash commands though, you’re not talking to the bot, you’re using telepathy! You’re magic!
意訳するとこんな感じ。
テキストコマンドのときは、Botを使わせたくない・動作させたくないチャンネルで、Botに耳あてするなり口にガムテ貼らせるなり目隠しするなりするみたいな感覚で権限はっ飛ばしてたやろ?スラコマなら違うんやで。君らがテレパシーを使うだけでええんや。ある意味魔法やな。今日から君らは魔法使いや!
ここでは、そのやり方を説明します。
かの有名な 「Management Support Server」 さんのnoteにも解説投稿があります。シンプルで分かりやすくなっているので、こちらもぜひお読みください!
前提
- サーバー管理権限を持っている必要がある
- チャンネル / カテゴリーの権限設定について一通り理解している
権限に関しては独自で調べたものになります。違っていたらコメント等で指摘いただければ幸いです。
設定方法
設定対象Botの管理ページに行く
サーバー設定→連携サービス より、「Botおよびアプリ」欄から設定したいBotを探します。
今回は唯香 -ゆいか-で行います。
コマンド権限欄より権限の設定を行えます。
カテゴリーやチャンネルの権限設定と似ていて、優先順位が
- ロールとメンバー
- チャンネル
- コマンド
になっているようです。
ロール・メンバー別での設定
ロールまたはメンバーを追加 より、設定できます
チェックボックスをオンにし、追加を押すとこのようになります。
このチェックボックスをいじると権限を設定できます。
チャンネル別での設定
上記の設定と変わらないので割愛。
コマンド別での設定
先ほどまでは ロール/メンバーやチャンネル 別での設定でしたが、ここからは、コマンド別に「どの ロール/メンバーやチャンネル で使えるのか」の設定です。
topicコマンドを例に説明します。
先ほどのコマンドリストよりtopicを選択すると、このような画面に移ります。
例
例えば、このような設定にしたとします。
この場合、以下の条件を揃えることでtopicコマンドを使えるようになります。
- 役職「test role」を持っていて
- チャンネルが「testchannel2-1」以外
この条件をどちらも満たす必要があります。
ちなみにこの設定を下のように行うと…
- 役職「test role」を持っている・チャンネルがtestchannel1-1の時
→ topicコマンドのみ使える - 役職「test role」を持っている・チャンネルがtestchannel2-1の時
→ どのコマンドも使えない - 役職「test role」を持っていない・チャンネルがtestchannel1-1の時
→ どのコマンドが使えない - 役職「test role」を持っていない・チャンネルがtestchannel2-1の時
→ topicを除く全コマンドを使える
ややこしいですね。これもまた独自で調べたものになりますので間違いがありましたらコメント等でご指摘ください。
以下のように、未同期になっているコマンドがあったら要注意です。
正直分かりませんが、おそらくこの2つのどちらかだと思います…
- Botがスラッシュコマンドに設定した権限 (唯香 -ゆいか- ではこの仕様は使っていません)
- ロール/メンバー またはチャンネルで設定した権限 (おそらくこっち)
おわりに
それはさておき、こればっかりはサブアカウントを使ったりフレンドに協力してもらって検証していくほうがいいと思います。
また、Bot開発者の中には、テキストコマンドでわが道を行く方や頑張って移行している方もいると思います。
それにより、Botによって今回の機能が使えないといったことにもなると思います。
しかしながら、スラッシュコマンドへの移行をするかどうかは、各Botやその開発者様の開発方針に依存します。
ですから、ユーザーさんは、たとえDiscordが提供する今回のような機能が使えないとしても、その方針を受け入れてあげてください。
いちBot開発者からのお願いです。
それでは。
「唯香 -ゆいか-」は、鮎月(あゆつき) が開発しているDiscordのおしゃべりBotで、チャットの単語に反応し、「いつもの会話を、ちょっぴり賑やかに。」します。
会話反応以外にも、話題提案やチャンネルの最初のメッセージ表示など、楽しい機能がたくさんあります!
あなたのサーバーにもBot追加して、チャットを楽しくしてみませんか?