หน้า 1 จากทั้งหมด 1

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

โพสต์โพสต์แล้ว: 20 พ.ค. 2013 18:45
โดย nuiz
ขณะนี้ Asterisk ได้ปรับปรุงจนมาถึงเวอร์ชั่น 11.5.1 แล้ว ต่อไปนี้จะแนะนำวิธีการติดตั้ง Asterisk 11.5.1 ครับ ในบทความนี้ท่านจะได้

Asterisk 11.5.1 (มีแต่ 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 ครับ) ตามบทความนี้ เทคนิคการติดตั้ง CentOS 6.4

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 libuuid-devel

แล้ว 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.5.1
โค้ด: เลือกทั้งหมด
cd /home
wget 'http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-11.5.1.tar.gz'
tar xzvf asterisk-11.5.1.tar.gz -C /usr/src
cd /usr/src/asterisk-11.5.1
./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
โค้ด: เลือกทั้งหมด
chkconfig asterisk on
service asterisk start

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

เข้าได้ครับ
โค้ด: เลือกทั้งหมด
Asterisk 11.5.1, Copyright (C) 1999 - 2013 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.5.1 currently running on localhost (pid = 24651)
localhost*CLI>


11. ติดตั้ง G.723, G.729

** ดูรายละเอียดวิธีการติดตั้ง G.723, G.729 Codec ได้ที่บทความนี้ครับ เทคนิคการติดตั้ง G.723, G.729 บน Asterisk **

เมื่อใช้คำสั่ง cat /proc/cpuinfo บน Linux prompt ก็ได้ว่า CPU เครื่องผมเป็น Core 2 Quad มี sse4 ดังตัวอย่าง

โค้ด: เลือกทั้งหมด
processor       : 0
vendor_id       : GenuineIntel
cpu family      : 6
model           : 23
model name      : Intel(R) Core(TM)2 Quad CPU    Q8400  @ 2.66GHz
stepping        : 10
cpu MHz         : 2666.625
cache size      : 2048 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 mmx fxsr sse sse2 ss syscall nx lm constant_tsc up arch_perfmon pebs bts xtopology tsc_reliable nonstop_tsc aperfmperf unfair_spinlock pni ssse3 cx16 sse4_1 xsave hypervisor lahf_lm dts
bogomips        : 5333.25
clflush size    : 64
cache_alignment : 64
address sizes   : 40 bits physical, 48 bits virtual
power management:


และผมก็ได้ติดตั้ง CentOS แบบ 64 บิต (x86_64) และ Asterisk 11 ดังนั้น ดาวน์โหลด 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


12. สั่งโหลด 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 มีตัวเลขแล้ว

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


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

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

บทความที่เกี่ยวข้อง
เทคนิคการแก้ปัญหาเมื่อ Asterisk ฟ้อง No RTP Engine
เทคนิคการแก้ไขปัญหาคอมไพล์ DAHDI ไม่ผ่านบน CentOS 5.9
เทคนิคการแก้ไขปัญหาสตาร์ท Asterisk 11.2.1 ไม่ได้
เทคนิคการติดตั้ง Asterisk-GUI เพื่อคอนฟิก Asterisk
เทคนิคการติดตั้ง CentOS 6.4
เทคนิคการติดตั้ง Asterisk 17.x + DAHDI 3.1.0 บน CentOS 7