在学习使用OneNET云平台过程中,使用MQTT协议向平台上传数据,利用MQTT.fx输入发布tpoic,为了确保设备上传消息确实被平台所接受处理,设备可以订阅系统 topic ,从而获取上传数据点的结果消息
具体详情可参见OneNET官方链接:link
有关topic簇详情内容可参见OneNET官方链接:link

一、设备添加数据流模板

数据流模板 -> 添加数据流模板

二、数据点topic簇

MQTT物联网套件支持用户以数据流-数据点模型将数据上传至平台并进行存储,设备可以通过数据点 topic 簇调用数据点存储服务存储数据,可以通过订阅系统 topic 获取数据处理结果通知,如下图所示:

数据点 topic 簇 topic 列表如下:

系统topic 用途 QoS 可订阅 可发布
$sys/{pid}/{device-name}/dp/post/json 设备上传数据点 0/1
$sys/{pid}/{device-name}/dp/post/json/accepted 系统通知"设备上传数据点成功" 0
$sys/{pid}/{device-name}/dp/post/json/rejected 系统通知"设备上传数据点失败" 0

设备数据点上传
设备可以通过向系统固定 topic:$sys/{pid}/{device-name}/dp/post/json 发送数据点存储消息,消息中payload字段数据内容仅支持json格式,示例如下:

{"id": 123,        "dp": {             "temperatrue": [{     "v": 30,       "t": 1552289676}],"power": [{     "v": 4.5,        "t": 1552289676 }],"status": [{"v": {"color": "blue"},"t": 1552289677},{"v": {"color": "red"},"t": 1552289678}]}
}

设备数据点上传,支持 QoS1,若 publish QoS=1,则平台回复 publish ack

三、MQTT.fx参数配置

1、订阅topic
为了确保设备上传消息确实被平台所接受处理,设备可以订阅系统 topic 获取上传数据点的结果消息;
选择Subscribe项,输入订阅topic名称;
点击 Subscribe,完成 topic 订阅;

订阅topic命名规则:$sys/{pid}/{device-name}/dp/post/json/+
本例中,订阅topic为:$sys/349308/DHT11/dp/post/json/+


2、设备数据点上传
选择Publish项,输入发布 topic;
点击 Publish,上传数据点至平台;

发布topic 命名规则:$sys/{pid}/{device-name}/dp/post/json
本例中,发布 topic 名称为:$sys/349308/DHT11/dp/post/json

参数说明:
① id :消息ID,大于0的整数,数值范围为,4字节有符号数取值范围
② dp:数据点内容,key-value格式,key为数据流名称,value为list格式的一个或者多个数据点值
③ v:数据点值,可以为int/float/string/object多种格式
④ t :数据点时间戳,unix时间,单位为秒,若不携带,则系统将以数据到达平台时间作为其数据时间

若数据上传成功则在OneNET云平台数据流模板处可以看到相应的数据流,如图所示:

平台通知上传结果
消息处理完成后,平台通过系统 topic 向设备发送上传结果通知,若设备订阅了该 topic,则能收到该消息
当上传数据处理成功时
返回消息至:sys/sys/sys/{pid}/${device-name}/dp/post/json/accepted
数据格式为:

{"id": 12              //对应数据上报时的消息ID
}


当上传数据处理失败时
返回消息至:sys/sys/sys/{pid}/${device-name}/dp/post/json/rejected
若不能成功解析合法id,错误时,返回数据格式为:

{"id": -1,             "err_code": 98,"err_msg":"Illegal Data"
}


若能成功解析合法id,由其他格式问题导致的错误,返回数据格式为:

{"id": 123,            "err_code": 98,"err_msg":"Illegal Data"
}

错误码
上传数据处理失败时,错误码如下:

错误码 err_code 错误消息 err_msg 说明
98 Illegal Data payload格式有误,平台解析失败

