本文介绍iOS SDK中提供蓝牙Mesh设备批量配网的能力。
依赖
依赖 SDK | 概述 |
---|---|
IMSMeshSdk | 提供蓝牙mesh基础能力。 |
IMSDeviceCenter | 配网统一入口。 |
IMSApiClient | 提供API通道能力,和基础环境配置信息。 |
初始化
使用说明
- Mesh 设备配网
Mesh设备发现以及单设备配网请参考配网SDK。
- Mesh 设备批量配网
- 带配网设备列表
IMLCandDeviceModel来源由设备发现返回,不用做修改。
说明 其中(IMLCandDeviceModel *)model 为本地发现待配设备或者云端拉取产品列表组装的model。IMLCandDeviceModel 属性说明如下:
属性 类型 是否必填 描述 linkType NS_ENUM 是 productId NSString 是 mac NSString 是 productKey NSString 是 authFlag BOOL 是 random NSString 是 authDevice NSString 是 subDeviceId NSString 是 confirmCloud NSString 是 addDeviceFrom(网关单独使用) NSString 是 meshGatewayIotId(网关单独使用) NSString 是 meshDeviceId(网关单独使用) NSString 是 deviceId(网关单独使用) NSString 否 gatewayDeviceName(网关单独使用) NSString 是 gatewayProductKey(网关单独使用) NSString 是 - 开始配网
// 引入头文件 #import <IMSDeviceCenter/IMLDeviceCenter.h> /** mesh 设备批量配网 目前只支持LinkType为ForceAliLinkTypeAppMesh或者ForceAliLinkTypeGatewayMesh的设备进行配网。 添加完成设备,立即开始进行配网 */ - (LKDCErrCode)startConcurrentAddDevices:(nonnull NSArray<IMLCandDeviceModel *> *)devList delegate:(nullable id<ILKConcurrentAddDeviceNotifier>)delegate;
- 配网结果回调
// 引入头文件 #import <IMSDeviceCenter/IMLDeviceCenter.h> - (void)notifyConcurrentProvisionResult:(nonnull IMLCandDeviceModel *)candDeviceModel withProvisionError:(nullable NSError *)provisionError{ if (provisionError){ NSLog(@"配网失败,错误信息:%@", provisionError); }else{ NSLog(@"配网成功:%@",candDeviceModel); } }
- 停止配网
// 引入头文件 #import <IMSDeviceCenter/IMLDeviceCenter.h> [kLkAddDevBiz stopAddDevice]; [kLkAddDevBiz stopConcurrentAddDevice];
- 带配网设备列表
- 网关控制
网关控制参考物模型SDK。