I'm looking to use fifo_record_template to specify uniquely named recording files. Here is the situation: I'm using a fifo with on-hook members. I would like each fifo call to be recorded, with each recording-file named uniquely. Thanks to some helpful IRC talk, I have learned that the following works well: <fifo name="Outside_Call@$${domain}" importance="0"> <member timeout="20" simo="1" lag="0">{fifo_record_template=$${base_dir}/recordings/my_recording.wav,fifo_member_wait=nowait}user/35351@ $${domain}</member> </fifo> However, this records each and every fifo call to the file (in my case): /usr/local/freeswitch/recordings/my_recording.wav Every new call overwrites the file. Instead of a statically defined file name, I would like a unique file name for every fifo call. I don't know how to make reference to channel variables in this definition. I tried the following, but it results in an error: <fifo name="Outside_Call@$${domain}" importance="0"> <member timeout="20" simo="1" lag="0">{fifo_record_template=$${base_dir}/recordings/{${uuid}.wav,fifo_member_wait=nowait}user/35351@ $${domain}</member> </fifo> The error I see on the CLI when a call goes into the FIFO is this: 2010-03-18 13:51:11.289448 [CRIT] switch_channel.c:759 Invalid data (${fifo_record_template} contains a variable) It was also suggested to me that I escape the '$' character on the variable. Like this: <fifo name="Outside_Call@$${domain}" importance="0"> <member timeout="20" simo="1" lag="0">{fifo_record_template=$${base_dir}/recordings/{\${uuid}.wav,fifo_member_wait=nowait}user/35351@ $${domain}</member> </fifo> This also resulted in: 2010-03-18 13:52:37.014742 [CRIT] switch_channel.c:759 Invalid data (${fifo_record_template} contains a variable) The recording file doesn't get generated. Any recommendations on using fifo_record_template to generate recording file names that are unique to each call? Is there a way to get channel variables to be evaluated and populate the value of fifo_record_template? Or does fifo_record_template only support static values (meaning I'd have to do a record_session in dial plan?)? Thanks for any feedback.
participants (1)
-
Steven Ward