إضافة جماعية لنطاقات البريد الإلكتروني للموافقة التلقائية

\u003csmall\u003eمتابعة للنقاش من https://meta.discourse.org/t/formalized-assignment-and-possible-logging-of-pending-applications/232724\u003c/small\u003e

هل القيمة الخاصة بـ auto approve email domains عبارة عن سلسلة مفصولة بمسافات؟ أم مفصولة بفواصل أو بأسطر جديدة؟ شكرًا مقدمًا، R

في واجهة المستخدم، تضيفها واحدة تلو الأخرى باستخدام زر :plus: (ثم التأكيد بالعلامة الخضراء)

شكرا جزيلا @JammyDodger. كنا نفكر في أن نكون أكثر آلية. خططنا لتصدير قائمتنا الحالية من رسائل البريد الإلكتروني، ثم استخراج تلك التي تطابق قائمة hipo لنطاقات الجامعات، ثم استيراد هذه القائمة الجديدة إلى discourse تحت مفتاح auto approve email domains. باستخدام python و pandas للمعالجة الرقمية. أعتقد أن هذا المسار غير مدعوم؟ أم هل لدينا، أو هل يمكننا، الوصول البرمجي؟ (ملاحظة: بالإشارة إلى لقطة الشاشة الخاصة بك، gmail.com هو آخر اسم نطاق نحلم بالموافقة عليه تلقائيًا.)

أوه، وهل يمكننا استخدام الأحرف البديلة مثل: *.tu-berlin.de لحساب تضمين معلومات الأقسام، على سبيل المثال maths.tu-berlin.de.

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

كان لدي شعور بأنني كنت أبسط الأمور أكثر من اللازم. :slight_smile: أعتقد أن هذا سيستفيد من تقسيمه إلى موضوع Support جديد للحصول على المزيد من العيون الخبيرة عليه. :+1:

هذا يمكنني تقديره. :slight_smile: لا تقلق، كانت لقطة شاشة لعرض توضيحي على موقع الاختبار الخاص بي، وليس الإعدادات هنا على Meta. :slight_smile:

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

للأسف، أعتقد أن هذا غير ممكن. لقد قدمت طلب ميزة يذكر هذا:

كان اقتراحي الرئيسي على الأرجح ليس ما تريده (سيعني ذلك أنه إذا أضفت tu-berlin.de فسيشمل maths.tu-berlin.de وكل قسم آخر).

هذا هو بالضبط السلوك الذي كنت أسعى إليه.

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

إذا كان لديك وصول إلى وحدة تحكم Rails، فيمكنك تعيين allowed email domains إلى سلسلة مفصولة بعلامة الأنبوب تحتوي على أي عدد تعسفي من أسماء المضيفين، لذا يبدو أن هذا قابل للتطبيق.

لست متأكدًا من سبب حاجتك إلى معالجة رقمية؛ يمكن القيام بذلك باستخدام أدوات UNIX القياسية.

هذا يعطيك قائمة النطاقات من قائمة Hipo:

curl -L 'https://github.com/Hipo/university-domains-list/blob/master/world_universities_and_domains.json?raw=true' |\
  jq '.[].domains' |\
  jq -r add |\
  sort -u

إذا قمت بحفظ ذلك باسم domains.txt، وبافتراض أن لديك ملفًا بعناوين البريد الإلكتروني باسم emails.txt، فيمكنك الحصول على مجموعة فرعية من النطاقات للسماح بها باستخدام هذا:

grep -if domains.txt emails.txt |\
  cut -d @ -f 2 |\
  sort -u

هذا، حتى لو كانت قائمة النطاقات تحتوي فقط على tusculum.edu، فإن بريدًا إلكترونيًا مثل some.student@mail.tusculum.edu سينتج mail.tusculum.edu وهو اسم المضيف الذي تريد فعليًا السماح به، بدلاً من القمة.

ثم الأمر مجرد مسألة تعيين سلسلة مفصولة بعلامة الأنبوب تحتوي على هذه النطاقات. هل هذا يعمل معك؟

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

شكراً @leonardo. سأحتاج إلى سؤال مزود استضافة المنتدى الخاص بي عما إذا كان بإمكاني الوصول إلى وحدة تحكم Ruby on Rails (أشك في ذلك؟). لكنني سأقدم سؤالاً غداً.

أنا مرتاح لأدوات bash shell التي ذكرتها (بدأت في SCO UnixWare حوالي عام 1997 قبل الانتقال إلى Linux). أحد أسباب تبني python هو أن المسؤولين المستقبليين لمنتدانا من المرجح أن يكونوا على دراية بـ python.

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

ممتاز؛ يجب أن تجعل بايثون الأمر سهلاً بنفس القدر.

إذا فشل ذلك، يمكنك استخدام واجهة برمجة التطبيقات (باستخدام حساب مسؤول) لـ PUT /admin/site_settings/allowed_email_domains مع حمولة مشفرة بتنسيق النموذج مثل هذا:

allowed_email_domains=zuyd.nl%7Czzgc.edu.cn%7Czzut.edu.cn

لا، لا يمكنك، ولكن يمكنك دائمًا استخدام واجهة برمجة التطبيقات (API) (كما اقترح ليوناردو) أو ببساطة فتح تذكرة بالأمر الذي تريد منا تشغيله لك. سنرسل لك المخرجات أيضًا :wink:

3 إعجابات

@RGJ شكراً جزيلاً. فكرة أخرى، ربما لا قيمة لها على الإطلاق. ولكن القدرة على تحميل قاعدة بيانات شاملة، مثل قائمة hipo، إلى مثيل discourse وجعل discourse يقوم بهذا النوع من الفحص والمعالجة سيكون، من وجهة نظر المستخدم، مثالياً. :sloth:

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