如何生成已解决问题的定制电子邮件或消息

是否可以当一个主题被标记为“已解决”时,自动发送一封定制的电子邮件或消息?如果可以,该如何操作?

我们正尝试将其用于营销,并确定客户对解决方案的满意度。

您好 @ianm

没有内置的解决方案。这需要一个插件或自定义脚本。

如果您懂一些编程,后者使用已解决事件 webhook 会相当容易。

步骤如下:

  1. /admin/api/web_hooks/ 中创建 webhook

  2. 创建一个接收 webhook 的脚本。PHP 示例可以在这里找到:Use Discourse webhooks with PHP
    您需要确保 X-Discourse-Event 标头设置为 accepted_solution

  3. Webhook 负载包含可用于您要发送的消息的信息:
    nameusername:标记为解决方案的帖子的作者
    cooked:标记为解决方案的帖子的 HTML 内容
    topic_id:主题的 ID :upside_down_face:

  4. 然后,您可以返回 /t/[topic_id].json[^solution_info] 的数据。
    有几种方法可以获取主题的作者:

  • [post_stream][posts][0] 包含作者的数据:[id][name] [username] 等。

  • [details][created_by] 也将包含此信息。

  1. 使用正确的负载向 /posts.json 发送 POST 请求,将 PM 发送给主题的作者。
    有关 POST 请求的更多信息:Discourse API Docs

概念验证视频:

[^solution_info]:/t/[topic_id].json 端点还在 [accepted_answer] 中包含与解决方案相关的数据。