-
Notifications
You must be signed in to change notification settings - Fork 180
/
meetingRoom.ts
114 lines (96 loc) · 2.28 KB
/
meetingRoom.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
import { AvailableFeatures } from './availableFeatures';
import { RecordingOptions } from './recordingOptions';
import {
MicrophoneSate,
MeetingType,
JoinType,
RoomLanguage,
} from '../enums';
import { RoomCallbackURLS } from './roomCallbackURLS';
/**
* Represents a meeting room with associated properties.
*/
export type MeetingRoom = {
/**
* The unique identifier for the meeting room.
*/
id?: string;
/**
* The display name or label for the meeting room.
*/
displayName: string;
/**
* Additional metadata or information about the meeting room.
*/
metadata?: string;
/**
* The type of meeting, which can be instant or long term.
*/
type: MeetingType;
/**
* Options related to recording meetings in the room.
*/
recordingOptions?: RecordingOptions;
/**
* The meeting PIN number or code.
*/
meetingCode?: string;
/**
* Indicates whether the meeting room is available for use.
*/
isAvailable?: boolean;
/**
* The unique identifier for the theme associated with the meeting room.
*/
themeId?: string;
/**
* The date and time when the meeting room was created.
*/
createdAt?: string;
/**
* The date and time when the meeting room will expire.
*/
expiresAt?: string;
/**
* Indicates whether the room should expire after use (only relevant for long-term rooms).
*/
expireAfterUse?: boolean;
/**
* The level of approval needed to join the meeting in the room.
*/
joinApprovalLevel?: JoinType;
/**
* Options for participants when they initially join the room.
*/
initialJoinOptions?: {
/**
* The default microphone state for users in the pre-join screen of this room.
*/
microphoneState?: MicrophoneSate;
};
/**
* Callback URLs for various room-related events.
*/
callbackUrls?: RoomCallbackURLS;
/**
* Available features for the meeting room's user interface.
*/
availableFeatures: AvailableFeatures;
/**
* User interface settings for the meeting room.
*/
uiSettings?: {
/**
* The desired language of the UI.
*/
language?: RoomLanguage;
};
/**
* The URL for joining the meeting room as a host.
*/
hostUrl?: string;
/**
* The URL for joining the meeting room as a guest.
*/
guestUrl?: string;
};