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의 3가지 Button들의 속성은 submit_action로 설정되어 있기 때문에 반응형 메시지 유형이 됩니다.

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

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

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

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

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