Summary: | ASTERISK-13677: playback and set language issue | ||
Reporter: | Giedrius (voipas) | Labels: | |
Date Opened: | 2009-03-02 01:37:42.000-0600 | Date Closed: | 2011-06-07 14:07:56 |
Priority: | Minor | Regression? | No |
Status: | Closed/Complete | Components: | Applications/app_playback |
Versions: | Frequency of Occurrence | ||
Related Issues: | |||
Environment: | Attachments: | ||
Description: | Hello, I'm migrating from Asterisk 1.4.21.2 to Asterisk 1.6.0.6. And after migrating my IVR doesn't work anymore. My IVR is a multi-language and main issue is that Playback only plays prompts in English. This is my test dialplan: [test-prompt] exten => s,1,Answer exten => s,n,Wait(1) exten => s,n(begin),Set(TIMEOUT(digit)=3) exten => s,n,Noop(New Call) exten => s,n,Set(TIMEOUT(response)=60) exten => s,n,Background(choose_language) exten => s,n,WaitExten(4) exten => 1,1,Noop(Pressed 1) exten => 1,n,Set(CHANNEL(language)=lt) exten => 1,n,Noop(Choose language LT) exten => 1,n,Goto(123,1) exten => 2,1,Noop(Pressed 2) exten => 2,n,Set(CHANNEL(language)=en) exten => 2,n,Noop(Choose language EN) exten => 2,n,Goto(123,1) exten => 123,1,Playback(test/enter-conf-pin-number_8) In /var/lib/asterisk/sounds directory I've created test directory and lt subdirectory: find /var/lib/asterisk/sounds/test -name '*.wav' /var/lib/asterisk/sounds/test/lt/enter-conf-pin-number_8.wav /var/lib/asterisk/sounds/test/enter-conf-pin-number_8.wav The ouptut of Asterisk is: [Mar 2 09:23:47] VERBOSE[28399] logger.c: == Using SIP RTP CoS mark 5 [Mar 2 09:23:47] VERBOSE[32265] logger.c: -- Executing [123456789@from-trunk:1] Goto("SIP/111-ac15baf0", "test-prompt,s,1") in new stack [Mar 2 09:23:47] VERBOSE[32265] logger.c: -- Goto (test-prompt,s,1) [Mar 2 09:23:47] VERBOSE[32265] logger.c: -- Executing [s@test-prompt:1] Answer("SIP/111-ac15baf0", "") in new stack [Mar 2 09:23:47] VERBOSE[32265] logger.c: -- Executing [s@test-prompt:2] Wait("SIP/111-ac15baf0", "1") in new stack [Mar 2 09:23:48] VERBOSE[32265] logger.c: -- Executing [s@test-prompt:3] Set("SIP/111-ac15baf0", "TIMEOUT(digit)=3") in new stack [Mar 2 09:23:48] VERBOSE[32265] logger.c: -- Digit timeout set to 3 [Mar 2 09:23:48] VERBOSE[32265] logger.c: -- Executing [s@test-prompt:4] NoOp("SIP/111-ac15baf0", "New Call") in new stack [Mar 2 09:23:48] VERBOSE[32265] logger.c: -- Executing [s@test-prompt:5] Set("SIP/111-ac15baf0", "TIMEOUT(response)=60") in new stack [Mar 2 09:23:48] VERBOSE[32265] logger.c: -- Response timeout set to 60 [Mar 2 09:23:48] VERBOSE[32265] logger.c: -- Executing [s@test-prompt:6] BackGround("SIP/111-ac15baf0", "choose_language") in new stack [Mar 2 09:23:48] VERBOSE[32265] logger.c: -- <SIP/111-ac15baf0> Playing 'choose_language.slin' (language 'en') [Mar 2 09:24:06] VERBOSE[32265] logger.c: == CDR updated on SIP/111-ac15baf0 [Mar 2 09:24:06] VERBOSE[32265] logger.c: -- Executing [1@test-prompt:1] NoOp("SIP/111-ac15baf0", "Pressed 1") in new stack [Mar 2 09:24:06] VERBOSE[32265] logger.c: -- Executing [1@test-prompt:2] Set("SIP/111-ac15baf0", "CHANNEL(language)=lt") in new stack [Mar 2 09:24:06] VERBOSE[32265] logger.c: -- Executing [1@test-prompt:3] NoOp("SIP/111-ac15baf0", "Choose language LT") in new stack [Mar 2 09:24:06] VERBOSE[32265] logger.c: -- Executing [1@test-prompt:4] Goto("SIP/111-ac15baf0", "123,1") in new stack [Mar 2 09:24:06] VERBOSE[32265] logger.c: -- Goto (test-prompt,123,1) [Mar 2 09:24:06] VERBOSE[32265] logger.c: -- Executing [123@test-prompt:1] Playback("SIP/111-ac15baf0", "test/enter-conf-pin-number_8") in new stack [Mar 2 09:24:06] VERBOSE[32265] logger.c: -- <SIP/111-ac15baf0> Playing 'test/enter-conf-pin-number_8.slin' (language 'lt') [Mar 2 09:24:10] VERBOSE[32265] logger.c: -- Auto fallthrough, channel 'SIP/111-ac15baf0' status is 'UNKNOWN' From output you can see, that I pressed "1" and set language to "lt". But Playback plays /var/lib/asterisk/sounds/test/enter-conf-pin-number_8.wav promt (not /var/lib/asterisk/sounds/test/lt/enter-conf-pin-number_8.wav)! In Asterisk 1.4.21.2 version worked fine for me. Thanks | ||
Comments: | By: Giedrius (voipas) 2009-03-02 06:56:53.000-0600 I have solved this problem, just needed to modify in file.c : int ast_language_is_prefix = 0 You can close this ticket By: Joshua C. Colp (jcolp) 2009-03-02 08:31:59.000-0600 Closed per reporter. Additional note: That option is configurable in asterisk.conf under the options context. languageprefix=yes languageprefix=no |