Asterisk, TE120P, & InterTel

First off, I apologize for the length of this post. :smile:

My configuration is as follows:

Linux i386 Kernel 2.6.22.4 (release 65) (Fedora Core 7)
Asterisk 1.4.11
Zaptel 1.4.5.1
TE120P single-span card, cross-connected to:
InterTel Axxess T1 card & PRI PAL, v9.1 software release.

I’ve done a bunch of searches on Google as well as the forums here. I can’t seem to find a solution to my problem here. My Asterisk is connected to the PSTN via a SIP trunk to a Lucent TNT. It’s currently providing services to about SIP extensions.

I recently installed a Wildcard TE120P card with the intention to cross-connect it to an InterTel Axxess T1/PRI card. My D-channel is up, as are the 23 B-channels. However, I’m experiencing two problems.

The first problem I’m having is that when I make an outbound call from the InterTel, Asterisk shows the call progress, but I do not hear any audio. No ringing, no call announcements, nothing. When making an outbound call on the PRI from the InterTel, I get no audio on the InterTel. When dialing a SIP extension, neither party can hear each other.

Secondly, I cannot seem to route a call from either the PSTN or SIP extension via the PRI to the InterTel. Calls are being rejected.

Here’s an example of an “intense” debug on the PRI when making a call from the InterTel to a MeetMe extension:

< [ 00 01 16 0e 08 02 00 0a 05 04 03 80 90 a2 18 03 a9 83 88 70 08 c1 38 34 36 39 30 37 39 ]

