Asterisk Stuck in Infinite Loop in Voicemail Macro

I’ve been having this problem for a while. I am using Trixbox 2.6.1.1(I know this is not a Trixbox forum) with all the default packages. I use FreePBX exclusively to configure Asterisk (no hand mods). What occurs is when a caller gets to the voicemail macro and hangs up before leaving a VM the system gets into an infinite loop (log snippet below). The CPU (one core) goes to 100% and the log file grows at about 1GB/min. I am forced to reset the asterisk process to stop to loop. Any suggestions?

Thanks,
Jason

[Feb 18 08:16:33] DEBUG[5301] app_macro.c: Executed application: Macro
[Feb 18 08:16:33] VERBOSE[5301] logger.c: – Executing [s-NOANSWER@macro-vm:2] VoiceMail(“Zap/1-1”, “1001@default|u”) in new stack
[Feb 18 08:16:33] VERBOSE[5301] logger.c: – <Zap/1-1> Playing ‘/var/spool/asterisk/voicemail/default/1001/unavail’ (language ‘en’)
[Feb 18 08:16:37] VERBOSE[2218] logger.c: < Protocol Discriminator: Q.931 (8) len=9
[Feb 18 08:16:37] VERBOSE[2218] logger.c: < Call Ref: len= 2 (reference 926/0x39E) (Originator)
[Feb 18 08:16:37] VERBOSE[2218] logger.c: < Message type: DISCONNECT (69)
[Feb 18 08:16:37] VERBOSE[2218] logger.c: < [08 02 8a ff]
[Feb 18 08:16:37] VERBOSE[2218] logger.c: < Cause (len= 4) [ Ext: 1 Coding: CCITT (ITU) standard (0) Spare: 0 Location: Network beyond the interworking p
oint (10)
[Feb 18 08:16:37] VERBOSE[2218] logger.c: < Ext: 1 Cause: Interworking, unspecified (127), class = Interworking (7) ]
[Feb 18 08:16:37] VERBOSE[2218] logger.c: – Processing IE 8 (cs0, Cause)
[Feb 18 08:16:37] VERBOSE[2218] logger.c: q931.c:3563 q931_receive: call 926 on channel 1 enters state 12 (Disconnect Indication)
[Feb 18 08:16:37] VERBOSE[2218] logger.c: – Channel 0/1, span 1 got hangup request, cause 127
[Feb 18 08:16:37] VERBOSE[5301] logger.c: == Spawn extension (macro-vm, s-NOANSWER, 2) exited non-zero on ‘Zap/1-1’ in macro ‘vm’
[Feb 18 08:16:37] VERBOSE[5301] logger.c: == Spawn extension (macro-vm, s-NOANSWER, 2) exited non-zero on ‘Zap/1-1’ in macro ‘exten-vm’
[Feb 18 08:16:37] VERBOSE[5301] logger.c: == Spawn extension (macro-vm, s-NOANSWER, 2) exited non-zero on ‘Zap/1-1’
[Feb 18 08:16:37] VERBOSE[5301] logger.c: – Executing [h@macro-vm:1] Macro(“Zap/1-1”, “vm-notify|1001”) in new stack
[Feb 18 08:16:37] DEBUG[5301] func_db.c: DB: vmnotify/1001 not found in database.
[Feb 18 08:16:37] VERBOSE[5301] logger.c: – Executing [s@macro-vm-notify:1] Set(“Zap/1-1”, “phonenumber=”) in new stack
[Feb 18 08:16:37] DEBUG[5301] app_macro.c: Executed application: Set
[Feb 18 08:16:37] VERBOSE[5301] logger.c: – Executing [s@macro-vm-notify:2] GotoIf(“Zap/1-1”, “1?0:10”) in new stack
[Feb 18 08:16:37] VERBOSE[5301] logger.c: – Goto (macro-vm-notify,s,0)
[Feb 18 08:16:37] DEBUG[5301] app_macro.c: Executed application: Gotoif
[Feb 18 08:16:37] VERBOSE[5301] logger.c: – Executing [s@macro-vm:2] Set(“Zap/1-1”, “VMGAIN=”"") in new stack
[Feb 18 08:16:37] VERBOSE[5301] logger.c: – Executing [s@macro-vm:3] Goto(“Zap/1-1”, “s-NOANSWER|1”) in new stack
[Feb 18 08:16:37] VERBOSE[5301] logger.c: – Goto (macro-vm,s-NOANSWER,1)
[Feb 18 08:16:37] VERBOSE[5301] logger.c: – Executing [s-NOANSWER@macro-vm:1] Macro(“Zap/1-1”, “get-vmcontext|1001”) in new stack
[Feb 18 08:16:37] VERBOSE[5301] logger.c: – Executing [s@macro-get-vmcontext:1] Set(“Zap/1-1”, “VMCONTEXT=default”) in new stack
----snip----
[Feb 18 08:16:37] DEBUG[5301] app_macro.c: Executed application: Set
[Feb 18 08:16:37] VERBOSE[5301] logger.c: – Executing [s@macro-get-vmcontext:2] GotoIf(“Zap/1-1”, “0?200:300”) in new stack
[Feb 18 08:16:37] VERBOSE[5301] logger.c: – Goto (macro-get-vmcontext,s,300)
[Feb 18 08:16:37] DEBUG[5301] app_macro.c: Executed application: GotoIf
[Feb 18 08:16:37] VERBOSE[5301] logger.c: – Executing [s@macro-get-vmcontext:300] NoOp(“Zap/1-1”, “”) in new stack
[Feb 18 08:16:37] DEBUG[5301] app_macro.c: Executed application: NoOp
[Feb 18 08:16:37] VERBOSE[5301] logger.c: – Executing [s@macro-vm:2] Set(“Zap/1-1”, “VMGAIN=”"") in new stack
[Feb 18 08:16:37] VERBOSE[5301] logger.c: – Executing [s@macro-vm:3] Goto(“Zap/1-1”, “s-NOANSWER|1”) in new stack
[Feb 18 08:16:37] VERBOSE[5301] logger.c: – Goto (macro-vm,s-NOANSWER,1)
[Feb 18 08:16:37] VERBOSE[5301] logger.c: – Executing [s-NOANSWER@macro-vm:1] Macro(“Zap/1-1”, “get-vmcontext|1001”) in new stack
[Feb 18 08:16:37] VERBOSE[5301] logger.c: – Executing [s@macro-get-vmcontext:1] Set(“Zap/1-1”, “VMCONTEXT=default”) in new stack
—snip----
[Feb 18 08:16:37] DEBUG[5301] app_macro.c: Executed application: Set
[Feb 18 08:16:37] VERBOSE[5301] logger.c: – Executing [s@macro-get-vmcontext:2] GotoIf(“Zap/1-1”, “0?200:300”) in new stack
[Feb 18 08:16:37] VERBOSE[5301] logger.c: – Goto (macro-get-vmcontext,s,300)
[Feb 18 08:16:37] DEBUG[5301] app_macro.c: Executed application: GotoIf

