[Slack-bot] Slack api를 이용한Slack Bot 만들어보기

강버섯·2022년 1월 14일
2

SLACK BOT🤖

목록 보기
1/2

👉 slack bot 생성하기


Slack api 에 들어가서 "Create an app" 버튼을 클릭해 slack bot 만들기를 시작할 수 있다.
위와 같은 창이 뜨면 From Scratch를 선택하고,

생성할 봇의 이름과 동작할 workspace를 선택해주면 된다.

👉 기능 추가하기

생성을 완료하면 봇에 추가할 기능들을 확인할 수 있는 페이지가 뜬다.

각 기능들을 간단히 보자면,

✏️ Incoming webhooks

webhook 주소를 이용해서 외부에서 slack app의 이름으로 메세지를 보낼 수 있다.
"Add New Webhook to Workspace" 버튼을 눌러서

생성한 bot의 엑세스 권한을 추가해준다.
게시할 채널을 설정해주면
내 계정의 이름으로 채널에 봇이 초대된다.

webhook을 추가하면 channel에 접근할 수 있는 request 주소가 생성되는데, 이거를 복사해서 터미널 창에서 실행을 시키면
ok 응답이 떨어지고 봇이 초대된 채널에 작성한 메세지가 온 것을 확인할 수 있다.
"text"의 값을 변경하여 보내고자 하는 메세지를 변경할 수 있다.

✏️ Bots

채널의 존재하는 사용자와 상호 작용을 할 수 있는 기능을 제공한다.
Webhook과 다른 점은, webhook은 메세지를 전송하는 것이고 bot은 메세지 전송 뿐만 아니라 추가적인 상호 작용이 가능하다.(아마)

Bot이 채널에서 다양한 동작을 하게하기 위해서는 권한 추가를 해줘야만 한다.

사이드 바의 "OAuth & Permission" 탭으로 들어가거나, 아니면 Bot 페이지에서 "Bot Token Added > OAuth & Permissions" 로 들어가면 권한 추가를 해줄 수 있다.

OAuth & Permission 페이지에 들어가면 Scopes에서 추가하고 싶은 권한을 선택할 수 있다.
"Add an OAuth Scope" 버튼을 누르면 추가할 수 있는 다양한 권한들이 뜨는데, 매번 필요할 때마다 검색해서 넣어주면 된다.
무슨 권한이 필요한지 모를 경우에는 일단 시도해보고 뜨는 에러를 확인하면 필요한 권한을 알 수 있으니 그 때 추가해줘도 문제 없다.
권한을 변경시킨 후에는 꼭 다시 app을 재설치하고, 해당 채널에 봇을 초대시켜주어야만 동작시킬 수 있다.

✏️ Slash Commands

기능명 그대로 slash command를 이용해서 bot과 소통할 수 있게 해주는 기능이다.
slash command란 "/"로 시작하는 명령어이다.

"Create New Command" 버튼을 클릭해서 command를 생성할 수 있다.

Request URL에는 slash command를 통해 요청한 동작이 실행될 때 호출되는 URL의 값이 들어가게 되는데, 따라서 slash commands 기능을 사용하기 위해서는 동작을 반환해줄 서버를 배포해야한다.

필요값들을 넣어서 slash command를 완성하고 채널에 app을 재설치해주면
해당 채널에서 "/"를 쳤을 때 생성한 slash command를 실행해볼 수 있는 것을 확인할 수 있다.

profile
무럭무럭 버섯농장

0개의 댓글