ติดตั้ง Asterisk 11.3.0 + DAHDI 2.6.2 + CentOS 6.4

Asterisk Opensource IP Pbx

ติดตั้ง Asterisk 11.3.0 + DAHDI 2.6.2 + CentOS 6.4

โพสต์โดย nuiz » 30 เม.ย. 2013 23:41

ในบทความนี้ท่านจะได้
Asterisk 11.3.0
(มีแต่ SIP/IAX2 ครับ ไม่มี H.323)
DAHDI 2.6.2
Libpri 1.4.14
CentOS 6.4

1. ติดตั้งและอัพเดท CentOS
ติดตั้ง CentOS 6.x ให้เรียบร้อยครับ เสร็จแล้วอย่าลืม Update ท่านจะได้ CentOS 6.x เวอร์ชั่นล่าสุด (เวอร์ชั่นล่าสุดที่ผมใช้ทดสอบกับบทความนี้คือ 6.4 ครับ)
โค้ด: เลือกทั้งหมด
yum -y update


2. ปิด SELinux
โค้ด: เลือกทั้งหมด
vi /etc/selinux/config

แก้ไขบรรทัด SELINUX เป็น diabled
โค้ด: เลือกทั้งหมด
SELINUX=disabled


3. ปิด iptables, ip6tables
ปิดชั่วคราวก่อนครับ (ถ้าเปิดไว้ หรือถ้าไม่แน่ใจว่าเปิดไว้หรือเปล่า) ไว้ทำเสร็จหมดแล้วค่อยเปิดใหม่
โค้ด: เลือกทั้งหมด
chkconfig iptables off
chkconfig ip6tables off
service iptables stop
service ip6tables stop


4. ติดตั้ง Packages เพิ่มเติม
ถ้า Packages ไหนมีติดตั้งไว้แล้วก็ไม่เป็นไรครับ
โค้ด: เลือกทั้งหมด
yum -y install kernel-devel kernel-headers gcc gcc-c++ bison flex patch make ncurses ncurses-devel newt newt-devel autoconf automake libxml2-devel mysql mysql-devel mysql-server libtiff libtiff-devel net-snmp net-snmp-libs net-snmp-devel net-snmp-utils net-snmp-perl wireshark httpd httpd-devel libc-client libmcrypt mod_ssl ntp libtool-ltdl libtool-ltdl-devel libc-client-devel mhash  mhash-devel libxslt libxslt-devel sqlite-devel wget

แล้ว reboot อีกทีครับ

5. ติดตั้ง radiusclient-ng
โค้ด: เลือกทั้งหมด
cd /home
wget 'http://www.voip4share.com/sources/radiusclient-ng-0.5.6.tar.gz'
tar xzvf radiusclient-ng-0.5.6.tar.gz -C /usr/src/
cd /usr/src/radiusclient-ng-0.5.6
./configure --prefix=/usr --exec-prefix=/usr --sysconfdir=/etc --localstatedir=/var
make && make install


6. ติดตั้ง spandsp
โค้ด: เลือกทั้งหมด
cd /home
wget 'http://www.voip4share.com/sources/spandsp-0.0.6pre21.tgz'
tar xzvf spandsp-0.0.6pre21.tgz -C /usr/src
cd /usr/src/spandsp-0.0.6
./configure --prefix=/usr --exec-prefix=/usr --sysconfdir=/etc --localstatedir=/var
make clean
make
make install



7. ติดตั้ง dahdi และ oslec
โค้ด: เลือกทั้งหมด
cd /home
wget 'http://www.voip4share.com/sources/dahdi-linux-complete-2.6.2+2.6.2-1.tar.gz'
tar xzvf dahdi-linux-complete-2.6.2+2.6.2-1.tar.gz -C /usr/src
cd /usr/src/dahdi-linux-complete-2.6.2+2.6.2
make all
make install
make config


8. ติดตั้ง libpri
โค้ด: เลือกทั้งหมด
cd /home
wget 'http://www.voip4share.com/sources/libpri-1.4.14.tar.gz'
tar xzvf libpri-1.4.14.tar.gz -C /usr/src
cd /usr/src/libpri-1.4.14
make
make install


