SPMS_API/SPMS.Application/Interfaces/IPushService.cs
seonkyu.kim 830cbf2edc feat: 대용량 발송/상태조회/취소 API 구현 (#130)
- POST /v1/in/push/send/bulk: CSV 대량 발송 (비동기)
- POST /v1/in/push/job/status: Job 상태 조회
- POST /v1/in/push/job/cancel: Job 취소
- BulkJobStore: Redis Hash 기반 Job 상태 관리
- PushWorker: Job 진행률 추적 및 취소 체크

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-10 22:55:39 +09:00

16 lines
823 B
C#

using SPMS.Application.DTOs.Push;
namespace SPMS.Application.Interfaces;
public interface IPushService
{
Task<PushSendResponseDto> SendAsync(long serviceId, PushSendRequestDto request);
Task<PushSendResponseDto> SendByTagAsync(long serviceId, PushSendTagRequestDto request);
Task<PushScheduleResponseDto> ScheduleAsync(long serviceId, PushScheduleRequestDto request);
Task CancelScheduleAsync(PushScheduleCancelRequestDto request);
Task<PushLogResponseDto> GetLogAsync(long serviceId, PushLogRequestDto request);
Task<BulkSendResponseDto> SendBulkAsync(long serviceId, Stream csvStream, string messageCode);
Task<JobStatusResponseDto> GetJobStatusAsync(long serviceId, JobStatusRequestDto request);
Task<JobCancelResponseDto> CancelJobAsync(long serviceId, JobCancelRequestDto request);
}