- Updated StorageFactory to create basic storage providers and key builders. - Simplified StorageProvider interface to focus on basic CRUD operations. - Enhanced MeetStorageService to handle domain-specific logic while delegating storage operations. - Implemented Redis caching for room data to improve performance. - Added error handling and logging improvements throughout the service. - Removed deprecated methods and streamlined object retrieval processes. refactor: update storage service and interfaces to include user key handling and improve initialization logic refactor: update beforeAll hooks in recording tests to clear rooms and recordings refactor: optimize integration recordings test command Revert "refactor: optimize integration recordings test command" This reverts commit d517a44fa282b91613f8c55130916c2af5f07267. refactor: enhance Redis cache storage operations refactor: streamline test setup and teardown for security and recordings APIs
39 lines
779 B
TypeScript
39 lines
779 B
TypeScript
import { LiveKitPermissions } from './permissions/livekit-permissions.js';
|
|
import { OpenViduMeetPermissions } from './permissions/openvidu-permissions.js';
|
|
|
|
/**
|
|
* Options for a participant to join a room.
|
|
*/
|
|
export interface ParticipantOptions {
|
|
/**
|
|
* The unique identifier for the room.
|
|
*/
|
|
roomId: string;
|
|
|
|
/**
|
|
* The name of the participant.
|
|
*/
|
|
participantName: string;
|
|
|
|
/**
|
|
* A secret key for room access.
|
|
*/
|
|
secret: string;
|
|
}
|
|
|
|
/**
|
|
* Represents the permissions for an individual participant.
|
|
*/
|
|
export interface ParticipantPermissions {
|
|
livekit: LiveKitPermissions;
|
|
openvidu: OpenViduMeetPermissions;
|
|
}
|
|
|
|
/**
|
|
* Represents the role of a participant in a room.
|
|
*/
|
|
export const enum ParticipantRole {
|
|
MODERATOR = 'moderator',
|
|
PUBLISHER = 'publisher',
|
|
}
|