This commit is contained in:
yj 2024-08-09 17:38:31 +08:00
parent adadd234cf
commit 0bbf975ac0
1 changed files with 44 additions and 14 deletions

View File

@ -295,11 +295,11 @@ const Meeting: React.FC = () => {
break;
// 用户加入频道回调
case 'UserJoined':
console.log(item, '用户加入频道回调');
setAllUserListData('UserJoined', item)
break;
// 用户退出频道回调
case 'UserLeave':
console.log(item, '用户退出频道回调');
setAllUserListData('UserLeave', item)
break;
// 所有用户开闭麦
case 'OperAllMicr':
@ -307,11 +307,11 @@ const Meeting: React.FC = () => {
break;
// 用户关闭开启麦克风
case 'OperMicr':
setAllUserListData(item.user)
setAllUserListData('OperMicr', item)
break;
// 用户开启关闭摄像头
case 'OperCamera':
setAllUserListData(item.user)
setAllUserListData('OperCamera', item)
break;
// 管理员用户信息刷新
case 'ManagerRefresh':
@ -358,16 +358,46 @@ const Meeting: React.FC = () => {
}, [recorder])
// 替换数据
const setAllUserListData = (user: any): void => {
setAllUserList((res: any) => {
let item = res.find((row: any) => row.uid === user.uid)
if (item) {
for (const key in user) {
item[key] = user[key];
}
}
return res
})
const setAllUserListData = (key: string, item: any): void => {
switch (key) {
case 'OperMicr':
case 'OperCamera':
setAllUserList((res: any) => {
let userItem = res.find((row: any) => row.uid === item.user.uid)
if (userItem) {
for (const key in item.user) {
userItem[key] = item.user[key];
}
}
return res
})
break;
case 'UserJoined':
setAllUserList((res: any) => {
let userItem = res.find((row: any) => row.uid === item.user.uid)
if (userItem) {
userItem.isRoom = true
for (const key in item.user) {
userItem[key] = item.user[key];
}
}
return res
})
break;
case 'UserLeave':
setAllUserList((res: any) => {
let userItem = res.find((row: any) => row.uid === item.uid)
if (userItem) {
userItem.isRoom = false
}
return res
})
break;
case 'ManagerRefresh':
break;
}
}
// 网络
const handleNetworkChange = (): void => {