[Asterisk-Users] How to avoid collect calls on ISDN BRI trunks?

Armin Schindler armin at melware.de
Tue Jul 12 04:48:23 MST 2005


On Tue, 12 Jul 2005, Dhennys Pestana wrote:
> I need to block collect calls on my PBX.
> 
> I was able to find information on Google regarding ISDN ZAP channels, but not
> ISDN CAPI channels which is my case.
> 
> Since there's no information from the Telco that the call is going to be charged
> by the callee, if a particular call is automatically answered by the PBX instead
> of a real person there's no way to avoid it. There's only a recording AFTER the
> call is answered, asking for the callee party to accept it.
> 
> By using ZAP channels with HFC ISDN cards, it's possible to use Hangup() and
> Flash() commands, which won't do any good on CAPI channels because it will
> hangup the call immediatelly.
> 
> Note: This situation is exctaly the same with remote access servers (RAS),
> commonly used by Internet Service Providers.
> 
> Here's an example of what should happen on my scenario:
> 
> [default]                         ; External calls comes on "default" context
> exten => s,1,Wait,1               ; Wait for all ISDN and CAPI messages
> exten => s,2,Answer()             ; PBX actually answers the call
> exten => s,3,Wait,1               ; Just in case
> exten => s,4,Flash()              ; Avoid collect calls, don't actually hangup
> exten => s,5,Wait,1               ; Wait a second (just in case)
> exten => s,6,Answer()             ; Now it should work as if it were "s,1"
> exten => s,7,BackGround(IVR-menu) ; 1 for sales, 2 for support, 3 for...
> 
> 
> Note: Step "s,4" could be also "Hangup()", it won't make any difference.
> 
> If it were an analog trunk, it would work flawlessly. Unfortunatelly for digital
> trunks, when you hangup the channel the call is dropped immediately.

Yes, because Hangup() means 'disconnect'.
 
I'm not aware of Flash() and what it is doing, but it is surely not 
implemented in chan_capi.
If someone can tell me what Flash() is supposed to do, we can implement it 
in chan_capi-cm.

Armin



More information about the asterisk-users mailing list