Dialogue Cloud

Additional configuration CRM Service for Salesforce

Below the optional configuration you can do to 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.

Note: A CRM connector license specific to each data source is required.

PluginAttributes

This list contains the items which are shown to the user in the WebAgent and ID’s used to identity unique entities. All items are grouped by the Category.

Note: Only modify this list if you want to deviate from the default PluginAttributes. See Predefined PluginAttributes for the defaults and how to override these defaults.

The PluginAttributes list contains the following columns:

Column Meaning
DisplayName Name of the property shown in the WebAgent.
SystemName Must be the Salesforce attribute. If it is part of a linked entity then the alias must precede the attribute.
ShowOnExtensionWindow Indicate that the property is visible in the WebAgent. The main reasons to set this to ‘No’ and still configure it as an item is when the property should not be shown, but is used in a Hyperlink or it’s an ID.
Order The order in which the property is to be shown. The order in which the property is to be shown.
FieldType Zero or more field types, these are covered per Category later on.
Hyperlink Make the property clickable with the Hyperlink specified. It is possible to include the value of a property in the Hyperlink. This is done by putting the value of a SystemName property in square brackets in the Hyperlink. For example if there is a property with the SystemName ‘Example’, then the URL becomes: http://www.example.com/?queryString=[Example]
OpenAutomatically Ignored by the CrmService.
Category The Category for this item.
ShowOnToast Can be used to force the inclusion of the attribute in the query.

It is possible to combine the values of several properties, for instance when a name is split up in multiple properties, e.g. a FirstName and LastName column. In this case both properties should have the same DisplayName and they should appear after each other in Order, e.g. 1 and 2.

Note: ContactSearch will fall back to Contact if no items are supplied for the ContactSearch category. The same rule applies to Lead, LeadSearch, Case and CaseSearch. Only Contact is mandatory to have items.

Contact

The items in this category are the properties shown of a single contact. It supports the following field types:

Field type Description
Id This field type in combination with a value in the Hyperlink column, will be shown as CRM link.
Name The name of the contact which will be shown as the contact’s title.
PhoneNumber Column may contain a phone number.
SipAddress Column may contain a SIP The Session Initiation Protocol, or SIP, is a protocol for multimedia communication (audio, video and data communication). SIP is also used for Voice over IP (VoIP). SIP has interactions with other Internet protocols such as HTTP and SMTP.-address.
Email Column may contain an e-mail address.
Date Column contains a date (and time).
Search Column is searchable. This type should be set for each column containing a PhoneNumber, Email or SipAddress to search for a contact match. This type will also mark a field as a search option if no ContactSearch items are configured.

ContactSearch

This category is used to display a summary of the contact and used for searching contacts. All properties which should be searchable, must have the Search field type. The column containing the values to verify the identity of the caller, e.g. a zip code, must have the field type Verify.

Lead and LeadSearch

See Contact with regards to Lead and ContactSearch for LeadSearch.

Account

This category is used to keep consistency in the other categories. It is used to define the relation between the contact and its account. A lead can only have a company name which may later be part of the contact when the lead is promoted.

Note: Do not include the account alias in the SystemName column.
Note: Set order to 0 if it is an account attribute which is not linked to the account entity, e.g. companyname in the lead entity.

The field types of importance here are Name, PhoneNumber, SipAddress and Email. All items with the field type Name are combined to form the title. The property with any of the others is used as a subtitle.

Case

Note: Only contacts can have cases.

The DisplayNames in this category are fixed. The following items are supported:

DisplayName Description
Title Multiple items can have this DisplayName. Must have the Name field type.
Description Only a single item is allowed to have this DisplayName.
Date Must have the Date field type to be used.
Status The case status including the case status colors. The values must match the CaseStatus setting. Add field type FormattedValue to obtain the display name of this property.

It is also possible to add a ID field type to an ID item or any of the other items. The ID field type in combination with a URL in the Hyperlink column will be shown as a CRM link for each case.

CaseSearch

These must have the same items as the Case category. The difference here is that items may have the Search field type.

