Tải bản đầy đủ (.docx) (47 trang)

XÂY DỰNG hệ THỐNG TỔNG đài ảo CLOUDPBX TRÊN nền TẢNG FREEPBX (có code)

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.7 MB, 47 trang )

ĐỒ ÁN TỐT NGHIỆP

XÂY DỰNG HỆ THỐNG TỔNG ĐÀI ẢO
CLOUDPBX TRÊN NỀN TẢNG
FREEPBX


MỤC LỤC

DANH MỤC CÁC HÌNH VẼ


DANH MỤC CÁC BẢNG BIỂU


DANH MỤC CÁC TỪ VIẾT TẮT

IETF
ITU
IVR
LAN
PSTN
RTP
SDP
SIP
TCP
UDP
VoIP

The Internet Engineer Task Force
International Telecommunication Union


Interactive Voice Response
Local Area Network
Public Switched Telephone
Real-time Transport Protocol
Session Description Protocol
Session Initial Protocool
Transmission Control Protocol
User Datagram Protocol
Voice Internet Protocol

TLS

Transport Layer Security

UA

User Agent

SRTP

Secure Real-time Transport Protocol


ĐỒ ÁN TỐT NGHIỆP
Trang 5/44

CHƯƠNG 1.

GIỚI THIỆU ĐỀ TÀI


1.1 Giới thiệu chung
Sự xuất hiện của VoIP đã làm dậy lên một làn sóng lớn trong lĩnh vực viễn thông
thế giới, lợi ích của nó mang lại vô cùng lớn khi chi phí cuộc gọi được giảm đi đáng
kể, đáp ứng tốt chất lượng dịch vụ, số lượng kết nối. Hiện nay có rất nhiều doanh
nghiệp sử dụng giải pháp VoIP làm cách giao tiếp chính.
Internet of Thing (IoT) bùng nổ, công nghệ đám mây là xu hướng không thể bỏ qua.
Để doanh nghiệp kịp thời gia nhập vào nền công nghệ 4.0 (IoT) thì việc kết nối điện
thoại truyền thống vào Internet là rất cần thiết. Đó gọi là tổng đài ảo.

Hình 1- 1: Giải pháp tổng đài ảo

1.2 Mục tiêu
Khi điện thoại truyền thống trở nên cô lập về mặt địa lý và bị động trong mọi tình
huống cũng như tính tương tác chưa cao thì tổng đài ảo giúp khách hàng sử dụng
dịch vụ tốt nhất với chi phí rẻ hơn so với dịch vụ tổng đài truyền thống, tiết kiện chi
phí lắp đặt ban đầu, không tốn chi phí bảo trì, sửa chữa khi có sự cố hay di chuyển
văn phòng làm việc sang địa điểm khác,…. Để đáp ứng các lợi điểm trên thì đề tài

Xây dựng hệ thống tổng đài ảo CloudPBX trên nền tảng FreePBX


ĐỒ ÁN TỐT NGHIỆP
Trang 6/44

này nghiên cứu phần mềm Asterisk mã nguồn mở cùng với đó xây dựng hệ thống
dữ liệu database lưu trữ thông tin.
Các tính năng được triển khai trong đề tài này được áp dụng cho một công ty bao
gồm:
Các tính năng cơ bản của tổng đài PBX.
Dịch vụ tra cứu dịch vụ.

Tư vấn trực tiếp từ các điện thoại viên.
Dịch vụ trả lời tự động.
1.3 Công việc thực hiện
Tìm hiểu VoIP và các giao thức.
Xây dựng tổng đài Asterisk bằng lệnh linux.
Cài đặt giao diện cho Asterisk và cấu hình các dịch vụ tổng đài nội bộ:






Lời chào tương tác (IVR).
Music on Hold.
Call Conference.
Định tuyến cuộc gọi.
Nghe lại ghi âm (Play Back).

Giới thiệu AGI_PHP.
Giới thiệu Mysql, cách tạo database và truy vấn dữ liệu.
Demo chương trình.

Xây dựng hệ thống tổng đài ảo CloudPBX trên nền tảng FreePBX


ĐỒ ÁN TỐT NGHIỆP
Trang 7/44

Để thấy những ưu điểm và nhược điểm VoIP và những tiện ích thực tế mang lại
trong đề tài “Xây dựng hệ thống tổng đài ảo CloudPBX trên nền tảng FreePBX”

