Skip to content

Commit 5487333

Browse files
committed
feature: filter out meta deltas and deltas from node red
1 parent 9f44a72 commit 5487333

File tree

1 file changed

+18
-1
lines changed

1 file changed

+18
-1
lines changed

signalk-on-delta.js

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,26 @@ module.exports = function(RED) {
55
var node = this;
66

77
var signalk = node.context().global.get('signalk')
8+
var app = node.context().global.get('app')
89

910
function on_delta(delta) {
10-
node.send({ payload: delta })
11+
if ( delta.updates ) {
12+
var copy = JSON.parse(JSON.stringify(delta))
13+
copy.updates = []
14+
delta.updates.forEach(update => {
15+
if ( update.values &&
16+
(!update.$source || !update.$source.startsWith('signalk-node-red') )) {
17+
copy.updates.push(update)
18+
}
19+
})
20+
21+
if ( copy.updates.length > 0 ) {
22+
if ( copy.context == app.selfContext ) {
23+
copy.context = 'vessels.self'
24+
}
25+
node.send({ payload: copy })
26+
}
27+
}
1128
}
1229

1330
signalk.on('delta', on_delta)

0 commit comments

Comments
 (0)