通过 REST 将收件人组添加到 CiviCRM 邮件中。如何?
Adding recipient Groups to a CiviCRM Mailing via REST.. how?
到目前为止,我已经能够创建一个新的 civi Mailing 对象并填充它,但令人困惑的是我在其中看不到用于指定邮件目标组的参数。
就上下文而言,我正在使用来自远程服务器的纯 REST api 处理 Civi。我有一个将自定义模板放到服务器上的解决方案;新问题是设置时间表和交付组,并启动发送。我正在使用来自 github 的 python-civicrm 库作为客户端的中介。
我假设发送是设置时间表的结果——也就是说,我不需要 API 调用来说 'send mailing'?设置 'sheduled date' == 'now' 安全还是我应该设置 'now + 1min' 或类似的日期?
这样就剩下设置交付组了。我们已经在数据库中定义了组,我想按名称指定组(最好能够提前验证组名是否是有效目的地,也许通过组名 -> id 查找)。
我认为 Mailing create 'groups' 可能有一个参数,它可以有键 'include' 和 'exclude';至少,Web 表单似乎就是这样做的。但是在 REST api 实现中没有提到它。
谁能指点一下?
我想你会在下面找到你需要的一切 link :
- 使用组 include/exclude 的 api 调用示例:https://gist.github.com/xurizaemon/6775471
- 关于将邮件实现为 api - http://forum.civicrm.org/index.php?topic=24075.0
的讨论
否则,如果还是不行,我建议你:
- 帮助在 CiviCRM 核心中添加此 api - 您可以在 irc #civicrm 上获得一些帮助(并查看 https://issues.civicrm.org/jira/browse/CRM-11023)
- 或者使用您需要的 api 创建一个扩展。它将自动可用于 REST。如果您还没有创建扩展,我建议您转到页面 http://wiki.civicrm.org/confluence/display/CRMDOC/Create+a+Module+Extension. It's quite straightforward with civix installed。
您需要查询数据库的table是civicrm_mailing_group
为了确认,问题是 (a) 我需要使用 groups[include]=array(ids) 正如 samuelsov 提到的那样,而且 (b) 我需要使用 json={ ...} 通过 REST 请求的形式,因为 HTTP 参数语法不支持嵌套数据。
到目前为止,我已经能够创建一个新的 civi Mailing 对象并填充它,但令人困惑的是我在其中看不到用于指定邮件目标组的参数。
就上下文而言,我正在使用来自远程服务器的纯 REST api 处理 Civi。我有一个将自定义模板放到服务器上的解决方案;新问题是设置时间表和交付组,并启动发送。我正在使用来自 github 的 python-civicrm 库作为客户端的中介。
我假设发送是设置时间表的结果——也就是说,我不需要 API 调用来说 'send mailing'?设置 'sheduled date' == 'now' 安全还是我应该设置 'now + 1min' 或类似的日期?
这样就剩下设置交付组了。我们已经在数据库中定义了组,我想按名称指定组(最好能够提前验证组名是否是有效目的地,也许通过组名 -> id 查找)。
我认为 Mailing create 'groups' 可能有一个参数,它可以有键 'include' 和 'exclude';至少,Web 表单似乎就是这样做的。但是在 REST api 实现中没有提到它。
谁能指点一下?
我想你会在下面找到你需要的一切 link :
- 使用组 include/exclude 的 api 调用示例:https://gist.github.com/xurizaemon/6775471
- 关于将邮件实现为 api - http://forum.civicrm.org/index.php?topic=24075.0 的讨论
否则,如果还是不行,我建议你:
- 帮助在 CiviCRM 核心中添加此 api - 您可以在 irc #civicrm 上获得一些帮助(并查看 https://issues.civicrm.org/jira/browse/CRM-11023)
- 或者使用您需要的 api 创建一个扩展。它将自动可用于 REST。如果您还没有创建扩展,我建议您转到页面 http://wiki.civicrm.org/confluence/display/CRMDOC/Create+a+Module+Extension. It's quite straightforward with civix installed。
您需要查询数据库的table是civicrm_mailing_group
为了确认,问题是 (a) 我需要使用 groups[include]=array(ids) 正如 samuelsov 提到的那样,而且 (b) 我需要使用 json={ ...} 通过 REST 请求的形式,因为 HTTP 参数语法不支持嵌套数据。