0.7.54 • Published 12 months ago

coolkit-ws v0.7.54

Weekly downloads
-
License
ISC
Repository
-
Last release
12 months ago

使用

初始化

使用该插件必须先初始化,否则报错。

参数

config 对象

名称类型允许空说明
appidstringNappid
atstringN用户 at
apikeystringN用户 apiKey
regionstringNcn / us / eu / as
userAgentstringNapp / device / pc_ewelink
chipidstringN设备芯片 id
deviceidstringN设备 id
useTestEnvbooleanY是否使用测试环境,默认为 false
reqTimeoutnumberY请求超时时间,单位为毫秒,默认为 15000
heartBeatRationumberY心跳间隔的百分比,默认为 90。真实心跳时间 = 心跳时间 * (heartBeatRatio / 100)
retryIntervalnumberY重试间隔 = retryCount * retryInterval
maxRetrynumberY最大重试次数,默认为 5 秒,最低为 5 秒,最高为 2 小时
maxRetryIntervalnumberY最大重试总时间,以秒为单位,默认为 2 小时

返回值

名称类型说明
errorstring错误码 0:无错误 601:连接错误 602: 重连失败 603: 重连结束 604: 请求错误或超时 605: 网络连接有误,无法获取长连接地址
msgstring错误或成功信息

示例

import coolKitWs from 'coolkit-ws';
// app 端连接
const config = {
    userAgent:"app" | "pc_ewelink"
    appid: 'your-app-id',
    at: 'your-at',
    apikey: 'your-apiKey',
    region: 'your-country',
};

// 设备端连接
const config = {
    userAgent:"device",
    apikey: 'your-apiKey',
    region: 'your-country',
    appid: 'your-app-id',
    chipid: 'your-chip-id',
    deviceid: 'your-device-id'
};


const result = await coolKitWs.init(config);
console.log('连接的结果: ', result);

更新设备状态

参数

config 对象

名称类型允许空说明
deviceidstringN设备 id
deviceApikeystringN设备 apiKey
paramsobjectN更新参数

返回值

名称类型说明
errorstring错误码
deviceidstring设备 id
apikeystring设备 apiKey
sequencestring用于标识消息的序列

示例

import coolKitWs from 'coolkit-ws';
const updateResult = await coolKitWs.updateThing({
    deviceid: 'your-device-id',
    deviceApikey: 'your-device-apiKey',
    params: {
        // your params
    },
});

console.log('更新结果: ', updateResult);

查询设备状态

参数

config 对象

名称类型允许空说明
deviceidstringN设备 id
deviceApikeystringN设备 apiKey
paramsarraystring or stringN查询选项

返回值

名称类型说明
errorstring错误码
deviceidstring设备 id
apikeystring设备 apiKey
sequencestring用于标识消息的序列
paramsstring查询结果

示例

import coolKitWs from 'coolkit-ws';
const queryResult = await coolKitWs.queryThing({
    deviceid: 'your-device-id',
    deviceApikey: 'your-device-apiKey',
    params: ['your-query-item1', 'your-query-item2'] | 'your-query-item',
});

console.log('查询结果', queryResult);

设置回调函数监听长连接

参数

config 对象

名称类型允许空说明
methodstringN监听事件名称 "message" "open" "close" "error" "reconnect"
callbackfunctionN回调函数

示例

import coolKitWs from 'coolkit-ws';
coolKitWs.on('message', (ev) => {
    console.log('我接收到消息了', ev.data);
});

升级设备固件

参数

config 对象

名称类型允许空说明
deviceidstringN设备 id
deviceApikeystringN设备 apiKey
paramsupgrade 对象N升级固件参数

upgrade 对象

名称类型允许空说明
modelstringN设备的模块型号
versionstringN预升级版本
binListbinList 对象数组N不同分区的 bin 列表

binList 对象

名称类型允许空说明
downloadUrlstringN设备的模块型号
namestringN下载文件名称
digeststringY文件 HASH 摘要(SHA256)

返回值

名称类型说明
errorstring错误码
deviceidstring设备 id
apikeystring设备 apiKey
sequencestring用于标识消息的序列
userAgentstring发起设备

示例

import coolKitWs from 'coolkit-ws';
const upgradeResult = await coolKitWs.upgradeThing({
    deviceid: '10004fd8ac',
    deviceApikey: 'efe86fc8-bf2f-40ec-8286-49f4012cef52',
    params: {
        model: '设备Model',
        version: '预升级版本',
        binList: [
            {
                downloadUrl: 'bin文件1下载地址',
                digest: '文件 HASH 摘要(SHA256)',
                name: 'user1.bin',
            },
        ],
    },
});

console.log('升级结果', upgradeResult);

关闭长连接

参数

返回值

true/false

示例

import coolKitWs from 'coolkit-ws';
coolKitWs.close();

判断长连接是否存在

参数

返回值

true/false

示例

import coolKitWs from 'coolkit-ws';
coolKitWs.isWsExist();

发送数据

参数

名称类型允许空说明
paramsstring/objectN传送数据

返回值

示例

import coolKitWs from 'coolkit-ws';
coolKitWs.sendMessage();

查看长连接状态

参数

返回值

名称类型允许空说明
datastringNINIT ERROR CLOSED CONNECTED

示例

import coolKitWs from 'coolkit-ws';
coolKitWs.wsState();
0.7.54

12 months ago