【问题标题】:Mandrill send API will queue email occasionallyMandrill 发送 API 偶尔会排队邮件
【发布时间】:2015-12-13 16:18:51
【问题描述】:

我的电子邮件有时会排队,而不是使用付费 Mandrill 帐户立即发送下载链接 - 有时它会快速发送。我希望它在调用 API 时发送。 Mandrill API 控制面板中没有错误。

这段代码大部分时间都通过 Heroku 上的节点服务器运行良好...我使用 'send_at' 参数 w 当前日期使用 javascript Date() 方法。如何始终如一地发送电子邮件 - 有时队列可能长达 1 小时 30 分钟。

// Text version of message
me_data.text += message;

// Html for message
me_data.html = results['html'];

// current Date for sending
var sendDate = new Date();

mandrill_client.messages.send(
    {"message": me_data, "async": async, "ip_pool": ip_pool, "send_at": sendDate}, 
    function (result) {
        console.log(result);
        //success 
    }, 
    function (e) {
        //_____________________________Error
        console.log('A mandrill error occurred: ' + e.name + ' - ' + e.message);
    }
);

【问题讨论】:

  • 你如何测量 1 小时 30 米的延迟? mandrill 是否在仪表板中报告了这一点?
  • 我正在使用 Heroku、Node Mandrill API 来发送()电子邮件,并且我有交易的时间戳、状态“已发送”和“_id”。此外,直到发送电子邮件后,我才在 Mandrill 的控制面板中看到传出消息。最后,我可以通过粘贴原始电子邮件来使用 gmail 标头分析工具查看延迟。你对如何确保它在我打电话时发送 - 或至少在短时间内发送有任何建议吗?感谢任何人的帮助!赞赏
  • 如果有人发现同样的问题,请在这里发帖,或者如果您有解决方案!谢谢
  • send_at 是一个可选参数。如果您想立即发送邮件,则不应通过。您可能还希望将 async 传递为 true 以获取消息传递状态(从您的示例中不清楚您是否已经这样做了)。

标签: api mandrill


【解决方案1】:

这个问题不再是问题。请忽略上面关于时间参数的帖子,因为我正在使用这个变量(显然是来自 API doc 的 "send_at")并且 Mandrill 正在发送。

这一定是时机的侥幸,因为我在启动生产应用程序之前支付了很短的时间。您必须在 Mandrill 中付费(设置积分)才能使用 send_at 参数 - 换句话说,从免费版本升级。可能需要一些时间才能生效。

自此问题以来,Mandrill 一直在完美运行,就像照明一样快。所以这对我的东西来说不再是问题了。

【讨论】:

    猜你喜欢
    • 2014-11-13
    • 2015-03-15
    • 1970-01-01
    • 2017-12-21
    • 2015-07-16
    • 1970-01-01
    • 2018-08-22
    • 2015-10-22
    • 2013-09-20
    相关资源
    最近更新 更多