Commit b4774b23 by hweeeeeei

ws下发会话属性变动事件;

ws下发会话拓展字段变动事件
parent 004d822b
# 四恩慈善 - 后端项目
# IM 后端项目
## 框架介绍
> 本项目使用第三方开源脚手架项目: spring-boot-plus 参考:README-zh.md
......
......@@ -98,7 +98,7 @@ public class ImConversationMembersServiceImpl extends BaseServiceImpl<ImConversa
new QueryWrapper<ImConversationMembers>().lambda()
.eq(ImConversationMembers::getFkAppid, imApplication.getId())
.eq(ImConversationMembers::getFkConversationId, imConvMemeClientRemarkNameParam.getConversationId())
.eq(ImConversationMembers::getId, imClientSender.getId())
.eq(ImConversationMembers::getFkClientId, imClientSender.getId())
);
if (imConversationMember == null) {
......
......@@ -610,7 +610,49 @@ public class ImConversationServiceImpl extends BaseServiceImpl<ImConversationMap
imConversationById.setName(imConversationNameUpdate.getName());
boolean b = imConversationService.updateById(imConversationById);
if (b) {
//TODO 下发群名称变动事件
// 下发群名称变动事件
// ws下发群属性变动事件
// 内容
HashMap<String, String> content = new HashMap<>();
content.put("type", "-1015");
content.put("name", imConversationById.getName());
// 遍历发送
for (ImConversationMembers conversationMembers : membersList) {
// 查询接收方
ImClient imClientReceiver = imClientService.getOne(new QueryWrapper<ImClient>().lambda()
.eq(ImClient::getFkAppid, imApplication.getId())
.eq(ImClient::getId, conversationMembers.getFkClientId()));
if (imClientReceiver == null) {
continue;
}
// 封装响应的实体
ImMessageOnlineSend imMessageOnlineSend = new ImMessageOnlineSend();
// imMessageOnlineSend.setMsgId(null);
// imMessageOnlineSend.setSender(imClientSender.getClientId());
imMessageOnlineSend.setContent(content);
imMessageOnlineSend.setConversationId(conversationMembers.getFkConversationId());
// imMessageOnlineSend.setWithdraw(Boolean.FALSE);
imMessageOnlineSend.setEvent(Boolean.TRUE);
// 向接收方推送
WsResponseModel<ImMessageOnlineSend> responseModel = new WsResponseModel<>();
responseModel.setCmd(WsResponseCmdEnum.CONVERSATION_EVENT_MSG.getCmdCode());
ApiResult<Boolean> result = ApiResult.result(ApiCode.SUCCESS);
responseModel.setCode(result.getCode());
responseModel.setMsg(result.getMessage());
responseModel.setData(imMessageOnlineSend);
responseModel.setReqId(null);
writeDataService.write(responseModel, imApplication.getAppKey(), imClientReceiver.getClientId());
}
return ApiResult.ok();
} else {
......@@ -660,7 +702,47 @@ public class ImConversationServiceImpl extends BaseServiceImpl<ImConversationMap
if (b) {
//TODO ws下发群属性变动事件
// ws下发拓展字段变动事件
// 内容
HashMap<String, String> content = new HashMap<>();
content.put("type", "-1014");
content.put("attributes", imConversationById.getAttributes());
// 遍历发送
for (ImConversationMembers conversationMembers : membersList) {
// 查询接收方
ImClient imClientReceiver = imClientService.getOne(new QueryWrapper<ImClient>().lambda()
.eq(ImClient::getFkAppid, imApplication.getId())
.eq(ImClient::getId, conversationMembers.getFkClientId()));
if (imClientReceiver == null) {
continue;
}
// 封装响应的实体
ImMessageOnlineSend imMessageOnlineSend = new ImMessageOnlineSend();
// imMessageOnlineSend.setMsgId(null);
// imMessageOnlineSend.setSender(imClientSender.getClientId());
imMessageOnlineSend.setContent(content);
imMessageOnlineSend.setConversationId(conversationMembers.getFkConversationId());
// imMessageOnlineSend.setWithdraw(Boolean.FALSE);
imMessageOnlineSend.setEvent(Boolean.TRUE);
// 向接收方推送
WsResponseModel<ImMessageOnlineSend> responseModel = new WsResponseModel<>();
responseModel.setCmd(WsResponseCmdEnum.CONVERSATION_EVENT_MSG.getCmdCode());
ApiResult<Boolean> result = ApiResult.result(ApiCode.SUCCESS);
responseModel.setCode(result.getCode());
responseModel.setMsg(result.getMessage());
responseModel.setData(imMessageOnlineSend);
responseModel.setReqId(null);
writeDataService.write(responseModel, imApplication.getAppKey(), imClientReceiver.getClientId());
}
return ApiResult.ok();
......
This source diff could not be displayed because it is too large. You can view the blob instead.
# wecloud-im 前端Websocket对接文档
# wecloud-im 前端Websocket对接文档
......@@ -473,6 +473,60 @@ websocket是异步的 有可能你很快速的发送了几条消息,服务器响
- 你被xx拉入新会话 -1011
- xx主动退出会话 -1012
- xx成为新群主 -1013
- 群拓展字段变动事件 -1014
- 会话名称字段变动事件 -1015
### 下发 会话名称字段变动事件
该event事件消息类型不需要回执,该消息不会存入离线消息列表
```json
{
"cmd":5,
"code":200,
"msg":"成功",
"data":{
"createTime":1629086007054,
"content":{
"type":-1015,
"name":"xxxxxxx"
},
"event":true,
"conversationId":1427109730563788800
},
"reqId":null
}
```
### 下发 会话拓展字段变动事件
该event事件消息类型不需要回执,该消息不会存入离线消息列表
```json
{
"cmd":5,
"code":200,
"msg":"成功",
"data":{
"createTime":1629086007054,
"content":{
"type":-1014,
"attributes":"xxxxxxx"
},
"event":true,
"conversationId":1427109730563788800
},
"reqId":null
}
```
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment