[asterisk-users] PRI congestion instead of busy

Justin Killen jkillen at allamericanasphalt.com
Wed Jul 9 12:59:42 CDT 2014


I tried changing the dialplan to use Hangup(17) instead of Playback/Busy.  Now instead of ringing for 20 seconds and then getting the "all circuits are busy now", I get "all circuits are busy now" immediately.

New snippet from site A:
...
[2014-07-09 10:53:43] VERBOSE[23020][C-0000db0d] app_dial.c:     -- Called DAHDI/g5/5551212
[2014-07-09 10:53:43] VERBOSE[23020][C-0000db0d] app_dial.c:     -- DAHDI/i7/5551212-413b is proceeding passing it to SIP/260-0000a35c
[2014-07-09 10:53:44] VERBOSE[23020][C-0000db0d] app_dial.c:     -- DAHDI/i7/5551212-413b is ringing
[2014-07-09 10:53:44] VERBOSE[23020][C-0000db0d] app_dial.c:     -- DAHDI/i7/5551212-413b is making progress passing it to SIP/260-0000a35c
[2014-07-09 10:53:51] VERBOSE[23020][C-0000db0d] app_dial.c:     -- DAHDI/i7/5551212-413b answered SIP/260-0000a35c
[2014-07-09 10:53:58] VERBOSE[23020][C-0000db0d] res_musiconhold.c:     -- Started music on hold, class 'default', on DAHDI/i7/5551212-413b
[2014-07-09 10:55:06] VERBOSE[23020][C-0000db0d] res_musiconhold.c:     -- Stopped music on hold on DAHDI/i7/5551212-413b
[2014-07-09 10:55:07] VERBOSE[23020][C-0000db0d] pbx.c:     -- Executing [h at macro-dialout-trunk:1] Macro("SIP/260-0000a35c", "hangupcall,") in new stack
[2014-07-09 10:55:07] VERBOSE[23020][C-0000db0d] pbx.c:     -- Executing [s at macro-hangupcall:1] GotoIf("SIP/260-0000a35c", "1?theend") in new stack
[2014-07-09 10:55:07] VERBOSE[23020][C-0000db0d] pbx.c:     -- Goto (macro-hangupcall,s,3)
[2014-07-09 10:55:07] VERBOSE[23020][C-0000db0d] pbx.c:     -- Executing [s at macro-hangupcall:3] ExecIf("SIP/260-0000a35c", "0?Set(CDR(recordingfile)=)") in new stack
[2014-07-09 10:55:07] VERBOSE[23020][C-0000db0d] pbx.c:     -- Executing [s at macro-hangupcall:4] Hangup("SIP/260-0000a35c", "") in new stack
[2014-07-09 10:55:07] VERBOSE[23020][C-0000db0d] app_macro.c:   == Spawn extension (macro-hangupcall, s, 4) exited non-zero on 'SIP/260-0000a35c' in macro 'hangupcall'
[2014-07-09 10:55:07] VERBOSE[23020][C-0000db0d] pbx.c:   == Spawn extension (macro-dialout-trunk, h, 1) exited non-zero on 'SIP/260-0000a35c'
[2014-07-09 10:55:07] VERBOSE[23020][C-0000db0d] chan_dahdi.c:     -- Hungup 'DAHDI/i7/5551212-413b'
[2014-07-09 10:55:07] VERBOSE[23020][C-0000db0d] app_macro.c:   == Spawn extension (macro-dialout-trunk, s, 22) exited non-zero on 'SIP/260-0000a35c' in macro 'dialout-trunk'
[2014-07-09 10:55:07] VERBOSE[23020][C-0000db0d] pbx.c:   == Spawn extension (from-internal, 5551212, 5) exited non-zero on 'SIP/260-0000a35c'
...

New snippet from site B:

