Skip to main content
Version: 5.13

Calabrio Cloud Recording Toolbar

Introduction

This document provides information to install, configure, and manage the b+s Connects for Salesforce Recording Toolbar for Calabrio Cloud, which integrates Salesforce CRM and Cisco Contact Center solution with the Calabrio Cloud recording solution.

Recording Toolbar in idle

Recording Toolbar in pause state during a call

Compatibility

note
  • Supported in Cisco CCE and CCX deployments.
  • Recording feature must be enabled by b+s on request.
  • This integration requires Calabrio ONE Authentication to be enabled.
  • Gateway recording deployments are not supported.
Important!

Due to Salesforce security changes introduced in Winter '24 release, the connection to a Calabrio Cloud server using the new Named Credentials is only possible when using a version of b+s Connects for Salesforce solution greater or equal to 5.9.4. Legacy Named Credentials are only supported in versions below (and including) 5.8.

Installation

The Recording Toolbar is integrated into the b+s Connects for Salesforce package as an Add-on feature. Perform the steps in logical order, in this chapter to correctly configure the Recording Toolbar.

info

Contact b+s to have the Recording Toolbar activated.

Limitation

Due to a limitation in the Calabrio API, it is not possible to show the current state of the recording inside the Recording Toolbar.

Calabrio Server Configuration

Create an API User

This integration requires Calabrio ONE Authentication to be enabled and an API User configured properly. An API user is configured the same as a system administrator, but the purpose of this user is to enable third-party applications to authenticate with Calabrio ONE.

  1. Start Calabrio ONE and log in as a system administrator.
  2. Navigate to Application Management | Global | User Configuration | Users.
  3. Create a new user, pay attention to the following options and fields:
  • Roles: default system Administrator
  • Select the Associated Groups and Teams that this account should have scoping over.
  • In the WFM Views field, assign EnterpriseView as the main view.

Write CRM ID to Calabrio Metadata

In order to save the CRM ID of the call activity to the Calabrio metadata, a type “text” metadata field has to be configured in the Calabrio Metadata Manager. You will have to specify the same key in the Recording Toolbar Settings Meta Data Keys field.

Configure Recording Toolbar in the b+s Configuration record

In order to integrate the Recording Toolbar in the b+s Connects for Salesforce gadget, in the b+s Configuration record page in use, under Integrations > Custom Toolbars click on the Add button to add a new Custom Toolbar.

  • Select the Location of the new Custom Toolbar

  • In URL dropdown, select Add-On / Visualforce page and click on Calabrio Cloud in the adjacent dropdown.

  • Recommended Height: 25

    After adding the Calabrio Cloud Addon to the Custom Toolbars (ref), the section Calabrio Cloud Setting is now visible under Integrations.

Calabrio User Configuration

In order to be able to interact with Calabrio, apart from the API user, the Cisco Agent needs to be matched with the Calabrio User. If FirstName and LastName do not match, the Integration will not be able to find the recording of the current agent call.

The Calabrio user can be set up in two modes:

  • Hoteling User (shared desk)
  • Fix Device assignment

Hoteling User (shared desk)

In Calabrio, the devices (agent phones) are not fix assigned to the agents (Calabrio users). In order to assign the device (agent phone) to the Calabrio user, the Calabrio user name must be provided. This can be done either by using a field from the Salesforce user object or by appending a suffix to the Cisco user name.

Required config for the Recording Toolbar:

  • Use Hoteling User: Checked
  • Salesforce User Field: Field on Salesforce User
  • Appendix to Cisco Username: Appendix

User Login Required Checked

Please refer to the user configuration in the Calabrio ONE documentation to proceed in Hoteling User configuration.

Fix Device assignment

In Calabrio, the devices can be assigned directly to users, making the login process different. As soon as the Calabrio server detects a device (extension) that wants to login, it checks the configuration and proceeds accordingly. No User Login Required is needed in this deployment.

Required config for the Recording Toolbar:

  • Use Hoteling User: Unchecked
  • Salesforce User Field: : empty
  • Appendix to Cisco Username: : empty

User Login Required Unchecked

Please refer to the user configuration in the Calabrio ONE documentation to proceed in Fixed Device assignment configuration.

