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
