[asterisk-bugs] [Asterisk 0009449]: "Dial(mISDN/g:te/${EXTEN})" don't set up L2Link but "Dial(mISDN/1/${EXTEN}" works

noreply at bugs.digium.com noreply at bugs.digium.com
Wed Nov 14 07:59:02 CST 2007


A NOTE has been added to this issue. 
====================================================================== 
http://bugs.digium.com/view.php?id=9449 
====================================================================== 
Reported By:                ibc
Assigned To:                crich
====================================================================== 
Project:                    Asterisk
Issue ID:                   9449
Category:                   Channels/chan_misdn
Reproducibility:            always
Severity:                   major
Priority:                   normal
Status:                     assigned
Asterisk Version:           1.4.2  
SVN Branch (only for SVN checkouts, not tarball releases): N/A  
SVN Revision (number only!):  
Disclaimer on File?:        No 
Request Review:              
====================================================================== 
Date Submitted:             04-03-2007 06:43 CDT
Last Modified:              11-14-2007 07:59 CST
====================================================================== 
Summary:                    "Dial(mISDN/g:te/${EXTEN})" don't set up L2Link but
"Dial(mISDN/1/${EXTEN}" works
Description: 
Asterisk 1.4.2 with Junghans QuadBri BRI-ISDN card handled with mISDN.

I have 3 BRI's in PTP mode configured as a "te" group in misdn.conf and
incoming calls work perfectly.

Outgoing calls dialing the "te" group fail but outgoings calls dialing any
mISDN port work. The following example shows what I mean:

- 940 exten is:  Dial(mISDN/g:te/675511308)
- 941 exten is:  Dial(mISDN/1/675511308)
- "te" group is:
  [te]
    ports=1,2,3
    context=entrantes-analogicas
    msns=*

I dial 940 and it fails:
-------------------------------------------
asterisk*CLI> misdn show stacks
BEGIN STACK_LIST:
  * Port 1 Type TE Prot. PTP L2Link DOWN L1Link:UP Blocked:0  Debug:0
  * Port 2 Type TE Prot. PTP L2Link DOWN L1Link:UP Blocked:0  Debug:0
  * Port 3 Type TE Prot. PTP L2Link DOWN L1Link:UP Blocked:0  Debug:0
    -- Executing [940 at desde-usuarios:1] Dial("SIP/ibc-tfno-ip-b5907340",
"mISDN/g:te/675511308") in new stack
P[ 1] Port Down L2:0 L1:1
P[ 2] Port Down L2:0 L1:1
P[ 3] Port Down L2:0 L1:1
[Apr  3 12:16:08] WARNING[23210]: chan_misdn.c:5256 chan_misdn_log: Could
not create channel on port:-1 with extensions:675511308
-------------------------------------------

I dial 941 and it works:
-------------------------------------------
asterisk*CLI> misdn show stacks
BEGIN STACK_LIST:
  * Port 1 Type TE Prot. PTP L2Link DOWN L1Link:UP Blocked:0  Debug:0
  * Port 2 Type TE Prot. PTP L2Link DOWN L1Link:UP Blocked:0  Debug:0
  * Port 3 Type TE Prot. PTP L2Link DOWN L1Link:UP Blocked:0  Debug:0
    -- Executing [941 at desde-usuarios:1] Dial("SIP/ibc-tfno-ip-b5900c90",
"mISDN/1/675511308") in new stack
P[ 0] maxnum:2    -- Called 1/675511308
P[ 1] channel already in use:1
    -- mISDN/1-u271 is proceeding passing it to SIP/ibc-tfno-ip-b5900c90
-------------------------------------------

If I call instantly 940 it works because there is at least one port with
L2Link UP (port 1):
-------------------------------------------
asterisk*CLI> misdn show stacks
BEGIN STACK_LIST:
  * Port 1 Type TE Prot. PTP L2Link UP L1Link:UP Blocked:0  Debug:0
  * Port 2 Type TE Prot. PTP L2Link DOWN L1Link:UP Blocked:0  Debug:0
  * Port 3 Type TE Prot. PTP L2Link DOWN L1Link:UP Blocked:0  Debug:0
    -- Executing [940 at desde-usuarios:1] Dial("SIP/ibc-tfno-ip-b5900c90",
"mISDN/g:te/675511308") in new stack
P[ 0] maxnum:2    -- Called g:te/675511308
P[ 1] channel already in use:1
    -- mISDN/1-u275 is proceeding passing it to SIP/ibc-tfno-ip-b5900c90
-------------------------------------------

So my conclusion is:
- Dialing directly to a mISDN port works well and sets up port L2Link.
- Dialing to a mISDN group JUST works if there is a port with L2Link UP.
====================================================================== 

---------------------------------------------------------------------- 
 lukinovoip - 11-14-07 07:59  
---------------------------------------------------------------------- 
ASTERISK 1.4.13
Hi all,
I solve this issue by patching chan_misdn.c this way:

on line 3211 insert a comment

chan_misdn_log(4, port, "portup:%d\n", port_up);

    /*Here if ( port_up>0 )*/ {
                 newbc = misdn_lib_get_free_bc(port, 0, 0, dec);
                              

insert a comment in line 3167 too:

/*if (port_up <= 0)
   continue;*/

Recompile asterisk.
This worked for me.
Hope this can help you 

Issue History 
Date Modified   Username       Field                    Change               
====================================================================== 
11-14-07 07:59  lukinovoip     Note Added: 0073636                          
======================================================================




More information about the asterisk-bugs mailing list