使用松弛API将消息发布到松弛时,如何忽略表情符号?

时间:2020-03-04 10:35:18

标签: slack slack-api

我在应用程序中执行的POST api松弛:-

slack_client.api_call("chat.postMessage", channel=channel, text=response, as_user=False, username="Slack bot")

我遇到的问题是响应中可能包含错误日志,并且可能带有类似

的文字

/:hive:/ SomeError中的错误。...

当它发布到松弛状态时,它会将:hive:视为表情符号,并打印hive的表情符号而不是:hive:,我不希望这样。

如何执行此操作?我尝试将mrkdwn设置为false,但这没有帮助。有人可以帮我吗?

1 个答案:

答案 0 :(得分:1)

我认为您有两种选择:

  • 您可以直接将字符串格式设置为代码。然后,Slack将不会解析表情符号。

  • 您可以按块发送消息,这使您可以选择显式关闭表情符号。

示例

import slack
import os
import json

client = slack.WebClient(token=os.environ['SLACK_TOKEN'])

client.chat_postMessage(        
    channel='general',
    text='`Error in /:hive:/SomeError....`'
)

client.chat_postMessage(        
    channel='general',    
    blocks=json.loads("""
        [
            {
                "type": "section",
                "text": {
                    "type": "plain_text",
                    "text": "Error in /:hive:/SomeError....",
                    "emoji": false
                }
            }
        ]
    """)
)
相关问题