Ejemplo n.º 1
0
        private static void HandleNotificationOpened(OSNotificationOpenedResult result)
        {
            try
            {
                OSNotificationPayload       payload        = result.notification.payload;
                Dictionary <string, object> additionalData = payload.additionalData;
                string message  = payload.body;
                string actionId = result.action.actionID;
                Console.WriteLine(message);
                if (additionalData != null)
                {
                    foreach (var item in additionalData)
                    {
                        if (item.Key == "user_id")
                        {
                            Userid = item.Value.ToString();
                        }
                        if (item.Key == "notification_info")
                        {
                            NotificationInfo = JsonConvert.DeserializeObject <OneSignalObject.NotificationInfoObject>(item.Value.ToString());
                        }
                        if (item.Key == "video")
                        {
                            VideoData = JsonConvert.DeserializeObject <OneSignalObject.VideoObject>(item.Value.ToString());
                        }
                        if (item.Key == "url")
                        {
                            string url = item.Value.ToString();
                            Console.WriteLine(url);
                        }
                    }

                    //to : do
                    //go to activity or fragment depending on data

                    Intent intent = new Intent(Application.Context, typeof(TabbedMainActivity));
                    intent.SetFlags(ActivityFlags.NewTask | ActivityFlags.ClearTask);
                    intent.AddFlags(ActivityFlags.SingleTop);
                    intent.SetAction(Intent.ActionView);
                    intent.PutExtra("TypeNotification", NotificationInfo.TypeText);
                    Application.Context.StartActivity(intent);

                    if (additionalData.ContainsKey("discount"))
                    {
                        // Take user to your store..
                    }
                }
                if (actionId != null)
                {
                    // actionSelected equals the id on the button the user pressed.
                    // actionSelected will equal "__DEFAULT__" when the notification itself was tapped when buttons were present.
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex);
            }
        }
Ejemplo n.º 2
0
        private static void HandleNotificationReceived(OSNotification notification)
        {
            try {
                OSNotificationPayload       payload        = notification.payload;
                Dictionary <string, object> additionalData = payload.additionalData;

                string message = payload.body;
            } catch (Exception ex) {
                var exception = ex.ToString();
            }
        }
        private static void HandleNotificationOpened(OSNotificationOpenedResult result)
        {
            try
            {
                OSNotificationPayload       payload        = result.notification.payload;
                Dictionary <string, object> additionalData = payload.additionalData;
                string message  = payload.body;
                string actionId = result.action.actionID;

                if (additionalData != null)
                {
                    foreach (var item in additionalData)
                    {
                        switch (item.Key)
                        {
                        case "type":
                            Type = item.Value.ToString();
                            break;

                        case "userdata":
                            UserData = JsonConvert.DeserializeObject <UserInfoObject>(item.Value.ToString());
                            break;
                        }
                    }

                    //to : do
                    //go to activity or fragment depending on data

                    Intent intent = new Intent(Application.Context, typeof(HomeActivity));
                    intent.SetFlags(ActivityFlags.NewTask | ActivityFlags.ClearTask);
                    intent.AddFlags(ActivityFlags.SingleTop);
                    intent.SetAction(Intent.ActionView);
                    intent.PutExtra("TypeNotification", Type);
                    Application.Context.StartActivity(intent);

                    if (additionalData.ContainsKey("discount"))
                    {
                        // Take user to your store..
                    }
                }

                if (actionId != null)
                {
                    // actionSelected equals the id on the button the user pressed.
                    // actionSelected will equal "__DEFAULT__" when the notification itself was tapped when buttons were present.
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex);
            }
        }
 private static void HandleNotificationReceived(OSNotification notification)
 {
     try
     {
         OSNotificationPayload       payload        = notification.payload;
         Dictionary <string, object> additionalData = payload.additionalData;
         string message = payload.body;
     }
     catch (Exception ex)
     {
         Toast.MakeText(Application.Context, ex.ToString(), ToastLength.Long).Show(); //Allen
         Console.WriteLine(ex);
     }
 }
 private static void HandleNotificationReceived(OSNotification notification)
 {
     try
     {
         OSNotificationPayload       payload        = notification.payload;
         Dictionary <string, object> additionalData = payload.additionalData;
         Console.WriteLine(additionalData);
         //string message = payload.body;
     }
     catch (Exception e)
     {
         Console.WriteLine(e);
     }
 }
        private static void HandleNotificationOpened(OSNotificationOpenedResult result)
        {
            try
            {
                OSNotificationPayload       payload        = result.notification.payload;
                Dictionary <string, object> additionalData = payload.additionalData;
                // string message = payload.body;
                string actionId = result.action.actionID;

                if (additionalData != null)
                {
                    foreach (var item in additionalData.Where(item => item.Key == "user_id"))
                    {
                        Userid = item.Value.ToString();
                    }

                    //Intent intent = new Intent(Application.Context.PackageName + ".FOO");
                    Intent intent = new Intent(Application.Context, typeof(TabbedMainActivity));
                    intent.SetFlags(ActivityFlags.NewTask | ActivityFlags.ClearTask);
                    intent.AddFlags(ActivityFlags.SingleTop);
                    intent.SetAction(Intent.ActionView);
                    intent.PutExtra("UserID", Userid);
                    intent.PutExtra("Notifier", "Notifier");
                    Application.Context.StartActivity(intent);

                    if (additionalData.ContainsKey("discount"))
                    {
                        // Take user to your store..
                    }
                }

                if (actionId != null)
                {
                    // actionSelected equals the id on the button the user pressed.
                    // actionSelected will equal "__DEFAULT__" when the notification itself was tapped when buttons were present.
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex);
            }
        }
        private static void HandleNotificationReceived(OSNotification notification)
        {
            try
            {
                OSNotificationPayload payload = notification.payload;
                //Dictionary<string, object> additionalData = payload.additionalData;

                string message = payload.body;
                if (message.Contains("call") || message.Contains("Calling"))
                {
                    notification.shown       = false;
                    notification.displayType = OSNotification.DisplayType.None;
                    OneSignal.Current.ClearAndroidOneSignalNotifications();
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex);
            }
        }
        private static void HandleNotificationReceived(OSNotification notification)
        {
            try
            {
                OSNotificationPayload payload = notification.payload;
                //Dictionary<string, object> additionalData = payload.additionalData;

                string message = payload.body;
                if (message.Contains("call") || message.Contains("Calling"))
                {
                    notification.shown       = false;
                    notification.displayType = OSNotification.DisplayType.None;
                    Com.OneSignal.OneSignal.Current.ClearAndroidOneSignalNotifications();
                }
            }
            catch (Exception ex)
            {
                Toast.MakeText(Application.Context, ex.ToString(), ToastLength.Long)?.Show(); //Allen
                Methods.DisplayReportResultTrack(ex);
            }
        }
