Voicemail still running after hangup

Can anyone give me a headstart on finding this problem. When a user calls and leaves a message, then hangs up - Asterisk seems to not understand the hangup and keeps recording the voicemail - filling up my hard drive.

When I press # to after leaving a voicemail - it works perfectly - but not whan I just hang up the phone.

Thanks for any help


I have the same problem, except pressing # makes no difference. Could using Vonage phone (VOiP) be causing this problem? I’ve edited the defaultzone to UK in zaptel.conf, so I’m sure it understands the tones.

Please help.



I found this on google:

If you search the archives, you’ll see other postings on this problem. Here’s
what I did:

Add the following to voicemail.conf:


The higher the silencethreshold, the less sensitive the silence detection
stuff is. You may have to fiddle with this value a bit. When the voicemail
app detects silence, it stops recording and rewinds itself to erase the

So now the voicemails record correctly, with no silence at the end. However,
the line is still tied up because the Zap channel has not detected the hangup
at the other end.

To force a hangup after leaving a voicemail, I added the following to
app_voicemail.c in leave_voicemail(), right after the call to

if (res != ‘#’ && chan != NULL && !strncmp(chan->name, “Zap”, 3)) {
/* Hang up the Zap channel only */
ast_softhangup(chan, AST_SOFTHANGUP_EXPLICIT);

This is a despicable hack, but it does the job. Basically, if the user hasn’t
pressed #, the channel is up, and the channel is a Zap channel, then hang up
after the voicemail has been recorded.

Hopefully this helps.


However I’m using Asterisk in the UK. There is no silence after hanging up, instead there is the hangup tone. Not sure what to do now…


Correct there are options for doing it from voicemail when there is ample ammount of silence. You can also play with call progress or busydetect in your zapata.conf

Actually, what I am finding is that as soon as the user hangs up (as opposed to pressing the # sign) the channel receives a fast busy tone from my toshiba PBX so the voicemail still thinks someone is talking - thus silence is never heard. Most of the time I get a 2 minute message full of fast busy tones.

The only thing I can do is set the voicemail timeout to about 40 seconds so it hangs up (risking hanging up in the middle of a long vm)

try busydetect

I un-commented it out in zapata.conf - is there any other configuration I need to do?

I still get the fast busy recording after the person hangs up - (Asterisk doesn’t hang up ) so far, I only allow a 40 second message so that my hard drive doesn’t fill up, that way Asterisk detects the length, then hangs up.

I bet you are using an x100p or cheap ebay clone.

Buying a tdm400 card from digium will probably resolve this issue for you.


I’m using the TDM400P card ordered from the website and I still have the problem.

Just out of interest how does one start a contribution project? I need to build a voice mail application with more functionality, like fastforward and rewind. I’m willing to put the work in… I know app_voicemail.c has well over 5000 lines of coding.

All advice is welcomed.



I have same problem with my TDM400M11B card. When someone hangup while it ringing the Asterisk want hangup its continue with voicemessage prompt. I try lots of different things but no luck.

I think you want to start by subscribing to the asterisk developers mailing list (not the forum).

Anyone have been able to get ride of this problem ?