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. php获取请求路径_如何获取php.ini文件路径?
  2. Android面试题目整理与讲解
  3. CV之FR:计算机视觉之人脸识别(Face Recognition)方向的简介、使用方法、案例应用之详细攻略
  4. Endnote如何一键更改参考文献?
  5. Opportunity workflow debug
  6. 【总有一些东西要弄清】——说说面试时一系列的CSS问题
  7. 苹果手机运行python_iPhone是卖的最好的手机?用Python照样把他玩弄鼓掌之间!
  8. 综述 | 深度学习弱目标检测定位
  9. java的异常处理块的形式_Java 异常处理详细解读
  10. 从源码解析LinkedList集合
  11. 洛谷 P4568 [JLOI2011]飞行路线
  12. mysql用 fifo 记录日志_Python学习第四十七天记录打call:mysqlclient操作MySQL关系型数据库...
  13. PLT图纸外发控制系统
  14. 【常用方法】ContactsUtil-联系人工具类
  15. 怎么下载正版java7_Java7中jdk的下载和安装
  16. Android开发工程师已难找工作
  17. 个人游戏经历及游戏体验(解谜向)
  18. lombok报错 InvalidDefinitionException: No serializer found
  19. ITIL学习笔记——核心流程之:容量管理
  20. Matplotlib中的plt和ax都是啥?

热门文章

  1. win7使用android字体文件,处置win7系统安装TTF字体文件的详细步骤
  2. 陈新春老师--沪师经纪刘建
  3. 【git】git命令和相关脚本
  4. CAD2018启动没有响应
  5. stm32、IO口、中断、串口、定时器讲解
  6. 项目实战大结局PC固定端旅游网页设计
  7. 80X86汇编语言程序设计教程(杨季文)习题答案二
  8. 关于计算机软件及mme 部分,网络线条-优化专业题库-201309
  9. Python中for语句与else语句的结合使用
  10. 浮点数运算的的规格化