/// <summary> /// Sends a notification to the user's device /// </summary> /// <param name="deviceSettings">device settings</param> /// <param name="message">Message Information</param> public bool PushNotificationToDevice(vUserDeviceSetting deviceSettings, UTD.Tricorder.Common.NotificationSystem.MobileNotificationMessage message) { if (deviceSettings.PushNotificationIsActive && string.IsNullOrEmpty(deviceSettings.PushNotificationToken) == false) { //MobileNotificationMessage message = new MobileNotificationMessage(); //message.MessageBody = notificationContent; message.DevicePushToken = deviceSettings.PushNotificationToken; //message.Sound = "ring.caf"; if (deviceSettings.MobilePushServerID == (byte)EntityEnums.MobilePushServerEnum.Google_GCM) { MobilePushMessageNotificationSender.SendGoogleNotification(message); return(true); } if (deviceSettings.MobilePushServerID == (byte)EntityEnums.MobilePushServerEnum.Apple_APNS) { MobilePushMessageNotificationSender.SendAppleNotification(message); return(true); } else { throw new NotImplementedException(); } //Other push servers are not supported yet! } return(false); }
protected void Application_Start() { //this.BeginRequest += WebApiApplication_BeginRequest; this.Error += Application_Error; PublishDatabase(); AreaRegistration.RegisterAllAreas(); GlobalConfiguration.Configure(WebApiConfig.Register); FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters); RouteConfig.RegisterRoutes(RouteTable.Routes); BundleConfig.RegisterBundles(BundleTable.Bundles); var appSettings = FWUtils.ConfigUtils.GetAppSettings(); //Register our customer view engine to customize all views based on tenants ViewEngines.Engines.Clear(); ViewEngines.Engines.Add(new FWViewEngine()); //this.BeginRequest += WebApiApplication_BeginRequest; // overriding Api selector since it has a bug that doesn't work with underscore // for urls like Doctor_Patient-MyDoctors GlobalConfiguration.Configuration.Services.Replace(typeof(System.Web.Http.Dispatcher.IHttpControllerSelector), new ApiControllerSelector(GlobalConfiguration.Configuration)); i18nLib.InitAlli18nTexts(); MobilePushMessageNotificationSender.InitGoogleCloudMessagingService(); notificationAgent.StartAgent(); }