[Home]

Summary:ASTERISK-09637: Zap Channel Bridging
Reporter:Federico Santulli (fsantulli)Labels:
Date Opened:2007-06-10 13:09:39Date Closed:2011-06-07 14:02:58
Priority:MajorRegression?No
Status:Closed/CompleteComponents:Core/General
Versions:Frequency of
Occurrence
Related
Issues:
Environment:Attachments:
Description:On CISCO 7960 phones with SIP firmware 8.6, when setting the CFWDAll option to a number in a zaptel dialplan extension when calling from a ZAP channel then receiving the TEMPORARILY MOVED message, a number was dialed on another ZAP channel. Once the RTP audio is opened, channels hangup unexpectedly both sides.
Comments:By: Federico Santulli (fsantulli) 2007-06-10 13:15:34

-- Accepting call from 'anonymous' to 'xxxxxxxx29' on channel 0/1, span 1
   -- Executing Dial("Zap/1-1", "SIP/internal29|90") in new stack
   -- Called internal29
   -- Got SIP response 302 "Moved Temporarily" back from 10.10.10.169
   -- Now forwarding Zap/1-1 to 'Local/xxxxxxx45@internal' (thanks to SIP/interno29-081c50d8)
   -- Executing Set("Local/xxxxxxx45@internal-8baf,2", "NUMBER=xxxxxxx45") in new stack
   -- Executing SetCallerPres("Local/xxxxxxx45@internal-8baf,2", "allowed_not_screened") in new stack
   -- Executing Dial("Local/xxxxxxx45@internal-8baf,2", "Zap/g1/xxxxxxx45|180") in new stack
   -- Requested transfer capability: 0x00 - SPEECH
   -- Called g1/xxxxxxx45
   -- Zap/2-1 is proceeding passing it to Local/xxxxxxx45@internal-8baf,2
   -- Local/xxxxxxx45@internal-8baf,1 is proceeding passing it to Zap/1-1
   -- Channel 0/1, span 1 got hangup request
 == Spawn extension (fastweb, xxxxxxxx29, 6) exited non-zero on 'Zap/1-1'
   -- Hungup 'Zap/1-1'
   -- Hungup 'Zap/2-1'
 == Spawn extension (internal, xxxxxxx45, 4) exited non-zero on 'Local/xxxxxxx45@internal-8baf,2'



By: Joshua C. Colp (jcolp) 2007-06-11 07:28:46

Can you please try latest Zaptel, and what version of Asterisk are you using?

By: Federico Santulli (fsantulli) 2007-06-11 11:05:55

I'm using Asterisk 1.2.18 and Zaptel-1.2.17.1, but also tested with Asterisk 1.4.4 and Zaptel 1.4.1

By: Matthew Fredrickson (mattf) 2007-06-12 09:31:37

What cause code is the other end hanging up the call with?

By: Federico Santulli (fsantulli) 2007-06-12 10:39:21

I'm calling from a PSTN to a fastweb number 'xxxxxxxx29'

fastweb 'xxxxxxxx29' is a sip peer that redirects to 'Local/xxxxxxx45@internal'

'Local/xxxxxxx45@internal' is a zap dialed number

so PSTN->(ZAP29->SIP29)->ZAP45.

When calls hangs up i hear a congestion tone and on log there's nothing more.

By: Joshua C. Colp (jcolp) 2007-07-02 11:29:49

Can you please attach a pri debug span output? Thanks.

By: Federico Santulli (fsantulli) 2007-07-12 11:10:47

