[asterisk-users] Create File Directory

Steve Edwards asterisk.org at sedwards.com
Tue Aug 17 09:43:19 CDT 2010


Un-top-posting...

On Tue, 17 Aug 2010, Dan Journo wrote:

> I have to following dial plan.

[snip]

> However, Record fails if the directory doesnt exist.
> 
> How can I automatically create the directory before (or while) running 
> the Record command?

(Seems like a reasonable feature to add to the record application...)

On Tue, 17 Aug 2010, Dan Journo wrote:

> Solved.
> 
> exten => 5551234,n,Read(ACCOUNTNUMBER|/var/lib/asterisk/clientsounds/ company
> /recordingsystem/welcome_accountnumberplease)
> exten => 5551234,n,System(mkdir /var/lib/asterisk/clientsounds/features/${ACCOUNTNUMBER})
> exten => 5551234,n,Read(MENUNUMBER|/var/lib/asterisk/clientsounds/ company /recordingsystem/menu_number_please)
> exten => 5551234,n,System(mkdir /var/lib/asterisk/clientsounds/features/${ACCOUNTNUMBER}//${MENUNUMBER})
> exten => 5551234,n,Read(WHICHMESSAGE|/var/lib/asterisk/clientsounds/ company /recordingsystem/whichmessage|1)
> exten => 5551234,n,Playback(/var/lib/asterisk/clientsounds/ company /recordingsystem/recordaftertone)
> exten => 5551234,n,Record(/var/lib/asterisk/clientsounds/features/${ACCOUNTNUMBER}/${MENUNUMBER}/${WHICHMESSAGE}.wav)

Ugly*, but if it works for you...

If you add the "--parents" command line option, the first mkdir is 
unnecessary.

*) Personally, I would wrap all of this into a simple AGI 
(record-client-message?) where you could handle errors better and make it 
easier to re-use the logic for multiple extensions.

-- 
Thanks in advance,
-------------------------------------------------------------------------
Steve Edwards       sedwards at sedwards.com      Voice: +1-760-468-3867 PST
Newline                                              Fax: +1-760-731-3000



More information about the asterisk-users mailing list