We hope everyone had a wonderful Christmas and new year. We've been hard at work preparing the v2 beta, which is not far away now. In this final preview ahead of the beta, we look at improvements aimed at developers.
Version 1 was not the most developer friendly. While we had a fully functional REST API and single sign-on solution, it was difficult to extend the application beyond that. We are keen to allow developers to create useful tools and access more functionality that will help them create the perfect solution for themselves. Thus, in version 2, we've added a number of new features to achieve just that.
Version 2 introduces plugins. Plugins allow you to easily modify, and enhance ArcticDesk without changing the core program. Developing a plugin is relatively easy but requires knowledge of the PHP scripting language.
All plugins are governed by a small framework, allowing developers to amend settings and perform actions on activation, deactivation and uninstallation. Each installed plugin can then be managed via the operator panel. We will be releasing a HipChat notification plugin embedded with the stable release of version 2.
In an earlier preview, we mentioned that version 2 is built-in on top of the Laravel framework. One of the many handy features available in Laravel is model events
. These allow developers to hook into various points in the model lifecycle and execute code each time an event occurs.
A good example of using a model event is the HipChat plugin, which fires a notification when a new ticket is submitted to the helpdesk.
// Register ticket created event, which will fire a HipChat notification for new tickets
$auth = new OAuth2($this->settings['oauth_token']);
$client = new Client($auth);
$notify = new Notification($auth, $client, $this->settings);
Action hooks are therefore available for all models that we have, which covers most database tables.
When we first released version 1, we were aware that the channels of support were evolving and many customers would expect top class support over social media too. The software had built-in support for Twitter and Facebook, both of which have grown significantly in recent years.
In version 2, we have taken the concept of ticket channels further. Each channel now exists as an individual component, allowing the settings for each channel to be managed separately as well as providing a method to activate and deactivate channels as needed.
Why is this exciting? We believe it opens a wealth of possibilities for the future, as developers will be able to create their own channel. For example, if you primarily communicate with customers via Instagram you can create a channel to import tickets into ArcticDesk via their API. We will be expanding and documenting this further following the stable release.
We hope that developers are as excited as we are about the changes coming in the new version. This is our last preview as we are now preparing the public beta of version 2 for release. Keep an eye out for the announcement which will land towards the end of the month.