El caso de uso 5 está dedicado a la información relativa a eventos dinámicos como vehículos especiales.
El objetivo de este caso de uso es recopilar y publicar información en tiempo real de la localización de transportes especiales que previamente han sido autorizados por DGT.
Se persigue remitir a la plataforma las coordenadas x,y por parte del vehículo especial para permitir que sea detectado por otros vehículos más allá de la línea de visión directa.
La plataforma cuenta con dos funcionalidades diferenciadas para la publicación (envío) y para la suscripción (recepción) de información. La primera es a través de una API REST y la segunda a través de un servicio MQTT en tiempo real.
Tanto la funcionalidad de publicación como de suscripción requieren de certificados de acceso distintos que deben ser solicitados y suministrados por DGT 3.0. Estos certificados, de no haber sido solicitados ya, se deberán solicitar a soporte@cmobility30.es.
A continuación se muestran las URLs con las que se accede a cada funcionalidad:
Modo | URL | Descripción |
---|---|---|
Publicación | https://use-case-5-dev.cmobility30.es:8443 | Actual endpoint del entorno de desarrollo que será deshabilitado a partir del 26 de julio |
Publicación | https://pre.cmobility30.es/use-case-5 | Endpoint del entorno de integración de clientes para la publicación |
Suscripción | mqtt://mqtt.pre.cmobility30.es:8883 | Endpoint del entorno de integración para la suscripción |
A continuación se describen las dos funcionalidades.
Publicación
Este caso de uso dispone de una API REST para la publicación (envío) de los datos por parte de las empresas que así lo deseen. En los siguientes apartados se pueden encontrar los detalles de esta:
- Los detalles generales para realizar una petición:
- Los detalles de las tablas maestras y datos que pueden componer el evento:
- Información relativa al evento que se debe enviar:
Suscripción
Este caso de uso también dispone de un servicio de suscripción (recepción) de datos por parte de las empresas que así lo deseen mediante el protocolo MQTT. A continuación se pueden encontrar los detalles de esta:
MQTT (MQ Telemetry Transport) es un protocolo de mensajería que se usa como un método simple y liviano para transferir datos hacia/desde dispositivos de baja potencia.
El protocolo admite un único patrón de mensajería, el patrón Publicar-Suscribir y cada mensaje es publicado en un tópico al que se debe suscribir para recibir la información.
La suscripción al servicio de este caso de uso deberá ser al tópico:
usecase5/events
En el tópico se publican los eventos en formato JSON. Aquí se puede ver un ejemplo:
{
"beaconTypeId": 1,
"timestamp": "2021-06-02T13:34:56.747Z",
"lon": -4.304818,
"lat": 41.312456,
"eventTypeId": 1,
"speed": 85,
"provinceId": 40,
"road": "A-601",
"pk": 64.73,
"direction": "UP"
}
-
beaconTypeId (número entero): identificador del tipo de baliza. 1 = Start, 2 = End, 3 = Intermediate, 4 = Perimeter
-
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 30 segundos de antiguedad con respecto a la hora UTC. La fecha debe finalizar con el caracter '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. 1 = Start, 2 = End
-
speed (número decimal): velocidad en kilómetros por hora a la que se encuentra el elemento en el momento que envía el evento
-
provinceId (número entero): identificador de la provincia donde se genera el evento según el INE
-
road (número entero): nombre oficial de la carretera donde se genera el evento
-
pk (número entero): punto kilométrico donde se genera el evento
-
direction (texto): dirección de la carretera donde se genera el evento. UP = Sentido ascendente, DOWN = Sentido descendente, UNKNOWN = Desconocido
Se puede encontrar más información y un ejemplo de conexión aquí.
Nota: La información que se está publicando en el entorno de desarrollo es una simulación con información no real que va cambiando a lo largo del día, de forma que se pueda probar la interface de consumo.