Slack API 발급받아 Python으로 활용하기
게시일 : 2019년 04월 05일
수정일 : 2019년 08월 26일
# Python
# slackclient
Slack API를 발급받아 Python으로 활용하는 법을 알아본다.
API TOKEN 발급받기
slack api 홈페이지에 접속한다.
API TOKEN을 발급받기 위해서는 Slack APP을 만들어야 한다.
생성한 App을 OAuth & Permissions 메뉴에서 install App을 실행해야 한다.
처음에는 이 버튼이 비활성화되어 있다. 아래로 내려서 Scopes에서 권한 설정을 해야한다.
기본적으로 메세지를 보낼 수 있는 권한과 유저 정보를 확인할 수 있는 권한을 지정했다.
활성화된 Install app 버튼을 누르면 Token이 발급된다.
API 활용하기 with Token
slackclient라는 파이썬 라이브러리를 활용한다.
import slack
slack_token = " ... " # 발급받은 Token 값
client = slack.WebClient(token=slack_token)
client.chat_postMessage(channel="#dev", text="Hello world!")
참고 : Scope에서 권한이 설정되지 않아 오류가 나면 needed에 표시되는 권한을 추가해주면 된다.
특정 User에게만 보이는 메세지를 전송할 수도 있다.
slack api에서는 실제 이름 대신 id값을 요구하는 경우가 많다.
# user ID 확인하기
[(user['id'], user['name']) for user in client.users_list()['members']]
=> [('USLACKBOT', 'slackbot'), ('UHPK6JJK', 'ts.yahwang')]
client.chat_postEphemeral(channel="#general", text="Hello, yahwang", user='UHPK66JJK')
더 많은 사용법은 Docs에서 확인할 수 있다.
References
: