This commit is contained in:
parent
cd71405ccc
commit
65f7fd9548
|
|
@ -120,7 +120,7 @@ const Meeting: React.FC = () => {
|
|||
const [isShare, setIsShare] = useState<any>(null)
|
||||
const [isSharePopConfirm, setIsSharePopConfirm] = useState<any>(false)
|
||||
const [isShareUser, setIsShareUser] = useState<any>(null)
|
||||
const [currentLookUserStatus, setCurrentLookUserStatus] = useState<1 | 2 | 3 | 4>(1)
|
||||
const [currentLookUserStatus, setCurrentLookUserStatus] = useState<0 | 1 | 2 | 3 | 4>(1)
|
||||
let userInfo = JSON.parse(storage.getItem('user') as string)
|
||||
useEffect(() => {
|
||||
let time = null as any;
|
||||
|
|
@ -411,53 +411,56 @@ const Meeting: React.FC = () => {
|
|||
}
|
||||
// 渲染视频
|
||||
const renderVideo = async (uid: string | number): Promise<void> => {
|
||||
if (uid === userInfo.uid || uid === userInfo.screenShareId) {
|
||||
if (String(uid).length === 9) {
|
||||
// 共享屏幕
|
||||
setCurrentLookUserStatus(2)
|
||||
setTimeout(() => {
|
||||
agora.setupLocalVideo({
|
||||
uid: Number(uid),
|
||||
view: document.getElementById(`video-source-screen`) as HTMLElement,
|
||||
channelId: state.channelId,
|
||||
sourceType: VideoSourceType.VideoSourceScreen,
|
||||
})
|
||||
}, 1000);
|
||||
setCurrentLookUserStatus(0)
|
||||
setTimeout(() => {
|
||||
if (uid === userInfo.uid || uid === userInfo.screenShareId) {
|
||||
if (String(uid).length === 9) {
|
||||
// 共享屏幕
|
||||
setCurrentLookUserStatus(2)
|
||||
setTimeout(() => {
|
||||
agora.setupLocalVideo({
|
||||
uid: Number(uid),
|
||||
view: document.getElementById(`video-source-screen`) as HTMLElement,
|
||||
channelId: state.channelId,
|
||||
sourceType: VideoSourceType.VideoSourceScreen,
|
||||
})
|
||||
}, 1000);
|
||||
} else {
|
||||
// 摄像头
|
||||
setCurrentLookUserStatus(1)
|
||||
setTimeout(() => {
|
||||
agora.setupLocalVideo({
|
||||
uid: Number(uid),
|
||||
view: document.getElementById(`video-source-camera-primary`) as HTMLElement,
|
||||
channelId: state.channelId,
|
||||
sourceType: VideoSourceType.VideoSourceCameraPrimary,
|
||||
})
|
||||
}, 1000);
|
||||
}
|
||||
} else {
|
||||
setCurrentLookUserStatus(1)
|
||||
// 摄像头
|
||||
setTimeout(() => {
|
||||
agora.setupLocalVideo({
|
||||
uid: Number(uid),
|
||||
view: document.getElementById(`video-source-camera-primary`) as HTMLElement,
|
||||
channelId: state.channelId,
|
||||
sourceType: VideoSourceType.VideoSourceCameraPrimary,
|
||||
})
|
||||
}, 1000);
|
||||
if (String(uid).length === 9) {
|
||||
// 摄像头
|
||||
setCurrentLookUserStatus(3)
|
||||
setTimeout(() => {
|
||||
agora.setupRemoteVideoJoin({
|
||||
uid: Number(uid),
|
||||
view: document.getElementById(`video-source-remote-camera`) as HTMLElement,
|
||||
channelId: state.channelId,
|
||||
})
|
||||
}, 1000);
|
||||
} else {
|
||||
// 共享屏幕
|
||||
setCurrentLookUserStatus(4)
|
||||
setTimeout(() => {
|
||||
agora.setupRemoteVideoJoin({
|
||||
uid: Number(uid),
|
||||
view: document.getElementById(`video-source-remote-screen`) as HTMLElement,
|
||||
channelId: state.channelId,
|
||||
})
|
||||
}, 1000);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
if (String(uid).length === 9) {
|
||||
// 摄像头
|
||||
setCurrentLookUserStatus(3)
|
||||
setTimeout(() => {
|
||||
agora.setupRemoteVideoJoin({
|
||||
uid: Number(uid),
|
||||
view: document.getElementById(`video-source-remote-camera`) as HTMLElement,
|
||||
channelId: state.channelId,
|
||||
})
|
||||
}, 1000);
|
||||
} else {
|
||||
// 共享屏幕
|
||||
setCurrentLookUserStatus(4)
|
||||
setTimeout(() => {
|
||||
agora.setupRemoteVideoJoin({
|
||||
uid: Number(uid),
|
||||
view: document.getElementById(`video-source-remote-screen`) as HTMLElement,
|
||||
channelId: state.channelId,
|
||||
})
|
||||
}, 1000);
|
||||
}
|
||||
}
|
||||
}, 500)
|
||||
}
|
||||
// 全员观看
|
||||
const getShowUser = async (): Promise<void> => {
|
||||
|
|
@ -873,6 +876,15 @@ const Meeting: React.FC = () => {
|
|||
</div>
|
||||
}
|
||||
)}
|
||||
{currentLookUserStatus === 0 && currentLookUserAccount ?
|
||||
<div className={`${styles.meetingContentSwiperCard} ${setMeetingContentSwiperCardClass()}`}>
|
||||
<div className={`${styles.meetingContentSwiperCardVdeio}`} id='video-source-camera-primary'>
|
||||
{<div className={styles.meetingContentSwiperCardVdeioLoading}>
|
||||
<Avatar name={currentLookUserAccount.userName} />
|
||||
</div>}
|
||||
</div>
|
||||
{meetingContentUser(currentLookUserAccount)}
|
||||
</div> : null}
|
||||
{currentLookUserStatus === 1 && currentLookUserAccount ?
|
||||
<div className={`${styles.meetingContentSwiperCard} ${setMeetingContentSwiperCardClass()}`}>
|
||||
<div className={`${styles.meetingContentSwiperCardVdeio}`} id='video-source-camera-primary'>
|
||||
|
|
@ -1035,10 +1047,10 @@ const Meeting: React.FC = () => {
|
|||
<div>
|
||||
<img src={item.enableMicr ? ImageUrl.icon22 : ImageUrl.icon22Active} alt="" onClick={() => {
|
||||
postOpenMicr(!item.enableMicr, item.uid)
|
||||
}} title={item.enableMicr ? '静音' : '打开声音'} />
|
||||
}} title={item.enableMicr ? '静音' : '解除声音'} />
|
||||
<img src={item.enableCamera ? ImageUrl.icon23 : ImageUrl.icon23Active} alt="" onClick={() => {
|
||||
postOpenCamera(!item.enableCamera, item.uid)
|
||||
}} title={item.enableCamera ? '关闭视频' : '打开视频'} />
|
||||
}} title={item.enableCamera ? '关闭视频' : '开启视频'} />
|
||||
</div>
|
||||
{item.uid !== user.uid && user.roleId === '1' ? <div className='drag'>
|
||||
{!item.isRoomManager ? <Button
|
||||
|
|
|
|||
Loading…
Reference in New Issue