Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Table of Contents

Introducción

El módulo Flow Engine es el motor de flujos que puede realizar ingesta de datos, y 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


INPUT
Anchor
tinput
tinput


INPUT

Nombre

Librería

Descripción

Documentación

Anchor
inject
inject
Nodo propio de Node-RED

Activa el flujo de forma manual o a intervalos regulares.

Node-RED documentos

Node-RED Cookbook

Catch

Anchor
catch
catch
Nodo propio de Node-RED

Captura errores lanzados por nodos en la misma pestaña.

Node-RED Cookbook

Status

Anchor
status
status
Nodo propio de Node-RED

Informa sobre mensajes de otros nodos en la misma pestaña.

Node-RED documentos

Link

Anchor
link
link
Nodo propio de Node-RED

Crea enlaces virtuales entre flujos.

Node-RED Blog

MQTT

Anchor
mqtt
mqtt
Nodo propio de Node-RED

Conecta a un MQTT broker y suscribe a los mensajes de un tema específico.

Node-RED Cookbook

HTTP

Anchor
http
http
Nodo propio de Node-RED

Crea un HTTP end-point para la creación de servicios web.

Node-RED Cookbook

WebSocket

Anchor
websocket
websocket
node-red-contrib-websocket

Nodo de entrada del WebSocket.

Node-RED

GitHub

TCP


Anchor
tcp
tcp
Anchor
udp
udp

node-red-bluemix-nodes

Proporciona entradas TCP. Se puede conectar a un puerto remoto o aceptar conexiones entrantes.


Node-RED

UDP

Nodo de entrada que produce un mensaje que contiene un buffer, string o string codificada.

Onesaitplatform API REST Operation


Anchor
operation
operation

Nodo propio de Onesait Platform


Crea un HTTP end-point para la creación de servicios web.



Onesait Platform Developer Portal (Api creation)


Onesaitplatform API REST

Anchor
apirest
apirest
Realiza una inserción de datos en la ontología deseada.

Onesaitplatform Notification Endpoint


Anchor
notification
notification
Nodo propio de Onesait Platform


Nodo de entrada para las notificaciones. 

Onesait Platform Developer Portal (Notification Endpoint)

TTN Event

Anchor
event
event

node-red-contrib-ttn

Recibe eventos procedentes de dispositivos conectados a The Things Network.

Node-RED

GitHub

The Things Network

TTN Uplink

Anchor
uplink
uplink
Recibe información de dispositivos conectados a The Things Network.

Stomp

Anchor
stomp
stomp
node-red-node-stomp


Conecta con un servidor Stomp para recibir mensajes.

Node-RED

Stomp

Stomp Spec

Pubnub

Anchor
pubnub
pubnub
node-red-contrib-pubnub


Se suscribe a un canal específico de PubNub y recibe su contenido.

Node-RED

GitHub

PubNub

OUTPUT
Anchor
toutput
toutput


OUTPUT

Anchor
t2
t2


Nombre

Librería

Descripción

Documentación

Debug

Anchor
debug
debug
Nodo propio de Node-RED

Monitoriza los mensajes dentro de un editor. Envía mensajes dentro de un editor para propósitos de debugado.

Node-RED documentos

Link

Anchor
linkout
linkout
Nodo propio de Node-RED

Crea enlaces virtuales entre flujos.

Node-RED Blog

MQTT

Anchor
mqttout
mqttout
Nodo propio de Node-RED

Conecta a un MQTT broker y se suscribe a mensajes de un tópico específico.

Node-RED Cookbook

HTTP Response

Anchor
httpresponse
httpresponse
Nodo propio de Node-RED

Envía respuestas de vuelta a peticiones recibidas de un nodo de entrada HTTP.

Node-RED Cookbook

WebSocket

Anchor
websocketwebsocketoutputwebsocket
websocketoutput
node-red-contrib-websocket

Nodo de salida del WebSocket.

Node-RED

GitHub

TCP

node-red-bluemix-nodes

Anchor
tcpout
tcpout
Proporciona opciones de salida TCP.



Node-RED

