Mac OS X: Crea una miniservidor de podcast con Acciones de Carpeta

WithoutDataSource_Icon.jpgSi necesitas distribuir contenidos musicales o de vídeo a través de tu red local, o incluso contra una carpeta del servicio DropBox para disponer de un sistema de distribución de tipo podcast con una RSS asociada, este truco es para ti. Pero tiene muchas opciones, igual de interesantes.

La ejecución es, además, de lo mas sencilla: simplemente usando un Applescript adjunto a una carpeta, el script se encarga de actualizar el archivo de RSS de forma que inmediatamente aparecerá en, por ejemplo, iTunes desde donde gestionarlo y/o distribuirlo.

En el caso de Dropbox, hay que crear una subcarpeta con el nombre mipodcast o algo similar en esta Dropbox/public. El proceso es igual aquí para cualquiera de las dos opciones, ya sea bajo un red local, como para los usuarios de Dropbox.

Crea un archivo de texto con el siguiente código:

<?xml version=»1.0″ encoding=»ISO-8859-1″?>

<rss xmlns:itunes=»http://www.itunes.com/dtds/podcast-1.0.dtd» version=»2.0″>

<channel>

<description>Mipodcastpersonal</description>

<link>http://www.tulink.com</link>

<title>My Podcasts/title>

<pubDate> Wed, 21 Apr 2010 10:35:02 +0200 </pubDate>

</channel></rss>

Guarda el archivo en la carpeta con el nombre mipodcast.rss o algo similar.

A continuación abre el Editor de Scripts y añade este código:

on adding folder items to this_folder after receiving added_items

set the_folder to POSIX path of this_folder

— Adapt the set base_url part to match the url of either your web sharing

— address and the folder or your public dropbox folder and the subfolder.

— You can get the url by using the «get public link» function on the dropbox home page.

set base_url to «http://dl.dropbox.com/u/XXXXXXX/myPodcast/» as string

repeat with i from 1 to the count of added_items

set this_item to (item i of added_items) as alias

tell application «Finder»

set theName to the name of this_item as string

end tell

set theUrl to do shell script «python -c ‘import sys, urllib; print urllib.quote(sys.argv[1])’ » & quoted form of (theName)

tell application «Finder»

do shell script «cd » & (the quoted form of the_folder as string) & «;export LANG=EN_US;echo «$(head -n 6 podcast.rss)» >> newPodcast.rss;echo «<pubDate> $(date +»%a, %d %b %Y %H:%M:%S %z») </pubDate>» >> newPodcast.rss;tail -n $(($(wc -l < podcast.rss) – 7 )) podcast.rss | head -n $(($(wc -l < podcast.rss) – 8)) >> newPodcast.rss;echo «<item><title>» & (theName as string) & «</title><enclosure type=\»audio/mpeg\» length=\»$(ls -al $» & (quoted form of theName as string) & «| awk ‘{print $5}’)\» url=\»» & base_url & theUrl & «\»/></item>» >> newPodcast.rss;tail -n 2 podcast.rss >> newPodcast.rss;rm podcast.rss;mv newPodcast.rss podcast.rss;»

end tell

end repeat

end adding folder items to

El Script tiene un un punto que debe ser modificado para que el sistema funcione: la base_url, definida en el documento como http://dl.dropbox.com/u/XXXXXXX/mipodcast/, tiene que ser modificada a tu correspondiente carpeta de Dropbox o la dirección local de tu máquina, como por ejemplo, «Usuario.local/mipodcast».

Ahora solo queda guardar este script en Librería > Scripts > Folder Actions y activarlo configurando las acciones de carpeta con el menú contextual en la carpeta donde guardas el archivo RSS y los futuros archivos musicales. A partir de ahora puedes añadir archivos a esa carpeta, y el Script regenerará el archivo RSS de forma automática con los nuevos datos.

Fuente; Mac OS X Hints

Deja una respuesta