-
-
Notifications
You must be signed in to change notification settings - Fork 202
Commands
Commands are divided into staff commands (used in the staff group) and user commands (sent directly to the bot). All command response text is configurable via language strings.
Staff commands are used by replying to a specific ticket message in the staff group, except where noted.
| Command | Usage | Description |
|---|---|---|
/open |
Send alone in staff chat | Lists all currently open tickets (messages that have not yet been replied to) |
/close |
Reply to a ticket | Manually closes the referenced ticket. Also unbans the user if they were banned. Use when auto_close_tickets is disabled and you want to close without replying. |
/reopen |
Reply to a closed ticket | Reopens a previously closed ticket so it can receive further replies |
/clear |
Send alone in staff chat | Closes all open tickets silently — no "ticket closed" notification sent to users. Useful during migration or upgrading. |
| Command | Usage | Description |
|---|---|---|
/ban |
Reply to a ticket | Bans the referenced user from sending new messages to the bot. The ban persists until the user is unbanned or the ticket is closed with /close. |
/unban |
Reply to a banned user's ticket | Removes an existing ban, allowing the user to message the bot again |
| Command | Usage | Description |
|---|---|---|
/assign <telegram_id> |
Reply to a ticket or send alone | Assigns the referenced ticket to a specific staff member by their Telegram ID. The assigned member receives notifications for that ticket. Can also be triggered via inline callback button on tickets when staff_roles is configured. |
/unassign |
Reply to an assigned ticket | Removes the current assignment, returning the ticket to the general pool. All staff can see and respond again. |
/tag <tag_name> |
Reply to a ticket | Adds a tag to the referenced ticket for filtering and organization (e.g., /tag billing, /tag bug). Multiple tags can be applied. |
/untag <tag_name> |
Reply to a tagged ticket | Removes a specific tag from the ticket. |
/priority <level> |
Reply to a ticket | Sets the ticket priority level. Accepted values: low, normal, high, urgent. Priority is displayed with colored icons in staff chat. Defaults to normal if not set. |
| Command | Usage | Description |
|---|---|---|
/templates |
Send alone in staff chat | Lists all canned_responses keys defined in the config. |
/<key> |
Reply to a ticket | Sends the canned response with that key to the user as a normal staff reply (e.g. /shipping). Keys are single words and must not clash with built-in commands. |
| Command | Usage | Description |
|---|---|---|
/note <text> |
Reply to a ticket | Adds an internal note visible only to staff members (not forwarded to the user). Useful for private team discussion about a ticket. |
/notes |
Reply to a ticket | Lists all internal notes attached to the referenced ticket. |
!note <text> or !internal <text>
|
Prefix in reply text | Alternative way to add an internal note — prefix your reply with !note or !internal. The text after the prefix is stored as a staff-only note rather than being sent to the user. |
| Command | Usage | Description |
|---|---|---|
/id |
Send alone in staff chat | Returns your Telegram user ID and the group chat ID (format: 1234567 -1234567890). Useful for obtaining IDs needed during configuration. |
/staff |
Send alone in staff chat | Lists all configured staff members with their roles (admin, supervisor, agent) and names from the staff_roles config section. |
/stats |
Send alone in staff chat | Shows support analytics: ticket counts, average response and resolution time, per-agent stats and CSAT score. Requires enable_csat: true for rating data. |
/links |
Send alone in staff chat | Shows direct support links for each configured category (language.links). |
| Command | Usage | Description |
|---|---|---|
/mute |
Reply to a ticket | Mutes notifications for the referenced ticket — suppresses staff chat alerts for new messages on this ticket. The ticket remains open and can still be replied to. |
/unmute |
Reply to a muted ticket | Re-enables notifications, restoring normal alert behavior for the ticket. |
Closing a resolved ticket:
Staff member replies to user's ticket message with: /close
→ Ticket is marked as closed and unbanned (if banned)
→ User receives "Your ticket was closed by our staff" notification
Banning an abusive user:
User sends inappropriate message → forwarded to staff group
Staff member replies with: /ban
→ User's subsequent messages are blocked until unbanned
Reopening a ticket for follow-up:
Ticket was auto-closed after first reply, but user needs more help
Staff member replies to the closed ticket with: /reopen
→ Ticket is reopened and can receive further replies
Assigning and tagging a high-priority ticket:
New VIP customer ticket arrives in staff chat
Staff replies: /assign 123456789 → assigns to specific agent
Staff replies: /priority urgent → marks as urgent with visual indicator
Staff replies: /tag enterprise → adds organizational tag for filtering
Users send these commands directly to the bot on Telegram. All response text is configurable via language strings.
| Command | Description | Configurable String |
|---|---|---|
/start |
Initializes conversation with the bot. Shows a welcome message and prompts the user to ask their question. Also triggered automatically when a user first messages the bot. | language.startCommandText |
/help |
Displays available commands and brief usage explanation for end users. When used by staff in the group chat, shows extended help including all staff commands. |
language.helpCommandText (user) / language.helpCommandStaffText (staff) |
/faq |
Shows frequently asked questions or a custom message defined in configuration. Often used to provide a link to documentation or an external FAQ page. | language.faqCommandText |
/id |
Returns the user's Telegram (or Signal) id and, in a group, the group chat id. | — |
All command responses and system messages are fully customizable. See Configuration → Language Strings for the complete list of ~50 configurable strings, including:
- Welcome messages (
startCommandText) - Help text (
helpCommandText,helpCommandStaffText) - Ticket status notifications (
ticketClosed,ticketReopened,banned) - Spam warnings (
blockedSpam) - Private chat messages (
prvChatOpened,prvChatEnded) - Reply salutations and sign-offs (
dear,regards,regardsGroup) - CSAT survey strings (
csatRatingRequest,csatThankYou) - Assignment notifications (
ticketAssignedTo,ticketUnassigned,assignedBy) - Internal note labels (
internalNote,noteAddedBy) - Business hours messages (
offlineMessage,businessHoursClosed) - Escalation alerts (
escalationNotify)
Please tell me if something is missing in this guide or should be added — open an issue on GitHub.
Home · Getting Started · Configuration · Commands · Categories · Auto-reply and AI · Addons · Markdown · Troubleshooting · Upgrading