Gracias al caso de uso 4 la Dirección General de Tráfico cuenta con una herramienta para poder publicar en cualquier punto kilométrico de cualquiera de las carreteras nacionales información que estime oportuna (advertirles de posibles peligros, publicación de zonas de bajas emisiones, activación de protocolos de bajas emisiones, dar recomendaciones en cualquier punto, tramo o área de la red viaria, etcétera)
En esta documentación se expone como las empresas integradoras pueden acceder y consumir esta información junto con la relativa publicada al caso de uso 1 (señales v16) y caso de uso 2 (obras e incidencias).
Requisitos previos para la conexión
-
Por motivos de seguridad, las conexiones serán nube a nube. La petición será realizada desde la nube de la empresa integradora y nunca desde los dispositivos directamente.
-
DGT 3.0 facilitará un certificado y añadirá la IP pública del servidor desde donde se realizarán las peticiones a una lista blanca.
-
Una vez obtenido lo anterior, se configurará un cliente en cualquier tipo de lenguaje o plataforma que sea capaz de realizar peticiones API REST (como por ejemplo Postman).
API REST
La API REST está alojada en el siguiente dominio:
Publicación
Para publicar información la plataforma dispone una API REST que se utiliza según se describe a continuación
Identificación en el servicio
Para llevar a cabo las operaciones del API es necesario obtener un token de sesión que caducará de forma aleatoria a lo largo de la misma.
- Los detalles de las tablas maestras y datos que pueden componer el evento:
Tablas maestras
La API pone a disposición de los usuarios una serie de endpoints con los datos que componen el evento principal:
-
https://bandejadesalida-dev.cmobility30.es:8443/v1/mastertables/getCategories
-
https://bandejadesalida-dev.cmobility30.es:8443/v1/mastertables/getChangeTables
-
https://bandejadesalida-dev.cmobility30.es:8443/v1/mastertables/getEventsArea
-
https://bandejadesalida-dev.cmobility30.es:8443/v1/mastertables/getModes
-
https://bandejadesalida-dev.cmobility30.es:8443/v1/mastertables/getProvinces
-
https://bandejadesalida-dev.cmobility30.es:8443/v1/mastertables/getRoads/:idProv
-
https://bandejadesalida-dev.cmobility30.es:8443/v1/mastertables/getRoadsDirection
-
https://bandejadesalida-dev.cmobility30.es:8443/v1/mastertables/getErrorCodes
-
https://bandejadesalida-dev.cmobility30.es:8443/v1/mastertables/getTypesPmvv
El formato será:
{
"errorCode": 0,
"errorDesc": "OK",
"data": [
{
"id": 1,
"name": "Punto"
}
]
}
Obtener eventos
En este endpoint se va a obtener toda la información publicada relativa a los casos de uso 1 (señales V16), caso de uso 2 (obras e incidencias) y caso de uso 4 (publicación por parte DGT Paneles de Mensaje Variables Virtuales) que se encuentren activas en cada momento.
La documentación asociada puede encontrarse en el documento 20200529 API Bandeja Salida v.1.3.pdf La relación entre las incidencias LINCE y la iconografía está descrita en 20191010_DGT30_0.xlsx
Es un endpoint de tipo POST que requiere de enviarle un body en formato JSON. Este body dispondrá como mínimo de dos campos: idcompany (el cn del certificado) y el token. Además, se pueden añadir otros más para filtrar el contenido de la respuesta.
{
"idcompany": "common_name_certificate",
"token": "d7ee3fe23e48e0898426bcbcac4e666b1e70070487c747a52e14c6c66a0483f8",
"type": 0,
"province": 28,
"road": "A2",
"kpfrom": 2,
"kpto": 50,
"direction": 3,
"mode": 3,
"category": 3,
"withgeom": 1
}
Ejemplo de respuesta:
{
"errorCode": 0,
"errorDesc": "OK",
"data": [
{
"pmvGeomWkt": null,
"pmvId": 120148781,
"pmvMsg": "General",
"pmvImg": "P50O",
"pmvType": 1,
"pmvProv": 37,
"pmvRoad": "N-630a",
"pmvPk": 322.0,
"pmvPkIni": 0.0,
"pmvPkFin": 0.0,
"pmvDirection": 1,
"pmvCategory": 0,
"pmvMode": null,
"pmvProvFin": 0,
"pmvRoadFin": null,
"pmvEvent": 0,
"gid": "GUID_Suc_3009137_3009137"
}
]
}
Ejemplo de petición PMVs en una Provincia
Tipo | Provincia | Carretera | PK inicio | PK final | Dirección | Modo | Categoría | Geometrías |
---|---|---|---|---|---|---|---|---|
na | Madrid | na | na | na | na | na | na | Sí |
{
"idcompany": "common_name_certificate",
"token": "d7ee3fe23e48e0898426bcbcac4e666b1e70070487c747a52e14c6c66a0483f8",
"province": 28,
"withgeom":1
}
Swagger UI
La aplicación pone a disposición del usuario un Swagger auto generado. Se puede encontrar en la siguiente URL:
https://bandejadesalida-dev.cmobility30.es:8443/swagger-ui.html
Se debe disponer del certificado para acceder.
NAP - DATEXII
Mediante la operación GET al endpoint /api/1.0/nap es posible la obtención de todas los eventos que se publican en el National Access Point de España que tiene bajo su responsabilidad DGT. El conjunto de datos devueltos sigue el estándar DATEXII
<?xml version="1.0" encoding="UTF-8"?>
<d2LogicalModel modelBaseVersion="1.0" xsi:schemaLocation="http://datex2.eu/schema/1_0/1_0 http://datex2.eu/schema/1_0/1_0/DATEXIISchema_1_0_1_0.xsd" xmlns="http://datex2.eu/schema/1_0/1_0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<exchange>
<supplierIdentification>
<country>es</country>
<nationalIdentifier>dgt</nationalIdentifier>
</supplierIdentification>
</exchange>
<payloadPublication xsi:type="_0:SituationPublication" lang="es" xmlns:_0="http://datex2.eu/schema/1_0/1_0">
.....................
.....................
</payloadPublication>
</d2LogicalModel>