bao gồm:
Chương 2: TỔNG QUAN VỀ MẠNG VOIP
Chương 3: ASTERISK
Chương 4: MYSQL, AGI, PHP
Chương 5: XÂY DỰNG MÔ HÌNH TỔNG ĐÀI VÀ MÔ PHỎNG
Chương 6: KẾT LUẬN
Do hạn chế về kiến thức, như kinh nghiệm thực tế nên đề tài này không tránh khỏi
thiếu sót. Rất mong nhận được sự thông cảm, góp ý của các thầy cô cùng bạn bè để
đề tài này được tốt hơn.

Xây dựng hệ thống tổng đài ảo CloudPBX trên nền tảng FreePBX


ĐỒ ÁN TỐT NGHIỆP
Trang 8/44

CHƯƠNG 2.

TỔNG QUAN VỀ MẠNG VoIP

2.1 Giới thiệu chung về VoIP
VoIP (Voice over Internet Protocol) là công nghệ truyền tín hiệu thoại sử dụng giao
thức TCP/IP trên cơ sở hạ tầng có sẵn của internet. Giải pháp VoIP sử dụng kỹ thuật
chuyển mạch gói tức là số hóa tín hiệu giọng nói rồi nén tín hiệu đã số hóa thành
gói, chia nhỏ các gói này nhằm tiết kiệm băng thông sau đó truyền các gói này qua
mạng. Đến nơi nhận các gói số liệu này được ghép lại, giải mã ra tín hiệu có dạng
analog như lúc đầu để khôi phục lại giọng nói như ban đầu.

Hình 2-1: Mô hình VoIP [1]


.

Xây dựng hệ thống tổng đài ảo CloudPBX trên nền tảng FreePBX


ĐỒ ÁN TỐT NGHIỆP
Trang 9/44

2.2 Các thành phần trong mạng VoIP
Các thành phần của một hê thống VoIP bao gồm: VoIP server, Gateway, IP network,
end user equipments.
• VoIP server: là các máy chủ trung tâm có chức năng định tuyến và bảo mật
cho các cuộc gọi.
Trong giao thức H.323 thì chúng được gọi là Gatekeeper.
Trong giao thức SIP thì gọi là SIP server.
• Gateway: là bộ phận chuyển đổi tín hiệu tín hiệu analog sang tín hiệu số (và
ngược lại).
VoIP gateway có chức năng làm cầu nối giữa mạng điện thoại thường
(PSTN) và mạng VoIP.
VoIP GSM gateway có chức năng làm cầu nối cho các mạng IP, GSM và cả
các mạng analog.
• End user equipments (thiết bị đầu cuối):
Softphone, PC bao gồm 1 headphone, 1 phần mềm và 1 kết nối internet, các
phần mềm phổ biến như skype, ekiga..
Điện thoại truyền thống và IP adapter: để dùng dịch vụ VoIP thì điện thoại
phải gắn với IP adapter để kết nối với VoIP server.
IP phone: là điện thoại chuyên dụng cho giải pháp VoIP. Các IP phone được
tích hợp sẵn để kết nối trực tiếp với VoIP server.
2.3 Phương thức hoạt động
VoIP chuyển đổi tín hiệu giọng nói thông qua môi trường mạng (IP based network).

Vì thế, đầu tiên giọng nói (voice) phải chuyển sáng dạng bits (digital bits) và đóng
thành các gói (packet) để truyền qua Ip network, đến đích cuối sẽ được chuyển
thành tín hiệu âm thanh.
Quá trình này thông qua 2 bước:
Call Setup: là quá trình thiết lập cuộc gọi, người gọi phải xác định vị trí thông qua
người nhận và yêu cầu một kết nối để liên lạc với người nhận. Khi trên proxy server
xác định tồn tại địa chỉ của người nhận thì các proxy server giữa hai người sẽ thiết
lập qáu trình trao đổi dữ liệu voice.

Xây dựng hệ thống tổng đài ảo CloudPBX trên nền tảng FreePBX


ĐỒ ÁN TỐT NGHIỆP
Trang 10/44

