Comedian Mail hangup after mailbox num entered

Hello everyone,

I’ve been using asterisk for about 3 years now. Back in the good old days I used to write everything by hand then I stumbled across PBXiaf and subsequently FreePBX. I recently used FreePBX on Ubuntu Jaunty to build an Asterisk appliance using a SheevaPlug (small ARM computer). Everything seems to work fine except for voicemail.

When I dial *98 and enter the mailbox number (801 in this case) it immediately hangs up on me. I’ve reviewed the console and don’t know where to go from here. I’ve never seen an issue like it:

Connected to Asterisk 1.4.21.2~dfsg-3ubuntu2.1 currently running on pbx (pid = 1878)
pbx*CLI> core set verbose 10
Verbosity was 0 and is now 10
– Message count requested for mailbox 891@device but voicemail not loaded.
– Executing [*98@from-internal:1] Answer(“SIP/850-001a9b20”, “”) in new stack
– Executing [*98@from-internal:2] Wait(“SIP/850-001a9b20”, “1”) in new stack
– Executing [*98@from-internal:3] NoOp(“SIP/850-001a9b20”, “app-dialvm: Asking for mailbox”) in new stack
– Executing [*98@from-internal:4] Read(“SIP/850-001a9b20”, “MAILBOX|vm-login|||3|2”) in new stack
– <SIP/850-001a9b20> Playing ‘vm-login’ (language ‘en’)
– User entered ‘801’
– Executing [*98@from-internal:5] NoOp(“SIP/850-001a9b20”, “app-dialvm: Got Mailbox 801”) in new stack
– Executing [*98@from-internal:6] Macro(“SIP/850-001a9b20”, “get-vmcontext|801”) in new stack
– Executing [s@macro-get-vmcontext:1] Set(“SIP/850-001a9b20”, “VMCONTEXT=default”) in new stack
– Executing [s@macro-get-vmcontext:2] GotoIf(“SIP/850-001a9b20”, “0?200:300”) in new stack
– Goto (macro-get-vmcontext,s,300)
– Executing [s@macro-get-vmcontext:300] NoOp(“SIP/850-001a9b20”, “”) in new stack
== Spawn extension (from-internal, *98, 7) exited non-zero on ‘SIP/850-001a9b20’
– Executing [h@from-internal:1] Macro(“SIP/850-001a9b20”, “hangupcall”) in new stack
– Executing [s@macro-hangupcall:1] GotoIf(“SIP/850-001a9b20”, “1?skiprg”) in new stack
– Goto (macro-hangupcall,s,4)
– Executing [s@macro-hangupcall:4] GotoIf(“SIP/850-001a9b20”, “1?skipblkvm”) in new stack
– Goto (macro-hangupcall,s,7)
– Executing [s@macro-hangupcall:7] GotoIf(“SIP/850-001a9b20”, “1?theend”) in new stack
– Goto (macro-hangupcall,s,9)
– Executing [s@macro-hangupcall:9] Hangup(“SIP/850-001a9b20”, “”) in new stack
== Spawn extension (macro-hangupcall, s, 9) exited non-zero on ‘SIP/850-001a9b20’ in macro ‘hangupcall’
== Spawn extension (macro-hangupcall, s, 9) exited non-zero on ‘SIP/850-001a9b20’

I’ve tried compiling Asterisk 1.4/1.6 from SVN on the device but it fails at the GSM codec being incompatible with the armtel architecture. I’d like to get the above fixed using the stock Ubuntu packages for simplicity sake. Thanks for your help everyone!

Could it be this:

Message count requested for mailbox 891@device but voicemail not loaded.

Type on Asterisk CLI to verify that you have the app_voicemail.so loaded.

module show like voicemail

Thanks for the quick reply! Please see the output below:

pbx*CLI> module show like voicemail
Module Description Use Count
app_hasnewvoicemail.so Indicator for whether a voice mailbox ha 0
app_voicemail.so Comedian Mail (Voicemail System) 0
2 modules loaded

This is the same as the output from a system that’s currently working.

The 891 error is likely because it’s a ATA that’s used for a fax machine that doesn’t have voicemail setup.

I upped the verbosity a little bit and it looks like I’m seeing more errors:


