Helpdesk v1.0
Premium Staff Ticket & Help System. Web Panel, Private Chat & HelpOP


HelpDesk
Premium Staff Ticket & Help System. Web Panel, Private Chat & More.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Web Panel ◆ Private Chat ◆ Themes ◆ Discord ◆ Cross-Server ◆ Developer API
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
What HelpDesk Solves
Most servers handle player support over public chat, which is noisy, unorganised, and impossible to measure. Staff miss requests, players repeat themselves, and there is no way to know who actually helped, or how well.
HelpDesk fixes this. It turns support into a clean, private, ordered flow. A player sends one command, staff get a clickable alert, and the conversation happens in a private channel. When it is resolved, the player rates the staff member from 1 to 5, so you get real, measurable feedback on your team. And with the built-in staff web panel, your team can manage every ticket from the browser, with chat, history, stats, and custom themes.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Core Systems, with Every Module Independent
Each feature has its own toggle and settings. Everything can be fine-tuned without touching the rest.
◆ Ticket Flow
- One-Command Request
/helpdesk <message>creates a ticket instantly. Staff get a clickable alert with ACCEPT and MOVE buttons. - Private Channel The room is live from the moment the ticket is created, so the player can describe the problem while waiting and staff can reply before accepting.
- Chat Switching
/helpdesk chat <player>lets a single staff member handle several tickets at once;/helpdesk leavechatreturns them to the global chat. - Multi-Staff Rooms Several staff members can be in the same ticket chat at the same time, and participants are shown in the web panel.
- Ratings Resolved tickets prompt the player for a 1-5 rating, stored per ticket and aggregated into a staff leaderboard.
- Cooldowns Per-permission-group request cooldowns to stop spam.
◆ Staff Web Panel
- Token-Protected Self-hosted panel served by the plugin. Enter a token from the config; every API call is authenticated and rate-limited.
- Live Chat Open any ticket and chat with the player right from the browser, with auto-refresh.
- History & Stats Paginated history with status filter, search and sorting. Staff leaderboard with live ratings.
- Themes Drop a CSS file in
themes/<name>/and pick it in config. Themes can even ship their own HTML frontend. - Multi-Language English and Polish built in; the panel reads strings from editable
lang/web_*.ymlfiles.
◆ Staff Tools
- GUI Panel Paginated in-game inventory with pending tickets, accept actions, stats and refresh.
- History & Solve Browse ticket history with interactive solve buttons, clear solved tickets, and export everything to CSV.
- Auto-Close Pending tickets can be auto-closed after a configurable timeout.
◆ Integrations
- Discord Fully configurable webhook embeds for new tickets, no bot required.
- Cross-Server BungeeCord / Velocity support for network-wide alerts, channel chat and server switching (MOVE / BACK).
- Placeholders PlaceholderAPI expansion for scoreboards and holos.
- Economy Vault rewards for staff based on ratings.
- Prefixes LuckPerms prefix and suffix placeholders in messages.
◆ Data & Storage
- SQLite / MySQL Pick your database in config. Tickets and the full message history are stored.
- Migrations Built-in schema versioning so future updates upgrade your database in place.
◆ Developer API
- HelpDeskAPI Access via
HelpDeskPlugin#getApi():createTicket,acceptTicket,closeTicket,hasActiveTicket,getPendingTicketCount.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
How HelpDesk Compares
| Feature | HelpDesk | Manual / Basic Plugins |
| Private chat channel | Live from creation, multi-staff, chat switching | Public chat or none |
| Staff web panel | Chat, history, stats, themes, i18n, rate-limited | No panel |
| Performance feedback | 1-5 ratings + staff leaderboard | No measurement |
| Cross-server | BungeeCord / Velocity + server switching | Single server only |
| Integrations | Discord, PlaceholderAPI, LuckPerms, Vault | None |
| Storage | SQLite / MySQL with migrations | Flat files or none |
| Developer API | Public HelpDeskAPI | No API surface |
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Who This Is For
- Network owners & admins One system for every server, with cross-server alerts and a web panel for your whole team. See exactly who helps and how well.
- Survival & SMP servers Players describe their issue in a private channel while staff respond. No more support spam in global chat.
- PvP & Minigame servers Fast, private help for reports, questions and issues without breaking the flow of the game.
- Staff teams Multiple staff can join the same ticket, switch between chats, and track their own performance with ratings.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Technical Specs
| Server | Paper 1.21+ (tested up to 26.2), Java 21 |
| Dependencies | None. Everything works standalone. |
| Soft dependencies | PlaceholderAPI, LuckPerms, Vault, BungeeCord / Velocity, Discord webhook |
| Languages | en_US, pl_PL (extensible) |
| Storage | SQLite (default) or MySQL |
| Web panel | Built-in HTTP server, token auth, HTTPS-ready via reverse proxy |
| Analytics | bStats, optional, toggle in config |
◆ Commands
| Command | Description | Permission |
| /helpdesk | Create a ticket / send a channel message | helpdesk.use |
| /helpdesk accept | Accept a pending ticket | helpdesk.accept |
| /helpdesk chat | Switch the ticket chat channel | helpdesk.command.chat |
| /helpdesk leavechat | Leave the current ticket chat | helpdesk.command.leave |
| /helpdesk gui | Open the staff ticket panel | helpdesk.gui |
| /helpdesk close | Close your active ticket | helpdesk.command.close |
| /helpdesk rate <1-5> | Rate the staff after closing | helpdesk.rate |
| /helpdesk notify | Toggle staff notifications | helpdesk.command.notify |
| /helpdesk history [page] | View ticket history | helpdesk.command.history |
| /helpdesk stats | View staff rating statistics | helpdesk.command.stats |
| /helpdesk export | Export ticket history to CSV | helpdesk.command.export |
| /helpdesk check | Mark a ticket as solved | helpdesk.command.check |
| /helpdesk move | Move to a server from a ticket | helpdesk.move |
| /helpdesk back | Return to the previous server | helpdesk.command.back |
| /helpdesk clear_all / clear_solved | Delete all / solved tickets | helpdesk.command.clear.all / .solved |
| /helpdesk info / update / reload | Plugin info / check for updates / reload config | helpdesk.command.info / .update / .reload |
◆ Permissions
| Permission | Description | Default |
| helpdesk.command | Access to the main command | true |
| helpdesk.use | Create tickets and use the channel | true |
| helpdesk.rate | Rate the staff after closing | true |
| helpdesk.receive | Receive and read help requests | op |
| helpdesk.accept | Accept tickets | op |
| helpdesk.gui | Open the staff ticket panel | op |
| helpdesk.command.* | Admin/chat/history/stats/export/clear/reload… | op |
| helpdesk.cooldown. | Per-group cooldowns from config.yml | false |
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Get HelpDesk
Support is not a public chat problem. It is a workflow problem, and HelpDesk gives you a real workflow for handling it.
A private channel, a web panel, real ratings and one plugin.
Drop it into your plugins folder and it just works.
Questions? Open an issue on GitHub. Feature requests are reviewed.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Product Info
Statistics
11
Views
0
Purchases
0
Downloads
17.22 MB
File size
24.08.2026
Published
24.08.2026
Updated
Info
Server type
Supported software
Supported Versions
1.21 - 26.2
Share & Earn
Share and earn part of the profits, an estimated €0.4 per product sale.