This commit is contained in:
parent
c4bc3dd59a
commit
18eb286fea
|
|
@ -56,7 +56,7 @@ export const PostOpenMicr = (data: any) => {
|
||||||
|
|
||||||
export const PostOpenCamera = (data: any) =>
|
export const PostOpenCamera = (data: any) =>
|
||||||
request({
|
request({
|
||||||
url: `/room/oper-camera?roomNum=${data.roomNum}&enableCamera=${data.enableCamera}&uid=${data.uid}`,
|
url: `/room/oper-camera`,
|
||||||
method: 'get',
|
method: 'get',
|
||||||
data
|
data
|
||||||
})
|
})
|
||||||
|
|
|
||||||
|
|
@ -18,6 +18,7 @@ import { VideoSourceType } from 'agora-electron-sdk';
|
||||||
import { GetUserList } from '@/api/Home/User';
|
import { GetUserList } from '@/api/Home/User';
|
||||||
import Avatar from '@/components/Avatar';
|
import Avatar from '@/components/Avatar';
|
||||||
import SharedFilesModel from '@/components/SharedFilesModel';
|
import SharedFilesModel from '@/components/SharedFilesModel';
|
||||||
|
import StupWizard from '@/components/StupWizard';
|
||||||
const fs = require('fs').promises;
|
const fs = require('fs').promises;
|
||||||
dayjs.extend(durationPlugin);
|
dayjs.extend(durationPlugin);
|
||||||
const Meeting: React.FC = () => {
|
const Meeting: React.FC = () => {
|
||||||
|
|
@ -26,6 +27,7 @@ const Meeting: React.FC = () => {
|
||||||
const speakerModeModalRef = useRef<any>();
|
const speakerModeModalRef = useRef<any>();
|
||||||
const sharedFilesModelRef = useRef<any>();
|
const sharedFilesModelRef = useRef<any>();
|
||||||
const invitingPersonnelRef = useRef<any>();
|
const invitingPersonnelRef = useRef<any>();
|
||||||
|
const stupWizardRef = useRef<any>();
|
||||||
const [statusList, setStatusList] = useState({
|
const [statusList, setStatusList] = useState({
|
||||||
userList: false,
|
userList: false,
|
||||||
userChatList: false,
|
userChatList: false,
|
||||||
|
|
@ -72,11 +74,11 @@ const Meeting: React.FC = () => {
|
||||||
iconActive: ImageUrl.icon27Active,
|
iconActive: ImageUrl.icon27Active,
|
||||||
active: false,
|
active: false,
|
||||||
},
|
},
|
||||||
// {
|
{
|
||||||
// title: '设置向导',
|
title: '设置向导',
|
||||||
// icon: ImageUrl.icon28,
|
icon: ImageUrl.icon28,
|
||||||
// active: false,
|
active: false,
|
||||||
// },
|
},
|
||||||
{
|
{
|
||||||
title: '结束',
|
title: '结束',
|
||||||
icon: ImageUrl.icon29,
|
icon: ImageUrl.icon29,
|
||||||
|
|
@ -182,6 +184,8 @@ const Meeting: React.FC = () => {
|
||||||
const footerListTemplate = [...footerList]
|
const footerListTemplate = [...footerList]
|
||||||
footerListTemplate[0][0].title = item.enableMicr ? '关闭声音' : '开启声音'
|
footerListTemplate[0][0].title = item.enableMicr ? '关闭声音' : '开启声音'
|
||||||
footerListTemplate[0][0].active = !item.enableMicr
|
footerListTemplate[0][0].active = !item.enableMicr
|
||||||
|
footerListTemplate[0][1].title = item.enableCamera ? '关闭视频' : '开启视频'
|
||||||
|
footerListTemplate[0][1].active = !item.enableCamera
|
||||||
setFooterList(footerListTemplate)
|
setFooterList(footerListTemplate)
|
||||||
}
|
}
|
||||||
agora.muteLocalAudioStream(!item.enableMicr)
|
agora.muteLocalAudioStream(!item.enableMicr)
|
||||||
|
|
@ -307,28 +311,28 @@ const Meeting: React.FC = () => {
|
||||||
footerListTemplate[itemIndex][rowIndex].title = '开启声音'
|
footerListTemplate[itemIndex][rowIndex].title = '开启声音'
|
||||||
footerListTemplate[itemIndex][rowIndex].active = true
|
footerListTemplate[itemIndex][rowIndex].active = true
|
||||||
setFooterList(footerListTemplate)
|
setFooterList(footerListTemplate)
|
||||||
postOpenMicr(false)
|
postOpenMicr(false, user.uid)
|
||||||
break;
|
break;
|
||||||
case '开启声音':
|
case '开启声音':
|
||||||
footerListTemplate[itemIndex][rowIndex].title = '关闭声音'
|
footerListTemplate[itemIndex][rowIndex].title = '关闭声音'
|
||||||
footerListTemplate[itemIndex][rowIndex].active = false
|
footerListTemplate[itemIndex][rowIndex].active = false
|
||||||
setFooterList(footerListTemplate)
|
setFooterList(footerListTemplate)
|
||||||
postOpenMicr(true)
|
postOpenMicr(true, user.uid)
|
||||||
break;
|
break;
|
||||||
case '关闭视频':
|
case '关闭视频':
|
||||||
footerListTemplate[itemIndex][rowIndex].title = '开启视频'
|
footerListTemplate[itemIndex][rowIndex].title = '开启视频'
|
||||||
footerListTemplate[itemIndex][rowIndex].active = true
|
footerListTemplate[itemIndex][rowIndex].active = true
|
||||||
setFooterList(footerListTemplate)
|
setFooterList(footerListTemplate)
|
||||||
postOpenCamera(false)
|
postOpenCamera(false, user.uid)
|
||||||
break;
|
break;
|
||||||
case '开启视频':
|
case '开启视频':
|
||||||
footerListTemplate[itemIndex][rowIndex].title = '关闭视频'
|
footerListTemplate[itemIndex][rowIndex].title = '关闭视频'
|
||||||
footerListTemplate[itemIndex][rowIndex].active = false
|
footerListTemplate[itemIndex][rowIndex].active = false
|
||||||
setFooterList(footerListTemplate)
|
setFooterList(footerListTemplate)
|
||||||
postOpenCamera(true)
|
postOpenCamera(true, user.uid)
|
||||||
break;
|
break;
|
||||||
case '设置向导':
|
case '设置向导':
|
||||||
|
// stupWizardRef.current.changeModal()
|
||||||
break;
|
break;
|
||||||
case '邀请人员':
|
case '邀请人员':
|
||||||
invitingPersonnelRef.current.changeInvitingPersonnelModal()
|
invitingPersonnelRef.current.changeInvitingPersonnelModal()
|
||||||
|
|
@ -477,19 +481,19 @@ const Meeting: React.FC = () => {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// 开关麦克风
|
// 开关麦克风
|
||||||
const postOpenMicr = async (enableMicr: boolean, isAll?: boolean): Promise<void> => {
|
const postOpenMicr = async (enableMicr: boolean, uid: string, isAll?: boolean): Promise<void> => {
|
||||||
await PostOpenMicr({
|
await PostOpenMicr({
|
||||||
roomNum: state.channelId,
|
roomNum: state.channelId,
|
||||||
uid: user.uid,
|
uid,
|
||||||
enableMicr,
|
enableMicr,
|
||||||
isAll,
|
isAll,
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
// 开关视频
|
// 开关视频
|
||||||
const postOpenCamera = async (enableCamera: boolean): Promise<void> => {
|
const postOpenCamera = async (enableCamera: boolean, uid: string): Promise<void> => {
|
||||||
await PostOpenCamera({
|
await PostOpenCamera({
|
||||||
roomNum: state.channelId,
|
roomNum: state.channelId,
|
||||||
uid: user.uid,
|
uid,
|
||||||
enableCamera
|
enableCamera
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
@ -646,10 +650,10 @@ const Meeting: React.FC = () => {
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
<img src={item.enableMicr ? ImageUrl.icon22 : ImageUrl.icon22Active} alt="" onClick={() => {
|
<img src={item.enableMicr ? ImageUrl.icon22 : ImageUrl.icon22Active} alt="" onClick={() => {
|
||||||
|
postOpenMicr(!item.enableMicr, item.id)
|
||||||
}} />
|
}} />
|
||||||
<img src={item.enableCamera ? ImageUrl.icon23 : ImageUrl.icon23Active} alt="" onClick={() => {
|
<img src={item.enableCamera ? ImageUrl.icon23 : ImageUrl.icon23Active} alt="" onClick={() => {
|
||||||
|
postOpenCamera(!item.enableCamera, item.id)
|
||||||
}} />
|
}} />
|
||||||
</div>
|
</div>
|
||||||
{item.account !== user.account && user.roleId === '1' ? <div className='drag'>
|
{item.account !== user.account && user.roleId === '1' ? <div className='drag'>
|
||||||
|
|
@ -709,7 +713,7 @@ const Meeting: React.FC = () => {
|
||||||
</div>
|
</div>
|
||||||
<div className={`${styles.meetingUserListFooter} drag`}>
|
<div className={`${styles.meetingUserListFooter} drag`}>
|
||||||
<div onClick={() => invitingPersonnelRef.current.changeInvitingPersonnelModal()}>邀请</div>
|
<div onClick={() => invitingPersonnelRef.current.changeInvitingPersonnelModal()}>邀请</div>
|
||||||
<div onClick={() => postOpenMicr(false, true)}>全员静音</div>
|
<div onClick={() => postOpenMicr(false, user.id, true)}>全员静音</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
:
|
:
|
||||||
|
|
@ -825,6 +829,7 @@ const Meeting: React.FC = () => {
|
||||||
<SharedFilesModel ref={sharedFilesModelRef} />
|
<SharedFilesModel ref={sharedFilesModelRef} />
|
||||||
<SpeakerModeModal ref={speakerModeModalRef} />
|
<SpeakerModeModal ref={speakerModeModalRef} />
|
||||||
<InvitingPersonnelModal ref={invitingPersonnelRef} />
|
<InvitingPersonnelModal ref={invitingPersonnelRef} />
|
||||||
|
<StupWizard ref={stupWizardRef} />
|
||||||
</>
|
</>
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -294,7 +294,10 @@ const agora = {
|
||||||
rtcEngine.enableVideo();
|
rtcEngine.enableVideo();
|
||||||
rtcEngine.startPreview();
|
rtcEngine.startPreview();
|
||||||
await GetRoomRtcToken(`${+new Date()}`).then(async (res) => {
|
await GetRoomRtcToken(`${+new Date()}`).then(async (res) => {
|
||||||
await rtcEngine.joinChannel(res.data, `${+new Date()}`, uid, {
|
await rtcEngine.joinChannelEx(res.data, {
|
||||||
|
channelId: `${+new Date()}`,
|
||||||
|
localUid: uid,
|
||||||
|
}, {
|
||||||
channelProfile: ChannelProfileType.ChannelProfileLiveBroadcasting,
|
channelProfile: ChannelProfileType.ChannelProfileLiveBroadcasting,
|
||||||
clientRoleType: ClientRoleType.ClientRoleBroadcaster,
|
clientRoleType: ClientRoleType.ClientRoleBroadcaster,
|
||||||
publishMicrophoneTrack: true,
|
publishMicrophoneTrack: true,
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue