برمجة عضوية المجموعة

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

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

شكرا!

تعديل:

مثال من الأسفل:
لدي عناوين البريد الإلكتروني الثلاثة هذه:
alice@example.com - ينتمي إلى عضو في المنتدى ليس عضوًا في مجموعة SomeGroup
bob@foo.org - ينتمي إلى عضو في المنتدى وهو عضو في مجموعة SomeGroup
carol@bar.edu - لا ينتمي إلى عضو في المنتدى.

أود إضافة المستخدم المرتبط بـ alice@example.com إلى SomeGroup (وإرسال رسالة ترحيب)، وعدم فعل شيء للمستخدم bob@foo.org، وإرسال دعوة للمنتدى مع علامة تسجيل المجموعة إلى carol@bar.edu.

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

يمكنك تكوين المجموعة بحيث إذا سجل مستخدم بنطاق بريد إلكتروني معين (النطاق @example.com)، فسيتم إضافته تلقائيًا إلى مجموعة.

انتقل إلى علامة التبويب “إدارة” الخاصة بالمجموعة، ثم “العضوية”، ثم القسم الأول “تلقائي” وأضف النطاق.

شكرًا، لكن هذا لا يساعد حقًا هنا. يستخدم أعضاؤنا جميعًا بريدهم الإلكتروني الشخصي لهذا الغرض، لذا ليس لديهم نفس النطاق.

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

يمكنك إعداد رابط دعوة وإرساله إلى العملاء ولكن هذا لن يعمل إلا إذا لم يكونوا قد سجلوا بعد، على ما أعتقد.

انتقل إلى علامة التبويب الأعضاء ثم اضغط على دعوة، وقم بتكوين الدعوة واضغط على حفظ الدعوة.

إذا أرسلت رابط دعوة، فسيعمل أيضًا للأعضاء الحاليين. :+1: يمكنك حتى توجيههم إلى موضوع معين للوصول إليه عند وصولهم، لذا يمكن أن يكون جيدًا لتسجيل المجموعات أو الأحداث.

هل توجد أيضًا ميزة الدعوة المجمعة إذا كان لديك بالفعل قائمة بالعناوين؟

إعجابَين (2)

لم أكن أعرف. سألقي نظرة على الويكي، وذكر فقط عند إنشاء الحساب. هل يمكنك إصلاحه لأنه ليس ويكيًا؟ (Invite users to a group)

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

دعني أعطي مثالاً، لأن سؤالي ربما لم يكن واضحاً.

لدي عناوين البريد الإلكتروني الثلاثة هذه:
alice@example.com - ينتمي إلى عضو في المنتدى ليس عضواً في مجموعة SomeGroup
bob@foo.org - ينتمي إلى عضو في المنتدى وهو عضو في مجموعة SomeGroup
carol@bar.edu - لا ينتمي إلى عضو في المنتدى.

أود أن يقوم البرنامج النصي بإضافة المستخدم المرتبط بـ alice@example.com إلى SomeGroup (وربما إرسال رسالة ترحيب)، وعدم القيام بأي شيء للمستخدم bob@foo.org، وإرسال دعوة مع علامة تسجيل المجموعة إلى carol@bar.edu.

أوه، حسنًا لم أكن أدرك ذلك! هل سيرسل الأعضاء الموجودين بالفعل إشعارًا بأنه تمت إضافتهم إلى المجموعة؟

بدلاً من استخدام قائمة بعناوين البريد الإلكتروني، سيكون من المنطقي استخدام واجهة برمجة التطبيقات (API) لهذا الغرض. لذلك، عندما يقوم المستخدم بالتسجيل، يجب عليك تسجيله تلقائيًا في المجموعة باستخدام واجهة برمجة التطبيقات هذه: Discourse API Docs

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

إعجابَين (2)

المسألة هي أن ما لدي في الواقع هو قائمة بعناوين البريد الإلكتروني، وليس أسماء المستخدمين. تحتفظ مؤسستي بمستويات عضوية الأشخاص حسب الاسم والبريد الإلكتروني، وليس اسم مستخدم المنتدى لأن المنتدى جزء صغير من المؤسسة. يرسل منسق العضوية لي قائمة بالأسماء ورسائل البريد الإلكتروني كل أسبوع للأعضاء الجدد. قد يكون لديهم بالفعل حساب منتدى أو لا يكون لديهم عندما يحدث هذا نظرًا لأن لدينا قسمًا عامًا للمنتدى.

لا يبدو أن هذا يعمل في الواقع. عندما أحاول إرسال رابط دعوة، أحصل على: لا حاجة لدعوة example@gmail.com ، لديهم حساب بالفعل!

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

تعديل:

أعتقد أن هذا ممكن باستخدام خيار الدعوة المجمعة. إذا كان لديك ملف csv لعناوين البريد الإلكتروني، مع عمود ثانٍ للمجموعات التي ترغب في إضافتهم إليها، فإن تشغيل ذلك عبر أداة الدعوة المجمعة سيرسل دعوة عبر البريد الإلكتروني لأي شخص ليس لديه حساب، وسيضيف الأعضاء الحاليين إلى المجموعات التي أدخلتها في العمود الثاني. على الرغم من أن الجزء المفقود هو أن هذا لا ينشئ إشعارًا يفيد بأنه تمت إضافتك إلى المجموعة.

إعجابَين (2)

يجب أن يعمل Bulk Invite في الوقت الحالي، شكرًا لك! أود تقديم طلب ميزة لإضافة رسالة للأعضاء الحاليين عند حصولهم على أذونات جديدة.

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

لقد فهمت الارتباك الذي كان لدي. الروابط هي التي تفعل ما كنت أعتقده، وليس رسائل البريد الإلكتروني. :slight_smile: لذا فإن الطريقة الأخرى ستكون إنشاء رابط دعوة (بدلاً من البريد الإلكتروني)، ثم إرسال هذا الرابط في بريد إلكتروني إلى جميع الأشخاص الموجودين في قائمة بريدك الإلكتروني. سيتم توجيه الأعضاء الجدد إلى صفحة “إنشاء حساب وقبول الدعوة” قبل إضافتهم إلى المجموعة وإرسالهم إلى الموضوع (إذا أضفت هذا المعيار)، وسيتم إضافة المستخدمين الحاليين الذين قاموا بتسجيل الدخول بالفعل إلى المجموعة وإرسالهم مباشرة إلى الموضوع الذي وجهتهم إليه، ويمكن للمستخدمين الحاليين الذين لم يقوموا بتسجيل الدخول تسجيل الدخول من صفحة “إنشاء حساب وقبول الدعوة” (على الرغم من أنه من غير الواضح قليلاً ما إذا كان يمكنك القيام بذلك، ولكن يمكنك إضافة بعض النصوص الإضافية إلى الصفحة في js.create_account.subheader_title لإضافة تلميح بسيط)، ثم تتم إضافتهم إلى المجموعة وإرسالهم إلى الموضوع:

ومع ذلك، فإن هذه الطريقة لا ترسل أيضًا إشعارًا يفيد بأنه تم إضافتهم إلى المجموعة، ولكن تحصل على فرصة لتضمين شرح في البريد الإلكتروني الأولي للدعوة والذي قد يكون مفيدًا؟ ويمكن أيضًا الاستفادة من “الوصول إلى الموضوع” بطريقة مماثلة كصفحة هبوط.

لست متأكدًا مما إذا كان هذا مفيدًا، ولكني سعيد لأنني اكتشفت ذلك. :slight_smile:

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