Skip to content
Axaro

Tickets

Live

One private channel per request, with transcript and archiving.

Panels

/ticket panel posts a message with a button in the current channel. Its title, its text and the button label are set from the dashboard.

A server may want several entry points — support, application, report. Each named panel carries its own category and its own team: the recruiting team sees applications without access to reports, and the other way round. Whatever a panel does not specify falls back to the module settings.

WhereWhat
DashboardCreate, name and set up a panel
/ticket panelPost the default panel
/ticket panel name:Post a named panel, with autocomplete
The button never expires. All the information it needs lives in its ID, so a panel posted six months ago keeps working after any bot restart. A panel deleted since then falls back to the default panel rather than leaving a dead button.

Opening a ticket

One click opens a form asking for the subject, then a private channel visible only to the requester and the staff roles. Permissions are set when the channel is created: a channel visible to everyone for even a fraction of a second would be enough to leak a private request.

  • Open tickets per person are limited, one by default.
  • The form can be turned off to open directly.
  • Numbering is readable and specific to the server.

Claiming and closing

Two buttons at the top of the channel: claim, for staff only, and close, open to the requester too. Making them wait for staff just to say “all good” would serve no purpose.

CommandEffect
/ticket panelPosts the panel in the current channel
/ticket closeCloses the ticket, with an optional reason
/ticket addGives one more member access to the ticket
/ticket removeRemoves that access

Transcripts and archiving

On closing, the conversation is exported as plain text and attached in the log channel. Plain text is deliberate: it reads anywhere, fits in an attachment, and cannot run a script if someone opens it later in a browser.

With an archive category set, the channel is moved there and the requester loses access. Without one, the channel is deleted a few seconds after closing.

Auto-closing after inactivity is off by default. When on, it restarts its countdown on every message and closes the ticket by itself once the delay has passed.
Discord ticket bot with transcripts · Axaro