Table of Contents |
---|
Introducción
El módulo Flow Engine es el motor de flujos que puede realizar ingesta de datos, está construido mediante la herramienta de programación Node-RED con la que se puede conectar tanto dispositivos hardware, APIs como servicios online. Una de las ventajas del uso de flujos creados a través de Node-Red reside en que la información queda almacenada en formato JSON, el cual es fácilmente importable y exportable.
Para crear los flujos mediante Node-RED se hace uso de las unidades individuales denominadas nodos, y la conexión entre estos nodos resulta sencilla e intuitiva. En el visor de la herramienta se puede encontrar una descripción del nodo, sus inputs y outputs. A continuación, se exponen los nodos que se han incorporado al módulo de Flow Engine de la plataforma junto con la librería a que corresponden, una pequeña descripción y la documentación relativa oficial.
Lista de Componentes
Output
Storage
Raspberry Pi
Utilities
Weather
Onesait Platform Dataflows
Start Dataflow
Stop Dataflow
Check Dataflow Status
INPUT
|
---|
Nombre | Librería | Descripción | Documentación |
Nodo propio de Node-RED | Activa el flujo de forma manual o a intervalos regulares. |
Nodo propio de Node-RED | Captura errores lanzados por nodos en la misma pestaña. |
Nodo propio de Node-RED | Informa sobre mensajes de otros nodos en la misma pestaña. |
Nodo propio de Node-RED | Crea cables virtuales entre flujos. |
Nodo propio de Node-RED | Conecta a un MQTT broker y suscribe los mensajes de un tema específico. |
Nodo propio de Node-RED | Crea un HTTP end-point para la creación de servicios web. |
node-red-bluemix-nodes | Proporciona entradas TCP, se puede conectar a un puerto remoto o aceptar conexiones entrantes. |
Nodo de entrada que produce un mensaje que contiene un buffer, string o string codificada. |
Nodo propio de Onesait Platform | Crea un HTTP end-point para la creación de servicios web. |
Realiza una inserción de datos en la ontología deseada. |
Nodo propio de Onesait Platform | Nodo de entrada para las notificaciones. |
node-red-contrib-ttn | Recibe eventos procedentes de dispositivos conectados a The Things Network. |
Recibe información de dispositivos conectados a The Things Network. |
node-red-node-stomp | Conecta con un servidor Stomp para recibir mensajes. |
Nodo propio de Node-RED | Monitoriza los mensajes dentro de un editor. |
Nodo propio de Node-RED | Crea cables virtuales entre flujos. |
Nodo propio de Node-RED | Conecta a un MQTT broker y publica mensajes |
Nodo propio de Node-RED | Envía respuestas de vuelta a peticiones recibidas de un nodo de entrada HTTP. |
node-red-bluemix-nodes | Proporciona opciones de salida TCP. |
node-red-bluemix-nodes | Se encarga de enviar al host y al puerto UDP asignado el mensaje correspondiente. |
Nodo propio de Onesait Platform | Envía respuestas de vuelta a peticiones recibidas de un nodo de entrada HTTP |
node-red-contrib-ttn | Envía información a un dispositivo conectado a The Things Network |
node-red-node-stomp | Conecta con un servidor Stomp para enviar mensajes. |
FUNCTION | |||
---|---|---|---|
Nombre | Librería | Descripción | Documentación |
Nodo propio de Node-RED | Función JavaScript contra los mensajes recibidos por el nodo. |
Fija unas propiedades basadas en la plantilla que se añada. |
Nodo propio de Node-RED | Retrasa la entrada del mensaje en intervalos fijados. |
Crea un timeout dentro del flujo de forma que se envíe un primer mensaje y de forma opcional un segundo en función del valor elegido. |
Nodo propio de Node-RED | Permite introducir un comentario. |
Nodo propio de Node-RED | Envía una petición HTTP y devuelve una respuesta. |
Nodo propio de Node-RED | Enruta los mensajes en función de los valores de las propiedades o de su posición secuencial. |
Añade, cambia, elimina o mueve propiedades de un mensaje. Se pueden especificar múltiples reglas que se aplican en el orden definido. |
Escala de forma lineal el valor recibido. |
Divide un mensaje en una secuencia de mensajes. |
Une una secuencia de mensajes en un único mensaje. La forma de unirlos puede ser automática, manual o de secuencia reducida. |
Ordena una secuencia de mensajes o las propiedades de uno solo. |
Crea secuencias de mensajes basadas en diferentes reglas tales como: número de mensajes, intervalos de tiempo y secuencias concatenadas. |
Nodo propio de Node-RED | Realiza la conversión entre el formato CSV y el objeto JavaScript que lo representa. El proceso puede realizarse en cualquiera de las dos direcciones. |
Extrae elementos desde un documento html usando un CSS selector. |
Realiza la conversión entre el formato JSON y el objeto JavaScript que lo representa. El proceso puede realizarse en cualquiera de las dos direcciones. |
Realiza la conversión entre el formato XML y el objeto JavaScript que lo representa. El proceso puede realizarse en cualquiera de las dos direcciones. |
Realiza la conversión entre el formato YAML y el objeto JavaScript que lo representa. El proceso puede realizarse en cualquiera de las dos direcciones. |
Nodo propio de Onesait Platform | Invoca una operación de un API REST desde Plataforma. |
| Transforma cualquier mensaje en una acción para un Digital Twin. |
Representa un Digital Twin de la Plataforma. |
Nodo propio de Onesait Platform | Nodo con integración en Firebase para el desarrollo de aplicaciones web y móviles. |
Nodo propio de Onesait Platform | Inserta valores en una ontología. |
Nodo propio de Onesait Platform | Nodo que se encarga del envío de mails. |
Nodo propio de Onesait Platform | Realiza una query de bases dinámicas. | Onesait Platform Developer Portal (query static & query dynamic) |
Realiza una query de bases estáticas. |
Desencripta el mensaje a través de un algoritmo |
determinado. | |
Crea un código de autentificación de mensajes en clave-hash. |
Genera un mensaje encriptado mediante un algoritmo específico. |
Codifica la información usando un conjunto de caracteres específicos. |
Decodifica la información usando un conjunto de caracteres específicos. Genera un array de palabras. |
node-red-node-rbe | Proporciona informes en caso de que se produzca una excepción. No enviará información a no ser que los datos hayan cambiado y funciona tanto con números como con strings. |
node-red-contrib-file-function | Este nodo carga el script para ser ejecutado desde un documento actual en el disco. Es la misma funcionalidad que el nodo "function" mejorada. |
node-red-node-twitter | Puede ser usado para buscar tweets con un término determinado, obtener todos los tweets por usuario o para visualizar los mensajes directos recibidos de un usuario autenticado. |
node-red-node-email | Ofrece la posibilidad de enviar emails. Se pueden enviar archivos adjuntos, éstos estarán contenidos en un array en formato nodemailer. |
node-red-node-twitter | Posibilita el envío de tweets y mensajes directos. |
Revisa el contenido de Instagram cada vez que el usuario recibe un mensaje. Cada mensaje irá acompañado de una sola foto; si los metadatos están operativos, se puede hacer una captura de la localización espacial y temporal. |
STORAGE
STORAGE
| |||||||||
---|---|---|---|---|---|---|---|---|---|
Nombre | Librería | Descripción | Documentación |
node-red-contrib-file-function | Lee los contenidos de un fichero pasado como string o como binary buffer. |
Escribe un archivo, añadiendo o reemplazando el contenido existente. Puede usarse para borrar el documento. |
ANALYSIS
|
---|
Nombre | Librería | Descripción | Documentación |
node-red-node-sentiment | Permite hacer una puntuación de sentimiento, de forma positiva o negativa, en un mensaje que le pasemos. Para ello, analiza las palabras que se introducen mediante el AFINN-165. Habitualmente las puntuaciones van de -5 a 5, una puntuación por encima del cero es positiva y por debajo negativa. |
ADVANCED
|
---|
Nombre | Librería | Descripción | Documentación |
El nodo permite buscar cambios en un directorio o un archivo. Se puede realizar una búsqueda múltiple añadiendo comas para separar los documentos o direcciones. |
Permite introducir una línea de comando en un segundo plano del Pi que funciona como si se comunicara directamente con él. El nodo puede configurarse para que lance el output una vez finalizado el comando o de forma que se vaya generando. |
RASPBERRY PI
|
---|
Nombre | Librería | Descripción | Documentación |
node-red-node-pi-gpio | Utilizado para establecer la conexión con los pins de GPIO en la Raspberry Pi. Genera 0 o 1 dependiendo del estado del pin en el input. |
Nodo de salida, puede ser usado en modos digitales o PWM. En el primer caso se fijan valores de 0 o 1 mientras que en el segundo van de 0 a 100. |
Detecta los botones de un ratón, requiere que el uso del mismo sea por USB |
Detecta las pulsaciones del teclado, es necesario que dicho teclado sea con conexión USB. |
WEATHER
|
---|
Nombre | Librería | Descripción |
Documentación | |||
node-red-node-openweathermap | Realiza un sondeo de los datos de la web openweathermap.org y establece un pronóstico de 5 días que se incluye en un array. Es necesario usar una API Key. |
Realiza un sondeo periódico de los datos de openweathermap.org y genera un pronóstico de 5 días siempre que exista un cambio en la información. Es necesario usar una API Key. |
UTILITIES
|
---|
Nombre | Librería | Descripción | Documentación |
node-red-contrib-uuid | Genera de diferentes maneras un identificador único universal |
SPREADSHEET
|
---|
Nombre | Librería | Descripción | Documentación |
Selecciona un objeto de hoja de un objeto de trabajo. |
Selecciona el valor de una celda de una hoja. |
Nodo propio de Onesait Platform | Inicia la ejecución de un DataFlow en la plataforma | |||||
|
Para la ejecución de un DataFlow en la plataforma | ||||||
|
Comprueba el estado en el que se encuentra un DataFlow en la plataforma |