5分鐘教你快速開發Discord機器人

2022年大概會是元宇宙的元年,許多NFT項目、GameFi都會在今年爆發,當然也免不了Discord群的人潮大量湧入,因為大家都想知道最新消息。

而想當好一個Discord群的Moderator,除了社群運營的專業知識外,我認為能夠開發Discord機器人,也會是一個必備條件,畢竟現在哪個D群裡沒有機器人,開發一個好的Discord機器人,可以大幅的降低MOD的loading,同時也能幫助D群環境運營的更加友善。

昨天是2022.01.31新年的除夕,因為要守夜讓父母長壽,剛好有些時間就去學習如何開發一個Discord聊天機器人,花了約2小時的時間爬文、設定、寫code,創建了第一隻屬於自己的Discord機器人!

今天就來跟大家分享,如何創建屬於自己的第一隻Hello World,D群機器人!

建立 Discord Bot API

首先我們要先建立Discord Bot 的 API。開啟你的瀏覽器,進入到Discord Developer Portal,可以直接點擊下方連結,進去之後點擊 Applications,再點擊 New Application,接著在Name欄位輸入機器人的名稱,再按下 Create 建立。

建立Discord機器人 建立機器人後,你會在 General Information 這個 tab,看到 Name 還有 Description ,我有截一個成品機器人放在旁邊,可以參考各個欄位輸入文字後會呈現的位置,輸入完成後點擊右下角的 Save Changes。 D群機器人的名稱與描述 接著點左側邊欄的Bot,再點 Add Bot,最後我們點 Yes, do it 來將機器人加入到APP!

將D群bot加到APP 接在在左側邊欄點 OAuth2 ,再點 URL Generator ,然後將 Bot、Send Messages 都勾選起來,最後生成一個連結,請將此連結複製起來。

將連結複製起來後,貼到瀏覽器上,會跳出一個授權畫面,這裡代表你要將此機器人新增到你的哪個伺服器,選擇你的伺服器之後,按下繼續即可。 接著按下授權。 此時回到你的 Discord 伺服器,就會發現剛剛創建的機器人已經被加入你的伺服器囉!

Python程式撰寫

import discord
from discord.ext import commands

# Credentials
TOKEN = 'Put your TOKEN here'

# Create bot
client = commands.Bot(command_prefix='!')

# Startup Information
@client.event
async def on_ready():
    print('Connected to bot: {}'.format(client.user.name))
    print('Bot ID: {}'.format(client.user.id))

# Command
@client.command()
async def helloworld(ctx):
    await ctx.send('Hello World!')

client.run(TOKEN)

機器人運行測試

程式撰寫完成並啟動後,回到我們Discord群,輸入 !helloworld 這個指令,就會發現機器人回覆我們 Hello World 了! 大功告成!! 這樣之後要讓機器人推播什麼訊息,或是讓 D群 的朋友們與機器人互動,都沒問題了!