public bool Send(WindowsPhoneApiNotificationPayLoad payLoad) { HookEvents(PushBroker); try { PushBroker.RegisterService <WindowsPhoneNotification>(new WindowsPhonePushService()); var notification = new WindowsPhoneToastNotification() .ForEndpointUri(new Uri(payLoad.Token)) .ForOSVersion(WindowsPhoneDeviceOSVersion.MangoSevenPointFive) .WithBatchingInterval(BatchingInterval.Immediate) .WithNavigatePath(payLoad.NavigationPath) .WithText1(payLoad.Message) .WithText2(payLoad.TextMessage2); PushBroker.QueueNotification(notification); } finally { StopBroker(); } return(true); }
private ApiCallResult ProcessWindowsPhoneNotification(WindowsPhoneApiNotificationPayLoad payLoad) { var result = new PushNotificationApiCallResult(false, "Notificaiton failed.", payLoad.DeviceUuid, payLoad.Message); var isRequestValid = _SecurityService.ValidateRequestKey(payLoad.AuthenticationKey); if (!isRequestValid) { result.Message = "Invalid Authentication Key"; } else if (_WindowsPhoneService.Send(payLoad)) { result.IsSuccessful = _WindowsPhoneService.Result.IsSuccessful; result.Message = _WindowsPhoneService.Result.Message; } return(result); }
public ApiCallResult WindowsPhone(WindowsPhoneApiNotificationPayLoad payLoad) { return(ProcessWindowsPhoneNotification(payLoad)); }