– Goto (macro-get-vmcontext,s,300)
– Executing [s@macro-get-vmcontext:300] NoOp(“SIP/850-00222b18”, “”) in new stack
== Spawn extension (from-internal, *98, 7) exited non-zero on ‘SIP/850-00222b18’
– Executing [h@from-internal:1] Macro(“SIP/850-00222b18”, “hangupcall”) in new stack
– Executing [s@macro-hangupcall:1] GotoIf(“SIP/850-00222b18”, “1?skiprg”) in new stack
– Goto (macro-hangupcall,s,4)
– Executing [s@macro-hangupcall:4] GotoIf(“SIP/850-00222b18”, “1?skipblkvm”) in new stack
– Goto (macro-hangupcall,s,7)
– Executing [s@macro-hangupcall:7] GotoIf(“SIP/850-00222b18”, “1?theend”) in new stack
– Goto (macro-hangupcall,s,9)
– Executing [s@macro-hangupcall:9] Hangup(“SIP/850-00222b18”, “”) in new stack
== Spawn extension (macro-hangupcall, s, 9) exited non-zero on ‘SIP/850-00222b18’ in macro ‘hangupcall’
== Spawn extension (macro-hangupcall, s, 9) exited non-zero on ‘SIP/850-00222b18’
== Spawn extension (macro-dial, s, 7) exited non-zero on ‘SIP/upt3aRD9zU-001a9b20’ in macro ‘dial’
== Spawn extension (macro-dial, s, 7) exited non-zero on ‘SIP/upt3aRD9zU-001a9b20’
– Executing [h@macro-dial:1] Macro(“SIP/upt3aRD9zU-001a9b20”, “hangupcall”) in new stack
– Executing [s@macro-hangupcall:1] GotoIf(“SIP/upt3aRD9zU-001a9b20”, “1?skiprg”) in new stack
– Goto (macro-hangupcall,s,4)
– Executing [s@macro-hangupcall:4] GotoIf(“SIP/upt3aRD9zU-001a9b20”, “0?skipblkvm”) in new stack
– Executing [s@macro-hangupcall:5] NoOp(“SIP/upt3aRD9zU-001a9b20”, “Cleaning Up Block VM Flag: BLKVM/800/SIP/upt3aRD9zU-001a9b20”) in new stack
– Executing [s@macro-hangupcall:6] DBdel(“SIP/upt3aRD9zU-001a9b20”, “BLKVM/800/SIP/upt3aRD9zU-001a9b20”) in new stack
– DBdel: family=BLKVM, key=800/SIP/upt3aRD9zU-001a9b20
– DBdel: Error deleting key from database.
– Executing [s@macro-hangupcall:7] GotoIf(“SIP/upt3aRD9zU-001a9b20”, “1?theend”) in new stack
– Goto (macro-hangupcall,s,9)
– Executing [s@macro-hangupcall:9] Hangup(“SIP/upt3aRD9zU-001a9b20”, “”) in new stack
== Spawn extension (macro-hangupcall, s, 9) exited non-zero on ‘SIP/upt3aRD9zU-001a9b20’ in macro ‘hangupcall’
== Spawn extension (macro-hangupcall, s, 9) exited non-zero on ‘SIP/upt3aRD9zU-001a9b20’

What are the DBdel errors all about? I’ve googled for about 15 minutes but come up with nothing useful. Thanks!

EDIT: Voicemail does partly work because I hear the “Comedian Mail” prompt and I’m allowed to enter my mailbox number. It seems to bomb out after I enter my mailbox number. Here’s a copy of my modules.conf http://pastebin.com/f32b18292 I remember having to modify it somewhat in order to get asterisk to load after I installed FreePBX.

Just ran asterisk in debug mode, look what I found:


Executed application: GotoIf
Launching 'NoOp’
Executed application: NoOp
No application ‘MailBoxExists’ for extension (from-internal, *98, 7)
Spawn extension (from-internal,*98,7) exited non-zero on 'SIP/850-00207070’
Soft-Hanging up channel ‘SIP/850-00207070’

So, I decided to simplify things by creating a dedicated extension:

exten => *95,1,Answer
exten => *95,n,VoiceMailMain(801@default)
exten => *95,n,Macro(hangupcall,)

Here are the results of that endeavour:

Checking SIP call limits for device 850
Launching 'Answer’
SIP answering channel: SIP/850-001b02d8
Setting framing from config on incoming call
No application ‘VoiceMailMain’ for extension (from-internal, *95, 2)
Spawn extension (from-internal,*95,2) exited non-zero on 'SIP/850-001b02d8’
Soft-Hanging up channel ‘SIP/850-001b02d8’

What is going on? I’ve never seen anything like it!

Voicemail is definitely loaded:

*CLI> show modules like voicemail
Module Description Use Count
app_hasnewvoicemail.so Indicator for whether a voice mailbox ha 0
app_voicemail.so Comedian Mail (Voicemail System) 0
2 modules loaded

The permissions on it:

root@pbx:/etc/asterisk# ls -l /usr/lib/asterisk/modules/app_voicemail*
-rwxr-xr-x 1 root root 150548 2009-10-08 17:37 /usr/lib/asterisk/modules/app_voicemail_imap.so
-rwxr-xr-x 1 root root 138060 2009-10-08 17:37 /usr/lib/asterisk/modules/app_voicemail_odbc.so
-rwxr-xr-x 1 root root 125712 2009-10-08 17:37 /usr/lib/asterisk/modules/app_voicemail.so

I’m at my end!

Looks like an Asterisk issue to me. Are you running Asterisk as root?

Not sure if this will help, but I came across this thread that tell how to modify the makeopts file to enable GSM when compiling…

http://plugcomputer.org/plugforum/index.php?topic=98.0

Edit makeopts, find PROC=armv5tejl and change to PROC=arm, save and exit.