public string GetHostId(LiveOnlineTransactionDetailResponseModel liveOnlineTransactionDetailResponseModel, string bearerToken) { try { //var hostUsers = _eventHostMappingRepository.GetAllByEventId(liveOnlineTransactionDetailResponseModel.EventId).FirstOrDefault(); //ZoomCreateUserModel zoomCreateUserModel = new ZoomCreateUserModel(); //zoomCreateUserModel.action = "custCreate"; //UserInfo userInfo = new UserInfo(); //userInfo.email = hostUsers.Email; //userInfo.first_name = hostUsers.FirstName; //userInfo.last_name = hostUsers.LastName; //userInfo.type = 1; //zoomCreateUserModel.user_info = userInfo; //var createUser = Mapper<ZoomCreateUserResponseModel>.MapFromJson(_zoomAPI.PostAPIDetails("/users", zoomCreateUserModel, bearerToken).Result); //if (createUser != null && !string.IsNullOrEmpty(createUser.id)) //{ // return createUser.id; //} //else //{ // return "eh8X6_qoQlCfo4V1MhXbmA"; //} return("eh8X6_qoQlCfo4V1MhXbmA"); } catch (Exception e) { return("eh8X6_qoQlCfo4V1MhXbmA"); } }
private bool Create(LiveOnlineTransactionDetailResponseModel liveOnlineTransactionDetailModel) { ZoomCreateMeetingModel zoomCreateMeetingModel = new ZoomCreateMeetingModel(); Contracts.Models.Zoom.Settings settings = new Contracts.Models.Zoom.Settings(); var bearerToken = GenerateToken(); var hostUserId = GetHostId(liveOnlineTransactionDetailModel, bearerToken); zoomCreateMeetingModel.topic = liveOnlineTransactionDetailModel.Name; zoomCreateMeetingModel.start_time = liveOnlineTransactionDetailModel.StartDateTime.ToString(); if (liveOnlineTransactionDetailModel.Channel == Channels.Feel) { zoomCreateMeetingModel.duration = GetDuration(liveOnlineTransactionDetailModel.StartTime, liveOnlineTransactionDetailModel.EndTime); // In minutes } else if (liveOnlineTransactionDetailModel.Channel == Channels.Website) { TimeSpan span = (liveOnlineTransactionDetailModel.EndDateTime - liveOnlineTransactionDetailModel.StartDateTime); zoomCreateMeetingModel.duration = Convert.ToInt32(span.Hours); } zoomCreateMeetingModel.timezone = "UTC"; zoomCreateMeetingModel.agenda = liveOnlineTransactionDetailModel.Description; settings.mute_upon_entry = true; settings.registrants_confirmation_email = false; settings.registrants_email_notification = false; settings.approval_type = 2; zoomCreateMeetingModel.settings = settings; string meetingEndpoint = "/users/" + hostUserId + "/meetings"; var createMeetingResponse = Mapper <ZoomCreateMeetingResponseModel> .MapFromJson(_zoomAPI.PostAPIDetails(meetingEndpoint, zoomCreateMeetingModel, bearerToken).Result); if (createMeetingResponse != null) { _zoomMeetingRepository.Save(new Contracts.DataModels.ZoomMeeting { MeetingNumber = createMeetingResponse.id, EventId = liveOnlineTransactionDetailModel.EventId, HostUserId = hostUserId, MeetingUuid = createMeetingResponse.uuid, DurationMinutes = createMeetingResponse.duration, IsEnabled = true, ModifiedBy = liveOnlineTransactionDetailModel.CreatorAltId }); } else { return(false); } return(true); }
public bool SaveTransactedUser(long userId, LiveOnlineTransactionDetailResponseModel liveOnlineTransactionDetailModel, long transactionId) { _zoomUserRepository.Save(new Contracts.DataModels.ZoomUser { AltId = System.Guid.NewGuid(), RoleId = 22, //check for prod attendee role Id IsActive = false, IsEnabled = true, UserId = userId, TransactionId = transactionId, EventId = liveOnlineTransactionDetailModel.EventId, ModifiedBy = liveOnlineTransactionDetailModel.CreatorAltId }); return(true); }
private bool InsertUsers(LiveOnlineTransactionDetailResponseModel liveOnlineTransactionDetailModel) { var eventHostUsers = _eventHostMappingRepository.GetAllByEventId(liveOnlineTransactionDetailModel.EventId); foreach (var currentHost in eventHostUsers) { _zoomUserRepository.Save(new Contracts.DataModels.ZoomUser { AltId = System.Guid.NewGuid(), RoleId = 21, //check for prod host role Id IsActive = false, IsEnabled = true, EventHostUserId = currentHost.Id, EventId = liveOnlineTransactionDetailModel.EventId, ModifiedBy = liveOnlineTransactionDetailModel.CreatorAltId }); } return(true); }
public FeelOrderConfirmationQueryResult Handle(FeelOrderConfirmationQuery query) { var transaction = _transactionRepository.GetByAltId(query.TransactionAltId); if (transaction == null) { return(new FeelOrderConfirmationQueryResult { }); } var orderConfirmation = _orderConfirmationProvider.Get(transaction.Id, query.confirmationFrmMyOrders, query.Channel); // Check if transaction is Tiqets One var tiqetsTransactions = _tiqetsTransactionRepository.GetByTransactionId(transaction.Id); //for live online events var IsLiveOnline = false; var zoomUserModel = new ZoomUser(); var liveOnlineDetailModelData = new LiveOnlineTransactionDetailResponseModel(); List <ZoomHostUserModel> hostUsersModel = new List <ZoomHostUserModel>(); var liveOnlineDetailModel = _transactionRepository.GetFeelOnlineDetails(transaction.Id); if (liveOnlineDetailModel.Any() && liveOnlineDetailModel.Count() == 1 && (liveOnlineDetailModel.Select(s => s.TicketCategoryId).Contains(19452) || liveOnlineDetailModel.Select(s => s.TicketCategoryId).Contains(12259))) { liveOnlineDetailModelData = liveOnlineDetailModel.FirstOrDefault(); } else { liveOnlineDetailModelData = liveOnlineDetailModel.Where(s => s.TransactionType == Contracts.Enums.TransactionType.LiveOnline).FirstOrDefault(); } if (liveOnlineDetailModelData != null && liveOnlineDetailModelData.EventcategoryId != 0) { if (orderConfirmation.orderConfirmationSubContainer.Any(s => s.Event.MasterEventTypeId == Contracts.Enums.MasterEventType.Online)) { IsLiveOnline = true; zoomUserModel = _zoomUserRepository.GetByTransactionId(transaction.Id); if (zoomUserModel != null) { var transactionCount = _transactionRepository.GetTransactionCountByEvent(liveOnlineDetailModelData.EventId); if (transactionCount == 1) { var eventHostUsersModel = _eventHostMappingRepository.GetAllByEventId(liveOnlineDetailModelData.EventId); var zoomHostUserModel = _zoomUserRepository.GetByHostUserIds(eventHostUsersModel.Select(s => s.Id)); foreach (var currentZoomUser in zoomHostUserModel) { var currentHostUsersModel = new ZoomHostUserModel(); var currentEventHost = eventHostUsersModel.Where(s => s.Id == currentZoomUser.EventHostUserId).FirstOrDefault(); currentHostUsersModel.altId = currentZoomUser.AltId; currentHostUsersModel.email = currentEventHost.Email; hostUsersModel.Add(currentHostUsersModel); } } } } } return(new FeelOrderConfirmationQueryResult { Transaction = orderConfirmation.Transaction, TransactionPaymentDetail = orderConfirmation.TransactionPaymentDetail, UserCardDetail = orderConfirmation.UserCardDetail, CurrencyType = orderConfirmation.CurrencyType, PaymentOption = orderConfirmation.PaymentOption, cardTypes = orderConfirmation.cardTypes, orderConfirmationSubContainer = orderConfirmation.orderConfirmationSubContainer, IsTiqets = tiqetsTransactions != null ? true : false, IsHoho = orderConfirmation.IsHoho, ZoomUser = zoomUserModel, liveOnlineDetailModel = liveOnlineDetailModelData, hostUsersModel = hostUsersModel, IsLiveOnline = IsLiveOnline }); }