Dialogue Cloud

Install CRM Service for Salesforce

The CRM Customer Relationship Management, or CRM, is (usually) a software-based, data management method to deal with interactions with customers and potential customers. Service for Salesforce is used to retrieve relevant information about the caller (for both inbound and outbound) during a conversation handled by the UCC A Unified Contact Center, or UCC, is a queue of interactions (voice, email, IM, etc.) that are handled by Agents. Each UCC has its own settings, IVR menus and Agents. Agents can belong to one or several UCCs and can have multiple skills (competencies). A UCC can be visualized as a contact center “micro service”. Customers can utilize one UCC (e.g. a global helpdesk), a few UCC’s (e.g. for each department or regional office) or hundreds of UCC’s (e.g. for each bed at a hospital). They are interconnected and can all be managed from one central location.. The CRM Service retrieves contact info regarding the caller and if applicable the related relevant cases. The CRM Service will be used in combination with the Dialogue Cloud WebAgent.

Note

An additional Dialogue Cloud WebAgent for Voice or for Omnichannel license is required.

Note

A CRM connector license specific to each data source (Database or CRM backend platform) is required.

Dependencies

Follow the instructions below to install the CRM Service for Salesforce.

Request CRM Service for Dialogue Cloud

For customers

Request the Crm Service for Salesforce to be enabled (for specific UCC's) via your regular AnywhereNow contact or Partner.

For partners

  1. Navigate to the Partner Portal

  2. Request the "Integrated with Salesforce" when selecting WebAgent > Webagent For Voice Communication / Webagent for Omnichannel Communication.

    This can be done during:

    1. Create UCC, see: Create - Contact Center (UCC)

    2. Edit UCC, see: View (and edit) - Contact Centers (UCC's)

Validate Endpoint

Note

Required settings fields will be automatically added in your SharePoint lists after requesting this feature through OnePortal Formerly known as Partner Portal. A redesigned web portal for managing Dialogue Cloud deployments.. Some of these settings, like ConnectionString, will need to be completed ASAP with your valid credentials.

  1. Open the UCC Config page on SharePoint

  2. Open the Plugin Settings list

  3. Validate CRMService settings endpoint to ListsPlugin ListsEndpoints

Setting Value Scope
ListsEndpoints

http://FQDN FDQN stands for Fully Qualified Domain Name and specifies the exact location in the tree hierarchy of the Domain Name System (DNS). An example for [hostname].[domain].[top level domain] is [www].[microsoft].[com]/webagentservice/api/v1/settings

http://FQDN/CrmServiceSalesforce/api/v1/settings

Warning

Make sure to leave the fqdn to this service configured as a ".local" URL, especially when using multiple UCC services in the same region. If this is not done, the UCC cannot reach the right webserver internally leading to undesired or non-functional WebAgent behavior.

ListsPlugin

Validate WebAgentService URL

Note

Required settings fields will be automatically added in your SharePoint lists after requesting this feature through OnePortal. Some of these settings, like ConnectionString, will need to be completed ASAP with your valid credentials.

  1. Open the UCC Config page on SharePoint
  2. Open the Plugin Settings list
  3. Validate the following setting:
Setting Value Scope
CrmServiceUrl

http://fqdn/CrmServiceSalesforce

Note

URL (Value) needs to be accessible from the WebAgentService to this CRM Service.
If on the same server this can be http and a .local address.

Warning

Make sure to leave the fqdn to this service configured as a ".local" URL, especially when using multiple UCC services in the same region. If this is not done, the UCC cannot reach the right webserver internally leading to undesired or non-functional WebAgent behavior.

WebAgentService

Configure PluginSettings

Warning

This CRM service depends on settings which need to be identical if used across multiple UCC's within a service, meaning the values should be identical across all UCC configurations using it. We call these primary settings. A primary setting is defined by the first UCC to publish its settings during startup of the service. This may not always be the same UCC if multiple UCC's share this service! If values differ across multiple UCC's this will lead to unpredictable behavior after a service restart. It is extremely important to keep the values consistent/identical and valid.

Note

Required settings fields will be automatically added in your SharePoint lists after requesting this feature through OnePortal. Some of these settings, like ConnectionString, will need to be completed ASAP with your valid credentials.

  1. Open the UCC Config page on SharePoint

  2. Open the Plugin Settings list

  3. Configure the following mandatory settings:

Setting Value Scope
ApplicationHost

Salesforce application URL.

(e.g. https://eu6.salesforce.com/)

CrmService
Username

Username of the user account that has access to the Salesforce API of your environment.

CrmService
Password

The generated encrypted password string of the user account that has access to the Salesforce API of your environment. For more information, see Generating an encrypted password string for CRM Service for Salesforce authentication.

CrmService

Note

The Password setting is a generated encrypted string created with A365.PWTool.exe from your Salesforce password and token. For more information, see Generating an encrypted password string for CRM Service for Salesforce authentication

ClientId Connected app provided client ID.

Note

Value should be encrypted by A365.PWTool.exe

CrmService
ClientSecret Connected app provided client secret.

Note

Value should be encrypted by A365.PWTool.exe

CrmService
ApiEndPoint

Salesforce REST API endpoint

(e.g. services/data/v37.0/)

CrmService
LoginEndPoint

Salesforce Login Endpoint.

(e.g. https://login.salesforce.com/services/oauth2/token)

Use the token endpoint that is valid for the connected app.

CrmService

Configure Salesforce authentication

CRM Service for Salesforce uses the Salesforce OAuth username-password flow. The token request is sent to LoginEndPoint with ClientId, ClientSecret, Username, and Password.

Note

Configuring only ClientId and ClientSecret is not sufficient. CRM Service for Salesforce also requires Username and Password.

The Password value must be the encrypted concatenated password string. For more information, see Generating an encrypted password string for CRM Service for Salesforce authentication.

For additional information on obtaining credentials for this connection, refer to Salesforce's documentation: Create a Connected App.

For additional or optional configuration parameters see Additional configuration CRM Service for Salesforce

Generating an encrypted password string for CRM Service for Salesforce authentication

Accessing Salesforce data requires both a password and a security token provided by Salesforce. Use A365.PWTool.exe to generate the encrypted password string, according to the procedure described below.

To generate a CRM Service for Salesforce authentication password

  1. Use or update the Salesforce Password from your Salesforce administration account. Salesforce automatically sends a new Salesforce Security Token.

  2. Concatenate these two strings by adding the Salesforce Password to the Salesforce Security Token in the following way:

    [Salesforce Password]+[Salesforce Security Token] = [Concatenated Password]

    Example: If the Salesforce Password=TypicalPassword and the Salesforce Security Token= pR8&uI234&BiGgg then the Concatenated Password would be:

    TypicalPasswordpR8&uI234&BiGgg

    Note

    There are no spaces inserted between the 2 strings.

  3. Run the A365.PWTool.exe. When prompted to enter a password, enter the Concatenated Password. Using the previous example, enter this string:
    TypicalPasswordpR8&uI234&BiGgg

    Press Enter. The program encrypts the input string and displays an Encrypted password that should resemble this example:

    9Jp9DTd5/Gbur0MlznIhg8GllpBQ3KYX8NvS0HsyzaM=

  4. Copy this string, making sure to not copy extra characters or spaces, and paste it into the Password field in your UCC's Plugin Settings.