qcloud-iotexplorer-appdev-plugin-wificonf-simpleconfig
腾讯云物联网开发平台应用开发小程序端WIFI配网方式之SimpleConfig SDK
安装依赖
npm install qcloud-iotexplorer-appdev-sdk
npm install qcloud-iotexplorer-appdev-plugin-wificonf-core
安装SDK
npm install qcloud-iotexplorer-appdev-plugin-wificonf-simpleconfig
使用
step1.向sdk里面注册simpleconfig插件,sdk的初始化方式请参考qcloud-iotexplorer-appdev-sdk
import SimpleConfigPlug from 'qcloud-iotexplorer-appdev-plugin-wificonf-simpleconfig';
sdk.usePlugin(SimpleConfigPlug);
step2.开始simpleconfig配网,配网流程祥见官方文档
import { constants as WifiConfConstants } from 'qcloud-iotexplorer-appdev-plugin-wificonf-core';
const {
MpStatType, MyStatDimension, WifiConfErrorMsg, WifiConfStepCode,
} = WifiConfConstants;
/**
* simpleconfig一键配网
*/
export function SimpleConfigConfigure({
token,
wifiInfo = {
SSID: '';
password: '';
BSSID: '';
},
familyId = 'default',
roomId,
reporter,
onStepChange,
onStatusChange,
}) {
const onProgress = (data) => {
reporter.info(data.code, data.detail);
switch (data.code) {
case WifiConfStepCode.PROTOCOL_SUCCESS:
onStepChange(1);
break;
case WifiConfStepCode.CREATE_UDP_CONNECTION_SUCCESS:
onStepChange(2);
break;
case WifiConfStepCode.BUSINESS_QUERY_TOKEN_STATE_SUCCESS:
onStepChange(3);
break;
case WifiConfStepCode.WIFI_CONF_SUCCESS:
onStepChange(4);
break;
}
};
const onComplete = ({ productId, deviceName }) => {
onStatusChange({
status: 'success',
productId,
deviceName,
});
};
const onError = async ({ code, detail }) => {
reporter.error(code, detail);
onStatusChange({ status: 'error' });
};
sdk.plugins['wifiConfSimpleConfig'].start({
wifiConfToken: token,
targetWifiInfo: wifiInfo,
autoRetry: true, // 自动处理故障流程
familyId,
roomId,
onProgress,
onComplete,
onError
});
}