Báo cáo Thực tập tốt nghiệp Đại học
Chương 2: Tìm hiểu Asterisk ứng dụng VoIP
CHƯƠNG 2: TÌM HIỂU ASTERISK ỨNG DỤNG VOIP
I. Giới thiệu Asterisk
1. Vì sao chọn phần mềm Asterisk:
• Tiết kiệm chi phí (hoặc chi phí thấp hơn so với các tổng đài khác)
• Asterisk được xem như là một tổng đài PBX (Private Branch eXchange)
và tích hợp nhiều tính năng mới.
• Ngoài những tính năng của một tổng đài PBX thông thường, Asterisk còn
được tích hợp cả chuyển mạch TDM và chuyển mạch VoIP, có khả năng mở
rộng đáp ứng nhu cầu cho từng ứng dụng như mở rộng giao tiếp với mạng
PSTN (Public Switched Telephone Network).
• Phát triển trên môi trường mở:
− Asterisk có thể chạy trên các hệ điều hành khác như: Mac OS X,
FreeBSD, OpenBSD và Microsoft Windowns…
− Với một máy tính đã cài hệ điều hành (một trong các hệ điều
hành nói trên, ở đây ta xét hệ điều hành Microsoft Windowns) và
có thêm phần mềm Asterisk đã cấu hình, khi đó máy tính này sẽ
có đầy đủ tính năng của một tổng đài điện thoại và có thể hơn
thế.
2. Khái niệm:
• Asterisk là phần mềm nguồn mở,1 hệ thống chuyển mạch mềm, được viết
bằng ngôn ngữ C, ra đời năm 1999 bởi Mark Spencer, đầu tiên được thiết kế
và triển khai trên GNU/Linux nền x86 (của Intel).
• Asterisk là một bộ công cụ mã nguồn mở cho các ứng dụng thoại. Là server
xử lí đầy đủ các chức năng cuộc gọi, thực hiện tất cả các tính năng của tổng
đài PBX.
• Tích hợp giao tiếp với mạng PSTN và mạng VOIP cho phép gọi ra bất cứ số
điện thoại nào trên mạng PSTN.
Hình 2.1: Cổng VoIP-to-PSTN bằng cách sử dụng Asterisk
Báo cáo Thực tập tốt nghiệp Đại học
Chương 2: Tìm hiểu Asterisk ứng dụng VoIP
• ứng dụng cho điện thoại: chuyển mạch cuộc gọi, cuộc gọi hội nghị,
voicemail, chuyển hướng cuộc gọi, …
• Một Asterisk server được kết nối tới một mạng vùng nội hạt sẽ điều khiển
các điện thoại trong mạng kết nối đến mạng khác, các điện thoại trong mạng
có thể thực hiện cuộc gọi và kết nối Internet thông qua Asterisk server.
• Cổng FXS dùng để Asterisk server điều khiển các điện thoại tương tự trong
nội hạt. Cổng FXO và kênh T được dùng để kết nối giữa Asterisk server với
mạng PSTN. Thuê bao trong mạng PSTN thực hiện cuộc gọi đến các thuê
bao được quản lý bởi Asterisk server, các thuê bao của Asterisk cũng có thể
thực hiện cuộc gọi đến thuê bao trong mạng PSTN.
Hình 2.2: Kiến trúc của Asterisk
• Một số chức năng c ủa Asterisk trong hệ thống chuyển mạch cuộc gọi:
• Khi khởi động hệ thống Asterisk thì Dynamic Module Loader thực hiện
nạp driver của thiết bị ,nạp các giao Hiện nay hệ thống Asterisk đang
được phát triển mạnh, nhiều doanh nghiệp, công ty đã và đang triển khai hệ
thống tạo liên lạc bên trong và ra cả mạng ngoài thông qua mạng máy tính,
gọi điện thoại.
Báo cáo Thực tập tốt nghiệp Đại học
Chương 2: Tìm hiểu Asterisk ứng dụng VoIP
Hình 2.3.: Sơ đồ tổng quát hệ thống.
• Asterisk không chỉ giao tiếp, kết nối giữa các điện thoại với nhau mà còn có
thể mở rộng kết nối đến các tổng đài khác, với IP Phone và nhiều dịch vụ
như: Softswitch, Media Gateway, Voicemail Services, Conference Server,
Music on hold…
• Asterisk là một phần mềm nguồn mở, miễn phí, có độ tin cậy cao.
II. Kiến trúc hệ thống
• Asterisk là thiết bị trung gian dùng để liên kết công nghệ điện thoại và
Internet. Asterisk được ứng dụng để kết nối điện thoại, đường dây điện thoại
hoặc gói thoại đến một dịch vụ khác. Asterisk có độ tin cậy cao và dễ dàng
triển khai cho các hệ thống ( từ hệ thống nhỏ đến các hệ thống lớn)
• Asterisk hỗ trợ cho nhiều loại điện thoại với công nghệ khác nhau. Các công
nghệ điện thoại: VoIP, SIP, H.323, IAX. Asterisk có thể kết nối với hầu hết
loại điện thoại truyền thống mạng ISDN qua luồng T1 và E1. Các hàm API
cũng được liên kết nạp vào hệ thống.
• Hệ thống Asterisk PBX Switching Core chuyển sang trạng thái sẵn sàng
thực hiện chuyển mạch cuộc gọi, các cuộc gọi được thực hiện tuỳ vào kế
hoạch quay số (Dialplan).
-
Chức năng Application Launchar để rung chuông thuê bao,
kết nối với hộp thư thoại hoặc gọi ra đường trung kế…
-
Scheduler and I/O Manager đảm nhiệm các ứng dụng nâng cao
như: lập thời biểu và quản lý các cuộc gọi đến – gọi ra ngoài.
Đây là các chức năng được phát triển bởi cộng đồ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 có thể kết hợp liên lạc được với nhau.
-
Tất cả các cuộc gọi định hướng qua hệ thống Asterisk đều thông
qua các giao tiếp như: SIP, Zaptel or IAX. Mọi cuộc gọi vào và
Báo cáo Thực tập tốt nghiệp Đại học
Chương 2: Tìm hiểu Asterisk ứng dụng VoIP
ra ngoài đều được thực hiện thông qua các giao tiếp trên. Vì
thế hệ thống Asterisk phải đảm trách nhiệm vụ liên kết các giao
tiếp khác nhau đó để xử lý cuộc gọi.
• Chức năng của các giao tiếp chương trình ứng dụng (gọi là API:
Application Program Interface)
-
Codec translator API: các hàm đảm nhiệm thực thi và giải nén
các chuẩn khác nhau như: GMS, G723, Mu-Law…
-
Asterisk Channel API : Giao tiếp với các kênh liên lạc khác
nhau, đây là đầu mối cho việc kết nối các cuộc gọi tương thích
với nhiều chuần khác nhau như SIP, ISDN, H323, Zaptel…
-
Asterisk file format API : Asterisk tương thích với việc xử lý
các loại file có định dạng khác nhau như: Mp3, WAV, GSM,
AU…
-
Asterisk Aplication API : Bao gồm tất cả các ứng dụng được
thực thi trong hệ thống Asterisk như: cuộc gọi hội nghị,
VoiceMail, CallerID…
• Ngoài ra, Asterisk còn có thư viện Asterisk Gateway Interface (AGI, tương tự
như CGI) cơ chế kích hoạt ứng dụng bên ngoài, cho phép viết kịch bản phức
tạp với một số ngôn ngữ như PHP hay Perl.
III. Tính năng cơ bản
Một sô tính năng cơ bản của tổng đài Asterisk:
- Hiển thị số người gọi trên điện thoại của bạn
1. Caller ID
2. Call
Forwarding
- Caller ID cũng cho phép chúng ta xác nhận số thuê
bao gọi đến.
- Chuyển một cuộc gọi đến một hay nhiều số máy điện
thoại được định trước.
- Chuyển cuộc gọi khi bận, chuyển cuộc gọi khi
không trả lời, chuyển cuộc gọi tức thời, chuyển cuộc gọi
với thời gian định trước.
- Thực hiện việc chuyển cuộc gọi nhưng có quản lý.
- Có một số điện thoại trung gian và hai thuê bao có
3. Call Parking thể gặp nhau khi thuê bao được gọi nhấn vào số điện
thoại mà thuê bao chủ gọi đang chờ trên đó và từ đây có
thể gặp nhau và đàm thoại.
- Chức năng tương tác thoại (tổng đài trả lời tự động).
- Có rất nhiều ứng dụng trong thực tế, khi gọi điện
thoại đến một cơ quan hay xí nghiệp thuê bao thường
Báo cáo Thực tập tốt nghiệp Đại học
4. IVR
Chương 2: Tìm hiểu Asterisk ứng dụng VoIP
đ ư ợc nghe thông điệp như:“Xin chào mừng bạn đã gọi
đến công ty chúng XXX hãy nhấn phím 1 để gặp phòng
kinh doanh, phím 2 gặp phòng kỹ thuật, phím 3 gặp phòng
hỗ trợ khách hàng…” sau đó tuỳ vào sự tương tác của
thuê bao gọi đến, hệ thống Asteisk sẽ định hướng cuộc gọi
theo mong muốn.
- Dịch vụ xem điểm thi, tiền cước điện thoại của thuê
bao, tỉ giá tiền tệ hiện nay như thế nào, hay kết quả sổ
số, bản tin dự báo thời tiết… tất các những mong muốn
trên đều có thể thực hiện qua chức năng tương tác thoại.
5. Time and
Date
- Nhằm chỉ định các khoảng thời gian cụ thể cuộc gọi
sẽ định hướng đến một số điện thoại hay một chức năng
cụ thể khác.
- Ví dụ trong công ty giám đốc muốn chỉ cho phép
nhân viên sử dụng máy điện thoại trong giờ hành chánh
còn ngoài giờ thì sẽ hạn chế hoặc không cho phép gọi ra
bên ngoài.
6. Remote call
pickup
7. Privacy
Manager
8. Blacklist
9. Voicemail
- Với tính năng này sẽ cho phép chúng ta từ máy điện
thoại này có thể nhận cuộc gọi từ máy điện thoại khác
đang rung chuông.
- Khi một người chủ doanh nghiệp triển khai Asterisk
cho hệ thống điện thoại của công ty mình nhưng lại
không muốn nhân viên trong công ty gọi đi ra ngoài trò
chuyện với bạn bè, khi đó Asterisk cung cấp một tính
năng tiện dụng là chỉ cho phép số điện thoại được lập
trình được phép gọi đến những số máy cố định nào đó
thôi, còn những số không có trong danh sách định sẵn sẽ
không thực hiện cuộc gọi được
-Backlist cũng giống như Privacy Manager nhưng có
một sự khác biệt là những máy điện thoại nằm trong danh
sách sẽ không gọi được đến máy của mình (sử dụng trong
tình trạng hay bị quấy rối điện thoại).
-Voicemail: hộp thư thoại với tính năng cho phép hệ
thống nhận các thông điệp tin nhắn thoại, mỗi máy điện
thoại được khai báo trong hệ thống Asterisk cho phép khai
báo thêm chức năng hộp thư thoại. Khi số điện thoại bị
gọi bận hay ngoài vùng phủ sóng thì hệ thống asterisk
định hướng trực tiếp cuộc gọi đến hộp thư thoại tương
ứng đã khai báo trước.
Voicemail cung cấp cho người sử dụng nhiều tính năng
như: xác nhận password khi truy cập vào hộp thư thoại,
Báo cáo Thực tập tốt nghiệp Đại học
Chương 2: Tìm hiểu Asterisk ứng dụng VoIP
gửi mail báo khi có thông điệp mới
- Chức năng là 1 cuộc gọi hội nghị.
10.Call
Conference
-Meetme
-Các cuộc họp khách hàng,họp nhóm… mà nhân viên
hay bạn bè ở những địa điểm khác nhau. Cuộc gọi hội
nghị này được xem như là một phương tiện chính để cắt
giảm chi phí đi lại và cho phép người lao động có hiệu
quả hơn bằng cách không phải đi ra ngoài văn phòng cho
các cuộc họp.
11. Listening
music
- Chức năng nghe nhạc (nhạc chờ, các chương trình
quà tặng âm nhạc).
Bảng 2.3: Tính năng của hệ thống Asterisk.
• Và còn rất nhiều tính năng nữa mà hệ thống asterisk có thể cung cấp cho người
sử dụng, trên đây chỉ là một số tính năng thường được sử dụng.
IV. Các giao thức VoIP trong Asterisk
1. IAX ( Inter-Asterisk eXchange):
• IAX là một giao thức mở, ta có thể download và phát triển nó miễn phí.
• Phiên bản hiện tại của nó là IAX2, nhưng tất cả các hỗ trợ cho IAX1 không
còn tồn tại nữa. Vì vậy khi nói đến IAX có nghĩa là IAX2. Trong Asterisk,
IAX được hỗ trợ bởi module chan_iax2.
• IAX được phát triển bởi Digium với mục đích giao tiếp với các server
Asterisk khác, vì thế nó được gọi là Inter-Asterisk eXchange. IAX là giao
thức truyền tải (giống như SIP), sử dụng port UDP 4569 cho cả kênh tín
hiệu lẫn dòng dữ liệu RTP.
• IAX có khả năng kết hợp lại nhiều phiên kết nối thành một dòng dữ liệu
duy nhất. Việc kết hợp này làm tăng khả năng sử dụng băng thông. Thêm
vào đó việc sử dụng một header chung duy nhất làm giảm thời gian
overhead cho mỗi kênh riêng lẽ. Giao thức này thích hợp khi có nhiều kênh
kết nối giữa hai đầu cuối.
• Vì IAX được tối ưu hóa cho thoại, nên trên thực tế nó không ưu việc lắm
khi truyền tín hiệu video. Tuy nhiên, vì nó là một giao thức mở, nên các
việc mở rộng dành cho các loại dữ liệu khác ngoài thoại là điều hoàn toàn
có thể.
• Về khía cạnh bảo mật, IAX có khả năng nhận thực bằng 3 cách khác nhau
như sau:
- Plain text
- Mã hóa MD5
- Mã hóa trao đổi khóa RSA.
Không có nhận xét nào :
Đăng nhận xét