Skip to contentSkip to navigationSkip to topbar
Rate this page:
On this page

Upgrade Guide for Flex-Salesforce

Upgrading Click-to-Dial to Native Outbound

upgrading-click-to-dial-to-native-outbound page anchor

If you have been using our Flex-Salesforce Integration, you might remember deploying Functions(link takes you to an external page) to your Account. The Functions-based click-to-dial implementation can now be moved to a Native Outbound Dialing(link takes you to an external page) implementation. This provides the following benefits:

  • Take advantage of the increased stability and scale of the Flex platform
  • Gain access to additional features as they are rolled out for Outbound Dialing


If you are configuring the SFDC plugin for the first time, then you will get the native implementation by default. You will not see the option to perform a migration, and you just need to ensure that the following prerequisites are satisfied.


prerequisites page anchor

Step 1: Enable Native Outbound Dialing on your Account

step-1-enable-native-outbound-dialing-on-your-account page anchor

Enable and configure the Flex Dialpad via the Twilio console(link takes you to an external page).

Configure the Flex Dialpad.

Step 2: Set up Flex Admin

step-2-set-up-flex-admin page anchor

Navigate to the Salesforce Integration(link takes you to an external page) in the Flex Admin:

  • A 'Migrate' button will be visible within the Salesforce configuration page.
  • Click 'Migrate'. This will update the integration to rely on the Flex Dialpad.
  • After completing the migration, you will be unable to revert to the Functions-based approach.

Step 3: Clean up your environment

step-3-clean-up-your-environment page anchor

After completing the migration, we recommend taking the following steps to clean up your environment:

  • The Twilio Functions related to the Salesforce integration are no longer needed and can be removed
  • The TaskRouter Workflow filter for function-based click-to-dial is no longer needed. We recommend removing that filter.
  • The outbound caller ID and voice recording option will no longer be configured within Flex Admin. You'll use the Twilio Console(link takes you to an external page) instead.

Upgrade to Generally Available version

upgrade-to-generally-available-version page anchor


You are using the beta integration if you downloaded and deployed plugin-flex-salesforce-integration to your Flex Application yourself.

Upgrading from the beta release requires the following steps:

  1. Make a note of entries in your sfdcConfig.js file - you will need these values when configuring the GA version of your Flex-Salesforce Integration
  2. Navigate to Runtime>Assets(link takes you to an external page) in your Twilio Console to delete the plugin (i.e. Beta version).
  3. Delete the Functions created in the above steps by navigating to Runtime>Functions(link takes you to an external page) .
  4. Follow the steps described in the Setup.

[Deprecated] Setting up Click-to-Dial using Functions

deprecated-setting-up-click-to-dial-using-functions page anchor

Create Twilio Functions for Outbound Calling

create-twilio-functions-for-outbound-calling page anchor

Navigate to the Flex-Salesforce integration template in the Twilio console(link takes you to an external page) and click Create.

Close the window once the functions are created and visible in Runtime>Functions(link takes you to an external page).

Set up TaskRouter for Outbound Calling

set-up-taskrouter-for-outbound-calling page anchor

To ensure that we only route calls to workers that click on phone numbers in Click-to-Dial scenarios, we need to create a routing rule.

Navigate to your TaskRouter Workspace(link takes you to an external page) and select the Workflow you will use for outbound calls. Then, add a filter as shown in the following screenshot:

TR Workflow Filter for Outbound Calls.

[Deprecated] Setup for the Beta Salesforce integration

deprecated-setup-for-the-beta-salesforce-integration page anchor

If you deployed an older version of the Flex-Salesforce integration, you will need the following assets to repeat the setup process:

Asset TypeAsset Source(s)
Flex-Salesforce Integrationplugin-flex-salesforce-integration-0.3.0.js(link takes you to an external page) takes you to an external page)
Call Center Definition File (Twilio-Hosted Flex)callCentreDefinition_HostedFlex.xml(link takes you to an external page)
Call Center Definition File (Self-Hosted Flex)callCentreDefinition_selfHost.xml(link takes you to an external page)
Outbound Caller IDPhone Number(link takes you to an external page)
Flex-Salesforce Integration ConfigurationsfdcConfig.js(link takes you to an external page)

Please note that instead of downloading the above assets, you can also directly point your implementation to the Asset Source paths mentioned.

By default, pointing your implementation to the source paths will sign you up for automatic updates - if you do not wish to subscribe to automatic updates, it's best to download the assets instead.

Enable integrations with your Flex project

enable-integrations-with-your-flex-project page anchor

If any of the following applies to you, you will need to modify the Flex-Salesforce Integration Configuration file (sfdcConfig.js):

  • You want to set up outbound dialing
  • You want to use a global caller ID for agents who do not have a specified caller ID
  • You have your own custom workflow that you'd like to use
  • You have an existing customer channel that handles outbound voice calls

Your sfdcConfig.js file should look something like this:

/*in Beta/GA, this will move to CRM configuration screens */
var sfdcConfig = {};
sfdcConfig.globalParams = {
outboundWorkflowSid: "", //leave it empty,if using default Workflow
outboundTaskChannel: "", //leave it empty,if using default Voice Channel
SFDCBaseUrl: "" // Your SFDC Org
sfdcConfig.agentParams = [];
// default Global Caller Id for outbound calls, when not specific caller Id has been
//defined for an agent in the worker attribute viz. callerId or below agentParams
window.sfdcConfig.defaultAgentParam = {
outboundCallerId: "+447777777777"
// these are caller ids for various agents
//- you can use this setting here if not defining in worker attribute
sfdcConfig.agentParams["user1"] = {
outboundCallerId: "+44777777777"
sfdcConfig.agentParams["user2"] = {
outboundCallerId: "+44777777771"

Populate the relevant information in this file depending on your needs.

Rate this page: