In version 2.0.0 of MinervaKB, a new feature was introduced – support tickets. This guide will briefly describe all the main parts of this new subsystem.
Why adding the ticketing system?
Initially, our plugin consisted only of Knowledge Base. It worked well for most cases, but many people were asking about FAQ. So we’ve added the FAQ because in itself it’s a small, but very useful feature, and it’s a pity people have to buy a separate plugin for this and integrate it with the KB page. The same later happened with Glossary.
Compared to FAQ and Glossary the Ticketing System is a big deal – it requires much more code, much more design and planning, and testing. The main reason for this is it has specific workflows and these workflows are different from the typical WordPress scenario – write, choose a category, publish. Then there are different user types – agents, customers, managers, all with different capabilities, user registrations, custom email notifications, etc.
Usually, we don’t try to stuff as many features to our plugin as possible. If there are some SEO features required, it’s better to make the plugin compatible with the best existing SEO plugins, same goes for multilingual features, caching, and so on.
But for the ticketing system, we’ve decided to make our own. Here are some of the main reasons.
- It was requested by many customers
- There are many possible integrations between KB, FAQ, and Tickets:
- KB articles can be inserted in ticket replies
- Ticket replies can be saved as draft KB articles / FAQ answers
- We can show KB/FAQ suggestions when customer is creating a ticket (not yet included)
- When using with WooCommerce we can display customer tickets and recently visited articles in the same Support tab
- We can add the Create Ticket widget to all KB pages – topics, articles, the home page, etc. and track from which page the customer decided to open a ticket. This can provide insight into which KB sections need improvement.
- We can precisely control admin access. For example, we can set default capabilities for Support Agents for KB and FAQ – they can create new entries, but not publish them or assign categories.
- We can share the same UI elements across all subsystems, such as attachment styles, tips/warnings, form styles, search, etc. This creates a much better user experience.
- We can share the same settings and templates for email notifications for KB and Tickets.
Ticketing System Features
As of version 2.0.0, our ticketing system provides the following features:
Guest Tickets – allows creating a form for any site visitor to submit a ticket. You can use it as a replacement for the contact form for questions of all kinds.
User Tickets – allow you to create a user ticket form and specify which existing user roles are allowed to open tickets. For example, you can allow only WooCommerce Customers to open support tickets.
Support User Registration – you can display a form to register new users. Optionally you can enable moderation for all new accounts.
Built-in User Roles – we provide 3 user roles: Support User, Support Agent, and Support Manager, with different capabilities for each role.
Support Account Page – a set of shortcodes to create a home page for support users, such as create ticket form, logout, and user tickets list.
Support Account widget is also available.
Tickets Dashboard – admin dashboard with multiple widgets, that show all the tickets, statuses, and other ticket information.
Ticket Taxonomies – Type, Department, Product, Priority, and Tags, which allow you to categorize incoming support requests.
Email Notifications – a set of email HTML templates for each step of the ticket lifecycle – creation, new replies, assigned change, etc.
Canned Responses – you can create and insert snippets of text.
Insert FAQ or KB Article – allows you to insert a published knowledge base article or FAQ answer into a reply if you think the solution to the issue is described there.
Save Reply as KB/FAQ/Canned Response – allows agents to save detailed replies as drafts for KB articles or FAQ answers. These drafts can be later edited and published by users with higher priority roles, such as Editor or Admin.
Form Editor – allows changing all labels and descriptions for forms, such as Create Ticket, Login, and Register forms. You can also rearrange fields and add new ones.
Ticket Attachments – you can configure how many files and of which type can be attached to replies.
We also provide separate allowed files (number, extensions, and size) configurations for agents, users, and guests.
Ticket Credentials – allows end-users to submit credentials related to issue, such as site login/password.
Credentials may be deleted by the user from the client-side at any time and are cleared automatically once the ticket is closed.
Of course, many of the planned features were not included in the initial version. We plan to add the following in the future:
- Advanced Tickets list in admin – with filters, search and sorting
- Tickets automation – assign labels and perform other actions depending on ticket parameters.
- Custom fields – save additional attributes from the Create Ticket form.
- Email piping – convert incoming emails to tickets
- KB Search suggestions on the create ticket form
- Support user permissions editor – a user-friendly way to edit permissions and capabilities related to KB, FAQ, and tickets.
- Feature Requests – a centralized list for all requested features, which can be optionally displayed on the client-side with customers voting for features.
Of course, feel free to send us your feedback and feature requests via our create ticket page: Open new ticket.