Page tree
Skip to end of metadata
Go to start of metadata

xCALLY Shuttle provides a seamless CTI integration with SugarCRM, a customer relationship management (CRM) system which includes sales-force automation, marketing campaigns, customer support, collaboration, Mobile CRM, Social CRM and reporting.

Important configurations and hints

The integration between xCally Shuttle and SugarCRM works properly only if you follow carefully this steps:

1. the Agent First Name+spacing+Last Name in the SugarCRM profile must correspond exactly to the Agent Name in the xCally Shuttle Agent profile, like shown in the image below.

In this case the Administrator set:
- Emily Brown as Agent Name, in her xCally Shuttle Account;
- Emily as Agent First Name and Brown as Agent Last Name, in her SugarCRM account.

If you use the xCALLY phone bar, you just need to create the Agents, being careful to fill in with the Name same as your SugarCRM Agent First Name and Last Name, as described in the previous page. Do not touch the Caller-ID SIP created field (it will be automatically generated with the right value to make the integration working).

If you use external IP phones, or experimental WebRTC, you just need to create the Agents, being careful to fill in with the Name same as your SugarCRM Agent First Name and Last Name, as described in the previous page. Afterwards, just link the Agent to the SIP username related to your external IP phone.
The Caller-ID SIP field and the entire SIP related account, can be modified later on without any impact. 

The Agent must be logged also into the xCally Shuttle web interface; only in this way the integration will work!

2. You have to change the file config_override.php on the SugarCRM Server (in the service root), adding this line:

$sugar_config[‘http_referer’][‘list’][] = ‘ip_xcally_shuttle’
where ip_xcally_shuttle represents the xCally Shuttle IP.

3. You should use one of this recommended browsers and enable popups:


  • Chrome v36.0.1985.125m (NOT HTTPS)
  • Chromium v34.0.1831.0
  • Safari v5.1.7
  • Opera 23.0.1522.60 (in HTTPS, at the first access, you have to enable the loading of the unsafe script)


  • Chrome 35.0.1916.153
  • Chromium 28.0.1496.0
  • Safari 7.0.5 (activate pop-up preferences)
  • Opera 23.0.1522.60


  • Chrome 36.0.1985.125 (no HTTPS)
  • Chromium 34.0.1847.116
  • Opera 12.16 build 1860

Check carefully to have enabled popups!

If you use Chrome/Chromium and Opera, you have to enable the popups, providing the xCally Shuttle Address.
Opera: Settings > Site Preferences - Exceptions - Pop-up Section where you can add the IP address


Create a new Integration

To create a new Integration click on the button New Integration into the Shuttle -> Settings -> Integrations section and fill the form with the following information:

You can choose a Name which represents the Integration and then fill the Username and Password fields, which require the same username and password of an Administrator SugarCRM Account.

Then compile the URI field with your SugarCRM URL and the Integration Type, in this case selecting SugarCRM from the dropdown menu.

After the form submit you can see your new Integration shown in the Integrations table.

Through the Integrations Table you can quickly:

  • edit the Integration parameters 
  • delete the Integration
  • check if the Integration is ok, through the Check Connection button.

Create a new Trigger

Now let’s focus on the Triggers Section: here you can set how the integration works by adding a new Trigger.

To create it click on New Trigger and choose your integration strategy filling the form:

Through the Event field you can decide when the integration starts, so when the SugarCRM Call (dedicated to the actual call, which includes all the relevant fields of the caller) will be created:

  • Ringing: when the phone is ringing, before the agent’s answer 
  • Up: when the agent picks up the call 
  • Hang up: when the agent hangs up the call 
  • Unmanaged call: when the caller has hang up before talking with an agent 

You can also choose for which Queue the integration is valid. If you need to apply the Integration on more queues, you have to create one trigger for each queue.

In the last field you can select the integration type

After the creation of the Trigger you can edit parameters or remove it.


Custom Fields

Custom fields are typically used to gather more information about the support issue or product or service in SugarCRM.

Using Shuttle you can now create a MAPPING between the SugarCRM custom field name and the available field values.
In order to do it just enter in the Shuttle administration web interface -> Section Integrations and add your custom field mapping in the CUSTOM FIELDS sub-section clicking on New Custom Field.

Fill the form with the requested information:

Custom Field ID: SugarCRM custom field name

Prefix: String prefix

- Available Fields

  • From: Caller 
  • Date: Enter Time Call 
  • To: Called 
  • Unique ID: Asterisk Unique ID Call 
  • Id: Caller ID Zendesk 
  • Recording Link: Link Recorded Call 
  • Name: Caller Name 
  • SIP: Shuttle SIP 
  • Queue: Shuttle Queue 
  • Agent: Shuttle Agent 
  • Position: Queue’s Position 
  • Count: Queue’s Count 
  • Trunk: Shuttle Trunk 

- Suffix: String Suffix 

- Integration: Integration Name

Here a mapping example...

...and the result: your agents will get the SugarCRM Call with the custom fields auto-filled.

The Result

The Integration creates a new Call on the SugarCRM platform every time a call comes in one of the triggered Queues.

You will see this result ONLY if you have correctly enabled popups!

The Call page contains useful information, like the Caller’s Name, the Caller’s Number and the data of the Agent who managed the call.

There is also the possibility to add some notes about the Call, in the dedicated section.If the call recording has been activated (on xCally Shuttle on the triggered Queues) there is also the automatic creation of a Note containing the Recording URL.



The Integration doesn’t work? Check carefully the following steps:

  • the username and password correspond to a valid SugarCRM Admin Account
  • the SugarCRM URI is correct.
  • the Agent is correctly associated to the Queue specified in the created Triggers.
  • The Agent First Name and Last Name in the SugarCRM profile corresponds exactly to the Agent Name in the xCally Shuttle Agent profile.
  • xCally Shuttle Agent Name: Emily Brown
  • SugarCRM Agent First Name: Emily 
  • SugarCRM Agent Last Name: Brown
  • Be sure that you are using one of the recommended browsers and that you have enabled popups
  • Check that you have update correctly the config_override.php file.
  • Be sure that the agent is also correctly logged into the xCally Shuttle web interface.