Skip to content
RUHome

How it fits together

The panel is the storefront: the message with a button that members see. The category is how a ticket behaves. The server holds the defaults. One rule: if a category field is empty, the server value is used. This page answers the question “where did the bot get this value from”.

Server
defaults: staff, channels, limits, hours, texts
“Support” panel
the storefront: a message and a button
❓ Question💳 Payment
“Shop” panel
the same category — its own label
💳 Buy VIP🔁 Refund
“Payment” category
behavior: roles, permissions, form, buttons, hours, limits
Ticket #042
channel + record: number, author, status, who claimed, transcript
Two panels show the same “Payment” category — a ticket from either behaves the same. An empty category field is taken from the server.

Entities

Server
one record per Lolka server
  • · admins and staff (with per-section permissions)
  • · server limits (apply together with category limits), default support hours
  • · default channels: logs, transcripts, channel categories
  • · ticket numbering (digits in the number)
  • · action on close, auto-close, auto-delete
  • · blacklist, custom commands and the prefix
  • · system message texts and ticket button looks — shared by all categories
Panel
zero or more per server
  • · a message in a channel: text, embed, the “Open ticket” button
  • · style: one button / category buttons / command
  • · categories — which to show and in what order
  • · the category's label, emoji and color — its own for this panel
  • · a place in a multi-panel (one message for several panels)
Category
zero or more per server
  • · name, emoji, description, color, priority
  • · support roles, extra roles, roles for the author
  • · ticket channel permissions (the matrix), which buttons to show and who may press them
  • · the ticket welcome message, form questions; optionally its own texts and button looks instead of the server's
  • · where to create and where to move tickets, logs, transcripts
  • · limits, support hours, claiming, escalation, closing, channel name templates
Ticket
a channel + a database record
  • · number, author, panel (where it was opened), category
  • · status: open / closed / deleted
  • · priority, who claimed it, members
  • · form answers
  • · transcript
  • · action history

Relations

Panel → categories
How
The “Categories” tab on the panel page.
What matters
One category can sit in several panels — and behave the same everywhere. Each panel has its own label and emoji for the category. A panel always has at least one category: a new one gets “General”, and the last one can't be removed.
Ticket → panel
How
Which panel's button was pressed (or /ticket open [panel]).
What matters
Only the entry point: where the ticket came from. It doesn't affect behavior.
Ticket → category
How
A pick from the list or a category button; with one category in the panel it is picked automatically.
What matters
Defines all of the ticket's behavior: permissions, roles, messages, buttons, limits, channels, claiming.
Server → everything
How
Default values for any field the category doesn't set.
What matters
That's why /ticket setup gives a working system right away: you don't have to tune the topics from the set.

Which level sets what

The category is the unit of behavior: everything that happens in a ticket is set on it. The panel only controls how the entry looks. The server holds the defaults and what doesn’t belong to categories.

Support roles
Category
+ (union)
Server
+ (union)
Form questions, welcome message, bot messages, color, priority
Category
sets
Server
—
Channel permissions, ticket buttons and who presses them, channel name templates
Category
sets
Server
—
Where to create tickets / where to move closed ones
Category
sets
Server
default
Log and transcript channels, which events to log
Category
sets
Server
default
Action on close
Category
sets
Server
default
Per-user limit / total open
Category
sets
Server
its own, applies together with the category one; plus a global limit
Support hours
Category
its own or “off”
Server
default
Two-step / close confirmation, claiming, escalation
Category
sets
Server
—
Ticket numbering (digits in the number)
Category
—
Server
sets
Auto-close, author left, auto-delete, blacklist, prefix
Category
—
Server
sets
Admins, staff, web panel section matrix
Category
—
Server
sets
The look of the entry — the panel message’s text and embed, the “Open ticket” button, the style, category labels — is set by the panel. The panel doesn’t affect how an already open ticket behaves.

Where a value comes from

First the ticket’s category; if it’s empty, the server. An arrow means “if empty, look further”.

Support roles in a ticket

A union, not a choice
Server staff+ category roles

The lists add up: global staff see any ticket, and category roles are added on top. A category's extra roles see the channel but don't count as staff.

Form questions

CategoryNo form — ticket right away

If a category has no questions, the button creates a ticket in one press.

Ticket welcome message

Category (the “ticket” message)Default text

The welcome message is the face of the category, so it is set only there.

System messages and button looks

Category (if it sets its own)Server: “Texts and buttons”Default text

Closing, reopening, claiming, escalation, transcript, deletion, moderator actions and button labels are set once per server. A category shows what it overrides, and one button brings back the server version.

Where an open ticket’s channel is created

Category: “Where to create tickets”Server: category for tickets

The bot goes down the list to the first channel category that still exists on the server — a deleted one is skipped. On reopen the channel comes back by the same rule.

Where a closed ticket moves

Category: “Where to move closed ones”Server: archive categoryServer: category for tickets

Applies to the “archive” action. With “delete channel” the channel is deleted, but the ticket stays in the database and in the stats.

Action on close

CategoryServerArchive

Archive or delete the channel. “Reports” may want an archive, “Questions” deletion.

Logs: channels, events, transcript

Category (if it sets its own)Server: “Logs”Default: all events, the transcript is saved

Log and transcript channels, the event list and “save the transcript” are set once per server; a category can override any of the four separately. Nothing ticked in “What to log” on the server — the log is off; empty on the category — same as the server.

Open ticket limits

LimitFrom
Per userserver “Max tickets per user” and category “Open per person in this category” — both apply; 0 = no limit of its own
Total opencategory “Total open in this category”: when that many tickets of the category are open, no new one can be opened in it; 0 = no limit
Per serverserver “Global open ticket limit”; 0 = no limit
Per periodserver “Tickets per period per user”

All are checked in turn. The category’s and server’s “Roles that bypass limits” skip all of them. The check repeats when the form is sent, so opening the panel on two devices won’t get around a limit.

Ticket priority

Category priority (0/1/2 → low/medium/high; low for a new one)Medium — for a ticket without a category

It can be changed by hand later: /ticket priority or in the web panel.

Ticket embed color

Embed color in the category's “Messages” → “In the ticket”Server: “Texts and buttons” → “Default color”Brand color

Channel name

The category's template for the state (open / claimed / closed)Default: ticket-{number}-{user}

Claimed without its own template: “[staff]-” before the open name; on transfer only the nickname in brackets changes. Placeholders are in “Templates”. How many digits {number} has is a server setting.

Where things happen

Pressed the panel button
Who
Member
What changes
Checks: blacklist, limits, support hours. Then a category pick → a form or the channel right away.
Claim
Who
Staff
What changes
The staff member is recorded, the channel is renamed by the “claimed” template (without a template, [nickname] is added to the front of the name) and, if set up, moved to the claimed tickets category.
Close
Who
Author or staff
What changes
Transcript → transcript channel; the channel is archived or deleted; a log entry; status “closed”.
Reopen
Who
Staff (the author — if the category allows it)
What changes
The channel goes back to the open category, the buttons come back.
Escalation
Who
Staff
What changes
The ticket moves to another category: its permissions, roles, channel category, texts. The panel (where it came from) stays the same.
Auto-close
Who
Bot
What changes
A ticket with no messages for N hours closes like a normal one — with a transcript and a log entry. /ticket pause pauses it for one ticket.
Auto-delete
Who
Bot
What changes
Closed channels older than N days (or with N+ messages) are deleted; the ticket record stays.
A quick way to see how a particular ticket is set up: open its card in the web panel → “Tickets”. It shows the panel, the category, who claimed it and the form answers. Settings are in “Categories”.