Voice Data Proccessing: là quá trình xử lý tín hiệu giọng nói, tín hiệu giọng nói
(analog) sẽ được chuyển thành tín hiệu số (digital) rồi nén lại để tiết kiệm băng
thông (bandwidth) sau đó được mã hóa để tăng tính bảo mật. Các dữ liệu voice
được lấy mẫu sẽ được chèn vào các gói dữ liệu để được chuyển trên mạng. Giao
thức dùng cho các gói voice này là RTP (real-time transport protocol). Một gói tin
RTP có các trường đầu chứa dữ liệu cần thiết cho việc biên dịch lại các gói tin sang
tín hiệu voice ở thiết bị người nghe. Các gói tin voice được truyền đi bởi giao thức
UDP. Ở thiết bị cuối quá trình được làm ngược lại.
2.4 Các kiểu kết nối
2.4.1

Computer to computer

Hình 2-2: Kiểu kết nối computer to computer


Trong mô hình này, cần trang bị sound card, microphone, và cả hai người gọi và
người nhận sử dụng dịch vụ VoIP. Mô hình này thường được dùng trong tổ chức,
công ty nhằm đáp ứng các nhu cầu liên lạc mà không cần lắp thêm hệ thống tổng
đài nội bộ.

Xây dựng hệ thống tổng đài ảo CloudPBX trên nền tảng FreePBX


ĐỒ ÁN TỐT NGHIỆP
Trang 11/44

Nhược điểm của mô hình này là các PC phải mở liên tục.
2.4.2

Computer to phone

Hình 2-3: Kiểu kết nối computer to phone

Mô hình PC to Phone cho phép người dùng có thể thực hiện cuộc gọi đến mạng
PSTN thông thường và ngược lại trên máy tính. Trong mô hình này mạng PSTN và
mạng Internet giao tiếp thông qua gateway.
Đối với mô hình này việc gọi đi quốc tế chi phí tốn ít hơn nhưng chất lượng cuộc
gọi còn phụ thuộc vào tốc độ internet.
2.4.3

Phone to phone

Xây dựng hệ thống tổng đài ảo CloudPBX trên nền tảng FreePBX



ĐỒ ÁN TỐT NGHIỆP
Trang 12/44

Hình 2-4: Kiểu kết nối phone to phone

Mô hình này sử dụng internet làm phương tiện liên lạc giữa các mạng PSTN. Tất cả
các mạng PSTN đều kết nối với mạng internet thông qua gateway. Khi thực hiện
cuộc gọi, mạng PSTN sẽ kết nối với gateway gần nhất, địa chỉ sẽ chuyển đổi từ địa
chỉ PSTN sang địa chỉ IP để định tuyến các gói tin đến mạng đích. Ở gateway
nguồn chuyển đổi tín hiệu tương tự sang tín hiệu số sau đó mã hóa, nén, đóng gói
gửi qua mạng. Mạng đích cũng kết nối với gateway và địa chỉ đó lại được chuyển
đổi lại địa chỉ PSTN, tín hiệu được giải mã, giải nén chuyển đổi ngược lại thành tín
hiệu tương tự rồi gửi vào mạng PSTN đến đích.
2.5 Các yếu tố ảnh hưởng
Chất lượng cuộc gọi bị ảnh hưởng bởi nhiều yếu tố, đó là:
Mất gói:
Trong mạng IP không đảm bảo các gói tin sẽ được truyền đến nơi hết nếu các gói bị
quá tải và trong thời gian tắc nghẽn. Khi truyền thoại việc mất nhiều bit hay gói có
Xây dựng hệ thống tổng đài ảo CloudPBX trên nền tảng FreePBX


ĐỒ ÁN TỐT NGHIỆP
Trang 13/44

thể tạo ra hiện tượng nhảy thoại gây khó chịu cho người sử dụng. Còn trong truyền
dữ liệu việc mất một bit hay gói thì sẽ xảy ra hiện tượng song ảnh. Việc mất gói
theo dây truyền thì chất lượng truyền dẫn sẽ xuống cấp.
Cách khắc phục để bù lại các gói đã mất là phát lại gói cuối cùng và gửi đi thông tin
dư.
Độ ổn định,

