-
AWS Lambda로 랜덤아재개그 슬랙봇 만들기 4편 | Slash Command에 버튼 보여주기Serverless 2018. 12. 20. 17:03
Slash Command 응답 테스트
먼저 간단하게 람다 함수 코드를 수정하고 테스트 해보겠습니다.
// index.js exports.handler = async (event) => { const buildResponse = (res) => ({ statusCode: 200, body: JSON.stringify(res), }); switch (event.httpMethod) { case 'GET': return buildResponse('Success GET'); case 'POST': return buildResponse('없어'); } return { statusCode: 400, body: 'unknown httpMethod', }; };
return 중에서 body가 슬랙에 표시되는 걸 확인하실 수 있습니다.
버튼으로 응답하기
이제 사용자에게 일반 텍스트 대신 버튼을 보여줍시다.
POST 요청에 대한 응답을 다음과 같이 수정해봅시다.
return buildResponse({ attachments: [ { title: '맞춰봐~ ', callback_id: '아재퀴즈', text: '가장 못생긴 새는?', actions: [ { name: 'action', type: 'button', text: '앵그리버드', value: '앵그리버드', }, { name: 'action', type: 'button', text: '오징어 새', value: '오징어 새', }, ] } ] });
코드를 저장하고 슬랙에서 테스트해보면, 버튼이 뜨는 걸 확인하실 수 있습니다!
자세한 스펙은 https://api.slack.com/docs/message-buttons 이쪽에서 확인해주세요
Next
아직 버튼을 눌렀을 때 어떻게 동작할지에 대한 코드는 작성하지 않았기 때문에, 버튼을 눌렀을 때 에러가 나는 모습입니다.
Interactive Components를 이용해서 버튼을 입력했을 때 동작을 제어해보겠습니다.
'Serverless' 카테고리의 다른 글
AWS Lambda로 랜덤아재개그 슬랙봇 만들기 5편 | Interactive Components 설정하기 (1) 2018.12.20 AWS Lambda로 랜덤아재개그 슬랙봇 만들기 3편 | Slash Command 설정 (0) 2018.12.20 AWS Lambda로 랜덤아재개그 슬랙봇 만들기 2편 | Lambda Function 구성하기 (0) 2018.12.15 AWS Lambda로 랜덤아재개그 슬랙봇 만들기 1편 | 기본설정 (0) 2018.12.14 [AWS Re:Invent 2018 정리 (1)] AWS Lambda 로그 개선 (0) 2018.12.04 댓글