파이썬 + Flask + slack으로 챗봇을 만들어보겠습니다.
먼저 slack에 로그인하고, 워크스페이스를 생성합니다
링크 : https://slack.com
위 링크에 접속해서
이 버튼을 누른다.
App Name은 마음대로 정하시면 되고,
Development Slack Workspace는 아까 생성한 워크스페이스를 선택해주시면 됩니다
위 사진과 같은 페이지가 뜰 텐데, Bots메뉴를 클릭합니다.
이 버튼을 눌러줍니다.
스크롤해서 내려가면
Scopes메뉴가 보입니다.
Bot Token Scopes 아래에 있는 Add an OAuth Scope 버튼을 누르고,
- app_mentions:read
- chat:write
- channel:read
이 3가지를 추가해줍니다
Install App 메뉴에 들어가서 Install to Workspace을 눌러줍니다.
허용을 눌러줍니다
그러면
이렇게 토큰을 주는데, Copy를 눌러 메모장 같은 곳에 임시로 보관해둡시다.
먼저, 본인의 컴퓨터로 서버를 열 예정이라면
이 글을 참고해서 포트포워딩을 한 뒤 계속합니다.
참고) 이 글에서는 외부포트 80, 내부포트 5000을 이용합니다.
포트포워딩을 마쳤다면, 내도메인.한국
에 접속해서 로그인을 하고 원하는 도메인을 등록해줍니다.
영어도메인이 좋습니다.
이제 파이썬 코드를 작성합니다.
라이브러리 설치와 전체 코드는 깃헙을 참고해주세요
https://github.com/Sol-Studio/slack_bot
cmd 창을 열어서 python server.py로 서버를 실행합니다.
서버가 실행되고있을 때,
다시 Basic Information 메뉴로 넘어가서 Event Subscriptions로 들어갑니다.
Enable Events를 On으로 바꿔줍니다.
아까 등록한 도메인을 Request URL에 넣어줍니다.
Subscribe to bot events 메뉴를 펼치고,
Add Bot User Event를 눌러서 app_mention을 추가해줍니다.
화면 하단의 Save Changes를 누르고 Install App으로 다시 가서 Reinstall App을 누릅니다.
허용을 눌러줍니다.
워크스페이스로 돌아갑니다.
원하는 채널로 들어간 뒤
↑이 버튼(채널 세부정보 표시) - 더보기 - 앱 추가 - 만든 앱을 추가합니다.
테스트해보기
@(앱 이름) (아무말)
을 보내봅니다.
그대로 따라하는 것을 볼 수 있습니다.
다음엔 이 따라쟁이가 다른 말을 할 수 있게 해보겠습니다.
'코딩 > Python' 카테고리의 다른 글
Python - jellyfish - 문자열 유사도 판단 (0) | 2021.01.26 |
---|---|
파이썬으로 slack 봇 만들기(pt.2) (0) | 2021.01.24 |
flask로 get 요청 처리하기 (0) | 2021.01.14 |
파이썬 flask 기초 (0) | 2020.12.24 |
파이썬 RSA 암호화 (0) | 2020.11.18 |