make.com 메이크닷컴

[태그:] 슬랙 봇 만들기 초간단 가이드

  • 슬랙 봇 만들기 초간단 가이드

    슬랙 봇 만들기 초간단 가이드

    슬랙 봇 만들기

    Slack은 단순한 메신저가 아닙니다. 업무 자동화의 중심 허브로 활용할 수 있습니다. 특히 Slack 봇을 만들면 알림, 명령어 처리, 워크플로우 자동화 등 다양한 기능을 구현할 수 있습니다. 코딩 없이 Make를 활용해서 강력한 Slack 봇을 만드는 방법을 소개합니다.

    Slack 봇의 종류

    Incoming Webhook

    가장 간단한 형태입니다. 특정 URL로 메시지를 보내면 Slack 채널에 표시됩니다. 일방향 알림에 적합합니다. 서버 상태 알림, 주문 알림 등에 사용됩니다.

    Slack App (Bot User)

    더 강력한 형태입니다. 메시지를 보내는 것뿐만 아니라 받을 수도 있습니다. 슬래시 명령어, 버튼 클릭, 멘션에 반응할 수 있습니다. 양방향 상호작용이 필요할 때 사용합니다.

    Workflow Builder

    Slack 자체 제공 기능입니다. 간단한 워크플로우를 코딩 없이 만들 수 있습니다. 다만 외부 서비스 연동에 제한이 있어서 Make와 결합하면 더 강력해집니다.

    Incoming Webhook 설정

    Webhook URL 발급

    1. api.slack.com/apps에서 앱 생성
    2. Incoming Webhooks 활성화
    3. Add New Webhook to Workspace
    4. 채널 선택 후 허용
    5. Webhook URL 복사

    Make에서 메시지 보내기

    Make의 HTTP 모듈로 Webhook URL에 POST 요청을 보냅니다:

    URL: (복사한 Webhook URL)
    Method: POST
    Headers: Content-Type: application/json
    Body: {“text”: “안녕하세요! 자동화 메시지입니다.”}

    리치 메시지 포맷팅

    단순 텍스트 외에 Block Kit을 사용하면 풍부한 메시지를 만들 수 있습니다:

    – 섹션 블록: 텍스트와 부가 정보
    – 이미지 블록: 이미지 첨부
    – 버튼 블록: 클릭 가능한 버튼
    – 컨텍스트 블록: 작은 부가 정보

    Block Kit Builder(app.slack.com/block-kit-builder)에서 시각적으로 디자인하고 JSON을 복사할 수 있습니다.

    Slack App 만들기

    앱 생성 및 권한 설정

    1. api.slack.com/apps에서 Create New App
    2. From scratch 선택, 이름과 워크스페이스 입력
    3. OAuth & Permissions에서 Scopes 추가:
    – chat:write (메시지 발송)
    – channels:read (채널 정보 읽기)
    – users:read (사용자 정보 읽기)
    4. Install to Workspace
    5. Bot User OAuth Token 복사

    Make에서 Slack 모듈 사용

    Make의 Slack 모듈은 Bot Token을 사용해서 연결합니다. 주요 모듈:

    Watch Messages: 특정 채널의 메시지를 감시. 키워드 트리거에 활용.

    Create a Message: 채널이나 DM으로 메시지 발송.

    Create a Reaction: 메시지에 이모지 반응 추가.

    Get User: 사용자 정보 조회.

    실전 봇 시나리오

    시나리오 1: 일일 스탠드업 봇

    매일 아침 팀원들에게 스탠드업 질문을 보내고 응답을 수집합니다.

    시나리오 구조:

    Schedule(매일 오전 9시) → Slack Create Message(질문 발송)

    메시지 내용:

    “좋은 아침입니다! 오늘의 스탠드업을 시작합니다.
    1. 어제 완료한 일
    2. 오늘 할 일
    3. 막히는 점
    스레드에 답변해주세요!”

    응답 수집은 별도 시나리오로:

    Slack Watch Messages(해당 스레드) → Google Sheets Add Row

    시나리오 2: 키워드 알림 봇

    특정 키워드가 언급되면 담당자에게 알림을 보냅니다.

    시나리오 구조:

    Slack Watch Messages → Filter(키워드 포함) → Slack Create Message(DM)

    예: “긴급”, “장애” 키워드가 포함된 메시지가 올라오면 온콜 담당자에게 DM 발송.

    시나리오 3: 명령어 봇

    슬래시 명령어에 반응하는 봇입니다.

    설정:

    1. Slack App의 Slash Commands에서 명령어 등록
    2. Request URL에 Make Webhook URL 입력
    3. Make에서 Webhook 트리거로 명령어 처리

    예: /sales 명령어로 오늘 매출 조회

    시나리오 구조:

    Webhook(/sales 명령) → Database 조회 → Slack Respond to Webhook

    시나리오 4: 승인 봇

    버튼을 클릭해서 승인/거절을 처리하는 봇입니다.

    1단계: 승인 요청 메시지 발송

    Block Kit으로 승인/거절 버튼이 포함된 메시지를 만듭니다.

    2단계: 버튼 클릭 처리

    Interactivity 설정에서 Request URL에 Make Webhook 등록. 버튼 클릭 시 Webhook이 트리거됩니다.

    시나리오 구조:

    Webhook(버튼 클릭) → Router

    – 승인: 승인 처리 + 메시지 업데이트
    – 거절: 거절 처리 + 메시지 업데이트

    시나리오 5: 온보딩 봇

    새 멤버가 채널에 참여하면 환영 메시지와 가이드를 보냅니다.

    시나리오 구조:

    Slack Watch Events(member_joined_channel) → Slack Create Message(DM)

    DM 내용:

    “환영합니다! 다음 자료를 확인해주세요:
    – 팀 가이드: [링크]
    – 온보딩 체크리스트: [링크]
    – 질문 채널: #questions”

    시나리오 6: 리마인더 봇

    데이터베이스의 마감일을 확인해서 리마인더를 발송합니다.

    시나리오 구조:

    Schedule(매일 오전) → Airtable Search(마감 3일 전) → Iterator → Slack Create Message(담당자 DM)

    봇 UX 베스트 프랙티스

    메시지 톤

    봇이라도 친근하고 자연스러운 톤을 사용합니다. 딱딱한 시스템 메시지보다 대화체가 더 효과적입니다.

    나쁜 예: “ERROR: 필수 필드 누락”
    좋은 예: “앗, 필수 정보가 빠졌어요. 다시 확인해주실래요?”

    알림 빈도

    너무 많은 알림은 오히려 무시됩니다. 정말 중요한 알림만 보내고, 덜 중요한 것은 묶어서 보내거나 다이제스트 형태로 정리합니다.

    액션 가능성

    알림에는 바로 조치할 수 있는 링크나 버튼을 포함합니다. “주문이 들어왔습니다”보다 “주문이 들어왔습니다. [주문 확인하기]”가 더 유용합니다.

    에러 처리

    봇이 요청을 처리하지 못했을 때 명확한 안내를 제공합니다. 무응답보다는 “죄송합니다, 처리 중 문제가 발생했어요. 잠시 후 다시 시도해주세요.”가 낫습니다.

    고급 기능

    모달(Modal) 활용

    슬래시 명령어나 버튼 클릭 시 모달 창을 열어서 복잡한 입력을 받을 수 있습니다. 폼 형태의 입력이 필요할 때 유용합니다.

    홈 탭 구성

    App Home을 활성화하면 봇만의 홈 화면을 만들 수 있습니다. 대시보드, 설정 화면 등을 구성합니다.

    스레드 활용

    메인 채널을 깔끔하게 유지하려면 스레드를 활용합니다. 초기 알림은 채널에, 후속 업데이트는 스레드에 답글로 추가합니다.

    시작하기

    Slack 봇을 처음 만든다면 Incoming Webhook으로 간단한 알림부터 시작하세요. 작동하는 것을 확인한 후 점점 복잡한 기능을 추가합니다.

    추천 첫 프로젝트:

    1. 매일 아침 팀 채널에 오늘의 일정 알림
    2. 특정 이벤트 발생 시 알림 (새 주문, 에러 등)
    3. 간단한 슬래시 명령어 (정보 조회)

    Slack은 이미 팀이 모여있는 곳입니다. 그곳에 봇을 배치하면 정보가 자동으로 흘러오고, 업무 흐름이 매끄러워집니다. 나만의 Slack 봇으로 팀 생산성을 높여보세요.