เมื่อกี้เข้าไปดูเว็บ http://downloads.asterisk.org ก็เห็นว่าปล่อย Asterisk 10.9.0 เวอร์ชั่น Stable ออกมาได้หลายวันแล้ว เลยลองติดตั้งดูครับ ส่วนมากก็ก๊อบมาจากตอนติดตั้ง Asterisk 10.8.0 นั่นแหล่ะครับ แก้นิดหน่อย
1. ติดตั้งและอัพเดท CentOS
ติดตั้ง CentOS ให้เรียบร้อยครับ เสร็จแล้วอย่าลืม Update
- โค้ด: เลือกทั้งหมด
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
แล้ว 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. ติดตั้ง pwlib
- โค้ด: เลือกทั้งหมด
cd /home
wget 'http://www.voip4share.com/sources/pwlib-v1_10_3-src-tar.gz'
tar xzvf pwlib-v1_10_3-src-tar.gz -C /usr/src
cd /usr/src/pwlib_v1_10_3
./configure --prefix=/usr --exec-prefix=/usr --localstatedir=/var --sysconfdir=/etc
make clean
make optshared
make install
8. พิมพ์คำสั่งต่อไปนี้
- โค้ด: เลือกทั้งหมด
export PWLIBDIR=/usr/src/pwlib_v1_10_3
export OPENH323DIR=/usr/src/openh323_v1_18_0
export LD_LIBRARY_PATH=$PWLIBDIR/lib:$OPENH323DIR/lib
9. สร้างไฟล์ /usr/include/linux/compiler.h
- โค้ด: เลือกทั้งหมด
vi /usr/include/linux/compiler.h
- โค้ด: เลือกทั้งหมด
#ifndef __LINUX_COMPILER_H
#define __LINUX_COMPILER_H
#define likely(x) __builtin_expect((x),1)
#define unlikely(x) __builtin_expect((x),0)
#endif /* __LINUX_COMPILER_H */
10. ติดตั้ง openh323
- โค้ด: เลือกทั้งหมด
cd /home
wget 'http://www.voip4share.com/sources/openh323-v1_18_0-src-tar.gz'
tar xzvf openh323-v1_18_0-src-tar.gz -C /usr/src
cd /usr/src/openh323_v1_18_0
./configure --prefix=/usr --exec-prefix=/usr --localstatedir=/var --sysconfdir=/etc
make clean
make optshared
make install
11. ติดตั้ง dahdi และ oslec
- โค้ด: เลือกทั้งหมด
cd /home
wget 'http://www.voip4share.com/sources/dahdi-linux-complete-2.6.1+2.6.1-1.tar.gz'
tar xzvf dahdi-linux-complete-2.6.1+2.6.1-1.tar.gz -C /usr/src
cd /usr/src/dahdi-linux-complete-2.6.1+2.6.1
make all
make install
make config
12. ติดตั้ง libpri
- โค้ด: เลือกทั้งหมด
cd /home
wget 'http://www.voip4share.com/sources/libpri-1.4.12.tar.gz'
tar xzvf libpri-1.4.12.tar.gz -C /usr/src
cd /usr/src/libpri-1.4.12
make
make install
13. ติดตั้ง asterisk 10.9.0
- โค้ด: เลือกทั้งหมด
cd /home
wget 'http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-10.9.0.tar.gz'
tar xzvf asterisk-10.9.0.tar.gz -C /usr/src
cd /usr/src/asterisk-10.9.0
./configure --prefix=/usr --exec-prefix=/usr --sysconfdir=/etc --localstatedir=/var
make menuselect
เลือกประมาณนี้ ใช้ปุ่ม Tab, Keys และ Enter ช่วยเลือก
- โค้ด: เลือกทั้งหมด
Add-ons -> res_config_mysql, cdr_mysql
Channel Drivers -> chan_h323
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
14. สตาร์ท Asterisk
- โค้ด: เลือกทั้งหมด
chkconfig asterisk on
service asterisk start
ลองเข้า Asterisk Console
- โค้ด: เลือกทั้งหมด
asterisk -r
- โค้ด: เลือกทั้งหมด
Asterisk 10.9.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 10.9.0 currently running on backup (pid = 31790)
Verbosity is at least 3
backup*CLI>
15. ติดตั้ง G.723, G.729
CPU เครื่องผมเป็น Xeon มี sse4 บนระบบปฏิบัติกาาร CentOS i386
- โค้ด: เลือกทั้งหมด
cd /home
wget http://asterisk.hosting.lv/bin/codec_g723-ast100-gcc4-glibc-core2-sse4.so
wget http://asterisk.hosting.lv/bin/codec_g729-ast100-gcc4-glibc-core2-sse4.so
- โค้ด: เลือกทั้งหมด
cp codec_g723-ast100-gcc4-glibc-core2-sse4.so /usr/lib/asterisk/modules/codec_g723.so
cp codec_g729-ast100-gcc4-glibc-core2-sse4.so /usr/lib/asterisk/modules/codec_g729.so
15. โหลด 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 มีตัวเลขแล้ว
16. ตรวจสอบดูความเรียบร้อยอีกครั้ง
รีสตาร์ทเครื่อง เช็คว่า Asterisk สตาร์ทหรือไม่ จากนั้นคอนฟิก Dialplan, SIP Extensions แล้วโทรทดสอบดู เวอร์คดีครับ ผมลองแล้ว
ติดตั้ง Asterisk 10.9.0 เสร็จแล้วครับ
เทคนิคการติดตั้ง Asterisk 16.x + DAHDI 2.11.1 บน CentOS 7
เทคนิคการติดตั้ง Asterisk 15.x + DAHDI 2.11.1 บน CentOS 7
เทคนิคการติดตั้ง Asterisk 13.x + DAHDI 2.11.1 บน CentOS 7