如何通过IMAP协议接收电子邮件中的Rails 3
答
我不知道最好的,但一个简单的方法是使用Net::IMAP
。您可以编写rake
任务,并通过使用调度程序cron
定期轮询邮箱中的电子邮件。
所以你的设置是这样的:
- 库文件,该文件服务器作为
IMAP
客户的包装及其他相关操作,如处理电子邮件。 - 的
rake
任务,要求在电子邮件下载和使用上述包装处理它们。 - 调度(cron或任何其他的选择。我个人总是喜欢
cron
)的定期调用此rake
任务。
答
按ActionMailer
的文档的解决办法是让电子邮件转发到您的Rails应用程序,并实现UserMailer.receive(STDIN.read)
来处理电子邮件。
文档(Action Mailer Basics)不健全,对这种做法非常有说服力。它没有告诉应该在哪里实施呼叫,但我想这将在MTA级别。
此外,虽然我是新来的'的Ruby on Rails'和'Ruby',我不知道什么是使用'Rails'相比香草'Ruby'作为的好处。 – 2011-03-15 10:38:19
另一个想法,并不是我期待大量的,但我不喜欢为每封电子邮件调用程序的想法。我将使用'Net :: IMAP'实现一个'Ruby'应用程序来监听新电子邮件(并且不必为每个电子邮件连接到数据库)。 – 2011-03-15 10:41:16