示例说明
针对一些报警以及事件类型ID,可参考 自定义类型说明
有些字段数据可能会因为不同设备类型的原因,字段数据无意义,如果用不上,可忽略
一、定位数据
@PostMapping("/receiveLocationData")
public MBackResult receiveLocationData(@RequestHeader(value = "headerKey", required = true) String headerKey, @RequestBody TerminalLocation param) {
log.info("ReceiveLocationData:" + JSON.toJSON(param));
MBackResult result = new MBackResult();
result.setResult(200);
return result;
}
TerminalLocation对象详解
@Data
public class TerminalLocation {
/**
* 设备号
*/
public String assetId;
/**
* 经度(WGS-84)
*/
public Double longitude = 0.0d;
/**
* 纬度(WGS-84)
*/
public Double latitude = 0.0d;
/**
* 速度(km/h)
*/
public Integer speed;
/**
* 方向(0~360)
*/
public Integer direction = 0;
/**
* 里程(km)
*/
public Long mileage = 0L;
/**
* 定位时间(UTC)
*/
public String gpsTime;
/**
* 接收时间(UTC)
*/
public String recvTime;
/**
* 定位类型
*/
public Integer locType = 0;
/**
* GPRS信号
*/
public Integer cellSignal = 0;
/**
* 卫星信号
*/
public Integer gnssSignal = 0;
/**
* 小区码数据 ,MNC,MCC,LAC,CID
*/
public String cells;
/**
* 电量
*/
public Integer battery;
/**
* 电压
*/
public String voltage;
/**
* 车载/锁状态JSON
*/
public String statusJson;
/**
* 拓展信息JSON
*/
public String expandInfo;
}
车载/锁信息JSON说明
@Data
public class StatusJson {
/**
* 锁状态(0:关 1:开)
*/
private Integer lockStatus;
/**
* 锁绳状态(1: 拔出 0:插入 -1:无)
*/
private Integer lockRope;
/**
* 索条状态(0:未知;1:在线;2:弯曲;3:锯断;4:丢失)
*/
private Integer lockBar;
/**
* 引擎开关状态( 1:开 0:关 -1:无)
*/
private Integer acc;
/**
* 断油电开关状态 (1:开 0:关 -1:无)
*/
private Integer fuelCut;
/**
* 开关门状态(1:开 0:关 -1:无)
*/
private Integer door;
/**
* 发动机状态(1:开 0:关 -1:无)
*/
private Integer engine;
}
}
拓展信息JSON说明
@Data
public class ExpendInfo {
/**
* 温度 -1000表示无
*/
private String temperature;
/**
* 湿度 0表示无
*/
private String humidity;
/**
* 备用电池 ("55,3.88,0")
*/
private String backBattery;
/**
* 油位值;-1:标识无效
*/
private String fuels;
/**
* 加速度(格式如:"x:1;y:-29;z:-2903")
*/
private String acceleration;
/**
* 光照度(lux)
*/
private String lux;
/**
* 气压(pa)
*/
private String pressure;
/**
* 姿态信息(格式如:"x:1;y:-29;z:-2903")
*/
private String posture;
/**
* 0:未知;1:1G;2:2G;3:3G;4:4G;5:5G
*/
private String networkType;
/**
* 0:实时;1:补报;2:报警
*/
private String reportType;
}
二、报警数据
@PostMapping("/receiveAlarmData")
public MBackResult receiveAlarmData(@RequestHeader(value = "headerKey", required = true) String headerKey, @RequestBody TerminalAlarm param) {
log.info("receiveAlarmData:" + JSON.toJSON(param));
MBackResult result = new MBackResult();
result.setResult(200);
return result;
}
TerminalAlarm对象详解
@Data
public class TerminalAlarm {
/**
* 设备号
*/
public String assetId;
/**
* 报警类型
*/
public int alarmType;
/**
* 时间(UTC)
*/
public String dateTime;
/**
* 经度(WGS-84)
*/
public Double longitude = 0.0d;
/**
* 纬度(WGS-84)
*/
public Double latitude = 0.0d;
/**
* 速度(km/h)
*/
public Integer speed;
/**
* 里程(km)
*/
public Long mileage;
/**
* 小区码(mcc,mnc,lac,cellid)
*/
public String cells;
/**
* 报警描述
*/
public String describe;
/**
* 附件ID
*/
public String fileIndex;
}
三、事件数据
@PostMapping("/receiveEventData")
public MBackResult receiveEventData(@RequestHeader(value = "headerKey", required = true) String headerKey, @RequestBody TerminalEvent param) {
log.info("receiveEventData:" + JSON.toJSON(param));
MBackResult result = new MBackResult();
result.setResult(200);
return result;
}
TerminalEvent对象详解
@Data
public class TerminalEvent {
/**
* 设备号
*/
public String assetId;
/**
* 事件类型
*/
public Integer eventType;
/**
* 开锁类型
*/
public Integer unLockType;
/**
* 时间(utc)
*/
public String dateTime;
/**
* 经度(wgs-84)
*/
public Double longitude = 0.0d;
/**
* 纬度(wgs-84)
*/
public Double latitude = 0.0d;
/**
* 速度(km/h)
*/
public Integer speed;
/**
* 里程(km)
*/
public Long mileage;
/**
* 小区码数据(mcc,mnc,lac,cellid)
*/
public String cells;
/**
* 刷卡开锁卡号
*/
public String card;
/**
* 开锁密码
*/
public String password;
}
四、指令应答数据
@PostMapping("/receiveInsData")
public MBackResult receiveInsData(@RequestHeader(value = "headerKey", required = true) String headerKey, @RequestBody TerminalCommand param) {
log.info("receiveInsData:" + JSON.toJSON(param));
MBackResult result = new MBackResult();
result.setResult(200);
return result;
}
TerminalCommand对象详解
@Data
public class TerminalCommand {
/**
* 设备号
*/
public String assetId;
/**
* 指令类型
*/
public String commandType;
/**
* 指令内容
*/
public String content;
/**
* 时间(utc)
*/
public String dateTime;
}
五、从机数据
@PostMapping("/receiveInsData")
public MBackResult receiveInsData(@RequestHeader(value = "headerKey", required = true) String headerKey, @RequestBody SlaveMachineLocation param) {
log.info("receiveInsData:" + JSON.toJSON(param));
MBackResult result = new MBackResult();
result.setResult(200);
return result;
}
SlaveMachineLocation对象详解
/// <summary>
/// 从机数据
/// </summary>
public class SlaveMachineLocation
{
/// <summary>
/// 主锁设备ID
/// </summary>
public String assetId ;
/// <summary>
/// 主锁经度(WGS-84)
/// </summary>
public Double longitude = 0.0d;
/// <summary>
/// 主锁纬度(WGS-84)
/// </summary>
public Double latitude = 0.0d;
/// <summary>
/// 主锁速度
/// </summary>
public Integer speed ;
/// <summary>
/// 主锁方向
/// </summary>
public Integer direction ;
/// <summary>
/// 主锁定位时间(UTC时间)
/// </summary>
public String gpsTime ;
/// <summary>
/// 主锁接收时间(UTC时间)
/// </summary>
public String recvTime ;
/// <summary>
/// 从机定位时间(UTC时间
/// </summary>
public String subGpsTime ;
/// <summary>
/// 从机电量
/// </summary>
public Integer battery ;
/// <summary>
/// 从机电压
/// </summary>
public String voltage ;
/// <summary>
/// 从机设备号
/// </summary>
public String subAssetID ;
/// <summary>
/// 从机类型 1-JT126 4-JT709 5-JT801 6-JT802
/// </summary>
public Integer sensorType ;
/// <summary>
/// 针对802设备的状态数据(Json字符串),其它类型设备数据可忽略
/// </summary>
public String statusJson ;
/// <summary>
/// 从机锁状态 0-关 1-开
/// </summary>
public Integer locStatus ;
/// <summary>
/// 从机锁绳状态 0-关 1-开
/// </summary>
public Integer locRope;
/// <summary>
///RSSI
/// </summary>
public Integer rssi ;
/// <summary>
/// 从机温度 -1000表示无
/// </summary>
public Double temperature = -1000.0;
/// <summary>
/// 从机湿度 0表示无
/// </summary>
public Integer humidity ;
/// <summary>
/// 从机事件 -1:无 0:关锁事件 1:蓝牙开锁事件 2:开后盖报警 3:远程开锁事件 4:锁绳剪断报警 5:按键唤醒事件 6:心跳包事件 7:充电唤醒事件 8/20:拔出锁绳事件 9:RFID开锁事件 10:刷非法卡报警 14:从机信号丢失报警 15:阀门关闭事件 16:阀门打开事件 17:低电量报警 18:防拆卸报警 19:电子仓拆卸事件 21:锁绳插入 22:蓝牙连接唤醒 23:应急仓打开报警 24:应急仓关闭报警 25:阀门异常打开报警 26:锁销关闭事件 27:锁销开启事件 28:关锁异常 29:电机异常 30:NFC触发
/// </summary>
public Integer eventType = -1;
/// <summary>
/// 从机开锁次数
/// </summary>
public Integer locTimes ;
/// <summary>
/// 从机定位时间戳
/// </summary>
public Long subGpsTimestamp ;
}
文档更新时间: 2023-12-07 15:44 作者:刘家帅