【问题标题】:Slackbot to maintain user state for asking his detailsSlackbot 维护用户状态以询问他的详细信息
【发布时间】:2021-09-23 10:57:46
【问题描述】:

我正在尝试构建一个 Slack 机器人,我希望机器人在其中询问用户的详细信息,例如:

问题 1:请输入您的姓名

问题 2:请输入您的电子邮件 ID

问题3:请输入您的地址

Slackbot 正在调用一个 API,为此我在事件和订阅中添加了 API URL,以便在收到消息时调用 API

在 API 响应和消息中,我还返回了一个字段,期望 Slackbot 在下一个 API 请求中再次返回(每当为同一用户再次调用 API 时)。

注意:该字段是必需的,因为在此基础上维护后端的用户状态

有什么办法可以做到吗?

【问题讨论】:

  • 也许你可以使用模态,一次捕获信息,api.slack.com/surfaces/modals
  • @SuyashGaur 我检查了文档并发现:模态返回字段 private_metadata,但在 view_submission 和 block_actions 事件中返回到应用程序。在 event_callback 的情况下我想要这个。
  • 这只是为了模态,但我的建议是,为了收集数据,你能准备一个模态表单并一次收集吗?
  • 虽然可以使用modals来完成,但是我的用例不同,后面可能会引入更多问题,所以我想通过维护用户状态来做到这一点

标签: bots slack slack-api


【解决方案1】:

您必须将用户状态存储在缓存或数据库中。
使用“Redis”缓存是一种易于实施的解决方案。

您可以使用哈希(键值对)来存储数据。
将 slackID 存储为键,将状态(可以是 JSON 对象)存储为值。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-06-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-10
    • 1970-01-01
    相关资源
    最近更新 更多