الرئيسية
» مسؤول الشبكة
»
حل مشكلة عدم اتصال الصوت في غرف BigBlueButton الفرعية: مسار موثوق لاستكشاف الأخطاء وإصلاحها
حل مشكلة عدم اتصال الصوت في غرف BigBlueButton الفرعية: مسار موثوق لاستكشاف الأخطاء وإصلاحها
عندما لا يتصل الصوت في غرفة الاجتماعات الفرعية في BigBlueButton، فإن السؤال الأول الأكثر فائدة ليس "ما الخدمة التي يجب إعادة تشغيلها؟" بل هو "هل يفشل الصوت فقط بعد الدخول إلى غرفة فرعية، أم أنه يفشل أيضًا في الاجتماع الرئيسي؟" هذا التمييز يفصل بسرعة مشكلة الانتقال بين الغرف عن مشكلة أوسع نطاقًا في المتصفح أو الشبكة أو خادم الوسائط.
هذا الدليل مُعدّ لإصدار BigBlueButton 3.0، وهو الإصدار المستقرّ المُوثّق حاليًا حتى أكتوبر 2026؛ بينما لا يزال BigBlueButton 4.0 قيد التطوير. يدعم BigBlueButton 3.0 استخدام جسور صوتية مختلفة، بما في ذلك bbb-webrtc-sfuو livekitو عبر واجهة برمجة تطبيقات الاجتماعات (Meeting API)، لذا يُرجى تجنّب افتراض أن جميع عمليات النشر تستخدم نفس مسار الوسائط. يُوثّق مرجع واجهة برمجة تطبيقات BigBlueButtonfreeswitch الرسمي خيارات الجسور هذه، بينما يبقى دليل استكشاف أخطاء BigBlueButton وإصلاحها أفضل نقطة بداية لإجراء فحوصات جانب الخادم.
هذا هو شكل الحل الجيد
لا يقتصر النجاح على مجرد رؤية أيقونة الميكروفون تتحول إلى اللون الأخضر. بعد الإصلاح، ينبغي أن يتمكن المشارك من دخول غرفة فرعية، والانضمام إلى الصوت في غضون ثوانٍ، وسماع مشارك آخر، والتحدث والتحدث بوضوح، وكتم الصوت وإلغاء كتمه بشكل طبيعي، والعودة إلى الغرفة الرئيسية دون الوقوع في حلقة إعادة اتصال متكررة. إذا استمر تعطل متصفح واحد أو شبكة واحدة فقط بعد نجاح جميع الشبكات الأخرى، فتوقف عن تغيير الخادم وركز على بيئة العميل تلك.
ملاحظة
المنطقة الأكثر احتمالاً
الخطوة التالية
فشل كل من الصوت في الغرفة الرئيسية والصوت في الغرف الفرعية
أذونات المتصفح، أو الجهاز، أو جدار الحماية، أو TURN، أو جسر الوسائط
ابدأ بالخطوات من 1 إلى 4
الغرفة الرئيسية تعمل، أما غرفة الاجتماعات الفرعية فتتوقف عن العمل بسبب "التواصل".
انتقال الغرفة، حالة العميل غير النشطة، مشكلة خاصة بالجسر
ابدأ بالخطوات 1 و2 و5
لا يفشل إلا المستخدمون الموجودون على شبكة مكتب أو مدرسة أو شبكة VPN واحدة
تصفية الشبكة أو مسار ICE/TURN
أعطِ الأولوية للخطوة الرابعة
يفشل العديد من المستخدمين في وقت واحد
تكوين الخادم أو الشبكة
أعطِ الأولوية للخطوات من 3 إلى 5
الخطوة 1: إعادة إنتاج المشكلة بشكل واضح
قبل تغيير الإعدادات، حاول إعادة إنتاج المشكلة مع مُشرف واحد ومشارك واحد. تأكد من قدرة المشارك على الانضمام إلى الصوت في الغرفة الرئيسية، ثم انقله إلى غرفة فرعية ولاحظ ما يحدث بالضبط. إن رسالة "جارٍ توصيل الصوت..." التي لا تكتمل تختلف عن رفض المتصفح للأذونات، أو عدم وجود جهاز ميكروفون، أو اتصال الصوت دون وجود صوت.
تتمثل الملاحظة المفيدة الأولى فيما إذا كانت غرفة الاجتماعات الفرعية تتعطل أثناء الاتصال الصوتي أو تفشل في وقت سابق بسبب مشكلة في الجهاز أو في الأذونات.
إذا كانت الغرفة الرئيسية تعمل ولكن غرفة الاجتماعات الفرعية لا تعمل، فحاول مغادرة غرفة الاجتماعات الفرعية، ثم العودة إلى الغرفة الرئيسية، ثم الدخول إلى غرفة الاجتماعات الفرعية مرة أخرى. قد تُحل مشكلة حالة العميل غير النشطة مؤقتًا بعد إعادة الانضمام بشكل صحيح. إذا تكررت المشكلة باستمرار، فتابع الفحوصات الموضحة أدناه بدلًا من تحديث الصفحة بشكل متكرر.
التحقق من النجاح: ينضم المشارك إلى جلسة الصوت الفرعية مرة واحدة، ثم يغادرها، ثم يعود للانضمام، ويتمكن من سماع الصوت مجدداً. إذا كان هذا الإجراء موثوقاً، فمن المرجح أن المشكلة كانت عابرة. أما إذا فشلت نفس العملية في كل مرة، فانتقل إلى الخطوة التالية.
الخطوة الثانية: التحقق من إذن الوصول إلى الميكروفون في المتصفح والجهاز المحدد
يعتمد نظام الصوت في BigBlueButton على تقنية WebRTC عبر المتصفح، لذا قد يبدو رفض إذن استخدام الميكروفون مشكلة خاصة بالغرفة الفرعية إذا لاحظها المستخدم بعد دخوله الغرفة الأصغر. افتح أذونات الموقع في المتصفح لاسم مضيف BigBlueButton وتأكد من السماح بالوصول إلى الميكروفون. ثم تأكد من تحديد الميكروفون المطلوب ومن عدم استخدام أي تطبيق آخر للجهاز.
تأكد من إمكانية الوصول إلى الميكروفون لموقع BigBlueButton قبل اعتبار العطل مشكلة في غرفة الاجتماعات الفرعية من جانب الخادم.
اختبر باستخدام أحدث إصدار من متصفح Firefox أو أي متصفح مبني على Chromium. إذا تمكن المستخدم من إعادة إنتاج نفس المشكلة على متصفحين حديثين، فهذا يقلل من احتمالية أن تكون المشكلة متعلقة بملف تعريف المتصفح فقط. إذا نجح أحد المتصفحين وفشل الآخر على نفس الجهاز والشبكة، فأعد ضبط الأذونات أو اختبر باستخدام ملف تعريف متصفح جديد قبل تعديل إعدادات BigBlueButton.
التحقق من النجاح: يستجيب مؤشر نشاط الميكروفون، وينضم الصوت إلى الغرفة الرئيسية، ويمكن للمتصفح نفسه الانضمام إلى الصوت في الغرفة الفرعية. إذا استمرت المشكلة في الغرفة الرئيسية، فإن الغرفة الفرعية ليست السبب الجذري الحقيقي.
الخطوة 3: تحقق من BigBlueButton قبل إعادة تشغيل أي شيء
على الخادم، شغّل الأمر التالي sudo bbb-conf --check. توصي وثائق BigBlueButton بهذا كأول إجراء تشخيصي على جانب الخادم لأنه يتحقق من بدء تشغيل المكونات الأساسية بشكل صحيح ويكشف عن مشاكل التكوين الشائعة. راجع أي شيء مدرج تحت "المشاكل المحتملة" بدلاً من إعادة تشغيل كل خدمة على الفور.
قم أيضًا بتشغيل sudo bbb-conf --statusخدمات systemd ذات الصلة بجسر الصوت الخاص بك وفحصها. تستخدم عمليات نشر BigBlueButton 3.0 عادةً bbb-webrtc-sfuالصوت افتراضيًا، بينما يمكن تفعيل LiveKit لكل اجتماع على حدة أو على مستوى الخادم. إذا نجح التكامل audioBridge=livekit، فابحث عن مشاكل LiveKit بدلاً من افتراض أن مسار FreeSWITCH القديم هو الذي ينقل صوت المتصفح.
توصي وثائق ملفات التكوين الرسمية بوضع التعديلات المحلية تحت /etc/bigbluebuttonمجلد معين حتى لا تقوم ترقيات الحزم بالكتابة فوقها.
التحقق من النجاح:bbb-conf --check لا تظهر أي أخطاء غير مبررة، وخدمات جسر الصوت النشطة تعمل، واجتماعات الاختبار الجديدة تعمل بشكل متسق. إذا كانت حالة الخدمة جيدة ولكن لا تزال إحدى الشبكات تتعطل، فحوّل الانتباه إلى ICE وNAT وTURN.
الخطوة الرابعة: تشخيص مشاكل ICE وNAT وجدار الحماية وTURN
يجب أن يُنشئ WebRTC مسار وسائط قابلاً للاستخدام بين المتصفح وبنية الوسائط الخاصة بـ BigBlueButton. إذا نجحت عملية الإشارة ولكن لم تتمكن الوسائط من العثور على مسار شبكة مناسب، فقد يواجه المستخدمون فشلاً في مفاوضات ICE أو يظلون عالقين أثناء الانضمام إلى الصوت. تشير وثائق جدار الحماية الخاص بـ BigBlueButton تحديدًا إلى إعلانات IP الخارجية غير الصحيحة وحظر UDP كأسباب شائعة.
يمكن لصفحة about:webrtc في متصفح Firefox أن تكشف ما إذا كانت مفاوضات ICE قد اكتملت وما إذا كان المتصفح قد حصل على مضيف قابل للاستخدام، أو خادم انعكاسي، أو مرشح ترحيل.
في متصفح فايرفوكس، about:webrtcيُعدّ هذا مفيدًا لأنه يعرض مرشحي ICE وحالة الاتصال. إذا لاحظتَ أن الخادم يُعلن عن عنوان داخلي بينما يُفترض أن يُعلن عن عنوان خارجي، فتحقق من إعدادات NAT وعنوان IP المُعلن. يشرح دليل إعدادات جدار الحماية الخاص بـ BigBlueButton كيفية إعلان mediasoup عن العنوان العام عندما يكون الخادم خلف جدار حماية NAT.
إذا تركزت حالات الفشل على شبكات الشركات أو المدارس أو الفنادق أو شبكات VPN ذات القيود، فقم بإعداد خادم TURN. توصي وثائق تثبيت BigBlueButton باستخدام TURN للمستخدمين خلف جدران الحماية المقيدة. وللتحقق من ذلك، اختبر المستخدم نفسه على شبكة مختلفة، مثل نقطة اتصال هاتفية. إذا عملت نقطة الاتصال وفشلت الشبكة المُدارة، فهذا دليل قوي على أن مسار الشبكة - وليس منطق غرفة الاتصال - هو العامل المحدد.
لا تقم بفتح نطاقات منافذ واسعة النطاق بشكل عشوائي بناءً على منشورات قديمة في المنتديات. استخدم متطلبات المنفذ والجسر الخاصة بإصدار BigBlueButton المُثبّت لديك وبنية النشر. قد لا تنطبق النصائح القديمة الخاصة بـ FreeSWITCH أو SIP.js على تثبيت الإصدار 3.0 الحالي.
التحقق من النجاح: يصل نظام ICE إلى حالة الاتصال، ويظهر الخادم العام أو خادم الترحيل المتوقع، ويستطيع المستخدم المتأثر نفسه الانضمام إلى جلسة الصوت المنفصلة من الشبكة التي كانت معطلة سابقًا. إذا استمر فشل المستخدم بينما نجح مستخدمون آخرون على نفس الشبكة، فارجع إلى فحوصات الجهاز/المتصفح.
الخطوة 5: قارن جسر الصوت المُهيأ وأعد اختبار انتقالات الغرفة
إذا كان الصوت في القاعة الرئيسية يعمل، لكن الصوت في القاعات الفرعية يتعطل باستمرار لدى العديد من المستخدمين، فتأكد من جسر الصوت الذي يستخدمه الاجتماع فعليًا. يوفر BigBlueButton 3.0 audioBridgeمُعامل الإنشاء بقيم صالحة تشمل bbb-webrtc-sfuو livekitو freeswitch. يمكن للتكامل تجاوز الإعدادات الافتراضية للخادم لكل اجتماع، لذا قد لا يتطابق التكوين الذي تفحصه مع الجسر المستخدم في الجلسة التي بها المشكلة.
أنشئ اجتماعًا تجريبيًا جديدًا دون أي تعديلات مخصصة لكل اجتماع، ثم كرر نفس التسلسل: القاعة الرئيسية ← قاعة الاجتماعات الفرعية ← القاعة الرئيسية. إذا نجح الاجتماع الجديد، لكن الاجتماعات التي أنشأها نظام إدارة التعلم أو التطبيق المخصص فشلت، فافحص معلمات واجهة برمجة التطبيقات (API) المُرسلة من هذا التكامل. إذا فشل كلا الاجتماعين، فمن المرجح أن تكون المشكلة في إعدادات وسائط الخادم أو خلل خاص بالإصدار.
بعد الإصلاح، تحقق من النتيجة مع اثنين على الأقل من المشاركين في نفس غرفة النقاش الفرعية بحيث يتم اختبار كل من إرسال واستقبال الصوت.
بعد إجراء تغييرات في الإعدادات، أعد تشغيل BigBlueButton عند الحاجة فقط sudo bbb-conf --restart، ثم أعد تشغيله sudo bbb-conf --check. تجنب إجراء عدة تغييرات متتالية قبل الاختبار؛ فإجراء تغيير واحد في كل مرة يُمكّن من تحديد التعديل الذي حلّ المشكلة فعليًا.
التحقق من النجاح: يمكن لمشاركين اثنين التحدث مع بعضهما البعض في غرفة فرعية، ثم العودة إلى الغرفة الرئيسية، وإعادة الدخول إلى غرفة فرعية دون انقطاع في الاتصال. كرر هذه العملية من شبكة خارجية واحدة على الأقل قبل اعتبار المشكلة منتهية.
متى يجب تغيير النهج؟
إذا استمرت المشكلة بعد التحقق من صلاحيات المتصفح، وسلامة الخادم، وبروتوكول ICE/TURN، واختيار الجسر، فاجمع الأدلة بدلًا من التخمين. سجّل إصدار BigBlueButton، وإصدارات المتصفح ونظام التشغيل، وما إذا كانت المشكلة تتكرر في النسخة التجريبية العامة من BigBlueButton، ومخرجات الأمر sudo bbb-conf --check، وإعدادات جسر الصوت للاجتماع، وأي تشخيصات WebRTC ذات صلة من المتصفح. يطلب دليل المساعدة الخاص بـ BigBlueButton صراحةً هذا النوع من معلومات الشبكة والبيئة عند استكشاف أخطاء الصوت أو الفيديو وإصلاحها.
حتى أكتوبر 2026، لا يزال BigBlueButton 3.0 هو الإصدار المستقر من حيث التوثيق، حيث تستمر إصدارات 3.0 على GitHub، بينما لا يزال توثيق 4.0 قيد التطوير. هذا الأمر مهم لأن BigBlueButton 4.0 يُغيّر إطار عمل الوسائط الافتراضي إلى LiveKit، لذا لا ينبغي تطبيق نصائح الإصدار 4.0 تلقائيًا على خادم 3.0. يُرجى مراجعة صفحة إصدار BigBlueButton الرسمية قبل اتباع أي تعليمات خاصة بالإصدار.
قائمة التحقق النهائية
يتم توصيل الصوت في الغرفة الرئيسية للمشارك المتضرر.
تم السماح باستخدام الميكروفون، ويظهر الجهاز المقصود نشاط الإدخال.
bbb-conf --checkلا توجد أخطاء غير مبررة في خدمة الوسائط.
تصل خدمة ICE إلى حالة الاتصال؛ وتتوفر للشبكات المقيدة مسار TURN قابل للاستخدام عند الحاجة.
يستخدم الاجتماع جسر الصوت الذي تعتقد أنه يستخدمه.
يمكن لمستخدمين اثنين سماع بعضهما البعض في غرفة فرعية، ثم العودة إلى الغرفة الرئيسية والانضمام إليها بنجاح.
إذا اجتازت جميع الفحوصات الستة بشكل متكرر، فإن عملية الإصلاح تنتج النتيجة المهمة: صوت مستقر عبر انتقالات الغرف، وليس مجرد رمز ميكروفون أخضر مؤقت.