Re: [OpenSIPS-Users] Problem Contact URI
Lionel Sicilia wrote: The 'Warning' header does not report an error it just provides debugging information from inside opensips - you can turn it on/off with the sip_warning core parameter: http://www.opensips.org/Resources/DocsCoreFcn16#toc68 Now, about the error in the pjsip stack - it reports line 7 (assuming from the entire message), which is: Contact: sip:7...@192.168.2.84:11065:18196;expires=209, sip:7...@190.178.217.168:18209;expires=300 most probably because of the double port in the first contact entry. So, you need to look for the part where you are saving contacts in user location - save(location) - here, do you do any processing of the SIP contact, before the actual save, like fix_nated_contact() or fix_nated_register() ? Regards, Bogdan Thank you for your significant responses, sip_warning parameter was already set with the value yes now changed to 1. But the log still shows the debug to send in the mail earlier. debug=9 log_stderror=no log_facility=LOG_LOCAL0 fork=yes children=4 sip_warning=1 yes or 1 values are the same. To disable it set it to no or 0. On the other hand I've tried to fix_nated_register () and others, the code below just before save location. Unfortunately this did not fix the problem of generating in the contact uri multiple ports. if (is_method(REGISTER)) { fix_nated_register(); fix_nated_contact(); fix_contact(); # authenticate the REGISTER requests (uncomment to enable auth) ##if (!www_authorize(, subscriber)) ##{ ## www_challenge(, 0); ## exit; ##} ## ##if (!db_check_to()) ##{ ## sl_send_reply(403,Forbidden auth ID); ## exit; ##} if (!save(location)) sl_reply_error(); exit; } Use only fix_nated_register() for REGISTER requests. After the change, be sure you discard all bogus records from your user location (stop opensips, purge location table, start opensips). Regards, Bogdan Regards, -- Bogdan-Andrei Iancu OpenSIPS Event - expo, conf, social, bootcamp 2 - 4 February 2011, ITExpo, Miami, USA www.voice-system.ro ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Re: [OpenSIPS-Users] RTPProxy timeout notifications
Hi Denis, Silly question, but have you applied to the official RTPproxy the patches that comes with the nathelper module ? Regards, Bogdan Denis Putyato wrote: Hello! During tests of new feature in rtpproxy I received such problem: “Dec 27 11:42:42 opensips /usr/local/opensips1.6.4/sbin/opensips[26496]: DBG:nathelper:timeout_listener_process: unknown rtpproxy – ignoring” And log for rtpproxy “Dec 28 07:43:37 opensips rtpproxy[28223]: INFO:handle_command: new session 6fe1-00bf-8e08-8065-0002a405c...@172.31.255.250, tag 6f008e65a4;1 requested, type strong Dec 28 07:43:37 opensips rtpproxy[28223]: INFO:handle_command: new session on a port 64922 created, tag 6f008e65a4;1 Dec 28 07:43:37 opensips rtpproxy[28223]: INFO:handle_command: setting timeout handler Dec 28 07:43:37 opensips rtpproxy[28223]: INFO:handle_command: pre-filling caller's address with 3.3.3.3:23066 Dec 28 07:43:37 opensips /usr/local/opensips1.6.4/sbin/opensips[28196]: ERROR:nathelper:force_rtp_proxy: Unable to parse body Dec 28 07:43:38 opensips rtpproxy[28223]: INFO:handle_command: lookup on ports 64922/4, session timer restarted Dec 28 07:43:38 opensips rtpproxy[28223]: INFO:handle_command: pre-filling callee's address with 2.2.2.2:18408 Dec 28 07:43:39 opensips rtpproxy[28223]: INFO:handle_command: lookup on ports 64922/4, session timer restarted Dec 28 07:44:07 opensips rtpproxy[28223]: INFO:process_rtp: session timeout Dec 28 07:44:07 opensips rtpproxy[28223]: INFO:remove_session: RTP stats: 1449 in from callee, 421 in from caller, 1870 relayed, 0 dropped Dec 28 07:44:07 opensips rtpproxy[28223]: INFO:remove_session: RTCP stats: 7 in from callee, 2 in from caller, 9 relayed, 0 dropped Dec 28 07:44:07 opensips rtpproxy[28223]: INFO:remove_session: session on ports 64922/4 is cleaned up Dec 28 07:44:07 opensips rtpproxy[28223]: ERR:do_timeout_notification: failed to send timeout notification: Broken pipe” Opensips 1.6.4 Latest rtpproxy from git with patch for RTPProxy timeout notifications The start string of rtpproxy: /usr/local/rtpproxy/bin/rtpproxy -l 1.1.1.1 -s unix:/var/run/rtpproxy.sock -F -i -n tcp:1.1.1.1:2 -T 20 -W 60 Opensips.cfg: … … modparam(nathelper, rtpproxy_sock, /var/run/rtpproxy.sock) modparam(nathelper, rtpp_notify_socket, tcp:1.1.1.1:2) … … rtpproxy_offer(con); …. rtpproxy_answer(con); … During voice session everything fine (bidirectional voice flow). Then I emulate LAN problem and after 20 s expire I received such message. Call is still active. Thank you for any help. ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users -- Bogdan-Andrei Iancu OpenSIPS Event - expo, conf, social, bootcamp 2 - 4 February 2011, ITExpo, Miami, USA www.voice-system.ro ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Re: [OpenSIPS-Users] RTPProxy timeout notifications
Hello Bogdan! 1) There is no patch in official release of Opensips 1.6.4 which I can download from web site (source tar). There is a patch only in SVN version of Opensips 1.6.4 2) The patch which I can use from SVN version I can apply only to rtpproxy from git. If I use rtpproxy from web site I cannot apply patch to it (there are some errors during process of patch). In my case I use rtpproxy from git with applied patch from SVN version of Opensips (when I start rtpproxy I use such command /usr/local/rtpproxy/bin/rtpproxy -l 1.1.1.1 -s unix:/var/run/rtpproxy.sock -F -i -n tcp:1.1.1.1:2 -T 20 -W 60. As I understand without patch -W doesn`t work) and official release of Openspis 1.6.4 which I downloaded from web site (not from SVN) -Original Message- From: users-boun...@lists.opensips.org [mailto:users-boun...@lists.opensips.org] On Behalf Of Bogdan-Andrei Iancu Sent: Tuesday, December 28, 2010 1:31 PM To: OpenSIPS users mailling list Subject: Re: [OpenSIPS-Users] RTPProxy timeout notifications Hi Denis, Silly question, but have you applied to the official RTPproxy the patches that comes with the nathelper module ? Regards, Bogdan Denis Putyato wrote: Hello! During tests of new feature in rtpproxy I received such problem: “Dec 27 11:42:42 opensips /usr/local/opensips1.6.4/sbin/opensips[26496]: DBG:nathelper:timeout_listener_process: unknown rtpproxy – ignoring” And log for rtpproxy “Dec 28 07:43:37 opensips rtpproxy[28223]: INFO:handle_command: new session 6fe1-00bf-8e08-8065-0002a405c...@172.31.255.250, tag 6f008e65a4;1 requested, type strong Dec 28 07:43:37 opensips rtpproxy[28223]: INFO:handle_command: new session on a port 64922 created, tag 6f008e65a4;1 Dec 28 07:43:37 opensips rtpproxy[28223]: INFO:handle_command: setting timeout handler Dec 28 07:43:37 opensips rtpproxy[28223]: INFO:handle_command: pre-filling caller's address with 3.3.3.3:23066 Dec 28 07:43:37 opensips /usr/local/opensips1.6.4/sbin/opensips[28196]: ERROR:nathelper:force_rtp_proxy: Unable to parse body Dec 28 07:43:38 opensips rtpproxy[28223]: INFO:handle_command: lookup on ports 64922/4, session timer restarted Dec 28 07:43:38 opensips rtpproxy[28223]: INFO:handle_command: pre-filling callee's address with 2.2.2.2:18408 Dec 28 07:43:39 opensips rtpproxy[28223]: INFO:handle_command: lookup on ports 64922/4, session timer restarted Dec 28 07:44:07 opensips rtpproxy[28223]: INFO:process_rtp: session timeout Dec 28 07:44:07 opensips rtpproxy[28223]: INFO:remove_session: RTP stats: 1449 in from callee, 421 in from caller, 1870 relayed, 0 dropped Dec 28 07:44:07 opensips rtpproxy[28223]: INFO:remove_session: RTCP stats: 7 in from callee, 2 in from caller, 9 relayed, 0 dropped Dec 28 07:44:07 opensips rtpproxy[28223]: INFO:remove_session: session on ports 64922/4 is cleaned up Dec 28 07:44:07 opensips rtpproxy[28223]: ERR:do_timeout_notification: failed to send timeout notification: Broken pipe” Opensips 1.6.4 Latest rtpproxy from git with patch for RTPProxy timeout notifications The start string of rtpproxy: /usr/local/rtpproxy/bin/rtpproxy -l 1.1.1.1 -s unix:/var/run/rtpproxy.sock -F -i -n tcp:1.1.1.1:2 -T 20 -W 60 Opensips.cfg: … … modparam(nathelper, rtpproxy_sock, /var/run/rtpproxy.sock) modparam(nathelper, rtpp_notify_socket, tcp:1.1.1.1:2) … … rtpproxy_offer(con); …. rtpproxy_answer(con); … During voice session everything fine (bidirectional voice flow). Then I emulate LAN problem and after 20 s expire I received such message. Call is still active. Thank you for any help. ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users -- Bogdan-Andrei Iancu OpenSIPS Event - expo, conf, social, bootcamp 2 - 4 February 2011, ITExpo, Miami, USA www.voice-system.ro ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Re: [OpenSIPS-Users] opensips HA resource script (for Heartbeat)
2010/12/28 Alexandr A. Alexandrov shurr...@gmail.com: Hi, All. This is an issue of writing a correct script, nothing more. :-) There are several possibilities, strating from simple process lookup (like pgrep -f opensips), ending using MI from such a script. No, this is a bug in opensips itself since, when running daemonized, the process returns 0 even if the daemonized (main) process fails to start (due to any module configuration error). Any exotic check you add after executing the binary is just a workaround. Any service/daemon MUST return an accurate exit status code, so other applications (i.e. HA) can rely on such a value. This makes OpenSIPS not valid for full HA environment, so be careful. I will make my opensips valid Can I ask how? Imagine you dbaliases module access to a different database, and such database server is protected with iptables dropping any incoming TCP connection. You run opensips and the module dbaliases tries to establish the connection with the BD server. It could take LONG time until it raises a timeout error (maybe minutes). After such time the main process dies, but before such moment the main process was still running. If your valid init/LSB/OCF script checks the process status 5 seconds after calling the binay, it would return SUCCESS status (while in fact, opensips will die soon). No perfect workaround here. The daemon itself MUST return a real and accurate code. NOTE: A way to improve it (in OpenSIPS code): When invoking opensips, the parent process opens a PIPE for reading, and the daemonized process open it for writting. The parent process waits until the daemonized process writes into the PIPE (it writes its status which is the status code returned by the parent process). This is already implemented in Kamailio/SIP-router. Regards. -- Iñaki Baz Castillo i...@aliax.net ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Re: [OpenSIPS-Users] Problem Contact URI
Use only fix_nated_register() for REGISTER requests. After the change, be sure you discard all bogus records from your user location (stop opensips, purge location table, start opensips). Regards, Bogdan Regards, Test the setup, but I had no success, although fix_nated_register () seems to work correctly, I see this in the amount of $avp(i:42), but in the contacttable location The port is duplicate. What can be causing this problem? TABLE LOCATION -- id usernamedomain contact receivedpathexpires q 11 7020 sip:7...@190.178.192.68:13262:13262;transport=UDP 28-dic-2010 11:14:48-1 callid cseqlast_modified flags cflags user_agent socket methods 73a077f520f4410999ec7f964d4828fc18512 28-dic-2010 11:09:480 0 n/a udp:192.168.2.21:5060 LOG OPENSIPS -- Dec 28 10:44:14 jerif opensips[1397]: DBG:registrar:build_contact: created Contact HF: Contact: sip:7...@190.178.192.68:12344:12344;transport=UDP;expires=181, sip:7...@192.168.2.84:11675;expires=200, sip:7...@192.168.2.84:13100;expires=220, sip:7...@192.168.2.84:16838;expires=263, sip:7...@190.178.192.68:12534;expires=300^M SET opensips.cfg loadmodule nathelper.so modparam(nathelper, received_avp, $avp(i:42)) .. .. if (is_method(REGISTER)) { fix_nated_register(); xlog(...RESULT FIX_NATED_REGISTER - $avp(i:42)); # authenticate the REGISTER requests (uncomment to enable auth) if (!www_authorize(, subscriber)) { www_challenge(, 0); exit; } if (!db_check_to()) { sl_send_reply(403,Forbidden auth ID); exit; } if (!save(location)) sl_reply_error(); exit; } } Regards, -- Lionel Sicilia. CTO - Aplay S.A. ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Re: [OpenSIPS-Users] Problem Contact URI
Lionel Sicilia wrote: Use only fix_nated_register() for REGISTER requests. After the change, be sure you discard all bogus records from your user location (stop opensips, purge location table, start opensips). Regards, Bogdan Regards, Test the setup, but I had no success, although fix_nated_register () seems to work correctly, I see this in the amount of $avp(i:42), but in the contacttable location The port is duplicate. What can be causing this problem? Check that: 1) you are not receiving (in REGISTER) an already bogus contact (with 2 ports) 2) you are not doing by mistake another fix_nated_contact in other parts of the script (not REGISTER related blocks, maybe) TABLE LOCATION -- id usernamedomain contact receivedpathexpires q 11 7020 sip:7...@190.178.192.68:13262:13262;transport=UDP 28-dic-2010 11:14:48-1 callid cseqlast_modified flags cflags user_agent socket methods 73a077f520f4410999ec7f964d4828fc18512 28-dic-2010 11:09:480 0 n/a udp:192.168.2.21:5060 Something is wrong here. Normally, if using only fix_nated_register(), you should have: - private contact (as received in REGISTER) in contact column - public NAT ip (src of REGISTER) in received column I your case you have only a contact value which is public :-/.It looks like your fix_nated_register() has no effect, but a fix_nated_contact() does (maybe in other parts of the script). (see below) LOG OPENSIPS -- Dec 28 10:44:14 jerif opensips[1397]: DBG:registrar:build_contact: created Contact HF: Contact: sip:7...@190.178.192.68:12344:12344;transport=UDP;expires=181, sip:7...@192.168.2.84:11675;expires=200, sip:7...@192.168.2.84:13100;expires=220, sip:7...@192.168.2.84:16838;expires=263, sip:7...@190.178.192.68:12534;expires=300^M SET opensips.cfg loadmodule nathelper.so modparam(nathelper, received_avp, $avp(i:42)) Also add here modparam(registrar, received_avp, $avp(i:42)) .. .. if (is_method(REGISTER)) { fix_nated_register(); xlog(...RESULT FIX_NATED_REGISTER - $avp(i:42)); # authenticate the REGISTER requests (uncomment to enable auth) if (!www_authorize(, subscriber)) { www_challenge(, 0); exit; } if (!db_check_to()) { sl_send_reply(403,Forbidden auth ID); exit; } if (!save(location)) sl_reply_error(); exit; } } and be 100% sure you do not call any other fix_nated_contact() like functions for this REGISTER (maybe in some other scripting block, before register processing). Regards, Bogdan -- Bogdan-Andrei Iancu OpenSIPS Event - expo, conf, social, bootcamp 2 - 4 February 2011, ITExpo, Miami, USA www.voice-system.ro ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Re: [OpenSIPS-Users] opensips HA resource script (for Heartbeat)
Hi Iñaki, Iñaki Baz Castillo wrote: 2010/12/28 Alexandr A. Alexandrov shurr...@gmail.com: Hi, All. This is an issue of writing a correct script, nothing more. :-) There are several possibilities, strating from simple process lookup (like pgrep -f opensips), ending using MI from such a script. No, this is a bug in opensips itself since, when running daemonized, the process returns 0 even if the daemonized (main) process fails to start (due to any module configuration error). Any exotic check you add after executing the binary is just a workaround. Any service/daemon MUST return an accurate exit status code, so other applications (i.e. HA) can rely on such a value. You may call it a design bug - the current return code reflects only the pre-daemonize init without including the child init for example. To be honest, so far I succesfully used the pid file info to check if my opensips properly started or not - but maybe this kind of test is not suitable in all the cases. This makes OpenSIPS not valid for full HA environment, so be careful. I will make my opensips valid Can I ask how? Imagine you dbaliases module access to a different database, and such database server is protected with iptables dropping any incoming TCP connection. You run opensips and the module dbaliases tries to establish the connection with the BD server. It could take LONG time until it raises a timeout error (maybe minutes). After such time the main process dies, but before such moment the main process was still running. If your valid init/LSB/OCF script checks the process status 5 seconds after calling the binay, it would return SUCCESS status (while in fact, opensips will die soon). No perfect workaround here. The daemon itself MUST return a real and accurate code. I'm not 100% convinced that this change will totally fix the problem - even if we make the initial process to report a correct and relevant return code, what will happen if this will happen if this return code comes after minutes, following some DNS/DB queries done by module init functions ? Is it still useful to have the return code after 2 minutes ? NOTE: A way to improve it (in OpenSIPS code): When invoking opensips, the parent process opens a PIPE for reading, and the daemonized process open it for writting. The parent process waits until the daemonized process writes into the PIPE (it writes its status which is the status code returned by the parent process). This is already implemented in Kamailio/SIP-router. As far as I understand this will partially fix the problem, by addressing the errors reported by module init functions. The errors generated by the child init functions will not be caught by the parent process, so more or less we are back to square one :)...there is a need for something more extensive, to get reporting from all opensips processes (daemonize, worker processes, timer, aux procs)... Regards, Bogdan -- Bogdan-Andrei Iancu OpenSIPS Event - expo, conf, social, bootcamp 2 - 4 February 2011, ITExpo, Miami, USA www.voice-system.ro ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Re: [OpenSIPS-Users] RTPProxy timeout notifications
Hi Denis, Denis Putyato wrote: Hello Bogdan! 1) There is no patch in official release of Opensips 1.6.4 which I can download from web site (source tar). There is a patch only in SVN version of Opensips 1.6.4 Hmm..that's a packaging bug :(I will take care of this. 2) The patch which I can use from SVN version I can apply only to rtpproxy from git. If I use rtpproxy from web site I cannot apply patch to it (there are some errors during process of patch). I will ask Razvan (the author of this work) to see if the patch can be ported to official rtpproxy release too (not as coding, but as functionality). In my case I use rtpproxy from git with applied patch from SVN version of Opensips (when I start rtpproxy I use such command /usr/local/rtpproxy/bin/rtpproxy -l 1.1.1.1 -s unix:/var/run/rtpproxy.sock -F -i -n tcp:1.1.1.1:2 -T 20 -W 60. As I understand without patch -W doesn`t work) and official release of Openspis 1.6.4 which I downloaded from web site (not from SVN) And this works ? Regards, Bogdan -Original Message- From: users-boun...@lists.opensips.org [mailto:users-boun...@lists.opensips.org] On Behalf Of Bogdan-Andrei Iancu Sent: Tuesday, December 28, 2010 1:31 PM To: OpenSIPS users mailling list Subject: Re: [OpenSIPS-Users] RTPProxy timeout notifications Hi Denis, Silly question, but have you applied to the official RTPproxy the patches that comes with the nathelper module ? Regards, Bogdan Denis Putyato wrote: Hello! During tests of new feature in rtpproxy I received such problem: “Dec 27 11:42:42 opensips /usr/local/opensips1.6.4/sbin/opensips[26496]: DBG:nathelper:timeout_listener_process: unknown rtpproxy – ignoring” And log for rtpproxy “Dec 28 07:43:37 opensips rtpproxy[28223]: INFO:handle_command: new session 6fe1-00bf-8e08-8065-0002a405c...@172.31.255.250, tag 6f008e65a4;1 requested, type strong Dec 28 07:43:37 opensips rtpproxy[28223]: INFO:handle_command: new session on a port 64922 created, tag 6f008e65a4;1 Dec 28 07:43:37 opensips rtpproxy[28223]: INFO:handle_command: setting timeout handler Dec 28 07:43:37 opensips rtpproxy[28223]: INFO:handle_command: pre-filling caller's address with 3.3.3.3:23066 Dec 28 07:43:37 opensips /usr/local/opensips1.6.4/sbin/opensips[28196]: ERROR:nathelper:force_rtp_proxy: Unable to parse body Dec 28 07:43:38 opensips rtpproxy[28223]: INFO:handle_command: lookup on ports 64922/4, session timer restarted Dec 28 07:43:38 opensips rtpproxy[28223]: INFO:handle_command: pre-filling callee's address with 2.2.2.2:18408 Dec 28 07:43:39 opensips rtpproxy[28223]: INFO:handle_command: lookup on ports 64922/4, session timer restarted Dec 28 07:44:07 opensips rtpproxy[28223]: INFO:process_rtp: session timeout Dec 28 07:44:07 opensips rtpproxy[28223]: INFO:remove_session: RTP stats: 1449 in from callee, 421 in from caller, 1870 relayed, 0 dropped Dec 28 07:44:07 opensips rtpproxy[28223]: INFO:remove_session: RTCP stats: 7 in from callee, 2 in from caller, 9 relayed, 0 dropped Dec 28 07:44:07 opensips rtpproxy[28223]: INFO:remove_session: session on ports 64922/4 is cleaned up Dec 28 07:44:07 opensips rtpproxy[28223]: ERR:do_timeout_notification: failed to send timeout notification: Broken pipe” Opensips 1.6.4 Latest rtpproxy from git with patch for RTPProxy timeout notifications The start string of rtpproxy: /usr/local/rtpproxy/bin/rtpproxy -l 1.1.1.1 -s unix:/var/run/rtpproxy.sock -F -i -n tcp:1.1.1.1:2 -T 20 -W 60 Opensips.cfg: … … modparam(nathelper, rtpproxy_sock, /var/run/rtpproxy.sock) modparam(nathelper, rtpp_notify_socket, tcp:1.1.1.1:2) … … rtpproxy_offer(con); …. rtpproxy_answer(con); … During voice session everything fine (bidirectional voice flow). Then I emulate LAN problem and after 20 s expire I received such message. Call is still active. Thank you for any help. ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users -- Bogdan-Andrei Iancu OpenSIPS Event - expo, conf, social, bootcamp 2 - 4 February 2011, ITExpo, Miami, USA www.voice-system.ro ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Re: [OpenSIPS-Users] RTPProxy timeout notifications
Hello Bogdan RTP Proxy is working but timeout notification does not. There is error /usr/local/opensips1.6.4/sbin/opensips[26496]: DBG:nathelper:timeout_listener_process: unknown rtpproxy – ignoring -Original Message- From: users-boun...@lists.opensips.org [mailto:users-boun...@lists.opensips.org] On Behalf Of Bogdan-Andrei Iancu Sent: Tuesday, December 28, 2010 5:49 PM To: OpenSIPS users mailling list; Razvan Crainea Subject: Re: [OpenSIPS-Users] RTPProxy timeout notifications Hi Denis, Denis Putyato wrote: Hello Bogdan! 1) There is no patch in official release of Opensips 1.6.4 which I can download from web site (source tar). There is a patch only in SVN version of Opensips 1.6.4 Hmm..that's a packaging bug :(I will take care of this. 2) The patch which I can use from SVN version I can apply only to rtpproxy from git. If I use rtpproxy from web site I cannot apply patch to it (there are some errors during process of patch). I will ask Razvan (the author of this work) to see if the patch can be ported to official rtpproxy release too (not as coding, but as functionality). In my case I use rtpproxy from git with applied patch from SVN version of Opensips (when I start rtpproxy I use such command /usr/local/rtpproxy/bin/rtpproxy -l 1.1.1.1 -s unix:/var/run/rtpproxy.sock -F -i -n tcp:1.1.1.1:2 -T 20 -W 60. As I understand without patch -W doesn`t work) and official release of Openspis 1.6.4 which I downloaded from web site (not from SVN) And this works ? Regards, Bogdan -Original Message- From: users-boun...@lists.opensips.org [mailto:users-boun...@lists.opensips.org] On Behalf Of Bogdan-Andrei Iancu Sent: Tuesday, December 28, 2010 1:31 PM To: OpenSIPS users mailling list Subject: Re: [OpenSIPS-Users] RTPProxy timeout notifications Hi Denis, Silly question, but have you applied to the official RTPproxy the patches that comes with the nathelper module ? Regards, Bogdan Denis Putyato wrote: Hello! During tests of new feature in rtpproxy I received such problem: “Dec 27 11:42:42 opensips /usr/local/opensips1.6.4/sbin/opensips[26496]: DBG:nathelper:timeout_listener_process: unknown rtpproxy – ignoring” And log for rtpproxy “Dec 28 07:43:37 opensips rtpproxy[28223]: INFO:handle_command: new session 6fe1-00bf-8e08-8065-0002a405c...@172.31.255.250, tag 6f008e65a4;1 requested, type strong Dec 28 07:43:37 opensips rtpproxy[28223]: INFO:handle_command: new session on a port 64922 created, tag 6f008e65a4;1 Dec 28 07:43:37 opensips rtpproxy[28223]: INFO:handle_command: setting timeout handler Dec 28 07:43:37 opensips rtpproxy[28223]: INFO:handle_command: pre-filling caller's address with 3.3.3.3:23066 Dec 28 07:43:37 opensips /usr/local/opensips1.6.4/sbin/opensips[28196]: ERROR:nathelper:force_rtp_proxy: Unable to parse body Dec 28 07:43:38 opensips rtpproxy[28223]: INFO:handle_command: lookup on ports 64922/4, session timer restarted Dec 28 07:43:38 opensips rtpproxy[28223]: INFO:handle_command: pre-filling callee's address with 2.2.2.2:18408 Dec 28 07:43:39 opensips rtpproxy[28223]: INFO:handle_command: lookup on ports 64922/4, session timer restarted Dec 28 07:44:07 opensips rtpproxy[28223]: INFO:process_rtp: session timeout Dec 28 07:44:07 opensips rtpproxy[28223]: INFO:remove_session: RTP stats: 1449 in from callee, 421 in from caller, 1870 relayed, 0 dropped Dec 28 07:44:07 opensips rtpproxy[28223]: INFO:remove_session: RTCP stats: 7 in from callee, 2 in from caller, 9 relayed, 0 dropped Dec 28 07:44:07 opensips rtpproxy[28223]: INFO:remove_session: session on ports 64922/4 is cleaned up Dec 28 07:44:07 opensips rtpproxy[28223]: ERR:do_timeout_notification: failed to send timeout notification: Broken pipe” Opensips 1.6.4 Latest rtpproxy from git with patch for RTPProxy timeout notifications The start string of rtpproxy: /usr/local/rtpproxy/bin/rtpproxy -l 1.1.1.1 -s unix:/var/run/rtpproxy.sock -F -i -n tcp:1.1.1.1:2 -T 20 -W 60 Opensips.cfg: … … modparam(nathelper, rtpproxy_sock, /var/run/rtpproxy.sock) modparam(nathelper, rtpp_notify_socket, tcp:1.1.1.1:2) … … rtpproxy_offer(con); …. rtpproxy_answer(con); … During voice session everything fine (bidirectional voice flow). Then I emulate LAN problem and after 20 s expire I received such message. Call is still active. Thank you for any help. ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users -- Bogdan-Andrei Iancu OpenSIPS Event - expo, conf, social, bootcamp 2 - 4 February 2011, ITExpo, Miami, USA www.voice-system.ro ___ Users mailing list Users@lists.opensips.org
[OpenSIPS-Users] TCP Sockets Phones De-Register and then Quickly Re-Register.
I am noticing a strange behavior on the phones. They are connecting over TCP; It seems like every 3 minutes they quickly lose registration and then re-register. I am not sure if it is because the phone is sending a register every 3 minutes and then opensips is closing the old socket and opening a new one or what? I dont have that much experience using TCP or how do troubleshoot this problem. Thanks. ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
[OpenSIPS-Users] OpenSipS 1.6 wont build with drouting module enabled
Hi, When trying to compile OpenSipS 1.6 trunk if the module drouting is enabled it just dies after compiling module domainpolicy. Any idea what would cause this ? Regards, Dovid___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Re: [OpenSIPS-Users] OpenSipS 1.6 wont build with drouting module enabled
Hello Dovid. Could you provide more information, for example the compilation log? Regards. Sergio G. On Tue, Dec 28, 2010 at 11:50 AM, Dovid Bender os-l...@dovid.net wrote: Hi, When trying to compile OpenSipS 1.6 trunk if the module drouting is enabled it just dies after compiling module domainpolicy. Any idea what would cause this ? Regards, Dovid ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users -- Sergio Gutiérrez ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
[OpenSIPS-Users] Opensips-mi-proxy error with xcap-diff
I am getting the following error from Opensips-mi-proxy when it receives an XMLRPC request from OpenXCAP Dec 23 17:17:59 Proxy01 opensips-mi-proxy[1095]: Got XMLRPC request from 173.XXX.XXX.111: pua_publish (sip:9xx221x...@i rock.com http://rock.com 3600 xcap-diff application/xcap-diff+xml . . ?xml version=1.0 encoding=UTF-8? Dec 23 17:17:59 Proxy01 opensips-mi-proxy[1095]: xcap-diff xmlns=urn:ietf:params:xml:ns:xcap-diff xcap-root=http:/ /xcap.ae.com/xcap-root http://xcap.ae.com/xcap-root Dec 23 17:17:59 Proxy01 opensips-mi-proxy[1095]: document new-etag=7a982bc95326868b3616893790f834ea sel=http://xca http://xca/ p.ae.com/xcap-root/resource-lists/users/9XX221XXX2/contacts-resource-list.xml http://p.ae.com/xcap-root/resource-lists/users/9XX221XXX2/contacts-resource-list.xml/http://p.ae.com/xcap-root/resource-lists/users/9XX221XXX2/contacts-resource-list.xml%3E%22/ Dec 23 17:17:59 Proxy01 opensips-mi-proxy[1095]: /xcap-diff Dec 23 17:17:59 Proxy01 opensips-mi-proxy[1095]: ) Dec 23 17:18:00 Proxy01 opensips-mi-proxy[1095]: Got XMLRPC request from 173.XXX.XXX.111: pua_publish (sip:9xx221x...@i rock.com http://rock.com 3600 xcap-diff application/xcap-diff+xml . . ?xml version=1.0 encoding=UTF-8? Dec 23 17:18:00 Proxy01 opensips-mi-proxy[1095]: xcap-diff xmlns=urn:ietf:params:xml:ns:xcap-diff xcap-root=http:/ /xcap.ae.com/xcap-root http://xcap.ae.com/xcap-root Dec 23 17:18:00 Proxy01 opensips-mi-proxy[1095]: document new-etag=51a606b1b08d72c9314039dcf092eeff sel=http://xca http://xca/ p.ae.com/xcap-root/resource-lists/users/9XX221XXX2/contacts-resource-list.xml http://p.ae.com/xcap-root/resource-lists/users/9XX221XXX2/contacts-resource-list.xml previous-etag=7a982b c95326868b3616893790f834ea/ Dec 23 17:18:00 Proxy01 opensips-mi-proxy[1095]: /xcap-diff Dec 23 17:18:00 Proxy01 opensips-mi-proxy[1095]: ) Dec 23 17:18:02 Proxy01 opensips-mi-proxy[1095]: error: Error while processing command pua_publish (sip:9xx221x...@iro ck.com http://ck.com 3600 xcap-diff application/xcap-diff+xml . . ?xml version=1.0 encoding=UTF-8? Dec 23 17:18:02 Proxy01 opensips-mi-proxy[1095]: error: xcap-diff xmlns=urn:ietf:params:xml:ns:xcap-diff xcap-root= http://xcap.ae.com/xcap-root; Dec 23 17:18:02 Proxy01 opensips-mi-proxy[1095]: error: document new-etag=7a982bc95326868b3616893790f834ea sel=htt p:// xcap.ae.com/xcap-root/resource-lists/users/9XX221XXX2/contacts-resource-list.xml http://xcap.ae.com/xcap-root/resource-lists/users/9XX221XXX2/contacts-resource-list.xml/http://xcap.ae.com/xcap-root/resource-lists/users/9XX221XXX2/contacts-resource-list.xml%3E%22/ Dec 23 17:18:02 Proxy01 opensips-mi-proxy[1095]: error: /xcap-diff Dec 23 17:18:02 Proxy01 opensips-mi-proxy[1095]: error: ): OpenSIPS command did timeout Dec 23 17:18:02 Proxy01 opensips-mi-proxy[1095]: Exception rendering: Dec 23 17:18:02 Proxy01 opensips-mi-proxy[1095]: Traceback (most recent call last): Dec 23 17:18:02 Proxy01 opensips-mi-proxy[1095]: File /usr/lib/python2.6/dist-packages/twisted/internet/defer.py, line 441, in _runCallbacks Dec 23 17:18:02 Proxy01 opensips-mi-proxy[1095]: self.result = callback(self.result, *args, **kw) Dec 23 17:18:02 Proxy01 opensips-mi-proxy[1095]: File /usr/lib/pymodules/python2.6/miproxy/proxy.py, line 88, in _ cbRender Dec 23 17:18:02 Proxy01 opensips-mi-proxy[1095]: code = int(code) Dec 23 17:18:02 Proxy01 opensips-mi-proxy[1095]: ValueError: invalid literal for int() with base 10: 'OpenSIPS' Dec 23 17:18:03 Proxy01 opensips-mi-proxy[1095]: error: Error while processing command pua_publish (sip:9xx221x...@iro ck.com http://ck.com 3600 xcap-diff application/xcap-diff+xml . . ?xml version=1.0 encoding=UTF-8? Dec 23 17:18:03 Proxy01 opensips-mi-proxy[1095]: error: xcap-diff xmlns=urn:ietf:params:xml:ns:xcap-diff xcap-root= http://xcap.ae.com/xcap-root; Dec 23 17:18:03 Proxy01 opensips-mi-proxy[1095]: error: document new-etag=51a606b1b08d72c9314039dcf092eeff sel=htt p:// xcap.ae.com/xcap-root/resource-lists/users/9XX221XXX2/contacts-resource-list.xml http://xcap.ae.com/xcap-root/resource-lists/users/9XX221XXX2/contacts-resource-list.xml previous-etag= 7a982bc95326868b3616893790f834ea/ Dec 23 17:18:03 Proxy01 opensips-mi-proxy[1095]: error: /xcap-diff Dec 23 17:18:03 Proxy01 opensips-mi-proxy[1095]: error: ): OpenSIPS command did timeout Dec 23 17:18:03 Proxy01 opensips-mi-proxy[1095]: Exception rendering: Dec 23 17:18:03 Proxy01 opensips-mi-proxy[1095]: Traceback (most recent call last): Dec 23 17:18:03 Proxy01 opensips-mi-proxy[1095]: File /usr/lib/python2.6/dist-packages/twisted/internet/defer.py, line 441, in _runCallbacks Dec 23 17:18:03 Proxy01 opensips-mi-proxy[1095]: self.result = callback(self.result, *args, **kw) Dec 23 17:18:03 Proxy01 opensips-mi-proxy[1095]: File /usr/lib/pymodules/python2.6/miproxy/proxy.py, line 88, in _ cbRender Dec 23 17:18:03 Proxy01 opensips-mi-proxy[1095]: code = int(code) Dec 23 17:18:03 Proxy01 opensips-mi-proxy[1095]: ValueError: invalid literal for int() with base 10:
[OpenSIPS-Users] b2b refer scenario
Hi. I'm trying to use b2b refer scenario http://www.opensips.org/Resources/B2buaTutorial#toc15 But I've got errors in the log: *** route: REFER request, call B2B(refer) DBG:core:parse_headers: flags= DBG:b2b_logic:b2bl_insert_new: new tuple [0xb60c1238]-[468.0] DBG:core:parse_headers: flags= ERROR:b2b_entities:b2b_new_dlg: Called b2b_init on a Cancel message ERROR:b2b_entities:server_new: failed to create new dialog structure entry ERROR:b2b_logic:b2b_process_scenario_init: failed to create new b2b server instance DBG:b2b_logic:b2bl_delete: Delete record [0xb60c1238]-[468.0], hash_index=[468], local_index=[0] *** route: REFER request, B2B(refer) called, exit I'm catching REFER in a loose_route section: if (has_totag()) { if (loose_route()) { if ( ($DLG_status != NULL) (!validate_dialog()) ) { xlog(*** !!! [ROUTE]: bad dialog); } else { if (is_method(REFER)) { xlog(*** route: REFER request, call B2B(refer)); b2b_init_request(refer); xlog(*** route: REFER request, B2B(refer) called, exit); exit; }; ... }; }; }; What I'm doing wrong? WBR, Anton Zagorskiy VoIP Developer, Oyster Telecom Phone.: +7 812 601-0666 Fax: +7 812 601-0593 a.zagors...@oyster-telecom.ru www.oyster-telecom.ru ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Re: [OpenSIPS-Users] opensips HA resource script (for Heartbeat)
2010/12/28 Bogdan-Andrei Iancu bog...@voice-system.ro: As far as I understand this will partially fix the problem, by addressing the errors reported by module init functions. The errors generated by the child init functions will not be caught by the parent process Hi bogdan, thanks for your response. If a worker fails to start when running the chil init function, doesn't the parent (main process) realize of it and exit? -- Iñaki Baz Castillo i...@aliax.net ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Re: [OpenSIPS-Users] b2b refer scenario
One thing that might be asked of you is what version of OpenSIPS are you running. I think there have been some updates that fixed some b2b issues. Also I believe that in order for you to use b2b the SIP message cannot have a ToTag. You have to use B2B like so if(is_method(INVITE) !(src_ip == OPENSIPS_IP) !has_totag() ) { { location(); b2b_init_request(refer); exit; } On Tue, Dec 28, 2010 at 11:20 AM, Anton Zagorskiy a.zagors...@oyster-telecom.ru wrote: Hi. I'm trying to use b2b refer scenario http://www.opensips.org/Resources/B2buaTutorial#toc15 But I've got errors in the log: *** route: REFER request, call B2B(refer) DBG:core:parse_headers: flags= DBG:b2b_logic:b2bl_insert_new: new tuple [0xb60c1238]-[468.0] DBG:core:parse_headers: flags= ERROR:b2b_entities:b2b_new_dlg: Called b2b_init on a Cancel message ERROR:b2b_entities:server_new: failed to create new dialog structure entry ERROR:b2b_logic:b2b_process_scenario_init: failed to create new b2b server instance DBG:b2b_logic:b2bl_delete: Delete record [0xb60c1238]-[468.0], hash_index=[468], local_index=[0] *** route: REFER request, B2B(refer) called, exit I'm catching REFER in a loose_route section: if (has_totag()) { if (loose_route()) { if ( ($DLG_status != NULL) (!validate_dialog()) ) { xlog(*** !!! [ROUTE]: bad dialog); } else { if (is_method(REFER)) { xlog(*** route: REFER request, call B2B(refer)); b2b_init_request(refer); xlog(*** route: REFER request, B2B(refer) called, exit); exit; }; ... }; }; }; What I'm doing wrong? WBR, Anton Zagorskiy VoIP Developer, Oyster Telecom Phone.: +7 812 601-0666 Fax: +7 812 601-0593 a.zagors...@oyster-telecom.ru www.oyster-telecom.ru ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users -- -- *--*--*--*--*--* Duane *--*--*--*--*--* -- ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Re: [OpenSIPS-Users] opensips HA resource script (for Heartbeat)
Iñaki Baz Castillo wrote: 2010/12/28 Bogdan-Andrei Iancu bog...@voice-system.ro: As far as I understand this will partially fix the problem, by addressing the errors reported by module init functions. The errors generated by the child init functions will not be caught by the parent process Hi bogdan, thanks for your response. If a worker fails to start when running the chil init function, doesn't the parent (main process) realize of it and exit? it is not about terminating, it is about the returned code. Let me give you an example: 1) parent process starts 2) demonize is start - daemon process started 3) parent process still running waiting for feedback from the daemon process 4) daemon process does all the core init, does init module, all with success 5) daemon process forks the worker processes (the children procs) 6) daemon process successfully did the job, so returns success 7) parent process receives the feedback from the daemon process, so it also ends with success 8) return code of parent process is OK 9) children procs do child_init - db stuff 10) on child proc fails the init - it terminates 11) daemon proc receivs the SIG_CHILD signal and triggers the shutdown 12) everything is shutdown in a clean way Result: return code was success, but opensips failed to start due a startup error. This is why I'm saying that you need to look further than the daemon proc, if you want to implement a proper startup sequence and return code. Regards, Bogdan -- Bogdan-Andrei Iancu OpenSIPS Event - expo, conf, social, bootcamp 2 - 4 February 2011, ITExpo, Miami, USA www.voice-system.ro ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Re: [OpenSIPS-Users] OpenSipS 1.6 wont build with drouting module enabled
Hi Dovid, drouting module is all the time compiled (by default it is included in compile list). Try to do : make proper exclude_modules= make all and it should work, Regards, Bogdan Dovid Bender wrote: Hi, When trying to compile OpenSipS 1.6 trunk if the module drouting is enabled it just dies after compiling module domainpolicy. Any idea what would cause this ? Regards, Dovid ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users -- Bogdan-Andrei Iancu OpenSIPS Event - expo, conf, social, bootcamp 2 - 4 February 2011, ITExpo, Miami, USA www.voice-system.ro ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Re: [OpenSIPS-Users] TCP Sockets Phones De-Register and then Quickly Re-Register.
Hi David, With TCP, there is no need to have the TCP connection up during the whole duration of the registration - it is perfectly normal for the TCP conn to be terminated after REGISTER request (by server or client side). For example, opensips has a timeout - for how long it should keep an unused TCP connection (see http://www.opensips.org/Resources/DocsCoreFcn16#toc73). If the UAC is behind NAT, it is a bit of different story, as the TCP conn must stay open - the server cannot open later a TCP conn behind NAT. For such cases see: http://www.opensips.org/html/docs/modules/1.6.x/registrar.html#id250051 Regards, Bogdan David J. wrote: I am noticing a strange behavior on the phones. They are connecting over TCP; It seems like every 3 minutes they quickly lose registration and then re-register. I am not sure if it is because the phone is sending a register every 3 minutes and then opensips is closing the old socket and opening a new one or what? I dont have that much experience using TCP or how do troubleshoot this problem. Thanks. ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users -- Bogdan-Andrei Iancu OpenSIPS Event - expo, conf, social, bootcamp 2 - 4 February 2011, ITExpo, Miami, USA www.voice-system.ro ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Re: [OpenSIPS-Users] opensips HA resource script (for Heartbeat)
2010/12/28 Bogdan-Andrei Iancu bog...@voice-system.ro: 1) parent process starts 2) demonize is start - daemon process started 3) parent process still running waiting for feedback from the daemon process 4) daemon process does all the core init, does init module, all with success 5) daemon process forks the worker processes (the children procs) 6) daemon process successfully did the job, so returns success 7) parent process receives the feedback from the daemon process, so it also ends with success 8) return code of parent process is OK 9) children procs do child_init - db stuff 10) on child proc fails the init - it terminates This step 10 could occur due to wrong user:passwd in a DB connection, am I right? 11) daemon proc receivs the SIG_CHILD signal and triggers the shutdown 12) everything is shutdown in a clean way Result: return code was success, but opensips failed to start due a startup error. This is why I'm saying that you need to look further than the daemon proc, if you want to implement a proper startup sequence and return code. Ok, I understand. However I think (not sure now) that a fail in step 10 still makes the daemon (so also parent process) to properly return with failure code, but I must check it. Best regards. -- Iñaki Baz Castillo i...@aliax.net ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Re: [OpenSIPS-Users] opensips HA resource script (for Heartbeat)
Iñaki Baz Castillo wrote: 2010/12/28 Bogdan-Andrei Iancu bog...@voice-system.ro: 1) parent process starts 2) demonize is start - daemon process started 3) parent process still running waiting for feedback from the daemon process 4) daemon process does all the core init, does init module, all with success 5) daemon process forks the worker processes (the children procs) 6) daemon process successfully did the job, so returns success 7) parent process receives the feedback from the daemon process, so it also ends with success 8) return code of parent process is OK 9) children procs do child_init - db stuff 10) on child proc fails the init - it terminates This step 10 could occur due to wrong user:passwd in a DB connection, am I right? not only - there are module which do load data in child_init (and not mod_init), like usrloc or drouting - so the failure may be cause by mem, bogus data, DB, DNS, etceven configuration errors... 11) daemon proc receivs the SIG_CHILD signal and triggers the shutdown 12) everything is shutdown in a clean way Result: return code was success, but opensips failed to start due a startup error. This is why I'm saying that you need to look further than the daemon proc, if you want to implement a proper startup sequence and return code. Ok, I understand. However I think (not sure now) that a fail in step 10 still makes the daemon (so also parent process) to properly return with failure code, but I must check it. I do not think, I'm pretty sure :) : there is the same process relation between parent / daemon and between daemon / worker ; just double checked the code. The daemon process starts the rest of the processes (timer, workers, TCP, module procs) without getting any feedback on the init success of its child processes. Regards, Bogdan -- Bogdan-Andrei Iancu OpenSIPS Event - expo, conf, social, bootcamp 2 - 4 February 2011, ITExpo, Miami, USA www.voice-system.ro ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Re: [OpenSIPS-Users] opensips HA resource script (for Heartbeat)
2010/12/28 Bogdan-Andrei Iancu bog...@voice-system.ro: I do not think, I'm pretty sure :) : there is the same process relation between parent / daemon and between daemon / worker ; just double checked the code. The daemon process starts the rest of the processes (timer, workers, TCP, module procs) without getting any feedback on the init success of its child processes. Ok :) -- Iñaki Baz Castillo i...@aliax.net ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Re: [OpenSIPS-Users] b2b refer scenario
Hi Duane. I'm using 1.6.4 revision 7621. I have Linksys SPA 921s. They send REFER request with To-Tag, but you said B2B cann't be used with To-Tag. How to use B2B in my case? From: users-boun...@lists.opensips.org [mailto:users-boun...@lists.opensips.org] On Behalf Of Duane Larson Sent: Tuesday, December 28, 2010 8:36 PM To: OpenSIPS users mailling list Subject: Re: [OpenSIPS-Users] b2b refer scenario One thing that might be asked of you is what version of OpenSIPS are you running. I think there have been some updates that fixed some b2b issues. Also I believe that in order for you to use b2b the SIP message cannot have a ToTag. You have to use B2B like so if(is_method(INVITE) !(src_ip == OPENSIPS_IP) !has_totag() ) { { location(); b2b_init_request(refer); exit; } On Tue, Dec 28, 2010 at 11:20 AM, Anton Zagorskiy a.zagors...@oyster-telecom.ru wrote: Hi. I'm trying to use b2b refer scenario http://www.opensips.org/Resources/B2buaTutorial#toc15 But I've got errors in the log: *** route: REFER request, call B2B(refer) DBG:core:parse_headers: flags= DBG:b2b_logic:b2bl_insert_new: new tuple [0xb60c1238]-[468.0] DBG:core:parse_headers: flags= ERROR:b2b_entities:b2b_new_dlg: Called b2b_init on a Cancel message ERROR:b2b_entities:server_new: failed to create new dialog structure entry ERROR:b2b_logic:b2b_process_scenario_init: failed to create new b2b server instance DBG:b2b_logic:b2bl_delete: Delete record [0xb60c1238]-[468.0], hash_index=[468], local_index=[0] *** route: REFER request, B2B(refer) called, exit I'm catching REFER in a loose_route section: if (has_totag()) { if (loose_route()) { if ( ($DLG_status != NULL) (!validate_dialog()) ) { xlog(*** !!! [ROUTE]: bad dialog); } else { if (is_method(REFER)) { xlog(*** route: REFER request, call B2B(refer)); b2b_init_request(refer); xlog(*** route: REFER request, B2B(refer) called, exit); exit; }; ... }; }; }; What I'm doing wrong? WBR, Anton Zagorskiy VoIP Developer, Oyster Telecom Phone.: +7 812 601-0666 Fax: +7 812 601-0593 a.zagors...@oyster-telecom.ru www.oyster-telecom.ru ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users -- -- *--*--*--*--*--* Duane *--*--*--*--*--* -- ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users