HowTo: Node Red - Enviar correo electrónico sobre eventos

El correo electrónico es (creo) uno de los medios de comunicación más antiguos de Internet. En el sector del hogar inteligente, sin embargo, no desempeñan un papel importante. A menudo se prefieren los servicios push -como Pushbullet- o directamente MQTT para un intercambio de datos rápido y directo.

En algunos casos, sin embargo, puede ser práctico enviar un correo electrónico desde NodeRed. Por ejemplo, podría utilizar este método para enviar un informe de estado mensual como resumen mensual a su propia bandeja de entrada de correo electrónico.
O puedes enviarte a ti mismo el parte meteorológico actual cada día. Las posibilidades son casi ilimitadas. Si tienes algún otro uso útil, no dudes en publicar un comentario con tu idea 🙂 .

En el siguiente artículo se explica cómo puede enviar por correo electrónico el parte meteorológico actual en respuesta a un suceso.


Instrucciones de seguridad

Sé que las siguientes notas siempre son un poco molestas y parecen innecesarias. Desafortunadamente, muchas personas que sabían "mejor" han perdido ojos, dedos u otras cosas debido a un descuido o se lesionaron. La pérdida de datos es casi insignificante en comparación, pero incluso estos pueden ser realmente molestos. Por lo tanto, tómese cinco minutos para leer las instrucciones de seguridad. Porque incluso el proyecto más genial no vale la pena lesionarse u otros problemas.
https://www.nerdiy.de/sicherheitshinweise/

Enlaces afiliados / enlaces publicitarios

Los enlaces a las tiendas en línea enumerados aquí son los llamados enlaces de afiliados. Si hace clic en dicho enlace de afiliado y realiza una compra a través de este enlace, Nerdiy.de recibirá una comisión de la tienda en línea o el proveedor correspondiente. El precio no cambia para usted. Si realiza sus compras a través de estos enlaces, ayuda a Nerdiy.de a poder ofrecer otros proyectos útiles en el futuro. 🙂 


Requisitos

Artículos útiles:
Para que pueda aceptar esta configuración, por supuesto, NodeRed ya debería estar instalado.
En los siguientes artículos se describe cómo preparar una RaspberryPi y luego instalar NodeRed en ella.

Los siguientes artículos describen lo que se debe hacer para preparar la RaspberryPi:
RaspberryPi: ¡configuración para nerdiys!
RaspberryPi – ¡La primera configuración!
RaspberryPi: controle el RaspberryPi a través de SSH
NodeRed: instalación de NodeRed en RaspberryPi
NodeRed – Instalar nuevos nodos

NodeRed - Obtener datos meteorológicos actuales de OpenWeatherMap

Herramienta requerida:
-No-

Material requerido:

En la siguiente lista encontrará todas las piezas que necesita para implementar este artículo.


Inicie sesión en la interfaz de configuración de NodeRed

Antes de que pueda editar su configuración de NodeRed, debe, si está activado, primero iniciar sesión en la interfaz de configuración de NodeRed.

Vista del cuadro de diálogo de inicio de sesión. Aquí debe ingresar los datos de inicio de sesión que especificó durante la configuración del inicio de sesión. Puedes encontrar información al respecto en el artículo NodeRed: configurar el inicio de sesión del usuario.

Preparar el nodo openWeatherMap

Para poder recoger previamente los datos que se enviarán por correo electrónico, debe haber instalado el nodo openWeatherMap en su configuración de NodeRed. Los pasos para ello se describen en el artículo NodeRed - Obtener datos meteorológicos actuales de OpenWeatherMap descrito.


Ejemplo de código de nodo: recibir los datos meteorológicos actuales por correo electrónico

Para este ejemplo, no necesitas más nodos que los instalados por defecto. Para adoptar la configuración, sólo tiene que importar el código del nodo siguiente a su configuración. Cómo hacerlo se describe en el artículo NodeRed – Instalar nuevos nodos explicado.

Después de haber importado el código de los nodos, aún tienes que añadir algunas configuraciones de los nodos individuales.

Vista de la configuración del nodo en el editor.

 Código de nodo:

