yangjie #22

Merged
yangqiang merged 99 commits from yangjie into master 2024-10-22 16:11:46 +08:00
2 changed files with 13 additions and 5 deletions
Showing only changes of commit e362145da9 - Show all commits

View File

@ -1,17 +1,24 @@
import styles from '@/page/Meeting/CurrentSpeakUserWindow/index.module.scss' import styles from '@/page/Meeting/CurrentSpeakUserWindow/index.module.scss'
import { storage } from '@/utils';
import { useEffect, useState } from "react"; import { useEffect, useState } from "react";
const CurrentSpeakUserWindow: React.FC = () => { const CurrentSpeakUserWindow: React.FC = () => {
const [inputValue, setInputValue] = useState<string>('') const [inputValue, setInputValue] = useState('')
const [user, setUser] = useState<any>({});
const [isMeSpeack, setIsMeSpeack] = useState(false)
const channel = new BroadcastChannel('meeting_channel'); const channel = new BroadcastChannel('meeting_channel');
const userInfo = JSON.parse(storage.getItem('user') as string)
useEffect(() => { useEffect(() => {
setUser(userInfo)
channel.onmessage = function (event) { channel.onmessage = function (event) {
const { type, currentSpeakUser } = event.data; const { type, currentSpeakUser, uidArr } = event.data;
switch (type) { switch (type) {
case 'currentSpeakUser': case 'currentSpeakUser':
if (currentSpeakUser.length) { if (currentSpeakUser.length) {
setInputValue(currentSpeakUser.join('; ')) setInputValue(currentSpeakUser.join('; '))
setIsMeSpeack(uidArr.find((item: any) => item === 0) ? true : false)
} else { } else {
setInputValue('') setInputValue('')
setIsMeSpeack(false)
} }
break; break;
} }
@ -22,8 +29,8 @@ const CurrentSpeakUserWindow: React.FC = () => {
return ( return (
<> <>
<div className={styles.currentSpeakUserWindow}> <div className={styles.currentSpeakUserWindow}>
<div title={inputValue ? `正在说话: ${inputValue}` : `正在说话:`}> <div title={`正在说话:${isMeSpeack ? user.userName : ''} ${inputValue}`}>
{inputValue ? `正在说话: ${inputValue}` : `正在说话:`} {`正在说话:${isMeSpeack ? user.userName : ''} ${inputValue}`}
</div> </div>
</div > </div >
</> </>

View File

@ -962,11 +962,12 @@ const Meeting: React.FC = () => {
}); });
} }
}); });
const uidArr = (speakers.filter((item: any) => item.volume)).map(item => item.uid || userInfo.uid) as number[]; const uidArr = (speakers.filter((item: any) => item.volume)) as number[];
const currentSpeakUser = await checkUidsInUsers(uidArr) const currentSpeakUser = await checkUidsInUsers(uidArr)
channel.postMessage({ channel.postMessage({
type: 'currentSpeakUser', type: 'currentSpeakUser',
currentSpeakUser, currentSpeakUser,
uidArr
}); });
} }
}, },