أبدأ اليوم العمل على سكريبت بايثون لنقل قائمة بريدية من Mailman2 (الأرشيف وملف config.pck) باستخدام واجهة برمجة تطبيقات Discourse فقط. إذا كان أي شخص مهتماً، فإن العمل جارٍ هنا، وسأقوم بتحديث هذا الموضوع مع تقدم العمل.
أي تعليقات حول ما يحتاجه الناس أو ملاحظات حول كيفية تحسين ذلك موضع ترحيب بالتأكيد
كيف يتعامل مع القوائم التي تكون فيها from_is_list مضبوطة على “تغيير المرسل” أو “تغليف الرسالة” (أو عند استخدام إعدادات DMARC المكافئة حصريًا)؟ هل يستطيع تحديد المستخدم الذي أرسل تلك الرسائل؟
شكرًا لك. إذا كان ذلك يساعد، فإن عنوان البريد الإلكتروني للمرسل الأصلي يظهر غالبًا (دائمًا؟) في رأسية “Cc:” للبريد الإلكتروني، على الأقل عندما تكون الخاصية from_is_list مضبوطة على Munge From.
ينطبق هذا على جميع الرسائل غير الملخصة المرسلة من القائمة. بالنسبة للإعدادات التي تنطبق فقط على الرسائل التي ينشر نطاق الحقل From: سياسة DMARC بقيمة p=reject أو p=quarantine، راجع وصف dmarc_moderation_action في قسم فلاتر المرسل.
إذا تم تعيينه على “تعديل الحقل From”، فإنه يستبدل عنوان الحقل From: بعنوان نشر القائمة للتخفيف من المشكلات الناجمة عن سياسات DMARC أو ما شابهها في النطاق الأصلي للحقل From:، ويضع العنوان الأصلي للحقل From: في حقل Reply-To:.
إذا تم تعيينه على “تغليف الرسالة”، فإنه يغلف الرسالة الأصلية كجزء فرعي MIME ضمن رسالة خارجية تحتوي على حقلي From: و Reply-To: كما هو موضح أعلاه.
لا أعتقد أن Discourse يوفر ميزة مماثلة. لم أرَ أي إعدادات للموقع تتطابق مع ذلك. وقد تصفحت جميع الإعدادات المتعلقة بالبريد الإلكتروني عدة مرات خلال الأيام القليلة الماضية، في سياق عملية هجرة مستمرة من Mailman2.
يعمل Discourse بشكل أساسي بنفس طريقة Mailman 2 مع إعداد from_is_list = Munge From — وبهذه الإعدادات، تكون كل رسالة بريد إلكتروني من قائمة Mailman بعنوان “From: listname@example.com” (بدلاً من “From: joebloggs@email.com”) — وبالمثل، تكون كل إشعار بريد إلكتروني من Discourse من نفس عنوان البريد الإلكتروني الخاص بالمنتدى (noreply@forum.example.com أو ما شابه).
لكنني لم أكن أسأل حقًا عن نسخ هذه الميزة في Discourse. [تحرير - كما أدركت - لقد رأيت ردك الثاني للتو!]
كان قصدي: عند تفعيل إعداد Mailman هذا، هل سيقوم سكريبتك باستيراد هذه الرسائل باعتبارها صادرة من مستخدم واحد في Discourse (عنوان بريده الإلكتروني هو listname@example.com)، أم أنه سيتمكن بدلاً من ذلك من تحديد المرسل الأصلي؟
للأسف، لدي أيضًا إعداد reply_goes_to_list على “هذه القائمة” (مما يغيّر رأس “Reply-To:”)، لذا سنحتاج إلى التفكير في حل آخر. أو ربما لا… سأطرح سؤالاً في الموضوع الآخر. شكرًا على مساعدتك.