[Freeswitch-users] Lua not playing any wav files

Marc de Corny marcdecorny at gmail.com
Tue Dec 21 17:51:21 MSK 2010


Hi Chris

That seemed to work I got audio in both scnearios, in the XML and LUA
script.

so the only difference between my originial issue and the successful moh
test. is that I was trying to playback a file and here we are playing a
local stream://moh.

I have changed all the files too chmod 777, is there any thing else on the
rights point of view that I need to know in order to get it to work?

I am grateful for any ideas or anything else that could help me understand
what the issue is

thanks
Marc




On Sat, Dec 18, 2010 at 8:42 AM, Chris Burns <chris at cloudtel.com> wrote:

> Hmmm no help for you yet huh ... you may have solved it on your own
> already, but ...
>
> You want to answer the call there, and not pre-answer. Pre-answer is for
> early media, which is for exchanging media before committing to answer the
> call. Admittedly you should hear something either way, but you definitely
> want to answer the call in your case. If your XML dialplan works as you
> said, you should compare the log output between these 2 extensions:
>
> <extension name="testXML">
>   <condition field="destination_number" expression="^9001$">
>     <action application="answer"/>
>     <action application="playback" data="local_stream://moh"/>
>   </condition>
> </extension>
>
> <extension name="testLUA">
>   <condition field="destination_number" expression="^9002$">
>     <action application="lua" data="test.lua"/>
>   </condition>
> </extension>
>
> Contents of test.lua:
> session:answer();
> session:execute("playback","local_stream://moh");
>
>
>   On Wed, Dec 15, 2010 at 1:59 AM, Marc de Corny <marcdecorny at gmail.com>wrote:
>
>>  Hi all,
>>
>> I have run into an issue on something so basic that I must be as simple as
>> enabling a feature somewhere.
>>
>> I have been trying to get lua to play a message from a WAV file. I have
>> tried session:execute("playback", main_msg) and
>> session:streamFile(ivr_invalid_msg) but neither of them play any music to
>> the caller. I tried both to answer and preAnswer the call first but it made
>> no difference. However if I put the same file into the XML dialplan and play
>> it with the commands below I hear the music fine.
>> <action application="set" data="playback_terminators=#"/>
>> <action application="playback" data="${401_sound_file_path}"/>
>>
>> The issue only seems to be from lua when playing any type of wav file and
>> those files are definitelly there as can be read by the XML
>>
>> The error message is below for the execute(playback) command, but nothing
>> can be seen for the
>> 2010-12-01 11:56:01.534727 [DEBUG] switch_core_session.c:1827 Application
>> playback Requires media! pre_answering channel
>> sofia/external/2031701665 at 194.0.147.16:5060 EXECUTE
>> sofia/external/2031701665 at 194.0.147.16:5060playback(/usr/local/freeswitch/sounds/svc_sound_files/default_autoattendant.wav)
>> But there is no mention of the streamFile command. I have had similar
>> issue with the PlayAndGetDigits command.
>> Is there something that I need to enable in lua so that is can playback
>> messages to the caller.
>>
>> Many thanks to anyone who can help.
>> Marc
>>
>>
>> below is the XML dialplan and lua script as well as the log at the very
>> end.
>>
>> XML DIALPLAN:
>> <include>
>> <extension name="IVR_FROM_MYSQL">
>> <condition field="caller_id_number" expression="Anonymous" break="never">
>> <action application="set" data="effective_caller_id_number=0000000000"/>
>> </condition>
>> <condition field="destination_number" expression="^(404)">
>> <action inline="true" application="lua" data="ivr_mysql.lua
>> ${destination_number:3}"/>
>> <action application="set" data="effective_caller_id_name=${404_tag}"/>
>> <action application="bridge" data="${404_dial}"/>
>> </condition>
>> </extension>
>> </include>
>>
>> The LUA script ivr_mysql.lua is callsed and this is it.
>> -- IVR : PLAY IVR WAV FILES
>> -- Global Variables:
>> local dialstr_prefix = "sofia/gateway/CS2k/"
>> local dialstr_main = ""
>> local breakoutcode = "184"
>> local sound_file_folder = "/usr/local/freeswitch/sounds/svc_sound_files/"
>> local ddi = argv[1]
>> -- answer the call
>> session:preAnswer();
>> freeswitch.consoleLog("info", "All Answered\n");
>> ivr_invalid_msg = sound_file_folder .. "invalid_msg.wav"
>> main_msg = sound_file_folder .. "default_autoattendant.wav"
>> -- Play with Execute
>> session:execute("playback", main_msg)
>> -- Play with StreamFile
>> session:streamFile(ivr_invalid_msg);
>> dialstr_main  = dialstr_main .. dialstr_prefix .. breakoutcode ..
>> "02031701665"
>> session:setVariable("404_dial",dialstr_main)
>> session:setVariable("404_tag","IVR")
>>
>>
>> RELEVANT LOGS :
>> Dialplan: sofia/external/2031701665 at 194.0.147.16:5060 Regex (PASS)
>> [IVR_FROM_MYS                          QL] destination_number(4042031956241)
>> =~ /^(404)/ break=on-false
>> Dialplan: sofia/external/2031701665 at 194.0.147.16:5060 Action
>> lua(ivr_mysql.lua $                          {destination_number:3}) INLINE
>> EXECUTE sofia/external/2031701665 at 194.0.147.16:5060 lua(ivr_mysql.lua
>> 2031956241                          )
>> 2010-12-01 11:56:01.525426 [INFO] switch_cpp.cpp:584 Sending early media
>> 2010-12-01 11:56:01.525426 [DEBUG] sofia_glue.c:2972 AUDIO RTP
>> [sofia/external/2                          031701665 at 194.0.147.16:5060]
>> 10.5.2.105 port 29900 -> 194.0.147.164 port 50202 c
>> odec: 8 ms: 20
>> 2010-12-01 11:56:01.525426 [DEBUG] switch_rtp.c:1418 Starting timer [soft]
>> 160 b                          ytes per 20ms
>> 2010-12-01 11:56:01.532280 [DEBUG] sofia_glue.c:3190 Set 2833 dtmf send
>> payload                           to 101
>> 2010-12-01 11:56:01.532280 [DEBUG] sofia_glue.c:3195 Set 2833 dtmf receive
>> paylo                          ad to 101
>> 2010-12-01 11:56:01.532280 [DEBUG] mod_sofia.c:2172 Ring SDP:
>> v=0
>> o=FreeSWITCH 1291174661 1291174662 IN IP4 10.5.2.105
>> s=FreeSWITCH
>> c=IN IP4 10.5.2.105
>> t=0 0
>> m=audio 29900 RTP/AVP 8 101
>> a=rtpmap:8 PCMA/8000
>> a=rtpmap:101 telephone-event/8000
>> a=fmtp:101 0-16
>> a=silenceSupp:off - - - -
>> a=ptime:20
>> a=sendrecv
>> 2010-12-01 11:56:01.532280 [NOTICE] mod_sofia.c:2175 Pre-Answer
>> sofia/external/2                          031701665 at 194.0.147.16:5060!
>> 2010-12-01 11:56:01.532280 [DEBUG] switch_channel.c:2544
>> (sofia/external/2031701                          665 at 194.0.147.16:5060)
>> Callstate Change RINGING -> EARLY
>> 2010-12-01 11:56:01.534727 [DEBUG] sofia.c:4576 Channel
>> sofia/external/203170166                          5 at 194.0.147.16:5060skipping state [early][183]
>> 2010-12-01 11:56:01.534727 [DEBUG] switch_core_session.c:676 Send signal
>> sofia/e                          xternal/2031701665 at 194.0.147.16:5060[BREAK]
>> 2010-12-01 11:56:01.534727 [INFO] switch_cpp.cpp:1181 All Answered
>> 2010-12-01 11:56:01.534727 [DEBUG] switch_core_session.c:1827 Application
>> playba                          ck Requires media! pre_answering channel
>> sofia/external/2031701665 at 194.0.147.16:                          5060
>> EXECUTE sofia/external/2031701665 at 194.0.147.16:5060playback(/usr/local/freeswit
>> ch/sounds/svc_sound_files/default_autoattendant.wav)
>> 2010-12-01 11:56:01.537644 [DEBUG] switch_cpp.cpp:972
>> sofia/external/2031701665@                          194.0.147.16:5060destroy/unlink session from object
>> Dialplan: sofia/external/2031701665 at 194.0.147.16:5060 Action
>> set(effective_calle                          r_id_name=${404_tag})
>> Dialplan: sofia/external/2031701665 at 194.0.147.16:5060 Action
>> bridge(${404_dial})
>> 2010-12-01 11:56:01.537644 [DEBUG] switch_core_state_machine.c:119
>> (sofia/extern                          al/2031701665 at 194.0.147.16:5060)
>> State Change CS_ROUTING -> CS_EXECUTE
>> 2010-12-01 11:56:01.537644 [DEBUG] switch_core_session.c:1057 Send signal
>> sofia/                          external/2031701665 at 194.0.147.16:5060[BREAK]
>> _______________________________________________
>> FreeSWITCH-users mailing list
>> FreeSWITCH-users at lists.freeswitch.org
>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
>> http://www.freeswitch.org
>>
>>
>
> _______________________________________________
> FreeSWITCH-users mailing list
> FreeSWITCH-users at lists.freeswitch.org
> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
> http://www.freeswitch.org
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freeswitch.org/pipermail/freeswitch-users/attachments/20101221/92d9a086/attachment.html 


More information about the FreeSWITCH-users mailing list