Open jukebox

De Open movilforum wiki

Tabla de contenidos

[editar] Open Jukebox

Selección de canciones de ambiente en bares via sms

[editar] Links

Código fuente

Descripcion basica


Proyecto google

Seguimiento de incidencias y tareas

Más documentacion

[editar] Objetivos

Esta aplicación permitirá implementar una caja de música (jukebox) donde los asistentes al evento puedan participar en la elección de las canciones. La aplicación podrá ser instalada fácilmente en un PC, con conexión a Internet.

Los usuarios de la aplicación, podrán seleccionar las canciones que el JukeBox reproducira, con sus teléfonos móviles.

El local podrá crear una base de datos de teléfonos móviles, de las personas que participan en el evento, para su posterior utilización como soporte de Marketing Móvil.

[editar] Arquitectura

Imagen:Arquitectura_openjukebox.png

La aplicación se está desarrollando en Java. j2ee con Struts.

[editar] Selección de la canción

El sistema se basa en la existencia de una lista de canciones residentes en un PC con Open SMS JukeBox con salida de audio para ser escuchado por los asistentes al evento.

Los asistentes al evento pueden saber cual es la lista de canciones disponibles de por varios métodos

[editar] Selección por SMS

El usuario conoce las canciones disponibles a través de lista numerada de publicada en un cartel visible por todo el mundo

Para elegir la canción el usuario mandará un SMS con el número de canción al número proporcionado por OpenSms.

Opcionalmente, el sistema contestará a través de un SMS con el resultado de la operación también a través de la api de OpenSms


[editar] Selección mediante el acceso a un portal Wap

El usuario conoce las canciones elegibles a través de un portal wap.

Este sistema funcionará universalmente en cualquier teléfono moderno.

Para descubrir el servicio, será necesario facilitar el acceso público al interfaz wap de manera sencilla:

Ofrecemos varias opciones.

  • Se publica en un cartel la URL del servicio wap con instrucciones para conectarse.
  • El usuario enviará un SMS con el texto “JK” al un numero corto que se le contestará con un WAP Push que le dará acceso a una aplicación
  • El usuario envía un SMS al número de teléfono obtenido en OpenSMS como receptor de mensajes. El sistema le devuelve un SMS con la URL wap.

El sistema le responderá, en la misma aplicación wap, con la confirmación de la recepción de la petición o el mensaje de error adecuado.

[editar] Funcionamiento del reproductor de canciones

Las peticiones se recogen en un sistema de reproducción. El sistema elegirá el orden de presentación de las canciones teniendo en cuenta las peticiones de los asistentes.

El sistema construirá la lista de reproducción a partir de las canciones disponibles y las peticiones de los usuarios. Dará preferencia a las peticiones pero sin permitir que la misma canción se oiga dos veces en un mínimo de tiempo establecido. Un pc con la aplicación Open SMS JukeBox instalada proporcionará una salida de audio que el DJ debe conectar a su mesa de mezclas, que a su vez estará conectada al sistema de megafonía.

La aplicación permitirá publicar en una ventana independiente la lista de las canciones solicitadas, para que esta pueda ser proyectada en las pantallas gigantes del local.

[editar] Implementación

[editar] Reproducir MP3

Para reproducir las canciones podemos lanzar un reproductor instalado en el sistema o encargarnos de la reproducción.

Dentro de esta segunda opción y programando en Java hay varias alternativas, como JMF (Java Media Framework) o la librería JLayer. Para ambas es necesario un paquete adicional para la reproducción de ficheros MP3.

JMF

http://java.sun.com/products/java-media/jmf/index.jsp

Java Media Framework extiende la plataforma J2SE y proporciona a los applets y aplicaciones Java la capacidad de reproducir, capturar y transmitir/recibir en tiempo real audio video y otros contenidos multimedia. Provee de una serie de codificadores y decodificadores para los formatos multimedia más relevantes siendo capaz además, de realizar transcodificación entre dichos formatos.

La lista completa de formatos soportados por JMF se puede consultar en http://java.sun.com/products/java-media/jmf/2.1.1/formats.html

JLayer

http://www.javazoom.net/javalayer/javalayer.html

JLayer es una librería Java que decodifica, convierte y reproduce ficheros MP3 en tiempo real. Ademas soporta MPEG 1/2/2.5 Layer 1/2/3 audio format. No necesita JMF, corre bajo J2SE.

Para el caso del Jukebox hemos utilizado JLayer cuyo uso y configuración es mucho más simple.

[editar] Consultar buzón de correo

Las peticiones SMS que se hacen al Jukebox se redirigen a una cuenta de correo electrónico a través de la API de recepción de mensajes publicada en movilforum (http://open.movilforum.com/apirecepcion). Para la lectura del buzón de correo se usa JavaMail.

El texto que se envia en un SMS para hacer una petición es configurable y se tratan a través de las facilidades de manejo de expresiones regulares que proporcina Java.