IYouTubePubSubService.cs 725 B

1234567891011121314151617181920
  1. namespace Application.Abstractions.YouTube;
  2. /// <summary>
  3. /// YouTube PubSubHubbub(WebSub) 구독 관리
  4. /// 채널의 새 영상/생방송 알림을 푸시로 수신
  5. /// </summary>
  6. public interface IYouTubePubSubService
  7. {
  8. /// <summary>특정 채널의 피드 구독 신청</summary>
  9. Task<bool> SubscribeAsync(string channelId, CancellationToken ct);
  10. /// <summary>특정 채널의 피드 구독 해지</summary>
  11. Task<bool> UnsubscribeAsync(string channelId, CancellationToken ct);
  12. /// <summary>Atom Feed 알림 파싱</summary>
  13. YouTubePubSubNotification? ParseNotification(string atomXml);
  14. /// <summary>HMAC 서명 검증</summary>
  15. bool VerifySignature(string payload, string signature);
  16. }