CTI With New Call

petterbj_rgmo
Tera Contributor

Hello everybody!

The customer I am working has decided to do a CTI integration. They wish to do this in collaboration with the "Service Desk Call" plugin.
When a customer picks up the phone and calls their IT support, they want a window with New Call to popup and populate some of the record by using the phone number on the sys_user record. I am not quite sure how to make this happen.

If i use the url: instance.service-now.com/cti.do?sysparm_caller_name=Fred%20Luddy it works just fine.

I need to figure out how to make a URL that goes something like this: instance.service-now.com/new_call.do?sysparm_caller_phone=<input from CTI system>

The url above does not work, it opens a New Call record, but does not populate any fields.

The url needs to open new call and populate Caller from phone number that is on the sys_user record.

Anyone done something similar?

9 REPLIES 9

Neeraj Gupta1
Mega Expert

Hi Petter,


This is the url that need to be worked upon - https://myinstance.servicenow.com/cti.do?sysparm_cti_rule=<functionName_cti&sysunctparam_caller_phone<phone_number> . You need to get <phone_number> value from the url and format according the format of phone number stored in Service Now. After formatting, you can do a glide query against the phone number on user table to find the user and point to new record url. All this need to be done in a global business rule (function - functionName_cti).


Hm, okei, I still have a few questions.



You refer to sysparm_cti_rule=<Function_name>. So I need to create a function in a global business rule that gets the sys_id?
Can u please explain further


petterbj_rgmo
Tera Contributor

Or maybe I can use a URL in combination of using GlideSystem to get the userID from phone number?



Like this: <instance>.service-now.com/nav_to.do?uri=incident.do?sys_id=-1%26sysparm_query=caller_id=javascript:gs.getUserID()


Maybe it is possible to change the last bit to get the user using his/her phone number?


Neeraj Gupta1
Mega Expert

That is correct, sysparm_cti_rule=<function_name> is the name of the global business rule that should be invoked for CTI processing rather than using the default behavior. I am sure you must have gone though this wiki article - Computer Telephony Integration - ServiceNow Wiki . Please see the below. You may also need to consider following scenarios which I have skipped:



1. What happens when you have more than 1 user profile with same phone number


2. The priority order of search : Mobile , Home and Office


3. If someone calls from an anonymous or private number


4. What if incoming phone number format is different to the format in Service Now



find_real_file.png


Let me if this helps !