Con tokens organizacionales, las cuentas de administrador de Ubidots pueden crear TOKENS y aprovisionar dispositivos específicamente para una organización predeterminada. Con ellos, evitarás tener que asignar cada dispositivo a una Organización dentro de la arquitectura de tu App.
Tabla de Contenidos
1. Contexto
Antes de comenzar, revisemos primero un poco de contexto. Para mantener las Organizaciones y Dispositivos separados y organizados correctamente, Ubidots utiliza un modelo de identificador de dispositivo de dos niveles—TOKENS y Etiquetas de Dispositivo. Primero, el TOKEN de Ubidots es la clave para que cada pieza de hardware envíe datos a Ubidots; cada cuenta de Ubidots tiene un TOKEN principal. Con esta guía aprenderás a crear un subtokén llamado "token organizacional", la clave para los datos de cada Organización dentro de la arquitectura de tu aplicación. El segundo nivel para la identificación de dispositivos de Ubidots son las Etiquetas de Dispositivo, que son identificadores únicos por dispositivo, a través de una sola cuenta de Administrador de Ubidots. Usando tanto el TOKEN como la Etiqueta de Dispositivo, los usuarios de Ubidots mantienen sus datos asociados con el hardware correcto en los lugares correctos.
En el diagrama a continuación, podemos ver que los cuadrantes 3 y 4 tienen una lógica incorrecta y cualquier intento de enviar datos a través de estas estructuras será rechazado. En el cuadrante 3 vemos un ID de Dispositivo repetido, que será rechazado ya que ha sido reclamado por la Organización 1. En el cuadrante 4 vemos un rechazo porque el TOKEN de Organización no se alinea con la Organización 4 prevista.
2. Cómo crear un TOKEN Organizacional
Para crear un TOKEN para una Organización, ve a "Usuarios" → "Organizaciones". Una vez allí, sigue estos pasos:
Ingresa a la organización para la que deseas crear el token. Para hacer esto, simplemente haz clic en su nombre.
Una vez en la vista de esa organización, ve a la sección "tokens" en el panel izquierdo.
Haz clic en el botón "+" en la esquina superior derecha de la pantalla.
En el modal que se abrió, define la siguiente información:
Un nombre para el token.
Tanto el límite de tasa como la ventana de tiempo del límite de tasa para el token.
El rol de API para el token.
Una vez terminado, haz clic en el botón "guardar" en la esquina inferior derecha del modal.
3. Usando el TOKEN Org para crear un dispositivo
Ahora que tienes el TOKEN de la organización creado, puedes gestionar dispositivos y variables usando la API de Ubidots.
1. La solicitud POST a continuación crea automáticamente un nuevo dispositivo con una variable asignada a la organización del nuevo TOKEN devuelto.
Estructura de una solicitud POST:
curl -XPOST -H "x-auth-token: <TOKEN_RETURNED>" -H "content-type: application/json" -d '{"VARIABLE_LABEL": VALUE}' http://industrial.api.ubidots.com/api/v1.6/devices/<DEVICE_LABEL>
Ejemplo de una solicitud POST:
curl -XPOST -H "x-auth-token: BBFF-kSTyqOiOuMda6oIKIkj5YErielN8C9" -H "content-type: application/json" -d '{"humidity": 22}' http://industrial.api.ubidots.com/api/v1.6/devices/new-device
Como puedes ver en la solicitud de ejemplo anterior, estamos asignando la etiqueta del dispositivo "new-device" con una variable "humidity" a la organización del TOKEN devuelto.
Respuesta del comando resultante:
{"humidity": [{"status_code": 201}]}
Ahora que tenemos una respuesta exitosa del servidor, ve a la sección Dispositivo de tu aplicación Ubidots donde verás el dispositivo creado para la Organización.
Como puedes ver arriba, el dispositivo se asigna automáticamente a la organización del TOKEN_RETURNED.
NOTA: Si la etiqueta del dispositivo asignada en la solicitud ya está creada en la Organización, la variable establecida se actualizará cada vez que se envíen datos desde ese dispositivo.
2. Como se describió anteriormente, si tanto el TOKEN como el ID del Dispositivo no están correctamente ordenados, el POST será rechazado.
Usando el TOKEN_RETURN, intentamos actualizar un dispositivo que ya ha sido asignado a otra Organización por el ID del dispositivo (Cuadrante 3 en la ilustración anterior).
curl -XPOST -H "x-auth-token: BBFF-kSTyqOiOuMda6oIKIkj5YErielN8C9" -H "content-type: application/json" -d '{"humidity": 22}' http://industrial.api.ubidots.com/api/v1.6/devices/500027000d51353432383931
Respuesta resultante:
{"detail": "No tienes permiso para realizar esta acción."}
Como puedes ver, la solicitud anterior es rechazada porque el ID del dispositivo ya ha sido aprovisionado a otra organización.
4. Gestionando Tokens Organizacionales
Para acceder y gestionar los Tokens de una Organización, simplemente ve a la sección "Tokens" de la configuración de la Organización.
Otros usuarios también encontraron útil...