Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何轻松发送活动监视器模板的预览电子邮件?_Python_Django_Campaign Monitor_Createsend - Fatal编程技术网

Python 如何轻松发送活动监视器模板的预览电子邮件?

Python 如何轻松发送活动监视器模板的预览电子邮件?,python,django,campaign-monitor,createsend,Python,Django,Campaign Monitor,Createsend,我已经将我们自己的一些电子邮件模板迁移到Campaign Monitor的系统中。我想编写一个例程来发送所选模板的预览电子邮件。我正在使用Python() 看起来我必须创建一个具有send\u preview功能的活动。但是,我还需要创建一个列表,以便有一个仅用于此预览目的的活动对象。这感觉不必要/尴尬。我感觉自己像掉进了兔子洞。有没有更简单的方法发送预览电子邮件?我就此事联系了Campaign Monitor支持部门,并收到了创建活动所需的信息和发送测试电子邮件的列表。我认为列表可以为空,因为

我已经将我们自己的一些电子邮件模板迁移到Campaign Monitor的系统中。我想编写一个例程来发送所选模板的预览电子邮件。我正在使用Python()


看起来我必须创建一个具有
send\u preview
功能的活动。但是,我还需要创建一个列表,以便有一个仅用于此预览目的的活动对象。这感觉不必要/尴尬。我感觉自己像掉进了兔子洞。有没有更简单的方法发送预览电子邮件?

我就此事联系了Campaign Monitor支持部门,并收到了创建活动所需的信息和发送测试电子邮件的列表。我认为列表可以为空,因为您在
发送\u预览
期间明确指定了一封电子邮件。在我的例子中,我在列表和活动的名称中插入一个GUID,以保证名称的唯一性

一旦发送电子邮件,您可以立即删除这些短暂的活动和列表。确保先删除活动,因为无法删除与活动关联的列表

cm_token = {'api_key': settings.CAMPAIGN_MONITOR_ADMIN_API_KEY}
campaign_monitor = CreateSend(cm_token)
cm_list = List(cm_token)
list_id = cm_list.create(email_client_id, "Temporary empty list for preview {}".format(uuid.uuid1()), None, None, None)
# cm_subscribers = []
# for recipient in recipient_list:
#     cm_subscriber = Subscriber(cm_token)
#     cm_subscriber.add(list_id, recipient[0], "Preview recipient {}".format(uuid.uuid1()), None, None)
#     cm_subscribers.append(cm_subscriber)
cm_campaign = Campaign(cm_token)
cm_campaign.create_from_template(
    customer_account.email_client_id,
    subject,
    "Temporary campaign for preview {}".format(template.id),  # name
    from_email,  # from_name
    from_email,
    from_email,  # reply_to
    [list_id],  # list_ids
    None,  # segment_ids
    template.template_id,
    {}  # template_content
)
cm_campaign.send_preview(recipient_list[0])
# delete temporary list and campaign
cm_campaign.delete()
cm_list.delete()

问同样的问题,你会得到适当的反馈。这不是一个概念性的问题,不是一个评论。出于这个原因,我没有包括源代码,这可能会让人们把注意力从真正的问题上移开。不过,我会尝试使用一些代码进行codereview。