| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899 |
- //using Microsoft.AspNetCore.SignalR;
- //namespace Admin.NET.Core.Service;
- ///// <summary>
- ///// 消息发送服务
- ///// </summary>
- //[ApiDescriptionSettings(Name = "Message", Order = 100)]
- //[Route("api")]
- //public class SendMessageService : ISendMessageService, IDynamicApiController, ITransient
- //{
- // private readonly ISysCacheService _sysCacheService;
- // private readonly IHubContext<ChatHub, IChatClient> _chatHubContext;
- // public SendMessageService(ISysCacheService sysCacheService,
- // IHubContext<ChatHub, IChatClient> chatHubContext)
- // {
- // _sysCacheService = sysCacheService;
- // _chatHubContext = chatHubContext;
- // }
- // /// <summary>
- // /// 发送消息给所有人
- // /// </summary>
- // /// <param name="title">发送标题</param>
- // /// <param name="message">发送内容</param>
- // /// <param name="type">消息类型</param>
- // /// <returns></returns>
- // [HttpGet("sysMessage/allUser")]
- // public async Task SendMessageToAllUser(string title, string message, MessageTypeEnum type)
- // {
- // await _chatHubContext.Clients.All.ReceiveMessage(new { Title = title, Message = message, Messagetype = type });
- // }
- // /// <summary>
- // /// 发送消息给除了发送人的其他人
- // /// </summary>
- // /// <param name="title">发送标题</param>
- // /// <param name="message">发送内容</param>
- // /// <param name="userId">发送人</param>
- // /// <param name="type">消息类型</param>
- // /// <returns></returns>
- // [HttpGet("sysMessage/otherUser")]
- // public async Task SendMessageToOtherUser(string title, string message, MessageTypeEnum type, long userId)
- // {
- // var onlineuserlist = await _sysCacheService.GetAsync<List<OnlineUser>>(CommonConst.CACHE_KEY_ONLINE_USER);
- // var user = onlineuserlist.Where(x => x.UserId == userId).ToList();
- // if (user != null)
- // {
- // await _chatHubContext.Clients.AllExcept(user[0].ConnectionId).ReceiveMessage(new { title = title, message = message, messagetype = type });
- // }
- // }
- // /// <summary>
- // /// 发送消息给某个人
- // /// </summary>
- // /// <param name="title">发送标题</param>
- // /// <param name="message">发送内容</param>
- // /// <param name="userId">接收人</param>
- // /// <param name="type">消息类型</param>
- // /// <returns></returns>
- // [HttpGet("sysMessage/user")]
- // public async Task SendMessageToUser(string title, string message, MessageTypeEnum type, long userId)
- // {
- // var onlineuserlist = await _sysCacheService.GetAsync<List<OnlineUser>>(CommonConst.CACHE_KEY_ONLINE_USER);
- // var user = onlineuserlist.Where(x => x.UserId == userId).ToList();
- // if (user != null)
- // {
- // foreach (var item in user)
- // {
- // await _chatHubContext.Clients.Client(item.ConnectionId).ReceiveMessage(new { title = title, message = message, messagetype = type });
- // }
- // }
- // }
- // /// <summary>
- // /// 发送消息给某些人
- // /// </summary>
- // /// <param name="title">发送标题</param>
- // /// <param name="message">发送内容</param>
- // /// <param name="userId">接收人列表</param>
- // /// <param name="type">消息类型</param>
- // /// <returns></returns>
- // [HttpGet("sysMessage/users")]
- // public async Task SendMessageToUsers(string title, string message, MessageTypeEnum type, List<long> userId)
- // {
- // var onlineuserlist = await _sysCacheService.GetAsync<List<OnlineUser>>(CommonConst.CACHE_KEY_ONLINE_USER);
- // var userlist = new List<string>();
- // foreach (var item in onlineuserlist)
- // {
- // if (userId.Contains(item.UserId))
- // userlist.Add(item.ConnectionId);
- // }
- // await _chatHubContext.Clients.Clients(userlist).ReceiveMessage(new { Title = title, Message = message, Messagetype = type });
- // }
- //}
|