为什么Civicrm Create Mailing在“计划”状态下创建它?

时间:2014-10-07 08:46:53

标签: python rest civicrm

我有一些Python代码(在Github上使用python-civicrm),它使用external / rest.php调用在CiviCRM / Drupal站点中创建一个新的Mailing。 Python代码设置'created_id','name','subject','body_html'和'body_text'属性,如下所示。

邮件已创建并在“草稿/未安排”列表中可见,但具有“预定”状态和“今天”的计划日期。我怎么能阻止它这样做:我现在需要它是'未预定的',没有预定的日期。

这是主叫代码:

params = {
    u'name': template.name,
    u'subject': template.subject,
    u'created_id': template.from_id,
    u'body_html': template.html,
    u'body_text': template.plain,
    u'url_tracking': u'1',
}
try:
    results = civicrm.create(u'Mailing', **params)

1 个答案:

答案 0 :(得分:1)

我找到了各种答案。

用于在CiviCRM中创建邮件对象的API设置会自动将提供的调用参数合并到一个值为'1'的密钥'api.mailing_job.create',这是一个Civi API指令,用于链接创建邮件作业邮件模板是成功的。这种行为是故意的,但应该是可以覆盖的。截至目前,我还没有发现如何覆盖它(通过HTTP post请求)。

我采用的解决方案是在调用返回的结果中使用'id'删除MailingJob:

civicrm_api.delete('MailingJob', results[0]['api.mailing_job.create']['values'][0]['id'])