Ticket
A ticket is a private channel with the author and staff plus a database record: number, panel, category, status, priority, who claimed it, form answers, transcript. Below is what happens at each step and who can do it.
Statuses
- Channel
- Exists, the author and staff write.
- Buttons in the channel
- Close · Claim/Unclaim · Add/Remove
- In stats
- open
- Channel
- Exists (archive): by the “Closed” column of the category matrix — by default the author can read but not write.
- Buttons in the channel
- Reopen · Delete · Transcript
- In stats
- closed
- Channel
- Deleted.
- Buttons in the channel
- —
- In stats
- closed (it has a close date)
Closing with the “delete channel” action puts the ticket straight into “deleted” — it still counts as closed in the stats.
Who is waiting for whom
For an open ticket the web panel shows whose turn it is — by the last message from a real person:
| Label | When |
|---|---|
| Waiting for us | The author or a member added to the ticket wrote last — or the ticket has no messages yet. |
| Waiting for author | A staff member replied last, in the channel or from the web panel. |
The bot’s system messages and actions like “claimed” don’t count as a reply. The label shows in the inbox and as the “Waiting” column in the table; the “Awaiting reply” filter is there too. A closed ticket isn’t waiting for anyone.
Opening
| Step | What happens |
|---|---|
| 1. Press | A panel button, a category button or /ticket open [panel]. |
| 2. Checks | The blacklist (by user and by role), the category's “Who can't open”, the per-user limit, the category limit, the per-period limit, the global limit, support hours. “Bypass” roles skip the limits; admins and staff pass “Who can't open” and the hours. |
| 3. Category | One category in the panel — no pick, the ticket goes straight into it; 2+ — a drop-down (or a category button with the “category buttons” style). |
| 4. Form | The category's questions → no form. The checks from step 2 repeat when the form is sent. |
| 5. Channel | Created by the name template in the channel category (category → server) with permissions from the category matrix. The first message is the welcome with the “Author” and “Category” fields; the form answers are the second card of the same message. |
| 6. Log | The “opened” event in the log channel; a notification in the web panel. |
A ticket for a member: staff open a ticket on behalf of another person — /ticket open member:@member or “+” above the ticket list in the web panel (member and category). The author is the member; they see the channel as if they had opened it themselves. Steps 2 and 4 are skipped: limits, the blacklist, hours and the form are for the member themselves, and here staff decide. The ticket description and history show who opened it.
The counter is per server, not per panel: numbers don't repeat across panels.
Claiming and transferring
Available if the ticket’s category has “Tickets can be claimed” on. Staff (server and category roles) can claim tickets.
- How
Claim,/ticket claimor the staff member’s first message if the category has “First to reply claims” on- Effect
- The staff member is recorded on the ticket; the channel is renamed by the “claimed” template; if set up, it's moved to the claimed category and the staff member gets a role for the ticket's duration; a “Claimed” message in the channel.
- How
Unclaimor/ticket unclaim- Effect
- Only the claimer can unclaim. The name and category go back to “open”.
- How
/ticket transfer @staff- Effect
- The ticket goes to another staff member (staff only). A claimed ticket is transferred by the claimer or an admin. The channel name follows the “claimed” template; without a template only the [nickname] label changes. A free ticket becomes claimed on transfer.
- How
/ticket private- Effect
- The category's support roles and extra roles stop seeing the ticket: the claimer, whoever turned it on, members and server admins remain. The same command makes it visible again. The web panel follows the same rule: only they see the ticket, its conversation, note and transcript, and the transcript doesn't go to the shared transcript channel.
- How
/ticket escalate [category]- Effect
- The ticket moves to another category: its permissions, roles, channel category, texts. The source category must allow escalation; from the web panel — to any category.
“Claimer only writes” (category → Behavior → Claim): while the ticket is claimed, other staff read it but can’t write. Unclaimed or transferred — the permissions follow.
Replying from the web panel
In the inbox (Web panel → Tickets, “Inbox” mode — the default; next to it is a switch to the table) there’s a reply box under the conversation of an open ticket: Enter — send, Shift+Enter — new line. The message appears in the ticket channel in the staff member’s name — with their nickname and avatar, as if they had written it themselves. Technically it’s the channel’s webhook, so the bot needs the “Manage webhooks” permission; /debug shows what’s missing. You can’t reply to a closed or deleted ticket.
So the author doesn’t wonder where the reply came from, “· from web” is added to the name in the channel — it can be turned off: Settings → General → “Replies from the web panel”. In the panel itself and in the ticket conversation such a reply is always marked “from web”.
A staff member sets their own nickname and picture for panel replies: “Edit” under the reply box. The picture is a link (https://…), the bot doesn’t store it; links to pictures from Lolka messages live for about a day, so it’s better to take a picture from another site. Empty fields — as in the Lolka profile. The server can also reply in its own name: Settings → General → “Whose name web panel replies use” → “As the server” — then the channel shows the server’s name and icon. The platform doesn’t allow the word “Lolka” in such a name — the bot cuts it out (“Lolka RU” → “RU”), and the panel won’t save a nickname with it. Who actually replied is always visible in the panel and the transcript.
The paperclip next to the box attaches files — up to 4 per reply, up to 8 MB each, 25 MB in total; a screenshot can simply be pasted from the clipboard (Ctrl+V). Text with a file is optional. The bot doesn’t store files: they go straight to the ticket channel, and the conversation keeps a Lolka link.
Your own web panel reply can be edited or deleted — the pencil and bin on the message, while the ticket is open. Only the text can be edited; files stay. A deleted reply disappears from the channel and the conversation; the log channel keeps a deletion entry, as for any ticket message.
To the left of the box is the snippets button: the same reply templates as /reply, with the number, author and subject already filled in. The chosen text is appended to the draft — you can adjust it before sending.
The inbox conversation is live: messages from the channel, their edits and deletions show up right away, without closing the ticket.
Unread: an open ticket in the inbox list has a blue counter of new messages you haven’t seen yet (your own, bot messages and events don’t count). Opened the ticket — it’s read. Each staff member has their own marker, shared across all their devices.
Bulk actions
In table mode you can tick several tickets — a bar appears at the bottom: claim, close, reopen, change priority, delete channel, erase. The buttons, except “Erase”, have a counter: the action applies only to the selected tickets it fits — closed ones won’t be closed a second time. “Erase” applies to all selected and is admin-only. Deleting channels and “Erase” ask for confirmation.
Managing in the channel
- How
/ticket prioritylow / medium / high- Who
- Staff
- How
Addor/ticket add name. In a closed ticket the member gets the same permissions as the author (usually read-only); on reopen they can write again- Who
- Staff
- How
Removeor/ticket remove @user- Who
- Staff
- How
/ticket rename [name]- Who
- Staff
- How
Note- Who
- Staff
Staff note
A ticket has one note — for the team: what to check, what was agreed, who to hand it to. The ticket author doesn’t see it, and it doesn’t go to the channel, the transcript or the feed.
In the ticket channel there’s a Note button on the welcome message. No note yet — a form opens; there is one — the bot shows it in a hidden message (only the presser sees it) with “Edit” and “Delete” buttons. Any staff member can edit and erase it; the bottom shows who saved it last and when. Everyone else, including the ticket author, gets a refusal.
The same note is in the web panel: Tickets → inbox → the right column “Staff note”. The “Note” button can be renamed, given another emoji and color, turned off or limited to some roles; the labels, emoji and colors of “Edit” and “Delete” are there too: category → Buttons. The note is erased together with the conversation by the retention period and when the ticket is deleted.
Author history
The past tickets of whoever opened this one are visible right away, without searching. In the web panel: Tickets → inbox → the right column “Author history”: how many tickets the person has, how many are open and closed, the average rating and the last 10 tickets with status, subject, category, dates and rating; “Show more” — up to 50. Click a ticket — it opens in the inbox. A person’s first ticket is labeled “The author’s first ticket”.
In the ticket channel /ticket history shows the same as a hidden reply. Private tickets in the history are visible only to those who see them in the list.
Closing
- Author
- Button → reason → confirmation → closed.
- Staff
- Same.
- Author
- Button → closed.
- Staff
- Same.
- Author
- Button → a close request that pings staff.
- Staff
- Approve / decline the request; close directly themselves.
What happens on close, in order:
- •Roles and the voice channel: “during the ticket” roles and the claimer's role are removed, “after closing” roles are given; the ticket's voice channel is closed.
- •Transcript, unless turned off (Logs → “Save the transcript on close”): HTML of the whole conversation → the transcript channel (category → server; not set — the log channel, if “Transcript” is logged) and the web panel. If it couldn't be built, the channel isn't deleted but archived. To DMs — not yet: Lolka doesn't deliver direct messages from bots.
- •Log: the “closed” event with the reason; the status and close date in the database.
- •Channel: by the action on close (category → server) — “archive” (rename by the “closed” template, move to the closed category, take away the author's right to write — or apply the “Closed” column of the category matrix) or “delete channel”.
- •Buttons: in the archived channel — “Reopen”, “Delete”, “Transcript”.
- •Rating: if on — a question to the author in the archived channel (see below).
Automatic closing
- Setting
- Settings → General → Auto-close
- Behavior
- Every 15 minutes the bot checks open tickets; it closes them as staff would — with a transcript and a log entry. Bot messages and events don't extend a ticket; anything written while the bot was unavailable is read before closing. A single ticket can be paused — /ticket pause (1 hour / 1 day / 1 week / indefinitely), resumed with /ticket resume.
- Setting
- Settings → General → “The author left the server”
- Behavior
- All the author's open tickets close the same way.
Rating after closing
Turned on in Settings → Ratings (for the whole server) or in the category’s “Behavior” — a category can set its own. After closing into the archive the bot posts “please rate how we helped you” in the ticket channel, mentioning the author, with buttons: stars from 1 to 5 or 👍 / 👎.
- •Only the author can press; others get a refusal only they can see.
- •After rating, a window for a comment opens (optional, up to 500 characters). Closed the window — a “Leave a comment” button stays under the message.
- •The rating goes to whoever claimed the ticket, otherwise to whoever closed it. If nobody claimed it and the author or auto-close closed it — to whoever replied first; nobody replied — to no one.
- •You can't re-rate. Reopened and closed again — you can rate anew.
- •Reviews channel (optional): each rating is posted there, and the comment is added to the same post.
- •In the web panel the rating and comment show in the ticket details and in the event feed.
If the channel is deleted on close, no rating is asked: there’s nowhere to ask. Need both a rating and deletion — archive, and let auto-delete of closed channels remove it. The question text and the “thanks” are in “Texts and buttons”, along with the button labels, color and emoji, including the server’s custom emoji.
Reopening
The “Reopen” button in the archived channel — staff; the author, if the category has “The author can reopen the ticket” on. The channel goes back to the open category by the same chain as on creation, is renamed by the “open” template, the author gets the right to write back (or the “Open” column of the matrix), and the message with buttons comes back. The claim is removed. An author reopening on their own passes the same checks as on opening: the blacklist and open limits (not the per-period limit). Form answers aren’t duplicated — they stay in the channel history.
Deleting
| How | What stays |
|---|---|
Delete in the archived channel | The ticket record and the transcript — in the web panel; the channel is deleted. |
/ticket delete (admins) | The channel is deleted right away, without a transcript; if there already was a transcript, it's removed from “Transcripts”. The ticket record stays with the “deleted” status. |
| Auto-delete | Closed channels older than N days (or with N+ messages) are deleted on schedule; the records stay. See Server settings. |
| “Erase” in the web panel (admins) | The ticket record, conversation, note and transcript are erased entirely; if the channel still exists, it's deleted first. Irreversible. |
The “Transcript” button
In the archived channel, for staff and the ticket author. By default only the presser gets the HTML file — as a hidden message others don’t see. In the server settings (“General” → “The Transcript button”) you can bring back the old behavior: the file as a message in the ticket channel, for everyone who sees the channel. If Lolka didn’t accept the hidden file, it goes to the channel. If that fails too, the presser gets a link to the transcript in the web panel.
