[asterisk-users] Adding Congestion to CDR logs

Kenny Watson kwatson at geniusgroupltd.com
Wed Jun 30 06:26:42 CDT 2010


Hi Gareth thanks again for the responses!

I defiantly think I would have to run the agi on a separate server, I'll maybe setup this in a lab.  As I say the built in CDR is fine if it could include failed calls!

I was planning to use a ratio of good/bad calls from a provider to determine the weighting or even the shift between good and bad!

The db would be held on a separate server,  all I want this box to do is handle a tonne of calls and do some transcoding on harder (I have recently bought a howler screamer card).


Thanks


Kenny Watson

----- Original Message -----
From: "Gareth Blades" <list-asterisk at skycomuk.com>
To: "Asterisk Users Mailing List - Non-Commercial Discussion" <asterisk-users at lists.digium.com>
Sent: Wednesday, 30 June, 2010 12:14:29 PM
Subject: Re: [asterisk-users] Adding Congestion to CDR logs

Using standard AGI will add a fair bit of load and most of that will be 
due to loading the perl or php interpreter every time it is called. Your 
call volume is relativly high so I agree that whatever solution you go 
for you want to make it as streamlined as possible.
Therefore I would advise that you make use of EAGI where you have a 
separate application process running all the time listening for 
connections from asterisk providing information on the calls. Since it 
is running all the time you dont get the startup overhead so it is 
purely database work. You can even have this on a separate box. You can 
define a short timeout so if the app does fail then your dialplan can 
just fail back to a safe provider.

It all comes down to database queries in the end. You can query the last 
X number of calls to a provider made withing the last Y minutes to 
identify a possible problem and avoid using them and generate an alert 
if there is a suspected problem. Lots of things you can do once this 
sort of system is inplace and by having AGI set variables you can even 
simplify the asterisk dialplan and take load away from the asterisk box 
onto a separate database server which makes future expansion much easier.

Kenny Watson wrote:
> Hi Gareth,
> 
> The problem I have had in the past with providers is either that the registrar is still up and its further down the line in the provider that the call is being congestied, so the qualify doesnt work!
> 
> or that the providers registrar has issues but the rest of their services is up so the qualify shows the peer as down but it will still process calls (I disabled qualify for this provider).
> 
> How much load would adding agi in produce, I'm processing about 2000 call attempts per hour which is going to possibly double on this box.  I've been trying to keep things as light as possible.
> 
> If I can get congestion into a cdr and have it sending cdr off to a SQL db it would be ideal.
> 
> 
> Thanks
> 
> Kenny
> 
> 
> 
> Support contact details: support at geniusgroupltd.com
> 
> ----- Original Message -----
> From: "Gareth Blades" <list-asterisk at skycomuk.com>
> To: "Asterisk Users Mailing List - Non-Commercial Discussion" <asterisk-users at lists.digium.com>
> Sent: Wednesday, 30 June, 2010 11:44:58 AM
> Subject: Re: [asterisk-users] Adding Congestion to CDR logs
> 
> Kenny Watson wrote:
>> Hi,
>>
>>
>> I had a breif telco outage with one of my sip providers.
>>
>> Is there a way to add failed calls to the cdr aswell as the connected ones?
>>
>>  
>>
>> I was also thinking about having an automated process that monitored 
>> congested calls vs Succesful ones on a carrier and weight the dial plan 
>> using this.
>>
>>  
>>
>> My dial plan is already run by global varialbes for day/night for 
>> landline/mobile and I was thinking that I could use the manager 
>> interface to change these variables depending on the sucess rate from an 
>> application.   Not done that much research into it but I beleive that 
>> this is possible!
>>
>>  
>>
>> Thanks
>>
>> Kenny Watson
>>
> Yes you could certenly do that. If one of your sip providers goes down 
> and you have qualify=yes for them then the call should fail immediatly 
> and you can detect the return code and automatically fail over to a 
> different provider.
> 
> A better way would be to make use of AGI and write code to lookup calls 
> costs for the specific destination so you can perform least cost routing 
> between your providers. When the call is hungup you can record stats 
> about that provider such as if the call failed.
> 


-- 
_____________________________________________________________________
-- Bandwidth and Colocation Provided by http://www.api-digital.com --
New to Asterisk? Join us for a live introductory webinar every Thurs:
               http://www.asterisk.org/hello

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-users



More information about the asterisk-users mailing list