Sonoma Partners Microsoft CRM and Salesforce Blog

CTI is Not Just for the Big Guys Anymore (Part 2 of 3)

This is the 2nd in a 3-part series covering Computer Telephony Integration (CTI) with  If you haven’t read the first post yet, I encourage you to do so and you can find that post here.  In today’s post, I am going to be doing a brief walkthrough of 1 of the 2 main options for integrating your telephone system with  This method has been around for quite a few years now, and is a desktop adapter that is installed on each client machine.  This software then runs behind the scenes and acts as an intermediary between the telephony server and your instance.

The name of this series is ‘CTI is Not Just for the Big Guys Anymore’.  So, if you aren’t a ‘Big Guy’, what key items of functionality might keep you from attempting a CTI project?  Obviously, the first would be budget!  Small and Mid-Tier businesses definitely need to get the greatest value for their IT dollars.  Second, typically you need a system that can be maintained by you!  I work for a consulting firm and I am quite aware of the need for specialized knowledge and experience, especially when embarking into new territory.  However, at some point the organization needs to be able to manage the system themselves without perpetually engaging outside help.

This is where the vision and approach to CTI becomes a key differentiator.  Salesforce has created a solution by which you may integrate practically any telephony provider with your CRM system.  By using the Softphone functionality that is embedded within, the platform allows organizations to quickly configure the appearance and functionality of the end-user experience.  Additionally, it allows you to configure the way the screen appears depending on the type of call (Incoming/Outgoing/Internal).  And it does all of this without requiring ANY code.

Installing the Adapter

CTI desktop adapters for must be designed to integrate with the specific telephony system that you use in your business.  This means that just as there are many different telephone systems, there are many different adapters.  Several of these can be found on the AppExchange that Salesforce provides for partners to deliver add-on services.  All of them run as an installer on your client desktops and require a minimal amount of configuration to set them up.  Because there are so many, I will choose not to get into the detail of describing each of them, and instead focus on the thing that they have in common: the Softphone.  The Softphone is a component within that provides users with an interface for making and answering phone calls, as well as jotting notes about the call.  As I said above, the Softphone with allows a great deal of configurability in the way you want your users to interact with the phone and CRM system.  It is the primary user interface for call center users or service users when interacting with customers.


Configuring the Softphone

Salesforce provides for a great degree of configuration when displaying your softphone, and I won’t be able to go over them all, but here are the key points:

You can modify the information that is displayed to users by editing the Softphone Layout.  You do this by navigating to Setup -> Customize -> Call Center -> Softphone Layouts.  Here you select the layout that you wish to modify, as show to the right.  In this screenshot, I only have a single layout to modify.

(click to enlarge)


Once you have entered the Layout Editor, the administrator is provided with a series of options for modifying the layout of the softphone.  As you can see from the image below, the configuration page also provides a real-time Preview of what the softphone will look like depending on the context of the call.  In this example, we are modifying the Inbound call type to display the Caller ID and Dialed Number, as passed through from the telephony system.

(click to enlarge)


The ability to configure the softphone to display practically any object or field within within the context of the call is where we get our true value.  In this example, the softphone searches the Contact, Account, Lead and Case objects for the phone number in question.  If a match is found, we can configure the system to display whichever fields we deem valuable.

I don’t want to search for Leads within my call center, so I’ll drop that object.  Simply select Lead in the Selections box and click the remove button.

(click to enlarge)


If a Case is found, I want to make sure that the Priority of the case is displayed.  So you simply expand the bullet for ‘If a single Case found, display:’ and perform the same action in reverse.  Find the Priority field under ‘Available’ and click the Add button.

(click to enlarge)


Administrators also have the ability to set a series of parameters that control how manages specific scenarios related to phone calls:

(click to enlarge)


As you can see, you can control whether Screen Pops open within the current window or open a new window.  You can also direct on what actions to take depending on No-Match, Single-Match or Multiple-matching records

User configured options

System Administrators aren’t the only ones who get to configure how the softphone works.  Individual users have certain capabilities at their disposal to individualize the system as well.

Users may navigate to Setup then under Personal Setup: Call Center Settings à My Softphone Settings.  Here the user can set to automatically log them into the call center when opening  Also, a user can override system settings for when a single record is found and set that record to automatically open or not.


What does it look like when I’m done?

Here are a few shots of what the Softphone looks like in action:

In this screen I have just logged into the system and have not yet identified myself as ready for any calls.


This example shows me answering a call with the softphone configured to automatically pop individual cases.  As you can see, Salesforce found two contacts that matched my incoming phone number and so it displays both of them.

(click to enlarge)


This last screenshot was taken after I configured the layout to show the Status and Priority fields on the Case entity.  When the call came in, the system automatically popped the appropriate record and shows me the relevant information.

(click to enlarge)


How is the desktop adapter different from Open CTI?

That is going to be the topic of the final post in this series.  The nice thing about using the desktop CTI adapter within is that it can be purchased as a readily available product, it can be configured fairly easily using out of the box Salesforce tools and it is a stable technology as integrations go.  What we will see in the next post is that Open CTI removes the PC from the integration chain, and uses JavaScript and HTML 5 to communicate directly between the Salesforce instance and your telephony server.





Topics: Salesforce