Re: How to test for the existance of an audio file
David Sugar <[email protected]> Wed, 30 Apr 2008 22:15:05 -0400
| Newsgroups | gmane.comp.gnu.bayonne.devel |
|---|---|
| Message-ID | <[email protected]> |
This is a multi-part message in MIME format. --------------040100040108070204040805 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Yes there is. With "if -file xxx" or "do -file xxx" in a loop, "case -file", etc. There is a -file and -dir option for conditional tests. With Bayonne and ccscript2 these were installed as a separate dso with "use file", with bayonne2 they are built-ins. Check server/runtime.cpp "addConditional" for full list.... Tony White wrote: > Thanks David, > > So there is no way, other than jumping into a TGI script, to test for > an audio (or other) file's existance, so that a decision can be made > if a file is not present? Do you think it feasible that an external > TGI script is run after every keypress as a caller makes choices? Or > is it better to run one TGI script at the start of the call, to > populate an array with ALL possible files' presence or absence? The > files may run into the tens of thousands! so it would be a VERY big > array - and would be at least four-dimensional. And as the system is > dynamic, files may appear, or disappear from one call to the next. > > Tony > > 2008/5/1 David Sugar <[email protected]>: >> There is a "play.one" option, that plays the first file that is found, and >> only one, out of a list. There is a "play.any" I think, that plays any that >> can be found and skips any not found in a list. The default is to abort if >> not found. >> >> >> >> Tony White wrote: >> >>> Hi David and all, >>> >>> In bayonne script, if I list several files to play eg. >>> >>> play %1 %2 %3 ...... >>> >>> ...where %1, %2, %3 etc. variables have been set to file1.au, >>> file2.au, file3.au ..... >>> >>> so long as all three files exist on disk, then all is well. BUT if, >>> for example, file1.au doesn't exist, then the play will abort - >>> without playing the rest of the files. >>> >>> The files are dynamically generated outside the bayonne environment - >>> and may sometimes be missing. So I am stuck on how to test within a >>> script that a file exists before attempting to play it - and indeed to >>> substitute a 'default' file instead. >>> >>> The only way i can see is to jump out into a TGI - but is there >>> already a way to test this? And if not, maybe this would be a >>> possible test to include in the next version? >>> >>> Oh - and before I get the suggestion: >>> play %1 >>> play %2 >>> play %3 >>> .... >>> >>> yes, that works insofar as playing all files, even if one is missing >>> - but there is a 'step' delay between each 'play' statement - which I >>> want to avoid... and there seems to be no way to see if a file is >>> missing so as to be able to substitute a 'default' file instead. >>> >>> Thanks, >>> > > > --------------040100040108070204040805 Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ Bayonne-devel mailing list [email protected] http://lists.gnu.org/mailman/listinfo/bayonne-devel --------------040100040108070204040805--