【问题标题】:Ruby chat bot command cooldown [closed]Ruby 聊天机器人命令冷却时间 [关闭]
【发布时间】:2017-09-08 12:58:41
【问题描述】:

我正在使用 Ruby 中的 discordrb gem 为 discord 服务器编写一个机器人。如何防止机器人(和用户)在聊天频道中发送垃圾邮件命令?我正在考虑将某些命令置于 5 分钟的冷却时间,但我能想到的唯一方法是使用 sleep,但这会阻止机器人在此期间接受其他命令。

有人有什么建议吗?

【问题讨论】:

    标签: ruby bots discord


    【解决方案1】:

    不确定您的代码是什么样的,但您可以这样做:

    用一些旧的时间值初始化@last_reply_time,然后在每次响应之前:

    if Time.now >= @last_reply_time + 300  #(seconds)
      # Reply
      # ...
      @last_reply_time = Time.now # update the @last_reply_time last
    end
    

    显然,您可以扩展它以检查多个变量,或每种回复类型的时间列表,并使逻辑更加复杂。

    【讨论】:

      猜你喜欢
      • 2017-07-08
      • 2021-06-17
      • 2019-06-28
      • 2019-12-29
      • 2017-11-21
      • 2018-09-18
      • 2021-03-11
      • 2019-03-11
      • 1970-01-01
      相关资源
      最近更新 更多