[asterisk-bugs] [LibPRI 0017897]: [patch] App Dial does not respect TON and fails when etsi call rerouting is used

Asterisk Bug Tracker noreply at bugs.digium.com
Sat Aug 21 07:16:50 CDT 2010


A NOTE has been added to this issue. 
====================================================================== 
https://issues.asterisk.org/view.php?id=17897 
====================================================================== 
Reported By:                avalentin
Assigned To:                
====================================================================== 
Project:                    LibPRI
Issue ID:                   17897
Category:                   General
Reproducibility:            always
Severity:                   major
Priority:                   normal
Status:                     new
Asterisk Version:           1.8.0-beta3 
JIRA:                        
libpri Version:             SVN 
SVN Branch (only for SVN checkouts, not tarball releases): N/A 
SVN Revision (number only!):  
Disclaimer on File?:        N/A 
Request Review:              
====================================================================== 
Date Submitted:             2010-08-20 17:35 CDT
Last Modified:              2010-08-21 07:16 CDT
====================================================================== 
Summary:                    [patch] App Dial does not respect TON and fails when
etsi call rerouting is used
Description: 
Asterisk routes an external call to an internal pbx. This internal pbx uses
ETSI Call Rerouting to forward that call to an external destination. The
pbx always uses TON. So the number app_dial uses misses the prefixes, in
that case the "0".

In my opinion app_dial has to respect the settings in dahdi to generate a
valid number including prefix.

8 INVOKE Component Context Specific/C [1 0x01]
8   invokeId Integer(2 0x02) = 14 0x000E
8   operationValue Integer(2 0x02) = 14 0x000E
8   operationValue = ROSE_ETSI_CallRerouting
8   CallRerouting Sequence/C(48 0x30)
8   reroutingReason Enumerated(10 0x0A) = 1 0x0001
8   calledAddress Address Sequence/C(48 0x30)
8   partyNumber PartyNumber
8   publicPartyNumber Context Specific/C [1 0x01]
8   typeOfNumber Enumerated(10 0x0A) = 2 0x0002
8   numberDigits Numeric String(18 0x12) = "1224"
8   reroutingCounter Integer(2 0x02) = 1 0x0001
8   q931ie Application [0 0x00] =
8     <04 03 80 90 A3> - "~~~~~"
8   Explicit Context Specific/C [1 0x01]
8   lastReroutingNr PresentedNumberUnscreened
8   Explicit Context Specific/C [0 0x00]
8   presentationAllowedNumber PartyNumber
8   publicPartyNumber Context Specific/C [1 0x01]
8   typeOfNumber Enumerated(10 0x0A) = 2 0x0002
8   numberDigits Numeric String(18 0x12) = "XXX9594524"
8   Explicit Context Specific/C [2 0x02]
8   subscriptionOption Enumerated(10 0x0A) = 2 0x0002
8 Adding facility ie contents to send in FACILITY message:
8 ASN.1 dump
8   Context Specific/C [3 0x03] <A3> Len:6 <06>
8     Integer(2 0x02) <02> Len:1 <01>
8       <7F> - "~"
8     Integer(2 0x02) <02> Len:1 <01>
8       <03> - "~"
8 ASN.1 end
8 ERROR Component Context Specific/C [3 0x03]
8   invokeId Integer(2 0x02) = 127 0x007F
8   errorValue Integer(2 0x02) = 3 0x0003
8   errorValue = General: Not Available
8 > Protocol Discriminator: Q.931 (8)  len=15
8 > TEI=0 Call Ref: len= 1 (reference 27/0x1B) (Sent from originator)
8 > Message Type: FACILITY (98)
8 > [1c 09 91 a3 06 02 01 7f 02 01 03]
8 > Facility (len=11, codeset=0) [ 0x91, 0xA3, 0x06, 0x02, 0x01, 0x7F,
0x02, 0x01, 0x03 ]
    -- Now forwarding DAHDI/i7/01721690402-7 to 'Local/1224 at amt-forward'
(thanks to DAHDI/i8/24-1b)
[Aug 21 00:24:05] NOTICE[6108]: app_dial.c:844 do_forward: Not accepting
call completion offers from call-forward recipient
Local/1224 at amt-forward-3b99;1
8 q931_hangup: other hangup
8 NEW_HANGUP DEBUG: Calling q931_hangup, ourstate Outgoing Call
Proceeding, peerstate Incoming Call Proceeding, hold-state Idle
8 q931.c:4981 q931_disconnect: Call 32795 enters state 11 (Disconnect
Request).  Hold state: Idle
8 Adding facility ie contents to send in DISCONNECT message:
8 ASN.1 dump
8   Context Specific/C [2 0x02] <A2> Len:3 <03>
8     Integer(2 0x02) <02> Len:1 <01>
8       <0E> - "~"
8 ASN.1 end
8 RESULT Component Context Specific/C [2 0x02]
8   invokeId Integer(2 0x02) = 14 0x000E
8 > Protocol Discriminator: Q.931 (8)  len=16
8 > TEI=0 Call Ref: len= 1 (reference 27/0x1B) (Sent from originator)
8 > Message Type: DISCONNECT (69)
8 > [08 02 81 90]
8 > Cause (len= 4) [ Ext: 1  Coding: CCITT (ITU) standard (0)  Spare: 0 
Location: Private network serving the local user (1)
8 >                  Ext: 1  Cause: Normal Clearing (16), class = Normal
Event (1) ]
8 > [1c 06 91 a2 03 02 01 0e]
8 > Facility (len= 8, codeset=0) [ 0x91, 0xA2, 0x03, 0x02, 0x01, 0x0E ]
    -- Hungup 'DAHDI/i8/24-1b'
    -- Executing [1224 at amt-forward:1]
NoOp("Local/1224 at amt-forward-3b99;2", "XX ") in new stack
    -- Executing [1224 at amt-forward:2]
Goto("Local/1224 at amt-forward-3b99;2", "amt,01224,1") in new stack
    -- Goto (amt,01224,1)


====================================================================== 

---------------------------------------------------------------------- 
 (0126211) avalentin (reporter) - 2010-08-21 07:16
 https://issues.asterisk.org/view.php?id=17897#c126211 
---------------------------------------------------------------------- 
I figured out this is a problem in channels/sig_pri.c. I patched it to fix
this issue. 

Issue History 
Date Modified    Username       Field                    Change               
====================================================================== 
2010-08-21 07:16 avalentin      Note Added: 0126211                          
======================================================================




More information about the asterisk-bugs mailing list