2018.04.28
Discord Botの作り方
はじめに
何かメッセージを送ると、「Hello, world!」と返事を返すBotを作成します。
使用するOS
- Windows 10
使用する言語・ライブラリ
- Ruby
- discordrb
Rubyとは?
オープンソースの動的なプログラミング言語で、
シンプルさと高い生産性を備えています。
エレガントな文法を持ち、自然に読み書きができます。
discordrbとは?
RubyでDiscord APIを利用するために必要なライブラリです。
meew0/discordrb: Discord API for Ruby
環境構築
Rubyのインストール
RubyInstallerにアクセスして
WITH DEVKITのRuby+Devkit 2.4.4-1 (x86)をダウンロードします。
この際、x64と書かれている方は選ばないでください^1。ダウンロードしたexeファイルを実行します。
「I accept the Licence」にチェックを入れて、「Next」をクリック。
「Use UTF-8 as default external encoding.」にチェックを入れて、「Install」をクリック。
「MSYS development toolchain」にチェックが入っているのを確認して、「Next」をクリック。
インストールが完了するまで待ちます。
インストール完了後、「Run 'ridk install' to setup...」のチェックを入れて、 「Finish」をクリックします。
その後コンソール画面が出てくるので、「2」を入力して、Enterキーを叩きます。
「MSYS2 system update (optional) succeeded」と表示されたらアップデート完了です。
コマンドプロンプトを立ち上げて、
ruby -v
と入力してEnterキーを叩きます。
以下のようにバージョン情報が表示されたらOKです。
discordrbのインストール
コマンドプロンプトを立ち上げて、以下のコマンドを実行します。
gem install discordrb
インストール中にファイアウォールが反応する場合は、
「プライベートネットワーク」にチェックを入れて「アクセスを許可する」をクリック。画像のように「○○ gems installed」と表示されていれば完了です。
エディタのインストール
オススメのエディタはVisual Studio Codeです。
公式サイト にアクセスしてDownload for Windowsからダウンロードします。
ダウンロードしたexeファイルを実行します。
「次へ」をクリック。
「同意する」にチェックを入れて、「次へ」をクリック。
「次へ」をクリック。
「次へ」をクリック。
実行したい項目にチェックを入れて、「次へ」をクリック。
インストールが完了するまで待ちます。
「完了」をクリックでインストール完了です。
Botの登録
Discord - My Appsにアクセスして「New App」をクリック。
APP NAMEにBotへ設定したい名前を入力して、「Create App」をクリック。
GREAT SUCCESS!と表示されていればOKです。「Create a Bot User」をクリック。
選択肢が表示されるので、「Yes, do it!」を選んでください。
Botの作成で必要になるので、「click to reveal」をクリックして、
表示されたトークン(英数字記号の羅列)をメモっておきましょう。
サーバーへ招待
「Generate OAuth2 URL」をクリック。
「bot」のチェックを入れて、
「COPY」で招待URLをコピーします。招待URLを新しいタブで開き、導入したいサーバーを選択して、
「認証」をクリックします。「私はロボットではありません」のチェックを入れます。
Discordでちゃんと参加出来ていれば完了です。
Botの作成
Visual Studio Codeを起動して、新しいファイルを作成します。
以下のようにコードを入力しましょう。
tokenには先ほどコピーしたトークン(英数字記号の羅列)を指定してください。require 'discordrb' # Botの登録でメモったトークンを貼り付ける # トークンはシングルクォーテーション もしくは ダブルクォーテーションで囲むこと! bot = Discordrb::Bot.new( token: 'ここにトークンを貼り付ける' ) bot.message do |event| # Botがメッセージを受け取った時の処理 event.respond 'Hello, world!' end # 実行開始 bot.run
コード例
require 'discordrb' bot = Discordrb::Bot.new( token: 'NDM3OTczODQ5NjQxMDU4MzA2.DcY10w.qdcmPzbYhQN9wwE2PLsWTD5hEU0' ) bot.message do |event| event.respond 'Hello, world!' end bot.run
bot.rb
というファイル名でデスクトップに保存してください。
Botの実行
コマンドプロンプトを立ち上げて、
ruby
と入力した後、半角スペースを入力します。デスクトップにある
bot.rb
を、
コマンドプロンプトにドラッグアンドドロップして、Enterキーを叩きます。Discordを開いて、Botがオンラインになっていることを確認して、
何か文字を打ってみましょう。Hello, world!と返事が返ってきたらOKです。
以上、Botの作り方でした。