跳转到主要内容

通讯协议20241015

完整协议文档下载

下载附件:通讯协议_1015(1).xlsx

设备上电后与APP连接过程

数据顺序流程图

示例数据如下:

蓝牙UUID说明

指令通道

  • APP发送数据,蓝牙接收数据

    uuid: 00010203-0405-0607-0809-0A0B0C0D2B16

    属性:WRITE|WRITE_WITHOUT_RESPONSE

  • 蓝牙发送数据,APP接收数据

    uudi:00010203-0405-0607-0809-0A0B0C0D2B17

    属性:READ|NOTIFY

音频通道

  • 蓝牙发送音频,APP接收音频

    uuid:00010203-0405-0607-0809-0A0B0C0D2B18

    属性:READ|NOTIFY

文件通道

  • 蓝牙发送文件内容,APP接收文件内容

    uuid: 00010203-0405-0607-0809-0A0B0C0D2B22

    属性:READ|NOTIFY

设备属性

设备当前具备的属性有: 电量、时间、麦克风状态、固件版本号、音频蓝牙信息、录音模式、sd卡容量、文件列表、指示灯状态

由于历史原因,部分格式不遵守此格式,以实际情况为准。

数据格式

属性一般都具备get方法,部分具备set方法。

由于历史原因,有部分协议,可能不完全遵守此格式,以excel文件的说明为准。

get方法数据格式

app发出数据示例:

{
  "method": "get",
  "id": "123",
  "ver": "1.0",
  "data":"battery"
}
  • method: "get"表示获取属性数据
  • id:每次发送指令时的id,都是唯一的。蓝牙返回的数据也有id,两者相同。
  • ver: 设备固件的版本号。
  • data:属性的key。battery表示电量。

设备返回数据示例:

{
    "method": "battery_reply",
    "id": "123",
    "ver": "1.0",
    "data":[
             {"battery":"100"}
           ],
    "error":[]
}
  • method: xxxx_reply,xxxx表示设属性的key。
  • id:每次发送指令时的id,都是唯一的。蓝牙返回的数据也有id,两者相同。
  • ver: 设备固件的版本号。
  • data:属性的key和value。battery表示电量。数组包含的多个属性值列表。
  • error: 无错误则为空数组。

set方法数据格式

app发出数据示例:

{
  "method": "set",
  "id": "456",
  "ver": "1.0",
  "data":{"mic_status":"open"}
}
  • method: "set"表示设置设备的属性参数。
  • id:每次发送指令时的id,都是唯一的。蓝牙返回的数据也有id,两者相同。
  • ver: 设备固件的版本号。
  • data:属性的key。mic_status表示设备麦克风的状态。"open"为开,"close"为关

设备返回数据示例:

{
    "method": "mic_status_reply",
    "id": "456",
    "ver": "1.0",
    "data":[
             {"mic_status":"success"}
           ],
    "error":[]
}
  • method: xxxx_reply,xxxx表示设属性的key。
  • id:每次发送指令时的id,都是唯一的。蓝牙返回的数据也有id,两者相同。
  • ver: 设备固件的版本号。
  • data:属性的key。battery表示电量。数组包含的多个属性值列表。
  • error: 无错误则为空数组。

属性列表

name key value type get set
当前电量 batter "open"为打开,"close"为关闭 string
设置设备的时间 sync_time 年月日时分秒的格式,比如:"20230801113301" string x
获取设备的时间 cur_time 年月日时分秒的格式,比如:"20230801113301" string x
振动麦克风开关状态 mic_status "open"为打开,"close"为关闭 string x

设备事件

设备服务

文件处理