Applies to: WebFront 4
Published: May 2017
Important: This article requires at least WebFront v4.0.6663
If you are not using Lync or Skype for Business and are looking to integrate a different call center application, you can absolutely do so using the command line integration option.
- Call center agent application is able to execute a command line on an incoming call
- Call center agent application is able to pass the phone number of the calling user as an argument in the command line being executed
- Phone number needs to be populated in CMDB to be able to match incoming call with user in CMDB
To enable computer telephony integration using command lines you need to configure the call center agent application to execute a command line as below.
Command line example
In the example above "<webFrontServer>" needs to be replaced with the name of your WebFront server or DNS alias. The "%phoneNumber%" needs to be modified differently based on which call center agent application you are using. Different products use different argument syntaxes.
When you have successfully configured the command line, a browser window will open when the agent receives an incoming call. The URL of the browser window will contain the phone number which is passed to WebFront for processing.
By default, WebFront prepends a wildcard to the phone number when trying to locate a matching user in the CMDB of Service Manager. This means that if the phone number is e.g. a four-digit internal number you might end up matching too many users. As an example:
User A – Mobile number: "0702007722"
User B – Phone number: "7722"
When "User B" calls WebFront will find both User A and User B if you do not configure the command line to use exact match. To use exact match, you need to add "^" before the actual number argument.
For exact match, add "^"
Special characters considerations
If the call center application forwards a number starting with a plus sign "+" this will be removed based on processing rules of a URL. Consider the users below when the following phone number is passed to WebFront: "+0702007722"
User A – Mobile number: "+0702007722"
User B – Phone number: "0702007722"
WebFront will find both user A and B (defined above) if the command line has not been built to use exact match (as described in the Search Options section). On the other hand, if the command line has been built to use exact match WebFront will only find user B since the plus sign is removed by the URL processing in web browsers and therefore is not passed to WebFront. If your user objects in the CMDB have phone numbers registered with plus signs (or other special characters) and you want to do an exact match, you need to pre-process the phone number and replace the special character with its hexadecimal representation as described here: https://technet.microsoft.com/en-us/library/aa226544(v=sql.80).aspx.
Example of exact match on phone number starting with a plus sign
Note: The command line above is showing a resulting command line where the argument sent by the call center application is "%2B0702007722". This mean the call center application has already replaced the plus sign with "%2B", which is the way it needs to be implemented for this to work.
Applying template based on argument
By default, no template is applied upfront when the CTI application is initialized unless a Default Template has been selected in the Settings tab. If you want to you can choose to pass a template id as an argument, this will initialize the CTI form using the specified template. Note, passing a template id as an argument will override the default template setting.
Using the template argument can be useful if your system is able to pre-qualify the call and pass different arguments based on the subject of the call.
Example of template id as an argument
Note: It is the internal id of the template that you need to pass. This can be located using the Service Manager PowerShell Module.