[Freeswitch-users] Bug?: recordFile with input callback always ends recording

Michael lutz mytemike72 at gmail.com
Fri Feb 17 21:20:35 MSK 2012


I have no problems doing that, but need help how to do the backtrace (I am in Win x64).
If someone tells me what to do, I can do that, easy to reproduce.

Regards,
Mike



Op 17 feb. 2012 om 16:44 heeft John <freeswitch at earthspike.net> het volgende geschreven:

> If FreeSWITCH crashes you really should raise a ticket on JIRA, and 
> include a backtrace if you can.
> 
> On 17/02/12 15:08, Michael Lutz wrote:
>> Hi Oz,
>> 
>> I tried:
>> 
>> session:setVariable('playback_terminators', cRecordingStopkey);
>> session:recordFile(cFile, nMaxduration, 10, nSilenceDelay);
>> session:setVariable('playback_terminators', 'none');
>> 
>> But now when I press a key freeswitch just totaly stops, (crash),
>> without anything valuable in the logs...
>> 
>> 2012-02-17 16:05:11.063289 [ERR] switch_cpp.cpp:1227 ========>
>> Starting the recording: SPEAK!
>> 2012-02-17 16:05:11.063289 [DEBUG] switch_ivr_play_say.c:585 Raw Codec Activated
>> 2012-02-17 16:05:11.063289 [DEBUG] switch_core_codec.c:216
>> sofia/internal/31205222332 at 172.16.5.12 Push codec L16:70
>> 2012-02-17 16:05:15.064689 [DEBUG] switch_rtp.c:3405 RTP RECV DTMF #
>> 2012-02-17 16:05:15.064689 [DEBUG] switch_core_codec.c:241
>> sofia/internal/31205222332 at 172.16.5.12 Restore previous codec PCMU:0.
>> <eof>
>> 
>> Does not seem to be working either... I could try using the api
>> session_record function, but what about silence detection?
>> 
>> /Mike.
>> 
>> 
>> 2012/2/17 Oz Mortimer<oz at o-tec.tv>:
>>> You can do
>>> session:setVariable('playback_terminators','#');
>>> before the record and remove the input_callback or you could use
>>> session_record and in your callback use stop_record_session - i'd go the
>>> latter.
>>> 
>>> 
>>> -----Original Message-----
>>> From: freeswitch-users-bounces at lists.freeswitch.org
>>> [mailto:freeswitch-users-bounces at lists.freeswitch.org] On Behalf Of Peter
>>> Olsson
>>> Sent: 17 February 2012 14:22
>>> To: 'FreeSWITCH Users Help'
>>> Subject: Re: [Freeswitch-users] Bug?: recordFile with input callback always
>>> ends recording
>>> 
>>> Have you tried setting the variable playback_terminators to "none"?
>>> 
>>> I believe this variable has effect on recordings as well.
>>> 
>>> /Peter
>>> 
>>> 
>>> -----Ursprungligt meddelande-----
>>> Från: freeswitch-users-bounces at lists.freeswitch.org
>>> [mailto:freeswitch-users-bounces at lists.freeswitch.org] För Michael Lutz
>>> Skickat: den 17 februari 2012 15:12
>>> Till: FreeSWITCH Users Help
>>> Ämne: [Freeswitch-users] Bug?: recordFile with input callback always ends
>>> recording
>>> 
>>> Hi All,
>>> 
>>> I am using the following peace of code, It should be able to set a
>>> termination key with the cStopRecording variable, and inside the input
>>> callback it should terminate if the dtmf key entered is valid and
>>> should return "break".
>>> However as soon as it gets inside the input callback function it
>>> always terminates the recording? Based on the wiki example this should
>>> work. By debugging I can see it never gets to the"return "break"". So
>>> the evaluation is correct.
>>> 
>>> Can someone please tell me what I am doing wrong or is it a bug?
>>> 
>>> 
>>> Regards,
>>> Mike.
>>> 
>>> ----------------------------------------------------
>>> cStopRecordingKey = "#"
>>> cFile = "blah.wav"
>>> 
>>> session:setInputCallback("Record_onInput", "");
>>> session:recordFile(cFile, 120, 10, 10);
>>> session:streamFile(cFile);
>>> 
>>> function Record_onInput(s, type, obj)
>>>        if cRecordingStopkey == "-" then cRecordingStopkey = "" end
>>>     -- None
>>>        if cRecordingStopkey == "+" then cRecordingStopkey = "0123456789*#"
>>> end    -- Any
>>> 
>>>        if type == "dtmf" then
>>>                freeswitch.consoleLog("NOTICE", "Got recording input: "..
>>> obj['digit']);
>>>                freeswitch.consoleLog("NOTICE", "Stopkey            : "..
>>> cRecordingStopkey);
>>>                if (string.find(cRecordingStopkey, obj['digit'])~=nil) then
>>> -- It
>>> should only terminate when the key is in the list!
>>>                        return "break";
>>>                end
>>>        end
>>> 
>>> end
>>> ----------------------------------------------------
>>> 
> 
> _________________________________________________________________________
> Professional FreeSWITCH Consulting Services:
> consulting at freeswitch.org
> http://www.freeswitchsolutions.com
> 
> 
> 
> 
> Official FreeSWITCH Sites
> http://www.freeswitch.org
> http://wiki.freeswitch.org
> http://www.cluecon.com
> 
> 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



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