设备端开发常见问题(1)

简介: 针对工单上设备端常见问题整理。

【】设备端上报{"Content":"Publish message to topic:/a1yYDYMf6Fw/GZDD-MQTT-T1-002/user/get,QoS=0","Reason":"No authorization"},这种问题就是topic权限对应权限不对,发布和订阅注意一些,如果是自定义topic,设备端订阅过了,那么设备上行到这个topic,云端会下发一条,这里平台的机制就是基于mqtt机制做的。

【】设备端上报struct类型,一般很多客户不知道数据格式或者在调试里面应该如何使用,这里有一个技巧,这个struct类型,数据格式上报一个就知道,在虚拟调试里面,{"ss":{"t1":1,"t2":2}}

【】设备离线状态怎么获取,如何能检测到并传到客户自己开发的后端,,两种方式,一种是通过服务端订阅,订阅实时的设备行为变化,以里面的lastTime字段去维护设备最终状态。

另外一种是调云端api,GetDeviceStatus获取设备状态,不过这个是建立再心跳机制上的。

【】常见设备离线场景:
1.TCP长连接断开,解决:检查设备端网络,本身设备端做好重连机制:MqttConnectOptionsc.setAutomaticReconnect(true)

2.心跳超时,解决:MQTT连接心跳时间为30秒至1,200秒。心跳时间不在此区间内,服务器将会拒绝连接。建议取值300秒以上。如果设备端网络较差,值相对可以设置的大一些。

3.设备互踢,两种情况

1.设备和物联网平台的连接是基于mqtt协议的,假设设置的心跳时间是300s,那么只有超过心跳时间后,平台还没有收到设备端发送的心跳包,才认为设备离线。
如果在300s内,网络恢复,您的设备重新上线(也就是说设备本来离线,平台这边还是认为在线的,因为没有到300s),那平台就认为被同一台设备挤下线了,所以显示kicked by the same device

2.同一组三元组信息两个或以上设备同一时间连接,这个连接被踢掉了。

在使用sdk,设备出现这种情况,会立即自动重连 1s 2s 4s这样重连。

https://help.aliyun.com/document_detail/44556.html?spm=5176.11065259.1996646101.searchclickresult.3bdd3a56UizOrT&aly_as=KHpyUXcP

相关实践学习
快速体验阿里云云消息队列RocketMQ版
本实验将带您快速体验使用云消息队列RocketMQ版Serverless系列实例进行获取接入点、创建Topic、创建订阅组、收发消息、查看消息轨迹和仪表盘。
消息队列 MNS 入门课程
1、消息队列MNS简介 本节课介绍消息队列的MNS的基础概念 2、消息队列MNS特性 本节课介绍消息队列的MNS的主要特性 3、MNS的最佳实践及场景应用 本节课介绍消息队列的MNS的最佳实践及场景应用案例 4、手把手系列:消息队列MNS实操讲 本节课介绍消息队列的MNS的实际操作演示 5、动手实验:基于MNS,0基础轻松构建 Web Client 本节课带您一起基于MNS,0基础轻松构建 Web Client
目录
相关文章
|
数据可视化
ShapeNet数据集及dataset代码分析
ShapeNet数据集及dataset代码分析
1283 0
|
数据采集 存储 JSON
C语言如何执行HTTP GET请求
C语言如何执行HTTP GET请求
|
监控 前端开发 网络协议
如何使用Spring Boot实现WebSocket通信
如何使用Spring Boot实现WebSocket通信
|
计算机视觉 Python
OpenCV中文字的绘制与动态绘制图形讲解与实战(附Python源码)
OpenCV中文字的绘制与动态绘制图形讲解与实战(附Python源码)
330 0
HH
|
监控 网络协议 物联网
阿里云物联网平台offline离线日志原因排查
整理一下常见的离线日志offline reason,方便理清思路排查设备端离线原因。
HH
10405 15
阿里云物联网平台offline离线日志原因排查
|
数据安全/隐私保护
Esp8266+阿里云+STM32点灯(二)
Esp8266+阿里云+STM32点灯(二)
EMQ
|
传感器 算法 网络协议
MQTT 客户端自动重连最佳实践|构建可靠 IoT 设备连接
本文介绍在MQTT客户端代码实现过程中,自动重连逻辑设计的重要性与示例,帮助读者设计更为合理的重连代码,构建更加稳定可靠的物联网设备连接。
EMQ
1515 0
MQTT 客户端自动重连最佳实践|构建可靠 IoT 设备连接
|
监控 物联网
ESP8266通过AT指令连接阿里云物联网
ESP8266通过AT指令连接阿里云物联网
1477 0
ESP8266通过AT指令连接阿里云物联网
|
API 开发者 iOS开发
In-App Purchase 应用内购买
In-App Purchase 应用内购买
248 0
EMQ
|
消息中间件 传感器 存储
MQTT 发布/订阅模式介绍
MQTT发布/订阅模式区别于传统的客户端/服务器模式,它使发布者与订阅者分离,发布者与订阅者不需要建立直接联系。
EMQ
1224 0
MQTT 发布/订阅模式介绍