Kakao Work::Bot 메시지 시나리오::반응형 메시지

페이지 이동경로

반응형 메시지를 활용한 말풍선 시나리오

다음 예시는 카카오워크에서 제공하는 구글 캘린더 Bot을 사용하는 경우에 발송되는 일정 초대 알림 메시지입니다. 이 메시지에서는 Button BlockAction Block이 각기 다른 action_type의 속성으로 지정되어 구성되어 있습니다. 단순히 외부 링크로 연결되는 Button Block(자세히 보기)과 달리 여러 개의 버튼을 한 행에 표현하는 Action Block(수락/거절/미정)에서 버튼을 누르면 해당 정보가 구글 캘린더에 전달되는 반응형 시나리오가 이어지도록 구성되어 있습니다.

  • 하나의 행 안에 긴 버튼 하나를 추가하는 경우에는 Button Block으로 구성합니다.
  • 하나의 행 안에 여러 개의 버튼을 포함하는 경우에는 Action Block으로 구성합니다.

구글 캘린더 Bot

말풍선 구성 예시

다음 예시에서 조합형 말풍선을 구성하는 블록은 다음과 같습니다.

반응형 메시지 그림반응형 메시지

위 예시는 조합형 말풍선 메시지 유형과 반응형 메시지 유형이 결합되어 있는 경우입니다. 즉, Button Block의 Button 속성은 open_system_browser로 설정되어 있기 때문에 메시지 유형은 알림형의 조합형 말풍선이 됩니다. 반면, Action Block의 세 가지 Button들의 속성은 submit_action로 설정되어 있기 때문에 반응형 메시지 유형이 됩니다.

코드예제반응형 메시지 Sample Code

{
        "text": "다음 일정에 초대되었습니다",
        "blocks": [
                {
                        "type": "text",
                        "text": "다음 일정에 초대되었습니다",
                        "inlines": [
                                {
                                        "type": "styled",
                                        "text": "다음 일정에 초대되었습니다.",
                                        "bold": true
                                }
                        ]
                },
                {
                        "type": "divider"
                },
                {
                        "type": "text",
                        "text": "서비스 정책회의 - 기획 논의",
                        "inlines": [
                                {
                                        "type": "styled",
                                        "text": "서비스 정책회의 - 기획 논의",
                                        "bold": true
                                }
                        ]
                },
                {
                        "type": "description",
                        "term": "일시",
                        "content": {
                                "type": "text",
                                "text": "17:00~19:00"
                        },
                        "accent": true
                },
                {
                        "type": "description",
                        "term": "장소",
                        "content": {
                                "type": "text",
                                "text": "[판교] N9층 버드bird"
                        },
                        "accent": true
                },
                {
                        "type": "button",
                        "text": "자세히 보기",
                        "style": "default",
                        "action": {
                                "type": "open_system_browser",
                                "value": "http://example.com/details/999"
                        }
                },
                {
                        "type": "divider"
                },
                {
                        "type": "text",
                        "text": "참석 하시겠습니까?",
                        "inlines": [
                                {
                                        "type": "styled",
                                        "text": "참석 하시겠습니까?",
                                        "bold": true
                                }
                        ]
                },
                {
                        "type": "action",
                        "elements": [
                                {
                                        "type": "button",
                                        "text": "수락",
                                        "style": "default",
                                        "action": {
                                                "type": "submit_action",
                                                "name": "accept",
                                                "value": "event_id=20210301-0024"
                                        }
                                },
                                {
                                        "type": "button",
                                        "text": "거절",
                                        "style": "default",
                                        "action": {
                                                "type": "submit_action",
                                                "name": "decline",
                                                "value": "event_id=20210301-0024"
                                        }
                                },
                                {
                                        "type": "button",
                                        "text": "미정",
                                        "style": "default",
                                        "action": {
                                                "type": "submit_action",
                                                "name": "undetermined",
                                                "value": "event_id=20210301-0024"
                                        }
                                }
                        ]
                }
        ]
}

안내
submit_action을 활용한 Bot과 사용자 간의 메시지 흐름은 Bot 시작 가이드의 반응형 메시지 문서를 참고하시기 바랍니다.

  • 사용자가 선택한 버튼 정보는 Bot의 Callback URL로 전달됩니다. 상세한 Callback payload는 Button BlockAction Type예제를 참고하시기 바랍니다.
이 문서가 만족스러운 이유를 알려주세요.
이 문서에 아쉬운 점을 알려주세요.
평가해주셔서 감사합니다.

더 자세한 의견은 documentation@kakaoenterprise.com 으로 제보해주세요.