How to Send Call Data to Salesforce?

How to Send Call Data to Salesforce?

Salesforce.com offering Customer Relationship Management (CRM) services provides to its customers a complete cloud based software solution that functions just like a call center. This software-as-a-service (SaaS) product is a feature of Salesforce Service Cloud product and allows companies to make and receive telephonic calls and allow them to create, track and maintain a list of the telephonic leads and issues coming in and then act on them accordingly.

Salesforce Softphone and CTI system

Using Salesforce SoftPhone and a Computer Telephony Integration (CTI) system, the CRM integrates with third party telephonic systems. This allows users to handle all call related activities. In general terms a CTI system is a combination of telephony hardware and software systems that has support to allow integration with other third party computer systems. Think of it like receiving phone calls on a computer system rather than a traditional telephone.

Sending Call Data to Salesforce

The CTI system is the base telephonic framework that Salesforce Softphone uses to make and receive calls. Salesforce CRM Call Center supports more than 80 CTI system, but it can support any custom CTI system as long as it is based upon an event model.

Don’t forget to check : How to integrate CTI with Salesforce?

An event model is a type of software model in which a CTI system sends an ‘event’ to all authorized call receivers for all types of activities that occurs in the telephone system. For example, when a user receives a telephone call, the CTI system broadcasts a ‘RINGING’ event to all listening users. Here a CTI adapter is the listener and receives this event and updates the SoftPhone as programmed.

To integrate the two platforms, Salesforce Softphone and the CTI system, a Salesforce CRM Call-Center integration adapter component called the CTI Adapter is required.

CTI Adapters

CTI adapters are light-weight software programs that control the functioning of the Salesforce SoftPhone. It is the intermediary between the third part telephony system, CRM, and a call center user. It has to be installed on the system that needs to connect to the CRM call center functionality.

CTI Adapter

It contains two components: a CTI Connector that maintains an XML file with the SoftPhone details and communicates with the CTI system, and a SoftPhone Connector that converts SoftPhone XML to HTML and presents it to the user’s browser.

Minimum system requirements to install the adapter:

  • For adapters built with CTI version 4.0 or higher
    • Microsoft IE 8.0, Mozilla Firefox 3.5, Apple Safari 4.0, Google Chrome 10.0
    • Microsoft Windows XP with .NET framework installed
  • For previous versions of the CTI adapter
    • Internet Explorer 7 or 8; Firefox 3.5 or 3.6 (Safari and Chrome are not supported)
    • For Windows 7 32-bit, 32-bit Internet Explorer 8; Firefox 3.5 or 3.6
    • For Windows 7 64-bit, 64-bit Internet Explorer 8; Firefox 3.5 or 3.6
    • 512 MB recommended
    • 20 MB disk space minimum
    • Intel Pentium II processor, 500 MHz or above
    • Windows XP

Call transfer process from CTI to Salesforce CRM

  • When a CTI system generates a call based event, the CTI adapter’s connector receives it and converts any data to a standard format and then calls the event handler in the CCTIUserInterface class.
  • This class then updates the XML representation of the SoftPhone by rendering its controls based on the call data and generates a UIRefresh event.
  • The SoftPhone Connector uses this updated XML data to render a HTML page to the user’s browser.
  • The call center’s user’s browser, which maintains a continuous connection with the SoftPhone connector through AJAX, updates the SoftPhone User Interface.
  • This completes the transfer from CTI system and the CRM and is an ongoing process that is executed each time a new call comes in.
  • All exchanges between the CTI and CRM occur by updating the connector’s XML which holds all call related data.

Salesforce Connector Toolkit

This toolkit provides the essential source code, libraries and files required to develop customized CTI adapters. There are several versions of the toolkit each having different CRM call center functionality but Salesforce.com only distributes Toolkit v4.0 or higher.

Contents of the Connector Toolkit

  • SoftPhone Connector Executable (SalesforceCTI.exe) : This handles the SoftPhone connector component of the CTI Adapter.
  • CTI connector code package (.Primary Output) : This .NET code package contains the classes that make up a CTI connector for the specified CTI system. Once customized, it is compiled into a DLL file.
  • Demo CTI connector code package (Demoadapter.Primary Output) : This is also a .NET package that contains the connector code specific to the Salesforce CRM call center demo adapter.
  • The salesforce.com Office Toolkit Library (SF_MSApi4.dll) : This DLL component is required for access to the Salesforce Force.com API.
  • Microsoft XML Library 6 (msxml6.dll and msxml6r.dll) : These DLL files allow the SoftPhone connector to translate the SoftPhone user interface XML into HTML.
  • Any dynamically-linked libraries that are required for the CTI system : Most CTI adapter implementations require additional CTI-system-specific DLL files to enable communication.
  • Default call center definition files (.xml or Demoadapter.xml) : These XML files provide the default definition format for a call center that uses the specified adapter.
  • Salesforce CRM Call Center API Reference : This provides an API that allows access to information about CTI call centers using describeSoftphoneLayout() function. The API supports limited access to call center-related objects; including being able to create call centers, and create or modify additional numbers for the call center.

Preparing the CTI adapter

Once the customized CTI adapter is ready, it can be installed on a system and used with the SoftPhone tool in a call center. An administrator must perform the following tasks to create call centers to transfer calls from CTI to Salesforce.com CRM:

  • Install a computer-telephony integration (CTI) adapter on every call center user machine.
  • Define a new call center record for every CTI system
  • Assign Salesforce users to the appropriate call center. Without this, the call center user will not be able to access the SoftPhone interface.

Registering a CTI adapter with a CTI System

Before using the CTI system through Salesforce Softphone, the installed CTI adapter must first register itself with Salesforce Cloud SaaS. Only after the registration can a user send and receive CTI events. Here’s how the registration occurs

  • Upon logging in to Salesforce, the browser acquires a session ID that authenticates the user for the duration of their Salesforce session. The CTI adapter uses this session ID to query Salesforce for information related to the user’s assigned call center. All data associated with the call center is returned to the adapter.
  • The adapter’s CTILogin method uses the call center data to connect with the specified CTI system. In most cases the call center user must provide authentication information to the CTI system. After logging in for the first time, users have the option of saving their CTI system credentials within Salesforce for automatic login in the future.

If this article is useful and you want more information, Please make a call to our certified Salesforce consultant at +1-877-284-1028 (Toll Free).

The following two tabs change content below.
Pratyush Kumar

Pratyush Kumar

Co-Founder & Director at Algoworks, Open-Source | Salesforce | ECM
Pratyush is Co-Founder and Director at Algoworks. He is responsible for managing, growing open source technologies team and has spearheaded more than 200 projects in Salesforce CRM alone. He provides consulting and advisory to clients looking for services relating to CRM(Customer Relationship Management) and ECM(Enterprise Content Management). In the past, Pratyush has held consulting roles with various global technology leaders, such as Globallogic & HCL in India. He holds an Engineering graduate degree from Indian Institute of Technology, Roorkee.
Pratyush Kumar

Latest posts by Pratyush Kumar (see all)

Pratyush KumarHow to Send Call Data to Salesforce?