# 物联网性诱设备与服务器端交互通讯细节 ## 简述 本文档主要用于阐述物联网性诱设备与服务器端进行交互的通讯细节,其中包括物联网性诱设备与服务器之间使用的通信协议和交互通讯协议两部分。 ## 适用范围 适用于【通用物联网性诱设备】与服务器之间的通讯。 ## 对接说明 ### 设备数据说明 1. **数据上传时间**:默认为 30 分钟一次。 2. **电击次数**:即杀虫数,上传一次 `data` 数据后重置为 0。 ### 设备对接说明 1. **设备数据包含**:设备号、SIM 卡号、境温湿度、工作状态、经纬度、电压等。 2. **接口接收数据**:由接收方提供接口(可以外网访问的接口)接收数据。离线数据与 `data` 数据区分,根据数据中的 `cmd` 字段进行区分。 3. **接口测试**:先进行接口测试,确保无误后再发送正式数据。 4. **问题排查**:如果对接完成后设备未收到数据,请先检查所提供的接口是否有问题,然后再联系对接人员。 5. **设备上线**:设备上线后会自动发送 `data` 数据。 6. **接口安全**:可以针对传输方 IP 做限制,非传输方 IP 不允许调用接口(传输方 IP 可以联系对接人员提供)。 7. **数据格式**:设备数据格式不可变,不能按接收方增加或者减少字段,如有需求请联系销售经理。 8. **接口设置**:由我们这边进行配置,您只需要把接口发给对接人员就可以了。 ## 设备数据报文结构 ```json { "payload": { "cmd": "data", "ext": { "imei": "867038032102768", "iccid": "89860401101700076471", "csq": "29", "dver": "V1.0.1", "proj": "SEX_TRAP_1", "dtype": "4", "btype": "0", "ds": "1", "ws": "1", "cs": "0", "rps": "0", "tps": "0", "dps": "0", "bs": "0", "ts": "0", "st": "20", "et": "2", "cv": "18.0", "bv": "12.8", "at": "0", "ah": "0", "infr_ct": "25", "volt_ct": "100", "dat_f": "5", "clt_t": "10", "wind_drec": "5", "wind_sped": "5.6", "rcnt": "10", "gps": "1", "lng": "113.67336", "lat": "34.815187", "stamp": "20180301211805" } }, "topic": "/yfkj/xycb/c2s/867435052203452" } ``` 字段说明 | 字段名 | 描述 | | ------------ | -------------------------------------------------------------------- | | imei | 通讯板唯一 ID | | iccid | SIM 卡卡号 | | csq | 信号强度 0~30 | | dver | 4G 物联网模块代码版本号 | | proj | 设备名称 `SEX_TRAP_1` | | ds | 设备开关 0: 关机 1: 开机 | | ws | 工作状态 0: 待机 1: 工作 | | cs | 充电标志位 0: 非充电 1: 充电 | | rps | 雨控状态 0: 正常 1: 保护 | | tps | 温控状态 0: 正常 1: 保护 | | dps | 倾倒状态 0: 正常 1: 保护 | | bs | 电池状态 0: 正常 1: 欠压 2: 过压 | | ts | 时控开关 0: 关闭时控 1: 开启时控 | | st | 时控开始时间,单位: 小时 0~24 | | et | 时控结束时间,单位: 小时 0~24 | | cv | 充电电压,单位: V 字符串类型 | | bv | 电池电压,单位: V 字符串类型 | | at | 环境温度 (字符串) | | ah | 环境湿度 (字符串) | | infr_ct | 红外计数值,整型,以红外计数为准 | | volt_ct | 电击计数值,整型 | | dat_f | 数据上传时间间隔,单位: 分钟 | | clt_t | 清虫间隔,单位: 分钟 | | wind_drec | 风向,整型,范围 0~359 | | wind_sped | 风速,字符串,单位: m/s | | rcnt | 设备重启次数 | | lng | 经度 | | lat | 纬度 | | stamp | 时间戳,格式:YYYYMMDDHHmmss(例如 20180301211805) | 遗愿消息 设备默认设置了 MQTT 遗愿消息。当设备异常下线时(客户端断开前未向服务器发送 DISCONNECT 消息),MQTT 消息服务器会发布异常下线设备的遗愿消息。订阅设备遗愿消息,可实现对设备在线和离线状态的监控。 报文结构 ```json { "cmd": "offline", "ext": { "imei": "867435052203452" }, "topic": "/yfkj/xycb/c2s/867435052203452" } ```