ServiceNow Live Agent Setup
We support Agent Workspace and Service Operations Workspace from the ServiceNow Paris release onwards.
ServiceNow has put Agent Workspace in deprecation process since their Utah release, and they suggest that customers use their Service Operations Workspace. We support Service Operations Workspace.
Pre-Requisites on the ServiceNow Side:
This requires the SNOW instance with Pro license.
The Virtual Agent API plugin is a hard dependency. At this time we support version 1.3.0, 2.0, 2.1.0, 3.1.0. We will support newer versions in the future.
Support Matrix:
SNOW Version
Virtual Agent API Version
Support
San Diego
2.1.0, 3.1.0
YES
Tokyo
3.1.0
YES
Tokyo
3.5.2
YES, need Aisera Patch. reference to the last section of this page
Utah
3.7.x
YES, need Aisera Patch. Pls reference to the last section of this page
Vancouver
3.7.3
3.12.2
YES, need Aisera Patch. Pls reference to the last section of this page
Washington DC
3.10.0
3.13.0
3.14.0
YES, need Aisera Patch. Pls reference to the last section of this page
Xanadu
3.14.1
Yes, need Aisera Patch. Pls reference to the last section of this page
Yokohama
3.14.2
3.14.3
1. Plugins
The following plugins need to be active.
Advanced Work Assignment (com.glide.awa)
Agent Chat (com.glide.interaction.awa)
Conversational Messaging (com.glide.messaging.awa)
Conversation General Settings (com.glide.cs.settings)
Glide Virtual Agent ( com.glide.cs.chatbot )
Virtual Agent API - Please check the support matrix above for the correct versions. We do not support other versions at this time.
If you want to use
Service Operations workspaceinstead ofAgent Workspace, Please installService Operations Workspaceas well (Agent Workspace is in deprecation process by ServiceNow)
If they are not active, please make sure that they are activated.
2. Chat Setup
Make sure the Global Fulfiller UI is set to Agent Workspace. (In a brand new Paris instance, you would not need this.)
3. Advanced Work Assignment Setup
The ServiceNow Administration should have setup the following for Aisera to go forward:
The Service Channel
This channel needs to be created against the ‘interaction’ table and type should be ‘Chat’. Make sure it is active.
Presence State
The ‘Active’ state needs to be enabled and then associated to the appropriate service channel.
By default this is true if the above said plugins are active.
Assignment rules
The assignment rule would be already present. If not create a sample rule like ‘SampleRule’
The Queues
The queue should be against the service channel from the previous step.
Create a sample queue like ‘SampleQueue’ if none present.
Assignment Eligibility - Apply the assignment rule to the queue. Associate the group. This group should have ‘awa_agent’ role and ‘workspace’ roles as well. The ‘Group’ should have the agents under them. Note: If you are using
Service Operations Workspaceinstead ofAgent workspace, please also addsn_sow.sow_useras well.
4. Import and Commit Aisera UpdateSet
ServiceNow has an out of the box sample provider called ‘VA Bot to Bot Provider’. We wont use that. Instead use the update set provided by Aisera. The update set contains the following:
A new Messaging Provider called ‘Aisera ServiceNow Bot to Bot Provider’. It will also use the same bot-to-bot channel. This will reuse all IH actions which are out of box provided by ServiceNow except
‘Contextual Action’ as the out of box does not support ‘START_CONVERSATION’.
‘Virtual Agent - Bot to Bot Sender’ as this uses a localhost url for sending data. This should point to Aisera’s liveAgent/receiveMessage API
A new Messaging Provider Application called ‘Aisera VA Bot to Bot Provider Application’. This will be similar to the OOB ‘VA Bot to Bot Provider Application’ but it will point to Aisera Messaging Provider.
A new Scripted Rest API ‘Aisera ServiceNow Bot Integration’ with a postMessage method.
Script includes needed for communication with Aisera.
A table ‘Aisera Live Agent Info V2’ to hold the meta data about the Aisera system which this instance of ServiceNow communicates with.
Import the Update Set:
Note: Both update sets are required
Import the following update sets by downloading files from the following links: Aisera_LiveAgent_Update_Set_v9.67_sys_remote_update_set_b3dbafb42f26111040823e0ef699b626_update_xml.xml, version 9.67
Upload, preview and commit the parent update set. (There is a possibility that the commit might fail at 100% but this is fine.)
If you are applying the next version of this update set, please make sure you do not override the Aisera Settings.
AISERA SNOW Live Agent Patch V2 (version v2)
NOTE: This is a patch which should be applied after you apply the previous update set. we will Consolidate the update sets later.
Please upload, Preview and Commit the patch parent set. (Name: Aisera Live Agent Merged Bot to Bot Update Set - Batch Parent - v2)
5. Add Aisera Configuration Info in ServiceNow
The update set will bring in a table called ‘Aisera Live Agent Info V2’. This table will hols all the info that is needed to communicate with Aisera.
The URL to reach this table would be https://$instanceName.service-now.com/nav_to.do?uri=%2Fsn_va_as_service_aisera_live_agent_v2_list.do
All above information should be populated properly. Aisera will need to provide this info to the customer so that they can populate it in the table.
Key
Value
Aisera_AppToken
The app Token for the given Aisera App.
Details will be supplied by Aisera engineers.
Aisera_LiveAgent_URL
The LiveAgent API URL
Details will be supplied by Aisera engineers.
Aisera_Login_URL
The Login URL
Details will be supplied by Aisera engineers.
Aisera_Login_User_Name
The User name
Details will be supplied by Aisera engineers. (This needs to be an Aisera Service Account).
Aisera_Login_Password
The password. Please set the password in the ‘Sensitive Value’ column.
Aisera folks would give this information.
Sample:
Aisera_AppToken
H4sI……AAAA
Aisera_LiveAgent_URL
https://zoom-it-staging.api.aisera.cloud/v1/liveAgent/receiveMessage
Aisera_Login_URL
https://zoom-it-staging.api.aisera.cloud
Make sure you don’t have a trailing slash (/) after .cloud
Aisera_Login_Password
The_Password_Here
Please set it in the 'Sensitive Value' column.
Verify the configuration
Navigator => Scripts Background, run the following command
var accessInfo = new sn_va_as_service.AiseraAuthUtilV2().getAccessToken();
The result should looks something like this (not actual data):
sn_va_as_service (AiseraAuthUtilV2): AiseraAuthUtilV2: entered : sn_va_as_service (AiseraAuthUtilV2): AiseraAuthUtilV2: The tokenRequestUrl is :https://aisera-environment.aisera.cloud/tenant-users/oauth2/token sn_va_as_service (AiseraAuthUtilV2): AiseraAuthUtilV2: The authData is :{"status":200,"body":"{\"access_token\":\"H4sIAAAADCAAAAFgAJ//OH46fDZeieTf/ec11qe/uKoDIyr5o8NquL+Xt21urhLezM+FV7AspleO7/LkSVC0jNinEKhbu1/3+VXG/9134PgU3PrcQMtgRmrHS8B4YIOCCcCAO0GbjOW8l4f2+w654e4MAmADCAA=\",\"refresh_token\":\"H4sIAAAADCAAAAFgAJ//OH46fDZeieTf/ec11qe/uKoDIyr5o8NquL+Xt21urhLezM+FV7AspleO7/LkSVC0jNinEKhbu1/3+VXG/9134PgU3PrcQMtgRmrHS8B4YIOCCcCAO0GbjOW8l4f2+w654e4MAmADCAA=\",\"values\":{\"access_token\":\"H4sIAAAADCAAAAFgAJ//OH46fDZeieTf/ec11qe/uKoDIyr5o8NquL+Xt21urhLezM+FV7AspleO7/LkSVC0jNinEKhbu1/3+VXG/9134PgU3PrcQMtgRmrHS8B4YIOCCcCAO0GbjOW8l4f2+w654e4MAmADCAA=\",\"refresh_token\":\"H4sIAAAADCAAAAFgAJ//OH46fDZeieTf/ec11qe/uKoDIyr5o8NquL+Xt21urhLezM+FV7AspleO7/LkSVC0jNinEKhbu1/3+VXG/9134PgU3PrcQMtgRmrHS8B4YIOCCcCAO0GbjOW8l4f2+w654e4MAmADCAA=\",\"token_type\":\"bearer\",\"expires_in\":3600},\"token_type\":\"bearer\",\"expires_in\":3600}"}6. Update Trusted Domain List
In the navigation bar, search sys_cs_provider.list.
Update the setting of the page and add column Trusted media domains to the page:
Update Trusted media domains field
Add aisera.cloud,aisera.net to Trusted media domains of aisera servicenow bot to bot provider
7. Add Rich Control for Action
In the navigation bar, search sys_cs_provider.list, and select Aisera ServiceNow Bot to Bot Provider.
At the bottom, click tab for Rich Control Mappings
sys_cs_provider.list => Aisera ServiceNow Bot to Bot Provider => Rich Control Mappings
If the control mapping for DefaultAction is missing under Rich Control Mappings, please create one with the following values and save it.
Filed Name
Value
Description
Control Type
DefaultAction
Outbound transformer action
sn_va_as_service.virtual_agent__bot_to_bot_action_outbound_transformer
Inbound transformer action
Leave it as empty
Aisera Setup
Integration Setup
Integration should set instructed to use the ‘Live Agent API’ as Paris.
Get to your ServiceNow Data Source and make the change.
Live Agent setup
Go to your App in Aisera.
Click the Add Live Agent button.
Choose the appropriate Integration. This would typically be the same integration you use for integration with ServiceNow instance.
Provide a random number for the namespace.
The Queue Id is not needed for implementations after the ServiceNow Paris release integration with Agent Workspace. Older ServiceNow (Pre-Paris) integrations still need this field.
Provide
api/sn_va_as_service/aisera_bot/integrationas the API Path.Click OK.
Add support for user upload file
user upload file Check the
trusted media domainsabove and haveaisera.cloudaddedIn the live agent configuration in the section 2 above, select
AttachmentstoSupported. And the add the supported file extensions and file size you want.
Note: SNOW REST api only supports files with limited MIME types, please only allow the following file extensions in the live agent configuration
Supported file extensions
png jpg jpeg pdf txt mpeg doc
SNOW supported MIME types
application/pdf application/msword image/png image/jpeg text/plain video/mpeg
Advanced features
1. Multiple queue
Snow Live Agent (Paris & later) supports multiple queues by nature. However, the routing logic is on ServiceNow side (each queue has its own support logic), rather than on AISERA. AISERA can provide some information about the user, so, Servicenow server can use these information to route to a specific queue.
Note 1: Each queue has its own order. By default, SNOW will sort all the queues in ascending order based on the value of order of each queue. SNOW will go through each queue based on the sorted order and check if the request meet the condition of the queue. If there are multiple queues meet the conditions, the queue with the lowest order will be picked.
Note 2: Please always configure a default queue with largest order
a) Option: Use Snow Queue’s simple Work item routing condition
If all the users are linked with SNOW’s user, SNOW admin can use the SNOW queue’s simple Condition Mode and choose the filter conditions
b) Option: Use AISERA’s 3 accepted variables.
Currently, AISERA support 3 variables, liveagent_department, liveagent_language and liveagent_location.
Admin can add those 3 variables to the output variables of Preprocess Live Agent flow, and set the corresponding values in the Preprocess Live Agent flow. AISERA will attach these 3 values to the requests to Servicenow server.
SNOW admin can use Advanced Condition mode to decide whether the current queue is able to accept the request based on these 3 values.
We can use liveagent_language as an example, to set a queue for french
In SNOW queue, set the following
(function executeCondition(/* glide record */ current) { var contextTable = current.getValue("context_table"); var integrationBlobRecord = new GlideRecord(contextTable); integrationBlobRecord.addQuery("sys_id", current.getValue("context_document")); integrationBlobRecord.query(); if (integrationBlobRecord.next()) { var jsonBlob = JSON.parse(integrationBlobRecord.getValue("value")); if(jsonBlob.liveagent_language == "french") return true; } return false; })(current);In
Preprocess Live Agentflow
Testing
Use the following procedure to test your application/bot.
ServiceNow:
Login as the agent and go to your Agent Workspace.
Make sure your status is Available.
If you are using
Service Operations Workspace, go directly to:https://<your-snow-instance>/now/sow/list.
Aisera:
Go to the appropriate Aisera web chat channel.
Type in
Contact Live Agent.Type in
Contact Live Agentagain.The chatbot displays
Routing to Agent.The Aisera platform makes a connection to ServiceNow. In ServiceNow Agent Workspace, you see an acknowledgement window.
Click Accept.
Type in
Hello.Hellois displayed in the Aisera web chat conversation. Type something back in the Aisera web chat.
The ServiceNow Agent workspace and the Aisera web chat should bot display the same conversation information.
Last updated
Was this helpful?
