最近在接触涂鸦智能设备,利用App与设备进行连接进行远程的控制设备,同时对室内的温湿度,烟雾等参数进行监听,实时观察室内的危险参数,然后首先在这里,我们先可以了解一下设备几种入网的方式。

快连入网(EZ)

热点模式入网(AP)
有线入网(wired)
子设备入网(zigbee)
快连入网:

快连入网:Wi-Fi 快连入网又称 快连模式(Easy-Connect)、SmartConfig 或 EZ 配网。用户将手机连接到路由器后,利用路由器广播报文与设备进行通信配对。对用户操作简单,但对手机和路由器有兼容性要求,成功率低于 热点配网。配网流程如图1-1

android 接入涂鸦iot 涂鸦智能怎么连接手机_apache

图1-1 快连配网流程

对于快连模式,虽然有效性稍低于热点配网,但却是最简单的配网方式,现在我们看一下入网流程:

1.首先获取token,利用用户登陆时获取的资产‘Id以及连接方式来请求获取配网令牌

TYActivatorManager.activator.getRegistrationToken

参数:

assetId String true 资产 ID
type String true 配网类型: EZ、AP、Bluetooth
timeZone String true 配网时区
deviceUUID String false 设备UUID

调用:

android 接入涂鸦iot 涂鸦智能怎么连接手机_apache_02

2.初始化配网参数

ActivatorBuilder builder = new ActivatorBuilder(context, ssid, password, region, token, secret);

参数:

context 需要传入 activity 的 context
ssid 配网之后,设备工作 WiFi 的名称(家庭网络)
password 配网之后,设备工作 WiFi 的密码(家庭网络)
region 获取令牌接口返回值中的 region
token 获取令牌接口返回值中的 token
secret 获取令牌接口返回值中的 secret

调用:

android 接入涂鸦iot 涂鸦智能怎么连接手机_初始化_03

注意: 在这里的ssid与password:需要手动输入局域网的账号密码。

3.实例化配网

IEZActivator mEZActivator = TYActivatorManager.newEZActivator(builder);

参数:

ActivatorBuilder 需要传入初始化对象

调用:

android 接入涂鸦iot 涂鸦智能怎么连接手机_java_04

开始配网:

android 接入涂鸦iot 涂鸦智能怎么连接手机_android_05

取消配网:

android 接入涂鸦iot 涂鸦智能怎么连接手机_初始化_06

4.获取配网信息:

TYActivatorManager.getActivator().getRegistrationResultToken

参数:

token 配网令牌
listener 配网成功回调

调用:

android 接入涂鸦iot 涂鸦智能怎么连接手机_android_07

注意:这里通常调用时添加一个一秒的轮巡,每秒钟调用一次

设备配网属于异步过程。设备配网的耗时取决于网络质量。您必须调用 API 来检查设备配网结果。当系统返回配网设备列表或配网任务超时后,轮询任务停止。

热点模式入网:

热点配网:热点配网又称 热点模式 或 AP(Access Point)配网,是一种通过 Wi-Fi 进行配网的连接能力。将手机连接到配网设备 Wi-Fi 热点后,App 与手机直接通过 Wi-Fi 进行通信配对。成功率高、可靠性好,可适配 2.4G/5G 混频路由器配网,但用户需要手动切换手机的 Wi-Fi 设置。热点配网流程图如图1-2所示

android 接入涂鸦iot 涂鸦智能怎么连接手机_apache_08

图1-2 热点模式配网流程图

对于热点配网来说,虽比快连模式更稳定但却比快连麻烦一些。现在我们看一下入网流程:

注意:涂鸦对于热点模式与快连模式切换的标准是指示灯的快慢闪,长按为进入配网状态,快闪切换带慢闪即为在快闪状态下再次长按则切换为慢闪

1.首先获取token,利用用户登陆时获取的资产‘Id以及连接方式来请求获取配网令牌

TYActivatorManager.activator.getRegistrationToken

参数:

assetId String true 资产 ID
type String true 配网类型: EZ、AP、Bluetooth
timeZone String true 配网时区
deviceUUID String false 设备UUID

调用:

android 接入涂鸦iot 涂鸦智能怎么连接手机_java_09

2.初始化配网参数

ActivatorBuilder builder = new ActivatorBuilder(context, ssid, password, region, token, secret);

参数:

context 需要传入 activity 的 context
ssid 配网之后,设备工作 WiFi 的名称(家庭网络)
password 配网之后,设备工作 WiFi 的密码(家庭网络)
region 获取令牌接口返回值中的 region
token 获取令牌接口返回值中的 token
secret 获取令牌接口返回值中的 secret

调用:

android 接入涂鸦iot 涂鸦智能怎么连接手机_初始化_10

注意: 在这里的ssid与password:需要手动输入局域网的账号密码。

