我正在努力让JSON使用我已创建的电报机器人。我可以通过Node Red中的电报在调试屏幕中发送和接收消息。
我想从电报中获取返回api消息,然后将其解析出来,如果我发送“LED-ON”命令或类似命令,最终会让它执行某些操作。
目前我看到这种类型的JSON格式。我想基本上从JSON对象解析内容字段以使我开启LED。
{
"chatId":64XXXXX7,
"messageId":337,
"type":"message",
"content":"LED-ON",
"date":"2017-09-09T07:07:38.000Z",
"inbound":true
}
我使用了JSON节点但是从调试它只将消息从json对象更改为json字符串。但我还是无法解析LED-ON。
此外,如果我将LED-ON过滤并将其发送到拆分节点以生成MQTT消息以转动LED,我是否需要它作为对象或字符串?对不起,我对编程很新。
如果它没有意义,我可以分享流量。
答案 0 :(得分:0)
如果内容已经是JSON对象,则不需要JSON节点。
我不知道为什么你需要一个拆分节点,一个交换节点或一个功能节点应该只是测试msg.payload.content
MQTT节点将始终在发布之前将任何出站msg.payload
转换为字符串。
编辑:
所有节点(包括函数节点)都需要返回一个对象。 msg.payload通常应该保存一个节点的“输出”,也不需要声明msg
因为它已经在范围内,所以在你的例子中它应该是:
msg.payload = msg.payload.content;
return msg;
此外,您可以在Node-RED Slack团队(从Node-RED主页链接)上更好地提出这样的问题,因为它可能需要一些来回,Stack Overflow最不适合。< / p>