我可以用Bot而不是Webhook发送格式丰富的Slack消息吗?

2024-05-15 08:13:24 发布

您现在位置:Python中文网/ 问答频道 /正文

我开始用Python编写Slack bot,但当我无法找到使用以下两种方法之一发送格式丰富的消息时,我陷入停顿:

sc.rtm_send_message("channel_name", my_message)

sc.api_call("chat.postMessage", channel="channel_name", text=my_message, username="username", icon_url="icon_url")

其中my_message = json.dumps({'attachments': [{...}]})

我现在知道我可以使用webhook方法来实现这一点,但是用上面的方法可以吗?在


Tags: 方法namesend消息urlmessagemy格式
2条回答

两种API(方法聊天.postMessage)传入的webhook提供相同的选项来格式化消息,包括标记和附件。在

提示:如果要在附件中使用标记,请确保添加字段“mrkdwn_in”并命名要在其中使用它的字段,否则Slack将忽略它。在

示例:

{
    "attachments": [
        {
            "title": "Title",
            "pretext": "Pretext _supports_ mrkdwn",
            "text": "Testing *right now!*",
            "mrkdwn_in": ["text", "pretext"]
        }
    ]
}

有关完整文档,请参见here。在

我发现我错在哪里了。在

我将消息传递给sc.api_call方法中的错误参数。在

我应该把它传递给sc.api_call(attachments=...)参数,而不是text参数。在

相关问题 更多 >