1.0.20 • Published 1 year ago

jx-wx-mesh v1.0.20

Weekly downloads
-
License
ISC
Repository
-
Last release
1 year ago

jx-wx-mesh SDK

晶讯mesh业务 微信小程序SDK。 支持设备控制、状态监听 目前不支持mesh组网

此SDK事件上报依赖于 jx-device-message 插件,使用前请安装此插件

一、 SDK 初始化

1. 安装依赖

npm install jx-wx-mesh jx-device-message

2. 初始化实例

SDK 默认导出构造函数

import JxMesh from 'jx-wx-mesh'
const jxMesh = new JxMesh({
  appKey: string
  netKey: string
  ivIndex: number
  srcAddress: number
  nodes: ExplorerDevice[]
  heartbeat: number
})

3. 参数说明

参数名参数描述类型必填
appKey平台侧分配string
netKey平台侧分配string
ivIndex平台侧分配string
nodes可连接的节点列表,蓝牙搜索到其中一个后建立与此节点的ble连接ExplorerDevice[]
heartbeatmesh子设备上报心跳的间隔时间。单位秒。默认10秒number

ExplorerDevice数据结构

参数名参数描述类型必填
explorerDeviceId平台侧定义的设备 IDstring
meshAddress配网时分配number
deviceKey平台侧分配string

二、 实例API

1. 开始运行 run

调用本接口将开始搜索节点、连接节点、校验合法性、发送白名单等、子设备心跳监听等一系列动作,接口调用成功后可向子设备下发消息和监听子设备状态。但蓝牙异常后不会自动重连

接口定义

meshInstance.run()

参数说明

返回结果

返回一个 Promise,参数如下

参数名参数描述类型必填
-sdk实例JxMesh

2. 自动运行 autoRun

调用本接口将开始搜索节点、连接节点、校验合法性、发送白名单等、子设备心跳监听等一系列动作,接口调用成功后可向子设备下发消息和监听子设备状态。蓝牙发生异常会自动尝试回连。以下异常情况会尝试自动回连:关闭蓝牙后再打开、断开连接但蓝牙适配器正常。

接口定义

meshInstance.autoRun(count?: number)

参数说明

参数名参数描述类型必填
count断连后尝试重连的次数,不传则无限次number

返回结果

返回一个 Promise,参数如下

参数名参数描述类型必填
-sdk实例JxMesh

3. 搜索代理节点 searchProxyNode

开始搜索初始化实例时传入的代理节点

接口定义

meshInstance.searchProxyNode()

参数说明

返回结果

返回一个 Promise,参数如下

参数名参数描述类型必填
-搜索到的首个代理节点MeshProxyNode

4. 连接代理节点 connectProxyNode

连接目标代理节点

接口定义

meshInstance.connectProxyNode(node: MeshProxyNode)

参数说明

参数名参数描述类型必填
node目标连接节点MeshProxyNode

MeshProxyNode数据结构

参数名参数描述类型必填
explorerDeviceId平台侧定义的设备 IDstring
meshAddress配网时分配number
deviceKey平台侧分配string
deviceId蓝牙设备 id,同微信蓝牙接口回调的 deviceIdstring

返回结果

返回一个 Promise,参数如下

参数名参数描述类型必填
-搜索到的首个代理节点,MeshProxyNode

5. 下发消息给代理节点 sendMsgToProxyNode

下发消息给已连接的代理节点

接口定义

meshInstance.sendMsgToProxyNode(message: { seg: string })

参数说明

参数名参数描述类型必填
message发送消息的对象object

返回结果

返回一个 Promise

6. 下发通用消息给代理节点 sendGenericMessage

下发MESH通用消息给代理节点, 最后其实是调用 sendMsgToProxyNode 给代理节点发送消息

接口定义

meshInstance.sendGenericMessage(meshAddress: number, data: ArrayBuffer)

参数说明

参数名参数描述类型必填
meshAddress目标子设备meshAddressnumber
data下发的数据ArrayBuffer

返回结果

返回一个 Promise

7. 事件监听 on

