我有一个使用botkit构建的slack bot,它正在侦听某个频道中用户的上传文件。我正在尝试处理同时上传的多个图像,以便让我的机器人等待处理所有图像,然后再继续响应每个图像。
我的应用程序设置为侦听file_shared,file_created和file_public事件,但我只看到file_shared曾被文件上传触发。我想在file_shared之前会触发file_created,但事实并非如此。
controller.on('file_created', function(res) {
console.log("created!");
});
controller.on('file_public', function(res) {
console.log("public!");
});
controller.on('file_shared', function(res) {
console.log("shared!!");
});
在听这些事件时,我只能“分享!!”但不是“公开的!”或“创造!”在文件上传中,只有在处理完文件后才会触发共享。此外,我的中间件在文件上传中捕获两条收到的消息,一条只有文件ID,另一条包含完整的文件信息。这将有所帮助,但它通常首先打印完整对象,然后打印ID秒,而不是指示处理图像的唯一ID对象。
此输出的示例如下:
RCVD: { id: 'FAG4C3VNH',
created: 1525114400,
timestamp: 1525114400,
... more file object stuff }
RCVD: { id: 'FAG4C3VNH' }
shared!!
我希望找到一种方法
a)跟踪一次上传的文件数量或
b)跟踪Slack正在处理文件的时间,以便等待它完成。
非常感谢任何资源或想法!