...
Download
file.View file name record.lua Place it in the "scripts" directory. It can be found under "/usr/local/freeswitch/scripts/" or "/usr/share/freeswitch/scripts/" depending on whether you installed recorder from source or package, respectively.
Create a direcotry/folder in the path /usr/sharelocal/freeswitch with the name cucmRecording. now enter to this cucmRecording folder and create two more folders/directories with names “streams“ and “sessions”.
The directory/folder can be created with
...
Code Block |
---|
local recording_dir = '/usr/sharelocal/freeswitch/cucmRecording/streams' local mixedRecordingDir = '/usr/sharelocal/freeswitch/cucmRecording/sessions' |
...
Code Block |
---|
<extension name="outside_call" continue="true"> <condition> <action application="set" data="outside_call=true"/> <action application="log" data="INFO PP-----${sip_from_host}--------------Starting Record Dialplan --------------12124"/> <action application="export" data="RFC2822_DATE=${strftime(%a, %d %b %Y %T %z)}"/> </condition> </extension> <extension name="CUCM Recording Profile"> <action application="log" data="INFO Entering Call from CUCM"/> <condition field="${sip_from_host}" expression="192.168.1.26"> <action application="lua" data="record.lua"/> </condition> </extension> |
in case of multiple CUCM we need to add all the ip addresses using '|' pipe.
Code Block |
---|
<extension name="CUCM Recording Profile">
<action application="log" data="INFO Entering Call from CUCM"/>
<condition field="${sip_from_host}" expression="192.168.1.26|192.168.1.27|192.168.1.28">
<action application="lua" data="record.lua"/>
</condition>
</extension> |
...
Switch to the sip_profiles directory in
/usr/local/freeswitch/conf/sip_profiles.
Edit the internal.xml and external.xml SIP profiles and enable or uncomment the Third Party Call Control option in both of them.
Change the value flag to "true" if it is set to "false" or "proxy".
...
Code Block |
---|
<param name="parse-all-invite-headers" value="true"/> |
4- Access Control List (ACL)
Navigate to the directory "/usr/local/freeswitch/conf/autoload_configs
"
Open the file "acl.conf.xml
" and add the following line “<node type="allow" cidr="<CUCM_IP>/32"/>
” under the "<node type="allow" domain="$${domain}"/>"
line. (Replace <CUCM_IP> with the IP address of your CUCM installation). In case of multiple CUCM send invite recorder, add multiple lines each to allow each one of the CUCMs.
Code Block |
---|
<node type="allow" domain="$${domain}"/>
.
.
<node type="allow" cidr="<CUCM_IP>/32"/> <!--- Add this line and replace "<CUCM_IP>" with the IP address of your CUCM installation --> |
5- Utilities
Install the following utilities by running the commands:
Code Block |
---|
#sudo apt install -y lua-socket
#sudo apt install -y lua-dkjson |