LoginSignup
5
6

More than 5 years have passed since last update.

DISCORDで千枝ちゃんを召喚してみた

Posted at

はじめに

実は私シンデレラなソシャゲをやってるんですよ。
そのゲームでミニチーム結成や傭兵募集で成績チェックってするじゃないですか?
デレマスボーダーbotさん(https://imcg.pink-check.school/)
よく見るのはデレマスボーダーbotさんだと思うんですが、やっぱり検索するのなんだかんだでめんどくさいわけですよ。
そこで、DISCORDのBOTでURLはってくれたら便利じゃないかなって。
あとさ、千枝ちゃんとしゃべりたくない?しゃべりたくない?(大事なことなのでry)

DISCORDのBOTの作り方

DEVELOPER PORTAL(https://discordapp.com/developers/applications/)
上記サイトにDISCORDアカウントでログインします。

General Informationでbotの名前とアイコンを設定します。
disbot1.jpg

Botからトークンをコピーします。
言うまでもないですが間違ってもトークンは流出させないようにしましょう
disbot2.jpg

OAuth2からbotとAdministratorを選択して、URLをコピーします。
tiebot4.jpg

URLにアクセスするとサーバーを選べるのでBOTを設置したいサーバーを決定します。
disbot3.jpg

これでBOT作成は終わりです。簡単ですね。

BOTのプログラム準備

今回はpython3で実装します。
pipから、discord.pyをインストールします。
https://github.com/Rapptz/discord.py

discord.pyの取得
pip install discord.py

勿論pythonの他のライブラリを使いたい場合はそれぞれpipでインストールしてください。

また、BOTの親アカウントの設定から、テーマ→開発者モードをONにしてください。
これがないと一部機能が動かないっぽいです。
tiebot5.jpg

実装

tiebot.py
import discord

client = discord.Client()

@client.event
async def on_message(message):
    # 挨拶する千枝ちゃん
    if message.content.startswith('おはよう') and client.user != message.author and message.channel == client.get_channel('チェンネルID'):
        reply = f'おはようございます、{message.author.mention} さん'
        await client.send_message(message.channel, reply)
    # IDから成績を教えてくれる千枝ちゃん
    if message.content.startswith('おしえて,') and client.user != message.author and message.channel == client.get_channel('チャンネルID'):
        s_message = message.content.split(",")
        reply = f'https://imcg.pink-check.school/producer/detail/{s_message[1]}  です'
        await client.send_message(message.channel, reply)

# ここにはあらかじめ取得したトークンを貼り付けてください
client.run('トークンID')

チャンネルIDはDISCORDのチャンネル名を右クリックでIDをコピーしてください。
実際に動かしてみた結果がこちら
tiebot6.jpg
うん、いい感じ。
あとはpythonで実装すれば夢が色々広がるんじゃないかな?

おわりに

私の担当アイドルは橘ありすです(きりっ)

5
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
6