Contents
- Ticket System
Ticket System
The Levlix ticket system provides a structured, thread-based support workflow directly inside Discord. Every ticket is a private thread where members can communicate with staff. Tickets are numbered, categorized, prioritized, and logged, giving your team complete control over support operations.
Quick Start
- Run
/ticket-admin enable channel: #ticketsto activate the system. - Add staff roles with
/ticket-admin staffrole role: @Support action: Add. - Deploy a button panel with
/ticket-admin panel channel: #support. - Members click the button or use
/ticket createto open a ticket.
Setup and Configuration
All configuration is done through the /ticket-admin command group. Administrator permission is required.

Enabling the System
/ticket-admin enable channel: #tickets
This activates the ticket system and sets the parent channel where ticket threads will be created. To disable:
/ticket-admin disable
Staff Roles
Staff roles grant access to ticket management commands. Members with Manage Messages permission or the Administrator permission are automatically considered staff, but you can add additional roles:
/ticket-admin staffrole role: @Support Team action: Add
/ticket-admin staffrole role: @Old Role action: Remove
View Current Configuration
/ticket-admin show
Displays the full configuration including status, ticket channel, staff roles, ping settings, auto-ticket settings, max open tickets, transcript channel, and current ticket statistics.
Configuration Options
| Setting | Command | Description |
|---|---|---|
| Enable/Disable | /ticket-admin enable / disable |
Turn the ticket system on or off |
| Staff Roles | /ticket-admin staffrole |
Add or remove staff roles |
| Staff Ping | /ticket-admin ping enabled: True |
Ping staff when a new ticket is created |
| Max Open Tickets | /ticket-admin maxopen limit: 3 |
Maximum open tickets per user (0 = unlimited) |
| Transcript Channel | /ticket-admin transcript channel: #logs |
Channel where closed ticket transcripts are posted |
| Auto-Ticket on Case | /ticket-admin autocase enabled: True |
Automatically create a ticket when a moderation case is opened |
Ticket Panels
Panels are persistent embeds with a "Create Ticket" button that members can click at any time. They survive bot restarts and remain functional indefinitely.
Deploying a Panel
/ticket-admin panel channel: #support title: "Need Help?" description: "Click the button below to open a support ticket."
The panel is sent as an embed with a green "Create Ticket" button.
Managing Panels
/ticket-admin panels
Lists all deployed panels with their IDs, channels, and categories.
/ticket-admin removepanel panel_id: 1
Removes a panel by ID and deletes the associated Discord message.
You can deploy multiple panels in different channels for different purposes, such as one in
#general-supportand another in#ban-appeals.
Ticket Categories
Categories let you organize tickets by topic and route them to the appropriate staff. When categories exist, members choose a category before describing their issue.
Creating a Category
/ticket-admin addcategory name: "Bug Report" emoji: "bug" description: "Report a bug or technical issue" welcome_message: "Thank you for reporting a bug. Please describe the steps to reproduce the issue."
| Parameter | Required | Description |
|---|---|---|
name |
Yes | Category name shown to users |
emoji |
No | Emoji displayed on the category button |
description |
No | Short description shown in the selection menu |
welcome_message |
No | Custom message sent when a ticket of this category is created |
Listing Categories
/ticket-admin categories
Removing a Category
/ticket-admin removecategory name: "Bug Report"
Example setup:
| Category | Emoji | Welcome Message |
|---|---|---|
| General Support | 💬 | "We'll respond as soon as possible." |
| Bug Report | 🐛 | "Please include steps to reproduce." |
| Appeal | ⚖️ | "Include your case number if available." |
| Partnership | 🤝 | "Tell us about your community." |
User Commands
These commands are available to all server members.
Creating a Ticket
/ticket create
Opens a modal where the user enters a subject and description. If categories are configured, the user selects a category first. Optionally, up to 5 file attachments can be included.
Restrictions: - The user must not be blacklisted. - The user must not exceed the maximum open tickets limit.
Closing a Ticket
/ticket close reason: "Issue resolved"
Can be used by the ticket opener or any staff member. The reason parameter is optional. When closed, the thread is archived and a transcript may be posted to the configured transcript channel. The member receives a DM with a star rating prompt (1-5 stars).
Staff Commands
These commands require the Manage Messages permission, Administrator permission, or a configured staff role.
Viewing Open Tickets
/ticket list
/ticket list user: @Username
Shows all open tickets, optionally filtered by user. Displays ticket number, subject, opener, claimed staff, and creation time.
Adding or Removing Users
/ticket add user: @Helper
/ticket remove user: @Helper
Adds or removes a member from the ticket thread. Useful for bringing in additional staff or removing users who are no longer needed.
Reopening a Ticket
/ticket reopen
Reopens a closed ticket. Must be used inside the ticket thread.
Setting Priority
/ticket priority priority: High
| Priority | Use Case |
|---|---|
| Low | General questions, non-urgent requests |
| Normal | Standard support requests (default) |
| High | Issues affecting multiple users or requiring prompt attention |
| Urgent | Critical issues requiring immediate staff response |
Blacklisting Users
/ticket blacklist user: @Troll action: Block reason: "Abusing ticket system"
/ticket blacklist user: @Troll action: Unblock
Blocked users cannot create new tickets. The reason is logged for staff reference.
Snippets
Snippets are pre-written response templates that staff can send inside ticket threads. They save time on frequently asked questions and ensure consistent answers.
Creating a Snippet
/snippet add name: "refund-policy" content: "Our refund policy allows returns within 14 days of purchase. Please provide your order number."
Sending a Snippet
/snippet send name: "refund-policy"
The snippet content is sent as a regular message in the ticket thread, attributed to the staff member.
Managing Snippets
/snippet list
/snippet delete name: "refund-policy"
SLA Status Indicator
Deployed ticket panels automatically display a live status indicator showing current response times:
| Indicator | Meaning |
|---|---|
| Green | Fast responses, under 15 minutes |
| Yellow | Moderate traffic, 15-60 minute wait |
| Red | High volume, over 1 hour wait |
| Night Mode | Staff offline, custom message displayed |
The indicator updates every 10 minutes based on actual response data from the last 14 days.
Moderation Integration
When autocase is enabled, creating a moderation case (warn, mute, kick, or ban) automatically opens a ticket linked to that case. The affected member is added to the thread, giving them a private channel to discuss the action or file an appeal.
This creates a documented appeals process with full transcripts and accountability.
Web Dashboard Management
Log into your Levlix Dashboard and select your server to manage tickets visually:
- Ticket Queue: View all open and closed tickets with search and filtering
- Close Tickets: Resolve tickets directly from the browser
- Statistics: Track open count, today's tickets, 30-day averages for response time, resolution time, and satisfaction ratings
- Settings: Configure all options without commands
- Categories: Create and manage categories
- Panels: Deploy and remove ticket panels
Context Menu Commands
Right-click on any user in Discord to access ticket-related actions:
- Check Tickets - View a user's open tickets and ticket history (requires Manage Guild permission)
Admin Configuration Reference
| Command | Description |
|---|---|
/ticket-admin enable <channel> |
Enable tickets and set the thread parent channel |
/ticket-admin disable |
Disable the ticket system |
/ticket-admin staffrole <role> <action> |
Add or remove a staff role |
/ticket-admin transcript <channel> |
Set the transcript logging channel |
/ticket-admin ping <enabled> |
Toggle staff pings on new tickets |
/ticket-admin maxopen <limit> |
Set max open tickets per user (0 = unlimited, default: 3) |
/ticket-admin autocase <enabled> |
Auto-create tickets when mod cases are created |
/ticket-admin show |
Display all current ticket settings |
/ticket-admin panel <channel> [title] [description] |
Deploy a ticket creation panel |
/ticket-admin panels |
List all deployed panels |
/ticket-admin removepanel <panel_id> |
Remove a deployed panel |
/ticket-admin addcategory <name> [emoji] [description] [welcome_message] |
Create a ticket category |
/ticket-admin removecategory <name> |
Delete a category |
/ticket-admin categories |
List all categories |
Permissions Reference
| Action | Required Permission |
|---|---|
| Create a ticket | Any member (unless blacklisted) |
| Close own ticket | Ticket opener |
| Close any ticket | Staff role, Manage Messages, or Administrator |
| View ticket list | Staff role, Manage Messages, or Administrator |
| Add/remove users | Staff role, Manage Messages, or Administrator |
| Reopen a ticket | Staff role, Manage Messages, or Administrator |
| Set priority | Staff role, Manage Messages, or Administrator |
| Blacklist users | Staff role, Manage Messages, or Administrator |
| Manage snippets | Staff role, Manage Messages, or Administrator |
| Configure system | Administrator |
Important Notes
- Ticket threads are private. Only the opener, staff, and explicitly added users can see the thread.
- Panels are persistent. They survive bot restarts and continue functioning.
- Auto-close silently closes tickets that have been inactive for the configured duration. Staff and the opener are notified in the thread before closure.
- Transcripts are optional. Configure a transcript channel to enable them. Transcripts include the full conversation history.
- Night mode can be enabled to display a custom message during off-hours, informing users that responses may be delayed.
- Feedback is collected after ticket closure. Members can rate their support experience, and staff can review ratings for quality assurance.