in src/meetingsession/MeetingSessionConfiguration.ts [172:233]
constructor(createMeetingResponse?: any, createAttendeeResponse?: any) { // eslint-disable-line
if (createMeetingResponse) {
createMeetingResponse = toLowerCasePropertyNames(createMeetingResponse);
if (createMeetingResponse.meeting) {
createMeetingResponse = createMeetingResponse.meeting;
}
this.meetingId = createMeetingResponse.meetingid;
this.externalMeetingId = createMeetingResponse.externalmeetingid;
this.urls = new MeetingSessionURLs();
this.urls.audioHostURL = createMeetingResponse.mediaplacement.audiohosturl;
this.urls.signalingURL = createMeetingResponse.mediaplacement.signalingurl;
this.urls.turnControlURL = createMeetingResponse.mediaplacement.turncontrolurl;
if (createMeetingResponse.mediaplacement.eventingestionurl) {
this.urls.eventIngestionURL = createMeetingResponse.mediaplacement.eventingestionurl;
}
const parseVideoResolution = (
resolution: string,
defaultValue: VideoQualitySettings
): VideoQualitySettings => {
switch (resolution) {
case 'None':
return VideoQualitySettings.VideoDisabled;
case 'HD':
return VideoQualitySettings.VideoResolutionHD;
case 'FHD':
return VideoQualitySettings.VideoResolutionFHD;
case 'UHD':
return VideoQualitySettings.VideoResolutionUHD;
default:
return defaultValue;
}
};
if (
createMeetingResponse.meetingfeatures?.video !== undefined ||
createMeetingResponse.meetingfeatures?.content !== undefined
) {
const videoMaxResolution =
createMeetingResponse.meetingfeatures.video === undefined
? 'HD'
: createMeetingResponse.meetingfeatures.video.maxresolution;
const contentMaxResolution =
createMeetingResponse.meetingfeatures.content === undefined
? 'FHD'
: createMeetingResponse.meetingfeatures.content.maxresolution;
this.meetingFeatures = new MeetingFeatures(
parseVideoResolution(videoMaxResolution, VideoQualitySettings.VideoResolutionHD),
parseVideoResolution(contentMaxResolution, VideoQualitySettings.VideoResolutionFHD)
);
}
}
if (createAttendeeResponse) {
createAttendeeResponse = toLowerCasePropertyNames(createAttendeeResponse);
if (createAttendeeResponse.attendee) {
createAttendeeResponse = createAttendeeResponse.attendee;
}
this.credentials = new MeetingSessionCredentials();
this.credentials.attendeeId = createAttendeeResponse.attendeeid;
this.credentials.externalUserId = createAttendeeResponse.externaluserid;
this.credentials.joinToken = createAttendeeResponse.jointoken;
}
}