1.0.5 • Published 3 years ago

blsdk v1.0.5

Weekly downloads
-
License
ISC
Repository
-
Last release
3 years ago

前言

​ 本jssdk文档仅供博联ble蓝牙小程序使用,其他客户端暂不支持。

注意事项:

1,小程序基础库 2.10.3及以上;

2,以上目前均为debug版本,会有日志打印;

使用方式:

1,文件引用:(支持)

将此压缩包解压到小程序项目中,通过使用const blsdk = require('${文件目录}/blsdk') 即可,接口文档见《接口文档》篇;

下载地址: https://docs.ibroadlink.com/public/webs/h5/blsdk_202107121033(历史版本见最后) 2,npm包使用:(暂不支持,下个版本)

demo下载:(历史版本见最后)

https://docs.ibroadlink.com/public/webs/h5/bledemo_202107121033.zip

解压之后,请使用微信开发者工具打开 miniwechat/miniprogram 文件夹。

接口文档:(文末附调用例子)

1,初始化sdk实例

var _sdk = new blsdk({

​ nameSpace: '', // 命名空间

​ isIos: isIos, // 安卓还是iOS

​ callback (res) {} // 回调,可不传

​ bleStatusChange (res) {} // 监听蓝牙状态改变的方法,可不传

​ })

输入参数:

1, nameSpace

2, isIos

3, callback

4, bleStatusChange

回调结果:

1,成功: 忽略

2,失败: 提示错误信息(错误码请参考《错误码表》)

img

2,设备扫描

_sdk.startBleReceiveService((res) => { })

res(设备配网后收到的设备callback参数),结构为:

{

finds: [], // 发现的设备列表

addrs: {} // 配对成功之后的map

}

说明:

finds:[{

d // 设备主键did,必须 string t // 设备品类,必须 number

a // 设备短地址,必须 number

n // 设备名称,必须 string

}]

addrs: {

d : { // 以设备主键为key的map集合

a: 短地址 与设备发现finds中的一致

v: 版本号 string

id: 房间id // 房间集合见《房间集合说明》

},

xxx

}

img

3,停止设备扫描(与步骤2成对出现)

_sdk.stopBleReceiveService()

img

4,单个设备控制

_sdk.controlWithDevice(device, cmdJson)

说明:

1,device 设备信息:由【设备扫描】中配置成功的设备信息. json数据

2,cmdJson命令集合: json数据,详见《控制命令集合》

img

5,基于房间的控制

_sdk.groupControlWithType(type, roomId, cmdJson)

type: 设备品类,如果不确定,可以传0(不限制品类)

roomId: 房间id

cmdJson命令集合: json数据,详见《控制命令集合》

img

6, 随机多个设备控制 (目前最多五个)

_sdk.bathControlWithDeviceList(addrs, cmdJson);

addrs: 数组格式,设备的短地址数据

cmdJson命令集合: json数据,详见《控制命令集合》

img

7,修改设备房间

_sdk.modefyDevice(devInfo, roomId, callback);

devInfo: 设备信息

roomId: 房间id,与《房间集合说明》中一致即可

callback: 回调函数,如果成功则返回大于0,不成功则返回false,可不传;

8,更新控制密钥 (解析分享二维码时调用)

_sdk.updateBleCode(bleCode);

bleCode: 设备控制密钥, 4个长度的整形数组

9,重置控制密钥 (复位所有设备时调用)

_sdk.resetBleCode();

10, 取得sdk版本号

_sdk.getSDKVersion();

控制命令集合:

开关:

pwr: 开=1 ;关=0

brightness: (只控制亮、灭)

0 关

1-127 都是开的状态,只是亮度不同

亮度:

brightness: 从1-127变化, 0 为关

rgb调节:

r: xx

g: xx

b: xx

pwr: 1

brightness: 上一次调节的值(非0)

色温调节:

pwr: 1

brightness: 上一次调节的值(非0)

c: xx

w: xx (w: 255 - c)

模式调节:

详见《模式调节集合》,选中哪个模式发送对应的数据集合(只需要包含mode和mult数据)即可,例如:

全彩渐变是cmdJson为: {

mode:[ // 固定不可变

​ {"red":1,"green":0,"blue":0},

​ {"red":1,"green":1,"blue":0},

​ {"red":1,"green":0,"blue":1},

​ {"red":0,"green":1,"blue":0},

​ {"red":0,"green":1,"blue":1},

​ {"red":0,"green":0,"blue":1}

​ ],

mult: 0.2 // 调节变化快慢,值从0-1

}

模式调节集合:

