fix(meeting): 解决学生端加入会议时已存在用户视频未播放问题
- 加入会议后检查已存在的远程用户列表 - 为已存在的每个用户调用视频播放确保函数 - 添加调试日志显示已存在用户的 UID 信息 - 确保主次视频窗口及所有远程用户视频正常播放
This commit is contained in:
@ -577,11 +577,19 @@
|
||||
screenShareOwnerUid.value = roomData.screenShareOwnerUid;
|
||||
}
|
||||
await meeting.initAndJoin(roomData);
|
||||
// ✅ 加入后先检查是否有已存在的远程用户
|
||||
const existingUsers = meeting.client.value?.remoteUsers || [];
|
||||
console.log('[学生端] 加入会议,已存在的远程用户:', existingUsers.map(u => u.uid));
|
||||
|
||||
// 等待 DOM 更新后再尝试播放视频
|
||||
await nextTick();
|
||||
setTimeout(() => {
|
||||
ensurePrimaryVideoPlaying(primaryUid.value);
|
||||
ensurePrimaryVideoPlaying(secondaryUid.value);
|
||||
// 如果有已存在的用户,也检查一下
|
||||
existingUsers.forEach(user => {
|
||||
ensurePrimaryVideoPlaying(user.uid);
|
||||
});
|
||||
}, 500);
|
||||
initSelfWindowPosition();
|
||||
})
|
||||
@ -642,11 +650,19 @@
|
||||
}
|
||||
if (classStatus.value === 'in_class') {
|
||||
await meeting.initAndJoin(roomData);
|
||||
// ✅ 加入后先检查是否有已存在的远程用户
|
||||
const existingUsers = meeting.client.value?.remoteUsers || [];
|
||||
console.log('[学生端] 加入会议,已存在的远程用户:', existingUsers.map(u => u.uid));
|
||||
|
||||
// 等待 DOM 更新后再尝试播放视频
|
||||
await nextTick();
|
||||
setTimeout(() => {
|
||||
ensurePrimaryVideoPlaying(primaryUid.value);
|
||||
ensurePrimaryVideoPlaying(secondaryUid.value);
|
||||
// 如果有已存在的用户,也检查一下
|
||||
existingUsers.forEach(user => {
|
||||
ensurePrimaryVideoPlaying(user.uid);
|
||||
});
|
||||
}, 500);
|
||||
initSelfWindowPosition();
|
||||
} else {
|
||||
|
||||
Reference in New Issue
Block a user