Detailed fields reference

User Login Required

If auto recording is disabled, this setting needs to be enabled. To define the login information for the user either configure “userIdField” or “userIdExtension”.

Default: false

Example Value: false

Salesforce User Field

A field from the Salesforce User Object that is used for the Calabrio User Name.

Default: Alias

Example Value: Alias

Appendix to Cisco Username

Instead of saving the Calabrio user ID in an extra field. The admin can configure an extension. This extension gets attached to the cisco username and the combination of both are used to log the user in.

Default: empty

Example Value: @abc.com

Calabrio Cloud Named Credentials

Select one of the available Named Credential records.

info

A detailed step-by-step checklist is described in the next chapter.

Please note that only the Named Credential records created using the button "New Named Credential" are displayed here and can be used to connect to the Calabrio Cloud recording server.

New Named Credential button

Click on this button to create a new pair of Named Credential and External Credential that can be used by the b+s Connect for Salesforce package to connect to a Calabrio Cloud Server.

Recording Link Field

Field name of the Salesforce Activity custom text or URL field where the recording link will be stored. If the field is not present or not accessible to the User, the recording link will not be written.

Default: empty

Example Value: pfx__MyCustomField__c

Meta Data Key

Field name of the Calabrio server metadata field to store Salesforce Task Id. If key is not present, the metadata will not be written in Calabrio Server.

Default: empty

Example Value: sf-id-key

Call Status Interval

Sets the timeout between two callStatus requests against the Calabrio Server. The callStatus requests are sent as soon as a call starts until a contactId from Calabrio is retrieved or the call has ended.

Default: 2000

Example Value: 2000

Agent Buttons

This list of checkboxes can be used to enable specific action buttons.

Default: all unchecked

  • Pause : Enables the Pause action during a call.
  • Resume : Enables the Resume action during a call.
  • Segment Save : Enables the Segment Save action during a call.
  • Segment Delete : Enables the Segment Delete action during a call.

Setup the connection to Calabrio Cloud Server

In order to establish a connection to the Calabrio Cloud server, it's required to create and configure at least one set of Named Credentials and External Credentials using the button in the b+s Configuration record page (ref).

Calabrio Cloud Configuration section

caution

As of b+s Connects for Salesforce v.5.9, the Legacy Named Credentials (ref) are no longer supported.

caution

b+s Connects for Salesforce versions 5.9.4 and 5.10.1 shows an "Insufficient privileges" error for Users lacking the View Setup and Configuration permission in their Profile. Upgrading to the latest version of the b+s Connects for Salesforce connector is recommended instead of assigning the View Setup and Configuration setting to the Users' profile.

Create the Named Credential and External Credential pair

In order to create the required pair of Named Credential and External Credential, click on the button New Named Credential present in the Calabrio Cloud Settings section of the b+s Configuration record page in use. The button will change color once the operation is done, signaling the success or failure of the operation. If the operation is successful, the new Named Credential created will be available to be selected in the adjacent "Calabrio Cloud Named Credential" dropdown and a direct link to its configuration page in Salesforce Setup will also appear on the right of the button.
Click on the Open in Setup link to open the new Named Credential record just created in a new tab.

danger

Due to Salesforce's security settings limitations introduced in Winter '24, Managed Packages cannot fully access data stored in Named Credentials and External Credentials. Therefore, it is required to create a pair of these records using the New Named Credential button on the b+s Configuration record page, as described above.

Named Credentials selector and New button

Configure the Named Credential record

Setup | Security | Named Credentials

If required, change the Label field. The Name field can also be changed, but the Named Credential record must be then re-assigned to the b+s Configuration record.

