HaloPSA or HaloITSM
How is the HaloPSA / HaloITSM integration useful?
With the BeyondTrust Remote Support / HaloPSA or HaloITSM integration, users can streamline support and improve performance. End users can initiate Remote Support via the self-service portal for quick resolutions. Support technicians can launch a secure remote support session from a ticket to immediately start resolving issues. This enables an increase in first-call resolution rates, shortens ticket response times, and negates the need for on-site visits.
Additional benefits include:
- Automatic updates to the ticket to provide detailed analysis and visibility.
- Support technicians can remotely support multi-platforms such as laptops, desktops, POS systems, kiosks and more.
- Secure remote support from any browser with no downloads required.
- Track performance and log session activity for security, compliance, and training.
- Choose from on-premise and cloud deployment.
Use case
Problem
An employee isn’t receiving any emails and thinks his Outlook has stopped working. He tries to resolve this himself however the Knowledge Base articles can’t help him. Therefore, he raises a ticket in HaloPSA so someone from the support team can help him.
Solution
The ticket is picked up by the support team. They run initial checks but can’t see what the problem is and realize they need to access the employees computer. With the Remote Support / Autotask, The support team can start a remote session from within HaloPSA. They let the employee know and click on the link within the ticket. They can then easily solve the issue remotely and the employee's emails work again.
Prerequisites
A supported version of BeyondTrustRemote Support is required. To confirm your version is supported, contact support or refer to the BeyondTrust End of Life Policy.
Halo requirements
Application | Minimum Version |
---|---|
Halo Service Desk | v2.06 |
HaloITSM | v2.06 |
HaloPSA | v2.06 |
HaloCRM | v2.06 |
NHServer | v12.78.38 |
Create a client ID for HaloPSA
Follow these steps to create a new API account in Remote Support, and generate a new Client ID and Client Secret.
- Go to /login > Management > API Configuration.
- Click Enable XML API.
- Click Add to create a new API account. Name it HaloPSA or something similar.
- Set Command API to Full Access.
- Under Reporting API, check Allow Access to Support Session Reports and Recording.
- Under Configuration API, check Allow Access.
- Make a note of the OAuth Client ID and OAuth Client Secret and store this information in secure location. These are used later in configuring the integration.
- Click Save.
Configure Remote Support in HaloPSA
There are two places which you can enable the Remote Support integration in Halo.
- You can go to Configuration > Integrations.
- You can go to the Remote Support module, and enable it from within here. This is the recommended method, as configuration changes are required here regardless of where the integration is enabled.
Follow these steps to install and configure the Remote Support app in HaloPSA:
- Log in to HaloPSA, and go to the report support module.
- Navigate to General Settings.
- Select General User as the Default User. Most remote session data either matches a Live Chat or a Ticket ID, which almost always has a corresponding user assigned. If you are using Live Chat on the end-user portal on the login screen, the chat is not linked to a user. Also, if you are accepting remote session data from remote sessions that weren’t generated from Halo, then there is no associated user. It is in these circumstances that the remote session data is linked to the default user specified here.
- Check Allow Agents to invite Users to Remote Sessions for other Agents. This allows agents to invite users to remote sessions for agents other than themselves, or one of the configured BeyondTrust teams. There is more information about this below.
- Check Allow Agents to send quick Remote Session invites from the Ticket screen is this is desired. This option should not be checked if you want to force technicians to use a specific action to send the invites, or if you are restricting who can send the invites.
- Scroll down to Remote Session Invitations and set these options:
- Canned Text for Remote Session Invitations for email template This variable is $REMOTEINVITE. If you are using this variable in one of your templates, use either the $LINKTOREMOTE or $REMOTESESSIONCODE variables so that a code/URL for the remote session gets populated. You do not need to use $REMOTEINVITE in your templates – you can just use $LINKTOREMOTE or $REMOTESESSIONCODE directly in the email template should you wish to do so.
- Email and Live Chat Templates Below the $REMOTEINVITE option, you configure the email and live chat templates. The email template loads the usual email template editor screen that you should be familiar with. The Live Chat invitation works differently. You must enter the HTML manually, as shown below.
- Go the BeyondTrust module in your Halo instance.
- The first set of options is Setup.
- Enter the Application URL, https://your-domain.beyondtrustcloud.com.
- Enter the Client ID, and Client Secret. These are OAuth Client ID and OAuth Client Secret obtained from BeyondTrust Remote Support.
- Click Test Configuration to ensure the information entered is correct.
- Go to the Teams and Agents options.
- Enable the integration for any Agent who you would like to use it, and assign their BeyondTrust display name to their Agent account. This must be done per agent by going to the Configuration > Agents > Choose Agent > Details tab.
Note
The BeyondTrust username field is used for matching when session details are sent to Halo. The name field must match the Agents public or private display name value set in BeyondTrust, otherwise the session data will not be processed.
- Configuring Teams is optional, but we recommend configuring at least one team.
- Teams can be added manually by clicking Add, or imported from BeyondTrust by clicking Get Teams.
- The list of teams shows the name of the team in BeyondTrust, the name displayed to Halo users, and status information.
- Below the Get Teams button (not shown below), there is an option to generate a session for the default team if the chosen agent is not available. This means that instead of failing and returning an Agent Unavailable message when the chosen Agent is not logged into BeyondTrust, a remote session code/URL is generated for the default team.
- To edit a team, click the pencil icon.
- The display name of the team can be changed, if desired.
- We recommend one team be selected as the default team. The default team is used in multiple scenarios, such as if no Team or Agent is chosen when sending a remote invite, or the chosen Agent is not available. With no default Team chosen, the $REMOTELINK and $REMOTESESSIONCODE variables are blank. Selecting a default team provides Halo with a fallback option to generate a new remote session code/URL.
- Each team must be enabled.
Add a HaloPSA webhook to Remote Support
The last stage of integrating HaloPSA and BeyondTrust Remote Support is to create an outbound event, or webhook, in Remote Support. Follow these steps:
- In HaloPSA, view the Remote Session Data and note the outbound event URL.
- Below the highlighted URL, there is an option that, when enabled, only allows the Halo API to process requests from BeyondTrust when the remote session code/URL for that session was generated in Halo. Regardless, the Halo API only processes requests from BeyondTrust when the remote session was attended by a technician that exists in Halo. The matching process looks at the Public, Private, and Display name of the technicians who attended the session in BeyondTrust, and looks for a match against an Agent name in Halo.
- In BeyondTrust Remote Support, click Management on the left menu.
- Click the Outbound Events tab.
- Click Add under HTTP Recipients.
- Enter a name for the event.
- Paste the copied Webhook URL to the URL field.
- Check Support Session End under Events to send
- Click Save.
Once configured, every time a support session ends in BeyondTrust, a request is sent to the Halo API with the details of this request.
If the request is accepted, one of the following events occurs:
- If the session is linked to a ticket, then the remote session details are automatically added to the ticket as an action. The chat log from the session is added as the note of the action.
- If the session is linked to a live chat which is linked to a ticket, then the remote session details are added to the ticket as described above.
- If the session is linked to a live chat which is not linked to a ticket, and the live chat is still open, then the chat log from the remote session is added to the live chat as a message. It is also stored so you can link it to a ticket manually if you wish. If the chat has ended, then the remote session data is also stored so it can be appended to a ticket manually.
- In all other cases, the remote session data is stored so it can be appended to a ticket manually.
Use cases
Send invitations and link sessions
There are three ways to send Remote Session invitations:
- live chat
- from the ticket details
- automatically with a new ticket
Live chat
On the chat details page of a chat window, there is an option to send a BeyondTrust invite.
Clicking this option opens a window that allows you to choose which technician or team you would like to send the invite for. This list is all agents who have access to the integration, along with any teams you have configured. The option you choose here is used to generate the URL/code for the remote session. This means that if you chose Administrator, then when the user follows the URL, they will be placed into Administrator’s private queue in BeyondTrust. Click save on this screen to post the message to the chat.
If the invitation is successful, a tick mark appears next to the button, and you can switch back to the main chat windows to view this. Should the invitation fail for any reason, an X appears next to the button, along with an error message explaining what failed.
If the technician is not logged in to BeyondTrust and you have not chosen to automatically switch to the default team, then you see a TECHUNAVAILABLE message next to the invite button. Try again and send the invite to a different agent or team.
When the session ends, if your live chat is still active and you have correctly configured the Outbound Event in BeyondTrust, the details of the remote session are posted to the chat for both you and the user to see.
Ticket details
The second option is from within the ticket itself, without using a configured action. If you open a ticket, and hover over the three dots in the top right corner, you will see an option for Send Beyond Trust Invite. Click this option to open a screen allowing you to choose who the session should be generated for, and also an email address to send the invite too.
Once you have submitted this, an action is added for audit purposes, so that it is clear the invitation was sent.
When the session data is sent back to Halo, the content of this is added to the ticket as an action for the technician who took the session. Should you wish to disable this option, review general configuration for HaloPSA.
Actions
You can create a specific action that uses the Remote Invitation Template to send the invite. To do this, go to the action configuration screen and set the system use for your chosen action to Remote Session Invitation.
Then go to the field list tab, and add the Remote Session Technician/Channel field. This field allows you to choose which technician or team the invite should be generated for. If you don’t want to use this field, or if the value is left blank, then Halo will use the default Team, if you have one specified. If not, then the email will be sent without a url/code.
When the session data is sent back to Halo, the content of this is added to the ticket as an action for the technician who took the session.
New ticket
The final option available to you is to automatically send the invite when a new ticket is logged. You can specify this at request type level, on the defaults tab.
On the end user portal, if this field is set to send an invite by default, an invitation is always sent when the user logs a ticket of this type. The default team is used to generate a code/URL. It is recommended to combine the new ticket template with the remote support template if you are using this functionality. This invitation will be added as a system action to the ticket.
In addition to this, there are a couple of fields that can be made visible on the Agent new ticket screen that allow you to choose each time whether to send the invite and which technician or team the invite should be generated for. To configure this, on the field list tab, add the following two fields:
Remote Session Technician/Channel
Send Remote Session Invitation
The Send Remote Session Invitation field defaults to the default value specified for the ticket type. If the invitation is sent, it gets added as an action for the technician who is logging the ticket. When the session data is sent back to Halo, the content of this is added to the ticket as an action for the technician who took the session.
Link session
There are a few scenarios where a remote session may not link to a ticket. In these scenarios, the data is still saved to the Halo database, but the details must be manually linked to a ticket.
To do this, open a ticket and hover over the three dots in the top right-hand corner of the ticket. There is an option for Link Remote Session. Click this option to open a search screen.
The name of the remote session is set to the name of the chat it was generated from, if the name was set. Otherwise, it displays as Remote Session, as shown below.
You can choose one remote session at a time to link to the ticket. When confirming the session, the details of this session are added as an action to the ticket.
Custom button to open the device automatically
You can create a custom button by going to Configuration > Custom Objects > Custom Buttons > adjust the entity to Asset > Create a new Custom button.
Use the following URL to automatically open the device in BeyondTrust. Replace [YourBeyondTrust] with your BeyondTrust URL.
https://[YourBeyondTrust]/api/client_script?type=rep&operation=generate&action=start_pinned_client_session&search_string={$INVENTORY_NUMBER}
For assistance, contact https://halopsa.com/integrations/.
Updated 5 days ago