You are on page 1of 7

Jukebox-live

MC4G

Como integrar generadores en

jukebox-live
Finalidad de este manual:
Jukebox-live (como extensin) es la versin de la jukebox del Mediacenter 4G (inout) orientada a los contenidos online. Dicha extensin ha sido diseada como un conjunto de herramientas que permitan la integracin de otras pequeas aplicaciones, que llamaremos generadores, que permiten obtener contenidos de la red y visualizarlos usando la misma interfaz de jukebox-live, empleando los servicios de visualizacin online ms populares y que sean soportados en cada momento por jukebox-live. En este manual se explicarn los rudimentos bsicos que permitan integrar los generadores construidos por el usuario en jukebox-live.

A qu llamamos generador?:
Manteniendo la nomenclatura de una popular extensin, entendemos un generador como una extensin que se ejecuta dentro de otra extensin, en este caso jukebox-live. A tal efecto jukebox-live cuenta con cinco carpetas para almacenar generadores, cada una de ellas correspondiente a su respectiva categora. Cada generador deber ser creado dentro de una categoras (recordemos que las incluidas en la carpeta adulto, estarn bloqueadas por el control parental de jukebox-live. Para crear una categora de generadores (por defecto vienen creadas, pero vacas, varios y adulto), debe crearse una carpeta en la raz de la extensin con este nombre generador_XXXXX siendo xxxx, el nombre de la categora.

Qu generadores incluye jukebox-live?


Jukebox-live no incluye ningn tipo de generador, simplemente ofrece una plataforma para que cada usuario pueda integrar los suyos. Desde Jukebox-live pueden visualizarse contenidos de los servicios soportados desde la opcin visualizar introducir ID, indicando el identificador del vdeo en el servicio correspondiente.

Dnde consigo otros generadores?


Debers buscarlos por la red, en todo caso recomendamos utilizar el instalador de extensiones y los repositorios de la comunidad, que encontrars en http://extensionrepo.wordpress.com, el lugar donde los creadores pueden comparti sus extensiones, de modo que puedas aadirlas automticamente. Para

qu puedo usar generadores?

Si tienes contenidos propios albergados en servicios de video com megaupload, 1

Jukebox-live

MC4G

videozer, videobb y quieres compartirlos con los usuarios de jukebox-live, te ofrecemos la plataforma para hacerlo. De este modo los vdeos de tu asociacin, grupo, TV local podrn ser visualizados en el televisor gracias a jukebox-live con una atractiva interfaz.

INTEGRACIN DE GENERADORES PROPIOS.


Pasos previos:
No es finalidad de este manual el explicar como elaborar un generador, partiremos de la premisa de que el lector conoce como elaborarlos y/ dispone de alguno elaborado. Adems deberemos haber creado la carpeta con la categora que deseemos o bien usar alguna existente.

Interfaz comn o diseo personalizado:


Jukebox-live soporta extensiones con diseo propio, es decir que por si slas conforman una extensin independiente, y es capaz de integrarlas, bastar con incluirlas en la carpeta generadores_xxx, que consideremos dentro de otra carpeta. El primer archivo deber llamarse index.php. Desde ese momento desd el men visualizar podr accederse al generador independiente. Sin embargo la mayor versatilidad de jukebox-live es la integracin de extensiones compartiendo la misma interfaz y diseo: es decir el usuario tan slo tiene que generar un cdigo php con unas condiciones (que se explicarn a continuacin) dejando el resto del trabajo a jukebox-live, simplificando notablemente de este modo el proceso de creacin.

Integracin con INTERFAZ COMN:


Para integrar tu extensin con la interfaz de jukebox-live, necesitars al menos los siguientes archivos: index.php: primer archivo del generador. lista.php o similares: archivos intermedios destinados a crear listados de contenidos. ficha.php: ltimo archivo del generador que ser el encargado de mostrar el contenido y dar la opcin de visualizarlo. Si observamos el funcionamiento de mi biblioteca podremos reconocer rpidamente los tres tipos de archivos, as como el funcionamiento de los mismos.

Explicaremos a continuacin como crear estos archivos tipo:

Jukebox-live

MC4G

index.php El primer archivo del generador, ser el encargado de mostrar ciertos mens de acceso a los contenidos, deber enlazar con otros archivos dentro de la misma carpeta del generador. Para integrar en este archivo el diseo de la jukebox-live, deberemos incluir, en el lugar donde ira el <mediaDisplay> </mediaDisplay>, lo siguiente:
<? //----------comn a jukebox include("../../generadores_cabecera.php"); //----comn a jukebox ?>

De este modo cargaremos las cuatro opciones de visualizacin que podrn ser usadas en esa pgina en cuanto se acceda a ella desde la opcin generadores. Lista.php (puede tener otros nombres) Este tipo de archivos intermedios, tienen que dar lugar al final del proceso a un archivo ficha.php o similar. Estos archivos, destinados mostrar enlaces deben incluir adems el cdigo antes indicado para incluir el diseo este otro cdigo, si deseamos usar el sistema de bsqueda de datos de filmaffinity en nuestro generador,, dento de un bucle o similar, que genere un valor a $titulo: La variable $generador=si, indica en cualquier archivo que estamos dentro del mismo, de modo carguen correctamente las imgenes, con su ruta relativa. La variable $modo, indica el tipo de visualizacin usado en cada momento y permite pasar a la nueva pgina cargando el mismo diseo. Finalmente busca_datos.php es el script encargado de pasar los valores de $titulo y buscar los datos en filmaffinity. <? //---------------------------------> parte comn a jukebox-live // $link indica la ruta a la que deber enlazar el item (con las variables que se deseen) $titulo=urlencode($titulo); $link="otroarchivo.php?generador=si&titulo=". $titulo."&otras_variables_intermedias"&modo=".$modo; include ("../../busca_datos.php"); //---- fin de la parte comn ?>

Obviamente puede no usarse el generador de datos de filmaffinity, en ese caso deber trabajarse como una extensin independiente y mantener los datos relativos al diseo de cabecera comn.
Puede haber tantos archivos intermedios entre index.php y ficha.php como se deseen siempre y cuando el ltimo lleve a ficha.php (u otro nombre pero con la misma estructura) 3

Jukebox-live

MC4G

ficha.php Se trata de la ltima pgina del generador, puede tener otro nombre, y su finalidad es generar de algn modo una lista de enlaces para un contenido concreto, que ha de guardarse en la carpeta /data de la extensin con el formato nombre+del+contenido_descargas, y que incluir un listado simple de urls completas a los servidores de vdeo. Si bien actualmente nicamente se soportan ciertos servicios, si se desea usar otros, pueden listarse de igual modo ya que si llegan a estar soportados seran automticamente identificados. En este caso, como queremos mostrar la ficha de la pelcula, optaremos por una cabecera de este tipo. <? include("../../cabecera_ficha.php"); ?> Como se ha indicado esta pgina ha de lograr crear un archivo con los enlaces a los servicios que se desean, una vez generado dicho archivo para visualizar los contenidos correctamente en la ficha final deberemos usar un cdigo similar a este:

//----------------->incio de parte comn (debe ir al final, tras crear el archivo del enlaces a los disintos servicios) $a=0; $titulo=urlencode($titulo); //creamos el item leyendo el contenido de data $archivo_guardar=$path_imagen."/data/".$titulo.".txt"; // creamos el item con los datos guardados o recuperados, convertimos el archivo en un array $datos_item=file($archivo_guardar); //quitamos el salto de lnea $caratula_item=str_replace("\n", "", $datos_item[2]); $fotograma=str_replace("\n", "", $datos_item[9]); //if (!eregi ("pics.film", $caratula_item)) {$caratula_item=$path_imagen."/imagenes/lista/nocover.png";} $titulo_item=$datos_item[0]; if ($titulo_item=='') {$titulo_item=$itulo;} $archivo_ruta=$path_imagen."/data/".$titulo."_descargas.txt"; $descargas=file($archivo_ruta); $cuantas_descargas=count($descargas); $titulo2=$datos_item[0]; if ($datos_item[0]=='') {$titulo2=$titulo;} if ($fotograma=='') { $fotograma=$path_imagen."/imagenes/fondo.jpg";} if ($caratula_item=='') {$caratula_item=$path_imagen."/imagenes/lista/nocover.png";} echo " <item> <title><![CDATA[".$titulo2." - ".$capitulo."]]></title> <director><![CDATA[".$datos_item[1]."]]></director> <media:thumbnail url=\"".$caratula_item."\" /> <image><![CDATA[".$caratula_item."]]></image>

Jukebox-live

MC4G

<ano><![CDATA[".$datos_item[3]."]]></ano> <description><![CDATA[".$datos_item[4]."]]></description> <reparto><![CDATA[".$datos_item[5]."]]></reparto> <duracion><![CDATA[".$datos_item[6]."]]></duracion> <genero><![CDATA[".$datos_item[7]."]]></genero> <puntuacion><![CDATA[".$datos_item[8]."]]></puntuacion> <fotograma><![CDATA[".$fotograma."]]></fotograma> <descarga><![CDATA[Encontrados ".$cuantas_descargas." enlaces para visualizacin y descarga online >]]></descarga> <url>null</url> <online>null</online> <itemid>".$a."</itemid> </item> "; // aadimos las descargas include ("../../funciones.php"); $contador=1; $archivo_ruta=$path_imagen."/data/".$titulo."_descargas.txt"; $descargas=file($archivo_ruta); foreach($descargas as $descarga) { $flecha_antes='<'; $flecha_despues=">"; if ($contador==$cuantas_descargas) {$flecha_antes="<"; $flecha_despues=" ";} if ($contador==1) {$flecha_antes=""; $flecha_despues="> ";} $titulo2=$datos_item[0]; if ($datos_item[0]=='') {$titulo2=$titulo;} $descarga=trim($descarga); echo " <item> <title><![CDATA[".$titulo2." | ".$capitulo."]]></title> <director><![CDATA[".$datos_item[1]."]]></director> <media:thumbnail url=\"".$caratula_item."\" /> <image><![CDATA[".$caratula_item."]]></image> <ano><![CDATA[".$datos_item[3]."]]></ano> <description><![CDATA[".$datos_item[4]."]]></description> <reparto><![CDATA[".$datos_item[5]."]]></reparto> <duracion><![CDATA[".$datos_item[6]."]]></duracion> <genero><![CDATA[".$datos_item[7]."]]></genero> <puntuacion><![CDATA[".$datos_item[8]."]]></puntuacion> <fotograma><![CDATA[".$fotograma."]]></fotograma> <descarga><![CDATA[".$flecha_antes." ".$contador."/".$cuantas_descargas." $flecha_despues." ]]></descarga> "; // incluimos el generador de enlaces de los diferentes servicios $url_video=''; include ("../../servicios.php");

".$descarga."

".

Jukebox-live

MC4G

echo " <itemid>".$a."</itemid> </item> "; // fin de foreach $contador=$contador+1; $a=$a+1; ;} //------------------->fin de parte comn

Casos prcticos para su uso:


Supongamos que tenemos una asociacin cultural con una serie de vdeos, de larga duracin alojados en megavideo, videozer o similares (que sean soportados por jukebox-live), y los tenemos a disposicin de los internautas en una web. Pedemos hacer que los usuarios de jukebox-live, vean estos contenidos, creando un generador que se encargue (con los pasos antes indicados) de generar un listado de los vdeos de nuestra web (listado.php) y que muestre los diferentes soportes para visualizarlos o descargarlos (ficha.php) desde nuestro televisor. Puede ser tambin de aplicacin a televisiones locales, que quieran hacer llegar sus programas a los usuarios de esta extension, etc.

Revisin 7 de noviembre de 2011

Jukebox-live

MC4G

You might also like