有奖捉虫:行业应用 & 管理与支持文档专题 HOT

简介

设备配网模块用于为设备配置上网环境,目前支持以下配网方式:
有线配网
AP 配网
二维码配网
注意:
并非任意设备都支持以上所有配网方式,具体支持的配网方式由硬件和固件版本决定。

通用配网流程





有线配网

说明:
添加已在线局域网设备,需设备硬件支持。
部分设备可通过自带网口使用有线上网,省去了配网环节,App 可通过局域网搜索到目标设备,使用设备 ID 向服务器发起绑定请求。
流程大致如下:
1. App 连接到与设备同一网络下的 Wi-Fi。
2. App 搜索到目标设备,取得目标设备 ID。
3. App 向服务器发起绑定目标设备的请求。
4. 账户绑定设备成功。
5. 订阅该设备。
6. 配网结束。

AP 配网

说明:
需设备硬件支持。
AP 配网原理是 App 连接设备发射的热点,使设备与 App 处于同一局域网,并在局域网下实现信息传递。
流程大致如下:
1. 设备复位进入配网模式并发射 Wi-Fi 热点。
2. App 连接设备的热点(进入局域网)。
3. App 向设备发送配网信息(Wi-Fi 信息)。
4. 设备收到配网信息并连接指定网络。
5. 设备上线并向服务器注册。
6. App 收到设备已上线通知。
7. App 向服务器发起绑定目标设备的请求。
8. 账户绑定设备成功。
9. 订阅该设备。
10. 配网结束。

二维码配网

二维码配网原理是 App 使用配网信息生成二维码,设备通过摄像头扫描二维码获取配网信息。
流程大致如下:
1. 设备复位进入配网模式,摄像头开始扫描二维码。
2. App 使用配网信息生成二维码。
3. 用户使用设备扫描二维码。
4. 设备获取配网信息并连接指定网络。
5. 设备上线并向服务器注册。
6. App 收到设备已上线通知。
7. App 向服务器发起绑定目标设备的请求。
8. 账户绑定设备成功。
9. 订阅该设备。
10. 配网结束。

使用示例

有线配网

import IoTVideo.IVNetConfig
// 1.获取局域网设备列表
let deviceList: [IVLANDevice] = IVNetConfig.lan.getDeviceList()
// 2.取得目标设备
let dev = deviceList[0]
// 3.绑定设备
// 4.订阅设备 token 来自绑定设备结果的 AccessToken 字段
IVNetConfig.subscribeDevice(withToken: "********", deviceId: deviceId)
设备绑定具体操作请参见 终端用户绑定设备接口 进行设备绑定。

AP 配网

import IoTVideo.IVNetConfig
// 1.连接设备热点,获取设备信息
let dev = IVNetConfig.lan.getDeviceList().first()
// 2.向服务器请求配网Token
IVNetConfig.getToken { (token, error) in

}

// 3.发送配网信息
IVNetConfig.lan.sendWifiName("***", wifiPassword: "***", token: token, toDevice: dev.deviceID) { (success, error) in
if success {
//发送成功,开始监听事件通知
} else {
//发送失败
}
}

// 4.等待设备配网成功通知,拿到结果后可调用 IVNetConfig.unregisterDeviceOnline(),销毁监听
IVNetConfig.registerDeviceOnlineCallback { (devId, error) in {

}
// 5.绑定设备
// 6.订阅设备 token 来自绑定设备结果的 AccessToken 字段
IVNetConfig.subscribeDevice(withToken: "********", deviceId: deviceId)
设备绑定具体操作请参见 终端用户绑定设备接口 进行设备绑定。

二维码配网

接入方自定义传递给设备的数据格式,可使用内置工具类生成二维码,也可自行生成二维码
import IoTVideo.IVNetConfig
// 1. 获取配网token
IVNetConfig.getToken { (token, error) in

}

// 2. 生成二维码 使用得到的配网token加上wifi信息
let image = IVNetConfig.qrCode.createQRCode(withWifiName: ssid,
wifiPassword: password,
token: token)
// 3.用户使用设备扫描二维码....
// 4.等待设备配网成功通知, 拿到结果后可调用 IVNetConfig.unregisterDeviceOnline(),销毁监听
IVNetConfig.registerDeviceOnlineCallback { (devId, error) in {

}
// 5.绑定设备
// 6.订阅设备 token 来自绑定设备结果的 AccessToken 字段
IVNetConfig.subscribeDevice(withToken: "********", deviceId: deviceId)
设备绑定具体操作请参见 终端用户绑定设备接口 进行设备绑定。