将不同的 MQTT 主题数据合并为一个 JSON 节点红色字符串
Club different MQTT Topic data into one JSON string in node red
如何将所有 MQTT 主题数据合并到一个 JSON 字符串中
我只能像这样 JSON 获得单个主题的字符串
"{"time":1549737900821,"payload":"1997.32","topic":"RotateZ"}"
{"time":1549737900821,"payload":"1954.32","topic":"RotateY"}"
但我只想在一个 JSON 字符串中显示所有主题数据,例如
"{"time":1549737900821,
"RotateZ":"1997.32",
"RotateY":"1954.32"}"
我在函数节点中使用下面提到的代码
var topic = msg.topic;
var d = new Date();
var t = d.getTime();
payload = {"time":t, "payload" : msg.payload ,"topic": topic }
msg.payload = payload;
return msg;
什么修改可以帮助我让它工作?
对此的任何建议都会有很大的帮助
尝试Join
节点。设置手动,组合每个 msg.payload 以使用 msg.topic
的值作为键来创建 a key/value object
。在输出中像这样在 simle 函数中添加时间戳:
var d = new Date();
msg.payload.time = d.getTime();
return msg;
如何将所有 MQTT 主题数据合并到一个 JSON 字符串中 我只能像这样 JSON 获得单个主题的字符串
"{"time":1549737900821,"payload":"1997.32","topic":"RotateZ"}"
{"time":1549737900821,"payload":"1954.32","topic":"RotateY"}"
但我只想在一个 JSON 字符串中显示所有主题数据,例如
"{"time":1549737900821,
"RotateZ":"1997.32",
"RotateY":"1954.32"}"
我在函数节点中使用下面提到的代码
var topic = msg.topic;
var d = new Date();
var t = d.getTime();
payload = {"time":t, "payload" : msg.payload ,"topic": topic }
msg.payload = payload;
return msg;
什么修改可以帮助我让它工作? 对此的任何建议都会有很大的帮助
尝试Join
节点。设置手动,组合每个 msg.payload 以使用 msg.topic
的值作为键来创建 a key/value object
。在输出中像这样在 simle 函数中添加时间戳:
var d = new Date();
msg.payload.time = d.getTime();
return msg;