Hi everybody

 

I’ve configured a SIP server (OpenSER 1.3.2) to work with rtpproxy and so far everything is fine, but now I want to be able to record the audio from a conversation. I’ve read that this is possible by using the function start_recording from the module NATHelper but I’m not able to get it working

 

RTPproxy 1.2.1 is running with the following options:

 

root@openser:/opt/rtpproxy-1.2.1/bin# ps uax | grep rtpproxy

rtpproxy 30827  0.0  0.0  26968   964 ?        Ssl  14:49   0:00 /opt/rtpproxy-1.2.1/bin/rtpproxy -u rtpproxy rtpproxy -p /var/run/rtpproxy/rtpproxy.pid -l 192.168.34.1 -s udp:127.0.0.1 7890 -r /etc/openser/stored_conversations -S /tmp -a -d DBUG -P

root     31547  0.0  0.0   7524   892 pts/1    R+   15:59   0:00 grep rtpproxy

 

Output from netstat

 

root@openser:/opt/rtpproxy-1.2.1/bin# netstat -tupna | grep rtpproxy

udp        0      0 127.0.0.1:7890          0.0.0.0:*                           30827/rtpproxy

 

Relevant parts of the configuration file

 

# ------ nathelper params -----

modparam("nathelper", "natping_interval", 30)

modparam("nathelper", "ping_nated_only", 1)

modparam("nathelper", "sipping_bflag", 7)

modparam("nathelper", "sipping_from", "sip:pinger@openser.org")

 

modparam("nathelper", "rtpproxy_sock", "udp:127.0.0.1:7890")

modparam("nathelper", "force_socket", "udp:localhost:7890")

route[6] {

        xlog("L_INFO", "ROUTE 6");

        # NAT handling

        # Set reply routing block, to which control is passed after a transaction

        # completed with a negative result but before sending a final reply

        t_on_failure("1");

        # Check if we're NATed

        if (isflagset(5) || isbflagset(6)) {

                # Use rtpproxy

                force_rtp_proxy();

                if ( start_recording() ) {

                        xlog("L_INFO", "RECORDING...");

                };

        }

        # Set reply routing block, to which control is passed each time a reply

        # (provisional or final) for the transaction is received

        t_on_reply("1");

}

onreply_route[1] {

        xlog("L_INFO", "ONREPLY_ROUTE");

        if ((isflagset(5) || isbflagset(6)) && status=~"(180)|(183)|(2[0-9][0-9])") {

                xlog("L_INFO", "NAT'd TRANSACTION");

                fix_nated_contact();

                force_rtp_proxy();

                if ( start_recording() ) {

                        xlog("L_INFO", "RECORDING...");

                };

        }

        else if (nat_uac_test("1")) {

                fix_nated_contact();

        }

        exit;

}

 

When I start OpenSER I see the following in syslog

 

Mar 19 16:08:45 openser /usr/sbin/openser[31630]: NOTICE:core:main: version: openser 1.3.2-notls (x86_64/linux)

Mar 19 16:08:45 openser /usr/sbin/openser[31630]: INFO:core:main: using 256 Mb shared memory

Mar 19 16:08:45 openser /usr/sbin/openser[31630]: INFO:core:main: using 1 Mb private memory per process

Mar 19 16:08:45 openser /usr/sbin/openser[31630]: INFO:sl:mod_init: Initializing StateLess engine

Mar 19 16:08:45 openser /usr/sbin/openser[31630]: INFO:tm:mod_init: TM - initializing...

Mar 19 16:08:45 openser /usr/sbin/openser[31630]: INFO:maxfwd:mod_init: initializing...

Mar 19 16:08:45 openser /usr/sbin/openser[31630]: INFO:usrloc:ul_init_locks: locks array size 512

Mar 19 16:08:45 openser /usr/sbin/openser[31630]: INFO:registrar:mod_init: initializing...

Mar 19 16:08:45 openser /usr/sbin/openser[31630]: INFO:textops:mod_init: initializing...

Mar 19 16:08:45 openser /usr/sbin/openser[31630]: INFO:xlog:mod_init: initializing...

Mar 19 16:08:45 openser /usr/sbin/openser[31630]: INFO:avpops:avpops_init: initializing...

Mar 19 16:08:45 openser /usr/sbin/openser[31630]: INFO:acc:mod_init: initializing...

Mar 19 16:08:45 openser /usr/sbin/openser[31630]: INFO:dialog:mod_init: Dialog module - initializing

Mar 19 16:08:45 openser /usr/sbin/openser[31630]: INFO:core:probe_max_receive_buffer: using a UDP receive buffer of 255 kb

Mar 19 16:08:45 openser /usr/sbin/openser[31630]: INFO:core:probe_max_receive_buffer: using a UDP receive buffer of 255 kb

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:handle_command: received command "31632_0 V"

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:doreply: sending reply "31632_0 20040107 "

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:handle_command: received command "31632_1 VF 20050322"

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:doreply: sending reply "31632_1 1 "

