[Freeswitch-users] Call Recording On Demand for Call Center Queues (mod_callcenter)

Shaun Stokes shaun.stokes at itec-support.co.uk
Mon Apr 25 14:07:49 MSD 2016


I may have come across another solution for call recording on demand when using mod_cellcenter. I’ve tested using the uuid_record API command to stop a Call Center Queue recording and this works.

When using uuid_record I’m not sure if it’s not possible to pause and resume, however it is possible to mask and unmask the audio with silence.

We’re currently testing this further to see if we can make this work in our environment but thus far this looks promising.

Shaun

From: freeswitch-users-bounces at lists.freeswitch.org [mailto:freeswitch-users-bounces at lists.freeswitch.org] On Behalf Of Shaun Stokes
Sent: 25 April 2016 09:11
To: 'FreeSWITCH Users Help' <freeswitch-users at lists.freeswitch.org>
Subject: Re: [Freeswitch-users] Call Recording On Demand for Call Center Queues (mod_callcenter)

Hi Ítalo,

Unfortunately execute_on_answer doesn’t have any effect if we use this in cc_export_vars or in the agents contact field, with or with-out the nolocal: prefix. We have replaced our variable ${rec_file} with a fixed recording file path for testing purposes so we could rule that out.

Here’s a list of variables we’ve tried in cc_export_vars and the agents contact field for testing purposes:
execute_on_answer=nolocal:record_session /usr/local/freeswitch/recordings/test.mp3
execute_on_answer=record_session /usr/local/freeswitch/recordings/test.mp3
execute_on_answer='record_session /usr/local/freeswitch/recordings/test.mp3'
api_on_answer=nolocal:uuid_record ${uuid} start /usr/local/freeswitch/recordings/test.mp3
api_on_answer=uuid_record ${uuid} start /usr/local/freeswitch/recordings/test.mp3
api_on_answer='uuid_record ${uuid} start /usr/local/freeswitch/recordings/test.mp3'

If you or anyone else here has any other ideas that would be a great help to us.

Many Thanks,
Shaun

From: freeswitch-users-bounces at lists.freeswitch.org<mailto:freeswitch-users-bounces at lists.freeswitch.org> [mailto:freeswitch-users-bounces at lists.freeswitch.org] On Behalf Of Ítalo Rossi
Sent: 22 April 2016 20:47
To: FreeSWITCH Users Help <freeswitch-users at lists.freeswitch.org<mailto:freeswitch-users at lists.freeswitch.org>>
Subject: Re: [Freeswitch-users] Call Recording On Demand for Call Center Queues (mod_callcenter)

Use cc_export_vars https://freeswitch.org/confluence/display/FREESWITCH/mod_callcenter#mod_callcenter-cc_export_vars

Or you can set variables in the agent's contact field: {myvar=myvalue}user/number

On Fri, Apr 22, 2016 at 12:25 PM, Shaun Stokes <shaun.stokes at itec-support.co.uk<mailto:shaun.stokes at itec-support.co.uk>> wrote:
We have been troubleshooting this further, it seems that this line has no effect when using mod_callcenter:
<action application="export" data="nolocal:execute_on_answer=record_session ${rec_file}"/>

This parameter is set in callcenter.conf if we remove this the call doesn’t record:
<param name="record-template" value="=$${recordings_dir}/${domain_name}/archive/${strftime(%Y)}/${strftime(%b)}/${strftime(%d)}/${uuid}.${record_ext}"/>

The file path\name from the above matches that of the call we’re trying to pause, but it seems we can’t pause the recording if this has been started by mod_callcenter, there are no errors. We can only start and pause call recording when this isn’t started using mod_callcenter by default.

Is there any way around this, maybe a different command for mod_callcenter that can be executed on the agent leg using dtmf to stop the recording, or another way we can start recording after being answered by the agent?

Thanks,
Shaun


From: freeswitch-users-bounces at lists.freeswitch.org<mailto:freeswitch-users-bounces at lists.freeswitch.org> [mailto:freeswitch-users-bounces at lists.freeswitch.org<mailto:freeswitch-users-bounces at lists.freeswitch.org>] On Behalf Of Shaun Stokes
Sent: 22 April 2016 14:56
To: FreeSWITCH Users Help <freeswitch-users at lists.freeswitch.org<mailto:freeswitch-users at lists.freeswitch.org>>
Subject: [Freeswitch-users] Call Recording On Demand for Call Center Queues (mod_callcenter)

Hi,

We’re trying to setup call recording on demand for call center queues (mod_callcenter) but are experiencing tremendous trouble. Is it possible for the agent to perform pause\resume call recording on mod_callcenter calls which are recorded by default upon answer?

