¿Cómo instalar y utilizar el API cliente de Python?

En este tutorial se muestra la instalación del cliente REST de Python para OnesaitPlatform, además de algunos casos de uso.

Introducción

Esta librería cliente de la plataforma contiene varas clases que implementan las funcionalidades de diferentes clientes de la plataforma:

  • Cliente Iot-Broker: Queries e inserciones de datos de ontologías.

  • Cliente Api-Manager: Gestión de APIs REST y llamadas.

  • Cliente File-Manager: Subida y bajada de archivos binarios.

  • Cliente MQTT: Queries e inserciones de datos de ontologías mediante protocolo MQTT.

Con estos clientes se establece una comunicación sencilla con la plataforma desde cualquier entorno Python.

Instalación de la librería desde pypi:

La forma más sencilla de instalar la librería es mediante el repositorio pypi y el uso de pip. Para instalarlo, basta con ejecutar el comando:

>> pip install onesaitplatform-client-services

Se recomienda utilizar el flag de upgrade para actualizar las dependencias en caso de que ya estén instaladas (recomendado para todas las instalaciones).

>> pip install --upgrade onesaitplatform-client-services

Ejemplos de uso del cliente

Se pueden encontrar notebooks de ejemplos en la carpeta /examples/*.ipynb de instalación de la librería.

NOTA: Es muy importante que por cada cliente IotBrokerClient, siempre se haga un join() al principio para abrir la conexión y un leave() al final para cerrarla.

Digital Client

Create Client

Para crear un Digital Client, se requiere una configuración de conexión, a continuación se explican la forma de establecer los parámetros adecuadamente.

Si el cliente se conecta desde dentro de la red de la plataforma (desde notebooks de plataforma o microservicios internos) la configuración para conectar con el Digital Broker (Iot Broker) es la siguiente:

En cambio, si el cliente se utiliza desde una red externa de plataforma (pc local y otras ubicaciones en la red), la configuración es la siguiente:

El parámetro está redirigido automáticamente por lo que no es necesario, pero se puede establecer PORT = 443 (puerto https pordefecto).

El parámetro PROTOCOL está puesto por defecto a "https", pero se puede establecer a PROTOCOL = "https".

El parámetro AVOID_SSL_CERTIFICATE está puesto por defecto a True, pero se puede establecer a AVOID_SSL_CERTIFICATE = True.

Join / Leave

Para iniciar una conexión, se requiere de hacer un join() o connect(), que utiliza las credenciales iot_client y iot_client_token. Al finalizar se debe usar siempre leave() o disconnect().

Query

Los formatos de query admitidos son "SQL" y "NATIVE" para sintaxis SQL y MongoDB respectivamente.

Query batch

Esta query realiza sucesivas peticiones de menor tamaño, óptima para cuando se quieren pedir muchos datos. Se construye con query + "offset N limit batch_size" o query + .skip(N)-limit(batch_size)" para SQL y MongoDB respectivamente.

Insert

Api-Manager Client

Create Client

Find APIs

List APIs

Make API request

File-Manager Client

Create Client

Cuando se crea el cliente, se puede utilizar el Bearer token (APIs) o el user token (My APIs>user tokens)

Upload file

Download file