UDP

Anchor
udpout
udpout
Envía el mensaje correspondiente al host y al puerto UDP asignado.

Onesaitplatform API REST Operation Response


Nodo propio de Onesait Platform


Anchor
apioperation
apioperation
Envía respuestas de vuelta a peticiones recibidas de un nodo de entrada HTTP.

Onesait Platform Developer Portal (API creation)


TTN Downlink


node-red-contrib-ttn

Anchor
ttndownlink
ttndownlink
Envía información a un dispositivo conectado a The Things Network.

Node-RED

GitHub

The Things Network


Stomp


node-red-node-stomp

Anchor
stompout
stompout
Conecta con un servidor Stomp para enviar mensajes.

Node-RED

Stomp

Stomp Spec

Pubnub


node-red-contrib-pubnub

Anchor
puboutpubnuboutputpubout
pubnuboutput
Publica el mensaje en el canal especificado de PubNub.

Node-RED

GitHub

PubNub

FUNCTION

Anchor
websocketoutput
websocketoutput
FUNCTION
Anchor
tfunction
tfunction


FUNCTION

Nombre

Librería

Descripción

Documentación

Function


Nodo propio de Node-RED

Anchor
function
function
Función JavaScript que trabaja contra los mensajes recibidos por el nodo.

Node-RED documentos

Funciones

Template

Anchor
template
template
Fija unas propiedades basadas en la plantilla que se añada.

Node-RED documentos

Mustache Manual

Delay


Nodo propio de Node-RED

Anchor
delay
delay
Retrasa la entrada del mensaje en intervalos fijados.

Node-RED Cookbook

Trigger

Anchor
trigger
trigger
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.

Node-RED Cookbook

Comment

Nodo propio de Node-RED

Anchor
comment
comment
Permite introducir un comentario.


HTTP Request

Nodo propio de Node-RED

Anchor
httprequest
httprequest
Envía una petición HTTP y devuelve una respuesta.

Node-RED Cookbook

Mustache Manual

TCP Request

node-red-bluemix-nodes

Anchor
tcprequest
tcprequest
Conecta a un puerto remoto TCP y contesta los mensajes de un cliente de entrada.

Node-RED

GitHub

Switch







Nodo propio de Node-RED

Anchor
switch
switch
Enruta los mensajes en función de los valores de las propiedades o de su posición secuencial.

Node-RED documentos

Node-RED Cookbook

Change

Anchor
change
change
Añade, cambia, elimina o mueve propiedades de un mensaje. Se pueden especificar múltiples reglas, que se aplican en el orden definido.

Node-RED documentos

Node-RED Cookbook

JSONata

Range

Anchor
range
range
Escala de forma lineal el valor recibido.

Node-RED Cookbook

Split

Anchor
split
split
Divide un mensaje en una secuencia de mensajes. 

Node-RED Cookbook

Join

Anchor
join
join
Une una secuencia de mensajes en un único mensaje. La forma de unirlos puede ser automática, manual o de secuencia reducida.

Node-RED Cookbook

Sort

Anchor
sort
sort
Ordena una secuencia de mensajes o las propiedades de uno solo.

Node-RED Documentos

Batch

Anchor
batch
batch
Crea secuencias de mensajes basadas en diferentes reglas tales como: número de mensajes, intervalos de tiempo y secuencias concatenadas.

Node-RED Documentos

CSV






Nodo propio de Node-RED

Anchor
csv
csv
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.

Node-RED Cookbook (Input)

Node-RED Cookbook (Output)

HTML

Anchor
html
html
Extrae elementos desde un documento html usando un CSS selector.

Node-RED Cookbook

Selectores

JSON

Anchor
json
json
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.

Node-RED Cookbook

JSON schema

XML

Anchor
xml
xml
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.

Node-RED Cookbook

YAML

Anchor
yaml
yaml
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.

Node-RED Cookbook

Onesaitplatform REST API Invoker


Nodo propio de Onesait Platform


Anchor
invoker
invoker
Invoca una operación de un API REST desde Plataforma.


