Restful Routes es una aplicación de envío de rutas y servicios cercanos mediante mms y una prueba de concepto para una empresa de taxis. Esta aplicación usa servicios de localización externos, como pueden ser el servicio Localízame de Movistar o la api de localización de usuarios de Fire Eagle(http://fireeagle.yahoo.net).
Bajo mi punto de vista, los servicios de taxi por teléfono están obsoletos.
Esta aplicación permite localizar a un usuario que envía un sms a un número determinado y mediante la api de direcciones de google maps extraer el tiempo que le costaría llegar a un taxi situado en unas coordenadas a la posición del usuario. Debido a que este tiempo de espera puede varias en función de la disponibilidad y la distancia de los taxis, el sistema le propone al cliente unos determinados sitios donde poder esperar tranquilamente.
Ya que no se puede disponer de datos reales de gps de un servicio de taxis se ha optado por simularlos.
Mediante un algoritmo de aproximación por coordenadas, una vez localizado al usuario se supone una área con un radio determinado y se extraen una serie de coordenadas aleatorias dentro de este area. Estas coordenadas se envían al servicio de rutas de google maps y se selecciona la más cercana al usuario. Independientemente, se hace una petición a la api de 11870.com para extraer los servicios cercanos al usuario que esta web nos propone con una serie de etiquetas ("tapas", "bar", "comer", "cañas"...). Una vez obtenidos todos los datos el sistema crea y envía un mms mediante la api de mms de movistar al usuario con el tiempo que va a tener que esperar, los servicios cercanos propuestos por 11870.com y un mapa creado con la api de mapas estáticos de google maps donde se indica la posición de estos servicios.
Adicionalmente, se indica al usuario como usar el apartado de rutas para que pueda llegar caminando a su destino si tener que esperar al taxi.
La aplicación también es capaz de enviar una ruta determinada desde el punto donde está situado el usuario al destino donde quiere llegar. Una vez localizado el usuario y su destino se extrae la ruta mediante la api de direcciones de google maps.
Además, la aplicación sugiere al usuario una serie de puntos donde poder descansar tranquilamente en medio del camino. Estos puntos son sitio o servicios extraidos de 11870.com mediante su api. Ya que google maps nos muestra la ruta como una sucesión de pasos situados entre dos puntos, se ha utilizado un algoritmo para extraer el punto intermedio entre estos dos y poder mostrar servicios dentro de toda la ruta del usuario.
Una vez que se ha obtenido la ruta y los servicios cercanos donde descansar, el sistema le envía un mms al usuario con toda la información mediante el api de mms de movistar. Este mms incluye varios mapas generados con la api de mapas estáticos de google maps. La primera página de mms corresponde a un resumen de la ruta con un mapa donde se puede ver el recorrido completo que tiene que hacer el usuario, mientras que en el resto de páginas del mms se detallan los pasos que nos da google maps con un mapa indicando el punto inicial, el punto final y los servicios que 11870.com nos ha propuesto alrededor de la ruta.
La api de envío de mms de movistar limita a 5 el número de páginas que podemos añadir a un mms, así que los pasos que nos envía google maps se compactan para que quepan dentro de 4 páginas, por ejemplo, si recibimos ocho pasos en lugar de pintarlos uno a uno se unen de dos en dos para crear solo cuatro páginas.
Para el desarrollo se han usado las siguientes apis:
- Api Localízame de Movistar
- Api recepción de sms
- Api de envío http de mms
- Api de envío http de sms
- Api de direcciones de google maps
- Api de geo localización de google maps
- Api de mapas estáticos de google maps
- Api de búsqueda de servicios de 11870.com
- Api de localización de usuarios de Fire Eagle
- Apis de reducción de cadenas de is.gd y tinyurl.com
La apicacción se encuentra corriendo en un servidor propio y se puede probar enviando sms al número 638444908. A su vez para poder usar el servicio Localízame de Movistar hay que dar acceso al número 650075813.
Dentro del wiki del proyecto se encuentra una sección donde se explican los formatos de los sms que acepta la aplicación, así como más detalles sobre los servicios que se emplean para localizar a los usuarios.
| Adjunto | Tamaño |
|---|---|
| mapa_taxi.png | 130 KB |
| texto_taxi.png | 99.21 KB |
| resumen_ruta.png | 160.65 KB |
| texto_ruta.png | 84.41 KB |
| step1_w.png | 159.36 KB |
| step1_t.png | 104.29 KB |
| step2_w.png | 156.07 KB |
| step2_t.png | 93.21 KB |
| step3_w.png | 151.1 KB |
| step3_t.png | 96.22 KB |