Ejemplo n.º 9
0
        private static void HandleNotificationReceived(OSNotification notification)
        {
            try
            {
                OSNotificationPayload       payload        = notification.payload;
                Dictionary <string, object> additionalData = payload.additionalData;



                //if (Settings.Enable_Audio_Video_Call)
                //{
                //    if (additionalData.ContainsKey("room_name") && Settings.Use_Agora_Library)
                //    {

                //        string room_name = additionalData["room_name"].ToString();
                //        string Call_type = additionalData["call_type"].ToString();
                //        string Call_id = additionalData["call_id"].ToString();
                //        string From_id = additionalData["from_id"].ToString();
                //        string to_id = additionalData["to_id"].ToString();



                //        Toast.MakeText(Application.Context, "GotNotification", ToastLength.Long).Show();
                //        var datauser = Classes.UserList.FirstOrDefault(a => a.user_id == From_id);
                //        if (datauser != null)
                //        {

                //            string AvatarSplit = datauser.profile_picture.Split('/').Last();
                //            var GetImg = IMethods.MultiMedia.GetMediaFrom_Disk("Images", AvatarSplit);

                //            if (datauser.profile_picture != null)
                //            {
                //                if (GetImg == "File Dont Exists")
                //                    IMethods.MultiMedia.DownloadMediaTo_DiskAsync("Images", datauser.profile_picture);
                //                GetImg = datauser.profile_picture;
                //            }

                //            Intent intent = new Intent(Application.Context, typeof(AgoraAudioCallActivity));

                //            if (Call_type == "audio")
                //            {
                //                intent.PutExtra("UserID", From_id);
                //                intent.PutExtra("avatar", GetImg);
                //                intent.PutExtra("name", datauser.profile_picture);
                //                intent.PutExtra("CallID", Call_id);
                //                intent.PutExtra("room_name", room_name);
                //                intent.PutExtra("type", "Agora_audio_call_recieve");
                //                NotificationManagerClass.StartinCommingCall(intent, GetImg, "Voice Call", datauser.name + " is calling you", notification.androidNotificationId); //Allen
                //            }
                //            else
                //            {
                //                intent = new Intent(Application.Context, typeof(AgoraVideoCallActivity));
                //                intent.PutExtra("UserID", From_id);
                //                intent.PutExtra("avatar", GetImg);
                //                intent.PutExtra("name", datauser.profile_picture);
                //                intent.PutExtra("CallID", Call_id);
                //                intent.PutExtra("room_name", room_name);
                //                intent.PutExtra("type", "Agora_video_call_recieve");
                //                NotificationManagerClass.StartinCommingCall(intent, GetImg, "Video Call", datauser.name + " is calling you", notification.androidNotificationId); //Allen

                //            }
                //        }
                //        else
                //        {

                //        }



                //    }
                //    else if (additionalData.ContainsKey("access_token") && Settings.Use_Twilio_Library)
                //    {

                //    }
                //}

                string message = payload.body;
            }
            catch (Exception ex)
            {
                Toast.MakeText(Application.Context, ex.ToString(), ToastLength.Long).Show(); //Allen
                Console.WriteLine(ex);
            }
        }
        private static void HandleNotificationReceived(OSNotification notification)
        {
            try
            {
                OSNotificationPayload       payload        = notification.payload;
                Dictionary <string, object> additionalData = payload.additionalData;
                if (additionalData?.Count > 0)
                {
                    string chatType = "", IdChat = "";
                    foreach (var item in additionalData)
                    {
                        switch (item.Key)
                        {
                        case "post_id":
                            PostId = item.Value.ToString();
                            break;

                        case "user_id":
                            UserId   = item.Value.ToString();
                            chatType = "user";
                            IdChat   = UserId;
                            break;

                        case "page_id":
                            PageId   = item.Value.ToString();
                            chatType = "page";
                            IdChat   = PageId + UserId;
                            break;

                        case "group_id":
                            GroupId  = item.Value.ToString();
                            chatType = "group";
                            IdChat   = GroupId;
                            break;

                        case "event_id":
                            EventId = item.Value.ToString();
                            break;

                        case "type":
                            Type = item.Value.ToString();
                            break;
                        }
                    }

                    if (!string.IsNullOrEmpty(IdChat))
                    {
                        if (ListUtils.MuteList.Count == 0)
                        {
                            var sqLiteDatabase = new SqLiteDatabase();
                            ListUtils.MuteList = sqLiteDatabase.Get_MuteList();
                        }

                        var check = ListUtils.MuteList.FirstOrDefault(a => a.IdChat == IdChat && a.ChatType == chatType);
                        if (check != null)
                        {
                            notification.shown       = false;
                            notification.displayType = OSNotification.DisplayType.None;
                            Com.OneSignal.OneSignal.Current.ClearAndroidOneSignalNotifications();
                        }
                    }
                }

                string message = payload.body;
                if (message.Contains("call") || message.Contains("Calling"))
                {
                    notification.shown       = false;
                    notification.displayType = OSNotification.DisplayType.None;
                    Com.OneSignal.OneSignal.Current.ClearAndroidOneSignalNotifications();
                }
            }
            catch (Exception ex)
            {
                Toast.MakeText(Application.Context, ex.ToString(), ToastLength.Long)?.Show(); //Allen
                Methods.DisplayReportResultTrack(ex);
            }
        }
        private static void HandleNotificationOpened(OSNotificationOpenedResult result)
        {
            try
            {
                OSNotificationPayload       payload        = result.notification.payload;
                Dictionary <string, object> additionalData = payload.additionalData;
                //string message = payload.body;
                string actionId = result.action.actionID;

                if (additionalData?.Count > 0)
                {
                    foreach (var item in additionalData)
                    {
                        switch (item.Key)
                        {
                        case "post_id":
                            PostId = item.Value.ToString();
                            break;

                        case "user_id":
                            UserId = item.Value.ToString();
                            break;

                        case "page_id":
                            PageId = item.Value.ToString();
                            break;

                        case "group_id":
                            GroupId = item.Value.ToString();
                            break;

                        case "event_id":
                            EventId = item.Value.ToString();
                            break;

                        case "type":
                            Type = item.Value.ToString();
                            break;
                        }
                    }

                    Intent intent = new Intent(Application.Context, typeof(TabbedMainActivity));
                    intent.SetFlags(ActivityFlags.NewTask | ActivityFlags.ClearTask);
                    intent.AddFlags(ActivityFlags.SingleTop);
                    intent.SetAction(Intent.ActionView);
                    intent.PutExtra("userId", UserId);
                    intent.PutExtra("PostId", PostId);
                    intent.PutExtra("PageId", PageId);
                    intent.PutExtra("GroupId", GroupId);
                    intent.PutExtra("EventId", EventId);
                    intent.PutExtra("type", Type);
                    intent.PutExtra("Notifier", "Chat");
                    Application.Context.StartActivity(intent);

                    if (additionalData.ContainsKey("discount"))
                    {
                        // Take user to your store..
                    }
                }
                if (actionId != null)
                {
                    // actionSelected equals the id on the button the user pressed.
                    // actionSelected will equal "__DEFAULT__" when the notification itself was tapped when buttons were present.
                }
            }
            catch (Exception ex)
            {
                Methods.DisplayReportResultTrack(ex);
            }
        }