1

我有一些 Python 代码(使用 Github 上的 python-civicrm)使用 external/rest.php 调用在 CiviCRM/Drupal 站点中创建一个新的邮件。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)
4

1 回答 1

1

我找到了各种各样的答案。

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

我采用的解决方案是使用此处调用返回的结果中的“id”来删除 MailingJob:

civicrm_api.delete('MailingJob', results[0]['api.mailing_job.create']['values'][0]['id'])
于 2014-10-08T15:24:36.977 回答