XCALLY section | Voice → Voice Recordings |
On this page |
📋 What’s about
XCALLY allows you to record voice calls.
You can enable call recording for Voice Queues: calls going through the enabled queue will be automatically recorded:
Voice Menu → Voice Queues → Edit Voice Queue → Advanced Settings → Recording Format (to enable, choose a recording format)
You can enable call recording for Queue Campaign: calls going through the enabled queue campaign will be automatically recorded
Motion Bull → Queue Campaigns → Edit Queue Campaign → Advanced Settings → Recording Format (to enable, choose a recording format)
You can enable call recording for Agents: Agents can manually record calls
Staff → Agents → Edit Agent → Phonebar Settings/ WebRTC Settings → Enable Recording
✂️ Split Voice Recordings
XCALLY allows you to record voice calls with a single audio per speaker using the Split Voice Recording feature.
The system will record in stereo and not in mono
This is the first version of the Split Voice Recordings feature. We are still working to better your experience using this new product improvement
Requirements
You need to install the 'ffmpeg' component Command for Debian: apt-get install ffmpeg
And restart the motion service to apply the change
The Split Voice Recordings feature is available for:
Voice Queue Calls automatic recordings (inbound, outbound, internal routes)
Motion Bull Queue Campaign automatic recordings, for all dialer methods
Manual recordings by Agents via Phonebar or WebRTC
Please, be aware that enabling the Split Voice Recordings feature may increase CPU usage and potentially affect performance. We recommend you to monitor the system performance while using this feature.
From the Settings Menu → go to General → go to Global section and Enable audio split for voice recordings
To correctly use the Recording Calls feature, please add the option xX in the Queue and Dial applications. In this way, the recordings made with MixMonitor will be also stored.
If you notice some issues in Call Recordings, please check that the parameter ‘automation’, under /etc/asterisk/features.conf, is uncommented as shown below.
[featuremap]
automixmon => *3
🛑 Stop Recording on Voice Call Transfer
From General settings, you can select this option if you want the recording to stop when a call is transferred (discover how transfer works on this page).
For outbound calls, the recording will be stopped if you switch on the option
Pay attention that if you have configured the outbound route with settings → General → Recording (by choosing a format), the recording will be active after voice call transfer
For inbound calls, stop recording on voice call transfer works in different ways, depending on whether the transfer is blind (when agent1 transfers the call to agent2 immediately) or attended (when agent1 calls before agent2 and then he transfers to them the call). In case of blind transfer the recording will always be stopped, in case of attended transfer depends on whether the transfer is internal or external.
SCENARIO
Stop Recording on Voice Call Transfer | Transfer Type | Recording |
---|---|---|
ON | BLIND to Internal | 1 REC (Agent1&Client1) |
ON | BLIND to External | 1 REC (Agent1&Client1) |
ON | ATTENDED to Internal | 1 REC [(Agent1&Client1) + (Agent2&Client1)] |
ON | ATTENDED to External | 1 REC (Agent1&Client1) |
OFF | BLIND to Internal | 1 REC [(Agent1&Client1) + (Agent2&Client1)] |
OFF | BLIND to External | 1 REC [(Agent1&Client1) + (Agent2&Client1)] |
OFF | ATTENDED to Internal | 1 REC [(Agent1&Client1) + (Agent2&Client1)] |
OFF | ATTENDED to External | 1 REC [(Agent1&Client1) + (Agent2&Client1)] |
Inbound Calls
Agents → Edit → Record calls to user extension →Inactive (on both agents involved), so recording is not automatic on the agent channel
Client1 calls on a internal route Agent1 (not a Queue which has own settings)
Agent1 starts the registration manually and then transfers the call to Agent2
If you switch ON Stop Recording on voice call transfer:
With Transfer Type BLIND to Internal/External, output will be with a call recording only between Agent1&Client1
With Transfer Type ATTENDED to External, output will be with a call recording only between Agent1&Client1
With Transfer Type ATTENDED to Internal, output will be with a call recording between Agent1&Client1 + recording between Agent2&Client1
If you switch OFF Stop Recording on voice call transfer there will always be an output with a call recording between Agent1&Client1 + recording between Agent2&Client1
💡 Voice Recording Section
From Voice Menu, you can access the Voice Recording section.
Consider that it is possible to view voice recordings also with the new experience: explore documentation at this link
The list of the items displayed contains all the recording files available on the system:
Each recorded call shows the following information:
Type: type of the calls (inbound, outbound, internal or dialer)
UniqueID: uniqueID of the call
Caller: caller phone number
Called: called phone number
Connected: the internal number of the agent that has managed the call
Queue: name of the queue the call was managed
Agent: the agent who has managed the call
Rating: the rating assigned to the call. You can just click on the recording and choose a value (from 1 to 5 stars). Moreover it’s possible to insert a comment note, visible in the popup that opens when clicking on the registration and also as tooltip by passing the cursor over the rating
Audio: click on play button to hear a preview (ONLY for .wav format)
Date: date of the recording
Disposition / Second Level Disposition/ Third Level Disposition: the labels used if the call has been disposed
Transcribe: the status of the transcribe action
Sentiment Analysis: the status of the sentiment action
Post Call Analytics: the status of the sentiment action
In the header you can find two Search fields:
search by Date Range
search by Value → The tooltip icon links to this wiki to know fields on which filter is applied. In fact search is done on all these columns:
Id | UniqueId | CallerIdNum | MemberName | CallerIdName | AccountCode | UserId |
Channel | ConnectedLineNum | ConnectedLineName | Context | Exten | Value | Type |
Rating | Queue | Location | FileUri | FileText | CreatedAt | UpdatedAt |
UserDisposition | UserSecondDisposition | UserThirdDisposition | TranscribeName | TranscribeStatus | FailureReason | |
Sentiment | sPositive | sNegative | sNeutral | sMixed | tempSentiment |
The three dots menu at the right end of the line shows the commands that can be applied to the selected recording:
Edit Voice Recordings: see LINK
Run Transcribe (AI Tool): when you click on it, the transcribe process starts and the label IN PROGRESS is shown until it is COMPLETED
Run Sentiment (AI Tool): when you click on it, the sentiment process starts and the label IN PROGRESS is shown until it is COMPLETED
Run Transcribe&Sentiment (AI Tool): this command runs transcribe and sentiment at the same time. When you click on it, the process starts and the label IN PROGRESS is shown until it is COMPLETED
Run Post call analytics (AI Tool): when you click on it, the post call analytics process starts and the label IN PROGRESS is shown until it is COMPLETED
Download Voice Recording: click here if you want to download the selected recording file
Delete Voice Recording: click to delete the selected recording file
The list of commands that are shown clicking on the command menu depends on the actions that can be applied to the recording file at the moment.
If you want to select multiple recordings and apply commands to all of them in a while, just click the box you find on the left to select the item or click on the box on top to select all of them.
When you have done a selection (of one, more than one or all the recordings), some new commands will appear on the right side of the header:
Voice recordings and permissions
Based on permissions set in the User Profile, Users can see Voice Recordings on these conditions:
if the user has permission only on Voice Recordings, he can view the Voice Recordings section with an empty table
if the user has permissions on Voice Recordings, Voice Queues and Queue Campaigns, he can view Voice Recordings belonging to assigned voice queues or queue campaigns (internal, inbound, dialer related to queues). So if the user has view of the queues but not the agents, he still views the recordings of the agents assigned to those queues
if the user has permissions on Voice Recordings, Voice Queues, Queue Campaigns and Agents, he can view Voice Recordings belonging to assigned voice queues or queue campaigns and recordings of assigned agents (internal, inbound, dialer, outbound)
if the user has permissions on Voice Recordings and Agents, he can view Voice Recordings belonging to assigned agents (internal, inbound, dialer, outbound). So if the user has a view of the agents but not of the queues, he still views the recordings of the agents even though they were made on the queues
Edit Voice Recordings
📉 Voice Recordings with Quality Analysis
Transcribe, Sentiment Analysis and Post call Analytics are XCALLY Artificial Intelligence Features
You can apply Quality Analysis on New Client Experience: explore here the relative documentation.
Moreover it’s possible to configure AWS Categories ➡️ find out more
Requirements
Purchase the specific license AI module from https://xcally.atlassian.net/servicedesk/customer/portal/3: Quality Analysis
Check on the License section if this feature is enabled
To use Transcribe, you can configure an AWS Account or an OpenAI Account
To use Sentiment Analysis and Post call Analytics you need to have an AWS Account
🔧 How-to change directory for Voice Recordings
Follow below instructions if you want to move the default directory for Voice Recordings store.
Rename the default directory /var/spool/asterisk/monitor:
mv /var/spool/asterisk/monitor /var/spool/asterisk/monitor_backup
Place a symbolic link. For example, if you you want to move recordings to /usr/src/myrecordings:
cd /var/spool/asterisk ln -s /usr/src/myrecordings monitor
VERY IMPORTANT: the name of symbolic link MUST BE "monitor".
If you want to copy the already existing recordings, execute:
mv -f /var/spool/asterisk/monitor_backup/* /usr/src/myrecordings
🔐 How-to change encryption algorithm for Voice files
In Settings/General/Global section you can decide to enable encryption on Voice Recordings (explore documentation https://xcally.atlassian.net/wiki/spaces/XM/pages/1940188166/V3+General#Security).
In this way the files containing voice calls recordings will be encrypted applying the AES-192 algorithm. This option will better protect your data from unauthorized use or file system breach and is highly recommended if in the stored voice calls there are sensitive or personal data. The encryption is turned off only if the files containing the voice recordings are accessed from the Motion user interface.
It is possible to change the encryption algorithm used by the system to encrypt Voice Recording files.
Currently, only one subset of AES flavors is supported. Default value: aes192.
If you change the encryption algorithm, you will not be able to listen and download all existing Voice Recordings files!
Connect to the server using SSH and edit the hidden configuration file /var/opt/motion2/.env
Update the encryption algorithm, by adding this line, with the new value
XC_FILE_ENCRYPT_ALGORITHM=aes192
Restart XCALLY Motion following this procedure: https://xcally.atlassian.net/wiki/spaces/ADWI/pages/1853652993/Environment+variables#How-to-apply-environment-variables