gpt4 book ai didi

ruby-on-rails - 在 Rails 中使用 sidekiq,我如何向一群用户发送消息,每个用户都有他们想要接收的唯一时间?

转载 作者:可可西里 更新时间:2023-11-01 11:24:50 25 4
gpt4 key购买 nike

嘿,我有一个 Rails 应用程序和一群用户,我想每天在用户选择的首选本地时间向他们发送一条消息。 (消息是文本、电子邮件或聊天机器人通知。)

我相信我可以在我的用户模型中添加一些东西,允许在首选时间每 24 小时执行一次,但我不确定具体如何实现,我也不知道如何删除这些队列中的作业,例如,如果用户更改了他们的首选时间或他们想要一起禁用消息。

关于我如何做到这一点有什么想法吗?

最佳答案

您的应用程序托管在哪里?您可以拥有每小时(或每 10 分钟)运行一次的 cron 任务或调度程序 (Heroku)。它将在用户首选项表中查询,搜索此时(或在此时附近的范围内,例如接下来的 10 分钟)想要接收电子邮件的用户。

time = Time.now
@users = User.include(:settings).where(“settings.receive_email_at between ? and ?”, time, time + 10.minutes)

您可能需要进行一些更改来处理时区并避免发送重复的电子邮件,但这只是一个想法。

关于ruby-on-rails - 在 Rails 中使用 sidekiq,我如何向一群用户发送消息,每个用户都有他们想要接收的唯一时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48668986/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com