URL: Change this value as needed (default: https://partners.calabriocloud.com)
Label: Named Credential record's display name
Name: API Name of the Named Credential record. It is recommended not to change this value. When changed, the Named Credential must be re-assigned to the b+s Configuration record(s).
Enabled for Callouts: checked (true)
Allowed Namespaces: cnx

Do not change the other fields' value.

Click on Save button

Configure the External Credentials record

Setup | Security | Named Credentials | External Credentials (tab)

Label: External Credential record's display name
Name: Do not change this value if unsure.

In the Principals section, find the Calabrio Cloud Server Credentials Principal and, under Actions, click on Edit.

Set the Calabrio User's Username and Password.

Click on Save button.

Create and assign the required permissions

Setup | Users | Permission Sets

Create a new Permission Set with the following settings:

  1. Apps > Object Settings > User External Credentials > Enable Read
  2. Apps > External Credential Principal Access > Click Edit > Select your External Credential record from Available External Credential Principals column and add it under Enabled External Credential Principals

Important! Assign the Permission Set to the required User(s).

Google Chrome Browser CSRF security changes

The Google Chrome version 80 release changes the default cross-domain (SameSite) behavior of cookies.

SameSite is a reasonably robust defense against some classes of cross-site request forgery (CSRF) attacks, but developers currently need to opt in to its protections by specifying a SameSite attribute. In other words, developers are vulnerable to CSRF attacks by default. This change would allow developers to be protected by default, while allowing sites that require state in cross-site requests to opt in to the status quo’s less-secure model.

Agent Guide

Agent Guide

1. Pause Button

Clicking Pause on a call that is already paused does nothing. You must click Resume to continue recording. Pause does not affect live monitoring.

Calls are available for playback prior to reconciliation, with silence where Pause was applied.

2. Resume Button

If the call is not currently paused, Resume does nothing. If you do not click Resume, the point at which you paused the recording is the end of the audio recording.

During post-call processing, clicking Resume does not appear as a mutual silence event or talk over event.

3. Segment and Save Button

Clicking Segment and Save starts the audio recording of an active call. If QM does not automatically record the call (for example, the caller’s phone number is on the exclusion list, or the call does not meet workflow criteria for being recorded), this button lets you record it and treat it as a normal contact. Segment and Save overrides the exclusion list (configured in Calabrio One under Application Management > QM Contact Flows > Inclusion/Exclusion). If QM is currently recording an active call, Segment and Save does nothing.

4. Segment and Delete Button

Clicking Segment and Delete stops the audio and screen recording of an active call. The recording made up to that point is discarded immediately. The recording resumes after you click Segment and Delete and is saved according to workflow criteria as a new contact.

Troubleshooting

Limitation

Due to a Limitation from Calabrio, only a single 3rd party integration can be connected.

Error message is displayed on login

Symptom

After successfully logging in using the softphone, a "Could not login" error is displayed

Recording Toolbar Could not login.jpg

Possible cause(s)

  • Calabrio server is down
  • Calabrio server connection is blocked
  • Calabrio server certificates have expired or not trusted

Solution

  • Check Calabrio server is up and running
  • Check the client computer has access to the Calabrio server. Access to https://<calabrioserver> from the same browser the agent uses to connect to Salesforce
  • Check Calabrio certificates are accepted by the client computer. Perform the same step as when checking the connection: Access to https://<calabrioserver> from the same browser the agent uses to connect to Salesforce

Recording Control Buttons Do Not Show After Login

Recording Toolbar ControlButtons_NotShowingUp.jpg

If the Recording Control buttons do not show up after logging the agent in to the b+s Connects for Salesforce gadget when the agent’s state is either "ready" or "not ready", it could be due to the following reasons.

Error: Invalid Extension with HD Login/Logout

Symptom

The Connects gadget shows an error: Invalid Extension with HD Login/Logout.

Possible cause(s)

The VoIP device is assigned to a specific agent on Calabrio server. To support this configuration the call center definition configuration needs the userLoginRequired setting.

The userLoginRequired setting must correspond with the Calabrio server configuration.

Error: No active recording found

Symptom After successfully loading the Calabrio toolbar (i.e. the recording buttons are visible and greyed out), when a call is accepted or connected, an error message is displayed below the recording buttons: "No active recording found".

Cause The Calabrio server cannot validate and match the Agent's firstname and lastname.

Solution Verify that the Agent's firstname and lastname are identical on both Calabrio and Cisco Finesse.

General Troubleshooting Tips

Make Sure you can still login with the API user in Calabrio ONE.

When using On-Prem deployments of Calabrio make sure your httpd.conf, registry and web.xml files are configured correctly.

Always check the Browser Console for additional information.