Slack Bot - Python发送Markdown消息

3

我正在尝试使用SlackBot在Slack中发送Markdown消息,但我找不到相关文档。我只找到了这个:

response = client.chat_postMessage( 
    ...:     channel='#testing-bot', 
    ...:     text="Hello world! <@USerID> \n\n - a \n-b" 
    ...:     
    ...:     )  

我想发送Markdown消息,而不是纯文本消息。

我尝试了:

    ...:     channel='#testing-bot', 
    ...:     mkdwn="Hello world! <@UNVD64N02> \n\n - a \n-b" 
    ...:     
    ...:     )  

但是它没有起作用。求助。
2个回答

3
你需要发送频道ID而不是频道名称(#testing-bot)。频道ID是由字母和数字组成的字符串。
更新: 你也可以使用 Block Kit,它是 Slack 应用程序的 UI 框架。它带有一个 Block Kit 构建器,可用于实时查看 block 代码。下面添加了两个参考链接:
response = client.chat_postMessage(
    channel="", # channel ID
    text="",
    blocks=[
        {
            "type": "section",
            "text": {
                "type": "mrkdwn",
                "text": "Hello world! <@UNVD64N02> :tada: \n\n - a \n-b"
            }
        }
    ]
)

输出:
Blockkit

参考资料:


我想发送Markdown消息,频道名称正常。 - Charanjit Singh
你使用 mkdwn 得到了什么输出?你是否尝试过使用 block-kit? - stud3nt
太好了,我还更新了答案,并提供了 Block Kit 参考。如果有帮助,请点赞。 - stud3nt

1

我看到您正在使用Python的SDK,chat_postMessage() API。根据文档,关键字mrkdwn采用布尔值(默认为True)。

例如:下面的代码将发送消息:"Hello, World!"

response = client.chat_postMessage(
    channel="random",
    text="Hello, *World!*",
    mrkdwn=True,
)

了解更多信息格式化,请参见使用 mrkdwn 进行基本格式化


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接