...
[2014-07-09 10:47:03] VERBOSE[7133][C-00000c69] pbx.c:     -- Goto (macro-exten-vm,s-BUSY,1)
[2014-07-09 10:47:03] VERBOSE[7133][C-00000c69] pbx.c:     -- Executing [s-BUSY at macro-exten-vm:1] GotoIf("DAHDI/i8/9519999999-603", "0?exit,1") in new stack
[2014-07-09 10:47:03] VERBOSE[7133][C-00000c69] pbx.c:     -- Executing [s-BUSY at macro-exten-vm:2] Hangup("DAHDI/i8/9519999999-603", "17") in new stack
[2014-07-09 10:47:03] VERBOSE[7133][C-00000c69] app_macro.c:   == Spawn extension (macro-exten-vm, s-BUSY, 2) exited non-zero on 'DAHDI/i8/9519999999-603' in macro 'exten-vm'
[2014-07-09 10:47:03] VERBOSE[7133][C-00000c69] pbx.c:   == Spawn extension (from-did-direct, 803, 2) exited non-zero on 'DAHDI/i8/9519999999-603'
[2014-07-09 10:47:03] VERBOSE[7133][C-00000c69] pbx.c:     -- Executing [h at from-did-direct:1] Macro("DAHDI/i8/9519999999-603", "hangupcall,") in new stack
[2014-07-09 10:47:03] VERBOSE[7133][C-00000c69] pbx.c:     -- Executing [s at macro-hangupcall:1] GotoIf("DAHDI/i8/9519999999-603", "1?theend") in new stack
[2014-07-09 10:47:03] VERBOSE[7133][C-00000c69] pbx.c:     -- Goto (macro-hangupcall,s,3)
[2014-07-09 10:47:03] VERBOSE[7133][C-00000c69] pbx.c:     -- Executing [s at macro-hangupcall:3] ExecIf("DAHDI/i8/9519999999-603", "0?Set(CDR(recordingfile)=)") in new stack
[2014-07-09 10:47:03] VERBOSE[7133][C-00000c69] pbx.c:     -- Executing [s at macro-hangupcall:4] Hangup("DAHDI/i8/9519999999-603", "") in new stack
[2014-07-09 10:47:03] VERBOSE[7133][C-00000c69] app_macro.c:   == Spawn extension (macro-hangupcall, s, 4) exited non-zero on 'DAHDI/i8/9519999999-603' in macro 'hangupcall'
[2014-07-09 10:47:03] VERBOSE[7133][C-00000c69] pbx.c:   == Spawn extension (from-did-direct, h, 1) exited non-zero on 'DAHDI/i8/9519999999-603'
[2014-07-09 10:47:03] VERBOSE[7133][C-00000c69] chan_dahdi.c:     -- Hungup 'DAHDI/i8/9519999999-603'
...


It seems that now the PRI cause isn't getting set at all.

-Justin
________________________________
From: asterisk-users-bounces at lists.digium.com [mailto:asterisk-users-bounces at lists.digium.com] On Behalf Of Eric Wieling
Sent: Wednesday, July 09, 2014 10:35 AM
To: Asterisk Users Mailing List - Non-Commercial Discussion
Subject: Re: [asterisk-users] PRI congestion instead of busy

If you use Playtones you should put an Answer and a Wait(1) before the Playtones

I recommend using the Hangup app instead.   Busy would be Hangup(17).


From: asterisk-users-bounces at lists.digium.com [mailto:asterisk-users-bounces at lists.digium.com] On Behalf Of Justin Killen
Sent: Wednesday, July 09, 2014 2:24 PM
To: Asterisk Users Mailing List - Non-Commercial Discussion
Subject: [asterisk-users] PRI congestion instead of busy

I have two servers, each connected to the PTSN via PRI.  When I call from site A (951-999-9999) to site B (555-1212) and the phone at site B is on the phone, I hear the normal ring tone for about 20 seconds, then the message "all circuits are busy now.  please try your call again latter" followed by the congestion tone.  Instead, I want this to busy ring and then hang up without any message.

Here is a snippet from site A:

