1 如果要把温度,湿度,光照度分成三条独立的消息,实操中如何改动?

在模型定义的时候将温度、湿度和光照度分别放在不同的服务之中,然后再开发编解码插件的时候放在不同的消息之中。有时候多数据不需要放在一起,一些隔很长时间才需要获取一次的数据,可以成为一条独立的消息,以减少开销。

2 平台命令下发和命令回应可以合成一条消息吗?

不可以,这里的命令下发是指平台发送给设备的命令,命令回应是设备收到平台下发的命令后,才发给平台的响应。设备必须向平台返回ACK响应,平台才认为设备收到了命令,否则平台会认为这条命令没有下发成功,会重复下发这条命令直到收到ACK响应或命令过期。

立即下发

缓存下发

3  理解messageid 和mid的区别。

messageid更像是标记一条信息是什么类型的信息,比如说平台在下发各种不同的命令时,同一种命令会带有相同的messaged字段,如果需要设备在接到命令后,需要返回命令响应,则要发送messged+1的响应信息。也因为messsged的不同,编解码插件可以对设备发送的数据中的上报消息和命令响应消息进行区分。而messageid,是在开发编解码插件的时候就我们就已经定义好的。

右边框框中有三条数据,倒数第二条是回应倒数第一条的响应消息,第一条是设备上报的数据,显而易见,他们的messageid明显不同

在对平台下发的命令进行回应时,mid字段就相当重要了,它表示设备的上发的命令响应回应的是哪一条消息,因此,我们可以观察到,命令下发消息和命令响应消息中的mid字段,一定要是相同的。如果不相同,日志会有mid为空的错误。而且平台下发命令,不管有没有收到设备的命令回应,每发一条消息,mid会+1,我们要对这条消息进行回应的话,就必须在我们的命令回应字段加入相同的mid。如此一来,编解码插件可以将命令下发消息和对应的命令响应消息进行关联,进行一一的对应。

观察左下角的日志,响应成功

报错,找不到mid

4 理解编辑码插件作用。

编解码插件是用来完成二进制格式和JSON格式的转换的。

在命令上报流程中,它负责将设备上报的二进制码流解码成JSON格式的数据,发送给应用服务器。将应用服务器响应的JSON格式数据编码成二进制码流,下发给设备。

数据上报流程

在命令下发流程中,将应用服务器下发的JSON格式数据编码成二进制码流,下发给设备。将设备响应的二进制码流解码成JSON格式的数据,上报给应用服务器。

命令下发流程

从几个小问题谈谈我对华为云产品开发的理解相关推荐

  1. 【云小课合集】华为云小课最全合集来了,让您上云无忧

    [摘要] 云小课为您精挑华为云服务热门知识点,通过浅显易懂的图文描述,帮助您快速上手使用华为云. 类别 服务名 云小课链接 计算 弹性云服务器 [云小课]基础服务第1课   我该怎么选择云主机的规格? ...

  2. 华为云物联网平台微信小程序开发教程2.0【完整详细教程】

    一.简介   在之前曾发布过一篇文章"华为云物联网平台的微信小程序开发",在最近接到部分用户私信在使用开发过程中出现的问题,例如API访问的"401"现象等问题 ...

  3. 4. linux调用文件计算阶乘前n项和_用一道有趣的小题谈谈性能优化--求阶乘和的末6位

    此题来源:算法竞赛入门经典(第2版) P21 /** * 输入n, 计算 S = 1! + 2! + ... n! 的末六位(不含前导0).* n < 10^6* n! 表示阶乘, 是前n个正整 ...

  4. 专栏:谈谈我对当下大数据整顿的理解与风控建议

    FAL金科应用研究院 专栏:谈谈我对当下大数据整顿的理解与风控建议 最近大数据行业爬虫业务监管调查风波刚稍有平息,又有P2P行业疑是被传"全军覆没",国家年前的整治力度可不谓不大. ...

  5. 谈谈对CNN在NLP中可行性的理解

    谈谈对CNN在NLP中可行性的理解 谈到CNN,人们的直观感受还是其在图像处理领域取得的巨大成就,虽然近几年越来越多的论文使用到CNN与RNN的模型来探索卷积网络在自然语言处理中的应用,但始终还是无法 ...

  6. 谈谈:高端网站定制开发的流程和步骤有哪些?

    第一步是明确网站的定位.我们需要明确我们网站的定位.公司的产品优势和我们访问的目标群体.这是我们需要做的第一件事.我们需要公司的实际情况来定位网站的风格.众所周知,网站风格分为营销网站.品牌网站.电子 ...

  7. 谈谈产品开发团队的配置管理规则

    作者:张克强    作者微博:张克强-敏捷307 在<源代码管理的新15条建议 >中的第7条建议提到:每个团队应当对代码配置项和非配置项有所说明,不要假设每个团队新人都是代码配置管理达人, ...

  8. 小游戏专场:腾讯云Game-Tech技术沙龙上海站顺利落下帷幕

    欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由腾讯游戏云发表于云+社区专栏 9月14日腾讯云GAME-TECH技术沙龙小游戏专场在上海顺利举办,此次技术沙龙由腾讯云的资深专家,以及 ...

  9. [ECMAScript] 谈谈你对es6的module体系的理解

    [ECMAScript] 谈谈你对es6的module体系的理解 es5的模块规范出来之前,前端也实现了比如AMD CMD模块规范,对前端模块进行管理. es6的模块规范在语言层面实现了模块功能 为什 ...

最新文章

  1. VS 2019 查看类图 UML 图
  2. sqplus操作oracle,sqlplus操作oracle
  3. Zuul之Filter详解
  4. stat函数_数据分析工具入门 掌握这些Excel函数就够了
  5. LeetCode 2194. Excel 表中某个范围内的单元格
  6. java需求设计_JavaWeb期末设计---需求分析文档. stage1
  7. 没有workstation_这才是Win10的旗舰版:WorkStation版独享功能测试
  8. 如何用禅道写出一份让开发膜拜的测试用例?超神级测试用例库
  9. 电工电子产品环境试验GB国标汇总
  10. png能转换成html吗,png转化成pdf
  11. OpenCV最小二乘法圆拟合
  12. 小松鼠邮件(squirrelmail)服务器部署(squirrelmail+Postfix)
  13. 机器学习和深度学习之数学基础-线性代数 第一节 向量及线性映射
  14. 校园跳蚤市场信息管理c语言,C语言 习题课.ppt
  15. IMMC2019(秋季赛)首批晋级国际赛队伍公布
  16. PHP文件开启SSI(以CMSTOP环境为例)
  17. 528沉思录 -- 年轻人,停下来想想,思考不是浪费时间
  18. .Net 官方学习文档
  19. 中创算力丨七夕抬头望碧霄,喜鹊双双拱鹊桥
  20. 面包板入门--点亮LED

热门文章

  1. UserWarning: Failed to load image Python extension: [WinError 126] 找不到指定的模块。 warn(f“Failed to load
  2. python之数据文件批量清洗,入库
  3. Python pandas 操作 csv 修改 2021/8/29
  4. Leetcode13_罗马数字转整数
  5. Python 集合06 discard()方法—删除集合中的指定元素
  6. kindle 资源整理 (将持续更新)
  7. 数据分析的理论与实践
  8. css怎么设置上三角,如何使用css实现三角符号 (附代码)
  9. 海格里斯仓储冷库知识:自动化大型仓储冷库安装与维修的必要点
  10. 西梅APP,不waichu也能看全球趣闻热点资讯,英语脱口秀,原版书