Cài đặt A2billing

Một phần của tài liệu nghiên cứu triển khai hệ thống voip cho doanh nghiệp (Trang 46 - 101)

A2Billing, kết hợp với Asterisk, tạo nên hệ thống VoIP có tính cước tuyệt vời, mà lại hoàn toàn miễn phí. Bản A2Billing 1.7.1 có nhiều cải tiến, và một trong số đó là script đơn giản hóa quá trình cài đặt (tạo database,cài đặt file âm thanh cho a2billing). 3.4.3.1. Yêu cầu hệ thống: • Trixbox 2.8.0.4 (Asterisk 1.6 • A2billing 1.7.1 source. • Database: MySQL. • Linux: CentOS 5. • PHP 5.

• Web server (apache).

3.4.3.2. Hướng dẫn cài đặt:

• Cài các gói phụ thuộc:

# yum -y install perl-DBD-Pg subversion php

• Tải A2Billing

# mkdir /usr/local/src/a2billing # cd /usr/local/src/a2billing

• Chép và giải nén a2billing vào thư mục /usr/local/src/a2billing

# tar xvzf A2Billing_1.7.1.tar.gz

• Sao chép a2billing.conf trong /usr/local/src/a2billing/a2billing.conf vào thư mục

/etc/a2billing.conf cp a2billing.conf /etc

• Tạo database & user cho a2billing

# cd /usr/local/src/a2billing/DataBase/mysql-5.x # bash install-db.sh

Install A2Billing DataBase --- Enter Database Name : mya2billing Enter Hostname : localhost Enter UserName : root Enter Password : passw0rd

mysql --user=root --password=passw0rd --host=localhost mya2billing

Kiểm tra lại bằng phpMyAdmin, bạn sẽ thấy database mya2billing bây giờ đã có 97 tables hay tương tự.

• Chỉnh sửa file /etc/a2billing.conf : phù hợp với bước trên như sau: [database]

hostname = localhost

; port for postgres is 5432 by default port = 3306

user = a2billinguser password = a2billing dbname = mya2billing

; dbtype setting can either be mysql or postgres dbtype = mysql

• Cài đặt AGI và file âm thanh.

# cp /usr/local/src/a2billing/AGI/a2billing.php /var/lib/asterisk/agi- bin/a2billing.php

# /usr/local/src/a2billing/addons/sounds/install_a2b_sounds.sh

Thiết lập ownership cho các file:

# chown -R asterisk:asterisk /var/lib/asterisk/ # chmod 777 /etc/asterisk

# chown -R asterisk.asterisk /usr/local/src/a2billing # chmod +x /usr/share/asterisk/agi-bin/a2billing.php

• Asterisk Manager

Thêm các dòng sau vào file /etc/asterisk/manager_custom.conf (hay manager.conf nếu không dùngFreePBX)

[myasterisk] secret = mycode deny=0.0.0.0/0.0.0.0 permit=127.0.0.1/255.255.255.0 read=system,call,log,verbose,command,agent,user write=system,call,log,verbose,command,agent,user

• Tạo giao diện web

# mkdir /var/www/html/a2billing

# chown asterisk.asterisk /var/www/html/a2billing

# ln -s /usr/local/src/a2billing/admin /var/www/html/a2billing/admin # ln -s /usr/local/src/a2billing/agent /var/www/html/a2billing/agent # ln -s /usr/local/src/a2billing/customer /var/www/html/a2billing/customer # ln -s /usr/local/src/a2billing/common /var/www/html/a2billing/common # chmod 755 /usr/local/src/a2billing/admin/templates_c # chmod 755 /usr/local/src/a2billing/customer/templates_c # chmod 755 /usr/local/src/a2billing/agent/templates_c

# chown -Rf asterisk.asterisk /usr/local/src/a2billing/admin/templates_c # chown -Rf asterisk.asterisk /usr/local/src/a2billing/customer/templates_c

# chown -Rf asterisk.asc

Bây giờ ta có thể truy cập a2billing thông qua trình duyệt web () và login với quyền admin. User và Password mặc định là

user: root pass: changepassword • Tạo tác vụ Cron # vi /etc/crontab Và thêm các dòng sau : 0 6 * * * php /usr/local/src/a2billing/Cronjobs/currencies_update_yahoo.php 0 6 1 * * php /usr/local/src/a2billing/Cronjobs/a2billing_subscription_fee.php 0 * * * * php /usr/local/src/a2billing/Cronjobs/a2billing_notify_account.php 0 2 * * * php /usr/local/src/a2billing/Cronjobs/a2billing_bill_diduse.php 0 12 * * * php /usr/local/src/a2billing/Cronjobs/a2billing_batch_process.php 0 6 * * * php /usr/local/src/a2billing/Cronjobs/a2billing_batch_billing.php */5 * * * * php /usr/local/src/a2billing/Cronjobs/a2billing_batch_autodialer.php 0 * * * * php /usr/local/src/a2billing/Cronjobs/a2billing_alarm.php

• Tạo các thư mục và file cần thiết # mkdir -p /var/lib/a2billing/script # mkdir -p /var/run/a2billing # touch /var/log/asterisk/a2billing-daemon-callback.log # touch /var/log/a2billing-daemon-callback.log # touch /var/log/cront_a2b_alarm.log # touch /var/log/cront_a2b_autorefill.log # touch /var/log/cront_a2b_batch_process.log # touch /var/log/cront_a2b_bill_diduse.log # touch /var/log/cront_a2b_subscription_fee.log # touch /var/log/cront_a2b_currency_update.log

# touch /var/log/cront_a2b_invoice.log # touch /var/log/a2billing_paypal.log # touch /var/log/a2billing_epayment.log # touch /var/log/api_ecommerce_request.log # touch /var/log/api_callback_request.log # touch /var/log/a2billing_agi.log • Cài Callback

Sau đây là đoạn script cài đặt call-back cho a2billing. Thay thế LOAD_LOC cho phù hợp với thư mụcchứa source a2billing.

# LOAD_LOC=/usr/local/src/a2billing Cài đặt các gói phụ thuộc :

# yum -y install python-setuptools.noarch # yum -y install MySQL-python

# easy_install sqlalchemy # cd $LOAD_LOC/Callback/callback-daemon-py # cp $LOAD_LOC/CallBack/callback-daemon-py/build/lib/callback_daemon/a2b- callback-daemon.rc /etc/init.d/a2b-callback-daemon # chmod +x /etc/init.d/a2b-callback-daemon # cd $LOAD_LOC/CallBack/callback-daemon-py/ # python setup.py build

# python setup.py bdist_egg

# easy_install dist/callback_daemon-1.0.prod_r1528-py2.4.egg # chkconfig –add a2b-callback-daemon

# service a2b-callback-daemon start # chkconfig a2b-callback-daemon on

• Tạo Dialplan

Thêm dialplan sau vào extensions_custom.conf (hoặc extensions.conf nếu không dùng FreePBX.

exten => _X.,1,Answer exten => _X.,n,Wait(1) exten => _X.,n,DeadAGI(a2billing.php) exten => _X.,n,Wait(1) exten => _X.,n,Hangup [did] exten => _X.,1,Answer exten => _X.,n,Wait(1) exten => _X.,n,DeadAGI(a2billing.php|1|did) exten => _X.,n,Wait(1)

Bạn có thể truy cập a2billing qua ng Admin với tài khoản mặc định sau : user: root

pass: changepassword

Hình 3.5: Đăng nhập vào A2B Admin

Hình 3.6: Giao diện Admin của A2Billing

3.5. Dịch vụ FAX qua VoIP 3.5.1. Tìm hiểu về công nghệ fax 3.5.1. Tìm hiểu về công nghệ fax

Fax là kỹ thuật điện tử gửi bản sao (copy) trực tiếp qua hệ thống dây dẫn điện. Máy gửi có khả năng rà quét bản gốc, đổi thông tin thành tín hiệu rồi phát qua đường dây điện đến máy nhận ở một nơi khác. Máy nhận sau đó đổi tín hiệu ngược lại và in bản sao lên giấy.Mỗi máy fax có một số fax. Số fax cũng như số điện thoại, nhưng kết nối với thiết bị đầu cuối là máy fax.

Thông qua máy fax có thể nhận và gửi dữ liệu dạng sao chụp. Có thể hình dung đơn giản như sau: máy fax là máy photocopy từ xa, văn bản gốc được máy gửi sao chụp rồi gửi dữ liệu qua đường truyền để tới máy nhận và in ra.

Kỹ thuật fax thay thế kỹ thuật liên lạc bằng điện tín trong thập niên 1980. Ngày nay tuy fax dần dần bị email thay thế trong nhiều lĩnh vực truyền thông, fax vẫn còn được sử dụng vì những lợi điểm sau:

• Nhiều loại hồ sơ quan trọng không nên dùng email để tránh bị mất hay đánh cắp.

• Ở một số quốc gia chữ ký điện tử trên email không được tín nhiệm bằng chữ ký trên giấy fax.

Ngoài ra, các hãng công ty lớn dùng fax servers, máy tính phục vụ với khả năng chuyển các loại hồ sơ thành tín hiệu fax gửi đi, nhận fax, chuyển thành email và phát vào máy tính cá nhân của nhân viên, không cần in ra giấy.

3.5.2. Các loại fax

• Máy fax đơn thuần

• Máy đa năng gồm khả năng gửi và nhận fax, scan rà hình và in • Máy fax analog

• Máy fax digital • Máy fax trắng đen • Máy fax màu

• Phần mềm phát tín hiệu fax thẳng từ máy tính vào dây dẫn điện thoại (như WinFax của Windows)

3.5.3. Công nghệ fax qua voip

Ứng dụng công nghệ của Fax voip giúp nhận và gửi fax trên bất cứ thiết bị kỹ thuật số nào dễ như in một tài liệu hay gửi một E-mail. Giải pháp giúp tiết kiệm chi phí tối đa cho người sử dụng.

Fax được xây dựng trên nền tảng công nghệ IP, cho phép nhận và gửi tín hiệu fax qua đường truyền Internet, tự động thông qua việc kết nối với đường dây fax PSTN để giao tiếp với các máy fax truyền thống. Fax cung cấp cả phần mềm và giao diện quản lý, cho phép chúng ta có thể nhận fax ở bất kỳ địa điểm nào khi bạn truy cập E-mail và gửi fax từ bất kỳ ứng dụng nào có thể in được.

3.5.4. Cấu hình dịch vụ fax to mail trên asterisk 3.5.4.1. Cài đặt 3.5.4.1. Cài đặt

Để cho phép asterisk có khả năng gửi mail ta cần phải cấu hình dịch vụ mail server postfix để gửi và nhận mail(cấu hình postfix nằm ngoài phạm vi bài báo cáo này).

Để cho dịch vụ fax to mail hoạt động được trên asterisk ta cần phải cài đặt các gói phần mềm cần thiết :

• asterisk16-fax • spandsp • postfix

3.5.4.2. Cấu hình dich vụ fax to mail

Trước khi cấu hình chúng ta cần đảm bảo asterisk có khả năng gửi và nhận mail (vấn đề này nằm ngoài phạm vi của bài báo cáo này.)

Trước tiên ta cần đăng nhâp vào giao diênj quản trị của FreePBX. Ta vào General Settings → "Fax Machine" và cấu hình các thông số nhử sau :

Extension of fax machine for receiving faxes: system

Email address to have faxes emailed to Email dùng để nhận fax Email address that faxes appear to come from Email dùng để gửi fax

Hình 3.7: Cấu hình fax to mail

Sau đó ta cần sửa file extendtion.conf như sau : [macro-faxreceive] exten => s,1,Set(FAXFILE=${ASTSPOOLDIR}/fax/${UNIQUEID}.tif) exten => s,2,Set(EMAILADDR=${FAX_RX_EMAIL}) exten => s,3,ReceiveFAX(${FAXFILE}) exten => s,103,Set(EMAILADDR=${FAX_RX_EMAIL}) exten => s,104,Goto(3)

# service asterisk restart

3.5.4.3. Cấu hình fax client để gửi fax

Để gửi fax thông qua môi trường voip ta cần phải cài đăc phần mềm Fax Voip T38 Fax & Voice trên hệ diều hành xp.

Hình 3.8: Cài đặt Fax Voip T38 Fax & Voice

Sau khi quá trình cài đặt đã kết thúc, ta cần phải cấu hình Fax Voip T38 Fax & Voice kết nối đến hệ thống fax trên asterisk thông qua tài khoản đã tạo sẵn trên asterisk. Vào Faxmodem Control Panel → Registration → new . Sau đó điền các thông tin username, password, và địa chỉ ip cua fax asterisk :

Hình 3.9: Cấu hình kết nối đến fax asterisk

Sau khi đã registry thành công ta vào Fax voip console để gửi fax:

Χηươνγ 4. HỆ THỐNG VOIP VOIPSWITCH 4.1. Tổng quát

VoipSwitch là một nền tảng cho phép để thực hiện các loại hình thoại qua dịch vụ VoIP, với sự chia sẻ, quản lý giao diện đồng bộ. Các tính năng phân biệt của nền tảng này là việc triển khai thực hiện tích hợp hệ thống thanh toán kết hợp với cơ sở dữ liệu MS SQL hoặc MySQL.

Phần mềm VoipSwitch bao gồm các module sau đây :

VoipSwitch manager : quản lý các phần chính của ứng dụng. Nó cho phép để

giám sát Toàn bộ các lưu lượng truy cập. Ngoài tình trạng kết nối hiện nay và các loại hình đăng nhập của khách hàng, nó cũng trình bày một số thông tin thêm về các quy trình được diễn ra.

VoipSwitch Config : quản lý giao diện. Đây là một công cụ cấu hình cho toàn

hệ thống. Nó có một số tính năng cho phép để quản lý thanh toán cước phí của khách hàng và phân tích lưu lượng truy cập thông tin trên cơ sở dữ liệu thống kê.

Web CDR : mô-đun cho phép các khách hàng để kiểm tra xem tài khoản hiện

thời và tình trạng trong lịch sử của những cuộc gọi được thực hiện. Có một khả năng xuất dữ liệu vào tập tin.

PC to Phone Client : SoftPhone dựa trên chuẩn g723.1.

Webphone : SoftPhone có thể được khởi động trực tiếp từ trang web.

Callback Client : phần mềm của khách hàng mà cho phép để bắt đầu cuộc gọi

giữa hai máy điện thoại.

Webcallback : khách hàng bản khởi xướng cuộc gọi trực tiếp từ trang web.

SMS callback : mô-đun dùng hợp tác với các nhà điều hành SMS. Nó cũng

cho phép để tạo số lượng truy cập cho các dịch vụ tin nhắn SMS bằng cách sử dụng điện thoại di động.

IVR module : mô-đun chịu trách nhiệm về phát lại các thông tin đã cấu hình

Online Shop : mô-đun cho phép để thực hiện thanh toán bằng cách sử dụng

thẻ tín dụng hoặc dịch vụ Paypal.

Reseller.s module : hệ thống dựa trên trang web mà cho phép để tạo ra các tài

khoản người sử dụng, quản lý chung, các ban quản lý, và phân tích các thông tin trên được lưu lượng truy cập diễn ra ..vv..

4.2. Lợi thế của hệ thống quản lý Voipswitch

• Đơn giản hóa các quy trình quản trị và thay đổi cấu hình mạng của Thiết bị VoIP. Thống nhất thiết bị hỗ trợ giao thức khác nhau

• Quản lý tập trung và quá trình định tuyến lưu lượng truy cập VoIP Tập trung. • Hiện, ẩn trong cấu trúc mạng từ các bên thứ ba, nếu cần thiết

• Sử dụng khả năng triển khai thực hiện các dịch vụ giá trị gia tăng như: thẻ gọi điện thoại hệ thống, IP PBX, gọi hệ thống bằng cách sử dụng thêm gói phần mềm VoipSwitch

4.3. Cài đặt

4.3.1. Yêu cầu phần cứng

Các điều hành hỗ trợ bao gồm tất cả các phiên bản của Microsoft Windows 2000, 2003 và XP. Nền tảng phần cứng nên được lựa chọn trên cơ sở của các loại hình và quy mô của công ty được thực hiện.Bảng bên dưới mô tả phần cứng được đề nghị cho hệ thống VoipSwitch.

số lượng cuộc gọi CPU RAM HDD

30 Pentium IV 2 GHz 512 MB 50 GB

120 Pentium IV 2.8 GHz 1 GB 50 GB

500 Xeon Pentium IV 2.4 GHz 1 GB 80 GB

1000 Dual Xeon Pentium IV 2.8 GHz 2 GB 80 GB

4.3.2. Yêu cầu phần mềm

• VoipSwitch • MySQL Server

• Microsoft .NET Framework 2.0

• Cài đặt Microsoft .NET Framework 2.0. • Cài đặt MySQL server .

• Cài đặt phần mềm VoipSwitch. • Cấu hình kết nối đến MySQL server. • Tạo cơ sở dữ liệu cho voipswitch.

4.3.3. Cài đặt VoipSwitch

Chạy file setup VoipSwitch đã tải về. Đầu tiên nó yêu cầu hệ thống cần phải có Microsoft .NET Framework 2 mới có thể tiếp tục quá trình cài đặt

Hình 4.1: Bắt đầu quá trình cài đặt voipswitch

Hình 4.2: Chọn thư mục cài đặt voipswitch

Hình 4.3: Kết thúc quá trình cài đặt voipswitch

• Cấu hình voipswitch kết nối đến MySQL

Thứ nhất, khởi động VoipSwitch Manager (VSM) có thể được tìm thấy trong nhóm các chương trình VoipSwitch.

Thông báo lỗi sau (access denied to database) sẽ xuất hiện :

Hình 4.4: Lỗi kết nối đến cơ sở dữ liệu của voipswitch

Nhấp OK và sau đó, trên một cửa sổ khác, bấm vào Yes để đi đến trang cấu

hình kết nối cơ sở dữ liệu.

Trong trường Password, nhập mật khẩu được đưa ra trong quá trình cài đặt cấu hình của MySQL Community Server (nó đã được thiết lập cho người dùng root).Nhấp vào nút Test connection and accessibility để kiểm tra quá trình kết nối đến MySQL.

Hình 4.5: kiểm tra quá trình kết nối đến MySQL

Nhấp vào nút Yes để tạo ra cơ sở dữ liệu mới.Sau một thời gian công việc sẽ được hoàn thành. Nhấp vào Close.

Đến đây coi như quá trình cài đặt voipswitch và kết nối voipswitch đến MySQL coi như đã hoàn tất. Khởi động voipswitch :

4.4. Tìm hiểu cơ bản VOIPSWITCH

• Cửa sổ Calls cho thấy các cuộc gọi mới nhất thông qua VoipSwitch server. • Cửa sổ Users cho thấy người dùng hiện tại đang kết nối sẽ xuất hiện trong

màu xanh và những người sử dụng bị ngắt kết nối màu đỏ. Mở rộng mỗi dòng, chúng ta sẽ thấy các cuộc gọi được thực hiện bởi mỗi người dùng.

• Cửa sổ Registered Clients cho thấy người sử dụng đăng ký gatekeeper Voipswitch. Giống như khách hàng h323 và SIP đăng ký với người dùng và mật khẩu.

• Cửa sổ Gatekeeper cho thấy gatekeepers mà Voipswitch được đăng ký. Sau khi chúng ta tạo các gatekeeper mới hoặc thay đổi cài đặt tồn tại trong VPSConfig -> GK/Registrar nó sẽ xuất hiện ở đây.

Χηươνγ 5. HỆ THỐNG VOIP CISCO 5.1. Giới thiệu VoIP trên Cisco

5.1.1. Voip trên mô hình OSI

Một phần của tài liệu nghiên cứu triển khai hệ thống voip cho doanh nghiệp (Trang 46 - 101)