Blame view

netcore/src/Modularity/Extend/NCC.Extend.Interfaces/IMqttPublisherService.cs 958 Bytes
de2bd2f9   “wangming”   项目初始化
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
  
  using System.Threading.Tasks;
  using System.Collections.Generic;
  
  namespace NCC.Extend.Interfaces.MqttPublisher
  {
      public interface IMqttPublisherService
      {
          Task<bool> PublishAsync(string topic, string payload);
          Task StartAsync();
  
          /// <summary>
          /// 查询指定clientId是否在线(通过EMQX管理API
          /// </summary>
          /// <param name="clientId"></param>
          /// <returns></returns>
          Task<dynamic> IsClientOnlineAsync(string clientId);
  
          /// <summary>
          /// 批量查询设备在线状态(提高效率)
          /// </summary>
          /// <param name="clientIds">要查询的客户端ID列表</param>
          /// <returns>在线状态字典</returns>
          Task<Dictionary<string, bool>> BatchCheckOnlineStatusAsync(List<string> clientIds);
  
          /// <summary>
          /// 清理过期的缓存数据
          /// </summary>
          void CleanupExpiredCache();
      }
  }