Onesait Platform Developor Portal (API Invocation)

Onesaitplatform DigitalTwin Action



Nodo propio de Onesait Platform

Anchor
action
action
Transforma cualquier mensaje en una acción para un Digital Twin.


Onesait Platform Developer Portal (Digital Twin)

Onesaitplatform DigitalTwin

Anchor
digitaltwin
digitaltwin
Representa un Digital Twin de la Plataforma.

Onesaitplatform Firebase Notification

Nodo propio de Onesait Platform

Anchor
notificationfirebasenotificationnotification
firebasenotification
Nodo con integración en Firebase para el desarrollo de aplicaciones web y móviles.

Onesait Platform Developer Portal (firebase notification)

Onesaitplatform Insert


Nodo propio de Onesait Platform

Anchor
insert
insert
Inserta valores en una ontología.

Onesait Platform Developer Portal (Load Data)

Onesaitplatform Mail

Nodo propio de Onesait Platform

Anchor
mail
mail
Nodo que se encarga del envío de mails.

Onesait Platform Developer Portal (mail)

Onesaitplatform Query Dynamic



Nodo propio de Onesait Platform

Anchor
dynamic
dynamic
Realiza una query de bases dinámicas.


Onesait Platform Developer Portal (query static & query dynamic)

Onesaitplatform Query Static

Anchor
static
static
Realiza una query de bases estáticas.

Encrypt






node-red-contrib-crypto-js







Anchor
encrypt
encrypt
Encripta el mensaje usando un algoritmo determinado.




Node-RED

GitHub

Decrypt

Anchor
decrypt
decrypt
Desencripta el mensaje a través de un algoritmo determinado.

HMAC

Anchor
hmac
hmac
Crea un código de autentificación de mensajes en clave-hash.

Digest

Anchor
digest
digest
Genera un mensaje encriptado mediante un algoritmo específico.

Encode

Anchor
encode
encode
Codifica la información usando un conjunto de caracteres específicos.

Decode

Anchor
decode
decode
Decodifica la información usando un conjunto de caracteres específicos. Genera un array de palabras.


RBE


node-red-node-rbe

Anchor
rbe
rbe
Proporciona informes en caso de que se produzca una excepción. No enviará información a no ser que los datos hayan cambiado. Funciona tanto con números como con strings.

Node-RED

Node-RED Cookbook

GitHub


File Function



node-red-contrib-file-function

Anchor
file
file
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-RED Funciones

GitHub

Soap Request

node-red-contrib-soap

Anchor
soap
soap
Permite al usuario enviar una petición SOAP. Será necesario crear una nueva configuración. Es importante introducir el nombre de método de forma correcta.

Node-RED

GitHub

SOCIAL
Anchor

soap

tsocial

soapSOCIAL

tsocial

Anchor
t4
t4
SOCIAL

Nombre

Librería

Descripción

Documentación

Email


node-red-node-email

Anchor
emailin
emailin
Permite recibir periódicamente emails mediante el protocolo IMAP. Los archivos añadidos al mail son tratados mediante un array de objetos donde cada objeto representa un adjunto. Se puede elegir el tiempo de actualización de datos.

Node-RED

GitHub

Twitter


node-red-node-twitter

Anchor
twitterin
twitterin
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

GitHub

Twitter Docs

Email2

node-red-node-email

Anchor
emailout
emailout
Ofrece la posibilidad de enviar emails. Se pueden enviar archivos adjuntos, que estarán contenidos en un array en formato nodemailer. 

Node-RED

GitHub

Nodemailer

Twitter2


node-red-node-twitter

Anchor
twitterout
twitterout
Posibilita el envío de tweets y mensajes directos.

Node-RED

GitHub

Twitter Docs

Instagram



node-red-node-instagram

Anchor
instagramin
instagramin
Consigue fotos de Instagram actualizando la cuenta del usuario cada 15 minutos. Cada mensaje enviado contiene una única foto. Si los metadatos están disponibles, se puede obtener la localización y el tiempo de la captura de la foto.


Node-RED

GitHub


Instagram2

