Concepts and Insights
Connects Directory Search Logic
The Directory Search allows the agent to search for Salesforce records using either a phone number or a name. The backend lookup behavior and the types of records included are now fully configurable through b+s Configuration.
When the agent enters a search string, the system determines whether the string is a phone number or a text search. Based on the type of input, the lookup will:
- Search by Name
- Search by Phone Number
The administrator defines which Salesforce Objects (standard or custom) are included in the lookup, along with the fields used for displaying results.
If the "Include Directory Numbers" setting is enabled, global numbers and the numbers assigned to the Call Center are also included in the lookup. Directory Numbers are searched using Phone and Name fields.
Only records the agent has access to (based on Salesforce sharing settings) are returned.
Call Log Entries
If the setting Call Log Type is set to Call Activity Record
, Connects for Salesforce - CCE/CCX Edition writes a call log entry into the Task table of Salesforce for established calls.
The call log entries can be found in the Call Center Reports of Salesforce (e.g. the My Calls Today report).
The fields are populated in this initial entry as follows:
Field | Field Label (en) | Value |
---|---|---|
OwnerId | Assigned To | The Salesforce ID of the logged in user |
Subject | Subject | Call |
CallType | Call Type | Inbound or Outbound |
Status | Status | Completed |
CallObject | Call Object Identifier | A unique ID for this call |
Description | Comments | If "Show Call Log Comment Field" is enabled, the agent can add a short comment on the Connects Gadget. |
cnxCTIInfoc | CTI Info | Additional call information: ANI + DNIS for inbound calls and Dialed Number for Outbound calls |
ActivityDate | Due Date | Current date, the date when the activity was created |
WhoId | Name | The result of the ANI lookup for inbound calls (or DialedNumber lookup for outbound calls), if one single entity of the following types was found: Contact or Lead |
WhatId | Related To | The result of the ANI lookup for inbound calls (or DialedNumber lookup for outbound calls), if one single entity of the following types was found: Account, Asset, Campaign, Case, Contract, Opportunity, Product, Solution, Custom objects with the setting Allow Activities enabled. |
After this initial entry is saved, it is possible to add customized data to the record.
Salesforce is enforcing Field-Level Security in Lightning Experience, if an agent has no right to view and edit a field (e.g. cnxCTIInfoc), the field remains empty.
If changing the existing call log entry through customization, be aware that some of the fields may be overwritten again later. More information about the fields being overwritten can be found in the following tables.
If the agent clicks the button to assign the call log entry to the currently displayed entity, the following fields are updated with the displayed entity.
Field | Field Label (en) | Value |
---|---|---|
WhoId | Name | The WhoId is updated, if the currently displayed entity is a Contact or a Lead. |
WhatId | Related To | The WhatId is updated, if the currently displayed entity is one of the following: Account, Asset, Campaign, Case, Contract, Opportunity, Product, Solution, Custom objects with the setting "Allow Activities" enabled. |
At the end of the call the following information is updated in the existing record:
Field | Field Label (en) | Value |
---|---|---|
CallDisposition | Call Result | The selected Wrap-Up reason or an empty string, if no reason was selected |
CallDurationInSeconds | Call Duration | The call duration in seconds |
If the current date changed during the call, the browser was closed before the call ended, or the browser page was reloaded when the call ended, this update cannot be performed and the CallDisposition may result as empty, and the CallDuration may be 0.
Placeholders used in some parameters
Some of the configuration values allow the inclusion of placeholders for data copied from the current work item (call, ticket, chat).
Existing placeholder values:
{AgentId}
: Agent ID of the agent{ANI}
: ANI from CTI information of the call{CallKeyCallId}
: Unique number for the call routed on that day{CallKeyPrefix}
: Day when the call was routed{CallKeySequenceNum}
: Call sequence number{CallType}
: Cisco call type from CTI information of the call{Channel}
: Channel Type (VOICE, TICKET, CHAT){CrmId}
: ID of an activity record for the current work item{DATE:LLLL;LOCALE:EN}
: Current timestamp with format and locale. For a complete list of available format types refer to the official Website of Moment.js: http://momentjs.com/docs/#/displaying/format/{DATE:YYYY-MM-DD HH:mm:ss}
: Current timestamp with format. For a complete list of available format types refer to the official Website of Moment.js: http://momentjs.com/docs/#/displaying/format/{Destination}
: Destination of work item (= DNIS or Dialed Number for voice call){DialedNumber}
: Dialed Number from CTI information of the call{Direction}
: Direction of the work item{DNIS}
: DNIS from CTI information of the call{<ECCVarName>}
: Name of an ECC variable. e.g. {user.myECCVar}{<ECCArrayName[index]>}
: Name and index of a value from ECC array. e.g. {user.myECCArr[5]}{Id}
: Work item ID (call ID for voice call){<LocalVariable>}
: Local variable which is set via the Connects Integration API.{PV1}
through{PV10}
: Peripheral variable 1 through 10{QueueName}
: Name of the queue{QueueNumber}
: ID of the Queue Name{Sender}
: Sender of work item (= ANI for voice call){UniqueId}
: A unique ID for the work item{RelatedObjectId}
: The unique ID of the Salesforce record where a click-to-dial call was initiated{Found*EntityName*}
: (e.g {FoundContact}). ID of the found (SearchAndScreenPop) record of the Entity if a single matching record was found for they Object type. Only available in "New Record URLs". Only available after the CRM lookup (SearchAndScreenPop) is completed.{FoundRecordsList}
: will pass all found (SearchAndScreenPop). Only available after the CRM lookup (SearchAndScreenPop) is completed.Record IDs in the CSV format. E.g. 0033N00000TyDy1QAF, 0033N00000TxMJ2QAN, 0013N00000bDswRQAS
Required Settings for SSO Deployment with Mozilla Firefox
Because of the Cisco SSO architecture, SSO won’t work with the JSON-viewer from Mozilla Firefox. All users who use Mozilla Firefox with SSO, need to change the following configuration in their browser.
- Enter the following into the navigation bar of your Firefox browser: about:config
- Copy and paste devtools.jsonview.enabled into the search row that appears.
- Select devtools.jsonview.enabled. The value of this configuration will be displayed in the center of the bar. If this value is
true
, click on the toggle button on the right hand side to change the value tofalse
.
New Record URL codification
00U
: Event00T
: Task00Q
: Lead001
: Account003
: Contact006
: Opportunity800
: Contract500
: Case501
: Solution01t
: ProductA02
: Phone
Salesforce Permissions Required by User Function
Depending on your role you are required to have certain permissions assigned to your Salesforce user. The package contains Permission Sets for the following roles that contain the listed permissions.
Agent
The Agent Permission Set contains all permissions required to work with the Connects Gadget and the integrations developed for agents.
Object Settings
Object: b+s Configurations
Enabled Permissions:
- Tab Settings
- None
- Object Permissions
Read
- Field Permissions
Read access
on all fields (where available)
Object: Task
Enabled Permissions:
- Field Permissions
Read AND Edit access
on all custom Task fields that come with the b+s for Cisco Contact Center package
Object: User
Enabled Permissions:
- Field Permissions
Read access
on all custom User fields that come with the b+s for Cisco Contact Center packageEdit access
on Speed Dial Numbers so agents are able to manage their speed dial numbers inside the b+s Connects Softphone
If you want the agents to be able to edit their auto-login settings, you must also provide them with Edit access
for those fields. To do this, just clone and edit the Agent Permission Set.
Apex Class Access
Enabled Apex Classes:
- cnx.CnxSfdcClasses
Visualforce Page Access
Enabled Visualforce Pages:
- cnx.CnxSfdcFrame
- cnx.MainPage
- cnx.MyCallsToday
- cnx.NotificationPopup
- cnx.Utils
- cnx.UtilsConsole
- cnx.UtilsLightning
- cnx.cnxRealtimeView
- cnx.bsRecordingToolbar
Supervisor
The Supervisor Permission Set extends the permissions that a normal agent has. This means that for an agent who is also a supervisor, you need to assign both Permission Sets.
Visualforce Page Access
Enabled Visualforce Pages:
- cnx.bsSupervisor
Configuration Editor
The Configuration Editor Permission Set contains all the necessary permissions to access and edit the Connects Configurations for your Salesforce org.
Object Settings
Object: b+s Configurations
Enabled Permissions:
- Tab Settings
Available
andVisible
- Object Permissions
- All enabled (
Read, Create, Edit, Delete, View All, Modify All
)
- All enabled (
- Field Permissions
Read
andEdit access
on all fields (where available)
Object: b+s Configuration Assignments
Enabled Permissions:
- Tab Settings
Available
andVisible
- Object Permissions
- All enabled (
Read, Create, Edit, Delete, View All, Modify All
)
- All enabled (
- Field Permissions
Read
andEdit access
on all fields (where available)
Visualforce Page Access
Enabled Visualforce Pages:
- cnx.ConfigurationEditPage
- cnx.AssignUsers
- cnx.DeleteUserAssignments