หลังจากที่ได้เรีนยรู้การสร้าง Webhook bot มาแล้วในบล็อคเรื่อง การสร้างบอท Discord ตอนที่ 2 Webhook Bot ต่อไปเราจะมาสร้างบอทในแบบ Command Bot กันดูบ้าง เราจะเขียนแบบเนื้อๆ เพื่อให้ผู้อ่านเข้าใจโครงสร้าง
สร้างบอท
ให้เพื่อนๆ ไปที่ Discord Developer Portal แล้วกดที่ปุ่ม New Application ทำการตั้งชื่อโปรเจค หรือชื่อแอพ อันนี้ไม่ใช่ชื่อของบอทนะ ตั้งชื่อเสร็จแล้วก้กดปุ่ม Create โล้ด

กดมาที่เมนู Bot แล้วกดที่ปุ่ม Add Bot จะมีกล่องข้อความกดก็กดปุ่ม Yes, do it!
ทำการตั้งชื่อบอท แล้วใส่รูปภาพให้บอทเพื่อความสวยงาม

เลื่อนลงมาด้านล่าง เพื่อความสะดวกในการสาธิต เราจะให้สิทธิ์บอทเป็น Administrator จากนั้นกดปุ่ม Save เพื่อบันทึกที่เราตั้งค่าไปทั้งหมด

ชวนบอทเข้า DISCORD
เมื่อบอทเราลืมตามาดูโลกแล้ว ในฐานะเจ้าของดิสคอส เป็นหน้าที่ที่จะต้องชวนบอทเข้ามาอยู่ในดิสคอสเราเหมือนกับการชวนเพื่อนๆ
กดมาที่เมนู OAuth2 แล้วกดที่เมนู URL Generator
ติ๊กที่ Bot ในส่วนของ Scope
ติ๊กที่ Administrator ในส่วนของ Permission


เลื่อนลงล่างสุด เราจะเจอกับ URL ให้ก๊อบปี้แล้วไปแปะที่ Google Chrome
เลือกการเลือก Server ที่เราจะแอดบอทเข้า แล้วยืนยัน ให้บอมเข้ามาเป็นส่วนหนึ่งของดิสคอส



บอทโปรแกรมมิ่ง
เปิด VS Code แล้ว สร้างไฟล์ขึ้นมาใหม่ ตั้งชื่อว่า command_bot.py (หรืออยากจะตั้งเป็นอย่างอื่นก็ได้นะ) แล้วพิมพ์โค้ดด้านล่าง
# command_bot.py
from discord.ext import commands
TOKEN = ''
# กำหนดตัวสัญลักษณ์ที่จะใช้ในการสร้างคำสั่ง
client = commands.Bot(command_prefix='!')
# กำหนดคำสั่งที่จะทำงานเมื่อมีคำสั่งที่ถูกส่งไปยังบอท
@client.command(name='hello', help='สวัสดีครับ')
async def hello(ctx):
await ctx.send(f'{ctx.author.mention}\r\nสวัสดีครับ')
# รันบอท
client.run(TOKEN)
สังเกตไหมว่า ตรงตัวแปร TOKEN ยังไม่ได้กำหนด เดียวเราจะกลับไปเอา token
กลับมาที่ Discord Developer Portal ที่เมนู Bot ให้กดปุ่ม Reset Token แล้ว เราจะได้ Token แบบรูปด้านล่างเลย
ก็อบปี้ Token ไปแปะที่โค้ดเราได้เลย ใส่ตรงตัวแปร Token


โอเคร ให้เรามาลองรันโค้ดดู จะสังเกตว่าบอทเราจะเขียวขึ้นมา นั้นแปลว่าบอทเราออนไลน์แล้วนั้นเอง

ให้ลองพิมพ์คำสั่ง !hello บอทก็จะตอบกลับมาตามที่เราโค้ดไว้เลย

จบแล้วครับสำหรับการสาธิตการสร้าง Command Bot ไม่ยากเลย ลองไปประยุกต์กันดูครับ