A ticket system in a Discord bot allows users to create and manage support requests within a Discord server. When a user creates a ticket, the bot generates a dedicated channel or thread where the user and support staff can communicate.

The system manages permissions, ensuring privacy and organization, and may include features such as:

  • Categorization
  • Automated responses
  • Logging
  • Notifications

This system streamlines the support process, making it more efficient and organized for both users and staff.

Commands

CommandDescriptionUsage
ticketaddAdd a user to a ticketticketadd <@user>
ticketremoveRemove a user from a ticketticketremove <@user>
ticketmodroleSetup ticket mod roleticketmodrole <@role>
ticketsetupSetup ticket systemticketsetup
ticketcategoryUpdate ticket categoryticketcategory <#category>
ticketeditEdit an existing ticketticketedit <ticketRefNo/Id>

Setting Up a Ticket System

1. Run the ticketsetup Command

  • Type ticketsetup in your Discord server and send the message.

2. Click the Setup Form Button

  • After running the command, a button labeled Setup Form will appear. Click this button to proceed.

3. Fill Out the Modal Form

  • A modal form will appear where you need to fill in the following details:
    • channelID: The ID of the channel where the ticket panel will be created.
    • managerRoleID: The role ID that will manage and access the tickets.
    • ticketPanelDescription: A brief description of the ticket panel.
    • ticketTitle: The title of the newly created ticket.
    • ticketDescription: A description of the ticket.

4. Click the Submit Button

  • After filling in all the details, click Submit to finalize the setup.

Once the setup is successful, users can start creating tickets using the configured system.


Adding a User to a Ticket

To add a user to a ticket or give them ticket access, use the ticketadd command.

Usage

ticketadd <@user>

Steps

  1. Identify the user you want to add to the ticket.
  2. Run the command inside the active ticket channel:
    ticketadd @username
  3. The mentioned user will now have access to the ticket.

Removing a User from a Ticket

To remove a user from a ticket or revoke their access, use the ticketremove command.

Usage

ticketremove <@user>

Steps

  1. In the relevant ticket channel, type:
    ticketremove @username
  2. The specified user will lose access to the ticket.

Adding a Ticket Category

To set up a ticket category where all tickets will be created, use the ticketcategory command.

Usage

ticketcategory <#category>

Steps

  1. Run the command with the appropriate category mention. Example: ticketcategory #SupportTickets
  2. Once confirmed, all new tickets will be created under this category.

Editing a Ticket Panel

To edit an existing ticket panel, use the ticketedit command.

Usage

ticketedit <ticketRefNo/Id>

Steps

  1. Run the command, replacing <ticketRefNo/Id> with the reference number or ID of the ticket panel.
  2. Fill in the modal form with the updated details:
    • channelID: Channel where the ticket panel is located.
    • managerRoleID: Role that manages tickets.
    • ticketPanelDescription: Updated panel description.
    • ticketTitle: New ticket title.
    • ticketDescription: New ticket description.
  3. Click Submit to apply the changes.

Adding a Ticket Mod Role

To assign a role the ability to manage tickets, use the ticketmodrole command.

Usage

ticketmodrole <@role>

Steps

  1. Type the command with the role mention. Example: ticketmodrole @SupportTeam
  2. Send the message.
  3. The specified role will now have permissions to manage tickets.