@gotillit/tillit-node-red 1.2.1 → 1.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,84 +1,146 @@
1
1
  "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (_) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
2
38
  Object.defineProperty(exports, "__esModule", { value: true });
3
39
  exports.buildNodeInFunction = void 0;
4
40
  var aws_iot_device_sdk_v2_1 = require("aws-iot-device-sdk-v2");
5
41
  var decoder = new TextDecoder('utf8');
6
- var buildNodeInFunction = function (RED) { return (function awsMqttNodeIn(n) {
7
- RED.nodes.createNode(this, n);
8
- this.configurationNode = RED.nodes.getNode(n.device);
9
- var self = this;
10
- self.broker = this.configurationNode.broker;
11
- if (self.broker) {
12
- self.status({
13
- fill: "yellow",
14
- shape: "ring",
15
- text: "subscribing..."
42
+ var NodeIn = /** @class */ (function () {
43
+ function NodeIn(n, RED, node) {
44
+ var _this = this;
45
+ this.broker = RED.nodes.getNode(n.device).broker;
46
+ this.node = node;
47
+ this.topic = n.topic;
48
+ this.broker.on('statusUpdate', function (report) {
49
+ var _a, _b;
50
+ _this.node.status({
51
+ fill: report.status === 'connected' ? 'green' : 'red',
52
+ shape: 'ring',
53
+ text: ((_b = (_a = report === null || report === void 0 ? void 0 : report.data) === null || _a === void 0 ? void 0 : _a.error) === null || _b === void 0 ? void 0 : _b.message) || report.status
54
+ });
16
55
  });
17
- self.broker.connect(null, null, function (event, error) {
18
- if (event == "connected") {
19
- var topic = self.broker.tenant + n.topic;
20
- try {
21
- self.broker.mqttClient.unsubscribe(topic);
22
- }
23
- catch (e) {
24
- console.error('Error unsubscribing');
25
- console.error(e);
26
- }
27
- var onMessage = function (topic, payload, dup, qos, retain) {
28
- var json = JSON.parse(decoder.decode(payload));
29
- self.log("RECV< " + topic + JSON.stringify(json));
30
- self.send({
31
- topic: topic,
32
- payload: json
33
- });
34
- };
35
- try {
36
- self.broker.mqttClient.subscribe(topic, aws_iot_device_sdk_v2_1.mqtt.QoS.AtLeastOnce, onMessage);
37
- self.status({
38
- fill: "green",
39
- shape: "ring",
40
- text: "subscribed"
41
- });
42
- }
43
- catch (error) {
44
- self.status({
45
- fill: "error",
46
- shape: "ring",
47
- text: error.message
48
- });
49
- self.broker.mqttClient.on('message');
56
+ }
57
+ NodeIn.prototype.onMessage = function (topic, payload, dup, qos, retain) {
58
+ var json = JSON.parse(decoder.decode(payload));
59
+ this.node.log("RECV< " + topic + JSON.stringify(json));
60
+ this.node.send({
61
+ topic: topic,
62
+ payload: json.body ? json.body : json
63
+ });
64
+ };
65
+ NodeIn.prototype.startSubscription = function () {
66
+ return __awaiter(this, void 0, void 0, function () {
67
+ var topic, e_1, error_1;
68
+ var _this = this;
69
+ return __generator(this, function (_a) {
70
+ switch (_a.label) {
71
+ case 0:
72
+ if (!this.broker) return [3 /*break*/, 9];
73
+ this.node.status({
74
+ fill: "yellow",
75
+ shape: "ring",
76
+ text: "subscribing..."
77
+ });
78
+ return [4 /*yield*/, this.broker.connect()];
79
+ case 1:
80
+ _a.sent();
81
+ topic = this.broker.tenant + this.topic;
82
+ _a.label = 2;
83
+ case 2:
84
+ _a.trys.push([2, 4, , 5]);
85
+ return [4 /*yield*/, this.broker.mqttClient.unsubscribe(topic)];
86
+ case 3:
87
+ _a.sent();
88
+ return [3 /*break*/, 5];
89
+ case 4:
90
+ e_1 = _a.sent();
91
+ console.error('Error unsubscribing');
92
+ console.error(e_1);
93
+ return [3 /*break*/, 5];
94
+ case 5:
95
+ _a.trys.push([5, 7, , 8]);
96
+ return [4 /*yield*/, this.broker.mqttClient.subscribe(topic, aws_iot_device_sdk_v2_1.mqtt.QoS.AtLeastOnce, function (topic, payload, dup, qos, retain) {
97
+ _this.onMessage(topic, payload, dup, qos, retain);
98
+ })];
99
+ case 6:
100
+ _a.sent();
101
+ this.node.status({
102
+ fill: "green",
103
+ shape: "ring",
104
+ text: "subscribed"
105
+ });
106
+ return [3 /*break*/, 8];
107
+ case 7:
108
+ error_1 = _a.sent();
109
+ this.node.status({
110
+ fill: "error",
111
+ shape: "ring",
112
+ text: error_1.message
113
+ });
114
+ this.node.status({
115
+ fill: "error",
116
+ shape: "ring",
117
+ text: error_1.message
118
+ });
119
+ return [3 /*break*/, 8];
120
+ case 8: return [3 /*break*/, 10];
121
+ case 9:
122
+ this.node.error("connection is not configured");
123
+ this.node.status({
124
+ fill: "red",
125
+ shape: "ring",
126
+ text: "not configured"
127
+ });
128
+ _a.label = 10;
129
+ case 10: return [2 /*return*/];
50
130
  }
51
- }
52
- else if (event == "error") {
53
- self.status({
54
- fill: "error",
55
- shape: "ring",
56
- text: error.message
57
- });
58
- }
59
- else if (event == 'interrupt') {
60
- self.status({
61
- fill: "error",
62
- shape: "ring",
63
- text: 'Connection lost'
64
- });
65
- }
66
- else if (event == 'resume') {
67
- self.status({
68
- fill: "green",
69
- shape: "ring",
70
- text: "subscribed"
71
- });
72
- }
131
+ });
73
132
  });
133
+ };
134
+ return NodeIn;
135
+ }());
136
+ var buildNodeInFunction = function (RED) { return (function awsMqttNodeIn(n) {
137
+ RED.nodes.createNode(this, n);
138
+ this.tillitIn = new NodeIn(n, RED, this);
139
+ try {
140
+ this.tillitIn.startSubscription().then();
74
141
  }
75
- else {
76
- self.error("aws-mqtt in is not configured");
77
- self.status({
78
- fill: "red",
79
- shape: "ring",
80
- text: "not configured"
81
- });
142
+ catch (e) {
143
+ this.error(e);
82
144
  }
83
145
  }); };
84
146
  exports.buildNodeInFunction = buildNodeInFunction;
@@ -1 +1 @@
1
- {"version":3,"file":"node-in.js","sourceRoot":"","sources":["../../src/nodes/node-in.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"node-in.js","sourceRoot":"","sources":["../../src/nodes/node-in.ts"],"names":[],"mappings":"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"}
@@ -1,79 +1,139 @@
1
1
  "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (_) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
2
38
  Object.defineProperty(exports, "__esModule", { value: true });
3
39
  exports.buildNodeOutFunction = void 0;
4
- var buildNodeOutFunction = function (RED) { return (function awsMqttNodeOut(n) {
5
- RED.nodes.createNode(this, n);
6
- this.myDevice = n.device;
7
- this.configuration = RED.nodes.getNode(this.myDevice);
8
- this.broker = this.configuration.broker;
9
- var self = this;
10
- var options = {
11
- qos: parseInt(n.qos) || 0
12
- };
13
- self.on("input", function (msg) {
14
- if (self.broker) {
15
- self.broker.connect(msg.clientId, msg.reconnect, function (event, error) {
16
- if ((event == "connected")) {
17
- self.log("SEND> " + (msg.topic || n.topic) + " " + JSON.stringify(msg.payload));
18
- if (!Buffer.isBuffer(msg.payload)) {
19
- if (typeof msg.payload === "object") {
20
- msg.payload = JSON.stringify(msg.payload);
40
+ var NodeOut = /** @class */ (function () {
41
+ function NodeOut(n, RED, node) {
42
+ var _this = this;
43
+ this.options = { qos: 1 };
44
+ this.broker = RED.nodes.getNode(n.device).broker;
45
+ this.node = node;
46
+ this.topic = n.topic;
47
+ this.node.on('input', (function (msg) { return _this.onInput(msg); }));
48
+ this.broker.on('statusUpdate', function (report) {
49
+ var _a, _b;
50
+ _this.node.status({
51
+ fill: report.status === 'connected' ? 'green' : 'red',
52
+ shape: 'ring',
53
+ text: ((_b = (_a = report === null || report === void 0 ? void 0 : report.data) === null || _a === void 0 ? void 0 : _a.error) === null || _b === void 0 ? void 0 : _b.message) || report.status
54
+ });
55
+ });
56
+ }
57
+ NodeOut.prototype.onInput = function (msg) {
58
+ return __awaiter(this, void 0, void 0, function () {
59
+ var topic, finalPayload, buffer, _a, result, error, e_1, e_2;
60
+ return __generator(this, function (_b) {
61
+ switch (_b.label) {
62
+ case 0:
63
+ _b.trys.push([0, 8, , 9]);
64
+ if (!this.broker) return [3 /*break*/, 6];
65
+ this.node.status({
66
+ fill: "blue",
67
+ shape: "ring",
68
+ text: "sending..."
69
+ });
70
+ return [4 /*yield*/, this.broker.connect()];
71
+ case 1:
72
+ _b.sent();
73
+ topic = (msg.topic || this.topic);
74
+ finalPayload = {
75
+ format: 'json', body: msg.payload
76
+ };
77
+ this.node.log("SEND> " + topic + ' ' + JSON.stringify(finalPayload));
78
+ buffer = new Buffer(JSON.stringify(finalPayload), "utf-8");
79
+ _b.label = 2;
80
+ case 2:
81
+ _b.trys.push([2, 4, , 5]);
82
+ return [4 /*yield*/, this.broker.mqttClient.publish(topic, buffer, this.options.qos, false)];
83
+ case 3:
84
+ _a = _b.sent(), result = _a.result, error = _a.error;
85
+ if (error) {
86
+ this.node.status({
87
+ fill: "red",
88
+ shape: "ring",
89
+ text: error.message
90
+ });
21
91
  }
22
- else if (typeof msg.payload !== "string") {
23
- msg.payload = msg.payload.toString();
92
+ else {
93
+ this.node.status({
94
+ fill: "green",
95
+ shape: "ring",
96
+ text: "sent"
97
+ });
24
98
  }
25
- msg.payload = new Buffer(msg.payload, "utf-8");
26
- }
27
- self.status({
28
- fill: "blue",
29
- shape: "ring",
30
- text: "sending..."
31
- });
32
- try {
33
- self.broker.mqttClient.publish(msg.topic || n.topic, msg.payload, options.qos, false).then(function (result, error) {
34
- if (error) {
35
- self.status({
36
- fill: "red",
37
- shape: "ring",
38
- text: error.message
39
- });
40
- }
41
- else {
42
- self.status({
43
- fill: "green",
44
- shape: "ring",
45
- text: "done"
46
- });
47
- }
99
+ return [3 /*break*/, 5];
100
+ case 4:
101
+ e_1 = _b.sent();
102
+ this.node.status({
103
+ fill: "red",
104
+ shape: "ring",
105
+ text: e_1.message
48
106
  });
49
- }
50
- catch (e) {
51
- self.status({
107
+ return [3 /*break*/, 5];
108
+ case 5: return [3 /*break*/, 7];
109
+ case 6:
110
+ this.node.error("connection is not configured");
111
+ this.node.status({
52
112
  fill: "red",
53
113
  shape: "ring",
54
- text: e.message
114
+ text: "not configured"
55
115
  });
56
- }
57
- }
58
- if (event == 'error') {
59
- self.error("connection error");
60
- self.status({
61
- fill: "red",
62
- shape: "ring",
63
- text: "not configured"
64
- });
116
+ _b.label = 7;
117
+ case 7: return [3 /*break*/, 9];
118
+ case 8:
119
+ e_2 = _b.sent();
120
+ this.node.error("something went wrong", e_2);
121
+ this.node.status({
122
+ fill: "red",
123
+ shape: "ring",
124
+ text: e_2.message
125
+ });
126
+ return [3 /*break*/, 9];
127
+ case 9: return [2 /*return*/];
65
128
  }
66
129
  });
67
- }
68
- else {
69
- self.error("aws-mqtt out is not configured");
70
- self.status({
71
- fill: "red",
72
- shape: "ring",
73
- text: "not configured"
74
- });
75
- }
76
- });
130
+ });
131
+ };
132
+ return NodeOut;
133
+ }());
134
+ var buildNodeOutFunction = function (RED) { return (function awsMqttNodeOut(n) {
135
+ RED.nodes.createNode(this, n);
136
+ this.tillitProgress = new NodeOut(n, RED, this);
77
137
  }); };
78
138
  exports.buildNodeOutFunction = buildNodeOutFunction;
79
139
  //# sourceMappingURL=node-out.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"node-out.js","sourceRoot":"","sources":["../../src/nodes/node-out.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"node-out.js","sourceRoot":"","sources":["../../src/nodes/node-out.ts"],"names":[],"mappings":"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"}