接收电子邮件并将其移至sidekiq队列

问题描述 投票:0回答:1

我的网站上有一个消息传递应用程序应用程序(前端+ API),用户可以在其中发送消息。

目前,每当通过表单输入消息并发送到我的API时,我的后端的MessageService就会启动,并执行许多操作,包括向另一方发送电子邮件通知。

我想实现一个用户可以直接回复电子邮件的系统,不知何故,这将由我的应用程序的MessageService处理,就像消息是通过我的前端应用程序的POST发送一样。

为了做到这一点,我想到了以下TODO

  1. 首先设置一个自定义邮件域,如@mail.example.com
  2. 找一个服务(支付一些SASS或自己设置一些邮件服务器),这些服务将接收发送到该地址的电子邮件。理想情况下,它将基于云/ AWS
  3. 将所有传入的电子邮件转发到我的redis / sidekiq队列之一
  4. 用我最喜欢的语言(Ruby / Rails)编写的工作人员从我的队列中读取消息,然后我可以将所有逻辑处理转发到我的MessageService

你有关于如何实现2和3的提示(将收到的电子邮件发送到sidekiq队列)

amazon-web-services email message-queue sidekiq mail-server
1个回答
0
投票

不确定您是否使用Rails,Rails 6是下一个版本,它将包含与您描述的目的类似的ActionMailbox。

检查前沿指南https://edgeguides.rubyonrails.org/action_mailbox_basics.html虽然它没有发布,你可能正在使用其他东西,但你可以从它们的实现中获得想法。

在指南中提到了几个适配器,其中一个是使用Amazon Simple Email Service,您只需将接收电子邮件连接到应用程序中的端点,然后处理请求,保留数据供以后使用并安排工作人员,例如:MessageServiceWorker.perform_async(message.id)

© www.soinside.com 2019 - 2024. All rights reserved.