9. ติดตั้ง asterisk 11.3.0
โค้ด: เลือกทั้งหมด
cd /home
wget 'http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-11.3.0.tar.gz'
tar xzvf asterisk-11.3.0.tar.gz -C /usr/src
cd /usr/src/asterisk-11.3.0
./configure --prefix=/usr --exec-prefix=/usr --sysconfdir=/etc --localstatedir=/var --disable-asteriskssl
make menuselect

เลือกประมาณนี้ ใช้ปุ่ม Tab, Keys และ Enter ช่วยเลือก
โค้ด: เลือกทั้งหมด
Add-ons -> res_config_mysql, cdr_mysql
AGI Samples -> agi-test.agi, eagi-test, eagi-sphinx-test, jukebox.agi
Core Sound Packages -> CORE-SOUNDS-EN-G729
Extras Sound Packages -> EXTRA-SOUNDS-EN-G729

เสร็จแล้วเริ่มต้นติดตั้ง
โค้ด: เลือกทั้งหมด
make
make install
make samples
make config


10. แก้ไขไฟล์ asterisk.conf
ดีฟอลท์ของ Asterisk เวอร์ชั่นหลังๆนี้นะครับ เขาจะไม่ปล่อยให้โชว์ข้อความมากมายเหมือนเวอร์ชั่นก่อนหน้า นัยน์ว่าต้องการลดขนาด Log file หน่ะครับ ถ้าโชว์ข้อความมากเกินไปไฟล์มันก็จะใหญ่ เดาๆเอาหน่ะครับ ข้อความที่ผมว่าไว้ก็คือที่เราเห็นตอนที่รันคำสั่ง asterisk -r หน่ะครับ
ถ้าต้องการให้เห็นข้อความเยอะๆเหมือนเดิม มีวิธีครับ

10.1 ให้แสดงชั่วครั้งชั่วคราว
แทนที่จะรันคำสั่ง asterisk -r เฉยๆก็ให้รัน asterisk -rvvvv ครับ จะใส่ v กี่ตัวก็ได้ 1 หรือ 2 หรือ 3 หรือ 4 หรือ 5 ก็แล้วแต่ครับ ตัว v นี้ย่อมาจาก Verbose

10.2 แก้อย่างถาวร
โดยแก้ไขไฟล์ /etc/asterisk/asterisk.conf ครับ บรรทัดนี้

;verbose=3

ให้เอาเครื่องหมาย ; หน้าบรรทัดออก แล้วเซฟไฟล์

11. สตาร์ท Asterisk
โค้ด: เลือกทั้งหมด
chkconfig asterisk on
service asterisk start

ลองเข้า Asterisk Console
โค้ด: เลือกทั้งหมด
asterisk -r

เข้าได้ครับ
โค้ด: เลือกทั้งหมด
Asterisk 11.3.0, Copyright (C) 1999 - 2012 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 11.3.0 currently running on ivr (pid = 7748)
asterisk*CLI>


12. ติดตั้ง G.723, G.729
CPU เครื่องผมเป็น Core i3 มี sse4 ดังตัวอย่าง รันบนระบบปฏิบัติการ CentOS x86_64
โค้ด: เลือกทั้งหมด
processor       : 0
vendor_id       : GenuineIntel
cpu family      : 6
model           : 42
model name      : Intel(R) Core(TM) i3-2375M CPU @ 1.50GHz
stepping        : 7
cpu MHz         : 1496.602
cache size      : 3072 KB
fpu             : yes
fpu_exception   : yes
cpuid level     : 13
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss syscall nx rdtscp lm constant_tsc up arch_perfmon pebs bts xtopology tsc_reliable nonstop_tsc aperfmperf unfair_spinlock pni pclmulqdq ssse3 cx16 sse4_1 sse4_2 popcnt xsave avx hypervisor lahf_lm arat epb xsaveopt pln pts dts
bogomips        : 2993.20
clflush size    : 64
cache_alignment : 64
address sizes   : 40 bits physical, 48 bits virtual
power management:

