Casos de uso

Crear una alerta de geocercado sencilla para una app de logística

Una plataforma completa de seguimiento de flotas era más de lo que una pequeña empresa de logística necesitaba realmente para lo único concreto que su equipo de despacho no dejaba de pedir: una simple notificación en el momento en que un camión de reparto llegaba a un emplazamiento de cliente concreto e importante o salía de él, útil para los clientes que querían aviso previo de la llegada de una entrega y para el propio registro de la empresa de cuándo una entrega había llegado realmente a su destino, en lugar de depender del informe de fin de jornada del conductor.

Las piezas necesarias eran más sencillas que una plataforma completa de seguimiento, y la empresa ya recibía un flujo de coordenadas GPS de sus vehículos de reparto a través de los dispositivos móviles que llevaban los conductores. Lo que necesitaba era una forma de definir un emplazamiento de cliente como un límite y comprobar las coordenadas entrantes con él, además de una forma de interpretar una coordenada en bruto cuando algo requería una descripción legible para una persona en lugar de un par de números.

Para cada emplazamiento de cliente importante, la empresa geocodificaba la dirección del emplazamiento mediante /v1/forward para obtener una coordenada de referencia fija y luego definía un pequeño radio alrededor de ese punto que representaba el límite de llegada al emplazamiento, una simple comprobación de radio en lugar de un límite complejo con forma personalizada, ya que un radio era lo bastante preciso para los emplazamientos reales de la empresa, en su mayoría almacenes y muelles de carga sin límites inusuales o irregulares de los que preocuparse. A medida que llegaban las coordenadas GPS de un camión, el propio backend de la empresa calculaba la distancia de cada camión seguido al punto de referencia de cada emplazamiento pertinente, y activaba una alerta de llegada cuando un camión entraba en el radio y una alerta de salida cuando volvía a salir de él.

/v1/reverse cumplía una función de apoyo para la parte humana de este sistema: cuando un despachador necesitaba revisar una alerta o investigar un patrón inesperado, como un camión que parecía salir de un emplazamiento y volver de inmediato, tener la coordenada en bruto resuelta en una dirección y una descripción de ubicación legibles hacía la revisión del despachador bastante más rápida que trabajar con un par de números en un mapa que había que investigar a mano para interpretarlos.

La empresa mantuvo esto deliberadamente sencillo en lugar de avanzar hacia una plataforma completa de optimización de rutas o de gestión de flotas, ya que el problema concreto que resolvía, alertas de llegada y salida para una lista definida de emplazamientos importantes, no necesitaba la mayor parte de lo que ofrecería una plataforma más grande, y construir solo lo necesario mantuvo el proyecto lo bastante pequeño como para lanzarlo rápido y mantenerlo sin un equipo de ingeniería dedicado detrás.

Los clientes que recibían alertas de llegada notaron un valor real en el aviso previo, sobre todo los que tenían poco personal en sus instalaciones y necesitaban unos minutos de antelación para tener a alguien listo para recibir una entrega en lugar de que les pillara desprevenidos, una pequeña mejora operativa para el cliente que a la empresa de logística le costó relativamente poco construir.

La geocodificación de los emplazamientos fue un coste de configuración puntual, pequeño dado lo pocos emplazamientos prioritarios que necesitaban este tratamiento concreto, y el uso de la geocodificación inversa dependía de la frecuencia con que un despachador tenía que investigar una alerta concreta, una carga de trabajo ligera y ocasional en lugar de constante. Ambos se mantuvieron cómodamente dentro de la cuota diaria gratuita para una empresa de este tamaño.

La documentación de ambos endpoints está en /docs/forward-geocoding/ y /docs/reverse-geocoding/.