From 15d1a38dce31805d40cf91c64641a75e6188d9d8 Mon Sep 17 00:00:00 2001 From: Harald Rietman Date: Fri, 30 Jun 2017 22:02:50 +0200 Subject: [PATCH] Moved gateway key into configurator --- .../xiaomi-configurator.html | 13 ++++++------- .../xiaomi-configurator.js | 1 + node-red-contrib-xiaomi-socket/xiaomi-socket.html | 4 ++-- node-red-contrib-xiaomi-socket/xiaomi-socket.js | 4 ++-- 4 files changed, 11 insertions(+), 11 deletions(-) diff --git a/node-red-contrib-xiaomi-configurator/xiaomi-configurator.html b/node-red-contrib-xiaomi-configurator/xiaomi-configurator.html index e578dc7..8afcb04 100644 --- a/node-red-contrib-xiaomi-configurator/xiaomi-configurator.html +++ b/node-red-contrib-xiaomi-configurator/xiaomi-configurator.html @@ -3,7 +3,8 @@ category: 'config', defaults: { name: {value: ""}, - deviceList: {value:[{ sid:"a", desc:"b", model:"plug"}]} + deviceList: {value:[{ sid:"a", desc:"b", model:"plug"}]}, + key: {value: ""} }, label: function () { return this.name || "xiaomi-configurator"; @@ -11,8 +12,6 @@ oneditprepare: function() { var node = this; - console.log("config window openend: " + node.deviceList); - $("#node-config-input-devices").css('min-height','250px').css('min-width','450px').editableList({ addItem: function(container, i, device) { if (!device.hasOwnProperty('model')) { @@ -46,7 +45,6 @@ removable: true }); - console.log("Devices: " + JSON.stringify(node.deviceList)); for (var i=0;i @@ -80,6 +75,10 @@
+
+
+ +
    diff --git a/node-red-contrib-xiaomi-configurator/xiaomi-configurator.js b/node-red-contrib-xiaomi-configurator/xiaomi-configurator.js index c13db4f..246d3aa 100644 --- a/node-red-contrib-xiaomi-configurator/xiaomi-configurator.js +++ b/node-red-contrib-xiaomi-configurator/xiaomi-configurator.js @@ -4,6 +4,7 @@ module.exports = function(RED) { RED.nodes.createNode(this, n); this.name = n.name; this.deviceList = n.deviceList || []; + this.key = n.key; var node = this; } diff --git a/node-red-contrib-xiaomi-socket/xiaomi-socket.html b/node-red-contrib-xiaomi-socket/xiaomi-socket.html index 022aac5..1b82e79 100644 --- a/node-red-contrib-xiaomi-socket/xiaomi-socket.html +++ b/node-red-contrib-xiaomi-socket/xiaomi-socket.html @@ -74,11 +74,11 @@
    - +
    - +
    diff --git a/node-red-contrib-xiaomi-socket/xiaomi-socket.js b/node-red-contrib-xiaomi-socket/xiaomi-socket.js index d12424e..0cd59bf 100644 --- a/node-red-contrib-xiaomi-socket/xiaomi-socket.js +++ b/node-red-contrib-xiaomi-socket/xiaomi-socket.js @@ -10,6 +10,7 @@ module.exports = function(RED) { this.output = config.output; this.onmsg = config.onmsg; this.offmsg = config.offmsg; + this.key = this.gateway.key; var node = this; var currentToken = ""; @@ -23,11 +24,10 @@ module.exports = function(RED) { var payload = msg.payload; if (payload.cmd == "heartbeat" && payload.model == "gateway") { - var key = "c7utmdo2acpzai5b"; var token = payload.token; if (token) { - var cipher = crypto.createCipheriv('aes128', key, (new Buffer("17996d093d28ddb3ba695a2e6f58562e", "hex"))); + var cipher = crypto.createCipheriv('aes128', node.key, (new Buffer("17996d093d28ddb3ba695a2e6f58562e", "hex"))); var encoded_string = cipher.update(token, 'utf8', 'hex'); encoded_string += cipher.final('hex');