Ejemplo APIS NGSI v2 en Sofia2

ngsi8Una de las capacidades del API Manager de Sofia2 es permitir exponer ontologías como entidades para ser consultadas mediante el protocolo NGSI v2.

En este post vamos a mostrar como crear una pequeña aplicación que realiza consultas a Sofia2 mediante el protocolo NGSI v2.

Una entidad NGSI tiene siempre dos atributos obligatorios:

  • id: identificador único de la entidad.
  • type: define el tipo de entidad.

De manera que para exponer con el API Manager de Sofia2 una ontologia como API NGSI v2 es necesario que disponga al menos de dichos atributos.

En la siguiente imagen mostramos una entidad GSMA con información de Parkings perteneciente a la ontologia GSMA_OffStreetParking_Destino dada de alta en Sofia2.com y cuyo contenido vamos a exponer como API NGSI v2, en la que podemos observar dichos atributos:

ngsi7.png

Para exponer dicha ontología a través del API Manager Sofia2 como API NGSI v2 primero hay que publicarla como API REST, esto es posible accediendo a API Manager > APIs de la consola de administración y seleccionando la opción Crear API:

 

ngsi1.PNG

 

Una vez seleccionada la ontología que se quiere publicar, es necesario seleccionar la opción Publicar como NGSI, se puede ver como cambia el Endpoint, tomando la forma estandarizada de un API NGSI v2. Finalmente, creamos el API y procedemos a publicarla:

 

ngsi2.PNG

Una vez publicada el API accedemos a Mis suscripciones y seleccionamos Test & Doc para probar que funciona correctamente:

ngsi8.PNG

 

Si accedemos al Test & Doc podemos ver que nos piden 2 parámetros:

  • auth-token: se trata del token de autenticación que está disponible en Mi API Key
  • ngsiQuery: en este campo iría la query ngsi correspondiente a la consulta que se quiere realizar, esta consulta iría a partir del Base Path que sale resaltado en la siguiente imágen.

 

ngsi9

A continuación se muestra el resultado de dicha consulta, así como el path completo al que se está invocando:

 

ngsi10

ngsi11

En GitHub está disponible un ejemplo de cliente HTML que realiza consultas a dicha API, entre otras. Para el caso de nuestro ejemplo se consulta los parkings que tienen más de 50 plazas disponibles:

 

ngsi5

 

Se muestra también el código Javascript que realiza la llamada al API para cada caso, en nuestro ejemplo el código sería:

 

ngsi6

 

Si analizamos la URL :

 

ngsi4

 

Cabe destacar que es necesario indicar el campo type, que se corresponde con el valor del campo type de la ontología mencionado al inicio de este post.

Ejemplo APIS NGSI v2 en Sofia2

3 comentarios en “Ejemplo APIS NGSI v2 en Sofia2

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s