Hân hạnh chào mừng đến với thế giới diệu kỳ của Astetisk. Asterisk đem đến
cho người sử dụng tất cả các tính năng và ứng dụng của hệ thống tổng đài PBX và
cung cấp nhiều tính năng mà tổng đài PBX thông thường không có được, đó là sự
kết hợp giữa chuyển mạch VOIP và chuyển mạch TDM, đó là khả năng mở rộng
đáp ứng nhu cầu cho từng ứng dụng
19 trang |
Chia sẻ: maiphuongtt | Lượt xem: 2481 | Lượt tải: 4
Bạn đang xem nội dung tài liệu Tìm hiểu về ASTERISK, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
Chương 1 TỔNG QUAN VỀ ASTERISK 5
1.1 GIỚI THIỆU ASTERISK 5
1.2 KIẾN TRÚC ASTERISK 8
1.3 MỘT SỐ TÍNH NĂNG CƠ BẢN 10
1.3.1 Voicemail (hộp thư thoại) 10
1.3.2 Call Forwarding(chuyển cuộc gọi) 10
1.3.3 Caller ID (hiển thị số gọi) 10
1.3.4 Automated attendant (chức năng IVR) 11
1.3.5 Time and Date 11
1.3.6 Call Parking 11
1.3.7 Remote call pickupe 11
1.3.8 Privacy Manager 12
1.3.9 Backlist 12
1.4 Các ngữ cảnh ứng dụng 12
1.4.1 Tổng đài voip IP PBX 12
1.4.2 Kết nối IP PBX với PBX 14
1.4.3 Kết nối giữa các server Asterisk 15
1.4.4 Các ứng dụng IVR, VoiceMail, Điện Thoại Hội Nghị 16
1.4.5 Chức năng Phân phối cuộc gọi tự động ACD 17
Sách Asterisk –
Tác Giả Lê Quốc Toàn
2
Chương 2 Các KHÁI NIỆM TRONG HỆ THỐNG ASTERISK 18
2.1 GIỚI THIỆU 18
2.2 PBX - Private Branch Exchange 18
2.3 VOIP - Voice Over Internet Protocol 19
2.4 PSTN – Public Switched Telephone Network 20
2.5 TDM – Time Division Multiplexing 20
2.6 Các hình thức báo hiệu giao tiếp TDM. 21
2.6.1 FXO và FXS 21
2.6.2 Báo hiệu Analog giữa đầu cuối và tổng đài 22
2.6.3 Báo hiệu giữa các tổng đài 23
2.7 Báo Hiệu trên mạng điện thoại VoIP 23
2.7.1 SIP Session Initiation Prorocol 23
2.7.2 Proxy server 23
2.7.3 RTP vá NAT 24
2.7.4 IAX – Inter Asterisk eXchange 25
2.8 Thiết Bị VoIP 26
2.8.1 Voip Phone 26
2.8.2 Softphone 26
Sách Asterisk –
Tác Giả Lê Quốc Toàn
3
2.8.3 Card giao tiếp với PSTN 27
2.8.4 ATA Analog Telephone Adaptors 27
2.9 Codecs 28
2.10 QoS – Quality of Service 28
2.10.1 Độ trễ 29
2.10.2 Độ trượt(Jitter) 29
Chương 3 CÀI ĐẶT ASTERISK 31
3.1 Cài đặt Asterisk 31
3.1.1 Download và bung nén 31
3.1.2 Cài đặt gói Zaptel 32
3.1.3 Cài đặt gói libpri 33
3.2 Cài đặt gói Asterisk 33
3.3 Cài đặt TrixBox 34
3.3.1 Giới thiệu 34
3.3.2 DOWNLOAD VÀ LẮP ĐẶT TRIXBOX 35
3.3.3 Cấu hình địa chỉ IP cho card mạng: 35
3.4 Tổ Chức Thư Mục của Asterisk 36
3.4.1 /etc/asterisk/ 36
Sách Asterisk –
Tác Giả Lê Quốc Toàn
4
3.4.2 /usr/lib/asterisk/modules/ 36
3.4.3 /var/lib/asterisk 37
3.4.4 /var/spool/asterisk/ 38
3.4.5 /var/run/ 39
3.4.6 /var/log/asterisk/ 39
3.4.7 /var/log/asterisk/cdr-csv 40
3.5 Một số lệnh thao tác trên hệ thống asterisk 40
Chương 4 CẤU HÌNH HỆ THỐNG ASTERISK 42
4.1 GIỚI THIỆU 42
4.2 Tập Tin cấu hình 42
4.3 Các kiểu ảnh hưởng trong tập cấu hình 43
4.3.1 Simple Group 44
4.3.2 Option inheritance 44
4.3.3 Complex Entity 45
4.4 Cấu hình giao tiếp với mạng PSTN 46
4.4.1 Ngữ cảnh kết nối 46
4.4.2 Lắp đặt card TDM01B và cấu hình. 46
4.5 Cấu hình Điện thoại IP SIP phone. 47
Sách Asterisk –
Tác Giả Lê Quốc Toàn
5
4.5.1 Phần khai báo Chung 48
4.5.2 Khai báo kênh SIP 49
4.6 Giới Thiệu DialPlan 50
4.6.1 Extentions 51
4.6.2 Priorities – Thứ tự thực hiện 52
4.6.3 Aplications – Các hàm ứng dụng 53
4.6.4 Contexts - Ngữ cảnh 53
4.7 Ngữ cảnh thực hành ứng dụng 55
4.7.1 Bước 1: Cấu hình cho hai sip phone X-lite 8051 và 8052 bằng
cách cấu hình trên file sip.conf như sau: 56
4.7.2 Bước 2: Cấu hình softphone x-lite phía client cho máy 8051 57
4.7.3 Bước 3 : Lập lại bước hai để khai báo máy điện thoại softphone
8052 58
4.8 Tạo diaplan. 58
4.8.1 Thực hiện một ví dụ cơ bản. 58
4.8.2 Các ứng dụng dial(), background() và goto(). 59
Sách Asterisk –
Tác Giả Lê Quốc Toàn
6
1 TỔNG QUAN VỀ ASTERISK
1 GIỚI THIỆU ASTERISK
Hân hạnh chào mừng đến với thế giới diệu kỳ của Astetisk. Asterisk đem đến
cho người sử dụng tất cả các tính năng và ứng dụng của hệ thống tổng đài PBX và
cung cấp nhiều tính năng mà tổng đài PBX thông thường không có được, đó là sự
kết hợp giữa chuyển mạch VOIP và chuyển mạch TDM, đó là khả năng mở rộng
đáp ứng nhu cầu cho từng ứng dụng…
Asterisk là hệ thống chuyển mạch mềm, là phần mềm nguồn mở được viết
bằng ngôn ngữ C chạy trên hệ điều hành linux thực hiện tất cả các tính năng của
tổng đài PBX và hơn thế nữa. Asterisk ra đời vào năm 1999 bởi một chàng trai sinh
Sách Asterisk –
Tác Giả Lê Quốc Toàn
7
năm 1977 tên là Mark Spencer, Anh ta viết phần mềm này ban đầu không ngoài
mục đích hỗ trợ cho công ty của mình trong việc liên lạc đàm thoại hỗ trợ cộng
đồng người sử dụng và phát triển Linux.
Asterisk là một PBX và nhiều hơn thế. Asterisk là một phần mềm mang tính
cách mạng, tin cậy, mã nguồn mở và miễn phí mà biến một PC rẻ tiền thông thường
chạy Linux thành một hệ thống điện thoại doanh nghiệp mạnh mẽ. Asterisk là một
bộ công cụ mã nguồn mở cho các ứng dụng thoại và là một server xử lý cuộc gọi
đầy đủ chức năng. Asterisk là một nền tảng tích hợp điện thoại vi tính hoá kiến trúc
mở. Nhiều hệ thống Asterisk đã được cài đặt thành công trên khắp thế giới. Công
nghệ Asterisk đang phục vụ cho nhiều doanh nghiệp.
Hiện nay Asterisk trên đà phát triển nhanh được rất nhiều doanh nghiệp triển
khai ứng dụng cho công ty của mình. Đây là xu thế tất yếu của người sử dụng điện
thoại, vì các công ty đều có mạng máy tính và cần liên lạc với nhau trong công việc
giữa các phòng ban hoặc chi nhánh và cần một chi phí thấp thậm chí không phải tốn
chi phí khi thực hiện các cuộc gọi trên mạng nội bộ của công ty.
Không gói gọn thông tin liên lạc trong công ty mà các ứng dụng giao tiếp với
mạng PSTN hoặc mạng VOIP (như voice777) cho phép gọi ra bất cứ số điện thoại
nào có trên mạng PSTN.
Ngoài ra việc tích hợp vào các ứng dụng như CRM và hệ thống Outlook làm
cho khả năng ứng dụng của Asterisk linh hoạt hơn đáp ứng nhu cầu cần thiết cho
người sử dụng điện thoại.
Asterisk thoạt đầu được phát triển trên GNU/Linux nền x86 (Intel), nhưng giờ
đây nó cũng có thể biên dịch và chạy trên OpenBSD, FreeBSD và Mac OS X và
Microsoft Windows.
Sách Asterisk –
Tác Giả Lê Quốc Toàn
8
Sơ đồ Tổng quát
Asterisk là hệ thống chuyển mạch tích hợp vừa là công nghệ truyền thống
TDM vừa là chguyển mạch voip. Hình trên cũng cho thấy khả năng giao tiếp của hệ
thống. Giao tiếp với điện thoại analog thông thường, giao tiếp với thiết bị điện thoại
voip, ngoài ra còn có thể giao tiếp với mạng PSTN và các nhà cung cấp voip khác.
2 KIẾN TRÚC ASTERISK
Sách Asterisk –
Tác Giả Lê Quốc Toàn
9
Về cơ bản kiến trúc của Asterisk là sự kết hộp giữa nền tảng công nghệ điện
thoại và ứng dụng điện thoại. công nghệ điện thoại cho VOIP như SIP, H323, IAX,
MGCP... các công nghệ điện thoại cho hệ thống chuyển mạch mạch TDM như T1,
E1, ISDN và các giao tiếp đường truyền thoại Analog. Các ứng dụng thoại như
chuyển mạch cuộc gọi, tương tác thoại, caller ID, voicemail, chuyển cuộc gọi…
Asterisk có một số chức năng chính đóng vai trò quan trọng trong hệ thống
chuyển mạch cuộc gọi. Khi khởi động hệ thống Asterisk thì chức năng Dynamic
Module Loader thực hiện nạp driver của thiết bị, nạp các kênh giao tiếp, các
format, codec và các ứng dụng liên quan, đồng thời các hàm API cũng được liên kết
nạp vào hệ thống.
Sách Asterisk –
Tác Giả Lê Quốc Toàn
10
Sau đó hệ thống PBX Switching Core của Asterisk chuyển sang trạng thái sẵn
sàng hoạt động chuyển mạch cuộc gọi, các cuộc gọi được chuyển mạch tuỳ vào kế
hoạch quay số (Dialplan) được thực hiện cấu hình trong file extension.conf.
Chức năng Application Launchar để rung chuông thuê bao, quay số, định
hướng cuộc gọi, kết nối vớ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
đượ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, IAX. Nên 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.
Hệ thống cũng bao gồm 4 chức năng API chính:
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ư G711, GMS, G729…
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,
IAX, 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…
Asterisk Aplication API : Bao gồm tất cả các ứng dụng được thực thi trong hệ
thống Asterisk như voicemail, callerID…
Sách Asterisk –
Tác Giả Lê Quốc Toàn
11
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. Nói chung, khả năng viết các ứng dụng tùy
biến rất lớn.
3 MỘT SỐ TÍNH NĂNG CƠ BẢN
Asterisk có rất nhiều tính năng đã được giới thiệu ở trên nhưng để hiểu rõ hết
tất cả các tính năng trên thật sự là thách thức đối với chúng ta. Trong phần này
chúng tôi sẽ giới thiệu một số tính năng với các ứng dụng cụ thể để hiểu hơn về hệ
thống asterisk.
1 Voicemail (hộp thư thoại)
Đây là 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.
Mỗi khi số điện thoại bận hay ngoài “vùng phủ sóng” thì hệ thống asterisk
định hướng trực tiếp các 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 lựa chọn như :
password xác nhận khi truy cập vào hộp thư thoại, gửi mail báo khi có thông điệp
mới.
2 Call Forwarding(chuyển cuộc gọi)
Khi không ở nhà, hoặc đi công tác mà người sử dụng không muốn bỏ lỡ tất cả
các cuộc gọi đến thì hãy nghĩ ngay đến tính năng chuyển cuộc gọi.
Đây là tính năng thường được sử dụng trong hệ thống Asterisk. Chức năng cho
phép 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.
Sách Asterisk –
Tác Giả Lê Quốc Toàn
12
Một số trường hợp cần chuyển cuộc gọi như : 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.
3 Caller ID (hiển thị số gọi)
Chức năng này rất hữu dụng khi một ai đó gọi đến và ta muốn biết chính xác
là gọi từ đâu và trong một số trường hợp biết chắc họ là ai.
Ngoài ra Caller ID còn là chức năng cho phép chúng ta xác nhận số thuê bao
gọi đến có nghĩa là dựa vào caller ID chúng ta có tiếp nhận hay không tiếp nhận
cuộc gọi từ phía hệ thống Asterisk. Ngăn một số cuộc gọi ngoài ý muốn.
4 Automated attendant (chức năng IVR)
Chức năng tương tác thoại 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 nghe thông điệp như “Xin
chào mừng bạn đã gọi đến công ty chúng Tôi hãy nhấn phím 1 để gặp phòng kinh
doanh, phím 2 gặp phòng kỹ thuật…” 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.
Khi muốn xem điểm thi, muốn biết tiền cước điện thoại của thuê bao, muốn
biết tỉ giá Đôla hiện nay như thế nào, hay kết quả sổ số … 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
Vào từ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ế hay
không cho phép gọi ra bên ngoài.
Sách Asterisk –
Tác Giả Lê Quốc Toàn
13
6 Call Parking
Đây là chức năng chuyển cuộc gọi có quản lý. Có một số điện thoại trung gian
và hai thuê bao có 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.
7 Remote call pickupe
Đây là tính năng 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
8 Privacy Manager
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 1 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
9 Backlist
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)
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 mà thôi, Để biết
nhiều hơn chi tiết hơn các tính năng còn lại xin hãy tham quan website
www.asterisk.org.
4 Các ngữ cảnh ứng dụng
Sách Asterisk –
Tác Giả Lê Quốc Toàn
14
Asterisk thực hiện rất nhiều ngữ cảnh ứng dụng khác nhau tuỳ vào nhu cầu sử
dụng, dưới dây là những ngữ cảnh ứng dụng thường được sử dụng trong thực tế
triển khai hệ thống asterisk.
1 Tổng đài voip IP PBX
IP BPX
Sách Asterisk –
Tác Giả Lê Quốc Toàn
15
Đây là hệ thống chuyển mạch voip được xây dựng phục vụ các công ty có nhu
cầu thực hiện trên nền tảng mạng nội bộ đã triển khai. Thay vì lắp đặt một hệ thống
PBX cho nhu cầu liên lạc nội bộ thì nên lắp đặt hệ thống voip điều này sẽ làm giảm
chi phí đáng kể. Hệ thống có thể liên lạc với mạng PSTN qua giao tiếp TDM.
2 Kết nối IP PBX với PBX
Kết nối IP PBX với PBX
Một ngữ cảnh đặt ra ở đây là hiện tại Công ty đã trang bị hệ thống PBX bây
giờ cần trang bị thêm để đáp ứng nhu cầu liên lạc trong công ty sao cho với chi phí
thấp nhất, giải pháp để thực hiện đó là trang bị hệ thống asterisk và kết nối với hệ
Sách Asterisk –
Tác Giả Lê Quốc Toàn
16
thống PBX đang tồn tại qua luồng E1. Ngoài ra để tăng khả năng liên lạc với mạng
PSTN và VOIP khác, Công Ty có thể thực hiện kết nối với nhà cung cấp dịch vụ
voip.
3 Kết nối giữa các server Asterisk
Kết nối giữa các server asterisk
Phương pháp trên ứng dụng rất hiệu quả cho các công ty nằm rãi rác ở các vị
trị địa lý khác nhau nhằm giảm chi phí đường dài. Ví dụ Công ty Mẹ có trụ sở đặt
tại nước Mỹ và các Chi nhánh đặt tại Việt Nam với các địa điểm Thành phố Hồ Chí
Minh và Hà Nội. Thông qua mạng WAN của Công Ty các cuộc gọi nội bộ giữa các
Sách Asterisk –
Tác Giả Lê Quốc Toàn
17
vị trí khác nhau sẽ làm giảm chi phí đáng kể. Ngữ cảnh này về mặt pháp luật không
cho cuộc gọi từ Mỹ vào Việt Nam.
4 Các ứng dụng IVR, VoiceMail, Điện Thoại Hội Nghị
Triển khai server IVR, VoiceMail, Hội Thoại
Ứng dụng thực hiện các server kết nối với hệ thống PSTN hay tổng đài PBX
để triển khai các ứng dụng như tương tác thoại IVR. Một ví dụ cho ứng dụng tương
tác thoại đó là cho biết kết quả sổ số hay kiểm tra cước cuộc gọi giống dịch vụ
19001260 vậy. Ứng dụng VoiceMail thu nhận những tin nhắn thoại từ phía thuê
bao giống như chức năng hộp thư thoại của Bưu Điện Thành phố triển khai. Còn
Sách Asterisk –
Tác Giả Lê Quốc Toàn
18
chức năng điện thoại hội nghị thiết lập cho nhiều máy điện thoại cùng nói chuyện
với nhau.
5 Chức năng Phân phối cuộc gọi tự động ACD
Phân phối cuộc gọi với hàng đợi
ACD(Automatic Call Distribution): Phân phối cuộc gọi tự động.
Đây là chức năng ứng dụng cho nhu cầu chăm sóc khách hàng hay nhận phản
hổi từ phía khách hàng.
Sách Asterisk –
Tác Giả Lê Quốc Toàn
19
Công ty có khả năng tiếp nhận cùng một lúc 10 cuộc gọi như thế cuộc gọi thứ
11 gọi đến thì hệ thống giải quyết như thế nào?. Bình thường thì sẽ nghe tín hiệu
bận nhưng với chức năng phân phối cuộc gọi sẽ đưa thuê bao đó vào hàng đợi để
chờ trả lời, trong khi chờ trả lời cuộc gọi thuê bao có thể nghe những bài hát hay do
asterisk cung cấp, trong lúc này nếu 1 trong mười số điện thoại trở về trạng thái rỗi
thì cuộc gọi đang chờ sẽ được trả lời. Giống như chức năng của dịch vụ 1080 hay
116 của Bưu Điện Thành Phố vậy.
2 CÁC KHÁI NIỆM TRONG HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Trong chương này sẽ giải thích rõ các khái niệm cơ bản liên quan đến hệ thống
asterisk, cung cấp những kiến thức nền tảng, những khái niệm cần thiết để thiết kế
triển khai xây dựng hệ thống điện thoại với Asterisk.
2 PBX - Private Branch Exchange
PBX hay còn gọi là PABX - Private Automatic Branch Exchange là hệ thống
tổng đài nội bộ được đặt tại nhà thuê bao, từ Automatic ở đây muốn nói đến là hệ
thống tổng đài điện tử tự động nhưng hiện nay đa số là tổng đài PBX điện tử tự
động nên từ trên thực sự không còn cần thiết nữa.
PBX với mục tiêu chia sẻ nhiều thuê bao nội bộ gọi ra thế giới bên ngoài
thông qua một vài đường trung kế hay nói một cách khác PBX là hệ thống trung
chuyển giữa các đường dây điện thoại bên ngoài từ công ty điện thoại và máy điện
thoại nội bộ trong tổng đài PBX. Vì thế nên số lượng máy điện thoại nội bộ luôn
nhiều hơn số đường dây nối đến PBX từ bên ngoài.