دمج حسابات المستخدمين

:bookmark: يشرح هذا الدليل كيفية دمج عدة حسابات مستخدمين في حساب واحد على Discourse. يتناول الدليل دمج المستخدمين غير الإداريين من خلال واجهة Discourse، ودمج المستخدمين الإداريين عبر وحدة التحكم (Console).

:person_raising_hand: مستوى الصلاحية المطلوب: مدير (Administrator)

تتيح لك عملية دمج حسابات المستخدمين في Discourse دمج عدة حسابات في حساب واحد. يمكن أن تكون هذه العملية مفيدة في عدة سيناريوهات:

  1. عندما ينشئ المستخدم عدة حسابات، ربما بسبب نسيانه لتسجيله السابق.
  2. إذا أنشأ المستخدم حسابًا جديدًا باستخدام بريد إلكتروني جديد بدلاً من تحديث بريده الحالي.
  3. عندما يرغب المستخدم في توحيد عدة حسابات مستخدمة لأغراض مختلفة (مثلًا: شخصي، تجاري، أو للاختبار) في حساب واحد.

دمج المستخدمين غير الإداريين

يمكن للمديرين دمج المستخدمين غير الإداريين مباشرة من خلال واجهة Discourse.

:warning: هذا الإجراء غير قابل للتراجع. سيتم حذف حساب المستخدم المصدر (Source) بعد الدمج.

لدمج مستخدمين غير إداريين:

  1. انتقل إلى صفحة إدارة المستخدم الخاصة بالمستخدم المصدر (الحساب الذي تريد الدمج منه).
  2. مرر للأسفل حتى نهاية الصفحة.
  3. انقر على زر “دمج” (Merge).
  4. في نافذة المنبثقة الأولى، أدخل اسم المستخدم للحساب الهدف (الحساب الذي تريد الدمج فيه) وانقر على “نقل وحذف” (Transfer & Delete).
  5. ستظهر نافذة تأكيد. اكتب نص التأكيد المعروض (مثلًا: transfer @source to @target) وانقر على “نقل وحذف” (Transfer & Delete) لبدء عملية الدمج.

:information_source: قد يكون دمج الحسابات الكبيرة مكلفًا من حيث الموارد ويستغرق بعض الوقت للمعالجة، اعتمادًا على كمية البيانات المرتبطة بالمستخدم المصدر.

ماذا يتم دمجه؟

عند دمج حسابات المستخدمين، يجمع Discourse البيانات من أكثر من 50 جدولًا، بما في ذلك:

  • المشاركات والمواضيع
  • الإعجابات الممنوحة والمستلمة
  • الرسائل الخاصة
  • معلومات ملف المستخدم الشخصي
  • تفضيلات وإعدادات المستخدم
  • إجراءات المستخدم والنشاط (مثلًا: العلامات المرجعية، مشاهدات المواضيع)
  • الشارات والإنجازات
  • مستوى الثقة وعضويات المجموعات
  • الحسابات المرتبطة (مثلًا: تسجيل الدخول الاجتماعي)

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

