슬랙 알림봇 (slack bot) 만들기
주식시장이나 코인시장을 모니터링하고, 내가 원하는 맞춤형 정보를 알려준다면 시장을 파악하는데 큰 도움이 될 것입니다. 이번 포스팅에서는 이런 일을 해줄 슬랙 알림봇을 만들어보겠습니다. 슬랙 메신저가 무엇인지, 알림봇을 어떻게 만들고 세팅하는지까지가 이번 포스팅의 목적입니다.
글의 순서
슬랙 메신저 (slack messenger)
슬랙 알림봇 (slack bot)
슬랙 알림봇 만드는 방법
슬랙 메신저 (slack messenger)
슬랙(slack)은 클라우드 기반 팀 협업 도구입니다. 카카오톡과 같은 메신저 앱인데, 주로 업무용으로 사용되고 있습니다. 슬랙 API를 이용하면 슬랙 사용자들에게 알림 메시지를 보낼 수 있습니다. 자동화된 BOT을 만들어서 다른 외부 프로그램과 연계하기 편리하며, 알림봇으로 활용하기 좋습니다. 슬랙 메신저는 지난 포스팅의 디스코드(Discord)와 비슷한 기능을 가진 도구라고 보시면 되겠습니다. 디스코드에 대한 내용은 이 포스팅 맨 아래의 함께 참고하면 좋은 글에서 확인하실 수 있습니다.
슬랙 알림봇 (slack bot)
파이썬 프로그래밍을 통해 미리 만들어둔 메시지를 자동으로 보낼 수 있습니다. 예를 들어 주식가격이라든가 거래량, 또는 기술적 분석과 관련한 메시지 말입니다. 궁극적 목표는 주식투자 자동화, 코인투자 자동화와 관련된 메시지가 자동 전송되도록 하는 것입니다만, 이번 포스팅에서는 슬랙봇을 만드는 과정까지만 정리해보겠습니다.
슬랙 알림봇 만드는 방법
간단하게 요약하면, 아래와 같이 크게 3단계로 진행됩니다.
(1) 워크스페이스 만들기,
(2) 슬랙 API에서 슬랙봇 만들기,
(3) 슬랙봇을 워크스페이스 안에 있는 채널과 연결시키기
물론 각 단계마다 세부적인 과정이 있는데, 따라하실 수 있도록 정리해보겠습니다.
(1) 슬랙 워크스페이스 만들기
슬랙으로 메시지를 보내려면 맨 먼저 슬랙 홈페이지에 접속해서 워크스페이스(workspace)를 만들어야 합니다. 여기서, 워크스페이스는 친구들을 초대하여 함께 일하거나 대화할 수 있는 공간이며, 여러 채팅창을 모아 놓은 개념입니다.
먼저 슬랙에 회원가입한 후 새 워크스페이스를 만듭니다. slack 홈페이지는 계속 개편되고 있으니까, 이 모습과 똑같지 않을 수는 있지만, 워크스페이스를 만드는 흐름은 똑같을 것입니다. 슬랙 홈페이지에서 ‘새 워크스페이스 개설’이라는 버튼을 누르면 아래의 과정이 진행됩니다.‘실습)’ 부분이 제가 입력한 값입니다.
▶1/4단계
회사 또는 팀 이름이 어떻게 됩니까?
→ 새 워크스페이스에 만들고자 하는 워크스페이스 이름 넣고 ‘다음’ 버튼 클릭
실습) coin_notice
▶2/4단계
이름을 알려주세요.
이름과 프로필 사진을 추가하면 팀원이 사용자를 쉽게 알아보고 연결하는 데 도움이 됩니다.
→ 워크스페이스에서 사용할 내 이름 입력
실습) coffeefm
▶3/4단계
coin_notice팀에 또 누가 있나요?
→ 워크스페이스에 함께 참여할 친구, 동료 e-메일 주소 입력
실습) tedkim876@gmail.com
▶4/4단계
현재 고객님의 팀은 어떤 일을 진행하고 계시나요?
프로젝트, 캠페인, 이벤트 또는 성사하려는 거래 등 무엇이든 될 수 있습니다.
→ 워크스페이스를 만든 목적 입력
실습) 코인시장 모니터링
4단계까지 거치고 나면 워크스페이스가 만들어지고, 그 워크스페이스가 새로운 창에 뜹니다.
만약 워크스페이스를 삭제하고 싶다면,
step1) 워크스페이스 이름 클릭
step2) 도구 및 설정 > 워크스페이스 설정
step3) 워크스페이스 설정 페이지 맨 아래의 워크스페이스 삭제 버튼 클릭
(2) 슬랙봇 (Slack Bot) 만들기
step1)
오른쪽 맨 위에 있는 ‘Your apps’ 클릭
step2)
Create New App 클릭 후 From scratch 클릭
step3)
Name app & choose workspace 클릭 : 슬랙봇의 이름과 그 슬랙봇의 작업공간인 워크스페이스 지정
→ 슬랙봇 이름 지정
실습) coin_notice_bot
→ 슬랙봇이 작업할 공간인 워크스페이스 선택(이미 만들어진 워크스페이스)
실습) coin_notice
step4)
Basic Information 화면에서 ‘Permissions’ 클릭
step5)
OAuth & Permissions 화면에서 Scopes이 나올 때까지 아래로 내림. Scopes에서 Add an OAuth Scope 클릭 (알림만 보낼 경우, Add an OAuth Scope 선택)
→ chat:write, chat:write.public을 차례대로 클릭하여 추가 Scopes에 추가
step6)
왼쪽 Settings 메뉴의 Basic Information으로 다시 돌아와서 Install your app 항목에 있는 Install to Workspace 버튼 클릭
‘허용’ 버튼 클릭. 이 과정까지 마치면 Slack App을 사용할 때 쓸 수 있는 토큰(Token)이 발행됩니다. 토큰은 돈 대신 쓸 수 있는 것인데, 사용료라는 개념으로 이해하시면 되겠습니다. ‘토큰이라는 사용료를 내고 사용권을 받았다.’ 는 의미입니다.
step7)
OAuth Tokens for Your Workspace에서 ‘xoxb-’ 로 시작하는 Token 확인. 여기서 주의해야 할 사항은 이 토큰을 나만 볼 수 있게 안전하게 보관해야 한다는 것입니다. ‘OAuth & Permissions’ 메뉴에서 이 토큰을 언제든지 확인할 수 있습니다.
(3) 슬랙 봇(알림봇) 설정
지금까지 슬랙 알림봇을 만들기 위해 워크스페이스와 슬랙 앱(Slack App)을 만들었습니다 .여기서, 슬랙 앱이 바로 봇입니다. 슬랙봇을 사용하려면, 추가 설정이 필요한데요. 바로 내가 만들어놓은 워크스페이스 안에 있는 대화채널에 Slack App을 추가해둬야 한다는 것입니다.
요약해보면, 간단히 2단계로 구성됩니다.
(1) 만들어둔 워크스페이스로 들어간다.
(2) 워크스페이스에서 슬랫봇을 채널에 추가한다.
step1)
일단 슬랙 홈페이지에 접속합니다. 미리 만들어 둔 coin_notice 워크스페이스(workspace)에서 ’SLACK 실행‘ 버튼을 클릭해서 coin_notice라는 워크스페이스에 들어옵니다.
step2)
▶워크스페이스 왼쪽 맨 아래에서 ‘coin_notice_bot’ 확인. coin_notice_bot에 대고 마우스 오른쪽을 클릭한 후 팝업 창에서 ‘앱 세부정보 보기’ 클릭
▶채널에 coin_notice_bot 추가
▶워크스페이스 안에 있는 채널에 들어가서 coin_notice_bot이 추가된 것을 확인
여기까지 나에게 메시지를 보내줄 슬랙 알림봇 준비가 완료되었습니다.
마치며 …
이번 포스팅에서는 주식이나 코인시장을 모니터링 하고 나에게 필요한 맞춤형 정보를 알려줄 슬랙봇을 만드는 방법을 알아보았습니다. 슬랙 메신저가 무엇인지, 알림봇을 어떻게 만들고 세팅하는지 확인하셨다면 이번 포스팅의 목적을 달성한 것입니다. 다음 포스팅에서는 파이썬 코드를 작성해서 슬랙봇을 통해 실제로 메시지를 받아보겠습니다.
함께 참고하면 더 좋은 글 :
▶ 디스코드 메신저로 만드는 알림 봇 : 웹훅URL
▶ 디스코드 메신저로 만드는 알림 봇 : 파이썬 함수 예제
▶ 디스코드 알림 봇 파이썬 코드
▶ API와 파이썬 데이터 분석
▶ 파이썬 바이낸스 API로 시계열 데이터를 가져오는 파이썬 프로그래밍
참고자료