3.8 KiB
3.8 KiB
NAVER WORKS 이메일 → Slack 전달 시스템 구현
날짜: 2025-09-19
작성자: Claude (51123 서버 관리자)
관련 서비스: rb8001, skill-email
상태: 부분 구현
1. 현재 구현 상태
구현 완료
- auth-server:
naverworks.py,naverworks_passport.py파일 존재- NAVER WORKS OAuth 환경변수 설정 (CLIENT_ID, CLIENT_SECRET, REDIRECT_URI, TENANT_ID)
- skill-email (포트 8501):
services/naverworks_provider.pyNaverWorksProvider 클래스 구현- GET
/messages엔드포인트 (provider 파라미터 지원) - POST
/send엔드포인트
- rb8001:
app/skills/email_integration.pyEmailIntegration 클래스 존재- skill-email 포트 8501 호출 구조
미구현
- POST
/mail-summary엔드포인트 없음 - rb8001 EmailIntegration 클래스는 Gmail만 처리
- 네이버웍스 메일 키워드 감지 로직 없음
- Slack Block Kit 포맷터 없음
2. 필요 구현 사항
2.1 skill-email 수정 사항
- POST
/mail-summary엔드포인트 추가 필요 - 메일 요약 생성 로직 구현 필요
- Slack 블록 포맷 변환 기능 필요
2.2 rb8001 수정 사항
- EmailIntegration 클래스에 NaverWorks 지원 추가 필요
- 네이버웍스 메일 키워드 감지 로직 추가 필요
- provider=naverworks 파라미터 전달 로직 필요
3. 파일 위치
skill-email
main.py: API 엔드포인트 정의services/naverworks_provider.py: NAVER WORKS API 연동services/gmail_provider.py: Gmail API 연동services/email_provider.py: Provider 인터페이스
rb8001
app/skills/email_integration.py: 이메일 스킬 통합app/main.py: 메시지 라우팅
auth-server
app/providers/naverworks.py: OAuth 로그인app/providers/naverworks_passport.py: Passport 시스템
4. 핵심 시나리오
4.1 콜드메일 리스트업
- 목적: 스타트업 콜드메일 자동 수집 및 Slack 전달
- 트리거: 새 콜드메일 수신 또는 주기적 확인
- 처리:
- NAVER WORKS에서 콜드메일 필터링 (발신자/제목 패턴)
- 메일 정보 추출: 발신자, 제목, 본문 요약, 첨부파일
- Slack 리스트 형식으로 포맷팅
- 지정 채널에 자동 포스팅
- 출력 형식: 구조화된 리스트 (회사명, 담당자, 제안내용, 첨부파일 링크)
4.2 일일 브리핑
- 목적: 회사 대표메일 중요사항 자동 요약
- 트리거: 매일 오전 정해진 시간 (예: 09:00)
- 처리:
- 최근 24시간 대표메일 조회
- 중요도 분석 (긴급, 계약, 결제, 공지 등 키워드)
- AI 요약 생성
- 우선순위별 정렬
- 출력: Slack 전체채널 브리핑 메시지
5. 구현 체크리스트
5.1 콜드메일 리스트업 기능
- skill-email
/cold-mail-list엔드포인트 구현 - 콜드메일 필터링 로직 (발신자 도메인, 제목 패턴)
- 첨부파일 처리 및 링크 생성
- Slack 리스트 포맷터 (테이블 형식)
- 실시간 또는 주기적 체크 스케줄러
5.2 일일 브리핑 기능
- skill-email
/daily-briefing엔드포인트 구현 - 중요 메일 필터링 알고리즘
- Gemini API 활용 요약 생성
- 우선순위 판단 로직
- Cron 스케줄러 설정 (매일 09:00)
5.3 공통 기능
- rb8001 EmailIntegration에 NaverWorks 지원 추가
- Slack Block Kit 포맷터 구현
- provider=naverworks 파라미터 전달 로직
- 에러 처리 및 재시도 로직
6. 환경 설정 확인 사항
- skill-email .env 파일에 NAVER WORKS 관련 설정 확인
- rb8001에서 skill-email 호출 시 포트 8501 사용
- auth-server의 NAVER WORKS OAuth 설정 확인
- Slack 채널 ID 및 권한 설정
- 스케줄러 시간대 설정 (KST)