Anchor
instagramout
instagramout
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
Anchor
tstorage
tstorage

STORAGE

Anchor
t5
t5

Nombre

Librería

Descripción

Documentación

Tail

node-red-node-tail

Anchor
tail
tail
Inyecta contenidos de un archivo en el flujo. Únicamente puede ser usado en Linux/Mac.

Node-RED

GitHub

File


node-red-contrib-file-function



Anchor
filein
filein
Lee los contenidos de un fichero pasado como string o como binary buffer.


Node-RED

File2

Anchor
fileout
fileout
Escribe un archivo, añadiendo o reemplazando el contenid o existente. Puede usarse para borrar el documento.

ANALYSIS
Anchor
tanalysis
tanalysis


ANALYSIS

Nombre

Librería

Descripción

Documentación


Sentiment


node-red-node-sentiment

Anchor
sentiment
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.

Node-RED

GitHub

Sentiment

ADVANCED
Anchor
tadvanced
tadvanced


ADVANCED

Nombre

Librería

Descripción

Documentación

Watch


Anchor
watch
watch
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.


Feed Parse

node-red-node-feedparser

Anchor
parse
parse
Monitoriza el RSS o Atom feed de una web para dar información actualizada. Por defecto, se hace una petición de información cada 15 minutos.

Node-RED

GitHub

Exec


Anchor
exec
exec
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
Anchor
traspberrypi
traspberrypi


RASPBERRY PI

Nombre

Librería

Descripción

Documentación

RPI GPIO






node-red-node-pi-gpio





Anchor
gpioin
gpioin
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.



Node-RED

GitHub

Raspberry Pi

RPI GPIO2

Anchor
gpioout
gpioout
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.

RPI Mouse

Anchor
mouse
mouse
Detecta los botones de un ratón. Requiere que el uso del mismo sea por USB.

RPI Keyboard

Anchor
keyboard
keyboard
Detecta las pulsaciones del teclado. Es necesario que dicho teclado sea con conexión USB.

WEATHER
Anchor
tweather
tweather


WEATHER

Nombre

Librería

Descripción

Documentación

Open Weather


node-red-node-openweathermap



Anchor
map
map
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.


Node-RED

Openweather API


Open Weather2

Anchor
mapin
mapin
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
Anchor
tutilities
tutilities


UTILITIES

Nombre

Librería

Descripción

Documentación

UUID

node-red-contrib-uuid

Anchor
uuid
uuid
Genera de diferentes maneras un identificador único universal.

Node-RED 

SPREADSHEET
Anchor
tspreadsheet
tspreadsheet


SPREADSHEET

Nombre

Librería

Descripción

Documentación

Book






node-red-contrib-spreadsheet-in





Anchor
book
book
Transforma los contenidos de una hoja de cálculos a un objeto de trabajo.


Node-RED

GitHub

Sheet JS

Sheet

Anchor
sheet
sheet
Selecciona un objeto de hoja de un objeto de trabajo.


Cell

Anchor
cell
cell
Selecciona el valor de una celda de una hoja.

Node-RED

GitHub

Sheet JS

Cell Objects

Sheet to JSON

Anchor
sheetjson
sheetjson
Transforma el objeto hoja en un array de objetos JSON

Node-RED

GitHub

Sheet JS

ONESAIT PLATFORM DATAFLOWS
Anchor
tonesaitplatformdataflows
tonesaitplatformdataflows


SPREADSHEET

Anchor
t12
t12


Nombre

Librería

Descripción

Documentación






Nodo propio de Onesait Platform





Anchor
startdataflow
startdataflow
Inicia la ejecución de un DataFlow en la plataforma.


Onesait Platform Developer Portal (Start dataflow)

Anchor
stopdataflow
stopdataflow
Detiene la ejecución de un DataFlow en la plataforma.

Onesait Platform Developer Portal (Stop dataflow)

Anchor
checkdataflowstatus
checkdataflowstatus
Comprueba el estado en el que se encuentra un DataFlow en la plataforma.

Onesait Platform Developer Portal (Check dataflow status)