< Informational frame:
< SAPI: 00  C/R: 0 EA: 0
<  TEI: 000        EA: 1
< N(S): 011   0: 0
< N(R): 007   P: 0
< 25 bytes of data
-- ACKing all packets from 6 to (but not including) 7
-- Since there was nothing left, stopping T200 counter
-- Stopping T203 counter since we got an ACK
-- Nothing left, starting T203 counter
< Protocol Discriminator: Q.931 (8)  len=25
< Call Ref: len= 2 (reference 10/0xA) (Originator)
< Message type: SETUP (5)
< [04 03 80 90 a2]
< Bearer Capability (len= 5) [ Ext: 1  Q.931 Std: 0  Info transfer capability: Speech (0)
<                              Ext: 1  Trans mode/rate: 64kbps, circuit-mode (16)
<                              Ext: 1  User information layer 1: u-Law (34)
< [18 03 a9 83 88]
< Channel ID (len= 5) [ Ext: 1  IntID: Implicit  PRI  Spare: 0  Exclusive  Dchan: 0
<                        ChanSel: Reserved
<                       Ext: 1  Coding: 0  Number Specified  Channel Type: 3
<                       Ext: 1  Channel: 8 ]
< [70 08 c1 38 34 36 39 30 37 39]
< Called Number (len=10) [ Ext: 1  TON: Subscriber Number (4)  NPI: ISDN/Telephony Numbering Plan (E.164/E.163) (1)  '9079' ]
-- Making new call for cr 10
-- Processing Q.931 Call Setup
-- Processing IE 4 (cs0, Bearer Capability)
-- Processing IE 24 (cs0, Channel Identification)
-- Processing IE 112 (cs0, Called Party Number)
q931.c:3296 q931_receive: call 10 on channel 8 enters state 6 (Call Present)
Sending Receiver Ready (12)

> [ 00 01 01 18 ]

> Supervisory frame:
> SAPI: 00  C/R: 0 EA: 0
>  TEI: 000        EA: 1
> Zero: 0     S: 0 01: 1  [ RR (receive ready) ]
> N(R): 012 P/F: 0
> 0 bytes of data
-- Restarting T203 counter
-- Restarting T203 counter
q931.c:2570 q931_call_proceeding: call 10 on channel 8 enters state 9 (Incoming Call Proceeding)

> [ 02 01 0e 18 08 02 80 0a 02 18 04 e9 81 83 88 ]

> Informational frame:
> SAPI: 00  C/R: 1 EA: 0
>  TEI: 000        EA: 1
> N(S): 007   0: 0
> N(R): 012   P: 0
> 11 bytes of data
-- Restarting T203 counter
Stopping T_203 timer
Starting T_200 timer
> Protocol Discriminator: Q.931 (8)  len=11
> Call Ref: len= 2 (reference 10/0xA) (Terminator)
> Message type: CALL PROCEEDING (2)
> [18 04 e9 81 83 88]
> Channel ID (len= 6) [ Ext: 1  IntID: Explicit  PRI  Spare: 0  Exclusive  Dchan: 0
>                        ChanSel: Reserved
>                       Ext: 1  DS1 Identifier: 1  
>                       Ext: 1  Coding: 0  Number Specified  Channel Type: 3
>                       Ext: 1  Channel: 8 ]
    -- Accepting call from '' to '9079' on channel 1/8, span 1
    -- Executing [9079@outbound:1] Goto("Zap/8-1", "conferenceroom|s|1") in new stack
    -- Goto (conferenceroom,s,1)
    -- Executing [s@conferenceroom:1] Verbose("Zap/8-1", "*** Conference Call - Caller ID:  ") in new stack
*** Conference Call - Caller ID:  
    -- Executing [s@conferenceroom:2] Answer("Zap/8-1", "") in new stack
q931.c:2697 q931_connect: call 10 on channel 8 enters state 10 (Active)
> [ 02 01 10 18 08 02 80 0a 07 18 04 e9 81 83 88 1e 02 81 82 ]
> Informational frame:
> SAPI: 00  C/R: 1 EA: 0
>  TEI: 000        EA: 1
> N(S): 008   0: 0
> N(R): 012   P: 0
> 15 bytes of data
T_200 timer already going (2)
> Protocol Discriminator: Q.931 (8)  len=15
> Call Ref: len= 2 (reference 10/0xA) (Terminator)
> Message type: CONNECT (7)
> [18 04 e9 81 83 88]
> Channel ID (len= 6) [ Ext: 1  IntID: Explicit  PRI  Spare: 0  Exclusive  Dchan: 0
>                        ChanSel: Reserved
>                       Ext: 1  DS1 Identifier: 1  
>                       Ext: 1  Coding: 0  Number Specified  Channel Type: 3
>                       Ext: 1  Channel: 8 ]
> [1e 02 81 82]
> Progress Indicator (len= 4) [ Ext: 1  Coding: CCITT (ITU) standard (0)  0: 0  Location: Private network serving the local user (1)
>                               Ext: 1  Progress Description: Called equipment is non-ISDN. (2) ]
    -- Executing [s@conferenceroom:3] Wait("Zap/8-1", "1") in new stack
< [ 02 01 01 10 ]

< Supervisory frame:
< SAPI: 00  C/R: 1 EA: 0
<  TEI: 000        EA: 1
< Zero: 0     S: 0 01: 1  [ RR (receive ready) ]
< N(R): 008 P/F: 0
< 0 bytes of data
-- ACKing all packets from 6 to (but not including) 8
-- ACKing packet 7, new txqueue is 8 (-1 means empty)
-- Something left to transmit (8), restarting T200 counter
< [ 02 01 01 12 ]

< Supervisory frame:
< SAPI: 00  C/R: 1 EA: 0
<  TEI: 000        EA: 1
< Zero: 0     S: 0 01: 1  [ RR (receive ready) ]
< N(R): 009 P/F: 0
< 0 bytes of data
-- ACKing all packets from 7 to (but not including) 9
-- ACKing packet 8, new txqueue is -1 (-1 means empty)
-- Since there was nothing left, stopping T200 counter
-- Nothing left, starting T203 counter
-- Restarting T203 counter
< [ 00 01 18 12 08 02 00 0a 7d 08 03 80 e4 18 14 01 01 ]

< Informational frame:
< SAPI: 00  C/R: 0 EA: 0
<  TEI: 000        EA: 1
< N(S): 012   0: 0
< N(R): 009   P: 0
< 13 bytes of data
-- ACKing all packets from 8 to (but not including) 9
-- Since there was nothing left, stopping T200 counter
-- Stopping T203 counter since we got an ACK
-- Nothing left, starting T203 counter
< Protocol Discriminator: Q.931 (8)  len=13
< Call Ref: len= 2 (reference 10/0xA) (Originator)
< Message type: STATUS (125)
< [08 03 80 e4 18]
< Cause (len= 5) [ Ext: 1  Coding: CCITT (ITU) standard (0)  Spare: 0  Location: User (0)
<                  Ext: 1  Cause: Invalid information element contents (100), class = Protocol Error (e.g. unknown message) (6) ]
<              Cause data 1: 18 (24)
< [14 01 01]
< Call State (len= 3) [ Ext: 0  Coding: CCITT (ITU) standard (0)  Call state: Call Initiated (1)
-- Processing IE 8 (cs0, Cause)
-- Processing IE 20 (cs0, Call State)
Sending Receiver Ready (13)

> [ 00 01 01 1a ]

> Supervisory frame:
> SAPI: 00  C/R: 0 EA: 0
>  TEI: 000        EA: 1
> Zero: 0     S: 0 01: 1  [ RR (receive ready) ]
> N(R): 013 P/F: 0
> 0 bytes of data
-- Restarting T203 counter
-- Restarting T203 counter
< [ 00 01 1a 12 08 02 00 0a 7d 08 03 80 e4 18 14 01 03 ]

< Informational frame:
< SAPI: 00  C/R: 0 EA: 0
<  TEI: 000        EA: 1
< N(S): 013   0: 0
< N(R): 009   P: 0
< 13 bytes of data
-- ACKing all packets from 8 to (but not including) 9
-- Since there was nothing left, stopping T200 counter
-- Stopping T203 counter since we got an ACK
-- Nothing left, starting T203 counter
< Protocol Discriminator: Q.931 (8)  len=13
< Call Ref: len= 2 (reference 10/0xA) (Originator)
< Message type: STATUS (125)
< [08 03 80 e4 18]
< Cause (len= 5) [ Ext: 1  Coding: CCITT (ITU) standard (0)  Spare: 0  Location: User (0)
<                  Ext: 1  Cause: Invalid information element contents (100), class = Protocol Error (e.g. unknown message) (6) ]
<              Cause data 1: 18 (24)
< [14 01 03]
< Call State (len= 3) [ Ext: 0  Coding: CCITT (ITU) standard (0)  Call state: Outgoing call  Proceeding (3)
-- Processing IE 8 (cs0, Cause)
-- Processing IE 20 (cs0, Call State)
Sending Receiver Ready (14)

> [ 00 01 01 1c ]

> Supervisory frame:
> SAPI: 00  C/R: 0 EA: 0
>  TEI: 000        EA: 1
> Zero: 0     S: 0 01: 1  [ RR (receive ready) ]
> N(R): 014 P/F: 0
> 0 bytes of data
-- Restarting T203 counter
-- Restarting T203 counter
    -- Executing [s@conferenceroom:4] Playback("Zap/8-1", "welcome") in new stack
    -- <Zap/8-1> Playing 'welcome' (language 'en')
    -- Executing [s@conferenceroom:5] Read("Zap/8-1", "Room|enter-conf-call-number|6") in new stack
    -- Accepting a maximum of 6 digits.
    -- <Zap/8-1> Playing 'enter-conf-call-number' (language 'en')
T203 counter expired, sending RR and scheduling T203 again
Sending Receiver Ready (14)

> [ 02 01 01 1d ]

> Supervisory frame:
> SAPI: 00  C/R: 1 EA: 0
>  TEI: 000        EA: 1
> Zero: 0     S: 0 01: 1  [ RR (receive ready) ]
> N(R): 014 P/F: 1
> 0 bytes of data
-- Restarting T203 counter
< [ 02 01 01 13 ]

< Supervisory frame:
< SAPI: 00  C/R: 1 EA: 0
<  TEI: 000        EA: 1
< Zero: 0     S: 0 01: 1  [ RR (receive ready) ]
< N(R): 009 P/F: 1
< 0 bytes of data
-- ACKing all packets from 8 to (but not including) 9
-- Since there was nothing left, stopping T200 counter
-- Stopping T203 counter since we got an ACK
-- Nothing left, starting T203 counter
-- Got RR response to our frame
-- Restarting T203 counter
< [ 00 01 1c 12 08 02 00 0a 45 08 02 80 90 ]

< Informational frame:
< SAPI: 00  C/R: 0 EA: 0
<  TEI: 000        EA: 1
< N(S): 014   0: 0
< N(R): 009   P: 0
< 9 bytes of data
-- ACKing all packets from 8 to (but not including) 9
-- Since there was nothing left, stopping T200 counter
-- Stopping T203 counter since we got an ACK
-- Nothing left, starting T203 counter
< Protocol Discriminator: Q.931 (8)  len=9
< Call Ref: len= 2 (reference 10/0xA) (Originator)
< Message type: DISCONNECT (69)
< [08 02 80 90]
< Cause (len= 4) [ Ext: 1  Coding: CCITT (ITU) standard (0)  Spare: 0  Location: User (0)
<                  Ext: 1  Cause: Normal Clearing (16), class = Normal Event (1) ]
-- Processing IE 8 (cs0, Cause)
q931.c:3561 q931_receive: call 10 on channel 8 enters state 12 (Disconnect Indication)
Sending Receiver Ready (15)

> [ 00 01 01 1e ]

> Supervisory frame:
> SAPI: 00  C/R: 0 EA: 0
>  TEI: 000        EA: 1
> Zero: 0     S: 0 01: 1  [ RR (receive ready) ]
> N(R): 015 P/F: 0
> 0 bytes of data
-- Restarting T203 counter
-- Restarting T203 counter
    -- Channel 1/8, span 1 got hangup request, cause 16
    -- User disconnected
  == Spawn extension (conferenceroom, s, 5) exited non-zero on 'Zap/8-1'
NEW_HANGUP DEBUG: Calling q931_hangup, ourstate Disconnect Indication, peerstate Disconnect Request
q931.c:2715 q931_release: call 10 on channel 8 enters state 19 (Release Request)
> [ 02 01 12 1e 08 02 80 0a 4d 08 02 81 90 ]
> Informational frame:
> SAPI: 00  C/R: 1 EA: 0
>  TEI: 000        EA: 1
> N(S): 009   0: 0
> N(R): 015   P: 0
> 9 bytes of data
-- Restarting T203 counter
Stopping T_203 timer
Starting T_200 timer
> Protocol Discriminator: Q.931 (8)  len=9
> Call Ref: len= 2 (reference 10/0xA) (Terminator)
> Message type: RELEASE (77)
> [08 02 81 90]
> Cause (len= 4) [ Ext: 1  Coding: CCITT (ITU) standard (0)  Spare: 0  Location: Private network serving the local user (1)
>                  Ext: 1  Cause: Normal Clearing (16), class = Normal Event (1) ]
    -- Hungup 'Zap/8-1'

< [ 02 01 01 14 ]

< Supervisory frame:
< SAPI: 00  C/R: 1 EA: 0
<  TEI: 000        EA: 1
< Zero: 0     S: 0 01: 1  [ RR (receive ready) ]
< N(R): 010 P/F: 0
< 0 bytes of data
-- ACKing all packets from 8 to (but not including) 10
-- ACKing packet 9, new txqueue is -1 (-1 means empty)
-- Since there was nothing left, stopping T200 counter
-- Nothing left, starting T203 counter
-- Restarting T203 counter

< [ 00 01 1e 14 08 02 00 0a 5a ]

< Informational frame:
< SAPI: 00  C/R: 0 EA: 0
<  TEI: 000        EA: 1
< N(S): 015   0: 0
< N(R): 010   P: 0
< 5 bytes of data
-- ACKing all packets from 9 to (but not including) 10
-- Since there was nothing left, stopping T200 counter
-- Stopping T203 counter since we got an ACK
-- Nothing left, starting T203 counter
< Protocol Discriminator: Q.931 (8)  len=5
< Call Ref: len= 2 (reference 10/0xA) (Originator)
< Message type: RELEASE COMPLETE (90)
q931.c:3501 q931_receive: call 10 on channel 8 enters state 0 (Null)
NEW_HANGUP DEBUG: Calling q931_hangup, ourstate Null, peerstate Null
NEW_HANGUP DEBUG: Destroying the call, ourstate Null, peerstate Null
Sending Receiver Ready (16)

> [ 00 01 01 20 ]

> Supervisory frame:
> SAPI: 00  C/R: 0 EA: 0
>  TEI: 000        EA: 1
> Zero: 0     S: 0 01: 1  [ RR (receive ready) ]
> N(R): 016 P/F: 0
> 0 bytes of data
-- Restarting T203 counter
-- Restarting T203 counter

And here’s an inbound call from a SIP extension to the InterTel:

    -- Executing [9061@outbound:1] Macro("SIP/9070-09b0e9c8", "sdoffice") in new stack
    -- Executing [s@macro-sdoffice:1] Dial("SIP/9070-09b0e9c8", "Zap/1|20|dr") in new stack
[Sep  1 14:25:56] WARNING[3114]: app_dial.c:1106 dial_exec_full: Unable to create channel of type 'Zap' (cause 0 - Unknown)
  == Everyone is busy/congested at this time (1:0/0/1)
    -- Executing [s@macro-sdoffice:2] Goto("SIP/9070-09b0e9c8", "s-CHANUNAVAIL|1") in new stack
    -- Goto (macro-sdoffice,s-CHANUNAVAIL,1)
    -- Executing [s-CHANUNAVAIL@macro-sdoffice:1] Goto("SIP/9070-09b0e9c8", "s-NOANSWER|1") in new stack
    -- Goto (macro-sdoffice,s-NOANSWER,1)
    -- Executing [s-NOANSWER@macro-sdoffice:1] VoiceMail("SIP/9070-09b0e9c8", "4433|u") in new stack
    -- <SIP/9070-09b0e9c8> Playing '/var/spool/asterisk/voicemail/default/4433/unavail' (language 'en')
  == Spawn extension (macro-sdoffice, s-NOANSWER, 1) exited non-zero on 'SIP/9070-09b0e9c8' in macro 'sdoffice'
  == Spawn extension (macro-sdoffice, s-NOANSWER, 1) exited non-zero on 'SIP/9070-09b0e9c8'

zaptel.conf

span=1,0,0,esf,b8zs
bchan=1-23
dchan=24
loadzone = us
defaultzone=us

zapata.conf

[trunkgroups]
trunkgroup => 1,24
spanmap => 1,1,1

[channels]
signalling=pri_net
language=en
context=outbound
switchtype=national
nsf=none
pridialplan=national
prilocaldialplan=national
resetinterval=3600 
priindication=outofband
facilityenable=yes
rxwink=300
toneduration=100
usedistinctiveringdetection=no
distinctiveringaftercid=no
usecallerid=yes
cidsignalling=bell
cidstart=ring
hidecallerid=no
callwaiting=no
usecallingpres=yes
callwaitingcallerid=no
threewaycalling=no
transfer=no
canpark=no
cancallforward=no
callreturn=no
rxgain=0.0
txgain=0.0
group=1
callgroup=1
pickupgroup=1
immediate=no
channel => 1-23

I hope someone out there has a suggestion. I’m at a loss.

Asterisk is sending a “Connect” message to the InterTel which in return should send a “Connect Acknowledge” back to Asterisk I believe. The InterTel then sends a “status” message to Asterisk saying “Cause: Invalid information element contents (100), class = Protocol Error (e.g. unknown message)”. So the InterTel was unable to decode part of the “connect” message Asterisk had sent it. There is also no “progress” message which allows the audio to open to provide ringback. The progress indicator within the Setup message is not the actual progress message for audio to pass.

Suggestions:

  1. Change “facilityenable=yes” to “facilityenable=no” in zapata.conf and RESTART Asterisk.
  2. If the above does not work, comment out the “trunkgroup” and “spanmap” from under the trunkgroups context and restart Asterisk.

-- Executing [s@macro-sdoffice:1] Dial("SIP/9070-09b0e9c8", "Zap/1|20|dr") in new stack [Sep 1 14:25:56] WARNING[3114]: app_dial.c:1106 dial_exec_full: Unable to create channel of type 'Zap' (cause 0 - Unknown)

For your outbound dialing, your dialplan is wrong. It is dialing “Zap/1” without passing a number. It should look like this:

Zap/1/${EXTEN}|20|dr

If the above does not help, contact Digium support.

+1-256-428-6161
support@digium.com

[quote=“angler”]Suggestions:

  1. Change “facilityenable=yes” to “facilityenable=no” in zapata.conf and RESTART Asterisk.
  2. If the above does not work, comment out the “trunkgroup” and “spanmap” from under the trunkgroups context and restart Asterisk.[/quote]

That did it! I ended up having to do both. Much obliged. All I was getting from the folks at InterTel was “oh, your T1 card must be fried.”

This post has helped quite a bit.

I am getting:
WARNING[8337]: chan_dahdi.c:9517 pri_dchannel: PRI Error on span 0: We think we’re the CPE, but they think they’re the CPE too.

I think it has to do with my Axxess PBX not playing the role of master. I have set my reference clock to “Masters for Private Network” but doesn’t look like it fixed it.

zapata.conf

;[trunkgroups]
;trunkgroup => 1,24
;spanmap => 1,1,1

[channels]
signalling=pri_cpe
language=en
context=incoming
switchtype=national
nsf=none
pridialplan=national
prilocaldialplan=national
resetinterval=3600
priindication=outofband
facilityenable=no
rxwink=300
toneduration=100
usedistinctiveringdetection=no
distinctiveringaftercid=no
usecallerid=yes
restrictid=no
cidsignalling=bell
cidstart=ring
callerid=asreceived
hidecallerid=no
callwaiting=yes
usecallingpres=yes
callwaitingcallerid=yes
threewaycalling=yes
transfer=yes
canpark=yes
cancallforward=yes
immediate=no
channel => 1-23

So everything was slowly working, except for caller id when I was using pri_net.

Have any ideas?