Podcast
Or: allow streaming content from a VMS box.
There has been a request on information on how to send streaming data using WASD. Live will be a problem since the OpenVMS IO system does not faciliate stream IO. But 'canned content' should not be a problem.
One package was mentioned as an answer: podcastgen that allows you to upload, administrate and view all kinds of files. Not all streaming, but some.
This package works nice, but you have to take a few things into account:
- The package comes in a zip file, and there are some containing dots in the filename. Quite some, actually, but luckily, all in one directory ( [.components.getid3] ) and no exceptions. So ODS-5 is a requirement.
- Put this file where you want the packae installed. UNZIP will create a directory tree [podcastgen1_1].
Zip (< 3.0) extracts replacing dots by underscores, otherwise you would get directory [podcast1] with subdir [.1]
This is no problem, provided you define:
$ define/system/exec podcastgen <dev>:[podcastgen1_1.]/trans=concealed
or
$ define/system/exec podcastgen <dev>:[podcastgen1.1.]/trans=concealed
if your unzip didn't replace dots by undercores.
If it did, you'll find all files in podcastgen:[components.getid3] named using underscore in stead of dots. ALL files, and no exception. This script took care of this:
$loop:
$ file=f$search("*_*.php")
$ if file .eqs. "" then goto loopend
$ fn = f$parse(File,,,"NAME")
$ origfn = fn
$Funder:
$ ul=f$locate("_", fn)
$ if ul .ge. f$length(fn) then goto Funderdone
$ l = f$extract(0,ul,fn)
$ r = f$extract(ul+1, f$length(fn), fn)
$ fn = l + "." + r
$ goto Funder
$Funderdone:
$ rename/log 'origfn'.php 'fn'.php
$ goto loop
$ loopend:
$ exitYou'll have to change the protection on the main directory <dev>:[000000]podcastgen1_1.dir, and on podcastgen:[000000]media.dir and podcastgen:[000000]images.dir, so the webserver (HTTPD$NOBODY) can write to them. ACLs do NOT work
podcastgen1_1.DIR;1
[SYSTEM] (RWE,RWE,RE,RE)
(IDENTIFIER=WASD_HTTP_NOBODY,ACCESS=READ+WRITE)(take W:RE off the mask and it won't work...)
- Add this location in the site mapping as:
redirect /podcast/ /podcastgen/index.php?
redirect /podcast/**/ /podcastgen/*/index.php?
set /podcast/media/*.swf timeout=output=01:00:00
set /podcast/media/*.wmv timeout=output=01:00:00
exec /podcast/**.php (cgi_exe:phpwasd.exe)/podcast/*.php \
ods=5 script=syntax=unix script=query=none map=once
pass /podcast/* /podcast/* ods=5 search=none- Now start the setup script:
http:<yourServer>/podcast/setup/index.php, answer the questions on a number of pages, and you're done
(More to come)
