Node-red 将消息输出到 CSV

Node-red output a message to CSV

在过去的几天里,我一直在尝试和阅读以在 Node-Red 中完成一些非常具体的事情:我想将 (LoRa) 消息发送到 CSV。 此 CSV 应包含以下项目:

我可以使用函数节点插入日期:

var str1 = Date();

我一直在玩 CSV 节点,但我无法让它输出逗号分隔值。这一切可能与我缺乏 javascript 编程技能有关,这就是我求助于您的原因。

你能帮帮我吗?

编辑: 我仍在寻找答案,这给我带来了以下内容: 函数节点:

var res = Date() + "," + msg.topic + "," + msg.payload; return [ { payload: res } ]; 

输出:

[{"col1":"Mon Oct 17 2016 17:10:20 GMT+0200 (CEST)","col2":"1/test/1","col3":"string1"}]

我现在只想丢失额外的信息,例如列名和 [{}]

CSV 节点仅适用于 msg.payload 字段,因此您必须将额外的数据复制到有效负载对象中才能使其输出您想要的内容。

因此,为了正确格式化数据,您需要在 CSV 节点之前放置一个具有以下内容的函数节点:

var originalPayload = msg.payload;
var newPayload = {};
newPayload.date = new Date().toString();
newPayload.topic = msg.topic;
newPayload.payload = originalPayload;
msg.payload = newPayload;

return msg;

并配置 CSV 节点输出列 "date,topic,payload"