slack api로 dm 보내기
소개
slack은 UI가 잘 변경되었으므로 최신 정보가별로 없었습니다.
따라서 자신을 위해 메모를 남깁니다.
2021/2/5의 정보입니다.
추가
slacker는 더 이상 업데이트되지 않았기 때문에 파이썬 슬랙 SDK을 사용하는 방법을 설명합니다.
pip install slack_sdk
절차 1 작업 공간에 앱을 추가합니다.
htps : // 아피. scck. 이 m/아 ps/
에 액세스하고 로그인합니다.
![](https://s1.md5.ltd/image/84d425ca36390f652f5dcaa34d3bc46e.png)
![](https://s1.md5.ltd/image/ad575ec8c73585deefb1ffe3eb2d6487.png)
Create New APP에서
pip install slack_sdk
htps : // 아피. scck. 이 m/아 ps/
에 액세스하고 로그인합니다.
![](https://s1.md5.ltd/image/84d425ca36390f652f5dcaa34d3bc46e.png)
![](https://s1.md5.ltd/image/ad575ec8c73585deefb1ffe3eb2d6487.png)
Create New APP에서
2 단계 Permissions 추가.
Permissions 선택
![](https://s1.md5.ltd/image/161878b051702e1e33489087a1ea20b6.png)
BOT로 게시하면 BOT Token Scopes
사용자로 게시하려면 User Token Scopes를 선택하십시오.
![](https://s1.md5.ltd/image/5cd650bc1ca31bc151390200a3e6bdba.png)
이번은 BOT로 진행합니다.
![](https://s1.md5.ltd/image/2f8be95b53c006c7c58da9b83b82afc9.png)
이러한 Permission을 추가하십시오. (불필요한 것이 섞여 있을지도..)
완료 후 설치합니다.
![](https://s1.md5.ltd/image/55031a104e68468145d28339b9215d02.png)
액세스 토큰을 복사합니다.
![](https://s1.md5.ltd/image/38ddfb5d62e63ac2202b82be79493795.png)
3 단계 users_list, user_id를 얻습니다.
처음 사용하는 것은 users.list의 api입니다.
액세스하여 이전 토큰을 붙여 넣으십시오.
![](https://s1.md5.ltd/image/7152e91fb2f940c02a7dcb38273bc661.png)
"ok"true가 되어 있으면 성공입니다.
Shizuzu와 회원 목록이 반환되었습니다. 이대로는 보기 힘들기 때문에 Python을 사용하여 가공합시다.
환경입니다.
❯❯❯ python --version
Python 3.7.4
❯❯❯ which python
/Users/kyohei/.pyenv/shims/python
슬래커
❯❯❯ pip install slacker
❯❯❯ pip show slacker
Name: slacker
Version: 0.14.0
以下略
getid.pyfrom slacker import Slacker
token = "your access token"
slacker = Slacker(token)
res = slacker.users.list()
for member in res.body['members']:
print(member['name'])
print(member['id'])
print()
주의점으로서, slacker의 응답에 액세스하기 위해서는, body를 경유하는 것입니다.
자세한 내용은 slacker의 github을 참조하십시오.
파이썬 슬랙 SDK
getid.pyfrom slack_sdk import WebClient
token = "your access token"
client = WebClient(token)
res = client.users_list()
for member in res['members']:
print(member['name'])
print(member['id'])
print()
Python Slack SDK는 res에 대해 body를 통과하지 않습니다.
이제 작업 공간의 멤버 user_id를 얻을 수 있습니다.
4 단계 DM을 보냅니다.
DM을 보내려면 상대방과의 DM을 오픈합니다.
옛 기사에서는 다른 m. 오펜을 사용하는 기사가 많은 것 같습니다만, deprecated(비추천)와 같습니다.
지금 Ver 차지온 s. 오펜의 API를 사용합니다. 액세스하고 테스트합시다.
users 필드에 이전에 파이썬으로 얻은 user_id를 입력하십시오.
![](https://s1.md5.ltd/image/afe032df3ea5db2c04c7e73707eaf843.png)
응답에 나온 id가 DM을 하기 위한 id가 됩니다.
(user_id와 dm에 대한 channel_id를 구별하십시오)
이것도 파이썬에서 가져옵니다.
슬래커
dm.pyfrom slacker import Slacker
token = "your access token"
slacker = Slacker(token)
user_id = "手順3で取得した user_id"
message = "DMです."
# DMを開く
res = slacker.conversations.open(users=user_id)
dm_id = res.body['channel']['id']
# DMを送信する
slacker.chat.post_message(channel=dm_id, text=message)
파이썬 슬랙 SDK
dm.pyfrom slack_sdk import WebClient
token = "your access token"
client = WebClient(token)
user_id = '手順3で取得した user_id'
# DMを開き,channelidを取得する.
res = client.conversations_open(users=user_id)
dm_id = res['channel']['id']
# DMを送信する
client.chat_postMessage(channel=dm_id, text='DMです')
이제 DM을 보낼 수 있습니다.
그리고는 코드를 개량해, 일제 송신으로 하는 등으로 이용해 주세요.
Reference
이 문제에 관하여(slack api로 dm 보내기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/kyohei-horikawa/items/db33945f6a50ed4f61ae
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
처음 사용하는 것은 users.list의 api입니다.
액세스하여 이전 토큰을 붙여 넣으십시오.
![](https://s1.md5.ltd/image/7152e91fb2f940c02a7dcb38273bc661.png)
"ok"true가 되어 있으면 성공입니다.
Shizuzu와 회원 목록이 반환되었습니다. 이대로는 보기 힘들기 때문에 Python을 사용하여 가공합시다.
환경입니다.
❯❯❯ python --version
Python 3.7.4
❯❯❯ which python
/Users/kyohei/.pyenv/shims/python
슬래커
❯❯❯ pip install slacker
❯❯❯ pip show slacker
Name: slacker
Version: 0.14.0
以下略
getid.py
from slacker import Slacker
token = "your access token"
slacker = Slacker(token)
res = slacker.users.list()
for member in res.body['members']:
print(member['name'])
print(member['id'])
print()
주의점으로서, slacker의 응답에 액세스하기 위해서는, body를 경유하는 것입니다.
자세한 내용은 slacker의 github을 참조하십시오.
파이썬 슬랙 SDK
getid.py
from slack_sdk import WebClient
token = "your access token"
client = WebClient(token)
res = client.users_list()
for member in res['members']:
print(member['name'])
print(member['id'])
print()
Python Slack SDK는 res에 대해 body를 통과하지 않습니다.
이제 작업 공간의 멤버 user_id를 얻을 수 있습니다.
4 단계 DM을 보냅니다.
DM을 보내려면 상대방과의 DM을 오픈합니다.
옛 기사에서는 다른 m. 오펜을 사용하는 기사가 많은 것 같습니다만, deprecated(비추천)와 같습니다.
지금 Ver 차지온 s. 오펜의 API를 사용합니다. 액세스하고 테스트합시다.
users 필드에 이전에 파이썬으로 얻은 user_id를 입력하십시오.
![](https://s1.md5.ltd/image/afe032df3ea5db2c04c7e73707eaf843.png)
응답에 나온 id가 DM을 하기 위한 id가 됩니다.
(user_id와 dm에 대한 channel_id를 구별하십시오)
이것도 파이썬에서 가져옵니다.
슬래커
dm.pyfrom slacker import Slacker
token = "your access token"
slacker = Slacker(token)
user_id = "手順3で取得した user_id"
message = "DMです."
# DMを開く
res = slacker.conversations.open(users=user_id)
dm_id = res.body['channel']['id']
# DMを送信する
slacker.chat.post_message(channel=dm_id, text=message)
파이썬 슬랙 SDK
dm.pyfrom slack_sdk import WebClient
token = "your access token"
client = WebClient(token)
user_id = '手順3で取得した user_id'
# DMを開き,channelidを取得する.
res = client.conversations_open(users=user_id)
dm_id = res['channel']['id']
# DMを送信する
client.chat_postMessage(channel=dm_id, text='DMです')
이제 DM을 보낼 수 있습니다.
그리고는 코드를 개량해, 일제 송신으로 하는 등으로 이용해 주세요.
Reference
이 문제에 관하여(slack api로 dm 보내기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/kyohei-horikawa/items/db33945f6a50ed4f61ae
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
from slacker import Slacker
token = "your access token"
slacker = Slacker(token)
user_id = "手順3で取得した user_id"
message = "DMです."
# DMを開く
res = slacker.conversations.open(users=user_id)
dm_id = res.body['channel']['id']
# DMを送信する
slacker.chat.post_message(channel=dm_id, text=message)
from slack_sdk import WebClient
token = "your access token"
client = WebClient(token)
user_id = '手順3で取得した user_id'
# DMを開き,channelidを取得する.
res = client.conversations_open(users=user_id)
dm_id = res['channel']['id']
# DMを送信する
client.chat_postMessage(channel=dm_id, text='DMです')
Reference
이 문제에 관하여(slack api로 dm 보내기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/kyohei-horikawa/items/db33945f6a50ed4f61ae텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)