Xorcom astribank - Dahdi trunk issue

HI,

I am having some issues with an Astribank Bri and Xorcom and refusing to help due to the gateway being nearly 2 years old !

The Astribank is connected to a newly built FreePBX Distro running Asterisk 1.8

Everything seems to be working, the Astribank is USB and detected by Asterisk, all Spans are up and I have created a DAHDI Trunk.

When I make a call I am getting the following error

WARNING[1991]: channel.c:4747 ast_prod: Prodding channel ‘SIP/500-00000005’ failed
== Spawn extension (macro-dialout-trunk, s-NOANSWER, 4) exited non-zero on ‘SIP/500-00000005’ in macro ‘dialout-trunk’
== Spawn extension (from-internal, 07824880195, 5) exited non-zero on ‘SIP/500-00000005’
– Executing [[email protected]:1] Hangup(“SIP/500-00000005”, “”) in new stack
== Spawn extension (from-internal, h, 1) exited non-zero on ‘SIP/500-00000005’

I have no idea what this means, can anyone help.

At the moment I only have a ISDN 2e plugged into port 1. We are using a BT UK ISDN line.

Below is a copy of my chan_dahdi.conf file

;
; Zapata telephony interface
;
; Configuration file

[trunkgroups]

[channels]

language=en
context=from-zaptel
signalling=fxs_ks
rxwink=300 ; Atlas seems to use long (250ms) winks
;
; Whether or not to do distinctive ring detection on FXO lines
;
;usedistinctiveringdetection=yes
busydetect=yes
busycount=10
usecallerid=yes
hidecallerid=no
callwaiting=yes
usecallingpres=yes
callwaitingcallerid=yes
threewaycalling=yes
transfer=yes
cancallforward=yes
callreturn=yes
echocancel=yes
echocancelwhenbridged=no
echotraining=800
rxgain=0.0
txgain=0.0
group=0
callgroup=1
pickupgroup=1
immediate=no
nationalprefix=0

;faxdetect=both
faxdetect=incoming
;faxdetect=outgoing
;faxdetect=no

#include dahdi-channels.conf

group=1

#pridialplan=unknown

;Include AMP configs
#include chan_dahdi_additional.conf

; Autogenerated by /usr/sbin/dahdi_genconf on Thu May 2 12:04:28 2013
; If you edit this file and execute /usr/sbin/dahdi_genconf again,
; your manual changes will be LOST.
; Dahdi Channels Configurations (chan_dahdi.conf)
;
; This is not intended to be a complete chan_dahdi.conf. Rather, it is intended
; to be #include-d by /etc/chan_dahdi.conf that will include the global settings
;

; Span 1: XBUS-00/XPD-00 “Xorcom XPD [].1: BRI_TE” (MASTER)
group=0,11
context=from-pstn
switchtype = euroisdn
signalling = bri_cpe
channel => 1-2
context = default
#group = 63

; Span 2: XBUS-00/XPD-01 "Xorcom XPD [].2: BRI_TE"
group=0,12
context=from-pstn
switchtype = euroisdn
signalling = bri_cpe_ptmp
channel => 4-5
context = default
group = 63

; Span 3: XBUS-00/XPD-02 "Xorcom XPD [].3: BRI_TE"
group=0,13
context=from-pstn
switchtype = euroisdn
signalling = bri_cpe_ptmp
channel => 7-8
context = default
group = 63

; Span 4: XBUS-00/XPD-03 "Xorcom XPD [].4: BRI_TE"
group=0,14
context=from-pstn
switchtype = euroisdn
signalling = bri_cpe_ptmp
channel => 10-11
context = default
group = 63

Many Thanks

[[email protected] ~]# dahdi_cfg -vv
DAHDI Tools Version - 2.6.1

DAHDI Version: 2.6.1
Echo Canceller(s): HWEC, OSLEC
Configuration

SPAN 1: CCS/ AMI Build-out: 0 db (CSU)/0-133 feet (DSX-1)
SPAN 2: CCS/ AMI Build-out: 0 db (CSU)/0-133 feet (DSX-1)
SPAN 3: CCS/ AMI Build-out: 0 db (CSU)/0-133 feet (DSX-1)
SPAN 4: CCS/ AMI Build-out: 0 db (CSU)/0-133 feet (DSX-1)

Channel map:

Channel 01: Clear channel (Default) (Echo Canceler: oslec) (Slaves: 01)
Channel 02: Clear channel (Default) (Echo Canceler: oslec) (Slaves: 02)
Channel 03: Hardware assisted D-channel (Default) (Echo Canceler: none) (Slaves: 03)
Channel 04: Clear channel (Default) (Echo Canceler: oslec) (Slaves: 04)
Channel 05: Clear channel (Default) (Echo Canceler: oslec) (Slaves: 05)
Channel 06: Hardware assisted D-channel (Default) (Echo Canceler: none) (Slaves: 06)
Channel 07: Clear channel (Default) (Echo Canceler: oslec) (Slaves: 07)
Channel 08: Clear channel (Default) (Echo Canceler: oslec) (Slaves: 08)
Channel 09: Hardware assisted D-channel (Default) (Echo Canceler: none) (Slaves: 09)
Channel 10: Clear channel (Default) (Echo Canceler: oslec) (Slaves: 10)
Channel 11: Clear channel (Default) (Echo Canceler: oslec) (Slaves: 11)
Channel 12: Hardware assisted D-channel (Default) (Echo Canceler: none) (Slaves: 12)

12 channels to configure.

Setting echocan for channel 1 to oslec
Setting echocan for channel 2 to oslec
Setting echocan for channel 3 to none
Setting echocan for channel 4 to oslec
Setting echocan for channel 5 to oslec
Setting echocan for channel 6 to none
Setting echocan for channel 7 to oslec
Setting echocan for channel 8 to oslec
Setting echocan for channel 9 to none
Setting echocan for channel 10 to oslec
Setting echocan for channel 11 to oslec
Setting echocan for channel 12 to none

Hi pigsfoot,

  1. Are you able to make the inbound calls?

  2. I see some mistakes in your configuration file that are not related to the outbound calls problem:
    a) comment out the busydetect related parametrs. They are not neccessary for digital lines and can cause unexpected call disconnection. Please use the ‘;’ character as the line copmment sign:
    ;busydetect=yes
    ;busycount=10
    b) You use OSLEC echo canceller. This echocanceller doesn’t require the echo training. Therefore please define:
    echotraining=no

  3. The following parameters may affect the outbound calls performance. Please remove (or comment out):
    ;nationalprefix=0

and define the following parameters BEFORE 'define them before ‘#include dahdi-channels.conf"’:
pridialplan=unknown
prilocaldialplan=unknown

Restart Asterisk and try to make some calls.
If you still have any problem then enable ISDN trace and post it. The trace could be enabled by using the following Asterisk CLI command:

pri set debug 1 span N

where N must be replaced with the DAHDI span number.

Hi, Leonidf

Thank you for the response and notes on the changes. I have commented out the necessary lines you suggested and tried again but unfortunately it still is not working.

I have run the ISDN trace as you suggest and the results are below.

Many Thanks for your help so far…

