[asterisk-dev] tilghman: branch 1.4 r156755 -/branches/1.4/apps/app_while.c

Alec Davis sivad.a at paradise.net.nz
Mon Nov 17 02:48:43 CST 2008

I hope this isn't going to break the ability play audio before answering the
call, when using ISDN.

The option 'n' from app_read is specifically for this:
	'n' to read digits even if the line is not up.

A simplified app that works in 1.6.0rc6 quite nicely, the call is only
'answered' when the called party answers the phone.

exten => 1234,1,Progress()
exten => 1234,n,Read(extension,vm-enter-num-to-call,4,n)
exten => 1234,n,SayDigits(${extension})
exten => 1234,n,Goto(${extension},1)

-----Original Message-----
From: asterisk-dev-bounces at lists.digium.com
[mailto:asterisk-dev-bounces at lists.digium.com]On Behalf Of Russell
Sent: Saturday, 15 November 2008 02:22 a.m.
To: Asterisk Developers Mailing List
Subject: Re: [asterisk-dev] tilghman: branch 1.4 r156755

SVN commits to the Digium repositories wrote:
> Author: tilghman
> Date: Thu Nov 13 18:41:37 2008
> New Revision: 156755
> URL: http://svn.digium.com/view/asterisk?view=rev&rev=156755
> Log:
> ast_waitfordigit() requires that the channel be up, for no good logical
> reason.  This prevents While/EndWhile from working within the "h"
> extension.

Actually, I think this behavior makes perfect sense.  Every channel API
call in Asterisk behaves this way.  This API call assumes the channel to
be up, because it's hard to read digits from a channel that isn't up.
:-)  API calls that have this requirement all return -1 as soon as
possible to indicate that the call has been hung up, and that the
appropriate post-hangup cleanup procedures should be done now.

Russell Bryant
Senior Software Engineer
Open Source Team Lead
Digium, Inc.

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

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:

More information about the asterisk-dev mailing list