当用户与我的应用程序漫游器用户打开直接消息窗口时收到通知

时间:2019-04-24 21:07:10

标签: node.js slack slack-api

我有一个具有Bot用户的Slack应用,当用户打开Bot用户的应用的Direct Message窗口时,我想通过Slack Events API(使用@slack/events-api官方NPM软件包)得到通知( UC:向他发送欢迎消息。

我需要im_open事件,但某种程度上它没有触发。

我在应用的设置中对其进行了配置:

enter image description here

然后定义以下代码:

const { createEventAdapter } = require('@slack/events-api');
const slackEvents = createEventAdapter('some-secret);

slackEvents.on('im_open', async (event) => {
    console.log(`Received a im_open event`);
});

const port = 5000;
slackEvents.start(port).then(() => {
  console.log(`server listening on port ${port}`);
});

但是它永远不会触发。

我有app_mentionmessage事件的侦听器,它们工作正常,但不知何故。

知道为什么吗?

1 个答案:

答案 0 :(得分:1)

我认为您误解了触发im.open事件的原因。

它是在首次建立新的直接消息渠道时触发的,而不是在有人单击现有信道以查看其消息时触发。默认情况下,应用程序通道是在安装应用程序时创建的。您可能看不到它被触发,因为它是在应用程序的事件处理程序可以激活之前创建的。

所以这行不通,据我所知,也没有替代解决方案来解决您的问题。松弛事件只是不能在用户界面级别上工作。