localhostCLI> pri set debug 1 span 1
Enabled debugging on span 1
== Using SIP RTP TOS bits 184
== Using SIP RTP CoS mark 5
– Executing [[email protected]:1] Macro(“SIP/500-00000002”, “user-callerid,LIMIT,”) in new stack
– Executing [[email protected]:1] Set(“SIP/500-00000002”, “AMPUSER=500”) in new stack
– Executing [[email protected]:2] GotoIf(“SIP/500-00000002”, “0?report”) in new stack
– Executing [[email protected]:3] ExecIf(“SIP/500-00000002”, “1?Set(REALCALLERIDNUM=500)”) in new stack
– Executing [[email protected]:4] Set(“SIP/500-00000002”, “AMPUSER=500”) in new stack
– Executing [[email protected]:5] Set(“SIP/500-00000002”, “AMPUSERCIDNAME=Rod”) in new stack
– Executing [[email protected]:6] GotoIf(“SIP/500-00000002”, “0?report”) in new stack
– Executing [[email protected]:7] Set(“SIP/500-00000002”, “AMPUSERCID=500”) in new stack
– Executing [[email protected]:8] Set(“SIP/500-00000002”, “CALLERID(all)=“Rod” <500>”) in new stack
– Executing [[email protected]:9] GotoIf(“SIP/500-00000002”, “0?limit”) in new stack
– Executing [[email protected]:10] ExecIf(“SIP/500-00000002”, “1?Set(GROUP(concurrency_limit)=500)”) in new stack
– Executing [[email protected]:11] GosubIf(“SIP/500-00000002”, “7?sub-ccss,s,1(from-internal,07824880195)”) in new stack
– Executing [[email protected]:1] ExecIf(“SIP/500-00000002”, “0?Return()”) in new stack
– Executing [[email protected]:2] Set(“SIP/500-00000002”, “CCSS_SETUP=TRUE”) in new stack
– Executing [[email protected]:3] GosubIf(“SIP/500-00000002”, “0?monitor_config,1(from-internal,07824880195):monitor_default,1(from-internal,07824880195)”) in new stack
– Executing [[email protected]:1] GotoIf(“SIP/500-00000002”, “0?is_exten”) in new stack
– Executing [[email protected]:2] StackPop(“SIP/500-00000002”, “”) in new stack
– Executing [[email protected]:3] Return(“SIP/500-00000002”, “FALSE”) in new stack
– Executing [[email protected]:12] ExecIf(“SIP/500-00000002”, “0?Set(CHANNEL(language)=)”) in new stack
– Executing [[email protected]:13] GotoIf(“SIP/500-00000002”, “1?continue”) in new stack
– Goto (macro-user-callerid,s,26)
– Executing [[email protected]:26] Set(“SIP/500-00000002”, “CALLERID(number)=500”) in new stack
– Executing [[email protected]:27] Set(“SIP/500-00000002”, “CALLERID(name)=Rod”) in new stack
– Executing [[email protected]:28] Set(“SIP/500-00000002”, “CHANNEL(language)=en”) in new stack
– Executing [[email protected]:2] Set(“SIP/500-00000002”, “MOHCLASS=default”) in new stack
– Executing [[email protected]:3] Set(“SIP/500-00000002”, “_NODEST=”) in new stack
– Executing [[email protected]:4] Gosub(“SIP/500-00000002”, “sub-record-check,s,1(out,07824880195,)”) in new stack
– Executing [[email protected]:1] GotoIf(“SIP/500-00000002”, “1?check”) in new stack
– Goto (sub-record-check,s,6)
– Executing [[email protected]:6] Set(“SIP/500-00000002”, “__MON_FMT=wav”) in new stack
– Executing [[email protected]:7] GotoIf(“SIP/500-00000002”, “1?next”) in new stack
– Goto (sub-record-check,s,10)
– Executing [[email protected]:10] ExecIf(“SIP/500-00000002”, “0?Return()”) in new stack
– Executing [[email protected]:11] GotoIf(“SIP/500-00000002”, “0?out,1”) in new stack
– Executing [[email protected]:12] Set(“SIP/500-00000002”, “__REC_STATUS=INITIALIZED”) in new stack
– Executing [[email protected]:13] ExecIf(“SIP/500-00000002”, “0?Set(__REC_POLICY_MODE=)”) in new stack
– Executing [[email protected]:14] Set(“SIP/500-00000002”, “NOW=1367826794”) in new stack
– Executing [[email protected]:15] Set(“SIP/500-00000002”, “__DAY=06”) in new stack
– Executing [[email protected]:16] Set(“SIP/500-00000002”, “__MONTH=05”) in new stack
– Executing [[email protected]:17] Set(“SIP/500-00000002”, “__YEAR=2013”) in new stack
– Executing [[email protected]:18] Set(“SIP/500-00000002”, “__TIMESTR=20130506-075314”) in new stack
– Executing [[email protected]:19] Set(“SIP/500-00000002”, “__FROMEXTEN=500”) in new stack
– Executing [[email protected]:20] Set(“SIP/500-00000002”, “__CALLFILENAME=out-07824880195-500-20130506-075314-1367826794.4”) in new stack
– Executing [[email protected]:21] Goto(“SIP/500-00000002”, “out,1”) in new stack
– Goto (sub-record-check,out,1)
– Executing [[email protected]:1] ExecIf(“SIP/500-00000002”, “1?Set(__REC_POLICY_MODE=dontcare)”) in new stack
– Executing [[email protected]:2] GosubIf(“SIP/500-00000002”, “0?record,1(exten,07824880195,500)”) in new stack
– Executing [[email protected]:3] Return(“SIP/500-00000002”, “”) in new stack
– Executing [[email protected]:5] Macro(“SIP/500-00000002”, “dialout-trunk,2,07824880195,”) in new stack
– Executing [[email protected]:1] Set(“SIP/500-00000002”, “DIAL_TRUNK=2”) in new stack
– Executing [[email protected]:2] GosubIf(“SIP/500-00000002”, “0?sub-pincheck,s,1()”) in new stack
– Executing [[email protected]:3] GotoIf(“SIP/500-00000002”, “0?disabletrunk,1”) in new stack
– Executing [[email protected]:4] Set(“SIP/500-00000002”, “DIAL_NUMBER=07824880195”) in new stack
– Executing [[email protected]:5] Set(“SIP/500-00000002”, “DIAL_TRUNK_OPTIONS=tr”) in new stack
– Executing [[email protected]:6] Set(“SIP/500-00000002”, “OUTBOUND_GROUP=OUT_2”) in new stack
– Executing [[email protected]:7] GotoIf(“SIP/500-00000002”, “1?nomax”) in new stack
– Goto (macro-dialout-trunk,s,9)
– Executing [[email protected]:9] GotoIf(“SIP/500-00000002”, “0?skipoutcid”) in new stack
– Executing [[email protected]:10] Set(“SIP/500-00000002”, “DIAL_TRUNK_OPTIONS=”) in new stack
– Executing [[email protected]:11] Macro(“SIP/500-00000002”, “outbound-callerid,2”) in new stack
– Executing [[email protected]:1] ExecIf(“SIP/500-00000002”, “0?Set(CALLERPRES()=)”) in new stack
– Executing [[email protected]:2] ExecIf(“SIP/500-00000002”, “0?Set(REALCALLERIDNUM=500)”) in new stack
– Executing [[email protected]:3] GotoIf(“SIP/500-00000002”, “1?normcid”) in new stack
– Goto (macro-outbound-callerid,s,6)
– Executing [[email protected]:6] Set(“SIP/500-00000002”, “USEROUTCID=”) in new stack
– Executing [[email protected]:7] Set(“SIP/500-00000002”, “EMERGENCYCID=”) in new stack
– Executing [[email protected]:8] Set(“SIP/500-00000002”, “TRUNKOUTCID=”) in new stack
– Executing [[email protected]:9] GotoIf(“SIP/500-00000002”, “1?trunkcid”) in new stack
– Goto (macro-outbound-callerid,s,12)
– Executing [[email protected]:12] ExecIf(“SIP/500-00000002”, “0?Set(CALLERID(all)=)”) in new stack
– Executing [[email protected]:13] ExecIf(“SIP/500-00000002”, “0?Set(CALLERID(all)=)”) in new stack
– Executing [[email protected]:14] ExecIf(“SIP/500-00000002”, “0?Set(CALLERID(all)=)”) in new stack
– Executing [[email protected]:15] ExecIf(“SIP/500-00000002”, “0?Set(CALLERPRES()=prohib_passed_screen)”) in new stack
– Executing [[email protected]:12] GosubIf(“SIP/500-00000002”, “0?sub-flp-2,s,1()”) in new stack
– Executing [[email protected]:13] Set(“SIP/500-00000002”, “OUTNUM=07824880195”) in new stack
– Executing [[email protected]:14] Set(“SIP/500-00000002”, “custom=DAHDI/g0”) in new stack
– Executing [[email protected]:15] ExecIf(“SIP/500-00000002”, “0?Set(DIAL_TRUNK_OPTIONS=M(setmusic^default))”) in new stack
– Executing [[email protected]:16] ExecIf(“SIP/500-00000002”, “0?Set(DIAL_TRUNK_OPTIONS=M(confirm))”) in new stack
– Executing [[email protected]:17] Macro(“SIP/500-00000002”, “dialout-trunk-predial-hook,”) in new stack
– Executing [[email protected]:1] MacroExit(“SIP/500-00000002”, “”) in new stack
– Executing [[email protected]:18] GotoIf(“SIP/500-00000002”, “0?bypass,1”) in new stack
– Executing [[email protected]:19] ExecIf(“SIP/500-00000002”, “1?Set(CONNECTEDLINE(num,i)=07824880195)”) in new stack
– Executing [[email protected]:20] ExecIf(“SIP/500-00000002”, “1?Set(CONNECTEDLINE(name,i)=CID:500)”) in new stack
– Executing [[email protected]:21] GotoIf(“SIP/500-00000002”, “0?customtrunk”) in new stack
– Executing [[email protected]:22] Dial(“SIP/500-00000002”, “DAHDI/g0/07824880195,300,”) in new stack
PRI Span: 1 – Making new call for cref 32771
– Requested transfer capability: 0x00 - SPEECH
PRI Span: 1
PRI Span: 1 > DL-DATA request
PRI Span: 1 > Protocol Discriminator: Q.931 (8) len=34
PRI Span: 1 > TEI=0 Call Ref: len= 1 (reference 3/0x3) (Sent from originator)
PRI Span: 1 > Message Type: SETUP (5)
PRI Span: 1 Changing from state 1(TEI unassigned) to 3(Establish awaiting TEI)
PRI Span: 1 Sending TEI management message 1(TEI Identity Request), TEI=127
PRI Span: 1 TEI=0 Just queued I-frame since in state 3(Establish awaiting TEI)
PRI Span: 1 q931.c:6036 q931_setup: Call 32771 enters state 1 (Call Initiated). Hold state: Idle
– Called DAHDI/g0/07824880195
PRI Span: 1 T303 timed out. cref:32771
PRI Span: 1
PRI Span: 1 > DL-DATA request
PRI Span: 1 > Protocol Discriminator: Q.931 (8) len=34
PRI Span: 1 > TEI=0 Call Ref: len= 1 (reference 3/0x3) (Sent from originator)
PRI Span: 1 > Message Type: SETUP (5)
PRI Span: 1 TEI=0 Just queued I-frame since in state 3(Establish awaiting TEI)
PRI Span: 1 T303 timed out. cref:32771
PRI Span: 1 q931.c:5925 t303_expiry: Call 32771 enters state 0 (Null). Hold state: Idle
PRI Span: 1 Fake clearing. cref:32771
PRI Span: 1 q931.c:9219 pri_internal_clear: alive 1, hangupack 1
Span 1: Processing event PRI_EVENT_HANGUP
– Span 1: Channel 0/1 got hangup, cause 18
PRI Span: 1 q931.c:6837 q931_hangup: Hangup other cref:32771
PRI Span: 1 q931.c:6594 __q931_hangup: ourstate Null, peerstate Null, hold-state Idle
PRI Span: 1 Destroying call 0xb730f480, ourstate Null, peerstate Null, hold-state Idle
– Hungup ‘DAHDI/i1/07824880195-3’
== Everyone is busy/congested at this time (1:0/0/1)
– Executing [[email protected]:23] NoOp(“SIP/500-00000002”, “Dial failed for some reason with DIALSTATUS = CHANUNAVAIL and HANGUPCAUSE = 18”) in new stack
– Executing [[email protected]:24] Goto(“SIP/500-00000002”, “s-CHANUNAVAIL,1”) in new stack
– Goto (macro-dialout-trunk,s-CHANUNAVAIL,1)
– Executing [[email protected]:1] Set(“SIP/500-00000002”, “RC=18”) in new stack
– Executing [[email protected]:2] Goto(“SIP/500-00000002”, “18,1”) in new stack
– Goto (macro-dialout-trunk,18,1)
– Executing [[email protected]:1] Goto(“SIP/500-00000002”, “s-NOANSWER,1”) in new stack
– Goto (macro-dialout-trunk,s-NOANSWER,1)
– Executing [[email protected]:1] NoOp(“SIP/500-00000002”, “Dial failed due to trunk reporting NOANSWER - giving up”) in new stack
– Executing [[email protected]:2] Progress(“SIP/500-00000002”, “”) in new stack
– Executing [[email protected]:3] Playback(“SIP/500-00000002”, “number-not-answering,noanswer”) in new stack
– <SIP/500-00000002> Playing ‘number-not-answering.ulaw’ (language ‘en’)
– Executing [[email protected]:4] Congestion(“SIP/500-00000002”, “20”) in new stack
[2013-05-06 07:53:23] WARNING[1928]: channel.c:4747 ast_prod: Prodding channel ‘SIP/500-00000002’ failed
== Spawn extension (macro-dialout-trunk, s-NOANSWER, 4) exited non-zero on ‘SIP/500-00000002’ in macro ‘dialout-trunk’
== Spawn extension (from-internal, 07824880195, 5) exited non-zero on ‘SIP/500-00000002’
– Executing [[email protected]:1] Hangup(“SIP/500-00000002”, “”) in new stack
== Spawn extension (from-internal, h, 1) exited non-zero on 'SIP/500-00000002’
PRI Span: 1 Sending TEI management message 1(TEI Identity Request), TEI=127
localhost
CLI>

