Exemplo n.º 1
0
        public override System.Threading.Tasks.Task OnDisconnected(bool stopCalled)
        {
            MessangerManager messangerManager = new MessangerManager();
            Guid             bosGuid          = Guid.Empty;

            Guid kullanici_id = messangerManager.fakeOfflineOl(Context.ConnectionId);

            if (kullanici_id != bosGuid)
            {
                ControllerLoglamaManager controllerLoglamaManager = new ControllerLoglamaManager();
                ControllerLoglama        log = controllerLoglamaManager.LoglamaGetir(kullanici_id);

                Thread.Sleep(8000);

                MessangerManager messangerManager2 = new MessangerManager();
                OnlineUser       kullanici         = messangerManager2.OnlineMi(kullanici_id);

                VotedressUserManager votedressUserManager = new VotedressUserManager();

                if (kullanici != null && kullanici.Disconnected == "reflesh")
                {
                    if ((log.Burdan == "Gardrop/Magaza" && log.Buraya == "Gardrop/Magaza") || (log.Burdan == "Gardrop/UrunDetayliIncele" && log.Buraya == "Gardrop/UrunDetayliIncele"))
                    {
                        //Demekki magazada reflesh olmuş birşey yapma
                    }
                    else if ((log.Burdan == "Gardrop/Magaza" && log.Buraya != "Gardrop/UrunDetayliIncele") || (log.Burdan == "Gardrop/UrunDetayliIncele" && log.Buraya != "Gardrop/Magaza"))//magazadan başka bir yere gidilmiş demekki magazadan çıkılmıs
                    {
                        Groups.Remove(Context.ConnectionId, "Gardrop");
                        votedressUserManager.MagazadakilerinSayisiniAzalt(log.parameter);
                        Clients.Group("Gardrop").BiriMagazadanCikti(log.parameter);
                    }
                }
                else
                {
                    OnlineUser        offline_olundumu  = messangerManager.OfflineOl(kullanici_id);
                    List <OnlineUser> online_arkadaslar = messangerManager.OnlineArkadaslar(kullanici_id);

                    for (int i = 0; i < online_arkadaslar.Count; i++)
                    {
                        Clients.Client(online_arkadaslar[i].ConnectionId).BirisiOfflineOldu(kullanici_id);
                    }

                    if (log.Buraya == "Gardrop/Magaza" || log.Buraya == "Gardrop/UrunDetayliIncele")
                    {
                        votedressUserManager.MagazadakilerinSayisiniAzalt(log.parameter);

                        Groups.Remove(Context.ConnectionId, "Gardrop");
                        Clients.OthersInGroup("Gardrop").BiriMagazadanCikti(log.parameter);
                    }
                }
            }
            return(base.OnDisconnected(stopCalled));
        }
Exemplo n.º 2
0
        public void ozel_sendMessage(Guid gonderen_id, Guid alan_id, string mesaj)
        {
            MessangerManager messangerManager = new MessangerManager();

            if (gonderen_id != null && alan_id != null && mesaj != null)
            {
                BlockedUserManager blockedUserManager = new BlockedUserManager();
                bool banlimi = blockedUserManager.EngelKontrolCiftTarafli(gonderen_id, alan_id);

                if (!banlimi)
                {
                    PrivateMessageManager manager = new PrivateMessageManager();
                    DateTime gonderme_tarihi      = DateTime.Now;
                    int      mesaj_id             = manager.MesajGonder(gonderen_id, alan_id, mesaj, gonderme_tarihi);

                    OnlineUser mesaj_gonderen = messangerManager.OnlineMi(gonderen_id);

                    if (mesaj_id != 0)
                    {
                        Clients.Client(mesaj_gonderen.ConnectionId).sendMessage_kendime(gonderen_id, mesaj, gonderme_tarihi.ToString(), mesaj_gonderen.User.UserDetail.Name + " " + mesaj_gonderen.User.UserDetail.SurName, mesaj_gonderen.User.ProfileImage);
                        OnlineUser mesaj_gonderilen_kullanici = messangerManager.OnlineMi(alan_id);
                        if (mesaj_gonderilen_kullanici != null)
                        {
                            Clients.Client(mesaj_gonderilen_kullanici.ConnectionId).sendMessage_karsiya(gonderen_id, mesaj, gonderme_tarihi.ToString(), mesaj_gonderen.User.UserDetail.Name + " " + mesaj_gonderen.User.UserDetail.SurName, mesaj_gonderen.User.ProfileImage, mesaj_id);
                        }
                    }
                    else
                    {
                        Clients.Client(mesaj_gonderen.ConnectionId).MesajGonderilemedi();
                    }
                }
                else
                {
                    Clients.Caller.Engelli();
                }
            }
        }