Cấu trúc hệ thống Asterisk

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

3.3.1. Cấu trúc thư mục của Asterisk

Asterisk sử dụng một số thư mục trong hệ thống file Linux để lưu trữ các lệnh thực thi, dữ liệu và các tham số cấu hình. Vị trí và tên các thư mục này có thể thay đổi khi ta biên dịch hệ thống (khi chạy lệnh configure trước khi make – gõ ./configure –help để xem chi tiết). Theo mặc định, Asterisk sử dụng các thư mục sau:

/etc/asterisk: Chứa các file cấu hình của Asterisk (trừ file zaptel.conf được đặt tại thư mục /etc)

/usr/lib/asterisk/modules: Chứa các module động của Asterisk server. Các module này sẽ được nạp khi chạy hoặc khởi động lại dịch vụ

/var/lib/asterisk: Chứa các file và một số thư mục dữ liệu phục vụ cho hoạt động của Asterisk như các file sound, các file thực thi kịch bản cuộc gọi, khóa mã hóa dữ liệu…

/var/spool/asterisk/: Chứa một số file và thư mục liên quan đến hoạt động của Asterisk server như lưu trữ voice mail, ghi nhớ cuộc gọi…

/var/run/: Chứa file ghi process ID của Asterisk server phục vụ việc quản lý tiến trình

/var/log/asterisk/: Chứa các file log hoạt động của Asterisk server trong đó có thư mục /var/log/asterisk/cdr-csv chứa dữ liệu phục vụ việc ghi cước sử dụng

Ngoài ra, các lệnh thực thi của Asterisk server được lưu trữ trong các thư mục của hệ thống như /usr/sbin, /user/lib …

3.3.2. Các file cấu hình của Asterisk

Ngoại trừ file cấu hình thiết bị zaptel.conf, các file chứa các tham số cấu hình của Asterisk server đều được đặt trong thư mục /etc/asterisk (theo mặc định). Asterisk sử dụng rất nhiều tham số cấu hình trong các file khác nhau để thiết lập các tham số hoạt động của dịch vụ như tham số trả lời tự động (amd.conf), tham số phục vụ ghi cước (cdr.conf), tham số mã hóa (codecs.conf). Ở đây tôi chỉ xin tập trung vào một số file cấu hình chính quyết định đến hoạt động của Asterisk server như kịch bản cuộc gọi, dữ liệu người dùng, kết nối PSTN… Các tham số khác có thể thiết lập mặc định nhờ lệnh make samples như hướng dẫn ở phần trên.

Chúng ta sẽ cần xem xét các tham số cấu hình trong các file sau: • zaptel.conf : Các tham số cấu hình cho trình điều khiển card giao tiếp • zapata.conf : Cấu hình cho Asterisk giao tiếp với phần cứng

• extensions.conf : Thiết lập các kịch bản cuộc gọi

• sip.conf : Thông tin cấu hình người dùng và giao thức báo hiệu SIP • iax.conf : Thông tin cấu hình người dùng và cuộc gọi theo kênh IAX

Chú ý khi thay đổi các tham số trong các file cấu hình trên, cần khởi động lại Asterisk server để dịch vụ hoạt động với các tham số mới.

3.4. Dịch vụ tính cước phí A2billing trên Asterisk3.4.1. Giới thiệu 3.4.1. Giới thiệu

A2billing là một mã nguồn mở được dùng để triển khai thanh toán cước phí viễn thông (VoIP) và hỗ trợ tính cước phí cho tổng đài Asterisk.

A2billing là một ứng dụng dạng LAMP (yêu cầu hệ thống phải có : linux, Apache, Mysql (PostgreSQL), PHP) và cấu hình thông qua giao diện web.

3.4.2. Tìm hiểu A2billing

Mô hình bao gồm 2 phần chính là hệ thống tổng đài Asterisk và phần quản lý các chức năng sử dụng A2Billing.

• Phần hệ thống tổng đài Asterisk: là phần thể hiện việc quản lý các thuê bao người dùng(Extensions). Các thuê bao này có thể nạp tiền vào tài khoản của

mình và thực hiện cuộc gọi cho đến khi hết tiền hoặc hết thời gian sử dụng dịch vụ.

• Phần A2Billing: được chia ra làm 2 phần nhỏ là phía người quản trị và phía giao diện người dùng. Ở phía người quản trị ta có thể quản lý mọi họat động của các thuê bao với quyền cao nhất. Phần này cũng cho phép chúng ta tạo ra và quản lý các loại thẻ, bảng giá dịch vụ, hóa đơn,... Còn ở phía giao diện người dùng cho phép người dùng có cách nhìn tổng quan nhất về dịch vụ mà mình đang sử dụng như thông tin tài khoản, lịch sử cuộc gọi, hóa đơn liên quan....

