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
5bdfd44c
Commit
5bdfd44c
authored
Apr 25, 2022
by
Future
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
多人音视频邀请调整
parent
ff9cdce9
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
16 additions
and
15 deletions
+16
-15
core/src/main/java/com/wecloud/multimeet/service/impl/MultiMeetServiceImpl.java
+16
-15
No files found.
core/src/main/java/com/wecloud/multimeet/service/impl/MultiMeetServiceImpl.java
View file @
5bdfd44c
...
...
@@ -75,6 +75,7 @@ public class MultiMeetServiceImpl implements MultiMeetService {
}
List
<
RoomMemberDto
>
members
=
Lists
.
newArrayList
();
ImMultiRtcRoom
rtcRoom
=
imMultiRtcRoomService
.
getCachedMultiRtcRoom
(
currentClient
.
getFkAppid
(),
param
.
getRoomId
());
List
<
ImMultiRtcRoomMember
>
roomMembersToSave
=
Lists
.
newArrayList
();
if
(
rtcRoom
==
null
)
{
rtcRoom
=
new
ImMultiRtcRoom
();
rtcRoom
.
setId
(
SnowflakeUtil
.
getId
());
...
...
@@ -84,7 +85,21 @@ public class MultiMeetServiceImpl implements MultiMeetService {
rtcRoom
.
setCreateTime
(
new
Date
());
rtcRoom
.
setUpdateTime
(
new
Date
());
imMultiRtcRoomService
.
save
(
rtcRoom
);
// 将邀请人存入房间成员
ImMultiRtcRoomMember
roomMember
=
new
ImMultiRtcRoomMember
();
roomMember
.
setId
(
SnowflakeUtil
.
getId
());
roomMember
.
setFkRtcRoomId
(
rtcRoom
.
getId
());
roomMember
.
setRoomId
(
param
.
getRoomId
());
roomMember
.
setFkClientId
(
currentClient
.
getId
());
roomMember
.
setClientId
(
currentClient
.
getClientId
());
roomMember
.
setState
(
MultiRtcMemberStateEnum
.
ANSWERED
.
getCode
());
roomMember
.
setCallTime
(
new
Date
());
roomMember
.
setHeartbeatTime
(
new
Date
());
roomMember
.
setCreateTime
(
new
Date
());
roomMember
.
setUpdateTime
(
new
Date
());
roomMembersToSave
.
add
(
roomMember
);
}
else
{
// 取得历史成员列表
List
<
ImMultiRtcRoomMember
>
rtcRoomMemberList
=
imMultiRtcRoomMemberService
.
list
(
new
QueryWrapper
<
ImMultiRtcRoomMember
>().
lambda
()
.
eq
(
ImMultiRtcRoomMember:
:
getFkRtcRoomId
,
rtcRoom
.
getId
())
...
...
@@ -98,7 +113,6 @@ public class MultiMeetServiceImpl implements MultiMeetService {
members
.
add
(
roomMemberDto
);
}
}
List
<
ImMultiRtcRoomMember
>
roomMembersToSave
=
Lists
.
newArrayList
();
for
(
String
toClientId
:
param
.
getToClients
())
{
ImClient
toClient
=
imClientService
.
getCacheImClient
(
currentClient
.
getFkAppid
(),
toClientId
);
if
(
toClient
==
null
)
{
...
...
@@ -108,7 +122,7 @@ public class MultiMeetServiceImpl implements MultiMeetService {
// 占线 通知邀请方
List
<
ImMultiRtcRoomMember
>
busyMember
=
imMultiRtcRoomMemberService
.
list
(
new
QueryWrapper
<
ImMultiRtcRoomMember
>().
lambda
()
.
eq
(
ImMultiRtcRoomMember:
:
getClientId
,
toClientId
)
.
in
(
ImMultiRtcRoomMember:
:
getState
,
Lists
.
newArrayList
(
MultiRtcMemberStateEnum
.
ANSWERED
.
getCode
()
,
MultiRtcMemberStateEnum
.
CALLING
.
getCode
()
)));
.
in
(
ImMultiRtcRoomMember:
:
getState
,
Lists
.
newArrayList
(
MultiRtcMemberStateEnum
.
ANSWERED
.
getCode
())));
if
(
CollectionUtils
.
isNotEmpty
(
busyMember
))
{
MultiMeetBusyResponse
multiMeetBusyResponse
=
new
MultiMeetBusyResponse
();
multiMeetBusyResponse
.
setConversationId
(
param
.
getConversationId
());
...
...
@@ -146,19 +160,6 @@ public class MultiMeetServiceImpl implements MultiMeetService {
roomMemberDto
.
setState
(
MultiRtcMemberStateEnum
.
CALLING
.
getCode
());
members
.
add
(
roomMemberDto
);
}
// 将邀请人存入房间成员
ImMultiRtcRoomMember
roomMember
=
new
ImMultiRtcRoomMember
();
roomMember
.
setId
(
SnowflakeUtil
.
getId
());
roomMember
.
setFkRtcRoomId
(
rtcRoom
.
getId
());
roomMember
.
setRoomId
(
param
.
getRoomId
());
roomMember
.
setFkClientId
(
currentClient
.
getId
());
roomMember
.
setClientId
(
currentClient
.
getClientId
());
roomMember
.
setState
(
MultiRtcMemberStateEnum
.
ANSWERED
.
getCode
());
roomMember
.
setCallTime
(
new
Date
());
roomMember
.
setHeartbeatTime
(
new
Date
());
roomMember
.
setCreateTime
(
new
Date
());
roomMember
.
setUpdateTime
(
new
Date
());
roomMembersToSave
.
add
(
roomMember
);
imMultiRtcRoomMemberService
.
saveBatch
(
roomMembersToSave
);
for
(
RoomMemberDto
member
:
members
)
{
// ws向接收方发送通知
...
...
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