From 8bde61fa2748fd61c346250b3c1eddf7ad1ec5f1 Mon Sep 17 00:00:00 2001 From: Alex McLean Date: Thu, 6 Feb 2025 14:59:03 +0000 Subject: [PATCH] allow duration and cps metadata to be added to mqtt messages (#1279) --- packages/mqtt/mqtt.mjs | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/packages/mqtt/mqtt.mjs b/packages/mqtt/mqtt.mjs index 0d02a37c0..5ffa7c1fc 100644 --- a/packages/mqtt/mqtt.mjs +++ b/packages/mqtt/mqtt.mjs @@ -35,6 +35,7 @@ Pattern.prototype.mqtt = function ( host = 'wss://localhost:8883/', client = undefined, latency = 0, + add_meta = true, ) { const key = host + '-' + client; let connected = false; @@ -88,7 +89,12 @@ Pattern.prototype.mqtt = function ( } let message = ''; if (typeof hap.value === 'object') { - message = JSON.stringify(hap.value); + let value = hap.value; + if (add_meta) { + const duration = hap.duration.div(cps); + value = { ...value, duration: duration.valueOf(), cps: cps }; + } + message = JSON.stringify(value); } else { message = hap.value; }