IVisitorTracker.cs 709 B

12345678910111213141516171819
  1. using Application.Abstractions.Chat;
  2. namespace Application.Abstractions.Hub;
  3. /// <summary>
  4. /// AppHub 전역 접속자 추적 (Redis 기반).
  5. /// 게스트 포함 모든 SignalR AppHub 연결을 connectionId 단위로 기록 — Admin 현재 접속자 페이지용.
  6. /// </summary>
  7. public interface IVisitorTracker
  8. {
  9. Task AddAsync(ConnectedUser user);
  10. Task RemoveAsync(string connectionId);
  11. /// <summary>전체 접속자 목록 (관리자 집계용).</summary>
  12. Task<IReadOnlyList<ConnectedUser>> GetAllAsync();
  13. /// <summary>Web.Api 시작 시 stale 연결 정보 일괄 정리. 모든 클라이언트는 재연결 시 OnConnected 로 재등록됨.</summary>
  14. Task ClearAllAsync();
  15. }