[Freeswitch-users] session:recordFile(-) always creates empty wav file during outbound IVR call

Michael Collins msc at freeswitch.org
Thu Sep 1 19:49:44 MSD 2011


Tony mentioned something that might be an issue for you. Try setting this on
the channel:
http://wiki.freeswitch.org/wiki/Channel_Variables#record_waste_resources

Let us know if that makes a difference.

-MC

On Thu, Sep 1, 2011 at 2:48 AM, king2kin <xing2kin at yahoo.com> wrote:

> Hi Anthony,
>
> Actually FreeSwitch application "record" doesn't work either for outbound
> IVR call (see below), created an empty wav file with its size 68 bytes, the
> wav file doesn't contain any samples of audio data;
>
> <action application="record"
> data="C:/c4dev/freeswitch/Debug/sounds/test.wav 20 200"/>
>
> earlier I reported that "session:recordFile(-)" doesn't work inside Lua
> Script for any outbound IVR call.
>
> - My CLI commands to make an outbound IVR call:
>
> originate {ignore_early_media=true}sofia/gateway/mygateway/1726011  8884
> or
> originate user/1005   8884
>
> - xml diaplan for extension 8884:
> {
>        <extension name="Play and Record Sound File">
>                <condition field="destination_number" expression="^(8884)$">
>                        <action application="answer"/>
>                        <action application="sleep" data="1000"/>
>                        <action application="playback"
> data="ivr/ivr-thank_you.wav"/>
>
>                        <action application="record"
> data="C:/c4dev/freeswitch/Debug/sounds/test.wav 20 200"/>
>
>                        <action application="sleep" data="1000"/>
>                        <action application="playback"
> data="voicemail/vm-goodbye.wav"/>
>
>                        <action application="sleep" data="1000"/>
>                        <action application="hangup"/>
>                </condition>
>        </extension>
> }
>
> --- On Wed, 8/31/11, Anthony Minessale <anthony.minessale at gmail.com>
> wrote:
>
> > From: Anthony Minessale <anthony.minessale at gmail.com>
> > Subject: Re: [Freeswitch-users] session:recordFile(-) always creates
> empty wav file during outbound IVR call
> > To: "FreeSWITCH Users Help" <freeswitch-users at lists.freeswitch.org>
> > Date: Wednesday, August 31, 2011, 7:46 PM
> > Does the empty file contain silence
> > that corresponds to the duration
> > of the time it's recording?
> > Are you producing the audio yourself into the recording and
> > can you
> > verify with a pcap that there is actually any audio to
> > record?
> >
> >
> > On Wed, Aug 31, 2011 at 9:21 PM, king2kin <xing2kin at yahoo.com>
> > wrote:
> > > Anthony,
> > >
> > > Thank you for help. I tried outbound IVR call in
> > multiple ways again based on your advice,
> >  session:recordFile(-) still doesn't work normally, still
> > created empty wav file .
> > >
> > > Could anyone please give me a hand on FreeSwitch
> > Record? It always fails to record audio file during any
> > outbound IVR call (auto dialer) although it works well
> > during any inbound ivr call.
> > >
> > > Session:streamFile(-) works well to play back prompt
> > files, dtmf keypress also works, ... during outbound ivr
> > call.
> > >
> > > x.k.
> > >
> > > --- On Wed, 8/31/11, Anthony Minessale <anthony.minessale at gmail.com>
> > wrote:
> > >
> > >> From: Anthony Minessale <anthony.minessale at gmail.com>
> > >> Subject: Re: [Freeswitch-users]
> > session:recordFile(-) always creates empty wav file during
> > outbound IVR call
> > >> To: "FreeSWITCH Users Help" <freeswitch-users at lists.freeswitch.org>
> > >> Date: Wednesday, August 31, 2011, 12:17 PM
> > >> try this dial string instead
> > >>
> > >>
> > {ignore_early_media=true}sofia/gateway/sip.tpad.com/1726011
> > >>
> > >> On Wed, Aug 31, 2011 at 12:52 PM, king2kin <xing2kin at yahoo.com>
> > >> wrote:
> > >> > Hi folks,
> > >> >
> > >> > With Lua script and/or originate command, I
> > have tried
> > >> recording a message file during outbound IVR call
> > over and
> > >> over, session:recordFile(-) inside Lua script does
> > create a
> > >> wav file during each of my testings but the
> > recorded audio
> > >> file is always empty.
> > >> >
> > >> > However, session:recordFile(-) works well for
> > inbound
> > >> IVR call.
> > >> >
> > >> > I tried the session:recordFile(-) via Lua
> > script in
> > >> three ways:
> > >> >
> > >> > 1. run lua script "test_outcall_ivr.lua" at
> > freeswitch
> > >> command-line:
> > >> >
> > >> > luarun test_outcall_ivr.lua
> > >> >
> > >> >
> > >> > -- [test_outcall_ivr.lua]
> > >> > {
> > >> > local sessionx =
> > >>
> > freeswitch.Session("sofia/gateway/sip.tpad.com/1726011",
> > >> session)
> > >> >
> > >> > -- Set the path separator
> > >> > pathsep = '/'
> > >> >
> > >> > -- Windows users do this instead:
> > >> > -- pathsep = '\'
> > >> >
> > >> > -- Answer the call
> > >> > -- sessionx:answer()
> > >> >
> > >> > --Create a string with path and filename of a
> > sound
> > >> file
> > >> > prompt = "ivr" .. pathsep ..
> > >> "ivr-welcome_to_freeswitch.wav"
> > >> >
> > >> > -- Print a log message
> > >> > freeswitch.consoleLog("INFO","Prompt file is
> > '" ..
> > >> prompt .. "'\n")
> > >> >
> > >> > --Play the prompt
> > >> > sessionx:streamFile(prompt)
> > >> >
> > >> > -- Record record file
> > >> >
> > >>
> > sessionx:streamFile("phrase:voicemail_record_message")
> > >> >
> > >> > -- Play a ""bong"" tone prior to recording
> > >> >
> > >>
> >
> sessionx:streamFile("tone_stream://v=-7;%(100,0,941.0,1477.0);v=-7;>=2;+=.1;%(1000,
> > >> 0, 640)")
> > >> >
> > >> > -- record a message
> > >> > filename = sessionx:getVariable('sounds_dir')
> > ..
> > >> pathsep .. "123.wav"
> > >> > sessionx:recordFile(filename,300,100,10)
> > >> >
> > >> > -- play back the recorded msg
> > >> > sessionx:streamFile(filename)
> > >> >
> > >> > -- Hangup
> > >> > sessionx:hangup()
> > >> >
> > >> > }
> > >> >
> > >> > 2. I also tried it differently by submitting
> > the
> > >> following commands at the FreeSwitch command-line
> > >> interface:
> > >> >
> > >> > originate user/1005 &transfer(8887 xml
> > default)
> > >> >
> > >> > originate user/1005 &lua('test1.lua')
> > >> >
> > >> > originate sofia/gateway/sip.tpad.com/1726011
> > >> &lua('test1.lua')
> > >> >
> > >> >
> > >> > -- [test1.lua]
> > >> > {
> > >> > -- Set the path separator
> > >> > pathsep = '/'
> > >> >
> > >> > -- Windows users do this instead:
> > >> > -- pathsep = '\'
> > >> >
> > >> > --Answer the call
> > >> > session:answer()
> > >> >
> > >> > --Create a string with path and filename of a
> > sound
> > >> file
> > >> > prompt = "ivr" .. pathsep ..
> > >> "ivr-welcome_to_freeswitch.wav"
> > >> >
> > >> > -- Print a log message
> > >> > freeswitch.consoleLog("INFO","Prompt file is
> > '" ..
> > >> prompt .. "'\n")
> > >> >
> > >> > --Play the prompt
> > >> > session:streamFile(prompt)
> > >> >
> > >> > -- Record record file
> > >> >
> > session:streamFile("phrase:voicemail_record_message")
> > >> >
> > >> > -- Play a ""bong"" tone prior to recording
> > >> >
> > >>
> >
> session:streamFile("tone_stream://v=-7;%(100,0,941.0,1477.0);v=-7;>=2;+=.1;%(1000,
> > >> 0, 640)")
> > >> >
> > >> > -- record a message
> > >> > filename = session:getVariable('sounds_dir')
> > ..
> > >> pathsep .. "123.wav"
> > >> > session:recordFile(filename,300,100,10)
> > >> >
> > >> > -- play back the recorded msg
> > >> > session:streamFile(filename)
> > >> >
> > >> > -- Hangup
> > >> > session:hangup()
> > >> > }
> > >> >
> > >> > -- [xml dialplan for extension 8887]:
> > >> > {
> > >> >        <extension name="Simple Lua
> > Test">
> > >> >                <condition
> > >> field="destination_number"
> > expression="^(8887)$">
> > >> >
> >  <action
> > >> application="set"
> > data="record_waste_resources=true"/>
> > >> >
> >  <action
> > >> application="lua" data="test1.lua"/>
> > >> >                </condition>
> > >> >        </extension>
> > >> > }
> > >> >
> > >> >
> > >>
> > ======================================================
> > >> >
> > >> > For all the above testing cases,
> > session:recordFile(-)
> > >> always creates an empty wav file for each of
> > outbound IVR
> > >> calls, however, if I make an inbound IVR call to
> > run Lua
> > >> script "test1.lua", session:recordFile(-) always
> > works
> > >> perfect to generate a normal wav file.
> > >> >
> > >> > So, what's wrong with [session:recordFile(-)]
> > during
> > >> an outbound IVR call?
> > >> >
> > >> > x.k.
> > >> >
> > >> >
> > >> > 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
> > >> >
> > >>
> > >>
> > >>
> > >> --
> > >> Anthony Minessale II
> > >>
> > >> FreeSWITCH http://www.freeswitch.org/
> > >> ClueCon http://www.cluecon.com/
> > >> Twitter: http://twitter.com/FreeSWITCH_wire
> > >>
> > >> AIM: anthm
> > >> MSN:anthony_minessale at hotmail.com
> > >> GTALK/JABBER/PAYPAL:anthony.minessale at gmail.com
> > >> IRC: irc.freenode.net #freeswitch
> > >>
> > >> FreeSWITCH Developer Conference
> > >> sip:888 at conference.freeswitch.org
> > >> googletalk:conf+888 at conference.freeswitch.org
> > >> pstn:+19193869900
> > >>
> > >>
> > >> 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
> > >
> >
> >
> >
> > --
> > Anthony Minessale II
> >
> > FreeSWITCH http://www.freeswitch.org/
> > ClueCon http://www.cluecon.com/
> > Twitter: http://twitter.com/FreeSWITCH_wire
> >
> > AIM: anthm
> > MSN:anthony_minessale at hotmail.com
> > GTALK/JABBER/PAYPAL:anthony.minessale at gmail.com
> > IRC: irc.freenode.net #freeswitch
> >
> > FreeSWITCH Developer Conference
> > sip:888 at conference.freeswitch.org
> > googletalk:conf+888 at conference.freeswitch.org
> > pstn:+19193869900
> >
> >
> > 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/20110901/50db6313/attachment-0001.html 


Join us at ClueCon 2011 Aug 9-11, 2011
More information about the FreeSWITCH-users mailing list