:warning: الروابط الواردة التي تشير إلى المستخدم المصدر (مثلًا: https://discourse.example.com/t/some-topic/17/3?u=source_username) لن تُربط بالمستخدم الهدف بعد الدمج.

ملاحظة مهمة حول دمج المستخدمين وDiscourseConnect

قد يؤثر دمج حسابات المستخدمين على DiscourseConnect (المعروف سابقًا بـ SSO)، اعتمادًا على طريقة التنفيذ:

  • إذا كان DiscourseConnect يعتمد على البريد الإلكتروني، فلا ينبغي أن تحدث أي مشاكل طالما تم استخدام بريد الحساب الهدف في نظام DiscourseConnect. لاحظ أن بريد المستخدم المصدر سيصبح بريدًا ثانويًا على حساب الهدف بعد الدمج، مما قد يسبب مشاكل في تسجيل الدخول إذا تم استخدام ذلك البريد لاحقًا مع DiscourseConnect. فكر في إزالة البريد الإلكتروني الثانوي بعد الدمج إذا لزم الأمر.
  • إذا كان نظام DiscourseConnect يستخدم معرّف مستخدم فريد يختلف عن معرّف مستخدم Discourse، فقد يسبب الدمج مشاكل إذا لم يتم تعيين المعرّف الفريد لحساب المصدر بشكل صحيح على حساب الهدف.

دمج المستخدمين الإداريين

لسبب أمني، يجب تنفيذ دمج المستخدمين الإداريين عبر وحدة التحكم (Console).

:information_source: إذا كان موقعك مستضافًا بواسطة Discourse، فتواصل مع team@discourse.org للحصول على المساعدة في دمج المستخدمين الإداريين.

لدمج المستخدمين الإداريين عبر وحدة التحكم:

root@host:/var/discourse# ./launcher enter app
root@host-app:/var/www/discourse# rake users:merge['source_username','target_username']

Users merged!

root@host-app:/var/www/discourse#

:warning: تأكد من عدم وجود مسافات قبل أو بعد الفاصلة في الأمر.

الأسئلة الشائعة

س: ماذا يحدث إذا بدا أن عملية الدمج متوقفة؟
ج: إذا لم يظهر أي تغيير في شاشة تقدم الدمج لفترة طويلة، حاول تحديث الصفحة. ربما اكتمل الدمج، لكن واجهة المستخدم لم تتحدث.

س: هل يمكنني التراجع عن دمج المستخدمين؟
ج: لا، بمجرد دمج مستخدمين، لا يمكن التراجع عن الإجراء. يتم حذف حساب المستخدم المصدر نهائيًا بعد الدمج.

س: هل سيؤثر دمج المستخدمين على مشاركاتهم ومواضيعهم؟
ج: سيتم نقل جميع المشاركات والمواضيع من المستخدم المصدر إلى المستخدم الهدف. سيتغير نسب هذه العناصر لتعكس المستخدم الهدف كمُنشئ لها.

10 إعجابات

تم تقسيم منشور إلى موضوع جديد: اختفى زر دمج المستخدم في موقعي

وجدنا أيضًا موقفًا صعبًا آخر يتعلق بالدمج وتسجيل الدخول الموحد (SSO).

  1. ينشئ المستخدم حساب تسجيل دخول موحد في المؤسسة أ (Organization A) بعنوان بريد إلكتروني هو first.last@organizationA.com
  2. ينتقل المستخدم إلى المؤسسة ب (Organization B) وينشئ حساب تسجيل دخول موحد بعنوان بريد إلكتروني هو first.last@organizationB.com
  3. ندمج الحسابين
    1. يصبح عنوان البريد الإلكتروني الأساسي للمستخدم هو first.last@organizationB.com
    2. ولكن عملية الدمج تترك first.last@organizationA.com كعنوان بريد إلكتروني ثانوي
  4. يعود المستخدم إلى المؤسسة أ (Organization A)، ويحاول تسجيل الدخول عبر تسجيل الدخول الموحد باستخدام first.last@organizationA.com، ويُعلق في حلقة تسجيل الدخول التالية مع رسالة Discourse هذه: Slow down, you’re making too many requests (تمهّل، أنت تُجري الكثير من الطلبات)

لإصلاح ذلك، أزلنا first.last@organizationA.com من عنوان البريد الإلكتروني الثانوي في الحساب المدمج في الخطوة رقم 3. وقد أدى هذا إلى إنشاء حساب جديد آخر، قمنا بدمجه بعد ذلك مع حساب first.last@organizationB.com.

لقد قمنا أيضًا بتعديل عملية الدمج الخاصة بنا بحيث نقوم فورًا بإزالة عنوان البريد الإلكتروني الثانوي من الحساب بعد الدمج.

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

لماذا يكون الأمر كذلك؟ (لماذا لا يتم دمجها أيضًا؟)

قرأت هنا عن كيفية دمج الحسابات، لكن في المنتدى أنا مشرف، ومع ذلك لا يظهر زر الدمج بجانب زر “إخفاء هوية المستخدم”؟ :man_shrugging:

عند دمج الحسابات، أي حساب يُحتفظ به؟ وكيف تضمن الاحتفاظ بالحساب الصحيح؟ هل يتم الدمج من الحساب الذي تريد التخلص منه أم من الحساب الذي تريد إبقاءه؟

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

إعجابَين (2)