[asterisk-users] Answering machine answers after pickup a phone.

Shaun Ruffell sruffell at digium.com
Fri Aug 5 10:42:28 CDT 2011


On Fri, Aug 05, 2011 at 01:14:58PM +0200, Jorge Barreiro wrote:
> Hi,
> 
> thanks for your time!
> 
> O Venres, 5 de Agosto de 2011 12:35:05 escribiches:
> > Completely normal operation.
> > You need to read and understand more basic telephony and analog lines to
> > understand why that won't work.
> 
> I definitely have a lot to learn yet. 
> 
> > Asterisk needs to be in control, and once someone answers a phone not under
> > Asterisk control, or the call is abandoned there is little you can do.
> 
> What I pretend is that asterisk detects that it's not under control and gets 
> out of the way. The same way it detects a remote hangup and stops the 
> dialplan, it could detect that someone else answered (the line is not ringing 
> anymore) and discard it the same way it does when the remote part hangup.
> 
> I've read comments in forums and tutorials that seem to imply that this 
> happens, but I couldn't find any confirmation (and indeed, it's not happening to 
> me).

When I first installed Asterisk in my home I used it in the way that you
described: as a glorified answering machine to email to me any voice mail.

I think what you want is the WaitForRing()[1] dial plan application.  This
function will wait x number of seconds, then look for *another* ring to come
in. If someone answered the phone before the timeout to that function Asterisk
would stop processing the dial plan.

[1] https://wiki.asterisk.org/wiki/display/AST/Application_WaitForRing

I ran into a couple of issues with WaitForRing(). The first being if someone
answered the phone and then quickly hung up *and* a new phone call came in
within the timeout period, Asterisk wouldn't know that the line was ringing
due to a new call. The second problem was I never got the dial tone detection
working so that if I tried to *place* a call from Asterisk while someone was
on the house line I would aggravate my wife.

Since coming to work for Digium I've seen in the data sheets for the FXO
interfaces that there is a capability to detect when a parallel device on a
line goes off hook. This would allow Asterisk to have a better sense of the
state of the line (like it currently can detect when a port is unplugged and
there is not battery by generating a red alarm.) but I haven't looked into
getting that information off the hardware and up into Asterisk.

Hope this helps,
Shaun

-- 
Shaun Ruffell
Digium, Inc. | Linux Kernel Developer
445 Jan Davis Drive NW - Huntsville, AL 35806 - USA
Check us out at: www.digium.com & www.asterisk.org



More information about the asterisk-users mailing list