1. 主页
  2. 文档
  3. 产品文档
  4. 蓝牙模块

蓝牙模块

 

 

 

网关与服务器对接协议说明

  • 更新日期:2023年8月15日
  • 适用网关型号:VG-L4GRF80
  • 协议编写格式:json

说明
协议由三部分组成,如下:

  1. method:包含指令的类型,指令的目标对象
  2. sys:指令的基本属性,包含指令来源对象,指令应答需求
  3. params:指令携带的参数或者信息,以列表的方式装载不同的数据

在线远程操作和离线usb连接操作指令一致,如果服务器的通讯协议为MQTT,则MQTT的发布和订阅主题为基于method的值重新改造得来,格式:thing.${device_id}.${target}.${process}.${action},比如:
目标网关设备的设备ID为01010101
1、获取设备信息时,发布的主题:thing.01010101.gw.config.get
2、如果要得到设备上报上来的设备信息,则需要订阅主题:thing.01010101.sv.config.push
3、接收心跳包,则需要订阅主题:thing.01010101.sv.ping
4、回复心跳包,则需要发布主题:thing.01010101.gw.pong

表 – params[0].drtPkt字段说明

序号 字段 类型 范围 默认值 说明
1 method 字符串 thing.${target}.${process}.${action} ${target} 详见sys.src
${process} 过程操作,比如config、property、ack、login、ping、pong
${action} 操作动作,比如get、set、push。不是每个method都有action
2 sys 对象
– src 字符串 ext、sub、gw、sv 数据来源对象
ext为外设,比如网关的串口外设之类的
sub为无线或者有线的组网终端节点
gw为网关设备
sv为服务器
– ack 数字 =0,目标对象无需回复
=1,需要回复methodthing.sv.ack的信息
3 params 列表

一、网关注册信息

主题:thing.${device_id}.sv.login

{
  "method" : "thing.sv.login",
  "sys" : {
    "src" : "gw",
    "ack" : 1
  },
  "params" : [ {
    "device_id" : "000000",
    "pw" : "000000",
    "svip" : "000.000.000.176",
    "svport" : "1883",
    "netCh" : "LAN",
    "version" : "V1.2",
    "netVer" : "2.1.2",
    "netImei" : "865328060000000",
    "netIccid" : ""
  } ]
}

表 – params[0] 字段说明

序号 字段 类型 范围 默认值 说明
1 device_id 字符串 该信息来源设备的id,如果sys.src=gw,则device_id为网关设备的id
2 pw 字符串 服务器登陆密码,用于设备登录判断
3 svip 字符串 服务器ip地址
4 svport 字符串 服务器端口
5 netCh 字符串 当前网关联网通道,
LAN表示正使用以太网联网,
SIM表示正使用4G网络联网
6 version 字符串 当前网关固件版本
7 netImei 字符串 当前网关4G模组的imei号,可用于4G模组的远程升级等用途
8 netVer 字符串 当前网关4G模组固件版本,可用于4G模组的远程升级等用途

二、网关心跳信息

当服务器收到该信息时,必须需回复pong信息,网关一个小时内没有收到任何数据,将自动重启设备
主题:thing.${device_id}.sv.ping

{
  "method" : "thing.sv.ping",
  "params" : [ {
    "gwTemp" : "31.02",
    "rf0Rssi" : -109
  } ],
  "sys" : {
    "src" : "gw",
    "ack" : 1
  }
}

表 – params[0] 字段说明

序号 字段 类型 范围 默认值 说明
1 gwTemp 字符串 当前网关的设备温度,单位:摄氏度
2 rf0Rssi 数字 有符号整型类型,环境无线信号强度,单位:dBm

网关心跳服务器响应信息

主题:thing.${device_id}.gw.pong

{
  "method" : "thing.gw.pong",
  "sys" : {
    "src" : "sv",
    "ack" : 0
  },
  "params" : [ {
    "time" : "2023-08-12 22:11:35"
  } ]
}

表 – **params[0].**字段说明

序号 字段 类型 范围 默认值 说明
1 time 字符串 当前日期时间,格式:YYYY-MM-DD hh:mm:ss

三、mqtt遗嘱信息

主题:thing.${device_id}.sv.will
备注:

  • 当网关设备掉线超时后服务器会向订阅了主题为thing.${device_id}.sv.will的客户端发布该主题数据
{
  "method" : "thing.sv.will",
  "sys" : {
    "src" : "gw",
    "ack" : 0
  },
  "params" : [ ]
}

表 – params[0] 字段说明

序号 字段 类型 范围 默认值 说明
1

四、lora无线数据透传普通数据信息

主题:thing.${device_id}.sv.property.push
透传数据包:01030002000125CA,格式:hex

{
  "method" : "thing.sv.property.push",
  "sys" : {
    "src" : "sub",
    "ack" : 0
  },
  "params" : [ {
    "drtPkt" : {
      "device_id" : "00000000",
      "rssi" : -53,
      "dtTyp" : "hex",
      "packet" : "01030002000125CA",
      "pktLen" : 8
    }
  } ]
}

表 – params[0].drtPkt字段说明

序号 字段 类型 范围 默认值 说明
1 device_id 字符串 该信息来源设备的id,如果sys.src=sub,则device_id为终端节点设备的id
3 rssi 数字 有符号整型,无线数据包信号强度
4 dtTyp 字符串 hex、str packet数据包的数据格式
5 packet 字符串 透传数据包
5 pktLen 数字 透传数据包长度

五、服务器下发无线透传普通数据信息

主题:thing.${device_id}.sub.property.push
透传数据包:01030002000125CA,格式:hex

{
  "method" : "thing.sub.property.push",
  "sys" : {
    "src" : "sv",
    "ack" : 0
  },
  "params" : [ {
    "drtPkt" : {
      "device_id" : "00000000",
      "dtTyp" : "hex",
      "packet" : "01030002000125CA"
    }
  } ]
}

表 – params[0].drtPkt字段说明

序号 字段 类型 范围 默认值 说明
1 device_id 字符串 目标终端节点设备ID
2 dtTyp 字符串 hex、str packet数据包的数据格式
3 packet 字符串 透传数据包
这篇文章对您有用吗?

我们要如何帮助您?