Ringall seems to cause dialparties.agi to drive 100% cpu

I recently upgraded from an old TrixBox to a new AsteriskNow after a system crash. I tried to upgrade to TrixBox along the way, but could not get the new version to work in my environment, so after speaking with Digium (my card provider) I went to AsteriskNow - which is working, sort of…

Problem: Everything appears to work correctly when using ring stragety “ringfirstavailable” but swiching to “ringall” causes inbound calls to drive cpu to 100% in dialparties.agi without every deciding what to do. Debugging seems to be difficult as the problem does not reproduce reliably - although when it starts to happen it keeps happening until at least one reboot - althoug it does not always correct after a reboot.

Ringfirstavailable is not a good solution in this environment as there is some distance between phones and not everyone is present at all times.

Environment: POTS lines -> Digium TDM2400P with 6 FXO ports on two daughter cards -> DAHDI channels -> Ring Groups -> SIP phones (Polycom, Cisco & Granstream) and SIP softphone (eyeBeam). On no answer, then use backup ring group that adds outbound SIP to answering service.

System was installed from AsteriskNow 1.5.0 CD then all updates applied.
I have not applied the recent gnutls 1.4.1-3 or kernel & headers 2.6.18-128.7.1.el5 or kmod-dahdi-linux 2.2.0.2-1_centos5.2.6.18_128.7.1.el5 as I have been WAY out of town since before they were available and do not want to zap the production system when I cannot be there to repair it.

Versions:
Asterisk: 1.4.26.1
AsteriskNow: 1.5.0
FreePBX: 2.5.1.5

Not sure what else anyone needs to know to help with this - just let me know and I will get the info.

Please help. Any information on how to proceed to isolate the issue or to correct it would be helpful.

Look here for a fix:

http://www.freepbx.org/trac/ticket/3792

Thanks for the quick reply.

Not being sure which one to patch, I have applied the change to all three of the dialparties.agi that I found on my server:

  • /var/lib/asterisk/agi-bin/dialparties.agi
  • /var/www/html/admin/modules/core/agi-bin/dialparties.agi
  • /usr/src/freepbx-2.5.1/amp_conf/htdocs/admin/core/agi-bin/dialparties.agi

All three of these also say that they are generated from an internal include file and will be overwritten and should be changed to read-only (well, actually is says change it to write only but I believe that they probably meant read-only).

If I make these files read-only, am I losing the ability to configure the system through the FreePBX web interface? Or, will these files get skipped in a future upgrade?

I just want to be sure I understand what I am doing to myself when I make these changes.

Thanks,
Ken

I too made the patch to all three. I think you’ll be fine after that.

If not, there’s a more aggressive solution to have all your queue static members (for the ringall queue) as Sip/xxx instead of Local/xxx. When you do that, dialparties.agi is never called.

If you have to go that route, there are tips here on how to do it with FreePBX:

freepbx.org/forum/freepbx/us … ment-20822