UNPKG

@iotschema/humidity

Version:

undefined

49 lines (41 loc) 1.64 kB
"use strict"; let configInt = require('./ConfigAttrIntegrator.js'); module.exports = function(RED) { function humidity(config) { RED.nodes.createNode(this, config); let node = this; let source; let output; let fs = require('fs'); let path = require('path'); let shapePath = path.join(__dirname,"humidity.jsonld"); fs.readFile(shapePath, {encoding: 'utf-8'}, function(err,data){ if (!err) { source = JSON.parse(data); let configJ = {}; configJ["configParams"] = {}; configJ["configParams"]["name"] = config.name; configJ["configParams"]["InteractionPatternType"] = config.iptype; configJ["configParams"]["capability"] = config.capability; configJ["configParams"]["FeatureOfInterestType"] = config.foitype; configJ["configParams"]["FeatureOfInterest"] = config.foi; configJ["configParams"]["unitCode"] = config.unitCode configJ["configParams"]["operation"] = config.operation; output = configInt.addConfigAttributes(source, configJ); let graph = []; graph = configInt.removeDuplicates(output["@graph"]); delete output["@graph"]; output["@graph"] = []; output["@graph"] = graph; node.send([{payload:output},null]); } else { console.log(err); } }); node.on('input', function(msg) { node.send([null,{payload:msg}]); }); } RED.nodes.registerType("humidity", humidity); };