Băng thông,
Tiếng vọng:
Tiếng vọng xuất hiện khi người nói nghe được chính tiếng của mình. Trong mạng
VoIP khối chức năng gói hóa số được đặt giữa hai đoạn truyền dẫn analog. Gateway
VoIP là giao tiếp giữa phần analog và mạng VoIP. Gateway nguồn và gateway đích
liên lạc với nhau qua mạng IP, trễ truyền gói có thể lớn hơn 30ms. Chính sự trộn lẫn
các thiết bị số và thiết bị analog trong kết nối thoại dẫn đến gây ra tiếng vọng ở phía
người nói.
Trễ:
Trễ là thời gian truyền trung bình của dịch vụ từ điểm vào đến điểm ra khỏi mạng.
Trễ trong mạng phụ thuộc vào nhiều yếu tố như là thuật toán mã hóa, lỗi mất khung,
thiết bị.
Biến động trễ.
2.6 Ưu nhược điểm của VoIP so với mạng PSTN truyền thóng
Ưu điểm:
Giảm giá cước dịch vụ đường dài.
Do các cuộc gọi VoIP sử dụng băng thông rất ít. Khi dịch vụ thoại thông thường sử
dụng kỹ thuật số hóa PCM theo chuẩn G.117 với lượng băng thông cố định là 64
Kb/s thì VoIP sử dụng kiểu số hóa theo chuẩn G.729 với lượng băng thông 8Kb/s
hoặc G.723 (5.3 Kb/s, 6.3 Kb/s), băng thông được giảm đi một cách đáng kể. Ngoài
ra, VoIP còn sử dụng cơ chế triệt khoảng lặng nên có thể tiết kiệm thêm băng thông
để truyền các dạng thông tin khác.
Nhiều cuộc gọi hơn, giảm độ rộng băng thông cho mỗi kết nối.
Xây dựng hệ thống tổng đài ảo CloudPBX trên nền tảng FreePBX


ĐỒ ÁN TỐT NGHIỆP
Trang 14/44

Hỗ trợ thêm nhiều dịch vụ bổ sung khác, triển khai dịch vụ nhanh chóng hơn.

Nhược điểm:
Chất lượng dịch vụ phụ thuộc vào chất lượng mạng internet
Vấn đề tiếng vọng.
2.7 Giao thức H.323
2.7.1

Giới thiệu

Giao thức H.323 là nền tảng cho việc truyền thông thoại, video và dữ liệu qua các
mạng dựa trên IP , kể cả internet.
H.323 có thể dùng cho nhiều cơ cấu mạng khác nhau: chỉ audio (telephony), audio
và video (videotelephony). H.323 còn cung cấp rất nhiều loại hình dịch vụ và các
lĩnh vực khác nhau. H.323 bao gồm các giao thức H.225.0-RAS, Q.931-H245,
RTP/RTCP.
RTP (real-time transport protocol) là giao thức vận chuyển thời gian thực cung cấp
các chức năng vận chuyển cho các ứng dụng truyền dữ liệu thời gian thực như
audio, video hay dữ liệu mô phỏng qua dịch vụ mạng như unicast hoặc multicast.
RTP không chiếm giữ nguồn địa chỉ và không đảm bảo chất lượng dịch vụ cho các
dịch vụ thời gian thực, nó chỉ bổ sung vào dữ liệu UDP trong H.323.
RTCP: giám sát luồng lưu lượng phân tán trong mạng và thực hiện các chức năng
điều khiển luồng, nhận dạng luồng cho các lưu lượng thời gian thực.
RTP mang thông tin thực còn RTCP mang thông tin điều khiển và trạng thái.
2.7.2

Các thành phần của H.323

Xây dựng hệ thống tổng đài ảo CloudPBX trên nền tảng FreePBX


ĐỒ ÁN TỐT NGHIỆP

Trang 15/44

Hình 2-5: Sơ đồ giao thức H.323

Thiết bị đầu cuối:
Là các điểm cuối phía khách hàng, cung cấp giao diện giữa người dùng và mạng.
Các chuẩn mã hóa thường gặp là G.711, G.728, G.723.1.
Gateway:
Là điểm cuối trong mạng thực hiện chức năng chuyển đổi về báo hiệu và dữ liệu,
cho phép các mạng phối hợp với nhau khi đang hoạt động dựa trên các giao thức
khác nhau. Cung cấp các phiên dịch giữa các thực thể trong mạng chuyển gói (IP)
với mjang chuyển mạch kênh (PSTN). Các gateway cũng có thể phiên dịch khuôn
dạng truyền dẫn, phiên dịch các tiến trình truyền thông, phiên dịch các bộ mã hóa.
Ngoài ra gateway còn tham gia vào quá trình thiết lập, hủy cuộc gọi.
Gatekeeper:

