Have you tried using kewlstart instead?  Your loopstart lines might be
configured for kewlstart (forward disconnect supervision).

-wade

> -----Original Message-----
> From: Christian Hecimovic [mailto:[EMAIL PROTECTED]
> Sent: Tuesday, September 16, 2003 7:48 PM
> To: [EMAIL PROTECTED]
> 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
> [EMAIL PROTECTED]
> http://lists.digium.com/mailman/listinfo/asterisk-users
_______________________________________________
Asterisk-Users mailing list
[EMAIL PROTECTED]
http://lists.digium.com/mailman/listinfo/asterisk-users

Reply via email to