我已经使用 sendgrid 和 actionmailer 通过 rails 应用程序发送了电子邮件,我也收到了邮件。但是我想在我的 rails 应用程序中发送 sendgrid 的电子邮件的状态(打开、发送、退回……),以便我可以将特定电子邮件的响应保存在我的数据库中。
我已关注: https ://github.com/stephenb/sendgrid 用于发送电子邮件,它对我有用。
我已经使用 sendgrid 和 actionmailer 通过 rails 应用程序发送了电子邮件,我也收到了邮件。但是我想在我的 rails 应用程序中发送 sendgrid 的电子邮件的状态(打开、发送、退回……),以便我可以将特定电子邮件的响应保存在我的数据库中。
我已关注: https ://github.com/stephenb/sendgrid 用于发送电子邮件,它对我有用。
要获取已发送电子邮件的状态,请使用此处所述的 sendgrid webhook
设置完成后,sendgrid 将通知您的 url 以获取以下事件:
您应该为您的应用设置事件 webhook。完成后,您将收到以下格式的 POST 到您的应用程序:
{
"email":"foo@bar.com",
"timestamp":1322000095,
"unique_arg":"my unique arg",
"category": "some_category",
"event":"delivered"
}
由于您使用的是 Rails,因此您还应该查看GridHook。SendGrid 没有正式支持它,但是开源社区中有很多人在致力于它。有了它,您将能够执行以下操作:
Gridhook.configure do |config|
# The path we want to receive events
config.event_receive_path = '/sendgrid/event'
config.event_processor = proc do |event|
# event is a Gridhook::Event object
EmailEvent.create! event.attributes
end
end