DOCS/workflow/02_skills/skill_slack_send_message_bridge.md
happybell80 9cb0145a4e docs: 01_conversation + 02_skills 워크플로우 문서 현행화 — n8n 제거, SKILL.md+executor 기준 재작성
- 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>
2026-04-06 07:57:58 +09:00

2.5 KiB
Raw Blame History

type, tags, last_updated
type tags last_updated
workflow
workflow
skill-slack
slack
send-message
slack-sdk
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 기본 워크스페이스 봇 토큰 (직접 호출 시)

관련 문서