I have read that our Telco, British Telecom, ISDN lines are not Point to Multipoint.

I changed the span settings to reflect this and it’s working.

Just in case anyone has a similar problem my config files are below.

chan_dahdi.conf

;
; Zapata telephony interface
;
; Configuration file

[trunkgroups]

[channels]

language=en
context=from-zaptel
signalling=fxs_ks
rxwink=300 ; Atlas seems to use long (250ms) winks
;
; Whether or not to do distinctive ring detection on FXO lines
;
;usedistinctiveringdetection=yes
;busydetect=yes
;busycount=10
usecallerid=yes
hidecallerid=no
callwaiting=yes
usecallingpres=yes
callwaitingcallerid=yes
threewaycalling=yes
transfer=yes
cancallforward=yes
callreturn=yes
echocancel=yes
echocancelwhenbridged=no
;echotraining=800
rxgain=0.0
txgain=0.0
group=0
callgroup=1
pickupgroup=1
immediate=no
;nationalprefix=0

;faxdetect=both
faxdetect=incoming
;faxdetect=outgoing
;faxdetect=no

group=1
pridialplan=unknown
prilocaldialplan=unknown
#include dahdi-channels.conf

dahdi-channels.conf

; Autogenerated by /usr/sbin/dahdi_genconf on Thu May 2 12:04:28 2013
; If you edit this file and execute /usr/sbin/dahdi_genconf again,
; your manual changes will be LOST.
; Dahdi Channels Configurations (chan_dahdi.conf)
;
; This is not intended to be a complete chan_dahdi.conf. Rather, it is intended
; to be #include-d by /etc/chan_dahdi.conf that will include the global settings
;

; Span 1: XBUS-00/XPD-00 “Xorcom XPD [].1: BRI_TE” (MASTER)
group=0,11
context=from-pstn
switchtype = euroisdn
signalling = bri_cpe
channel => 1-2
context = default
group=
;group = 63

; Span 2: XBUS-00/XPD-01 "Xorcom XPD [].2: BRI_TE"
group=0,12
context=from-pstn
switchtype = euroisdn
signalling = bri_cpe
channel => 4-5
context = default
;group = 63
group=

; Span 3: XBUS-00/XPD-02 "Xorcom XPD [].3: BRI_TE"
group=0,13
context=from-pstn
switchtype = euroisdn
signalling = bri_cpe
channel => 7-8
context = default
;group = 63
group=

; Span 4: XBUS-00/XPD-03 "Xorcom XPD [].4: BRI_TE"
group=0,14
context=from-pstn
switchtype = euroisdn
signalling = bri_cpe
channel => 10-11
context = default
;group = 63
group=

hi pigsfoot how did you manage to install astribank just a little bit hard to install mine. i have astribank 24 ports fxs. i bought since 2009. just want to get help from you on how can i configure this device from my freepbx.

Thank you