IMicrosoftGraphMailboxService.cs 1.1 KB

123456789101112131415161718192021222324252627282930
  1. namespace OASystem.API.OAMethodLib.MicrosoftGraphMailbox;
  2. public interface IMicrosoftGraphMailboxService
  3. {
  4. /// <summary>
  5. /// GET /me 原始 JSON(使用调用方提供的 Graph 访问令牌)。
  6. /// </summary>
  7. Task<string?> GetMeRawJsonAsync(string graphAccessToken, CancellationToken cancellationToken = default);
  8. /// <summary>
  9. /// 拉取收件箱中 receivedDateTime &gt;= startUtc 的邮件列表 JSON。
  10. /// </summary>
  11. Task<string?> GetInboxMessagesJsonSinceAsync(DateTime startUtc, string graphAccessToken, CancellationToken cancellationToken = default);
  12. /// <summary>
  13. /// POST /me/sendMail 发送纯文本邮件。
  14. /// </summary>
  15. Task SendMailAsync(string toEmail, string subject, string textBody, string graphAccessToken, CancellationToken cancellationToken = default);
  16. /// <summary>
  17. /// 刷新 access_token
  18. /// </summary>
  19. Task<string> RefreshAccessTokenAsync(string clientId,
  20. string tenant,
  21. string[] scopes,
  22. string tokenCacheBase64, // 从Redis拿到的缓存(Base64字符串)
  23. string homeAccountId // 用户标识(建议存这个)
  24. );
  25. }