# 前提说明
业务方根据接口文档要求,适配消息中台数据结构,提供相应的消息查询、标记已读等接口;再由中台调用接口实现消息查看、阅读等过程。
# 接口说明
消息中台调用接口同时会携带2个请求头,具体如下:
header
X-Id-Token: id_token
请求头名为X-Id-Token 携带值为 id-token ;集成id-token,后端代码可以解析token 获得用户信息 ;
accoutName: 学工号
请求头名为accoutName 携带值为 学工号 ;
1
2
3
4
5
2
3
4
5
pageIndex 页码都是从1开始
1
appId 注册应用获取appId;
1
# GET 当前人未读消息数
入参
/**
* 获取未读消息数
* @param appId 应用ID(支持多个appId逗号拼接) - 必填
* @return
*/
(String appId)
1
2
3
4
5
6
2
3
4
5
6
响应数据格式
{
"code": 0, // int 0 表示成功 非0表示失败
"message": "获取成功", // String 响应信息,发生错误控制台打印响应信息提示
"data": {
"all": 10, // 所有未读消息数
"today": 5, // 今天未读消息数,不存在标记为0
"important": 2 // 未读重要消息数,不存在标记为0
}
}
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
# GET 当前人消息列表查询
入参
/**
* 获取消息列表
* @param pageIndex 页码
* @param pageSize 一页展示数量
* @param startTime 到达时间-起始时间 - 非必填 yyyy-MM-dd HH:mm:ss
* @param endTime 到达时间-结束时间 - 非必填 yyyy-MM-dd HH:mm:ss
* @param appId 应用ID - 必填
* @param important 是否重要消息 1 表示重要消息 0 表示不重要 为空表示都显示
* @param read是否已读 1 表示已读 0 表示未读 为空表示都显示
* @param keyWords 关键词:搜索内容包含 标题/消息内容 - 非必填
* @return
*/
(int pageIndex, int pageSize, String startTime, String endTime, String appId,Integer important,Integer read,String keyWords)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
2
3
4
5
6
7
8
9
10
11
12
13
14
响应数据格式
{
"code": 0, // int 0 表示成功 非0表示失败
"message": "获取成功", // String 响应信息,发生错误控制台打印响应信息提示
"data": {
"items": [
{
"msgId": "", // String 消息记录ID - 后续根据此信息标记已读未读
"title": "", // String 消息标题,必须
"content": "", // String 消息内容,必须**(支持富文本)**
"imgUrl": "", // String 封面图URL
"url": "", // String 跳转地址
"mobileUrl":"", // String 移动端跳转地址
"read": 1, // int 1 表示已读 0 表示未读
"important": 0 , // int 1 表示重要 0 表示不重要
"time": "", // String 消息到达时间,必须,格式: yyyy-MM-dd HH:mm:ss
"authTtype": "cas" // 跳转链接认证方式(cas,id-token );不传不做url处理;因移动端或小程序需要单独处理
}
]
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# GET 当前人消息详情
入参
/**
* **获取消息详情**
* @param appId 应用ID - 必填
* @param msgId 消息记录ID - 必填
* @return
*/
(String appId,String msgId)
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
响应数据格式
{
"code": 0, // int 0 表示成功 非0表示失败
"message": "获取成功", // String 响应信息,发生错误控制台打印响应信息提示
"data": {
"msgId": "", // String 消息记录ID - 后续根据此信息标记已读未读
"title": "", // String 消息标题,必须
"content": "", // String 消息内容,必须**(支持富文本)**
"imgUrl": "", // String 封面图URL
"url": "", // String 跳转地址
"mobileUrl":"", // String 移动端跳转地址
"read": 1, // int 1 表示已读 0 表示未读
"important": 0, // int 1 表示重要 0 表示不重要
"time": "", // String 消息到达时间,必须,格式: yyyy-MM-dd HH:mm:ss
"authTtype":"cas" // 跳转链接认证方式(cas,id-token );不传不做url处理;因移动端或小程序需要单独处理
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
# POST 当前人消息标记已读
入参
/**
* 标记消息为已读
* @body msgIds 消息记录ID数组 appId 该应用下消息标记全部已读 isAll true 所有应用标记全部已读
* 三个参数同时存在,已最小权限为准 isAll > appId > msgIds
* @return
*/
(@RequestBody JSONObject obj)
1
2
3
4
5
6
7
2
3
4
5
6
7
响应数据格式
{
"code": 0, // int 0 表示成功 非0表示失败
"message": "标记已读成功", // String 响应信息,发生错误控制台打印响应信息提示
}
1
2
3
4
2
3
4
# GET 当前人最新信息
消息按照应用分类展示,需要展示待提醒数、最新消息、最新时间
入参
/**
* 获取最新信息
* @param appId 应用ID - 必填
* @param keyWords 关键词:搜索内容包含 标题/消息内容 - 非必填
* @return
*/
(String appId,String keyWords)
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
响应数据格式
{
"code": 0, // int 0 表示成功 非0表示失败
"message": "获取成功", // String 响应信息,发生错误控制台打印响应信息提示
"data": {
"news": "您有一条新的待办", // String 最新一条待提醒消息
"count": 10, // int 未读消息数
"time": "2021-10-11 12:22:11" // String 时间日期格式
}
}
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9