[

{

​ name: "全彩渐变",

​ key: "g_all",

​ mode: [

​ {"red":1,"green":0,"blue":0},

​ {"red":1,"green":1,"blue":0},

​ {"red":1,"green":0,"blue":1},

​ {"red":0,"green":1,"blue":0},

​ {"red":0,"green":1,"blue":1},

​ {"red":0,"green":0,"blue":1}

​ ],

​ mult: 0.2

},

{

​ name: "红蓝渐变",

​ key: "g_r_b",

​ mode: [

​ {"red":1,"green":0,"blue":0},

​ {"red":0,"green":0,"blue":1}

​ ],

​ mult: 0.2

},

{

​ name: "蓝绿渐变",

​ key: "g_b_g",

​ mode: [

​ {"red":0,"green":0,"blue":1},

​ {"red":0,"green":1,"blue":0}

​ ],

​ mult: 0.2

},

{

​ name: "红绿渐变",

​ key: "g_r_g",

​ mode: [

​ {"red":1,"green":0,"blue":0},

​ {"red":0,"green":1,"blue":0}

​ ],

​ mult: 0.2

},

{

​ name: "全彩跳变",

​ key: "j_all",

​ mode: [

​ {"red":1,"green":0,"blue":0},

​ {"red":1,"green":1,"blue":0},

​ {"red":1,"green":0,"blue":1},

​ {"red":0,"green":1,"blue":0},

​ {"red":0,"green":1,"blue":1},

​ {"red":0,"green":0,"blue":1}

​ ],

​ isJump: true,

​ mult: 0.8

},

{

​ name: "红绿蓝跳变",

​ key: "j_r_g_b",

​ mode: [

​ {"red":1,"green":0,"blue":0},

​ {"red":0,"green":1,"blue":0},

​ {"red":0,"green":0,"blue":1}

​ ],

​ isJump: true,

​ mult: 0.8

},

{

​ name: "橙绿跳变",

​ key: "j_y_g",

​ mode: [

​ {"red":1,"green":1,"blue":0},

​ {"red":0,"green":1,"blue":0}

​ ],

​ isJump: true,

​ mult: 0.8

},

{

​ name: "红绿跳变",

​ key: "j_r_g",

​ mode: [

​ {"red":1,"green":0,"blue":0},

​ {"red":0,"green":1,"blue":0}

​ ],

​ isJump: true,

​ mult: 0.8

},

{

​ name: "红色跳变",

​ key: "j_r",

​ mode: [

​ {"red":1,"green":0,"blue":0},

​ {"red":0,"green":0,"blue":0}

​ ],

​ isJump: true,

​ mult: 0.8

},

{

​ name: "蓝色跳变",

​ key: "j_b",

​ mode: [

​ {"red":0,"green":0,"blue":1},

​ {"red":0,"green":0,"blue":0}

​ ],

​ isJump: true,

​ mult: 0.8

},

{

​ name: "绿色跳变",

​ key: "j_g",

​ mode: [

​ {"red":0,"green":1,"blue":0},

​ {"red":0,"green":0,"blue":0}

​ ],

​ isJump: true,

​ mult: 0.8

}, {

​ name: "RGB白跳变",

​ key: "j_white",

​ mode: [

​ {"red":1,"green":1,"blue":1},

​ {"red":0,"green":0,"blue":0}

​ ],

​ isJump: true,

​ mult: 0.8

}

]

房间集合说明:

[

{

​ n: "全屋",

​ id: 0,

​ sort: 0

},

{

​ n: "客厅",

​ id: 1,

​ sort: 1

}, {

​ n: "主卧",

​ id: 2,

​ sort: 2

}, {

​ n: "次卧",

​ id: 3,

​ sort: 3

}, {

​ n: "餐厅",

​ id: 4,

​ sort: 4

}, {

​ n: "书房",

​ id: 5,

​ sort: 5

}, {

​ n: "客房",

​ id: 6,

​ sort: 6

}, {

​ n: "阳台",

​ id: 7,

​ sort: 7

}, {

​ n: "厨房",

​ id: 8,

​ sort: 8

}, {

​ n: "卫生间",

​ id: 9,

​ sort: 9

}, {

​ n: "玄关",

​ id: 10,

​ sort: 10

}, {

​ n: "庭院",

​ id: 11,

​ sort: 11

}

]

错误码表:

0ok正常
-1already connet已经连上其他蓝牙设备
10000not initalready connet未初始化蓝牙适配器 已经连上其他蓝牙设备
10001not available当前蓝牙适配器不可用
10002no device没有找到指定设备
10003connection fail连接失败
10004no service没有找到指定服务
10005no characteristic没有找到指定特征值
10006no connection当前连接已断开
10007property not support当前特征值不支持此操作
10008system error其余所有系统上报的异常
10009system not supportAndroid 系统特有,系统版本低于 4.3 不支持 BLE
10012operate time out连接超时
10013invalid_data连接 deviceId 为空或者是格式不正确
1.0.5

3 years ago

1.0.4

3 years ago

1.0.3

3 years ago

1.0.2

3 years ago

1.0.1

3 years ago

1.0.0

3 years ago