Hello Carsten.
Still no lucky. I just moved the whole rtpproxy/ directory into 3.1 branch and recompiled and then changed my script to use rtpproxy_offer()/rtpproxy_answer().
Look:
Mar 15 14:04:38 devel rtpproxy[29111]: INFO:handle_command: new session e2361a59b4588d51, tag ed382a18;1 requested, type strong Mar 15 14:04:38 devel rtpproxy[29111]: INFO:handle_command: new session on a port 44206 created, tag ed382a18;1 Mar 15 14:04:38 devel rtpproxy[29111]: INFO:handle_command: pre-filling caller's address with 192.168.200.114:6380 Mar 15 14:04:39 devel kamailio[29544]: NOTICE: acc [acc.c:275]: ACC: transaction answered: timestamp=1300208679;method=INVITE;from_tag=ed382a18;to_tag=19477c42;call_id =e2361a59b4588d51;code=200;reason=OK; Mar 15 14:04:39 devel rtpproxy[29111]: INFO:handle_command: lookup on ports 44206/41680, session timer restarted Mar 15 14:04:39 devel rtpproxy[29111]: INFO:handle_command: setting custom timeout handler (xmlrpc:http://localhost:8000/RPC2) Mar 15 14:04:39 devel rtpproxy[29111]: INFO:handle_command: pre-filling callee's address with 192.168.200.149:9494 Mar 15 14:04:50 devel rtpproxy[29111]: INFO:process_rtp: session timeout Mar 15 14:04:50 devel rtpproxy[29111]: INFO:remove_session: RTP stats: 963 in from callee, 10 in from caller, 973 relayed, 0 dropped Mar 15 14:04:50 devel rtpproxy[29111]: INFO:remove_session: RTCP stats: 5 in from callee, 1 in from caller, 6 relayed, 0 dropped Mar 15 14:04:50 devel rtpproxy[29111]: INFO:remove_session: session on ports 44206/41680 is cleaned up
Started with: rtpproxy -T 10 -F -i -l 192.168.200.90 -s udp:127.0.0.1:7722 -n tcp:192.168.200.90:8000 -d DBUG
SIP-ROUTER config: # ----- rtpproxy params ----- modparam("rtpproxy", "rtpproxy_sock", "udp:localhost:7722") modparam("rtpproxy", "rtpproxy_tout", 3) modparam("rtpproxy", "timeout_socket", "xmlrpc:http://localhost:8000/RPC2")
# The Port for incoming XML-RPC requests modparam("mi_xmlrpc", "port", 8000) modparam("mi_xmlrpc", "reply_option", 1) modparam("mi_xmlrpc", "buffer_size", 8192) modparam("mi_xmlrpc", "log_file", "/tmp/openser_xmlrpc")
The session keeps active after the RTPPROXY proxy timeout. It seems dlg_terminate_dlg isn't being triggered. Am I missing something else beyond moving rtpproxy/ directory? As this thread is a user-question, I am copying SR-USERS mail list. I am also using xmlrpc-c-1.06.41.
Thanks, Alexandre.
-----Mensagem original----- De: kaiserbock2@googlemail.com [mailto:kaiserbock2@googlemail.com] Em nome de Carsten Bock Enviada em: terça-feira, 15 de março de 2011 05:15 Para: Alexandre Abreu Assunto: Re: RTPPROXY timeout patch.
Hi Alexandre,
sorry, yes, your correct. My changes are not in the 3.1 branch, but only GIT-Master. Only the GIT-Master currently holds the correct patch and config. I will need to backport the changes from the master... (will do so this week).
Carsten
2011/3/14 Alexandre Abreu alexandre.abreu@redt.com.br:
Hello Carsten,
Let me ask you a question:
If "First is important to clarify: from version 3.0.0 on, Kamailio and SER are identical in terms of source code.", then why your changes does not reflect in kamailio 3.1 from GIT? I did see the changes by getting the SIP-ROUTER from GIT. Kamailio 3.1 from GIT does not have your code.
Thanks. Alexandre
-----Mensagem original----- De: kaiserbock2@googlemail.com [mailto:kaiserbock2@googlemail.com] Em nome de Carsten Bock Enviada em: segunda-feira, 14 de março de 2011 05:31 Para: Alexandre Abreu Cc: RTPproxy Development Assunto: Re: RTPPROXY timeout patch.
Hello,
i hope, you had a nice weekend... ;-) Are you sure, you are using the GIT-Version of the Kamailio/sip-router.org config? In the GIT version it is now:
modparam("rtpproxy", "timeout_socket", "xmlrpc:http://localhost:8000/RPC2")
http://git.sip-router.org/cgi-bin/gitweb.cgi?p=sip-router;a=blob;f=mod ules/r tpproxy/test/kamailio.cfg;h=0d5c73ff2065f33f262981fba2c07e65496e7415;h b=HEAD
This should work (as tested by me).
Carsten
2011/3/11 Alexandre Abreu alexandre.abreu@redt.com.br:
Hello Carsten,
The patch was applied just fine but I can't get that feature working. See below:
[root@devel log]# rtpproxy -v Basic version: 20040107 Extension 20050322: Support for multiple RTP streams and MOH Extension 20060704: Support for extra parameter in the V command Extension 20071116: Support for RTP re-packetization Extension 20071218: Support for forking (copying) RTP stream Extension 20080403: Support for RTP statistics querying Extension 20081102: Support for setting codecs in the update/lookup command Extension 20081224: Support for session timeout notifications Extension 20090810: Support for automatic bridging Extension 20100819: Support for timeout notifications using XML-RPC towards Kamailio/sip-router.org
Using SR 3.1.2, my configuration file was exactly the same as the example in test/ subdirectory you commit to rtpproxy module.
# RTP-Proxy modparam("rtpproxy", "rtpproxy_sock", "udp:localhost:22222") modparam("rtpproxy", "rtpproxy_tout", 3) modparam("rtpproxy", "timeout_socket", "http://localhost:8000/RPC2")
# The Port for incoming XML-RPC requests modparam("mi_xmlrpc", "port", 8000) modparam("mi_xmlrpc", "reply_option", 1) modparam("mi_xmlrpc", "buffer_size", 8192) modparam("mi_xmlrpc", "log_file", "/tmp/openser_xmlrpc")
Still inside test/ subdir we have the following example:
[root@devel test]# cat exec_rtpproxy.txt ./rtpproxy -T 10 -f -F -i -l <your IP> -s udp:*:22222 -d DBUG
You mean that if XML-RPC is used, it has to begin with "xmlrpc:". I can't see this string anywhere in these examples. I guess these files are not up to date. Am I correct? I can see the session timeout in RTPPROXY, but the session does not
close.
If I understand right how this feature works, it should send a "dlg_terminate_dlg + call-id" to send the BYE to both sides.
Any tip on what could be wrong?
Thanks, Alexandre
-----Mensagem original----- De: kaiserbock2@googlemail.com [mailto:kaiserbock2@googlemail.com] Em nome de Carsten Bock Enviada em: quinta-feira, 10 de fevereiro de 2011 20:53 Para: Alexandre Abreu Cc: RTPproxy Development Assunto: Re: RTPPROXY timeout patch.
Hi Alexandre,
i updated the patch in the sip-router-repository (and attached the patch to this email). The new patch and the modifications to the rtpproxy module need some more testing, i have only done basic
functionality testing so far.
I have reduced the patch a little, the socket, if the XML-RPC-Interface is used, has to begin with "xmlrpc:". This way, the protocol of the RTP-Proxy stays intact. If you have spare-time, please test it; otherwise, i will do it asap (but i am travelling a lot next week).
@Maxim: This new version of the patch is much better, than the old one. Maybe you can review this one? Thanks!
Carsten
2011/2/10 Carsten Bock lists@bock.info:
Hi Alexandre,
the current GIT-version contains some more modifications regarding timeout sockets. That is the reason why the patch does not work anymore. I will need to review the code and adapt my patch accordingly. I will do so later.
Carsten
2011/2/2 Alexandre Abreu alexandre.abreu@redt.com.br:
Hi Carsten,
The stable version of RTPProxy is indeed 1.2.1. In this version, there is no file 'rtpp_notify.c' so I think the patch is really for git-version. Maybe the original patch was made regarding to an earlier
git commit.
Thanks, Alexandre
-----Mensagem original----- De: kaiserbock2@googlemail.com [mailto:kaiserbock2@googlemail.com] Em nome de Carsten Bock Enviada em: quarta-feira, 2 de fevereiro de 2011 06:02 Para: Alexandre Abreu Cc: RTPproxy Development Assunto: Re: RTPPROXY timeout patch.
Hi Alexandre,
the patch was for the stable version of RTP-Proxy (1.2.1?). I will review the patch for the git-version. I am a little busy at the moment (business travel), so i can first do this on friday or next week.
Kind regards, Carsten
P.S.: Please always CC the list.
2011/2/1 Alexandre Abreu alexandre.abreu@redt.com.br:
Hi Carsten,
I am testing the new RTPProxy timeout feature in Kamailio (GIT
version).
Got the rtpproxy from GIT:
git clone git://sippy.git.sourceforge.net/gitroot/sippy/rtpproxy
I applied the patch:
[root@devel rtpproxy]# patch < rtpproxy.patch
patching file Makefile.am
Hunk #1 FAILED at 4.
1 out of 1 hunk FAILED -- saving rejects to file Makefile.am.rej
patching file config.h.in
patching file configure.ac
patching file rtpp_command.c
Hunk #1 succeeded at 54 (offset 2 lines).
Hunk #3 succeeded at 272 (offset 2 lines).
Hunk #4 succeeded at 315 with fuzz 2.
Hunk #5 FAILED at 466.
Hunk #6 FAILED at 961.
2 out of 6 hunks FAILED -- saving rejects to file rtpp_command.c.rej
patching file rtpp_notify.c
Hunk #1 FAILED at 38.
Hunk #2 succeeded at 263 (offset 78 lines).
misordered hunks! output would be garbled
Hunk #4 FAILED at 250.
Hunk #5 FAILED at 337.
3 out of 5 hunks FAILED -- saving rejects to file rtpp_notify.c.rej
patching file rtpp_notify.h
Hunk #1 succeeded at 39 with fuzz 2 (offset 8 lines).
patching file rtpp_session.c
patching file rtpp_session.h
As you see, not so clean but the files were patched.
On CentOS 5, I cant find the LIBXMLRPC through YUM/RPM, so I compiled xmlrpc-c-1.06.41.tgz by hand:
./configure prefix=/usr && make && make install
AND ./configure && make && make install
With that, the headers are both on /usr/lib/include and /usr/local/lib/include (I did that just to be sure that the config wasnt looking at the wrong place).
xmlrpc_abyss.h
xmlrpc_cgi.h
XmlRpcCpp.h
xmlrpc_server.h
xmlrpc_client.h
xmlrpc.h
xmlrpc_server_w32httpsys.h
The configure script from patched RTPPROXY doesnt _try_ to find the LIBXMLRPC (theres no reference in config.log) and therefore my rtpproxy doesnt have the support for the timeout notification.
Any comment on what could be wrong?
Alexandre
-- Carsten Bock Schomburgstr. 80 22767 Hamburg Germany
Mobile +49 179 2021244 Home +49 40 34927217 Büro (Verl) +49 5246 801427 Fax +49 40 34927218 mailto:carsten@bock.info
-- Carsten Bock Schomburgstr. 80 22767 Hamburg Germany
Mobile +49 179 2021244 Home +49 40 34927217 Büro (Verl) +49 5246 801427 Fax +49 40 34927218 mailto:carsten@bock.info
-- Carsten Bock Schomburgstr. 80 22767 Hamburg Germany
Mobile +49 179 2021244 Home +49 40 34927217 Büro (Verl) +49 5246 801427 Fax +49 40 34927218 mailto:carsten@bock.info
-- Carsten Bock http://www.ng-voice.com mailto:carsten@ng-voice.com
-- Carsten Bock http://www.ng-voice.com mailto:carsten@ng-voice.com
Hi,
Sorry for confusion: You will have to define a Timeout socket, when starting RTP-Proxy (-n, may be invalid):
bock@bock-tde:~/ims/sr-rtpp/sip-router/modules/rtpproxy/test$ cat ./exec_rtpproxy.txt ./rtpproxy -T 10 -f -F -i -l 127.0.0.1 -s udp:*:22222 -d DBUG -n tcp:127.0.0.1
Recent Versions of RTP-Proxy start a separate thread to process the timeouts; but only if the timeout socket is defined at startup. Then it should work.
Good luck, Carsten
P.S.: I will add some docs on howto make this work in the next days to GIT-Trunk. 2011/3/15 Alexandre Abreu alexandre.abreu@redt.com.br:
Hello Carsten.
Still no lucky. I just moved the whole rtpproxy/ directory into 3.1 branch and recompiled and then changed my script to use rtpproxy_offer()/rtpproxy_answer().
Look:
Mar 15 14:04:38 devel rtpproxy[29111]: INFO:handle_command: new session e2361a59b4588d51, tag ed382a18;1 requested, type strong Mar 15 14:04:38 devel rtpproxy[29111]: INFO:handle_command: new session on a port 44206 created, tag ed382a18;1 Mar 15 14:04:38 devel rtpproxy[29111]: INFO:handle_command: pre-filling caller's address with 192.168.200.114:6380 Mar 15 14:04:39 devel kamailio[29544]: NOTICE: acc [acc.c:275]: ACC: transaction answered: timestamp=1300208679;method=INVITE;from_tag=ed382a18;to_tag=19477c42;call_id =e2361a59b4588d51;code=200;reason=OK; Mar 15 14:04:39 devel rtpproxy[29111]: INFO:handle_command: lookup on ports 44206/41680, session timer restarted Mar 15 14:04:39 devel rtpproxy[29111]: INFO:handle_command: setting custom timeout handler (xmlrpc:http://localhost:8000/RPC2) Mar 15 14:04:39 devel rtpproxy[29111]: INFO:handle_command: pre-filling callee's address with 192.168.200.149:9494 Mar 15 14:04:50 devel rtpproxy[29111]: INFO:process_rtp: session timeout Mar 15 14:04:50 devel rtpproxy[29111]: INFO:remove_session: RTP stats: 963 in from callee, 10 in from caller, 973 relayed, 0 dropped Mar 15 14:04:50 devel rtpproxy[29111]: INFO:remove_session: RTCP stats: 5 in from callee, 1 in from caller, 6 relayed, 0 dropped Mar 15 14:04:50 devel rtpproxy[29111]: INFO:remove_session: session on ports 44206/41680 is cleaned up
Started with: rtpproxy -T 10 -F -i -l 192.168.200.90 -s udp:127.0.0.1:7722 -n tcp:192.168.200.90:8000 -d DBUG
SIP-ROUTER config: # ----- rtpproxy params ----- modparam("rtpproxy", "rtpproxy_sock", "udp:localhost:7722") modparam("rtpproxy", "rtpproxy_tout", 3) modparam("rtpproxy", "timeout_socket", "xmlrpc:http://localhost:8000/RPC2")
# The Port for incoming XML-RPC requests modparam("mi_xmlrpc", "port", 8000) modparam("mi_xmlrpc", "reply_option", 1) modparam("mi_xmlrpc", "buffer_size", 8192) modparam("mi_xmlrpc", "log_file", "/tmp/openser_xmlrpc")
The session keeps active after the RTPPROXY proxy timeout. It seems dlg_terminate_dlg isn't being triggered. Am I missing something else beyond moving rtpproxy/ directory? As this thread is a user-question, I am copying SR-USERS mail list. I am also using xmlrpc-c-1.06.41.
Thanks, Alexandre.
-----Mensagem original----- De: kaiserbock2@googlemail.com [mailto:kaiserbock2@googlemail.com] Em nome de Carsten Bock Enviada em: terça-feira, 15 de março de 2011 05:15 Para: Alexandre Abreu Assunto: Re: RTPPROXY timeout patch.
Hi Alexandre,
sorry, yes, your correct. My changes are not in the 3.1 branch, but only GIT-Master. Only the GIT-Master currently holds the correct patch and config. I will need to backport the changes from the master... (will do so this week).
Carsten
2011/3/14 Alexandre Abreu alexandre.abreu@redt.com.br:
Hello Carsten,
Let me ask you a question:
If "First is important to clarify: from version 3.0.0 on, Kamailio and SER are identical in terms of source code.", then why your changes does not reflect in kamailio 3.1 from GIT? I did see the changes by getting the SIP-ROUTER from GIT. Kamailio 3.1 from GIT does not have your code.
Thanks. Alexandre
-----Mensagem original----- De: kaiserbock2@googlemail.com [mailto:kaiserbock2@googlemail.com] Em nome de Carsten Bock Enviada em: segunda-feira, 14 de março de 2011 05:31 Para: Alexandre Abreu Cc: RTPproxy Development Assunto: Re: RTPPROXY timeout patch.
Hello,
i hope, you had a nice weekend... ;-) Are you sure, you are using the GIT-Version of the Kamailio/sip-router.org config? In the GIT version it is now:
modparam("rtpproxy", "timeout_socket", "xmlrpc:http://localhost:8000/RPC2")
http://git.sip-router.org/cgi-bin/gitweb.cgi?p=sip-router;a=blob;f=mod ules/r tpproxy/test/kamailio.cfg;h=0d5c73ff2065f33f262981fba2c07e65496e7415;h b=HEAD
This should work (as tested by me).
Carsten
2011/3/11 Alexandre Abreu alexandre.abreu@redt.com.br:
Hello Carsten,
The patch was applied just fine but I can't get that feature working. See below:
[root@devel log]# rtpproxy -v Basic version: 20040107 Extension 20050322: Support for multiple RTP streams and MOH Extension 20060704: Support for extra parameter in the V command Extension 20071116: Support for RTP re-packetization Extension 20071218: Support for forking (copying) RTP stream Extension 20080403: Support for RTP statistics querying Extension 20081102: Support for setting codecs in the update/lookup command Extension 20081224: Support for session timeout notifications Extension 20090810: Support for automatic bridging Extension 20100819: Support for timeout notifications using XML-RPC towards Kamailio/sip-router.org
Using SR 3.1.2, my configuration file was exactly the same as the example in test/ subdirectory you commit to rtpproxy module.
# RTP-Proxy modparam("rtpproxy", "rtpproxy_sock", "udp:localhost:22222") modparam("rtpproxy", "rtpproxy_tout", 3) modparam("rtpproxy", "timeout_socket", "http://localhost:8000/RPC2")
# The Port for incoming XML-RPC requests modparam("mi_xmlrpc", "port", 8000) modparam("mi_xmlrpc", "reply_option", 1) modparam("mi_xmlrpc", "buffer_size", 8192) modparam("mi_xmlrpc", "log_file", "/tmp/openser_xmlrpc")
Still inside test/ subdir we have the following example:
[root@devel test]# cat exec_rtpproxy.txt ./rtpproxy -T 10 -f -F -i -l <your IP> -s udp:*:22222 -d DBUG
You mean that if XML-RPC is used, it has to begin with "xmlrpc:". I can't see this string anywhere in these examples. I guess these files are not up to date. Am I correct? I can see the session timeout in RTPPROXY, but the session does not
close.
If I understand right how this feature works, it should send a "dlg_terminate_dlg + call-id" to send the BYE to both sides.
Any tip on what could be wrong?
Thanks, Alexandre
-----Mensagem original----- De: kaiserbock2@googlemail.com [mailto:kaiserbock2@googlemail.com] Em nome de Carsten Bock Enviada em: quinta-feira, 10 de fevereiro de 2011 20:53 Para: Alexandre Abreu Cc: RTPproxy Development Assunto: Re: RTPPROXY timeout patch.
Hi Alexandre,
i updated the patch in the sip-router-repository (and attached the patch to this email). The new patch and the modifications to the rtpproxy module need some more testing, i have only done basic
functionality testing so far.
I have reduced the patch a little, the socket, if the XML-RPC-Interface is used, has to begin with "xmlrpc:". This way, the protocol of the RTP-Proxy stays intact. If you have spare-time, please test it; otherwise, i will do it asap (but i am travelling a lot next week).
@Maxim: This new version of the patch is much better, than the old one. Maybe you can review this one? Thanks!
Carsten
2011/2/10 Carsten Bock lists@bock.info:
Hi Alexandre,
the current GIT-version contains some more modifications regarding timeout sockets. That is the reason why the patch does not work anymore. I will need to review the code and adapt my patch accordingly. I will do so later.
Carsten
2011/2/2 Alexandre Abreu alexandre.abreu@redt.com.br:
Hi Carsten,
The stable version of RTPProxy is indeed 1.2.1. In this version, there is no file 'rtpp_notify.c' so I think the patch is really for git-version. Maybe the original patch was made regarding to an earlier
git commit.
Thanks, Alexandre
-----Mensagem original----- De: kaiserbock2@googlemail.com [mailto:kaiserbock2@googlemail.com] Em nome de Carsten Bock Enviada em: quarta-feira, 2 de fevereiro de 2011 06:02 Para: Alexandre Abreu Cc: RTPproxy Development Assunto: Re: RTPPROXY timeout patch.
Hi Alexandre,
the patch was for the stable version of RTP-Proxy (1.2.1?). I will review the patch for the git-version. I am a little busy at the moment (business travel), so i can first do this on friday or next week.
Kind regards, Carsten
P.S.: Please always CC the list.
2011/2/1 Alexandre Abreu alexandre.abreu@redt.com.br:
Hi Carsten,
I am testing the new RTPProxy timeout feature in Kamailio (GIT
version).
Got the rtpproxy from GIT:
git clone git://sippy.git.sourceforge.net/gitroot/sippy/rtpproxy
I applied the patch:
[root@devel rtpproxy]# patch < rtpproxy.patch
patching file Makefile.am
Hunk #1 FAILED at 4.
1 out of 1 hunk FAILED -- saving rejects to file Makefile.am.rej
patching file config.h.in
patching file configure.ac
patching file rtpp_command.c
Hunk #1 succeeded at 54 (offset 2 lines).
Hunk #3 succeeded at 272 (offset 2 lines).
Hunk #4 succeeded at 315 with fuzz 2.
Hunk #5 FAILED at 466.
Hunk #6 FAILED at 961.
2 out of 6 hunks FAILED -- saving rejects to file rtpp_command.c.rej
patching file rtpp_notify.c
Hunk #1 FAILED at 38.
Hunk #2 succeeded at 263 (offset 78 lines).
misordered hunks! output would be garbled
Hunk #4 FAILED at 250.
Hunk #5 FAILED at 337.
3 out of 5 hunks FAILED -- saving rejects to file rtpp_notify.c.rej
patching file rtpp_notify.h
Hunk #1 succeeded at 39 with fuzz 2 (offset 8 lines).
patching file rtpp_session.c
patching file rtpp_session.h
As you see, not so clean but the files were patched.
On CentOS 5, I can’t find the LIBXMLRPC through YUM/RPM, so I compiled xmlrpc-c-1.06.41.tgz by hand:
./configure –prefix=/usr && make && make install
AND ./configure && make && make install
With that, the headers are both on /usr/lib/include and /usr/local/lib/include (I did that just to be sure that the config wasn’t looking at the wrong place).
xmlrpc_abyss.h
xmlrpc_cgi.h
XmlRpcCpp.h
xmlrpc_server.h
xmlrpc_client.h
xmlrpc.h
xmlrpc_server_w32httpsys.h
The configure script from patched RTPPROXY doesn’t _try_ to find the LIBXMLRPC (there’s no reference in config.log) and therefore my rtpproxy doesn’t have the support for the timeout notification.
Any comment on what could be wrong?
Alexandre
-- Carsten Bock Schomburgstr. 80 22767 Hamburg Germany
Mobile +49 179 2021244 Home +49 40 34927217 Büro (Verl) +49 5246 801427 Fax +49 40 34927218 mailto:carsten@bock.info
-- Carsten Bock Schomburgstr. 80 22767 Hamburg Germany
Mobile +49 179 2021244 Home +49 40 34927217 Büro (Verl) +49 5246 801427 Fax +49 40 34927218 mailto:carsten@bock.info
-- Carsten Bock Schomburgstr. 80 22767 Hamburg Germany
Mobile +49 179 2021244 Home +49 40 34927217 Büro (Verl) +49 5246 801427 Fax +49 40 34927218 mailto:carsten@bock.info
-- Carsten Bock http://www.ng-voice.com mailto:carsten@ng-voice.com
-- Carsten Bock http://www.ng-voice.com mailto:carsten@ng-voice.com
Hello Carsten,
If you use "-n tcp:127.0.0.1" without port you get:
[root@devel ~]# rtpproxy -T 10 -F -i -l 192.168.200.90 -s udp:127.0.0.1 7722 -n tcp:127.0.0.1 -d DBUG rtpproxy: can't parse host:port in TCP address rtpproxy: can't start notification thread
As I wrote in my previous mail, I am using "-n tcp:192.168.200.90:8000" which points to the address that XMLRPC server is listening to.
tcp 0 0 0.0.0.0:8000 0.0.0.0:* LISTEN 3661/kamailio
What I am missing here?
Thanks, Alexandre.
-----Mensagem original----- De: kaiserbock2@googlemail.com [mailto:kaiserbock2@googlemail.com] Em nome de Carsten Bock Enviada em: quarta-feira, 16 de março de 2011 09:00 Para: Alexandre Abreu Cc: sr-users@lists.sip-router.org Assunto: Re: RTPPROXY timeout patch.
Hi,
Sorry for confusion: You will have to define a Timeout socket, when starting RTP-Proxy (-n, may be invalid):
bock@bock-tde:~/ims/sr-rtpp/sip-router/modules/rtpproxy/test$ cat ./exec_rtpproxy.txt ./rtpproxy -T 10 -f -F -i -l 127.0.0.1 -s udp:*:22222 -d DBUG -n tcp:127.0.0.1
Recent Versions of RTP-Proxy start a separate thread to process the timeouts; but only if the timeout socket is defined at startup. Then it should work.
Good luck, Carsten
P.S.: I will add some docs on howto make this work in the next days to GIT-Trunk. 2011/3/15 Alexandre Abreu alexandre.abreu@redt.com.br:
Hello Carsten.
Still no lucky. I just moved the whole rtpproxy/ directory into 3.1 branch and recompiled and then changed my script to use rtpproxy_offer()/rtpproxy_answer().
Look:
Mar 15 14:04:38 devel rtpproxy[29111]: INFO:handle_command: new session e2361a59b4588d51, tag ed382a18;1 requested, type strong Mar 15 14:04:38 devel rtpproxy[29111]: INFO:handle_command: new session on
a
port 44206 created, tag ed382a18;1 Mar 15 14:04:38 devel rtpproxy[29111]: INFO:handle_command: pre-filling caller's address with 192.168.200.114:6380 Mar 15 14:04:39 devel kamailio[29544]: NOTICE: acc [acc.c:275]: ACC: transaction answered:
timestamp=1300208679;method=INVITE;from_tag=ed382a18;to_tag=19477c42;call_id
=e2361a59b4588d51;code=200;reason=OK; Mar 15 14:04:39 devel rtpproxy[29111]: INFO:handle_command: lookup on
ports
44206/41680, session timer restarted Mar 15 14:04:39 devel rtpproxy[29111]: INFO:handle_command: setting custom timeout handler (xmlrpc:http://localhost:8000/RPC2) Mar 15 14:04:39 devel rtpproxy[29111]: INFO:handle_command: pre-filling callee's address with 192.168.200.149:9494 Mar 15 14:04:50 devel rtpproxy[29111]: INFO:process_rtp: session timeout Mar 15 14:04:50 devel rtpproxy[29111]: INFO:remove_session: RTP stats: 963 in from callee, 10 in from caller, 973 relayed, 0 dropped Mar 15 14:04:50 devel rtpproxy[29111]: INFO:remove_session: RTCP stats: 5
in
from callee, 1 in from caller, 6 relayed, 0 dropped Mar 15 14:04:50 devel rtpproxy[29111]: INFO:remove_session: session on
ports
44206/41680 is cleaned up
Started with: rtpproxy -T 10 -F -i -l 192.168.200.90 -s udp:127.0.0.1:7722 -n tcp:192.168.200.90:8000 -d DBUG
SIP-ROUTER config: # ----- rtpproxy params ----- modparam("rtpproxy", "rtpproxy_sock", "udp:localhost:7722") modparam("rtpproxy", "rtpproxy_tout", 3) modparam("rtpproxy", "timeout_socket",
"xmlrpc:http://localhost:8000/RPC2")
# The Port for incoming XML-RPC requests modparam("mi_xmlrpc", "port", 8000) modparam("mi_xmlrpc", "reply_option", 1) modparam("mi_xmlrpc", "buffer_size", 8192) modparam("mi_xmlrpc", "log_file", "/tmp/openser_xmlrpc")
The session keeps active after the RTPPROXY proxy timeout. It seems dlg_terminate_dlg isn't being triggered. Am I missing something else
beyond
moving rtpproxy/ directory? As this thread is a user-question, I am copying SR-USERS mail list. I am also using xmlrpc-c-1.06.41.
Thanks, Alexandre.
-----Mensagem original----- De: kaiserbock2@googlemail.com [mailto:kaiserbock2@googlemail.com] Em nome de Carsten Bock Enviada em: terça-feira, 15 de março de 2011 05:15 Para: Alexandre Abreu Assunto: Re: RTPPROXY timeout patch.
Hi Alexandre,
sorry, yes, your correct. My changes are not in the 3.1 branch, but only GIT-Master. Only the GIT-Master currently holds the correct patch and config. I will need to backport the changes from the master... (will do so this week).
Carsten
2011/3/14 Alexandre Abreu alexandre.abreu@redt.com.br:
Hello Carsten,
Let me ask you a question:
If "First is important to clarify: from version 3.0.0 on, Kamailio and SER are identical in terms of source code.", then why your changes does not reflect in kamailio 3.1 from GIT? I did see the changes by getting the SIP-ROUTER from GIT. Kamailio 3.1 from GIT does not have your code.
Thanks. Alexandre
-----Mensagem original----- De: kaiserbock2@googlemail.com [mailto:kaiserbock2@googlemail.com] Em nome de Carsten Bock Enviada em: segunda-feira, 14 de março de 2011 05:31 Para: Alexandre Abreu Cc: RTPproxy Development Assunto: Re: RTPPROXY timeout patch.
Hello,
i hope, you had a nice weekend... ;-) Are you sure, you are using the GIT-Version of the Kamailio/sip-router.org config? In the GIT version it is now:
modparam("rtpproxy", "timeout_socket", "xmlrpc:http://localhost:8000/RPC2")
http://git.sip-router.org/cgi-bin/gitweb.cgi?p=sip-router;a=blob;f=mod ules/r tpproxy/test/kamailio.cfg;h=0d5c73ff2065f33f262981fba2c07e65496e7415;h b=HEAD
This should work (as tested by me).
Carsten
2011/3/11 Alexandre Abreu alexandre.abreu@redt.com.br:
Hello Carsten,
The patch was applied just fine but I can't get that feature working. See below:
[root@devel log]# rtpproxy -v Basic version: 20040107 Extension 20050322: Support for multiple RTP streams and MOH Extension 20060704: Support for extra parameter in the V command Extension 20071116: Support for RTP re-packetization Extension 20071218: Support for forking (copying) RTP stream Extension 20080403: Support for RTP statistics querying Extension 20081102: Support for setting codecs in the update/lookup command Extension 20081224: Support for session timeout notifications Extension 20090810: Support for automatic bridging Extension 20100819: Support for timeout notifications using XML-RPC towards Kamailio/sip-router.org
Using SR 3.1.2, my configuration file was exactly the same as the example in test/ subdirectory you commit to rtpproxy module.
# RTP-Proxy modparam("rtpproxy", "rtpproxy_sock", "udp:localhost:22222") modparam("rtpproxy", "rtpproxy_tout", 3) modparam("rtpproxy", "timeout_socket", "http://localhost:8000/RPC2")
# The Port for incoming XML-RPC requests modparam("mi_xmlrpc", "port", 8000) modparam("mi_xmlrpc", "reply_option", 1) modparam("mi_xmlrpc", "buffer_size", 8192) modparam("mi_xmlrpc", "log_file", "/tmp/openser_xmlrpc")
Still inside test/ subdir we have the following example:
[root@devel test]# cat exec_rtpproxy.txt ./rtpproxy -T 10 -f -F -i -l <your IP> -s udp:*:22222 -d DBUG
You mean that if XML-RPC is used, it has to begin with "xmlrpc:". I can't see this string anywhere in these examples. I guess these files are not up to date. Am I correct? I can see the session timeout in RTPPROXY, but the session does not
close.
If I understand right how this feature works, it should send a "dlg_terminate_dlg + call-id" to send the BYE to both sides.
Any tip on what could be wrong?
Thanks, Alexandre
-----Mensagem original----- De: kaiserbock2@googlemail.com [mailto:kaiserbock2@googlemail.com] Em nome de Carsten Bock Enviada em: quinta-feira, 10 de fevereiro de 2011 20:53 Para: Alexandre Abreu Cc: RTPproxy Development Assunto: Re: RTPPROXY timeout patch.
Hi Alexandre,
i updated the patch in the sip-router-repository (and attached the patch to this email). The new patch and the modifications to the rtpproxy module need some more testing, i have only done basic
functionality testing so far.
I have reduced the patch a little, the socket, if the XML-RPC-Interface is used, has to begin with "xmlrpc:". This way, the protocol of the RTP-Proxy stays intact. If you have spare-time, please test it; otherwise, i will do it asap (but i am travelling a lot next week).
@Maxim: This new version of the patch is much better, than the old one. Maybe you can review this one? Thanks!
Carsten
2011/2/10 Carsten Bock lists@bock.info:
Hi Alexandre,
the current GIT-version contains some more modifications regarding timeout sockets. That is the reason why the patch does not work anymore. I will need to review the code and adapt my patch accordingly. I will do so later.
Carsten
2011/2/2 Alexandre Abreu alexandre.abreu@redt.com.br:
Hi Carsten,
The stable version of RTPProxy is indeed 1.2.1. In this version, there is no file 'rtpp_notify.c' so I think the patch is really for git-version. Maybe the original patch was made regarding to an earlier
git commit.
Thanks, Alexandre
-----Mensagem original----- De: kaiserbock2@googlemail.com [mailto:kaiserbock2@googlemail.com] Em nome de Carsten Bock Enviada em: quarta-feira, 2 de fevereiro de 2011 06:02 Para: Alexandre Abreu Cc: RTPproxy Development Assunto: Re: RTPPROXY timeout patch.
Hi Alexandre,
the patch was for the stable version of RTP-Proxy (1.2.1?). I will review the patch for the git-version. I am a little busy at the moment (business travel), so i can first do this on friday or next week.
Kind regards, Carsten
P.S.: Please always CC the list.
2011/2/1 Alexandre Abreu alexandre.abreu@redt.com.br:
Hi Carsten,
I am testing the new RTPProxy timeout feature in Kamailio (GIT
version).
Got the rtpproxy from GIT:
git clone git://sippy.git.sourceforge.net/gitroot/sippy/rtpproxy
I applied the patch:
[root@devel rtpproxy]# patch < rtpproxy.patch
patching file Makefile.am
Hunk #1 FAILED at 4.
1 out of 1 hunk FAILED -- saving rejects to file Makefile.am.rej
patching file config.h.in
patching file configure.ac
patching file rtpp_command.c
Hunk #1 succeeded at 54 (offset 2 lines).
Hunk #3 succeeded at 272 (offset 2 lines).
Hunk #4 succeeded at 315 with fuzz 2.
Hunk #5 FAILED at 466.
Hunk #6 FAILED at 961.
2 out of 6 hunks FAILED -- saving rejects to file rtpp_command.c.rej
patching file rtpp_notify.c
Hunk #1 FAILED at 38.
Hunk #2 succeeded at 263 (offset 78 lines).
misordered hunks! output would be garbled
Hunk #4 FAILED at 250.
Hunk #5 FAILED at 337.
3 out of 5 hunks FAILED -- saving rejects to file rtpp_notify.c.rej
patching file rtpp_notify.h
Hunk #1 succeeded at 39 with fuzz 2 (offset 8 lines).
patching file rtpp_session.c
patching file rtpp_session.h
As you see, not so clean but the files were patched.
On CentOS 5, I cant find the LIBXMLRPC through YUM/RPM, so I compiled xmlrpc-c-1.06.41.tgz by hand:
./configure prefix=/usr && make && make install
AND ./configure && make && make install
With that, the headers are both on /usr/lib/include and /usr/local/lib/include (I did that just to be sure that the config wasnt looking at the wrong place).
xmlrpc_abyss.h
xmlrpc_cgi.h
XmlRpcCpp.h
xmlrpc_server.h
xmlrpc_client.h
xmlrpc.h
xmlrpc_server_w32httpsys.h
The configure script from patched RTPPROXY doesnt _try_ to find the LIBXMLRPC (theres no reference in config.log) and therefore my rtpproxy doesnt have the support for the timeout notification.
Any comment on what could be wrong?
Alexandre
-- Carsten Bock Schomburgstr. 80 22767 Hamburg Germany
Mobile +49 179 2021244 Home +49 40 34927217 Büro (Verl) +49 5246 801427 Fax +49 40 34927218 mailto:carsten@bock.info
-- Carsten Bock Schomburgstr. 80 22767 Hamburg Germany
Mobile +49 179 2021244 Home +49 40 34927217 Büro (Verl) +49 5246 801427 Fax +49 40 34927218 mailto:carsten@bock.info
-- Carsten Bock Schomburgstr. 80 22767 Hamburg Germany
Mobile +49 179 2021244 Home +49 40 34927217 Büro (Verl) +49 5246 801427 Fax +49 40 34927218 mailto:carsten@bock.info
-- Carsten Bock http://www.ng-voice.com mailto:carsten@ng-voice.com
-- Carsten Bock http://www.ng-voice.com mailto:carsten@ng-voice.com
Hi Alexandre,
i don't have a clue, what is going wrong there. The timeout socket, you provide, must not necessarily point to the Kamailio-XML-RPC-Port, in my test-cases it just pointed anywhere... (i hope it does not mess up the XML-RPC Process of Kamailio if you connect there and do nothing). I am a little short in time at the moment, so i have just tar'ed the local RTP-Proxy i used for the development, so maybe you can test it, If it works with my version of RTP-Proxy, i will have to check why....
Carsten
2011/3/16 Alexandre Abreu alexandre.abreu@redt.com.br:
Hello Carsten,
If you use "-n tcp:127.0.0.1" without port you get:
[root@devel ~]# rtpproxy -T 10 -F -i -l 192.168.200.90 -s udp:127.0.0.1 7722 -n tcp:127.0.0.1 -d DBUG rtpproxy: can't parse host:port in TCP address rtpproxy: can't start notification thread
As I wrote in my previous mail, I am using "-n tcp:192.168.200.90:8000" which points to the address that XMLRPC server is listening to.
tcp 0 0 0.0.0.0:8000 0.0.0.0:* LISTEN 3661/kamailio
What I am missing here?
Thanks, Alexandre.
-----Mensagem original----- De: kaiserbock2@googlemail.com [mailto:kaiserbock2@googlemail.com] Em nome de Carsten Bock Enviada em: quarta-feira, 16 de março de 2011 09:00 Para: Alexandre Abreu Cc: sr-users@lists.sip-router.org Assunto: Re: RTPPROXY timeout patch.
Hi,
Sorry for confusion: You will have to define a Timeout socket, when starting RTP-Proxy (-n, may be invalid):
bock@bock-tde:~/ims/sr-rtpp/sip-router/modules/rtpproxy/test$ cat ./exec_rtpproxy.txt ./rtpproxy -T 10 -f -F -i -l 127.0.0.1 -s udp:*:22222 -d DBUG -n tcp:127.0.0.1
Recent Versions of RTP-Proxy start a separate thread to process the timeouts; but only if the timeout socket is defined at startup. Then it should work.
Good luck, Carsten
P.S.: I will add some docs on howto make this work in the next days to GIT-Trunk. 2011/3/15 Alexandre Abreu alexandre.abreu@redt.com.br:
Hello Carsten.
Still no lucky. I just moved the whole rtpproxy/ directory into 3.1 branch and recompiled and then changed my script to use rtpproxy_offer()/rtpproxy_answer().
Look:
Mar 15 14:04:38 devel rtpproxy[29111]: INFO:handle_command: new session e2361a59b4588d51, tag ed382a18;1 requested, type strong Mar 15 14:04:38 devel rtpproxy[29111]: INFO:handle_command: new session on
a
port 44206 created, tag ed382a18;1 Mar 15 14:04:38 devel rtpproxy[29111]: INFO:handle_command: pre-filling caller's address with 192.168.200.114:6380 Mar 15 14:04:39 devel kamailio[29544]: NOTICE: acc [acc.c:275]: ACC: transaction answered:
timestamp=1300208679;method=INVITE;from_tag=ed382a18;to_tag=19477c42;call_id
=e2361a59b4588d51;code=200;reason=OK; Mar 15 14:04:39 devel rtpproxy[29111]: INFO:handle_command: lookup on
ports
44206/41680, session timer restarted Mar 15 14:04:39 devel rtpproxy[29111]: INFO:handle_command: setting custom timeout handler (xmlrpc:http://localhost:8000/RPC2) Mar 15 14:04:39 devel rtpproxy[29111]: INFO:handle_command: pre-filling callee's address with 192.168.200.149:9494 Mar 15 14:04:50 devel rtpproxy[29111]: INFO:process_rtp: session timeout Mar 15 14:04:50 devel rtpproxy[29111]: INFO:remove_session: RTP stats: 963 in from callee, 10 in from caller, 973 relayed, 0 dropped Mar 15 14:04:50 devel rtpproxy[29111]: INFO:remove_session: RTCP stats: 5
in
from callee, 1 in from caller, 6 relayed, 0 dropped Mar 15 14:04:50 devel rtpproxy[29111]: INFO:remove_session: session on
ports
44206/41680 is cleaned up
Started with: rtpproxy -T 10 -F -i -l 192.168.200.90 -s udp:127.0.0.1:7722 -n tcp:192.168.200.90:8000 -d DBUG
SIP-ROUTER config: # ----- rtpproxy params ----- modparam("rtpproxy", "rtpproxy_sock", "udp:localhost:7722") modparam("rtpproxy", "rtpproxy_tout", 3) modparam("rtpproxy", "timeout_socket",
"xmlrpc:http://localhost:8000/RPC2")
# The Port for incoming XML-RPC requests modparam("mi_xmlrpc", "port", 8000) modparam("mi_xmlrpc", "reply_option", 1) modparam("mi_xmlrpc", "buffer_size", 8192) modparam("mi_xmlrpc", "log_file", "/tmp/openser_xmlrpc")
The session keeps active after the RTPPROXY proxy timeout. It seems dlg_terminate_dlg isn't being triggered. Am I missing something else
beyond
moving rtpproxy/ directory? As this thread is a user-question, I am copying SR-USERS mail list. I am also using xmlrpc-c-1.06.41.
Thanks, Alexandre.
-----Mensagem original----- De: kaiserbock2@googlemail.com [mailto:kaiserbock2@googlemail.com] Em nome de Carsten Bock Enviada em: terça-feira, 15 de março de 2011 05:15 Para: Alexandre Abreu Assunto: Re: RTPPROXY timeout patch.
Hi Alexandre,
sorry, yes, your correct. My changes are not in the 3.1 branch, but only GIT-Master. Only the GIT-Master currently holds the correct patch and config. I will need to backport the changes from the master... (will do so this week).
Carsten
2011/3/14 Alexandre Abreu alexandre.abreu@redt.com.br:
Hello Carsten,
Let me ask you a question:
If "First is important to clarify: from version 3.0.0 on, Kamailio and SER are identical in terms of source code.", then why your changes does not reflect in kamailio 3.1 from GIT? I did see the changes by getting the SIP-ROUTER from GIT. Kamailio 3.1 from GIT does not have your code.
Thanks. Alexandre
-----Mensagem original----- De: kaiserbock2@googlemail.com [mailto:kaiserbock2@googlemail.com] Em nome de Carsten Bock Enviada em: segunda-feira, 14 de março de 2011 05:31 Para: Alexandre Abreu Cc: RTPproxy Development Assunto: Re: RTPPROXY timeout patch.
Hello,
i hope, you had a nice weekend... ;-) Are you sure, you are using the GIT-Version of the Kamailio/sip-router.org config? In the GIT version it is now:
modparam("rtpproxy", "timeout_socket", "xmlrpc:http://localhost:8000/RPC2")
http://git.sip-router.org/cgi-bin/gitweb.cgi?p=sip-router;a=blob;f=mod ules/r tpproxy/test/kamailio.cfg;h=0d5c73ff2065f33f262981fba2c07e65496e7415;h b=HEAD
This should work (as tested by me).
Carsten
2011/3/11 Alexandre Abreu alexandre.abreu@redt.com.br:
Hello Carsten,
The patch was applied just fine but I can't get that feature working. See below:
[root@devel log]# rtpproxy -v Basic version: 20040107 Extension 20050322: Support for multiple RTP streams and MOH Extension 20060704: Support for extra parameter in the V command Extension 20071116: Support for RTP re-packetization Extension 20071218: Support for forking (copying) RTP stream Extension 20080403: Support for RTP statistics querying Extension 20081102: Support for setting codecs in the update/lookup command Extension 20081224: Support for session timeout notifications Extension 20090810: Support for automatic bridging Extension 20100819: Support for timeout notifications using XML-RPC towards Kamailio/sip-router.org
Using SR 3.1.2, my configuration file was exactly the same as the example in test/ subdirectory you commit to rtpproxy module.
# RTP-Proxy modparam("rtpproxy", "rtpproxy_sock", "udp:localhost:22222") modparam("rtpproxy", "rtpproxy_tout", 3) modparam("rtpproxy", "timeout_socket", "http://localhost:8000/RPC2")
# The Port for incoming XML-RPC requests modparam("mi_xmlrpc", "port", 8000) modparam("mi_xmlrpc", "reply_option", 1) modparam("mi_xmlrpc", "buffer_size", 8192) modparam("mi_xmlrpc", "log_file", "/tmp/openser_xmlrpc")
Still inside test/ subdir we have the following example:
[root@devel test]# cat exec_rtpproxy.txt ./rtpproxy -T 10 -f -F -i -l <your IP> -s udp:*:22222 -d DBUG
You mean that if XML-RPC is used, it has to begin with "xmlrpc:". I can't see this string anywhere in these examples. I guess these files are not up to date. Am I correct? I can see the session timeout in RTPPROXY, but the session does not
close.
If I understand right how this feature works, it should send a "dlg_terminate_dlg + call-id" to send the BYE to both sides.
Any tip on what could be wrong?
Thanks, Alexandre
-----Mensagem original----- De: kaiserbock2@googlemail.com [mailto:kaiserbock2@googlemail.com] Em nome de Carsten Bock Enviada em: quinta-feira, 10 de fevereiro de 2011 20:53 Para: Alexandre Abreu Cc: RTPproxy Development Assunto: Re: RTPPROXY timeout patch.
Hi Alexandre,
i updated the patch in the sip-router-repository (and attached the patch to this email). The new patch and the modifications to the rtpproxy module need some more testing, i have only done basic
functionality testing so far.
I have reduced the patch a little, the socket, if the XML-RPC-Interface is used, has to begin with "xmlrpc:". This way, the protocol of the RTP-Proxy stays intact. If you have spare-time, please test it; otherwise, i will do it asap (but i am travelling a lot next week).
@Maxim: This new version of the patch is much better, than the old one. Maybe you can review this one? Thanks!
Carsten
2011/2/10 Carsten Bock lists@bock.info:
Hi Alexandre,
the current GIT-version contains some more modifications regarding timeout sockets. That is the reason why the patch does not work anymore. I will need to review the code and adapt my patch accordingly. I will do so later.
Carsten
2011/2/2 Alexandre Abreu alexandre.abreu@redt.com.br:
Hi Carsten,
The stable version of RTPProxy is indeed 1.2.1. In this version, there is no file 'rtpp_notify.c' so I think the patch is really for git-version. Maybe the original patch was made regarding to an earlier
git commit.
Thanks, Alexandre
-----Mensagem original----- De: kaiserbock2@googlemail.com [mailto:kaiserbock2@googlemail.com] Em nome de Carsten Bock Enviada em: quarta-feira, 2 de fevereiro de 2011 06:02 Para: Alexandre Abreu Cc: RTPproxy Development Assunto: Re: RTPPROXY timeout patch.
Hi Alexandre,
the patch was for the stable version of RTP-Proxy (1.2.1?). I will review the patch for the git-version. I am a little busy at the moment (business travel), so i can first do this on friday or next week.
Kind regards, Carsten
P.S.: Please always CC the list.
2011/2/1 Alexandre Abreu alexandre.abreu@redt.com.br: > Hi Carsten, > > > > I am testing the new RTPProxy timeout feature in Kamailio (GIT
version).
> > > > Got the rtpproxy from GIT: > > git clone git://sippy.git.sourceforge.net/gitroot/sippy/rtpproxy > > > > I applied the patch: > > [root@devel rtpproxy]# patch < rtpproxy.patch > > patching file Makefile.am > > Hunk #1 FAILED at 4. > > 1 out of 1 hunk FAILED -- saving rejects to file Makefile.am.rej > > patching file config.h.in > > patching file configure.ac > > patching file rtpp_command.c > > Hunk #1 succeeded at 54 (offset 2 lines). > > Hunk #3 succeeded at 272 (offset 2 lines). > > Hunk #4 succeeded at 315 with fuzz 2. > > Hunk #5 FAILED at 466. > > Hunk #6 FAILED at 961. > > 2 out of 6 hunks FAILED -- saving rejects to file > rtpp_command.c.rej > > patching file rtpp_notify.c > > Hunk #1 FAILED at 38. > > Hunk #2 succeeded at 263 (offset 78 lines). > > misordered hunks! output would be garbled > > Hunk #4 FAILED at 250. > > Hunk #5 FAILED at 337. > > 3 out of 5 hunks FAILED -- saving rejects to file > rtpp_notify.c.rej > > patching file rtpp_notify.h > > Hunk #1 succeeded at 39 with fuzz 2 (offset 8 lines). > > patching file rtpp_session.c > > patching file rtpp_session.h > > > > As you see, not so clean but the files were patched. > > > > On CentOS 5, I can’t find the LIBXMLRPC through YUM/RPM, so I > compiled xmlrpc-c-1.06.41.tgz by hand: > > > > ./configure –prefix=/usr && make && make install > > AND ./configure && make && make install > > With that, the headers are both on /usr/lib/include and > /usr/local/lib/include (I did that just to be sure that the config > wasn’t looking at the wrong place). > > > > xmlrpc_abyss.h > > xmlrpc_cgi.h > > XmlRpcCpp.h > > xmlrpc_server.h > > xmlrpc_client.h > > xmlrpc.h > > xmlrpc_server_w32httpsys.h > > > > The configure script from patched RTPPROXY doesn’t _try_ to find > the LIBXMLRPC (there’s no reference in config.log) and therefore > my rtpproxy doesn’t have the support for the timeout notification. > > > > Any comment on what could be wrong? > > > > Alexandre
-- Carsten Bock Schomburgstr. 80 22767 Hamburg Germany
Mobile +49 179 2021244 Home +49 40 34927217 Büro (Verl) +49 5246 801427 Fax +49 40 34927218 mailto:carsten@bock.info
-- Carsten Bock Schomburgstr. 80 22767 Hamburg Germany
Mobile +49 179 2021244 Home +49 40 34927217 Büro (Verl) +49 5246 801427 Fax +49 40 34927218 mailto:carsten@bock.info
-- Carsten Bock Schomburgstr. 80 22767 Hamburg Germany
Mobile +49 179 2021244 Home +49 40 34927217 Büro (Verl) +49 5246 801427 Fax +49 40 34927218 mailto:carsten@bock.info
-- Carsten Bock http://www.ng-voice.com mailto:carsten@ng-voice.com
-- Carsten Bock http://www.ng-voice.com mailto:carsten@ng-voice.com
-- Carsten Bock http://www.ng-voice.com mailto:carsten@ng-voice.com
Hi Carsten,
I just tested again changing the port 8000 to point to another port. Still does not work. I am waiting your RTPPROXY tarball to test again.
Thanks, Alexandre.
-----Mensagem original----- De: kaiserbock2@googlemail.com [mailto:kaiserbock2@googlemail.com] Em nome de Carsten Bock Enviada em: quarta-feira, 16 de março de 2011 09:54 Para: Alexandre Abreu Cc: sr-users@lists.sip-router.org Assunto: Re: RTPPROXY timeout patch.
Hi Alexandre,
i don't have a clue, what is going wrong there. The timeout socket, you provide, must not necessarily point to the Kamailio-XML-RPC-Port, in my test-cases it just pointed anywhere... (i hope it does not mess up the XML-RPC Process of Kamailio if you connect there and do nothing). I am a little short in time at the moment, so i have just tar'ed the local RTP-Proxy i used for the development, so maybe you can test it, If it works with my version of RTP-Proxy, i will have to check why....
Carsten
2011/3/16 Alexandre Abreu alexandre.abreu@redt.com.br:
Hello Carsten,
If you use "-n tcp:127.0.0.1" without port you get:
[root@devel ~]# rtpproxy -T 10 -F -i -l 192.168.200.90 -s udp:127.0.0.1
7722
-n tcp:127.0.0.1 -d DBUG rtpproxy: can't parse host:port in TCP address rtpproxy: can't start notification thread
As I wrote in my previous mail, I am using "-n tcp:192.168.200.90:8000" which points to the address that XMLRPC server is listening to.
tcp 0 0 0.0.0.0:8000 0.0.0.0:* LISTEN 3661/kamailio
What I am missing here?
Thanks, Alexandre.
-----Mensagem original----- De: kaiserbock2@googlemail.com [mailto:kaiserbock2@googlemail.com] Em nome de Carsten Bock Enviada em: quarta-feira, 16 de março de 2011 09:00 Para: Alexandre Abreu Cc: sr-users@lists.sip-router.org Assunto: Re: RTPPROXY timeout patch.
Hi,
Sorry for confusion: You will have to define a Timeout socket, when starting RTP-Proxy (-n, may be invalid):
bock@bock-tde:~/ims/sr-rtpp/sip-router/modules/rtpproxy/test$ cat ./exec_rtpproxy.txt ./rtpproxy -T 10 -f -F -i -l 127.0.0.1 -s udp:*:22222 -d DBUG -n tcp:127.0.0.1
Recent Versions of RTP-Proxy start a separate thread to process the timeouts; but only if the timeout socket is defined at startup. Then it should work.
Good luck, Carsten
P.S.: I will add some docs on howto make this work in the next days to GIT-Trunk. 2011/3/15 Alexandre Abreu alexandre.abreu@redt.com.br:
Hello Carsten.
Still no lucky. I just moved the whole rtpproxy/ directory into 3.1
branch
and recompiled and then changed my script to use rtpproxy_offer()/rtpproxy_answer().
Look:
Mar 15 14:04:38 devel rtpproxy[29111]: INFO:handle_command: new session e2361a59b4588d51, tag ed382a18;1 requested, type strong Mar 15 14:04:38 devel rtpproxy[29111]: INFO:handle_command: new session
on
a
port 44206 created, tag ed382a18;1 Mar 15 14:04:38 devel rtpproxy[29111]: INFO:handle_command: pre-filling caller's address with 192.168.200.114:6380 Mar 15 14:04:39 devel kamailio[29544]: NOTICE: acc [acc.c:275]: ACC: transaction answered:
timestamp=1300208679;method=INVITE;from_tag=ed382a18;to_tag=19477c42;call_id
=e2361a59b4588d51;code=200;reason=OK; Mar 15 14:04:39 devel rtpproxy[29111]: INFO:handle_command: lookup on
ports
44206/41680, session timer restarted Mar 15 14:04:39 devel rtpproxy[29111]: INFO:handle_command: setting
custom
timeout handler (xmlrpc:http://localhost:8000/RPC2) Mar 15 14:04:39 devel rtpproxy[29111]: INFO:handle_command: pre-filling callee's address with 192.168.200.149:9494 Mar 15 14:04:50 devel rtpproxy[29111]: INFO:process_rtp: session timeout Mar 15 14:04:50 devel rtpproxy[29111]: INFO:remove_session: RTP stats:
963
in from callee, 10 in from caller, 973 relayed, 0 dropped Mar 15 14:04:50 devel rtpproxy[29111]: INFO:remove_session: RTCP stats: 5
in
from callee, 1 in from caller, 6 relayed, 0 dropped Mar 15 14:04:50 devel rtpproxy[29111]: INFO:remove_session: session on
ports
44206/41680 is cleaned up
Started with: rtpproxy -T 10 -F -i -l 192.168.200.90 -s udp:127.0.0.1:7722 -n tcp:192.168.200.90:8000 -d DBUG
SIP-ROUTER config: # ----- rtpproxy params ----- modparam("rtpproxy", "rtpproxy_sock", "udp:localhost:7722") modparam("rtpproxy", "rtpproxy_tout", 3) modparam("rtpproxy", "timeout_socket",
"xmlrpc:http://localhost:8000/RPC2")
# The Port for incoming XML-RPC requests modparam("mi_xmlrpc", "port", 8000) modparam("mi_xmlrpc", "reply_option", 1) modparam("mi_xmlrpc", "buffer_size", 8192) modparam("mi_xmlrpc", "log_file", "/tmp/openser_xmlrpc")
The session keeps active after the RTPPROXY proxy timeout. It seems dlg_terminate_dlg isn't being triggered. Am I missing something else
beyond
moving rtpproxy/ directory? As this thread is a user-question, I am copying SR-USERS mail list. I am also using xmlrpc-c-1.06.41.
Thanks, Alexandre.
-----Mensagem original----- De: kaiserbock2@googlemail.com [mailto:kaiserbock2@googlemail.com] Em
nome
de Carsten Bock Enviada em: terça-feira, 15 de março de 2011 05:15 Para: Alexandre Abreu Assunto: Re: RTPPROXY timeout patch.
Hi Alexandre,
sorry, yes, your correct. My changes are not in the 3.1 branch, but only GIT-Master. Only the GIT-Master currently holds the correct patch and config. I will need to backport the changes from the master... (will do so this week).
Carsten
2011/3/14 Alexandre Abreu alexandre.abreu@redt.com.br:
Hello Carsten,
Let me ask you a question:
If "First is important to clarify: from version 3.0.0 on, Kamailio and SER are identical in terms of source code.", then why your changes does not reflect in kamailio 3.1 from GIT? I did see the changes by getting the SIP-ROUTER from GIT. Kamailio 3.1 from GIT does not have your code.
Thanks. Alexandre
-----Mensagem original----- De: kaiserbock2@googlemail.com [mailto:kaiserbock2@googlemail.com] Em nome de Carsten Bock Enviada em: segunda-feira, 14 de março de 2011 05:31 Para: Alexandre Abreu Cc: RTPproxy Development Assunto: Re: RTPPROXY timeout patch.
Hello,
i hope, you had a nice weekend... ;-) Are you sure, you are using the GIT-Version of the Kamailio/sip-router.org config? In the GIT version it is now:
modparam("rtpproxy", "timeout_socket", "xmlrpc:http://localhost:8000/RPC2")
http://git.sip-router.org/cgi-bin/gitweb.cgi?p=sip-router;a=blob;f=mod ules/r tpproxy/test/kamailio.cfg;h=0d5c73ff2065f33f262981fba2c07e65496e7415;h b=HEAD
This should work (as tested by me).
Carsten
2011/3/11 Alexandre Abreu alexandre.abreu@redt.com.br:
Hello Carsten,
The patch was applied just fine but I can't get that feature working. See below:
[root@devel log]# rtpproxy -v Basic version: 20040107 Extension 20050322: Support for multiple RTP streams and MOH Extension 20060704: Support for extra parameter in the V command Extension 20071116: Support for RTP re-packetization Extension 20071218: Support for forking (copying) RTP stream Extension 20080403: Support for RTP statistics querying Extension 20081102: Support for setting codecs in the update/lookup command Extension 20081224: Support for session timeout notifications Extension 20090810: Support for automatic bridging Extension 20100819: Support for timeout notifications using XML-RPC towards Kamailio/sip-router.org
Using SR 3.1.2, my configuration file was exactly the same as the example in test/ subdirectory you commit to rtpproxy module.
# RTP-Proxy modparam("rtpproxy", "rtpproxy_sock", "udp:localhost:22222") modparam("rtpproxy", "rtpproxy_tout", 3) modparam("rtpproxy", "timeout_socket", "http://localhost:8000/RPC2")
# The Port for incoming XML-RPC requests modparam("mi_xmlrpc", "port", 8000) modparam("mi_xmlrpc", "reply_option", 1) modparam("mi_xmlrpc", "buffer_size", 8192) modparam("mi_xmlrpc", "log_file", "/tmp/openser_xmlrpc")
Still inside test/ subdir we have the following example:
[root@devel test]# cat exec_rtpproxy.txt ./rtpproxy -T 10 -f -F -i -l <your IP> -s udp:*:22222 -d DBUG
You mean that if XML-RPC is used, it has to begin with "xmlrpc:". I can't see this string anywhere in these examples. I guess these files are not up to date. Am I correct? I can see the session timeout in RTPPROXY, but the session does not
close.
If I understand right how this feature works, it should send a "dlg_terminate_dlg + call-id" to send the BYE to both sides.
Any tip on what could be wrong?
Thanks, Alexandre
-----Mensagem original----- De: kaiserbock2@googlemail.com [mailto:kaiserbock2@googlemail.com] Em nome de Carsten Bock Enviada em: quinta-feira, 10 de fevereiro de 2011 20:53 Para: Alexandre Abreu Cc: RTPproxy Development Assunto: Re: RTPPROXY timeout patch.
Hi Alexandre,
i updated the patch in the sip-router-repository (and attached the patch to this email). The new patch and the modifications to the rtpproxy module need some more testing, i have only done basic
functionality testing so far.
I have reduced the patch a little, the socket, if the XML-RPC-Interface is used, has to begin with "xmlrpc:". This way, the protocol of the RTP-Proxy stays intact. If you have spare-time, please test it; otherwise, i will do it asap (but i am travelling a lot next week).
@Maxim: This new version of the patch is much better, than the old one. Maybe you can review this one? Thanks!
Carsten
2011/2/10 Carsten Bock lists@bock.info:
Hi Alexandre,
the current GIT-version contains some more modifications regarding timeout sockets. That is the reason why the patch does not work anymore. I will need to review the code and adapt my patch accordingly. I will do so later.
Carsten
2011/2/2 Alexandre Abreu alexandre.abreu@redt.com.br:
Hi Carsten,
The stable version of RTPProxy is indeed 1.2.1. In this version, there is no file 'rtpp_notify.c' so I think the patch is really for git-version. Maybe the original patch was made regarding to an earlier
git commit.
Thanks, Alexandre
-----Mensagem original----- De: kaiserbock2@googlemail.com [mailto:kaiserbock2@googlemail.com] Em nome de Carsten Bock Enviada em: quarta-feira, 2 de fevereiro de 2011 06:02 Para: Alexandre Abreu Cc: RTPproxy Development Assunto: Re: RTPPROXY timeout patch.
Hi Alexandre,
the patch was for the stable version of RTP-Proxy (1.2.1?). I will review the patch for the git-version. I am a little busy at the moment (business travel), so i can first do this on friday or next week.
Kind regards, Carsten
P.S.: Please always CC the list.
2011/2/1 Alexandre Abreu alexandre.abreu@redt.com.br: > Hi Carsten, > > > > I am testing the new RTPProxy timeout feature in Kamailio (GIT
version).
> > > > Got the rtpproxy from GIT: > > git clone git://sippy.git.sourceforge.net/gitroot/sippy/rtpproxy > > > > I applied the patch: > > [root@devel rtpproxy]# patch < rtpproxy.patch > > patching file Makefile.am > > Hunk #1 FAILED at 4. > > 1 out of 1 hunk FAILED -- saving rejects to file Makefile.am.rej > > patching file config.h.in > > patching file configure.ac > > patching file rtpp_command.c > > Hunk #1 succeeded at 54 (offset 2 lines). > > Hunk #3 succeeded at 272 (offset 2 lines). > > Hunk #4 succeeded at 315 with fuzz 2. > > Hunk #5 FAILED at 466. > > Hunk #6 FAILED at 961. > > 2 out of 6 hunks FAILED -- saving rejects to file > rtpp_command.c.rej > > patching file rtpp_notify.c > > Hunk #1 FAILED at 38. > > Hunk #2 succeeded at 263 (offset 78 lines). > > misordered hunks! output would be garbled > > Hunk #4 FAILED at 250. > > Hunk #5 FAILED at 337. > > 3 out of 5 hunks FAILED -- saving rejects to file > rtpp_notify.c.rej > > patching file rtpp_notify.h > > Hunk #1 succeeded at 39 with fuzz 2 (offset 8 lines). > > patching file rtpp_session.c > > patching file rtpp_session.h > > > > As you see, not so clean but the files were patched. > > > > On CentOS 5, I cant find the LIBXMLRPC through YUM/RPM, so I > compiled xmlrpc-c-1.06.41.tgz by hand: > > > > ./configure prefix=/usr && make && make install > > AND ./configure && make && make install > > With that, the headers are both on /usr/lib/include and > /usr/local/lib/include (I did that just to be sure that the config > wasnt looking at the wrong place). > > > > xmlrpc_abyss.h > > xmlrpc_cgi.h > > XmlRpcCpp.h > > xmlrpc_server.h > > xmlrpc_client.h > > xmlrpc.h > > xmlrpc_server_w32httpsys.h > > > > The configure script from patched RTPPROXY doesnt _try_ to find > the LIBXMLRPC (theres no reference in config.log) and therefore > my rtpproxy doesnt have the support for the timeout notification. > > > > Any comment on what could be wrong? > > > > Alexandre
-- Carsten Bock Schomburgstr. 80 22767 Hamburg Germany
Mobile +49 179 2021244 Home +49 40 34927217 Büro (Verl) +49 5246 801427 Fax +49 40 34927218 mailto:carsten@bock.info
-- Carsten Bock Schomburgstr. 80 22767 Hamburg Germany
Mobile +49 179 2021244 Home +49 40 34927217 Büro (Verl) +49 5246 801427 Fax +49 40 34927218 mailto:carsten@bock.info
-- Carsten Bock Schomburgstr. 80 22767 Hamburg Germany
Mobile +49 179 2021244 Home +49 40 34927217 Büro (Verl) +49 5246 801427 Fax +49 40 34927218 mailto:carsten@bock.info
-- Carsten Bock http://www.ng-voice.com mailto:carsten@ng-voice.com
-- Carsten Bock http://www.ng-voice.com mailto:carsten@ng-voice.com
-- Carsten Bock http://www.ng-voice.com mailto:carsten@ng-voice.com
Hi,
sorry, forgot to attach.
Carsten
2011/3/16 Alexandre Abreu alexandre.abreu@redt.com.br:
Hi Carsten,
I just tested again changing the port 8000 to point to another port. Still does not work. I am waiting your RTPPROXY tarball to test again.
Thanks, Alexandre.
-----Mensagem original----- De: kaiserbock2@googlemail.com [mailto:kaiserbock2@googlemail.com] Em nome de Carsten Bock Enviada em: quarta-feira, 16 de março de 2011 09:54 Para: Alexandre Abreu Cc: sr-users@lists.sip-router.org Assunto: Re: RTPPROXY timeout patch.
Hi Alexandre,
i don't have a clue, what is going wrong there. The timeout socket, you provide, must not necessarily point to the Kamailio-XML-RPC-Port, in my test-cases it just pointed anywhere... (i hope it does not mess up the XML-RPC Process of Kamailio if you connect there and do nothing). I am a little short in time at the moment, so i have just tar'ed the local RTP-Proxy i used for the development, so maybe you can test it, If it works with my version of RTP-Proxy, i will have to check why....
Carsten
2011/3/16 Alexandre Abreu alexandre.abreu@redt.com.br:
Hello Carsten,
If you use "-n tcp:127.0.0.1" without port you get:
[root@devel ~]# rtpproxy -T 10 -F -i -l 192.168.200.90 -s udp:127.0.0.1
7722
-n tcp:127.0.0.1 -d DBUG rtpproxy: can't parse host:port in TCP address rtpproxy: can't start notification thread
As I wrote in my previous mail, I am using "-n tcp:192.168.200.90:8000" which points to the address that XMLRPC server is listening to.
tcp 0 0 0.0.0.0:8000 0.0.0.0:* LISTEN 3661/kamailio
What I am missing here?
Thanks, Alexandre.
-----Mensagem original----- De: kaiserbock2@googlemail.com [mailto:kaiserbock2@googlemail.com] Em nome de Carsten Bock Enviada em: quarta-feira, 16 de março de 2011 09:00 Para: Alexandre Abreu Cc: sr-users@lists.sip-router.org Assunto: Re: RTPPROXY timeout patch.
Hi,
Sorry for confusion: You will have to define a Timeout socket, when starting RTP-Proxy (-n, may be invalid):
bock@bock-tde:~/ims/sr-rtpp/sip-router/modules/rtpproxy/test$ cat ./exec_rtpproxy.txt ./rtpproxy -T 10 -f -F -i -l 127.0.0.1 -s udp:*:22222 -d DBUG -n tcp:127.0.0.1
Recent Versions of RTP-Proxy start a separate thread to process the timeouts; but only if the timeout socket is defined at startup. Then it should work.
Good luck, Carsten
P.S.: I will add some docs on howto make this work in the next days to GIT-Trunk. 2011/3/15 Alexandre Abreu alexandre.abreu@redt.com.br:
Hello Carsten.
Still no lucky. I just moved the whole rtpproxy/ directory into 3.1
branch
and recompiled and then changed my script to use rtpproxy_offer()/rtpproxy_answer().
Look:
Mar 15 14:04:38 devel rtpproxy[29111]: INFO:handle_command: new session e2361a59b4588d51, tag ed382a18;1 requested, type strong Mar 15 14:04:38 devel rtpproxy[29111]: INFO:handle_command: new session
on
a
port 44206 created, tag ed382a18;1 Mar 15 14:04:38 devel rtpproxy[29111]: INFO:handle_command: pre-filling caller's address with 192.168.200.114:6380 Mar 15 14:04:39 devel kamailio[29544]: NOTICE: acc [acc.c:275]: ACC: transaction answered:
timestamp=1300208679;method=INVITE;from_tag=ed382a18;to_tag=19477c42;call_id
=e2361a59b4588d51;code=200;reason=OK; Mar 15 14:04:39 devel rtpproxy[29111]: INFO:handle_command: lookup on
ports
44206/41680, session timer restarted Mar 15 14:04:39 devel rtpproxy[29111]: INFO:handle_command: setting
custom
timeout handler (xmlrpc:http://localhost:8000/RPC2) Mar 15 14:04:39 devel rtpproxy[29111]: INFO:handle_command: pre-filling callee's address with 192.168.200.149:9494 Mar 15 14:04:50 devel rtpproxy[29111]: INFO:process_rtp: session timeout Mar 15 14:04:50 devel rtpproxy[29111]: INFO:remove_session: RTP stats:
963
in from callee, 10 in from caller, 973 relayed, 0 dropped Mar 15 14:04:50 devel rtpproxy[29111]: INFO:remove_session: RTCP stats: 5
in
from callee, 1 in from caller, 6 relayed, 0 dropped Mar 15 14:04:50 devel rtpproxy[29111]: INFO:remove_session: session on
ports
44206/41680 is cleaned up
Started with: rtpproxy -T 10 -F -i -l 192.168.200.90 -s udp:127.0.0.1:7722 -n tcp:192.168.200.90:8000 -d DBUG
SIP-ROUTER config: # ----- rtpproxy params ----- modparam("rtpproxy", "rtpproxy_sock", "udp:localhost:7722") modparam("rtpproxy", "rtpproxy_tout", 3) modparam("rtpproxy", "timeout_socket",
"xmlrpc:http://localhost:8000/RPC2")
# The Port for incoming XML-RPC requests modparam("mi_xmlrpc", "port", 8000) modparam("mi_xmlrpc", "reply_option", 1) modparam("mi_xmlrpc", "buffer_size", 8192) modparam("mi_xmlrpc", "log_file", "/tmp/openser_xmlrpc")
The session keeps active after the RTPPROXY proxy timeout. It seems dlg_terminate_dlg isn't being triggered. Am I missing something else
beyond
moving rtpproxy/ directory? As this thread is a user-question, I am copying SR-USERS mail list. I am also using xmlrpc-c-1.06.41.
Thanks, Alexandre.
-----Mensagem original----- De: kaiserbock2@googlemail.com [mailto:kaiserbock2@googlemail.com] Em
nome
de Carsten Bock Enviada em: terça-feira, 15 de março de 2011 05:15 Para: Alexandre Abreu Assunto: Re: RTPPROXY timeout patch.
Hi Alexandre,
sorry, yes, your correct. My changes are not in the 3.1 branch, but only GIT-Master. Only the GIT-Master currently holds the correct patch and config. I will need to backport the changes from the master... (will do so this week).
Carsten
2011/3/14 Alexandre Abreu alexandre.abreu@redt.com.br:
Hello Carsten,
Let me ask you a question:
If "First is important to clarify: from version 3.0.0 on, Kamailio and SER are identical in terms of source code.", then why your changes does not reflect in kamailio 3.1 from GIT? I did see the changes by getting the SIP-ROUTER from GIT. Kamailio 3.1 from GIT does not have your code.
Thanks. Alexandre
-----Mensagem original----- De: kaiserbock2@googlemail.com [mailto:kaiserbock2@googlemail.com] Em nome de Carsten Bock Enviada em: segunda-feira, 14 de março de 2011 05:31 Para: Alexandre Abreu Cc: RTPproxy Development Assunto: Re: RTPPROXY timeout patch.
Hello,
i hope, you had a nice weekend... ;-) Are you sure, you are using the GIT-Version of the Kamailio/sip-router.org config? In the GIT version it is now:
modparam("rtpproxy", "timeout_socket", "xmlrpc:http://localhost:8000/RPC2")
http://git.sip-router.org/cgi-bin/gitweb.cgi?p=sip-router;a=blob;f=mod ules/r tpproxy/test/kamailio.cfg;h=0d5c73ff2065f33f262981fba2c07e65496e7415;h b=HEAD
This should work (as tested by me).
Carsten
2011/3/11 Alexandre Abreu alexandre.abreu@redt.com.br:
Hello Carsten,
The patch was applied just fine but I can't get that feature working. See below:
[root@devel log]# rtpproxy -v Basic version: 20040107 Extension 20050322: Support for multiple RTP streams and MOH Extension 20060704: Support for extra parameter in the V command Extension 20071116: Support for RTP re-packetization Extension 20071218: Support for forking (copying) RTP stream Extension 20080403: Support for RTP statistics querying Extension 20081102: Support for setting codecs in the update/lookup command Extension 20081224: Support for session timeout notifications Extension 20090810: Support for automatic bridging Extension 20100819: Support for timeout notifications using XML-RPC towards Kamailio/sip-router.org
Using SR 3.1.2, my configuration file was exactly the same as the example in test/ subdirectory you commit to rtpproxy module.
# RTP-Proxy modparam("rtpproxy", "rtpproxy_sock", "udp:localhost:22222") modparam("rtpproxy", "rtpproxy_tout", 3) modparam("rtpproxy", "timeout_socket", "http://localhost:8000/RPC2")
# The Port for incoming XML-RPC requests modparam("mi_xmlrpc", "port", 8000) modparam("mi_xmlrpc", "reply_option", 1) modparam("mi_xmlrpc", "buffer_size", 8192) modparam("mi_xmlrpc", "log_file", "/tmp/openser_xmlrpc")
Still inside test/ subdir we have the following example:
[root@devel test]# cat exec_rtpproxy.txt ./rtpproxy -T 10 -f -F -i -l <your IP> -s udp:*:22222 -d DBUG
You mean that if XML-RPC is used, it has to begin with "xmlrpc:". I can't see this string anywhere in these examples. I guess these files are not up to date. Am I correct? I can see the session timeout in RTPPROXY, but the session does not
close.
If I understand right how this feature works, it should send a "dlg_terminate_dlg + call-id" to send the BYE to both sides.
Any tip on what could be wrong?
Thanks, Alexandre
-----Mensagem original----- De: kaiserbock2@googlemail.com [mailto:kaiserbock2@googlemail.com] Em nome de Carsten Bock Enviada em: quinta-feira, 10 de fevereiro de 2011 20:53 Para: Alexandre Abreu Cc: RTPproxy Development Assunto: Re: RTPPROXY timeout patch.
Hi Alexandre,
i updated the patch in the sip-router-repository (and attached the patch to this email). The new patch and the modifications to the rtpproxy module need some more testing, i have only done basic
functionality testing so far.
I have reduced the patch a little, the socket, if the XML-RPC-Interface is used, has to begin with "xmlrpc:". This way, the protocol of the RTP-Proxy stays intact. If you have spare-time, please test it; otherwise, i will do it asap (but i am travelling a lot next week).
@Maxim: This new version of the patch is much better, than the old one. Maybe you can review this one? Thanks!
Carsten
2011/2/10 Carsten Bock lists@bock.info:
Hi Alexandre,
the current GIT-version contains some more modifications regarding timeout sockets. That is the reason why the patch does not work anymore. I will need to review the code and adapt my patch accordingly. I will do so later.
Carsten
2011/2/2 Alexandre Abreu alexandre.abreu@redt.com.br: > Hi Carsten, > > The stable version of RTPProxy is indeed 1.2.1. In this version, > there is no file 'rtpp_notify.c' so I think the patch is really > for git-version. Maybe the original patch was made regarding to an > earlier
git commit.
> > Thanks, > Alexandre > > -----Mensagem original----- > De: kaiserbock2@googlemail.com [mailto:kaiserbock2@googlemail.com] > Em nome de Carsten Bock Enviada em: quarta-feira, 2 de fevereiro de > 2011 > 06:02 > Para: Alexandre Abreu > Cc: RTPproxy Development > Assunto: Re: RTPPROXY timeout patch. > > Hi Alexandre, > > the patch was for the stable version of RTP-Proxy (1.2.1?). I will > review the patch for the git-version. > I am a little busy at the moment (business travel), so i can first > do this on friday or next week. > > Kind regards, > Carsten > > P.S.: Please always CC the list. > > 2011/2/1 Alexandre Abreu alexandre.abreu@redt.com.br: >> Hi Carsten, >> >> >> >> I am testing the new RTPProxy timeout feature in Kamailio (GIT
version).
>> >> >> >> Got the rtpproxy from GIT: >> >> git clone git://sippy.git.sourceforge.net/gitroot/sippy/rtpproxy >> >> >> >> I applied the patch: >> >> [root@devel rtpproxy]# patch < rtpproxy.patch >> >> patching file Makefile.am >> >> Hunk #1 FAILED at 4. >> >> 1 out of 1 hunk FAILED -- saving rejects to file Makefile.am.rej >> >> patching file config.h.in >> >> patching file configure.ac >> >> patching file rtpp_command.c >> >> Hunk #1 succeeded at 54 (offset 2 lines). >> >> Hunk #3 succeeded at 272 (offset 2 lines). >> >> Hunk #4 succeeded at 315 with fuzz 2. >> >> Hunk #5 FAILED at 466. >> >> Hunk #6 FAILED at 961. >> >> 2 out of 6 hunks FAILED -- saving rejects to file >> rtpp_command.c.rej >> >> patching file rtpp_notify.c >> >> Hunk #1 FAILED at 38. >> >> Hunk #2 succeeded at 263 (offset 78 lines). >> >> misordered hunks! output would be garbled >> >> Hunk #4 FAILED at 250. >> >> Hunk #5 FAILED at 337. >> >> 3 out of 5 hunks FAILED -- saving rejects to file >> rtpp_notify.c.rej >> >> patching file rtpp_notify.h >> >> Hunk #1 succeeded at 39 with fuzz 2 (offset 8 lines). >> >> patching file rtpp_session.c >> >> patching file rtpp_session.h >> >> >> >> As you see, not so clean but the files were patched. >> >> >> >> On CentOS 5, I can’t find the LIBXMLRPC through YUM/RPM, so I >> compiled xmlrpc-c-1.06.41.tgz by hand: >> >> >> >> ./configure –prefix=/usr && make && make install >> >> AND ./configure && make && make install >> >> With that, the headers are both on /usr/lib/include and >> /usr/local/lib/include (I did that just to be sure that the config >> wasn’t looking at the wrong place). >> >> >> >> xmlrpc_abyss.h >> >> xmlrpc_cgi.h >> >> XmlRpcCpp.h >> >> xmlrpc_server.h >> >> xmlrpc_client.h >> >> xmlrpc.h >> >> xmlrpc_server_w32httpsys.h >> >> >> >> The configure script from patched RTPPROXY doesn’t _try_ to find >> the LIBXMLRPC (there’s no reference in config.log) and therefore >> my rtpproxy doesn’t have the support for the timeout notification. >> >> >> >> Any comment on what could be wrong? >> >> >> >> Alexandre > > > > -- > Carsten Bock > Schomburgstr. 80 > 22767 Hamburg > Germany > > Mobile +49 179 2021244 > Home +49 40 34927217 > Büro (Verl) +49 5246 801427 > Fax +49 40 34927218 > mailto:carsten@bock.info > >
-- Carsten Bock Schomburgstr. 80 22767 Hamburg Germany
Mobile +49 179 2021244 Home +49 40 34927217 Büro (Verl) +49 5246 801427 Fax +49 40 34927218 mailto:carsten@bock.info
-- Carsten Bock Schomburgstr. 80 22767 Hamburg Germany
Mobile +49 179 2021244 Home +49 40 34927217 Büro (Verl) +49 5246 801427 Fax +49 40 34927218 mailto:carsten@bock.info
-- Carsten Bock http://www.ng-voice.com mailto:carsten@ng-voice.com
-- Carsten Bock http://www.ng-voice.com mailto:carsten@ng-voice.com
-- Carsten Bock http://www.ng-voice.com mailto:carsten@ng-voice.com
-- Carsten Bock http://www.ng-voice.com mailto:carsten@ng-voice.com
Hi Carsten,
Even with your RTPPROXY tarball I was unable to get this working. Session remains after RTPPROXY timeout. I am using KAMAILIO 3.1 branch from GIT and as I told you, I moved the rtpproxy/ from GIT-MASTER to the Kamailio branch (waiting your backport). Is there anything else regarding this feature that should also should be moved (beyond rtpproxy/)?
Thanks, Alexandre
-----Mensagem original----- De: kaiserbock2@googlemail.com [mailto:kaiserbock2@googlemail.com] Em nome de Carsten Bock Enviada em: quarta-feira, 16 de março de 2011 10:51 Para: Alexandre Abreu Cc: sr-users@lists.sip-router.org Assunto: Re: RTPPROXY timeout patch.
Hi,
sorry, forgot to attach.
Carsten
2011/3/16 Alexandre Abreu alexandre.abreu@redt.com.br:
Hi Carsten,
I just tested again changing the port 8000 to point to another port. Still does not work. I am waiting your RTPPROXY tarball to test again.
Thanks, Alexandre.
-----Mensagem original----- De: kaiserbock2@googlemail.com [mailto:kaiserbock2@googlemail.com] Em nome de Carsten Bock Enviada em: quarta-feira, 16 de março de 2011 09:54 Para: Alexandre Abreu Cc: sr-users@lists.sip-router.org Assunto: Re: RTPPROXY timeout patch.
Hi Alexandre,
i don't have a clue, what is going wrong there. The timeout socket, you provide, must not necessarily point to the Kamailio-XML-RPC-Port, in my test-cases it just pointed anywhere... (i hope it does not mess up the XML-RPC Process of Kamailio if you connect there and do nothing). I am a little short in time at the moment, so i have just tar'ed the local RTP-Proxy i used for the development, so maybe you can test it, If it works with my version of RTP-Proxy, i will have to check why....
Carsten
2011/3/16 Alexandre Abreu alexandre.abreu@redt.com.br:
Hello Carsten,
If you use "-n tcp:127.0.0.1" without port you get:
[root@devel ~]# rtpproxy -T 10 -F -i -l 192.168.200.90 -s udp:127.0.0.1
7722
-n tcp:127.0.0.1 -d DBUG rtpproxy: can't parse host:port in TCP address rtpproxy: can't start notification thread
As I wrote in my previous mail, I am using "-n tcp:192.168.200.90:8000" which points to the address that XMLRPC server is listening to.
tcp 0 0 0.0.0.0:8000 0.0.0.0:* LISTEN 3661/kamailio
What I am missing here?
Thanks, Alexandre.
-----Mensagem original----- De: kaiserbock2@googlemail.com [mailto:kaiserbock2@googlemail.com] Em nome de Carsten Bock Enviada em: quarta-feira, 16 de março de 2011 09:00 Para: Alexandre Abreu Cc: sr-users@lists.sip-router.org Assunto: Re: RTPPROXY timeout patch.
Hi,
Sorry for confusion: You will have to define a Timeout socket, when starting RTP-Proxy (-n, may be invalid):
bock@bock-tde:~/ims/sr-rtpp/sip-router/modules/rtpproxy/test$ cat ./exec_rtpproxy.txt ./rtpproxy -T 10 -f -F -i -l 127.0.0.1 -s udp:*:22222 -d DBUG -n tcp:127.0.0.1
Recent Versions of RTP-Proxy start a separate thread to process the timeouts; but only if the timeout socket is defined at startup. Then it should work.
Good luck, Carsten
P.S.: I will add some docs on howto make this work in the next days to GIT-Trunk. 2011/3/15 Alexandre Abreu alexandre.abreu@redt.com.br:
Hello Carsten.
Still no lucky. I just moved the whole rtpproxy/ directory into 3.1
branch
and recompiled and then changed my script to use rtpproxy_offer()/rtpproxy_answer().
Look:
Mar 15 14:04:38 devel rtpproxy[29111]: INFO:handle_command: new session e2361a59b4588d51, tag ed382a18;1 requested, type strong Mar 15 14:04:38 devel rtpproxy[29111]: INFO:handle_command: new session
on
a
port 44206 created, tag ed382a18;1 Mar 15 14:04:38 devel rtpproxy[29111]: INFO:handle_command: pre-filling caller's address with 192.168.200.114:6380 Mar 15 14:04:39 devel kamailio[29544]: NOTICE: acc [acc.c:275]: ACC: transaction answered:
timestamp=1300208679;method=INVITE;from_tag=ed382a18;to_tag=19477c42;c all_id
=e2361a59b4588d51;code=200;reason=OK; Mar 15 14:04:39 devel rtpproxy[29111]: INFO:handle_command: lookup on
ports
44206/41680, session timer restarted Mar 15 14:04:39 devel rtpproxy[29111]: INFO:handle_command: setting
custom
timeout handler (xmlrpc:http://localhost:8000/RPC2) Mar 15 14:04:39 devel rtpproxy[29111]: INFO:handle_command: pre-filling callee's address with 192.168.200.149:9494 Mar 15 14:04:50 devel rtpproxy[29111]: INFO:process_rtp: session timeout Mar 15 14:04:50 devel rtpproxy[29111]: INFO:remove_session: RTP stats:
963
in from callee, 10 in from caller, 973 relayed, 0 dropped Mar 15 14:04:50 devel rtpproxy[29111]: INFO:remove_session: RTCP stats: 5
in
from callee, 1 in from caller, 6 relayed, 0 dropped Mar 15 14:04:50 devel rtpproxy[29111]: INFO:remove_session: session on
ports
44206/41680 is cleaned up
Started with: rtpproxy -T 10 -F -i -l 192.168.200.90 -s udp:127.0.0.1:7722 -n tcp:192.168.200.90:8000 -d DBUG
SIP-ROUTER config: # ----- rtpproxy params ----- modparam("rtpproxy", "rtpproxy_sock", "udp:localhost:7722") modparam("rtpproxy", "rtpproxy_tout", 3) modparam("rtpproxy", "timeout_socket",
"xmlrpc:http://localhost:8000/RPC2")
# The Port for incoming XML-RPC requests modparam("mi_xmlrpc", "port", 8000) modparam("mi_xmlrpc", "reply_option", 1) modparam("mi_xmlrpc", "buffer_size", 8192) modparam("mi_xmlrpc", "log_file", "/tmp/openser_xmlrpc")
The session keeps active after the RTPPROXY proxy timeout. It seems dlg_terminate_dlg isn't being triggered. Am I missing something else
beyond
moving rtpproxy/ directory? As this thread is a user-question, I am copying SR-USERS mail list. I am also using xmlrpc-c-1.06.41.
Thanks, Alexandre.
-----Mensagem original----- De: kaiserbock2@googlemail.com [mailto:kaiserbock2@googlemail.com] Em
nome
de Carsten Bock Enviada em: terça-feira, 15 de março de 2011 05:15 Para: Alexandre Abreu Assunto: Re: RTPPROXY timeout patch.
Hi Alexandre,
sorry, yes, your correct. My changes are not in the 3.1 branch, but only GIT-Master. Only the GIT-Master currently holds the correct patch and config. I will need to backport the changes from the master... (will do so this week).
Carsten
2011/3/14 Alexandre Abreu alexandre.abreu@redt.com.br:
Hello Carsten,
Let me ask you a question:
If "First is important to clarify: from version 3.0.0 on, Kamailio and SER are identical in terms of source code.", then why your changes does not reflect in kamailio 3.1 from GIT? I did see the changes by getting the SIP-ROUTER from GIT. Kamailio 3.1 from GIT does not have your code.
Thanks. Alexandre
-----Mensagem original----- De: kaiserbock2@googlemail.com [mailto:kaiserbock2@googlemail.com] Em nome de Carsten Bock Enviada em: segunda-feira, 14 de março de 2011 05:31 Para: Alexandre Abreu Cc: RTPproxy Development Assunto: Re: RTPPROXY timeout patch.
Hello,
i hope, you had a nice weekend... ;-) Are you sure, you are using the GIT-Version of the Kamailio/sip-router.org config? In the GIT version it is now:
modparam("rtpproxy", "timeout_socket", "xmlrpc:http://localhost:8000/RPC2")
http://git.sip-router.org/cgi-bin/gitweb.cgi?p=sip-router;a=blob;f= mod ules/r tpproxy/test/kamailio.cfg;h=0d5c73ff2065f33f262981fba2c07e65496e741 5;h b=HEAD
This should work (as tested by me).
Carsten
2011/3/11 Alexandre Abreu alexandre.abreu@redt.com.br:
Hello Carsten,
The patch was applied just fine but I can't get that feature working. See below:
[root@devel log]# rtpproxy -v Basic version: 20040107 Extension 20050322: Support for multiple RTP streams and MOH Extension 20060704: Support for extra parameter in the V command Extension 20071116: Support for RTP re-packetization Extension 20071218: Support for forking (copying) RTP stream Extension 20080403: Support for RTP statistics querying Extension 20081102: Support for setting codecs in the update/lookup command Extension 20081224: Support for session timeout notifications Extension 20090810: Support for automatic bridging Extension 20100819: Support for timeout notifications using XML-RPC towards Kamailio/sip-router.org
Using SR 3.1.2, my configuration file was exactly the same as the example in test/ subdirectory you commit to rtpproxy module.
# RTP-Proxy modparam("rtpproxy", "rtpproxy_sock", "udp:localhost:22222") modparam("rtpproxy", "rtpproxy_tout", 3) modparam("rtpproxy", "timeout_socket", "http://localhost:8000/RPC2")
# The Port for incoming XML-RPC requests modparam("mi_xmlrpc", "port", 8000) modparam("mi_xmlrpc", "reply_option", 1) modparam("mi_xmlrpc", "buffer_size", 8192) modparam("mi_xmlrpc", "log_file", "/tmp/openser_xmlrpc")
Still inside test/ subdir we have the following example:
[root@devel test]# cat exec_rtpproxy.txt ./rtpproxy -T 10 -f -F -i -l <your IP> -s udp:*:22222 -d DBUG
You mean that if XML-RPC is used, it has to begin with "xmlrpc:". I can't see this string anywhere in these examples. I guess these files are not up to date. Am I correct? I can see the session timeout in RTPPROXY, but the session does not
close.
If I understand right how this feature works, it should send a "dlg_terminate_dlg + call-id" to send the BYE to both sides.
Any tip on what could be wrong?
Thanks, Alexandre
-----Mensagem original----- De: kaiserbock2@googlemail.com [mailto:kaiserbock2@googlemail.com] Em nome de Carsten Bock Enviada em: quinta-feira, 10 de fevereiro de 2011 20:53 Para: Alexandre Abreu Cc: RTPproxy Development Assunto: Re: RTPPROXY timeout patch.
Hi Alexandre,
i updated the patch in the sip-router-repository (and attached the patch to this email). The new patch and the modifications to the rtpproxy module need some more testing, i have only done basic
functionality testing so far.
I have reduced the patch a little, the socket, if the XML-RPC-Interface is used, has to begin with "xmlrpc:". This way, the protocol of the RTP-Proxy stays intact. If you have spare-time, please test it; otherwise, i will do it asap (but i am travelling a lot next week).
@Maxim: This new version of the patch is much better, than the old
one.
Maybe you can review this one? Thanks!
Carsten
2011/2/10 Carsten Bock lists@bock.info:
Hi Alexandre,
the current GIT-version contains some more modifications regarding timeout sockets. That is the reason why the patch does not work anymore. I will need to review the code and adapt my patch accordingly. I will do so later.
Carsten
2011/2/2 Alexandre Abreu alexandre.abreu@redt.com.br: > Hi Carsten, > > The stable version of RTPProxy is indeed 1.2.1. In this version, > there is no file 'rtpp_notify.c' so I think the patch is > really for git-version. Maybe the original patch was made > regarding to an earlier
git commit.
> > Thanks, > Alexandre > > -----Mensagem original----- > De: kaiserbock2@googlemail.com > [mailto:kaiserbock2@googlemail.com] > Em nome de Carsten Bock Enviada em: quarta-feira, 2 de fevereiro > de > 2011 > 06:02 > Para: Alexandre Abreu > Cc: RTPproxy Development > Assunto: Re: RTPPROXY timeout patch. > > Hi Alexandre, > > the patch was for the stable version of RTP-Proxy (1.2.1?). I > will review the patch for the git-version. > I am a little busy at the moment (business travel), so i can > first do this on friday or next week. > > Kind regards, > Carsten > > P.S.: Please always CC the list. > > 2011/2/1 Alexandre Abreu alexandre.abreu@redt.com.br: >> Hi Carsten, >> >> >> >> I am testing the new RTPProxy timeout feature in Kamailio (GIT
version).
>> >> >> >> Got the rtpproxy from GIT: >> >> git clone >> git://sippy.git.sourceforge.net/gitroot/sippy/rtpproxy >> >> >> >> I applied the patch: >> >> [root@devel rtpproxy]# patch < rtpproxy.patch >> >> patching file Makefile.am >> >> Hunk #1 FAILED at 4. >> >> 1 out of 1 hunk FAILED -- saving rejects to file >> Makefile.am.rej >> >> patching file config.h.in >> >> patching file configure.ac >> >> patching file rtpp_command.c >> >> Hunk #1 succeeded at 54 (offset 2 lines). >> >> Hunk #3 succeeded at 272 (offset 2 lines). >> >> Hunk #4 succeeded at 315 with fuzz 2. >> >> Hunk #5 FAILED at 466. >> >> Hunk #6 FAILED at 961. >> >> 2 out of 6 hunks FAILED -- saving rejects to file >> rtpp_command.c.rej >> >> patching file rtpp_notify.c >> >> Hunk #1 FAILED at 38. >> >> Hunk #2 succeeded at 263 (offset 78 lines). >> >> misordered hunks! output would be garbled >> >> Hunk #4 FAILED at 250. >> >> Hunk #5 FAILED at 337. >> >> 3 out of 5 hunks FAILED -- saving rejects to file >> rtpp_notify.c.rej >> >> patching file rtpp_notify.h >> >> Hunk #1 succeeded at 39 with fuzz 2 (offset 8 lines). >> >> patching file rtpp_session.c >> >> patching file rtpp_session.h >> >> >> >> As you see, not so clean but the files were patched. >> >> >> >> On CentOS 5, I cant find the LIBXMLRPC through YUM/RPM, so I >> compiled xmlrpc-c-1.06.41.tgz by hand: >> >> >> >> ./configure prefix=/usr && make && make install >> >> AND ./configure && make && make install >> >> With that, the headers are both on /usr/lib/include and >> /usr/local/lib/include (I did that just to be sure that the >> config wasnt looking at the wrong place). >> >> >> >> xmlrpc_abyss.h >> >> xmlrpc_cgi.h >> >> XmlRpcCpp.h >> >> xmlrpc_server.h >> >> xmlrpc_client.h >> >> xmlrpc.h >> >> xmlrpc_server_w32httpsys.h >> >> >> >> The configure script from patched RTPPROXY doesnt _try_ to >> find the LIBXMLRPC (theres no reference in config.log) and >> therefore my rtpproxy doesnt have the support for the timeout
notification.
>> >> >> >> Any comment on what could be wrong? >> >> >> >> Alexandre > > > > -- > Carsten Bock > Schomburgstr. 80 > 22767 Hamburg > Germany > > Mobile +49 179 2021244 > Home +49 40 34927217 > Büro (Verl) +49 5246 801427 > Fax +49 40 34927218 > mailto:carsten@bock.info > >
-- Carsten Bock Schomburgstr. 80 22767 Hamburg Germany
Mobile +49 179 2021244 Home +49 40 34927217 Büro (Verl) +49 5246 801427 Fax +49 40 34927218 mailto:carsten@bock.info
-- Carsten Bock Schomburgstr. 80 22767 Hamburg Germany
Mobile +49 179 2021244 Home +49 40 34927217 Büro (Verl) +49 5246 801427 Fax +49 40 34927218 mailto:carsten@bock.info
-- Carsten Bock http://www.ng-voice.com mailto:carsten@ng-voice.com
-- Carsten Bock http://www.ng-voice.com mailto:carsten@ng-voice.com
-- Carsten Bock http://www.ng-voice.com mailto:carsten@ng-voice.com
-- Carsten Bock http://www.ng-voice.com mailto:carsten@ng-voice.com
-- Carsten Bock http://www.ng-voice.com mailto:carsten@ng-voice.com
Hi Alexandre,
That is strange:
I run the RTP-Proxy like this (directly from the TAR-File, i sent you) and Kamailio with attached config-file.
bock@bock-tde:~/ims/rtpproxy$ sudo ./rtpproxy -T 10 -f -F -i -l 127.0.0.1 -s udp:*:22222 -d DBUG -n tcp:127.0.0.1 rtpproxy: Timer started. INFO:main: rtpproxy started, pid 4203 [... Kamailio connects to RTP-Proxy...] DBUG:handle_command: received command "4259_8 UAc98,97,99,104,3,0,8,9,96 56f0f83a-5373-46a1-b6f6-9ce2f93e68d5 195.71.4.203 4008 5371f039-40d0-4944-aae7-6f75071a2f8c;1" INFO:handle_command: new session 56f0f83a-5373-46a1-b6f6-9ce2f93e68d5, tag 5371f039-40d0-4944-aae7-6f75071a2f8c;1 requested, type strong INFO:handle_command: new session on a port 45508 created, tag 5371f039-40d0-4944-aae7-6f75071a2f8c;1 INFO:handle_command: pre-filling caller's address with 195.71.4.203:4008 DBUG:doreply: sending reply "4259_8 45508 127.0.0.1 " DBUG:handle_command: received command "4259_9 LAc98,96 56f0f83a-5373-46a1-b6f6-9ce2f93e68d5 195.71.4.203 4000 5371f039-40d0-4944-aae7-6f75071a2f8c;1 9915df0c-30fc-49c5-aa8a-c86b4242c094;1 xmlrpc:http://localhost:8000/RPC2" INFO:handle_command: lookup on ports 45508/45238, session timer restarted INFO:handle_command: setting custom timeout handler (xmlrpc:http://localhost:8000/RPC2) INFO:handle_command: pre-filling callee's address with 195.71.4.203:4000 DBUG:doreply: sending reply "4259_9 45238 127.0.0.1 " INFO:process_rtp: session timeout ERR:rtpp_notify_schedule: XMLRPC xmlrpc:http://localhost:8000/RPC2 INFO:remove_session: RTP stats: 0 in from callee, 0 in from caller, 0 relayed, 0 dropped INFO:remove_session: RTCP stats: 0 in from callee, 0 in from caller, 0 relayed, 0 dropped INFO:remove_session: session on ports 45508/45238 is cleaned up ERR:do_timeout_notification: Timeout socket: xmlrpc:http://localhost:8000/RPC2
And it works for me:
U 2011/03/16 16:50:14.350721 127.0.0.1:5060 -> 127.0.0.1:15061 BYE sip:2@127.0.0.1:15061;ob SIP/2.0. Via: SIP/2.0/UDP 127.0.0.1;branch=z9hG4bK06e9.245e2dd7.0. To: sip:2@localhost;tag=5371f039-40d0-4944-aae7-6f75071a2f8c. From: sip:1@localhost;tag=9915df0c-30fc-49c5-aa8a-c86b4242c094. CSeq: 7905 BYE. Call-ID: 56f0f83a-5373-46a1-b6f6-9ce2f93e68d5. Content-Length: 0. User-Agent: kamailio (3.2.0-dev2 (x86_64/linux)). Max-Forwards: 70. .
U 2011/03/16 16:50:14.350801 127.0.0.1:5060 -> 127.0.0.1:15060 BYE sip:1@127.0.0.1:15060;transport=UDP;ob SIP/2.0. Via: SIP/2.0/UDP 127.0.0.1;branch=z9hG4bK06e9.345e2dd7.0. To: sip:1@localhost;tag=9915df0c-30fc-49c5-aa8a-c86b4242c094. From: sip:2@localhost;tag=5371f039-40d0-4944-aae7-6f75071a2f8c. CSeq: 7905 BYE. Call-ID: 56f0f83a-5373-46a1-b6f6-9ce2f93e68d5. Content-Length: 0. User-Agent: kamailio (3.2.0-dev2 (x86_64/linux)). Max-Forwards: 70. . [...]
Maybe, you can add some more debug-info from RTP-Proxy... And can you verify, that the RTP-Proxy is not trying to send the request?
Kind regards, Carsten
2011/3/16 Alexandre Abreu alexandre.abreu@redt.com.br:
Hi Carsten,
Even with your RTPPROXY tarball I was unable to get this working. Session remains after RTPPROXY timeout. I am using KAMAILIO 3.1 branch from GIT and as I told you, I moved the rtpproxy/ from GIT-MASTER to the Kamailio branch (waiting your backport). Is there anything else regarding this feature that should also should be moved (beyond rtpproxy/)?
Thanks, Alexandre
Carsten,
Indeed. Very strange.
Are we running the same RTPPROXY version? How can you start using '-n tcp:127.0.0.1' without specifying a port?
[root@devel rtpproxy-carsten]# ./rtpproxy -T 10 -f -F -i -l 192.168.200.90 -s udp:*:7722 -d DBUG ERR INFO -n tcp:127.0.0.1 rtpproxy: can't parse host:port in TCP address rtpproxy: can't start notification thread
[root@devel rtpproxy-carsten]# ./rtpproxy -T 10 -f -F -i -l 192.168.200.90 -s udp:*:7722 -d DBUG ERR INFO -n tcp:127.0.0.1:7723 INFO:main: rtpproxy started, pid 21169
DBUG:handle_command: received command "17828_9 Uc0,8,101 4b10ce04de4f8818 192.168.200.114 6380 9c4b6265;1" INFO:handle_command: new session 4b10ce04de4f8818, tag 9c4b6265;1 requested, type strong INFO:handle_command: new session on a port 43750 created, tag 9c4b6265;1 INFO:handle_command: pre-filling caller's address with 192.168.200.114:6380 DBUG:doreply: sending reply "17828_9 43750 192.168.200.90 " DBUG:handle_command: received command "17847_9 Lc0,8,101 4b10ce04de4f8818 192.168.200.149 7386 9c4b6265;1 dd69ab1d;1 xmlrpc:http://localhost:8000/RPC2" INFO:handle_command: lookup on ports 43750/55796, session timer restarted INFO:handle_command: setting custom timeout handler (xmlrpc:http://localhost:8000/RPC2) INFO:handle_command: pre-filling callee's address with 192.168.200.149:7386 DBUG:doreply: sending reply "17847_9 55796 192.168.200.90 " INFO:process_rtp: session timeout INFO:remove_session: RTP stats: 548 in from callee, 5 in from caller, 553 relayed, 0 dropped INFO:remove_session: RTCP stats: 3 in from callee, 1 in from caller, 4 relayed, 0 dropped INFO:remove_session: session on ports 43750/55796 is cleaned up DBUG:reconnect_timeout_handler: reconnecting timeout socket ERR:reconnect_timeout_handler: can't create timeout socket: Address family not supported by protocol ERR:do_timeout_notification: unable to send timeout notification
Above the error message.
[root@devel ~]# md5sum rtpproxy-carsten.tar.gz c02b1e2ac57d39562e86bcfc4ee592b8 rtpproxy-carsten.tar.gz
Thanks, Alexandre.
-----Mensagem original----- De: kaiserbock2@googlemail.com [mailto:kaiserbock2@googlemail.com] Em nome de Carsten Bock Enviada em: quarta-feira, 16 de março de 2011 13:03 Para: Alexandre Abreu Cc: sr-users@lists.sip-router.org Assunto: Re: RTPPROXY timeout patch.
Hi Alexandre,
That is strange:
I run the RTP-Proxy like this (directly from the TAR-File, i sent you) and Kamailio with attached config-file.
bock@bock-tde:~/ims/rtpproxy$ sudo ./rtpproxy -T 10 -f -F -i -l 127.0.0.1 -s udp:*:22222 -d DBUG -n tcp:127.0.0.1 rtpproxy: Timer started. INFO:main: rtpproxy started, pid 4203 [... Kamailio connects to RTP-Proxy...] DBUG:handle_command: received command "4259_8 UAc98,97,99,104,3,0,8,9,96 56f0f83a-5373-46a1-b6f6-9ce2f93e68d5 195.71.4.203 4008 5371f039-40d0-4944-aae7-6f75071a2f8c;1" INFO:handle_command: new session 56f0f83a-5373-46a1-b6f6-9ce2f93e68d5, tag 5371f039-40d0-4944-aae7-6f75071a2f8c;1 requested, type strong INFO:handle_command: new session on a port 45508 created, tag 5371f039-40d0-4944-aae7-6f75071a2f8c;1 INFO:handle_command: pre-filling caller's address with 195.71.4.203:4008 DBUG:doreply: sending reply "4259_8 45508 127.0.0.1 " DBUG:handle_command: received command "4259_9 LAc98,96 56f0f83a-5373-46a1-b6f6-9ce2f93e68d5 195.71.4.203 4000 5371f039-40d0-4944-aae7-6f75071a2f8c;1 9915df0c-30fc-49c5-aa8a-c86b4242c094;1 xmlrpc:http://localhost:8000/RPC2" INFO:handle_command: lookup on ports 45508/45238, session timer restarted INFO:handle_command: setting custom timeout handler (xmlrpc:http://localhost:8000/RPC2) INFO:handle_command: pre-filling callee's address with 195.71.4.203:4000 DBUG:doreply: sending reply "4259_9 45238 127.0.0.1 " INFO:process_rtp: session timeout ERR:rtpp_notify_schedule: XMLRPC xmlrpc:http://localhost:8000/RPC2 INFO:remove_session: RTP stats: 0 in from callee, 0 in from caller, 0 relayed, 0 dropped INFO:remove_session: RTCP stats: 0 in from callee, 0 in from caller, 0 relayed, 0 dropped INFO:remove_session: session on ports 45508/45238 is cleaned up ERR:do_timeout_notification: Timeout socket: xmlrpc:http://localhost:8000/RPC2
And it works for me:
U 2011/03/16 16:50:14.350721 127.0.0.1:5060 -> 127.0.0.1:15061 BYE sip:2@127.0.0.1:15061;ob SIP/2.0. Via: SIP/2.0/UDP 127.0.0.1;branch=z9hG4bK06e9.245e2dd7.0. To: sip:2@localhost;tag=5371f039-40d0-4944-aae7-6f75071a2f8c. From: sip:1@localhost;tag=9915df0c-30fc-49c5-aa8a-c86b4242c094. CSeq: 7905 BYE. Call-ID: 56f0f83a-5373-46a1-b6f6-9ce2f93e68d5. Content-Length: 0. User-Agent: kamailio (3.2.0-dev2 (x86_64/linux)). Max-Forwards: 70. .
U 2011/03/16 16:50:14.350801 127.0.0.1:5060 -> 127.0.0.1:15060 BYE sip:1@127.0.0.1:15060;transport=UDP;ob SIP/2.0. Via: SIP/2.0/UDP 127.0.0.1;branch=z9hG4bK06e9.345e2dd7.0. To: sip:1@localhost;tag=9915df0c-30fc-49c5-aa8a-c86b4242c094. From: sip:2@localhost;tag=5371f039-40d0-4944-aae7-6f75071a2f8c. CSeq: 7905 BYE. Call-ID: 56f0f83a-5373-46a1-b6f6-9ce2f93e68d5. Content-Length: 0. User-Agent: kamailio (3.2.0-dev2 (x86_64/linux)). Max-Forwards: 70. . [...]
Maybe, you can add some more debug-info from RTP-Proxy... And can you verify, that the RTP-Proxy is not trying to send the request?
Kind regards, Carsten
2011/3/16 Alexandre Abreu alexandre.abreu@redt.com.br:
Hi Carsten,
Even with your RTPPROXY tarball I was unable to get this working. Session remains after RTPPROXY timeout. I am using KAMAILIO 3.1 branch from GIT and as I told you, I moved the rtpproxy/ from GIT-MASTER to the Kamailio branch (waiting your backport).
Is
there anything else regarding this feature that should also should be
moved
(beyond rtpproxy/)?
Thanks, Alexandre
Hi Alexandre,
My version of RTP-Proxy is following:
bock@bock-tde:~/ims/rtpproxy$ ./rtpproxy -v Basic version: 20040107 Extension 20050322: Support for multiple RTP streams and MOH Extension 20060704: Support for extra parameter in the V command Extension 20071116: Support for RTP re-packetization Extension 20071218: Support for forking (copying) RTP stream Extension 20080403: Support for RTP statistics querying Extension 20081102: Support for setting codecs in the update/lookup command Extension 20081224: Support for session timeout notifications Extension 20090810: Support for automatic bridging Extension 20100819: Support for timeout notifications using XML-RPC towards Kamailio/sip-router.org
Please find attached a modified rtpp_notify.c file. I have just added some tiny debug output in order to see some points. Now you should see the following Debug-Outputs:
rtpproxy: >>> Running Timeout-Process
Then the notifier process is running. That would be good. If not, that's the reason why it is not working. When the request comes in, you should see the following:
INFO:handle_command: setting custom timeout handler (xmlrpc:http://localhost:8000/RPC2)
Then the Timeout-Socket was properly set, that would be good as well. Now the timeout:
INFO:process_rtp: session timeout [...] ERR:do_timeout_notification: Timeout socket is: xmlrpc:http://localhost:8000/RPC2
That would be great, because then the Timeout towards the Kamailio should be triggerd. If these parts are ok, then there must be some issue either in the XML-RPC client library or in the communication between the RTP-Proxy and Kamailio. I hope you did a trace on the XML-RPC Port both on the RTPproxy and on the Kamailio? What distro are you using? My tests were only on Ubuntu and Debian, which are quite similar.
Hope we find this issue,
Kind regards, Carsten
P.S.: I think i removed that check for the port for testing, that's why my version accepted the socket without port... (now i'm using "-n tcp:127.0.0.1:9999")
2011/3/16 Alexandre Abreu alexandre.abreu@redt.com.br:
Carsten,
Indeed. Very strange.
Are we running the same RTPPROXY version? How can you start using '-n tcp:127.0.0.1' without specifying a port?
[root@devel rtpproxy-carsten]# ./rtpproxy -T 10 -f -F -i -l 192.168.200.90 -s udp:*:7722 -d DBUG ERR INFO -n tcp:127.0.0.1 rtpproxy: can't parse host:port in TCP address rtpproxy: can't start notification thread
[root@devel rtpproxy-carsten]# ./rtpproxy -T 10 -f -F -i -l 192.168.200.90 -s udp:*:7722 -d DBUG ERR INFO -n tcp:127.0.0.1:7723 INFO:main: rtpproxy started, pid 21169
DBUG:handle_command: received command "17828_9 Uc0,8,101 4b10ce04de4f8818 192.168.200.114 6380 9c4b6265;1" INFO:handle_command: new session 4b10ce04de4f8818, tag 9c4b6265;1 requested, type strong INFO:handle_command: new session on a port 43750 created, tag 9c4b6265;1 INFO:handle_command: pre-filling caller's address with 192.168.200.114:6380 DBUG:doreply: sending reply "17828_9 43750 192.168.200.90 " DBUG:handle_command: received command "17847_9 Lc0,8,101 4b10ce04de4f8818 192.168.200.149 7386 9c4b6265;1 dd69ab1d;1 xmlrpc:http://localhost:8000/RPC2" INFO:handle_command: lookup on ports 43750/55796, session timer restarted INFO:handle_command: setting custom timeout handler (xmlrpc:http://localhost:8000/RPC2) INFO:handle_command: pre-filling callee's address with 192.168.200.149:7386 DBUG:doreply: sending reply "17847_9 55796 192.168.200.90 " INFO:process_rtp: session timeout INFO:remove_session: RTP stats: 548 in from callee, 5 in from caller, 553 relayed, 0 dropped INFO:remove_session: RTCP stats: 3 in from callee, 1 in from caller, 4 relayed, 0 dropped INFO:remove_session: session on ports 43750/55796 is cleaned up DBUG:reconnect_timeout_handler: reconnecting timeout socket ERR:reconnect_timeout_handler: can't create timeout socket: Address family not supported by protocol ERR:do_timeout_notification: unable to send timeout notification
Above the error message.
[root@devel ~]# md5sum rtpproxy-carsten.tar.gz c02b1e2ac57d39562e86bcfc4ee592b8 rtpproxy-carsten.tar.gz
Thanks, Alexandre.
-----Mensagem original----- De: kaiserbock2@googlemail.com [mailto:kaiserbock2@googlemail.com] Em nome de Carsten Bock Enviada em: quarta-feira, 16 de março de 2011 13:03 Para: Alexandre Abreu Cc: sr-users@lists.sip-router.org Assunto: Re: RTPPROXY timeout patch.
Hi Alexandre,
That is strange:
I run the RTP-Proxy like this (directly from the TAR-File, i sent you) and Kamailio with attached config-file.
bock@bock-tde:~/ims/rtpproxy$ sudo ./rtpproxy -T 10 -f -F -i -l 127.0.0.1 -s udp:*:22222 -d DBUG -n tcp:127.0.0.1 rtpproxy: Timer started. INFO:main: rtpproxy started, pid 4203 [... Kamailio connects to RTP-Proxy...] DBUG:handle_command: received command "4259_8 UAc98,97,99,104,3,0,8,9,96 56f0f83a-5373-46a1-b6f6-9ce2f93e68d5 195.71.4.203 4008 5371f039-40d0-4944-aae7-6f75071a2f8c;1" INFO:handle_command: new session 56f0f83a-5373-46a1-b6f6-9ce2f93e68d5, tag 5371f039-40d0-4944-aae7-6f75071a2f8c;1 requested, type strong INFO:handle_command: new session on a port 45508 created, tag 5371f039-40d0-4944-aae7-6f75071a2f8c;1 INFO:handle_command: pre-filling caller's address with 195.71.4.203:4008 DBUG:doreply: sending reply "4259_8 45508 127.0.0.1 " DBUG:handle_command: received command "4259_9 LAc98,96 56f0f83a-5373-46a1-b6f6-9ce2f93e68d5 195.71.4.203 4000 5371f039-40d0-4944-aae7-6f75071a2f8c;1 9915df0c-30fc-49c5-aa8a-c86b4242c094;1 xmlrpc:http://localhost:8000/RPC2" INFO:handle_command: lookup on ports 45508/45238, session timer restarted INFO:handle_command: setting custom timeout handler (xmlrpc:http://localhost:8000/RPC2) INFO:handle_command: pre-filling callee's address with 195.71.4.203:4000 DBUG:doreply: sending reply "4259_9 45238 127.0.0.1 " INFO:process_rtp: session timeout ERR:rtpp_notify_schedule: XMLRPC xmlrpc:http://localhost:8000/RPC2 INFO:remove_session: RTP stats: 0 in from callee, 0 in from caller, 0 relayed, 0 dropped INFO:remove_session: RTCP stats: 0 in from callee, 0 in from caller, 0 relayed, 0 dropped INFO:remove_session: session on ports 45508/45238 is cleaned up ERR:do_timeout_notification: Timeout socket: xmlrpc:http://localhost:8000/RPC2
And it works for me:
U 2011/03/16 16:50:14.350721 127.0.0.1:5060 -> 127.0.0.1:15061 BYE sip:2@127.0.0.1:15061;ob SIP/2.0. Via: SIP/2.0/UDP 127.0.0.1;branch=z9hG4bK06e9.245e2dd7.0. To: sip:2@localhost;tag=5371f039-40d0-4944-aae7-6f75071a2f8c. From: sip:1@localhost;tag=9915df0c-30fc-49c5-aa8a-c86b4242c094. CSeq: 7905 BYE. Call-ID: 56f0f83a-5373-46a1-b6f6-9ce2f93e68d5. Content-Length: 0. User-Agent: kamailio (3.2.0-dev2 (x86_64/linux)). Max-Forwards: 70. .
U 2011/03/16 16:50:14.350801 127.0.0.1:5060 -> 127.0.0.1:15060 BYE sip:1@127.0.0.1:15060;transport=UDP;ob SIP/2.0. Via: SIP/2.0/UDP 127.0.0.1;branch=z9hG4bK06e9.345e2dd7.0. To: sip:1@localhost;tag=9915df0c-30fc-49c5-aa8a-c86b4242c094. From: sip:2@localhost;tag=5371f039-40d0-4944-aae7-6f75071a2f8c. CSeq: 7905 BYE. Call-ID: 56f0f83a-5373-46a1-b6f6-9ce2f93e68d5. Content-Length: 0. User-Agent: kamailio (3.2.0-dev2 (x86_64/linux)). Max-Forwards: 70. . [...]
Maybe, you can add some more debug-info from RTP-Proxy... And can you verify, that the RTP-Proxy is not trying to send the request?
Kind regards, Carsten
2011/3/16 Alexandre Abreu alexandre.abreu@redt.com.br:
Hi Carsten,
Even with your RTPPROXY tarball I was unable to get this working. Session remains after RTPPROXY timeout. I am using KAMAILIO 3.1 branch from GIT and as I told you, I moved the rtpproxy/ from GIT-MASTER to the Kamailio branch (waiting your backport).
Is
there anything else regarding this feature that should also should be
moved
(beyond rtpproxy/)?
Thanks, Alexandre
-- Carsten Bock http://www.ng-voice.com mailto:carsten@ng-voice.com
Carsten,
Here it goes:
[root@devel rtpproxy-carsten]# ./rtpproxy -T 10 -f -F -i -l 192.168.200.90 -s udp:*:7722 -d DBUG ERR INFO -n tcp:127.0.0.1:7723 INFO:main: rtpproxy started, pid 22495 rtpproxy: >>> Running Timeout-Process
DBUG:handle_command: received command "22428_8 Uc0,8,101 080b5d23d1603667 192.168.200.114 6380 0073852a;1" INFO:handle_command: new session 080b5d23d1603667, tag 0073852a;1 requested, type strong INFO:handle_command: new session on a port 48662 created, tag 0073852a;1 INFO:handle_command: pre-filling caller's address with 192.168.200.114:6380 DBUG:doreply: sending reply "22428_8 48662 192.168.200.90" DBUG:handle_command: received command "22436_8 Lc0,8,101 080b5d23d1603667 192.168.200.149 7614 0073852a;1 c758967a;1 xmlrpc:http://127.0.0.1:8000/RPC2" INFO:handle_command: lookup on ports 48662/58604, session timer restarted INFO:handle_command: setting custom timeout handler (xmlrpc:http://127.0.0.1:8000/RPC2) INFO:handle_command: pre-filling callee's address with 192.168.200.149:7614 DBUG:doreply: sending reply "22436_8 58604 192.168.200.90" INFO:process_rtp: session timeout INFO:remove_session: RTP stats: 982 in from callee, 4 in from caller, 986 relayed, 0 dropped INFO:remove_session: RTCP stats: 5 in from callee, 1 in from caller, 6 relayed, 0 dropped INFO:remove_session: session on ports 48662/58604 is cleaned up ERR:do_timeout_notification: Timeout socket is: èîÈÄÐÊ@ÍÈÄÈÄ`ê DBUG:reconnect_timeout_handler: reconnecting timeout socket ERR:reconnect_timeout_handler: can't create timeout socket: Address family not supported by protocol ERR:do_timeout_notification: unable to send timeout notification
Very weird chars in the debug of what Timeout socket is...
But the custom timeout handler are being printed correctly from the config file. INFO:handle_command: setting custom timeout handler (xmlrpc:http://127.0.0.1:8000/RPC2) Here I am running CentOS 5.2 32-bit.
Thanks, Alexandre
-----Mensagem original----- De: kaiserbock2@googlemail.com [mailto:kaiserbock2@googlemail.com] Em nome de Carsten Bock Enviada em: quarta-feira, 16 de março de 2011 14:18 Para: Alexandre Abreu Cc: sr-users@lists.sip-router.org Assunto: Re: RTPPROXY timeout patch.
Hi Alexandre,
My version of RTP-Proxy is following:
bock@bock-tde:~/ims/rtpproxy$ ./rtpproxy -v Basic version: 20040107 Extension 20050322: Support for multiple RTP streams and MOH Extension 20060704: Support for extra parameter in the V command Extension 20071116: Support for RTP re-packetization Extension 20071218: Support for forking (copying) RTP stream Extension 20080403: Support for RTP statistics querying Extension 20081102: Support for setting codecs in the update/lookup command Extension 20081224: Support for session timeout notifications Extension 20090810: Support for automatic bridging Extension 20100819: Support for timeout notifications using XML-RPC towards Kamailio/sip-router.org
Please find attached a modified rtpp_notify.c file. I have just added some tiny debug output in order to see some points. Now you should see the following Debug-Outputs:
rtpproxy: >>> Running Timeout-Process
Then the notifier process is running. That would be good. If not, that's the reason why it is not working. When the request comes in, you should see the following:
INFO:handle_command: setting custom timeout handler (xmlrpc:http://localhost:8000/RPC2)
Then the Timeout-Socket was properly set, that would be good as well. Now the timeout:
INFO:process_rtp: session timeout [...] ERR:do_timeout_notification: Timeout socket is: xmlrpc:http://localhost:8000/RPC2
That would be great, because then the Timeout towards the Kamailio should be triggerd. If these parts are ok, then there must be some issue either in the XML-RPC client library or in the communication between the RTP-Proxy and Kamailio. I hope you did a trace on the XML-RPC Port both on the RTPproxy and on the Kamailio? What distro are you using? My tests were only on Ubuntu and Debian, which are quite similar.
Hope we find this issue,
Kind regards, Carsten
P.S.: I think i removed that check for the port for testing, that's why my version accepted the socket without port... (now i'm using "-n tcp:127.0.0.1:9999")
2011/3/16 Alexandre Abreu alexandre.abreu@redt.com.br:
Carsten,
Indeed. Very strange.
Are we running the same RTPPROXY version? How can you start using '-n tcp:127.0.0.1' without specifying a port?
[root@devel rtpproxy-carsten]# ./rtpproxy -T 10 -f -F -i -l 192.168.200.90 -s udp:*:7722 -d DBUG ERR INFO -n tcp:127.0.0.1 rtpproxy: can't parse host:port in TCP address rtpproxy: can't start notification thread
[root@devel rtpproxy-carsten]# ./rtpproxy -T 10 -f -F -i -l 192.168.200.90 -s udp:*:7722 -d DBUG ERR INFO -n tcp:127.0.0.1:7723 INFO:main: rtpproxy started, pid 21169
DBUG:handle_command: received command "17828_9 Uc0,8,101 4b10ce04de4f8818 192.168.200.114 6380 9c4b6265;1" INFO:handle_command: new session 4b10ce04de4f8818, tag 9c4b6265;1
requested,
type strong INFO:handle_command: new session on a port 43750 created, tag 9c4b6265;1 INFO:handle_command: pre-filling caller's address with
192.168.200.114:6380
DBUG:doreply: sending reply "17828_9 43750 192.168.200.90 " DBUG:handle_command: received command "17847_9 Lc0,8,101 4b10ce04de4f8818 192.168.200.149 7386 9c4b6265;1 dd69ab1d;1 xmlrpc:http://localhost:8000/RPC2" INFO:handle_command: lookup on ports 43750/55796, session timer restarted INFO:handle_command: setting custom timeout handler (xmlrpc:http://localhost:8000/RPC2) INFO:handle_command: pre-filling callee's address with
192.168.200.149:7386
DBUG:doreply: sending reply "17847_9 55796 192.168.200.90 " INFO:process_rtp: session timeout INFO:remove_session: RTP stats: 548 in from callee, 5 in from caller, 553 relayed, 0 dropped INFO:remove_session: RTCP stats: 3 in from callee, 1 in from caller, 4 relayed, 0 dropped INFO:remove_session: session on ports 43750/55796 is cleaned up DBUG:reconnect_timeout_handler: reconnecting timeout socket ERR:reconnect_timeout_handler: can't create timeout socket: Address family not supported by protocol ERR:do_timeout_notification: unable to send timeout notification
Above the error message.
[root@devel ~]# md5sum rtpproxy-carsten.tar.gz c02b1e2ac57d39562e86bcfc4ee592b8 rtpproxy-carsten.tar.gz
Thanks, Alexandre.
-----Mensagem original----- De: kaiserbock2@googlemail.com [mailto:kaiserbock2@googlemail.com] Em nome de Carsten Bock Enviada em: quarta-feira, 16 de março de 2011 13:03 Para: Alexandre Abreu Cc: sr-users@lists.sip-router.org Assunto: Re: RTPPROXY timeout patch.
Hi Alexandre,
That is strange:
I run the RTP-Proxy like this (directly from the TAR-File, i sent you) and Kamailio with attached config-file.
bock@bock-tde:~/ims/rtpproxy$ sudo ./rtpproxy -T 10 -f -F -i -l 127.0.0.1 -s udp:*:22222 -d DBUG -n tcp:127.0.0.1 rtpproxy: Timer started. INFO:main: rtpproxy started, pid 4203 [... Kamailio connects to RTP-Proxy...] DBUG:handle_command: received command "4259_8 UAc98,97,99,104,3,0,8,9,96 56f0f83a-5373-46a1-b6f6-9ce2f93e68d5 195.71.4.203 4008 5371f039-40d0-4944-aae7-6f75071a2f8c;1" INFO:handle_command: new session 56f0f83a-5373-46a1-b6f6-9ce2f93e68d5, tag 5371f039-40d0-4944-aae7-6f75071a2f8c;1 requested, type strong INFO:handle_command: new session on a port 45508 created, tag 5371f039-40d0-4944-aae7-6f75071a2f8c;1 INFO:handle_command: pre-filling caller's address with 195.71.4.203:4008 DBUG:doreply: sending reply "4259_8 45508 127.0.0.1 " DBUG:handle_command: received command "4259_9 LAc98,96 56f0f83a-5373-46a1-b6f6-9ce2f93e68d5 195.71.4.203 4000 5371f039-40d0-4944-aae7-6f75071a2f8c;1 9915df0c-30fc-49c5-aa8a-c86b4242c094;1 xmlrpc:http://localhost:8000/RPC2" INFO:handle_command: lookup on ports 45508/45238, session timer restarted INFO:handle_command: setting custom timeout handler (xmlrpc:http://localhost:8000/RPC2) INFO:handle_command: pre-filling callee's address with 195.71.4.203:4000 DBUG:doreply: sending reply "4259_9 45238 127.0.0.1 " INFO:process_rtp: session timeout ERR:rtpp_notify_schedule: XMLRPC xmlrpc:http://localhost:8000/RPC2 INFO:remove_session: RTP stats: 0 in from callee, 0 in from caller, 0 relayed, 0 dropped INFO:remove_session: RTCP stats: 0 in from callee, 0 in from caller, 0 relayed, 0 dropped INFO:remove_session: session on ports 45508/45238 is cleaned up ERR:do_timeout_notification: Timeout socket: xmlrpc:http://localhost:8000/RPC2
And it works for me:
U 2011/03/16 16:50:14.350721 127.0.0.1:5060 -> 127.0.0.1:15061 BYE sip:2@127.0.0.1:15061;ob SIP/2.0. Via: SIP/2.0/UDP 127.0.0.1;branch=z9hG4bK06e9.245e2dd7.0. To: sip:2@localhost;tag=5371f039-40d0-4944-aae7-6f75071a2f8c. From: sip:1@localhost;tag=9915df0c-30fc-49c5-aa8a-c86b4242c094. CSeq: 7905 BYE. Call-ID: 56f0f83a-5373-46a1-b6f6-9ce2f93e68d5. Content-Length: 0. User-Agent: kamailio (3.2.0-dev2 (x86_64/linux)). Max-Forwards: 70. .
U 2011/03/16 16:50:14.350801 127.0.0.1:5060 -> 127.0.0.1:15060 BYE sip:1@127.0.0.1:15060;transport=UDP;ob SIP/2.0. Via: SIP/2.0/UDP 127.0.0.1;branch=z9hG4bK06e9.345e2dd7.0. To: sip:1@localhost;tag=9915df0c-30fc-49c5-aa8a-c86b4242c094. From: sip:2@localhost;tag=5371f039-40d0-4944-aae7-6f75071a2f8c. CSeq: 7905 BYE. Call-ID: 56f0f83a-5373-46a1-b6f6-9ce2f93e68d5. Content-Length: 0. User-Agent: kamailio (3.2.0-dev2 (x86_64/linux)). Max-Forwards: 70. . [...]
Maybe, you can add some more debug-info from RTP-Proxy... And can you verify, that the RTP-Proxy is not trying to send the request?
Kind regards, Carsten
2011/3/16 Alexandre Abreu alexandre.abreu@redt.com.br:
Hi Carsten,
Even with your RTPPROXY tarball I was unable to get this working. Session remains after RTPPROXY timeout. I am using KAMAILIO 3.1 branch from GIT and as I told you, I moved the rtpproxy/ from GIT-MASTER to the Kamailio branch (waiting your backport).
Is
there anything else regarding this feature that should also should be
moved
(beyond rtpproxy/)?
Thanks, Alexandre
-- Carsten Bock http://www.ng-voice.com mailto:carsten@ng-voice.com
Hi Alexandre,
that really helped, thanks. I think i've been able to fix this issue. It was based on a piece of memory, which was free'd too early. Please find attached an improved version of the RTPProxy/the patch. I will update the patch in the GIT-Repository shortly.
Kind regards, Carsten
2011/3/16 Alexandre Abreu alexandre.abreu@redt.com.br:
Carsten,
Here it goes:
[root@devel rtpproxy-carsten]# ./rtpproxy -T 10 -f -F -i -l 192.168.200.90 -s udp:*:7722 -d DBUG ERR INFO -n tcp:127.0.0.1:7723 INFO:main: rtpproxy started, pid 22495 rtpproxy: >>> Running Timeout-Process
DBUG:handle_command: received command "22428_8 Uc0,8,101 080b5d23d1603667 192.168.200.114 6380 0073852a;1" INFO:handle_command: new session 080b5d23d1603667, tag 0073852a;1 requested, type strong INFO:handle_command: new session on a port 48662 created, tag 0073852a;1 INFO:handle_command: pre-filling caller's address with 192.168.200.114:6380 DBUG:doreply: sending reply "22428_8 48662 192.168.200.90" DBUG:handle_command: received command "22436_8 Lc0,8,101 080b5d23d1603667 192.168.200.149 7614 0073852a;1 c758967a;1 xmlrpc:http://127.0.0.1:8000/RPC2" INFO:handle_command: lookup on ports 48662/58604, session timer restarted INFO:handle_command: setting custom timeout handler (xmlrpc:http://127.0.0.1:8000/RPC2) INFO:handle_command: pre-filling callee's address with 192.168.200.149:7614 DBUG:doreply: sending reply "22436_8 58604 192.168.200.90" INFO:process_rtp: session timeout INFO:remove_session: RTP stats: 982 in from callee, 4 in from caller, 986 relayed, 0 dropped INFO:remove_session: RTCP stats: 5 in from callee, 1 in from caller, 6 relayed, 0 dropped INFO:remove_session: session on ports 48662/58604 is cleaned up ERR:do_timeout_notification: Timeout socket is: èîÈÄÐÊ@ÍÈÄÈÄ`ê DBUG:reconnect_timeout_handler: reconnecting timeout socket ERR:reconnect_timeout_handler: can't create timeout socket: Address family not supported by protocol ERR:do_timeout_notification: unable to send timeout notification
Very weird chars in the debug of what Timeout socket is...
But the custom timeout handler are being printed correctly from the config file. INFO:handle_command: setting custom timeout handler (xmlrpc:http://127.0.0.1:8000/RPC2) Here I am running CentOS 5.2 32-bit.
Thanks, Alexandre
-----Mensagem original----- De: kaiserbock2@googlemail.com [mailto:kaiserbock2@googlemail.com] Em nome de Carsten Bock Enviada em: quarta-feira, 16 de março de 2011 14:18 Para: Alexandre Abreu Cc: sr-users@lists.sip-router.org Assunto: Re: RTPPROXY timeout patch.
Hi Alexandre,
My version of RTP-Proxy is following:
bock@bock-tde:~/ims/rtpproxy$ ./rtpproxy -v Basic version: 20040107 Extension 20050322: Support for multiple RTP streams and MOH Extension 20060704: Support for extra parameter in the V command Extension 20071116: Support for RTP re-packetization Extension 20071218: Support for forking (copying) RTP stream Extension 20080403: Support for RTP statistics querying Extension 20081102: Support for setting codecs in the update/lookup command Extension 20081224: Support for session timeout notifications Extension 20090810: Support for automatic bridging Extension 20100819: Support for timeout notifications using XML-RPC towards Kamailio/sip-router.org
Please find attached a modified rtpp_notify.c file. I have just added some tiny debug output in order to see some points. Now you should see the following Debug-Outputs:
rtpproxy: >>> Running Timeout-Process
Then the notifier process is running. That would be good. If not, that's the reason why it is not working. When the request comes in, you should see the following:
INFO:handle_command: setting custom timeout handler (xmlrpc:http://localhost:8000/RPC2)
Then the Timeout-Socket was properly set, that would be good as well. Now the timeout:
INFO:process_rtp: session timeout [...] ERR:do_timeout_notification: Timeout socket is: xmlrpc:http://localhost:8000/RPC2
That would be great, because then the Timeout towards the Kamailio should be triggerd. If these parts are ok, then there must be some issue either in the XML-RPC client library or in the communication between the RTP-Proxy and Kamailio. I hope you did a trace on the XML-RPC Port both on the RTPproxy and on the Kamailio? What distro are you using? My tests were only on Ubuntu and Debian, which are quite similar.
Hope we find this issue,
Kind regards, Carsten
P.S.: I think i removed that check for the port for testing, that's why my version accepted the socket without port... (now i'm using "-n tcp:127.0.0.1:9999")
2011/3/16 Alexandre Abreu alexandre.abreu@redt.com.br:
Carsten,
Indeed. Very strange.
Are we running the same RTPPROXY version? How can you start using '-n tcp:127.0.0.1' without specifying a port?
[root@devel rtpproxy-carsten]# ./rtpproxy -T 10 -f -F -i -l 192.168.200.90 -s udp:*:7722 -d DBUG ERR INFO -n tcp:127.0.0.1 rtpproxy: can't parse host:port in TCP address rtpproxy: can't start notification thread
[root@devel rtpproxy-carsten]# ./rtpproxy -T 10 -f -F -i -l 192.168.200.90 -s udp:*:7722 -d DBUG ERR INFO -n tcp:127.0.0.1:7723 INFO:main: rtpproxy started, pid 21169
DBUG:handle_command: received command "17828_9 Uc0,8,101 4b10ce04de4f8818 192.168.200.114 6380 9c4b6265;1" INFO:handle_command: new session 4b10ce04de4f8818, tag 9c4b6265;1
requested,
type strong INFO:handle_command: new session on a port 43750 created, tag 9c4b6265;1 INFO:handle_command: pre-filling caller's address with
192.168.200.114:6380
DBUG:doreply: sending reply "17828_9 43750 192.168.200.90 " DBUG:handle_command: received command "17847_9 Lc0,8,101 4b10ce04de4f8818 192.168.200.149 7386 9c4b6265;1 dd69ab1d;1 xmlrpc:http://localhost:8000/RPC2" INFO:handle_command: lookup on ports 43750/55796, session timer restarted INFO:handle_command: setting custom timeout handler (xmlrpc:http://localhost:8000/RPC2) INFO:handle_command: pre-filling callee's address with
192.168.200.149:7386
DBUG:doreply: sending reply "17847_9 55796 192.168.200.90 " INFO:process_rtp: session timeout INFO:remove_session: RTP stats: 548 in from callee, 5 in from caller, 553 relayed, 0 dropped INFO:remove_session: RTCP stats: 3 in from callee, 1 in from caller, 4 relayed, 0 dropped INFO:remove_session: session on ports 43750/55796 is cleaned up DBUG:reconnect_timeout_handler: reconnecting timeout socket ERR:reconnect_timeout_handler: can't create timeout socket: Address family not supported by protocol ERR:do_timeout_notification: unable to send timeout notification
Above the error message.
[root@devel ~]# md5sum rtpproxy-carsten.tar.gz c02b1e2ac57d39562e86bcfc4ee592b8 rtpproxy-carsten.tar.gz
Thanks, Alexandre.
-----Mensagem original----- De: kaiserbock2@googlemail.com [mailto:kaiserbock2@googlemail.com] Em nome de Carsten Bock Enviada em: quarta-feira, 16 de março de 2011 13:03 Para: Alexandre Abreu Cc: sr-users@lists.sip-router.org Assunto: Re: RTPPROXY timeout patch.
Hi Alexandre,
That is strange:
I run the RTP-Proxy like this (directly from the TAR-File, i sent you) and Kamailio with attached config-file.
bock@bock-tde:~/ims/rtpproxy$ sudo ./rtpproxy -T 10 -f -F -i -l 127.0.0.1 -s udp:*:22222 -d DBUG -n tcp:127.0.0.1 rtpproxy: Timer started. INFO:main: rtpproxy started, pid 4203 [... Kamailio connects to RTP-Proxy...] DBUG:handle_command: received command "4259_8 UAc98,97,99,104,3,0,8,9,96 56f0f83a-5373-46a1-b6f6-9ce2f93e68d5 195.71.4.203 4008 5371f039-40d0-4944-aae7-6f75071a2f8c;1" INFO:handle_command: new session 56f0f83a-5373-46a1-b6f6-9ce2f93e68d5, tag 5371f039-40d0-4944-aae7-6f75071a2f8c;1 requested, type strong INFO:handle_command: new session on a port 45508 created, tag 5371f039-40d0-4944-aae7-6f75071a2f8c;1 INFO:handle_command: pre-filling caller's address with 195.71.4.203:4008 DBUG:doreply: sending reply "4259_8 45508 127.0.0.1 " DBUG:handle_command: received command "4259_9 LAc98,96 56f0f83a-5373-46a1-b6f6-9ce2f93e68d5 195.71.4.203 4000 5371f039-40d0-4944-aae7-6f75071a2f8c;1 9915df0c-30fc-49c5-aa8a-c86b4242c094;1 xmlrpc:http://localhost:8000/RPC2" INFO:handle_command: lookup on ports 45508/45238, session timer restarted INFO:handle_command: setting custom timeout handler (xmlrpc:http://localhost:8000/RPC2) INFO:handle_command: pre-filling callee's address with 195.71.4.203:4000 DBUG:doreply: sending reply "4259_9 45238 127.0.0.1 " INFO:process_rtp: session timeout ERR:rtpp_notify_schedule: XMLRPC xmlrpc:http://localhost:8000/RPC2 INFO:remove_session: RTP stats: 0 in from callee, 0 in from caller, 0 relayed, 0 dropped INFO:remove_session: RTCP stats: 0 in from callee, 0 in from caller, 0 relayed, 0 dropped INFO:remove_session: session on ports 45508/45238 is cleaned up ERR:do_timeout_notification: Timeout socket: xmlrpc:http://localhost:8000/RPC2
And it works for me:
U 2011/03/16 16:50:14.350721 127.0.0.1:5060 -> 127.0.0.1:15061 BYE sip:2@127.0.0.1:15061;ob SIP/2.0. Via: SIP/2.0/UDP 127.0.0.1;branch=z9hG4bK06e9.245e2dd7.0. To: sip:2@localhost;tag=5371f039-40d0-4944-aae7-6f75071a2f8c. From: sip:1@localhost;tag=9915df0c-30fc-49c5-aa8a-c86b4242c094. CSeq: 7905 BYE. Call-ID: 56f0f83a-5373-46a1-b6f6-9ce2f93e68d5. Content-Length: 0. User-Agent: kamailio (3.2.0-dev2 (x86_64/linux)). Max-Forwards: 70. .
U 2011/03/16 16:50:14.350801 127.0.0.1:5060 -> 127.0.0.1:15060 BYE sip:1@127.0.0.1:15060;transport=UDP;ob SIP/2.0. Via: SIP/2.0/UDP 127.0.0.1;branch=z9hG4bK06e9.345e2dd7.0. To: sip:1@localhost;tag=9915df0c-30fc-49c5-aa8a-c86b4242c094. From: sip:2@localhost;tag=5371f039-40d0-4944-aae7-6f75071a2f8c. CSeq: 7905 BYE. Call-ID: 56f0f83a-5373-46a1-b6f6-9ce2f93e68d5. Content-Length: 0. User-Agent: kamailio (3.2.0-dev2 (x86_64/linux)). Max-Forwards: 70. . [...]
Maybe, you can add some more debug-info from RTP-Proxy... And can you verify, that the RTP-Proxy is not trying to send the request?
Kind regards, Carsten
2011/3/16 Alexandre Abreu alexandre.abreu@redt.com.br:
Hi Carsten,
Even with your RTPPROXY tarball I was unable to get this working. Session remains after RTPPROXY timeout. I am using KAMAILIO 3.1 branch from GIT and as I told you, I moved the rtpproxy/ from GIT-MASTER to the Kamailio branch (waiting your backport).
Is
there anything else regarding this feature that should also should be
moved
(beyond rtpproxy/)?
Thanks, Alexandre
-- Carsten Bock http://www.ng-voice.com mailto:carsten@ng-voice.com
-- Carsten Bock http://www.ng-voice.com mailto:carsten@ng-voice.com
Hi Carsten,
Thank you very much. Finally it is working now. Quick question: how do you account the BYE sent by the proxy? Since the BYE itself does not transverse the script...
Thanks, Alexandre
-----Mensagem original----- De: kaiserbock2@googlemail.com [mailto:kaiserbock2@googlemail.com] Em nome de Carsten Bock Enviada em: quinta-feira, 17 de março de 2011 06:44 Para: Alexandre Abreu Cc: sr-users@lists.sip-router.org Assunto: Re: RTPPROXY timeout patch.
Hi Alexandre,
that really helped, thanks. I think i've been able to fix this issue. It was based on a piece of memory, which was free'd too early. Please find attached an improved version of the RTPProxy/the patch. I will update the patch in the GIT-Repository shortly.
Kind regards, Carsten
2011/3/16 Alexandre Abreu alexandre.abreu@redt.com.br:
Carsten,
Here it goes:
[root@devel rtpproxy-carsten]# ./rtpproxy -T 10 -f -F -i -l 192.168.200.90 -s udp:*:7722 -d DBUG ERR INFO -n tcp:127.0.0.1:7723 INFO:main: rtpproxy started, pid 22495 rtpproxy: >>> Running Timeout-Process
DBUG:handle_command: received command "22428_8 Uc0,8,101 080b5d23d1603667 192.168.200.114 6380 0073852a;1" INFO:handle_command: new session 080b5d23d1603667, tag 0073852a;1 requested, type strong INFO:handle_command: new session on a port 48662 created, tag 0073852a;1 INFO:handle_command: pre-filling caller's address with 192.168.200.114:6380 DBUG:doreply: sending reply "22428_8 48662 192.168.200.90" DBUG:handle_command: received command "22436_8 Lc0,8,101 080b5d23d1603667 192.168.200.149 7614 0073852a;1 c758967a;1 xmlrpc:http://127.0.0.1:8000/RPC2" INFO:handle_command: lookup on ports 48662/58604, session timer restarted INFO:handle_command: setting custom timeout handler (xmlrpc:http://127.0.0.1:8000/RPC2) INFO:handle_command: pre-filling callee's address with 192.168.200.149:7614 DBUG:doreply: sending reply "22436_8 58604 192.168.200.90" INFO:process_rtp: session timeout INFO:remove_session: RTP stats: 982 in from callee, 4 in from caller, 986 relayed, 0 dropped INFO:remove_session: RTCP stats: 5 in from callee, 1 in from caller, 6 relayed, 0 dropped INFO:remove_session: session on ports 48662/58604 is cleaned up ERR:do_timeout_notification: Timeout socket is: èîÈÄÐÊ@ÍÈÄÈÄ`ê DBUG:reconnect_timeout_handler: reconnecting timeout socket ERR:reconnect_timeout_handler: can't create timeout socket: Address family not supported by protocol ERR:do_timeout_notification: unable to send timeout notification
Very weird chars in the debug of what Timeout socket is...
But the custom timeout handler are being printed correctly from the config file. INFO:handle_command: setting custom timeout handler (xmlrpc:http://127.0.0.1:8000/RPC2) Here I am running CentOS 5.2 32-bit.
Thanks, Alexandre
-----Mensagem original----- De: kaiserbock2@googlemail.com [mailto:kaiserbock2@googlemail.com] Em nome de Carsten Bock Enviada em: quarta-feira, 16 de março de 2011 14:18 Para: Alexandre Abreu Cc: sr-users@lists.sip-router.org Assunto: Re: RTPPROXY timeout patch.
Hi Alexandre,
My version of RTP-Proxy is following:
bock@bock-tde:~/ims/rtpproxy$ ./rtpproxy -v Basic version: 20040107 Extension 20050322: Support for multiple RTP streams and MOH Extension 20060704: Support for extra parameter in the V command Extension 20071116: Support for RTP re-packetization Extension 20071218: Support for forking (copying) RTP stream Extension 20080403: Support for RTP statistics querying Extension 20081102: Support for setting codecs in the update/lookup command Extension 20081224: Support for session timeout notifications Extension 20090810: Support for automatic bridging Extension 20100819: Support for timeout notifications using XML-RPC towards Kamailio/sip-router.org
Please find attached a modified rtpp_notify.c file. I have just added some tiny debug output in order to see some points. Now you should see the following Debug-Outputs:
rtpproxy: >>> Running Timeout-Process
Then the notifier process is running. That would be good. If not, that's the reason why it is not working. When the request comes in, you should see the following:
INFO:handle_command: setting custom timeout handler (xmlrpc:http://localhost:8000/RPC2)
Then the Timeout-Socket was properly set, that would be good as well. Now the timeout:
INFO:process_rtp: session timeout [...] ERR:do_timeout_notification: Timeout socket is: xmlrpc:http://localhost:8000/RPC2
That would be great, because then the Timeout towards the Kamailio should be triggerd. If these parts are ok, then there must be some issue either in the XML-RPC client library or in the communication between the RTP-Proxy and Kamailio. I hope you did a trace on the XML-RPC Port both on the RTPproxy and on the Kamailio? What distro are you using? My tests were only on Ubuntu and Debian, which are quite similar.
Hope we find this issue,
Kind regards, Carsten
P.S.: I think i removed that check for the port for testing, that's why my version accepted the socket without port... (now i'm using "-n tcp:127.0.0.1:9999")
2011/3/16 Alexandre Abreu alexandre.abreu@redt.com.br:
Carsten,
Indeed. Very strange.
Are we running the same RTPPROXY version? How can you start using '-n tcp:127.0.0.1' without specifying a port?
[root@devel rtpproxy-carsten]# ./rtpproxy -T 10 -f -F -i -l 192.168.200.90 -s udp:*:7722 -d DBUG ERR INFO -n tcp:127.0.0.1 rtpproxy: can't parse host:port in TCP address rtpproxy: can't start notification thread
[root@devel rtpproxy-carsten]# ./rtpproxy -T 10 -f -F -i -l 192.168.200.90 -s udp:*:7722 -d DBUG ERR INFO -n tcp:127.0.0.1:7723 INFO:main: rtpproxy started, pid 21169
DBUG:handle_command: received command "17828_9 Uc0,8,101 4b10ce04de4f8818 192.168.200.114 6380 9c4b6265;1" INFO:handle_command: new session 4b10ce04de4f8818, tag 9c4b6265;1
requested,
type strong INFO:handle_command: new session on a port 43750 created, tag 9c4b6265;1 INFO:handle_command: pre-filling caller's address with
192.168.200.114:6380
DBUG:doreply: sending reply "17828_9 43750 192.168.200.90 " DBUG:handle_command: received command "17847_9 Lc0,8,101 4b10ce04de4f8818 192.168.200.149 7386 9c4b6265;1 dd69ab1d;1 xmlrpc:http://localhost:8000/RPC2" INFO:handle_command: lookup on ports 43750/55796, session timer restarted INFO:handle_command: setting custom timeout handler (xmlrpc:http://localhost:8000/RPC2) INFO:handle_command: pre-filling callee's address with
192.168.200.149:7386
DBUG:doreply: sending reply "17847_9 55796 192.168.200.90 " INFO:process_rtp: session timeout INFO:remove_session: RTP stats: 548 in from callee, 5 in from caller, 553 relayed, 0 dropped INFO:remove_session: RTCP stats: 3 in from callee, 1 in from caller, 4 relayed, 0 dropped INFO:remove_session: session on ports 43750/55796 is cleaned up DBUG:reconnect_timeout_handler: reconnecting timeout socket ERR:reconnect_timeout_handler: can't create timeout socket: Address family not supported by protocol ERR:do_timeout_notification: unable to send timeout notification
Above the error message.
[root@devel ~]# md5sum rtpproxy-carsten.tar.gz c02b1e2ac57d39562e86bcfc4ee592b8 rtpproxy-carsten.tar.gz
Thanks, Alexandre.
-----Mensagem original----- De: kaiserbock2@googlemail.com [mailto:kaiserbock2@googlemail.com] Em nome de Carsten Bock Enviada em: quarta-feira, 16 de março de 2011 13:03 Para: Alexandre Abreu Cc: sr-users@lists.sip-router.org Assunto: Re: RTPPROXY timeout patch.
Hi Alexandre,
That is strange:
I run the RTP-Proxy like this (directly from the TAR-File, i sent you) and Kamailio with attached config-file.
bock@bock-tde:~/ims/rtpproxy$ sudo ./rtpproxy -T 10 -f -F -i -l 127.0.0.1 -s udp:*:22222 -d DBUG -n tcp:127.0.0.1 rtpproxy: Timer started. INFO:main: rtpproxy started, pid 4203 [... Kamailio connects to RTP-Proxy...] DBUG:handle_command: received command "4259_8 UAc98,97,99,104,3,0,8,9,96 56f0f83a-5373-46a1-b6f6-9ce2f93e68d5 195.71.4.203 4008 5371f039-40d0-4944-aae7-6f75071a2f8c;1" INFO:handle_command: new session 56f0f83a-5373-46a1-b6f6-9ce2f93e68d5, tag 5371f039-40d0-4944-aae7-6f75071a2f8c;1 requested, type strong INFO:handle_command: new session on a port 45508 created, tag 5371f039-40d0-4944-aae7-6f75071a2f8c;1 INFO:handle_command: pre-filling caller's address with 195.71.4.203:4008 DBUG:doreply: sending reply "4259_8 45508 127.0.0.1 " DBUG:handle_command: received command "4259_9 LAc98,96 56f0f83a-5373-46a1-b6f6-9ce2f93e68d5 195.71.4.203 4000 5371f039-40d0-4944-aae7-6f75071a2f8c;1 9915df0c-30fc-49c5-aa8a-c86b4242c094;1 xmlrpc:http://localhost:8000/RPC2" INFO:handle_command: lookup on ports 45508/45238, session timer restarted INFO:handle_command: setting custom timeout handler (xmlrpc:http://localhost:8000/RPC2) INFO:handle_command: pre-filling callee's address with 195.71.4.203:4000 DBUG:doreply: sending reply "4259_9 45238 127.0.0.1 " INFO:process_rtp: session timeout ERR:rtpp_notify_schedule: XMLRPC xmlrpc:http://localhost:8000/RPC2 INFO:remove_session: RTP stats: 0 in from callee, 0 in from caller, 0 relayed, 0 dropped INFO:remove_session: RTCP stats: 0 in from callee, 0 in from caller, 0 relayed, 0 dropped INFO:remove_session: session on ports 45508/45238 is cleaned up ERR:do_timeout_notification: Timeout socket: xmlrpc:http://localhost:8000/RPC2
And it works for me:
U 2011/03/16 16:50:14.350721 127.0.0.1:5060 -> 127.0.0.1:15061 BYE sip:2@127.0.0.1:15061;ob SIP/2.0. Via: SIP/2.0/UDP 127.0.0.1;branch=z9hG4bK06e9.245e2dd7.0. To: sip:2@localhost;tag=5371f039-40d0-4944-aae7-6f75071a2f8c. From: sip:1@localhost;tag=9915df0c-30fc-49c5-aa8a-c86b4242c094. CSeq: 7905 BYE. Call-ID: 56f0f83a-5373-46a1-b6f6-9ce2f93e68d5. Content-Length: 0. User-Agent: kamailio (3.2.0-dev2 (x86_64/linux)). Max-Forwards: 70. .
U 2011/03/16 16:50:14.350801 127.0.0.1:5060 -> 127.0.0.1:15060 BYE sip:1@127.0.0.1:15060;transport=UDP;ob SIP/2.0. Via: SIP/2.0/UDP 127.0.0.1;branch=z9hG4bK06e9.345e2dd7.0. To: sip:1@localhost;tag=9915df0c-30fc-49c5-aa8a-c86b4242c094. From: sip:2@localhost;tag=5371f039-40d0-4944-aae7-6f75071a2f8c. CSeq: 7905 BYE. Call-ID: 56f0f83a-5373-46a1-b6f6-9ce2f93e68d5. Content-Length: 0. User-Agent: kamailio (3.2.0-dev2 (x86_64/linux)). Max-Forwards: 70. . [...]
Maybe, you can add some more debug-info from RTP-Proxy... And can you verify, that the RTP-Proxy is not trying to send the request?
Kind regards, Carsten
2011/3/16 Alexandre Abreu alexandre.abreu@redt.com.br:
Hi Carsten,
Even with your RTPPROXY tarball I was unable to get this working. Session remains after RTPPROXY timeout. I am using KAMAILIO 3.1 branch from GIT and as I told you, I moved the rtpproxy/ from GIT-MASTER to the Kamailio branch (waiting your
backport).
Is
there anything else regarding this feature that should also should be
moved
(beyond rtpproxy/)?
Thanks, Alexandre
-- Carsten Bock http://www.ng-voice.com mailto:carsten@ng-voice.com
-- Carsten Bock http://www.ng-voice.com mailto:carsten@ng-voice.com
-- Carsten Bock http://www.ng-voice.com mailto:carsten@ng-voice.com
Hi,
that is a general Kamailio question. I think it should work like this: local_route { [... do whatever you like here ...] } (a route for locally generated requests).
Carsten
2011/3/17 Alexandre Abreu alexandre.abreu@redt.com.br:
Hi Carsten,
Thank you very much. Finally it is working now. Quick question: how do you account the BYE sent by the proxy? Since the BYE itself does not transverse the script...
Thanks, Alexandre