This commit is contained in:
parent
a34a9423bc
commit
762ccefc66
|
|
@ -119,6 +119,7 @@ const Meeting: React.FC = () => {
|
|||
const [currentLookUserAccount, setCurrentLookUserAccount] = useState<any>('')
|
||||
const [recorder, setRecorder] = useState<any>('')
|
||||
const [mediaStream, setMediaStream] = useState<any>('')
|
||||
const [isShare, setIsShare] = useState<any>(false)
|
||||
const [currentLookUserStatus, setCurrentLookUserStatus] = useState<1 | 2 | 3 | 4>(1)
|
||||
let userInfo = JSON.parse(storage.getItem('user') as string)
|
||||
useEffect(() => {
|
||||
|
|
@ -158,7 +159,9 @@ const Meeting: React.FC = () => {
|
|||
}
|
||||
},
|
||||
onUserJoined: async (info: any, remoteUid: any, _elapsed: any) => {
|
||||
if (String(remoteUid).length !== 9) {
|
||||
if (String(remoteUid).length === 9) {
|
||||
setIsShare(true)
|
||||
} else {
|
||||
await getRoomUser()
|
||||
setTimeout(async () => {
|
||||
let view = document.getElementById(`video-${remoteUid}`) as HTMLElement;
|
||||
|
|
@ -174,6 +177,9 @@ const Meeting: React.FC = () => {
|
|||
}
|
||||
},
|
||||
onUserOffline: async (info: any, remoteUid: any, _reason: any) => {
|
||||
if (String(remoteUid).length === 9) {
|
||||
setIsShare(false)
|
||||
}
|
||||
await agora.setupRemoteVideo({
|
||||
uid: Number(remoteUid),
|
||||
view: null,
|
||||
|
|
@ -444,6 +450,7 @@ const Meeting: React.FC = () => {
|
|||
setIsSharedScreenModal(true)
|
||||
break;
|
||||
case '停止共享':
|
||||
await agora.leaveChannelEx(user.screenShareId)
|
||||
agora.stopScreenCapture()
|
||||
await allUserLook(user.uid)
|
||||
footerListTemplate[itemIndex][rowIndex].title = '共享屏幕'
|
||||
|
|
|
|||
|
|
@ -141,7 +141,7 @@ const agora = {
|
|||
},
|
||||
// 共享屏幕单独用户
|
||||
joinChannelEx: async (uid: any) => {
|
||||
await rtcEngine.leaveChannelEx({ channelId: option.channelId, localUid: Number(uid) })
|
||||
await agora.leaveChannelEx(uid)
|
||||
await rtcEngine.joinChannelEx(
|
||||
option.token,
|
||||
{ channelId: option.channelId, localUid: Number(uid) },
|
||||
|
|
@ -155,6 +155,10 @@ const agora = {
|
|||
}
|
||||
);
|
||||
},
|
||||
// 离开共享屏幕频道
|
||||
leaveChannelEx: async (uid: any) => {
|
||||
await rtcEngine.leaveChannelEx({ channelId: option.channelId, localUid: Number(uid) })
|
||||
},
|
||||
// 停止共享屏幕
|
||||
stopScreenCapture: () => {
|
||||
rtcEngine.stopScreenCapture();
|
||||
|
|
|
|||
Loading…
Reference in New Issue