![](/img/trans.png)
[英]Is it possible to listen for message_deleted in a Slack Bolt app?
[英]is there any way to send message to thread in slack bolt?
我正在尝试在 python 中完成本教程。
https://api.slack.com/tutorials/tracks/responding-to-app-mentions
但是,它只发送到“通道”,而不是通道中的消息“线程”(用户提到机器人的消息)。
此外,它没有显示如何在应用程序中查看提到的消息信息(如消息字符串、message_ts 等)。
我可以看到提到的消息和消息 thread_ts 吗?
另外,这是我在 bot 中的代码,该消息似乎是 None
@app.event("app_mention")
def event_test(say, message):
pass
if __name__ == "__main__":
SocketModeHandler(app, app_token).start()
从app_mention
事件接收的有效负载包含您需要的所有详细信息。
https://api.slack.com/events/app_mention
示例: https ://api.slack.com/events/app_mention#app_mention-event__example-event-payloads__standard-app-mention-when-your-app-is-already-in-channel
{
"token": "ZZZZZZWSxiZZZ2yIvs3peJ",
"team_id": "T061EG9R6",
"api_app_id": "A0MDYCDME",
"event": {
"type": "app_mention",
"user": "U061F7AUR",
"text": "What is the hour of the pearl, <@U0LAN0Z89>?",
"ts": "1515449522.000016",
"channel": "C0LAN2Q65",
"event_ts": "1515449522000016"
},
"type": "event_callback",
"event_id": "Ev0LAN670R",
"event_time": 1515449522000016,
"authed_users": [
"U0LAN0Z89"
]
}
Slack body,event args会有线程id,所以可以使用。
@app.event("app_mention")
def event_test(say, body):
event = body["event"]
thread_ts = event.get("thread_ts", None) or event["ts"]
say(text="Hello", thread_ts=thread_ts)
if __name__ == "__main__":
SocketModeHandler(app, app_token).start()
参考:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.