【问题标题】:Mailgun Batch sending doesn't work with personalised dataMailgun 批量发送不适用于个性化数据
【发布时间】:2021-09-03 02:35:03
【问题描述】:
   var recipients = ['ertemishakk@gmail.com']
    var recipientVars = {
        "ertemishakk@gmail.com": {
            "first": "Ertem",
            "productImage": "https://ojeaustralia.s3.ap-southeast-2.amazonaws.com/IMG_4825.jpg1602122333765",
            "productName": "Black Marble",
            "productLink": "https://www.ojeaustralia.com.au/shop/Black-Marble/5f7af208ea0e37001763a350"
        }
    }


    var data = {
        sender: 'ojeaustralia.com.au',
        from: 'OJE AUSTRALIA <support@ojeaustralia.com.au>',
        to: recipients,
        subject: 'Did you forget something?',
        template: 'abandonedcart',
        "X-Mailgun-Recipient-Variables": JSON.stringify(recipientVars) 
    };

    mailgun.messages().send(data, function (error, body) {
        console.log(body);
    });

我无法使用变量发送批量电子邮件。我不需要创建邮件列表,因为这只是在电子商务网站上检查废弃购物车的一项 cron 工作。我需要为将物品留在购物车中的人发送自定义电子邮件。但是,发送批量电子邮件不起作用,并且 API 中没有很好地记录。

【问题讨论】:

    标签: node.js mailgun


    【解决方案1】:

    感谢您联系 Mailgun 支持。

    为了更清楚地说明,您可以使用带有提供变量的 X-Mailgun-Variables 标头使用自定义变量来处理批量电子邮件。当您尝试将模板功能与批处理集成时,就会出现问题。模板(带有把手支持)和批处理各自提供变量的方法略有不同:

    为了使用带有把手的对象数组,该数组必须与您的初始 POST 请求一起传递。不幸的是,在这种情况下,从收件人变量中引用数组将不起作用。这是由于 Recipient Variables 在引用 Recipient Variables 时如何将数据类型从数组更改为字符串。

    Handlebars 需要一个数据数组,但是在进行 POST 时,自定义接收者变量数据将在我们这边转换为字符串。所以问题是批处理和模板还没有很好地集成。批量消息传递在功能方面非常完善,但模板仅在我们这边的第一次迭代中。我们正在考虑在未来对模板进行改进,包括更轻松地与批处理消息集成,但目前还没有时间表。

    您可以仅使用“h:X-Mailgun-Variables”属性在车把中设置主题,收件人变量不是必需的。

    如果您有任何其他问题,请告诉我们。

    【讨论】:

      【解决方案2】:

      简而言之,您不能将 X-Mailgun-Recipient-Variables 与模板一起使用。很高兴看到它在文档中的某处被提及

      【讨论】:

      • 它回答了这个问题:如何使用变量发送批量电子邮件?你不能!感谢您加入@Dmitrii
      猜你喜欢
      • 2019-11-18
      • 1970-01-01
      • 2013-10-27
      • 2016-07-03
      • 2018-07-30
      • 2015-09-15
      • 2018-09-05
      • 2013-04-19
      • 2016-12-09
      相关资源
      最近更新 更多