[mirotalksfu] - add moderator

هذا الالتزام موجود في:
Miroslav Pejic
2023-11-15 18:23:20 +01:00
الأصل b3a6c254c9
التزام cfbe8a3e5f
11 ملفات معدلة مع 168 إضافات و58 حذوفات

عرض الملف

@@ -16,6 +16,10 @@ module.exports = class Room {
this._isLobbyEnabled = false;
this._roomPassword = null;
this._hostOnlyRecording = false;
this._moderator = {
start_audio_muted: false,
start_video_hidden: false,
};
this.survey = config.survey;
this.redirect = config.redirect;
this.peers = new Map();
@@ -98,6 +102,23 @@ module.exports = class Room {
return this.router.rtpCapabilities;
}
// ####################################################
// ROOM MODERATOR
// ####################################################
updateRoomModerator(data) {
log.debug('Update room moderator', data);
switch (data.type) {
case 'audio':
this._moderator.start_audio_muted = data.status;
break;
case 'video':
this._moderator.start_video_hidden = data.status;
default:
break;
}
}
// ####################################################
// ROOM INFO
// ####################################################
@@ -110,6 +131,7 @@ module.exports = class Room {
isLobbyEnabled: this._isLobbyEnabled,
hostOnlyRecording: this._hostOnlyRecording,
},
moderator: this._moderator,
survey: this.survey,
redirect: this.redirect,
peers: JSON.stringify([...this.peers]),

عرض الملف

@@ -40,7 +40,7 @@ dependencies: {
* @license For commercial or closed source, contact us at license.mirotalk@gmail.com or purchase directly via CodeCanyon
* @license CodeCanyon: https://codecanyon.net/item/mirotalk-sfu-webrtc-realtime-video-conferences/40769970
* @author Miroslav Pejic - miroslav.pejic.85@gmail.com
* @version 1.2.1
* @version 1.2.2
*
*/
@@ -750,6 +750,16 @@ function startServer() {
room.broadCast(socket.id, 'updatePeerInfo', data);
});
socket.on('updateRoomModerator', (dataObject) => {
if (!roomList.has(socket.room_id)) return;
const data = checkXSS(dataObject);
const room = roomList.get(socket.room_id);
room.updateRoomModerator(data);
});
socket.on('fileInfo', (dataObject) => {
if (!roomList.has(socket.room_id)) return;