typings: Add recording access control in recording preferences and create RecordingPermissions interface

This commit is contained in:
juancarmore 2025-04-25 11:42:12 +02:00
parent ef3289d5ef
commit a105d79680
2 changed files with 22 additions and 9 deletions

View File

@ -6,12 +6,14 @@ export interface OpenViduMeetPermissions {
// Permissions for recording
canRecord: boolean; // Can start/stop recording the room.
// canWatchRecording?: boolean; // Can watch the recording.
// canDownloadRecording?: boolean; // Can download the recording.
// canDeleteRecording?: boolean; // Can delete the recording.
// Permissions for chat
canChat: boolean; // Can send chat messages in the room.
canChangeVirtualBackground: boolean; // Can change the virtual background.
}
export interface RecordingPermissions {
canRetrieveRecordings: boolean; // Can list and play recordings.
canDeleteRecordings: boolean; // Can delete recordings.
}

View File

@ -2,19 +2,30 @@
* Interface representing the preferences for a room.
*/
export interface MeetRoomPreferences {
chatPreferences: MeetChatPreferences;
recordingPreferences: MeetRecordingPreferences;
virtualBackgroundPreferences: MeetVirtualBackgroundPreferences;
chatPreferences: MeetChatPreferences;
recordingPreferences: MeetRecordingPreferences;
virtualBackgroundPreferences: MeetVirtualBackgroundPreferences;
}
/**
* Interface representing the preferences for recording.
*/
export interface MeetRecordingPreferences {
enabled: boolean;
enabled: boolean;
allowAccessTo: MeetRecordingAccess;
}
export const enum MeetRecordingAccess {
ADMIN = 'admin', // Only admins can access the recording
ADMIN_MODERATOR = 'admin-moderator', // Admins and moderators can access
ADMIN_MODERATOR_PUBLISHER = 'admin-moderator-publisher', // Admins, moderators and publishers can access
PUBLIC = 'public' // Everyone can access
}
export interface MeetChatPreferences {
enabled: boolean;
enabled: boolean;
}
export interface MeetVirtualBackgroundPreferences {
enabled: boolean;
enabled: boolean;
}