Mar 19 16:08:45 openser /usr/sbin/openser[31632]: INFO:nathelper:rtpp_test: rtp proxy <udp:127.0.0.1:7890> found, support for it enabled

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:handle_command: received command "31631_0 V"

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:doreply: sending reply "31631_0 20040107 "

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:handle_command: received command "31633_0 V"

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:doreply: sending reply "31633_0 20040107 "

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:handle_command: received command "31634_0 V"

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:doreply: sending reply "31634_0 20040107 "

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:handle_command: received command "31635_0 V"

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:doreply: sending reply "31635_0 20040107 "

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:handle_command: received command "31636_0 V"

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:doreply: sending reply "31636_0 20040107 "

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:handle_command: received command "31637_0 V"

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:doreply: sending reply "31637_0 20040107 "

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:handle_command: received command "31638_0 V"

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:doreply: sending reply "31638_0 20040107 "

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:handle_command: received command "31637_1 VF 20050322"

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:doreply: sending reply "31637_1 1 "

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:handle_command: received command "31631_1 VF 20050322"

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:doreply: sending reply "31631_1 1 "

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:handle_command: received command "31634_1 VF 20050322"

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:doreply: sending reply "31634_1 1 "

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:handle_command: received command "31636_1 VF 20050322"

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:doreply: sending reply "31636_1 1 "

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:handle_command: received command "31633_1 VF 20050322"

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:doreply: sending reply "31633_1 1 "

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:handle_command: received command "31635_1 VF 20050322"

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:doreply: sending reply "31635_1 1 "

Mar 19 16:08:45 openser /usr/sbin/openser[31631]: INFO:nathelper:rtpp_test: rtp proxy <udp:127.0.0.1:7890> found, support for it enabled

Mar 19 16:08:45 openser /usr/sbin/openser[31634]: INFO:nathelper:rtpp_test: rtp proxy <udp:127.0.0.1:7890> found, support for it enabled

Mar 19 16:08:45 openser /usr/sbin/openser[31637]: INFO:nathelper:rtpp_test: rtp proxy <udp:127.0.0.1:7890> found, support for it enabled

Mar 19 16:08:45 openser /usr/sbin/openser[31633]: INFO:nathelper:rtpp_test: rtp proxy <udp:127.0.0.1:7890> found, support for it enabled

Mar 19 16:08:45 openser /usr/sbin/openser[31636]: INFO:nathelper:rtpp_test: rtp proxy <udp:127.0.0.1:7890> found, support for it enabled

Mar 19 16:08:45 openser /usr/sbin/openser[31635]: INFO:nathelper:rtpp_test: rtp proxy <udp:127.0.0.1:7890> found, support for it enabled

Mar 19 16:08:45 openser /usr/sbin/openser[31638]: INFO:nathelper:rtpp_test: rtp proxy <udp:127.0.0.1:7890> found, support for it enabled

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:handle_command: received command "31639_0 V"

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:doreply: sending reply "31639_0 20040107 "

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:handle_command: received command "31638_1 VF 20050322"

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:doreply: sending reply "31638_1 1 "

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:handle_command: received command "31640_0 V"

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:doreply: sending reply "31640_0 20040107 "

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:handle_command: received command "31642_0 V"

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:doreply: sending reply "31642_0 20040107 "

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:handle_command: received command "31643_0 V"

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:doreply: sending reply "31643_0 20040107 "

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:handle_command: received command "31644_0 V"

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:doreply: sending reply "31644_0 20040107 "

Mar 19 16:08:45 openser /usr/sbin/openser[31642]: INFO:nathelper:rtpp_test: rtp proxy <udp:127.0.0.1:7890> found, support for it enabled

Mar 19 16:08:45 openser /usr/sbin/openser[31643]: INFO:nathelper:rtpp_test: rtp proxy <udp:127.0.0.1:7890> found, support for it enabled

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:handle_command: received command "31645_0 V"

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:doreply: sending reply "31645_0 20040107 "

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:handle_command: received command "31639_1 VF 20050322"

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:doreply: sending reply "31639_1 1 "

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:handle_command: received command "31642_1 VF 20050322"

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:doreply: sending reply "31642_1 1 "

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:handle_command: received command "31644_1 VF 20050322"

Mar 19 16:08:45 openser /usr/sbin/openser[31644]: INFO:nathelper:rtpp_test: rtp proxy <udp:127.0.0.1:7890> found, support for it enabled

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:doreply: sending reply "31644_1 1 "

Mar 19 16:08:45 openser /usr/sbin/openser[31640]: INFO:nathelper:rtpp_test: rtp proxy <udp:127.0.0.1:7890> found, support for it enabled

Mar 19 16:08:45 openser /usr/sbin/openser[31639]: INFO:nathelper:rtpp_test: rtp proxy <udp:127.0.0.1:7890> found, support for it enabled

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:handle_command: received command "31640_1 VF 20050322"

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:doreply: sending reply "31640_1 1 "

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:handle_command: received command "31643_1 VF 20050322"

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:doreply: sending reply "31643_1 1 "

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:handle_command: received command "31645_1 VF 20050322"

Mar 19 16:08:45 openser rtpproxy[30827]: DBUG:doreply: sending reply "31645_1 1 "

Mar 19 16:08:45 openser /usr/sbin/openser[31645]: INFO:nathelper:rtpp_test: rtp proxy <udp:127.0.0.1:7890> found, support for it enabled

 

But when I place the call no debug info from rtpproxy is being generated nor the RTP session is being saved to file.

 

Any idea what the problem can be?

 

Thanks in advance

 

Héctor