That is a good question, I cannot find the FreePBX version number on the GUI (Trixbox has forked FreePBX right?). But I believe that it is 2.5.1 (the voicemail module is 2.5.1.5). The only 3rd party mod is the print extensions module.

What version of FreePBX are you using? and do you have any 3rd party mods installed?

you should be able to get it in the following ways: go to module admin, and what is the value for the core? Another way; if it is the true FreePBX GUI: upper left corner right under the FreePBX logo it will have the version number (right above the setup and tools tab).

If you have the green interface then yes that is the trixbox forked version and a whole other issue.

That is why I couldn’t figure it out. The version is not in the upper corner and the version number for ‘core’ is listed as 5.5.1.5. The ARI Framework module is listed as 5.5.2, but the remaining modules are in the expected 2.5.# range. This is definitely the forked version, I suppose I should post this to their forums instead…

ok I hate to say this but “Good luck”, you are using the forked version of the FreePBX code that trixbox produced. they thought it would be cute to have a higher version number then the code the used so you can’t go back to FreePBX based code. Since you are using the trixbox code you are using their mirror system and not the FreePBX one so you’ll not see the same modules or updated to modules that are posted here.

So all of the code that is version 5.x is potentially trixbox tweaked code. We don’t have access to it as they have never followed through on the promises of posting back into the bug tracker the changes they made to “improve” functionality and operations.