## 消息推送服务
### 接口说明
用户平台提供消息接收的url地址,途狐平台调用该url请求发送数据。途狐平台采用**POST**方式推送数据。
**注意:用户平台正确处理数据后,若返回结果,则需在消息头中声明"Content-Type"的值为"application/json;charset=UTF-8"。如{"Content-Type" :"application/json;charset=UTF-8"}**
#### 推送的内容如下:
| 参数 | 类型 | 描述 |
| --- | --- | --- |
| data | String | 消息内容 |
#### data参数列表:
| 参数 | 类型 | 描述 |
| --- | --- | --- |
| address | String | 告警地址(未解析成功时返回null) |
| alarmName | String | 告警名称 |
| alarmTime | String | 告警时间,格式(yyyy-MM-dd HH:mm:ss) |
| alarmType | String | 告警类型 |
| imei | String | 设备imei |
| lat | String | 纬度(WGS84坐标系) |
| lng | String | 经度(WGS84坐标系) |
| sign| String | 签名,签名方式和 [API签名](/2523135) 一致,供用户校验接口使用 |
#### 消息示例:
~~~
https://ip:port/xxx
参数:
"data": {
"address":"浙江省宁波市xxxxx",
"alarmName":"断电报警",
"alarmTime":"2021-11-22 09:41:46",
"alarmType":"2",
"imei":"867366050xxxxx",
"lat":"29.xxxxxx",
"lng":"121.xxxxxx"
"sign":"326AA85FAAD7BA3A6DAC8B02B098A880"
}
~~~
#### 附1:设备目前支持推送告警类型
| 参数 | 描述 |
| --- | --- |
| 1 | SOS求救 |
| 2 | 断电报警 |
| 3 | 震动报警 |
| 6 | 超速报警 |
| 1002 | ACC开启 |
| 1006 | 进入围栏 |
| 1007 | 离开围栏 |
#### 附2:Java接收端示例代码(仅供参考)
~~~
// Map接收方式
@PostMapping(value = "/api/v1/openapi/openApiAlarm/testMap")
public void receive(@RequestBody Map<String, String> data) {
System.out.println(data.toString());
// 可在接收后转为自定义实体类
OpenApiAlarm openapiAlarmEntity = new OpenApiAlarm();
openapiAlarmEntity = JSONObject.parseObject(data.get("data"), OpenApiAlarm.class);
System.out.println(openapiAlarmEntity.toString());
}
~~~
~~~
// 字符串接收方式
@PostMapping(value = "/api/v1/openapi/openApiAlarm/testString")
public void receive(@RequestBody String data) {
System.out.println(data);
}
~~~
- 目录
- 概述
- 使用场景
- 使用方法
- 协议格式
- 公共约定
- API简介
- 通信流程
- API列表
- 接口调用限制说明
- API详情
- 认证说明
- 通用参数
- 获取accessToken
- 刷新accessToken
- 注册设备到平台
- 根据账户获取设备信息
- 根据账户获取所有设备的最新定位数据
- 根据IMEI获取最新定位数据
- 根据IMEI获取设备详细信息
- 根据IMEI获取轨迹数据
- 获取设备支持的指令列表
- 指定设备发送指令
- 获取设备指令结果
- 根据用户名获取分组列表
- 创建分组
- 修改分组信息
- 删除分组
- 根据账户获取车辆列表
- 根据分组ID获取车辆列表
- 添加车辆
- 修改车牌
- 转移车辆(改变分组)
- 获取围栏列表
- 获取围栏相关车辆
- 新增围栏
- 删除围栏
- 围栏关联车辆
- 消息推送