c-使用AT命令以JSON模式发送数据



我正在建立与服务器的MQTT连接。我需要使用AT命令以JSON模式格式将数据发送到服务器
N58 Neoway模块中使用的模块。使用AT命令建立连接,对于向服务器发布数据或从服务器订阅数据,应该以JSON格式进行
使用的AT命令是:

AT+MQTTPUB=1,1,<"topic_name">,<"data">

我需要在数据的位置发送JSON模式
寻求任何建议/帮助。

源代码基于C.

通过AT命令发送JSON的问题在于它包含双引号",不幸的是,根据AT命令ETSI规范,这些双引号被解释为字符串参数的开头。因此,在许多模块中发生的情况是,不可能将JSON字符串作为参数发送。

一些调制解调器供应商通过启动在线模式来解决此问题,在该模式下可以原始发送数据
N58使用不同的策略,即转义特殊字符。在AT命令指南中,它被称为数据链路转义

虽然指南可能更好(没有明确解释数据链接转义(,但我们可以从示例中推断出来(例如参见AT+UDPSEND中的示例(:为了转义"字符,只需像在C字符串中那样编写"即可。示例:

AT+MQTTPUB=1,1,"topic_name","{"menu":{"id":"1","value":"2"}}"

最新更新