- coldmail_ir_notification_sync: LangGraph+APScheduler 기반으로 전면 재작성 - slack_action_extractor_request: v2 IntentClassifier→executor 흐름 기준 재작성 - slack_thread_summary_request: 동일 - message_flow_v2: _format_as_robeing() 해석 단계 보완 - skill_calendar/email/news_request: SKILL.md→executor 직접 호출 기준 재작성 - skill_slack_send_message_bridge: slack_sdk 직접 호출 + skill-slack HTTP 이중 경로 기술 - slack_direct_api_send: grounding 개선 사항 반영 Refs: DOCS#8 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2.5 KiB
2.5 KiB
type, tags, last_updated
| type | tags | last_updated | |||||
|---|---|---|---|---|---|---|---|
| workflow |
|
2026-04-06 |
skill_slack_send_message_bridge 워크플로우
목적
내부 서비스가 Slack 메시지를 보내야 할 때의 경로. 현행에서는 slack_sdk.WebClient로 직접 Slack API를 호출하거나, skill-slack 서비스를 HTTP로 호출한다.
현행 아키텍처
n8n Slack 노드 경유는 사용하지 않는다. 두 가지 경로가 존재한다:
경로 1: slack_sdk.WebClient 직접 호출 (Slack <20><><EFBFBD>벤트 응답)
app/services/slack/message_service.py에서 WebClient(token=bot_token)으로 Slack API를 직접 호출한다.
slack_endpoint.py (events 수신)
-> slack_handler.py (이벤트 처리)
-> slack/message_service.py:process_slack_message()
-- WebClient(token=bot_token)
-- local_client.chat_postMessage(channel, text, thread_ts, blocks)
봇 토큰은 Slack 이벤트 컨텍스트에서 전달받는다.
경로 2: skill-slack HTTP 호출 (스케줄러/워크플로우)
스케줄러 잡이나 LangGraph 워크플로우에서 Slack 메시지를 보낼 때<><EB958C><EFBFBD> skill-slack 서비스를 HTTP로 호출한다.
coldmail_workflow.py / headlines_workflow.py
-> POST {SKILL_SLACK_URL}/api/v1/send
headers: X-API-Key
body: { channel, text, blocks, thread_ts }
주요 코드 경로
| 용도 | 코드 | Slack 호출 <20><><EFBFBD>식 |
|---|---|---|
| Slack 이벤트 응답 | app/services/slack/message_service.py |
slack_sdk.WebClient 직접 |
| 콜드메일 알림 | app/services/workflows/coldmail_workflow.py:send_node() |
skill-slack HTTP |
| 헤드라인 게시 | app/services/workflows/headlines_workflow.py |
skill-slack HTTP |
| 뉴스 게시 | app/services/skills/news_posting_skill.py |
slack_sdk.WebClient 직접 |
| DM 발송 | app/services/skills/dm_skill.py |
slack_sdk.WebClient 직접 |
| 명확화 UI | app/services/slack/clarify_service.py |
slack_sdk.WebClient 직접 |
환경변수
| 변수 | 용도 |
|---|---|
SKILL_SLACK_URL |
skill-slack 서비스 베이스 URL (HTTP 경로) |
SKILL_SLACK_API_KEY / SERVICE_API_KEY |
skill-slack 인증 키 |
SLACK_BOT_TOKEN |
기본 워크스페이스 봇 토큰 (직접 호출 시) |
관련 문서
- slack_direct_api_send.md -- DB 봇토큰 직접 전송 경로
- skill-slack SKILL.md -- 스킬 계약
- message_flow_v2.md -- v2 메시지 흐름