IVR not playing announcements

For some reason, the IVR I have setup is not playing the announcements when dialing in. The line just rings and rings, but whats funny is, if I press any of the options while it’s ringing, I get directed to that extension, or queue that is configured on it. Having a hard time debugging this, and already blew more hours on it than I wanted to. Maybe you all can help. Thanks.

    -- Executing [xxxxxxx@from-zaptel:1] Set("Zap/1-1", "DID=xxxxxxx") in new stack
    -- Executing [xxxxxxx@from-zaptel:2] Goto("Zap/1-1", "s|1") in new stack
    -- Goto (from-zaptel,s,1)
    -- Executing [s@from-zaptel:1] NoOp("Zap/1-1", "Entering from-zaptel with DID == xxxxxxx") in new stack
    -- Executing [s@from-zaptel:2] Ringing("Zap/1-1", "") in new stack
    -- Accepting voice call from 'xxxxxxxxxx' to 'xxxxxxx' on channel 0/1, span 1
    -- Executing [s@from-zaptel:3] Set("Zap/1-1", "DID=xxxxxxx") in new stack
    -- Executing [s@from-zaptel:4] NoOp("Zap/1-1", "DID is now xxxxxxx") in new stack
    -- Executing [s@from-zaptel:5] GotoIf("Zap/1-1", "1?zapok:notzap") in new stack
    -- Goto (from-zaptel,s,8)
    -- Executing [s@from-zaptel:8] NoOp("Zap/1-1", "Is a Zaptel Channel") in new stack
    -- Executing [s@from-zaptel:9] Set("Zap/1-1", "CHAN=1-1") in new stack
    -- Executing [s@from-zaptel:10] Set("Zap/1-1", "CHAN=1") in new stack
    -- Executing [s@from-zaptel:11] Macro("Zap/1-1", "from-zaptel-1|xxxxxxx|1") in new stack
    -- Executing [s@from-zaptel:12] NoOp("Zap/1-1", "Returned from Macro from-zaptel-1") in new stack
    -- Executing [s@from-zaptel:13] Goto("Zap/1-1", "from-pstn|xxxxxxx|1") in new stack
    -- Goto (from-pstn,xxxxxxx,1)
    -- Executing [xxxxxxx@from-pstn:1] NoOp("Zap/1-1", "Catch-All DID Match - Found xxxxxxx - You probably want a DID for this.") in new stack
    -- Executing [xxxxxxx@from-pstn:2] Goto("Zap/1-1", "ext-did|s|1") in new stack
    -- Goto (ext-did,s,1)
    -- Executing [s@ext-did:1] Set("Zap/1-1", "__FROM_DID=s") in new stack
    -- Executing [s@ext-did:2] Gosub("Zap/1-1", "app-blacklist-check|s|1") in new stack
    -- Executing [s@app-blacklist-check:1] LookupBlacklist("Zap/1-1", "") in new stack
    -- Executing [s@app-blacklist-check:2] GotoIf("Zap/1-1", "0?blacklisted") in new stack
    -- Executing [s@app-blacklist-check:3] Return("Zap/1-1", "") in new stack
    -- Executing [s@ext-did:3] ExecIf("Zap/1-1", "1 |Set|CALLERID(name)=xxxxxxxxxx") in new stack
    -- Executing [s@ext-did:4] Answer("Zap/1-1", "") in new stack
    -- Executing [s@ext-did:5] Wait("Zap/1-1", "0") in new stack
    -- Executing [s@ext-did:6] Set("Zap/1-1", "__CALLINGPRES_SV=allowed") in new stack
    -- Executing [s@ext-did:7] SetCallerPres("Zap/1-1", "allowed_not_screened") in new stack
    -- Executing [s@ext-did:8] Goto("Zap/1-1", "ivr-6|s|1") in new stack
    -- Goto (ivr-6,s,1)
    -- Executing [s@ivr-6:1] Set("Zap/1-1", "MSG=custom/test_test") in new stack
    -- Executing [s@ivr-6:2] Set("Zap/1-1", "LOOPCOUNT=0") in new stack
    -- Executing [s@ivr-6:3] Set("Zap/1-1", "__DIR-CONTEXT=default") in new stack
    -- Executing [s@ivr-6:4] Set("Zap/1-1", "_IVR_CONTEXT_ivr-6=") in new stack
    -- Executing [s@ivr-6:5] Set("Zap/1-1", "_IVR_CONTEXT=ivr-6") in new stack
    -- Executing [s@ivr-6:6] GotoIf("Zap/1-1", "1?begin") in new stack
    -- Goto (ivr-6,s,9)
    -- Executing [s@ivr-6:9] Set("Zap/1-1", "TIMEOUT(digit)=3") in new stack
    -- Digit timeout set to 3
    -- Executing [s@ivr-6:10] Set("Zap/1-1", "TIMEOUT(response)=10") in new stack
    -- Response timeout set to 10
    -- Executing [s@ivr-6:11] Set("Zap/1-1", "__IVR_RETVM=") in new stack
    -- Executing [s@ivr-6:12] ExecIf("Zap/1-1", "1|Background|custom/test_test") in new stack
    -- Executing [s@ivr-6:13] WaitExten("Zap/1-1", "|") in new stack
    -- Channel 0/1, span 1 got hangup request, cause 16
  == Spawn extension (ivr-6, s, 13) exited non-zero on 'Zap/1-1'
    -- Executing [h@ivr-6:1] Hangup("Zap/1-1", "") in new stack
  == Spawn extension (ivr-6, h, 1) exited non-zero on 'Zap/1-1'

check you log file (and make sure your verbosity and logging are turned up). It’s likely that you have a improperly formatted or otherwise corrupted sound file (test_test) and the log will show the error trying to reach it.

I tried changing the IVR to use one of the built in recordings just to test however, and I get the same problem.

[Apr 17 15:15:36] WARNING[6846] file.c: File custom/test_test does not exist in any format
[Apr 17 15:15:36] WARNING[6846] file.c: Unable to open custom/test_test (format 0x44 (ulaw|slin)): No such file or directory

Based off the error, my assumption is that gsm and wav are not configured as supported codecs for the IVR. I just don’t know where to change this.

check you permissions, try running: “amportal chown”

btw - what distro is this?

We are using Ubuntu 8.04 LTS and the ubuntu asterisk from the package repos. For some reason their package of asterisk places most all the sounds in /usr/share/asterisk/sounds/. I moved all the sounds from that folder into the /var/lib/asterisk/sounds/ folder and then linked to in in the /usr/share/asterisk folder. I don’t know why they did this, but my change resolved the problem.

It also ended up fixing other problems we were having with the call directory and what not. Thanks for pointing me in the right direction.

cd /usr/share/asterisk/sounds
mv * /var/lib/asterisk/sounds
cd ..
rm -rf sounds
ln -s /var/lib/asterisk/sounds
chown -R asterisk:asterisk /var/lib/asterisk/sounds

EDIT TO ADD:
Now that I think about it, it may be as simple as running

to resolve the problem. I should have checked the ownership of the sound files before I made the change I did.