cbd-sq.md 8.1 KB

虫情测报灯与服务器端交互通讯细节

简要描述

本文档主要用于阐述虫情测报灯与服务器端进行交互的通讯细节。对接采用 HTTP 协议,由接收方写接口来接收 HTTP POST 数据(需从 request 的 body(字节流类型)中取数据,取到之后进行 JSON 解析)。图片和设备数据为相互独立的两种数据。

接口说明

1. 数据接收接口

需要接收方写接口接收数据 POST 请求,数据分为 statusdataoffline 类型,可共用一个接口,根据 cmd 字段进行解析。

status 数据返回示例

{
  "topic": "/yfkj/cbd/pub/865650043207246",
  "payload": {
    "cmd": "status",
    "ext": {
      "imei": "865650043207246",
      "iccid": "89860401101700076471",
      "csq": 29,
      "dtype": 1,
      "dver": "1.0.0",
      "rps": 0,
      "lps": 0,
      "tps": 0,
      "gs": 0,
      "upds": 1,
      "dnds": 0,
      "hs": 0,
      "ts": 0,
      "lat": "34.815187",
      "lng": "113.67336",
      "lamp": 0,
      "lux": 1,
      "vs": 40,
      "ws": 0,
      "shake": 1,
      "proj": "DCCBD-2_HK",
      "stamp": "20180301211805",
      "gps": "2"
    }
  }
}

status 参数说明

字段名 描述
imei 通讯板唯一 ID
iccid 物联网卡的 iccid 号,用于查询物联网卡的套餐、流量信息等
csq 信号强度
dtype 设备类型 (测报灯设备类型为 3)
dver 设备固件版本
rps 雨控状态 1:雨控,0:正常
lps 光控状态 1:光控,0:正常
tps 温控状态 1:温控,0:正常
gs 通道状态 1:落虫,0:排水
upds 上仓门状态 1:打开,0:关闭
dnds 下仓门状态 1:打开,0:关闭
hs 加热状态 1:加热,0:正常
ts 定时模式 0:光控,1:时控
lat 纬度
lng 经度
stamp 时间戳(格式:YYYYMMDDHHmmss)
ws 工作状态 0:待机,1:工作
lamp 灯管状态 0:灭,1:亮(只有 ws=1 时灯管状态才起作用)
lux 光照强度
vs 内部版本号,做参考
shake 震动时间(单位:毫秒)
proj 内部版本名称
gps 定位说明, 0: 手动定位, 1: GPS 定位, 2: 基站定位
  1. data 数据返回示例
    json { "topic": "/yfkj/cbd/pub/865650043207246", "payload": { "cmd": "data", "ext": { "imei": "865650043207246", "at": 245, "ah": 745, "hrt": 55, "rps": 0, "lps": 0, "tps": 0, "lat": "34.815187", "lng": "113.67336", "lamp": 0, "lux": 1, "ws": 0, "batStatus": 0, "vbat": "27.766", "stamp": "20180301211805" } } } data 参数说明
字段名 描述
imei 通讯板唯一 ID
at 环境温度 (单位:℃)(注:温度值为乘以 10 后的结果,需要除以 10 得到温度值)
ah 环境湿度 (单位:%RH)(注:湿度值为乘以 10 后的结果,需要除以 10 得到相对湿度值)
hrt 加热仓实时温度 (单位:℃)
rps 雨控状态 1:雨控,0:正常
lps 光控状态 1:光控,0:正常
tps 温控状态 1:温控,0:正常
lat 纬度
lng 经度
stamp 时间戳(格式:YYYYMMDDHHmmss)
ws 工作状态 0:待机,1:工作
lamp 灯管状态 0:灭,1:亮(只有 ws=1 时灯管状态才起作用)
lux 光照强度
batStatus 电池状态 0:正常, 1:欠压
vbat 电池电压
  1. offline 参数返回说明
    会发布异常下线设备的遗愿消息。注意:设备离线会发送一条设备下线消息,设备上线后发送正常数据(data 和 status)。

设备默认设置配置了 MQTT 遗愿消息。当设备异常下线时(客户端断开前未向服务器发送 DISCONNECT 消息),MQTT 消息服务器会发布异常下线设备的遗愿消息。订阅设备遗愿消息,可实现对设备在线和离线状态的监控。

离线消息主题
/yfkj/cbd/offline/
报文结构

{
  "cmd": "offline",
  "ext": {
    "imei": "865650043207246"
  }
}

offline 参数返回示例

{
  "payload": {
    "cmd": "offline",
    "ext": {
      "imei": "865650043207246"
    }
  },
  "topic": "/yfkj/cbd/pub/865650043207246"
}

设备带害虫识别图片传输说明
注意事项
数据上传时间默认是 20 分钟上传一次。
图片数据上传时间受落虫时间、加热时间影响,默认是 30 分钟上传一次。
设备拍照只在设置的工作范围内拍照,设备在雨控、温控状态下不会进行拍照和图片数据上传,只会上传设备数据(data 和 status 数据)。
图片保存的时候不要直接保存图片链接到数据库,有可能图片链接会失效,导致图片展示不了的问题,需要下载保存到本地。
示例 1

{
  "Image": "http://www.yfzhwlw.com/cbd_img/868956044831318/2020/09/202009191823.jpg",
  "Result_image": "http://www.yfzhwlw.com/result_pyftp/ftp_file/ykm_cbd/868956044824807/192.168.1.100_01_20201112174044521_ALARM_INPUTresult.jpg",
  "Result": "20,3#8,1#64,1#49,1#3,1#112,1#79,1",
  "imei": "865650043207246"
}

示例 2

{
  "Image": "http://www.yfzhwlw.com/cbd_img/868956044831318/2020/09/202009191823.jpg",
  "Result_image": "0",
  "Result": "0",
  "imei": "865650043207246"
}

图片参数说明

字段名 描述
imei 设备序列号
Image 拍照图片(图片链接,建议下载保存)
Result_image 识别结果图片(图片链接,建议下载保存)
Result 结果字符串,用“种类 1,种类 1 数目#种类 2,种类 2 数目…”表示,如 “10,1#12,2”,表示种类 10 的数目是 1,种类 12 的数目是 2

设备不带害虫识别图片传输说明
接口说明: 对接采用 HTTP 协议,由接收方写接口来接收 HTTP POST 数据(需从 request 的 body(字节流类型)中取数据,取到之后进行 JSON 解析)。图片和设备数据为相互独立的两种数据。
图片保存的时候不要直接保存图片链接到数据库,有可能图片链接会失效,导致图片展示不了的问题,需要下载保存到本地。

示例

{
  "Image": "http://www.yfzhwlw.com/cbd_img/868956044831318/2020/09/202009191823.jpg",
  "imei": "865650043207246"
}

图片参数说明

字段名 描述
imei 设备序列号
Image 拍照图片(图片链接,建议下载保存)

设备温控、雨控说明
温控:为了冬季保护电池。即使供电系统是市电,在这种温度条件下,并不会发生虫情,因此设计为系统待机,不再拍照,也比较符合节能降耗的思想。
雨控:为了防止设备进水而设计,发生雨控也进入待机,不再工作和拍照。

6.C#语言接收数据案例