it wouldn't because the calls are already answered On Monday, April 25, 2016, Shaun Stokes <shaun.stokes@itec-support.co.uk> wrote:
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@lists.freeswitch.org <javascript:_e(%7B%7D,'cvml','freeswitch-users-bounces@lists.freeswitch.org');> [mailto:freeswitch-users-bounces@lists.freeswitch.org <javascript:_e(%7B%7D,'cvml','freeswitch-users-bounces@lists.freeswitch.org');>] *On Behalf Of *Ítalo Rossi *Sent:* 22 April 2016 20:47 *To:* FreeSWITCH Users Help <freeswitch-users@lists.freeswitch.org <javascript:_e(%7B%7D,'cvml','freeswitch-users@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_call...
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@itec-support.co.uk <javascript:_e(%7B%7D,'cvml','shaun.stokes@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@lists.freeswitch.org <javascript:_e(%7B%7D,'cvml','freeswitch-users-bounces@lists.freeswitch.org');> [mailto:freeswitch-users-bounces@lists.freeswitch.org <javascript:_e(%7B%7D,'cvml','freeswitch-users-bounces@lists.freeswitch.org');>] *On Behalf Of *Shaun Stokes *Sent:* 22 April 2016 14:56 *To:* FreeSWITCH Users Help <freeswitch-users@lists.freeswitch.org <javascript:_e(%7B%7D,'cvml','freeswitch-users@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@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@freeswitch.org <javascript:_e(%7B%7D,'cvml','consulting@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@lists.freeswitch.org <javascript:_e(%7B%7D,'cvml','FreeSWITCH-users@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@freeswitch.org <javascript:_e(%7B%7D,'cvml','italo@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. ______________________________________________________________________