[Asterisk-Dev] Facility Name requested on channel 0/2 not in use on span 1

Henry Margies henry.margies at gmx.de
Fri Jan 13 10:26:29 MST 2006


Hi all,

I have a problem with Three-Way-Calling on my ISDN Card. I have two HFC
PCI cards and one TDM400 (2x FXS). I wrote already  to the users list,
but nobody could help me. So I would like to solve the problem by
myself.

I get the following message if I try to do three way calling (having one
fxs on hold and the other on line):

"Facility Name requested on channel 0/2 not in use on span 1"

Show channels show me:
Channel  State Appl.         Data           
Zap/8-1  Up    Bridged Call  Zap/2-1        
Zap/2-1  Up    Dial          ZAP/8| 60| tT  
Zap/7-1  Up    Holded Call   (None)         
3 active channel(s)

7 and 8 are my fxs channels.

I looked into chan_zap.c to the following code:

case PRI_EVENT_FACNAME:
    chanpos = pri_find_principle(pri, e->facname.channel);

    if (chanpos < 0) { ... }

    if (chanpos > -1) {
        chanpos = pri_fixup_principle(pri, chanpos, e->facname.call);
	if (chanpos < 0) {
	    ast_log(LOG_WARNING, "Facility Name requested on
			 channel %d/%d not in use on span %d\n",
			PRI_SPAN(e->facname.channel),
			PRI_CHANNEL(e->facname.channel), pri->span);
			chanpos = -1;
	} else {


The call of pri_find_principle(pri(pri->span=1), 2) returns 1. The next
call to pri_fixup_principle returns -1 because it can not find the right
call (e->facname.call).

pri_fixup_principle is not able to find the call on both channels in the
span because channel 0 has no call (call is zero) and call of channel 1
is different.

It would help a lot to know where these call (e->facname.call) should
be. I have no clue why it is not there or where it should be.

Could somebody please be so kind to explain what pri_fixup_principle is
looking for? It would help to understand the problem.

Thanks in advance  :)

Henry

-- 
Hi! I'm a .signature virus! Copy me into your
~/.signature to help me spread!




More information about the asterisk-dev mailing list