PluginSettings

  1. Open 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). An 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. Config page on SharePoint

  2. Open the Plugin Settings list

  3. The following optional settings can be added:

    Note: All plugin settings for the CrmService must have the Scope set to CrmService.
    Setting Value Scope
    ShowStatus Show what kind of contact is calling. Can be a Contact, Lead or Unknown. Default True. CrmService
    DefaultPhoneNumberRegion Iso 3166 alpha-2 code. Default ZZ. CrmService
    PhoneNumberFormat

    The format used when searching the CRM when a call comes in. There are four values:

    Important: change this setting if phone numbers are stored in any of the other formats to improve performance.
    CrmService
    BaseContactQuery Contact query format has place holders to fields and filter conditions.
    q=SELECT {0} from Contact WHERE {1} LIMIT 100
    LIMIT is mandatory
    CrmService
    BaseLeadQuery Lead query format has place holders to fields and filter conditions.
    q=SELECT {0} from Lead WHERE {1} LIMIT 100
    LIMIT is mandatoryContacts have precedence over leads. A total of 'LIMIT' is returned. If there are less contacts, then leads are included until 'LIMIT' has been reached. Only contacts can have cases and the following two settings must be present:
    CrmService
    BaseCaseQuery Case query format has place holders to fields and filter conditions.
    q=SELECT {0} FROM Case WHERE {1} LIMIT 100
    LIMIT is mandatory.
    CrmService
    ContactCaseFilter Case and Contact has a relationship. Attribute and value must be a valid SystemName.
    ContactId = '{0}'
    CrmService
    ContactConversationFilter Value for the convention. Value must be a valid SystemName. CrmService
    CaseStatus
    • New=Open
    • Working=Open
    • Escalated=Open
    • Closed=Closed

    Case status right side values are coming from the Salesforce environment. It should map with UCC values.

    CrmService
    TokenRenewDelay Token renew interval. this should be a number. Default is 2 CrmService

The following mandatory Settings should be added to the default PluginSettings list items to enable the CRM Service for Salesforce:

Setting Value Scope
ApplicationHost Salesforce application URL
This is a mandatory setting that must have a value
CrmService
Username Login credential - user name CrmService
Password Login credential - password
Value should be encrypted by A365.PWTool.exe
CrmService
AppToken Note: SalesForce no longer requires an AppToken. This setting must be empty. CrmService
ClientId Connected App provided client ID.
Value should be encrypted by A365.PWTool.exe
CrmService
ClientSecret Connected App provided Client secret.
Value should be encrypted by A365.PWTool.exe
CrmService
ApiEndPoint Salesforce REST API endpoint for ex: 'services/data/v37.0/' CrmService
LoginEndPoint 'https://login.salesforce.com/services/oauth2/token' CrmService

Predefined PluginAttributes

Note: These predefined attributes may be overwritten/removed by creating a PluginAttribute item in SharePoint with the same SystemName and Category. Do not give it any field types and set both ShowOnExtensionWindow and ShowOnToast to No to remove this attribute from the query. Also make sure that the system name is not included in any hyperlink!
Note: The base query in the PluginSettings list must also be modified when adding attributes of another entity.

Account

DisplayName SystemName Order ShowOnExtensionWindow FieldTypes HyperLink ShowOnToast Category
Company companyname 0 No Name Yes Account
Account ID accountid 1 No Id No Account
Company name 2 Yes Name, Search No Account
Phone Number telephone1 3 Yes PhoneNumber, Search No Account
Owner owner.fullname 4 Yes No Account

Case

Note: {uri.Scheme} and {uri.Host} are only valid for the predefined values by leveraging the ConnectionString. The full URL (with placeholders) is needed when overwriting.

DisplayName

SystemName

Order

ShowOnExtensionWindow

FieldTypes

HyperLink

ShowOnToast

Category

Case ID

id

1

No

Id

{uri.Scheme}://{uri.Host}/lightning/r/Case/[id]/view

No

Case

Title

subject

2

Yes

Name, Search

No

Case

Description

description

3

Yes

No

Case

Date

lastmodifieddate

4

Yes

Date

No

Case

Status

status

5

Yes

FormattedValue

No

Case

Contact

Note: {uri.Scheme} and {uri.Host} are only valid for the predefined values by leveraging the ConnectionString. The full URL (with placeholders) is needed when overwriting.

DisplayName

SystemName

Order

ShowOnExtensionWindow

FieldTypes

HyperLink

ShowOnToast

Category

Contact ID

id

1

No

Id

{uri.Scheme}://{uri.Host}/lightning/r/Contact/[id]/view

No

Contact

Account ID

accountid

2

No

Id

No

Contact

Name

name

3

No

Name

Yes

Contact

Company

account.name

4

Yes

Name

Yes

Contact

Email

email

10

Yes

Search, Email

No

Contact

Phone Number

phone

20

Yes

Search, PhoneNumber

No

Contact

Phone Number 2

homephone

21

Yes

Search, PhoneNumber

No

Contact

Mobile Number

mobilephone

22

Yes

Search, PhoneNumber

No

Contact

Image

photourl

23

Yes

Yes

Contact

Lead

Note: {uri.Scheme} and {uri.Host} are only valid for the predefined values by leveraging the ConnectionString. The full URL (with placeholders) is needed when overwriting.

DisplayName

SystemName

Order

ShowOnExtensionWindow

FieldTypes

HyperLink

ShowOnToast

Category

Lead ID

id

1

No

Id

{uri.Scheme}://{uri.Host}/lightning/r/Lead/[id]/view

No

Lead

Name

name

3

No

Name

Yes

Lead

Email

email

10

Yes

Search, Email

No

Lead

Phone Number

phone

20

Yes

Search, PhoneNumber

No

Lead

Company

company

30

Yes

Name

Yes

Lead

LeadSearch

A copy of Lead, however Name has also received the Search field type.