كيفية إنشاء بريد إلكتروني أو رسالة مخصصة عند حل المشكلة

هل من الممكن إرسال بريد إلكتروني أو رسالة مخصصة تلقائيًا عند تمييز موضوع على أنه تم حله؟ إذا كان الأمر كذلك، فكيف؟

نحن نحاول استخدامه للتسويق وتحديد مدى رضا العملاء عن الحل.

مرحباً @ianm!

لا يوجد حل مدمج لهذا. سيتطلب الأمر إضافة (plugin) أو سكربت مخصص.

إذا كنت تعرف القليل من البرمجة، فإن الخيار الأخير سيكون سهلاً جداً باستخدام خطاف ويب (webhook) للأحداث المحلولة.

ستكون الخطوات كالتالي:

  1. إنشاء خطاف الويب في /admin/api/web_hooks/

  2. إنشاء سكربت سيستقبل خطاف الويب. مثال PHP يمكن العثور عليه هنا: Use Discourse webhooks with PHP
    ستحتاج إلى التأكد من أن رأس X-Discourse-Event مضبوط على accepted_solution.

  3. حمولة خطاف الويب تحتوي على معلومات يمكن استخدامها للرسالة التي تريد إرسالها:
    name و username: مؤلف المنشور الذي تم تحديده كحل
    cooked: محتوى HTML للمنشور الذي تم تحديده كحل
    topic_id: معرف الموضوع :upside_down_face:

  4. يمكنك بعد ذلك إرجاع بيانات /t/[topic_id].json [1].
    هناك عدة طرق للحصول على مؤلف الموضوع:

  • [post_stream][posts][0] يحتوي على بيانات المؤلف: [id], [name], [username], إلخ.

  • [details][created_by] سيحتوي أيضاً على هذه المعلومات.

  1. قم بإجراء طلب POST إلى /posts.json مع الحمولة المناسبة لإرسال رسالة خاصة لمؤلف الموضوع.
    مزيد من المعلومات حول طلب POST للمنشور: Discourse API Docs

فيديو إثبات المفهوم:


  1. نقطة النهاية /t/[topic_id].json تحتوي أيضاً على بيانات متعلقة بالحل في [accepted_answer]. ↩︎