HaloPSA Roadmap
Find out about all the exciting, up and coming developments in HaloPSA
In Progress
Microsoft Azure billing Integration
Integrate with Azure for consumption billing data to be imported to Recurring Invoices
Azure consumption billing
Import billing data from Azure for automating invoice creation
PandaDocs Integration
Integration with PandaDocs to push Quote data into PandaDocs documents and allow PandaDocs to handle sign-off of documents
Lighthouse Integration for Windows Defender
Integration with Microsoft Lighthouse for handling alerts created through Defender
UI Improvements to AI Suggestions
Embed AI Suggestions onto Problem/Resolution Finder within the Agent application, in order to make Suggestions/Corrective Actions simpler and more prominent.
CSP and Office 365 automation
Approval processes to automatically create users/assign licenses and update license amounts in Office365 via Azure/CSP/Pax8 and other vendors APIs
Google Workspace multiple tenanted
Google Workspace integration to allow multiple tenants to be integrated simultaeously
AWS Billing integration
Import billing data from AWS for automating invoice creation
Up Next
Go Cardless Integration
Allow customers to make payments or setup recurring payments using GoCardless
Google Maps & Agent Lookup
Adding functionality to track all active agents on Google Maps.
Bulk/Marketing email function
A new area of Halo to send mass/bulk emails to email lists that are created using the report builder
Sentinel One Integration
Handle alerts created from Sentinel One
Future
Microsoft Lighthouse Integration
Integration with Microsoft Lighthouse for management of customer tenants
Telnyx Integration
SMS integration to allow sending and receiving of SMS messages
NMI Payment Gateway
Ubiquiti Unifi Controller integration
Import Site and Hardware data
Telecoms and usage Billing/Invoice profile Improvements
Create billing/invoice profiles linked to CSV exports from Telecoms and other usage based billing systems to import directly into recurring invoices for one monthly bill all in one place
Recently Completed
Halo Mail Campaigns are now available
This initial release of Mail Campaigns in Halo will allow you to queue up templated emails to a Distribution List via the Mail Campaign Module.
The future roadmap for this Module contains open rate tracking, link clickthrough tracking, unsubscribe functionality and tracking as well as rule based Campaigns such as those that might be used for nurture campaigns.
Creating a Campaign
To create a Mail Campaign, please ensure you have turned on the Mail Campaign module, and the Distribution Lists module.
Ensure you have the relevant permissions to create both entities.
Go to the Mail Campaign module, and click new.
Give your Campaign a name, and select create in Halo and a type of "Blast". Other types of Campaigns will come in later releases.
To add an email to the Campaign, go to the Email Setup tab, and add an Email:
Here you can design or apply a template for the email, set the Subject and when it will send.
Once you are happy with the email, set the Status to 'Ready'.
All emails must be set to 'Ready' before the Campaign can be started.
Finally, you must select a Distribution List that will receive the emails from this Campaign. This is done on the settings tab.
In order to start the Campaign, go to the Overview tab and click the Start Campaign button. This will queue the emails to send. If the emails are set to send straight away, this cannot be undone. Emails set to send in the future can be cancelled using the Cancel Campaign button.
Please note, once a Campaign is cancelled, it cannot be re-started.
Added the 'Ready For Purchasing' screen
Purchase orders can be generated from sales order lines that have suppliers set. Sales order lines will be grouped by supplier, whether you are delivering to the end user/yourself and by ticket id if configured to do so.
This can be found in the Quotes and Orders section of Halo:
There are also two accompanying settings found in "Purchase Orders" configuration:
Lines with the same Item will not currently be collapsed.
Concurrent licensing and agent app session improvements
1. Force logout button
An option has been added to the agent details screen that allows administrators to kick another agent out of the agent app.
This can take up to a minute to execute.
The agent will receive a message that their session has been terminated by the administrator and then their session will be logged out.
These events are recorded in the Audit table.
2. Agent Idle timeout option
A new setting has been added to Advanced Settings - "Agent idle timeout (minutes)".
If this is set, if an agent has no mouse movement or keyboard input accross all of all sessions they have on the agent app, a logout request will be sent and they'll be logged out of the app, free'ing up a concurrent licence.
3. Improved Licence usage information
More information will now be shown about licence usage in the Agent list in configuration.
4. Concurrent licence usage limits per Team and Department
Teams and Departments can now be given a maximum number Concurrent Licences that they can use at once. This allows you to distribute your concurrent licences to different teams and departments.
This can be set on the Team and Department configuration screens - "Concurrent Licences" field.
This is based on the Agents default team. E.g if a "Support" team had 10 concurrent licences, only 10 agents with their default team = Support will be able to log in at once.
Login attempts for concurrent agents that are rejected due to exceeding concurrent licence counts are also now logged to the PortalLog table, along with which concurrent licence check failed (global, team or department).
5. Concurrent agent online count logging
The new setting "Record concurrent licence usage data" in Advanced Settings will add a row to OnlineStatusSnapshot once per hour.
This will show how many Agents were online at a specific point in time, and how many concurrent licence agents were online.
Added the PandaDoc Integration
A PandaDoc integration is now available, allowing documents to be created in PandaDoc using runbooks in Halo.
Once the integration is enabled, the runbooks will automatically be added.
You will need to configure the authentication for the custom integration linked to the runbooks. The key needs to be set to "Authorization" and the value is the key generated in your instance of PandaDoc here.
You can create the documents using one of the two available methods:
Create from a Template
This allows you to specify a template to use in PandaDoc.
Before using the runbook, you will need to edit the body being posted to PandaDocs to include the ID of the template to use, the ID of the folder to create it in, and any optional properties like fields, recipients, etc.
Create from a File Upload
This allows you to use an attachment to upload as the document.
To use this method, you'll need to add the PandaDoc Attachment field to the ticket type. This lets you pick an attachment from the ticket to use. This must be set before using the runbook. The attachment must be a supported type, like a PDF.
Before using the runbook, you will need to edit the body being posted to PandaDocs to include the ID of the folder to create it in, and the recipients.
Added the Datadog Integration
The Datadog integration is now available, allowing tickets to be generated in Halo through webhooks from Datadog Alerts. Security alerts can be archived through closing those tickets.
Both monitors and security alerts can be made in Datadog and set up to create these tickets. This is achieved by using webhooks in Datadog on those alerts.
The webhook can be customised by using the different parameters in the payload as faults parameters. Any field can be specified and assigned a value as needed, including custom fields.
If using security alerts webhooks can be triggered from the rule setups from those sources.
If using monitor alerts webhooks can be triggered from the adding the name of the webhook inside the monitor alert.
You will need to configure an API Application inside Halo for the authorization.
Mailchimp Integration is now available
This integration will allow you to import the following data from Mailchimp:
- Audiences as Distribution Lists
- Audience Members as Users, and add the Users to the relevant Distribution List(s)
- Segments as Distribution Lists
- Segment Members as Users, and add the Users to the relevant Distribution List(s)
- Mail Campaigns, including open rates, click rates, unsubscribe rate and other statistics
You can also start the creation of a Mailchimp Mail Campaign from Halo, finishing off details in Mailchimp before sending.
To get started with this integration, you should enable the new Mail Campaign module by clicking the plus icon on the Module in the configuration area, along with checking the Distribution Lists module is also enabled:
Once enabled, ensure your Role/Agent has the required permissions for Mail Campaigns and Distribution Lists, under "Feature Access":
Next, navigate to Configurations > Integrations > Mailchimp
Click the "Login with Mailchimp" button and follow through the Authentication popup.
Once Authorised, you should see Authorised "Yes" at the top of the page.
Now you can begin to import data.
It is recommended to import data in the following order, so Users can be matched to the correct Distribution Lists, among other reasons.
Audiences > Audience Members > Segments > Segment Members > Mail Campaigns.
After a Campaign has been imported, some statistical data will automatically update within the Halo interface:
Other data such as seeing the specific Users which have opened a Campaign, will need to be imported. This is done with the "Mail Campaign" import you will have done previously. It is recommended to run the Halo Integrator application to keep the History of the Mail Campaign up to date. The history of a Campaign shows when a User was sent the Campaign, if they have opened it and if they have unsubscribed. This data can be reported on in the MailCampaignLog table.
A Mailchimp Mail Campaign can be created from within Halo by clicking "New" on the Mail Campaign List in Halo, giving a name and selecting Create in Mailchimp, and finally selecting the Audience:
After clicking Save, you will be taken to Mailchimp to continue configuration of the Campaign, before being able to send.
Additionally, a setting in the Mail Campaigns module can be enabled to show a Users Mail Campaign activity within their Activity feed, otherwise, the Users activity relating to Mailchimp Campaigns can be found on the "Mailchimp Campaigns" tab of their User record.
The ability to create Mail Campaigns within Halo is coming soon.
Added the ability to subscribe to presence notifications from Microsoft Teams
The following pre-requisites must be met to use this functionality:
- The scheduling service must be enabled.
- The Microsoft Teams integration must be enabled.
- The Microsoft Entra ID integration must be enabled and you must be using it to import at least one agent.
The functionality must first be enabled in the Microsoft Teams integration on the Presence Notifications tab.
Once enabled, presence rules can be defined that allow you to determine what a technician's status should be updated to based on the Availability and Activity properties of the Microsoft Teams presence. There is also an option to only apply a rule if the technician is currently online in Halo (requires online presence functionality to be enabled in Halo first).
After configuring the integration at the Microsoft Teams level, additional configuration is required at the Microsoft Entra ID level. The Presence.Read.All (delegated) permission must be added to the Azure app and the option to allow imported agents to use the functionality must be enabled. Note that agents will not be able to subscribe to the notifications until they have been reimported either via the Halo Integrator or manually in the agent web application.
Once all configuration steps have been completed, agents can then subscribe to presence notifications individually on the Integrations tab of their profile.
Subscriptions will be renewed automatically when they are due to expire in the next 20 minutes, either during the processing of a new presence notification or via the task scheduler. After receiving and processing the notification, there may be a short delay before the agent's status change is reflected in the top right corner of the application.
Added the ability to manage Microsoft Teams chats from within a Ticket
The functionality can be turned on within the Microsoft Teams integration setup screen on the Chat Management tab.
Once enabled, you will need to create a new Azure application and authorize it within the setup screen. It is recommended that you create a specific user in Azure for this purpose, as the user will be added to all chats created from Halo, and any messages sent from Halo will also be sent from this user.
The application requires a mixture of delegate and application permissions. The application type permissions are required to create subscriptions via the Microsoft Graph API for chats that are created.
The option to enable the ability to see and create new chats is then turned on at Ticket Type level. There is also an option to specify a default name for new chats that will auto-populate on the creation screen, which overrides the global setting found in the integration setup screen.
There are two ways of managing Microsoft Teams chats from within a Ticket.
Ticket Tabs
To enable this functionality, you must enable the following setting at Ticket Type level. Whenever a chat is created, a new individual tab will display on the Ticket for each chat.
To create the chat from within a Ticket, hover over the quick action menu and select the Create Microsoft Teams Chat option. Note that this option will be available on the Ticket regardless of whether the above setting is enabled.
This will display an input screen where you can configure your new chat.
The user who authorized the integration will be automatically added as an owner of the chat during the creation. Only user(s) imported via the Azure Active Directory integration can be added as a member.
Once the chat is created, a new tab will display on the Ticket. As part of the chat creation, a subscription to the chat will be created so that any new messages added to the chat from within Microsoft Teams will be automatically imported.
Using the plus icon in the top right hand corner, new messages can be sent to the chat from Halo. Any message sent from Halo will show in the message list as being sent by the user who authorized the integration, but a sub header showing the agent who performed the action is also shown for auditability.
Custom Dashboards
A new widget type called Microsoft Teams Chats can be added to a custom Ticket dashboard.
The widget will display all chats created from the Ticket in separate tabs, but all within the widget. A new chat can be created when viewing the widget by clicking the plus tab option. The functionality within the widget is identical to the Ticket Tabs method.
A background service will renew any chat subscriptions that are close to expiry on open Tickets. Once a Ticket is closed, the subscription will no longer be renewed and new messages will no longer be imported from Microsoft Teams.
Various improvements to OLAs
OLAs can now be linked to rules. This can either be configured from the OLA or from the ticket rule.
If one of the linked rules is matched, and the workflow is on one of the start steps/stages for the OLA, the OLA will be started against the ticket.
If the rules stop being matched before the OLA is completed, it will be paused. OLAs can be resumed if any of the rules are matched again. All in-progress or paused OLAs will be completed when the ticket closes.
A tab will now show on tickets with OLAs against them, showing their target date, status, and if they were met or not.
Added TechData and Ingram Micro product catalog integrations
Integrations with Tech Data's and Ingram Micro's Catalogs have been added under a new integration group 'Product Catalogs':
These function in tandem with the Etilize integration to provide further information regarding products availability and price when using the 'Add Etilize items' option on billing orders. Below is an example of a returned item:
The cheaper customer price will be selected when adding the item to the order and the default mark up will be applied.
There are also options in the Etilize set up screen to choose a default 'Tenant' to search the catalogs with:
This can be modified on the item search screen itself as well.