typings: add participant role management and signal payloads for room preferences
This commit is contained in:
parent
eb8ab3fe63
commit
4d8fdb49e8
@ -1,3 +1,25 @@
|
||||
import { ParticipantRole } from './participant.js';
|
||||
import { MeetRoomPreferences } from './room-preferences.js';
|
||||
|
||||
export enum MeetSignalType {
|
||||
MEET_ROOM_PREFERENCES_UPDATED = 'meet_room_preferences_updated',
|
||||
MEET_PARTICIPANT_ROLE_UPDATED = 'meet_participant_role_updated',
|
||||
}
|
||||
|
||||
export interface MeetRoomPreferencesUpdatedPayload {
|
||||
roomId: string;
|
||||
preferences: MeetRoomPreferences;
|
||||
timestamp: number;
|
||||
}
|
||||
|
||||
export interface MeetParticipantRoleUpdatedPayload {
|
||||
roomId: string;
|
||||
participantName: string;
|
||||
newRole: ParticipantRole;
|
||||
timestamp: number;
|
||||
secret: string;
|
||||
}
|
||||
|
||||
export type MeetSignalPayload =
|
||||
| MeetRoomPreferencesUpdatedPayload
|
||||
| MeetParticipantRoleUpdatedPayload;
|
||||
|
||||
@ -34,3 +34,9 @@ export const enum ParticipantRole {
|
||||
MODERATOR = 'moderator',
|
||||
SPEAKER = 'speaker'
|
||||
}
|
||||
|
||||
export interface MeetTokenMetadata {
|
||||
livekitUrl: string;
|
||||
roles: { role: ParticipantRole; permissions: OpenViduMeetPermissions }[]; // Array of roles with their permissions
|
||||
selectedRole: ParticipantRole;
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user