ภาพรวมช่อง Discord
หลังจากติดตั้งบอท เซิร์ฟเวอร์ Discord ของคุณจะมีโครงสร้างช่องเล็ก ๆ ที่คาดเดาได้ หน้านี้พาทัวร์ทุกช่องและ category ที่บอทจัดการ — แต่ละอันปรากฏเมื่อไหร่ ทำหน้าที่อะไร และเชื่อมกับฟีเจอร์เว็บไหน
ตอนติดตั้งมีแค่ช่องเดียวที่ปรากฏ
/guild pair ใหม่สร้าง category หนึ่ง อันและช่อง หนึ่ง ช่องเท่านั้น: 🛡 AO Master + #⚙️-guild-settings category 🎯 Enlist จะปรากฏภายหลังเมื่อคลิกปุ่ม Enable Enlist ไม่รก
1. category 🛡 AO Master
ที่บรรจุของทุกช่องที่บอทดูแล สร้างครั้งเดียวด้วย /guild pair แล้วทิ้งไว้จนกว่าจะ unpair การ override สิทธิ์ของ category ตัดสินว่าใครเห็นช่องทั้งหมดข้างใน — ดังนั้นคุณตั้ง visibility ที่ category ไม่ใช่ที่ช่องแต่ละช่อง

ในรายการ access list คุณจะเห็นเสมอ:
- role 🔵 AO Master — Discord สร้างให้บอทเอง บอทใช้ข้ามกฎ visibility ของช่องตัวเอง ปล่อยไว้
- server owner ของคุณ — คือคุณ คนที่รัน
/guild pair - Discord role ทุกอันที่คุณเลือก ในขั้น visibility ของ wizard (ดู ติดตั้ง — §9)
จะขยายหรือจำกัด visibility ภายหลัง คลิกขวาที่ category ใน Discord → Edit Category → Permissions แล้วเพิ่มหรือลบ role ช่องทุกช่องข้างในรับรายการใหม่อัตโนมัติ
2. ช่อง #⚙️-guild-settings
hub การตั้งค่า เปิดครั้งเดียว ปักไว้ใน favourite ของคุณ — การกระทำของบอทระดับกิลด์ทุกอย่างอยู่ตรงนี้หลังข้อความ pinned ที่มีปุ่ม

ข้อความ pinned มี 5 ปุ่ม:
| ปุ่ม | ทำอะไร | ใครใช้ได้ |
|---|---|---|
| 🔍 View Config | แสดงสแน็ปช็อตของการจับคู่ปัจจุบัน — Discord server ID, กิลด์ AO Master, channel mapping และ Discord role ไหนมี web role อะไร | ใครก็ตามที่เห็นช่อง |
| 🟢 Enable Enlist | เปิดแผง 🎯 Manage Enlist จากที่นั่นเลือก Discord role ของ recruiter ยืนยัน บอท provision Enlist pipeline — #📋-enlist-here + category 🎯 Enlist + ปุ่ม [Enlist] pinned ปุ่มเดียวกันอ่านว่า 🎯 Manage Enlist เมื่อ Enlist ถูกตั้งค่าแล้ว | guild owner หรือ Manage Integrations |
| 🆘 Help | รายการกู้คืนเมื่อบอทดูเหมือนพัง (โดนเตะ ช่องถูกลบ ฯลฯ) + ดัชนีทุก slash command | ใครก็ได้ |
| 🔄 Refresh UI | โพสต์ข้อความ pinned ที่บอทดูแลในกิลด์นี้ใหม่ทั้งหมด ใช้เมื่อ Discord admin เผลอลบ pinned message | guild owner เท่านั้น |
| 🔄 Force Re-sync All | ไล่ดูสมาชิกทุกคนที่เชื่อม แล้วปรับ Discord role ให้ตรงกับ state เว็บ AO Master DM ทุกคนที่ role เปลี่ยน | guild owner เท่านั้น |
Visibility ≠ permission
ใครก็ตามที่เห็นช่องจะเห็นปุ่มเหล่านี้ ตัวปุ่มเองยังเช็ค web role ของ AO Master — กดปุ่ม Refresh UI ในฐานะสมาชิกปกติจะไม่เกิดอะไรขึ้น บอทแค่ตอบว่า "คุณไม่มีสิทธิ์" ใช้สิทธิ์ category ของ Discord เพื่อให้ช่องเห็นได้แค่ staff ที่ใช้ปุ่มเหล่านี้จริง
3. category 🎯 Enlist (dynamic)
ปรากฏครั้งแรกเมื่อคลิก 🟢 Enable Enlist ใน #⚙️-guild-settings (หรือรันการตั้ง Enlist จากเว็บ) category บรรจุ:
#📋-enlist-here— ช่องสาธารณะที่ผู้สมัครเจอ ปักไว้ด้านบนคือปุ่ม [Enlist] ปุ่มเดียว คลิกหนึ่งครั้งเปิด ticket ส่วนตัวต่อผู้สมัครหนึ่งคนใน category เดียวกัน🗄 enlist-archive— forum channel ที่บอทเก็บ transcript ของ ticket ที่ปิดแล้วทั้งหมด (พร้อมชื่อ avatar และไฟล์แนบของเจ้าของข้อความเดิม) สร้างแบบ lazy — ไม่ปรากฏจนกว่า/enlist doneครั้งแรก ชื่อ forum หยิบ prefix จาก template ชื่อช่อง ถ้าคุณเปลี่ยน template เป็นapply-{user}forum กลายเป็น🗄 apply-archive- ช่อง
#enlist-{username}— ช่องส่วนตัวต่อผู้สมัครหนึ่งคน สร้างเมื่อผู้สมัครคลิก [Enlist] เห็นได้แค่ผู้สมัคร + role recruiter ของคุณ เปิดอยู่หลัง Approve (เพื่อ recruiter คุยต่อได้) และจะถูกลบเฉพาะเมื่อ recruiter รัน/enlist donetemplate ชื่อช่องตั้งได้ ค่า default คือenlist-{user}
walkthrough ครบอยู่ที่ Enlist flow บน Discord
4. role AO Master บน Discord
แยกจาก category ใด ๆ แต่ควรรู้ไว้: Discord สร้าง role ชื่อ AO Master อัตโนมัติเมื่อบอทเข้ามา เป็น role ที่ผูกกับ user account ของบอท

