【问题标题】:How to send a message with a random @mention on Slack using BotKit?如何使用 BotKit 在 Slack 上发送带有随机 @mention 的消息?
【发布时间】:2017-07-21 08:31:45
【问题描述】:

我是开发机器人并尝试在 Slack 中使用 BotKit 每周在 #test 频道中提及随机用户的新手。这是我到目前为止的代码:

controller.hears('interactive', 'direct_message', function(bot, message) {
  // send webhooks

  bot.configureIncomingWebhook({url: 'https://hooks.slack.com/services/my/hook/uri'});
  bot.sendWebhook({
    text: 'Hey!',
    channel: '#test',
  },function(err,res) {
    // handle error
  });
});

现在这会发送一条消息“嘿!”当我直接向机器人“交互”发送消息时,转到#test 频道,这很好。如何获取用户的所有用户名,并将它们随机化,以便文本输出如下:text: '"Hey " + "@" + random.username + " !"',。我也希望每周发送此消息。

有什么想法吗?

【问题讨论】:

    标签: javascript bots slack-api slack botkit


    【解决方案1】:

    Slack 提供users.list 函数,如下所述:Slack API users.list

    members 数组包含 user 对象。您可以使用user[0].name 访问您想要@提及的第一个用户名。在他们提供的演示中,这将是@bobby。

    可能会出现潜在问题,因为它以“无特定顺序”返回列表...您可能会将其存储在单独的数据库中,如果元素是新的并根据您的数据库条目随机化,则可以添加这些元素。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-08-08
      • 2021-11-15
      • 2017-06-13
      • 2020-09-28
      相关资源
      最近更新 更多