목록 보기
Slack Block Kit 활용
백엔드

Slack Block Kit 활용

마켓컬리
마켓컬리
2020년 4월 7일

두줄요약

Slack Block Kit과 Java SDK로 배송팁 승인·거부 버튼이 포함된 메시지를 구현했습니다.\nSlack 액션 payload를 Spring API에서 처리하고 기존 메시지 상태를 갱신했습니다.

문제 상황

  • 배송팁 승인 요청을 Slack 메시지 안에서 처리하려는 요구
  • 단순 알림용 Incoming Webhook을 넘어 사용자 액션 수신 필요

구조와 흐름

  • Slack App의 Incoming Webhook으로 Block Kit 메시지 전송
  • Interactivity Request URL과 actionId로 승인·거부 이벤트를 Spring API에 전달
  • ActionResponse와 response_url로 기존 메시지의 승인 상태 갱신

해결 방법

  • Block Kit Builder 템플릿을 기반으로 Java Slack SDK의 LayoutBlock 목록 구성
  • ActionBlock에 승인·거부 버튼과 배송팁 식별값 설정
  • form-urlencoded payload를 String으로 수신 후 Gson으로 BlockActionPayload 변환

주의할 점

  • Slack 액션 요청의 Content-Type은 application/x-www-form-urlencoded;charset=UTF-8
  • RequestBody 직접 수신 시 MissingServletRequestParameterException 발생 가능성
  • replaceOriginal 값에 따른 기존 메시지 교체·추가 동작 구분

다음 읽기

#Slack Block Kit 주제를 이어서 읽기

Slack Block Kit 활용

Slack Block Kit과 Java SDK로 배송팁 승인·거부 메시지 액션을 구현했습니다. Spring API에서 이벤트를 받고 수정된 블록 메시지를 재전송하는 흐름을 설명합니다.

마켓컬리
마켓컬리
백엔드

댓글 0개

댓글을 작성하려면 로그인이 필요합니다.

댓글을 불러오는 중...