WiFi设备绑定

更新时间:2019-04-03 13:52:54

WiFi设备的绑定包含三个过程:

  • 获知WiFi设备的PK和DN

  • 获取设备绑定token

  • 调用绑定接口

获知WiFi设备的PK和DN

WiFi设备的ProductKey和DevceName的获取方式有以下几种,用户可根据自己的实际情况进行选择:

  • 如果设备贴有包含设备的ProductKey和DeviceName的二维码,客户可以通过扫码的方式获取PK和DN

  • 通过SDK提供的发现接口发现局域网内存在的WiFi设备列表,从发现的设备中获知设备的PK和DN

  • WiFi设备配网完成时由设备端告知手机APP的PK、DN

获取绑定token

手机需要与设备连接到同一个局域网内,然后手机APP调用SDK提供的API从设备获取绑定的token。

Android端

下面的接口提供从设备端获取绑定 token 的功能。

// 获取设备绑定 token
LocalDeviceMgr.getInstance().getDeviceToken(context, productKey, deviceName, 60*1000, 5*1000new IOnDeviceTokenGetListener() {
            @Override
            public void onSuccess(String token) {
                // TODO bind
            }
            @Override
            public void onFail(String reason) {
            }
        });

iOS端

// 引入头文件
#import <IMSDeviceCenter/IMLDeviceCenter.h>
// self.productKey 和 self.deviceName 是配网成功后返回的设备模型中的 productKey 和 deviceName
[[IMLLocalDeviceMgr sharedMgr] getDeviceToken:self.productKey deviceName:self.deviceName timeout:20 resultBlock:^(NSString *token, BOOL boolSuccess) {
    NSLog(@"主动获取设备token:%@,boolSuccess:%d", token, boolSuccess);
    if(token){
    // 调用绑定接口进行设备绑定
    } else{
        NSLog(@"获取token失败(超时)");
    }
}];

绑定设备

手机APP通过调用云端接口进行设备绑定,绑定将直接使用API 通道SDK提供的接口进行,调用API通道SDK提供的接口时需要指定云端接口的path,iOS和安卓系统均调用相同的云端接口。

注:API通道SDK的使用方法请参见API通道SDK的相关说明文档

接口定义

path 版本 描述 是否需要用户身份的鉴权
/awss/token/user/bind 1.0.3 根据token校验并绑定设备 是,客户端SDK需启用身份的鉴权

请求参数

参数 类型 必填 描述
productKey String 待配网设备productKey
deviceName String 待配网设备deviceName
token String 设备上报的token

返回参数

参数 类型 必有 描述
data String 已配网设备iotId

错误码

请参考错误码字典

results matching ""

    No results matching ""