NB-IoT物联网套件 产品介绍 快速入门 用户指南 设备开发指南 应用开发指南 NB设备远程升级 最佳实践 常见问题 服务协议 更新日志

NB-IoT常见问题-协议相关

本页目录

1.关于平台更新资源Update上报的理解

2.在平台删除设备后,设备仍然可以向平台发送数据?

3.关于平台显示收到设备的Notify,但是显示设备不存在?

4.设备离线后还能上报数据么?

5.设备在Lifetime周期内未上报任何消息,为何平台还显示设备在线?

6.Lifetime的最大值可以设置为多少,一般设置多长较为合理?

7.设备在OneNET 门户页面上为什么是离线状态?

8.连续上传数据,每5分钟才有一条数据保存到平台?

9.上传的 Integer/ Float/字符串数据显示为 [10, 100, 123] 这种格式?

10. Read到Resource和Read到Instance,数据上报的格式分别是什么?

11.平台向设备下发命令,在设备没有Notify之前,设备接收到的是Acsii码,但在设备上报后能正确接收到数据。

12.为什么在下发数据的时候经常出现超时问题, 但是有数据交互的时候就不会出现超时问题?

13.设备向平台发送Con消息,一定会接收到回复么?

数据上报、更新(Update)和通知(Notify)相关问题

1. 关于平台更新资源Update上报的理解

答:当接入机接收到设备的Update报文时,更新设备的Lifetime,然后根据Update中的Linkobject包含的对象实例内容,与上一次的资源进行比较,清除原资源中含有而Update中不包含的旧对象实例并取消对应的订阅,添加Update中新的对象实例并对新对象实例下发设备注册时的操作(Observer、Discover)。

2. 在平台删除设备后,设备仍然可以向平台发送数据?

答:不可以。由于平台保留了设备注册的缓存信息,可能会出现下面的情况:在线设备被删除后,仍能收到向平台发送数据,且能收到正确响应。
如果设备的Lifetime很长的话,在Lifetime期间内设备是可以上报数据的,当发送下次更新信息后,平台会及时剔除设备。

3. 关于平台显示收到设备的Notify,但是显示设备不存在?

答:可能是设备未及时Update,平台已经剔除设备。

4. 设备离线后还能上报数据么?

答:平台收到离线设备上报数据后,会下发Rst,阻止设备再次上行消息。

5. 设备在Lifetime周期内未上报任何消息,为何平台还显示设备在线?

答:根据平台判断设备离线的机制,设备在线状态显示可能会有一定延迟,大概在一分钟。

6. Lifetime的最大值可以设置为多少,一般设置多长较为合理?

答:32位模组Lifetime的最大值是2^32-1(S)。基于设备的用途来设置生命周期。

  • 如果设备不会使用在线命令,则可以任意设置。
  • 如果设备需要使用在线命令,并且Notify频率又很低的情况下,建议5min以内。

7. 设备在OneNET 门户页面上为什么是离线状态?

答:设备的在线状态只跟Lifetime 是否过期有关。

Lifetime 设备连接(Register) 的一个参数,单位为秒,不指定则默认为 86400,Lifetime 到期后,平台就会把设备踢下线,此时设备无法上报数据,只能重新连接(Register)。设备可以在Lifetime未过期时通过发送 Register Update 报文延长 Lifetime。

8. 连续上传数据,每5分钟才有一条数据保存到平台?

答:CoAP 协议通过 Message id 和 Token 来过滤重复消息,对于上报(Notify)的包,如果订阅的路径相同,则Token会相同,如果Message id 不变,会被当作重复消息并被过滤。重复消息过滤的时间窗口是 247 秒,即第一条消息被处理后,247秒内的重复消息都会被过滤。

9. 上传的 Integer/ Float/字符串数据显示为 [10, 100, 123] 这种格式?

答:没有使用 IPSO 定义的标准资源模型。对于非 IPSO 模型的 Object ID 和 Resource ID, 平台无法判断资源的数据类型,则会按照二进制处理。

读|写|执行、API、缓存命令相关问题

10. Read到Resource和Read到Instance,数据上报的格式分别是什么?

答:Read到Resource采用Plain/Text格式上报;Read到Instance采用Tlv格式上报。

11. 平台向设备下发命令,在设备没有Notify之前,设备接收到的是Acsii码,但在设备上报后能正确接收到数据。

答:这是由于模组不知道资源类型导致的,当设备上报Notify了后,模组声明了资源类型,接收到相应平台对相应资源的写命令后,能正确翻译该资源的类型,就可以正确接收到数据。在不知道资源类型的时候,模组会将该资源类型当成Opaque类型,所以看到的是Ascii码。

12. 为什么在下发数据的时候经常出现超时问题, 但是有数据交互的时候就不会出现超时问题?

答:如果长时间没有上行数据,核心网会踢掉之前缓存的连接信息,路由找不到设备,就会导致超时。

13. 设备向平台发送Con消息,一定会接收到回复么?

答:收到任何Con消息后,接入机都会回复Ack,正常的消息走正常流程,异常的Con消息,接入机会丢弃报文,但是也会下发Ack或者Rst。

个搜索结果,搜索内容 “

    0 个搜索结果,搜索内容 “