UNPKG

knxultimate

Version:

KNX IP protocol implementation for Node. This is the ENGINE of Node-Red KNX-Ultimate node.

62 lines 2.07 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const utils_1 = require("../utils"); const node_color_log_1 = __importDefault(require("node-color-log")); const config = { id: 'DPT232', formatAPDU: (value) => { if (!value) { node_color_log_1.default.error('cannot write null value'); return null; } if (typeof value === 'object' && (0, utils_1.hasProp)(value, 'red') && value.red >= 0 && value.red <= 255 && (0, utils_1.hasProp)(value, 'green') && value.green >= 0 && value.green <= 255 && (0, utils_1.hasProp)(value, 'blue') && value.blue >= 0 && value.blue <= 255) { return Buffer.from([ Math.floor(value.red), Math.floor(value.green), Math.floor(value.blue), ]); } node_color_log_1.default.error('Must supply an value {red:0-255, green:0-255, blue:0-255}'); return null; }, fromBuffer: (buf) => { if (buf.length !== 3) { node_color_log_1.default.error('Buffer should be 3 byte long, got', buf.length); return null; } const ret = { red: buf[0], green: buf[1], blue: buf[2] }; return ret; }, basetype: { bitlength: 3 * 8, valuetype: 'basic', desc: 'RGB array', help: `// Each color in a range between 0 and 255 msg.payload={red:255, green:200, blue:30}; return msg;`, helplink: 'https://github.com/Supergiovane/node-red-contrib-knx-ultimate/wiki/-Sample---RGB-Color', }, subtypes: { 600: { desc: 'RGB', name: 'RGB color triplet', unit: '', scalar_range: [,], range: [,], }, }, }; exports.default = config; //# sourceMappingURL=dpt232.js.map