读取传入的松弛消息

use*_*766 5 python python-2.7 python-3.x slack-api slack

在松弛通道中每 5 小时发布一次报告,我们需要从中排序/过滤一些信息并将其放入文件中,那么有什么方法可以连续读取通道或在该时间之前 5 分钟运行一些命令并捕获报告以备将来处理。

Eri*_*ken 2

是的,这是可能的。以下是解决方案的基本轮廓:

  • 基于脚本(例如Python)创建一个Slack应用程序,该脚本可以访问该频道的历史记录(例如具有channels:history权限范围)
  • 使用 cron 在需要的时间调用您的脚本
  • 该脚本读取频道历史记录(例如channel.history公共频道),过滤出所需内容,然后将报告存储为文件。

另一种方法是连续读取来自通道的每条新消息,解析触发器(例如发送该消息的特定用户或报告的名称),然后在报告出现时对其进行过滤和保护。如果您可以确定可靠的触发器,根据我的经验,这将是更稳定的解决方案,因为计划的报告可能会延迟。

对于该方法,使用Slack 的事件 API而不是 CRON 并订阅接收消息(例如公共频道的消息事件)。然后,Slack 会在每条新消息发布后立即自动将其发送到您的脚本。

如果您不熟悉创建 Slack 应用程序,我建议您学习Slack API 网站上优秀的官方文档教程来开始使用。

  • 抱歉,我不懂Python。另外,stackoverfow 不是一个编码服务,而是一个编码人员的论坛。查看 Slack 教程或 github 以获取有关其工作原理的示例。如果您需要有关现有代码片段的帮助,请随时在此处再次发帖。 (2认同)