Skip to main content
الأدلة
الأدلةRolesBasics

الرتب والصلاحيات في Discord: لماذا لا يستطيع البوت منح تلك الرتبة

التسلسل الهرمي للرتب هو السبب الأكثر شيوعًا لعدم عمل شيء ما في Discord. افهمه مرة واحدة، وستوفر على نفسك ساعات من البحث عن المشكلة.

نُشر في بواسطة AlphaCloud3 دقائق قراءة

هناك موقف يصادفه كل مالك سيرفر في وقت ما: يُفترض أن يمنح البوت رتبة، ولا يفعل. البوت يملك Administrator. والإعداد محفوظ. ومع ذلك لا يحدث شيء.

السبب في الغالب هو نفسه دائمًا، ولا علاقة له بالصلاحيات.

نظامان، لا نظام واحد

يقرر Discord على خطوتين منفصلتين ما إذا كان يُسمح لأحدهم بفعل شيء ما:

  1. الصلاحية. هل يُسمح لهذه الرتبة بإدارة الرتب أصلًا؟
  2. الموضع. هل تقع هذه الرتبة في مستوى عالٍ بما يكفي لتمس الرتبة المستهدفة؟

معظم الناس لا يعرفون إلا الخطوة الأولى. والثانية هي حيث يفشل الأمر.

القاعدة في جملة واحدة

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

وهذا يسري حتى مع Administrator. صلاحية Administrator تتجاوز الصلاحيات، لا التسلسل الهرمي. البوت الذي يملك Administrator وتقع رتبته في أسفل القائمة لا يستطيع فعل أي شيء تقريبًا.

مثال

قائمة الرتب لديك تبدو هكذا، من الأعلى إلى الأسفل:

Owner
Administrator
Moderator
AlphaCloud          <- the bot's role
Verified
Member

ما يستطيع البوت فعله:

  • منح Verified وMember وإزالتهما
  • الإشراف على الأعضاء الذين تكون أعلى رتبة لديهم Verified أو Member

ما لا يستطيع البوت فعله:

  • منح Moderator، لأن هذه الرتبة تقع فوقه
  • طرد مشرف أو حظره أو تغيير اسمه
  • المساس بمسؤول

إذا أردت أن يتمكن البوت من منح رتبة المشرف، فعليك سحب رتبته فوق Moderator. وليس العكس.

النصيحة العملية

ضع رتبة البوت مباشرةً أسفل أعلى رتبة في فريقك. هكذا:

Owner
Administrator
AlphaCloud          <- here
Moderator
Verified
Member

يتيح ذلك للبوت إدارة كل ما هو أسفل القيادة دون أن يتمكن من المساس بالقيادة نفسها. وهذا تقريبًا دائمًا بالضبط ما تريده.

تغيّر الترتيب ضمن إعدادات السيرفر، الرتب (Server Settings، Roles) بالسحب.

ثلاث حالات خاصة لن تعمل مع ذلك

حتى مع تسلسل هرمي مثالي، هناك ثلاثة أشياء لا يسمح بها Discord للبوت أبدًا:

تغيير اسم مالك السيرفر أو الإشراف عليه. المالك يقع خارج التسلسل الهرمي. ولا رتبة ولا صلاحية تغيّر ذلك.

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

منح رتبة @everyone. الجميع يملكها تلقائيًا، ولا يمكن تعيينها.

صلاحيات القناة تتغلب على صلاحيات السيرفر

الحالة الثانية الأكثر شيوعًا: يُسمح للبوت بإرسال الرسائل حسب رتبته، لكنه لا يفعل في قناة واحدة بالذات.

يسمح Discord باستثناءات خاصة بكل قناة من صلاحيات السيرفر. إذا كانت صلاحية Send Messages مرفوضة صراحةً في قناة ما لـ @everyone أو لإحدى رتب البوت، فهذا هو ما يسري، أيًّا كان ما تقوله رتبة السيرفر.

يمكنك التحقق من ذلك مباشرةً: إعدادات القناة، ثم Permissions، ثم اختر البوت في الأعلى تحت View permissions for. سيُظهر لك Discord حينها بالضبط ما يُسمح له بفعله في تلك القناة.

أي صلاحية لأي مهمة

إذا كنت تفضّل ألا تمنح البوت Administrator بشكل شامل، فهذه هي القائمة الواقعية:

المهمة الصلاحية
تعيين الرتب Manage Roles
التذاكر، والقنوات المؤقتة Manage Channels
حذف الرسائل المزعجة Manage Messages
الإسكات Timeout Members
الإزالة Kick Members، Ban Members
النقل إلى قناة AFK Move Members
إضافة بادئات للألقاب Manage Nicknames
معرفة من أطلق إجراءً ما View Audit Log

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

النسخة المختصرة لحل المشكلات

عندما لا يعمل شيء ما، مرّ على هذه الأسئلة الأربعة بالترتيب:

  1. هل تقع رتبة البوت فوق الرتبة المعنية؟
  2. هل تقع رتبة البوت فوق العضو المعني؟
  3. هل يملك البوت الصلاحية المناسبة على مستوى السيرفر؟
  4. هل هذه الصلاحية مرفوضة صراحةً في هذه القناة؟

في تسع حالات من أصل عشر، يكون الجواب في السؤال 1 أو 2.

مقالات أخرى