Ir al contenido principal
Todas las coleccionesConecta tus dispositivos
Integrar Ubidots + vNode para enviar datos a través de HTTP
Integrar Ubidots + vNode para enviar datos a través de HTTP

Este artículo explica cómo integrar vNode con Ubidots a través del protocolo HTTPS.

Alejandro Mora Chica avatar
Escrito por Alejandro Mora Chica
Actualizado hace más de una semana

Este artículo será útil para enviar datos a Ubidots a través de vNode mediante el protocolo HTTPS.

Requisitos

1. Creando un Módulo de Instancia RestApiClient

Una vez que vNode esté en funcionamiento en tu computadora, debes crear un módulo RestApiClient:

  • Abre vNode y dirígete a “Config” en la barra de navegación.

  • Haz clic en “Módulos” en la barra "Explorer" y crea un nuevo módulo RestApiClient.

Donde:

  • Pausar enlaces mientras no estén disponibles: Esta opción pausa la recepción de datos de otros vNode mientras el módulo está fuera de línea.

  • Inicio: Controla el comportamiento del módulo cuando los servicios de vNode se inician, incluyendo una opción de reinicio.

    • Habilitado: Se inicia automáticamente cuando los servicios de vNode comienzan.

    • Retraso de inicio: Controla el retraso en el inicio.

2. Crear una Etiqueta

Para enviar datos a Ubidots, es importante tener una etiqueta. Con esta etiqueta generamos una variable que contiene el valor, la marca de tiempo y el contexto que se enviará a Ubidots.

Puedes crear tantas etiquetas como variables desees enviar a Ubidots. En este caso, para organizarlas mejor, creamos un grupo de etiquetas llamado HTTP.

Para crear las etiquetas, haz clic en "Etiquetas":

  • Navega a “Config” en la barra de navegación.

  • Haz clic en “Etiquetas” en la barra "Explorer" y crea un nuevo grupo.

  • Haz clic derecho en el grupo que has creado y crea una nueva etiqueta.

Después de crear la etiqueta, habilita la simulación seleccionando “Sí” en la casilla, y configura con la siguiente información:

  • Fuente: Proporciona el valor, la calidad y la marca de tiempo de la etiqueta.

    • Habilitado: Sí (proporciona el valor, la calidad y la marca de tiempo de la etiqueta).

    • Tipo de módulo: RestApiClient. Módulo utilizado para obtener la información de la etiqueta.

    • Nombre del módulo: HTTP (el nombre del módulo utilizado para obtener la información de la etiqueta).

Nota: Puedes modificar el nombre del grupo, el nombre de la etiqueta y la escala de los valores como prefieras.

3. Configuración del Canal y la Solicitud

Después de crear el módulo RestApiClient, es necesario crear la conexión a un endpoint REST, que en este caso se conoce como "canal".

  • Haz clic en "Módulo HTTP", en la barra "Explorer", y luego crea un “Nuevo Canal” en la ventana del modelo.

Para configurar el canal para conectarse con Ubidots, es necesario modificar la siguiente información:

  • Conexión: Para realizar tu solicitud, puedes basarte en la siguiente tabla

Para más información sobre cómo realizar una solicitud con el protocolo HTTP/HTTPS a Ubidots, consulta este artículo.

  • Solicitudes: Representan la solicitud REST que se envía al servidor. En este caso, debes crear una nueva solicitud con la siguiente información:

  • Método: POST para ejecutar una solicitud REST POST.

  • Disparadores: La tasa de ejecución. Garantiza que la solicitud se ejecutará después de que haya pasado esta tasa.

    • Tasa de escaneo: 30000 milisegundos

    • Tipo: Tiempo fijo

    • Reprogramar temporizador: No

  • Parámetros: La lista de parámetros que estarán disponibles para todos los scripts en la solicitud. En este caso, usamos la etiqueta creada en el 2º paso (el nombre de la variable creada en Ubidots tomará el nombre del parámetro que configuramos).

  • Ruta: La porción restante de la URL que especifica el recurso que deseas consumir

    • Tipo: Texto plano

    • Texto: /api/v1.6/devices/<reemplazar con el dispositivo al que deseas enviar los datos>/

  • Encabezados: Definen los parámetros operativos de la solicitud HTTP.

    • Encabezados personalizados

      • Content-Type

        • Tipo: Texto sin formato

        • Valor: application/json

      • X-Auth-Token:

        • Texto sin formato

        • TOKEN de tu cuenta de Ubidots.

  • Cuerpo: El cuerpo es los datos enviados al servidor.

    • Formato del cuerpo:

      • Serialización: JSON

      • Codificación: UFT8

    • Serializador del cuerpo:

      • Tipo: Personalizado

      • Opciones:

        • Script: <javascript> Es el formato en el que Ubidots recibe datos.

          Nota: Para modificar el código JavaScript predeterminado, haz clic en el símbolo "</>" y pega el siguiente código:

    $.logger.info("Parsing message: %j", $.parameter);    const value = $.parameter.Current.value;    const timestamp = $.parameter.Current.ts;    const quality = $.parameter.Current.quality;    // Construye la respuesta con la estructura deseada    const response = {        [Object.keys($.parameter)[0]]: {            value: value,            timestamp: timestamp,            context: {                quality: quality            }        }    };    $.logger.info("Response: %j", response);    $.output = response;
  • Formato de respuesta: Decodifica el mensaje

    • Codificación: UFT8

    • Serialización: Texto

  • Analizador de respuesta:

    • Tipo: Personalizado

    • Opciones:

      • Script: <javascript>

        Nota: Para modificar el código JavaScript predeterminado, haz clic en el símbolo "</>" y pega el siguiente código:

    $.logger.info("Parsing message: %j", $.parameter);    const value = $.parameter.Current.value;    const timestamp = $.parameter.Current.ts;    const quality = $.parameter.Current.quality;    // Construye la respuesta con la estructura deseada    const response = {        [Object.keys($.parameter)[0]]: {            value: value,            timestamp: timestamp,            context: {                quality: quality            }        }    };    $.logger.info("Response: %j", response);    $.output = response;

4. Verificar si el módulo está funcionando

Una vez que hayas guardado todos los cambios de configuración, verificaremos que el módulo esté en funcionamiento. Sigue estos pasos:

Ve a "Sistema" en la barra de "Navegación" y haz clic en “Diagnósticos”.

  • Luego haz clic en “Módulos” y verifica si el módulo HTTP está en funcionamiento.

Después de confirmar que el módulo HTTP está en funcionamiento, procede con los siguientes pasos:

  • Ve a “Registros en tiempo real” en la barra "Explorer".

  • Activa la casilla de “Habilitado”.

  • Selecciona el nivel TRACE y el módulo HTTP para verificar la comunicación con Ubidots. Aquí puedes ver la información enviada a Ubidots.

La variable que se ha creado en el dispositivo que seleccionaste en el tercer paso en tu cuenta de Ubidots ahora se mostrará de la siguiente manera:

¿Ha quedado contestada tu pregunta?