Hi,

I'm using freepbx, and I've gotten myself into a bit of an argument 
(http://issues.freepbx.org/browse/FREEPBX-7706) about when to use Busy() vs. 
Hangup(17).  The conversation boils down to the fact that in a certain 
condition within the freepbx dialplan, an incoming PRI call runs the 
application Playtone(busy) followed by Busy(20).  My issue here is that 
PRI_CAUSE never gets set, so the calling phone doesn't ever ring busy, it just 
rings normally.  I should note that this call is never Answer()'d.  The stance 
of the freepbx team member is that calling Busy() should be all that an 
application needs to do - they shouldn't have to worry about writing special 
code depending on the type of the underlying channel.  I can't say that I 
disagree with that, especially after viewing the official docs, which describe 
Busy() as:

"This application will indicate the busy condition to the calling channel."

This to me implies that calling Busy() on a PRI channel should internally set 
PRI_CAUSE = 17.

What I'm really looking for here is a definitive answer as to what should 
change here, either:
a)       Dialplans be required to check channel status and run playtones/busy 
on answered channels or hangup(17) on non-answered channels
or
b)      Busy(), when called on a non-answered channel, should set the PRI_CAUSE 
(or whatever other appropriate variable for the channel)


Lastly, I should mention that I've posted this to the users group, and although 
I have gotten workarounds, I have not been able to get a definitive answer on 
how this actually should work, only on how it does work and how to work around 
it.


Thanks in advance,

-Justin
-- 
_____________________________________________________________________
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev

Reply via email to