public void PollForCustomerDoesNotAppearOnEvent()
        {
            try
            {
                var todayDate = DateTime.Now.Date;
                var eventList = _eventRepository.GetEventsToSendSms(todayDate, todayDate);
                if (eventList.IsNullOrEmpty())
                {
                    _logger.Info("No Show Customer Notification:No event found for Date " + todayDate.ToShortDateString());
                    return;
                }

                foreach (var eventData in eventList)
                {
                    var clientTime = _smsHelper.ConvertLocalTimeToCompleteClientTime(DateTime.Now, eventData.TimeZone);

                    _logger.Info(string.Format("No Show Customer Notification:Time at timezone {0} is {1} on Event Id: {2}", eventData.TimeZone, clientTime, eventData.Id));

                    var eventCustomers = _eventCustomerRepository.GetEventCustomersDoesNotAppearOnEvent(eventData.Id, clientTime, _minutesAfterAppointmentTime, _noShowCustomerScheduleInterval);

                    if (eventCustomers.IsNullOrEmpty())
                    {
                        _logger.Info("No Show Customer Notification:No Customer Appointment found for time " + clientTime);
                        continue;
                    }

                    var appointmentIds = eventCustomers.Where(x => x.AppointmentId.HasValue).Select(x => x.AppointmentId.Value).ToArray();
                    var appointments   = _appointmentRepository.GetByIds(appointmentIds);

                    foreach (var eventCustomer in eventCustomers)
                    {
                        var appointment = appointments.First(a => a.Id == eventCustomer.AppointmentId.Value);
                        var noShowCustomerNotificationModel = _emailNotificationModelsFactory.GetNoShowCustomerNotificationViewModel(eventCustomer, appointment);

                        _notifier.NotifySubscribersViaEmail(NotificationTypeAlias.NoShowCustomer, EmailTemplateAlias.NoShowCustomer, noShowCustomerNotificationModel, 0, 1, "System: Customer not appeared at event - No Show Customer");

                        _logger.Info("No Show Customer Notification:Mail Send for Event Id " + eventCustomer.EventId + " Customer Id:  " + eventCustomer.CustomerId + " For Appointment Start Time is: " + appointment.StartTime);
                    }
                }
            }
            catch (Exception exception)
            {
                _logger.Error("No Show Customer Notification:Some Error Occurred Message: " + exception.Message + "\n Stack Trace: " + exception.StackTrace);
            }
        }