Xây dựng hệ thống tổng đài ảo CloudPBX trên nền tảng FreePBX


ĐỒ ÁN TỐT NGHIỆP
Trang 16/44

Cung cấp chức năng biên dịch địa chỉ và điều khiển truy cập mạng cho các thiết bị
đầu cuối H.323, gateway, MCU. Gatekeeper còn cung cấp các dịch vụ quản lý băng
thông, định vị các gateway.
Biên dịch địa chỉ: biên dịch từ địa chỉ định danh sang địa chỉ truyền tải.
Điều khiển đăng nhập: GK quản lí việc truy cập mạng của các điểm cuối bằng bản
tin H.225.0.
Điều khiển băng thông: GK điều khiển băng thông bằng bản tin H.225.0.
Báo hiệu điều khiển cuộc gọi: GK quyết định có tham gia vào quá trình báo hiệu

cho cuộc gọi hay không.
Cấp phép cho cuộc gọi.
Biên dịch số được quay: GK sẽ chuyển các số được quay sang số E.164 hay số
mạng riêng.
Quản lí băng tần.
Quản lí cuộc gọi.
Sửa đổi địa chỉ định danh.
Quản lí cấu trúc dữ liệu.
Khối điều khiển đa điểm MCU (multipoint control unit):
Cung cấp khả năng truyền thông hội nghị cho ba điểm hay nhiều thiết bị đầu cuối
và các gateway. MCU bao gồm hai phần: một bộ điều khiển đa điểm (MC) bắt buộc
và một bộ xử lí đa điểm (MP) tùy chọn.
Thành phần khối điều khiển đa điểm gồm:
Bộ điều khiển đa điểm: cung cấp chức năng điều khiển.

Xây dựng hệ thống tổng đài ảo CloudPBX trên nền tảng FreePBX


ĐỒ ÁN TỐT NGHIỆP
Trang 17/44

Bộ xử lý đa điểm: thu nhận và xử lý các dòng thoại, video, dữ liệu.
2.8 Giao thức SIP
Giao thức khởi tạo phiên (Session Initiation Protocol - SIP) là giao thức điều
khiển báo hiệu thuộc lớp ứng dụng có chức năng thiết lập, duy trì và kết thúc
các phiên multimedia hay các cuộc gọi qua mạng IP.

Hình 2-6: Sơ đồ giao thức SIP

Thành phần SIP bao gồm: SIP terminal, SIP Server, SIP gateway:

Thiết bị đầu cuối SIP:
User Agent (UA): đóng vai trò là một UA Client khi nó gửi yêu cầu để khởi tạo
cuộc gọi và nhận hồi đáp. Ngược lại, nó là UA server khi nó nhận yêu cầu và gửi
hồi đáp.
SIP Server:
Có chức năng điều khiển, quản lý cuộc gọi, trạng thái người dùng.
Proxy server: là trung gian để thực hiện các yêu cầu thay các đầu cuối khác, các yêu
cầu được thực hiện tại chỗ bởi proxy server nếu có thể. Trong trường hợp proxy
server không đáp ứng yêu cầu thì sẽ chuyển sang thực hiện khâu chuyển đổi hoặc
dịch sang khuôn dạng thích hợp trước khi chuyển đi.
Location server: định vị thuê bao, cung cấp thông tin veef những vị trí có thể của
phía bị gọi cho các phần mềm proxy server và redirect server.
Redirect server.
Xây dựng hệ thống tổng đài ảo CloudPBX trên nền tảng FreePBX


ĐỒ ÁN TỐT NGHIỆP
Trang 18/44

Registrar server.
SIP gateway: thực hiện chức năng internetworking giữa hệ thống SIP và các mạng
khác.
2.8.1
Các loại bản tin của SIP
Request (bản tin yêu cầu): nó được gửi từ máy client đến server. Có tổng cộng 6
kiểu bản tin yêu cầu có thể cho phép Proxy và UA xác định người dùng, khởi tạo,
sửa đổi và hủy một phiên.


Bản tin INVITE: thiết lập cuộc gọi bằng cách gửi bản tin mời đầu cuối

tham gia.



Bản tin ACK: xác nhận client đã nhận được bản tin INVITE.



Bản tin OPTION: UA sử dụng bản tin yêu cầu này để có thể truy vấn tới
server về các khả năng của nó.



