Re: [OpenSIPS-Users] Upgrade CDRTool from 6.9.9 to 7.0.X
Adrian After upgrade to 7.X iam not able to see missed calls and single ring calls i can only success of the calls any advice Ram On Sat, Jan 23, 2010 at 8:17 PM, j.rom...@unitelexperts.com wrote: Adrian, Thanks a lot. Juan The changelog explains the diferences and what you need to do to upgrade. http://download.ag-projects.com/CDRTool/changelog Adrian On Jan 22, 2010, at 11:52 AM, Juan wrote: Hi everybody, Are there any instructions to upgrade the CDRTool 6.9.9 to the last version 7.0.X? I don't see details about this in the docs directory. Many thanks, Juan ___ 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 ___ 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] Upgrade CDRTool from 6.9.9 to 7.0.X
Are the radius records generated at all? Or they are in the database but not displayed? Adrian On Jan 25, 2010, at 10:13 AM, ram wrote: Adrian After upgrade to 7.X iam not able to see missed calls and single ring calls i can only success of the calls any advice Ram On Sat, Jan 23, 2010 at 8:17 PM, j.rom...@unitelexperts.com wrote: Adrian, Thanks a lot. Juan The changelog explains the diferences and what you need to do to upgrade. http://download.ag-projects.com/CDRTool/changelog Adrian On Jan 22, 2010, at 11:52 AM, Juan wrote: Hi everybody, Are there any instructions to upgrade the CDRTool 6.9.9 to the last version 7.0.X? I don't see details about this in the docs directory. Many thanks, Juan ___ 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 ___ 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 ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Re: [OpenSIPS-Users] Upgrade CDRTool from 6.9.9 to 7.0.X
i can see in acc table but i do not see the same in radacct table Ram On Mon, Jan 25, 2010 at 2:18 AM, Adrian Georgescu a...@ag-projects.comwrote: Are the radius records generated at all? Or they are in the database but not displayed? Adrian On Jan 25, 2010, at 10:13 AM, ram wrote: Adrian After upgrade to 7.X iam not able to see missed calls and single ring calls i can only success of the calls any advice Ram On Sat, Jan 23, 2010 at 8:17 PM, j.rom...@unitelexperts.com wrote: Adrian, Thanks a lot. Juan The changelog explains the diferences and what you need to do to upgrade. http://download.ag-projects.com/CDRTool/changelog Adrian On Jan 22, 2010, at 11:52 AM, Juan wrote: Hi everybody, Are there any instructions to upgrade the CDRTool 6.9.9 to the last version 7.0.X? I don't see details about this in the docs directory. Many thanks, Juan ___ 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 ___ 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 ___ 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] Upgrade CDRTool from 6.9.9 to 7.0.X
So you must verify your OpenSIPS and Radius configuration, it has nothing to do with CDRTool. Adrian On Jan 25, 2010, at 10:28 AM, ram wrote: i can see in acc table but i do not see the same in radacct table Ram On Mon, Jan 25, 2010 at 2:18 AM, Adrian Georgescu a...@ag- projects.com wrote: Are the radius records generated at all? Or they are in the database but not displayed? Adrian On Jan 25, 2010, at 10:13 AM, ram wrote: Adrian After upgrade to 7.X iam not able to see missed calls and single ring calls i can only success of the calls any advice Ram On Sat, Jan 23, 2010 at 8:17 PM, j.rom...@unitelexperts.com wrote: Adrian, Thanks a lot. Juan The changelog explains the diferences and what you need to do to upgrade. http://download.ag-projects.com/CDRTool/changelog Adrian On Jan 22, 2010, at 11:52 AM, Juan wrote: Hi everybody, Are there any instructions to upgrade the CDRTool 6.9.9 to the last version 7.0.X? I don't see details about this in the docs directory. Many thanks, Juan ___ 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 ___ 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 ___ 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 ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Re: [OpenSIPS-Users] Upgrade CDRTool from 6.9.9 to 7.0.X
the config not changed 6.9 i can see the miss call records but 7.X iam not able to view just upgraded as per the document 6.9 to 7.0 ram On Mon, Jan 25, 2010 at 2:48 AM, Adrian Georgescu a...@ag-projects.comwrote: So you must verify your OpenSIPS and Radius configuration, it has nothing to do with CDRTool. Adrian On Jan 25, 2010, at 10:28 AM, ram wrote: i can see in acc table but i do not see the same in radacct table Ram On Mon, Jan 25, 2010 at 2:18 AM, Adrian Georgescu a...@ag-projects.comwrote: Are the radius records generated at all? Or they are in the database but not displayed? Adrian On Jan 25, 2010, at 10:13 AM, ram wrote: Adrian After upgrade to 7.X iam not able to see missed calls and single ring calls i can only success of the calls any advice Ram On Sat, Jan 23, 2010 at 8:17 PM, j.rom...@unitelexperts.com wrote: Adrian, Thanks a lot. Juan The changelog explains the diferences and what you need to do to upgrade. http://download.ag-projects.com/CDRTool/changelog Adrian On Jan 22, 2010, at 11:52 AM, Juan wrote: Hi everybody, Are there any instructions to upgrade the CDRTool 6.9.9 to the last version 7.0.X? I don't see details about this in the docs directory. Many thanks, Juan ___ 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 ___ 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 ___ 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 ___ 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] need help on dialplan module
Hi Ha, The match_exp regexp is used only for matching the rule (against the input), to see if this rule is to be used - the output has nothing to do with this regexp. The regexp is generated based on subst_exp and repl_exp - these two fields acts as a perl / sed substitution ops like s/subst_exp/repl_exp Regards, Bogdan ha do wrote: Hi Bogdan i refer : String translation (regexp detection, subst translation) function the repl_exp = a_value\1 the dialplan will use the a_value + subst_exp as the output if the match_exp=true the repl_exp = a_value\2 the dialplan will use the columm a_value + (input string - subst_exp) as the output if the match_exp=true it is right? Thank you Ha` --- On *Fri, 1/22/10, Bogdan-Andrei Iancu /bog...@voice-system.ro/* wrote: From: Bogdan-Andrei Iancu bog...@voice-system.ro Subject: Re: [OpenSIPS-Users] need help on dialplan module To: OpenSIPS users mailling list users@lists.opensips.org Date: Friday, January 22, 2010, 9:55 AM Hi Ha, The modules user PERL like substitution. A fast google gives some docs on this: http://www.anaesthetist.com/mnm/perl/Findex.htm#regex.htm Regards, Bogdan ha do wrote: Hi all could you please need me to understand the translation on dialplan module; mysql select * from dialplan; ++--++--+---+---++--+---+ | id | dpid | pr | match_op | match_exp | match_len | subst_exp | repl_exp | attrs | ++--++--+---+---++--+---+ | 73 | 15 | 0 |1 | ^000 | 0 | ^(0)(.+) | \2 | | | 78 | 16 | 0 |1 | 000 | 0 | (000)(.+) | 8\2 | | | 76 | 14 | 0 |1 | ^000 | 0 | ^(000)(.+) | 8\2 | | | 75 | 15 | 0 |1 | ^55 | 0 | ^(55)(.+) | \2 | | ++--++--+---+---++--+---+ [r...@localhost ~]# opensipsctl fifo dp_translate 14 00055980007 Output:: 855980007 [r...@localhost ~]# opensipsctl fifo dp_translate 15 0007 Output:: 007 [r...@localhost ~]# opensipsctl fifo dp_translate 15 55980007 Output:: 980007 [r...@localhost ~]# opensipsctl fifo dp_translate 16 55980007 Output:: 87 repl_exp : sometimes has value \2 or \1 - what does it mean?? does it have other value? what does the ^ mean?? is there more special character?? where do i find more docs for translation rule Thank you Ha` ___ Users mailing list Users@lists.opensips.org /mc/compose?to=us...@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users -- Bogdan-Andrei Iancu www.voice-system.ro ___ Users mailing list Users@lists.opensips.org /mc/compose?to=us...@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 -- Bogdan-Andrei Iancu www.voice-system.ro ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Re: [OpenSIPS-Users] INVITE not forwarded, call fails
Hi Lorenzo, When comes to NAT traversal, you can do it in two ways: 1) on the client (UAC) side - the client is doing the signalling in such a way that the server sees the traffic as coming from a public IP. This is actually STUN approach - the server has 0 capabilities in handling NAT. 2) on the server side - the client has 0 capabilities in handling NAT traversal and the whole task must be done by server. In this case you need to configure opensips to do the nat traversal - to correct both signalling and RTP for coping with NAt. My understanding is you tried the first approach, but it fails due poor STUN/NAT working. So, you what to move into 2), right ? IF so, take a look at the nathelper module. Regards, Bogdan lorenzo wrote: On 22/01/10 18:55, Bogdan-Andrei Iancu wrote: Hi Lorenzo, rport stuff applies to VIA port and it used only for sending back the replies (to a request). Your problem is the the Contact URI (the bogus port) which has nothing to do with rport. perfect, thanks for clarifying this! but if the problem is a wrong port in the Contact uri, can't $source_uri fix the issue? (or fix_contact() maybe) do they update/write to the user location database? i've been experimenting with both, in the main route, but they don't seem to work, i.e. the ul always shows the wrong contact port.. Regards, Bogdan thanks, Lorenzo ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users -- Bogdan-Andrei Iancu www.voice-system.ro ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Re: [OpenSIPS-Users] Failed INVITE tcp_send to UDP UACs
opensipsl...@encambio.com wrote: Hello Bogdan, An mar., déc 22, 2009, Bogdan-Andrei Iancu schrieb: opensipsl...@encambio.com wrote: But this is maybe a clue. It would seem that something in TLS writing has changed between these two versions, maybe fundementally? 1.3 was doing infinite loop (for write and read), leading sometime to blocking. That was a painful part of 1.3, so good that the counter is there now. I guess you're saying that the same TLS problems existed in 1.3 as well, but they were masked by retries (maybe thousands.) yes, that is correct. Can it be that when the internal OpenSIPS TCP lifetime counter is set to the registration interval using the tcp_persistent_flag that this counter is used even when the registration forcefully expires? What I mean by forcefully is: Some IP phones don't wait for a registration period to time out. Instead they wait for 1/2 of the expiry period and then send a new REGISTER with a header 'Expires: 0' to force the registration to timeout. Then they immediately send a new REGISTER with a normal expiry value to obtain a new registration. ...so if an expiry time is 10 minutes, after only 5 minutes the UAC invalidates the registration and makes a new one. I'm wondering if OpenSIPS tries opening TCP connections using the value of 10 minutes with a UAC which is no longer in the location table because the AOR was removed (due to the principle described above.) Possible? What you suggest is that opensips originally intends to keep both registration and TCP connection for 10 mins, but the registration is removed after 5 mins while the connection is still alive for the next 5 more mins ? This is possible, but I see no harm. If the client still wants to use the old conn, it will be ok if opensips re-uses the old connection. If not, the client will close it and opensips will not use it any more. Regards, Bogdan -- Bogdan-Andrei Iancu www.voice-system.ro ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Re: [OpenSIPS-Users] Unsuccessfull upgrade from 1.4.5 to 1.6.1 (RR module)
Yes, with 1.4 works because that version does not load the content of domain table to use it for is the address pointing to me? test. Regards, Bogdan Oleg Burlacu wrote: Thank you Bogdan! The GW IP was in the domain table. Once deleted - all is ok. Interesting fact - the OpenSips 1.4 works ok even the gw ip is in the domain table. Best regards, Oleg Burlacu On Fri, Jan 22, 2010 at 7:06 PM, Bogdan-Andrei Iancu bog...@voice-system.ro mailto:bog...@voice-system.ro wrote: Hi Oleg, The problem seams to be around the loose_route() part - after the loose_route, the ACK is not sent to the GW, but it loop on the proxy. That is a typically behaviour when you misconfigure opensips and opensips believes that the GW IP is one of its own IPs. Is the GW IP added as alias in the script? or in the domain table? Regards, Bogdan Oleg Burlacu wrote: Hi, I'm running a statefull proxy that in most cases need to relay the calls to a PSTN gateway. After the migration to the Opensips 1.6.1, there is a problem with compatibility / RR module and the gateway (Cisco AS5300). Opensips does not relay 'correctly' (in my case) the ACK messages. The Cisco gateway do not receive ACKs and hangup the call after a timeout. The configuration script is developed on the sipwise template, but it works perfectly in 1.4 version of Opensips. When debugging I see each time more and more headers in ACK packets Record-Route: sip:xx.yy.56.226;lr=on;ftag=4a734ab13a9 Record-Route: sip:xx.yy.56.226;lr=on;ftag=4a734ab13a9 Record-Route: sip:xx.yy.56.226;lr=on;ftag=4a734ab13a9 Record-Route: sip:xx.yy.56.226;lr=on;ftag=4a734ab13a9 Via: SIP/2.0/UDP xx.yy.56.226;branch=z9hG4bKa636.94cf333.2 Via: SIP/2.0/UDP xx.yy.56.226;branch=z9hG4bKa636.94cf333.2 Via: SIP/2.0/UDP xx.yy.56.226;branch=z9hG4bKa636.94cf333.2 Via: SIP/2.0/UDP xx.yy.56.226;branch=z9hG4bKa636.94cf333.2 Via: SIP/2.0/UDP xx.yy.17.20;branch=z9hG4bK591c111423e34b43aea64e671405 When disabling the record_route(), and messages go from sip client directly to the gateway - all in ok. When communicating between 2 sip clients on the same proxy - the messages are relayed correctly. What can be the solution? The entire message log: U xx.yy.17.20:5060 - xx.yy.56.226:5060 INVITE sip:987...@xx.yy.56.226 SIP/2.0. Via: SIP/2.0/UDP xx.yy.17.20;branch=z9hG4bK591c111426464b44616423ea16ed. From: unknown sip:123...@xx.yy.56.226;tag=152937654c2b. To: sip:987...@xx.yy.56.226. Contact: sip:123...@xx.yy.17.20. Call-ID: D17BF0696DC546A7B436401CD27774720x591c1114. CSeq: 1 INVITE. Max-Forwards: 70. User-Agent: SJphone/1.65.377a (SJ Labs). U xx.yy.56.226:5060 - xx.yy.17.20:5060 SIP/2.0 100 Trying. Via: SIP/2.0/UDP xx.yy.17.20;branch=z9hG4bK591c111426464b44616423ea16ed. From: unknown sip:123...@xx.yy.56.226;tag=152937654c2b. To: sip:987...@xx.yy.56.226. Call-ID: D17BF0696DC546A7B436401CD27774720x591c1114. CSeq: 1 INVITE. U xx.yy.56.226:5060 - xx.yy.17.20:5060 SIP/2.0 407 Proxy Authentication Required. Via: SIP/2.0/UDP xx.yy.17.20;branch=z9hG4bK591c111426464b44616423ea16ed. From: unknown sip:123...@xx.yy.56.226;tag=152937654c2b. To: sip:987...@xx.yy.56.226;tag=c97b4d1cb1f3d0da549e06a8d482ef63.8548. Call-ID: D17BF0696DC546A7B436401CD27774720x591c1114. CSeq: 1 INVITE. U xx.yy.17.20:5060 - xx.yy.56.226:5060 ACK sip:987...@xx.yy.56.226 SIP/2.0. Via: SIP/2.0/UDP xx.yy.17.20;branch=z9hG4bK591c111426464b44616423ea16ed. From: unknown sip:123...@xx.yy.56.226;tag=152937654c2b. To: sip:987...@xx.yy.56.226;tag=c97b4d1cb1f3d0da549e06a8d482ef63.8548. Call-ID: D17BF0696DC546A7B436401CD27774720x591c1114. CSeq: 1 ACK. Max-Forwards: 70. User-Agent: SJphone/1.65.377a (SJ Labs). Content-Length: 0. U xx.yy.17.20:5060 - xx.yy.56.226:5060 INVITE sip:987...@xx.yy.56.226 SIP/2.0. Via: SIP/2.0/UDP xx.yy.17.20;branch=z9hG4bK591c111426474b446164164716f0. From: unknown sip:123...@xx.yy.56.226;tag=152937654c2b. To: sip:987...@xx.yy.56.226. Contact: sip:123...@xx.yy.17.20. Call-ID: D17BF0696DC546A7B436401CD27774720x591c1114. CSeq: 2 INVITE. Max-Forwards: 70. User-Agent: SJphone/1.65.377a (SJ Labs). Content-Length: 362. Content-Type: application/sdp. Supported: replaces,norefersub,timer. Proxy-Authorization: Digest
[OpenSIPS-Users] Problem with mmgeoip.so
Hi there. I tried to use mmgeoip.so with configuration from example opensips 1.6.1 loadmodule mmgeoip.so modparam(mmgeoip, mmgeoip_city_db_path,/usr/share/GeoIP/GeoLiteCity.dat) ... if(mmg_lookup(lon:lat,$si,$avp(lat_lon))) { xlog(L_INFO,Source IP latitude:$(avp(lat_lon)[0])\n); xlog(L_INFO,Source IP longitude:$(avp(lat_lon)[1])\n); }; ls -la /usr/share/GeoIP/GeoLiteCity.dat -rw-r--r-- 1 root root 28543655 2010-01-25 11:15 /usr/share/GeoIP/GeoLiteCity.dat I got some errors: Jan 25 11:44:08 [10466] CRITICAL:core:yyerror: parse error in config file, line 300, column 26-43: syntax error Jan 25 11:44:08 [10466] CRITICAL:core:yyerror: parse error in config file, line 300, column 43-44: bad arguments for command mmg_lookup What is wrong? -- WBR, Leonid Nasedkin ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Re: [OpenSIPS-Users] Private IP in registered AOR causing failure
Hello Bogdan, An ven., janv 22, 2010, Bogdan-Andrei Iancu schrieb: opensipsl...@encambio.com wrote: An jeu., janv 21, 2010, opensipsl...@encambio.com schrieb: An mer., janv 20, 2010, Bogdan-Andrei Iancu schrieb: opensipsl...@encambio.com wrote: After running a socket listener on 192.168.0.31 on the OpenSIPS host: $ socat TCP4-LISTEN:2310,bind=192.168.0.31,reuseaddr - SUBSCRIBE sip:mylogin-os...@192.168.0.31:2310;transport=tls;line=2acy67zm SIP/2.0 Via: SIP/2.0/TCP 86.90.39.44;branch=G4z9hb82dK8.f144.0 To: sip:mylogin-os...@name.host.tld;tag=ty6sjh9iz9 From: sip:mylogin-os...@name.host.tld;tag=6c9d4319c74d756e6b696-baa1 CSeq: 11 SUBSCRIBE Call-ID: b1c04118-8...@86.90.39.44 Content-Length: 0 User-Agent: OpenSIPS (1.6.1-tls) Max-Forwards: 70 Event: dialog;sla Contact: sip:prese...@name.host.tld Expires: 610 I'm trying to implement presence by using the presence, presence_xml, pua, and pua_bla modules. So it seems that one of these modules (see event dialog;sla) is getting the contact from the locations table (in AAA on our server) and ignoring the Received header. OpenSIPS replies to messages from UACs such as INVITE and CANCEL properly, and opens connections to the IP in Received. This problem is limited to the SUBSCRIBES sent from one of the presence modules. ...and similar SUBSCRIBE messages (sent from one of the presence modules) are not having this problem. They are almost the same as the one above, but simply don't have a to tag. So you have problems with a SUBSCRIBE that is internally generated by one of the presence modules? It is not a proxied request, right? Problem I know I have a problem because tcpdump shows that OpenSIPS is trying to reach a private IP address across the Internet. Workaround It seems that one of the presence modules is responsible for that, because when I remove bla_handle_notify() and bla_set_flag() from the route script, then the attempted private IP connections stop. Proxied request ...and because I see no SUBSCRIBE (event dialog;sla) messages coming from all the connected UAs (in their logs), it is quite clear that some presence module of OpenSIPS is creating the SUBSCRIBEs. Guesses At first I was sure it was the pua_bla, but after looking at the code I see that pua_bla uses other presence modules (pua, presence, presence_xml?) So it could be that another one is constructing or sending the SUBSCRIBE without observing the 'Received' header, and thus using a private IP instead. Greetings, Brian ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
[OpenSIPS-Users] siptrace with microseconds accuracy
Hit there, I'm thinking of implementing micorseconds accuracy for siptrace log. Any advice to kep it clean as possible? Thought of using gettimeofday() function. Best regards, Josip ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Re: [OpenSIPS-Users] Problem with mmgeoip.so
Hi Leonid, Use quotes for 2nd and 3rd parameters of the function - f(mmg_lookup(lon:lat,$si,$avp(lat_lon))) { Regards, Bogdan Леонид Наседкин wrote: Hi there. I tried to use mmgeoip.so with configuration from example opensips 1.6.1 loadmodule mmgeoip.so modparam(mmgeoip, mmgeoip_city_db_path,/usr/share/GeoIP/GeoLiteCity.dat) ... if(mmg_lookup(lon:lat,$si,$avp(lat_lon))) { xlog(L_INFO,Source IP latitude:$(avp(lat_lon)[0])\n); xlog(L_INFO,Source IP longitude:$(avp(lat_lon)[1])\n); }; ls -la /usr/share/GeoIP/GeoLiteCity.dat -rw-r--r-- 1 root root 28543655 2010-01-25 11:15 /usr/share/GeoIP/GeoLiteCity.dat I got some errors: Jan 25 11:44:08 [10466] CRITICAL:core:yyerror: parse error in config file, line 300, column 26-43: syntax error Jan 25 11:44:08 [10466] CRITICAL:core:yyerror: parse error in config file, line 300, column 43-44: bad arguments for command mmg_lookup What is wrong? -- WBR, Leonid Nasedkin ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users -- Bogdan-Andrei Iancu www.voice-system.ro ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Re: [OpenSIPS-Users] siptrace with microseconds accuracy
Hi Josip, You need to change the code to make the siptrace module to insert in table a new field, the microseconds (tv_usec field from gettimeofday() ). With pure scripting is not possible. Regards, Bogdan Josip Djuricic wrote: Hit there, I'm thinking of implementing micorseconds accuracy for siptrace log. Any advice to kep it clean as possible? Thought of using gettimeofday() function. Best regards, Josip ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users -- Bogdan-Andrei Iancu www.voice-system.ro ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
[OpenSIPS-Users] Experimenting with B2b modules
Hi All, I have been trying to do some experiments with B2b modules in Opensips. What I am trying to do is create another OpenSips instance which will only act as Topology Hiding Server in front of my proxy. So calls processed from my proxy will go to the B2b Opensips instance, the B2b instance will extract a header which will contain the destination domain and route the call to that domain in B2b mode (Is this doable?). First issue: I get these errors on loading the parameters: parameter cleanup_period not found in module b2b_logic parameter custom_headers not found in module b2b_logic I have compiled Opensips 1.6.1 from source in Debian. Second Issue: I commented these parameters and tried running opensips but ran into Segfault. Snippet of my cfg file: loadmodule b2b_entities.so modparam(b2b_entities, server_address, sip:b2...@opensips.orgsip%3ab2...@opensips.org ) loadmodule b2b_logic.so #modparam(b2b_logic, cleanup_period, 60) #modparam(b2b_logic, custom_headers, Status) route { if(method==INVITE) { $rd = $hdr(Dest); b2b_init_request(top hiding); exit; } } Can i find few more examples somewhere of using the B2B modules in opensips so that i can start thinking of how do I integrate these features into my current setup !! Any help is very much appreciated as always. Thanks, --- Jayesh ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Re: [OpenSIPS-Users] sched_yield()
Hi Alex, A wild guess is that the bootleneck was not actually because of the opensips memory manager, but because of the locking system - the default locking system is using a user-space locking based on tricks in assembler - like synchronization at mem cell location (volatile variables). So, I would guess the locking is the one killing the memory (on VM) and you noticed only the side effect - the memory manager where locking is very intensively used. Once you removed the need of sync for mem (with one proc), the system started to act normally. An interesting experiment will be to set back the mem balloon on VM and change the locking implementation (use -DUSE_PTHREAD_MUTEX in Makefile.defs ) Regards, Bogdan Alex Massover wrote: Hi! I use dialog to store/retrieve variables, but without profiling. Looks like I found the problem - VMware has a memory balloon, it allows overcommiting physical memory to virtual machines (provided that not all guests need all the memory all the time). Usually it behaves OK, but has a dramatic performance effect on OpenSIPS. Probably the memory balloon is aware of how system memory management works but unaware of OpenSIPS internal memory manager. After removing memory balloon driver no hangs anymore with 4/8 children. But single working child worked well even before removing the balloon (and I'm on 4-way SMP)! Looks like there's no rule how many children to configure, it depends on modules in-use, memory speed, cpu speed and so on. Only stress test for each concrete system gives an answer. Hope the new architecture will take care of such issues as well :) -- Best Regards, Alex Massover VoIP RD TL Jajah Inc. -Original Message- From: users-boun...@lists.opensips.org [mailto:users- boun...@lists.opensips.org] On Behalf Of Bogdan-Andrei Iancu Sent: Friday, January 22, 2010 7:43 PM To: OpenSIPS users mailling list Subject: Re: [OpenSIPS-Users] sched_yield() Hi Alex, Bug was fixed - update from SVN. Regarding your observation onforking versus no-forking - in some cases (when not doing any blocking ops), a single proc may be faster that multiple procs on a single core machine - because the CPU power is the same and maximum used (no blocking), but in forking mode you have the overhead of proc switching and the loocking/synchronizing dead- times. Regards, Bogdan Alex Massover wrote: Hi, Unfortunately 'fifo get_statistics' crashes opensips, I opened a bug. But no chance that 1G is not enough, only about 400M is used for all linux processes: Mem: 3115120k total, 398360k used, 2716760k free, 536k buffers Maybe sched_yield() just cause problems on 2.3.62 or on vmware or on SMP? I'm trying now with fork=yes and children=1. If I have only one working child, does it suppose to lock and shed_yeild() itself from any reason? Meanwhile with single child OpenSIPS easily handles 4K of concurrent calls at 15cps, load average is 0.00 (!) and CPU is about 96% idle. I wonder if single working child also hangs. -- Best Regards, Alex Massover VoIP RD TL Jajah Inc. -Original Message- From: users-boun...@lists.opensips.org [mailto:users- boun...@lists.opensips.org] On Behalf Of Andrei Dragus Sent: Friday, January 22, 2010 1:17 PM To: OpenSIPS users mailling list Subject: Re: [OpenSIPS-Users] sched_yield() Hi, The new f_malloc will not do anything extra when compared to the old one until memory usage goes way up. I've added a warning in mem/f_malloc.c so you can see when defrag starts. If you get this warning then it is clear that the problem is from high memory usage. 1 GB for 4k calls seems a lot ( 250k per call). You can try to use opensipsctl fifo get_statistics shmem: and see what the memory usage is for diferent number of concurrent calls ( 1k,2k,3k,4k), and if indeed the memory usage is that high we should investigate the cause. Alex Massover wrote: Hi, Now shared memory is 1G (-m 1024), and all memory is dedicated to the virtual machine (it was shared till now). But it still happens, just not so often. I originate the calls for this stress test in Asterisk with the same resources and looks like Asterisk performs much better than OpenSIPS. How can it be? In my stress OpenSIPS does no blocking/slow requests. And it's just 4K concurrent calls, each one is 2-3 min. Maybe OpenSIPS does too much low level memory management and virtual machine is not suitable for it (despite that Asterisk runs well over VMware)? I'm not sure but I have a feeling that 1.4 performed better. What can cause performance degradation in 1.6? Storing vars on dialog, new malloc()? gdb) bt #0 0xb78ad424 in
Re: [OpenSIPS-Users] sched_yield()
Hi, I also think that locking-busy wait-sched_yield() is problematic by itself. I'm not a scheduling specialist, but looks like this mechanism do not allow utilizing the full power of modern n-way SMP machines. Actually I did the experiment with pthread mutexes, Andrei also suggested it. But the performance was even worse than assembler locks. -- Best Regards, Alex Massover VoIP RD TL Jajah Inc. -Original Message- From: users-boun...@lists.opensips.org [mailto:users- boun...@lists.opensips.org] On Behalf Of Bogdan-Andrei Iancu Sent: Monday, January 25, 2010 4:03 PM To: OpenSIPS users mailling list Subject: Re: [OpenSIPS-Users] sched_yield() Hi Alex, A wild guess is that the bootleneck was not actually because of the opensips memory manager, but because of the locking system - the default locking system is using a user-space locking based on tricks in assembler - like synchronization at mem cell location (volatile variables). So, I would guess the locking is the one killing the memory (on VM) and you noticed only the side effect - the memory manager where locking is very intensively used. Once you removed the need of sync for mem (with one proc), the system started to act normally. An interesting experiment will be to set back the mem balloon on VM and change the locking implementation (use -DUSE_PTHREAD_MUTEX in Makefile.defs ) Regards, Bogdan Alex Massover wrote: Hi! I use dialog to store/retrieve variables, but without profiling. Looks like I found the problem - VMware has a memory balloon, it allows overcommiting physical memory to virtual machines (provided that not all guests need all the memory all the time). Usually it behaves OK, but has a dramatic performance effect on OpenSIPS. Probably the memory balloon is aware of how system memory management works but unaware of OpenSIPS internal memory manager. After removing memory balloon driver no hangs anymore with 4/8 children. But single working child worked well even before removing the balloon (and I'm on 4-way SMP)! Looks like there's no rule how many children to configure, it depends on modules in-use, memory speed, cpu speed and so on. Only stress test for each concrete system gives an answer. Hope the new architecture will take care of such issues as well :) -- Best Regards, Alex Massover VoIP RD TL Jajah Inc. -Original Message- From: users-boun...@lists.opensips.org [mailto:users- boun...@lists.opensips.org] On Behalf Of Bogdan-Andrei Iancu Sent: Friday, January 22, 2010 7:43 PM To: OpenSIPS users mailling list Subject: Re: [OpenSIPS-Users] sched_yield() Hi Alex, Bug was fixed - update from SVN. Regarding your observation onforking versus no-forking - in some cases (when not doing any blocking ops), a single proc may be faster that multiple procs on a single core machine - because the CPU power is the same and maximum used (no blocking), but in forking mode you have the overhead of proc switching and the loocking/synchronizing dead- times. Regards, Bogdan Alex Massover wrote: Hi, Unfortunately 'fifo get_statistics' crashes opensips, I opened a bug. But no chance that 1G is not enough, only about 400M is used for all linux processes: Mem: 3115120k total, 398360k used, 2716760k free, 536k buffers Maybe sched_yield() just cause problems on 2.3.62 or on vmware or on SMP? I'm trying now with fork=yes and children=1. If I have only one working child, does it suppose to lock and shed_yeild() itself from any reason? Meanwhile with single child OpenSIPS easily handles 4K of concurrent calls at 15cps, load average is 0.00 (!) and CPU is about 96% idle. I wonder if single working child also hangs. -- Best Regards, Alex Massover VoIP RD TL Jajah Inc. -Original Message- From: users-boun...@lists.opensips.org [mailto:users- boun...@lists.opensips.org] On Behalf Of Andrei Dragus Sent: Friday, January 22, 2010 1:17 PM To: OpenSIPS users mailling list Subject: Re: [OpenSIPS-Users] sched_yield() Hi, The new f_malloc will not do anything extra when compared to the old one until memory usage goes way up. I've added a warning in mem/f_malloc.c so you can see when defrag starts. If you get this warning then it is clear that the problem is from high memory usage. 1 GB for 4k calls seems a lot ( 250k per call). You can try to use opensipsctl fifo get_statistics shmem: and see what the memory usage is for diferent number of concurrent calls ( 1k,2k,3k,4k), and if indeed the memory usage is that high we should investigate the cause. Alex Massover wrote: Hi, Now shared memory is 1G (-m 1024), and all memory is dedicated to the virtual machine (it was shared till now). But it still happens, just not so often. I originate the calls for this stress test in
Re: [OpenSIPS-Users] siptrace with microseconds accuracy
Hi, Tnx done it and it works as expected. Just a thought though...perhaps there is a way to get this time somehow when the message is really processed instead of taking current time? It would be more precise. Best regards, Josip -Original Message- From: users-boun...@lists.opensips.org [mailto:users-boun...@lists.opensips.org] On Behalf Of Bogdan-Andrei Iancu Sent: Monday, January 25, 2010 2:41 PM To: OpenSIPS users mailling list Subject: Re: [OpenSIPS-Users] siptrace with microseconds accuracy Hi Josip, You need to change the code to make the siptrace module to insert in table a new field, the microseconds (tv_usec field from gettimeofday() ). With pure scripting is not possible. Regards, Bogdan Josip Djuricic wrote: Hit there, I'm thinking of implementing micorseconds accuracy for siptrace log. Any advice to kep it clean as possible? Thought of using gettimeofday() function. Best regards, Josip ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users -- Bogdan-Andrei Iancu 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] lookup b flag - one registration at a time
Hi Jeff, See revision #6527 on trunk - if you could run some more tests on it and report if works ok, it will be great. Regards, Bogdan Jeff Pyle wrote: The f flag sounds fantastic. Thanks. - Jeff On Jan 18, 2010, at 9:24 AM, Bogdan-Andrei Iancu wrote: Hi Jeff, Jeff Pyle wrote: Iñaki, On Jan 9, 2010, at 5:00 PM, Iñaki Baz Castillo wrote: El Sábado, 9 de Enero de 2010, Jeff Pyle escribió: Hello, The docs say that when using the b flag with lookup() when multiple records are present, it will load only the one with the highest q. What if the q is the same for all? How does it decide which to use? I've not tested it with multiple users sharing same q. however it should fetch all the users with highest q, not just one of them. Perhaps I'm asking the wrong question. I'm looking to allow only one registration per user in the sense that if a second successful registration comes in it will replace tne existing one. My approach so far is to use a max_contacts=2 and the lookup() function with the b flag to retrieve only one. maybe without the b flag as the b flag will return you all the registered contacts. max_contacts=1 returns a 503 to the new replacement registration request, so that's out. Perhaps the hot ticket is to run an all-DB mode running a manual mysql query with avp_db_query after successful REGISTER authentication but before the save() so we can remove any existing registrations before the new one is saved. Thoughts? No way - the SIP contact matching is much to complicated to do it at DB level. As I found that kind of behaviour was more and more asked by people, I will add a new flag f to force at save() time the override of the existing contacts if the max_contacts() was exceeded. Regards, Bogdan - Jeff ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users -- Bogdan-Andrei Iancu www.voice-system.ro ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users Regards, Jeff Pyle Director, Voice Engineering Fidelity Voice Data | 23250 Chagrin Blvd, Suite 250 | Beachwood, Ohio 44122 P: 216-245-4106 F: 216-595-0706 E: jp...@fidelityvoice.com Visit us at http://www.fidelityvoice.com 2008 2009 Inductee to the prestigious Weatherhead 100 ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users -- Bogdan-Andrei Iancu www.voice-system.ro ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Re: [OpenSIPS-Users] How to limit channel on bunch of called DIDs?
Hi Andrew, It will be a bit tricky (depending on your approach) as set_dlg_profile() does not accept variables for the name of the profile - so , you need to use a profile with values where the value is the name of the group. Regards, Bogdan Andrew Pogrebennyk wrote: I'm facing the same task now - limit the number of concurrent calls per group of accounts rather than a single number. I'm thinking of using the group module to organize numbers into groups with group module, then using get_user_group() to get group id and comparing the profile size with concurrent calls limit set for this group in usr_preferences table. I'd probably hack the get_user_group() function to return the group name instead of id for convenience reason, though. Bogdan-Andrei Iancu wrote: Hi, you do not need any loop - just set as key for profiling the DID number and add to that profile the calls related to that DID. Regards, Bogdan Johnson Pajayat wrote: Hi Bogdan, I was able to implement the channel limiting on one DID by using a variable instead of AVP and replacing all instances of $tU to $rU. Now, I want to limit the channels to a set of DIDs and I'm thinking of implementing a while loop and counter in order to achieve it. Is this an efficient way of doing the limiting on a set of DIDs? One problem I can think with the while loop and counter will be how to deduct those calls that were already hung up by the caller. Again, inputs will be greatly appreciated. Thank you very much. -- Bogdan-Andrei Iancu www.voice-system.ro ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Re: [OpenSIPS-Users] mi_xmlrpc - Display name in From header
Hi Chris, Found the problem and fixed it. Please updated from SVN and give it a try. Regards, Bogdan Chris Maciejewski wrote: Hi Bogdan, Thanks for your help. XML MI command attached. Please let me know if I can help somehow in fixing this issue (testing patches etc.) Best regards, Chris 2010/1/15 Bogdan-Andrei Iancu bog...@voice-system.ro Hi Chris, It seams that the t_uac MI function fails to properly detect the display name and adds an extra pare of angle brackets...Could you send the complete MI command you are using - I will try to reproduce and debug this. Thanks Regards, Bogdan Chris Maciejewski wrote: Hi, I am trying to include display name in a From header (ie. 'From: Test User sip:t...@example.com'), when sending local messages with mi_xmlrpc (openSIPs 1.5.3). Already tried many options, but I always end up with 'From: Test User sip:t...@example.com' which obviously fails. My XML headers parameter: ... param value stringFrom: Test User #60;sip:t...@example.com#62;#13;#10;To: #60;sip:10...@example.com#62;#13;#10;Content-Type: text/html; charset=utf-8#13;#10;/string /value /param Results in the following SIP packet: MESSAGE sip:10...@example.com SIP/2.0. Via: SIP/2.0/UDP 10.10.10.1:5065;branch=z9hG4bK40b7.e646756.0. To: sip:10...@example.com. From: Test User sip:t...@example.com;tag=a6eba7f2b7ff5072ce4465fa3b4415e6-e309. Any suggestions how to solve this issue very much appreciated. Kind regards, Chris ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users -- Bogdan-Andrei Iancu 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 -- Bogdan-Andrei Iancu www.voice-system.ro ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Re: [OpenSIPS-Users] lookup b flag - one registration at a time
Bogdan, Will do. Thanks. - Jeff On Jan 25, 2010, at 9:35 AM, Bogdan-Andrei Iancu wrote: Hi Jeff, See revision #6527 on trunk - if you could run some more tests on it and report if works ok, it will be great. Regards, Bogdan Jeff Pyle wrote: The f flag sounds fantastic. Thanks. - Jeff On Jan 18, 2010, at 9:24 AM, Bogdan-Andrei Iancu wrote: Hi Jeff, Jeff Pyle wrote: Iñaki, On Jan 9, 2010, at 5:00 PM, Iñaki Baz Castillo wrote: El Sábado, 9 de Enero de 2010, Jeff Pyle escribió: Hello, The docs say that when using the b flag with lookup() when multiple records are present, it will load only the one with the highest q. What if the q is the same for all? How does it decide which to use? I've not tested it with multiple users sharing same q. however it should fetch all the users with highest q, not just one of them. Perhaps I'm asking the wrong question. I'm looking to allow only one registration per user in the sense that if a second successful registration comes in it will replace tne existing one. My approach so far is to use a max_contacts=2 and the lookup() function with the b flag to retrieve only one. maybe without the b flag as the b flag will return you all the registered contacts. max_contacts=1 returns a 503 to the new replacement registration request, so that's out. Perhaps the hot ticket is to run an all-DB mode running a manual mysql query with avp_db_query after successful REGISTER authentication but before the save() so we can remove any existing registrations before the new one is saved. Thoughts? No way - the SIP contact matching is much to complicated to do it at DB level. As I found that kind of behaviour was more and more asked by people, I will add a new flag f to force at save() time the override of the existing contacts if the max_contacts() was exceeded. Regards, Bogdan - Jeff ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users -- Bogdan-Andrei Iancu www.voice-system.ro ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users Regards, Jeff Pyle Director, Voice Engineering Fidelity Voice Data | 23250 Chagrin Blvd, Suite 250 | Beachwood, Ohio 44122 P: 216-245-4106 F: 216-595-0706 E: jp...@fidelityvoice.com Visit us at http://www.fidelityvoice.com 2008 2009 Inductee to the prestigious Weatherhead 100 ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users -- Bogdan-Andrei Iancu 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] How to limit channel on bunch of called DIDs?
Bogdan-Andrei Iancu wrote: Hi Andrew, It will be a bit tricky (depending on your approach) as set_dlg_profile() does not accept variables for the name of the profile - so , you need to use a profile with values where the value is the name of the group. Bogdan, It already seems to work this way: first do avp_db_query(select grp from grp where username='$fU', $avp(s:group)); then use group name as uuid key in usr_preferences table to get the max number of allowed simultaneous calls per group; if it's still above the profile size, insert dialog into caller profile, where the value is the $avp(s:group). Thank you. -- Sincerely, Andrew Pogrebennyk ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Re: [OpenSIPS-Users] Is RPID being cached?
Hi Alan, Indeed, there was a bug in the handling of NULL columns in the db_mysql module. It is fixed now, so updating should solve it. Thanks for the report and help, Bogdan Alan Frisch wrote: Bogdan, Thanks for the info. I load the RPID with the modparam(auth_db, load_credentials, rpid) and put it into $avp(s:rpid). As long as OpenSIPS is in forked mode, it works fine. But when I was running it in non-forked mode is when I saw the retention behavior. Seems the RPID would stick when the column was NULLed, only a restart of OpenSIPS would get it back to no value. A.F. On Fri, Jan 15, 2010 at 11:22 AM, Bogdan-Andrei Iancu bog...@voice-system.ro wrote: Hi Alan, rpid is in subscriber table and should have nothing to do with usrloc (and db_mode). How do you load the rpid and where do you store it (what kind of variable) ? Regards, Bogdan ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users -- Bogdan-Andrei Iancu www.voice-system.ro ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Re: [OpenSIPS-Users] B2BUA not passing ACKs
Hello Anca, Sorry for the delay. An lun., janv 04, 2010, Anca Vamanu schrieb: There is a misunderstanding from your side in what the b2b scenario documents are concerned ( please read carefully the documentation - http://www.opensips.org/Resources/B2buaTutorial ). It's hard to figure out which document to read, as the documents are so unclear that they need documentation themselves. What I mean is: Why are there two documents listed on the website for the same thing. One called 'B2buaTutorial' and the other 'B2buaTutorial16'? Is the second a older document only useful for OpenSIPS 1.6.0, or is it a newer version of the document B2buaTutorial? There are also no links to plain text config files, and everything is HTML. A complete working route script is not available. The important thing is that there should only be rules in the scenario for requests that need a special handling. In the prepaid scenario - when the BYE from the media server is received the caller must be connected to a human operator, so we have a rule for this. All the other requests need only simple pass forward - so if an ACK is received from one side it only need to be forwarded to the other. 'pass forward' is the implicit action and it will be applied to all requests that don't match a rule. Thanks for clearing that up (about the implicit action.) I think I understand better now, but still I would like to start from the beginning and use the supplied prepaid.xml (which I assume is correctly written.) I see that you say that the prepaid scenario does not work for you. What version are you testing with? Solaris 11 x86 (nv-b91) OpenSIPS 1.6.0 with TLS I've copied the example 'prepaid.xml' word for word from the URL: http://www.opensips.org/Resources/B2buaTutorial16 Here are the relevant parts of the route script: listen = udp:name.host.tld:5060 listen = tls:name.host.tld:5061 modparam(tm, pass_provisional_replies, 1) modparam(b2b_entities, server_address, sip:b2...@name.host.tld) modparam(b2b_logic, script_scenario, /pfx/etc/opensips/b2bua/prepaid.xml) if (has_totag()) { if (loose_route()) { # code here } } if (!is_method(REGISTER|MESSAGE)) { record_route(); } if (is_method(INVITE) src_ip != myself) { # Start of B2BUA if (!t_newtran()) { # logic block, do sl_reply_error(); # media announcements exit; # to users } b2b_init_request(prepaid, sip:playso...@123.123.123.123:5080, sip:playso...@123.123.123.123:5080); exit; } if (src_ip != myself) { if ($hdr(P-hint) != outbound) { append_hf(P-hint: outbound\r\n); } } Does that look like it should work? What about the parameters '123.123.123.123'? Is 't_newtran' necessary? Regards, Brian ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
[OpenSIPS-Users] New SIP SIMPLE client SDK release 0.12.0
Hello, A new release for SIP SIMPLE client SDK is available. SIP SIMPLE client is a Software Development Kit for easy development of Real Time Applications based on SIP and related protocols for Presence, Audio, Instant Messaging (IM), File Transfers and Desktop Sharing. Other media types can be easily added by using an extensible high-level API. The presence related features have been developed in combination with OpenSIPS Presence Agent and OpenXCAP. The software is available as a tar archive, darcs repository or as a Debian package for Debian unstable distribution. Installation instructions are available at: http://sipsimpleclient.com/wiki/SipInstallation The changelog is attached: python-sipsimple (0.12.0) unstable; urgency=low * Removed obsolete desktopsharing.py file * Use OMA standard auids for icon and directory applications * Added slot property to AudioStream * Refactored DNS lookup implementation * Don't bit-shift g722 audio samples * Updated installation procedures * Added IVirtualAudioDevice interface and support for it in AudioStream * Modified DNSLookup to offer both a synchronous and an asynchronous API * Improved logging in DNSLookup.lookup_service * Added the request URI to the SIPEngineGotMessage notification data * Added CIPID (RFC4482) application * Added check in MSRPStreamBase for transport mismatch in settings * Added checks for SDP media stream transport for incoming sessions * Made Registration always communicate via notifications * Added capabilities application (RFC5196) * Added conference XML application (RFC4575) * Added message summary application (RFC3842) * Modified AudioStream to support changing the rtp port in reINVITEs * Pass code and reason of SIP MESSAGE response to its notification * Added dialog-info application (RFC4235) * Added call_in_(twisted|green)_thread utility functions * Added limit utility function * Refactored sipsimple.account using a green model * Restrucutred SIPApplication to simplify the code * Added support for detecting default IP address changes * Added redirect_identities attribute to SIPSessionDidFail notifications * Modified Account to re-register when some settings change * Removed sip.ip_address and rtp.ip_address global settings * Removed msrp.port global setting * Reorganized account registration notifications * Reorganized settings * Patched dns.entropy module which is not thread-safe * Modified SilenceableWaveFile to use a green model * Made Account.credentials a property * Reorganized the contents of the sipsimple.util module * Modified MSRPStreamBase to stop other operations when an end is requested * Added support for SystemDidWakeUpFromSleep notification in registration * Moved Timestamp from sipsimple.applications.util to sipsimple.util * Removed sipclients related modules, scripts and data from the project * Reorganized packages and modules * Numerous bug fixes Kind regards, Adrian Georgescu ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
[OpenSIPS-Users] New SIP SIMPLE Clients release 0.12.0
Hello, A new release for SIP SIMPLE Clients is available. SIP SIMPLE Clients can be used for setting up Audio, Instant Messaging (IM) and File Transfer sessions, Publish and Subscribe for presence or other events. The clients can be used in a Unix terminal on Linux and MacOSX operating systems. The software is available as a tar archive, darcs repository or as a Debian package for Debian unstable distribution. Installation instructions are available at: http://sipsimpleclient.com/wiki/SipInstallation The following clients are available: * sip-settings - Manage the settings used by all clients * sip-register - REGISTER a SIP end-point with a SIP Registrar * sip-session - Supports multiple Audio, IM and File Transfers sessions * sip-audio-session - Setup an Audio session * sip-message - Exchange text in page mode using SIP MESSAGE method * sip-publish-presence - Publish presence event to a SIP Presence Agent * sip-subscribe-winfo - SUBSCRIBE to watcher list on a SIP Presence Agent * sip-subscribe-presence - SUBSCRIBE to presence event * sip-auto-publish-presence - Publish randomly generated presence event * sip-subscribe-rls - SUBSCRIBE to lists managed by a SIP Resource List Server * sip-subscribe-xcap-diff - SUBSCRIBE to XCAP resources changes * sip-subscribe-mwi - SUBSCRIBE to Message Waiting Indication on a Voicemail server * xcap-directory - List documents stored on a XCAP server for a given user * xcap-pres-rules - Manage the content of a pres-rules XCAP document * xcap-dialog-rules - Manage the content of a dialog-rules XCAP document * xcap-icon - Manage an icon document stored on the XCAP server * xcap-rls-services - Manage the content of a rls-services XCAP document For how to setup and use the clients visit: http://sipsimpleclient.com/wiki/SipTesting Kind regards, Adrian Georgescu ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Re: [OpenSIPS-Users] INVITE not forwarded, call fails
On 25/01/10 12:08, Bogdan-Andrei Iancu wrote: Hi Lorenzo, When comes to NAT traversal, you can do it in two ways: 1) on the client (UAC) side - the client is doing the signalling in such a way that the server sees the traffic as coming from a public IP. This is actually STUN approach - the server has 0 capabilities in handling NAT. 2) on the server side - the client has 0 capabilities in handling NAT traversal and the whole task must be done by server. In this case you need to configure opensips to do the nat traversal - to correct both signalling and RTP for coping with NAt. My understanding is you tried the first approach, but it fails due poor STUN/NAT working. So, you what to move into 2), right ? IF so, take a look at the nathelper module. Hi Bogdan! i think there's a third case, which is when a client does make use of STUN, but is behind a symmetric NAT. since the UAC may not be aware of that, the UAS should try and fix the situation by fixing the contact header, after checking it's different from the address in the ip header of course :) i think this is the case i'm in. anyway, thanks for the tip, i'll take a deeper look at the nathelper module. Regards, Bogdan thanks, Lorenzo ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Re: [OpenSIPS-Users] INVITE not forwarded, call fails
Another way is the use OpenVPN avoiding NAT hassles altogether On 01/25/2010 01:39 PM, lorenzo wrote: On 25/01/10 12:08, Bogdan-Andrei Iancu wrote: Hi Lorenzo, When comes to NAT traversal, you can do it in two ways: 1) on the client (UAC) side - the client is doing the signalling in such a way that the server sees the traffic as coming from a public IP. This is actually STUN approach - the server has 0 capabilities in handling NAT. 2) on the server side - the client has 0 capabilities in handling NAT traversal and the whole task must be done by server. In this case you need to configure opensips to do the nat traversal - to correct both signalling and RTP for coping with NAt. My understanding is you tried the first approach, but it fails due poor STUN/NAT working. So, you what to move into 2), right ? IF so, take a look at the nathelper module. Hi Bogdan! i think there's a third case, which is when a client does make use of STUN, but is behind a symmetric NAT. since the UAC may not be aware of that, the UAS should try and fix the situation by fixing the contact header, after checking it's different from the address in the ip header of course :) i think this is the case i'm in. anyway, thanks for the tip, i'll take a deeper look at the nathelper module. Regards, Bogdan thanks, Lorenzo ___ 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
[OpenSIPS-Users] uac_replace_from in branch_route
Hello, I make use of the uac_replace_from() function in branch_routes. My thinking here is that if the outbound INVITE were to return on a failure route and serially fork out another branch route, running the uac_replace_from() function again would not cause any harm because none of its changes would be reflected ... since it was a branch route. Is this logic correct? Thanks, Jeff ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Re: [OpenSIPS-Users] mi_xmlrpc - Display name in From header
Hi Bogdan, Just tested patch from SVN and it works for me now. There is only small issue. It now removes space between display name and URI part, so for example: From: Test User sip:t...@example.com; becomes: From: Test Usersip:t...@example.com; Best regards, Chris 2010/1/25 Bogdan-Andrei Iancu bog...@voice-system.ro: Hi Chris, Found the problem and fixed it. Please updated from SVN and give it a try. Regards, Bogdan Chris Maciejewski wrote: Hi Bogdan, Thanks for your help. XML MI command attached. Please let me know if I can help somehow in fixing this issue (testing patches etc.) Best regards, Chris 2010/1/15 Bogdan-Andrei Iancu bog...@voice-system.ro Hi Chris, It seams that the t_uac MI function fails to properly detect the display name and adds an extra pare of angle brackets...Could you send the complete MI command you are using - I will try to reproduce and debug this. Thanks Regards, Bogdan Chris Maciejewski wrote: Hi, I am trying to include display name in a From header (ie. 'From: Test User sip:t...@example.com'), when sending local messages with mi_xmlrpc (openSIPs 1.5.3). Already tried many options, but I always end up with 'From: Test User sip:t...@example.com' which obviously fails. My XML headers parameter: ... param value stringFrom: Test User #60;sip:t...@example.com#62;#13;#10;To: #60;sip:10...@example.com#62;#13;#10;Content-Type: text/html; charset=utf-8#13;#10;/string /value /param Results in the following SIP packet: MESSAGE sip:10...@example.com SIP/2.0. Via: SIP/2.0/UDP 10.10.10.1:5065;branch=z9hG4bK40b7.e646756.0. To: sip:10...@example.com. From: Test User sip:t...@example.com;tag=a6eba7f2b7ff5072ce4465fa3b4415e6-e309. Any suggestions how to solve this issue very much appreciated. Kind regards, Chris ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users -- Bogdan-Andrei Iancu 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 -- Bogdan-Andrei Iancu 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] lookup b flag - one registration at a time
Bogdan, Early results have this update working perfectly. - Jeff On Jan 25, 2010, at 10:29 AM, Jeff Pyle wrote: Bogdan, Will do. Thanks. - Jeff On Jan 25, 2010, at 9:35 AM, Bogdan-Andrei Iancu wrote: Hi Jeff, See revision #6527 on trunk - if you could run some more tests on it and report if works ok, it will be great. Regards, Bogdan Jeff Pyle wrote: The f flag sounds fantastic. Thanks. - Jeff On Jan 18, 2010, at 9:24 AM, Bogdan-Andrei Iancu wrote: Hi Jeff, Jeff Pyle wrote: Iñaki, On Jan 9, 2010, at 5:00 PM, Iñaki Baz Castillo wrote: El Sábado, 9 de Enero de 2010, Jeff Pyle escribió: Hello, The docs say that when using the b flag with lookup() when multiple records are present, it will load only the one with the highest q. What if the q is the same for all? How does it decide which to use? I've not tested it with multiple users sharing same q. however it should fetch all the users with highest q, not just one of them. Perhaps I'm asking the wrong question. I'm looking to allow only one registration per user in the sense that if a second successful registration comes in it will replace tne existing one. My approach so far is to use a max_contacts=2 and the lookup() function with the b flag to retrieve only one. maybe without the b flag as the b flag will return you all the registered contacts. max_contacts=1 returns a 503 to the new replacement registration request, so that's out. Perhaps the hot ticket is to run an all-DB mode running a manual mysql query with avp_db_query after successful REGISTER authentication but before the save() so we can remove any existing registrations before the new one is saved. Thoughts? No way - the SIP contact matching is much to complicated to do it at DB level. As I found that kind of behaviour was more and more asked by people, I will add a new flag f to force at save() time the override of the existing contacts if the max_contacts() was exceeded. Regards, Bogdan - Jeff ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users -- Bogdan-Andrei Iancu www.voice-system.ro ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users Regards, Jeff Pyle Director, Voice Engineering Fidelity Voice Data | 23250 Chagrin Blvd, Suite 250 | Beachwood, Ohio 44122 P: 216-245-4106 F: 216-595-0706 E: jp...@fidelityvoice.com Visit us at http://www.fidelityvoice.com 2008 2009 Inductee to the prestigious Weatherhead 100 ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users -- Bogdan-Andrei Iancu 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 ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Re: [OpenSIPS-Users] Error in module permission with db_text
Hi, Bogdan. Its working now. Thanks. 2010/1/26 Bogdan-Andrei Iancu bog...@voice-system.ro Hi Leonid, An official fix is available on SVN trunk (rev 6534). I would really appreciate if you could give it a try and test - if ok, I will do the backport. Thanks and regards, Bogdan Bogdan-Andrei Iancu wrote: Ok, I will investigate to come up with an official fix. Thanks and regards, Bogdan Леонид Наседкин wrote: Hi Bogdan Thank you. Its working now. 2010/1/15 Bogdan-Andrei Iancu bog...@voice-system.ro mailto: bog...@voice-system.ro Hi Leonid, Looks like there is a compatibility bug between permission and db_text modules when comes to DB data typesGive me couple of days to sort this out. In the mean while, if you want to use db_text for permissions, please use the attached patch. Thanks and regards, Bogdan Леонид Наседкин wrote: Hi there. I'm trying to use permission module with db_text, and it's not working, and I can't understand what's wrong. Opensips 1.6.1 svnrevision: 2:6509 In opensips.cfg: loadmodule db_text.so modparam(db_text, db_mode, 0) loadmodule permissions.so modparam(permissions,db_url, text:///etc/opensips/dbtext) In /etc/opensips/dbtext/address: id(int,auto) grp(int) ip(str) mask(int) port(int) proto(str) pattern(str,null) context_info(str,null) 10:1:10.100.0.0:23:5060:udp:: 20:1:10.110.0.0:23:5060:udp:: 30:1:10.120.0.0:23:5060:udp:: LOG: DBG:core:init_mod: initializing module permissions DBG:permissions:mod_init: initializing... WARNING:permissions:parse_config_file: file not found: /etc/opensips/permissions.allow WARNING:permissions:mod_init: default allow file (/etc/opensips/permissions.allow) not found = empty rule set WARNING:permissions:parse_config_file: file not found: /etc/opensips/permissions.deny WARNING:permissions:mod_init: default deny file (/etc/opensips/permissions.deny) not found = empty rule set DBG:core:find_mod_export: found db_bind_api in module db_text [/usr/lib/opensips/modules/] DBG:core:db_bind_mod: using db bind api for db_text INFO:db_text:dbt_init: using database at: /etc/opensips/dbtext/ DBG:db_text:dbt_cache_get_db: looking for db /etc/opensips/dbtext/! DBG:db_text:dbt_cache_get_db: new db! DBG:db_text:dbt_load_file: request for table [version] DBG:db_text:dbt_load_file: db is [/etc/opensips/dbtext/] DBG:db_text:dbt_load_file: loading file [/etc/opensips/dbtext//version] DBG:db_text:dbt_table_new: mtime is 1263556066 DBG:db_text:dbt_load_file: column[0] is STR! DBG:db_text:dbt_load_file: column[1] is INT! DBG:db_text:dbt_query: new res with 1 cols DBG:db_text:dbt_result_new: new res with 1 cols DBG:core:db_new_result: allocate 28 bytes for result set at 0x816b044 DBG:core:db_allocate_columns: allocate 16 bytes for result columns at 0x816aedc DBG:core:db_allocate_rows: allocate 28 bytes for result rows and values at 0x816b090 DBG:core:db_free_columns: freeing result columns at 0x816aedc DBG:core:db_free_rows: freeing 1 rows DBG:core:db_free_row: freeing row values at 0x816b098 DBG:core:db_free_rows: freeing rows at 0x816b090 DBG:core:db_free_result: freeing result set at 0x816b044 DBG:db_text:dbt_load_file: request for table [address] DBG:db_text:dbt_load_file: db is [/etc/opensips/dbtext/] DBG:db_text:dbt_load_file: loading file [/etc/opensips/dbtext//address] DBG:db_text:dbt_table_new: mtime is 1263558311 DBG:db_text:dbt_load_file: column[0] is INT! DBG:db_text:dbt_load_file: column[1] is INT! DBG:db_text:dbt_load_file: column[2] is STR! DBG:db_text:dbt_load_file: column[3] is INT! DBG:db_text:dbt_load_file: column[4] is INT! DBG:db_text:dbt_load_file: column[5] is STR! DBG:db_text:dbt_load_file: column[6] is STR! DBG:db_text:dbt_load_file: column[7] is STR! DBG:db_text:dbt_query: new res with 8 cols DBG:db_text:dbt_result_new: new res with 8 cols DBG:core:db_new_result: allocate 28 bytes for result set at 0x816b004 DBG:core:db_allocate_columns: allocate 128 bytes for result columns at 0x8186b68 DBG:core:db_allocate_rows: allocate 504 bytes for result rows and values at 0x8186bf4 DBG:permissions:reload_address_table: number of rows in address table: 3 ERROR:permissions:reload_address_table: database problem DBG:core:db_free_columns: freeing result columns at 0x8186b68 DBG:core:db_free_rows: freeing 3 rows DBG:core:db_free_row: freeing row values at 0x8186c0c