Here’s the important elements of our dialplan:
<condition field="${rec_file}" expression="^(.)+">
                <action application="set" inline="true" data="RECORD_APPEND=true"/>
                <anti-action application="set" inline="true" data="RECORD_APPEND=true"/>
                <anti-action application="export" inline="true" data="rec_file=$${recordings_dir}/${domain_name}/archive/${strftime(%Y)}/${strftime(%b)}/${strftime(%d)}/${uuid}.${record_ext}"/>
</condition>
<condition field="destination_number" expression="^SETUP_RECORDING$">
                <action application="log" data="INFO Configuring bind_digit_action to do recording on this session..."/>
                <action application="bind_digit_action" data="features,*1,exec:execute_extension,START_RECORDING XML ${domain_name}"/>
                <action application="bind_digit_action" data="features,*0,exec:execute_extension,STOP_RECORDING XML ${domain_name}"/>
                <action application="digit_action_set_realm" data=" features"/>
</condition>
<condition field="destination_number" expression="^START_RECORDING$">
                <action application="log" data="INFO Starting recording..."/>
                <action application="record_session" data="${rec_file}"/>
</condition>
<condition field="destination_number" expression="^STOP_RECORDING$">
                <action application="log" data="INFO Stopping recording..."/>
                <action application="stop_record_session" data="${rec_file}"/>
</condition>
<condition field="destination_number" expression="^837$">
<action application="export" data="nolocal:execute_on_answer=record_session ${rec_file}"/>
<action application="set" data="cc_export_vars=rec_file"/>
<action application="set" data="bridge_pre_execute_bleg_app=execute_extension"/>
<action application="set" data="bridge_pre_execute_bleg_data=SETUP_RECORDING XML ${domain_name}"/>
<action application="callcenter" data="Test-bench at tester"/>
</condition>

Here’s the log of the call as it comes in:
SET [RECORD_APPEND]=[true]
Configuring bind_digit_action to do recording on this session...
Digit parser DPTOOLS: binding *1/features/0 callback: 0x7f37720eed10 data: 0x7f367c7dd918
Digit parser DPTOOLS: binding *0/features/0 callback: 0x7f37720eed10 data: 0x7f367c7ddab8
Digit parser DPTOOLS: Setting realm to 'features'
EXPORT (export_vars) (REMOTE ONLY) [execute_on_answer]=[record_session /usr/local/freeswitch/recordings/tester/archive/2016/Apr/22/cce7b636-088c-11e6-9458-f7ab40b1257a.mp3]

The call is then answered by the agent, we see the recording file has been created, the agent presses *0 but the call continues recording, log as follows:
SET [RECORD_APPEND]=[true]
RTP RECV DTMF *:1536
RTP RECV DTMF 0:1536
Stopping recording...
stop_record_session(/usr/local/freeswitch/recordings/tester/archive/2016/Apr/22/cce7b636-088c-11e6-9458-f7ab40b1257a.mp3)


The configuration looks as though it should work, any ideas? Is there another method we should be using?

Many Thanks,
Shaun

______________________________________________________________________
This message has been checked for all known viruses by MessageLabs Virus Scanning Service.
______________________________________________________________________

______________________________________________________________________
This message has been checked for all known viruses by MessageLabs Virus Scanning Service.
______________________________________________________________________

______________________________________________________________________
This message has been checked for all known viruses by MessageLabs Virus Scanning Service.
______________________________________________________________________

_________________________________________________________________________
Professional FreeSWITCH Consulting Services:
consulting at freeswitch.org<mailto:consulting at freeswitch.org>
http://www.freeswitchsolutions.com

Official FreeSWITCH Sites
http://www.freeswitch.org
http://confluence.freeswitch.org
http://www.cluecon.com

FreeSWITCH-users mailing list
FreeSWITCH-users at lists.freeswitch.org<mailto:FreeSWITCH-users at lists.freeswitch.org>
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.freeswitch.org



--
Ítalo Rossi
italo at freeswitch.org<mailto:italo at freeswitch.org>

______________________________________________________________________
This message has been checked for all known viruses by MessageLabs Virus Scanning Service.
______________________________________________________________________

______________________________________________________________________
This message has been checked for all known viruses by MessageLabs Virus Scanning Service.
______________________________________________________________________

______________________________________________________________________
This message has been checked for all known viruses by MessageLabs Virus Scanning Service.
______________________________________________________________________

______________________________________________________________________
This message has been checked for all known viruses by  MessageLabs Virus Scanning Service.
______________________________________________________________________
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freeswitch.org/pipermail/freeswitch-users/attachments/20160425/8347687c/attachment-0001.html 


Join us at ClueCon 2016 Aug 8-12, 2016
More information about the FreeSWITCH-users mailing list