Calabrio On-Prem Recording URL Addon
This addon is deprecated. We no longer support Calabrio On-Prem.
The Calabrio On-Prem Recording URL Addon
for b+s Connects for Service Cloud Voice
is a Lightning Web Component which can be added to the
Utility Bar of a Salesforce App. For every inbound or outbound call routed through b+s Connects for Service Cloud Voice
, it retrieves the related recording URL from the Calabrio On-Premises server and triggers a Flow which stores the URL in the currently active VoiceCall record.
The Calabrio On-Prem Recording URL Addon
is distributed as part of the b+s Connects for Service Cloud Voice
package.
Supported version: Calabrio on-prem 11.5
Configuration
1. CSP
Setup | CSP | Trusted URLs
- In Salesforce Setup, type
CSP
in the quick find search bar and click onTrusted URLs
- In the page that opens, click on
New Trusted URL
button - In
Trusted URL Information
enter a validAPI Name
for the trusted URL record - In
URL
field, enter the correct url of the Calabrio On-Prem server and include the port if necessary (e.g.https://calabriolab.lab.lan:8447
) - Enable
Active
checkbox - Enable all (or at least the
frame-src
) CSP directives underCSP Directives
- Click on the
Save
button
2. CORS
Follow the steps described in the b+s Connects documentation to configure CORS in Calabrio.
Refer to this page to find the correct Origin to whitelist
3. Custom metadata type: Calabrio on-premises server credentials
Setup | Custom Metadata Types
- In Salesforce Setup, type
Custom Metadata Types
in the quick find search bar, click onCustom Metadata Types
- In the page that opens, search for
CalabrioOnPremSettings
underLabel
column - Click on
Manage Records
underAction
column - Click on
Default Server
underLabels
column - Click on
Edit
button and insert the Calabrio On-Premises server's username and password
The Default Server
credentials record is distributed with the b+s Connects for Service Cloud Voice package,
but multiple credentials records can be created if required. In order to use a different Credentials record to
connect to the Calabrio On-Prem server, the Credentials record's API Name must be set in the Utility Item
settings when adding this addon to a Lightning page (as described in the next chapter).
4. Utility bar item
Setup | App Manager
- In Salesforce Setup, type
App Manager
in the quick find search bar and click onApp Manager
- Edit the App in which the b+s Connects for Service Cloud Voice gadget is already configured
- Open the
Utility Items (Desktop Only)
tab - Click on
Add Utility Item
button and select theCalabrio On-Prem Recording URL
underCustom
section - Make sure that the checkbox
Start automatically
is checked - Insert the Calabrio On-Premises server URL
- Insert the desired Calabrio credentials record API Name (the value can be found under the
CalabrioOnPremSettings Name
column inCustom Metadata Types > CalabrioOnPremSettings > Manage Records
). By default, the component uses theDefault Server
record. - If needed, change the API name of the Flow you need to run (see
Flow instructions
section below) - Click on
Save
button
Flow instructions
- By default, the LWC runs the Flow called
Store Calabrio Recording URL in Task record
which is distributed within theb+s Connects for Service Cloud Voice
package - The Flow accepts two incoming String parameters:
voiceCallId
andrecordingUrl
and stores them in a new Task, respectively in theSubject
andDescription
fields.
Due to a limitation with Salesforce packaging, a VoiceCall record cannot be updated in a Flow distributed in a Second Generation Package. To configure a Flow that updates a VoiceCall record, follow the steps described in the next paragraph.
Update a VoiceCall record with a Flow
A Flow which updates a VoiceCall record cannot be part of a package (as of the date of b+s Connects for Service Cloud Voice
package release version 2.2), but a Flow can still be manually configured in the Flow Builder to update data in an existing VoiceCall record.
The following steps require the User to have a basic understanding of Salesforce Administration tasks.
Configure the Flow to update a VoiceCall record's field
- Create a new custom field (of type text or URL) in the VoiceCall object where the Calabrio recording URL will be stored
- In Salesforce Setup, search for
Flows
and open theStore Calabrio Recording URL in Task record
Flow distributed with this package - Add the element
Update Records
to the Flow - Insert a Label and a valid API Name
- Check
Specify conditions to identify records
andSet fields individually
- From the list of Objects, search and select
VoiceCall
- Under the section
Filter Voice Call Records
, selectId
as Field and thevoiceCallId
existing variable as Value - Under the section
Set Field Values for the Voice Call Records
, set as Field the previously created custom field by selecting it from the available fields list. Set the existingrecordingUrl
variable as Value. - Click
Save
button. - Click
Active
button.
Once activated, the Flow will automatically store the Calabrio Recording URL of a call in the related VoiceCall record generated by inbound and outbound calls.
You can decide to run any Flow instead of the one distributed within this package:
- Create a new Flow which accepts two incoming String variables (not constants)
- Change the Flow API name in the Utility bar of the App in use
Advanced Salesforce Flow with error handling
How it works
For every call answered by the agent, the Calabrio Recording URL Addon component requests the corresponding recording URL to the Calabrio Recording server.
Upon completion of the request, its outcome is forwarded to the Flow configured within the Calabrio Recording URL Addon component, triggering its execution. This Flow accepts two string parameters as input:
voiceCallId
- Record ID of the Voice Call record for the current callrecordingUrl
- URL of the recording
As the Flow is invoked for every call, if the connection to the Calabrio recording server fails or the returned recording URL is invalid, the input parameter recordingUrl
remains empty. This enables further Flow development to implement customized error handling (examples in the next paragraph).
Suggestions for advanced Flow error handling
Possible error cases:
recordingUrl
variable is empty
Possible causes:
- The connection to the Calabrio Recording server failed.
- The Calabrio Recording server couldn't match the Agent's details with a valid recording.
- The Calabrio Recording server found a matching but older (already completed) recording.
voiceCallId
variable is empty or not valid
Possible causes:
- A communication error occurred between the Calabrio Recording URL Addon component and the b+s Connects for Salesforce Cloud Voice.