Enabled debugging on span 1
< Protocol Discriminator: Q.931 (8)  len=40
< Call Ref: len= 2 (reference 139/0x8B) (Originator)
< Message type: SETUP (5)
< [a1]
< Sending Complete (len= 1)
< [04 03 80 90 a3]
< 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: A-Law (35)
< [18 03 a9 83 81]
< 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: 1 ]
< [6c 09 a1 2a 2a 2a 2a 2a 2a 2a 2a]
< Calling Number (len=11) [ Ext: 1  TON: National Number (2)  NPI: ISDN/Telephony Numbering Plan (E.164/E.163) (1)
<                           Presentation: Presentation permitted, user number not screened (0)  '********' ]
< [70 0b a1 3x 3x 3x 3x 3x 3x 3x 3x 32 39]
< Called Number (len=13) [ Ext: 1  TON: National Number (2)  NPI: ISDN/Telephony Numbering Plan (E.164/E.163) (1)  'xxxxxxxx29' ]
-- Making new call for cr 139
-- Processing Q.931 Call Setup
-- Processing IE 161 (cs0, Sending Complete)
-- 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:3294 q931_receive: call 139 on channel 1 enters state 6 (Call Present)
q931.c:2570 q931_call_proceeding: call 139 on channel 1 enters state 9 (Incoming Call Proceeding)
> Protocol Discriminator: Q.931 (8)  len=10
> Call Ref: len= 2 (reference 139/0x8B) (Terminator)
> Message type: CALL PROCEEDING (2)
> [18 03 a9 83 81]
> 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: 1 ]
   -- Accepting call from '********' to 'xxxxxxxx29' on channel 0/1, span 1
   -- Executing [xxxxxxxx29@fastweb:1] SetCallerPres("Zap/1-1", "allowed_not_screened") in new stack
   -- Executing [xxxxxxxx29@fastweb:2] GotoIf("Zap/1-1", "1?3:4") in new stack
   -- Goto (fastweb,xxxxxxxx29,3)
   -- Executing [xxxxxxxx29@fastweb:3] Set("Zap/1-1", "CALLERID(number)=private") in new stack
   -- Executing [xxxxxxxx29@fastweb:4] Set("Zap/1-1", "CALLERID(name)=External FASTWEB") in new stack
   -- Executing [xxxxxxxx29@fastweb:5] Set("Zap/1-1", "NUMBER=xxxxxxxx29") in new stack
   -- Executing [xxxxxxxx29@fastweb:6] Dial("Zap/1-1", "SIP/interno29|90") in new stack
   -- Called internal29
   -- Got SIP response 302 "Moved Temporarily" back from 10.10.10.169
   -- Now forwarding Zap/1-1 to 'Local/xxxxxxx45@internal' (thanks to SIP/internal29-082b80e0)
   -- Executing [xxxxxxx45@internal:1] Set("Local/xxxxxxx45@internal-5174,2", "number=xxxxxxx45") in new stack
   -- Executing [xxxxxxx45@internal:2] SetCallerPres("Local/xxxxxxx45@internal-5174,2", "allowed_not_screened") in new stack
   -- Executing [xxxxxxx45@internal:3] NoOp("Local/xxxxxxx45@internal-5174,2", "niente") in new stack
   -- Executing [xxxxxxx45@internal:4] Dial("Local/xxxxxxx45@internal-5174,2", "Zap/g1/xxxxxxx45|180") in new stack
-- Making new call for cr 33090
   -- Requested transfer capability: 0x00 - SPEECH
> Protocol Discriminator: Q.931 (8)  len=53
> Call Ref: len= 2 (reference 322/0x142) (Originator)
> Message type: SETUP (5)
> [04 03 80 90 a3]
> 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: A-Law (35)
> [18 03 a9 83 83]
> 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: 3 ]
> [6c 09 21 80 70 72 69 76 61 74 6f]
> Calling Number (len=11) [ Ext: 0  TON: National Number (2)  NPI: ISDN/Telephony Numbering Plan (E.164/E.163) (1)
>                           Presentation: Presentation permitted, user number not screened (0)  'private' ]
> [70 0a c1 3x 3x 3x 3x 3x 3x 3x 34 35]
> Called Number (len=12) [ Ext: 1  TON: Subscriber Number (4)  NPI: ISDN/Telephony Numbering Plan (E.164/E.163) (1)  'xxxxxxx45' ]
> [74 0d 21 01 8f 3x 3x 3x 3x 3x 3x 3x 3x 32 39]
> Redirecting Number (len=15) [ Ext: 0  TON: National Number (2)  NPI: ISDN/Telephony Numbering Plan (E.164/E.163) (1)
>                               Ext: 0  Presentation: Presentation permitted, user number passed network screening (1)
>                               Ext: 1  Reason: Forwarded unconditionally (15)  'xxxxxxxx29' ]
q931.c:2879 q931_setup: call 33090 on channel 3 enters state 1 (Call Initiated)
   -- Called g1/xxxxxxx45