ดาวน์โหลด G.729 และ G.723.1 Codecs
โค้ด: เลือกทั้งหมด
cd /home
wget http://asterisk.hosting.lv/bin/codec_g723-ast110-gcc4-glibc-x86_64-core2-sse4.so
wget http://asterisk.hosting.lv/bin/codec_g729-ast110-gcc4-glibc-x86_64-core2-sse4.so

ก๊อบปี้ไฟล์ Codec พร้อมเปลี่ยนชื่อ แต่ให้เช็คก่อนนะครับว่าเครื่องของท่านมันเป็น /usr/lib/asterisk/modules แบบเดียวกับเครื่องของผมหรือว่าเป็น /usr/lib64/asterisk/modules ปรับให้ตรงด้วย
โค้ด: เลือกทั้งหมด
cp codec_g723-ast110-gcc4-glibc-x86_64-core2-sse4.so /usr/lib/asterisk/modules/codec_g723.so
cp codec_g729-ast110-gcc4-glibc-x86_64-core2-sse4.so /usr/lib/asterisk/modules/codec_g729.so


13. สั่งโหลด codec_g729.so, codec_g723.so
โค้ด: เลือกทั้งหมด
asterisk -r

รันคำสั่งต่อไปนี้
โค้ด: เลือกทั้งหมด
module load codec_g729.so
module load codec_g723.so

โชว์ Codec Translation
โค้ด: เลือกทั้งหมด
core show translation

ผลลัพธ์จะเห็น Row/Column ของ g723 และ g729 มีตัวเลขแล้ว

14. คอนฟิก Codec G.723.1 ให้ใช้แบบ High Bit Rate (6.3 kbps)
แก้ไขไฟล์ /etc/asterisk/codecs.conf เพิ่มบรรทัดต่อไปนี้
โค้ด: เลือกทั้งหมด
[g723]
sendrate => 63


15. ตรวจสอบดูความเรียบร้อยอีกครั้ง
รีสตาร์ทเครื่อง เช็คว่า Asterisk สตาร์ทหรือไม่ จากนั้นคอนฟิก Dialplan, SIP Extensions แล้วโทรทดสอบดู เวอร์คดีครับ ผมลองแล้ว

เป็นอันว่าติดตั้ง Asterisk 11.3.0 เสร็จแล้วครับ ราบรื่น ไม่มีปัญหาอะไร

บทความที่เกี่ยวข้อง
เทคนิคการแก้ไขปัญหาคอมไพล์ DAHDI ไม่ผ่านบน CentOS 5.9
เทคนิคการแก้ไขปัญหาสตาร์ท Asterisk 11.2.1 ไม่ได้
เทคนิคการติดตั้ง Asterisk-GUI เพื่อคอนฟิก Asterisk
เทคนิคการติดตั้ง CentOS 6.4
เทคนิคการติดตั้ง Asterisk 12.5.0 + DAHDI 2.10.0 บน CentOS 5.10
เทคนิคการติดตั้ง Asterisk 16.x + DAHDI 2.11.1 บน CentOS 7
เทคนิคการติดตั้ง Asterisk 15.x + DAHDI 2.11.1 บน CentOS 7
** หากมีปัญหากับอุปกรณ์ที่ซื้อมาเองหรือบริการที่ทำขึ้นมาเอง ให้โพสต์ถามในเว็บบอร์ดนี้นะครับ **
** งานเร่งด่วนติดต่อว่าจ้างที่เบอร์ 08-5161-9439 อีเมล์ iamaladin@gmail.com ไลน์ NuizVoip ครับ **
nuiz
Diamond Member
 
โพสต์: 6995
ลงทะเบียนเมื่อ: 24 มี.ค. 2010 09:33

ย้อนกลับไปยัง Asterisk SIP Server

ผู้ใช้งานขณะนี้

่กำลังดูบอร์ดนี้: ไม่มีสมาชิกใหม่ และ บุคคลทั่วไป 1 ท่าน

cron