【问题标题】:Can I send richly-formatted Slack messages as a Bot and not as a Webhook?我可以将格式丰富的 Slack 消息作为 Bot 而不是作为 Webhook 发送吗?
【发布时间】:2016-09-09 14:11:02
【问题描述】:

我开始用 Python 编写一个 Slack 机器人,但当我找不到使用两种方法中的任何一种发送格式丰富的消息的方法时就停止了:

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 方法做到这一点,但使用上述方法是否可行?

【问题讨论】:

  • 您能否澄清一下您所说的格式丰富的消息是什么意思?
  • 可以在here找到大量好信息,您可以在浏览器中尝试here

标签: python slack-api slack


【解决方案1】:

API(方法 chat.postMessage)和传入的 webhook 都提供了相同的选项来格式化您的消息,包括标记和附件。

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

例子:

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

有关完整文档,请参阅 here。

【讨论】:

    【解决方案2】:

    我发现我哪里出错了。

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-01-23
      • 1970-01-01
      • 2020-11-06
      • 1970-01-01
      • 2021-07-30
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多