[OpenSIPS-Users] CDRtool vs CGRATES for Opensips 2.2 +
Just pinging the general community on a pros/cons list between these two systems for rating calls. I would love to hear feedback on comparisons and experiences. Finding it hard to see big differences from documentation other than methods to produce the records and the graphical front end. Thanks Jeff Wilkie ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Re: [OpenSIPS-Users] preferred OS and version for OpenSIPS?
Hi Robert, OpenSIPS is expected to work on any Unix flavor. Still, we mainly use Linux as devel and test OS. In regards to Control Panel, that's apache and php. If you have issues with running in on some OS/version, please fill in a detailed report. Regards, Bogdan-Andrei Iancu OpenSIPS Founder and Developer http://www.opensips-solutions.com OpenSIPS Summit May 2017 Amsterdam http://www.opensips.org/events/Summit-2017Amsterdam.html On 02/21/2017 04:08 PM, Mundkowsky, Robert wrote: What is the preferred OS and version for OpenSIPS? I installed it on newer version Ubtunu, but and it seems to work, but the Control Panel does not. The Control Panel I am guessing expects an older version of Debian. *Robert Mundkowsky* This e-mail and any files transmitted with it may contain privileged or confidential information. It is solely for use by the individual for whom it is intended, even if addressed incorrectly. If you received this e-mail in error, please notify the sender; do not disclose, copy, distribute, or take any action in reliance on the contents of this information; and delete it from your system. Any other use of this e-mail is prohibited. Thank you for your compliance. ___ 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-CP 6.2
Hi Jeff, Thanks for the report. I pushed the fix on GIT head and 6.2 branch. Best regards, Bogdan-Andrei Iancu OpenSIPS Founder and Developer http://www.opensips-solutions.com OpenSIPS Summit May 2017 Amsterdam http://www.opensips.org/events/Summit-2017Amsterdam.html On 03/01/2017 01:06 AM, Jeff Wilkie wrote: Found small error in drouting code for CP opensips-cp/web/tools/system/drouting/template/carriers.main.php has a reference to src="../../../images/share/inactive.gif and src="../../../images/share/active.gif but neither of these are present. Both of these file extensions should be .png Thanks Jeff Wilkie ___ 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] crashing in 2.2.2
More cores http://pastebin.com/MXW2VBhi http://pastebin.com/T7JFAP2U http://pastebin.com/u44aaVpWquit http://pastebin.com/SFKKcGxE http://pastebin.com/dwSgMsJi http://pastebin.com/9HdGLm96 I've put 2.2.3 on the dev box now and will try to replicate on that box, but its difficult to replicate the traffic artificially. I'll try to replicate the fault on the dev box over the weekend. I cant do it on the live gateways because it will affect customer traffic. Regards, Richard On 03/03/2017 11:28, Richard Robson wrote: I've revisited the gateway failover mechanism I had developed in order to re route calls to the next gateway on 500's due to capacity on the gateways we are using. we have 3 gateways from one carrier and one from another. The 3 have 4 cps and will return a 503 or 500 if we breach this. The single gateway from the other carrier has plenty of capacity and should not be a problem so we want to catch this . and route to the next gateway. We are counting the CPS and channel limits and are routing to the next gateway if we exceed the limit set, but There are still occasions where a 5XX is generated, which results in a rejected call. We want to stop these rejected calls and therefore want to implement the failover mechanism for the 5XX responses. For 6 months we have been failing over if we think the counts are to high on any one gateway without a problem. But when I implement a failover on a 5XX response opensips starts crashing. It's difficult to generate artificial traffic to mimic the real traffic, but I've not had a problem with the script in testing. Last night I rolled out the new script but by 09:15 this morning opensips started crashing 10 times in 5 minutes. This was as the traffic ramped up. I rolled back the script and it restarted OK and has not crashed since. Therefore the Failover Mechanism in the script is where the crash is happening Core dump: http://pastebin.com/CqnESCm4 I'll add more dumps later Regards, Richard this is the failure route catching the 5XX failure_route[dr_fo] { xlog (" [dr] Recieved reply to method $rm From: $fd, $fn, $ft, $fu, $fU, $si, $sp, To: $ru"); if (t_was_cancelled()) { xlog("[dr]call cancelled by internal caller"); rtpengine_manage(); do_accounting("db", "cdr|missed"); exit; } if ( t_check_status("[54]03")) { route(relay_failover); } if ( t_check_status("500")) { route(relay_failover); } do_accounting("db", "cdr|missed"); rtpengine_manage(); exit; } This is the route taken on the failure route[relay_failover]{ if (use_next_gw()) { xlog("[relay_failover-route] Selected Gateway is $rd"); $avp(trunkratelimit)=$(avp(attrs){s.select,0,:}); $avp(trunkchannellimit)=$(avp(attrs){s.select,1,:}); ### check channel limit ## get_profile_size("outbound","$rd","$var(size)"); xlog("[relay_failover-route] Selected Gateway is $rd var(size) = $var(size)"); xlog("[relay_failover-route] Selected Gateway is $rd avp(trunkcalllimit) = $avp(trunkchannellimit)"); xlog("[relay_failover-route] Selected Gateway is $rd result = ( $var(size) > $avp(trunkchannellimit))"); if ( $(var(size){s.int}) > $(avp(trunkchannellimit){s.int})) { xlog("[relay_failover-route] Trunk $rd exceeded $avp(trunkchannellimit) concurrent calls $var(size)"); route(relay_failover); } } else { send_reply("503", "Gateways Exhusted"); exit; } # We need to check Rate Limiting ### if (!rl_check("$rd", "$(avp(trunkratelimit){s.int})", "TAILDROP")) { # Check Rate limit $avp needs changing rl_dec_count("$rd"); # decrement the counter since we've not "used" one xlog("[ratelimiter-route] [Max CPS: $(avp(trunkratelimit){s.int}) Current CPS: $rl_count($rd)] Call to: $rU from: $fU CPS exceeded, delaying"); $avp(initial_time)=($Ts*1000)+($Tsm/1000); async(usleep("20"),relay_failover_delay); xlog ("Should not get here after async requst"); } else { xlog ("[relay_outbound-route] [Max CPS: $avp(trunkratelimit) Current CPS: $rl_count($rd)] Call to: $rU from: $fU not ratelimited"); } t_on_failure("dr_fo"); do_accounting("db", "cdr|missed"); rtpengine_manage(); if (!t_relay()) { xlog("[relay-route] ERROR: Unable to relay"); send_reply("500","Internal Error"); exit; } } -- Richard Robson Greenlight Support 01382 843843 supp...@greenlightcrm.com
[OpenSIPS-Users] crashing in 2.2.2
I've revisited the gateway failover mechanism I had developed in order to re route calls to the next gateway on 500's due to capacity on the gateways we are using. we have 3 gateways from one carrier and one from another. The 3 have 4 cps and will return a 503 or 500 if we breach this. The single gateway from the other carrier has plenty of capacity and should not be a problem so we want to catch this . and route to the next gateway. We are counting the CPS and channel limits and are routing to the next gateway if we exceed the limit set, but There are still occasions where a 5XX is generated, which results in a rejected call. We want to stop these rejected calls and therefore want to implement the failover mechanism for the 5XX responses. For 6 months we have been failing over if we think the counts are to high on any one gateway without a problem. But when I implement a failover on a 5XX response opensips starts crashing. It's difficult to generate artificial traffic to mimic the real traffic, but I've not had a problem with the script in testing. Last night I rolled out the new script but by 09:15 this morning opensips started crashing 10 times in 5 minutes. This was as the traffic ramped up. I rolled back the script and it restarted OK and has not crashed since. Therefore the Failover Mechanism in the script is where the crash is happening Core dump: http://pastebin.com/CqnESCm4 I'll add more dumps later Regards, Richard this is the failure route catching the 5XX failure_route[dr_fo] { xlog (" [dr] Recieved reply to method $rm From: $fd, $fn, $ft, $fu, $fU, $si, $sp, To: $ru"); if (t_was_cancelled()) { xlog("[dr]call cancelled by internal caller"); rtpengine_manage(); do_accounting("db", "cdr|missed"); exit; } if ( t_check_status("[54]03")) { route(relay_failover); } if ( t_check_status("500")) { route(relay_failover); } do_accounting("db", "cdr|missed"); rtpengine_manage(); exit; } This is the route taken on the failure route[relay_failover]{ if (use_next_gw()) { xlog("[relay_failover-route] Selected Gateway is $rd"); $avp(trunkratelimit)=$(avp(attrs){s.select,0,:}); $avp(trunkchannellimit)=$(avp(attrs){s.select,1,:}); ### check channel limit ## get_profile_size("outbound","$rd","$var(size)"); xlog("[relay_failover-route] Selected Gateway is $rd var(size) = $var(size)"); xlog("[relay_failover-route] Selected Gateway is $rd avp(trunkcalllimit) = $avp(trunkchannellimit)"); xlog("[relay_failover-route] Selected Gateway is $rd result = ( $var(size) > $avp(trunkchannellimit))"); if ( $(var(size){s.int}) > $(avp(trunkchannellimit){s.int})) { xlog("[relay_failover-route] Trunk $rd exceeded $avp(trunkchannellimit) concurrent calls $var(size)"); route(relay_failover); } } else { send_reply("503", "Gateways Exhusted"); exit; } # We need to check Rate Limiting ### if (!rl_check("$rd", "$(avp(trunkratelimit){s.int})", "TAILDROP")) { # Check Rate limit $avp needs changing rl_dec_count("$rd"); # decrement the counter since we've not "used" one xlog("[ratelimiter-route] [Max CPS: $(avp(trunkratelimit){s.int}) Current CPS: $rl_count($rd)] Call to: $rU from: $fU CPS exceeded, delaying"); $avp(initial_time)=($Ts*1000)+($Tsm/1000); async(usleep("20"),relay_failover_delay); xlog ("Should not get here after async requst"); } else { xlog ("[relay_outbound-route] [Max CPS: $avp(trunkratelimit) Current CPS: $rl_count($rd)] Call to: $rU from: $fU not ratelimited"); } t_on_failure("dr_fo"); do_accounting("db", "cdr|missed"); rtpengine_manage(); if (!t_relay()) { xlog("[relay-route] ERROR: Unable to relay"); send_reply("500","Internal Error"); exit; } } -- Richard Robson Greenlight Support 01382 843843 supp...@greenlightcrm.com ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users