< Protocol Discriminator: Q.931 (8)  len=10
< Call Ref: len= 2 (reference 322/0x142) (Terminator)
< Message type: CALL PROCEEDING (2)
< [18 03 a9 83 83]
< 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: 3 ]
-- Processing IE 24 (cs0, Channel Identification)
q931.c:3414 q931_receive: call 33090 on channel 3 enters state 3 (Outgoing call  Proceeding)
   -- Zap/3-1 is proceeding passing it to Local/xxxxxxx45@internal-5174,2
   -- Local/xxxxxxx45@internal-5174,1 is proceeding passing it to Zap/1-1
< Protocol Discriminator: Q.931 (8)  len=9
< Call Ref: len= 2 (reference 139/0x8B) (Originator)
< Message type: DISCONNECT (69)
< [08 02 82 e6]
< Cause (len= 4) [ Ext: 1  Coding: CCITT (ITU) standard (0)  Spare: 0  Location: Public network serving the local user (2)
<                  Ext: 1  Cause: Recover on timer expiry (102), class = Protocol Error (e.g. unknown message) (6) ]
-- Processing IE 8 (cs0, Cause)
q931.c:3549 q931_receive: call 139 on channel 1 enters state 12 (Disconnect Indication)
   -- Channel 0/1, span 1 got hangup request
[Jul 12 18:14:56] WARNING[26896]: app_dial.c:674 wait_for_answer: Unable to forward voice frame
 == Spawn extension (fastweb, xxxxxxxx29, 6) exited non-zero on 'Zap/1-1'
NEW_HANGUP DEBUG: Calling q931_hangup, ourstate Disconnect Indication, peerstate Disconnect Request
q931.c:2715 q931_release: call 139 on channel 1 enters state 19 (Release Request)
> Protocol Discriminator: Q.931 (8)  len=9
> Call Ref: len= 2 (reference 139/0x8B) (Terminator)
> Message type: RELEASE (77)
> [08 02 81 e6]
> Cause (len= 4) [ Ext: 1  Coding: CCITT (ITU) standard (0)  Spare: 0  Location: Private network serving the local user (1)
>                  Ext: 1  Cause: Recover on timer expiry (102), class = Protocol Error (e.g. unknown message) (6) ]
   -- Hungup 'Zap/1-1'
NEW_HANGUP DEBUG: Calling q931_hangup, ourstate Outgoing call  Proceeding, peerstate Incoming Call Proceeding
q931.c:2763 q931_disconnect: call 33090 on channel 3 enters state 11 (Disconnect Request)
> Protocol Discriminator: Q.931 (8)  len=9
> Call Ref: len= 2 (reference 322/0x142) (Originator)
> Message type: DISCONNECT (69)
> [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/3-1'
 == Spawn extension (internal, xxxxxxx45, 4) exited non-zero on 'Local/xxxxxxx45@internal-5174,2'
< Protocol Discriminator: Q.931 (8)  len=5
< Call Ref: len= 2 (reference 139/0x8B) (Originator)
< Message type: RELEASE COMPLETE (90)
q931.c:3489 q931_receive: call 139 on channel 1 enters state 0 (Null)
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=5
< Call Ref: len= 2 (reference 322/0x142) (Terminator)
< Message type: RELEASE (77)
q931.c:3524 q931_receive: call 33090 on channel 3 enters state 0 (Null)
NEW_HANGUP DEBUG: Calling q931_hangup, ourstate Null, peerstate Release Request
> Protocol Discriminator: Q.931 (8)  len=9
> Call Ref: len= 2 (reference 322/0x142) (Originator)
> Message type: RELEASE COMPLETE (90)
> [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) ]
NEW_HANGUP DEBUG: Calling q931_hangup, ourstate Null, peerstate Null
NEW_HANGUP DEBUG: Destroying the call, ourstate Null, peerstate Null



By: Federico Santulli (fsantulli) 2007-07-26 04:12:25

The bug is verified only on GSM calls and seems to be resolved in version 1.4.8 of asterisk and libpri 1.4.1 .



By: Joshua C. Colp (jcolp) 2007-08-08 08:42:38

Great to hear this is fixed! Have a great day.