Bản tin BYE: bắt đầu kết thúc cuộc gọi.



Bản tin CANCEL: Cho phép máy client và server hủy một yêu cầu.



Bản tin REGISTER: thiết bị đầu cuối của SIP sử dụng bản tin này để đăng
kí với máy chủ.

Respone (Bản tin đáp ứng): Server sẽ gửi bản tin SIP Response tới máy client để
cảnh báo về trạng thái của bản tin SIP Request mà máy client đã gửi lên trước đó.
Các SIP Response đã được đánh số từ 100 đến 699, và được chia thành nhiều lớp
được nghĩa khác nhau.

Các lớp Response Mã trả về


Mô tả

Xây dựng hệ thống tổng đài ảo CloudPBX trên nền tảng FreePBX


ĐỒ ÁN TỐT NGHIỆP
Trang 19/44

Thông tin

100

Kết nối đang được thực hiện

180

Đang đổ chuông

181

Cuộc gọi đang được chuyển tiếp

182

Được đặt vào hàng đợi

183

Phiên đang được xử lý


Thành công

200

Thành công

Chuyển hướng

300

Nhiểu lựa chọn

301

Chuyển vĩnh viễn

302

Chuyển tạm thời

305

Sử dụng Proxy

380

Dịch vụ khác

400


Yêu cầu không hợp lệ

401

Không nhận dạng được

402

Yêu cầu thành toán

403

Bị cấm

404

Không tìm thấy

405

Phướng thức không được phép

406

Không chấp nhận

407

Yêu cầu xác thực Proxy


408

Request timeout

410

Đã dời đi

413

Yêu cầu quá dài

414

URL được yêu cầu quá lớn

415

Không hỗ trợ kiểu media

416

Không hỗ trợ URI

420

Phần mở rộng lỗi

Lỗi Client


Bảng 2-1: Ý nghĩa của SIP Respone

CHƯƠNG 3.

ASTERISK

Xây dựng hệ thống tổng đài ảo CloudPBX trên nền tảng FreePBX


ĐỒ ÁN TỐT NGHIỆP
Trang 20/44

3.1 Giới thiệu chung
Asterisk ra đời năm 1999 được sáng lập bởi Mark Spender với mục đích hỗ trợ việc
liên lạc đàm thoại của công ty mình, Asterisk được viết bằng ngôn ngữ C được thiết
kế và triển khai trên GNU/Linux nền x86 (Intel).
Asterisk biến một PC chạy Linux thành một hệ thống điện thoại doanh nghiệp mạnh
mẽ. Hiện nay Asterisk đang trên đà phát triển nhanh, được các doanh nghiệp phát
triển thêm nhiều ứng dụng.
Asterisk là phần mềm mã nguồn mở có chức năng như một tổng đài PBX. Asterisk
mang lại cho người dùng tất cả các chức năng và ứng dụng của một hệ thống tổng
đài PBX và kể cả những chức năng mà tổng đài thông thường không có, đó là sự kết
hợp giữa chuyển mạch VoIP và TDM, khả năng mở rộng đáp ứng nhu cầu cho từng
ứng dụng.

Hình 3-1: Sơ đồ tổng đài Asterisk [1]

Asterisk tích hợp giao tiếp với mạng PSTN và mạng VoIP vừa có thể gọi nội bộ,
vừa có thể gọi ra ngoài với bất cứ số điện thoại nào trên mạng PSTN. Nó không chỉ


Xây dựng hệ thống tổng đài ảo CloudPBX trên nền tảng FreePBX


ĐỒ ÁN TỐT NGHIỆP
Trang 21/44

giao tiếp, kết nối giữa các điện thoại với nhau mà còn mở rộng kết nối đén các tổng
đài khác, với IP phone, nhiều dịch vụ như Softswitch, Media Gateway,….
3.2 Cấu trúc của Asterisk
Asterisk như một phần trung gian dùng kết nối internet và điện thoại. Hỗ trợ mọi
khả năng có thể có của công nghệ telephony, công nghệ này bao gồm VoIP, SIP,
H.323, IAX, MGCP (cho điện thoại và gateway).

Hình 3-2: Cấu trúc Aasterisk [1]

