Ir al contenido principal
Todas las coleccionesGuías de usuario
Eventos: Acción de funciones de partículas
Eventos: Acción de funciones de partículas

Aprende a activar funciones de Particle desde el motor de Eventos impulsado por datos de Ubidots.

David Sepúlveda avatar
Escrito por David Sepúlveda
Actualizado hace más de 3 meses

Particle permite que los dispositivos expongan funciones personalizadas a través de su nube para que puedan ser activadas con una llamada a la API. Con Particle.function, el código en el dispositivo puede ejecutarse cuando se solicita desde la API de la nube. Normalmente, haces esto cuando quieres controlar algo en tu dispositivo, como una pantalla LCD o un zumbador, o controlar características en tu firmware desde la nube.

Junto con el motor de Eventos de Ubidots y las funciones de Particle, es posible ejecutar código bajo demanda, basado en condiciones de variables complejas o de forma semanal, en tus dispositivos.

En este artículo, aprenderás cómo activar funciones de Particle registradas por tus dispositivos en la nube de Particle utilizando los Eventos de Ubidots.

NOTA: Si aún no estás familiarizado con las funciones de Particle, te recomendamos consultar su documentación aquí antes de leer este artículo.

A pesar de que la acción nativa "funciones de Particle" ya no está disponible en nuestro módulo de Eventos de Ubidots, se pueden lograr los mismos resultados utilizando la acción "Activar webhook", como se explica en este artículo.

Requisitos

  1. Cuenta de Ubidots, de pago o prueba.

  2. Cuenta de Particle y dispositivo registrado.

1. Crear un token de Particle

Para activar funciones de Particle desde el motor de Eventos de Ubidots, primero es necesario generar un token de Particle que permita interactuar con su API. Esto solo es posible utilizando la CLI de Particle.

NOTA: Si aún no lo has instalado, sigue los pasos que se encuentran aquí, según tu sistema operativo.

Paso 1: Abre una terminal y ejecuta el comando particle login

Paso 2: Ingresa la dirección de correo electrónico y la contraseña de tu cuenta de Particle.

Paso 3: Ejecuta el comando particle token create --never-expires. Necesitarás ingresar la dirección de correo electrónico y la contraseña nuevamente.

Paso 4: Copia y guarda este token. Lo necesitarás más tarde.

2. Cargar código en el dispositivo Particle

Vamos a cargar un código de prueba en tu dispositivo Particle para probar la acción más adelante.

Paso 1: Ve al IDE web de Particle.

Paso 2: Crea una nueva aplicación y nómbrala a tu gusto.
Paso 3: Copia y pega el siguiente código.

int switchBuiltinLed(String command);int led = D7; // LED incorporado/***************************************** Funciones Auxiliares****************************************/int switchBuiltinLed(String command) {// buscar el argumento coincidente "ON"    if (command == "ON") {        digitalWrite(led, HIGH);        return 1;    }    // buscar el argumento coincidente "OFF"    else if (command == "OFF") {        digitalWrite(led, LOW);        return 1;}    return -1;}/***************************************** Funciones Principales****************************************/void setup() {    Particle.function("Switch", switchBuiltinLed);    pinMode(led, OUTPUT);}void loop() {}

NOTA: Un proceso de devolución de llamada de función necesita devolver lo más rápido posible, de lo contrario, la llamada a la nube se agotará.

Paso 4: Carga el código.

NOTA: Se pueden registrar hasta 15 funciones en la nube y cada nombre de función está limitado a un máximo de 12 caracteres (antes de la versión 0.8.0 del firmware de Particle) o 64 caracteres (desde la versión 0.8.0 del firmware de Particle).

3. Crear un Evento

Sigue los pasos a continuación para configurar un evento:

Paso 1: Dirígete a "Datos" → "Eventos" y haz clic en el botón “+”.
Paso 2: Configura la lógica del Evento utilizando operadores AND (“+ agregar desencadenador”)/OR (“+ agregar grupo OR”).

Paso 3: Una vez que la lógica del Evento esté definida, haz clic en "siguiente" y pasa a la siguiente sección de esta guía.

Basaremos el ejemplo de esta guía en la lógica representada en la imagen a continuación:

NOTA: Para obtener más detalles sobre cómo configurar desencadenadores de Eventos condicionales y complejos, consulta nuestra guía de usuario Creando Eventos y Alertas Condicionales.​

4. Configurar la acción del Evento

Una vez en la pestaña "acciones" de la configuración del Evento, sigue los pasos a continuación para configurar la acción para enviar datos a tu dispositivo Particle:

Para interactuar con nuestro dispositivo Particle, utilizaremos la acción "Activar webhook".

Paso 1: Haz clic en "+ agregar acción".
Paso 2: Selecciona la opción "Activar webhook".

Paso 3: Completa todos los campos de la acción de la siguiente manera:

  • Método HTTP: Post.

  • URL: https://api.particle.io/v1/devices/:deviceId/:functionName.

    Asegúrate de reemplazar ":deviceId" con la etiqueta de tu dispositivo Ubidots (esto se puede hacer fácilmente utilizando el "marcador" que se muestra en la imagen a continuación); la etiqueta del dispositivo de Ubidots representa el ID de tu dispositivo Particle. También reemplaza ":functionName" con el nombre de tu función de Particle (en nuestro ejemplo es "Switch").

  • Encabezados: Deja el encabezado predeterminado sin cambios y agrega otro haciendo clic en el botón "+ agregar encabezado". Realiza los siguientes cambios en ese encabezado:

    • Primer campo de texto: Elimina el texto predeterminado y, en su lugar, escribe Authorization

    • Segundo campo de texto: Elimina el texto predeterminado y, en su lugar, escribe "Bearer " seguido de tu token de Particle (el que generaste en la primera sección de esta guía).
      Debería verse como "Bearer <YOUR_TOKEN>".

  • Carga útil: Elimina el contenido predeterminado y, en su lugar, ingresa un objeto JSON con la clave "arg" y cualquier cadena como su valor. En nuestro ejemplo, utilizaremos este {"arg": "ON"}

  • Ahora configura la carga útil JSON de “volver a la normalidad”. Para nuestro ejemplo, utilizamos {"arg": "OFF"} aquí.

  • Opcionalmente, habilita la opción “repetir acción” si deseas repetir la acción varias veces mientras se activa el evento. Puedes elegir con qué frecuencia y hasta cuántas veces se repetirá la acción. Hay un límite de 50 repeticiones de acción.

Paso 4: Haz clic en el botón "guardar".

Paso 5: ​Después de completar la configuración de la acción, procederás al paso final, la pestaña “configuración”. Allí, nombrarás el evento, darás una descripción del evento (opcional), lo etiquetarás (opcional) y determinarás la ventana de actividad en la que se debe ejecutar el evento.

5. Resultados

Ahora, con el dispositivo Particle ejecutando el firmware de la sección 2 y el Evento creado con la acción Activar webhook correctamente configurado, es hora de probar todo. Para esto, estamos utilizando un widget de Switch para activar el evento y, por lo tanto, encender y apagar el LED incorporado del dispositivo Particle:

El dispositivo Particle encenderá y apagará su LED incorporado en consecuencia:

¿Ha quedado contestada tu pregunta?