Contact Expert v7.6
Contact Expert Recording
CE can be set up to record voice calls as well as webchat transcripts.
Prerequisites for Call Recording
Specify the following items in a proper manner within CE in order to enable call recording:
- Recording Gateway
- Recording Channels
- Recording Rules
Recording Gateways
A Recording Gateway represents the Unified Communications platform Contact Expert is utilizing (e.g. Microsoft Skype for Business) and through which Contact Expert can record calls.
Navigate to Infrastructure → Recording → Recording Gateways menu.
Use the +New recording gateway button to specify the required parameters of the new recording gateway.
Specify the properties described below.
Click the Submit button to save the modifications to the database.
Recording Gateway General Properties
Name | Assign a unique name identifying the specific gateway. |
Media Server FQDN | Media gateway IP address or domain name from which media streams arrive. For example the FQDN of the Skype for Business Front-end (pool). In Asterisk environment, this property is not used, enter a dummy value. |
Media Server Port | Not used, enter a dummy value. |
Signaling Server FQDN | Signalling gateway IP address or domain name to which signalling information goes. In Skype for Business environment the FQDN of the Skype for Business Front-end (pool). In Asterisk environment, the FQDN of the Asterisk HTTP server. |
Signaling Server Port | Transport protocol port to which signalling information goes. In Asterisk environment, the port of the Asterisk HTTP server. |
User | In Asterisk environment, the username of the ARI user. In Skype for Business environment, this property is not used, enter a dummy value. |
Password | In Asterisk environment, the password of the ARI user. In Skype for Business environment, this property is not used, enter a dummy value. |
Recording Type | Type of the call recording. |
Domain | Specify the domain of to which the particular gateway is assigned. |
Use Signaling Server Secure Communication | Enable to use secure communication towards the signaling server. |
Redundancy of a Recording Gateway
You can specify Media Server Secondary FQDN and Signaling Server Secondary FQDN for the same gateway. This is useful when you have a secondary unified communication server. If the Signaling Server Secondary FQDN property is defined, the secondary CE server is going to use this FQDN to connect to the secondary unified communication server. When the Signaling Server Secondary FQDN property is not defined, the Signaling Server Primary FQDN is going to be used on both primary and secondary CE servers. The same applies to the Media Server Secondary FQDN property.
Note
In Asterisk environment, the Media Server Secondary FQDN is not used, enter a dummy value.
Recording Channels
In a Microsoft telephony environment a single recording channel is enough to provide recording for voice transactions performed by the number of agents a single recording server is able to serve. Follow the below steps in order to manage and maintain the recording channels in your environment.
Navigate to Infrastructure → Recording → Recording Channels menu.
Use the +New recording channel button to specify the required parameters of the new recording channel.
Specify the properties described below.
Click the Submit button to save the modifications to the database.
For more information on the number of agents and other limitations a single recording server is capable of serving please read the deployment sizing chapters carefully.
Please note that improper sizing of the hardware specifications as per the usage loads might result in missing or broken recordings. Keep a steady eye on the maximum number of parallel calls passing through the contact center to see if the dedicated recording resources are sufficient or if additional recording resources are required.
CE recording channels have the following properties on two tabs:
Name | Assign a unique name to identify the specific channel. |
Gateway | Specify the recording gateway to which the channel belongs. |
Extension | Specify a unique channel identifier. Set to the SIP URI of the recorder endpoint (without the SIP prefix). In Asterisk environment, this property is not used, enter a dummy value. |
Password | Not used, enter a dummy value. |
Audio Format | Set to .wma format. |
Observer | Recording channels can have 2 operation modes: recorder or observer. If the Observer channel property is set to ON, the given channel is never allocated for recording purposes. It is reserved by the system for supervisors and allocated on demand for call observing purposes. |
Media IP | A local IP address used to receive media streams while recording. This value is relevant only if multiple network cards exist on the host where CE call recording is running. If left empty, then the recorder picks up the first local IP address. |
Media Port | A local transport port used to receive media streams while recording. If left empty, then the recorder picks up one of the available ports. |
Signaling IP | A local IP address used to receive media stream control while recording. This value is relevant only if multiple network cards exist on the host where CE call recording is running. If left empty, then the recorder picks up the first local IP address. |
Signaling Port | A local transport port used to receive media stream control while recording. If left empty, then the recorder picks up one of the available ports. |
Stream Digits | Not used, leave empty. |
Observe Digits | Not used, enter a dummy value. |
Codec | Encoding used to receive media streams. Leave empty or enter G.711U. |
Packet Size | Not used, leave empty. |
The number of channels in observer mode determines the maximum number of supervisors who can perform call observing at the same time. The number of channels in recorder mode determines the maximum number of calls that can be recorded simultaneously.
Recording Rules
Contact Expert recording rules control when and which calls need to be recorded and where to store the generated media files. When a call is delivered to an operator extension, recording rules are evaluated in sequential order. Recording will start according to the properties of the first recording rule satisfied. If no rule is satisfied, then the call recording request is rejected – no recording is made for that call.
Navigate to Operations→ Workflows → Recording Rules in order to manage and maintain the recording channels in your environment.
Use the +New recording rule button to specify a new recording rule.
Specify the properties described below.
Click the Submit button to save the modifications to the database.
General Properties Tab
Field | Description |
---|---|
Tenant | Specify the tenant associated with the recording rule. |
Name | Assign a unique name to identify the specific rule. |
Gateway | Recording gateway assigned to the recording rule. |
Storage | Name of the file system (storage) where the media files are stored if the given recording rule is satisfied. If your storage is created under Storages, then choose it from the drop-down list. |
Folder | The exact path to the file system directory to store media files, for example: "Tenant 1 Recordings". |
ID Scheme | Specifies the rule used to construct identity for media files. See below for further details on the available options. |
Storage Layout | Determines the way media files are organized into folder hierarchies. See below for further details. |
Time Range | A date range specifying when the recording rule is active. |
ID Scheme Options
The Default scheme would generate recording files with the name assembled as:
[rule id (5 characters)][gateway id (5 characters)][line id (5 characters)][current msecs (15 characters)][random number (10 characters)]
The Custom 1 scheme generates files such as:
[rule name (10 characters)]_[yyyymmdd]_[hhmmss]_[phone (16 characters)]_[random number (4 characters)]
Storage Layout Options
Folder structure for the Campaign based layout:
[recording rule root]/[campaign id]/[resource id]
Folder structure for the Date based layout:
[recording rule root]/[yyyy-mm-dd]/[hh]
Recording Policy Tab
Field | Description |
---|---|
Recording Ratio | Specifies the percentage of calls to be recorded. Its default value is 100, recording every conversation. |
Maximum Call Duration | Maximum amount of time a recording is allowed to cover. Recordings over this limit are not kept. |
Maximum Storage Size | Maximum overall size of the media files in the storage location. The recording rule is automatically inactivated when this limit is exceeded. |
Maximum File Size | Maximum size of media files which can be stored in the storage location. Files over this limit are not kept. |
Maximum Number of Files | Maximum number of media files in the storage location. The recording rule is automatically inactivated when this limit is exceeded. |
Maximum File Lifetime | The amount of time media files are retained in the storage location. When a file becomes older than this value, it is automatically deleted. |
Wait for confirmation | Specifies whether permanently storing recorded conversations requires confirmation from agents or not. This property can be used to record each call but only store media files permanently if human agents explicitly orders so (e.g. for recording abusive calls). |
Active Daily Periods Tab
This tab allows the limitation of the recording rule to a certain period of time on a weekday.
Recording Criteria Tab
This tab offer the specification of complex call recording criteria based on values specified for the following call parameters:
- Calling number
- Called number
- UUI
- Collected Digits
- Directory Number
- Priority
- Trunk Id
You can use the ?
character to designate any single alphanumeric character, and *
to designate a sequence of alphanumeric characters.
For example, assuming a recording criteria to match calls with a calling number of +1234567890, all of the following Calling Number values would match:
**+1234567890**, or **1234567890**, or **23456789** etc.
You use a '*' character in front and back to make sure the rule matches even if there are some additional characters in front of the number, and at the back.
Note
When specifying more than one field, they are interpreted using a logical AND filter.
Tip
Make sure you test your recording criteria extensively. An incorrect criteria might render a rule inactive, resulting in non-recorded calls.
Storages
Storages are physical locations on a filesystem or network area CE can access in a read/write fashion (Full permission).
CE tenants keep business specific data in here such as audio files for announcement messages, recording files or contact list process import/export files.
Please ensure that the file path exists and CE is able to access it and write to it.
Navigate to Infrastructure → Recording → Storages menu.
Use the +New storage button to create a new storage entry.
Specify the properties described below.
Click the Submit button to save the modifications to the database.
Specify the following details of the new entry:
Tenant | Choose the associated tenant which will use the storage. |
Name | Specify the unique designation of the storage. |
Location | Specify the exact path to the storage, for example C:\Media. |
Audio Files
Deployment administrators have the possibility to customize their call center according to their needs. They are able to upload audio files that are used for the different Skype messages.
Navigate to Infrastructure → Recording → Storages menu.
Click Edit of the tenant entry.
Click the Audio Files tab.
Here you can see the list of already uploaded files.
Use the +New audio file button to add voice files.
Choose the file to be added to the list.
Click on Upload.
Use the Download button to save an audio file.
Use the Rename button to specify the new designation of the file.
Recording Files
Recording files of the conversations are stored in the relevant storage of the particular tenant if it is explicitly specified in the Recording Rules.
Defining Storage Location for Recordings
Please follow the instructions specified in the Recording Rules article to define the storage location where all conversation recordings will be saved.
Defining the Identity Scheme of the File
CE saves the media files according to a specified identity scheme, which can be selected in the General Properties of the related Recording Rule.
Setting the Audio Format of Recordings
The file format to save the recordings can be specified, as well. Follow the steps described in the Recording Channels article.
Please note that the file format must be .wma in case of Skype for Business telephony platform.
After applying the steps specified in the above mentioned chapters, the recording files will appear in the Storages section of the CE Portal. The files can be downloaded from here in the same method as the announcement files.
Recorded calls can be observed live or evaluated at a later time.
External File Servers
If the storage is located on an external, separate file server and not on the CE Core Host, the following steps must be performed in order for CE to be able to access the storage across the network. Otherwise the users will not be able to create storages or the system will not be able to store or access the data available on it.
Windows based external file servers
Ensure the external file server is part of the same Active Directory domain as the CE Core Host(s).
Create the folder on the external file server which is to be shared over the network.
Grant Full Access to the folder of the CE Core Host computer account (or both the primary and secondary server computer accounts in case of HA environment).
Ensure subfolders and files inherit these permissions automatically regardless of who created them.
Share the folder by clicking Sharing → Advanced Sharing.
Grant Full Access on the share on both the primary and secondary server computer accounts.
Non-Windows based external file servers
Configure the file server service to present a Windows compatible (SMB) network share on the network.
Mount the newly created network share on the CE Core Host computer (or computers in case of HA environment) under the user account the CE services are using (by default SYSTEM). Make sure the mount is persistent.
Assign a letter as designation to this mount.
Changing Storage
If for any reason you need to change the storage path of a tenant, and you have existing recording and message (audio) files, you will need to physically copy (or move) the existing files and folder structure to the new location, making sure the new share meets all requirements described in this document.
Note
Recording files generated after the relocation of the storage location are going to be played back fine. Items generated before the move might not play back for some time. The system performs a nightly maintenance on its reference of all recording files and will eventually be able to play back old recordings as well.
Set up the new storage location as per the guidelines in this document.
Try to schedule this storage migration to finish before, but as close to 22:00pm (in the time zone of the CE Core Host server) as possible, to minimize the time the old recordings might not be playing back.
Make sure no calls are ongoing in the tenant.
Copy the existing storage including all of its subfolders intact to the new location.
Navigate to Infrastructure → Recording → Storages menu, select the proper tenant storage and update the path.
Playing Back Recordings in a HA Environment
If the CE system is deployed in a Highly Available fashion, then the Add-CEMediaReplayShare
cmdlet must be executed on both CE servers to be able to play back recordings regardless of which CE server is active.
For further information on this and other CE PowerShell cmdlets, please read the PowerShell Commands article.
Evaluating Recorded Calls and Call Observation
There are two ways to acquire recordings – retrieving recordings of past conversations and observing ongoing voice conversations.
Acquiring Recorded Calls
You can access call recordings by following the general way to search for specific contacts in CE.
Navigate to Operations → Customers → Contact Records.
Specify the search criteria based on contact, campaign properties or collected data.
Click on Edit in order to check the Contact History of the particular customer.
The last tab indicates which interactions were recorded.
Use the Replay link of any of the recorded conversations and a new window appears.
This window displays several details (e.g. file name, size, length, encoding, format) about the recorded conversation's media file.
The recorded conversation can be replayed by clicking the play button.
A media player is embedded into the window as an applet. This enables basic media control functionalities (e.g. start, pause, continue).
The media file can be downloaded by clicking the Download link.
Observing Ongoing Calls
Supervisors can access live calls.
Navigate to Reports → Real-time Monitors → Agent Status Monitor *in order to listen in to ongoing conversations (call observing).
This report shows the icon next to each operator having a task from voice media and being in a connected state.
Click this icon to listen in to live conversations between the specific operator and the connected customer. This action can be done by Supervisors.
Call observing can be terminated by the supervisor or will be terminated automatically once the call is disconnected.
Supervisors should renew the call observing request for each distinct conversation.
It is not possible to permanently bind to an operator extension and listen into multiple, consecutive conversations.
Chat transcripts
Contact Expert stores a reference to the cloud based chat transcripts, not the actual transcripts themselves. The reference is stored in the local database, the transcript is stored within Buzzeasy cloud services using Microsoft Azure Storage. Data retention policy can be defined for each individual tenant.
If needed, customers can set up and use their own Microsoft Azure Storage. This needs to be configured in Geomant's Buzzeasy cloud services, please get in touch with your Geomant Account manager or Business Partner.
Recording Consultative Calls
With Skype for Business and Avaya voice platforms, while the customer is on hold and the agent is in conversation with a consultant, CE records the conversation with the customer only, which means that the hold music that is played to the customer is recorded only. The conversation between the agent and the consultant is not recorded.
With Asterisk platform, while the customer is on hold and the agent is talking to a consultant, CE does not record the conversation between the agent and the consultant.
Importing recordings from CE to Verba
Configuration on Verba side
- Create a user account and a shared folder on the Verba server, with the user having full permission on both the share and the folder itself. This is the network share CE will upload media files and metadata files to, this network share can be anywhere if both CE and Verba can access it.
Create an import source for CE on Verba Portal > Data > Import Sources. When setting up the import source add “StartTime”, “EndTime” and “Duration” as field paths to their CDR field and specify at least the “Source Caller ID” and the "Destination Caller ID" too.
The above seen field paths or metadata names are used by CE to construct metadata with.
Create a data management policy for the import source created above (Verba Portal > Data > Data Management Policies). Make sure you specify periodic scheduling with the intended import period.
Make sure Verba Import service is running on the Verba server associated with the import source, this can be checked on Verba Portal > System > Servers > [Server name] > Service Control
Configuring CE side
Specify the Post Recording Command in the used recording rule (CE Portal > Workflows > Recording Rules > Edit > Integration Options). Modify the script path and the SharedFolderForVerba script argument to match your environment.
Post Recording Command example
powershell.exe -ExecutionPolicy Bypass -File "C:\Geomant\CE\Work\Extract-MediaFileForVerbaImport.ps1" -MediaFilePath "{mediaFilePath}" -SharedFolderForVerba "\\[Verba Server Ip address]\MediaFilesFromCE"
Open the Extract-MediaFileForVerbaImport.ps1 script, found in CE Install Root\Work directory, and specify the values of the $userNameForSharedFolder and $userPasswordForSharedFolder variables. They should be set to the environment specific user name and password by which the shared network folder SharedFolderForVerba can be accessed. See the comments in the script for more details.
After a successful voice task, the recordings are visible on Verba Portal (Conversation > Search).