لقد قمت بإعداد خادم البريد الخاص بنا لإعادة توجيه رسائل البريد الإلكتروني إلى Discourse الخاص بنا عبر HTTP باستخدام واجهة برمجة التطبيقات (API)، وهذا يعمل. أريد الآن تمكين reply_by_email حتى يتمكن المستخدمون من الرد على الرسائل مباشرة.
لذلك أحاول تمكين reply_by_email، لكن Discourse يرفض طلبي:
discourse(prod)> SiteSetting.reply_by_email_address
=> "reply+%{reply_key}@<our-valid-domain>.de"
discourse(prod)> SiteSetting.email_in
=> true
discourse(prod)> SiteSetting.reply_by_email_enabled = true
lib/site_settings/type_supervisor.rb:271:in `validate_value': reply_by_email_enabled: يجب عليك تمكين الاستقصاء اليدوي أو POP3 أو تمكين مستقصي بريد مخصص قبل تمكين الرد عبر البريد الإلكتروني. (Discourse::InvalidParameters)
from lib/site_settings/type_supervisor.rb:177:in `to_db_value'
from lib/site_setting_extension.rb:623:in `add_override!'
from lib/site_setting_extension.rb:990:in `block in setup_methods'
from (discourse):15:in `<main>'
هذا صحيح - لم أقم بإعداد أي منهما ولكني قمت بإعداد خادم البريد Postfix الخاص بنا لإعادة توجيه رسائل البريد الإلكتروني إلى Discourse من خلال واجهة برمجة التطبيقات الخاصة به. لست متأكدًا مما إذا كان هذا تكوينًا مدعومًا، ولكني حقًا أرغب في تجنب تشغيل خادم بريد إلكتروني آخر (mail-receiver) إذا كان بإمكاني ذلك.
لا أجد إعداد “تمكين الرد عبر البريد الإلكتروني” في قسم المسؤول الخاص بي:
أنا أستخدم mail-receiver بنفسي، لذا فإن إعداد Postfix+API يتجاوز قدراتي، ولكن لاحظ أن الشاشة التي تتواجد عليها هي قسم فرعي فقط لـ “رسائل البريد الإلكتروني التي يتم إرسالها إلى أعضائك.”
الإعدادات التي ذكرتها للرد عبر البريد الإلكتروني توجد في المسؤول → جميع إعدادات الموقع → البريد الإلكتروني:
يوجد إعداد “تمكين الاستقصاء اليدوي” أيضًا ضمن المسؤول → كافة إعدادات الموقع → البريد الإلكتروني.
ولأنني على ما يبدو لا أستطيع النوم، فقد أجريت بعض البحث ورأيت حالات قليلة جدًا لأشخاص يحاولون تكوين البريد الوارد عبر واجهة برمجة التطبيقات. في حال كان ذلك مفيدًا لك أثناء المتابعة، إليك ما وجدته:
(مجموعة من الروابط)
أثناء بحثي، ظهر لي من خلال ديسكوبوت هذه المعلومات التي قد تكون قديمة:
يمكنك استخدام واجهة برمجة تطبيقات Discourse للتعامل مع رسائل البريد الإلكتروني الواردة دون الاعتماد على حاوية mail-receiver. يقبل نقطة النهاية /admin/email/handle_mail محتوى البريد الإلكتروني الخام عبر POST، مما يتيح لك دفع رسائل البريد الإلكتروني مباشرة إلى Discourse باستخدام برنامج نصي أو تكامل مخصص. تتجاوز هذه الطريقة الحاجة إلى استقصاء SMTP أو حاوية mail-receiver تمامًا.
على سبيل المثال، يمكنك إرسال بريد إلكتروني إلى Discourse باستخدام أمر curl مع المعلمة email التي تحتوي على محتوى البريد الإلكتروني الخام. يُستخدم هذا النهج بشكل شائع في إعدادات تسليم البريد الإلكتروني المخصصة، خاصة عند استخدام خدمات مثل AWS Lambda أو وظائف أخرى بدون خادم.
2018: هذه المشاركة تشير إلى دليل البريد الإلكتروني - مع الإشارة إلى لغة لم تعد موجودة هناك - وتوصي أيضًا: “أسهل طريقة لجعل الرد عبر البريد الإلكتروني يعمل هي استخدام قالب حاوية mail-receiver، بدلاً من محاولة العمل مع جميع أنواع واجهات برمجة التطبيقات المختلفة من مقدمي الخدمات المختلفين.”