【MQTT】利用MQTT.fx上传数据节点到中移OneNET云平台相关推荐

  1. 如何将本地文件利用git工具上传到github仓库中(超详细+最新版)

    https://blog.csdn.net/hanhanwanghaha宝藏女孩 欢迎您的关注! 欢迎关注微信公众号:宝藏女孩的成长日记 如有转载,请注明出处(如不注明,盗者必究) 如何将本地文件利用 ...

  2. ESP32运行MicroPython通过MQTT上报温湿度到中移OneNET物联网平台(附源码)

    前言:MQTT是当下物联网用的比较多的协议,本篇聊一聊用esp32通过MQTT连接到中移OneNET物联网平台. OneNET平台创建产品和设备 1.​创建产品:开发者中心->全部产品-> ...

  3. php利用ajax文件上传,如何在PHP中利用AjaxForm实现一个文件上传功能

    如何在PHP中利用AjaxForm实现一个文件上传功能 发布时间:2020-12-18 14:52:38 来源:亿速云 阅读:94 作者:Leah 如何在PHP中利用AjaxForm实现一个文件上传功 ...

  4. [PHP]利用XAMPP搭建本地服务器, 然后利用iOS客户端上传数据到本地服务器中(四. iOS端代码实现)...

    一.安装XAMPP   http://www.cnblogs.com/lidongxu/p/5256330.html 二. 配置MySql  http://www.cnblogs.com/lidong ...

  5. 2-STM32+ESP8266连接onenet并上传数据(HTTP)

    上一篇文章内容链接为下 1-ESP8266-AT指令初试化及部分基础知识 2-STM32+ESP8266连接onenet并上传数据(HTTP) 一.预备知识小插曲 ESP8266,onenet云平台, ...

  6. 监测现场实时数据上传到中移物联网OneNet云平台

    OneNet,中移物联网云平台,是由中国移动打造的PaaS物联网开放平台.平台能够帮助开发者轻松实现设备接入与设备连接,快速完成产品开发部署,为智能硬件.智能家居产品提供完善的物联网解决方案(摘自36 ...

  7. 数据上云|OneMO DTU数传模组接入OneNET云平台操作详细过程

    目录 前言 第一步.OneNET云平台基础搭建 第二步.DTU数传模组参数配置 第三步.成果展示 友友们,我要不再买一块补个仓,拉低成本?! 前言 最近在做物联网实训项目,要求将传感器的数据采集上传到 ...

  8. 骑士智能科技M5310模块连接中移OneNet平台实现数据交互

    一.实验目的 使用骑士智能科技M5310模块加USB转串口,连接到中移OneNet平台上,并实现温湿度数据交互 二.准备工作 硬件:骑士智能科技M5310模块 + 移动NB卡.USB转串口.天线 软件 ...

  9. MQTT协议-报文分析及网络客户端报文测试(MQTT报文连接阿里云上传数据+订阅数据)

    文章目录 一.本文章所涉及到的内容 二.感性认识MQTT协议 三.准备信息 (一)工具获取 (二)获取信息 1.获取三元组信息 2.获取发布topic和订阅topic 3.客户端ID,用户名,哈希加密 ...

最新文章

  1. qtp查询mysql_QTP中测试数据库连接
  2. hudo as3 网络通信框架
  3. 从mysql到大数据(二)--数据库的认识
  4. mac怎么装java eclipse_如何在Mac系统安装eclipse并运行java程序
  5. 凸包板子试炼(玄学过题)
  6. python如何处理文本文件_python如何选择合适的异常处理方式?
  7. 老美,人不能无耻到这种地步
  8. 教你用Access做个简易MIS管理系统
  9. 井下作业类毕业论文文献有哪些?
  10. 程序员是否要考PMP认证?看这篇就够了
  11. treble_Android上的Project Treble是什么,我的手机会收到吗?
  12. 两个经纬度偏角_[转载]根据两点的经纬度求方位角和距离,等
  13. SpringBoot2.0(九):实现微信授权登录并且获取用户信息
  14. 解决Windows 由于路径过长而无法删除文件的问题
  15. mp2551总线收发器芯片作用_高速CAN收发器MCP2551
  16. LeetCode:贪心算法(30道经典题目)
  17. Oracle卸载教程
  18. python怎么把一个文件夹内的文件复制到另外一个文件夹(进阶重命名复制)
  19. Java集合或Map中元素排序及过滤
  20. altera fpga 型号说明_ALTERA的FPGA命名规则(转载)

热门文章

  1. go build 无文件_用一句话描述Go语言的命令
  2. onenote CAS总结⑦:异常“强大”的搜索机制(转载)
  3. 妙用Spring的事务超时时间timeout
  4. 元宇宙是人类文明不可避免的一次内卷
  5. 不会画架构图的程序员不是好的技术扛把子,手把手练起来~
  6. Everything介绍
  7. 抖音新作品发布监控提醒[网页版]
  8. chapter01 心灵和思维
  9. 电脑定时关机怎么设置(教程方法软件)
  10. MATLAB出现“变量似乎要更改脚本中每个循环迭代的大小。请考虑对速度进行预分配。”警告如何解决...