在网络组件中创建了MQTT服务,并且在设备网关中创建了MQTT服务设备网关,MQTT客户端仍然无法连接.
- 请确定网络组件中的MQTT服务以及MQTT服务设备网关已启动.
- 如果是docker环境,请确定MQTT服务对应的端口已经映射到主机.
注意
如果只在网络组件中创建了MQTT服务,没有在设备网关中创建对应的MQTT服务设备网关
常见错误码
错误码: CONNECTION_REFUSED_IDENTIFIER_REJECTED
平台无法识别客户端标识(clientId),可能是设备未在平台进行激活.
注意
clientId 需要和设备实例ID一致.如果在平台已经激活,并且clientId无误,请尝试重新激活设备.
错误码:CONNECTION_REFUSED_NOT_AUTHORIZED
MQTT客户端没有传认证信息(username,password).
注意
MQTT服务设备网关要求所有mqtt客户端都必须传递认证信息,但是具体的认证策略由自定义的消息协议决定.
错误码:CONNECTION_REFUSED_BAD_USER_NAME_OR_PASSWORD
MQTT客户端认证信息错误(用户名密码错误).
- 请检查传递的用户名密码是否符合设备使用消息协议的认证策略,以及是否符合在对应产品中的配置信息.
- 是否创建了
设备网关,并且检查设备网关中是否勾选了认证协议,尝试取消勾选. - 修改了
用户名密码等信息后,是否重新应用配置.
错误码: CONNECTION_REFUSED_SERVER_UNAVAILABLE
服务端发生了错误.可能原因:
- 未创建
MQTT服务设备网关或未正确与MQTT服务进行关联. MQTT服务设备网关被暂停或停止.- 其他,请据系统日志排查.
提示:mqtt客户端认证失败:不支持的认证方式或无法获取认证结果
原因:设备网关选择了认证协议,但对应协议没有实现认证接口。
解决方案:
1. 取消认证协议。
2. 在协议中实现Authenticator接口,推荐查看认证器。
当MQTT客户端无法连接到MQTT服务或设备网关时,应检查服务是否启动,端口映射是否正确,设备是否激活,认证信息是否匹配,以及设备网关的认证协议设置。错误码可能包括IDENTIFIER_REJECTED、NOT_AUTHORIZED、BAD_USER_NAME_OR_PASSWORD和SERVER_UNAVAILABLE,分别对应客户端标识问题、认证授权问题、认证信息错误和服务不可用。解决方法涉及验证和修正这些因素,或者在协议中实现认证接口。
990

被折叠的 条评论
为什么被折叠?



