diff --git a/src/page/Meeting/index.tsx b/src/page/Meeting/index.tsx index 0c00895..96754af 100644 --- a/src/page/Meeting/index.tsx +++ b/src/page/Meeting/index.tsx @@ -8,7 +8,7 @@ import { SearchOutlined, EllipsisOutlined, ExclamationCircleFilled, FullscreenEx import { useLocation, useNavigate } from 'react-router-dom'; import { thumbImageBufferToBase64 } from '@/utils/package/base64' import { storage } from '@/utils'; -import { GetRoomUser, PostOpenMicr, PostOpenCamera, GetLeaveAll, PostRoomManager, DeleteRoomManager, GetRoomKickout, GetShowUser, PostShowUser, GetJoin, GetLeave, PostMuteAll, GetRoomUserItem, GetApplySpeak } from '@/api/Meeting'; +import { GetRoomUser, PostOpenMicr, PostOpenCamera, GetLeaveAll, PostRoomManager, DeleteRoomManager, GetRoomKickout, GetShowUser, PostShowUser, PostMuteAll, GetRoomUserItem, GetApplySpeak } from '@/api/Meeting'; import ImageUrl from '@/utils/package/imageUrl' import { agora } from '@/utils/package/agora' import { onInvoke, onSignalr, offSignalr, onStart } from '@/utils/package/signalr'; @@ -24,7 +24,6 @@ import { role } from '@/config/role'; const { ipcRenderer } = require('electron'); import * as path from 'path'; const { confirm } = Modal; - const { exec } = require('child_process'); const fs = require('fs').promises; dayjs.extend(durationPlugin); @@ -642,12 +641,12 @@ const Meeting: React.FC = () => { // 声网初始化 const agoraInit = async () => { + await getJoin(state.enableMicr, state.enableCamera) await agora.init(true) agora.registerEventHandler({ onJoinChannelSuccess: async (info: any, _elapsed: any) => { if (info.channelId === state.channelId) { if (String(info.localUid).length !== 9) { - await getJoin(state.enableMicr, state.enableCamera) setTimeout(async () => { await agora.setupLocalVideo({ uid: Number(info.localUid), @@ -866,7 +865,11 @@ const Meeting: React.FC = () => { message.success('网络已恢复。') setTimeout(async () => { await onStart(async () => { - await getJoin(!footerList[0][0].active, !footerList[0][1].active) + await onInvoke('joinChannel', { + roomNum: state.channelId, + enableMicr: !footerList[0][0].active, + enableCamera: !footerList[0][1].active + }) }) }, 1000) } else { @@ -1249,7 +1252,11 @@ const Meeting: React.FC = () => { case 'reconnect': if (e.value == true) { storage.setItem('reconnect', false) - await getJoin(!footerList[0][0].active, !footerList[0][1].active) + await onInvoke('joinChannel', { + roomNum: state.channelId, + enableMicr: !footerList[0][0].active, + enableCamera: !footerList[0][1].active + }) } break; } @@ -1490,7 +1497,12 @@ const Meeting: React.FC = () => { } // 加入房间 const getJoin = async (enableMicr: boolean, enableCamera: boolean): Promise => { - await GetJoin({ + // await GetJoin({ + // roomNum: state.channelId, + // enableMicr, + // enableCamera + // }) + await onInvoke('joinChannel', { roomNum: state.channelId, enableMicr, enableCamera @@ -1499,8 +1511,11 @@ const Meeting: React.FC = () => { } // 离开房间 const getLeave = async (): Promise => { - await GetLeave({ - roomNum: state.channelId, + // await GetLeave({ + // roomNum: state.channelId, + // }) + await onInvoke('levelChannel', { + roomNum: state.channelId }) } // 设置全员观看 diff --git a/src/utils/package/signalr.ts b/src/utils/package/signalr.ts index 003aca4..f2ab22a 100644 --- a/src/utils/package/signalr.ts +++ b/src/utils/package/signalr.ts @@ -225,6 +225,14 @@ export const onInvoke = async (str: string, data: any) => { // 设置某个人的设备列表 await connection.invoke(str, data.uid, data.driversJsonString) break; + case 'joinChannel': + // 设置某个人的设备列表 + await connection.invoke(str, data.roomNum, data.enableMicr, data.enableCamera) + break; + case 'levelChannel': + // 设置某个人的设备列表 + await connection.invoke(str, data.roomNum) + break; } } export const onStop = async () => {