コード例 #1
0
 /// <summary>
 /// 释放链接的时候
 /// </summary>
 /// <param name="stopCalled"></param>
 /// <returns></returns>
 public override Task OnDisconnected(bool stopCalled)
 {
     if (Context.RequestCookies.ContainsKey("ClientUserId"))
     {
         var ClientUserId = Context.RequestCookies["ClientUserId"];
         var user         = new VisitorConnectUser();
         VisitorOnlineUsers.TryRemove(ClientUserId.Value, out user);
         var serviceUser = new ServiceConnectUser();
         ServiceOnlineUsers.TryRemove(ClientUserId.Value, out serviceUser);
     }
     return(base.OnDisconnected(stopCalled));
 }
コード例 #2
0
        /// <summary>
        /// 客服 链接
        /// </summary>
        /// <param name="user"></param>
        private async Task ServiceConnect(string ClientUserId)
        {
            //客服 链接
            var user = new ServiceConnectUser()
            {
                ClientUserId       = ClientUserId,
                ClientConnectionId = Context.ConnectionId,
                ServiceUserName    = Context.RequestCookies["ClientUserName"].Value
            };

            ServiceOnlineUsers.TryAdd(user.ClientUserId, user);
            await Clients.Caller.ConnecteResult("连接成功");
        }