
这份文件概述了我们的客户使用 Bird 进行一般集成的常见方式。这些集成涵盖了基本主题,如“我如何发送电子邮件?”和“我如何知道电子邮件的状况?”
本文档概述了客户使用 Bird 进行一般集成的常见方法。 这些集成涵盖了诸如“我如何发送电子邮件?”和“我如何知道电子邮件发生了什么事?”这样的基本主题。 如果您正在从 Postfix、Sendmail 或 Exim 过渡,此文档应解释有关发送和报告电子邮件基础知识的所有信息。 本文档的其余部分假设您已经拥有一个现有的 SparkPost 账户。
我如何发送电子邮件?
Bird 将以几种方式接受传输邮件。到目前为止,最常见的是 SMTP(简单邮件传输协议),Bird 展现自己为任何其他安全电子邮件代理在端口 587 上。 如果您当前有生成或邮件合并软件创建要发送的电子邮件,Bird 将其作为标准 SMTP 消息接受并进行投递。 您将需要一个具有有效 TLS 证书的系统,可以生成 SMTP 消息并通过端口 587 发送。Postfix、Sendmail 和 Exim 都本身具备此功能。
示例 1:
您有一个 Web 服务器,生成的合并消息通过 Postfix 进行电子邮件投递。
· 调整 Web 服务器的生成软件,以将 SMTP 消息发送到您分配的 SparkPost 服务器,而不是 Postfix 服务器
· 真的就是这么简单
示例 2:
您有一些管理代码需要使用本地服务器的“邮件”功能。
· 如果您使用的是 Sendmail,请编辑 /etc/mail/sendmail.mc 文件以添加“smart-host”定义。
例如:define(`SMART_HOST’,`smtp.MyMessageBirdServer.com’)
· 如果您使用的是 Postfix,请编辑 /etc/postfix/transport 文件以添加 smtp 中继定义。
例如:* smtp:MyMessageBirdServer.com
· 确保启用了 TLS 并将您的外发端口设置为 587。
· 应用更改并重新启动本地邮件服务
· 执行管理代码,邮件将路由到 MessageBird 进行投递
REST 注入怎么办?
对于使用 HTTP(S) 在其网络中传输数据的客户,将消息转换为 SMTP 可能会很麻烦。Bird 拥有一个全面的 REST API,可以通过 HTTPS 接受 JSON 模板、收件人列表和替换数据,然后将其转换为生成的(合并的)电子邮件,通过标准 SMTP 发送到世界各地。这在将生成工作从 Web 服务器卸载到邮件引擎时特别有用。
示例:
您的服务器每天为 50,000 个收件人生成通讯,合并个人数据,然后通过 Postfix 单独发送。
· 为收件人、替换数据和内容模板创建 JSON 对象。
· 使用 REST API 将 JSON 对象 POST 到 Bird 的 Transmission API。这么做将生成过程卸载到 SparkPost 以实现更快的投递。
· 您甚至可以将 JSON 放入文件中并使用 cURL:
curl -v -H "Content-Type: application/json" -X POST \ https://api.bird.com/api/v1transmissions -d@./newsletter.json
我如何获取投递信息?
Bird 收集大量投递信息,并以 JSON 格式向您提供,可以通过 webhook“推送”或通过 API 调用“拉取”。一个投递的数据看起来如下:
{ "campaign_id":"Welcome_Letter", "customer_id":"108", "delv_method":"esmtp", "event_id":"84769964978165188", "friendly_from":"bounce@sp-send.com", "ip_address":"50.116.50.117", "ip_pool":"default", "message_id":"00046a82565a6d39451a", "msg_from":"abc-bounces-108@sp-send..com", "msg_size":"2164", "num_retries":"0", "queue_time":"1759", "raw_rcpt_to":"fakespark+32@deadboltemail.com", "rcpt_meta":{ }, "rcpt_tags":[ ], "rcpt_to":"fakespark+32@deadboltemail.com", "routing_domain":"deadboltemail.com", "sending_ip":"52.38.47.118", "subject":"Welcome Letter Template", "tdate":"2018-01-10T21:15:24.000Z", "template_id":"welcome-letter", "template_version":"5", "transmission_id":"84769964922735103", "type":"delivery", "timestamp":"2018-01-10T14:15:24.000-07:00" }
这可能比您在 Postfix 日志中看到的数据要多得多,而且已经是一个易于消费的格式。如果需要,将 JSON 数据转换为 Postfix 日志格式是相对简单的。交付、退回、拒绝、垃圾邮件投诉、打开、点击和延迟数据都可以用相同的方法读取。
示例:
1) 您通常将 Postfix 日志导出到 Excel,以便进行排序和分析。
A) 执行 message_events API 调用,并通过 JSON2CSV 处理生成的 JSON 数据。
2) 您喜欢将 Postfix 日志转换为 JSON,然后将其导入 Web 服务进行阅读和分析。
A) 使用 MessageBird 度量 API 调用 SparkPost 以获取您需要的数据,并自动导出为 JSON。
3) 您有一个单独的过程,可以实时跟踪和解析日志,并更新一个单独的收件人数据库。
A) SparkPost 可以提供一个实时 webhook,可以为您的过程提供垃圾邮件投诉人和退订者专门用于此目的。实施非常简单。
-Tom