常见问题

||SKIP||

1. 问:app调用接口发送验证码成功后,手机上为什么没有收到短信?

答:手机无法接收到验证码,可能由于以下原因导致:
原因一:运营商的网络拥堵或者异常。短信验证码可能有一些延迟,请尝试等待一会或者过段时间再重试。
原因二:手机处于欠费停机状态。
原因三:手机安全软件拦截。请关闭手机上的短信拦截功能后再次尝试。
原因四:发送短信数量已达上限。由于第三方短信服务的限制,每个手机账号每天只能发送10条短信验证码,请尝试换一个手机号操作。
原因五:非中国大陆地区的手机号。对于国外注册用户而言,我们推荐使用邮件作为账号进行注册使用。

2.问:使用第三方账号登录后,可以直接绑定普通账号吗?

答:使用第三方登录后,目前只能绑定未注册的手机号/邮箱,无法直接绑定一个已存在的普通帐号。

3.问:用户输入用户名密码登录成功后,下次启动app时是否还需要通过帐号名密码登录?

答:不需要。调用login接口后,app本地会存储一个token,这个token在有效期内即认为已登录状态。建议在每次登录前都通过isLogin接口判断用户的登录状态并做出处理。

4.问:给设备发送控制命令,为什么设备没响应?

答:给设备发送控制命令,可以通过云端透传、局域网直接控制两种方式进行,分别可能由于以下原因导致:
云端透传
原因一:云端透传控制时设备忙。大多数物联网设备的处理能力有限,为了避免大量消息并行处理导致设备死机等严重后果,云端对下发的消息请求进行排队处理,当并发请求太多,由于设备响应速度等的影响,无法在规定时间内(一般是5s内)发送给设备,就会返回设备忙。
原因二:极弱网络环境。请等待网络环境好转或者更换一个稳定的网络后重试。
局域网控制
原因一:局域网控制时设备端没有有效的DeviceToken。通过UDS进行绑定的设备,由于设备绑定时候可能不在线,设备端没有收到下发的DeviceToken;若想通过APP进行局域网控制。需要调用resetDeviceToken的接口更新设备密钥。
原因二:路由器设置与局域网控制端口有冲突。请确定路由器8689、9689端口是否被占用并启用了广播功能。

5.问:APP绑定设备失败的原因是什么?

答:APP绑定设备失败,可能由于以下原因导致:
原因一:APP绑定设备时,设备未激活或者不在线,请确保设备已激活并且连接上了云端。
原因二:设备已经被其他用户绑定了,一个设备只能有一个管理员用户,若用户想分享设备给其他人使用,请使用设备分享功能。

6.问:如何进行设备OTA?

答:AbleCloud提供固件空中升级(OTA)的功能,对于已经上线的产品,通过OTA即可实现MCU或者WiFi固件的远程升级。
OTA流程如下: 步骤一、登录管理控制台,在OTA页面点击“新建OTA版本”添加一个OTA版本,如下图所示。

arch

步骤二、按照界面提示填写相关信息,上传固件,并设定OTA升级规则,点击“确定”按钮。

arch

OTA版本创建完成后,会按照设定的规则进行推送,当设备收到OTA升级的推送通知后,会按照设定升级规则进行相应的操作。OTA升级的具体规则可以参见功能介绍-空中升级

注意:在正式环境中,OTA推送采用智能调度机制,设备收到OTA升级通知的时间会有一定的延迟(实际频率以AbleCloud当前网络带宽等资源开销最终决定),请耐心等待,若24小时内还未收到OTA推送,请联系Ablecloud服务团队。

7.问:什么是虚拟设备?怎么使用?

答:虚拟设备是AbleCloud为开发者提供的用于在设备开发尚未完成时与uds服务、App联调的工具,虚拟设备可以模拟设备向云端发送消息、显示设备当前收到的消息。要使用虚拟设备可以参见管理控制台-产品管理-虚拟设备

8.问:我应该选择哪种加密模式给设备进行加密?

答:AbleCloud目前支持RSA与AES两种加密模式,RSA为最高级别加密,设备和云端握手过程使用RSA非对称密钥完成设备和云端的双向认证并交换AES密钥,之后设备和云端使用AES密钥进行加密通信。AES加密方式指设备和云端使用约定的AES密钥进行新的AES密钥的交换,之后使用交换所得的密钥进行加密通信。对于计算性能较好且对安全性要求较高的设备,我们推荐使用RSA方式的加密,对于计算性能不足以满足RSA运算的设备,我们推荐使用AES方式的加密。详情可以咨询AbleCloud服务团队。

9.问:为什么设备长连接经常断开重连?

答:AbleCloud采用长连接方式将设备连接云端,长连接作为虚拟连接的一种,断开原因比较复杂,可能由于以下原因导致:
原因一:网络链路波动。长连接需要经历一个复杂的网络链路才能从设备端连接上云端,而链路资源的任意一环都可能导致长连接断开,例如接入路由器资源回收、请求方tcp/ip协议栈资源回收、中间链路上某一跳的资源回收、运营商割接网络导致的核心网络切换等,其频繁程度也因网络质量有所不同。由于网络链路波动导致的断开,通信模组会立即重新连接云端,本质上并不会对设备的正常使用造成影响。
原因二:极弱网络环境。在极弱网络环境下,由于网络资源不足,可能导致设备与云端通信频繁超时,云端也会主动断开长连接进行重连。在极弱网络环境下导致设备长时间与云端不能进行有效通信,可能会影响对设备的正常使用,建议等待网络环境好转或者更换一个稳定的网络后重试。

10.问:AbleCloud支持哪些WiFi模块?

答:目前AbleCloud支持的WiFi模块可以参见AbleCloud合作厂商模块型号

11.问:为什么我的设备连接不上云端?

答:设备连接不上云端,可能由于以下原因导致:
原因一:设备密钥烧录错误。AbleCloud采用RSA或AES加密校验设备的有效身份,厂商需要将正确的密钥信息烧录进设备,若设备的加密方式、加密密钥与对应环境的不匹配时候,就可能导致设备无法激活连接上云端。
原因二:设备环境配置错误。AbleCloud区分不同区域不同环境的设备,目前区域包括:华北、东南亚、北美、欧洲等四大服务区,环境包括开发与生产两大环境,对应的设备配置若与云端不匹配,就会导致设备无法激活连接上云端。
原因三:网极弱网络环境。请等待网络环境好转或者更换一个稳定的网络后重试。
原因四:使用地域与产品配置不符。归属于不同服务区的产品,只能保证在对应的服务区正常使用,若跨服务区使用(如华北区开发配置的设备被用户带到欧洲使用等),由于域名解析、网络延迟等原因,也可能导致设备连接不上云端。

12.问:消息码的范围是怎么约定的?

答:消息码的整体范围是在 [0, 255] 之间。
其中,[0, 63] 是系统定义的消息码,开发者无法使用;[64, 199] 是开发者下发控制指令可用的消息码范围;[200, 255] 是设备上报可用的消息码范围。

13.问:使用国外手机号作为账号时,需要注意什么?

答:如果使用国外手机号作为账号,当接口需要填写手机号信息,请将国际区号的“+”符号转换为“00”,如一个美国号码为“1-202-3392838”,则填写为“0012023392838”。