Cómo generar correos electrónicos o mensajes personalizados cuando se resuelve un problema

Hola @ianm!

No hay una solución integrada para esto. Requeriría un plugin o un script personalizado.

Si sabes un poco de programación, lo último sería bastante fácil usando un webhook de evento resuelto.

Los pasos serían:

  1. Crear el webhook en /admin/api/web_hooks/

  2. Crear un script que reciba el webhook. Un ejemplo en PHP se puede encontrar aquí: Use Discourse webhooks with PHP
    Necesitarás asegurarte de que la cabecera X-Discourse-Event esté configurada como accepted_solution.

  3. La carga útil del webhook contiene información que se puede usar para el mensaje que deseas enviar:
    name y username: el autor de la publicación marcada como solución
    cooked: el contenido HTML de la publicación marcada como solución
    topic_id: el ID del tema :upside_down_face:

  4. Luego puedes devolver los datos de /t/[topic_id].json[1].
    Hay algunas formas de obtener el autor del tema:

  • [post_stream][posts][0] contiene los datos del autor: [id], [name], [username], etc.

  • [details][created_by] también contendrá esta información.

  1. Realiza una solicitud POST a /posts.json con la carga útil adecuada para enviar un MP al autor del tema.
    Más información sobre la solicitud POST de publicación: Discourse API Docs

Prueba de concepto en video:


  1. El endpoint /t/[topic_id].json también contiene datos relacionados con la solución en [accepted_answer]. ↩︎