วิธีใช้งาน

คู่มือฉบับสมบูรณ์ ตั้งแต่การติดตั้งจนถึงการใช้งานทุกฟีเจอร์

1
การติดตั้งและตั้งค่าเริ่มต้น
ทำตามขั้นตอนนี้ก่อนใช้งานทุกครั้ง
1
เพิ่มบอทเข้าเซิร์ฟเวอร์
กดปุ่ม เพิ่มบอท ด้านบน แล้วเลือกเซิร์ฟเวอร์ที่ต้องการ อนุญาตสิทธิ์ทั้งหมดที่ระบบขอ
🔗 ลิงก์เชิญบอท
2
สร้างหมวดหมู่ใน Discord
สร้าง 2 หมวดหมู่ (Category) ใน Discord เซิร์ฟเวอร์ของคุณ:
📂 หมวดหมู่ที่ 1 = ตั๋วที่กำลังเปิดอยู่
📁 หมวดหมู่ที่ 2 = ตั๋วที่ปิดแล้ว (Admin เห็นเท่านั้น)
3
ตั้งค่า Category ID และ Role ID
เปิด Settings → Advanced → Developer Mode ใน Discord แล้วคลิกขวาที่หมวดหมู่ → Copy ID นำ ID ไปแทนค่าในไฟล์ utils/constants.js
CATEGORY_OPEN · CATEGORY_CLOSED · STAFF_ROLE
4
ติดตั้ง Dependencies และ Deploy Commands
รันคำสั่งในโฟลเดอร์บอท:
npm install → node deploy-commands.js → node index.js
5
ใช้คำสั่ง /setup ในช่องที่ต้องการ
ไปยังช่องที่ต้องการวาง Panel เปิดตั๋ว แล้วพิมพ์ /setup บอทจะส่ง Panel พร้อมปุ่ม ❓ สอบถาม ให้ทันที
💡 หากบอทไม่มีสิทธิ์สร้างห้อง ให้ตรวจสอบว่าบอทมีสิทธิ์ Manage Channels และ Manage Permissions
2
สำหรับผู้ใช้ทั่วไป
วิธีเปิดและใช้งาน Ticket
กดปุ่ม ❓ สอบถาม
ไปที่ช่องเปิดตั๋ว แล้วกดปุ่ม ❓ สอบถาม ระบบจะสร้างห้องส่วนตัวให้ทันที พร้อมแจ้งลิงก์ห้องให้คุณ
💬
พิมพ์คำถามหรือปัญหา
เข้าห้องที่สร้างขึ้น แล้วพิมพ์คำถามหรืออธิบายปัญหาของคุณได้เลย ทีม Admin จะตอบกลับโดยเร็ว
🔐
ปิดตั๋วเมื่อแก้ปัญหาเสร็จ
เมื่อได้รับคำตอบแล้ว กดปุ่ม 🔐 ปิดตั๋ว ยืนยัน แล้วคุณจะถูกลบออกจากห้องโดยอัตโนมัติ
⚠️ ผู้ใช้ 1 คน เปิดได้ 1 Ticket เท่านั้น ในแต่ละครั้ง เมื่อปิดแล้วจึงจะสร้างใหม่ได้
3
สำหรับ Admin และ Staff
การจัดการ Ticket อย่างมืออาชีพ
🙋
กด เคลม เพื่อรับผิดชอบตั๋ว
เมื่อมีตั๋วใหม่ Admin คนใดก็ได้กดปุ่ม 🙋‍♂️ เคลม เพื่อรับผิดชอบตั๋วนั้น ปุ่มจะหายไปทันทีหลังกด
เพิ่มผู้ใช้เข้าตั๋ว
ใช้คำสั่ง /add @user เพื่อดึงคนอื่นเข้ามาช่วยในห้อง Ticket เหมาะสำหรับดึงผู้เชี่ยวชาญเฉพาะด้าน
🔐
ปิดตั๋วเมื่อแก้ปัญหาเสร็จ
กด 🔐 ปิดตั๋วยืนยัน ห้องจะย้ายไปหมวดปิด ผู้ใช้ถูกลบออกทันที แต่ตั๋วยังเซฟอยู่
🗑️
ลบตั๋วถาวร
กด 🗑️ ลบตั๋วนี้ ระบบจะนับถอยหลัง 5 วินาที แล้วลบห้องออกถาวร เหมาะใช้หลังตรวจสอบตั๋วแล้ว
🗝️
เปิดตั๋วอีกครั้ง
หากต้องการเปิดตั๋วที่ปิดไปแล้ว กด 🗝️ เปิดอีกครั้ง ห้องจะย้ายกลับหมวดเปิด และดึงผู้ใช้กลับมาด้วย
4
สิทธิ์การใช้งาน
ใครสามารถทำอะไรได้บ้าง
การกระทำ 👤 ผู้ใช้ทั่วไป 🛡️ Staff (Role) 👑 Admin (Bot) ⚙️ เจ้าของเซิร์ฟ
เปิด Ticket ใหม่
พิมพ์ในห้อง Ticket
ปิดตั๋ว
Claim ตั๋ว
เปิดตั๋วอีกครั้ง
ลบตั๋ว
/setup
/addadmin
/removeadmin
5
คำถามที่พบบ่อย
FAQ — ปัญหาและวิธีแก้ไข
บอทไม่สร้างห้องเมื่อกดปุ่ม ❓ สอบถาม
ตรวจสอบว่าบอทมีสิทธิ์ Manage Channels และ Manage Permissions ในเซิร์ฟเวอร์ และตรวจสอบว่า CATEGORY_OPEN ID ใน constants.js ถูกต้อง
ผู้ใช้กด สอบถาม แล้วขึ้นว่า "มี Ticket อยู่แล้ว"
ผู้ใช้มี Ticket ที่ยังเปิดอยู่ ให้ปิด Ticket เดิมก่อน จึงจะสร้างใหม่ได้ หรือหากห้องถูกลบแต่ data ไม่ถูกลบ ให้ admin ลบ entry ใน data/tickets.json
Slash Commands ไม่แสดงใน Discord
รัน node deploy-commands.js อีกครั้ง และรอ 1-2 นาที หากเป็น Global Commands อาจใช้เวลาสูงสุด 1 ชั่วโมง แนะนำให้ตั้ง GUILD_ID ใน .env เพื่อ Deploy แบบ Guild ซึ่งเร็วกว่า
ข้อมูลแอดมินหายหลังรีสตาร์ทบอท
ตรวจสอบว่าโฟลเดอร์ data/ มีสิทธิ์ write ถูกต้อง และไฟล์ admins.json ไม่ถูกลบ ระบบจะสร้างไฟล์อัตโนมัติหากไม่มี
ต้องการเปลี่ยนชื่อห้อง Ticket
แก้ไขบรรทัด const channelName = `สอบถาม-${'{'}safeName{'}'}-${'{'}ticketNumber{'}'}` ในไฟล์ handlers/buttonHandler.js ได้ตามต้องการ