Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wecloud_im_server
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
hewei
wecloud_im_server
Commits
094d7b19
Commit
094d7b19
authored
May 07, 2022
by
罗长华
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
完成单聊消息、事件消息发送逻辑
parent
e01365eb
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
162 additions
and
16 deletions
+162
-16
core/src/main/java/com/wecloud/im/mapper/ImConversationMapper.java
+2
-1
core/src/main/java/com/wecloud/im/param/add/ImConversationCreate.java
+2
-2
core/src/main/java/com/wecloud/im/param/add/ServerImConversationCreate.java
+64
-0
core/src/main/java/com/wecloud/im/service/ImConversationService.java
+27
-8
core/src/main/java/com/wecloud/im/service/impl/ImConversationServiceImpl.java
+0
-0
core/src/main/java/com/wecloud/im/service/impl/ImMessageServiceImpl.java
+0
-0
im-sdk/src/main/java/com/wecloud/im/sdk/sample/PublishPrivateChatMessageSample.java
+10
-5
im-sdk/src/main/java/com/wecloud/im/sdk/sample/PublishPrivateChatMessageStatusSample.java
+57
-0
No files found.
core/src/main/java/com/wecloud/im/mapper/ImConversationMapper.java
View file @
094d7b19
package
com
.
wecloud
.
im
.
mapper
;
package
com
.
wecloud
.
im
.
mapper
;
import
java.io.Serializable
;
import
java.io.Serializable
;
import
java.util.Collection
;
import
java.util.List
;
import
java.util.List
;
import
org.apache.ibatis.annotations.Param
;
import
org.apache.ibatis.annotations.Param
;
...
@@ -102,5 +103,5 @@ public interface ImConversationMapper extends BaseMapper<ImConversation> {
...
@@ -102,5 +103,5 @@ public interface ImConversationMapper extends BaseMapper<ImConversation> {
* @Return
* @Return
*/
*/
List
<
ImConversation
>
getConversationBySenderAndReceivers
(
@Param
(
"senderImClientId"
)
Long
senderImClientId
,
@Param
(
List
<
ImConversation
>
getConversationBySenderAndReceivers
(
@Param
(
"senderImClientId"
)
Long
senderImClientId
,
@Param
(
"receiverImClientIds"
)
List
<
Long
>
receiverImClientIds
);
"receiverImClientIds"
)
Collection
<
Long
>
receiverImClientIds
);
}
}
core/src/main/java/com/wecloud/im/param/add/ImConversationCreate.java
View file @
094d7b19
...
@@ -7,10 +7,10 @@ import lombok.Data;
...
@@ -7,10 +7,10 @@ import lombok.Data;
import
lombok.EqualsAndHashCode
;
import
lombok.EqualsAndHashCode
;
import
lombok.experimental.Accessors
;
import
lombok.experimental.Accessors
;
import
javax.validation.constraints.NotNull
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.List
;
import
javax.validation.constraints.NotNull
;
/**
/**
* 会话表
* 会话表
*
*
...
...
core/src/main/java/com/wecloud/im/param/add/ServerImConversationCreate.java
0 → 100644
View file @
094d7b19
package
com
.
wecloud
.
im
.
param
.
add
;
import
io.swagger.annotations.ApiModel
;
import
lombok.Data
;
import
lombok.experimental.Accessors
;
import
java.io.Serializable
;
import
java.util.List
;
import
com.wecloud.im.entity.ImApplication
;
import
com.wecloud.im.entity.ImClient
;
import
com.wecloud.im.sdk.enums.ChatTypeEnum
;
import
com.wecloud.imserver.client.model.enums.DeviceTypeEnum
;
/**
*
* @Author luozh
* @Date 2022年05月07日 10:13
* @Version 1.0
*/
@Data
@Accessors
(
chain
=
true
)
@ApiModel
(
value
=
"ImConversationCreate"
)
public
class
ServerImConversationCreate
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
/**
* 可选 对话的名字,可为群组命名。")
*/
private
String
name
;
/**
* tring格式,可选 自定义属性,供开发者扩展使用。")
*/
private
String
attributes
;
/**
* 应用, 前端")
*/
private
ImApplication
application
;
/**
* 创建者 前端请求不传")
*/
private
ImClient
creator
;
/**
* 可选 成员列表
*/
private
List
<
ImClient
>
members
;
/**
* @see com.wecloud.im.sdk.enums.ChatTypeEnum
*/
/**
* 会话属性,1:单聊,2:普通群,3:万人群, 4:聊天室")
*/
private
ChatTypeEnum
chatType
;
/**
* 客户端平台: 1 web, 2 安卓, 3 ios, 4 pc-win, 5 pc-macOs, 需与生成sign时的值一致")
*/
private
DeviceTypeEnum
platform
;
}
core/src/main/java/com/wecloud/im/service/ImConversationService.java
View file @
094d7b19
package
com
.
wecloud
.
im
.
service
;
package
com
.
wecloud
.
im
.
service
;
import
com.fasterxml.jackson.core.JsonProcessingException
;
import
com.wecloud.im.entity.ImConversation
;
import
com.wecloud.im.param.*
;
import
com.wecloud.im.param.add.*
;
import
com.wecloud.im.vo.ChatRoomMemberVo
;
import
com.wecloud.im.vo.ConversationVo
;
import
com.wecloud.im.vo.ImConversationCreateVo
;
import
io.geekidea.springbootplus.framework.common.api.ApiResult
;
import
io.geekidea.springbootplus.framework.common.api.ApiResult
;
import
io.geekidea.springbootplus.framework.common.service.BaseService
;
import
io.geekidea.springbootplus.framework.common.service.BaseService
;
import
io.geekidea.springbootplus.framework.core.pagination.Paging
;
import
io.geekidea.springbootplus.framework.core.pagination.Paging
;
...
@@ -14,6 +7,32 @@ import io.geekidea.springbootplus.framework.core.pagination.Paging;
...
@@ -14,6 +7,32 @@ import io.geekidea.springbootplus.framework.core.pagination.Paging;
import
java.util.Collection
;
import
java.util.Collection
;
import
java.util.List
;
import
java.util.List
;
import
com.fasterxml.jackson.core.JsonProcessingException
;
import
com.wecloud.im.entity.ImConversation
;
import
com.wecloud.im.param.ChatRoomMemberPageParam
;
import
com.wecloud.im.param.DisbandConversationParam
;
import
com.wecloud.im.param.ExitChatRoomParam
;
import
com.wecloud.im.param.GroupChatSettingParam
;
import
com.wecloud.im.param.ImConversationPageParam
;
import
com.wecloud.im.param.ImConversationQueryParam
;
import
com.wecloud.im.param.ImConversationQueryVo
;
import
com.wecloud.im.param.IntoChatRoomParam
;
import
com.wecloud.im.param.ListConversationParam
;
import
com.wecloud.im.param.MutedGroupMemberParam
;
import
com.wecloud.im.param.MutedGroupParam
;
import
com.wecloud.im.param.SetAdminsParam
;
import
com.wecloud.im.param.TransferOwnerParam
;
import
com.wecloud.im.param.add.ImClientLeaveConversation
;
import
com.wecloud.im.param.add.ImClientToConversation
;
import
com.wecloud.im.param.add.ImConversationAttrUpdate
;
import
com.wecloud.im.param.add.ImConversationCreate
;
import
com.wecloud.im.param.add.ImConversationDisplayUpdate
;
import
com.wecloud.im.param.add.ImConversationNameUpdate
;
import
com.wecloud.im.param.add.ServerImConversationCreate
;
import
com.wecloud.im.vo.ChatRoomMemberVo
;
import
com.wecloud.im.vo.ConversationVo
;
import
com.wecloud.im.vo.ImConversationCreateVo
;
/**
/**
* 会话表 服务类
* 会话表 服务类
*
*
...
@@ -46,7 +65,7 @@ public interface ImConversationService extends BaseService<ImConversation> {
...
@@ -46,7 +65,7 @@ public interface ImConversationService extends BaseService<ImConversation> {
* @param imConversationCreate
* @param imConversationCreate
* @return
* @return
*/
*/
ImConversation
createImConversationForSdk
(
ImConversationCreate
imConversationCreate
);
ImConversation
serverCreateImConversation
(
Server
ImConversationCreate
imConversationCreate
);
/**
/**
...
...
core/src/main/java/com/wecloud/im/service/impl/ImConversationServiceImpl.java
View file @
094d7b19
This diff is collapsed.
Click to expand it.
core/src/main/java/com/wecloud/im/service/impl/ImMessageServiceImpl.java
View file @
094d7b19
This diff is collapsed.
Click to expand it.
im-sdk/src/main/java/com/wecloud/im/sdk/sample/PublishPrivateChatMessageSample.java
View file @
094d7b19
...
@@ -31,17 +31,22 @@ public class PublishPrivateChatMessageSample {
...
@@ -31,17 +31,22 @@ public class PublishPrivateChatMessageSample {
String
toGroupIds
=
"1513691265777217536"
;
String
toGroupIds
=
"1513691265777217536"
;
String
messageType
=
"-1"
;
String
messageType
=
"-1"
;
Map
<
String
,
Object
>
msg
=
new
HashMap
<>();
Map
<
String
,
Object
>
content
=
new
HashMap
<>();
msg
.
put
(
"toConversation"
,
"1519985463165931520"
);
content
.
put
(
"toConversation"
,
"1519985463165931520"
);
msg
.
put
(
"type"
,
-
1
);
content
.
put
(
"type"
,
-
1
);
msg
.
put
(
"text"
,
"这是测试消息: "
+
DateUtil
.
formatDateTime
(
new
Date
()));
content
.
put
(
"text"
,
"这是测试消息: "
+
DateUtil
.
formatDateTime
(
new
Date
()));
content
.
put
(
"attrs"
,
new
HashMap
<
String
,
String
>()
{
{
put
(
"test1"
,
""
);
}
});
boolean
silent
=
true
;
boolean
silent
=
true
;
PrivateChatMessage
privateChatMessage
=
new
PrivateChatMessage
();
PrivateChatMessage
privateChatMessage
=
new
PrivateChatMessage
();
privateChatMessage
.
setFromUserId
(
senderId
);
privateChatMessage
.
setFromUserId
(
senderId
);
privateChatMessage
.
setToUserIds
(
toGroupIds
);
privateChatMessage
.
setToUserIds
(
toGroupIds
);
privateChatMessage
.
setMessageType
(
messageType
);
privateChatMessage
.
setMessageType
(
messageType
);
privateChatMessage
.
setContent
(
JSONUtil
.
toJsonStr
(
msg
));
privateChatMessage
.
setContent
(
JSONUtil
.
toJsonStr
(
content
));
privateChatMessage
.
setPushContent
(
""
);
privateChatMessage
.
setPushContent
(
""
);
privateChatMessage
.
setIncludeSender
(
false
);
privateChatMessage
.
setIncludeSender
(
false
);
privateChatMessage
.
setPersisted
(
true
);
privateChatMessage
.
setPersisted
(
true
);
...
...
im-sdk/src/main/java/com/wecloud/im/sdk/sample/PublishPrivateChatMessageStatusSample.java
0 → 100644
View file @
094d7b19
package
com
.
wecloud
.
im
.
sdk
.
sample
;
import
java.util.Date
;
import
java.util.HashMap
;
import
java.util.Map
;
import
cn.hutool.core.date.DateUtil
;
import
cn.hutool.json.JSONUtil
;
import
com.wecloud.im.sdk.WecloudIm
;
import
com.wecloud.im.sdk.WecloudImClientBuilder
;
import
com.wecloud.im.sdk.model.PrivateChatStatusMessage
;
/**
* 发布单聊消息
* @Author luozh
* @Date 2022年05月06日 01:37:29
* @Version 1.0
*/
public
class
PublishPrivateChatMessageStatusSample
{
public
static
void
main
(
String
[]
args
)
{
// WecloudIm im = new WecloudImClientBuilder().build("http://139.159.136.86:8082",
// "QizKVHcILRWp6Td2",
// "287d04828099fb7de871e9dda845fa8b6b2302faf2ab3737");
WecloudIm
im
=
new
WecloudImClientBuilder
().
build
(
"http://127.0.0.1:8082"
,
"QizKVHcILRWp6Td2"
,
"287d04828099fb7de871e9dda845fa8b6b2302faf2ab3737"
);
String
senderId
=
"1519984635566845952"
;
String
toGroupIds
=
"1513691265777217536"
;
String
messageType
=
"-1"
;
Map
<
String
,
Object
>
content
=
new
HashMap
<>();
content
.
put
(
"toConversation"
,
"1519985463165931520"
);
content
.
put
(
"type"
,
-
1
);
content
.
put
(
"text"
,
"这是测试消息: "
+
DateUtil
.
formatDateTime
(
new
Date
()));
content
.
put
(
"attrs"
,
new
HashMap
<
String
,
String
>()
{
{
put
(
"test1"
,
""
);
}
});
PrivateChatStatusMessage
privateChatMessage
=
new
PrivateChatStatusMessage
();
privateChatMessage
.
setFromUserId
(
senderId
);
privateChatMessage
.
setToUserIds
(
toGroupIds
);
privateChatMessage
.
setMessageType
(
messageType
);
privateChatMessage
.
setContent
(
JSONUtil
.
toJsonStr
(
content
));
privateChatMessage
.
setIncludeBlacklist
(
false
);
privateChatMessage
.
setIncludeSender
(
false
);
Boolean
result
=
im
.
publishPrivateStatusMessage
(
privateChatMessage
);
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment