備忘録

備忘録

C#でDiscord BOTを作る

Ⅰ. はじめに

kagasu.hatenablog.com

こちらの記事でプログラミング不要なBOTの作成方法を書きましたが、
細かい動きをするBOTを作るにはコード書く必要があります。

この記事ではC#でecho botのサンプルを紹介します。

Ⅱ. 環境

  • .NET Core 2.0

Ⅲ. echo botの作り方

1. BOTを作成する
  • ClientID
  • Token

の2つが必要になります。
https://discordapp.com/developers/applications/me

2. 以下のURLに自分のBOTのClientIDを指定してアクセスして、BOTをDiscordチャンネルに招待する

https://discordapp.com/oauth2/authorize?&client_id={CLIENT_ID}&scope=bot&permissions=0

3. NuGet から Discord.Net をインストールする
4. サンプルコード
class Program
{
    const string BOT_NAME = "echo bot";

    static void Main(string[] args) => MainAsync().Wait();

    static async Task MainAsync()
    {
        var client = new DiscordSocketClient();
        var token = "**********";

        await client.LoginAsync(TokenType.Bot, token);
        await client.StartAsync();

        client.MessageReceived += Client_MessageReceived;

        Console.ReadLine();
    }

    static async Task Client_MessageReceived(SocketMessage arg)
    {
        if (!arg.Author.Username.Equals(BOT_NAME))
        {
            await arg.Channel.SendMessageAsync(arg.Content);
        }
    }
}
5. 実行結果

f:id:kagasu:20170718114016p:plain