مقدمة إلى التطوير لإرسال بريد الإشعارات باستخدام Gmail

مرحباً،

أنا جديد على Ruby و Docker، ولكن لدي بعض الخبرة في التطوير بخلاف ذلك. لدي نسخة Discourse قيد التشغيل للتطوير ونسخة للإنتاج، لذلك يبدو أن التبعيات قد تم تلبيتها. أود إضافة وظيفة Oauth 2.0 إلى no-reply@discourse.example.com، حتى أتمكن من إرسال الإشعارات عبر مستخدم Google Workspace.

أتوسل إليك مساعدتي في ما يلي:

  • كيف يمكن إنشاء صورة Docker من مستودع git الخاص بـ Discourse؟
  • ما هو الجزء من الكود الذي يحتوي على مصادقة STMP الخاصة بـ no-reply، وإرسال الإشعارات؟

إذا سار الأمر على ما يرام، أود جعله قابلاً للاختيار في البرنامج النصي ./discourse-setup، بحيث يمكن منح مسؤول الموقع في معظم مزودي البريد الإلكتروني و OAuth 2.0 عندما يكون مزود البريد الإلكتروني هو Google. في حال وجدت ذلك مفيدًا، يمكنني إرسال النتيجة للمراجعة.

مع خالص التقدير

ربما يجب عليك قراءة هذا من هنا:

فكر بقوة في استخدام التثبيت القياسي

شكراً لردك السريع. سأستخدم البرنامج النصي ./discourse-setup، ومع ذلك أحتاج إلى إعداد discourse كعميل OAuth، وليس كعميل SMTP، لذلك أحتاج إلى الإضافة إلى المصدر أولاً. لا يمكنني العثور على مصدر discourse في مستودع discourse_docker. كيف يمكنني تعديل مصدر discourse ثم تشغيل البرنامج النصي ./discourse-setup؟ إذا كنت لا توصي باستخدام ./launcher، فلا بأس بعدم اتباع هذا الاتجاه.

حاليًا، لدي مستودعات discourse و discourse_docker.

هل سيكون هناك شيء يتعلق بسحب المستودع المحلي إلى البرنامج النصي launcher/discourse-setup بدلاً من المستودع الأصلي؟

هل تقصد SMTP مع مصادقة oAuth بدلاً من المصادقة الأساسية؟ أم أنك تبحث عن إرسال البريد عبر مسار آخر؟

لا يدعم Discourse مصادقة SMTP oAuth، لذا فإن النهج الأبسط هو على الأرجح جعل Discourse يسلم البريد الإلكتروني إلى خادم بريد محلي تم تكوينه بطريقة تقدم البريد مع المصادقة اللازمة.

تبدو آلية Google المدعومة لهذا هي:

إعجاب واحد (1)

أعني أنه في حالتي يجب أن يتصل Discourse بموفر البريد عبر OAuth 2، وليس SMTP. للأسف، وجدت أن رسائلي من المحتمل أن تذهب إلى مجلد البريد العشوائي عند عدم استخدام موفر بريد كبير، لذلك قررت إضافة مصادقة OAuth 2 لحساب “no-reply” الذي يستخدمه Discourse والاتصال بـ Google Workspace. لقد جربت أيضًا Mailgun، ومع ذلك، سأحتاج إلى دعم IMAP أيضًا.

الطريقة الصحيحة لصياغة هذا هي:

أريد أن يقوم Discourse بالمصادقة على خادم SMTP باستخدام مصادقة oAuth2 بدلاً من المصادقة الأساسية

هل هذا للردود على المستخدمين / البريد الوارد؟

أتفهم أن هناك ملحق Mailgun لهذا الغرض، على الرغم من أنني لم أستخدمه.

نعم، هذا ما أريده :slight_smile: لقد اشتركت بالفعل في Google Workspace، وأود دفعه إلى أقصى حد ممكن.

لم يتم تصميم Google Workspace للرسائل الإلكترونية للمعاملات. ستحتاج إلى استخدام شيء آخر.

إذا كنت تريد أن يتلقى منتداك البريد، فراجع تكوين البريد الوارد المباشر للمواقع المستضافة ذاتيًا باستخدام Mail-Receiver

عادةً، ستقوم بتكوين خدمة بريد للمعاملات لإرسال من noreply@forum.example.com وسيتلقى مستلم البريد البريد المرسل إليه ويسلمه إلى discourse.

شكراً جزيلاً، أنا أجرب هذا الآن.

إعجاب واحد (1)

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.