บอท Discord
บอท Discord ด้วย Python (discord.py) หรือ Node.js (discord.js) สิ่งที่ควรใส่ในคำขอ วิธีทดลองรันบอทใน Codexe ขีดจำกัดเวลารันตามแพ็กเกจ และการเก็บโทเค็นให้ปลอดภัย
อัปเดตเมื่อ
Codexe สร้างโปรเจกต์บอท Discord ครบชุดด้วย Python (discord.py) หรือ Node.js (discord.js) โดยใช้ slash command
#สิ่งที่ควรใส่ในคำขอ
- ไลบรารี (Python หรือ Node.js)
- slash command แต่ละตัว พร้อมตัวเลือก และใครใช้ได้
- อีเวนต์ที่ต้องตอบสนอง (สมาชิกเข้า ข้อความ รีแอ็กชัน)
- การจัดเก็บข้อมูล (JSON, SQLite…) และ API ภายนอกที่ใช้
- intent ที่คุณยอมเปิด Message Content และ Server Members เป็น intent แบบพิเศษ ต้องเปิดใน Discord developer portal
#โทเค็น
บอทที่สร้างจะอ่านโทเค็นจากตัวแปรสภาพแวดล้อม DISCORD_TOKEN (BOT_TOKEN หรือ TOKEN ก็ใช้ได้) โทเค็นจะไม่ถูกเขียนลงในซอร์สโค้ด และไม่มีการสร้างไฟล์ .env ให้ ดูแลโทเค็นเหมือนรหัสผ่าน ถ้าหลุด ให้รีเซ็ตใน Discord developer portal
#ทดลองรันบอทใน Codexe
โปรเจกต์บอทมีแผงโฮสต์สำหรับลองบอทโดยไม่ต้องตั้งเซิร์ฟเวอร์เอง วางโทเค็นบอทของคุณ (เก็บแบบเข้ารหัส และคุณลบได้) แล้วใช้เริ่ม หยุด รีสตาร์ต และดูคอนโซล
นี่คือสภาพแวดล้อมทดสอบ ไม่ใช่โฮสติ้งถาวร:
| แพ็กเกจ | เวลารันต่อ 24 ชั่วโมงล่าสุด |
|---|---|
| Free | 15 นาที |
| Pro | 4 ชั่วโมง |
| Business | 12 ชั่วโมง |
| Enterprise | 24 ชั่วโมง |
ในทุกแพ็กเกจ: เซสชันจะหยุดหลัง 30 นาที รันบอทได้ทีละตัวต่อบัญชี และการเริ่มมีขีดจำกัดความถี่ บอทรันแยกส่วน เข้าอินเทอร์เน็ตได้แต่เข้าระบบของ Codexe เองไม่ได้
#การตรวจสอบ
บอท Discord ไม่ได้ถูกตรวจด้วยการบิลด์ พร้อมหมายถึงการสร้างเสร็จแล้ว (ดูวงจรชีวิตของโปรเจกต์) ใช้การทดลองรันเพื่อตรวจ
#รันเอง
ดาวน์โหลด ZIP ติดตั้ง dependency (pip install -r requirements.txt หรือ npm install) ตั้งค่า DISCORD_TOKEN ในสภาพแวดล้อมของคุณแล้วเริ่มบอท เชิญบอทเข้าเซิร์ฟเวอร์ด้วย scope bot และ applications.commands
#ปัญหาที่พบบ่อย
| อาการ | สาเหตุที่น่าจะเป็น |
|---|---|
| slash command ไม่ขึ้น | คำสั่งยังไม่ได้ซิงก์ การซิงก์แบบ global อาจใช้เวลาถึงหนึ่งชั่วโมง ส่วนการซิงก์ต่อกิลด์จะขึ้นทันที |
| บอทออนไลน์แต่ไม่สนใจข้อความ | ยังไม่ได้เปิด intent แบบพิเศษใน developer portal |
| "The application did not respond" | คำสั่งใช้เวลาเกิน 3 วินาทีโดยไม่ได้ defer ขอให้แชตทำให้คำตอบเป็นแบบ defer |