จะเห็นใน role list พร้อมจำนวน 1 (บอทเองเป็น "สมาชิก" คนเดียว) นี่คือวิธีที่ Discord ให้บอทมีสิทธิ์ Administrator ทั่วเซิร์ฟเวอร์
อย่า:
- ลบมัน (บอทเสียอำนาจ admin และการเชื่อมต่อพัง)
- assign ให้มนุษย์ (จะให้สิทธิ์ขยายของบอทแก่มนุษย์บน Discord — ไม่มีประโยชน์และทำให้สับสน)
- เลือกเป็น role visibility ใน wizard (
/th/discord/install#step-9-pick-channel-visibility) — บอทข้าม override ของตัวเองอยู่แล้ว ติ๊ก role ก็ไม่เพิ่มอะไร
รวมทุกอย่างเข้าด้วยกัน
หลังติดตั้งใหม่:
Discord server
├── (ช่อง built-in — #welcome, voice ฯลฯ)
├── 🛡 AO Master ← static, สร้างโดย /guild pair
│ └── #⚙️-guild-settings ← static, แผงควบคุม
└── (ยังไม่มี category อื่น)หลังเปิด Enlist + ผู้สมัครคลิก [Enlist] ครั้งหนึ่ง + recruiter รัน /enlist done อย่างน้อยหนึ่งครั้ง:
Discord server
├── (ช่อง built-in)
├── 🛡 AO Master
│ └── #⚙️-guild-settings
└── 🎯 Enlist ← dynamic, ตอน Enable Enlist
├── #📋-enlist-here ← ปุ่ม [Enlist] สาธารณะ
├── 🗄 enlist-archive (forum) ← ปรากฏตอน /enlist done ครั้งแรก
└── #enlist-newbie01 ← ticket ต่อผู้สมัคร (เปิดอยู่จนกว่า /enlist done)บอทเป็นเจ้าของและเก็บกวาดช่องทั้งหมดข้างบน อย่าเปลี่ยนชื่อหรือย้ายเอง — บอทค้นหาด้วยชื่อ category เพื่อกู้คืนเมื่อมีปัญหา ช่องที่เปลี่ยนชื่อด้วยมือจะกลายเป็นซ้ำหรือลอย
ลิงก์ที่เกี่ยวข้อง
- ติดตั้งบอท — wizard ที่สร้าง category 🛡 AO Master + #⚙️-guild-settings
- Enlist flow บน Discord — วิธี populate category 🎯 Enlist
- การจัดการสมาชิกบน Discord — เส้นทางเชื่อมตัวละครด้วย
/whoamiและ role sync มิเรอร์เว็บ → Discord อย่างไร - ภาคผนวก slash command — ทุก slash command ที่ user (และ staff) รันได้
- Settings → การเชื่อม Discord — เว็บมิเรอร์ของ pairing state + role mapping