public void NotifyEventUpdateLocation(EventRequestSlim eventRequest, EventSlim evt)
 {
     _taskQueue.Enqueue(new
     {
         RegistrationIds = evt.UserList.Where(user =>
                                              !_isRequester(user.UserId, evt.InitiatorId.ToString()) &&
                                              _isValidGCMId(user.GCMClientId)).Select(user => user.GCMClientId),
         NotificationData = PushMessageComposer.GetMessageForUpdateLocation(evt, eventRequest, "EventUpdateLocation")
     });
 }
 //Used for event invite, event end
 public static PushNotification GetMessageForLeaveEvent(EventSlim evt, EventRequestSlim eventRequest)
 {
     return(new PushNotification()
     {
         EventId = evt.EventId.ToString(),
         EventName = evt.Name,
         Type = "EventLeave",
         EventResponderId = eventRequest.RequestorId.ToString(),
         EventResponderName = evt.UserList.Where(x => x.UserId.ToString().ToLower() == eventRequest.RequestorId.ToString().ToLower()).ToList()[0].ProfileName.ToString()
     });
 }
 //Used for update event location
 public static PushNotification GetMessageForUpdateLocation(EventSlim evt, EventRequestSlim eventRequest, string notificationType)
 {
     return(new PushNotification()
     {
         EventId = evt.EventId.ToString(),
         EventName = evt.Name,
         Type = notificationType,
         InitiatorId = evt.InitiatorId.ToString(),
         InitiatorName = evt.InitiatorName,
         DestinationName = eventRequest.DestinationName
     });
 }
 //Used for event acceptance
 public static PushNotification GetMessage(EventRequestSlim eventRequest, EventSlim evt, string notificationType)
 {
     return(new PushNotification()
     {
         EventId = evt.EventId.ToString(),
         EventName = evt.Name,
         Type = notificationType, //"EventResponse",
         InitiatorId = evt.InitiatorId.ToString(),
         EventResponderId = eventRequest.RequestorId.ToString(),
         EventResponderName = evt.UserList.First(x => x.UserId.ToString().ToLower().Equals(eventRequest.RequestorId.ToLower())).ProfileName,
         EventAcceptanceStateId = eventRequest.EventAcceptanceStateId,
         TrackingAccepted = eventRequest.TrackingAccepted
     });
 }