Computer Telephony Integration
Summarize
Summary of Computer Telephony Integration
Computer Telephony Integration (CTI) allows integration between ServiceNow and telephony systems through a CTI client. The client sends a URL to the ServiceNow instance to initiate CTI processing, facilitating user identification and incident management during calls.
Show less
Key Features
- URL Structure: The URL must include parameters such as
sysparmcallernameandsysparmcallerphonefor user identification,sysparmtaskidfor referencing existing issues, andsysparmviewfor data display preferences. - Client Callability: Scripts can be made client-callable to interact with user data directly. Ensure to enable the client-callable checkbox in the script form.
- Global Values: URL parameters are accessible as global values within business rules for dynamic processing.
Key Outcomes
Implementing CTI allows for efficient user identification and incident management during calls. The system can display open incidents for identified users or create new incidents based on the provided URL parameters, enhancing customer service responsiveness. Modifications to the CTI Processing script enable tailored functionality to meet specific business needs.
Computer Telephony Integration (CTI) is accomplished by the CTI client on the user machine sending a URL to the instance.
- The base URL. For example:
https://<instance name>.service-now.com/cti.do?would get to the instance and ask for CTI processing. The URL is accessible to authenticated users only. - Parameters identify what parts of the incident form to display.
- sysparm_caller_name=name where 'name' is the name for a user.
- sysparm_caller_phone=phone where 'phone' is the user's phone number. Either a name or phone should be provided if you want to identify the user on the call. Other parameters may be supplied to identify the user as discussed later.
- sysparm_task_id=taskID where 'taskID' identifies an existing issue that the caller is calling about.
- sysparm_view=view where 'view' is the name of the view to be used to display the data.
- sysparm_xxxx=value where 'xxxx' is the name of a field within the 'incident' record that should be populated with the specified 'value'. For example sysparm_priority=1 would result in the priority field set to value of 1 when the new incident screen is shown.
- sysparm_cti_rule=name where 'name' is the name of a function
to be invoked for CTI processing rather than using the default script. The function
must be defined in a sys_script entry marked client callable. If the function needs
to insert, update, or delete any GlideRecord(s), it must call a separate non-client
callable function to perform the update(s).Note:While the CTI Processing script has been changed to be client callable, the code implementing the task view has been commented out. You must implement a new non-client-callable function for the code that performs the task.update().Note:Parameters on the URL are available to the business rule as global values. For example:To make a script client-callable you must check the client-callable checkbox on the form that displays when the sys_script entry is displayed. The client-callable checkbox might not show by default. To show the client-callable checkbox, you may need to modify the fields that show on the form using the gear icon and slushbucket mechanism.
The business rule you specify must return the URL for the pop-up screen, and set the 'answer' global variable.var name = sysparm_caller_name;
https://<instance
name>.service-now.com/cti.do?sysparm_caller_name=Don%20Goodliffe Multiple
sysparm parameters can be used, separated by ampersands (&).CTI Processing script
When the sysparm_cti_rule parameter is not specified, the system uses the CTI Processing script to provide the following functionality.
- Tries to identify the user by the sysparm_caller_name value if it was supplied.
- If no user has been found, the script tries to identify the user by the sysparm_caller_phone value if it was supplied.
- If a user has been identified then one of the following is done
- If the user has open incidents, the popup screen shows information about the current caller and all the user's open incidents.
- If the user does not have any open incidents, the popup screen shows a new incident with information provided in the URL shown.
- If a user was not identified and a taskID is given and the taskID exists, then nothing happens. The code to handle this case is commented out. If you want the popup screen to show the details for the task, you must modify the CTI Processing script to put the functionality in a separate non-client-callable function.