Additional configuration CRM Service for ServiceNow
Note: Additional CRM Customer Relationship Management, or CRM, is (usually) a software-based, data management method to deal with interactions with customers and potential customers. connector license required per data source.
Introduction
Below the optional configuration you can do to the CRM Service for ServiceNow.
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 a attribute from ServiceNow. 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. Important: counting must restart for each Category. |
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 that determines for which search query it has to be used. Supported are Contact, ContactSearch, Case and CaseSearch |
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. |
|
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.
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
-
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
-
Open the Plugin Settings list
-
The following optional settings can be added:
Note: All plugin settings for the CrmService must have the Scope set to CrmService.
Setting
Value
Scope
ApplicationHost
ServiceNow application URL.
CrmService
ShowStatus
Show what kind of contact is calling. Can be a Contact or Unknown.
Default True.
CrmService
DefaultPhoneNumberRegion
Default ZZ.
CrmService
PhoneNumberFormat
The format used when searching the CRM when a call comes in. There are four values:
-
E164: e.g. +0012345678. See “The International Public Telecommunication Number Plan”.
-
International: e.g. +1 206-555-1234. Based on the E.123 International format.
-
Rfc3966: e.g. tel:+1-206-555-1234. See “The tel URI for Telephone Numbers”.
-
Wildcard: do a wildcard search. Default.
Warning: Change this setting if phone numbers are stored in any of the other formats to improve performance.
CrmService
CaseStatus
Mapping of a case (incident) status (statuscode) to a WebAgent status.
Default:New=OpenWorking=OpenEscalated=OpenClosed=Closed
Left side is the formatted value as configured in ServiceNow, the right side is either New, Open or Closed. Important: this assumes that statuscode (and not statecode) is configured in PluginAttributes as the case's status.
CrmService
ImageUrlFormat
The format to retrirve the image of the contact
Default 'https://ven01783.service-now.com'
CrmService
BaseContactQuery
Contact query format has place holders to fields and filter conditions.
q=sys_user?sysparm_fields={0}&sysparm_query={1}&sysparm_limit=100
Warning: sysparm_limit is mandatory
CrmService
BaseCaseQuery
Case query format has place holders to fields and filter conditions.
q=incident?sysparm_display_value=true&sysparm_fields={0}&sysparm_query={1}&sysparm_limit=100
Warning: sysparm_limit is mandatory.
CrmService
ContactCaseFilter
Case and Contact has a relationship. Attribute and value must be a valid SystemName.
caller_id.sys_id={0}
CrmService
ApiEndpoint
For example: 'https://ven01783.service-now.com/api/now/table/'
CrmService
LoginEndPoint
ServiceNow Login endpoint
For example: 'https://ven01783.service-now.com/oauth_token.do;
CrmService
Username
Login credential - user name
CrmService
Password
Login credential - password
Note: Value should be encrypted by A365.PWTool.exe
CrmService
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
ContactConversationFilter
Value for the convention. Value must be a valid SystemName.
id=[contactid]
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 |
sys)id |
1 |
No |
Id |
{uri.Scheme}: //{uri.Host}//nav_to.do?uri=incident.do?sys_id=[sys_id]%26sysparm_view=ess |
No |
Case |
Title |
short_description |
2 |
Yes |
Name, Search |
|
No |
Case |
Description |
description |
3 |
Yes |
|
|
No |
Case |
Date |
sys_updated_on |
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 |
sys_id |
1 |
No |
Id |
{uri.Scheme}: //{uri.Host}//nav_to.do?uri=sys_user.do?sys_id=[sys_id] |
No |
Contact |
Account ID |
company.name |
2 |
No |
Id |
|
No |
Contact |
Name |
name |
3 |
No |
Name |
|
Yes |
Contact |
Company |
account.name |
4 |
Yes |
Name |
|
Yes |
Contact |
|
|
10 |
Yes |
Search, Email |
|
No |
Contact |
Phone Number |
phone |
20 |
Yes |
Search, PhoneNumber |
|
No |
Contact |
Phone Number 2 |
home_phone |
21 |
Yes |
Search, PhoneNumber |
|
No |
Contact |
Mobile Number |
mobile_phone |
22 |
Yes |
Search, PhoneNumber |
|
No |
Contact |
Photo |
photo |
23 |
Yes |
|
|
Yes |
Contact |
Avatar |
avatar |
24 |
Yes |
|
|
Yes |
Contact |
ContactSearch
A copy of Contact, however Name has also received the Search field type.