Ejemplo n.º 1
0
        public override Task OnDisconnected(bool stopCalled)
        {
            MessegeConnection disconnect = DbContext.MessegeConnections.SingleOrDefault(c => c.ConnectionId == Context.ConnectionId);

            if (disconnect != null)
            {
                DbContext.MessegeConnections.Remove(disconnect);
                DbContext.SaveChanges();
            }
            return(base.OnDisconnected(stopCalled));
        }
Ejemplo n.º 2
0
 public override Task OnConnected()
 {
     if (HttpContext.Current.Request.IsAuthenticated)
     {
         string userName = Context.User.Identity.Name;
         var    user     = DbContext.Users.Include(c => c.UserConnections).SingleOrDefault(u => u.UserName == userName);
         if (user != null)
         {
             MessegeConnection connection = new MessegeConnection()
             {
                 ConnectionId       = Context.ConnectionId,
                 UserId             = user.Id,
                 IsConnectionActive = true,
                 UserName           = user.FirstName,
                 ConnectionTime     = DateTime.UtcNow
             };
             user.UserConnections.Add(connection);
             DbContext.SaveChanges();
         }
     }
     return(base.OnConnected());
 }