기존에는 파이썬으로 print 하여 현재가를 출력했지만, 우리가 자주 사용하는 여러가지 어플을 사용한다면 조금 더 편안 환경에서, 그리고 다양한 사람들이 현재가 정보를 공유할 수 있을 것이다. 개발자답게 개발자와 직장인들을 위한 업무용 도구인 Slack 챗봇을 이용하여 현재가 정보를 출력해볼 것이다.
게임을 조금 해봤다하는 사람들이라면 당연히 "디스코드"라는 채팅 및 음성채팅 기능을 제공하는 인스턴트 메신저를 알고 있을 것이다. 해당 어플리케이션 역시 API가 존재하는데, 이를 사용하기 위해선 API가 활동할 공간인 채널을 먼저 생성해야 한다. 슬랙도 마찬가지다. 슬랙으로 챗봇을 만들어 정보를 출력하기 전에 당연히 정보를 출력하기 위한 채널인 "워크스페이스"를 생성해야 한다. 본 글은 슬랙 챗봇을 이용한 알림 봇을 만드는 것이므로 워크 스페이스를 하나 이상 생성했다는 가정하에 진행할 것이다.
1. API 생성하기
위 링크를 타고 들어가면 슬랙 API를 생성할 수 있는 공간이 보인다.
우선 빨간색으로 표시한 부분의 버튼을 클릭한다.
그러면 해당 창이 뜨는데, App Name에는 말 그대로 사용할 API의 이름을, Development Slack Workspace에는 해당 어플리케이션을 설치할 워크스페이스를 선택한다.
생성을 완료했으면 좌측 메뉴바에서 OAuth & Permission 메뉴를 선택해준다. OAuth란, 기존의 아이디와 비밀번호로 인증하던 전통적인 방식을 개방형으로 표준화한 것으로 이 인증을 공유하는 어플리케이션끼리는 별도의 인증이 필요 없게 하여 여러 어플리케이션을 통합하여 사용하는 것이 가능하도록 만든 것이다. 소셜로그인도 OAuth를 이용한 기능 중 하나이다.
Add an OAuth Scope를 클릭해 api가 워크스페이스에 채팅을 쓸 수 있는 권한을 부여한 후, 맨 위로 올라가 OAuth Tokens & Redirect URLs에서 Install to Workspace 버튼을 클릭하면, 전에 설정한 워크스페이스에 해당 api가 설치된다. 그러면 OAuth Token이 발행되는데, 이 토큰을 이용하면 워크스페이스에 접근하여 채팅할 수 있는 권한을 얻게 된다. 일종의 방문증이라고 생각하면 된다. (이 토큰은 보안이 유지되어야 한다.)
2. 파이썬 slack_SDK 모듈 설치하기
slack에서는 python에서 slack을 다루기 위한 공식 모듈을 제공한다. 아래 링크에서 자세한 설명을 읽어볼 수 있으며 해당 모듈을 통해 앞서 생성한 API를 다룰 수 있다.
파이썬 가상 환경에 아래와 같은 코드를 입력하면 라이브러리가 설치된다.
$ pip install slack_sdk
3. 봇으로 채팅보내기
앞서 발행한 토큰을 가져와 다음과 같이 코드를 작성해준다.
from slack_sdk import WebClient
slack = WebClient(token="발행한 토큰 입력")
slack.chat_postMessage(channel="채팅을 보낼 채널 입력", text="메시지 입력")
'기타 > Slack Trading Bot (준영)' 카테고리의 다른 글
Slack으로 주식 현재가 알림 봇 만들기 - 최종 코드 (0) | 2021.03.09 |
---|---|
Slack으로 주식 현재가 알림 봇 만들기 - EC2를 이용한 크롤러 자동화 (0) | 2021.03.05 |
Slack으로 주식 현재가 알림 봇 만들기 - 휴장일 구분하기 (0) | 2021.02.28 |
Slack으로 주식 현재가 알림 봇 만들기 - 주식 현재가 가져오기 (0) | 2021.02.24 |
최근댓글