سنت او اسسیستم عامل لینوکسمدیریت سرورمقالات وب
چگونه استریسک(Asterisk) را بر روی سنت او اس ۷ نصب کنیم؟
همانطور که می دانید استریسک یکی از فریم ورک های متن بازی است که برای ایجاد اپلیکیشن های برقراری ارتباط مورد استفاده قرار می گیرد. شما می توانید از این گزینه برای تبدیل رایانه محلی یا سرورتان به سرور برقراری ارتباط استفاده کنید. استریسک برای قدرت بخشیدن به سیستم های مختلف مورد استفاده قرار می گیرد. در این مقاله به شما نشان خواهیم داد چگونه می توانید استریسک را بر روی سنت او اس ۷ نصب و اجرا کنید. اما قبل از اینکه وارد بحث اصلی خودمان شویم باید برخی از آماده سازی ها را انجام داده باشیم. پس همراه وب ایده باشید.
گام اول: غیر فعال کردن SElinux در سنت او اس ۷
برای انجام اینکار ابتدا از طریق SSH وارد سرور مجازی خود شوید و از ویرایشگر متن دلخواهتان استفاده نمایید. /etc/selinux/config را باز کنید و SELINUX را غیر فعال سازید:
1 | # vim /etc/selinux/config |
خط SELinux حالا باید شبیه کد دستوری زیر باشد:
1 | SELINUX=disabled |
حالا سیستم خود را ریبوت کنید. دوباره به سیستم خود بازگردید.
گام دوم: نصب پکیج های مورد نیاز
برای نصب استریسک به چند پکیج نیاز دارید که باید بر روی سرورتان نصب شود. می توانید از دستور زیر برای نصب پکیج های مورد نیاز استفاده کنید:
1 | # yum install -y epel-release dmidecode gcc-c++ ncurses-devel libxml2-devel make wget openssl-devel newt-devel kernel-devel sqlite-devel libuuid-devel gtk2-devel jansson-devel binutils-devel |
قبل از اینکه به سراغ گام بعدی برویم باید یک کاربر جدید ایجاد کنیم. برای اینکار از دستورات زیر کمک بگیرید:
1 2 3 | # adduser asterisk -c "Asterisk User" # su asterisk |
در مرحله بعدی PJSIP را نصب کنید که یک لایبرری متن باز مالتی مدیاست که از پروتکل های استاندارد موجود استفاده می کند.این درایور کانال SIP استریسک است که باید وضوح تماس ها را بهبود ببخشد.
برای اینکه بتوانید آخرین نسخه از آن را دریافت نمایید در ابتدا یک دایرکتوری موقت در جایی که پکیج های خود را خواهیم ساخت ایجاد نماییم:
1 | $ mkdir ~/build && cd ~/build |
حالا به صفحه دانلود PJSIP بروید و پکیج را به کمک دستور زیر انتخاب نمایید و دانلود کنید.
1 | $ wget https://www.pjsip.org/release/2.8/pjproject-2.8.tar.bz2 |
بعد از اینکه فرآیند دانلود کامل شد، فایل را اکسترکت کنید و آن را به دایرکتوری مدنظر تغییر دهید:
1 2 3 | $ tar xvjf pjproject-2.8.tar.bz2 $ cd pjproject-2.8 |
در گام بعدی، باید پکیج خود را برای کامپایل شدن آماده سازید . می توانید از دستور زیر استفاده کنید:
1 | $ ./configure CFLAGS="-DNDEBUG -DPJ_HAS_IPV6=1" --prefix=/usr --libdir=/usr/lib64 --enable-shared --disable-video --disable-sound --disable-opencore-amr |
نباید خطا یا پیغام هشداری دریافت کنید. مطمئن شوید که همه چیز به درستی به پیش رفته است:
1 | $ make dep |
حالا می توانیم نصب خود را کامل کنیم:
1 | $ make && sudo make install && sudo ldconfig |
در نهایت مطمئن شوید که همه لایبرری ها نصب شده اند و حضور دارند:
1 | $ ldconfig -p | grep pj |
باید خروجی زیر را داشته باشید:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 | libpjsua2.so.2 (libc6,x86-64) => /lib64/libpjsua2.so.2 libpjsua2.so (libc6,x86-64) => /lib64/libpjsua2.so libpjsua.so.2 (libc6,x86-64) => /lib64/libpjsua.so.2 libpjsua.so (libc6,x86-64) => /lib64/libpjsua.so libpjsip.so.2 (libc6,x86-64) => /lib64/libpjsip.so.2 libpjsip.so (libc6,x86-64) => /lib64/libpjsip.so libpjsip-ua.so.2 (libc6,x86-64) => /lib64/libpjsip-ua.so.2 libpjsip-ua.so (libc6,x86-64) => /lib64/libpjsip-ua.so libpjsip-simple.so.2 (libc6,x86-64) => /lib64/libpjsip-simple.so.2 libpjsip-simple.so (libc6,x86-64) => /lib64/libpjsip-simple.so libpjnath.so.2 (libc6,x86-64) => /lib64/libpjnath.so.2 libpjnath.so (libc6,x86-64) => /lib64/libpjnath.so libpjmedia.so.2 (libc6,x86-64) => /lib64/libpjmedia.so.2 libpjmedia.so (libc6,x86-64) => /lib64/libpjmedia.so libpjmedia-videodev.so.2 (libc6,x86-64) => /lib64/libpjmedia-videodev.so.2 libpjmedia-videodev.so (libc6,x86-64) => /lib64/libpjmedia-videodev.so libpjmedia-codec.so.2 (libc6,x86-64) => /lib64/libpjmedia-codec.so.2 libpjmedia-codec.so (libc6,x86-64) => /lib64/libpjmedia-codec.so libpjmedia-audiodev.so.2 (libc6,x86-64) => /lib64/libpjmedia-audiodev.so.2 libpjmedia-audiodev.so (libc6,x86-64) => /lib64/libpjmedia-audiodev.so libpjlib-util.so.2 (libc6,x86-64) => /lib64/libpjlib-util.so.2 libpjlib-util.so (libc6,x86-64) => /lib64/libpjlib-util.so libpj.so.2 (libc6,x86-64) => /lib64/libpj.so.2 libpj.so (libc6,x86-64) => /lib64/libpj.so |
گام سوم: نصب استریسک بر روی سنت او اس ۷
خوب حالا ما آماده نصب استریسک بر روی سرور مجازی خود هستیم. به دایرکتوری زیر بروید:
1 | $ cd ~/build |
به کمک دستور زیر به صفحه دانلود استریسک بروید و آخرین نسخه از آن را دانلود نمایید:
1 | $ wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-16-current.tar.gz |
مطمئن شوید که آخرین نسخه از استریسک را بر روی سیستم خود دانلود می کنید. حالا فایل را اکسترکت کنید و به دایرکتوری که به تازگی ایجاد کرده اید بروید:
1 2 3 | $ tar -zxvf asterisk-16-current.tar.gz $ cd asterisk-16.0.0 |
اگر می خواهید Mp3 را هم فعال کنید و موسیقی را پلی نمایید باید چند مورد از dependency ها را هم نصب نمایید. این گام برای شما اختیاری است:
1 2 3 | # yum install svn # ./contrib/scripts/get_mp3_source.sh |
بعد از گام دوم ( گام اختیاری)باید خروجی شبیه خروجی زیر داشته باشید:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | A addons/mp3 A addons/mp3/MPGLIB_README A addons/mp3/common.c A addons/mp3/huffman.h A addons/mp3/tabinit.c A addons/mp3/Makefile A addons/mp3/README A addons/mp3/decode_i386.c A addons/mp3/dct64_i386.c A addons/mp3/MPGLIB_TODO A addons/mp3/mpg123.h A addons/mp3/layer3.c A addons/mp3/mpglib.h A addons/mp3/decode_ntom.c A addons/mp3/interface.c |
خوب حالا اسکریپت پیکربندی را اجرا کنید تا پکیج ها را برای کامپایل شدن آماده سازید:
1 2 3 4 5 | $ sudo contrib/scripts/install_prereq install $ ./configure --libdir=/usr/lib64 --with-jansson-bundled $ make menuselect |
اگر یکی از dependency ها را فراموش کرده اید آن را نصب کنید. مثلا من با خطای زیر مواجه شدم:
1 | configure: error: patch is required to configure bundled pjproject |
برای حل این مشکل می توان از دستور زیر استفاده کرد:
1 | # yum install patch |
دوباره باید اسکریپت پیکربندی را اجرا کنیم.
1 | $ make menuselect |
بعد از چند ثانیه باید فهرستی از قابلیت هایی که قرار است فعال شود دریافت کنید.
اگر می خواهید از موسیقی در قابلیت Hold استفاده کنید باید قابلیت format_mp3 را از بخش Add-ons فعال نمایید. فهرست خود را ذخیره کنید و دستور زیر را اجرا نمایید:
1 | make && sudo make install |
برای نصب فایل پیکربندی نمونه دستور زیر را اجرا کنید:
1 | sudo make samples |
برای اجرای استریسک در بوت از دستور زیر کمک بگیرید:
1 | sudo make config |
به عنوان کاربر روت دسترسی دایرکتوری ها و فایل های زیر را به روزرسانی نمایید:
1 2 3 4 5 | # chown asterisk. /var/run/asterisk # chown asterisk. -R /etc/asterisk # chown asterisk. -R /var/{lib,log,spool}/asterisk |
در نهایت می توانید نصبیات خود را با دستور زیر تست کنید:
1 2 3 | $ sudo service asterisk start $ sudo asterisk -rvv |
باید خروجی شبیه خروجی زیر داشته باشید:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | Asterisk 16.0.0, Copyright (C) 1999 - 2018, Digium, Inc. and others. Created by Mark Spencer <markster@digium.com> Asterisk comes with ABSOLUTELY NO WARRANTY; type 'core show warranty' for details. This is free software, with components licensed under the GNU General Public License version 2 and other licenses; you are welcome to redistribute it under certain conditions. Type 'core show license' for details. ========================================================================= Connected to Asterisk 16.0.0 currently running on asterisk (pid = 3985) asterisk*CLI> |
اگر می خواهید فهرستی از دستورات موجود را ببینید بهتر است از دستور زیر کمک بگیرید:
1 | asterisk*CLI> core show help |
برای خروج از Asterisk prompt دستور زیر را تایپ کنید.
1 | asterisk*CLI> exit |
خوب کار شما تمام شده است.
عالی بود ممنونم
با احترام
با تشکر از مطلب مفید و زحمتی که کشیدید نویسنده محترم