Workflow Diagrams
Workflow Diagrams
Visual overview of the most important flows in Quantix Tickets
Ticket lifecycle
┌──────────────┐
│ User clicks │
│ topic select │
└──────┬───────┘
▼
┌──────────────┐ ┌────────────────┐
│ Form modal │ ───────►│ Modal submitted│
└──────────────┘ └───────┬────────┘
▼
┌────────────────┐
│ Bot creates │
│ private channel│
└───────┬────────┘
▼
┌────────────────┐
│ Embed + buttons│
│ in the channel │
└───────┬────────┘
▼
┌────────────────────────────────────────┐
│ OPEN — user + team chat │
└─────┬──────────────────────────────┬───┘
▼ ▼
┌────────────┐ ┌─────────────┐
│ Team claim │ │ Auto-close │
└─────┬──────┘ │ after X h │
▼ └──────┬──────┘
┌────────────────────┐ ▼
│ Force-claim active │ ┌─────────────────┐
│ Other team msgs │ │ Warning (24h) │
│ get deleted │ └────────┬────────┘
└─────┬──────────────┘ ▼
▼ ┌─────────────────┐
┌────────────────────┐ │ Closed │
│ Team / user closes │ ─────► │ Transcript │
└────────────────────┘ │ generated │
└─────────────────┘
Application flow
┌──────────────────┐
│ User on portal │
│ or Discord panel │
└────────┬─────────┘
▼
┌──────────────────┐
│ Requirements │ ← account age / server join / cooldown
│ check │
└────────┬─────────┘
▼
┌──────────────────┐
│ Form modal(s) │ ← multi-modal for 5+ questions
└────────┬─────────┘
▼
┌──────────────────┐
│ Bot posts in │
│ voting channel │
└────────┬─────────┘
▼
┌──────────────────┐
│ TEAM votes │
│ ✅ ❌ 🤔 │
└────────┬─────────┘
▼
┌──────────────────┐
│ Interview │ ─── DM with date
│ (optional) │ 30-min reminder
└────────┬─────────┘
▼
┌──────────────────┐
│ Final decision │
├──────────────────┤
│ Accept │ ──► user gets role(s)
│ Reject │ ──► DM with rejection
│ Archive │
└──────────────────┘
Voice-support flow
┌─────────────────────┐
│ User joins waiting │
│ room channel │
└──────────┬──────────┘
▼
┌─────────────────────┐
│ Within hours? │
├─────────────────────┤
│ Yes → continue │
│ No → DM "outside │
│ hours" │
└──────────┬──────────┘
▼
┌─────────────────────┐
│ Bot joins voice │
│ Plays hold music │
└──────────┬──────────┘
▼
┌─────────────────────┐
│ Bot posts case │
│ in notify channel │
│ Pings team roles │
└──────────┬──────────┘
▼
┌─────────────────────┐
│ Team member │
│ clicks CLAIM │ ──► team must be in voice
└──────────┬──────────┘
▼
┌─────────────────────┐
│ Bot creates │
│ support channel │ ──► in voiceSupport.categoryId
│ user + team only │
└──────────┬──────────┘
▼
┌─────────────────────┐
│ Both get moved │
│ into the channel │
└──────────┬──────────┘
▼
┌─────────────────────┐
│ Bot disconnects │
│ Hold music stops │
└──────────┬──────────┘
▼
┌─────────────────────┐
│ Support conversation│
└──────────┬──────────┘
▼
┌─────────────────────┐
│ Team clicks CLOSE │
│ Channel deleted │
│ Case archived │
└─────────────────────┘
Priority visibility
🔴 RED ROLES ┌─────────┬─────────┬─────────┐
see everything ─────────► │ 🟢 Green│ 🟠 Org.│ 🔴 Red │
└─────────┴─────────┴─────────┘
🟠 ORANGE ROLES ┌─────────┬─────────┐
see green ─────────► │ 🟢 Green│ 🟠 Org.│
+ orange └─────────┴─────────┘
🟢 GREEN ROLES ┌─────────┐
see only ─────────► │ 🟢 Green│
green └─────────┘
Configure roles under Sidebar → Tickets → Roles → Priority roles
Cache-refresh flow
PANEL BOT DB
───── ─── ──
Admin
│
│ saves setting
▼
┌──────────┐
│Auto-save │ ──── POST /api/config ───► ┌──────────┐
└──────────┘ │ writeCfg │
└────┬─────┘
│
┌──────UPDATE────────┘
▼
┌──────────┐
│guild_cfg │ ◄──── 15s setInterval
│table │ refresh
└────┬─────┘ │
│ │
└──────► ┌─────────────────┐
│ Bot in-mem cache│
│ updated │
└─────────────────┘
│
▼
Setting takes
effect in bot
Max latency: 15 seconds between panel-save and bot effect