开发者社区 > 物联网 > 正文

使用阿里云官方python SDK获取实例订阅消息,如何接收HEX数据?如何转储本地文件?

在公共实例里按照官方的手册文档创建了设备和消费组进行消息流转,使用AMQP协议进行消息订阅,下载了官方文档里的pythonSDK代码实验,由于我的设备是使用DTU上传的HEX数据,在官方程序里是使用的utf-8进行encode和decode,接收到的数据会输出为乱码,这是第一个问题。
屏幕截图 2024-06-25 215119.png

第二个问题是,设备上传频率为一秒一组,接收到的信息直接输出到控制台界面,我想要将接收到的数据进行保存,无论是json还是csv都可以,但我找不到存储接受数据的变量在哪,无法对接收数据进行转储。

展开
收起
游客dc5clt23c3the 2024-06-25 21:49:19 75 0
1 条回答
写回答
取消 提交回答
  • 问题已解决,接收的数据为frame.body,在username中将编码形式改为base64,会得到HEX数据的base64格式的编码(为什么不用utf-8?)是因为utf-8所能译出的符号有限,有的数据被译为图中“?”这样的乱码。这样会损失数据。得到base64编码的数据后就可以编写格式转换函数,用的base64库,接着再转换为我需要的32位精度浮点数。

    2024-06-26 18:47:51
    赞同 1 展开评论 打赏

物联网领域前沿技术分享与交流

相关电子书

更多
从 SDK 到编解码:视频直播架构解析 立即下载
跨平台的云服务SDK需要什么 立即下载
一个跨平台的云服务SDK需要什么 立即下载