Trong mô hình minh họa các thực thể chính ảnh hưởng và tương tác với nhau đó là:

• Cuộc gọi sẽ được cài đặt trên nền tảng Asterisk

• Sự xác thực thông qua các trường chính là cardnumber, callerID,Sip/iAX friends với tài khoản mà bạn đăng nhập.

• Các loại card có thuộc tính khác nhau nhưng phần chính là tariffgroup(nhóm bảng giá) luôn liên kết với nhau. Tariffgroup sẽ được xác định rõ trong quy trình tính cước.Tariffgroup có thể hiểu là một hoặc nhiều loại card. Mỗi loại card đều bao gồm thông tin về một hoặc nhiều nơi đến(và có nhiều mức cho các nơi đến khác nhau).

• Quy tắc chính của Tariffgroup là tất cả các thực thể sẽ quyết định tới mức giá cho người sử dụng nếu có nhiều mức giá cho một nơi đến(chúng ta sẽ thấy sự cần thiết trong mỗi loại thẻ).

• LCR/LCD(chi phí tối thiểu cho 1 lộ trình/một nhóm) là 2 thuộc tính có thể định nghĩa và cùng nhau đưa ra tính xác thực cho sự hoàn thành thích hợp.

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.

Χη ν γ 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

vd: số dư tài khoản hoặc IP PBX.

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

Hệ thống khuyến nghị để thực hiện quá trình cài đặt theo thứ tự sau: • 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.

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 :

Hình 4.6: Giao diện khởi động VoIPSwitch

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

• 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. CẤU HÌNH CARD X100P GIAO TIẾP VỚI PSTN

5.1. Giới thiệu Card X100P

Card X100P là thiết bị dùng để kết nối giữa các user trong mạng nội bộ Asterisk với mạng PSTN.

X100P hiện nay đã đã không còn sản xuất, do mức hộ trợ số lượng Port FXO, FXS ít. Tuy nhiên , X100P lại rất thích hợp cho mục đích nghiên cứu do giá cả rất hợp lý.

X100P là loại card chuẩn cung cấp 1 port FXO dùng cho hệ thống Asterisk, Port FXO dùng cho việc kết nối Asterisk PBX với PSTN. Nó cho phép IP PBX khởi tạo/nhận cuộc gọi thong qua line analog truyền thống, X100P rất thích hợp cho việc xây dựng hệ thống IVR(tương tác theo lời thoại) và ứng dụng voice mail. Nó cũng hỗ trợ tất cả các chức năng Call ID, hội thoại…

Việc kết hợp X100P vào Asterisk sẽ hỗ trợ kết nối với hệ thống cũ, không làm lãng phí hạ tầng cũ đã đầu tư trước đây.

Hình 5.1: Card FXO X100P.

Thông số kỹ thuật:

• Dùng khe cắm chuẩn PCI.

• Tương thích với hệ thống PSTN.

• Nhận biết tín hiệu DTMF(rất quan trọng với IVR).

5.2. Khái niệm FXO và FXS

FXO (Foreign Exchange Office) là thiết bị nhận tín hiệu từ tổng đài gửi đến như dòng chuông tín hiệu nhấc và gác máy, tín hiệu mời quay số, gửi và nhận tín hiệu thoại… Nói cách khác FXO dùng kết nối với đường dây điện thoại.

FXS (Foreign Exchange Station) là thiết bị tại nơi cung cấp đường dây điện thoại, thiết bị FXS sẽ cung cấp tín hiệu mời quay số (dialtone), dòng chuông hồi âm chuông(ring tone). Trong đường dây analog, FXS cung cấp điện áp-48VDC đến máy điện thoại Analog trong suốt thời gian đàm thoại và cung cấp 90VAC (20hz) để phát điện áp rung chuông. Thiết bị FXS phat còn thiết bị FXO nhận.

Muống cho phép các máy điện thoại nội bộ trong hệ thống IP PBX Asterisk kết nối và thực hiện cuộc gọi với mạng PSTN, chúng ta cần phải có thiết bị phần cứng tương thích . Thiết bị phần cứng này là các FXO/FXS card cho phép hệ thống IP PBX Asterisk giao tiếp với mạng PSTN.

Thiết bị phần cứng thường ký hiệu bắt đầu bằng cụm từ TDMxyB trong đó x là số lượng Port FXS, y là số lượng Port FXO giá trị tối đa của x và y là 4, ví dụ card TDM22B có nghĩa là có 2 Port FXS và 2 Port FXO.

Số line PSTN sẽ tương ứng với số cuộc gọi vào đồng thời, do đó nếu dùng X100P(1FXO) thì tại 1 thời điểm chỉ có duy nhất 1 cuộc gọi vào/ra PSTN.

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