...
[2014-07-09 09:56:16] VERBOSE[21606][C-0000dab7] app_dial.c:     -- Called DAHDI/g5/5551212
[2014-07-09 09:56:17] VERBOSE[21606][C-0000dab7] app_dial.c:     -- DAHDI/i7/5551212-411b is proceeding passing it to SIP/260-0000a2f1
[2014-07-09 09:56:17] VERBOSE[21606][C-0000dab7] app_dial.c:     -- DAHDI/i7/5551212-411b is ringing
[2014-07-09 09:56:17] VERBOSE[21606][C-0000dab7] app_dial.c:     -- DAHDI/i7/5551212-411b is making progress passing it to SIP/260-0000a2f1
[2014-07-09 09:56:18] VERBOSE[21606][C-0000dab7] app_dial.c:     -- SIP/260-0000a2f1 requested media update control 26, passing it to DAHDI/i7/5551212-411b
[2014-07-09 09:56:37] VERBOSE[2286][C-0000dab7] sig_pri.c:     -- Span 7: Channel 0/3 got hangup request, cause 16
...

And from site B:

...
[2014-07-09 09:56:17] VERBOSE[3775][C-00000bb1] pbx.c:     -- Executing [s at macro-exten-vm:22] GotoIf("DAHDI/i8/9519999999-59f", "1?s-BUSY,1") in new stack
[2014-07-09 09:56:17] VERBOSE[3775][C-00000bb1] pbx.c:     -- Goto (macro-exten-vm,s-BUSY,1)
[2014-07-09 09:56:17] VERBOSE[3775][C-00000bb1] pbx.c:     -- Executing [s-BUSY at macro-exten-vm:1] GotoIf("DAHDI/i8/9519999999-59f", "0?exit,1") in new stack
[2014-07-09 09:56:17] VERBOSE[3775][C-00000bb1] pbx.c:     -- Executing [s-BUSY at macro-exten-vm:2] PlayTones("DAHDI/i8/9519999999-59f", "busy") in new stack
[2014-07-09 09:56:17] VERBOSE[3775][C-00000bb1] pbx.c:     -- Executing [s-BUSY at macro-exten-vm:3] Busy("DAHDI/i8/9519999999-59f", "20") in new stack
[2014-07-09 09:56:37] VERBOSE[3775][C-00000bb1] app_macro.c:   == Spawn extension (macro-exten-vm, s-BUSY, 3) exited non-zero on 'DAHDI/i8/9519999999-59f' in macro 'exten-vm'
[2014-07-09 09:56:37] VERBOSE[3775][C-00000bb1] pbx.c:   == Spawn extension (from-did-direct, 803, 2) exited non-zero on 'DAHDI/i8/9519999999-59f'
[2014-07-09 09:56:37] VERBOSE[3775][C-00000bb1] pbx.c:     -- Executing [h at from-did-direct:1] Macro("DAHDI/i8/9519999999-59f", "hangupcall,") in new stack
[2014-07-09 09:56:37] VERBOSE[3775][C-00000bb1] pbx.c:     -- Executing [s at macro-hangupcall:1] GotoIf("DAHDI/i8/9519999999-59f", "1?theend") in new stack
[2014-07-09 09:56:37] VERBOSE[3775][C-00000bb1] pbx.c:     -- Goto (macro-hangupcall,s,3)
[2014-07-09 09:56:37] VERBOSE[3775][C-00000bb1] pbx.c:     -- Executing [s at macro-hangupcall:3] ExecIf("DAHDI/i8/9519999999-59f", "0?Set(CDR(recordingfile)=)") in new stack
[2014-07-09 09:56:37] VERBOSE[3775][C-00000bb1] pbx.c:     -- Executing [s at macro-hangupcall:4] Hangup("DAHDI/i8/9519999999-59f", "") in new stack
...


My hunch is that the PRI cause is never set, so site A gets the generic cause 16 (normal call clearing) instead of 17 (user busy).  I suspect this is causing site A to get the "all circuits are busy now" message instead of a busy signal.  I thought calling Busy() would cause the PRI cause to get set when used on a channel that is PRI?  Should this be manually set instead?


Site B details:
Asterisk version 11.10.2
Libpri version: 1.4.12
DAHDI version: 2.9.0.1
Freepbx version: 2.11.0.37, distro version 5.211.65-14

-Justin

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-users/attachments/20140709/15cdb08b/attachment.html>


More information about the asterisk-users mailing list