摄像头麦克风优化

This commit is contained in:
yj 2025-02-19 17:19:08 +08:00
parent 2b97e5d93b
commit f709f3db42
2 changed files with 58 additions and 7 deletions

12
main.js
View File

@ -191,6 +191,7 @@ app.on('ready', () => {
connection.off('JoinChannelCallback'); connection.off('JoinChannelCallback');
connection.off('ExitSharedScreen'); connection.off('ExitSharedScreen');
connection.off('SetSpeaker'); connection.off('SetSpeaker');
connection.off('ReceivedOperation');
} }
}); });
ipcMain.handle('onStop', (event) => { ipcMain.handle('onStop', (event) => {
@ -236,6 +237,10 @@ app.on('ready', () => {
// 发言人设置成功 // 发言人设置成功
await connection.invoke(str, data) await connection.invoke(str, data)
break; break;
case 'sendOper2User':
// 扩展参数
await connection.invoke(str, data.uid, data.contentString)
break;
} }
}); });
ipcMain.handle('onOtherSignalr', (event) => { ipcMain.handle('onOtherSignalr', (event) => {
@ -411,6 +416,13 @@ app.on('ready', () => {
RoomManagerInputDTO RoomManagerInputDTO
}) })
}); });
// 扩展参数
connection.on("ReceivedOperation", (contentString) => {
mainWindow.webContents.send('onSignalr', {
key: 'ReceivedOperation',
contentString
})
});
} }
}); });
// 放大缩小退出窗口 // 放大缩小退出窗口

View File

@ -966,10 +966,31 @@ const Meeting: React.FC = () => {
return res return res
}) })
break; break;
// 共享 // 设置发言人
case 'SetSpeaker': case 'SetSpeaker':
window.electron.onInvoke('SetSpeakerCallback', item.RoomManagerInputDTO) window.electron.onInvoke('SetSpeakerCallback', item.RoomManagerInputDTO)
break; break;
// 扩展参数
case 'ReceivedOperation':
try {
const temp = JSON.parse(item.contentString)
if (temp.type === 'audio') {
await PostOpenMicr({
roomNum: temp.roomNum,
uid: temp.uid,
enableMicr: temp.enableMicr
})
} else {
await PostOpenCamera({
roomNum: temp.roomNum,
uid: temp.uid,
enableCamera: temp.enableCamera
})
}
} catch (error) {
}
break;
} }
}) })
return () => { return () => {
@ -2219,11 +2240,20 @@ const Meeting: React.FC = () => {
enableMicr enableMicr
}) })
} else { } else {
await PostOpenMicr({ await window.electron.onInvoke('sendOper2User', {
uid,
contentString: JSON.stringify({
roomNum: state.channelId, roomNum: state.channelId,
uid, uid,
enableMicr enableMicr,
type: 'audio'
}) })
})
// await PostOpenMicr({
// roomNum: state.channelId,
// uid,
// enableMicr
// })
} }
if (isMessage) { if (isMessage) {
// message.success('操作成功') // message.success('操作成功')
@ -2264,11 +2294,20 @@ const Meeting: React.FC = () => {
} else { } else {
await agora.stopCameraCapture(); await agora.stopCameraCapture();
} }
await PostOpenCamera({ await window.electron.onInvoke('sendOper2User', {
uid,
contentString: JSON.stringify({
roomNum: state.channelId, roomNum: state.channelId,
uid, uid,
enableCamera enableCamera,
type: 'video'
}) })
})
// await PostOpenCamera({
// roomNum: state.channelId,
// uid,
// enableCamera
// })
if (isMessage) { if (isMessage) {
// message.success('操作成功') // message.success('操作成功')
} }