Issues with BT ISDN, using B410P ISDN card with DAHDI driver

Get help with installing and running AsteriskNOW.

Moderators: Moderator, Support

Issues with BT ISDN, using B410P ISDN card with DAHDI driver

Postby domburns » Thu Dec 11, 2014 11:25 am

I have a Digium B410P BRI ISDN card installed on a dedicated server.
I have 3 BT BRI ISDN lines (totalling 9 channels (6 Bearer, 3 Signal).
I am using AsteriskNow version 11.13.0
The card is configured via the DAHDI config interface using FreePBX. It has the following settings on /etc/dahdi/system.conf :
span=1,1,0,CCS,AMI
span=2,0,0,CCS,AMI
span=3,0,0,CCS,AMI
bchan=1-2,4-5,7-8
hardhdlc=3,6,9
loadzone=uk

The chan_dahdi.conf file has the following content:
[general]
; generated by module
#include chan_dahdi_general.conf
; for user additions not provided by module
#include chan_dahdi_general_custom.conf
[channels]
language=en
busydetect=yes
busycount=10
usecallerid=yes
callwaiting=yes
usecallingpres=yes
threewaycalling=yes
transfer=yes
cancallforward=yes
callreturn=yes
echocancel=yes
echocancelwhenbridged=no
echotraining=no
immediate=no
faxdetect=no
rxgain=0.0
txgain=0.0
; for user additions not provided by module
#include chan_dahdi_channels_custom.conf
; include dahdi groups defined by DAHDI module of FreePBX
#include chan_dahdi_groups.conf
; include dahdi extensions defined in FreePBX
#include chan_dahdi_additional.conf

When I plug the ISDN lines in the 3 spans light green. The system is able to take inbound calls and I can route them to different extensions internally. Everything seems to work well.
However, I cannot for the life of me get the system to allow outbound calls.
Whenever I try to ring out I get the canned message:
"All circuits are busy now please try and call again later."

The log when doing this is as follows:
[root@obelix ~]# asterisk -rvvvvv
Asterisk 11.13.0, Copyright (C) 1999 - 2013 Digium, Inc. and others.
Created by Mark Spencer <markster@digium.com>
Asterisk comes with ABSOLUTELY NO WARRANTY; type 'core show warranty' for details.
This is free software, with components licensed under the GNU General Public
License version 2 and other licenses; you are welcome to redistribute it under
certain conditions. Type 'core show license' for details.
=========================================================================
Connected to Asterisk 11.13.0 currently running on obelix (pid = 7805)
== Using SIP RTP TOS bits 184
== Using SIP RTP CoS mark 5
-- Executing [07902857112@from-internal:1] Macro("SIP/100-0000000c", "user-callerid,LIMIT,EXTERNAL,") in new stack
-- Executing [s@macro-user-callerid:1] Set("SIP/100-0000000c", "TOUCH_MONITOR=1418314693.3306") in new stack
-- Executing [s@macro-user-callerid:2] Set("SIP/100-0000000c", "AMPUSER=100") in new stack
-- Executing [s@macro-user-callerid:3] GotoIf("SIP/100-0000000c", "0?report") in new stack
-- Executing [s@macro-user-callerid:4] ExecIf("SIP/100-0000000c", "1?Set(REALCALLERIDNUM=100)") in new stack
-- Executing [s@macro-user-callerid:5] Set("SIP/100-0000000c", "AMPUSER=100") in new stack
-- Executing [s@macro-user-callerid:6] GotoIf("SIP/100-0000000c", "0?limit") in new stack
-- Executing [s@macro-user-callerid:7] Set("SIP/100-0000000c", "AMPUSERCIDNAME=Reception") in new stack
-- Executing [s@macro-user-callerid:8] GotoIf("SIP/100-0000000c", "0?report") in new stack
-- Executing [s@macro-user-callerid:9] Set("SIP/100-0000000c", "AMPUSERCID=100") in new stack
-- Executing [s@macro-user-callerid:10] Set("SIP/100-0000000c", "__DIAL_OPTIONS=Ttr") in new stack
-- Executing [s@macro-user-callerid:11] Set("SIP/100-0000000c", "CALLERID(all)="Reception" <100>") in new stack
-- Executing [s@macro-user-callerid:12] GotoIf("SIP/100-0000000c", "0?limit") in new stack
-- Executing [s@macro-user-callerid:13] ExecIf("SIP/100-0000000c", "1?Set(GROUP(concurrency_limit)=100)") in new stack
-- Executing [s@macro-user-callerid:14] GosubIf("SIP/100-0000000c", "7?sub-ccss,s,1(from-internal,07902857112)") in new stack
-- Executing [s@sub-ccss:1] ExecIf("SIP/100-0000000c", "0?Return()") in new stack
-- Executing [s@sub-ccss:2] Set("SIP/100-0000000c", "CCSS_SETUP=TRUE") in new stack
-- Executing [s@sub-ccss:3] GosubIf("SIP/100-0000000c", "0?monitor_config,1(from-internal,07902857112):monitor_default,1(from-internal,07902857112)") in new stack
-- Executing [monitor_default@sub-ccss:1] GotoIf("SIP/100-0000000c", "0?is_exten") in new stack
-- Executing [monitor_default@sub-ccss:2] StackPop("SIP/100-0000000c", "") in new stack
-- Executing [monitor_default@sub-ccss:3] Return("SIP/100-0000000c", "FALSE") in new stack
-- Executing [s@macro-user-callerid:15] ExecIf("SIP/100-0000000c", "0?Set(CHANNEL(language)=)") in new stack
-- Executing [s@macro-user-callerid:16] GotoIf("SIP/100-0000000c", "1?continue") in new stack
-- Goto (macro-user-callerid,s,30)
-- Executing [s@macro-user-callerid:30] Set("SIP/100-0000000c", "CALLERID(number)=100") in new stack
-- Executing [s@macro-user-callerid:31] Set("SIP/100-0000000c", "CALLERID(name)=Reception") in new stack
-- Executing [s@macro-user-callerid:32] Set("SIP/100-0000000c", "CDR(cnum)=100") in new stack
-- Executing [s@macro-user-callerid:33] Set("SIP/100-0000000c", "CDR(cnam)=Reception") in new stack
-- Executing [s@macro-user-callerid:34] Set("SIP/100-0000000c", "CHANNEL(language)=en") in new stack
-- Executing [07902857112@from-internal:2] ExecIf("SIP/100-0000000c", "0 ?Set(CDR(accountcode)=)") in new stack
-- Executing [07902857112@from-internal:3] Set("SIP/100-0000000c", "MOHCLASS=default") in new stack
-- Executing [07902857112@from-internal:4] ExecIf("SIP/100-0000000c", "1?Set(TRUNKCIDOVERRIDE=01476576538)") in new stack
-- Executing [07902857112@from-internal:5] Set("SIP/100-0000000c", "_NODEST=") in new stack
-- Executing [07902857112@from-internal:6] Gosub("SIP/100-0000000c", "sub-record-check,s,1(out,07902857112,)") in new stack
-- Executing [s@sub-record-check:1] Set("SIP/100-0000000c", "REC_POLICY_MODE_SAVE=") in new stack
-- Executing [s@sub-record-check:2] GotoIf("SIP/100-0000000c", "1?check") in new stack
-- Goto (sub-record-check,s,7)
-- Executing [s@sub-record-check:7] Set("SIP/100-0000000c", "__MON_FMT=wav") in new stack
-- Executing [s@sub-record-check:8] GotoIf("SIP/100-0000000c", "1?next") in new stack
-- Goto (sub-record-check,s,11)
-- Executing [s@sub-record-check:11] ExecIf("SIP/100-0000000c", "0?Return()") in new stack
-- Executing [s@sub-record-check:12] ExecIf("SIP/100-0000000c", "0?Set(__REC_POLICY_MODE=)") in new stack
-- Executing [s@sub-record-check:13] GotoIf("SIP/100-0000000c", "0?out,1") in new stack
-- Executing [s@sub-record-check:14] Set("SIP/100-0000000c", "__REC_STATUS=INITIALIZED") in new stack
-- Executing [s@sub-record-check:15] Set("SIP/100-0000000c", "NOW=1418314693") in new stack
-- Executing [s@sub-record-check:16] Set("SIP/100-0000000c", "__DAY=11") in new stack
-- Executing [s@sub-record-check:17] Set("SIP/100-0000000c", "__MONTH=12") in new stack
-- Executing [s@sub-record-check:18] Set("SIP/100-0000000c", "__YEAR=2014") in new stack
-- Executing [s@sub-record-check:19] Set("SIP/100-0000000c", "__TIMESTR=20141211-161813") in new stack
-- Executing [s@sub-record-check:20] Set("SIP/100-0000000c", "__FROMEXTEN=100") in new stack
-- Executing [s@sub-record-check:21] Set("SIP/100-0000000c", "__CALLFILENAME=out-07902857112-100-20141211-161813-1418314693.3306") in new stack
-- Executing [s@sub-record-check:22] Goto("SIP/100-0000000c", "out,1") in new stack
-- Goto (sub-record-check,out,1)
-- Executing [out@sub-record-check:1] ExecIf("SIP/100-0000000c", "1?Set(__REC_POLICY_MODE=dontcare)") in new stack
-- Executing [out@sub-record-check:2] GosubIf("SIP/100-0000000c", "0?record,1(exten,07902857112,100)") in new stack
-- Executing [out@sub-record-check:3] Return("SIP/100-0000000c", "") in new stack
-- Executing [07902857112@from-internal:7] Macro("SIP/100-0000000c", "dialout-trunk,1,07902857112,,off") in new stack
-- Executing [s@macro-dialout-trunk:1] Set("SIP/100-0000000c", "DIAL_TRUNK=1") in new stack
-- Executing [s@macro-dialout-trunk:2] GosubIf("SIP/100-0000000c", "0?sub-pincheck,s,1()") in new stack
-- Executing [s@macro-dialout-trunk:3] GotoIf("SIP/100-0000000c", "0?disabletrunk,1") in new stack
-- Executing [s@macro-dialout-trunk:4] Set("SIP/100-0000000c", "DIAL_NUMBER=07902857112") in new stack
-- Executing [s@macro-dialout-trunk:5] Set("SIP/100-0000000c", "DIAL_TRUNK_OPTIONS=Ttr") in new stack
-- Executing [s@macro-dialout-trunk:6] Set("SIP/100-0000000c", "OUTBOUND_GROUP=OUT_1") in new stack
-- Executing [s@macro-dialout-trunk:7] GotoIf("SIP/100-0000000c", "1?nomax") in new stack
-- Goto (macro-dialout-trunk,s,9)
-- Executing [s@macro-dialout-trunk:9] GotoIf("SIP/100-0000000c", "0?skipoutcid") in new stack
-- Executing [s@macro-dialout-trunk:10] Set("SIP/100-0000000c", "DIAL_TRUNK_OPTIONS=Tt") in new stack
-- Executing [s@macro-dialout-trunk:11] Macro("SIP/100-0000000c", "outbound-callerid,1") in new stack
-- Executing [s@macro-outbound-callerid:1] ExecIf("SIP/100-0000000c", "0?Set(CALLERPRES()=)") in new stack
-- Executing [s@macro-outbound-callerid:2] ExecIf("SIP/100-0000000c", "0?Set(REALCALLERIDNUM=100)") in new stack
-- Executing [s@macro-outbound-callerid:3] GotoIf("SIP/100-0000000c", "1?normcid") in new stack
-- Goto (macro-outbound-callerid,s,6)
-- Executing [s@macro-outbound-callerid:6] Set("SIP/100-0000000c", "USEROUTCID=") in new stack
-- Executing [s@macro-outbound-callerid:7] Set("SIP/100-0000000c", "EMERGENCYCID=") in new stack
-- Executing [s@macro-outbound-callerid:8] Set("SIP/100-0000000c", "TRUNKOUTCID=01476576538") in new stack
-- Executing [s@macro-outbound-callerid:9] GotoIf("SIP/100-0000000c", "1?trunkcid") in new stack
-- Goto (macro-outbound-callerid,s,14)
-- Executing [s@macro-outbound-callerid:14] ExecIf("SIP/100-0000000c", "1?Set(CALLERID(all)=01476576538)") in new stack
-- Executing [s@macro-outbound-callerid:15] ExecIf("SIP/100-0000000c", "0?Set(CALLERID(all)=)") in new stack
-- Executing [s@macro-outbound-callerid:16] ExecIf("SIP/100-0000000c", "1?Set(CALLERID(all)=01476576538)") in new stack
-- Executing [s@macro-outbound-callerid:17] ExecIf("SIP/100-0000000c", "0?Set(CALLERPRES()=prohib_passed_screen)") in new stack
-- Executing [s@macro-outbound-callerid:18] Set("SIP/100-0000000c", "CDR(outbound_cnum)=01476576538") in new stack
-- Executing [s@macro-outbound-callerid:19] Set("SIP/100-0000000c", "CDR(outbound_cnam)=") in new stack
-- Executing [s@macro-dialout-trunk:12] GosubIf("SIP/100-0000000c", "0?sub-flp-1,s,1()") in new stack
-- Executing [s@macro-dialout-trunk:13] Set("SIP/100-0000000c", "OUTNUM=07902857112") in new stack
-- Executing [s@macro-dialout-trunk:14] Set("SIP/100-0000000c", "custom=DAHDI/g0") in new stack
-- Executing [s@macro-dialout-trunk:15] ExecIf("SIP/100-0000000c", "0?Set(DIAL_TRUNK_OPTIONS=M(setmusic^default)Tt)") in new stack
-- Executing [s@macro-dialout-trunk:16] ExecIf("SIP/100-0000000c", "0?Set(DIAL_TRUNK_OPTIONS=TtM(confirm))") in new stack
-- Executing [s@macro-dialout-trunk:17] Macro("SIP/100-0000000c", "dialout-trunk-predial-hook,") in new stack
-- Executing [s@macro-dialout-trunk-predial-hook:1] MacroExit("SIP/100-0000000c", "") in new stack
-- Executing [s@macro-dialout-trunk:18] GotoIf("SIP/100-0000000c", "0?bypass,1") in new stack
-- Executing [s@macro-dialout-trunk:19] ExecIf("SIP/100-0000000c", "1?Set(CONNECTEDLINE(num,i)=07902857112)") in new stack
-- Executing [s@macro-dialout-trunk:20] ExecIf("SIP/100-0000000c", "1?Set(CONNECTEDLINE(name,i)=CID:01476576538)") in new stack
-- Executing [s@macro-dialout-trunk:21] GotoIf("SIP/100-0000000c", "0?customtrunk") in new stack
-- Executing [s@macro-dialout-trunk:22] Dial("SIP/100-0000000c", "DAHDI/g0/07902857112,300,Tt") in new stack
[2014-12-11 16:18:13] WARNING[23150][C-0000067c]: app_dial.c:2437 dial_exec_full: Unable to create channel of type 'DAHDI' (cause 34 - Circuit/channel congestion)
== Everyone is busy/congested at this time (1:0/1/0)
-- Executing [s@macro-dialout-trunk:23] NoOp("SIP/100-0000000c", "Dial failed for some reason with DIALSTATUS = CONGESTION and HANGUPCAUSE = 34") in new stack
-- Executing [s@macro-dialout-trunk:24] GotoIf("SIP/100-0000000c", "0?continue,1:s-CONGESTION,1") in new stack
-- Goto (macro-dialout-trunk,s-CONGESTION,1)
-- Executing [s-CONGESTION@macro-dialout-trunk:1] Set("SIP/100-0000000c", "RC=34") in new stack
-- Executing [s-CONGESTION@macro-dialout-trunk:2] Goto("SIP/100-0000000c", "34,1") in new stack
-- Goto (macro-dialout-trunk,34,1)
-- Executing [34@macro-dialout-trunk:1] Goto("SIP/100-0000000c", "continue,1") in new stack
-- Goto (macro-dialout-trunk,continue,1)
-- Executing [continue@macro-dialout-trunk:1] NoOp("SIP/100-0000000c", "TRUNK Dial failed due to CONGESTION HANGUPCAUSE: 34 - failing through to other trunks") in new stack
-- Executing [continue@macro-dialout-trunk:2] Set("SIP/100-0000000c", "CALLERID(number)=100") in new stack
-- Executing [07902857112@from-internal:8] Macro("SIP/100-0000000c", "outisbusy,") in new stack
-- Executing [s@macro-outisbusy:1] Progress("SIP/100-0000000c", "") in new stack
-- Executing [s@macro-outisbusy:2] GotoIf("SIP/100-0000000c", "0?emergency,1") in new stack
-- Executing [s@macro-outisbusy:3] GotoIf("SIP/100-0000000c", "0?intracompany,1") in new stack
-- Executing [s@macro-outisbusy:4] Playback("SIP/100-0000000c", "all-circuits-busy-now&pls-try-call-later, noanswer") in new stack
-- <SIP/100-0000000c> Playing 'all-circuits-busy-now.ulaw' (language 'en')
> 0x7f1db00999b0 -- Probation passed - setting RTP source address to 192.168.50.103:10600
-- <SIP/100-0000000c> Playing 'pls-try-call-later.ulaw' (language 'en')
== Spawn extension (macro-outisbusy, s, 4) exited non-zero on 'SIP/100-0000000c' in macro 'outisbusy'
== Spawn extension (from-internal, 07902857112, 8) exited non-zero on 'SIP/100-0000000c'
-- Executing [h@from-internal:1] Hangup("SIP/100-0000000c", "") in new stack
== Spawn extension (from-internal, h, 1) exited non-zero on 'SIP/100-0000000c'
obelix*CLI>
Disconnected from Asterisk server
Asterisk cleanly ending (0).
Executing last minute cleanups
[root@obelix ~]#

I have root SSH access, as well FTP and FreePBX access. I'm reasonably familiar with the Linux CLI (I can navigate, I know how to run scripts and so forth, just don't ask me to recompile the kernel....). I even have physical access, but it does mean getting up, walking to the server room and plugging in a monitor and keyboard. Plus it's a cold server room. That said, I'm happy to get my hands dirty (so to speak) and can feed back any information or outputs that you think may help but I'm stuck on what to try.

Everything else is setup and working nicely but we can't make outgoing calls. :roll:

Any help gratefully received.
domburns
Newsterisk
 
Posts: 3
Joined: Wed Nov 05, 2014 3:46 am

Re: Issues with BT ISDN, using B410P ISDN card with DAHDI driver

Postby ssyz » Sun Dec 14, 2014 6:04 am

Do you have a SIP account? Thats probably why you cant call out.
ssyz
Newsterisk
 
Posts: 1
Joined: Sun Dec 14, 2014 6:02 am

Re: Issues with BT ISDN, using B410P ISDN card with DAHDI driver

Postby david55 » Sun Dec 14, 2014 8:01 am

He's not calling out using VoIP for the outgoing side. He's getting all channels busy on a an ISDN connection.

A couple of notes. For current production ISDN cards, you should contact the vendor, not the open source community.

We are not experts on FreePBX, so you should try to find the error report from FreePBX and highlight it, so we don't have to trawl through lots of noise from FreePBX. Also, a lot of FreePBX configuration is in included files, you need to include those, as well as the top level file.
david55
Moves Like Spencer
 
Posts: 12570
Joined: Fri Sep 26, 2008 5:03 am


Return to AsteriskNOW Support

Who is online

Users browsing this forum: No registered users and 1 guest