웹훅으로 슬랙 메시지 발송하기

circle-info

핵클 웹훅을 통해서 다양한 슬랙 메시지를 원하는 시점에 발송되도록 자동화해보세요.

이번 가이드는 이벤트 기반 개인화된 슬랙 메시지를 발송하는 방법을 제공합니다.

웹훅 설정하기

아래 순서대로 설정하면 슬랙 메시지 발송 웹훅을 구성할 수 있습니다.

1

슬랙 앱 생성

메시지를 발송할 슬랙 채널에 웹훅 앱을 먼저 추가합니다.

슬랙에서 새 앱을 생성합니다.

Create New App을 클릭해주세요.
From scratch를 선택해주세요.
2

Incoming Webhooks 등록

생성한 앱을 연 뒤 Incoming Webhooks 메뉴로 이동합니다.

토글을 On 으로 변경합니다.

Toggle을 on으로 변경해주세요.

Add New Webhook to Workspace 를 클릭합니다.

그 다음 메시지를 보낼 슬랙 채널을 선택합니다.

3

Webhook URL 확인

생성된 Webhook URL 을 복사해둡니다.

이 URL은 잠시 뒤 웹훅 캠페인 설정에 사용합니다.

4

웹훅 캠페인 생성

핵클 대시보드에서 새 웹훅 캠페인을 생성합니다.

새 캠페인 생성하기를 클릭해주세요.
5

요청 정보 설정

Endpoint 설정

앞에서 복사한 Webhook URL 을 붙여넣습니다.

circle-info

슬랙 메시지 발송은 POST 요청으로 설정해야 합니다.

Body 설정

먼저 아래처럼 간단한 메시지로 테스트할 수 있습니다.

{
  "text": "Hello, World!"
}

위 JSON을 Body 입력창에 붙여넣고 저장합니다.

6

테스트 메시지 발송

설정한 웹훅이 잘 동작하는지 확인합니다.

테스트 메시지 발송하기 버튼을 클릭합니다.

정상적으로 호출되면 아래와 같은 결과를 볼 수 있습니다.

테스트 발송 결과
circle-info

테스트 발송은 등록한 Endpoint 로 실제 HTTP 요청을 보냅니다.

응답값도 실제 Endpoint 에서 반환한 값을 그대로 보여줍니다.

슬랙 채널에서도 메시지가 도착했는지 확인합니다.

7

개인화 메시지 구성

이제 원하는 시점에 원하는 형태의 슬랙 메시지를 보내도록 Body 를 바꿉니다.

먼저 어떤 이벤트를 트리거로 쓸지 정합니다.

  • 트리거로 사용할 이벤트를 검색합니다.

  • 이벤트와 함께 수집되는 속성을 확인합니다.

  • 이벤트 속성과 유저 속성은 개인화에 활용됩니다.

이벤트 속성과 유저 속성이 익숙하지 않다면 속성 가이드 를 참고하세요.

circle-info

fallback, text, pretext, color, attachments 같은 필드는 슬랙 Message Payloadarrow-up-right 규격을 따릅니다.

슬랙 포맷에 맞춰 자유롭게 메시지를 구성할 수 있습니다.

개인화 문법은 Liquidarrow-up-right 를 사용합니다.

직접 입력해도 되지만, 익숙하지 않다면 개인화 변수 추가 모달을 사용하는 것이 편합니다.

개인화 변수 추가 모달을 열 수 있어요.

Slack Message Delivery Body Sample

{
  "fallback": "인앱메시지 노출 알리미 메시지 구성에 실패했어요.",
  "text": "{{event_properties.in_app_message_key | default: ""}}번 인앱메시지 노출",
  "pretext": "{{event_properties.in_app_message_display_type | default: "  없음"}}",
  "color": "good",
  "attachments": [
    {
      "fallback": "fallback",
      "pretext": "{{event_properties.button_text | default:"버튼 이름"}}에 대하여 {{event_properties.action_type | default: "  없음"}}을 수행하였음",
      "color": "#0065ff",
      "fields": [
        {
          "title": "[인앱메시지 노출 알리미]",
          "value": "인앱메시지 정보는 핵클에서 👉 <http://dashboard.hackle.io/in-app-messages/{{event_properties.in_app_message_id}}/|링크>",
          "short": false
        }
      ]
    }
  ]
}

위와 같이 Body 를 변경하고 캠페인을 저장합니다.

8

이벤트 기반 발송 설정

웹훅 캠페인에서 발송 설정 버튼을 클릭합니다.

발송 유형은 이벤트 기반 으로 선택합니다.

시작 이벤트는 $in_app_action 으로 설정합니다.

circle-info

특정 인앱메시지의 액션만 트리거하고 싶다면 시작 이벤트 > 필터 추가하기 를 사용하세요.

  • in_app_message_key

  • in_app_message_id

  • in_app_message_display_type

같은 속성을 이용해 원하는 조건만 걸 수 있습니다.

이벤트 기반 발송 설정
9

완료

이제 시작하기 를 눌러 웹훅 캠페인을 활성화합니다.

그 다음 대상 인앱메시지에서 닫기 버튼 클릭 같은 액션을 발생시켜 $in_app_action 이벤트를 만들어봅니다.

웹훅이 정상적으로 트리거되면 슬랙으로 메시지가 발송됩니다.

성공적으로 메시지 발송 완료

마지막 업데이트