웹훅으로 슬랙 메시지 발송하기
핵클 웹훅을 통해서 다양한 슬랙 메시지를 발송하고 원하는 시점에 발송되도록 자동화해보세요.
이번 가이드는 핵클 웹훅을 통해서 이벤트 기반 개인화된 슬랙 메시지를 발송하는 방법을 제공합니다.
1. 슬랙 > 웹훅 앱 추가하기
메시지 발송을 원하는 슬랙 채널에 웹훅 앱을 추가합니다.
1-1. 슬랙 앱을 생성합니다.
.
1-2. 슬랙 앱에 Incoming Webhooks를 등록합니다.
생성하고자 하는 앱의 이름을 선택하신 뒤, Incoming Webhooks
로 이동해주세요.
Add New Webhook to Workspace
를 클릭하고, 웹훅을 통해 메시지를 발송하고자 하는 슬랙 채널을 선택해주세요.
1-3. Webhook URL을 확인합니다.
위 URL을 복사해두세요. 웹훅 캠페인에 사용될 예정입니다.
이제 핵클 웹훅에 슬랙 메시지를 발송할 수 있도록 준비를 마쳤습니다.
2. 핵클 대시보드에서 웹훅 캠페인을 생성합니다.
2-1. 웹훅 Endpoint 설정
1-3
에서 복사해두었던 Webhook URL을 붙여넣습니다.
슬랙 메시지 발송은
POST
요청으로 설정하셔야 해요.
2-2. 웹훅 Body 설정
{
"text": "Hello, World!"
}
위 JSON을 복사해서 핵클 웹훅 캠페인의 Body TextField에 붙여넣은 뒤 저장합니다.
2-3. 테스트 메시지 발송하기
이제 설정한 웹훅 캠페인이 잘 동작하는 지 확인해볼까요?
테스트 메시지 발송하기
버튼을 클릭해주세요.
여기까지 잘 따라오셨다면 아래와 같은 화면을 보실 수 있습니다.
웹훅 테스트 발송하기
웹훅의 테스트 발송은 등록한 웹훅 Endpoint로 실제 HTTP 요청을 보냅니다.
Response 역시 실제 웹훅의 Endpoint에서 응답한 결과 값을 그대로 보여주고 있습니다.
2-3 슬랙 메시지 확인하기
잘 도착했음을 확인할 수 있습니다.
3. 이벤트 기반 개인화 적용하기
이제 슬랙과의 연동이 잘 되어있음을 확인했으니 원하는 시점에 원하는 형태의 메시지를 보내보도록 합니다.
3-1. 슬랙 메시지 발송 트리거 이벤트 설정
- 대시보드 > 이벤트 조회 메뉴로 이동해주세요.
- 트리거로 설정하고자 하는 이벤트를 검색해주세요.
- 이벤트가 발생할 때 함께 발생되는
속성
을 확인해주세요.- 이벤트 속성과 유저 속성이 개인화에 활용됩니다.
- 이벤트 속성과 유저 속성을 모르겠다면? 여기를 참고하세요.
본 가이드에서는
$in_app_action
이벤트를 활용합니다.$in_app_action 이란 ? (링크)
이벤트 기반 개인화를 적용하기 위해 웹훅 메시지의 Body를 변경합니다.
fallback, text, pretext, color, attachments 등의 필드명은 슬랙에서 제공하는 Message Payload에 의존합니다.
링크를 참조하여 자유로운 메시지를 구성해보세요.
JSON 내부에 개인화 문법을 추가하여 슬랙 메시지를 구성합니다.
개인화 문법은 liquid template language 를 사용합니다.
liquid 언어를 직접 타이핑할 수도 있지만, liquid 언어에 익숙하지 않다면 핵클 대시보드에서 제공하는 개인화 변수 추가
모달을 이용하시는 것을 권장합니다.
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를 변경하고 캠페인을 저장합니다.
3-2. 이벤트 기반 발송 설정
웹훅 캠페인에서 발송 설정
버튼을 클릭해주세요.
발송 유형 중 이벤트 기반
을 선택하고 시작 이벤트를 $in_app_action
으로 설정합니다.
특정 인앱메시지의 Action에 대해서만 웹훅을 트리거하고 싶다면?
시작 이벤트 > 필터 추가하기
를 통해서 시작 이벤트의 필터 기능을 사용해보세요.
in_app_message_key
혹은in_app_message_id
를 활용하여 특정 인앱메시지를 필터링할 수 있어요.in_app_message_display_type
을 활용해 특정 템플릿의 인앱메시지를 필터링할 수 있어요.- 그 외에도
$in_app_action
의 이벤트 속성을 활용해 다양한 필터링을 활용할 수 있어요.
3-3. 웹훅 트리거
시작하기
를 눌러 웹훅 캠페인을 시작해보세요.- 시작 이벤트의 대상에 해당하는 인앱메시지에서 닫기 버튼을 클릭하는 등의 액션을 발생시켜
$in_app_action
이벤트를 발생시켜 보세요. - 웹훅이 잘 트리거 되었나요?
그 외 발송 관련 설정에 대해 더 알아보고 싶다면?
웹훅 발송하기 가이드를 참고해주세요.
Updated about 17 hours ago