للتثبيت والتهيئة Mediasoup-client في مشروعك ، اتبع الخطوات التالية:
قم بتثبيت Node.js
أولاً ، تحتاج إلى تثبيت Node.js على جهاز الكمبيوتر الخاص بك. Node.js هي بيئة تشغيل JavaScript من جانب الخادم. قم بزيارة موقع Node.js الرسمي( https://nodejs.org ) وقم بتنزيل الإصدار المناسب لنظام التشغيل الخاص بك. بمجرد اكتمال التثبيت ، يمكنك التحقق من إصدار Node.js المثبت عن طريق فتح محطة وتشغيل الأمر التالي:
node -v
بدء المشروع وتثبيته Mediasoup-client
قم بإنشاء دليل جديد لمشروعك وافتح Terminal في هذا الدليل. قم بتشغيل الأمر التالي لتهيئة مشروع Node.js جديد وإنشاء ملف package.json:
npm init -y
بعد ذلك ، قم بالتثبيت Mediasoup-client في مشروعك عن طريق تشغيل الأمر التالي:
npm install mediasoup-client
الاستيراد والتكوين Mediasoup-client
في ملف التعليمات البرمجية المصدر لمشروعك ، أضف السطر التالي للاستيراد Mediasoup-client
const mediasoupClient = require('mediasoup-client');
لتكوين Mediasoup-client ، تحتاج إلى إنشاء Device
كائن. يمثل هذا الكائن جهاز العميل وسيتم استخدامه لإنشاء اتصالات الوسائط وإدارتها مع خادم Mediasoup. يمكنك إنشاء Device
كائن باستخدام بناء الجملة التالي:
const device = new mediasoupClient.Device();
بعد ذلك ، تحتاج إلى جلب معلومات "Router RTP Capabilities" من خادم Mediasoup. تحتوي قدرات Router RTP على معلمات فنية مثل برامج الترميز المدعومة ودعم الخادم ومعلمات إدارة الوسائط ذات الصلة. يمكنك استرداد هذه المعلومات من خلال واجهة برمجة تطبيقات HTTP أو عن طريق الاتصال المباشر بخادم Mediasoup.
بعد الحصول على إمكانيات Router RTP ، استخدم الطريقة device.load()
لتحميل هذه المعلومات في Device
الكائن.
على سبيل المثال:
const routerRtpCapabilities = await fetchRouterRtpCapabilities(); // Function to fetch Router RTP Capabilities from the Mediasoup server
await device.load({ routerRtpCapabilities });
إنشاء واستخدام النقل
لإرسال واستقبال تدفقات الوسائط ، تحتاج إلى إنشاء Transport
كائن واستخدامه. يمثل كل Transport
كائن اتصال وسائط فريدًا بخادم Mediasoup. يمكنك إنشاء Transport
كائن باستخدام أساليب device.createSendTransport()
أو device.createRecvTransport()
.
على سبيل المثال:
const transport = await device.createSendTransport({
// Transport configuration
});
عند إنشاء وسيلة نقل ، يمكنك توفير معلمات التكوين مثل عنوان URL للخادم ومنفذ الاتصال. بالإضافة إلى ذلك ، يمكنك الاستماع إلى أحداث مثل "الاتصال" أو "الإنتاج" على Transport
الكائن للتعامل مع تفاعلات الوسائط ذات الصلة.
إنشاء واستخدام المنتج والمستهلك
لإرسال واستقبال تدفقات الوسائط ، تحتاج إلى إنشاء واستخدام Producer
الكائنات Consumer
. يمثل A Producer
مصدر وسائط تم إرساله من العميل إلى الخادم ، بينما Consumer
يمثل مصدر وسائط تم استلامه من الخادم إلى العميل. يمكنك إنشاء طريقة Producer
باستخدام transport.produce()
الطريقة ، وإنشاء طريقة Consumer
باستخدام transport.consume()
.
على سبيل المثال:
// Create Producer
const producer = await transport.produce({
kind: 'video',
// Producer configuration
});
// Create Consumer
const consumer = await transport.consume({
// Consumer configuration
});
// Use Producer and Consumer to send and receive media streams
// ...
يمكنك استخدام الأساليب والأحداث المتاحة على Producer
الكائنات Consumer
للتحكم في نقل الوسائط ، مثل إرسال البيانات أو تشغيل / إيقاف تشغيل تدفقات الوسائط أو معالجة أحداث الوسائط ذات الصلة.
الافراج عن الموارد
عند الانتهاء من الاستخدام Mediasoup-client ، تأكد من إصدار الموارد لتجنب تسرب الذاكرة ومشكلات موارد النظام. أغلق النقل وقم بإلغاء تحميل الجهاز باستخدام transport.close()
والطريقتين device.unload()
.
transport.close();
device.unload();
هذه هي الخطوات الأساسية للتثبيت والتكوين والاستخدام Mediasoup-client في مشروعك. راجع Mediasoup-client الوثائق والأمثلة التفصيلية الإضافية لمعرفة المزيد حول ميزاتها وإمكانياتها القوية.