node-red-contrib-mobius-flow-base 2.5.86-beta.104 → 2.5.86-beta.107

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.
@@ -237,41 +237,88 @@ module.exports = function (RED) {
237
237
  */
238
238
  node.updateNodeStatus = function (mobiusNode) {
239
239
  node.users[mobiusNode.id] = mobiusNode;
240
- switch (node.users[mobiusNode.id].statusType) {
241
- case 'timeSinceLastActive':
242
- node.users[mobiusNode.id].status(
243
- node.buildLastActiveTimeStatus(node.users[mobiusNode.id].lastActiveTime)
244
- );
245
- case 'lastUri':
246
- const uri = node.users[mobiusNode.id].latestUri;
247
- if (uri !== '') {
248
- node.users[mobiusNode.id].status({
249
- fill: 'green',
250
- shape: 'dot',
251
- text: uri,
252
- });
253
- }
240
+ if (!node.users[mobiusNode.id].inError) {
241
+ console.log(node.users[mobiusNode.id].statusType);
242
+ switch (node.users[mobiusNode.id].statusType) {
243
+ case 'timeSinceLastActive':
244
+ console.log('A');
245
+ node.users[mobiusNode.id].status(
246
+ node.buildLastActiveTimeStatus(node.users[mobiusNode.id].lastActiveTime)
247
+ );
248
+ case 'lastUri':
249
+ console.log('B');
250
+ const uri = node.users[mobiusNode.id].latestUri;
251
+ if (uri !== '' && uri !== undefined) {
252
+ node.users[mobiusNode.id].status({
253
+ fill: 'green',
254
+ shape: 'dot',
255
+ text: uri,
256
+ });
257
+ }
258
+ case 'lastValue':
259
+ const value = node.users[mobiusNode.id].latestValue;
260
+ if (value !== '' && value !== undefined) {
261
+ node.users[mobiusNode.id].status({
262
+ fill: 'green',
263
+ shape: 'dot',
264
+ text: value,
265
+ });
266
+ }
267
+ }
268
+ } else {
269
+ node.users[mobiusNode.id].status({
270
+ fill: 'green',
271
+ shape: 'dot',
272
+ text: node.users[mobiusNode.id].latestErrMessage,
273
+ });
254
274
  }
255
275
  };
256
276
 
257
- /**
258
- * Update a given node's node latest URI record
259
- * @param {Object} mobiusNode - The node whos last URI record is to be updated
260
- */
261
- node.updateLatestUri = function (mobiusNode, uri) {
262
- node.users[mobiusNode.id] = mobiusNode;
263
- node.users[mobiusNode.id].latestUri = uri;
264
- node.updateNodeStatus(mobiusNode);
265
- };
266
-
267
- /**
268
- * Update a given node's node last active time
269
- * @param {Object} mobiusNode - The node whos last active time is to be updated
270
- */
271
- node.updateLastActiveTime = function (mobiusNode) {
272
- node.users[mobiusNode.id] = mobiusNode;
273
- node.users[mobiusNode.id].lastActiveTime = Date.now();
274
- node.updateNodeStatus(mobiusNode);
277
+ // Information update functions to be used by node status
278
+ node.update = {
279
+ /**
280
+ * Update a given node's node last active time
281
+ * @param {Object} mobiusNode - The node whos last active time is to be updated
282
+ */
283
+ lastActiveTime: (mobiusNode) => {
284
+ node.users[mobiusNode.id] = mobiusNode;
285
+ node.users[mobiusNode.id].lastActiveTime = Date.now();
286
+ node.users[mobiusNode.id].inError = false;
287
+ node.updateNodeStatus(mobiusNode);
288
+ },
289
+ /**
290
+ * Update a given node's node latest URI record
291
+ * @param {Object} mobiusNode - The node whos last URI record is to be updated
292
+ * @param {string} uri - The latest uri to be sent by the node
293
+ */
294
+ latestUri: (mobiusNode, uri) => {
295
+ node.users[mobiusNode.id] = mobiusNode;
296
+ node.users[mobiusNode.id].latestUri = uri;
297
+ node.users[mobiusNode.id].inError = false;
298
+ node.updateNodeStatus(mobiusNode);
299
+ },
300
+ /**
301
+ * Update a given node's node latest URI record
302
+ * @param {Object} mobiusNode - The node whos last URI record is to be updated
303
+ * @param {number} value - The latest value to be sent by the node
304
+ */
305
+ latestValue: (mobiusNode, value) => {
306
+ node.users[mobiusNode.id] = mobiusNode;
307
+ node.users[mobiusNode.id].latestValue = value;
308
+ node.users[mobiusNode.id].inError = false;
309
+ node.updateNodeStatus(mobiusNode);
310
+ },
311
+ /**
312
+ * Update a given node's node latest URI record
313
+ * @param {Object} mobiusNode - The node whos last URI record is to be updated
314
+ * @param {number} value - The latest value to be sent by the node
315
+ */
316
+ errMessage: (mobiusNode, message) => {
317
+ node.users[mobiusNode.id] = mobiusNode;
318
+ node.users[mobiusNode.id].latestErrMessage = message;
319
+ node.users[mobiusNode.id].inError = true;
320
+ node.updateNodeStatus(mobiusNode);
321
+ },
275
322
  };
276
323
 
277
324
  /**
@@ -280,6 +327,7 @@ module.exports = function (RED) {
280
327
  */
281
328
  node.register = function (mobiusNode) {
282
329
  node.users[mobiusNode.id] = mobiusNode;
330
+ node.users[mobiusNode.id].inError = false;
283
331
  if (node.connected) {
284
332
  node.users[mobiusNode.id].status({
285
333
  fill: 'green',
@@ -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" style="width: 140px;"><i class="fa fa-bars"></i> Status Display</label>
58
- <select type="text" id="node-input-statusType" style="display: inline-block; width: 285px; vertical-align: center;">
57
+ <label for="node-input-statusType" style="width: 135px;"><i class="fa fa-square" style="color:##55aa88"></i> Status Display</label>
58
+ <select type="text" id="node-input-statusType" style="display: inline-block; width: 287px; vertical-align: center;">
59
59
  <option value="timeSinceLastActive">Show time since last active</option>
60
60
  <option value="lastUri">Show last URI</option>
61
61
  </select>
@@ -36,7 +36,6 @@ module.exports = function (RED) {
36
36
  this.format = n.format;
37
37
  this.include = n.include;
38
38
  this.serviceConn = RED.nodes.getNode(n.connection);
39
- this.latestUri = '';
40
39
  this.statusType = n.statusType;
41
40
  var node = this;
42
41
 
@@ -47,8 +46,8 @@ module.exports = function (RED) {
47
46
  text: 'Disconnected',
48
47
  });
49
48
  node.serviceConn.subscribeToObjectCOV(node.object, this.id, (response) => {
50
- node.serviceConn.updateLatestUri(node, response.uri);
51
- node.serviceConn.updateLastActiveTime(node);
49
+ node.serviceConn.update.latestUri(node, response.uri);
50
+ node.serviceConn.update.lastActiveTime(node);
52
51
  let allResources = _.keyBy(
53
52
  response.value.resources,
54
53
  node.format === 'name' ? 'name' : 'rid'
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "node-red-contrib-mobius-flow-base",
3
- "version": "2.5.86-beta.104",
3
+ "version": "2.5.86-beta.107",
4
4
  "description": "Node-RED base nodes for Mobius Flow",
5
5
  "main": "index.js",
6
6
  "types": "dist/index.d.ts",