我构建了一个receives events的应用。
默认情况下,范围channels:history
可让其接收添加应用的用户的所有公共频道中所有邮件的事件。
理想情况下,用户可以在应用设置中将其限制为仅限某些频道。 (应用程序收到的任何事件都将成为世界可读的。)
现在我看到两个选项:
消息事件包含通道ID(不是名称)。因此,代码可以在通道上进行过滤,假设有一种方法可以设置它并且用户信任它。
创建a bot user(即使该应用是只读的)用户可以添加到特定渠道。
有更好的方法吗?
答案 0 :(得分:2)
如果您不想使用僵尸用户(您的选项2),唯一的方法是过滤掉您应用中不需要的频道的消息。您将收到每条新消息的消息事件(包括从您的应用发送的消息)。
消息事件已包含channel ID
,因此您可以根据该事件轻松过滤。
示例:(Source)
{
"type": "message",
"channel": "C2147483705",
"user": "U2147483697",
"text": "Hello world",
"ts": "1355517523.000005"
}
事件设置中没有允许您预先选择频道的参数。但由于这似乎是一个反复出现的问题,我建议向Slack团队发送一个功能请求。