Quá trình khởi động của Asterisk:
• Khi khởi động, Dynamic module loader thực hiện nạp driver các thiết bị, các
kênh giao tiếp, format, codec, ứng dụng, hàm API cũng được liên kết nạp
vào hệ thống.
Xây dựng hệ thống tổng đài ảo CloudPBX trên nền tảng FreePBX


ĐỒ ÁN TỐT NGHIỆP
Trang 22/44

• PBX Switch Core chuyển sang trạng thái sẵn sàng.
• Application Launchar rung chuông thuê bao, định hướng cuộc gọi, kết nối
hộp thư thoại.
• Scheduler and I/O manager đảm nhiệm các ứng dụng nâng cao, các chức

năng phát triển asterisk.
• Codec translator xác nhận các kênh nén dữ liệu ứng với các chuẩn khác nhau
để liên lạc với nhau.
Các chức năng chính của API:
• Asterisk translator API: đảm nhiệm thực thi nén và giải nén các chuẩn codec
như G.711, GSM, G.729.
• Asterisk channel API: kết nối các cuộc gọi tương thích.
• Asterisk file format API: xử lý file âm thanh có dạng wav, gsm, mp3,….
• Asterisk aplication API: các ứng dụng trong asterisk voicemail, callerID,
IVR, ACD,..

Xây dựng hệ thống tổng đài ảo CloudPBX trên nền tảng FreePBX


ĐỒ ÁN TỐT NGHIỆP
Trang 23/44

3.3 Cấu trúc thư mục Asterisk

Hình 3-3: Thư mục Asterisk

Chức năng của các thư mục trong Asterisk:
/etc/asterisk: thư mục này chứa tất cả các file cấu hình trừ file /etc/zaptel.conf.
/usr/lib/asterisk/modules: các module thời gian thực cho ứng dụng, điều khiển lệnh,
nén và giải nén.
/var/lib/asterisk: chứa biến được sử dụng bởi asterisk trong quá trình hoạt động.
/var/spool/asterisk: file chạy thời gian thực cho voicemail, các cuộc gọi ra ngoài.
/var/run: file PID và tên chương trình chạy thời gian thực.
/var/log/asterisk: chứa tập tin nhật kí giúp việc giám sát dễ dàng hơn.
Xây dựng hệ thống tổng đài ảo CloudPBX trên nền tảng FreePBX



ĐỒ ÁN TỐT NGHIỆP
Trang 24/44

zaptel.conf: file chứa thông số cấu hình phần cứng TDM.
zapata.conf: chứa thông số cấu hình giao tiếp điện thoại zapata.
extensions.conf : file khai báo dial plan.
sip.conf: file khai báo sip account, trunk account.
queues.conf: file khai báo dịch vụ queue.
musiconhold.conf: file khai báo dịch vụ nhạc chờ.

CHƯƠNG 4.

MYSQL, AGI, PHP

Xây dựng hệ thống tổng đài ảo CloudPBX trên nền tảng FreePBX


ĐỒ ÁN TỐT NGHIỆP
Trang 25/44

4.1 MySQL là gì ?
MySQL là hệ quản trị cở sở dữ liệu thông dụng nhất thế giới và được các nhà phát
triển rất yêu thích bởi lẽ MySQL là cơ sở dữ liệu tốc độ cao, dễ sử dụng và ổn định,
dễ dàng hoạt động trên nhiều hệ điều hành cung cấp cho hệ thống các tiện ích rất
mạnh. Ngoài ra MySQL có tính bảo mật cao, rất thích hợp cho các ứng dụng truy
cập dữ liệu trên internet.
MySQL bổ trợ PHP, Perl và nhiều ngôn ngữ khác, là nơi lưu trữ thông tin trên các
trang web viết bằng ngôn ngữ PHP, Perl,….

4.2 Cài đặt MySQL
Để khởi tạo một cơ sở dữ liệu ta lần lượt làm các thao tác sau:
yum install mysql mysql-devel mysql-server php-mysql-y
service mysqld start
ckconfig mysql on
Để đặt mật khẩu cho user ta thao tác như sau:
root mysqladmin -u root password ‘matkhau’
Sau khi đặt mật khẩu cho MySQL xong ta đăng nhập vào hệ thống bằng cách nhập
vào: mysql -u root -p

Hình 4-1: Log cài đặt MySQL

Đăng nhập thành công

Xây dựng hệ thống tổng đài ảo CloudPBX trên nền tảng FreePBX


×