diff --git a/packages/node_modules/@node-red/nodes/core/sequence/17-split.js b/packages/node_modules/@node-red/nodes/core/sequence/17-split.js index e3e4377f5..d2b7fc226 100644 --- a/packages/node_modules/@node-red/nodes/core/sequence/17-split.js +++ b/packages/node_modules/@node-red/nodes/core/sequence/17-split.js @@ -631,6 +631,19 @@ module.exports = function(RED) { } } + if (msg.hasOwnProperty("resetTimeout")) { + if (inflight[partId]) { + if (inflight[partId].timeout) { + clearTimeout(inflight[partId].timeout); + } + if (node.timer > 0) { + inflight[partId].timeout = setTimeout(function() { + completeSend(partId) + }, node.timer) + } + } + } + if (msg.hasOwnProperty("reset")) { if (inflight[partId]) { if (inflight[partId].timeout) { diff --git a/packages/node_modules/@node-red/nodes/locales/en-US/sequence/17-split.html b/packages/node_modules/@node-red/nodes/locales/en-US/sequence/17-split.html index 3334ec126..51e8600db 100644 --- a/packages/node_modules/@node-red/nodes/locales/en-US/sequence/17-split.html +++ b/packages/node_modules/@node-red/nodes/locales/en-US/sequence/17-split.html @@ -118,6 +118,7 @@

A timeout can be set to trigger sending the new message using whatever has been received so far.

If a message is received with the msg.complete property set, the output message is finalised and sent. This resets any part counts.

+

If a message is received with the msg.resetTimeout property set, the timer for the partly complete message is reset to the original time.

If a message is received with the msg.reset property set, the partly complete message is deleted and not sent. This resets any part counts.