[Asterisk-Users] Hangups after voicemail

Wade J. Weppler weppler at wwworks-inc.com
Wed Sep 17 09:11:04 MST 2003


Then it sounds like your Telco isn't giving you kewlstart signaling.
This is by far the most reliable method of telling asterisk that the
line has been disconnected.  Trying asking your Telco if they can supply
you with Kewlstart or Forward Disconnect Supervision on your line.

Basically, all this does is momentarily reverse the polarity on the line
to indicate that the line has been disconnected.  The Zaptel FXO devices
detect this condition to indicate to Asterisk that the line has been
disconnected.

-wade

> -----Original Message-----
> From: Christian Hecimovic [mailto:checimovic at qworks.ca]
> Sent: Wednesday, September 17, 2003 12:01 PM
> To: asterisk-users at lists.digium.com
> Subject: Re: [Asterisk-Users] Hangups after voicemail
> 
> Hi Wade,
> 
> Yes, my zapata.conf looks like this:
> 
> group = 1
> context = incoming
> signalling = fxs_ks
> echocancel = yes
> echocancelwhenbridged = yes
> channel => 1-2
> 
> So they are configured as kewlstart.
> 
> Thanks,
> 
> Chris
> 
> On Tuesday 16 September 2003 16:53, Wade J. Weppler wrote:
> > Have you tried using kewlstart instead?  Your loopstart lines might
be
> > configured for kewlstart (forward disconnect supervision).
> >
> > -wade
> >
> > > -----Original Message-----
> > > From: Christian Hecimovic [mailto:checimovic at qworks.ca]
> > > Sent: Tuesday, September 16, 2003 7:48 PM
> > > To: asterisk-users at lists.digium.com
> > > Subject: [Asterisk-Users] Hangups after voicemail
> > >
> > > Hi,
> > >
> > > Try as I might, I can't get hangups detected on a Zap channel with
> >
> > loop
> >
> > > start
> > > lines. So, after someone leaves a voicemail and then hangs up,
> >
> > Asterisk
> >
> > > doesn't know it, exits VoicemailMain2, and loops back to the
corporate
> > > greeting, tying up the line even though the outside caller has
hung
> >
> > up.
> >
> > > Therefore, I've added the following hideous hack - er, code - to
> > > voicemail2.c.
> > > It starts right after the call to play_and_record() in
> >
> > leave_voicemail().
> >
> > > if (res != '#' && chan != NULL && !strncmp(chan->name, "Zap", 3))
{
> > > 	/* Hang up the Zap channel only */
> > > 	ast_softhangup(chan, AST_SOFTHANGUP_EXPLICIT);
> > > }
> > >
> > > Obviously, it hangs up the channel after the voicemail has been
> >
> > recorded,
> >
> > > if
> > > the # key wasn't pressed, if the channel still exists, and if it's
a
> >
> > Zap
> >
> > > channel. I couldn't see a way to do this with AGI.
> > >
> > > Question: is this safe? I used a soft hangup because the channel
is
> > > controlled
> > > by another thread. I also modified channel.c so that
> >
> > ast_channel_free()
> >
> > > sets
> > > chan to NULL after it's freed, just in case. Is there anything
else I
> > > should
> > > be aware of? The code seems to work in my testing, resulting in a
> >
> > proper
> >
> > > hangup right after the voicemail has been recorded. I'm not up on
my
> > > Asterisk
> > > internals, so I'm not totally confident about this.
> > >
> > > Thanks,
> > >
> > > Chris
> > >
> > >
> > > _______________________________________________
> > > Asterisk-Users mailing list
> > > Asterisk-Users at lists.digium.com
> > > http://lists.digium.com/mailman/listinfo/asterisk-users
> >
> > _______________________________________________
> > Asterisk-Users mailing list
> > Asterisk-Users at lists.digium.com
> > http://lists.digium.com/mailman/listinfo/asterisk-users
> 
> _______________________________________________
> Asterisk-Users mailing list
> Asterisk-Users at lists.digium.com
> http://lists.digium.com/mailman/listinfo/asterisk-users



More information about the asterisk-users mailing list