Bot提及的Sack事件API [英] Slack Event API for Bot Mentions
本文介绍了Bot提及的Sack事件API的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在使用Slack应用程序构建一个Slack机器人。我已成功地通过Event API授权并成功接收事件。
我正在尝试了解如何只监听对机器人的直接提及。
因此,当有人向公共或私人渠道发送消息,并且机器人被直接标记为@bot时,它应该触发一个事件
公有/私有闲置频道示例:
Daniel: Hi there bot (does not trigger)
Jeremy: @bot hi there (triggers Event API)
是否存在执行此操作的Slack事件?还是有其他方法可以做到这一点?我不想将其硬编码到我的服务器端应用程序中,因为那样我将收到许多不必要的事件。
推荐答案
您可以在应用配置中选择订阅团队事件或僵尸事件(事件订阅)。对于您的情况,我建议您订阅BOT活动。
然后您需要订阅事件类型。因为您希望您的机器人监听您想订阅的所有频道message.channels、message.groups、message.im和message.mpim。安装Slack应用时,不要忘记请求相应的作用域。
您的bot现在将接收在您的bot所属的任何渠道(公共、私有、直接消息、直接消息组)中发布的所有消息的事件请求。
作为最后一步,您必须筛选和分析这些事件请求,以便您的机器人只对@-提及做出反应。
更新2018年10月
Slack现在还支持一种特殊的事件类型,只允许您订阅机器人提及:app_mention
因此,如果您只想接收机器人提及,则不再需要订阅任何其他事件(message.channels
、Message.group、message.mpim
)。
但是,如果您还想向您的机器人发送直接消息,您仍然需要订阅message.im
。
这篇关于Bot提及的Sack事件API的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文