السلامـ عليكم ورحمة الله وبركاته
الأخوه الأعزاء في منتديات سوالف سوفت
اضع بين يديكم اليوم الموضوع الأول من نوعه عربيا وبتمكن وبدون منازع وأسأل الله ان يوفقني واياكم لكل خير..
في البداية سأطرح بعض الاسئلة واجيب عليها لكي تتضح الصوره عن ما هو RED5 Server وما هي استخدامته ولماذا الحاجة اليه؟؟
ماهو الـ RED5 Server ؟
هو نظام خادم فلاشي يعمل على JAVA يتم تركيبه على السيرفر او الـ VPS فتوح المصدر " مجاني" يمكن السيرفر عند تركيبة
- عمل الستريمينج للصوت والصورة " Streaming Audio/Video FLV MP3 F4V MP4 AAC M4A"
- تسجيل الفيديو من خلال Website App.
- بث مباشر للصوت والصوره ايضا من خلال Website App.
- واستخدامات اخرى ..
استخدامات RED5 Server ؟
على سبيل المثال تريد انشاء هذه الأنواع من المواقع:
- موقع لعرض الفيديو ومشاركته كما هو حال ال Youtube
- موقع دردشة صوتية مثلا
- موقع دردشة من خلال ويب كام
- مواقع البث المباشر او المسجل بكافة انواعها
- موقع لعقد اجتماعات بالفيديو لأصحاب الأعمال مثلا
- والعديد من الأفكار الاخرى
ففي الحالات السابقة او المشابهة لها فانك ستحتاج بالتأكيد لوجود RED5 Server يدير عمليات الستريمينج الخاصة بموقعك من خلال البروتكول RTMP وهو افضل بروتوكول لنقل الصوت والصوره بكفاءة عالية عوضا عن TCP/IP الذي فشل ليس تماما في نقل الصوت والصوره (لماذا؟؟ سأترك لك مجال البحث عن هذه البروتوكولات فهي ليست محور حديثنا حاليا )
لماذا الحاجة الى RED5 ؟
كما ذكرنا في الاجابة على السؤال السابق فهناك تطبيقات تحتاج الى مدير كفئ لادارة عمليات الستريمينج على السيرفر.
علما اعزائي بانه هناك بدائل عديدة لل RED5 لكن غالبيتها ليست مفتوحة المصدر و البعض منها مدفوع الثمن.
خطوات تركيب وتشغيل RED5 Server:
1- متطلبات العمل قبل الشروع في عملية التركيب:
ستحتاج للأمور التالية ويجب عليك التأكد من توفرها قبل البدء في عملية التركيب
اولا: سيرفر مستقل Dedicated server او VPS وتملك حساب الروت العام ROOT ACCESS
ثانيا: الشرح موجه لمن يملكون سيرفرات او VPS تعمل على Linux Centos 5
ثالثا: التأكد من أنك تستطيع الدخول على السيرفر من خلال Shell باسم مستخدم الروت العام من خلال اي برنامج مساعد للدخول الى ال Shell (انا استخدم putty البسيط والعملي)
2- بدء تثبيت متطلبات Red5 Server قبل بدء تثبيته!
يحتاج Red5 Server الى توفر مكونات برمجية على سيرفرك او ال VPS الخاص بك وهم على الترتيب:
اولا: JAVA JDK
ثانيا: APACHE ANT
وسنقوم بشرح تركيبها وتجهيز سيرفرك او ال VPS الخاص بكم للبدء في تثبيت RED5 Server
طريقة تثبيت JAVA JDK 1.6
من خلال برنامج الشل Shell ادخل الى حساب الروت العام للسيرفر او ال VPS وقم بتنفيذ التالي:
قم بستدعاء مثبت الجافا المرفق مع نظام تشغيل Centos 5 عبر الأمر:
كود:
yum -y install java-1.6.0-openjdk java-1.6.0-openjdk-devel
انتظر لحظات حتى يتم اكتمال التحميل واتمام التثبيت بنجاح.
طريقة تثبيت APACHE ANT 1.8.1
يمكنك تحميل اخر نسخة من Apache ant من خلال الموقع الرسمي الخاص به على الموقع التالي
( رابط ) http://ant.apache.org
كل ما عليك هو الحصول على رابط التحميل للنسخة التي تريدها من هذا الموقع
سنختار النسخة 1.8.1 الرابط المخصص لها هو:
كود:
http://apache.mirrors.redwire.net/ant/binaries/apache-ant-1.8.1-bin.tar.bz2
الآن وبعد ان حصلت على نسختك من Apache ANT اذهب الى ال Shell واستخدم الأمر wget لتحميل الملف الذي قمت باحضاره من الموقع الرسمي ل apache ant
استبدل URL بالرابط الذي حصلت عليه
الآن ستلاحظ بدء التحميل وبعد الانتهاء يقوم النظام بتخزينة باسم apache-ant-1.8.1-bin.tar.bz2
رائع جدا الآن يمكنك فك ضغط الحزمة المحملة باستخدام الأمر التالي من خلال ال Shell
كود:
tar jxvf apache-ant-1.8.1-bin.tar.bz2
سيبدأ النظام حاليا بفك الضغط عن الملفات المحملة وستكون المحصلة مجلد يحتوي على ملفات apache ant وسيحمل هذا المجلد اسم apache-ant-1.8.1
ممتاز .. الان المجلد جاهز للاستخدام, كل ما عليك فعله هو نقل هذا المجلد الى مساره الصحيح على سيرفرك او ال VPS الخاص بك
المسار الصحيح هو
حسننا لنقل المجلد المفكوك ضغطه واعادة تسمية المجلد ليصبح اسمه ant يمكنك استخدام الامر التالي في نفس المكان الذي قمت بفك ضغط الملفات فيه قبل قليل
كود:
mv apache-ant-1.8.1 /usr/local/ant
ملاحظة مهمة : لاحظ باننا ننفذ الأمر السابق في نفس المكان الذي تم فيه فك الضغط ولاحظ ان نهاية الأمر السابق لا تحتوي على / اي انه سيتم انشاء ملف داخل المجلد local باسم ant يحمل صفات المجلد الأصلي apache-ant-1.8.1 .
3- تهيئة المتطلبات التي قمنا بتثبيتها قبل قليل للعمل على السيرفر بشكل سليم دون اي مشاكل للبدء بعدها في تثبيت RED5
يتوجب علينا ان نضبط مؤشرات الخاصة ب Java JDK و apache ant لكي تعمل بشكل سليم, والطريقة سهله للغاية فقط قم من خلال الشل بتنفيذ الأوامر التالية:
كود:
export ANT_HOME=/usr/local/ant
export JAVA_HOME=/usr/lib/jvm/java
export PATH=$PATH:/usr/local/ant/bin
export CLASSPATH=.:$JAVA_HOME/lib/classes.zip
يمكنك نسخها ولصقها مره واحده او كل سطر على حذه
ملاحظة اذا لم تظهر اي رسالة عند ادخال الأوامر السابقة فهذا يعني ان كل شيئ على ما يرام
اذا كانت هناك اي رسالة خطأ فبرجاء العودة الى الخطوات السابقة والتأكد من تثبيت المكونيين السابقين بشكل سليم
نتابع العمل ..
وايضا قم بتنفيذ جملة الأوامر التالية:
كود:
echo 'export ANT_HOME=/usr/local/ant' >> /etc/bashrc
echo 'export JAVA_HOME=/usr/lib/jvm/java' >> /etc/bashrc
echo 'export PATH=$PATH:/usr/local/ant/bin' >> /etc/bashrc
echo 'export CLASSPATH=.:$JAVA_HOME/lib/classes.zip' >> /etc/bashrc
رائع الان انت جاهزء للبدء في تثبيت RED5 بدون اي مشاكل باذن الله تعالى..
4- بدء تثبيت RED5 Server
يمكنك الدخول الى هاذا الموقع للحصول على اخر نسخة مستقره من سيرفر RED5
http://code.google.com/p/red5/
سأختار تثبيت النسخة المميزة RED5 0.9.1
وقد حصلت على الرابط الخاص بها من الموقع السابق وهو ( رابط ) http://www.red5.org/downloads/0_9/red5-0.9.1.tar.gz
سأقوم بالرجوع الى ال Shell والدخول الى حساب الروت العام واستخدم الامر wget لتحميل نسخة Red5 الى سيرفرك او ال VPS الخاص بك
استبدل URL بالرابط الذي حصلت عليه
سيقوم النظام حاليا بتحميل الملف الخاص بك وسيحفظه باسم red5-0.9.1.tar.gz
الان قم بفك الضغط عن الحزمة المحملة باستخدام الأمر التالي:
كود:
tar -xzvf red5-0.9.1.tar.gz
سيبدأ نظامك بفك ضغط الملفات وتخزينها في مجلد باسم red5-0.9.1 في نفس المكان الذي قمت بفك الضغط فيه
الان ابدأ بنقل الملفات التي قمت بفك ضغطها الى مسارها الصحيح على سيرفرك
المسار الصحيح هو:
ولنقلها بطريقة سليمة استخدم الأمر التالي
كود:
mv red5-0.9.1 /usr/local/red5
ملاحظة مهمة: لا تنس ان تقوم بتنفيذ الأمر السابق في نفس المكان الذي قمت بفك الضغط فيه وشرح الأمر السابق هو ان النظام سيقوم بنقل المجلد red5-0.9.1 الى الامتداد /usr/local/ ولكن باسم جديد الا وهو red5
لتتأكد من انك نقلت الملفات بشكل سليم جرب فتح المجلد الخاص ب red5 باستخدام الامر التالي:
اذا كنت قد نفذت الخطوات بشكل سليم ستكون النتيجة بانه سيتم نقلك للمجلد red5 في مساره الصحيح بدون مشاكل..
الان دعنا نبدا شيئا من التركيز في تهيئة الملفات داخل النظام للبدأ في تثبيت RED5
ادخل الى الملف red5 في مساره الصحيح باستخدام الامر
الان جاء دور استخدام apache ant في بناء مكونات التثبيت
استخد الأمر التالي للبدء في تهيئة التثبيت:
سيبدء apache ant حاليا ببناء مكونات التثبيت لابد ان تحصل في النهاية على الرسالة التالي:
BUILD SUCCESSFUL
الآن وبعد حصولك على رسالة النجاح نفذ الامر التالي:
لا بد ان تحصل ايضا على رسالة النجاح BUILD SUCCESSFUL واذا لم تحصل عليها فلا تقلق فيكفي تماما حصولك عليها في المره الأولى
الان لنتابع تهيئة النظام للتثبيت الصحيح
تأكد بانك ما زلت في مجلد red5 باستخدام الأمر:
CODE]cd /usr/local/red5[/code]
الان ادخل داخل المجلد dist الموجود داخل المجلد الرئيسي الذي تقف عليه حاليا RED5
باستخدام الامر التالي
CODE]cd /dist[/code]
او
CODE]cd dist[/code]
الان قم بانشاء مجلد التهئية داخل المجلد الذي قمنا بالدخول عليه, واسم المجلد الجديد المراد انشاءه (conf) ويتم انشاءه باستخدام الأمر التالي
رائع الآن تم انشاء مجلد التهيئة الخاص ب RED5 داخل مجلد dist بنجاح.
لنعد الان خطوه الى الخلف (اي للمجلد الرئيسي RED5) فنحن الآن ما زلنا نقف داخل dist
استخدم الامر التالي للعودة
او اكتب المسار الصحيح كاملا للرجوع الى RED5 المجلد الرئيسي كما يلي
الان انت على المجلد الرئيسي red5 وجاهز تماما للبدأ في تشغيل المثبت
سم بالله ثم قم بتشغيل المثبت باستخدام الأمر التالي:
ثم الامر التالي:
ملاحظات مهمة: اذا نفذت الامر الاول cp -r وكان هناك خطأ تاكد من انشاءك لمجلد conf كما شرحنا سابقا
اذا ظهرت لك رسالة بان الملف red5.sh لا تملك له صلاحيات الوصول استخدم الأمر التالي وقم باعطائه التصريح 755 كما يلي
ويتم تنفيذ الامر السابق وانت واقف في مكانك على المجلد الرئيسي لنظام RED5
حسنا اذا كان كل شيئ سليم.. فستظهر لك في نهاية الشاشة الجملة التالية:
Installer service created
واذا لم تظهر برجاء مراجعة الخطوات السابقة بدقة
ستلاحظ بعد ظهور الجملة السابقة Installer service created بانه لا يمكن ان تكتب امرا جديدا فالوضع طبيعي جدا فقط قم بالضغط على ctrl+c للخروج والعودة الى وضعية الكتابة داخل ال shell
مبرووك تم التثبيت بنجاخ
4- تهيئة RED5 للعمل بعد تثبيته بنجاح
بعد ان ثبتنا RED5 سيرفر بنجاح ناتي الان لتهيئته للعمل ولبرمجة سكربت يقوم بمساعدتنا على التالي:
- بدء عمله تلقائيا بدون ايعاز مسبق
- ايقافه يدويا
- تشغيله يدويا
- اعادة تشغيله يدويا
- فحص حالته
ومكان برمجة هذا السكربت يكون في المسار التالي:
لذلك قم بالدخول الى المسار السابق باستخدم الامر:
قم بانشاء ملف باسم red5 للبدء في كتابة الكود بداخله باستخدام الامر التالي:
ملاحظة: سيقوم النظام بفتح محرر باسم الملف الذي قمت بانشاءه
اذا لم تكن وضعية الكتابه مفعلة اضغط على الحرف i من لوحة المفاتيح للبدء في كتابة الكود
طبعا الكود قمت باعداده مسبقا وستقوم بنسخه ثم لصقة في الملف الذي قمت بانشاءه
الكود هو:
كود:
#!/bin/bash
# For RedHat and cousins:
# chkconfig: 2345 85 85
# description: Red5 flash streaming server
# processname: red5
# Created By: Mohammed Qedama abo.leen@qedama.com
PROG=red5
RED5_HOME=/usr/local/red5
DAEMON=$RED5_HOME/$PROG.sh
PIDFILE=/var/run/$PROG.pid
# Source function library
. /etc/rc.d/init.d/functions
[ -r /etc/sysconfig/red5 ] && . /etc/sysconfig/red5
RETVAL=0
case "$1" in
start)
echo -n $"Starting $PROG: "
cd $RED5_HOME
$DAEMON >/dev/null 2>/dev/null &
RETVAL=$?
if [ $RETVAL -eq 0 ]; then
echo $! > $PIDFILE
touch /var/lock/subsys/$PROG
fi
[ $RETVAL -eq 0 ] && success $"$PROG startup" || failure $"$PROG startup"
echo
;;
stop)
echo -n $"Shutting down $PROG: "
killproc -p $PIDFILE
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/$PROG
;;
restart)
$0 stop
$0 start
;;
status)
status $PROG -p $PIDFILE
RETVAL=$?
;;
*)
echo $"Usage: $0 {start|stop|restart|status}"
RETVAL=1
esac
exit $RETVAL
الان قم بنسخ الكود السابق داخل الملف الذي قمت بانشاءه.
لحفظ الملف بعد لصق الكود بنجاح استخدم الامر التالي
اضغط في لوحة المفاتيح على التوالي كما يلي
زر esc
ثم علامة :
ثم حرف x
ثم اضغط انتر
سيقوم النظام بحفظ الملف المسمى ب red5
رائع الان لتجربة العمل استخدم الامر التالي:
كود:
/etc/init.d/red5 start
اذا ظهرت الرسالة التالي:
red5 is running…
فهذا يعني بان كل الامور على مايرام ومبارك عليك السيرفر الخاص بالستريمينج
معلومات مهمة:
لايقاف السيرفر في اي وقت او تشغيلة او اعادة تشغيلة او معرفة حالته استخدم الأوامر التالية
كود:
/etc/init.d/red5 start
/etc/init.d/red5 restart
/etc/init.d/red5 stop
/etc/init.d/red5 status
5- فحص السيرفر RED5
اذهب الى متصفحك وادخل الرابط التالي:
كود:
http://www.yourdomain-or-ip-address.com:5080
ستفتح عندك الان وعلى سيرفرك صفحة ترحيبية ودليل استخدام
انقر على installer وقم بتثبيت كافة المكونات
ثم انتقل الى demo
واختر فحص port tester لفحص هل يعمل RTMP PORT بشكل سليم ام لا
الى هنا فقد وصلنا الى النهاية فانت الان تملك سيرفر قوي للبدء في عملية الستريمينج
وفي الجلسة المقبلة سنبدء بتركيب الدردشة بواسطة الكام على السيرفر وطريقة بناء اي تطبيق على السيرفر ..
تقبلوا احترامي وتقديري وسامحوني على الاطالة والاخطاء الاملائية ان وجدت ..
وطبعا انا جاهز للمساعدة في اي وقت
دمتم بخير
اخوكم
ابو لين