/// <summary> /// Creates new meeting for user with specified email. /// </summary> /// <param name="customerId">Id of user's customer.</param> /// <param name="user">User which initiated meeting.</param> /// <param name="patient">A patient with whom a meeting is created.</param> /// <returns>Instance of created meeting.</returns> public async Task <MeetingDto> CreateMeeting(int customerId, User user, PatientDto patient) { if (user == null) { throw new ArgumentNullException("user"); } var zoomUser = await this.GetOrCreateZoomUser(customerId, user); if (zoomUser.Error != null) { return(new MeetingDto { Error = zoomUser.Error }); } var createMeetingRequest = new CreateMeetingRequestDto { HostId = zoomUser.Id, Topic = string.Join(" ", patient.FirstName, patient.LastName), Type = MeetingType.Instant }; return(await this.zoomDataProvider.CreateMeeting(createMeetingRequest)); }
/// <summary> /// Creates new meeting in zoom. /// </summary> /// <param name="requestDto"></param> /// <returns></returns> public async Task <MeetingDto> CreateMeeting(CreateMeetingRequestDto requestDto) { InitRequestDefaultData(requestDto); return(await this.apiClient.SendRequestAsync <MeetingDto>("meeting/create", requestDto, Method.POST)); }