Mar*_*son 3 python-3.x slack-api slack
我在使用 Slack api 方面非常(非常)新手 - 所以要温柔并使用简短的单词。到目前为止,我已经成功建立了一个可以发布到我们的 Slack 频道的简单系统。一切都很好,但与帖子关联的图标是默认的。我该如何设置不同的图标,甚至是我自己创建的图标?
这是基本代码(从 Slack api 开发网站上列出的教程中获取):
import requests
import json
url = 'https://slack.com/api/chat.postMessage'
token = 'xoxb-00000000000etc'
headers = {'Content-Type': 'application/json', 'Authorization': 'Bearer {0}'.format(token)}
def send_message(message_text):
message = {'channel': '#channel_name', 'text': message_text}
requests.post(url, headers=headers, data=json.dumps(message))
send_message('beep boop - this is the OMS bot calling')
Run Code Online (Sandbox Code Playgroud)
非常感谢...
要设置消息的图标图像,您可以简单地向该属性提供icon_url
图像的 URL。
例子:
message = {'channel': '#channel_name', 'text': message_text, 'icon_url': 'https://img.icons8.com/emoji/96/000000/penguin--v2.png'}
Run Code Online (Sandbox Code Playgroud)
您可以在 API 方法chat.postMessage的官方文档页面上查看所有可用属性。
既然你说你是一个初学者,请允许我提出两个额外的建议。
Python 有一个官方的 Slack 库,它使思考变得更加容易,例如,您不需要处理请求库和 HTTP 标头。您可以在这里找到它: https: //github.com/slackapi/python-slackclient
出于安全原因,最好将 slack 令牌放入环境变量中。这样你也可以将你的代码签入 github 等。
这是您的示例,其中包含两个建议的改进:
import slack
import os
client = slack.WebClient(token=os.environ['SLACK_TOKEN'])
response = client.chat_postMessage(
channel='general',
text='beep boop - this is the OMS bot calling',
icon_url='https://img.icons8.com/emoji/96/000000/penguin--v2.png'
)
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
7502 次 |
最近记录: |