Nội Dung Bài Viết
Hướng dẫn cài Asterisk11 FreePBX11 centos6
Tiếp tục bài viết tìm hiểu về VOIP mã nguồn mở. Hôm nay mình hướng dẫn các bạn cài Freepbx giao diện để quản lí tổng đài asterisk không cần thao tác qua commad line nhàm chán nữa và mọi thay đổi sẽ được update thông qua giao diện này
1.Chuẩn bị
Máy ảo vps hoặc VMvare.
Hệ điều hành: Centos 6.10
Ram: 1G
HDD: 10-20G hoặc hơn
2.Cài đặt.
Tiếp tục sau khi cài asterisk thành công trong bài viết hướng dẫn cài asterisk 11.
Cài các gói bổ sung.
yum install libtool-ltdl-devel unixODBC unixODBC-devel mysql-connector-odbc
rpm -Uvh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
yum install iksemel-devel spandsp-devel
pear install db-1.7.14
Cấp quyền cho user asterisk:
sed -i "s/User apache/User asterisk/" /etc/httpd/conf/httpd.conf
sed -i "s/Group apache/Group asterisk/" /etc/httpd/conf/httpd.conf
Tải FreePBX và giải nén.
wget http://mirror.freepbx.org/freepbx-2.11.0.43.tgz tar vxfz freepbx-2.11.0.43.tgz
Cấp quyền cho thư mục bên dưới:
chown asterisk. /var/run/asterisk chown -R asterisk. /etc/asterisk chown -R asterisk. /var/{lib,log,spool}/asterisk chown -R asterisk. /usr/lib/asterisk mkdir /var/www/html chown -R asterisk. /var/www/
Cài Mysql:
service mysqld start
cd /usr/src/freepbx
export ASTERISK_DB_PW=amp109
mysqladmin -u root create asterisk
mysqladmin -u root create asteriskcdrdb
mysql -u root asterisk < SQL/newinstall.sql
mysql -u root asteriskcdrdb < SQL/cdr_mysql_table.sql
mysql -u root -e "GRANT ALL PRIVILEGES ON asterisk.* TO asteriskuser@localhost IDENTIFIED BY '${ASTERISK_DB_PW}';"
mysql -u root -e "GRANT ALL PRIVILEGES ON asteriskcdrdb.* TO asteriskuser@localhost IDENTIFIED BY '${ASTERISK_DB_PW}';"
mysql -u root -e "flush privileges;"
Đặt pass cho mysql
mysqladmin -u root password 'abcdef'
Cài FreePBX
cd /usr/src/freepbx
./start_asterisk start
./install_amp
amportal a ma installall
amportal a reload
Chọn mặc định và nhấn ENTER khi hỏi.
Nếu bị lỗi thử lại:
./install_amp --username=asteriskuser --password=$ASTERISK_DB_PW
Default username is: admin
Default pw is: admin
Cài đặt freepbx tự đông boot khi khở động:
echo /usr/local/sbin/amportal start >> /etc/rc.local
chkconfig httpd on
chkconfig mysqld on
Cuối cùng restart lại vps hoặc dùng lệnh bên dưới
ln -s /var/lib/asterisk/moh /var/lib/asterisk/mohmp3
amportal restart
Dùng chorme hoặc firefox nhập ip tổng đài try cập thử.
Nếu lỗi sau khi update module thử lại
cd /etc/asterisk
rm ccss.conf confbridge.conf features.conf sip.conf iax.conf logger.conf extensions.conf sip_notify.conf
Vào lại moldule admin trên web và cài lại.
Cấu hình thêm odbc nếu muốn nhận được report cuộc gọi qua ODBC
nano /etc/odbc.ini
[MySQL-asteriskcdrdb]
Description = MySQL ODBC Driver
Driver = MySQL
Socket = /var/lib/mysql/mysql.sock
Server = localhost
Database = asteriskcdrdb
Option = 3
Kiểm tra cài đặt
odbcinst -s -q
nano /etc/asterisk/res_odbc_additional.conf
[asteriskcdrdb]
enabled=>yes
dsn=>MySQL-asteriskcdrdb
pooling=>no
limit=>1
pre-connect=>yes
username=>asteriskuser
password=>amp109
Kiểm tra cài đặt
isql -v MySQL-asteriskcdrdb asteriskuser amp109
+---------------------------------------+
| Connected! |
| |
| sql-statement |
| help [tablename] |
| quit |
| |
+---------------------------------------+
SQL>
Thoát.
Vào đường dẫn sau và chỉnh lại phần cấu hình.
nano /etc/asterisk/cdr_adaptive_odbc.conf
[first]
connection=asteriskcdrdb
table=cdr
alias start => calldate
If cdr-mysql
module is enabled at the same time as the cdr odbc
you will get double entries in the CDR DB. Therefore we need to disable cdr-mysql.
mv /etc/asterisk/cdr_mysql.conf /etc/asterisk/cdr_mysql.conf.disabled
amportal restart