[{"id":"3aab8493.0bc2fc","type":"e-mail","z":"550c7bf5.5c03e4","server":"mail.gmx.net","port":"465","secure":true,"name":"info@test.de","dname":"sendEmail","x":1050,"y":380,"wires":[]},{"id":"51ae2d16.38b7a4","type":"change","z":"550c7bf5.5c03e4","name":"tempConvert","rules":[{"t":"set","p":"data.main.temp","pt":"msg","to":"data.main.temp-273.15","tot":"jsonata"},{"t":"set","p":"data.main.temp_min","pt":"msg","to":"data.main.temp_min-273.15","tot":"jsonata"},{"t":"set","p":"data.main.temp_max","pt":"msg","to":"data.main.temp_max-273.15","tot":"jsonata"},{"t":"set","p":"title","pt":"msg","to":"Aktueller Wetterbericht","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":670,"y":380,"wires":[["41a940d8.99eb7"]]},{"id":"ca0b22a9.c0272","type":"json","z":"550c7bf5.5c03e4","name":"","property":"payload","action":"","pretty":false,"x":510,"y":380,"wires":[["51ae2d16.38b7a4"]]},{"id":"a7dc889e.b097a8","type":"inject","z":"550c7bf5.5c03e4","name":"request data","topic":"","payload":"","payloadType":"date","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":150,"y":440,"wires":[["9e4b2651.4217b8"]]},{"id":"9e4b2651.4217b8","type":"openweathermap","z":"550c7bf5.5c03e4","name":"","wtype":"current","lon":"","lat":"","city":"Bochum","country":"Germany","language":"de","x":350,"y":440,"wires":[["ca0b22a9.c0272"]]},{"id":"314b9fd1.5d28e","type":"openweathermap in","z":"550c7bf5.5c03e4","name":"","wtype":"current","lon":"","lat":"","city":"Bochum","country":"Germany","language":"de","x":160,"y":380,"wires":[["ca0b22a9.c0272"]]},{"id":"41a940d8.99eb7","type":"template","z":"550c7bf5.5c03e4","name":"mailTemplate","field":"payload","fieldType":"msg","format":"handlebars","syntax":"mustache","template":"Hallo lieber E-Mail-Empfänger,
aquí tienes los últimos datos meteorológicos de {{time}} para {{data.name}}.
Temperatura: {{data.main.temp}}°C,
Temperatura mínima {{data.main.temp_min}}°C,
Temperatura máxima {{data.main.temp_max}}°C,
Humedad {{data.main.humidity}}%,
presión barométrica: {{data.main.pressure}}mmHg,
velocidad del viento: {{data.wind.speed}},
dirección del viento: {{data.wind.deg}}°

Saludos cordiales
Tu NodoRojo

","output":"str","x":850,"y":380,"wires":[["d81ba695.75a538","3aab8493.0bc2fc"]]},{"id":"d81ba695.75a538","type":"debug","z":"550c7bf5.5c03e4", "name": "rawData", "active":true, "tosidebar":true, "console":false, "tostatus":false, "complete": "true", "x":1040, "y":320, "wires":[]}]
Para que este ejemplo funcione, debe editar el nodo de correo electrónico. Allí aún deberá introducir los datos del servidor de su servidor de correo electrónico. Para hacer esto, ingrese la URL de su servidor SMTP en "Servidor", el nombre de usuario correspondiente en "UserId" y la contraseña correspondiente en "Contraseña". Por último, pero no menos importante, debe ingresar el correo electrónico del destinatario al que se debe enviar el correo electrónico en la primera línea debajo de "Para".
En el nodo de plantillas, puede editar el texto enviado por correo electrónico y adaptarlo a sus deseos.
En el nodo de cambio también puedes editar el asunto del correo electrónico. En la última línea, se establece la variable "Msg.title", cuyo contenido se utiliza como asunto en el nodo de correo electrónico.

Diviértete con el proyecto.

Espero que todo te haya funcionado como se describe. Si no es así, o si tiene alguna pregunta o sugerencia, hágamelo saber en los comentarios. Si es necesario, lo añadiré al artículo.
Las ideas para nuevos proyectos siempre son bienvenidas. 🙂

PS Muchos de estos proyectos, especialmente los proyectos de hardware, cuestan mucho tiempo y dinero. Por supuesto que hago esto porque lo disfruto, pero si crees que es genial que comparta la información contigo, me encantaría hacer una pequeña donación al fondo del café. 🙂

Cómprame un café en ko-fi.com       

8s comentarios

  1. Hola 🙂

    ¿Qué pasa si, por ejemplo, quiero recibir un correo electrónico cuando un interruptor esté activo? Recibo una cantidad infinita de correos electrónicos, creo que proviene de la marca de tiempo o algo así.

    soy un novato absoluto

    saludos fabián

    1. Hola Fabián,
      déjame adivinar, usaste un nodo de inyección, que verifica cada segundo si el interruptor está activado y, de ser así, envía un correo. 🙂
      Sería mejor publicar el código desde la ubicación relevante aquí, entonces puedo entenderlo mejor. 🙂
      Pero si quieres experimentar un poco: puedes construir un "bloqueo de estado" usando dos bloques de "disparador".
      Puede encontrar un ejemplo en el que ya he usado esto en el código para la detección de presencia usando FritzBox: https://nerdiy.de/nodered-fritzbox-anwesenheitserkennung-mit-der-fritzbox/
      Este bloqueo significa que el mensaje entrante sólo se reenvía si cambia el estado. En última instancia, sólo desea enviar un correo electrónico en el momento en que cambia el interruptor de "Apagado" a "Encendido". 🙂
      Espero que esto te ayude. De lo contrario, no dude en publicar su código aquí y "construiré una solución". 🙂

      Atentamente
      Fabian

  2. hola fabián
    Gracias por su señal de comentarios.

    Aquí está el código 😀

    LG fabián

    [
    {
    “id”: “1c51458d.3afefa”,
    “tipo”: “ds18b20”,
    “z”: “57ba4cc7.5cb3f4”,
    "Apellido": "",
    “sensoride”: “28-03139779ce96”,
    “temporizador”: “0,1”,
    “x”: 170,
    “y”: 760,
    “cables”: [
    [
    “54a48697.1af1a8”
    ]
    ]
    },
    {
    “identificación”: “54a48697.1af1a8”,
    “tipo”: “calculadora”,
    “z”: “57ba4cc7.5cb3f4”,
    "Apellido": "",
    “inputMsgField”: “carga útil”,
    “outputMsgField”: “carga útil”,
    “operación”: “suma”,
    “constante”: “2,4”,
    “redondo”: falso,
    “decimales”: 0,
    “x”: 370,
    “y”: 760,
    “cables”: [
    [
    “b8f5c9e0.476758”,
    “14be39f2.c942c6”,
    “5e74354.53e37cc”,
    “3a997c58.458334”,
    “9015895f.473e48”,
    “b31c2c33.6dfc8”,
    “e667a58a.f5bae8”
    ]
    ]
    },
    {
    “identificación”: “b8f5c9e0.476758”,
    “tipo”: “plantilla”,
    “z”: “57ba4cc7.5cb3f4”,
    “nombre”: “opciones”,
    “campo”: “carga útil”,
    “tipo de campo”: “mensaje”,
    “formato”: “manillar”,
    “sintaxis”: “bigote”,
    “plantilla”: “{\”foo\”:\”bar\”}”,
    “salida”: “cadena”,
    “x”: 600,
    “y”: 700,
    “cables”: [
    [
    “ae2f45f6.fb9e48”
    ]
    ]
    },
    {
    “identificación”: “14be39f2.c942c6”,
    “tipo”: “función”,
    “z”: “57ba4cc7.5cb3f4”,
    "Apellido": "",
    “func”: “if(msg.payload> 26.2) {msg.payload = false;}\nelse if (msg.payload< 24) {msg.payload = true;}\nreturn msg;",
    "salidas": 1,
    "nor": 0,
    "inicializar": "",
    "finalizar": "",
    "x": 600,
    "y": 460,
    "cables": [
    [
    "9f7947ae.c38e68",
    "29f32232.207e9e"
    ]
    ]
    },
    {
    "id": "5e74354.53e37cc",
    "tipo": "ui_gauge",
    "z": "57ba4cc7.5cb3f4",
    "Apellido": "",
    "grupo": "a22f56de.8c6458",
    "orden": 6,
    "ancho": 0,
    "altura": 0,
    "gtype": "tarifa",
    "título": "Temperatura del agua.",
    "etiqueta": "",
    "formato": "{{valor| número:1}}°C",
    "mínimo": 0,
    "máximo": "50",
    "colores": [
    "#ff0000",
    "#00ffe1",
    "#ff0000"
    ],
    "seg1": "23",
    "seg2": "25",
    "x": 610,
    "y": 520,
    "alambres": []
    },
    {
    "id": "3a997c58.458334",
    "tipo": "ui_gauge",
    "z": "57ba4cc7.5cb3f4",
    "Apellido": "",
    "grupo": "8bdfeaf5.0afa18",
    "orden": 1,
    "ancho": "5",
    "altura": "5",
    "gtype": "tarifa",
    "título": "Temperatura del agua.",
    "etiqueta": "",
    "formato": "{{valor| número:1}}°C",
    "mínimo": 0,
    "máximo": "50",
    "colores": [
    "#ff0000",
    "#00ffe1",
    "#ff0000"
    ],
    "seg1": "23",
    "seg2": "25",
    "x": 610,
    "y": 560,
    "alambres": []
    },
    {
    "id": "9015895f.473e48",
    "tipo": "ui_chart",
    "z": "57ba4cc7.5cb3f4",
    "Apellido": "",
    "grupo": "8bdfeaf5.0afa18",
    "orden": 2,
    "ancho": "7.8",
    "altura": "5",
    "label": "Historial de temperatura",
    "tipo de gráfico": "línea",
    "leyenda": "falsa",
    "formatox": "HH:mm:ss",
    "interpolar": "lineal",
    "sin datos": "",
    "punto": cierto,
    "ymin": "23",
    "ymax": "25",
    "removeOlder": "1",
    "removeOlderPoints": "",
    "removeOlderUnit": "60",
    "recorte": 0,
    "usar un color": falso,
    "usarUTC": falso,
    "colores": [
    "#00d9ff",
    "#aec7e8",
    "#ff7f0e",
    "#00ff00",
    "#98df8a",
    "#d62728",
    "#ff9896",
    "#9467bd",
    "#c5b0d5"
    ],
    "usar estilo antiguo": falso,
    "salidas": 1,
    "x": 630,
    "y": 600,
    "cables": [
    []
    ]
    },
    {
    "id": "b31c2c33.6dfc8",
    "tipo": "plantilla",
    "z": "57ba4cc7.5cb3f4",
    "Apellido": "",
    "campo": "carga útil",
    "fieldType": "mensaje",
    "formato": "manillar",
    "sintaxis": "bigote",
    "plantilla": "{\"Temperatura actual\":\"{{carga útil}}\"}",
    "salida": "cadena",
    "x": 600,
    "y": 760,
    "cables": [
    [
    "8241846e.2d9298"
    ]
    ]
    },
    {
    "id": "e667a58a.f5bae8",
    "tipo": "ui_chart",
    "z": "57ba4cc7.5cb3f4",
    "Apellido": "",
    "grupo": "be6d8af4.0031d8",
    "orden": 2,
    "ancho": "4",
    "altura": "4",
    "label": "Historial de temperatura",
    "tipo de gráfico": "línea",
    "leyenda": "falsa",
    "formatox": "dd HH:mm",
    "interpolar": "lineal",
    "sin datos": "",
    "punto": falso,
    "ymin": "23.",
    "ymax": "25",
    "removeOlder": "1",
    "removeOlderPoints": "",
    "removeOlderUnit": "604800",
    "recorte": 0,
    "usar un color": verdadero,
    "usarUTC": falso,
    "colores": [
    "#f702e3",
    "#aec7e8",
    "#ff7f0e",
    "#00ff00",
    "#98df8a",
    "#d62728",
    "#ff9896",
    "#9467bd",
    "#c5b0d5"
    ],
    "usar estilo antiguo": falso,
    "salidas": 1,
    "x": 630,
    "y": 640,
    "cables": [
    []
    ]
    },
    {
    "id": "ae2f45f6.fb9e48",
    "tipo": "json",
    "z": "57ba4cc7.5cb3f4",
    "Apellido": "",
    "propiedad": "carga útil",
    "acción": "",
    "bonita": falso,
    "x": 750,
    "y": 700,
    "cables": [
    []
    ]
    },
    {
    "id": "9f7947ae.c38e68",
    "tipo": "ui_switch",
    "z": "57ba4cc7.5cb3f4",
    "Apellido": "",
    "etiqueta": "ventilación",
    "información sobre herramientas": "",
    "grupo": "84c4d91b.9ddaa8",
    "orden": 4,
    "ancho": 0,
    "altura": 0,
    "passthru": cierto,
    "desacoplar": "falso",
    "tema": "",
    "estilo": "",
    "onvalue": "falso",
    "onvalueType": "bool",
    "onicon": "",
    "encolor": "",
    "offvalue": "verdadero",
    "offvalueType": "bool",
    "oficon": "",
    "fuera de color": "",
    "x": 740,
    "y": 320,
    "cables": [
    [
    "97a8ff1f.f0019",
    "8194db18.ab6cb8",
    "c17fafae.c5817"
    ]
    ]
    },
    {
    "id": "29f32232.207e9e",
    "tipo": "retraso",
    "z": "57ba4cc7.5cb3f4",
    "Apellido": "",
    "pauseType": "retraso",
    "tiempo de espera": "10",
    "timeoutUnits": "segundos",
    "tasa": "1",
    "nbRateUnits": "1",
    "rateUnits": "segundo",
    "primero al azar": "1",
    "último al azar": "5",
    "unidades aleatorias": "segundos",
    "gota": falso,
    "x": 750,
    "y": 280,
    "cables": [
    [
    "97a8ff1f.f0019"
    ]
    ]
    },
    {
    "id": "8241846e.2d9298",
    "tipo": "json",
    "z": "57ba4cc7.5cb3f4",
    "Apellido": "",
    "propiedad": "carga útil",
    "acción": "",
    "bonita": falso,
    "x": 750,
    "y": 760,
    "cables": [
    []
    ]
    },
    {
    "id": "97a8ff1f.f0019",
    "tipo": "salida rpi-gpio",
    "z": "57ba4cc7.5cb3f4",
    "nombre": "ventilación",
    "alfiler": "37",
    "colocar": "",
    "nivel": "0",
    "frecuencia": "",
    "fuera fuera",
    "x": 1180,
    "y": 320,
    "alambres": []
    },
    {
    "id": "8194db18.ab6cb8",
    "tipo": "plantilla",
    "z": "57ba4cc7.5cb3f4",
    "nombre": "opciones",
    "campo": "carga útil",
    "fieldType": "mensaje",
    "formato": "manillar",
    "sintaxis": "bigote",
    "plantilla": "{\"foo\":\"bar\"}",
    "salida": "cadena",
    "x": 1040,
    "y": 400,
    "cables": [
    [
    "84dd1d88.e7b5d"
    ]
    ]
    },
    {
    "id": "c17fafae.c5817",
    "tipo": "cambiar",
    "z": "57ba4cc7.5cb3f4",
    "Apellido": "",
    "normas": [
    {
    "t": "cambiar",
    "p": "carga útil",
    "pt": "mensaje",
    "de": "falso",
    "desde": "bool",
    "a": "verdadero",
    "muerto": "booleano"
    }
    ],
    "acción": "",
    "propiedad": "",
    "de": "",
    "a": "",
    "registro": falso,
    "x": 920,
    "y": 460,
    "cables": [
    [
    "d2cfcf2f.07f02"
    ]
    ]
    },
    {
    "id": "84dd1d88.e7b5d",
    "tipo": "json",
    "z": "57ba4cc7.5cb3f4",
    "Apellido": "",
    "propiedad": "carga útil",
    "acción": "",
    "bonita": falso,
    "x": 1190,
    "y": 400,
    "cables": [
    []
    ]
    },
    {
    "id": "d2cfcf2f.07f02",
    "tipo": "desencadenantes",
    "z": "57ba4cc7.5cb3f4",
    "Apellido": "",
    "op1": "",
    "op2": "",
    "op1type": "pagar",
    "op2type": "pago",
    "duración": "24",
    "extender": falso,
    "overrideDelay": falso,
    "unidades": "hora",
    "reiniciar": "",
    "bytopic": "todos",
    "tema": "tema",
    "salidas": 1,
    "x": 1140,
    "y": 460,
    "cables": [
    [
    "e08c20eb.589ed"
    ]
    ]
    },
    {
    "id": "e08c20eb.589ed",
    "tipo": "plantilla",
    "z": "57ba4cc7.5cb3f4",
    "nombre": "correo",
    "campo": "carga útil",
    "fieldType": "mensaje",
    "formato": "manillar",
    "sintaxis": "bigote",
    "template": "Mensaje de advertencia\n\nEl acuario está demasiado caliente.\n\n¡Se ha activado la ventilación!\n\nSaludos\nSu servidor",
    "salida": "cadena",
    "x": 1310,
    "y": 460,
    "cables": [
    []
    ]
    },
    {
    "id": "d80536f4.eb90a8",
    "tipo": "comentario",
    "z": "57ba4cc7.5cb3f4",
    "nombre": "Homekit",
    "información": "Homekit",
    "x": 1300,
    "y": 400,
    "alambres": []
    },
    {
    "id": "68db86f2.b08c58",
    "tipo": "comentario",
    "z": "57ba4cc7.5cb3f4",
    "nombre": "Servidor de correo",
    "información": "",
    "x": 1420,
    "y": 460,
    "alambres": []
    },
    {
    "id": "a22f56de.8c6458",
    "tipo": "ui_group",
    "nombre": "Acuario",
    "pestaña": "2495f749.c25f58",
    "orden": 4,
    "disp": cierto,
    "ancho": "4",
    "colapso": falso
    },
    {
    "id": "8bdfeaf5.0afa18",
    "tipo": "ui_group",
    "nombre": "Temperatura",
    "pestaña": "99bb712a.2b3ca",
    "orden": 3,
    "disp": cierto,
    "ancho": "12",
    "colapso": falso
    },
    {
    "id": "be6d8af4.0031d8",
    "tipo": "ui_group",
    "name": "Valores del agua",
    "pestaña": "99bb712a.2b3ca",
    "orden": 4,
    "disp": cierto,
    "ancho": "20",
    "colapso": falso
    },
    {
    "id": "84c4d91b.9ddaa8",
    "tipo": "ui_group",
    "nombre": "circuito",
    "pestaña": "99bb712a.2b3ca",
    "orden": 2,
    "disp": cierto,
    "ancho": "4",
    "colapso": falso
    },
    {
    "id": "2495f749.c25f58",
    "tipo": "ui_tab",
    "nombre": "Panel de control",
    "icono": "panel de control",
    "orden": 1,
    "deshabilitado": falso,
    "oculto": falso
    },
    {
    "id": "99bb712a.2b3ca",
    "tipo": "ui_tab",
    "nombre": "Acuario",
    "icono": "panel de control",
    "orden": 4,
    "deshabilitado": falso,
    "oculto": falso
    }
    ]

    1. Hola Fabián,
      fue capaz de importar su código. No eliminé nada y solo agregué la parte que debería traer la función. 🙂
      Déjame saber si funcionó. 🙂
      [{“id”:”ab28b311.e87e5″”,tipo”:”ds18b20″”,z”:”ba705cfb.7ee0a”,”nombre”:””,”sensorid”:”28-03139779ce96″”,temporizador” :”0.1″,”x”:130,”y”:2520,”wires”:[[“b044b02a.74e65”]]},{“id”:”b044b02a.74e65″”,type”:”calculadora” ”,z”:”ba705cfb.7ee0a”,”nombre”:””,”inputMsgField”:”carga útil”,”outputMsgField”:”carga útil”,”operación”:”suma”,”constante”:”2.4″, ”redondo”:falso”,decimales”:0”,x”:330”,y”:2520,”cables”:[[“7f3d76c9.23b358″”,”c6a9f213.d9fcb”,”dd6c569.7663ca8″”,”c3eb58f .778fda8″”,770f98ee.58c258″”,9cdd55d0.3bacf8″”,a40e44a0.15ea98″]]},{“id”:”7f3d76c9.23b358″”,type”:”plantilla”,”z”:”ba705cfb .7ee0a”,”nombre”:”opciones”,”campo”:”carga útil”,”tipo de campo”:”msg”,”formato”:”manillar”,”sintaxis”:”bigote”,”plantilla”:”{ \”foo\”:\”bar\”}”,”output”:”str”,”x”:560,”y”:2460,”wires”:[[“48dab8e0.ca9128”]]},{ “id”:”c6a9f213.d9fcb”,”tipo”:”función”,”z”:”ba705cfb.7ee0a”,”nombre”:””,”func”:”if(msg.payload> 26.2) \n {\n msg.payload = false;\n}\nelse si (msg.payload< 24) \n{\n msg.payload = true;\n}\nreturn msg;","outputs":1,"noerr":0,"x":560,"y":2220,"wires" :[["5b87956f.4ab73c","cac571b3.65e59","165cfc4f.46f004"]]},{"id":"dd6c569.7663ca8","type":"ui_gauge","z":"ba705cfb. 7ee0a","name":"","group":"2e9e95aa.f1c83a","order":6,"width":0,"height":0,"gtype":"gage","title": "Temperatura del agua","etiqueta":"","formato":"{{valor| numero:1}}°C","min":0,"max":"50","colores":["#ff0000","#00ffe1","#ff0000"],"seg1":"23"," seg2":"25","x":570,"y":2280,"cables":[]},{"id":"c3eb58f.778fda8","tipo":"ui_gauge","z": "ba705cfb.7ee0a","name":"","group":"92f6590a.a3d328","order":1,"width":"5","height":"5","gtype":" gage","title":"Temperatura del agua","label":"","format":"{{value| numero:1}}°C","min":0,"max":"50","colores":["#ff0000","#00ffe1","#ff0000"],"seg1":"23"," seg2":"25","x":570,"y":2320,"cables":[]},{"id":"770f98ee.58c258","tipo":"ui_chart","z": "ba705cfb.7ee0a","nombre":"","grupo":"92f6590a.a3d328","orden":2,"ancho":"7.8","alto":"5","etiqueta":" Curva de temperatura","chartType":"line","legend":"false","xformat":"HH:mm:ss","interpolate":"linear","nodata":"","dot" : verdadero,"ymin":"23","ymax":"25","removeOlder":"1","removeOlderPoints":"","removeOlderUnit":"60","cutout":0,"useOneColor " :falso,"useUTC":falso,"colores":["#00d9ff","#aec7e8","#ff7f0e","#00ff00","#98df8a","#d62728","#ff9896","#9467bd","#c5b0d5" ] ,"useOldStyle":false,"salidas":1,"x":590,"y":2360,"cables":[[]]},{"id":"9cdd55d0.3bacf8","tipo" : "template","z":"ba705cfb.7ee0a","name":"","field":"payload","fieldType":"msg","format":"handlebars","syntax": " bigote","plantilla":"{\"Temperatura actual\":\"{{carga útil}}\"}","salida":"str","x":560,"y":2520,"cables " :[["15301b09.d03 e65"]]},{"id":"a40e44a0.15ea98","tipo":"ui_chart","z":"ba705cfb.7ee0a","nombre":"","grupo":"bf0e6207.0ed3 ","orden":2","ancho":"4","alto":"4","label":"Progresión de temperatura","chartType":"línea","leyenda":"falso", "formatox":"dd HH:mm","interpolar":"lineal","nodatos":"","punto":falso,"ymin":"23.","ymax":"25"," removeOlder":"1","removeOlderPoints":"","removeOlderUnit":"604800","cutout":0,"useOneColor":true,"useUTC":false,"colors":["#f702e3"," #aec7e8", ,"#ff7f0e","#00ff00","#98df8a","#d62728","#ff9896","#9467bd","#c5b0d5"],"useOldStyle":falso,"salidas":1,"x":590, "y ":2400,"cables":[[]]},{"id":"48dab8e0.ca9128","tipo":"json","z":"ba705cfb.7ee0a","nombre":" ", "propiedad":"carga útil","acción":"","bonita":falso,"x":710,"y":2460,"cables":[[]]},{"id": "5b87956f .4ab73c","type":"ui_switch","z":"ba705cfb.7ee0a","name":"","label":"Ventilación","tooltip":"","group": "3cc5c223 .3f1a2e","orden":4,"ancho":0,"alto":0,"paso":verdadero,"desacoplar":"falso","tema":"","estilo":" ","onvalue":"falso","onva lueType":"bool","onicon":"","oncolor":"","offvalue":"true","offvalueType":"bool","officon":"","offcolor":"" ,"x":700,"y":2080,"cables":[["2fabb5e1.8db58a","8fda296a.f35b58","6bbb4798.295ab8"]]},{"id":"cac571b3.65e59" ","tipo":"retraso","z":"ba705cfb.7ee0a","nombre":"","pauseType":"retraso","tiempo de espera":"10","timeoutUnits":"segundos", "rate":"1","nbRateUnits":"1","rateUnits":"segundo","randomFirst":"1","randomLast":"5","randomUnits":"segundos","drop ":falso,"x":730,"y":2040,"cables":[["2fabb5e1.8db58a"]]},{"id":"15301b09.d03e65","tipo":"json", "z":"ba705cfb.7ee0a","nombre":"","propiedad":"carga útil","acción":"","bonita":falso,"x":710,"y":2520, "cables":[[]]},{"id":"2fabb5e1.8db58a","tipo":"salida rpi-gpio","z":"ba705cfb.7ee0a","nombre":"Ventilador", "pin":"37","establecer":"","nivel":"0","frecuencia":"","salida":"salida","x":1140,"y":2080, "cables":[]},{"id":"8fda296a.f35b58","tipo":"plantilla","z":"ba705cfb.7ee0a","nombre":"opciones","campo":" payload","fieldType":"msg","format":"handlebars","syntax":"bigote","template":"{\"foo\":\"bar\"}","out poner":"str","x":1000,"y":2160,"cables":[["f959d03a.784"]]},{"id":"6bbb4798.295ab8","tipo":" cambio","z":"ba705cfb.7ee0a","nombre":"","reglas":[{"t":"cambio","p":"carga útil","pt":"mensaje", "from":"false","fromt":"bool","to":"true","tot":"bool"}],"action":"","property":"","from ":"","a":"","reg":falso,"x":880,"y":2220,"cables":[["4e441bb9.ff4694"]]},{"id": "f959d03a.784","type":"json","z":"ba705cfb.7ee0a","name":"","property":"payload","action":"","pretty": false,"x":1150,"y":2160,"wires":[[]]},{"id":"4e441bb9.ff4694","type":"trigger","z":"ba705cfb. 7ee0a","op1":"","op2":"","op1type":"pay","op2type":"payl","duration":"24","extend":false,"units" :"hr","reset":"","bytopic":"all","name":"","x":1100,"y":2220,"wires":[["14531d47.88c793" ]]},{"id":"14531d47.88c793","tipo":"plantilla","z":"ba705cfb.7ee0a","nombre":"correo","campo":"carga útil"," fieldType":"msg","format":"manillar","syntax":"bigote","template":"Mensaje de advertencia\n\nEl acuario está demasiado caliente.\n\n¡Se ha activado la ventilación!\n\ nSaludos \nSu servidor","salida": "str","x":1270,"y":2220,"cables":[[]]},{"id":"5d57fc0f.2457f4","tipo":"comentario","z":" ba705cfb.7ee0a","nombre":"Homekit","info":"Homekit","x":1300,"y":2160,"cables":[]},{"id":"9db436ad.9af6b8 ","tipo":"comentario","z":"ba705cfb.7ee0a","nombre":"Servidor de correo","info":"","x":1420,"y":2220,"cables " :[]},{"id":"165cfc4f.46f004","tipo":"gatillo","z":"ba705cfb.7ee0a","op1":"falso","op2":"0" , "op1type":"str","op2type":"str","duration":"0","extend":false,"units":"ms","reset":"true","bytopic" : "todos","nombre":"falso","x":1070,"y":2280,"cables":[["14531d47.88c793"]]},{"id":"2e9e95aa.f1c83a" , "type":"ui_group","name":"Aquarium","tab":"2d9fb55d.7b096a","order":4,"disp":true,"width":"4","collapse" : false},{"id":"92f6590a.a3d328","type":"ui_group","name":"Temperature","tab":"e7ec43f.3af8fc","order":3,"disp" : true,"width":"12","collapse":false},{"id":"bf0e6207.0ed3","type":"ui_group","name":"Valores de agua","tab": "e7ec43f .3af8fc","order":4,"disp":true,"width":"20","collapse":false},{"id":"3cc5c223.3f1a2e","type":"ui_group "," Apellido ":"Circuito","tab":"e7ec43f.3af8fc","order":2,"disp":true,"width":"4","collapse":false},{"id":"2d9fb55d .7b096a","type":"ui_tab","name":"Control panel","icon":"dashboard","order":1,"disabled":false,"hidden":false},{" id ":"e7ec43f.3af8fc","type":"ui_tab","name":"Aquarium","icon":"dashboard","order":4,"disabled":false,"hidden":false } ] Saludos cordiales Fabián

    1. hola andre,
      gracias por la pista. Yo no sabía eso en absoluto. 🙂
      Voy a echar un vistazo y probablemente. también un HowTo listo para hacerlo.
      Gracias y saludos
      Fabian

Kommentar hinterlassen

Tu dirección de correo electrónico no será publicada. Erforderliche Felder sind mit * markiert

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.