监听特定的事件

接口定义

meshInstance.on(event: MeshEventType, listener: function)

参数说明

参数名参数描述类型必填
event监听的事件名称MeshEventType
listener事件的回调函数function

MeshEvent说明

可选值为:connected | disconnected | message | end

8. 监听特定设备消息 onDeviceMessage

监听特定的单个设备的状态消息

接口定义

meshInstance.onDeviceMessage(meshAddress: number, listener: function)

参数说明

参数名参数描述类型必填
meshAddress子设备的meshAddressnumber
listener事件的回调函数function

9. 移除监听事件 removeListener

移除监听事件

接口定义

meshInstance.removeListener(meshAddress: number, listener: function)

参数说明

参数名参数描述类型必填
meshAddress子设备的meshAddressnumber
listener监听回调的句柄,若不传,则把该事件的回调全部删除function

10. 发布设备上报状态 publishAllDeviceStates

通知所有设备上报状态,若需要查询子设备状态,则调用此接口,子设备状态会通过message事件上报。

接口定义

meshInstance.publishAllDeviceStates()

参数说明

返回结果

返回一个 Promise

11. 通用开关 genericOnoff

通用的下发开关接口

接口定义

meshInstance.genericOnoff(meshAddress: number, onoff: 0 | 1)

参数说明

参数名参数描述类型必填
meshAddress目标子设备meshAddressnumber
onoff0: 关 1:开number

返回结果

返回一个 Promise

12. 设置灯的亮度 setBrightness

设置灯的亮度

接口定义

meshInstance.setBrightness(meshAddress: number, brightness: number)

参数说明

参数名参数描述类型必填
meshAddress目标子设备meshAddressnumber
brightness目标亮度值,范围:1-100, 单位%,number

返回结果

返回一个 Promise

13. 设置灯的色温 setColorTemperature

设置灯的色温

接口定义

meshInstance.setColorTemperature(meshAddress: number, temperature: number)

参数说明

参数名参数描述类型必填
meshAddress目标子设备meshAddressnumber
temperature目标色温值,范围:1-100, 单位%number

返回结果

返回一个 Promise

14. 场景激发 sceneRecall

场景激发

接口定义

meshInstance.sceneRecall(sceneAddress: number)

参数说明

参数名参数描述类型必填
sceneAddress目标场景地址number

返回结果

返回一个 Promise

15. 设置温控器模式 setACMode

设置温控器模式

接口定义

meshInstance.setACMode(meshAddress: number, mode: 0 | 1 | 2 | 3)

参数说明

参数名参数描述类型必填
meshAddress目标子设备meshAddressnumber
mode0/制冷 1/制热 2/送风 3/制湿number

返回结果

返回一个 Promise

16. 设置温控器目标温度 setACTemperature

设置温控器目标温度

接口定义

meshInstance.setACTemperature(meshAddress: number, temperature: number)

参数说明

参数名参数描述类型必填
meshAddress目标子设备meshAddressnumber
temperature0x5 - 0x28number

返回结果

返回一个 Promise

17. 设置温控器目标温度 setACWindSpeed

设置温控器目标温度

接口定义

meshInstance.setACWindSpeed(meshAddress: number, windSpeed: number)

参数说明

参数名参数描述类型必填
meshAddress目标子设备meshAddressnumber
windSpeed0/低 1/中 2/高 3/自动 4/关闭number

返回结果

返回一个 Promise

1.0.19

1 year ago

1.0.18

1 year ago

1.0.20

1 year ago

1.0.17

2 years ago

1.0.16

2 years ago

1.0.15

2 years ago

1.0.14

2 years ago

1.0.13

2 years ago

1.0.12

2 years ago

1.0.11

2 years ago

1.0.10

2 years ago

1.0.9

2 years ago

1.0.8

2 years ago

1.0.7

2 years ago

1.0.6

2 years ago

1.0.5

2 years ago

1.0.4

2 years ago

1.0.3

2 years ago

1.0.2

2 years ago

1.0.1

2 years ago

1.0.0

2 years ago