node-red-contrib-mobius-flow-base 2.5.86-beta.92 → 2.5.86-beta.95
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.
|
@@ -198,7 +198,7 @@ module.exports = function (RED) {
|
|
|
198
198
|
* @param {number} lastActiveTime - The node's last active time
|
|
199
199
|
* @returns Object containing status text and status colour
|
|
200
200
|
*/
|
|
201
|
-
node.
|
|
201
|
+
node.buildLastActiveTimeStatus = function (lastActiveTime) {
|
|
202
202
|
let response = {
|
|
203
203
|
text: 'Unknown',
|
|
204
204
|
colour: 'green',
|
|
@@ -224,7 +224,11 @@ module.exports = function (RED) {
|
|
|
224
224
|
response.colour = 'grey';
|
|
225
225
|
response.text = 'Never Active';
|
|
226
226
|
}
|
|
227
|
-
return
|
|
227
|
+
return {
|
|
228
|
+
fill: response.text,
|
|
229
|
+
shape: 'dot',
|
|
230
|
+
text: response.colour,
|
|
231
|
+
};
|
|
228
232
|
};
|
|
229
233
|
|
|
230
234
|
/**
|
|
@@ -233,32 +237,34 @@ module.exports = function (RED) {
|
|
|
233
237
|
*/
|
|
234
238
|
node.updateNodeStatus = function (mobiusNode) {
|
|
235
239
|
node.users[mobiusNode.id] = mobiusNode;
|
|
236
|
-
let
|
|
237
|
-
|
|
238
|
-
if (node.users[mobiusNode.id].statusType === 'timeSinceLastActive') {
|
|
239
|
-
let result = node.getLastActiveTimeStatus(node.users[mobiusNode.id].lastActiveTime);
|
|
240
|
-
statusText = result.text;
|
|
241
|
-
statusColour = result.colour;
|
|
242
|
-
} else {
|
|
243
|
-
const uri = node.users[mobiusNode.id].latestUri;
|
|
244
|
-
if (uri !== '') {
|
|
245
|
-
statusText = node.users[mobiusNode.id].latestUri;
|
|
246
|
-
}
|
|
247
|
-
}
|
|
248
|
-
node.users[mobiusNode.id].status({
|
|
249
|
-
fill: statusColour,
|
|
240
|
+
let newStatus = {
|
|
241
|
+
fill: 'Connected',
|
|
250
242
|
shape: 'dot',
|
|
251
|
-
text:
|
|
252
|
-
}
|
|
243
|
+
text: 'green',
|
|
244
|
+
};
|
|
245
|
+
switch (node.users[mobiusNode.id].statusType) {
|
|
246
|
+
case 'timeSinceLastActive':
|
|
247
|
+
newStatus = node.buildLastActiveTimeStatus(node.users[mobiusNode.id].lastActiveTime);
|
|
248
|
+
case 'lastUri':
|
|
249
|
+
const uri = node.users[mobiusNode.id].latestUri;
|
|
250
|
+
if (uri !== '') {
|
|
251
|
+
newStatus = {
|
|
252
|
+
fill: uri,
|
|
253
|
+
shape: 'dot',
|
|
254
|
+
text: 'green',
|
|
255
|
+
};
|
|
256
|
+
}
|
|
257
|
+
}
|
|
258
|
+
node.users[mobiusNode.id].status(newStatus);
|
|
253
259
|
};
|
|
254
260
|
|
|
255
261
|
/**
|
|
256
262
|
* Update a given node's node latest URI record
|
|
257
263
|
* @param {Object} mobiusNode - The node whos last URI record is to be updated
|
|
258
264
|
*/
|
|
259
|
-
node.updateLatestUri = function (mobiusNode) {
|
|
265
|
+
node.updateLatestUri = function (mobiusNode, uri) {
|
|
260
266
|
node.users[mobiusNode.id] = mobiusNode;
|
|
261
|
-
node.users[mobiusNode.id].latestUri =
|
|
267
|
+
node.users[mobiusNode.id].latestUri = uri;
|
|
262
268
|
node.updateNodeStatus(mobiusNode);
|
|
263
269
|
};
|
|
264
270
|
|
|
@@ -54,8 +54,8 @@ POSSIBILITY OF SUCH DAMAGE.
|
|
|
54
54
|
</div>
|
|
55
55
|
<hr>
|
|
56
56
|
<div class="form-row">
|
|
57
|
-
<label for="node-input-statusType"><i class="fa fa-bars"></i> Status Display</label>
|
|
58
|
-
<select type="text" id="node-input-statusType" style="display: inline-block; width: auto; vertical-align: center;">
|
|
57
|
+
<label for="node-input-statusType" style="width: 30%;"><i class="fa fa-bars"></i> Status Display</label>
|
|
58
|
+
<select type="text" id="node-input-statusType" style="width: 200px; display: inline-block; width: auto; vertical-align: center;">
|
|
59
59
|
<option value="timeSinceLastActive">Time since last active</option>
|
|
60
60
|
<option value="lastUri">Last URI</option>
|
|
61
61
|
</select>
|
|
@@ -40,8 +40,6 @@ module.exports = function (RED) {
|
|
|
40
40
|
this.statusType = n.statusType;
|
|
41
41
|
var node = this;
|
|
42
42
|
|
|
43
|
-
console.log(node.statusType);
|
|
44
|
-
|
|
45
43
|
if (node.serviceConn) {
|
|
46
44
|
node.status({
|
|
47
45
|
fill: 'red',
|
|
@@ -49,7 +47,7 @@ module.exports = function (RED) {
|
|
|
49
47
|
text: 'Disconnected',
|
|
50
48
|
});
|
|
51
49
|
node.serviceConn.subscribeToObjectCOV(node.object, this.id, (response) => {
|
|
52
|
-
node.serviceConn.updateLatestUri(node);
|
|
50
|
+
node.serviceConn.updateLatestUri(node, response.uri);
|
|
53
51
|
node.serviceConn.updateLastActiveTime(node);
|
|
54
52
|
let allResources = _.keyBy(
|
|
55
53
|
response.value.resources,
|