Discord bot
Discord bot(ディスコード ボット)は、discordにおいて自動で動作するユーザーのことである。botには専用のbotアカウントが存在し、「ボット」という表記がついた上で動作する。後述するスラッシュコマンドなどの機能を使うことができる。
歴史[編集]
discordでは当初通常のユーザーアカウントでbotを動かすことができた。そのためbotと人間の区別が困難であり、荒らしなどが横行していた。そのため、2019年にdiscord公式がBot専用アカウントを作ることを発表。bot専用アカウントでは招待によるサーバー参加ができないなどの制限があったが、特殊なリンクを使うことでwebサービスからdiscordの情報にアクセスできたり、Discord Nitroユーザーしか使うことができなかった絵文字のグローバル利用などができるなどの多くの利点があった。
スラッシュコマンド[編集]
2022年、discord公式がスラッシュコマンドを正式にアナウンスした。当時多く利用されていた「コマンド」という方式では、!helpのように先頭にbot固有の接頭辞(プレフィックス)をつけることが一般的だったため、接頭辞を忘れるとbotが一切利用できないという事態に陥ってしまっていた。しかしスラッシュコマンドを導入したことにより、ユーザーが「/」と打つだけでサーバーにあるすべてのbotのコマンドの一覧が表示されるため、プレフィックスを覚える必要がなくなった。
仕組み[編集]
基本的には、イベントの受信やオンラインステータスの送信のためのWebSocketによるGateway APIと、Botの各動作を実際に反映させるためのREST APIの2種類のAPIを使用する。なお、通常のユーザーでも同様の通信を行なっている。
作り方[編集]
discordでbotを作成するためには、まずDeveloper Portalでbot用のアカウントを取得する必要がある。
bot用アカウントを取得したあと、botを動作させるためのプログラムを書き、これを実行する。プログラムが実行中であるとき、Botは動作することが可能である。
APIラッパー[編集]
botを動作させるためのAPIは非常に複雑、かつ多岐に渡るエンドポイントが存在するため、各プログラミング言語に合わせてAPIラッパーが存在する。