注意: 另外在这里我们需要提前连接设备发出的热点,在连接过程中SDK开始配网后,会不断调用云端接口。如果在热点中设备收到SDK 发的局域网信息,SDK就会切换网络到局域网。

3.实例化配网

IEZActivator mEZActivator = TYActivatorManager.newEZActivator(builder);

参数:

ActivatorBuilder 需要传入初始化对象

调用:

android 接入涂鸦iot 涂鸦智能怎么连接手机_apache_11

开始配网:

android 接入涂鸦iot 涂鸦智能怎么连接手机_android_12

取消配网:

android 接入涂鸦iot 涂鸦智能怎么连接手机_apache_13

4.获取配网信息:

TYActivatorManager.getActivator().getRegistrationResultToken

参数:

token 配网令牌
listener 配网成功回调

调用:

android 接入涂鸦iot 涂鸦智能怎么连接手机_android 接入涂鸦iot_14

注意:这里通常调用时添加一个一秒的轮巡,每秒钟调用一次

设备配网属于异步过程。设备配网的耗时取决于网络质量。您必须调用 API 来检查设备配网结果。当系统返回配网设备列表或配网任务超时后,轮询任务停止。

有线入网:

有线设备相比较其他的入网方式更加的简单,只要连上网线。有线设备是指通过有线网络连接路由器,配网过程不用输入路由器的热点名称和密码。有线入网流程如下:

1.首先获取token,利用用户登陆时获取的资产‘Id以及连接方式来请求获取配网令牌

TYActivatorManager.activator.getRegistrationToken

参数:

assetId String true 资产 ID
type String true 配网类型: EZ、AP、Bluetooth
timeZone String true 配网时区
deviceUUID String false 设备UUID

调用:

android 接入涂鸦iot 涂鸦智能怎么连接手机_apache_15

2.初始化配网参数

ActivatorBuilder builder = new ActivatorBuilder(context, ssid, password, region, token, secret);

参数:

context 需要传入 activity 的 context
ssid 配网之后,设备工作 WiFi 的名称(家庭网络)
password 配网之后,设备工作 WiFi 的密码(家庭网络)
region 获取令牌接口返回值中的 region
token 获取令牌接口返回值中的 token
secret 获取令牌接口返回值中的 secret

调用:

android 接入涂鸦iot 涂鸦智能怎么连接手机_apache_16

注意: 在这里的ssid与password:需要手动输入局域网的账号密码。

3.实例化配网

IEZActivator mEZActivator = TYActivatorManager.newEZActivator(builder);

参数:

ActivatorBuilder 需要传入初始化对象

调用:

android 接入涂鸦iot 涂鸦智能怎么连接手机_初始化_17

开始配网:

android 接入涂鸦iot 涂鸦智能怎么连接手机_java_18

取消配网:

android 接入涂鸦iot 涂鸦智能怎么连接手机_apache_19

4.获取配网信息:

TYActivatorManager.getActivator().getRegistrationResultToken

参数:

token 配网令牌
listener 配网成功回调

调用:

android 接入涂鸦iot 涂鸦智能怎么连接手机_java_20

注意:这里通常调用时添加一个一秒的轮巡,每秒钟调用一次

设备配网属于异步过程。设备配网的耗时取决于网络质量。您必须调用 API 来检查设备配网结果。当系统返回配网设备列表或配网任务超时后,轮询任务停止。

子设备入网:

子设备配网也叫zigbee设备配网,需要网关设备云在线并且子设备在配网状态下才能进行配网。配网流程具体如下:

1.首先获取当前资产列表下的云在线网关设备:

TYActivatorManager.getActivator().queryRegistrationGateways

参数:

asset_id String true 资产 ID

调用:

android 接入涂鸦iot 涂鸦智能怎么连接手机_apache_21

2.获取到网关我们需要在当前网关下搜寻子设备:

TYActivatorManager.getActivator().discoverSubDevices

参数:

deviceId String true 网关设备 ID
duration Integer false 网关搜寻子设备的时长,取值范围为 0~3600 秒,默认值为 100 秒

调用:

android 接入涂鸦iot 涂鸦智能怎么连接手机_android 接入涂鸦iot_22

注意:接口返回的是是否将子设备配网成功

3.查看当前网关下,成功添加到设备:

TYActivatorManager.getActivator().querySubDeviceRegistrationResult

参数:

deviceId String true 网关设备 ID
discoveryTime Long true 网关发现子设备时间,精确到秒

调用:

android 接入涂鸦iot 涂鸦智能怎么连接手机_java_23

设备配网属于异步过程。设备配网的耗时取决于网络质量。您必须调用 API 来检查设备配网结果。当系统返回配网设备列表或配网任务超时后,轮询任务停止。建议轮询任务设置为每隔 1 秒运行一次。配对任务的超时值建议设置为 100 秒。

注意:不同的设备有他自己不同的配网方式,在配网前要明确好设备支持的配网方式