Chapter 1. Introduction and installation

Introduction to Akeeba Ticket System

Akeeba Ticket System is a Joomla! 4™ help desk component. Users can be given permissions to create support tickets in one or more support categories.

Only the person who filed the ticket and specifically authorised users, called the support staff or “managers”, can reply to them. This is unlike a forum where anyone can reply.

Support tickets can be private or public. Private tickets are only visible to the user filing them and the support staff of this category. Public tickets are visible to everyone — but, still, only the user filing the support ticket and the support staff can reply to it.

Tickets can optionally have up to ten attached files. You can configure the attachments to have the same visibility as the ticket itself or always be treated as private. In the latter case only the user filing the support ticket and the support staff can see the attachments, even if the ticket itself is public.

All of that, including who can file public and private tickets and who can attach files, is controlled with the built–in Joomla permissions system, commonly referred to as the Joomla ACL.

Key features:

  • Native Joomla 4 component using the Joomla backend (MVC) and frontend (Bootstrap 5) frameworks with plain vanilla JavaScript.

  • Deep integration with the the Joomla Permissions a.k.a. Joomla ACL for fine grained access control.

  • Nested categories at an infinite depth, using Joomla's native Category management system.

  • Integration with Joomla Fields a.k.a. custom fields in Categories and tickets. Using standard Joomla ACLs you can create custom fields which are only editable and/or visible to just the support staff, the person filing the ticket or a combination thereof. You can even create sets of fields which only become editable when a manager changes the value of another field.

  • Integration with Joomla tags for tickets and users. You can use standard Joomla ACLs to make these tags only visible to the support staff.

  • Meaningful and predictable SEF URLs with automatic canonical URL redirection without the need for a third party SEF / SEO component, using the standard Joomla 4 component SEF router API.

  • Dark Mode support with our optional, free of charge DarkMagic plugin.

  • Custom module positions, allowing you to easily customise front-end pages.

  • You can turn off replies / new tickets with an optional message e.g. for holidays or planned maintenance periods.

  • Automatic HTML sanitation to prevent XSS exploits and other security issues using the third party HTMLPurifier library.

  • Private and public tickets.

  • Display user avatars using Gravatar or a Joomla field you have created in the user's profile on your site.

  • Display the user's country. The country information comes from a Joomla field you have created in the user's profile on your site.

  • Attachments support. Optionally make attachments only visible to and downloadable by the ticket owner and the support staff, even on public tickets.

  • User profile plugin. Users can set their signature for the ticket system and/or add email addresses their ticket replies should be CC'ed to.

  • Manager notes, for keeping private notes visible only to support staff.

  • Pre-filled new ticket body, customisable per support category, guiding the user to enter all the necessary information you need to help them.

  • Email notifications of new, replied to and edited tickets with customisable, HTML templates.

  • Receive new tickets or ticket replies via email.

  • Integrates with Smart Search, making public tickets searchable. You cannot search private tickets; Joomla's Smart Search does not allow excluding results based on the currently logged in user.

  • Automatically display Smart Search results or third party search engine results when the user files a new support ticket, reducing your support load. This can be used to implement an FAQ (Frequenty Asked Questions) functionality / knowledge base using standard Joomla articles — no need to reinvent the wheel!

  • Optionally allow guest tickets (tickets filed by users who do not yet have a user account on your site).

  • Saved replies ("canned replies") your support staff can easily use when replying to tickets.

  • Automatic replies based on rules including ticket age, who has replied to it, content etc.

  • Automation for common administrative tasks using either a real, CLI-based CRON system or by accessing a specific URL.

  • Custom ticket statuses when the default (Open, Pending and Closed) are not enough for your use case. Up to 99 additional ticket statuses are supported.

  • Time cards, i.e. how much time each member of the support staff has spent replying to tickets over a specific period of time.

[Important]Important

Some features are only available in the for-a-fee Akeeba Ticket System Professional edition. They are not present in the Akeeba Ticket System Core edition.

What Akeeba Ticket System is NOT

The term "ticket system" may mean different things to different people. Before we discuss what Akeeba Ticket System is not, let us explain the context in which Akeeba Ticket System is designed.

A ticket system, as implemented in Akeeba Ticket system, means that you have customers creating tickets in different categories. Each category typically represents a particular skill set, area of expertise or product your company or organisation offers support for. You have teams of support people for each of these categories. Any one of them can answer any ticket in the category. On most tickets only one person will handle each ticket and if they have to escalate they will assign it to someone more apt to the task, implemented by assigning the ticket to the other person.

If a ticket would only be visible to support staff if someone else (let's call them an "admin") assigned it to them then the support staff would not answer any tickets unless that "admin" went first and dispatched tickets. That's quite the opposite concept to a ticket system. If you need something like that stop looking for a support ticket system and start looking for CRM software.

Akeeba Ticket System is not a CRM, nor are we interested in making it possible to be used as a CRM. This design goal has some very important implications on what is and is not possible with Akeeba Ticket System:

  • You cannot have different administrative / concierge staff and support staff. If someone can assign tickets to someone else they can also themselves be assigned tickets and reply to them. Conversely, if someone can be assigned and reply to tickets they can also assign tickets to someone else.

  • You cannot have predefined escalation paths (workflows). The status of a ticket can be changed to any other status any time by any member of the support staff. Escalation paths (e.g. an Open ticket must first go to first level support before being tagged as "needs review by supervisor") is something that a CRM can handle and requires separate roles for the staff which, as we explained, is something that will not be implemented in ATS.

  • The support staff will see all tickets, NOT just the tickets assigned to them. They will see all open tickets with the Latest Open Tickets view, even if they are assigned to other members of the support staff.

  • Any member of the support staff can reply to any ticket, even if that ticket is assigned to a different member of the support staff. In our experience, when doing support you will frequently need the combined experience of two or more members of your support staff to handle complex cases.

  • You can see the total time spent on each client next to each client's username in one of their tickets. You cannot create a report to display the total time spent per user for multiple users or with specific parameters (e.g. date range or support categories). This information can, however, be pulled very easily from the database by querying the #__ats_tickets table.

  • You cannot handle client invoicing through Akeeba Ticket System. This is what a CRM sometimes does (and definitely what an invoicing application is designed to do).

  • You cannot have an FAQ / Knowledge Base inside Akeeba Ticket System. It makes no sense since Akeeba Ticket System runs inside Joomla which is in fact a Content Management System. Managing articles, what an FAQ / Knowledge Base is, is really what a CMS is designed to do. Implementing a CMS within a CMS would be a waste of effort if not completely pointless. Use Joomla's excellent content management features instead.

If you need any of the above features the Akeeba Ticket System is NOT for you. You would become frustrated with it and ultimately not be able to use it.

If you are unsure if something you want is possible please try using the free of charge Core version and/or ask us a pre-sales question. We always reply to pre-sales questions honestly. If your use case is not compatible with the existing features and / or design goals of Akeeba Ticket System we will tell you upfront. We prefer to lose a sale than having a frustrated user because we recommended that they use software unsuitable for their use case.