| | |
| | | using Microsoft.AspNet.SignalR; |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using System.Data; |
| | | using System.Linq; |
| | | using System.Web; |
| | | using VueWebApi.Models; |
| | | |
| | | namespace VueWebApi.Hubs |
| | | { |
| | |
| | | /// </summary> |
| | | private IList<string> userList = UserInfo.userList; |
| | | |
| | | |
| | | |
| | | /// <summary> |
| | | /// 用户的connectionID与用户名对照表 |
| | | /// </summary> |
| | | private readonly static Dictionary<string, string> _connections = new Dictionary<string, string>(); |
| | | |
| | | |
| | | |
| | | /// <summary> |
| | | /// 发送函数,前端触发该函数给服务器,服务器在将消息发送给前端,(Clients.All.(函数名)是全体广播,另外Clients提供了组播,广播排除,组播排除,指定用户播发等等) |
| | |
| | | public void SendByGroup(string name1, string name2, string cont) |
| | | { |
| | | //Client内为用户的id,是唯一的,SendMessage函数是前端函数,意思是服务器将该消息推送至前端 |
| | | //Clients.Client(_connections[name2]).SendMessage("来自用户:" + name1 + " 内容:" + cont + "" + DateTime.Now.ToString("yyyy/MM/ddhh:mm:ss") + "的消息推送!"); |
| | | Clients.Client(_connections[name2]).SendMessage("来自用户:" + name1 + " 内容:" + cont + "" + DateTime.Now.ToString("yyyy/MM/ddhh:mm:ss") + "的消息推送!"); |
| | | } |
| | | |
| | | public void SendByGroups(string name1, IList<string>name2, string cont) |
| | | public void SendByGroups(string name1, DataTable name2, string cont) |
| | | { |
| | | //Client内为用户的id,是唯一的,SendMessage函数是前端函数,意思是服务器将该消息推送至前端 |
| | | Clients.Clients(name2).SendMessage("来自用户:" + name1 + " 内容:" + cont + "" + DateTime.Now.ToString("yyyy/MM/ddhh:mm:ss") + "的消息推送!"); |
| | | var departmentIDs = name2.AsEnumerable().ToList().Select(x => x.Field<string>("name")).ToList(); |
| | | var FindPublicBaseDic = _connections.Where(d => departmentIDs.Contains(d.Key)).Select(x=>x.Value).ToList(); |
| | | Clients.Clients(FindPublicBaseDic).SendMessage("来自用户:" + name1 + " 内容:" + cont + "" + DateTime.Now.ToString("yyyy/MM/ddhh:mm:ss") + "的消息推送!"); |
| | | } |
| | | |
| | | |
| | | /// <summary> |
| | | /// 用户上线函数 |
| | |
| | | Clients.All.loginUser(userList); |
| | | } |
| | | } |
| | | |
| | | |
| | | public class UserInfo |
| | | { |
| | | public static IList<string> userList = new List<string>(); |