-
Notifications
You must be signed in to change notification settings - Fork 0
Home
El caso de uso 18 está dedicado a la notificación automática en tiempo real de la parada de un autobús en una parada interurbana y de su posterior puesta en marcha. Se trata de identificar el lugar y el momento durante el cual el vehículo se encuentra detenido.
La plataforma DGT3.0 recibirá y enviará, mediante mensajería MQTT, los mensajes de entrada y salida de los vehículos en una parada interurbana.
- Entrada en la parada: Instante en el que se detecta que un vehículo se encuentra en un radio inferior a 300 metros de la localización de una parada, donde tenga prevista su detención, tanto por razones comerciales como técnicas, antes de llevarla a cabo.
- Parada interurbana: localización de una parada, tanto comercial como técnica, de un vehículo, que se realice en líneas interurbanas en plena carretera, fuera de estaciones de autobuses habilitadas correctamente para la subida y bajada de viajeros. Estas paradas deben ser identificadas por los productores de la información.
- Salida de una parada: Instante en el que se detecta que un vehículo se encuentra en un radio superior a 300 metros de la localización de una parada donde tenga prevista su detención tanto por razones comerciales como técnicas, después de llevarla a cabo.
La conexión al sistema se realizará mediante la suscripción a un tópico configurado en el broker MQTT de la plataforma DGT3.0. La conexión requerirá credenciales con usuario y password para el cliente. El cliente configurará un clientId en la conexión, que se le facilitará junto a las credenciales de acceso. El broker permitirá tanto la recepción como la publicación de mensajes.
A continuación se muestran las URLs con la que se acceden a las diferentes funcionalidades, la de publicación (la integración se realizará en el entorno de preproducción) y la de suscripción (directamente al entorno de producción):
Modo | URL | Descripción |
---|---|---|
Publicación | ssl://preproduction.cmobility30.es:8883 | Endpoint del entorno de integración para la publicación |
Suscripción | ssl://production.cmobility30.es:8883 | Endpoint para la suscripción |
Una vez que los proveedores publiquen información correctamente en el entorno de preproducción, deberán solicitar las credenciales para producción.
A este caso de uso será posible conectarse para suscribirse a la información ofrecida por la plataforma DGT3.0, como también será posible conectarse para enviar información a la plataforma. Tanto para la suscripción como la publicación se usará la interfaz MQTT (información). A continuación se explican ambos modos de conexión.
El productor enviará los mensajes al tópico in_usecase18_busstop a medida que se generen. Para enviar la información proporcionada por los autobuses serán necesarios los siguientes atributos modelados en formato JSON:
Atributo | Descripción |
---|---|
timestamp | ISO Timestamp del instante del evento en UTC |
companyId | Identificador único de la empresa |
actionId | Identificador único del evento. Será único para la misma parada y evento, es decir, para un vehículo que hace una entrada y salida relacionadas |
lon | Longitud geográfica en grados decimales de la parada |
lat | Latitud geográfica en grados decimales de la parada |
eventTypeId | Tipo de evento: 2: entrada; 3: salida |
A continuación, se muestra un ejemplo de mensaje correctamente formado para ser enviado al sistema:
{
"timestamp": "2024-07-16T07:17:45.000Z",
"companyId": 1,
"actionId": "017bdb38-6151-4f76-bd9e-34376db36efa",
"lon": -3.68563,
"lat": 40.24298,
"eventTypeId": 2
}
Descripción de los campos para el caso de uso de Paradas de autobús a través de la plataforma DGT 3.0.
- actionId (texto): Identificador único del evento
- timestamp (fecha UTC): fecha y hora en formato UTC del momento en el que el evento se ha generado. Es necesario que sea de un máximo de 15 segundos de antigüedad con respecto a la hora UTC. La fecha debe finalizar con el carácter 'Z' que marca que está en UTC
- lon (número decimal): longitud de coordenadas de tipo WGS 84 donde se ha generado el evento
- lat (número decimal): latitud de coordenadas de tipo WGS 84 donde se ha generado el evento
- eventTypeId (número entero): identificador del tipo de evento
- companyId (número entero): identificador de la compañía publicadora
Para que la información proporcionada por los productores sea de utilidad se marcan los siguientes requisitos:
- Retardo inferior a 5 segundos desde la detección de la entrada hasta el envío del mensaje a DGT3.0.
- Antigüedad de los mensajes inferior a 10 segundos.
- Precisión de la localización inferior a 5 metros.
- El productor enviará un mensaje de entrada en la parada y otro de salida de la parada.
- En caso de recibirse una entrada y no la correspondiente salida, se considerará como salida automática pasados 10 minutos.
- Los productores deben enviar los mensajes desde la plataforma del fabricante.
- La plataforma del fabricante será responsable de proporcionar la información correctamente.
Ejemplo de publicador accesible aquí.
El consumidor se suscribirá al tópico o tópicos cuya información le interese recabar. La nomenclatura de los tópicos de publicación será: out_usecase18_ine.provinceId, donde provinceId será el identificador INE de la provincia donde afecta el mensaje.
Así, si está interesado en una provincia concreta se suscribirá al tópico out_usecase18_ine/provinceId o en el caso de querer consumir todas las provincias, al tópico out_usecase18_ine/#
Ejemplo de subscritor accesible aquí.
Ejemplo con MQTTExplorer:
Se puede encontrar más información y un ejemplo de ambos modos de conexión aquí.