07 Sending email with resend
- Moshia 워크플로우의 마지막 단계로, Resend를 사용하여 사용자에게 개선된 제목이 포함된 이메일을 전송하는 과정을 다룹니다. 🏁
- Moshia 프레임워크의 이벤트 기반 아키텍처를 활용하여 작업 처리 및 상태 업데이트를 통합합니다. ⚙️
generateEmailText 함수를 통해 채널 이름, 원본 제목, 개선된 제목 등을 포함하는 동적인 이메일 본문을 생성합니다. ✍️
RESEND_API_KEY 및 RESEND_FROM_EMAIL과 같은 환경 변수 설정을 통해 보안 및 기능적 이메일 전송을 보장합니다. 🔑
api.resend.com/emails 엔드포인트로 직접 fetch POST 요청을 보내 이메일을 전송하며, Content-Type 및 Authorization 헤더를 포함합니다. 🚀
- Resend API 요청 본문은
from, to (배열 형식), subject, text 필드를 포함하는 JSON 형식이어야 합니다. 📝
- API 응답 상태를 확인하고,
Resend API error와 같은 사용자 정의 오류를 발생시키며, 작업 상태를 'failed'로 업데이트하는 등 강력한 오류 처리를 구현합니다. 🚨
- 작업 상태를 'sending email', 'completed', 'failed' 등으로 지속적으로 업데이트하고,
completedAt 타임스탬프를 기록하여 작업 진행 상황을 추적합니다. ✅
- Moshia 프레임워크의 에러 핸들러는
videos.error, ytitles.errors와 같은 여러 에러 이벤트를 구독하여 포괄적인 실패 관리가 가능함을 보여줍니다. 🕸️
- 제목 생성 실패 시 사용자에게 알리는 간단한 에러 알림 이메일 텍스트를 구성하는 방법을 제시합니다. 💬