为什么松弛斜杠命令返回“ http_client_error”

时间:2020-01-31 19:26:55

标签: node.js chatbot slack slack-api

我正在尝试使用Bolt Framework构建一个非常简单的Slackbot。我正在使用ngrok在本地运行此命令,当我调用斜杠命令时,ngrok仅显示:

screengrab of ngrok screenshot of slack

根据Bot文档,该应用使用app.command()处理斜杠命令。这是我的代码的一部分:

const {App, LogLevel} = require("@slack/bolt");

const app = new App({
  token: "XXXX",
  signingSecret: "XXXX",
  logLevel: LogLevel.DEBUG
});

// The echo command simply echoes on command
app.command("/standup", async ({command, ack, say}) => {
  // Acknowledge command request

  ack();
  say(`${command.text}`);
  console.log("Entered into the app.command for /standUp");
});

在Slack中,斜杠命令的配置如下:

slack_setup

该机器人在与消息进行交互时可以工作,但只接收和响应Slash命令。我真的很陌生,因此任何信息都会很棒,或者只是朝着正确方向发展。

1 个答案:

答案 0 :(得分:5)

我能够找出问题所在。当我在上面尝试时,我的请求网址以../command结尾,但是它必须与../slack/events/的事件订阅的配置保持相同。

进行此更改后,我开始接收命令。据我所知,这在Slack的文档中没有得到很好的记录,但是我通过查看配置here和大量的试验和错误来弄清了问题。 :)