UNPKG

@gravypower/node-red-franklinwh

Version:

Node-RED node to control FranklinWH gateway

35 lines (31 loc) 1.1 kB
const apiHandler = require('../../../api-handler'); module.exports = function(RED) { function FranklinWHGetControlsNode(config) { RED.nodes.createNode(this, config); const node = this; const server = RED.nodes.getNode(config.server); if (!server) { node.error("No credentials configured"); return; } node.on("input", async function (msg, send, done) { try { await apiHandler.executeWithRetry( node, server, async (api) => { return { controls: await api.getControls() }; }, msg, send, done ); } catch (err) { node.status({fill:"red",shape:"ring",text:"error"}); node.error("FranklinWH Error: " + err.message, msg); if (done) done(err); } }); } RED.nodes.registerType("franklinwh-get-controls", FranklinWHGetControlsNode); }