[asterisk-users] T1, Rhino, & Nortel
Gleim, Jason
jgleim at ats-ohio.com
Mon Mar 3 13:19:04 CST 2008
Hi all,
I'm trying to insert a Rhino Ceros box equipped with a Rhino R2T1
dual-T1 card and running the latest version of Trixbox (2.4.2) between
the central office and a Nortel Option 11. The switch at the CO is a
DMS100. Basically, I'm taking the T1, connecting it to port 0 on the
R2T1 card, and then connecting port 1 to the Nortel. (Actually a CSU and
then the Nortel) We're running PRI over T1... Channels 1-23 are B and
channel 24 is D.
So I configured the system ahead of time with line encoding, line
length, switchtype, timing source, etc. The timing source on port 0 in
Zaptel.conf is '1' so I get timing from the CO and it is '0' on port 1
so I send timing to the Nortel. When I hooked it up over the weekend,
the spans came up as expected with no errors or anything.
Calls between the Asterisk box and the CO work like a charm. The CO
doesn't know it's talking to a different box and I get everything I
need, call ID, DID, etc with no problems at all. But the calls between
the Asterisk box and the Nortel will not go through. I enabled debug on
that span and placed calls both ways. When I call from the Nortel to the
Asterisk box, the PRI debug shows the call failed with cause code 100.
Based on what I can find, this looks like the Nortel is mad about the
formatting of something in the messages. When I reverse that and call
from the Asterisk box to the Nortel, those calls fail with a cause code
of 54. Best I can tell that means 'incoming call barred' but how could
it be barred? The Asterisk box should look like the DMS100 to the
Nortel. I duplicated the calling information I was seeing from the CO
when I tried to call the Nortel plus I tried a couple of variants... no
dice. Am I missing something here?
I don't understand how I can be talking to a real DMS100 on one T1 and
it works perfect but when I act like a DMS100 on the other T1, the
Nortel is getting mad. Can anyone offer some ideas? Maybe a
clarification on these cause codes? My depth of knowledge in this area
isn't that deep... a wading pool at best... so I'm hoping one of you
guys that has worked with this stuff a long time might be able to give
me some direction.
I'm posting below Zaptel, Zapata, and a CLI dump of a call from the
Nortel into the Asterisk system with pri debug span turned on.
TIA!
Jason
# Autogenerated by /usr/local/sbin/genzaptelconf -- do not hand edit
# Zaptel Configuration File
#
# This file is parsed by the Zaptel Configurator, ztcfg
#
# It must be in the module loading order
# Span 2: R2T1/0/1 "R2T1 (PCI) Card 0 Span 1"
span=2,1,0,esf,b8zs
# termtype: cpe
bchan=1-23
dchan=24
# Span 3: R2T1/0/2 "R2T1 (PCI) Card 0 Span 2"
span=3,0,0,esf,b8zs
# termtype: net
bchan=25-47
dchan=48
# Span 4: Rhino RCB8FXX/1 "Rhino RCB8FXX/1"
fxsks=49
fxsks=50
fxoks=51
fxoks=52
# ??: 53 ---/1/4
# ??: 54 ---/1/5
# ??: 55 ---/1/6
# ??: 56 ---/1/7
# Global data
loadzone = us
defaultzone = us
------------------------------------------------------------------------
------------------------------------------------------------------------
; Autogenerated by /usr/local/sbin/genzaptelconf -- do not hand edit
; Zaptel Channels Configurations (zapata.conf)
;
; This is not intended to be a complete zapata.conf. Rather, it is
intended
; to be #include-d by /etc/zapata.conf that will include the global
settings
;
; Span 2: R2T1/0/1 "R2T1 (PCI) Card 0 Span 1"
group=0
context=from-trunk
switchtype = dms100
signalling = pri_cpe
channel => 1-23
; Span 3: R2T1/0/2 "R2T1 (PCI) Card 0 Span 2"
group=1
context=from-trunk
switchtype = dms100
signalling = pri_net
channel => 25-47
; Span 4: Rhino RCB8FXX/1 "Rhino RCB8FXX/1"
;;; line="49 FXO/1/0"
signalling=fxs_ks
callerid=asreceived
group=3
context=from-pstn
channel => 49
context=default
;;; line="50 FXO/1/1"
signalling=fxs_ks
callerid=asreceived
group=3
context=from-pstn
channel => 50
context=default
;;; line="51 FXS/1/2"
signalling=fxo_ks
callerid="Channel 51" <6051>
mailbox=6051
group=5
context=from-internal
channel => 51
callerid=
mailbox=
group=
context=default
;;; line="52 FXS/1/3"
signalling=fxo_ks
callerid="Channel 52" <6052>
mailbox=6052
group=5
context=from-internal
channel => 52
callerid=
mailbox=
group=
context=default
; ??: 53 ---/1/4
; ??: 54 ---/1/5
; ??: 55 ---/1/6
; ??: 56 ---/1/7
------------------------------------------------------------------------
------------------------------------------------------------------------
< Protocol Discriminator: Q.931 (8) len=39
< Call Ref: len= 1 (reference 21/0x15) (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 04 e9 80 83 15]
< Channel ID (len= 6) [ Ext: 1 IntID: Explicit PRI Spare: 0
Exclusive Dchan: 0
< ChanSel: Reserved
< Ext: 1 DS1 Identifier: 0
< Ext: 1 Coding: 0 Number Specified Channel
Type: 3
< Ext: 0 Channel: 21 ]
< [6c 0c 21 80 36 31 34 38 38 38 32 33 34 34]
< Calling Number (len=14) [ Ext: 0 TON: National Number (2) NPI:
ISDN/Telephony Numbering Plan (E.164/E.163) (1)
< Presentation: Presentation permitted, user
number not screened (0) 'xxxxxxxxxx' ]
< [70 08 a1 33 33 32 39 31 37 37]
< Called Number (len=10) [ Ext: 1 TON: National Number (2) NPI:
ISDN/Telephony Numbering Plan (E.164/E.163) (1)
'xxxxxxx' ]
-- Making new call for cr 21
-- Processing Q.931 Call Setup
-- Processing IE 4 (cs0, Bearer Capability)
-- Processing IE 24 (cs0, Channel Identification)
-- Processing IE 108 (cs0, Calling Party Number)
-- Processing IE 112 (cs0, Called Party Number)
q931.c:3298 q931_receive: call 21 on channel 21 enters state 6 (Call
Present)
q931.c:2571 q931_call_proceeding: call 21 on channel 21 enters state 9
(Incoming Call Proceeding)
> Protocol Discriminator: Q.931 (8) len=10
> Call Ref: len= 2 (reference 21/0x15) (Terminator)
> Message type: CALL PROCEEDING (2)
> [18 03 a9 83 95]
> 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: 21 ]
-- Accepting call from 'xxxxxxxxxx' to 'xxxxxxx' on channel 0/21,
span 3
-- Executing [xxxxxxx at from-zaptel:1] Set("Zap/45-1", "DID=xxxxxxx")
in new stack
-- Executing [xxxxxxx at from-zaptel:2] Goto("Zap/45-1", "s|1") in new
stack
-- Goto (from-zaptel,s,1)
-- Executing [s at from-zaptel:1] NoOp("Zap/45-1", "Entering
from-zaptel with DID == xxxxxxx") in new stack
-- Executing [s at from-zaptel:2] Ringing("Zap/45-1", "") in new stack
q931.c:2599 q931_alerting: call 21 on channel 21 enters state 7 (Call
Received)
> Protocol Discriminator: Q.931 (8) len=9
> Call Ref: len= 2 (reference 21/0x15) (Terminator)
> Message type: ALERTING (1)
> [1e 02 81 88]
> 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: Inband
information or appropriate pattern now available. (8) ]
-- Executing [s at from-zaptel:3] Set("Zap/45-1", "DID=xxxxxxx") in new
stack
-- Executing [s at from-zaptel:4] NoOp("Zap/45-1", "DID is now
xxxxxxx") in new stack
-- Executing [s at from-zaptel:5] GotoIf("Zap/45-1", "1?zapok:notzap")
in new stack
-- Goto (from-zaptel,s,8)
-- Executing [s at from-zaptel:8] NoOp("Zap/45-1", "Is a Zaptel
Channel") in new stack
-- Executing [s at from-zaptel:9] Set("Zap/45-1", "CHAN=45-1") in new
stack
-- Executing [s at from-zaptel:10] Set("Zap/45-1", "CHAN=45") in new
stack
-- Executing [s at from-zaptel:11] Macro("Zap/45-1",
"from-zaptel-45|xxxxxxx|1") in new stack
-- Executing [s at macro-from-zaptel-45:1] NoOp("Zap/45-1", "Entering
macro-from-zaptel-45 with DID = xxxxxxx") in new stack
-- Executing [s at macro-from-zaptel-45:2] Gosub("Zap/45-1",
"app-blacklist-check|s|1") in new stack
-- Executing [s at app-blacklist-check:1] LookupBlacklist("Zap/45-1",
"") in new stack
-- Executing [s at app-blacklist-check:2] GotoIf("Zap/45-1",
"0?blacklisted") in new stack
-- Executing [s at app-blacklist-check:3] Return("Zap/45-1", "") in new
stack
-- Executing [s at macro-from-zaptel-45:3] Set("Zap/45-1",
"__FROM_DID=s") in new stack
-- Executing [s at macro-from-zaptel-45:4] GotoIf("Zap/45-1", "0
?cidok") in new stack
-- Executing [s at macro-from-zaptel-45:5] Set("Zap/45-1",
"CALLERID(name)=xxxxxxxxxx") in new stack
-- Executing [s at macro-from-zaptel-45:6] NoOp("Zap/45-1", "CallerID
is "xxxxxxxxxx" <xxxxxxxxxx>") in new stack
-- Executing [s at macro-from-zaptel-45:7] Goto("Zap/45-1",
"app-announcement-1|s|1") in new stack
-- Goto (app-announcement-1,s,1)
== Channel 'Zap/45-1' jumping out of macro 'from-zaptel-45'
-- Executing [s at app-announcement-1:1] GotoIf("Zap/45-1", "0?begin")
in new stack
-- Executing [s at app-announcement-1:2] Answer("Zap/45-1", "") in new
stack
q931.c:2698 q931_connect: call 21 on channel 21 enters state 10 (Active)
> Protocol Discriminator: Q.931 (8) len=10
> Call Ref: len= 2 (reference 21/0x15) (Terminator)
> Message type: CONNECT (7)
> [18 03 a9 83 95]
> 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: 21 ]
-- Executing [s at app-announcement-1:3] Wait("Zap/45-1", "1") in new
stack
< Protocol Discriminator: Q.931 (8) len=8
< Call Ref: len= 1 (reference 21/0x15) (Originator)
< Message type: RELEASE (77)
< [08 02 81 e4]
< Cause (len= 4) [ Ext: 1 Coding: CCITT (ITU) standard (0) Spare: 0
Location: Private network serving the local user (1)
< Ext: 1 Cause: Invalid information element contents
(100), class = Protocol Error (e.g. unknown message) (6) ]
-- Processing IE 8 (cs0, Cause)
q931.c:3538 q931_receive: call 21 on channel 21 enters state 0 (Null)
-- Channel 0/21, span 3 got hangup, cause 100
< Protocol Discriminator: Q.931 (8) len=8
< Call Ref: len= 1 (reference 21/0x15) (Originator)
< Message type: RELEASE (77)
< [08 02 81 e0]
< Cause (len= 4) [ Ext: 1 Coding: CCITT (ITU) standard (0) Spare: 0
Location: Private network serving the local user (1)
< Ext: 1 Cause: Mandatory information element is
missing (96), class = Protocol Error (e.g. unknown message) (6) ]
-- Processing IE 8 (cs0, Cause)
NEW_HANGUP DEBUG: Calling q931_hangup, ourstate Null, peerstate Release
Request
> Protocol Discriminator: Q.931 (8) len=9
> Call Ref: len= 2 (reference 21/0x15) (Terminator)
> Message type: RELEASE COMPLETE (90)
> [08 02 81 e0]
> Cause (len= 4) [ Ext: 1 Coding: CCITT (ITU) standard (0) Spare: 0
Location: Private network serving the local user (1)
> Ext: 1 Cause: Mandatory information element is
missing (96), class = Protocol Error (e.g. unknown message) (6) ]
NEW_HANGUP DEBUG: Calling q931_hangup, ourstate Null, peerstate Null
NEW_HANGUP DEBUG: Destroying the call, ourstate Null, peerstate Null
< Protocol Discriminator: Q.931 (8) len=8
< Call Ref: len= 1 (reference 21/0x15) (Originator)
< Message type: RELEASE (77)
< [08 02 81 e4]
< Cause (len= 4) [ Ext: 1 Coding: CCITT (ITU) standard (0) Spare: 0
Location: Private network serving the local user (1)
< Ext: 1 Cause: Invalid information element contents
(100), class = Protocol Error (e.g. unknown message) (6) ]
-- Making new call for cr 21
-- Processing IE 8 (cs0, Cause)
> Protocol Discriminator: Q.931 (8) len=9
> Call Ref: len= 2 (reference 21/0x15) (Terminator)
> Message type: RELEASE COMPLETE (90)
> [08 02 81 d1]
> Cause (len= 4) [ Ext: 1 Coding: CCITT (ITU) standard (0) Spare: 0
Location: Private network serving the local user (1)
> Ext: 1 Cause: Invalid call reference value (81),
class = Invalid message (e.g. parameter out of range) (5) ]
NEW_HANGUP DEBUG: Calling q931_hangup, ourstate Null, peerstate Null
NEW_HANGUP DEBUG: Destroying the call, ourstate Null, peerstate Null
== Spawn extension (app-announcement-1, s, 3) exited non-zero on
'Zap/45-1'
-- Hungup 'Zap/45-1'
More information about the asterisk-users
mailing list