|
Project Information
|
Aplicación que recomienda al usuario, según su localización y demanda (hotel, restaurante, conciertos, etc.), los servicios y sitios valorados por los usuarios en comunidades como 11870.com, o los conciertos de nvivo.es. El usuario puede también enviar a twitter la acción solicitada por sms para que sus seguidores vean que está solicitando y el lugar, así ellos también podrán recomendarle algún sitio en el momento. '''Actualización 11-05-2008''': se ha prescindido del uso del API Localízame, ya que la actual implementación no permite que el uso sea sencillo para los usuarios del servicio. DocumentaciónEsta es la primera versión del mashup '''Recomiéndame''', es un prototipo que muestra la idea general. Este proyecto se ha desarrollado con PHP5 OO. Cada módulo puede ser reutilizado en otros proyectos y se pueden añadir nuevos servicios rápidamente. APIs utilizadas- API Recepción de SMS (Open movilforum)
- Interfaz HTTP de envío de SMS (Open movilforum)
- 11870.com Aplicación web para compartir con tus amigos opiniones, fotos y vídeos de todo tipo de servicios
- Twitter API Sistema de microblogging
- Feeds de Nvivo.es Información sobre conciertos
Funcionamiento, implementación- El usuario envía un SMS solicitando algún servicio e indicando el lugar
- El programa que monitorea la cuenta de correo asociada a la API de recepción de SMS extrae los emails nuevos que han llegado desde la última vez que se comprobó y se marcan como leídos.
- Se parsean los emails y se crea una representación del SMS por cada uno.
- El texto de cada SMS se parsea extrayendo:
- El tipo de información que el usuario solicita (servicio, concierto, etc.).
- La cadena de búsqueda enviada (ejemplo: 'sidreria tapas').
- El lugar en el que se encuentra (oviedo, madrid, etc.).
- Datos de acceso a Twitter en caso de que el usuario los haya enviado.
- Si el usuario envió sus datos de Twitter se actualiza su status solicitando que le recomienden x servicio.
- Dependiendo del tipo de dato solicitado se crea el servicio que buscará la información llamando a las APIs y los feeds de 11870.com, nvivo.es, etc. (de momento estos dos)
- Se parsean los datos obtenidos, en este caso XML, y se envían al usuario usando el API HTTP de envío de SMS.
Forma de usoFormato de los mensajes: - Solicitando servicios:
- '''cadena de búsqueda''' lugar
- Ejemplo: hotel barato madrid
- La última palabra ha de ser siempre el lugar
- Solicitando conciertos para hoy:
- '''conciertos''' lugar
- Ejemplo: conciertos barcelona
- Con Twitter:
- cadena de búsqueda lugar '''TWT''' usuario password
- conciertos lugar '''TWT''' usuario password
- Ejemplos: hotel barato madrid TWT enjuto h4ck3r, conciertos barcelona TWT miusuario miclave
Instalación- La aplicación ha sido probada en una instalación Linux, Apache 2.2.6, PHP 5.2.5.
- En la sección de descargas puedes encontrar las librerías utilizadas: oos4php, ZendGdata, SimplePie.
Requisitos- PHP 5.2
- Librería cURL
- Librería IMAP
- Posibilidad de programar tareas
- La cuenta de correo usada en el API de recepción debe tener acceso IMAP.
Configuración- Crear una tarea programada (cron para unix) para ejecutar '''CronRecomiendame.php''' cada x minutos o segundos.
- Configurar '''CronRecomiendame.php''' con los datos para el envío de SMS del API:
- define('USER_SMS', '6xxxxxxxx');
- define('PASSWORD_SMS', 'xxxx');
- Configurar '''Imap.php''' con los datos de acceso IMAP de la cuenta de correo para la recepción de SMS:
- define('IMAP_MAILBOX', '{imap.gmail.com:993/imap/ssl}'); //Para Gmail
- define('IMAP_USER', 'xxx');
- define('IMAP_PASSWORD', 'xxx');
- Configurar '''servicios/Servicios11870.php''' con los datos del API de 11870.com:
- define('APPSECRET_11870', 'xxx');
- define('APPTOKEN_11870', 'xxx');
- define('USERSLUG_11870', 'xxx');
- define('EMAIL_11870', 'xxx');
- define('PASSWORD_11870', 'xxx');
ToDo, ampliaciones, mejoras- Implementar la API Localízame si se mejora su utlización.
- Añadir nuevos sitios de recomendaciones. (Estaría bien que [salir.com] tuviera API o feeds RSS para las búsquedas).
- Implementar más opciones del API de 11870, por ejemplo, para dar una opinión por SMS o enviar fotos de un local. Varias opciones en las búsquedas http://groups.google.com/group/api-11870/web/searching
- Posibilidad de enviar MMS con más información.
- Si se necesitaran muchos datos de cuentas de usuario (twitter, 11870, etc.) se podría dotar de una interfaz web para manejar todos los perfiles y así disminuir el tamaño de los SMS enviados.
Descarga
|