882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 172
Chương 1 TỔNG QUAN VỀ ASTERISK 5
11 GIỚI THIỆU ASTERISK 5
12 KIẾN TRUacuteC ASTERISK 8
13 MỘT SỐ TIacuteNH NĂNG CƠ BẢN 10
131 Voicemail (hộp thư thoại) 10
132 Call Forwarding(chuyển cuộc gọi) 10
133 Caller ID (hiển thị số gọi) 10
134 Automated attendant (chức năng IVR) 11
135 Time and Date 11
136 Call Parking 11
137 Remote call pickupe 11138 Privacy Manager 12
139 Backlist 12
14 Caacutec ngữ cảnh ứng dụng 12
141 Tổng đagravei voip IP PBX 12
142 Kết nối IP PBX với PBX 14
143 Kết nối giữa caacutec server Asterisk 15
144 Caacutec ứng dụng IVR VoiceMail Điện Thoại Hội Nghị 16
145 Chức năng Phacircn phối cuộc gọi tự động ACD 17
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 272
Taacutec Giả Lecirc Quốc Toagraven
2
Chương 2 Caacutec KHAacuteI NIỆM TRONG HỆ THỐNG ASTERISK 18
21 GIỚI THIỆU 18
22 PBX - Private Branch Exchange 18
23 VOIP - Voice Over Internet Protocol 19
24 PSTN ndash Public Switched Telephone Network 20
25 TDM ndash Time Division Multiplexing 20
26 Caacutec higravenh thức baacuteo hiệu giao tiếp TDM 21
261 FXO vagrave FXS 21
262 Baacuteo hiệu Analog giữa đầu cuối vagrave tổng đagravei 22
263 Baacuteo hiệu giữa caacutec tổng đagravei 23
27 Baacuteo Hiệu trecircn mạng điện thoại VoIP 23
271 SIP Session Initiation Prorocol 23
272 Proxy server 23
273 RTP vaacute NAT 24
274 IAX ndash Inter Asterisk eXchange 25
28 Thiết Bị VoIP 26
281 Voip Phone 26
282 Softphone 26
www04hcbnet
Taacutec Giả Lecirc Quốc Toagraven
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 372
Taacutec Giả Lecirc Quốc Toagraven
3
283 Card giao tiếp với PSTN 27
284 ATA Analog Telephone Adaptors 27
29 Codecs 28
210 QoS ndash Quality of Service 28
2101 Độ trễ 29
2102 Độ trượt(Jitter) 29
Chương 3 CAgraveI ĐẶT ASTERISK 31
31 Cagravei đặt Asterisk 31
311 Download vagrave bung neacuten 31
312 Cagravei đặt goacutei Zaptel 32
313 Cagravei đặt goacutei libpri 33
32 Cagravei đặt goacutei Asterisk 33
33 Cagravei đặt TrixBox 34
331 Giới thiệu 34
332 DOWNLOAD VAgrave LẮP ĐẶT TRIXBOX 35
333 Cấu higravenh địa chỉ IP cho card mạng 35
34 Tổ Chức Thư Mục của Asterisk 36
341 etcasterisk 36
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 472
Taacutec Giả Lecirc Quốc Toagraven
4
342 usrlibasteriskmodules 36
343 varlibasterisk 37
344 varspoolasterisk 38
345 varrun 39
346 varlogasterisk 39
347 varlogasteriskcdr-csv 40
35 Một số lệnh thao taacutec trecircn hệ thống asterisk 40
Chương 4 CẤU HIgraveNH HỆ THỐNG ASTERISK 42
41 GIỚI THIỆU 42
42 Tập Tin cấu higravenh 42
43 Caacutec kiểu ảnh hưởng trong tập cấu higravenh 43
431 Simple Group 44
432 Option inheritance 44
433 Complex Entity 45
44 Cấu higravenh giao tiếp với mạng PSTN 46
441 Ngữ cảnh kết nối 46
442 Lắp đặt card TDM01B vagrave cấu higravenh 46
45 Cấu higravenh Điện thoại IP SIP phone 47
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 572
Taacutec Giả Lecirc Quốc Toagraven
5
451 Phần khai baacuteo Chung 48
452 Khai baacuteo kecircnh SIP 49
46 Giới Thiệu DialPlan 50
461 Extentions 51
462 Priorities ndash Thứ tự thực hiện 52
463 Aplications ndash Caacutec hagravem ứng dụng 53
464 Contexts - Ngữ cảnh 53
47 Ngữ cảnh thực hagravenh ứng dụng 55
471 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằngcaacutech cấu higravenh trecircn file sipconf như sau 56
472 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 805157
473 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052 58
48 Tạo diaplan 58
481 Thực hiện một viacute dụ cơ bản 58
482 Caacutec ứng dụng dial() background() vagrave goto() 59
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 672
Taacutec Giả Lecirc Quốc Toagraven
6
1 TỔNG QUAN VỀ ASTERISK
1 GIỚI THIỆU ASTERISK
Hacircn hạnh chagraveo mừng đến với thế giới diệu kỳ của Astetisk Asterisk đem đếcho người sử dụng tất cả caacutec tiacutenh năng vagrave ứng dụng của hệ thống tổng đagravei PBX
cung cấp nhiều tiacutenh năng magrave tổng đagravei PBX thocircng thường khocircng coacute được đoacute lagrave sựkết hợp giữa chuyển mạch VOIP vagrave chuyển mạch TDM đoacute lagrave khả năng mở rộnđaacutep ứng nhu cầu cho từng ứng dụnghellip
Asterisk lagrave hệ thống chuyển mạch mềm lagrave phần mềm nguồn mở được viế bằng ngocircn ngữ C chạy trecircn hệ điều hagravenh linux thực hiện tất cả caacutec tiacutenh năng củtổng đagravei PBX vagrave hơn thế nữa Asterisk ra đời vagraveo năm 1999 bởi một chagraveng trai sinh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 772
Taacutec Giả Lecirc Quốc Toagraven
7
năm 1977 tecircn lagrave Mark Spencer Anh ta viết phần mềm nagravey ban đầu khocircng ngoagraveimục điacutech hỗ trợ cho cocircng ty của migravenh trong việc liecircn lạc đagravem thoại hỗ trợ cộnđồng người sử dụng vagrave phaacutet triển Linux
Asterisk lagrave mộtPBXvagrave nhiều hơn thế Asterisk lagrave một phần mềm mang tiacutenhcaacutech mạng tin cậy matilde nguồn mở vagrave miễn phiacute magrave biến một PC rẻ tiền thocircng thườnchạy Linux thagravenh một hệ thống điện thoại doanh nghiệp mạnh mẽ Asterisk lagrave m bộ cocircng cụ matilde nguồn mở cho caacutec ứng dụng thoại vagrave lagrave một server xử lyacute cuộc gọđầy đủ chức năng Asterisk lagrave một nền tảng tiacutech hợp điện thoại vi tiacutenh hoaacute kiến truacutemở Nhiều hệ thống Asterisk đatilde được cagravei đặt thagravenh cocircng trecircn khắp thế giới Cocircnnghệ Asterisk đang phục vụ cho nhiều doanh nghiệp
Hiện nay Asterisk trecircn đagrave phaacutet triển nhanh được rất nhiều doanh nghiệp triểnkhai ứng dụng cho cocircng ty của migravenh Đacircy lagrave xu thế tất yếu của người sử dụng điệthoại vigrave caacutec cocircng ty đều coacute mạng maacutey tiacutenh vagrave cần liecircn lạc với nhau trong cocircng việcgiữa caacutec phograveng ban hoặc chi nhaacutenh vagrave cần một chi phiacute thấp thậm chiacute khocircng phải tốchi phiacute khi thực hiện caacutec cuộc gọi trecircn mạng nội bộ của cocircng ty
Khocircng goacutei gọn thocircng tin liecircn lạc trong cocircng ty magrave caacutec ứng dụng giao tiếp vớimạng PSTN hoặc mạng VOIP (như voice777) cho pheacutep gọi ra bất cứ số điện thoạnagraveo coacute trecircn mạng PSTN
Ngoagravei ra việc tiacutech hợp vagraveo caacutec ứng dụng như CRM vagrave hệ thống Outlook lagravemcho khả năng ứng dụng của Asterisk linh hoạt hơn đaacutep ứng nhu cầu cần thiết ch
người sử dụng điện thoại
Asterisk thoạt đầu được phaacutet triển trecircn GNULinux nền x86 (Intel) nhưng giờđacircy noacute cũng coacute thể biecircn dịch vagrave chạy trecircn OpenBSD FreeBSD vagrave Mac OS X vagraveMicrosoft Windows
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 872
Taacutec Giả Lecirc Quốc Toagraven
8
Sơ đồ Tổng quaacutet
Asterisk lagrave hệ thống chuyển mạch tiacutech hợp vừa lagrave cocircng nghệ truyền thốngTDM vừa lagrave chguyển mạch voip Higravenh trecircn cũng cho thấy khả năng giao tiếp của hthống Giao tiếp với điện thoại analog thocircng thường giao tiếp với thiết bị điện thovoip ngoagravei ra cograven coacute thể giao tiếp với mạng PSTN vagrave caacutec nhagrave cung cấp voip khaacutec
2 KIẾN TRUacuteC ASTERISK
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 972
Taacutec Giả Lecirc Quốc Toagraven
9
Về cơ bản kiến truacutec của Asterisk lagrave sự kết hộp giữa nền tảng cocircng nghệ đithoại vagrave ứng dụng điện thoại cocircng nghệ điện thoại cho VOIP như SIP H323 IAXMGCP caacutec cocircng nghệ điện thoại cho hệ thống chuyển mạch mạch TDM như TE1 ISDN vagrave caacutec giao tiếp đường truyền thoại Analog Caacutec ứng dụng thoại nhưchuyển mạch cuộc gọi tương taacutec thoại caller ID voicemail chuyển cuộc gọihellip
Asterisk coacute một số chức năng chiacutenh đoacuteng vai trograve quan trọng trong hệ thống
chuyển mạch cuộc gọi Khi khởi động hệ thống Asterisk thigrave chức năng DynamiModule Loader thực hiện nạp driver của thiết bị nạp caacutec kecircnh giao tiếp caacutecformat codec vagrave caacutec ứng dụng liecircn quan đồng thời caacutec hagravem API cũng được liecircn kếtnạp vagraveo hệ thống
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1072
Taacutec Giả Lecirc Quốc Toagraven
10
Sau đoacute hệ thống PBX Switching Core của Asterisk chuyển sang trạng thaacutei sẵnsagraveng hoạt động chuyển mạch cuộc gọi caacutec cuộc gọi được chuyển mạch tuỳ vagraveo
hoạch quay số (Dialplan) được thực hiện cấu higravenh trong file extensionconfChức năng Application Launchar để rung chuocircng thuecirc bao quay số định
hướng cuộc gọi kết nối với hộp thư thoạihellip
Scheduler and IO Manager đảm nhiệm caacutec ứng dụng nacircng cao caacutec chức năngđược phaacutet triển bởi cộng đồng phaacutet triển asterisk
Codec Translator xaacutec nhận caacutec kecircnh neacuten dữ liệu ứng với caacutec chuẩn khaacutec nhaucoacute thể kết hợp liecircn lạc được với nhau
Tất cả caacutec cuộc gọi định hướng qua hệ thống Asterisk đều thocircng qua caacutec giaotiếp như SIP Zaptel IAX Necircn hệ thống Asterisk phải đảm traacutech nhiệm vụ liecircn kếcaacutec giao tiếp khaacutec nhau đoacute để xử lyacute cuộc gọi
Hệ thống cũng bao gồm 4 chức năng API chiacutenh
Codec translator API caacutec hagravem đảm nhiệm thực thi vagrave giải neacuten caacutec chuẩn khaacutecnhau như G711 GMS G729hellip
Asterisk Channel API Giao tiếp với caacutec kecircnh liecircn lạc khaacutec nhau đacircy lagrave đầumối cho việc kết nối caacutec cuộc gọi tương thiacutech với nhiều chuần khaacutec nhau như SIIAX H323 Zaptelhellip
Asterisk file format API Asterisk tương thiacutech với việc xử lyacute caacutec loại file coacuteđịnh dạng khaacutec nhau như Mp3 wav gsmhellip
Asterisk Aplication API Bao gồm tất cả caacutec ứng dụng được thực thi trong hệthống Asterisk như voicemail callerIDhellip
wwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1172
Taacutec Giả Lecirc Quốc Toagraven
11
Ngoagravei ra Asterisk cograven coacute thư viện Asterisk Gateway Interface (AGI tương tựnhư CGI) - cơ chế kiacutech hoạt ứng dụng becircn ngoagravei cho pheacutep viết kịch bản phức tạp
với một số ngocircn ngữ như PHP hay Perl Noacutei chung khả năng viết caacutec ứng dụng tugravey biến rất lớn
3 MỘT SỐ TIacuteNH NĂNG CƠ BẢN
Asterisk coacute rất nhiều tiacutenh năng đatilde được giới thiệu ở trecircn nhưng để hiểu rotilde hếtất cả caacutec tiacutenh năng trecircn thật sự lagrave thaacutech thức đối với chuacuteng ta Trong phần nagraveychuacuteng tocirci sẽ giới thiệu một số tiacutenh năng với caacutec ứng dụng cụ thể để hiểu hơn về
thống asterisk
1 Voicemail (hộp thư thoại)
Đacircy lagrave tiacutenh năng cho pheacutep hệ thống nhận caacutec thocircng điệp tin nhắn thoại mỗmaacutey điện thoại được khai baacuteo trong hệ thống Asterisk cho pheacutep khai baacuteo thecircm chứnăng hộp thư thoại
Mỗi khi số điện thoại bận hay ngoagravei ldquovugraveng phủ soacutengrdquo thigrave hệ thống asteriskđịnh hướng trực tiếp caacutec cuộc gọi đến hộp thư thoại tương ứng đatilde khai baacuteo trước
Voicemail cung cấp cho người sử dụng nhiều tiacutenh năng lựa chọn như password xaacutec nhận khi truy cập vagraveo hộp thư thoại gửi mail baacuteo khi coacute thocircng điệmới
2 Call Forwarding(chuyển cuộc gọi)
Khi khocircng ở nhagrave hoặc đi cocircng taacutec magrave người sử dụng khocircng muốn bỏ lỡ tất ccaacutec cuộc gọi đến thigrave hatildey nghĩ ngay đến tiacutenh năng chuyển cuộc gọi
Đacircy lagrave tiacutenh năng thường được sử dụng trong hệ thống Asterisk Chức năng cho pheacutep chuyển một cuộc gọi đến một hay nhiều số maacutey điện thoại được định trước
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1272
Taacutec Giả Lecirc Quốc Toagraven
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ậnchuyển cuộc gọi khi khocircng trả lời chuyển cuộc gọi tức thời chuyển cuộc gọi v
thời gian định trước3 Caller ID (hiển thị số gọi)
Chức năng nagravey rất hữu dụng khi một ai đoacute gọi đến vagrave ta muốn biết chiacutenh xaacuteclagrave gọi từ đacircu vagrave trong một số trường hợp biết chắc họ lagrave ai
Ngoagravei ra Caller ID cograven lagrave chức năng cho pheacutep chuacuteng ta xaacutec nhận số thuecirc bao
gọi đến coacute nghĩa lagrave dựa vagraveo caller ID chuacuteng ta coacute tiếp nhận hay khocircng tiếp nhậncuộc gọi từ phiacutea hệ thống Asterisk Ngăn một số cuộc gọi ngoagravei yacute muốn
4 Automated attendant (chức năng IVR)
Chức năng tương taacutec thoại coacute rất nhiều ứng dụng trong thực tế khi gọi điệthoại đến một cơ quan hay xiacute nghiệp thuecirc bao thường nghe thocircng điệp nhưldquoXinchagraveo mừng bạn đatilde gọi đến cocircng ty chuacuteng Tocirci hatildey nhấn phiacutem 1 để gặp phograveng kinh
doanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquosau đoacute tuỳ vagraveo sự tương taacutec của thuecirc 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 thuecirc bao muố biết tỉ giaacute Đocircla hiện nay như thế nagraveo hay kết quả sổ số hellip tất caacutec những monmuốn trecircn đều coacute thể thực hiện qua chức năng tương taacutec thoại
5 Time and Date
Vagraveo từng thời gian cụ thể cuộc gọi sẽ định hướng đến một số điện thoại hmột chức năng cụ thể khaacutec viacute dụ trong cocircng ty giaacutem đốc muốn chỉ cho pheacutep nhacircnviecircn sử dụng maacutey điện thoại trong giờ hagravenh chaacutenh cograven ngoagravei giờ thigrave sẽ hạn chế hakhocircng cho pheacutep gọi ra becircn ngoagravei
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1372
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1472
Taacutec Giả Lecirc Quốc Toagraven
14
Asterisk thực hiện rất nhiều ngữ cảnh ứng dụng khaacutec nhau tuỳ vagraveo nhu cầu sdụng dưới dacircy lagrave những ngữ cảnh ứng dụng thường được sử dụng trong thực
triển khai hệ thống asterisk1 Tổng đagravei voip IP PBX
IP BPX
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1572
Taacutec Giả Lecirc Quốc Toagraven
15
Đacircy lagrave hệ thống chuyển mạch voip được xacircy dựng phục vụ caacutec cocircng ty coacute nhucầu thực hiện trecircn nền tảng mạng nội bộ đatilde triển khai Thay vigrave lắp đặt một hệ thố
PBX cho nhu cầu liecircn lạc nội bộ thigrave necircn lắp đặt hệ thống voip điều nagravey sẽ lagravem giảchi phiacute đaacuteng kể Hệ thống coacute thể liecircn 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 ở đacircy lagrave hiện tại Cocircng ty đatilde trang bị hệ thống PBX bacircygiờ cần trang bị thecircm để đaacutep ứng nhu cầu liecircn lạc trong cocircng ty sao cho với chi phthấp nhất giải phaacutep để thực hiện đoacute lagrave trang bị hệ thống asterisk vagrave kết nối với h
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1672
Taacutec Giả Lecirc Quốc Toagraven
16
thống PBX đang tồn tại qua luồng E1 Ngoagravei ra để tăng khả năng liecircn lạc với mạnPSTN vagrave VOIP khaacutec Cocircng Ty coacute thể thực hiện kết nối với nhagrave cung cấp dịch vụvoip
3 Kết nối giữa caacutec server Asterisk
Kết nối giữa caacutec server asterisk
Phương phaacutep trecircn ứng dụng rất hiệu quả cho caacutec cocircng ty nằm ratildei raacutec ở caacutec vtrị địa lyacute khaacutec nhau nhằm giảm chi phiacute đường dagravei Viacute dụ Cocircng ty Mẹ coacute trụ sở đặtại nước Mỹ vagrave caacutec Chi nhaacutenh đặt tại Việt Nam với caacutec địa điểm Thagravenh phố Hồ ChMinh vagrave Hagrave Nội Thocircng qua mạng WAN của Cocircng Ty caacutec cuộc gọi nội bộ giữa caacutec
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1772
Taacutec Giả Lecirc Quốc Toagraven
17
vị triacute khaacutec nhau sẽ lagravem giảm chi phiacute đaacuteng kể Ngữ cảnh nagravey về mặt phaacutep luật khocircncho cuộc gọi từ Mỹ vagraveo Việt Nam
4 Caacutec ứ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 caacutec server kết nối với hệ thống PSTN hay tổng đagravei PBXđể triển khai caacutec ứng dụng như tương taacutec thoại IVR Một viacute dụ cho ứng dụng tươtaacutec thoại đoacute lagrave cho biết kết quả sổ số hay kiểm tra cước cuộc gọi giống dịch v19001260 vậy Ứng dụng VoiceMail thu nhận những tin nhắn thoại từ phiacutea thuecirc bao giống như chức năng hộp thư thoại của Bưu Điện Thagravenh phố triển khai Cograve
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1872
Taacutec Giả Lecirc Quốc Toagraven
18
chức năng điện thoại hội nghị thiết lập cho nhiều maacutey điện thoại cugraveng noacutei chuyệvới nhau
5 Chức năng Phacircn phối cuộc gọi tự động ACD
Phacircn phối cuộc gọi với hagraveng đợi
ACD(Automatic Call Distribution) Phacircn phối cuộc gọi tự động
Đacircy lagrave chức năng ứng dụng cho nhu cầu chăm soacutec khaacutech hagraveng hay nhận phảnhổi từ phiacutea khaacutech hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1972
Taacutec Giả Lecirc Quốc Toagraven
19
Cocircng ty coacute khả năng tiếp nhận cugraveng một luacutec 10 cuộc gọi như thế cuộc gọi th11 gọi đến thigrave hệ thống giải quyết như thế nagraveo Bigravenh thường thigrave sẽ nghe tiacuten hiệ
bận nhưng với chức năng phacircn phối cuộc gọi sẽ đưa thuecirc bao đoacute vagraveo hagraveng đợi đchờ trả lời trong khi chờ trả lời cuộc gọi thuecirc bao coacute thể nghe những bagravei haacutet hay dasterisk cung cấp trong luacutec nagravey nếu 1 trong mười số điện thoại trở về trạng thaacutei rthigrave cuộc gọi đang chờ sẽ được trả lời Giống như chức năng của dịch vụ 1080 ha116 của Bưu Điện Thagravenh Phố vậy
2 CAacuteC KHAacuteI NIỆM TRONG HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Trong chương nagravey sẽ giải thiacutech rotilde caacutec khaacutei niệm cơ bản liecircn quan đến hệ thốnasterisk cung cấp những kiến thức nền tảng những khaacutei niệm cần thiết để thiếttriển khai xacircy dựng hệ thống điện thoại với Asterisk
2 PBX - Private Branch Exchange
PBX hay cograven gọi lagrave PABX - Private Automatic Branch Exchange lagrave hệ thốngtổng đagravei nội bộ được đặt tại nhagrave thuecirc bao từ Automatic ở đacircy muốn noacutei đến lagrave hthống tổng đagravei điện tử tự động nhưng hiện nay đa số lagrave tổng đagravei PBX điện tử tđộng necircn từ trecircn thực sự khocircng cograven cần thiết nữa
PBX với mục tiecircu chia sẻ nhiều thuecirc bao nội bộ gọi ra thế giới becircn ngoagraveithocircng qua một vagravei đường trung kế hay noacutei một caacutech khaacutec PBX lagrave hệ thống trungchuyển giữa caacutec đường dacircy điện thoại becircn ngoagravei từ cocircng ty điện thoại vagrave maacutey điệthoại nội bộ trong tổng đagravei PBX Vigrave thế necircn số lượng maacutey điện thoại nội bộ luocircnhiều hơn số đường dacircy nối đến PBX từ becircn ngoagravei
wwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2072
Taacutec Giả Lecirc Quốc Toagraven
20
PBX thực hiện chuyển mạch cuộc gọi caacutec maacutey điện thoại nội bộ với nhau vvới caacutec maacutey điện thoại becircn ngoagravei thocircng qua đường trung kế Đồng thời thực hiệ
chuyển mạch caacutec cuộc gọi điện thoại từ becircn ngoagravei vagraveo caacutec maacutey điện thoại nội bộNgoagravei việc chuyển mạch cuộc gọi PBX cung cấp nhiều tiacutenh năng sử dụng
cho nhiều mục điacutech khaacutec nhau của khaacutech hagraveng magrave bản thacircn caacutec đường dacircy điệnthoại từ cocircng ty điện thoại kết nối đến khocircng thể thực hiện được caacutec tiacutenh năng ntương taacutec thoại(IVR) Voicemail phacircn phối cuộc gọi tự động(ADC)hellip
Hiện nay với việc phaacutet triển mạnh mẽ của cocircng nghệ VoIP chuacuteng ta cograven coacutethecircm thuật ngữ IP PBX Đacircy lagrave hệ thống chuyển mạch PBX với cocircng nghệ Voip
3 VOIP - Voice Over Internet Protocol
Voice over Internet Protocol (VoIP) lagrave một cocircng nghệ cho pheacutep truyền thoạisử dụng giao thức mạng IP trecircn cơ sở hạ tầng sẵn coacute của mạng internet Voip lagrave mtrong những cocircng nghệ viễn thocircng đang được quan tacircm nhất hiện nay khocircng chỉ đố
với nhagrave khai thaacutec caacutec nhagrave sản xuất magrave cograven cả với người sử dụng dịch vụVoip coacute thể vừa thực hiện mọi loại cuộc gọi như trecircn mạng điện thoại kecircn
truyền thống (PSTN) đồng thời truyền dữ liệu trecircn cơ sở mạng truyền dữ liệu Dcaacutec ưu điểm về giaacute thagravenh dịch vụ vagrave sự tiacutech hợp nhiều loại higravenh dịch vụ necircn voihiện nay được triển khai một caacutec rộng ratildei
Dịch vụ điện thoại voip lagrave dịch vụ ứng dụng giao thức IP nguyecircn tắc củaVoIP bao gồm việc số hoaacute tiacuten hiệu tiếng noacutei thực hiện việc neacuten tiacuten hiệu số chia nhcaacutec goacutei nếu cần vagrave truyền goacutei tin nagravey qua mạng tới nơi nhận caacutec goacutei tin nagravey đượraacutep lại theo đuacuteng thứ tự của bản tin giải matilde tiacuten hiệu tương tự phục hồi lại tiếng n ban đầu
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2172
Taacutec Giả Lecirc Quốc Toagraven
21
Caacutec cuộc gọi trong VoIP dựa trecircn cơ sở sử dụng kết hợp cả chuyển mạchkecircnh vagrave chuyển mạch goacutei Trong mỗi loại chuyển mạch đều coacute ưu nhược điể
riecircng của noacute Trong kỹ thuật chuyển mạch kecircnh giagravenh riecircng cho một kecircnh truyềngiữa hai thiết bị đầu cuối thocircng qua caacutec node chuyển mạch trung gian Trongchuyển mạch kecircnh tốc độ truyền dẫn luocircn luocircn cố định(nghĩa lagrave băng thocircng khocircnđổi) với mạng điện thoại PSTN tốc độ nagravey lagrave 64kbps truyền dẫn trong chuyểmạch kecircnh coacute độ trễ nhỏ
Trong chuyển mạch goacutei caacutec bản tin được chia thagravenh caacutec goacutei nhỏ gọi lagrave caacutec
goacutei nguyecircn tắc hoạt động của noacute lagrave sử dụng hệ thống lưu trữ vagrave chuyển tiếp caacutec gtin trong nuacutet mạng Đối với chuyển mạch goacutei khocircng tồn tại khaacutei niệm kecircnh riecircng băng thocircng khocircng cố định coacute nghĩa lagrave coacute thể thay đổi tốc độ truyền kỹ thuật chuyểmạch goacutei phải chịu độ trễ lớn vigrave trong chuyển mạch goacutei khocircng quy định thời giancho mỗi goacutei dữ liệu tới điacutech mỗi goacutei coacute thể đi bằng nhiều con đường khaacutec nhau đtới điacutech chuyển mạch goacutei thiacutech hợp cho việc truyền dữ liệu vigrave trong mạng truyền dliệu khocircng đogravei hỏi về thời gian thực như thoại để sử dụng ưu điểm của mỗi lo
chuyển mạch trecircn thigrave trong voip kết hợp sử dụng cả hai loại chuyển mạch kecircnh vchuyển mạch goacutei
4 PSTN ndash Public Switched Telephone Network
PSTN lagrave mạng chuyển mạch điện thoại cocircng cộng hay noacutei caacutech khaacutec lagrave mạngkết nối tất cả caacutec hệ thống tổng đagravei chuyển mạch-mạch
Để hiểu rotilde hơn hatildey xem xeacutet mạng PSTN với mạng Internet về khiacutea cạnhchuyển thoại trecircn đoacute Chuyển mạch mạch muốn thực hiện cuộc gọi giữa hai thu bao thigrave hệ thống phải giagravenh riecircng một kecircnh truyền 64kbps để chuyển tải tiacuten hiệthoại trecircn đoacute Cograven cuộc gọi điện thoại trecircn mạng Internet thigrave tiacuten hiệu thoại đượđoacuteng goacutei vagrave chuyển đi trecircn cugraveng kecircnh truyền với nhiều dịch vụ khaacutec Vigrave lẽ đoacute chấlượng cuộc gọi trecircn mạng PSTN bao giờ cũng tốt hơn trecircn mạng Internet nhưng đổ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2272
Taacutec Giả Lecirc Quốc Toagraven
22
lại chi phiacute lại đắc hơn rất nhiều đặc biệt lagrave caacutec cuộc gọi quốc tế necircn phải cần nhắc kỹ khi sử dụng
PSTN được phaacutet triển trecircn chuẩn ITU(International TelecommunicationUnion) cograven mạng Internet được phaacutet triển trecircn chuẩn IETF(Internet EngineeringTask Force) cả hai mạng trecircn đều sử dụng địa chỉ để định tuyến cuộc gọi PSTN sdụng caacutec con số điện thoại để chuyển mạch cuộc gọi giữa caacutec tổng đagravei điện thotrong khi đoacute trecircn mạng Internet địa chỉ IP sẽ được sử dụng để định tuyến caacutec goacutethoại
5 TDM ndash Time Division Multiplexing
Lagrave kỹ thuật gheacutep kecircnh phacircn chia thời gian nhiều tiacuten hiệu coacute thể truyền đồngthời trecircn một đường truyền TDM được sử dụng chuyển thoại trong hệ thống mạPSTN Coacute hai chuẩn gheacutep kecircnh TDM cơ bản lagrave E1 với 30 kecircnh thoại trecircn mộtkhung tốc độ 2Mbps vagrave T1 với 24 kecircnh thoại tốc độ 15Mbps
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2372
Taacutec Giả Lecirc Quốc Toagraven
23
Higravenh Minh họa gheacutep kecircnh phacircn chia theo thời gian
6 Caacutec higravenh thức baacuteo hiệu giao tiếp TDM
1 FXO vagrave FXS
FXO (Foreign Exchange Office) lagrave thiết bị nhận tiacuten hiệu từ tổng đagravei gửi đếnnhư dograveng chuocircng tiacuten hiệu nhấc gaacutec maacutey tiacuten hiệu mời quay số gửi vagrave nhận tiacuten hiệthoạihellip FXO giống như maacutey Fax hay modem dial-up 56k vậy Dugraveng để kết nối vớ
đường dacircy điện thoại
FXS (Foreign Exchange Station) lagrave thiết bị tại nơi cung cấp đường dacircy điệnthoại thiết bị FXS sẽ cung cấp tiacuten hiệu mời quay số(dialtone) dograveng chuocircng hồi acircmchuocircng(ring tone) Trong đường dacircy Analog FXS cung cấp dograveng chuocircng vagrave điện aacutepcho điện thoại hoạt động viacute dụ FXS cung cấp điện aacutep -48VDC đến maacutey điện tho
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2472
Taacutec Giả Lecirc Quốc Toagraven
24
Analog trong suốt thời gian đagravem thoại vagrave cung cấp 90VAC(20hz) để phaacutet điện aacuteprung chuocircng Thiết bị FXS phaacutet cograven thiết bị FXO nhận
Card TDM sử dụng trong hệ thống asterisk thường tiacutech hợp vừa thiết bị FXOvừa lagrave thiết bị FXS(Giống bộ ATA) FXO để kết nối với đường dacircy điện thoại cograveFXS dugraveng để kết nối với maacutey điện thoại analog thocircng thường dugraveng để chuyển mạcuộc gọi TDM qua hệ thống asterisk(Xem thecircm trong phần cấu higravenh cho kecircnhTDM)
Toacutem lại cần nắm
FXS được kết nối với FXO giống với đường dacircy điện thoại nối với maacuteyđiện thoại
FXS cung cấp nguồn cho điện thoại FXO(điện thoại Analog)
Higravenh a) Maacutey điện thoại vai trograve FXO kết nối với FXS(PSTN) Higravenh b) PBXkết nối với FXO vagrave FXS Higravenh c) ATA đoacuteng vai trograve như FXS để kết nối với maacuteyđiện thoại vai trograve FXO
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2572
Taacutec Giả Lecirc Quốc Toagraven
25
2 Baacuteo hiệu Analog giữa đầu cuối vagrave tổng đagravei
Khi chuacuteng ta nhấc mấy điện thoại để gọi thigrave nghe tiacuten hiệu mời quay số kh
cuộc gọi gọi đầu becircn kia bị bận thigrave chuacuteng ta nghe tiacuten hiệu bận(busy tone) caacutec loạtiacuten hiệu như vậy gọi lagrave caacutec tiacuten hiệu baacuteo hiệu analog Caacutec tiacuten hiệu như Mời quay sốtiacuten hiệu bận rung chuocircng trạng thaacutei nhấc gaacutec maacutey Caacutec loại tiacuten hiệu trecircn được trađổi giữa thiết bị FXO vagrave FXS
Coacute nhiều phương thức baacuteo hiệu khaacutec nhau ứng với từng nơi sử dụng vigrave thếtại nơi kết nối với đường dacircy điện thoại cần xem xeacutet họ đang sử dụng phương th
baacuteo hiệu gigrave từ đoacute chuacuteng ta khai thaacutec loại tiacuten hiệu baacuteo hiệu cho thiacutech hợp caacutec phương thức baacuteo hiệu như Loop Start Ground Start Một minh họa cho việc sửdụng sai phương thức baacuteo hiệu lagrave khi chuacuteng ta khai baacuteo phương thức baacuteo hiệu giữhệ thống Asterisk vagrave đường dacircy điện thoại khaacutec nhau thigrave dẫn đến Asterisk sẽ khocircnnhận biết được tiacuten hiệu gaacutec maacutey điều nagravey sẽ lagravem cho asterisk khocircng baacuteo giờ giải tỏđược cuộc gọi để thực hiện cuộc gọi mới
3 Baacuteo hiệu giữa caacutec tổng đagravei
SS7 hệ thống baacuteo hiệu số 7 được phaacutet triển bởi ATampT vagrave ITU lagrave hệ thống baacuteo hiệu chuyển caacutec cuộc gọi giữa caacutec tổng đagravei trong mạng PSTN Trong hệ thốn baacuteo hiệu số 7 tiacuten hiệu chuyển tải trecircn đường trung kế kết nối giữa hai tổng đagravei gồcoacute hai mạch riecircng một cho thoại vagrave một cho baacuteo hiệu như vậy thoại vagrave baacuteo hiệu cthể chuyển trecircn hai kecircnh vật lyacute khaacutec nhau
7 Baacuteo Hiệu trecircn mạng điện thoại VoIP
1 SIP Session Initiation Prorocol
Sip lagrave giao thức Internet dagravenh cho baacuteo hiệu VoIP được phaacutet triển bởi IETFcung cấp vagravei chức năng giống hệ thống baacuteo hiệu số 7 nhưng dựa trecircn nền IP Mộchức năng giống baacuteo hiệu số 7 đoacute lagrave baacuteo hiệu vagrave thoại chuyển tải trecircn hai kecircnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2672
Taacutec Giả Lecirc Quốc Toagraven
26
riecircng Giao thức SIP thực hiện chức năng thiết lập vagrave baacuteo hiệu cuộc gọi khi noacutei đế baacuteo hiệu cuộc gọi lagrave chỉ định caacutec tiacuten hiệu baacuteo hiệu như tiacuten hiệu mời quay số tiacutehiệu bậnhellip
2 Proxy server
Mặc dầu hai thiết bị SIP coacute thể liecircn lạc trực tiếp với nhau để khởi tạo cuộgọi nhưng trong giao thức SIP cograven coacute chức năng Proxy để linh hoạt hơn trong thiếlập cuộc gọi Proxy Server sẽ lagravem nhiệm vụ ghi nhận tất cả caacutec số điện thoại đư phiacutea client đăng kyacute đến qua bản tin ldquoRegistrationrdquo Khi một client khaacutec thực hiện
cuộc gọi thigrave thực sự Client đoacute khocircng biết số điện thoại cần gọi đang ở đacircu necircn thocircnqua Proxy server để tigravem kiếm thiết lập cuộc gọi
+
Higravenh Đăng kyacute từ Client đến SIP Proxy Với Giao thức SIP đường baacuteo hiệu vagravethoại riecircng
3 RTP vaacute NAT
Caacutec cuộc gọi trecircn Internet với giao thức SIP được chia thagravenh caacutec goacutei thoại vagraveđược chuyển qua giao thức RTP(Real Time Protocol) RTP lagrave giao thức khocircng chỉthực hiện chuyển caacutec goacutei thoại qua Internet magrave cograven coacute cả video nữa Một cuộc gọ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2772
Taacutec Giả Lecirc Quốc Toagraven
27
thocircng thường coacute hai hướng thocircng tin lagrave nhận vagrave phaacutet RTP lagravem việc chuyển caacutec goacutedữ liệu thoại cũng trecircn hai hướng
NAT Network Address Translators lagrave một trở ngại lớn trong giao thức RTPMạng sử dụng NAT lagrave một mạng chia sẻ nhiều địa chỉ IP nội bộ với một địa chỉ ICocircng cộng để kết nối với thế giới becircn ngoagravei NAT dugraveng để chia sẻ nhiều maacutey tiacutentrong mạng LAN nội bộ sử dụng được Internet nhưng cũng chiacutenh vigrave thế magrave caacutec maacutetiacutenh nội bộ gặp khoacute khăn trong việc thực hiện cuộc gọi VoIP qua Internet Đoacute chiacutenhlagrave vấn để trở ngại khi truyền thoại qua giao thức RTP
Higravenh Minh họa hoạt động của NAT
Trong Giao thức RTP như chuacuteng ta đatilde biết đoacute lagrave thoại được chuyển trecircn haiđường khaacutec nhau lagrave đường phaacutet vagrave đường thu Vấn đề NAT nằm ở chỗ tiacuten hiệthoại từ becircn ngoagravei vagraveo becircn trong qua giao thức RTP khocircng thực hiện được cograven chiềungược lại thigrave thực hiện tốt Hay noacutei caacutech khaacutec vấn đề NAT lagravem cho caacutec cuộc gọi t
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2872
Taacutec Giả Lecirc Quốc Toagraven
28
Internet đagravem thoại vagraveo caacutec maacutey nội bộ qua NAT thigrave khocircng nghe được cograven trongtrường hợp caacutec cuộc gọi từ caacutec maacutey nội bộ ra caacutec maacutey internet thigrave nghe tốt
Vấn đề NAT trecircn được giải quyết trong Asterisk bằng việc khai baacuteo thocircng số NAT=yes trong cấu higravenh kecircnh giao thức SIP
4 IAX ndash Inter Asterisk eXchange
IAX lagrave giao thức baacuteo hiệu Voip được phaacutet triển bởi taacutec giả của phần mềmAsterisk để khắc phục những hạn chế trong giao thức SIP Khocircng giống như giathức SIP chuyển tải thoại vagrave baacuteo hiệu trecircn hai kecircnh khaacutec nhau (out of band) IAXchuyển tải thoại vagrave baacuteo hiệu trecircn cugraveng một kecircnh(in band) IAX giải quyết được vấđề NAT đề cập trecircn phần giao thức SIP Mặc khaacutec IAX lagrave giao thức tối ưu trongviệc sử dụng băng thocircng cho pheacutep nhiều goacutei dữ liệu thoại trecircn cugraveng một IP headecơ chế chuyển tải nhiều cuộc gọi trecircn cugraveng một goacutei IP được gọi lagrave trung kế(Trunk)
Coacute thể giải thiacutech thecircm cơ chế trung kế như sau Giả sử Tocirci cần gửi 5 bức thtới người bạn của Tocirci Tocirci sẽ coacute hai higravenh thức để thực hiện thứ nhất lagrave mỗi bức tTocirci bỏ vagraveo một phong bigrave vậy tổng cộng tocirci phải sử dụng 5 phong bigrave để gửi đi 5 bứthư Caacutech thứ hai lagrave Tocirci bỏ 5 bức thư vagraveo 1 phong bigrave vagrave gửi đi vậy tổng cộng Tocircchỉ tốn 1 phong bigrave Qua phacircn tiacutech trecircn rotilde ragraveng việc 5 bức thư vagraveo một phong bigrave sẽtiết kiệm hơn so với 5 bức thư với 5 phong biacute Cơ chế trecircn cũng giống như nhiềcuộc gọi được đoacuteng thagravenh goacutei vagrave chuyển đi trecircn đường trung kế
Toacutem lại IAX lagrave giao thức dagravenh cho VoIP mới nhất cho đến thời điểm nagravey vớinhiều ưu điểm hấp dẫn như
+ Tối thiểu sử dụng băng thocircng
+ Trong suốt với NAT
+ Hiệu quả với cơ chế trung kế
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2972
Taacutec Giả Lecirc Quốc Toagraven
29
8 Thiết Bị VoIP
1 Voip Phone
Đacircy lagrave thiết bị phần cứng kết nối với mạng VoIP giống như maacutey điện thoại đ bagraven thocircng thường nhưng dagravenh cho VoIP cần phải thực hiện cấu higravenh trước khi sửdụng
Lưu yacute một số tiacutenh năng khi thực hiện mua thiết bị điện thoại VoIP
+ Low bandwidth hỗ trợ Codec nagraveo G729 lagrave tốt nhất hiện nay
+ Web Interface Phải coacute giao tiếp thiết lập cấu higravenh thacircn thiện dễ sử dụng
+ Audio Interface Coacute speaker phone hay khocircng
Giaacute thagravenh của điện thoại voip IP đắc hơn điện thoại thocircng thường giaacute khoảntrecircn dưới 100$ một caacutei
Higravenh Maacutey Điện Thoại VoIP
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3072
Taacutec Giả Lecirc Quốc Toagraven
30
2 Softphone
Lagrave một phần mềm được cagravei trecircn maacutey tiacutenh thực hiện tất cả caacutec chức năng giốn
như thiết bị điện thoại Voip cần lưu yacute khi sử dụng softphone lagrave maacutey tiacutenh phải ccard acircm thanh headphone vagrave firewall khocircng bị khoacutea
Sử dụng softphone với hệ thống Asterisk necircn dugraveng softphone với cocircng nghệgiao thức mới dagravenh cho Asterisk đoacute lagrave IAX
Higravenh Điện Thoại Softphone
3 Card giao tiếp với PSTN
Muốn cho pheacutep caacutec maacutey điện thoại nội bộ trong hệ thống Asterisk kết nối vthực hiện cuộc gọi với mạng PSTN chuacuteng ta cần phải coacute thiết bị phần cứng tươthiacutech Thiết bị phần cứng sử dụng cho hệ thống Asterisk do chiacutenh taacutec giả lập cocircng
Digium phacircn phối đacircy cũng chiacutenh lagrave yacute tưởng lớn trong việc phacircn phối phần mềmAsterisk lagrave hệ thống nguồn mở sử dụng miễn phiacute
Thiết bị phần cứng thường kyacute hiệu bắt đầu bằng cụm từ TDMxyB trong đoacute lagrave số lượng port FXS y lagrave số lượng port FXO giaacute trị tối đa của x vagrave y lagrave 4 viacute dụcard TDM22B coacute nghĩa lagrave coacute 2 fort FXS vagrave 2 port FXO
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3172
Taacutec Giả Lecirc Quốc Toagraven
31
Higravenh Card TDM22B gồm 4 port 2 FXS vagrave 2 FXO
4 ATA Analog Telephone Adaptors
ATA lagrave thiết bị kết nối với điện thoại Analog thocircng thường đến mạng VoIPmột thiết bị ATA gồm coacute hai loại port RJ-11 để kết nối với maacutey điện thoại analo
thocircng thường cograven RJ-45 để kết nối với mạng VoIP
ATA thực sự lagrave thiết bị FXS chuyển đổi tiacuten hiệu Analog sang tiacuten hiệu số sửdụng cho mạng VoIP để tận dụng maacutey điện thoại Analog necircn trang bị thiết bị ATAthay vigrave phải trang bị điện thoại VoIP
Thiết bị ATA sử dụng với giao thức IAX được Digium phacircn phối lagrave thiết bịATA được sử dụng rộng ratildei với Asterisk coacute tecircn gọi lagrave IAXy
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3272
Taacutec Giả Lecirc Quốc Toagraven
32
Higravenh Thiết bị ATA
9 Codecs
Thuật Toaacuten codecs(CompressorDe-compressor) lagrave một tập caacutec quy luật đượcsử dụng để chuyển đổi caacutec tiacuten hiệu thoại dạng Analog sang tiacuten hiệu số vagrave ngược lạ
Coacute nhiều thuật toaacuten codec để thực hiện chuyển đổi tiacuten hiệu analog sang tiacuten
hiệu số dạng nhị phacircn (01) như G711 GSM G729hellipỨng với mỗi thuật toaacuten coacutenhững ưu điểm riecircng đặc biệt lagrave việc tối ưu sử dụng băng thocircng trecircn đường truyềMục tiecircu cuối cugraveng lagrave caacutec thuật toaacuten đưa ra phải đảm bảo chất lượng cuộc gọi nhvagrave tiết kiệm băng thocircng nhất
G729 lagrave thuật toaacuten codec tốt nhất hiện nay trong hệ thống VoIP Với hệthống Asterisk để sử dụng thuật toaacuten nagravey cần phải mua bản quyền sử dụng vigrave đacircy
codec khocircng miễn phiacute sử dụng
10 QoS ndash Quality of Service
Caacutec yếu tố ảnh hưởng đến chất lượng của dịch vụ đối với VoIP đoacute lagrave caacuteyếu ảnh hưởng đến chất lượng tiacuten hiệu thoại
1 Độ trễ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3372
Taacutec Giả Lecirc Quốc Toagraven
33
Thoại lagrave dịch vụ mang tiacutenh thời gian thực rất cao vigrave thế trễ lagrave yếu tố ảnhhưởng rất lớn đến chất lượng dịch vụ Trễ được định nghĩa lagrave khoảng thời gian tiacute
từ luacutec tiacuten hiệu thoại đi từ miệng người noacutei tới tai người nghe Trễ lagrave yếu tố khocircnthể traacutenh khỏi độ trễ đối với mạng điện thoại truyền thống (mạng PSTN) khoảng50ms đến 70ms theo khiến nghị của ITU-T để đảm bảo chất lượng cho hệ thốVoIP thigrave độ trễ từ đầu phaacutet tới đầu thu hoặc ngược lại khocircng được vượt quaacute 150mkhi magrave độ trễ vượt quaacute 400ms đến 500ms thigrave khocircng thể chấp nhận được
Caacutec nguyecircn nhacircn gacircy ra trễ bao gồm Trễ trecircn mạng lưới trễ trecircn bộ mả hoacutea
giải matilde trễ trong quaacute trigravenh đoacuteng goacutei trễ bộ đệm trễ xử lyacute tiếng noacuteihellip2 Độ trượt(Jitter)
Nguyecircn nhacircn gacircy ra trượt lagrave goacutei tiacuten hiệu thoại trong quaacute trigravenh truyền từnguồn đến điacutech sẽ gặp phải những điều kiện khaacutec nhau trecircn mạng lưới do đoacute thườđến điacutech với những khoảng trễ khaacutec nhau Đacircy lagrave tiacutenh khocircng đồng nhất của trễ Mnguyecircn nhacircn khaacutec của trượt đối với ứng dụng PC to PC lagrave do việc sử dụng hệ điề
hagravenh phi thời gian thực caacutec goacutei tin thoại phải đợi hệ điều hagravenh xử lyacute trong nhữnkhoảng thời gian khaacutec nhau khi magrave hệ điều hagravenh đang phải xử lyacute đối với caacutec ứndụng khaacutec
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3472
Taacutec Giả Lecirc Quốc Toagraven
34
Higravenh Nguyecircn nhacircn xảy ra trượt
Để loại bỏ tiacutenh khocircng đồng nhất của trễ người ta thiết kế caacutec bộ đệm t(Jitter Buffer) tại nơi đến của caacutec goacutei tin caacutec goacutei tin đến với caacutec khoảng caacutech khaacutecnhau về thời gian được lưu tại bộ đệm rồi phaacutet khỏi bộ đệm với khoảng trễ n
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3572
Taacutec Giả Lecirc Quốc Toagraven
35
nhau Khi bộ đếm coacute kiacutech thước cagraveng lớn thigrave khả năng loại bỏ tiacutenh khocircng đồng nhấcagraveng lớn tuy nhiecircn việc sử dụng bộ đệm sẽ gacircy ra hiện tượng trễ trong ứng dụnthoại do đoacute cần coacute bagravei toaacuten cacircn đối giữa độ trễ vagrave độ trượt
Ngoagravei 2 nguyecircn nhacircn trecircn cograven một số nguyecircn nhacircn nữa ảnh hưởng đến chấtlượng thoại như độ mất goacutei giới hạn băng thocircng tiếng vọng
3 CAgraveI ĐẶT ASTERISK
1 Cagravei đặt Asterisk
1 Download vagrave bung neacuten
Để cagravei đặt Asterisk đầu tiecircn chuacuteng ta cần phải cagravei đặt hệ điều hagravenh linux trecircnmaacutey tiacutenh của migravenh Coacute thể cagravei hệ điều hagravenh Linux Fedora CentOS Redhat hoặcDebian Caacutec goacutei phần mềm phụ thuộc phải coacute trong hệ điều hagravenh Linux trước khcagravei Asterisk bao gồm
bison
gcc
kernel-source
libtermcap-devel
ncurses-devel
openssl096b
openssl-devel
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3672
Taacutec Giả Lecirc Quốc Toagraven
36
Sau khi hoagraven tất caacutec bước trecircn chuacuteng ta tiến hagravenh download phần mềmasterisk với phiecircn bản mới nhất
cd usrsrc
wgetftpftpdigiumcompubasteriskasterisk-140targz
wgetftpftpdigiumcompubasteriskasterisk-addons-140targz
wgetftpftpdigiumcompubasteriskasterisk-sounds-140targz
wgethttpftpdigiumcompubzaptelzaptel-140targz
wgethttpftpdigiumcompublibprilibpri-140targz
Việc download coacute thể nhanh hay chậm tugravey vagraveo tốc độ trecircn đường internet saukhi download hoagraven thagravenh chuacuteng ta tiến hagravenh bung neacuten caacutec goacutei ra thư mục chỉ định
tar ndashxzvf asterisk-140targz
tar ndashxzvf asterisk-addons-140targz
tar ndashxzvf asterisk-sounds-140targz
tar ndashxzvf zaptel-140targz
tar ndashxzvf libpri-140targz
Giải neacuten xong chuacuteng ta nhớ thực hiện lệnh
ln ndashs usrsrcasterisk-140 usrsrcasterisk lệnh nagravey để bảo đảm goacuteildquoaddonsrdquo được biecircn dịch đuacuteng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3772
Taacutec Giả Lecirc Quốc Toagraven
37
Bacircy giờ tới phần chuacuteng ta biecircn dịch caacutec goacutei đatilde giải neacuten ở trecircn trước tiecircn lagrave goacuteizaptel kế đến lagrave libpri sau cugraveng lagrave goacutei Asterisk
2 Cagravei đặt goacutei Zaptel
Goacutei zaptel sẽ chứa tại thư mục usrsrczaptel Đaacutenh lệnh như dưới đacircy để cagraveđặt
cd usrsrczaptel
make clean make install
Lệnh nagravey thực hiện khoảng 2 phuacutet tugravey vagraveo tốc độ maacutey tiacutenh cagravei đặt sau khicagravei đặt xong sẽ trở lại dấu nhắc lệnh vagrave hiển thị một loạt caacutec thocircng baacuteo trong đoacute một số bản tin lỗi magrave chủ yếu lagrave yecircu cầu cagravei đặt caacutec goacutei phụ thuộc đatilde liệt kecirc ở trecircnếu caacutec goacutei trecircn chưa được cagravei đặt
Goacutei zaptel nagravey chứa caacutec driver cho caacutec phần cứng kết giao tiếp với asterisk
do Digium phacircn phối vagrave một số thư viện cho việc coacute thực hiện giao tiếp với phầcứng hay khocircng
Để Asterisk coacute thể chạy cugraveng với khởi động của maacutey tiacutenh chuacuteng ta cần thựchiện lệnh
make config
Lệnh nagravey sẽ tạo ra script chegraven module zaptel vagraveo kernel vagrave chạy ztconfig vagraveoluacutec khởi động maacutey Trong Redhat script nagravey sẽ được cheacutep vagraveo etcinitd chạy ở mức 3
3 Cagravei đặt goacutei libpri
Kế đến chuacuteng ta biecircn dịch goacutei libpri tại thư mục usrsrclibpri bằng lệnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3972
Taacutec Giả Lecirc Quốc Toagraven
39
make config
3 Cagravei đặt TrixBox
1 Giới thiệu
TRIXBOX được phaacutet triển từ nhacircn của ứng dụng Asterisk được tổng hợp từmột số thagravenh phần chiacutenh được phaacutet triển bởi cộng đồng phaacutet triển nguồn mAsterisk dưới bản quyền GPL Trixbox bao gồm những thagravenh phần chiacutenh cho việcấu higravenh ứng dụng thống kecirc tigravenh trạng hoạt động hệ thống lưu trữ dự phograveng v
nhacircn lagrave hệ điều hagravenh CentOS một phiecircn bản khaacutec của Redhat tất cả kết hợp vớnhau tạo thagravenh một goacutei hoagraven chỉnh Khi cagravei goacutei nagravey vagraveo maacutey tiacutenh thigrave coacute thể sử dụngnhư một tổng đagravei PBX
Caacutec thagravenh phần chiacutenh trong goacutei TRIXBOX lagrave
Asterisk PBX Thagravenh phần chiacutenh của hệ thống Trixbox
CentOS Một phiecircn bản Linux khaacutec của Redhat hoagraven toagraven miển phiacute sửdụng Lagrave nhacircn chiacutenh cho Trixbox
SugarCRM Hệ thống quan hệ khaacutech hagraveng CRM
A2Billing ndash Lagrave thagravenh phần dagravenh cho việc xacircy dựng hệ thống điện thoạitrả trước hay cograven gọi lagrave điện thọai thẻ (Calling Card)
Flash Operator Panel Bảng điều khiển giaacutem saacutet tigravenh trạng hoạt độngcủa caacutec maacutey điện thoại trong hệ thống
Web MeetMe Control Quản lyacute triển khai hệ thống điện thoại hội nghị
FreePBX Đacircy lagrave cocircng cụ với giao diện web dagravenh cho việc cấu higravenh hệthống Asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4072
Taacutec Giả Lecirc Quốc Toagraven
40
Hệ thống Lưu trữ dự phograveng vagrave thống kecirc Lagrave thagravenh phần của TRIXBOXcung cấp caacutec cocircng cụ cần thiết cho việc bảo trigrave bảo dưỡng hệ thống
Hệ thống Apache-Php-Mysql dagravenh cho giải phaacutep Webserver của hệthống
2 DOWNLOAD VAgrave LẮP ĐẶT TRIXBOX
Địa chỉ downloadhttpsourceforgenetprojectsasteriskathome
Khi download xong file Trixboxiso Hatildey dugraveng file nagravey Burn vagraveo CD ( xinlưu yacute lagrave dugraveng Nero hoặc chương trigravenh cheacutep đĩa ưa thiacutech rồi burn vagraveo cd_romchứ khocircng phải cheacutep file đoacute vagraveo cd_rom)
Sau khi coacute CD Hatildey boot từ CD nagravey để cagravei đặt trixbox
Chuacute yacute dữ liệu trecircn đĩa cứng sẽ bị xoacutea sạch để cagravei đặt trixbox Nếu trongđĩa cứng cograven dữ liệu hatildey backup tất cả trước khi tiến hagravenh lắp đặt trixbox
Tới đacircy lần lượt caacutec magraven higravenh chỉ dẫn sẽ hiện ra vagrave cứ theo hướng dẫn magrave cagraveđặt Sau khi cagravei đặt xong chuacuteng ta dugraveng Username root vagrave password password đểđăng nhập hệ thống
3 Cấu higravenh địa chỉ IP cho card mạng
Thiết lập địa chỉ IP bằng caacutech gotilde lệnh
netconfig
Chọn OK để thiếp lập
Nếu trong mạng coacute hỗ trợ DHCP thigrave hatildey chọn mục nagravey cograven nếu khocircng hatildeynhập địa chỉ IP tĩnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4172
Taacutec Giả Lecirc Quốc Toagraven
41
IP 19216801
Netmask 2552552550
Gateway 19216893254 ngotilde ra becircn ngoagravei
Primary nameserver 19216893200 thiết lập nếu coacute
Chọn OK để chấp nhận caacutec thiết lập trecircn
Sau khi hoagraven tất hatildey lagravem cho thiết lập coacute hiệu lực bằng caacutech reset lại
maacutey tiacutenh hoặc dugraveng lệnh sau
Service network stop
Service network start
Đến đacircy xem như cagravei đặt hoagraven tất bacircy giờ để cấu higravenh được Asterisk chuacutengta vagraveo một magravey khaacutec vagrave mở Internet Explorer hoặc một trigravenh duyệt web bất kỳ
nhập vagraveohttp19216801đatilde cấu higravenh ở trecircn vagrave tiến hagravenh cấu higravenh hệ thốngvới tagravei khoảng username maint vagrave password password
4 Tổ Chức Thư Mục của Asterisk
Asterisk sử dụng nhiều thư mục trecircn hệ thống linux để quản lyacute caacutec khiacutea cạnkhaacutec nhau của hệ thống như nghi nhận bản tin thoại caacutec bản tin nhắc thoại hoặcaacutec tập tin cấu higravenh Phần nagravey sẽ trigravenh bagravey caacutec thư mục chiacutenh yếu được tạo ra tronquaacute trigravenh lắp đặt vagrave được cấu higravenh trong tập tin Asteriskconf
1 etcasterisk
Thư mục etcasterisk chứa tất cả caacutec tập tin cấu higravenh của hệ thốngAsterisk ngoại trừ tập tin Zaptelconf được đặt tại thư mục etc Phần cứnZaptel đầu tiecircn được phaacutet triển bởi Jim Dixon thuộc nhoacutem Zapata Telephony
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4272
Taacutec Giả Lecirc Quốc Toagraven
42
Group để giao tiếp giữa maacutey tiacutenh với mạng điện thoại magrave Asterisk lại sửdụng phần cứng nagravey với lyacute do đoacute magrave file cấu higravenh zaptelconf khocircng nằmtrong thư mục etcasterisk
2 usrlibasteriskmodules
Thư mục usrlibasteriskmodules chứa tất cả caacutec module cần thiết đểasterisk hoạt động Becircn trong thư mục lagrave caacutec ứng dụng khaacutec nhau caacutec codeccaacutec định dạng acircm thanh(format) vagrave caacutec kecircnh thocircng tin(channel) Theo mặc địnhAsterisk sẽ nạp tất cả caacutec module vagraveo luacutec khởi động Chuacuteng ta coacute thể khocircng cho
nạp một module bất kỳ bằng caacutech khocircng khai baacuteo sử dụng trong tập tinmodulesconf Lưu yacute khi khocircng cho nạp module thigrave phải biết chắc module đoacutekhocircng lagravem ảnh hưởng hoạt động của asterisk nếu khocircng lỗi sẽ xuất hiện
3 varlibasterisk
Thư mục varlibasterisk chứa tập tin astdb vagrave một số thư mục con Tập tinastdb định vị thocircng tin cơ sở dữ liệu của Asterisk giống như Microsoft WindowsRegistry
Caacutec thư mục con của thư mục varlibasterisk bao gồm
agi-bin
Thư mục agi-bin chứa caacutec script của người dugraveng magrave Asterisk coacute thểđịnh vị sử dụng qua caacutec ứng dụng AGI
AGI lagrave phần giao tiếp với ngocircn ngữ lập trigravenh script để thực hiện mộtsố cocircng việc của Asterisk từ becircn ngoagravei
firmware
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4372
Taacutec Giả Lecirc Quốc Toagraven
43
Thư mục firmware chứa một số phần dẻo(firmware) cho caacutec thiết bịkhaacutec nhau tương thiacutech với Asterisk Hiện tại chỉ coacute thư mục con iax chứa
firmware cho thiếy bị IAXy của Digium IAXy lagrave thiết bị ATA sử dụng giaothức IAX
images
Caacutec ứng dụng thocircng tin với caacutec kecircnh hỗ trợ ảnh images thigrave sử dụng thư mụcnagravey Nhưng hiện tại caacutec kecircnh thocircng tin hầu như khocircng hỗ trợ truyền ảnh images necircthư mục nagravey cũng hiếm khi được sử dụng Tuy nhiecircn nếu caacutec thiết bị coacute hỗ trợ ththư mục nagravey trở necircn hiệu dụng
keys
Asterisk coacute thể sử dụng hệ thống khoaacute publicprivate để xaacutec minh caacutec kết nốgiữa caacutec server Asterisk thocircng qua chữ kyacute điện tử RSA Nếu đặt một khoaacute publicvagraveo thư mục keys thigrave kết nối của server đầu becircn kia coacute thể được xaacutec minh bằn
kecircnh thocircng tin coacute hỗ trợ đối với Asterisk thigrave kecircnh giao thức IAX hỗ trợ loại xaacutecminh nagravey Một khoaacute private khocircng bao giờ cocircng bố chuacuteng ta chỉ cocircng bố khoaacute public đến với server cần nối đến sau đoacute sẽ được xaacutec minh với khoaacute private nagravey Chai khoaacute public vagrave private được lưu với đuocirci pub vagrave key đặt tại thư mục keys
mohmp3
Khi cấu higravenh Asterisk sử dụng tiacutenh năng Music on Hold tiacutenh năng hoạt độngsẽ thực hiện lấy caacutec tập tin mp3 tại thư mục mohmp3 Tập tin định dạng theo chucủa Asterisk necircn khi sử dụng caacutec file Mp3 thocircng thường cần coacute sự chuyển đổi thiacutechợp trước khi cheacutep vagraveo thư mục trecircn để sử dụng
sounds
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4472
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4572
Taacutec Giả Lecirc Quốc Toagraven
45
Thư mục tmp sử dụng để lưu trữ những thocircng tin tạm để luocircn bảo đảm khocircnxảy ra tigravenh trạng đọc vagrave viết tập tin cugraveng một luacutec Khi yecircu cầu xử lyacute tập tin chuacuteng thao taacutec trecircn thư mục tmp trước khi lưu vagraveo tập tin điacutech
Tất cả caacutec lời nhắc thoại từ phiacutea người sử dụng vagrave caacutec lời nhắc thoại sử dụ
cho thao taacutec hộp voicemail đều được chứa trong thư mục voicemail Một hộp thưthoại được tạo ra ứng với một maacutey nội bộ trong tập tin voicemailconf sẽ được tra một thư mục con tương ứng cho maacutey nội bộ đoacute tại thư mục voicemail
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4672
Taacutec Giả Lecirc Quốc Toagraven
46
5 varrun
Thư mục varrun chứa thocircng tin process ID(pid) cho tất cả caacutec tiến trigravenh đang
hoạt động trong hệ thống bao gồm cả Asterisk Lưu yacute lagrave ứng với mỗi hệ điều hagravethư mục varrun coacute thể khaacutec
6 varlogasterisk
Thư mục varlogasterisk lagrave nơi Asterisk chứa tất cả caacutec tập tin nhật kyacute haycograven gọi lagrave tập tin log Chuacuteng ta coacute thể tuỳ biến caacutec loại thocircng tin được lưu trong caacutec
tập tin log khaacutec nhau qua tập tin cấu higravenh loggerconf đặt tại thư mục etcasterisk7 varlogasteriskcdr-csv
Thư mục varlogasteriskcdr-csv được sử dụng để lưu chi tiết cuộc gọi CDRThocircng tin mặc định về chi tiết thocircng tin cuộc gọi lưu trữ trong tập tin MasterCVSnhưng thường thigrave ứng với mỗi matilde accountcode sẽ tạo một thư mục riecircng để lưu ctiết cuộc gọi cho maacutey đoacute
5 Một số lệnh thao taacutec trecircn hệ thống asterisk
Asterisk coacute hai thagravenh phần được xacircy dụng tiacutech hợp với nhau vagrave chạy songsong nhau
Asterisk Server bigravenh thường chạy ở chế độ nền(background) giống caacutec sevicestrong window
Asterisk Client ở chế độ dograveng lệnh CLI giao tiếp với Asterisk Server thực thicaacutec lệnh để kiểm tra hay xem caacutec thocircng tin của server
Để Chạy vagrave dừng Asterisk ở chế độ nền chuacuteng ta thực hiện lệnh sau
etcinitdasterisk (start|stop)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4772
Taacutec Giả Lecirc Quốc Toagraven
47
Một khi Asterisk đatilde chạy chuacuteng ta coacute thể chuyển qua chế độ CLI từ dấu nhắlệnh của linux như sau
asterisk ndashr
Khi vagraveo chế độ lệnh nếu muốn thoaacutet về lại dấu nhắc linux chuacuteng ta dugraveng lệnh
CLIgtexit
Caacutec lệnh cơ bản thực hiện tại CLIgt
Bất cứ khi nagraveo chỉnh sửa caacutec tập tin cấu higravenh chuacuteng ta đều cần phải nạp lại đcaacutec thay đổi coacute hiệu lực điều đoacute thực hiện bằng lệnh
CLIgtreload
Bậc chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 debug
CLIgt SIP debug
Tắt chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 no debug
CLIgt SIP no debug
Hiển thị caacutec trạng thaacutei thocircng tin của users peers vagravechannels của SIP hoặc IAX2
CLIgt sip show users
CLIgt sip show peers
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4872
Taacutec Giả Lecirc Quốc Toagraven
48
CLIgt sip show channels
CLIgt iax2 show peers
CLIgt iax2 show users
CLIgt iax2 show channels
Đến thời điểm nagravey coacute thể noacutei chuacuteng ta đatilde hoagraven thagravenh cagravei đặt hệ thốngAsterisk cagravei đặt xong mới lagrave bước mở đầu để cho hệ thống Asterisk hoạt động vtừng ứng dụng cụ thể chuacuteng sẽ tiếp tục thực hiện caacutec giai đoạn được xem lagrave qutrọng nhất trong việc triển khai hệ thống Asterisk đoacute lagrave giai đoạn cấu higravenh hệ thốnlecircn kế hoạch Diaplan chương cograven lại đều nhắm đến mục tiecircu nagravey
4 CẤU HIgraveNH HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Sau khi hoagraven tất phần cagravei đặt hệ thống asterisk một bước quan trọng tiếp thelagrave cấu higravenh hệ thống coacute thể noacutei đacircy lagrave bước quan trọng nhất của việc khiển khai thống đến với từng ứng dụng cụ thể Trong chương nagravey xin giới thiệu caacutei nhigraven đầtiecircn về việc cấu higravenh trước khi đi sacircu hơn ở những chương sau những gigrave giới thiệ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4972
Taacutec Giả Lecirc Quốc Toagraven
49
trong chương nagravey lagrave nền moacuteng cơ bản nhưng đủ để hiểu lagravem thế nagraveo hệ thống coacute thoạt động được nội dung chiacutenh bao gồm
+ Thao taacutec cấu higravenh trecircn hệ thống tập tin của asterisk
+ Caacutech cagravei đặt phần mềm softphone trecircn cocircng nghệ sip
+ Cấu higravenh cho hai maacutey softphone liecircn lạc với nhau
+ Cấu higravenh phaacutet thocircng điệp
+ Quay số qua Sip vagrave mạng PSTN
2 Tập Tin cấu higravenh
Tất cả caacutec file cấu higravenh cho hệ thống asterisk đều nằm tại thư mục etcasterisngoại trừ file zaptelconf cấu higravenh cho phần cứng TDM nằm tại thư mục etc caacutecthức cấu higravenh giống như tập tin ini của window vậy Caacutec nội dung sau dấu chấm phảy lagrave nội dung chuacute thiacutech trong file cấu higravenh giống như chuacute thiacutech trong ngocircn ngữ
lập trigravenh C lagrave dấu Tất cả caacutec khoảng trắng trong tập tin đều được bỏ qua khocircng yacute nghĩa trong file cấu higravenh
Trong file cấu higravenh cograven coacute hai pheacutep gaacuten rất thường xuyecircn được sử dụng pheacutep gaacuten ldquo=rdquo lagrave dugraveng cho việc gaacuten caacutec biến cograven pheacutep gaacuten ldquo=gtrdquo dugraveng cho việc gaacutencaacutec đối tượng sau đacircy lagrave một viacute dụ cho file cấu higravenh
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5072
Taacutec Giả Lecirc Quốc Toagraven
50
Đacircy lagrave caacutec dograveng chuacute thiacutech
[section]
Key=value gaacuten giaacute trị cho biến
[section2]
Key=gtobject Gaacuten giaacute trị cho đối tượng
Cuacute phaacutep thực hiện giống nhau cho tất cả caacutec file cấu higravenh nhưng coacute vagravei kiểukhaacutec nhau cho mỗi file cầu higravenh dựa vagraveo thức caacutech hoạt động của chuacuteng
3 Caacutec kiểu ảnh hưởng trong tập cấu higravenh
Coacute ba kiểu caacutech thức hoạt động của tập tin cấu higravenh như sau
Kiểu Caacutech hoạt động File cầu higravenh Viacute dụ
S i m p l eGroup
Coacute hiệu lực trecircntừng dograveng trongfile
Extensionconf
Exten=gt4001dial(sip400)
O p t i o ninheritance
Dograveng khai baacuteosau thừa kếnhững thocircng sốkhai baacuteo trước
Zapataconf [channels]
Context=From_PSTN
Signalling=fxs_ks
Group=1Channel=gt1
C o m p l e xEntity
Mỗi entity nhậnmột ngữ cảnh
sipconf
iaxconf
[cisco]
Type=friend
Secret=12345
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5172
Taacutec Giả Lecirc Quốc Toagraven
51
Host=192168165
Context=NoiBo
[xten]
Type=friend
Secret=6789
Host=dynamic
Context=NoiBo
1 Simple Group
Đacircy lagrave kiểu cấu higravenh đơn giản nhất thường sử dụng trong caacutec fileextentionconf meetmeconf voicemailconf tương ứng với mỗi dograveng khai baacuteo lagravemột đối tượng coacute yacute nghĩa trecircn dograveng đoacute
Viacute dụ
Extentionconf [section]
object1=gt op1op2op3
object2=gt op1bop2bop3b
Trong viacute dụ trecircn mỗi dograveng tương ứng với caacutec toaacuten tử khaacutec nhau object1 coacute caacutectoaacuten từ op1 op2 op3 trong khi đoacute object2 lại coacute caacutec toaacuten từ op1b op2b op3b
2 Option inheritance
Đacircy lagrave cấu higravenh kiểu thừa kế thường được cấu higravenh trong caacutec file zapataconfagentconf với kiểu cấu higravenh nagravey thigrave caacutec dograveng phiacutea dưới coacute thể thừa kế caacutec thocircng sdograveng phiacutea trecircn tương ứng với mỗi section caacutec dograveng phiacutea dưới coacute thể thay đổi caacutecthocircng số cho tươngứng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5272
Taacutec Giả Lecirc Quốc Toagraven
52
Viacute dụ
Extentionconf
[section]
Op1=bas
Op2=adv
Object1=gt1
Op1=int
Object1=gt2
Với cấu higravenh trecircn coacute thể giải thiacutech như sau object1=gt1 thừa hưởng hai thocircngsố ở phiacutea trecircn đoacute lagrave op1=bas vagrave op2=adv trong khi đoacute đối với object1=gt2 với thocircngsố op1=int được khai baacuteo lại necircn object1=gt2 được thừa kế từ hai thocircng số op1=invagrave op2=adv
3 Complex Entity
Với cấu kiểu nagravey được tổ chức thagravenh nhiều entity ứng với mỗi entity coacute nhiềthocircng số được khai baacuteo mỗi entity ở đacircy chiacutenh lagrave caacutec section để khai baacuteo caacutec kecircnhthocircng tin Cấu higravenh thường được sử dụng trong caacutec file iaxconf sipconf
Viacute dụ
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5372
Taacutec Giả Lecirc Quốc Toagraven
53
[entity1]
Op1=value1
Op2=value2
[entity2]
Op1=value3
Op2=value4
Entity1 coacute caacutec giaacute trị value1 vagrave value2 cho thocircng số op1 vagrave op2 trong khi đoacute
cũng lagrave thocircng số op1 vagrave op 2 nhưng coacute caacutec giaacute trị khaacutec lagrave value3 vagrave value4 choentity2
4 Cấu higravenh giao tiếp với mạng PSTN
1 Ngữ cảnh kết nối
Để kết nối với mạng PSTN chuacuteng ta cần phải coacute một card TDM với Cổng
FXO vagrave một đường dacircy điện thoại hoặc coacute thể lagrave một tổng đagravei nội bộ PBX Cnhiều nhagrave sản xuất phần cứng khaacutec nhau nhưng trong phần cấu higravenh dưới dacircy lagrave cấhigravenh cho card zapata TDM01B của digium (card nagravey hiện nay giaacute baacuten khoảng175$)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 272
Taacutec Giả Lecirc Quốc Toagraven
2
Chương 2 Caacutec KHAacuteI NIỆM TRONG HỆ THỐNG ASTERISK 18
21 GIỚI THIỆU 18
22 PBX - Private Branch Exchange 18
23 VOIP - Voice Over Internet Protocol 19
24 PSTN ndash Public Switched Telephone Network 20
25 TDM ndash Time Division Multiplexing 20
26 Caacutec higravenh thức baacuteo hiệu giao tiếp TDM 21
261 FXO vagrave FXS 21
262 Baacuteo hiệu Analog giữa đầu cuối vagrave tổng đagravei 22
263 Baacuteo hiệu giữa caacutec tổng đagravei 23
27 Baacuteo Hiệu trecircn mạng điện thoại VoIP 23
271 SIP Session Initiation Prorocol 23
272 Proxy server 23
273 RTP vaacute NAT 24
274 IAX ndash Inter Asterisk eXchange 25
28 Thiết Bị VoIP 26
281 Voip Phone 26
282 Softphone 26
www04hcbnet
Taacutec Giả Lecirc Quốc Toagraven
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 372
Taacutec Giả Lecirc Quốc Toagraven
3
283 Card giao tiếp với PSTN 27
284 ATA Analog Telephone Adaptors 27
29 Codecs 28
210 QoS ndash Quality of Service 28
2101 Độ trễ 29
2102 Độ trượt(Jitter) 29
Chương 3 CAgraveI ĐẶT ASTERISK 31
31 Cagravei đặt Asterisk 31
311 Download vagrave bung neacuten 31
312 Cagravei đặt goacutei Zaptel 32
313 Cagravei đặt goacutei libpri 33
32 Cagravei đặt goacutei Asterisk 33
33 Cagravei đặt TrixBox 34
331 Giới thiệu 34
332 DOWNLOAD VAgrave LẮP ĐẶT TRIXBOX 35
333 Cấu higravenh địa chỉ IP cho card mạng 35
34 Tổ Chức Thư Mục của Asterisk 36
341 etcasterisk 36
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 472
Taacutec Giả Lecirc Quốc Toagraven
4
342 usrlibasteriskmodules 36
343 varlibasterisk 37
344 varspoolasterisk 38
345 varrun 39
346 varlogasterisk 39
347 varlogasteriskcdr-csv 40
35 Một số lệnh thao taacutec trecircn hệ thống asterisk 40
Chương 4 CẤU HIgraveNH HỆ THỐNG ASTERISK 42
41 GIỚI THIỆU 42
42 Tập Tin cấu higravenh 42
43 Caacutec kiểu ảnh hưởng trong tập cấu higravenh 43
431 Simple Group 44
432 Option inheritance 44
433 Complex Entity 45
44 Cấu higravenh giao tiếp với mạng PSTN 46
441 Ngữ cảnh kết nối 46
442 Lắp đặt card TDM01B vagrave cấu higravenh 46
45 Cấu higravenh Điện thoại IP SIP phone 47
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 572
Taacutec Giả Lecirc Quốc Toagraven
5
451 Phần khai baacuteo Chung 48
452 Khai baacuteo kecircnh SIP 49
46 Giới Thiệu DialPlan 50
461 Extentions 51
462 Priorities ndash Thứ tự thực hiện 52
463 Aplications ndash Caacutec hagravem ứng dụng 53
464 Contexts - Ngữ cảnh 53
47 Ngữ cảnh thực hagravenh ứng dụng 55
471 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằngcaacutech cấu higravenh trecircn file sipconf như sau 56
472 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 805157
473 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052 58
48 Tạo diaplan 58
481 Thực hiện một viacute dụ cơ bản 58
482 Caacutec ứng dụng dial() background() vagrave goto() 59
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 672
Taacutec Giả Lecirc Quốc Toagraven
6
1 TỔNG QUAN VỀ ASTERISK
1 GIỚI THIỆU ASTERISK
Hacircn hạnh chagraveo mừng đến với thế giới diệu kỳ của Astetisk Asterisk đem đếcho người sử dụng tất cả caacutec tiacutenh năng vagrave ứng dụng của hệ thống tổng đagravei PBX
cung cấp nhiều tiacutenh năng magrave tổng đagravei PBX thocircng thường khocircng coacute được đoacute lagrave sựkết hợp giữa chuyển mạch VOIP vagrave chuyển mạch TDM đoacute lagrave khả năng mở rộnđaacutep ứng nhu cầu cho từng ứng dụnghellip
Asterisk lagrave hệ thống chuyển mạch mềm lagrave phần mềm nguồn mở được viế bằng ngocircn ngữ C chạy trecircn hệ điều hagravenh linux thực hiện tất cả caacutec tiacutenh năng củtổng đagravei PBX vagrave hơn thế nữa Asterisk ra đời vagraveo năm 1999 bởi một chagraveng trai sinh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 772
Taacutec Giả Lecirc Quốc Toagraven
7
năm 1977 tecircn lagrave Mark Spencer Anh ta viết phần mềm nagravey ban đầu khocircng ngoagraveimục điacutech hỗ trợ cho cocircng ty của migravenh trong việc liecircn lạc đagravem thoại hỗ trợ cộnđồng người sử dụng vagrave phaacutet triển Linux
Asterisk lagrave mộtPBXvagrave nhiều hơn thế Asterisk lagrave một phần mềm mang tiacutenhcaacutech mạng tin cậy matilde nguồn mở vagrave miễn phiacute magrave biến một PC rẻ tiền thocircng thườnchạy Linux thagravenh một hệ thống điện thoại doanh nghiệp mạnh mẽ Asterisk lagrave m bộ cocircng cụ matilde nguồn mở cho caacutec ứng dụng thoại vagrave lagrave một server xử lyacute cuộc gọđầy đủ chức năng Asterisk lagrave một nền tảng tiacutech hợp điện thoại vi tiacutenh hoaacute kiến truacutemở Nhiều hệ thống Asterisk đatilde được cagravei đặt thagravenh cocircng trecircn khắp thế giới Cocircnnghệ Asterisk đang phục vụ cho nhiều doanh nghiệp
Hiện nay Asterisk trecircn đagrave phaacutet triển nhanh được rất nhiều doanh nghiệp triểnkhai ứng dụng cho cocircng ty của migravenh Đacircy lagrave xu thế tất yếu của người sử dụng điệthoại vigrave caacutec cocircng ty đều coacute mạng maacutey tiacutenh vagrave cần liecircn lạc với nhau trong cocircng việcgiữa caacutec phograveng ban hoặc chi nhaacutenh vagrave cần một chi phiacute thấp thậm chiacute khocircng phải tốchi phiacute khi thực hiện caacutec cuộc gọi trecircn mạng nội bộ của cocircng ty
Khocircng goacutei gọn thocircng tin liecircn lạc trong cocircng ty magrave caacutec ứng dụng giao tiếp vớimạng PSTN hoặc mạng VOIP (như voice777) cho pheacutep gọi ra bất cứ số điện thoạnagraveo coacute trecircn mạng PSTN
Ngoagravei ra việc tiacutech hợp vagraveo caacutec ứng dụng như CRM vagrave hệ thống Outlook lagravemcho khả năng ứng dụng của Asterisk linh hoạt hơn đaacutep ứng nhu cầu cần thiết ch
người sử dụng điện thoại
Asterisk thoạt đầu được phaacutet triển trecircn GNULinux nền x86 (Intel) nhưng giờđacircy noacute cũng coacute thể biecircn dịch vagrave chạy trecircn OpenBSD FreeBSD vagrave Mac OS X vagraveMicrosoft Windows
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 872
Taacutec Giả Lecirc Quốc Toagraven
8
Sơ đồ Tổng quaacutet
Asterisk lagrave hệ thống chuyển mạch tiacutech hợp vừa lagrave cocircng nghệ truyền thốngTDM vừa lagrave chguyển mạch voip Higravenh trecircn cũng cho thấy khả năng giao tiếp của hthống Giao tiếp với điện thoại analog thocircng thường giao tiếp với thiết bị điện thovoip ngoagravei ra cograven coacute thể giao tiếp với mạng PSTN vagrave caacutec nhagrave cung cấp voip khaacutec
2 KIẾN TRUacuteC ASTERISK
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 972
Taacutec Giả Lecirc Quốc Toagraven
9
Về cơ bản kiến truacutec của Asterisk lagrave sự kết hộp giữa nền tảng cocircng nghệ đithoại vagrave ứng dụng điện thoại cocircng nghệ điện thoại cho VOIP như SIP H323 IAXMGCP caacutec cocircng nghệ điện thoại cho hệ thống chuyển mạch mạch TDM như TE1 ISDN vagrave caacutec giao tiếp đường truyền thoại Analog Caacutec ứng dụng thoại nhưchuyển mạch cuộc gọi tương taacutec thoại caller ID voicemail chuyển cuộc gọihellip
Asterisk coacute một số chức năng chiacutenh đoacuteng vai trograve quan trọng trong hệ thống
chuyển mạch cuộc gọi Khi khởi động hệ thống Asterisk thigrave chức năng DynamiModule Loader thực hiện nạp driver của thiết bị nạp caacutec kecircnh giao tiếp caacutecformat codec vagrave caacutec ứng dụng liecircn quan đồng thời caacutec hagravem API cũng được liecircn kếtnạp vagraveo hệ thống
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1072
Taacutec Giả Lecirc Quốc Toagraven
10
Sau đoacute hệ thống PBX Switching Core của Asterisk chuyển sang trạng thaacutei sẵnsagraveng hoạt động chuyển mạch cuộc gọi caacutec cuộc gọi được chuyển mạch tuỳ vagraveo
hoạch quay số (Dialplan) được thực hiện cấu higravenh trong file extensionconfChức năng Application Launchar để rung chuocircng thuecirc bao quay số định
hướng cuộc gọi kết nối với hộp thư thoạihellip
Scheduler and IO Manager đảm nhiệm caacutec ứng dụng nacircng cao caacutec chức năngđược phaacutet triển bởi cộng đồng phaacutet triển asterisk
Codec Translator xaacutec nhận caacutec kecircnh neacuten dữ liệu ứng với caacutec chuẩn khaacutec nhaucoacute thể kết hợp liecircn lạc được với nhau
Tất cả caacutec cuộc gọi định hướng qua hệ thống Asterisk đều thocircng qua caacutec giaotiếp như SIP Zaptel IAX Necircn hệ thống Asterisk phải đảm traacutech nhiệm vụ liecircn kếcaacutec giao tiếp khaacutec nhau đoacute để xử lyacute cuộc gọi
Hệ thống cũng bao gồm 4 chức năng API chiacutenh
Codec translator API caacutec hagravem đảm nhiệm thực thi vagrave giải neacuten caacutec chuẩn khaacutecnhau như G711 GMS G729hellip
Asterisk Channel API Giao tiếp với caacutec kecircnh liecircn lạc khaacutec nhau đacircy lagrave đầumối cho việc kết nối caacutec cuộc gọi tương thiacutech với nhiều chuần khaacutec nhau như SIIAX H323 Zaptelhellip
Asterisk file format API Asterisk tương thiacutech với việc xử lyacute caacutec loại file coacuteđịnh dạng khaacutec nhau như Mp3 wav gsmhellip
Asterisk Aplication API Bao gồm tất cả caacutec ứng dụng được thực thi trong hệthống Asterisk như voicemail callerIDhellip
wwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1172
Taacutec Giả Lecirc Quốc Toagraven
11
Ngoagravei ra Asterisk cograven coacute thư viện Asterisk Gateway Interface (AGI tương tựnhư CGI) - cơ chế kiacutech hoạt ứng dụng becircn ngoagravei cho pheacutep viết kịch bản phức tạp
với một số ngocircn ngữ như PHP hay Perl Noacutei chung khả năng viết caacutec ứng dụng tugravey biến rất lớn
3 MỘT SỐ TIacuteNH NĂNG CƠ BẢN
Asterisk coacute rất nhiều tiacutenh năng đatilde được giới thiệu ở trecircn nhưng để hiểu rotilde hếtất cả caacutec tiacutenh năng trecircn thật sự lagrave thaacutech thức đối với chuacuteng ta Trong phần nagraveychuacuteng tocirci sẽ giới thiệu một số tiacutenh năng với caacutec ứng dụng cụ thể để hiểu hơn về
thống asterisk
1 Voicemail (hộp thư thoại)
Đacircy lagrave tiacutenh năng cho pheacutep hệ thống nhận caacutec thocircng điệp tin nhắn thoại mỗmaacutey điện thoại được khai baacuteo trong hệ thống Asterisk cho pheacutep khai baacuteo thecircm chứnăng hộp thư thoại
Mỗi khi số điện thoại bận hay ngoagravei ldquovugraveng phủ soacutengrdquo thigrave hệ thống asteriskđịnh hướng trực tiếp caacutec cuộc gọi đến hộp thư thoại tương ứng đatilde khai baacuteo trước
Voicemail cung cấp cho người sử dụng nhiều tiacutenh năng lựa chọn như password xaacutec nhận khi truy cập vagraveo hộp thư thoại gửi mail baacuteo khi coacute thocircng điệmới
2 Call Forwarding(chuyển cuộc gọi)
Khi khocircng ở nhagrave hoặc đi cocircng taacutec magrave người sử dụng khocircng muốn bỏ lỡ tất ccaacutec cuộc gọi đến thigrave hatildey nghĩ ngay đến tiacutenh năng chuyển cuộc gọi
Đacircy lagrave tiacutenh năng thường được sử dụng trong hệ thống Asterisk Chức năng cho pheacutep chuyển một cuộc gọi đến một hay nhiều số maacutey điện thoại được định trước
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1272
Taacutec Giả Lecirc Quốc Toagraven
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ậnchuyển cuộc gọi khi khocircng trả lời chuyển cuộc gọi tức thời chuyển cuộc gọi v
thời gian định trước3 Caller ID (hiển thị số gọi)
Chức năng nagravey rất hữu dụng khi một ai đoacute gọi đến vagrave ta muốn biết chiacutenh xaacuteclagrave gọi từ đacircu vagrave trong một số trường hợp biết chắc họ lagrave ai
Ngoagravei ra Caller ID cograven lagrave chức năng cho pheacutep chuacuteng ta xaacutec nhận số thuecirc bao
gọi đến coacute nghĩa lagrave dựa vagraveo caller ID chuacuteng ta coacute tiếp nhận hay khocircng tiếp nhậncuộc gọi từ phiacutea hệ thống Asterisk Ngăn một số cuộc gọi ngoagravei yacute muốn
4 Automated attendant (chức năng IVR)
Chức năng tương taacutec thoại coacute rất nhiều ứng dụng trong thực tế khi gọi điệthoại đến một cơ quan hay xiacute nghiệp thuecirc bao thường nghe thocircng điệp nhưldquoXinchagraveo mừng bạn đatilde gọi đến cocircng ty chuacuteng Tocirci hatildey nhấn phiacutem 1 để gặp phograveng kinh
doanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquosau đoacute tuỳ vagraveo sự tương taacutec của thuecirc 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 thuecirc bao muố biết tỉ giaacute Đocircla hiện nay như thế nagraveo hay kết quả sổ số hellip tất caacutec những monmuốn trecircn đều coacute thể thực hiện qua chức năng tương taacutec thoại
5 Time and Date
Vagraveo từng thời gian cụ thể cuộc gọi sẽ định hướng đến một số điện thoại hmột chức năng cụ thể khaacutec viacute dụ trong cocircng ty giaacutem đốc muốn chỉ cho pheacutep nhacircnviecircn sử dụng maacutey điện thoại trong giờ hagravenh chaacutenh cograven ngoagravei giờ thigrave sẽ hạn chế hakhocircng cho pheacutep gọi ra becircn ngoagravei
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1372
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1472
Taacutec Giả Lecirc Quốc Toagraven
14
Asterisk thực hiện rất nhiều ngữ cảnh ứng dụng khaacutec nhau tuỳ vagraveo nhu cầu sdụng dưới dacircy lagrave những ngữ cảnh ứng dụng thường được sử dụng trong thực
triển khai hệ thống asterisk1 Tổng đagravei voip IP PBX
IP BPX
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1572
Taacutec Giả Lecirc Quốc Toagraven
15
Đacircy lagrave hệ thống chuyển mạch voip được xacircy dựng phục vụ caacutec cocircng ty coacute nhucầu thực hiện trecircn nền tảng mạng nội bộ đatilde triển khai Thay vigrave lắp đặt một hệ thố
PBX cho nhu cầu liecircn lạc nội bộ thigrave necircn lắp đặt hệ thống voip điều nagravey sẽ lagravem giảchi phiacute đaacuteng kể Hệ thống coacute thể liecircn 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 ở đacircy lagrave hiện tại Cocircng ty đatilde trang bị hệ thống PBX bacircygiờ cần trang bị thecircm để đaacutep ứng nhu cầu liecircn lạc trong cocircng ty sao cho với chi phthấp nhất giải phaacutep để thực hiện đoacute lagrave trang bị hệ thống asterisk vagrave kết nối với h
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1672
Taacutec Giả Lecirc Quốc Toagraven
16
thống PBX đang tồn tại qua luồng E1 Ngoagravei ra để tăng khả năng liecircn lạc với mạnPSTN vagrave VOIP khaacutec Cocircng Ty coacute thể thực hiện kết nối với nhagrave cung cấp dịch vụvoip
3 Kết nối giữa caacutec server Asterisk
Kết nối giữa caacutec server asterisk
Phương phaacutep trecircn ứng dụng rất hiệu quả cho caacutec cocircng ty nằm ratildei raacutec ở caacutec vtrị địa lyacute khaacutec nhau nhằm giảm chi phiacute đường dagravei Viacute dụ Cocircng ty Mẹ coacute trụ sở đặtại nước Mỹ vagrave caacutec Chi nhaacutenh đặt tại Việt Nam với caacutec địa điểm Thagravenh phố Hồ ChMinh vagrave Hagrave Nội Thocircng qua mạng WAN của Cocircng Ty caacutec cuộc gọi nội bộ giữa caacutec
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1772
Taacutec Giả Lecirc Quốc Toagraven
17
vị triacute khaacutec nhau sẽ lagravem giảm chi phiacute đaacuteng kể Ngữ cảnh nagravey về mặt phaacutep luật khocircncho cuộc gọi từ Mỹ vagraveo Việt Nam
4 Caacutec ứ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 caacutec server kết nối với hệ thống PSTN hay tổng đagravei PBXđể triển khai caacutec ứng dụng như tương taacutec thoại IVR Một viacute dụ cho ứng dụng tươtaacutec thoại đoacute lagrave cho biết kết quả sổ số hay kiểm tra cước cuộc gọi giống dịch v19001260 vậy Ứng dụng VoiceMail thu nhận những tin nhắn thoại từ phiacutea thuecirc bao giống như chức năng hộp thư thoại của Bưu Điện Thagravenh phố triển khai Cograve
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1872
Taacutec Giả Lecirc Quốc Toagraven
18
chức năng điện thoại hội nghị thiết lập cho nhiều maacutey điện thoại cugraveng noacutei chuyệvới nhau
5 Chức năng Phacircn phối cuộc gọi tự động ACD
Phacircn phối cuộc gọi với hagraveng đợi
ACD(Automatic Call Distribution) Phacircn phối cuộc gọi tự động
Đacircy lagrave chức năng ứng dụng cho nhu cầu chăm soacutec khaacutech hagraveng hay nhận phảnhổi từ phiacutea khaacutech hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1972
Taacutec Giả Lecirc Quốc Toagraven
19
Cocircng ty coacute khả năng tiếp nhận cugraveng một luacutec 10 cuộc gọi như thế cuộc gọi th11 gọi đến thigrave hệ thống giải quyết như thế nagraveo Bigravenh thường thigrave sẽ nghe tiacuten hiệ
bận nhưng với chức năng phacircn phối cuộc gọi sẽ đưa thuecirc bao đoacute vagraveo hagraveng đợi đchờ trả lời trong khi chờ trả lời cuộc gọi thuecirc bao coacute thể nghe những bagravei haacutet hay dasterisk cung cấp trong luacutec nagravey nếu 1 trong mười số điện thoại trở về trạng thaacutei rthigrave cuộc gọi đang chờ sẽ được trả lời Giống như chức năng của dịch vụ 1080 ha116 của Bưu Điện Thagravenh Phố vậy
2 CAacuteC KHAacuteI NIỆM TRONG HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Trong chương nagravey sẽ giải thiacutech rotilde caacutec khaacutei niệm cơ bản liecircn quan đến hệ thốnasterisk cung cấp những kiến thức nền tảng những khaacutei niệm cần thiết để thiếttriển khai xacircy dựng hệ thống điện thoại với Asterisk
2 PBX - Private Branch Exchange
PBX hay cograven gọi lagrave PABX - Private Automatic Branch Exchange lagrave hệ thốngtổng đagravei nội bộ được đặt tại nhagrave thuecirc bao từ Automatic ở đacircy muốn noacutei đến lagrave hthống tổng đagravei điện tử tự động nhưng hiện nay đa số lagrave tổng đagravei PBX điện tử tđộng necircn từ trecircn thực sự khocircng cograven cần thiết nữa
PBX với mục tiecircu chia sẻ nhiều thuecirc bao nội bộ gọi ra thế giới becircn ngoagraveithocircng qua một vagravei đường trung kế hay noacutei một caacutech khaacutec PBX lagrave hệ thống trungchuyển giữa caacutec đường dacircy điện thoại becircn ngoagravei từ cocircng ty điện thoại vagrave maacutey điệthoại nội bộ trong tổng đagravei PBX Vigrave thế necircn số lượng maacutey điện thoại nội bộ luocircnhiều hơn số đường dacircy nối đến PBX từ becircn ngoagravei
wwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2072
Taacutec Giả Lecirc Quốc Toagraven
20
PBX thực hiện chuyển mạch cuộc gọi caacutec maacutey điện thoại nội bộ với nhau vvới caacutec maacutey điện thoại becircn ngoagravei thocircng qua đường trung kế Đồng thời thực hiệ
chuyển mạch caacutec cuộc gọi điện thoại từ becircn ngoagravei vagraveo caacutec maacutey điện thoại nội bộNgoagravei việc chuyển mạch cuộc gọi PBX cung cấp nhiều tiacutenh năng sử dụng
cho nhiều mục điacutech khaacutec nhau của khaacutech hagraveng magrave bản thacircn caacutec đường dacircy điệnthoại từ cocircng ty điện thoại kết nối đến khocircng thể thực hiện được caacutec tiacutenh năng ntương taacutec thoại(IVR) Voicemail phacircn phối cuộc gọi tự động(ADC)hellip
Hiện nay với việc phaacutet triển mạnh mẽ của cocircng nghệ VoIP chuacuteng ta cograven coacutethecircm thuật ngữ IP PBX Đacircy lagrave hệ thống chuyển mạch PBX với cocircng nghệ Voip
3 VOIP - Voice Over Internet Protocol
Voice over Internet Protocol (VoIP) lagrave một cocircng nghệ cho pheacutep truyền thoạisử dụng giao thức mạng IP trecircn cơ sở hạ tầng sẵn coacute của mạng internet Voip lagrave mtrong những cocircng nghệ viễn thocircng đang được quan tacircm nhất hiện nay khocircng chỉ đố
với nhagrave khai thaacutec caacutec nhagrave sản xuất magrave cograven cả với người sử dụng dịch vụVoip coacute thể vừa thực hiện mọi loại cuộc gọi như trecircn mạng điện thoại kecircn
truyền thống (PSTN) đồng thời truyền dữ liệu trecircn cơ sở mạng truyền dữ liệu Dcaacutec ưu điểm về giaacute thagravenh dịch vụ vagrave sự tiacutech hợp nhiều loại higravenh dịch vụ necircn voihiện nay được triển khai một caacutec rộng ratildei
Dịch vụ điện thoại voip lagrave dịch vụ ứng dụng giao thức IP nguyecircn tắc củaVoIP bao gồm việc số hoaacute tiacuten hiệu tiếng noacutei thực hiện việc neacuten tiacuten hiệu số chia nhcaacutec goacutei nếu cần vagrave truyền goacutei tin nagravey qua mạng tới nơi nhận caacutec goacutei tin nagravey đượraacutep lại theo đuacuteng thứ tự của bản tin giải matilde tiacuten hiệu tương tự phục hồi lại tiếng n ban đầu
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2172
Taacutec Giả Lecirc Quốc Toagraven
21
Caacutec cuộc gọi trong VoIP dựa trecircn cơ sở sử dụng kết hợp cả chuyển mạchkecircnh vagrave chuyển mạch goacutei Trong mỗi loại chuyển mạch đều coacute ưu nhược điể
riecircng của noacute Trong kỹ thuật chuyển mạch kecircnh giagravenh riecircng cho một kecircnh truyềngiữa hai thiết bị đầu cuối thocircng qua caacutec node chuyển mạch trung gian Trongchuyển mạch kecircnh tốc độ truyền dẫn luocircn luocircn cố định(nghĩa lagrave băng thocircng khocircnđổi) với mạng điện thoại PSTN tốc độ nagravey lagrave 64kbps truyền dẫn trong chuyểmạch kecircnh coacute độ trễ nhỏ
Trong chuyển mạch goacutei caacutec bản tin được chia thagravenh caacutec goacutei nhỏ gọi lagrave caacutec
goacutei nguyecircn tắc hoạt động của noacute lagrave sử dụng hệ thống lưu trữ vagrave chuyển tiếp caacutec gtin trong nuacutet mạng Đối với chuyển mạch goacutei khocircng tồn tại khaacutei niệm kecircnh riecircng băng thocircng khocircng cố định coacute nghĩa lagrave coacute thể thay đổi tốc độ truyền kỹ thuật chuyểmạch goacutei phải chịu độ trễ lớn vigrave trong chuyển mạch goacutei khocircng quy định thời giancho mỗi goacutei dữ liệu tới điacutech mỗi goacutei coacute thể đi bằng nhiều con đường khaacutec nhau đtới điacutech chuyển mạch goacutei thiacutech hợp cho việc truyền dữ liệu vigrave trong mạng truyền dliệu khocircng đogravei hỏi về thời gian thực như thoại để sử dụng ưu điểm của mỗi lo
chuyển mạch trecircn thigrave trong voip kết hợp sử dụng cả hai loại chuyển mạch kecircnh vchuyển mạch goacutei
4 PSTN ndash Public Switched Telephone Network
PSTN lagrave mạng chuyển mạch điện thoại cocircng cộng hay noacutei caacutech khaacutec lagrave mạngkết nối tất cả caacutec hệ thống tổng đagravei chuyển mạch-mạch
Để hiểu rotilde hơn hatildey xem xeacutet mạng PSTN với mạng Internet về khiacutea cạnhchuyển thoại trecircn đoacute Chuyển mạch mạch muốn thực hiện cuộc gọi giữa hai thu bao thigrave hệ thống phải giagravenh riecircng một kecircnh truyền 64kbps để chuyển tải tiacuten hiệthoại trecircn đoacute Cograven cuộc gọi điện thoại trecircn mạng Internet thigrave tiacuten hiệu thoại đượđoacuteng goacutei vagrave chuyển đi trecircn cugraveng kecircnh truyền với nhiều dịch vụ khaacutec Vigrave lẽ đoacute chấlượng cuộc gọi trecircn mạng PSTN bao giờ cũng tốt hơn trecircn mạng Internet nhưng đổ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2272
Taacutec Giả Lecirc Quốc Toagraven
22
lại chi phiacute lại đắc hơn rất nhiều đặc biệt lagrave caacutec cuộc gọi quốc tế necircn phải cần nhắc kỹ khi sử dụng
PSTN được phaacutet triển trecircn chuẩn ITU(International TelecommunicationUnion) cograven mạng Internet được phaacutet triển trecircn chuẩn IETF(Internet EngineeringTask Force) cả hai mạng trecircn đều sử dụng địa chỉ để định tuyến cuộc gọi PSTN sdụng caacutec con số điện thoại để chuyển mạch cuộc gọi giữa caacutec tổng đagravei điện thotrong khi đoacute trecircn mạng Internet địa chỉ IP sẽ được sử dụng để định tuyến caacutec goacutethoại
5 TDM ndash Time Division Multiplexing
Lagrave kỹ thuật gheacutep kecircnh phacircn chia thời gian nhiều tiacuten hiệu coacute thể truyền đồngthời trecircn một đường truyền TDM được sử dụng chuyển thoại trong hệ thống mạPSTN Coacute hai chuẩn gheacutep kecircnh TDM cơ bản lagrave E1 với 30 kecircnh thoại trecircn mộtkhung tốc độ 2Mbps vagrave T1 với 24 kecircnh thoại tốc độ 15Mbps
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2372
Taacutec Giả Lecirc Quốc Toagraven
23
Higravenh Minh họa gheacutep kecircnh phacircn chia theo thời gian
6 Caacutec higravenh thức baacuteo hiệu giao tiếp TDM
1 FXO vagrave FXS
FXO (Foreign Exchange Office) lagrave thiết bị nhận tiacuten hiệu từ tổng đagravei gửi đếnnhư dograveng chuocircng tiacuten hiệu nhấc gaacutec maacutey tiacuten hiệu mời quay số gửi vagrave nhận tiacuten hiệthoạihellip FXO giống như maacutey Fax hay modem dial-up 56k vậy Dugraveng để kết nối vớ
đường dacircy điện thoại
FXS (Foreign Exchange Station) lagrave thiết bị tại nơi cung cấp đường dacircy điệnthoại thiết bị FXS sẽ cung cấp tiacuten hiệu mời quay số(dialtone) dograveng chuocircng hồi acircmchuocircng(ring tone) Trong đường dacircy Analog FXS cung cấp dograveng chuocircng vagrave điện aacutepcho điện thoại hoạt động viacute dụ FXS cung cấp điện aacutep -48VDC đến maacutey điện tho
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2472
Taacutec Giả Lecirc Quốc Toagraven
24
Analog trong suốt thời gian đagravem thoại vagrave cung cấp 90VAC(20hz) để phaacutet điện aacuteprung chuocircng Thiết bị FXS phaacutet cograven thiết bị FXO nhận
Card TDM sử dụng trong hệ thống asterisk thường tiacutech hợp vừa thiết bị FXOvừa lagrave thiết bị FXS(Giống bộ ATA) FXO để kết nối với đường dacircy điện thoại cograveFXS dugraveng để kết nối với maacutey điện thoại analog thocircng thường dugraveng để chuyển mạcuộc gọi TDM qua hệ thống asterisk(Xem thecircm trong phần cấu higravenh cho kecircnhTDM)
Toacutem lại cần nắm
FXS được kết nối với FXO giống với đường dacircy điện thoại nối với maacuteyđiện thoại
FXS cung cấp nguồn cho điện thoại FXO(điện thoại Analog)
Higravenh a) Maacutey điện thoại vai trograve FXO kết nối với FXS(PSTN) Higravenh b) PBXkết nối với FXO vagrave FXS Higravenh c) ATA đoacuteng vai trograve như FXS để kết nối với maacuteyđiện thoại vai trograve FXO
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2572
Taacutec Giả Lecirc Quốc Toagraven
25
2 Baacuteo hiệu Analog giữa đầu cuối vagrave tổng đagravei
Khi chuacuteng ta nhấc mấy điện thoại để gọi thigrave nghe tiacuten hiệu mời quay số kh
cuộc gọi gọi đầu becircn kia bị bận thigrave chuacuteng ta nghe tiacuten hiệu bận(busy tone) caacutec loạtiacuten hiệu như vậy gọi lagrave caacutec tiacuten hiệu baacuteo hiệu analog Caacutec tiacuten hiệu như Mời quay sốtiacuten hiệu bận rung chuocircng trạng thaacutei nhấc gaacutec maacutey Caacutec loại tiacuten hiệu trecircn được trađổi giữa thiết bị FXO vagrave FXS
Coacute nhiều phương thức baacuteo hiệu khaacutec nhau ứng với từng nơi sử dụng vigrave thếtại nơi kết nối với đường dacircy điện thoại cần xem xeacutet họ đang sử dụng phương th
baacuteo hiệu gigrave từ đoacute chuacuteng ta khai thaacutec loại tiacuten hiệu baacuteo hiệu cho thiacutech hợp caacutec phương thức baacuteo hiệu như Loop Start Ground Start Một minh họa cho việc sửdụng sai phương thức baacuteo hiệu lagrave khi chuacuteng ta khai baacuteo phương thức baacuteo hiệu giữhệ thống Asterisk vagrave đường dacircy điện thoại khaacutec nhau thigrave dẫn đến Asterisk sẽ khocircnnhận biết được tiacuten hiệu gaacutec maacutey điều nagravey sẽ lagravem cho asterisk khocircng baacuteo giờ giải tỏđược cuộc gọi để thực hiện cuộc gọi mới
3 Baacuteo hiệu giữa caacutec tổng đagravei
SS7 hệ thống baacuteo hiệu số 7 được phaacutet triển bởi ATampT vagrave ITU lagrave hệ thống baacuteo hiệu chuyển caacutec cuộc gọi giữa caacutec tổng đagravei trong mạng PSTN Trong hệ thốn baacuteo hiệu số 7 tiacuten hiệu chuyển tải trecircn đường trung kế kết nối giữa hai tổng đagravei gồcoacute hai mạch riecircng một cho thoại vagrave một cho baacuteo hiệu như vậy thoại vagrave baacuteo hiệu cthể chuyển trecircn hai kecircnh vật lyacute khaacutec nhau
7 Baacuteo Hiệu trecircn mạng điện thoại VoIP
1 SIP Session Initiation Prorocol
Sip lagrave giao thức Internet dagravenh cho baacuteo hiệu VoIP được phaacutet triển bởi IETFcung cấp vagravei chức năng giống hệ thống baacuteo hiệu số 7 nhưng dựa trecircn nền IP Mộchức năng giống baacuteo hiệu số 7 đoacute lagrave baacuteo hiệu vagrave thoại chuyển tải trecircn hai kecircnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2672
Taacutec Giả Lecirc Quốc Toagraven
26
riecircng Giao thức SIP thực hiện chức năng thiết lập vagrave baacuteo hiệu cuộc gọi khi noacutei đế baacuteo hiệu cuộc gọi lagrave chỉ định caacutec tiacuten hiệu baacuteo hiệu như tiacuten hiệu mời quay số tiacutehiệu bậnhellip
2 Proxy server
Mặc dầu hai thiết bị SIP coacute thể liecircn lạc trực tiếp với nhau để khởi tạo cuộgọi nhưng trong giao thức SIP cograven coacute chức năng Proxy để linh hoạt hơn trong thiếlập cuộc gọi Proxy Server sẽ lagravem nhiệm vụ ghi nhận tất cả caacutec số điện thoại đư phiacutea client đăng kyacute đến qua bản tin ldquoRegistrationrdquo Khi một client khaacutec thực hiện
cuộc gọi thigrave thực sự Client đoacute khocircng biết số điện thoại cần gọi đang ở đacircu necircn thocircnqua Proxy server để tigravem kiếm thiết lập cuộc gọi
+
Higravenh Đăng kyacute từ Client đến SIP Proxy Với Giao thức SIP đường baacuteo hiệu vagravethoại riecircng
3 RTP vaacute NAT
Caacutec cuộc gọi trecircn Internet với giao thức SIP được chia thagravenh caacutec goacutei thoại vagraveđược chuyển qua giao thức RTP(Real Time Protocol) RTP lagrave giao thức khocircng chỉthực hiện chuyển caacutec goacutei thoại qua Internet magrave cograven coacute cả video nữa Một cuộc gọ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2772
Taacutec Giả Lecirc Quốc Toagraven
27
thocircng thường coacute hai hướng thocircng tin lagrave nhận vagrave phaacutet RTP lagravem việc chuyển caacutec goacutedữ liệu thoại cũng trecircn hai hướng
NAT Network Address Translators lagrave một trở ngại lớn trong giao thức RTPMạng sử dụng NAT lagrave một mạng chia sẻ nhiều địa chỉ IP nội bộ với một địa chỉ ICocircng cộng để kết nối với thế giới becircn ngoagravei NAT dugraveng để chia sẻ nhiều maacutey tiacutentrong mạng LAN nội bộ sử dụng được Internet nhưng cũng chiacutenh vigrave thế magrave caacutec maacutetiacutenh nội bộ gặp khoacute khăn trong việc thực hiện cuộc gọi VoIP qua Internet Đoacute chiacutenhlagrave vấn để trở ngại khi truyền thoại qua giao thức RTP
Higravenh Minh họa hoạt động của NAT
Trong Giao thức RTP như chuacuteng ta đatilde biết đoacute lagrave thoại được chuyển trecircn haiđường khaacutec nhau lagrave đường phaacutet vagrave đường thu Vấn đề NAT nằm ở chỗ tiacuten hiệthoại từ becircn ngoagravei vagraveo becircn trong qua giao thức RTP khocircng thực hiện được cograven chiềungược lại thigrave thực hiện tốt Hay noacutei caacutech khaacutec vấn đề NAT lagravem cho caacutec cuộc gọi t
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2872
Taacutec Giả Lecirc Quốc Toagraven
28
Internet đagravem thoại vagraveo caacutec maacutey nội bộ qua NAT thigrave khocircng nghe được cograven trongtrường hợp caacutec cuộc gọi từ caacutec maacutey nội bộ ra caacutec maacutey internet thigrave nghe tốt
Vấn đề NAT trecircn được giải quyết trong Asterisk bằng việc khai baacuteo thocircng số NAT=yes trong cấu higravenh kecircnh giao thức SIP
4 IAX ndash Inter Asterisk eXchange
IAX lagrave giao thức baacuteo hiệu Voip được phaacutet triển bởi taacutec giả của phần mềmAsterisk để khắc phục những hạn chế trong giao thức SIP Khocircng giống như giathức SIP chuyển tải thoại vagrave baacuteo hiệu trecircn hai kecircnh khaacutec nhau (out of band) IAXchuyển tải thoại vagrave baacuteo hiệu trecircn cugraveng một kecircnh(in band) IAX giải quyết được vấđề NAT đề cập trecircn phần giao thức SIP Mặc khaacutec IAX lagrave giao thức tối ưu trongviệc sử dụng băng thocircng cho pheacutep nhiều goacutei dữ liệu thoại trecircn cugraveng một IP headecơ chế chuyển tải nhiều cuộc gọi trecircn cugraveng một goacutei IP được gọi lagrave trung kế(Trunk)
Coacute thể giải thiacutech thecircm cơ chế trung kế như sau Giả sử Tocirci cần gửi 5 bức thtới người bạn của Tocirci Tocirci sẽ coacute hai higravenh thức để thực hiện thứ nhất lagrave mỗi bức tTocirci bỏ vagraveo một phong bigrave vậy tổng cộng tocirci phải sử dụng 5 phong bigrave để gửi đi 5 bứthư Caacutech thứ hai lagrave Tocirci bỏ 5 bức thư vagraveo 1 phong bigrave vagrave gửi đi vậy tổng cộng Tocircchỉ tốn 1 phong bigrave Qua phacircn tiacutech trecircn rotilde ragraveng việc 5 bức thư vagraveo một phong bigrave sẽtiết kiệm hơn so với 5 bức thư với 5 phong biacute Cơ chế trecircn cũng giống như nhiềcuộc gọi được đoacuteng thagravenh goacutei vagrave chuyển đi trecircn đường trung kế
Toacutem lại IAX lagrave giao thức dagravenh cho VoIP mới nhất cho đến thời điểm nagravey vớinhiều ưu điểm hấp dẫn như
+ Tối thiểu sử dụng băng thocircng
+ Trong suốt với NAT
+ Hiệu quả với cơ chế trung kế
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2972
Taacutec Giả Lecirc Quốc Toagraven
29
8 Thiết Bị VoIP
1 Voip Phone
Đacircy lagrave thiết bị phần cứng kết nối với mạng VoIP giống như maacutey điện thoại đ bagraven thocircng thường nhưng dagravenh cho VoIP cần phải thực hiện cấu higravenh trước khi sửdụng
Lưu yacute một số tiacutenh năng khi thực hiện mua thiết bị điện thoại VoIP
+ Low bandwidth hỗ trợ Codec nagraveo G729 lagrave tốt nhất hiện nay
+ Web Interface Phải coacute giao tiếp thiết lập cấu higravenh thacircn thiện dễ sử dụng
+ Audio Interface Coacute speaker phone hay khocircng
Giaacute thagravenh của điện thoại voip IP đắc hơn điện thoại thocircng thường giaacute khoảntrecircn dưới 100$ một caacutei
Higravenh Maacutey Điện Thoại VoIP
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3072
Taacutec Giả Lecirc Quốc Toagraven
30
2 Softphone
Lagrave một phần mềm được cagravei trecircn maacutey tiacutenh thực hiện tất cả caacutec chức năng giốn
như thiết bị điện thoại Voip cần lưu yacute khi sử dụng softphone lagrave maacutey tiacutenh phải ccard acircm thanh headphone vagrave firewall khocircng bị khoacutea
Sử dụng softphone với hệ thống Asterisk necircn dugraveng softphone với cocircng nghệgiao thức mới dagravenh cho Asterisk đoacute lagrave IAX
Higravenh Điện Thoại Softphone
3 Card giao tiếp với PSTN
Muốn cho pheacutep caacutec maacutey điện thoại nội bộ trong hệ thống Asterisk kết nối vthực hiện cuộc gọi với mạng PSTN chuacuteng ta cần phải coacute thiết bị phần cứng tươthiacutech Thiết bị phần cứng sử dụng cho hệ thống Asterisk do chiacutenh taacutec giả lập cocircng
Digium phacircn phối đacircy cũng chiacutenh lagrave yacute tưởng lớn trong việc phacircn phối phần mềmAsterisk lagrave hệ thống nguồn mở sử dụng miễn phiacute
Thiết bị phần cứng thường kyacute hiệu bắt đầu bằng cụm từ TDMxyB trong đoacute lagrave số lượng port FXS y lagrave số lượng port FXO giaacute trị tối đa của x vagrave y lagrave 4 viacute dụcard TDM22B coacute nghĩa lagrave coacute 2 fort FXS vagrave 2 port FXO
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3172
Taacutec Giả Lecirc Quốc Toagraven
31
Higravenh Card TDM22B gồm 4 port 2 FXS vagrave 2 FXO
4 ATA Analog Telephone Adaptors
ATA lagrave thiết bị kết nối với điện thoại Analog thocircng thường đến mạng VoIPmột thiết bị ATA gồm coacute hai loại port RJ-11 để kết nối với maacutey điện thoại analo
thocircng thường cograven RJ-45 để kết nối với mạng VoIP
ATA thực sự lagrave thiết bị FXS chuyển đổi tiacuten hiệu Analog sang tiacuten hiệu số sửdụng cho mạng VoIP để tận dụng maacutey điện thoại Analog necircn trang bị thiết bị ATAthay vigrave phải trang bị điện thoại VoIP
Thiết bị ATA sử dụng với giao thức IAX được Digium phacircn phối lagrave thiết bịATA được sử dụng rộng ratildei với Asterisk coacute tecircn gọi lagrave IAXy
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3272
Taacutec Giả Lecirc Quốc Toagraven
32
Higravenh Thiết bị ATA
9 Codecs
Thuật Toaacuten codecs(CompressorDe-compressor) lagrave một tập caacutec quy luật đượcsử dụng để chuyển đổi caacutec tiacuten hiệu thoại dạng Analog sang tiacuten hiệu số vagrave ngược lạ
Coacute nhiều thuật toaacuten codec để thực hiện chuyển đổi tiacuten hiệu analog sang tiacuten
hiệu số dạng nhị phacircn (01) như G711 GSM G729hellipỨng với mỗi thuật toaacuten coacutenhững ưu điểm riecircng đặc biệt lagrave việc tối ưu sử dụng băng thocircng trecircn đường truyềMục tiecircu cuối cugraveng lagrave caacutec thuật toaacuten đưa ra phải đảm bảo chất lượng cuộc gọi nhvagrave tiết kiệm băng thocircng nhất
G729 lagrave thuật toaacuten codec tốt nhất hiện nay trong hệ thống VoIP Với hệthống Asterisk để sử dụng thuật toaacuten nagravey cần phải mua bản quyền sử dụng vigrave đacircy
codec khocircng miễn phiacute sử dụng
10 QoS ndash Quality of Service
Caacutec yếu tố ảnh hưởng đến chất lượng của dịch vụ đối với VoIP đoacute lagrave caacuteyếu ảnh hưởng đến chất lượng tiacuten hiệu thoại
1 Độ trễ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3372
Taacutec Giả Lecirc Quốc Toagraven
33
Thoại lagrave dịch vụ mang tiacutenh thời gian thực rất cao vigrave thế trễ lagrave yếu tố ảnhhưởng rất lớn đến chất lượng dịch vụ Trễ được định nghĩa lagrave khoảng thời gian tiacute
từ luacutec tiacuten hiệu thoại đi từ miệng người noacutei tới tai người nghe Trễ lagrave yếu tố khocircnthể traacutenh khỏi độ trễ đối với mạng điện thoại truyền thống (mạng PSTN) khoảng50ms đến 70ms theo khiến nghị của ITU-T để đảm bảo chất lượng cho hệ thốVoIP thigrave độ trễ từ đầu phaacutet tới đầu thu hoặc ngược lại khocircng được vượt quaacute 150mkhi magrave độ trễ vượt quaacute 400ms đến 500ms thigrave khocircng thể chấp nhận được
Caacutec nguyecircn nhacircn gacircy ra trễ bao gồm Trễ trecircn mạng lưới trễ trecircn bộ mả hoacutea
giải matilde trễ trong quaacute trigravenh đoacuteng goacutei trễ bộ đệm trễ xử lyacute tiếng noacuteihellip2 Độ trượt(Jitter)
Nguyecircn nhacircn gacircy ra trượt lagrave goacutei tiacuten hiệu thoại trong quaacute trigravenh truyền từnguồn đến điacutech sẽ gặp phải những điều kiện khaacutec nhau trecircn mạng lưới do đoacute thườđến điacutech với những khoảng trễ khaacutec nhau Đacircy lagrave tiacutenh khocircng đồng nhất của trễ Mnguyecircn nhacircn khaacutec của trượt đối với ứng dụng PC to PC lagrave do việc sử dụng hệ điề
hagravenh phi thời gian thực caacutec goacutei tin thoại phải đợi hệ điều hagravenh xử lyacute trong nhữnkhoảng thời gian khaacutec nhau khi magrave hệ điều hagravenh đang phải xử lyacute đối với caacutec ứndụng khaacutec
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3472
Taacutec Giả Lecirc Quốc Toagraven
34
Higravenh Nguyecircn nhacircn xảy ra trượt
Để loại bỏ tiacutenh khocircng đồng nhất của trễ người ta thiết kế caacutec bộ đệm t(Jitter Buffer) tại nơi đến của caacutec goacutei tin caacutec goacutei tin đến với caacutec khoảng caacutech khaacutecnhau về thời gian được lưu tại bộ đệm rồi phaacutet khỏi bộ đệm với khoảng trễ n
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3572
Taacutec Giả Lecirc Quốc Toagraven
35
nhau Khi bộ đếm coacute kiacutech thước cagraveng lớn thigrave khả năng loại bỏ tiacutenh khocircng đồng nhấcagraveng lớn tuy nhiecircn việc sử dụng bộ đệm sẽ gacircy ra hiện tượng trễ trong ứng dụnthoại do đoacute cần coacute bagravei toaacuten cacircn đối giữa độ trễ vagrave độ trượt
Ngoagravei 2 nguyecircn nhacircn trecircn cograven một số nguyecircn nhacircn nữa ảnh hưởng đến chấtlượng thoại như độ mất goacutei giới hạn băng thocircng tiếng vọng
3 CAgraveI ĐẶT ASTERISK
1 Cagravei đặt Asterisk
1 Download vagrave bung neacuten
Để cagravei đặt Asterisk đầu tiecircn chuacuteng ta cần phải cagravei đặt hệ điều hagravenh linux trecircnmaacutey tiacutenh của migravenh Coacute thể cagravei hệ điều hagravenh Linux Fedora CentOS Redhat hoặcDebian Caacutec goacutei phần mềm phụ thuộc phải coacute trong hệ điều hagravenh Linux trước khcagravei Asterisk bao gồm
bison
gcc
kernel-source
libtermcap-devel
ncurses-devel
openssl096b
openssl-devel
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3672
Taacutec Giả Lecirc Quốc Toagraven
36
Sau khi hoagraven tất caacutec bước trecircn chuacuteng ta tiến hagravenh download phần mềmasterisk với phiecircn bản mới nhất
cd usrsrc
wgetftpftpdigiumcompubasteriskasterisk-140targz
wgetftpftpdigiumcompubasteriskasterisk-addons-140targz
wgetftpftpdigiumcompubasteriskasterisk-sounds-140targz
wgethttpftpdigiumcompubzaptelzaptel-140targz
wgethttpftpdigiumcompublibprilibpri-140targz
Việc download coacute thể nhanh hay chậm tugravey vagraveo tốc độ trecircn đường internet saukhi download hoagraven thagravenh chuacuteng ta tiến hagravenh bung neacuten caacutec goacutei ra thư mục chỉ định
tar ndashxzvf asterisk-140targz
tar ndashxzvf asterisk-addons-140targz
tar ndashxzvf asterisk-sounds-140targz
tar ndashxzvf zaptel-140targz
tar ndashxzvf libpri-140targz
Giải neacuten xong chuacuteng ta nhớ thực hiện lệnh
ln ndashs usrsrcasterisk-140 usrsrcasterisk lệnh nagravey để bảo đảm goacuteildquoaddonsrdquo được biecircn dịch đuacuteng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3772
Taacutec Giả Lecirc Quốc Toagraven
37
Bacircy giờ tới phần chuacuteng ta biecircn dịch caacutec goacutei đatilde giải neacuten ở trecircn trước tiecircn lagrave goacuteizaptel kế đến lagrave libpri sau cugraveng lagrave goacutei Asterisk
2 Cagravei đặt goacutei Zaptel
Goacutei zaptel sẽ chứa tại thư mục usrsrczaptel Đaacutenh lệnh như dưới đacircy để cagraveđặt
cd usrsrczaptel
make clean make install
Lệnh nagravey thực hiện khoảng 2 phuacutet tugravey vagraveo tốc độ maacutey tiacutenh cagravei đặt sau khicagravei đặt xong sẽ trở lại dấu nhắc lệnh vagrave hiển thị một loạt caacutec thocircng baacuteo trong đoacute một số bản tin lỗi magrave chủ yếu lagrave yecircu cầu cagravei đặt caacutec goacutei phụ thuộc đatilde liệt kecirc ở trecircnếu caacutec goacutei trecircn chưa được cagravei đặt
Goacutei zaptel nagravey chứa caacutec driver cho caacutec phần cứng kết giao tiếp với asterisk
do Digium phacircn phối vagrave một số thư viện cho việc coacute thực hiện giao tiếp với phầcứng hay khocircng
Để Asterisk coacute thể chạy cugraveng với khởi động của maacutey tiacutenh chuacuteng ta cần thựchiện lệnh
make config
Lệnh nagravey sẽ tạo ra script chegraven module zaptel vagraveo kernel vagrave chạy ztconfig vagraveoluacutec khởi động maacutey Trong Redhat script nagravey sẽ được cheacutep vagraveo etcinitd chạy ở mức 3
3 Cagravei đặt goacutei libpri
Kế đến chuacuteng ta biecircn dịch goacutei libpri tại thư mục usrsrclibpri bằng lệnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3972
Taacutec Giả Lecirc Quốc Toagraven
39
make config
3 Cagravei đặt TrixBox
1 Giới thiệu
TRIXBOX được phaacutet triển từ nhacircn của ứng dụng Asterisk được tổng hợp từmột số thagravenh phần chiacutenh được phaacutet triển bởi cộng đồng phaacutet triển nguồn mAsterisk dưới bản quyền GPL Trixbox bao gồm những thagravenh phần chiacutenh cho việcấu higravenh ứng dụng thống kecirc tigravenh trạng hoạt động hệ thống lưu trữ dự phograveng v
nhacircn lagrave hệ điều hagravenh CentOS một phiecircn bản khaacutec của Redhat tất cả kết hợp vớnhau tạo thagravenh một goacutei hoagraven chỉnh Khi cagravei goacutei nagravey vagraveo maacutey tiacutenh thigrave coacute thể sử dụngnhư một tổng đagravei PBX
Caacutec thagravenh phần chiacutenh trong goacutei TRIXBOX lagrave
Asterisk PBX Thagravenh phần chiacutenh của hệ thống Trixbox
CentOS Một phiecircn bản Linux khaacutec của Redhat hoagraven toagraven miển phiacute sửdụng Lagrave nhacircn chiacutenh cho Trixbox
SugarCRM Hệ thống quan hệ khaacutech hagraveng CRM
A2Billing ndash Lagrave thagravenh phần dagravenh cho việc xacircy dựng hệ thống điện thoạitrả trước hay cograven gọi lagrave điện thọai thẻ (Calling Card)
Flash Operator Panel Bảng điều khiển giaacutem saacutet tigravenh trạng hoạt độngcủa caacutec maacutey điện thoại trong hệ thống
Web MeetMe Control Quản lyacute triển khai hệ thống điện thoại hội nghị
FreePBX Đacircy lagrave cocircng cụ với giao diện web dagravenh cho việc cấu higravenh hệthống Asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4072
Taacutec Giả Lecirc Quốc Toagraven
40
Hệ thống Lưu trữ dự phograveng vagrave thống kecirc Lagrave thagravenh phần của TRIXBOXcung cấp caacutec cocircng cụ cần thiết cho việc bảo trigrave bảo dưỡng hệ thống
Hệ thống Apache-Php-Mysql dagravenh cho giải phaacutep Webserver của hệthống
2 DOWNLOAD VAgrave LẮP ĐẶT TRIXBOX
Địa chỉ downloadhttpsourceforgenetprojectsasteriskathome
Khi download xong file Trixboxiso Hatildey dugraveng file nagravey Burn vagraveo CD ( xinlưu yacute lagrave dugraveng Nero hoặc chương trigravenh cheacutep đĩa ưa thiacutech rồi burn vagraveo cd_romchứ khocircng phải cheacutep file đoacute vagraveo cd_rom)
Sau khi coacute CD Hatildey boot từ CD nagravey để cagravei đặt trixbox
Chuacute yacute dữ liệu trecircn đĩa cứng sẽ bị xoacutea sạch để cagravei đặt trixbox Nếu trongđĩa cứng cograven dữ liệu hatildey backup tất cả trước khi tiến hagravenh lắp đặt trixbox
Tới đacircy lần lượt caacutec magraven higravenh chỉ dẫn sẽ hiện ra vagrave cứ theo hướng dẫn magrave cagraveđặt Sau khi cagravei đặt xong chuacuteng ta dugraveng Username root vagrave password password đểđăng nhập hệ thống
3 Cấu higravenh địa chỉ IP cho card mạng
Thiết lập địa chỉ IP bằng caacutech gotilde lệnh
netconfig
Chọn OK để thiếp lập
Nếu trong mạng coacute hỗ trợ DHCP thigrave hatildey chọn mục nagravey cograven nếu khocircng hatildeynhập địa chỉ IP tĩnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4172
Taacutec Giả Lecirc Quốc Toagraven
41
IP 19216801
Netmask 2552552550
Gateway 19216893254 ngotilde ra becircn ngoagravei
Primary nameserver 19216893200 thiết lập nếu coacute
Chọn OK để chấp nhận caacutec thiết lập trecircn
Sau khi hoagraven tất hatildey lagravem cho thiết lập coacute hiệu lực bằng caacutech reset lại
maacutey tiacutenh hoặc dugraveng lệnh sau
Service network stop
Service network start
Đến đacircy xem như cagravei đặt hoagraven tất bacircy giờ để cấu higravenh được Asterisk chuacutengta vagraveo một magravey khaacutec vagrave mở Internet Explorer hoặc một trigravenh duyệt web bất kỳ
nhập vagraveohttp19216801đatilde cấu higravenh ở trecircn vagrave tiến hagravenh cấu higravenh hệ thốngvới tagravei khoảng username maint vagrave password password
4 Tổ Chức Thư Mục của Asterisk
Asterisk sử dụng nhiều thư mục trecircn hệ thống linux để quản lyacute caacutec khiacutea cạnkhaacutec nhau của hệ thống như nghi nhận bản tin thoại caacutec bản tin nhắc thoại hoặcaacutec tập tin cấu higravenh Phần nagravey sẽ trigravenh bagravey caacutec thư mục chiacutenh yếu được tạo ra tronquaacute trigravenh lắp đặt vagrave được cấu higravenh trong tập tin Asteriskconf
1 etcasterisk
Thư mục etcasterisk chứa tất cả caacutec tập tin cấu higravenh của hệ thốngAsterisk ngoại trừ tập tin Zaptelconf được đặt tại thư mục etc Phần cứnZaptel đầu tiecircn được phaacutet triển bởi Jim Dixon thuộc nhoacutem Zapata Telephony
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4272
Taacutec Giả Lecirc Quốc Toagraven
42
Group để giao tiếp giữa maacutey tiacutenh với mạng điện thoại magrave Asterisk lại sửdụng phần cứng nagravey với lyacute do đoacute magrave file cấu higravenh zaptelconf khocircng nằmtrong thư mục etcasterisk
2 usrlibasteriskmodules
Thư mục usrlibasteriskmodules chứa tất cả caacutec module cần thiết đểasterisk hoạt động Becircn trong thư mục lagrave caacutec ứng dụng khaacutec nhau caacutec codeccaacutec định dạng acircm thanh(format) vagrave caacutec kecircnh thocircng tin(channel) Theo mặc địnhAsterisk sẽ nạp tất cả caacutec module vagraveo luacutec khởi động Chuacuteng ta coacute thể khocircng cho
nạp một module bất kỳ bằng caacutech khocircng khai baacuteo sử dụng trong tập tinmodulesconf Lưu yacute khi khocircng cho nạp module thigrave phải biết chắc module đoacutekhocircng lagravem ảnh hưởng hoạt động của asterisk nếu khocircng lỗi sẽ xuất hiện
3 varlibasterisk
Thư mục varlibasterisk chứa tập tin astdb vagrave một số thư mục con Tập tinastdb định vị thocircng tin cơ sở dữ liệu của Asterisk giống như Microsoft WindowsRegistry
Caacutec thư mục con của thư mục varlibasterisk bao gồm
agi-bin
Thư mục agi-bin chứa caacutec script của người dugraveng magrave Asterisk coacute thểđịnh vị sử dụng qua caacutec ứng dụng AGI
AGI lagrave phần giao tiếp với ngocircn ngữ lập trigravenh script để thực hiện mộtsố cocircng việc của Asterisk từ becircn ngoagravei
firmware
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4372
Taacutec Giả Lecirc Quốc Toagraven
43
Thư mục firmware chứa một số phần dẻo(firmware) cho caacutec thiết bịkhaacutec nhau tương thiacutech với Asterisk Hiện tại chỉ coacute thư mục con iax chứa
firmware cho thiếy bị IAXy của Digium IAXy lagrave thiết bị ATA sử dụng giaothức IAX
images
Caacutec ứng dụng thocircng tin với caacutec kecircnh hỗ trợ ảnh images thigrave sử dụng thư mụcnagravey Nhưng hiện tại caacutec kecircnh thocircng tin hầu như khocircng hỗ trợ truyền ảnh images necircthư mục nagravey cũng hiếm khi được sử dụng Tuy nhiecircn nếu caacutec thiết bị coacute hỗ trợ ththư mục nagravey trở necircn hiệu dụng
keys
Asterisk coacute thể sử dụng hệ thống khoaacute publicprivate để xaacutec minh caacutec kết nốgiữa caacutec server Asterisk thocircng qua chữ kyacute điện tử RSA Nếu đặt một khoaacute publicvagraveo thư mục keys thigrave kết nối của server đầu becircn kia coacute thể được xaacutec minh bằn
kecircnh thocircng tin coacute hỗ trợ đối với Asterisk thigrave kecircnh giao thức IAX hỗ trợ loại xaacutecminh nagravey Một khoaacute private khocircng bao giờ cocircng bố chuacuteng ta chỉ cocircng bố khoaacute public đến với server cần nối đến sau đoacute sẽ được xaacutec minh với khoaacute private nagravey Chai khoaacute public vagrave private được lưu với đuocirci pub vagrave key đặt tại thư mục keys
mohmp3
Khi cấu higravenh Asterisk sử dụng tiacutenh năng Music on Hold tiacutenh năng hoạt độngsẽ thực hiện lấy caacutec tập tin mp3 tại thư mục mohmp3 Tập tin định dạng theo chucủa Asterisk necircn khi sử dụng caacutec file Mp3 thocircng thường cần coacute sự chuyển đổi thiacutechợp trước khi cheacutep vagraveo thư mục trecircn để sử dụng
sounds
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4472
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4572
Taacutec Giả Lecirc Quốc Toagraven
45
Thư mục tmp sử dụng để lưu trữ những thocircng tin tạm để luocircn bảo đảm khocircnxảy ra tigravenh trạng đọc vagrave viết tập tin cugraveng một luacutec Khi yecircu cầu xử lyacute tập tin chuacuteng thao taacutec trecircn thư mục tmp trước khi lưu vagraveo tập tin điacutech
Tất cả caacutec lời nhắc thoại từ phiacutea người sử dụng vagrave caacutec lời nhắc thoại sử dụ
cho thao taacutec hộp voicemail đều được chứa trong thư mục voicemail Một hộp thưthoại được tạo ra ứng với một maacutey nội bộ trong tập tin voicemailconf sẽ được tra một thư mục con tương ứng cho maacutey nội bộ đoacute tại thư mục voicemail
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4672
Taacutec Giả Lecirc Quốc Toagraven
46
5 varrun
Thư mục varrun chứa thocircng tin process ID(pid) cho tất cả caacutec tiến trigravenh đang
hoạt động trong hệ thống bao gồm cả Asterisk Lưu yacute lagrave ứng với mỗi hệ điều hagravethư mục varrun coacute thể khaacutec
6 varlogasterisk
Thư mục varlogasterisk lagrave nơi Asterisk chứa tất cả caacutec tập tin nhật kyacute haycograven gọi lagrave tập tin log Chuacuteng ta coacute thể tuỳ biến caacutec loại thocircng tin được lưu trong caacutec
tập tin log khaacutec nhau qua tập tin cấu higravenh loggerconf đặt tại thư mục etcasterisk7 varlogasteriskcdr-csv
Thư mục varlogasteriskcdr-csv được sử dụng để lưu chi tiết cuộc gọi CDRThocircng tin mặc định về chi tiết thocircng tin cuộc gọi lưu trữ trong tập tin MasterCVSnhưng thường thigrave ứng với mỗi matilde accountcode sẽ tạo một thư mục riecircng để lưu ctiết cuộc gọi cho maacutey đoacute
5 Một số lệnh thao taacutec trecircn hệ thống asterisk
Asterisk coacute hai thagravenh phần được xacircy dụng tiacutech hợp với nhau vagrave chạy songsong nhau
Asterisk Server bigravenh thường chạy ở chế độ nền(background) giống caacutec sevicestrong window
Asterisk Client ở chế độ dograveng lệnh CLI giao tiếp với Asterisk Server thực thicaacutec lệnh để kiểm tra hay xem caacutec thocircng tin của server
Để Chạy vagrave dừng Asterisk ở chế độ nền chuacuteng ta thực hiện lệnh sau
etcinitdasterisk (start|stop)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4772
Taacutec Giả Lecirc Quốc Toagraven
47
Một khi Asterisk đatilde chạy chuacuteng ta coacute thể chuyển qua chế độ CLI từ dấu nhắlệnh của linux như sau
asterisk ndashr
Khi vagraveo chế độ lệnh nếu muốn thoaacutet về lại dấu nhắc linux chuacuteng ta dugraveng lệnh
CLIgtexit
Caacutec lệnh cơ bản thực hiện tại CLIgt
Bất cứ khi nagraveo chỉnh sửa caacutec tập tin cấu higravenh chuacuteng ta đều cần phải nạp lại đcaacutec thay đổi coacute hiệu lực điều đoacute thực hiện bằng lệnh
CLIgtreload
Bậc chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 debug
CLIgt SIP debug
Tắt chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 no debug
CLIgt SIP no debug
Hiển thị caacutec trạng thaacutei thocircng tin của users peers vagravechannels của SIP hoặc IAX2
CLIgt sip show users
CLIgt sip show peers
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4872
Taacutec Giả Lecirc Quốc Toagraven
48
CLIgt sip show channels
CLIgt iax2 show peers
CLIgt iax2 show users
CLIgt iax2 show channels
Đến thời điểm nagravey coacute thể noacutei chuacuteng ta đatilde hoagraven thagravenh cagravei đặt hệ thốngAsterisk cagravei đặt xong mới lagrave bước mở đầu để cho hệ thống Asterisk hoạt động vtừng ứng dụng cụ thể chuacuteng sẽ tiếp tục thực hiện caacutec giai đoạn được xem lagrave qutrọng nhất trong việc triển khai hệ thống Asterisk đoacute lagrave giai đoạn cấu higravenh hệ thốnlecircn kế hoạch Diaplan chương cograven lại đều nhắm đến mục tiecircu nagravey
4 CẤU HIgraveNH HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Sau khi hoagraven tất phần cagravei đặt hệ thống asterisk một bước quan trọng tiếp thelagrave cấu higravenh hệ thống coacute thể noacutei đacircy lagrave bước quan trọng nhất của việc khiển khai thống đến với từng ứng dụng cụ thể Trong chương nagravey xin giới thiệu caacutei nhigraven đầtiecircn về việc cấu higravenh trước khi đi sacircu hơn ở những chương sau những gigrave giới thiệ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4972
Taacutec Giả Lecirc Quốc Toagraven
49
trong chương nagravey lagrave nền moacuteng cơ bản nhưng đủ để hiểu lagravem thế nagraveo hệ thống coacute thoạt động được nội dung chiacutenh bao gồm
+ Thao taacutec cấu higravenh trecircn hệ thống tập tin của asterisk
+ Caacutech cagravei đặt phần mềm softphone trecircn cocircng nghệ sip
+ Cấu higravenh cho hai maacutey softphone liecircn lạc với nhau
+ Cấu higravenh phaacutet thocircng điệp
+ Quay số qua Sip vagrave mạng PSTN
2 Tập Tin cấu higravenh
Tất cả caacutec file cấu higravenh cho hệ thống asterisk đều nằm tại thư mục etcasterisngoại trừ file zaptelconf cấu higravenh cho phần cứng TDM nằm tại thư mục etc caacutecthức cấu higravenh giống như tập tin ini của window vậy Caacutec nội dung sau dấu chấm phảy lagrave nội dung chuacute thiacutech trong file cấu higravenh giống như chuacute thiacutech trong ngocircn ngữ
lập trigravenh C lagrave dấu Tất cả caacutec khoảng trắng trong tập tin đều được bỏ qua khocircng yacute nghĩa trong file cấu higravenh
Trong file cấu higravenh cograven coacute hai pheacutep gaacuten rất thường xuyecircn được sử dụng pheacutep gaacuten ldquo=rdquo lagrave dugraveng cho việc gaacuten caacutec biến cograven pheacutep gaacuten ldquo=gtrdquo dugraveng cho việc gaacutencaacutec đối tượng sau đacircy lagrave một viacute dụ cho file cấu higravenh
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5072
Taacutec Giả Lecirc Quốc Toagraven
50
Đacircy lagrave caacutec dograveng chuacute thiacutech
[section]
Key=value gaacuten giaacute trị cho biến
[section2]
Key=gtobject Gaacuten giaacute trị cho đối tượng
Cuacute phaacutep thực hiện giống nhau cho tất cả caacutec file cấu higravenh nhưng coacute vagravei kiểukhaacutec nhau cho mỗi file cầu higravenh dựa vagraveo thức caacutech hoạt động của chuacuteng
3 Caacutec kiểu ảnh hưởng trong tập cấu higravenh
Coacute ba kiểu caacutech thức hoạt động của tập tin cấu higravenh như sau
Kiểu Caacutech hoạt động File cầu higravenh Viacute dụ
S i m p l eGroup
Coacute hiệu lực trecircntừng dograveng trongfile
Extensionconf
Exten=gt4001dial(sip400)
O p t i o ninheritance
Dograveng khai baacuteosau thừa kếnhững thocircng sốkhai baacuteo trước
Zapataconf [channels]
Context=From_PSTN
Signalling=fxs_ks
Group=1Channel=gt1
C o m p l e xEntity
Mỗi entity nhậnmột ngữ cảnh
sipconf
iaxconf
[cisco]
Type=friend
Secret=12345
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5172
Taacutec Giả Lecirc Quốc Toagraven
51
Host=192168165
Context=NoiBo
[xten]
Type=friend
Secret=6789
Host=dynamic
Context=NoiBo
1 Simple Group
Đacircy lagrave kiểu cấu higravenh đơn giản nhất thường sử dụng trong caacutec fileextentionconf meetmeconf voicemailconf tương ứng với mỗi dograveng khai baacuteo lagravemột đối tượng coacute yacute nghĩa trecircn dograveng đoacute
Viacute dụ
Extentionconf [section]
object1=gt op1op2op3
object2=gt op1bop2bop3b
Trong viacute dụ trecircn mỗi dograveng tương ứng với caacutec toaacuten tử khaacutec nhau object1 coacute caacutectoaacuten từ op1 op2 op3 trong khi đoacute object2 lại coacute caacutec toaacuten từ op1b op2b op3b
2 Option inheritance
Đacircy lagrave cấu higravenh kiểu thừa kế thường được cấu higravenh trong caacutec file zapataconfagentconf với kiểu cấu higravenh nagravey thigrave caacutec dograveng phiacutea dưới coacute thể thừa kế caacutec thocircng sdograveng phiacutea trecircn tương ứng với mỗi section caacutec dograveng phiacutea dưới coacute thể thay đổi caacutecthocircng số cho tươngứng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5272
Taacutec Giả Lecirc Quốc Toagraven
52
Viacute dụ
Extentionconf
[section]
Op1=bas
Op2=adv
Object1=gt1
Op1=int
Object1=gt2
Với cấu higravenh trecircn coacute thể giải thiacutech như sau object1=gt1 thừa hưởng hai thocircngsố ở phiacutea trecircn đoacute lagrave op1=bas vagrave op2=adv trong khi đoacute đối với object1=gt2 với thocircngsố op1=int được khai baacuteo lại necircn object1=gt2 được thừa kế từ hai thocircng số op1=invagrave op2=adv
3 Complex Entity
Với cấu kiểu nagravey được tổ chức thagravenh nhiều entity ứng với mỗi entity coacute nhiềthocircng số được khai baacuteo mỗi entity ở đacircy chiacutenh lagrave caacutec section để khai baacuteo caacutec kecircnhthocircng tin Cấu higravenh thường được sử dụng trong caacutec file iaxconf sipconf
Viacute dụ
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5372
Taacutec Giả Lecirc Quốc Toagraven
53
[entity1]
Op1=value1
Op2=value2
[entity2]
Op1=value3
Op2=value4
Entity1 coacute caacutec giaacute trị value1 vagrave value2 cho thocircng số op1 vagrave op2 trong khi đoacute
cũng lagrave thocircng số op1 vagrave op 2 nhưng coacute caacutec giaacute trị khaacutec lagrave value3 vagrave value4 choentity2
4 Cấu higravenh giao tiếp với mạng PSTN
1 Ngữ cảnh kết nối
Để kết nối với mạng PSTN chuacuteng ta cần phải coacute một card TDM với Cổng
FXO vagrave một đường dacircy điện thoại hoặc coacute thể lagrave một tổng đagravei nội bộ PBX Cnhiều nhagrave sản xuất phần cứng khaacutec nhau nhưng trong phần cấu higravenh dưới dacircy lagrave cấhigravenh cho card zapata TDM01B của digium (card nagravey hiện nay giaacute baacuten khoảng175$)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 372
Taacutec Giả Lecirc Quốc Toagraven
3
283 Card giao tiếp với PSTN 27
284 ATA Analog Telephone Adaptors 27
29 Codecs 28
210 QoS ndash Quality of Service 28
2101 Độ trễ 29
2102 Độ trượt(Jitter) 29
Chương 3 CAgraveI ĐẶT ASTERISK 31
31 Cagravei đặt Asterisk 31
311 Download vagrave bung neacuten 31
312 Cagravei đặt goacutei Zaptel 32
313 Cagravei đặt goacutei libpri 33
32 Cagravei đặt goacutei Asterisk 33
33 Cagravei đặt TrixBox 34
331 Giới thiệu 34
332 DOWNLOAD VAgrave LẮP ĐẶT TRIXBOX 35
333 Cấu higravenh địa chỉ IP cho card mạng 35
34 Tổ Chức Thư Mục của Asterisk 36
341 etcasterisk 36
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 472
Taacutec Giả Lecirc Quốc Toagraven
4
342 usrlibasteriskmodules 36
343 varlibasterisk 37
344 varspoolasterisk 38
345 varrun 39
346 varlogasterisk 39
347 varlogasteriskcdr-csv 40
35 Một số lệnh thao taacutec trecircn hệ thống asterisk 40
Chương 4 CẤU HIgraveNH HỆ THỐNG ASTERISK 42
41 GIỚI THIỆU 42
42 Tập Tin cấu higravenh 42
43 Caacutec kiểu ảnh hưởng trong tập cấu higravenh 43
431 Simple Group 44
432 Option inheritance 44
433 Complex Entity 45
44 Cấu higravenh giao tiếp với mạng PSTN 46
441 Ngữ cảnh kết nối 46
442 Lắp đặt card TDM01B vagrave cấu higravenh 46
45 Cấu higravenh Điện thoại IP SIP phone 47
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 572
Taacutec Giả Lecirc Quốc Toagraven
5
451 Phần khai baacuteo Chung 48
452 Khai baacuteo kecircnh SIP 49
46 Giới Thiệu DialPlan 50
461 Extentions 51
462 Priorities ndash Thứ tự thực hiện 52
463 Aplications ndash Caacutec hagravem ứng dụng 53
464 Contexts - Ngữ cảnh 53
47 Ngữ cảnh thực hagravenh ứng dụng 55
471 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằngcaacutech cấu higravenh trecircn file sipconf như sau 56
472 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 805157
473 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052 58
48 Tạo diaplan 58
481 Thực hiện một viacute dụ cơ bản 58
482 Caacutec ứng dụng dial() background() vagrave goto() 59
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 672
Taacutec Giả Lecirc Quốc Toagraven
6
1 TỔNG QUAN VỀ ASTERISK
1 GIỚI THIỆU ASTERISK
Hacircn hạnh chagraveo mừng đến với thế giới diệu kỳ của Astetisk Asterisk đem đếcho người sử dụng tất cả caacutec tiacutenh năng vagrave ứng dụng của hệ thống tổng đagravei PBX
cung cấp nhiều tiacutenh năng magrave tổng đagravei PBX thocircng thường khocircng coacute được đoacute lagrave sựkết hợp giữa chuyển mạch VOIP vagrave chuyển mạch TDM đoacute lagrave khả năng mở rộnđaacutep ứng nhu cầu cho từng ứng dụnghellip
Asterisk lagrave hệ thống chuyển mạch mềm lagrave phần mềm nguồn mở được viế bằng ngocircn ngữ C chạy trecircn hệ điều hagravenh linux thực hiện tất cả caacutec tiacutenh năng củtổng đagravei PBX vagrave hơn thế nữa Asterisk ra đời vagraveo năm 1999 bởi một chagraveng trai sinh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 772
Taacutec Giả Lecirc Quốc Toagraven
7
năm 1977 tecircn lagrave Mark Spencer Anh ta viết phần mềm nagravey ban đầu khocircng ngoagraveimục điacutech hỗ trợ cho cocircng ty của migravenh trong việc liecircn lạc đagravem thoại hỗ trợ cộnđồng người sử dụng vagrave phaacutet triển Linux
Asterisk lagrave mộtPBXvagrave nhiều hơn thế Asterisk lagrave một phần mềm mang tiacutenhcaacutech mạng tin cậy matilde nguồn mở vagrave miễn phiacute magrave biến một PC rẻ tiền thocircng thườnchạy Linux thagravenh một hệ thống điện thoại doanh nghiệp mạnh mẽ Asterisk lagrave m bộ cocircng cụ matilde nguồn mở cho caacutec ứng dụng thoại vagrave lagrave một server xử lyacute cuộc gọđầy đủ chức năng Asterisk lagrave một nền tảng tiacutech hợp điện thoại vi tiacutenh hoaacute kiến truacutemở Nhiều hệ thống Asterisk đatilde được cagravei đặt thagravenh cocircng trecircn khắp thế giới Cocircnnghệ Asterisk đang phục vụ cho nhiều doanh nghiệp
Hiện nay Asterisk trecircn đagrave phaacutet triển nhanh được rất nhiều doanh nghiệp triểnkhai ứng dụng cho cocircng ty của migravenh Đacircy lagrave xu thế tất yếu của người sử dụng điệthoại vigrave caacutec cocircng ty đều coacute mạng maacutey tiacutenh vagrave cần liecircn lạc với nhau trong cocircng việcgiữa caacutec phograveng ban hoặc chi nhaacutenh vagrave cần một chi phiacute thấp thậm chiacute khocircng phải tốchi phiacute khi thực hiện caacutec cuộc gọi trecircn mạng nội bộ của cocircng ty
Khocircng goacutei gọn thocircng tin liecircn lạc trong cocircng ty magrave caacutec ứng dụng giao tiếp vớimạng PSTN hoặc mạng VOIP (như voice777) cho pheacutep gọi ra bất cứ số điện thoạnagraveo coacute trecircn mạng PSTN
Ngoagravei ra việc tiacutech hợp vagraveo caacutec ứng dụng như CRM vagrave hệ thống Outlook lagravemcho khả năng ứng dụng của Asterisk linh hoạt hơn đaacutep ứng nhu cầu cần thiết ch
người sử dụng điện thoại
Asterisk thoạt đầu được phaacutet triển trecircn GNULinux nền x86 (Intel) nhưng giờđacircy noacute cũng coacute thể biecircn dịch vagrave chạy trecircn OpenBSD FreeBSD vagrave Mac OS X vagraveMicrosoft Windows
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 872
Taacutec Giả Lecirc Quốc Toagraven
8
Sơ đồ Tổng quaacutet
Asterisk lagrave hệ thống chuyển mạch tiacutech hợp vừa lagrave cocircng nghệ truyền thốngTDM vừa lagrave chguyển mạch voip Higravenh trecircn cũng cho thấy khả năng giao tiếp của hthống Giao tiếp với điện thoại analog thocircng thường giao tiếp với thiết bị điện thovoip ngoagravei ra cograven coacute thể giao tiếp với mạng PSTN vagrave caacutec nhagrave cung cấp voip khaacutec
2 KIẾN TRUacuteC ASTERISK
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 972
Taacutec Giả Lecirc Quốc Toagraven
9
Về cơ bản kiến truacutec của Asterisk lagrave sự kết hộp giữa nền tảng cocircng nghệ đithoại vagrave ứng dụng điện thoại cocircng nghệ điện thoại cho VOIP như SIP H323 IAXMGCP caacutec cocircng nghệ điện thoại cho hệ thống chuyển mạch mạch TDM như TE1 ISDN vagrave caacutec giao tiếp đường truyền thoại Analog Caacutec ứng dụng thoại nhưchuyển mạch cuộc gọi tương taacutec thoại caller ID voicemail chuyển cuộc gọihellip
Asterisk coacute một số chức năng chiacutenh đoacuteng vai trograve quan trọng trong hệ thống
chuyển mạch cuộc gọi Khi khởi động hệ thống Asterisk thigrave chức năng DynamiModule Loader thực hiện nạp driver của thiết bị nạp caacutec kecircnh giao tiếp caacutecformat codec vagrave caacutec ứng dụng liecircn quan đồng thời caacutec hagravem API cũng được liecircn kếtnạp vagraveo hệ thống
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1072
Taacutec Giả Lecirc Quốc Toagraven
10
Sau đoacute hệ thống PBX Switching Core của Asterisk chuyển sang trạng thaacutei sẵnsagraveng hoạt động chuyển mạch cuộc gọi caacutec cuộc gọi được chuyển mạch tuỳ vagraveo
hoạch quay số (Dialplan) được thực hiện cấu higravenh trong file extensionconfChức năng Application Launchar để rung chuocircng thuecirc bao quay số định
hướng cuộc gọi kết nối với hộp thư thoạihellip
Scheduler and IO Manager đảm nhiệm caacutec ứng dụng nacircng cao caacutec chức năngđược phaacutet triển bởi cộng đồng phaacutet triển asterisk
Codec Translator xaacutec nhận caacutec kecircnh neacuten dữ liệu ứng với caacutec chuẩn khaacutec nhaucoacute thể kết hợp liecircn lạc được với nhau
Tất cả caacutec cuộc gọi định hướng qua hệ thống Asterisk đều thocircng qua caacutec giaotiếp như SIP Zaptel IAX Necircn hệ thống Asterisk phải đảm traacutech nhiệm vụ liecircn kếcaacutec giao tiếp khaacutec nhau đoacute để xử lyacute cuộc gọi
Hệ thống cũng bao gồm 4 chức năng API chiacutenh
Codec translator API caacutec hagravem đảm nhiệm thực thi vagrave giải neacuten caacutec chuẩn khaacutecnhau như G711 GMS G729hellip
Asterisk Channel API Giao tiếp với caacutec kecircnh liecircn lạc khaacutec nhau đacircy lagrave đầumối cho việc kết nối caacutec cuộc gọi tương thiacutech với nhiều chuần khaacutec nhau như SIIAX H323 Zaptelhellip
Asterisk file format API Asterisk tương thiacutech với việc xử lyacute caacutec loại file coacuteđịnh dạng khaacutec nhau như Mp3 wav gsmhellip
Asterisk Aplication API Bao gồm tất cả caacutec ứng dụng được thực thi trong hệthống Asterisk như voicemail callerIDhellip
wwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1172
Taacutec Giả Lecirc Quốc Toagraven
11
Ngoagravei ra Asterisk cograven coacute thư viện Asterisk Gateway Interface (AGI tương tựnhư CGI) - cơ chế kiacutech hoạt ứng dụng becircn ngoagravei cho pheacutep viết kịch bản phức tạp
với một số ngocircn ngữ như PHP hay Perl Noacutei chung khả năng viết caacutec ứng dụng tugravey biến rất lớn
3 MỘT SỐ TIacuteNH NĂNG CƠ BẢN
Asterisk coacute rất nhiều tiacutenh năng đatilde được giới thiệu ở trecircn nhưng để hiểu rotilde hếtất cả caacutec tiacutenh năng trecircn thật sự lagrave thaacutech thức đối với chuacuteng ta Trong phần nagraveychuacuteng tocirci sẽ giới thiệu một số tiacutenh năng với caacutec ứng dụng cụ thể để hiểu hơn về
thống asterisk
1 Voicemail (hộp thư thoại)
Đacircy lagrave tiacutenh năng cho pheacutep hệ thống nhận caacutec thocircng điệp tin nhắn thoại mỗmaacutey điện thoại được khai baacuteo trong hệ thống Asterisk cho pheacutep khai baacuteo thecircm chứnăng hộp thư thoại
Mỗi khi số điện thoại bận hay ngoagravei ldquovugraveng phủ soacutengrdquo thigrave hệ thống asteriskđịnh hướng trực tiếp caacutec cuộc gọi đến hộp thư thoại tương ứng đatilde khai baacuteo trước
Voicemail cung cấp cho người sử dụng nhiều tiacutenh năng lựa chọn như password xaacutec nhận khi truy cập vagraveo hộp thư thoại gửi mail baacuteo khi coacute thocircng điệmới
2 Call Forwarding(chuyển cuộc gọi)
Khi khocircng ở nhagrave hoặc đi cocircng taacutec magrave người sử dụng khocircng muốn bỏ lỡ tất ccaacutec cuộc gọi đến thigrave hatildey nghĩ ngay đến tiacutenh năng chuyển cuộc gọi
Đacircy lagrave tiacutenh năng thường được sử dụng trong hệ thống Asterisk Chức năng cho pheacutep chuyển một cuộc gọi đến một hay nhiều số maacutey điện thoại được định trước
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1272
Taacutec Giả Lecirc Quốc Toagraven
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ậnchuyển cuộc gọi khi khocircng trả lời chuyển cuộc gọi tức thời chuyển cuộc gọi v
thời gian định trước3 Caller ID (hiển thị số gọi)
Chức năng nagravey rất hữu dụng khi một ai đoacute gọi đến vagrave ta muốn biết chiacutenh xaacuteclagrave gọi từ đacircu vagrave trong một số trường hợp biết chắc họ lagrave ai
Ngoagravei ra Caller ID cograven lagrave chức năng cho pheacutep chuacuteng ta xaacutec nhận số thuecirc bao
gọi đến coacute nghĩa lagrave dựa vagraveo caller ID chuacuteng ta coacute tiếp nhận hay khocircng tiếp nhậncuộc gọi từ phiacutea hệ thống Asterisk Ngăn một số cuộc gọi ngoagravei yacute muốn
4 Automated attendant (chức năng IVR)
Chức năng tương taacutec thoại coacute rất nhiều ứng dụng trong thực tế khi gọi điệthoại đến một cơ quan hay xiacute nghiệp thuecirc bao thường nghe thocircng điệp nhưldquoXinchagraveo mừng bạn đatilde gọi đến cocircng ty chuacuteng Tocirci hatildey nhấn phiacutem 1 để gặp phograveng kinh
doanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquosau đoacute tuỳ vagraveo sự tương taacutec của thuecirc 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 thuecirc bao muố biết tỉ giaacute Đocircla hiện nay như thế nagraveo hay kết quả sổ số hellip tất caacutec những monmuốn trecircn đều coacute thể thực hiện qua chức năng tương taacutec thoại
5 Time and Date
Vagraveo từng thời gian cụ thể cuộc gọi sẽ định hướng đến một số điện thoại hmột chức năng cụ thể khaacutec viacute dụ trong cocircng ty giaacutem đốc muốn chỉ cho pheacutep nhacircnviecircn sử dụng maacutey điện thoại trong giờ hagravenh chaacutenh cograven ngoagravei giờ thigrave sẽ hạn chế hakhocircng cho pheacutep gọi ra becircn ngoagravei
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1372
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1472
Taacutec Giả Lecirc Quốc Toagraven
14
Asterisk thực hiện rất nhiều ngữ cảnh ứng dụng khaacutec nhau tuỳ vagraveo nhu cầu sdụng dưới dacircy lagrave những ngữ cảnh ứng dụng thường được sử dụng trong thực
triển khai hệ thống asterisk1 Tổng đagravei voip IP PBX
IP BPX
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1572
Taacutec Giả Lecirc Quốc Toagraven
15
Đacircy lagrave hệ thống chuyển mạch voip được xacircy dựng phục vụ caacutec cocircng ty coacute nhucầu thực hiện trecircn nền tảng mạng nội bộ đatilde triển khai Thay vigrave lắp đặt một hệ thố
PBX cho nhu cầu liecircn lạc nội bộ thigrave necircn lắp đặt hệ thống voip điều nagravey sẽ lagravem giảchi phiacute đaacuteng kể Hệ thống coacute thể liecircn 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 ở đacircy lagrave hiện tại Cocircng ty đatilde trang bị hệ thống PBX bacircygiờ cần trang bị thecircm để đaacutep ứng nhu cầu liecircn lạc trong cocircng ty sao cho với chi phthấp nhất giải phaacutep để thực hiện đoacute lagrave trang bị hệ thống asterisk vagrave kết nối với h
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1672
Taacutec Giả Lecirc Quốc Toagraven
16
thống PBX đang tồn tại qua luồng E1 Ngoagravei ra để tăng khả năng liecircn lạc với mạnPSTN vagrave VOIP khaacutec Cocircng Ty coacute thể thực hiện kết nối với nhagrave cung cấp dịch vụvoip
3 Kết nối giữa caacutec server Asterisk
Kết nối giữa caacutec server asterisk
Phương phaacutep trecircn ứng dụng rất hiệu quả cho caacutec cocircng ty nằm ratildei raacutec ở caacutec vtrị địa lyacute khaacutec nhau nhằm giảm chi phiacute đường dagravei Viacute dụ Cocircng ty Mẹ coacute trụ sở đặtại nước Mỹ vagrave caacutec Chi nhaacutenh đặt tại Việt Nam với caacutec địa điểm Thagravenh phố Hồ ChMinh vagrave Hagrave Nội Thocircng qua mạng WAN của Cocircng Ty caacutec cuộc gọi nội bộ giữa caacutec
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1772
Taacutec Giả Lecirc Quốc Toagraven
17
vị triacute khaacutec nhau sẽ lagravem giảm chi phiacute đaacuteng kể Ngữ cảnh nagravey về mặt phaacutep luật khocircncho cuộc gọi từ Mỹ vagraveo Việt Nam
4 Caacutec ứ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 caacutec server kết nối với hệ thống PSTN hay tổng đagravei PBXđể triển khai caacutec ứng dụng như tương taacutec thoại IVR Một viacute dụ cho ứng dụng tươtaacutec thoại đoacute lagrave cho biết kết quả sổ số hay kiểm tra cước cuộc gọi giống dịch v19001260 vậy Ứng dụng VoiceMail thu nhận những tin nhắn thoại từ phiacutea thuecirc bao giống như chức năng hộp thư thoại của Bưu Điện Thagravenh phố triển khai Cograve
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1872
Taacutec Giả Lecirc Quốc Toagraven
18
chức năng điện thoại hội nghị thiết lập cho nhiều maacutey điện thoại cugraveng noacutei chuyệvới nhau
5 Chức năng Phacircn phối cuộc gọi tự động ACD
Phacircn phối cuộc gọi với hagraveng đợi
ACD(Automatic Call Distribution) Phacircn phối cuộc gọi tự động
Đacircy lagrave chức năng ứng dụng cho nhu cầu chăm soacutec khaacutech hagraveng hay nhận phảnhổi từ phiacutea khaacutech hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1972
Taacutec Giả Lecirc Quốc Toagraven
19
Cocircng ty coacute khả năng tiếp nhận cugraveng một luacutec 10 cuộc gọi như thế cuộc gọi th11 gọi đến thigrave hệ thống giải quyết như thế nagraveo Bigravenh thường thigrave sẽ nghe tiacuten hiệ
bận nhưng với chức năng phacircn phối cuộc gọi sẽ đưa thuecirc bao đoacute vagraveo hagraveng đợi đchờ trả lời trong khi chờ trả lời cuộc gọi thuecirc bao coacute thể nghe những bagravei haacutet hay dasterisk cung cấp trong luacutec nagravey nếu 1 trong mười số điện thoại trở về trạng thaacutei rthigrave cuộc gọi đang chờ sẽ được trả lời Giống như chức năng của dịch vụ 1080 ha116 của Bưu Điện Thagravenh Phố vậy
2 CAacuteC KHAacuteI NIỆM TRONG HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Trong chương nagravey sẽ giải thiacutech rotilde caacutec khaacutei niệm cơ bản liecircn quan đến hệ thốnasterisk cung cấp những kiến thức nền tảng những khaacutei niệm cần thiết để thiếttriển khai xacircy dựng hệ thống điện thoại với Asterisk
2 PBX - Private Branch Exchange
PBX hay cograven gọi lagrave PABX - Private Automatic Branch Exchange lagrave hệ thốngtổng đagravei nội bộ được đặt tại nhagrave thuecirc bao từ Automatic ở đacircy muốn noacutei đến lagrave hthống tổng đagravei điện tử tự động nhưng hiện nay đa số lagrave tổng đagravei PBX điện tử tđộng necircn từ trecircn thực sự khocircng cograven cần thiết nữa
PBX với mục tiecircu chia sẻ nhiều thuecirc bao nội bộ gọi ra thế giới becircn ngoagraveithocircng qua một vagravei đường trung kế hay noacutei một caacutech khaacutec PBX lagrave hệ thống trungchuyển giữa caacutec đường dacircy điện thoại becircn ngoagravei từ cocircng ty điện thoại vagrave maacutey điệthoại nội bộ trong tổng đagravei PBX Vigrave thế necircn số lượng maacutey điện thoại nội bộ luocircnhiều hơn số đường dacircy nối đến PBX từ becircn ngoagravei
wwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2072
Taacutec Giả Lecirc Quốc Toagraven
20
PBX thực hiện chuyển mạch cuộc gọi caacutec maacutey điện thoại nội bộ với nhau vvới caacutec maacutey điện thoại becircn ngoagravei thocircng qua đường trung kế Đồng thời thực hiệ
chuyển mạch caacutec cuộc gọi điện thoại từ becircn ngoagravei vagraveo caacutec maacutey điện thoại nội bộNgoagravei việc chuyển mạch cuộc gọi PBX cung cấp nhiều tiacutenh năng sử dụng
cho nhiều mục điacutech khaacutec nhau của khaacutech hagraveng magrave bản thacircn caacutec đường dacircy điệnthoại từ cocircng ty điện thoại kết nối đến khocircng thể thực hiện được caacutec tiacutenh năng ntương taacutec thoại(IVR) Voicemail phacircn phối cuộc gọi tự động(ADC)hellip
Hiện nay với việc phaacutet triển mạnh mẽ của cocircng nghệ VoIP chuacuteng ta cograven coacutethecircm thuật ngữ IP PBX Đacircy lagrave hệ thống chuyển mạch PBX với cocircng nghệ Voip
3 VOIP - Voice Over Internet Protocol
Voice over Internet Protocol (VoIP) lagrave một cocircng nghệ cho pheacutep truyền thoạisử dụng giao thức mạng IP trecircn cơ sở hạ tầng sẵn coacute của mạng internet Voip lagrave mtrong những cocircng nghệ viễn thocircng đang được quan tacircm nhất hiện nay khocircng chỉ đố
với nhagrave khai thaacutec caacutec nhagrave sản xuất magrave cograven cả với người sử dụng dịch vụVoip coacute thể vừa thực hiện mọi loại cuộc gọi như trecircn mạng điện thoại kecircn
truyền thống (PSTN) đồng thời truyền dữ liệu trecircn cơ sở mạng truyền dữ liệu Dcaacutec ưu điểm về giaacute thagravenh dịch vụ vagrave sự tiacutech hợp nhiều loại higravenh dịch vụ necircn voihiện nay được triển khai một caacutec rộng ratildei
Dịch vụ điện thoại voip lagrave dịch vụ ứng dụng giao thức IP nguyecircn tắc củaVoIP bao gồm việc số hoaacute tiacuten hiệu tiếng noacutei thực hiện việc neacuten tiacuten hiệu số chia nhcaacutec goacutei nếu cần vagrave truyền goacutei tin nagravey qua mạng tới nơi nhận caacutec goacutei tin nagravey đượraacutep lại theo đuacuteng thứ tự của bản tin giải matilde tiacuten hiệu tương tự phục hồi lại tiếng n ban đầu
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2172
Taacutec Giả Lecirc Quốc Toagraven
21
Caacutec cuộc gọi trong VoIP dựa trecircn cơ sở sử dụng kết hợp cả chuyển mạchkecircnh vagrave chuyển mạch goacutei Trong mỗi loại chuyển mạch đều coacute ưu nhược điể
riecircng của noacute Trong kỹ thuật chuyển mạch kecircnh giagravenh riecircng cho một kecircnh truyềngiữa hai thiết bị đầu cuối thocircng qua caacutec node chuyển mạch trung gian Trongchuyển mạch kecircnh tốc độ truyền dẫn luocircn luocircn cố định(nghĩa lagrave băng thocircng khocircnđổi) với mạng điện thoại PSTN tốc độ nagravey lagrave 64kbps truyền dẫn trong chuyểmạch kecircnh coacute độ trễ nhỏ
Trong chuyển mạch goacutei caacutec bản tin được chia thagravenh caacutec goacutei nhỏ gọi lagrave caacutec
goacutei nguyecircn tắc hoạt động của noacute lagrave sử dụng hệ thống lưu trữ vagrave chuyển tiếp caacutec gtin trong nuacutet mạng Đối với chuyển mạch goacutei khocircng tồn tại khaacutei niệm kecircnh riecircng băng thocircng khocircng cố định coacute nghĩa lagrave coacute thể thay đổi tốc độ truyền kỹ thuật chuyểmạch goacutei phải chịu độ trễ lớn vigrave trong chuyển mạch goacutei khocircng quy định thời giancho mỗi goacutei dữ liệu tới điacutech mỗi goacutei coacute thể đi bằng nhiều con đường khaacutec nhau đtới điacutech chuyển mạch goacutei thiacutech hợp cho việc truyền dữ liệu vigrave trong mạng truyền dliệu khocircng đogravei hỏi về thời gian thực như thoại để sử dụng ưu điểm của mỗi lo
chuyển mạch trecircn thigrave trong voip kết hợp sử dụng cả hai loại chuyển mạch kecircnh vchuyển mạch goacutei
4 PSTN ndash Public Switched Telephone Network
PSTN lagrave mạng chuyển mạch điện thoại cocircng cộng hay noacutei caacutech khaacutec lagrave mạngkết nối tất cả caacutec hệ thống tổng đagravei chuyển mạch-mạch
Để hiểu rotilde hơn hatildey xem xeacutet mạng PSTN với mạng Internet về khiacutea cạnhchuyển thoại trecircn đoacute Chuyển mạch mạch muốn thực hiện cuộc gọi giữa hai thu bao thigrave hệ thống phải giagravenh riecircng một kecircnh truyền 64kbps để chuyển tải tiacuten hiệthoại trecircn đoacute Cograven cuộc gọi điện thoại trecircn mạng Internet thigrave tiacuten hiệu thoại đượđoacuteng goacutei vagrave chuyển đi trecircn cugraveng kecircnh truyền với nhiều dịch vụ khaacutec Vigrave lẽ đoacute chấlượng cuộc gọi trecircn mạng PSTN bao giờ cũng tốt hơn trecircn mạng Internet nhưng đổ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2272
Taacutec Giả Lecirc Quốc Toagraven
22
lại chi phiacute lại đắc hơn rất nhiều đặc biệt lagrave caacutec cuộc gọi quốc tế necircn phải cần nhắc kỹ khi sử dụng
PSTN được phaacutet triển trecircn chuẩn ITU(International TelecommunicationUnion) cograven mạng Internet được phaacutet triển trecircn chuẩn IETF(Internet EngineeringTask Force) cả hai mạng trecircn đều sử dụng địa chỉ để định tuyến cuộc gọi PSTN sdụng caacutec con số điện thoại để chuyển mạch cuộc gọi giữa caacutec tổng đagravei điện thotrong khi đoacute trecircn mạng Internet địa chỉ IP sẽ được sử dụng để định tuyến caacutec goacutethoại
5 TDM ndash Time Division Multiplexing
Lagrave kỹ thuật gheacutep kecircnh phacircn chia thời gian nhiều tiacuten hiệu coacute thể truyền đồngthời trecircn một đường truyền TDM được sử dụng chuyển thoại trong hệ thống mạPSTN Coacute hai chuẩn gheacutep kecircnh TDM cơ bản lagrave E1 với 30 kecircnh thoại trecircn mộtkhung tốc độ 2Mbps vagrave T1 với 24 kecircnh thoại tốc độ 15Mbps
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2372
Taacutec Giả Lecirc Quốc Toagraven
23
Higravenh Minh họa gheacutep kecircnh phacircn chia theo thời gian
6 Caacutec higravenh thức baacuteo hiệu giao tiếp TDM
1 FXO vagrave FXS
FXO (Foreign Exchange Office) lagrave thiết bị nhận tiacuten hiệu từ tổng đagravei gửi đếnnhư dograveng chuocircng tiacuten hiệu nhấc gaacutec maacutey tiacuten hiệu mời quay số gửi vagrave nhận tiacuten hiệthoạihellip FXO giống như maacutey Fax hay modem dial-up 56k vậy Dugraveng để kết nối vớ
đường dacircy điện thoại
FXS (Foreign Exchange Station) lagrave thiết bị tại nơi cung cấp đường dacircy điệnthoại thiết bị FXS sẽ cung cấp tiacuten hiệu mời quay số(dialtone) dograveng chuocircng hồi acircmchuocircng(ring tone) Trong đường dacircy Analog FXS cung cấp dograveng chuocircng vagrave điện aacutepcho điện thoại hoạt động viacute dụ FXS cung cấp điện aacutep -48VDC đến maacutey điện tho
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2472
Taacutec Giả Lecirc Quốc Toagraven
24
Analog trong suốt thời gian đagravem thoại vagrave cung cấp 90VAC(20hz) để phaacutet điện aacuteprung chuocircng Thiết bị FXS phaacutet cograven thiết bị FXO nhận
Card TDM sử dụng trong hệ thống asterisk thường tiacutech hợp vừa thiết bị FXOvừa lagrave thiết bị FXS(Giống bộ ATA) FXO để kết nối với đường dacircy điện thoại cograveFXS dugraveng để kết nối với maacutey điện thoại analog thocircng thường dugraveng để chuyển mạcuộc gọi TDM qua hệ thống asterisk(Xem thecircm trong phần cấu higravenh cho kecircnhTDM)
Toacutem lại cần nắm
FXS được kết nối với FXO giống với đường dacircy điện thoại nối với maacuteyđiện thoại
FXS cung cấp nguồn cho điện thoại FXO(điện thoại Analog)
Higravenh a) Maacutey điện thoại vai trograve FXO kết nối với FXS(PSTN) Higravenh b) PBXkết nối với FXO vagrave FXS Higravenh c) ATA đoacuteng vai trograve như FXS để kết nối với maacuteyđiện thoại vai trograve FXO
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2572
Taacutec Giả Lecirc Quốc Toagraven
25
2 Baacuteo hiệu Analog giữa đầu cuối vagrave tổng đagravei
Khi chuacuteng ta nhấc mấy điện thoại để gọi thigrave nghe tiacuten hiệu mời quay số kh
cuộc gọi gọi đầu becircn kia bị bận thigrave chuacuteng ta nghe tiacuten hiệu bận(busy tone) caacutec loạtiacuten hiệu như vậy gọi lagrave caacutec tiacuten hiệu baacuteo hiệu analog Caacutec tiacuten hiệu như Mời quay sốtiacuten hiệu bận rung chuocircng trạng thaacutei nhấc gaacutec maacutey Caacutec loại tiacuten hiệu trecircn được trađổi giữa thiết bị FXO vagrave FXS
Coacute nhiều phương thức baacuteo hiệu khaacutec nhau ứng với từng nơi sử dụng vigrave thếtại nơi kết nối với đường dacircy điện thoại cần xem xeacutet họ đang sử dụng phương th
baacuteo hiệu gigrave từ đoacute chuacuteng ta khai thaacutec loại tiacuten hiệu baacuteo hiệu cho thiacutech hợp caacutec phương thức baacuteo hiệu như Loop Start Ground Start Một minh họa cho việc sửdụng sai phương thức baacuteo hiệu lagrave khi chuacuteng ta khai baacuteo phương thức baacuteo hiệu giữhệ thống Asterisk vagrave đường dacircy điện thoại khaacutec nhau thigrave dẫn đến Asterisk sẽ khocircnnhận biết được tiacuten hiệu gaacutec maacutey điều nagravey sẽ lagravem cho asterisk khocircng baacuteo giờ giải tỏđược cuộc gọi để thực hiện cuộc gọi mới
3 Baacuteo hiệu giữa caacutec tổng đagravei
SS7 hệ thống baacuteo hiệu số 7 được phaacutet triển bởi ATampT vagrave ITU lagrave hệ thống baacuteo hiệu chuyển caacutec cuộc gọi giữa caacutec tổng đagravei trong mạng PSTN Trong hệ thốn baacuteo hiệu số 7 tiacuten hiệu chuyển tải trecircn đường trung kế kết nối giữa hai tổng đagravei gồcoacute hai mạch riecircng một cho thoại vagrave một cho baacuteo hiệu như vậy thoại vagrave baacuteo hiệu cthể chuyển trecircn hai kecircnh vật lyacute khaacutec nhau
7 Baacuteo Hiệu trecircn mạng điện thoại VoIP
1 SIP Session Initiation Prorocol
Sip lagrave giao thức Internet dagravenh cho baacuteo hiệu VoIP được phaacutet triển bởi IETFcung cấp vagravei chức năng giống hệ thống baacuteo hiệu số 7 nhưng dựa trecircn nền IP Mộchức năng giống baacuteo hiệu số 7 đoacute lagrave baacuteo hiệu vagrave thoại chuyển tải trecircn hai kecircnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2672
Taacutec Giả Lecirc Quốc Toagraven
26
riecircng Giao thức SIP thực hiện chức năng thiết lập vagrave baacuteo hiệu cuộc gọi khi noacutei đế baacuteo hiệu cuộc gọi lagrave chỉ định caacutec tiacuten hiệu baacuteo hiệu như tiacuten hiệu mời quay số tiacutehiệu bậnhellip
2 Proxy server
Mặc dầu hai thiết bị SIP coacute thể liecircn lạc trực tiếp với nhau để khởi tạo cuộgọi nhưng trong giao thức SIP cograven coacute chức năng Proxy để linh hoạt hơn trong thiếlập cuộc gọi Proxy Server sẽ lagravem nhiệm vụ ghi nhận tất cả caacutec số điện thoại đư phiacutea client đăng kyacute đến qua bản tin ldquoRegistrationrdquo Khi một client khaacutec thực hiện
cuộc gọi thigrave thực sự Client đoacute khocircng biết số điện thoại cần gọi đang ở đacircu necircn thocircnqua Proxy server để tigravem kiếm thiết lập cuộc gọi
+
Higravenh Đăng kyacute từ Client đến SIP Proxy Với Giao thức SIP đường baacuteo hiệu vagravethoại riecircng
3 RTP vaacute NAT
Caacutec cuộc gọi trecircn Internet với giao thức SIP được chia thagravenh caacutec goacutei thoại vagraveđược chuyển qua giao thức RTP(Real Time Protocol) RTP lagrave giao thức khocircng chỉthực hiện chuyển caacutec goacutei thoại qua Internet magrave cograven coacute cả video nữa Một cuộc gọ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2772
Taacutec Giả Lecirc Quốc Toagraven
27
thocircng thường coacute hai hướng thocircng tin lagrave nhận vagrave phaacutet RTP lagravem việc chuyển caacutec goacutedữ liệu thoại cũng trecircn hai hướng
NAT Network Address Translators lagrave một trở ngại lớn trong giao thức RTPMạng sử dụng NAT lagrave một mạng chia sẻ nhiều địa chỉ IP nội bộ với một địa chỉ ICocircng cộng để kết nối với thế giới becircn ngoagravei NAT dugraveng để chia sẻ nhiều maacutey tiacutentrong mạng LAN nội bộ sử dụng được Internet nhưng cũng chiacutenh vigrave thế magrave caacutec maacutetiacutenh nội bộ gặp khoacute khăn trong việc thực hiện cuộc gọi VoIP qua Internet Đoacute chiacutenhlagrave vấn để trở ngại khi truyền thoại qua giao thức RTP
Higravenh Minh họa hoạt động của NAT
Trong Giao thức RTP như chuacuteng ta đatilde biết đoacute lagrave thoại được chuyển trecircn haiđường khaacutec nhau lagrave đường phaacutet vagrave đường thu Vấn đề NAT nằm ở chỗ tiacuten hiệthoại từ becircn ngoagravei vagraveo becircn trong qua giao thức RTP khocircng thực hiện được cograven chiềungược lại thigrave thực hiện tốt Hay noacutei caacutech khaacutec vấn đề NAT lagravem cho caacutec cuộc gọi t
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2872
Taacutec Giả Lecirc Quốc Toagraven
28
Internet đagravem thoại vagraveo caacutec maacutey nội bộ qua NAT thigrave khocircng nghe được cograven trongtrường hợp caacutec cuộc gọi từ caacutec maacutey nội bộ ra caacutec maacutey internet thigrave nghe tốt
Vấn đề NAT trecircn được giải quyết trong Asterisk bằng việc khai baacuteo thocircng số NAT=yes trong cấu higravenh kecircnh giao thức SIP
4 IAX ndash Inter Asterisk eXchange
IAX lagrave giao thức baacuteo hiệu Voip được phaacutet triển bởi taacutec giả của phần mềmAsterisk để khắc phục những hạn chế trong giao thức SIP Khocircng giống như giathức SIP chuyển tải thoại vagrave baacuteo hiệu trecircn hai kecircnh khaacutec nhau (out of band) IAXchuyển tải thoại vagrave baacuteo hiệu trecircn cugraveng một kecircnh(in band) IAX giải quyết được vấđề NAT đề cập trecircn phần giao thức SIP Mặc khaacutec IAX lagrave giao thức tối ưu trongviệc sử dụng băng thocircng cho pheacutep nhiều goacutei dữ liệu thoại trecircn cugraveng một IP headecơ chế chuyển tải nhiều cuộc gọi trecircn cugraveng một goacutei IP được gọi lagrave trung kế(Trunk)
Coacute thể giải thiacutech thecircm cơ chế trung kế như sau Giả sử Tocirci cần gửi 5 bức thtới người bạn của Tocirci Tocirci sẽ coacute hai higravenh thức để thực hiện thứ nhất lagrave mỗi bức tTocirci bỏ vagraveo một phong bigrave vậy tổng cộng tocirci phải sử dụng 5 phong bigrave để gửi đi 5 bứthư Caacutech thứ hai lagrave Tocirci bỏ 5 bức thư vagraveo 1 phong bigrave vagrave gửi đi vậy tổng cộng Tocircchỉ tốn 1 phong bigrave Qua phacircn tiacutech trecircn rotilde ragraveng việc 5 bức thư vagraveo một phong bigrave sẽtiết kiệm hơn so với 5 bức thư với 5 phong biacute Cơ chế trecircn cũng giống như nhiềcuộc gọi được đoacuteng thagravenh goacutei vagrave chuyển đi trecircn đường trung kế
Toacutem lại IAX lagrave giao thức dagravenh cho VoIP mới nhất cho đến thời điểm nagravey vớinhiều ưu điểm hấp dẫn như
+ Tối thiểu sử dụng băng thocircng
+ Trong suốt với NAT
+ Hiệu quả với cơ chế trung kế
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2972
Taacutec Giả Lecirc Quốc Toagraven
29
8 Thiết Bị VoIP
1 Voip Phone
Đacircy lagrave thiết bị phần cứng kết nối với mạng VoIP giống như maacutey điện thoại đ bagraven thocircng thường nhưng dagravenh cho VoIP cần phải thực hiện cấu higravenh trước khi sửdụng
Lưu yacute một số tiacutenh năng khi thực hiện mua thiết bị điện thoại VoIP
+ Low bandwidth hỗ trợ Codec nagraveo G729 lagrave tốt nhất hiện nay
+ Web Interface Phải coacute giao tiếp thiết lập cấu higravenh thacircn thiện dễ sử dụng
+ Audio Interface Coacute speaker phone hay khocircng
Giaacute thagravenh của điện thoại voip IP đắc hơn điện thoại thocircng thường giaacute khoảntrecircn dưới 100$ một caacutei
Higravenh Maacutey Điện Thoại VoIP
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3072
Taacutec Giả Lecirc Quốc Toagraven
30
2 Softphone
Lagrave một phần mềm được cagravei trecircn maacutey tiacutenh thực hiện tất cả caacutec chức năng giốn
như thiết bị điện thoại Voip cần lưu yacute khi sử dụng softphone lagrave maacutey tiacutenh phải ccard acircm thanh headphone vagrave firewall khocircng bị khoacutea
Sử dụng softphone với hệ thống Asterisk necircn dugraveng softphone với cocircng nghệgiao thức mới dagravenh cho Asterisk đoacute lagrave IAX
Higravenh Điện Thoại Softphone
3 Card giao tiếp với PSTN
Muốn cho pheacutep caacutec maacutey điện thoại nội bộ trong hệ thống Asterisk kết nối vthực hiện cuộc gọi với mạng PSTN chuacuteng ta cần phải coacute thiết bị phần cứng tươthiacutech Thiết bị phần cứng sử dụng cho hệ thống Asterisk do chiacutenh taacutec giả lập cocircng
Digium phacircn phối đacircy cũng chiacutenh lagrave yacute tưởng lớn trong việc phacircn phối phần mềmAsterisk lagrave hệ thống nguồn mở sử dụng miễn phiacute
Thiết bị phần cứng thường kyacute hiệu bắt đầu bằng cụm từ TDMxyB trong đoacute lagrave số lượng port FXS y lagrave số lượng port FXO giaacute trị tối đa của x vagrave y lagrave 4 viacute dụcard TDM22B coacute nghĩa lagrave coacute 2 fort FXS vagrave 2 port FXO
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3172
Taacutec Giả Lecirc Quốc Toagraven
31
Higravenh Card TDM22B gồm 4 port 2 FXS vagrave 2 FXO
4 ATA Analog Telephone Adaptors
ATA lagrave thiết bị kết nối với điện thoại Analog thocircng thường đến mạng VoIPmột thiết bị ATA gồm coacute hai loại port RJ-11 để kết nối với maacutey điện thoại analo
thocircng thường cograven RJ-45 để kết nối với mạng VoIP
ATA thực sự lagrave thiết bị FXS chuyển đổi tiacuten hiệu Analog sang tiacuten hiệu số sửdụng cho mạng VoIP để tận dụng maacutey điện thoại Analog necircn trang bị thiết bị ATAthay vigrave phải trang bị điện thoại VoIP
Thiết bị ATA sử dụng với giao thức IAX được Digium phacircn phối lagrave thiết bịATA được sử dụng rộng ratildei với Asterisk coacute tecircn gọi lagrave IAXy
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3272
Taacutec Giả Lecirc Quốc Toagraven
32
Higravenh Thiết bị ATA
9 Codecs
Thuật Toaacuten codecs(CompressorDe-compressor) lagrave một tập caacutec quy luật đượcsử dụng để chuyển đổi caacutec tiacuten hiệu thoại dạng Analog sang tiacuten hiệu số vagrave ngược lạ
Coacute nhiều thuật toaacuten codec để thực hiện chuyển đổi tiacuten hiệu analog sang tiacuten
hiệu số dạng nhị phacircn (01) như G711 GSM G729hellipỨng với mỗi thuật toaacuten coacutenhững ưu điểm riecircng đặc biệt lagrave việc tối ưu sử dụng băng thocircng trecircn đường truyềMục tiecircu cuối cugraveng lagrave caacutec thuật toaacuten đưa ra phải đảm bảo chất lượng cuộc gọi nhvagrave tiết kiệm băng thocircng nhất
G729 lagrave thuật toaacuten codec tốt nhất hiện nay trong hệ thống VoIP Với hệthống Asterisk để sử dụng thuật toaacuten nagravey cần phải mua bản quyền sử dụng vigrave đacircy
codec khocircng miễn phiacute sử dụng
10 QoS ndash Quality of Service
Caacutec yếu tố ảnh hưởng đến chất lượng của dịch vụ đối với VoIP đoacute lagrave caacuteyếu ảnh hưởng đến chất lượng tiacuten hiệu thoại
1 Độ trễ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3372
Taacutec Giả Lecirc Quốc Toagraven
33
Thoại lagrave dịch vụ mang tiacutenh thời gian thực rất cao vigrave thế trễ lagrave yếu tố ảnhhưởng rất lớn đến chất lượng dịch vụ Trễ được định nghĩa lagrave khoảng thời gian tiacute
từ luacutec tiacuten hiệu thoại đi từ miệng người noacutei tới tai người nghe Trễ lagrave yếu tố khocircnthể traacutenh khỏi độ trễ đối với mạng điện thoại truyền thống (mạng PSTN) khoảng50ms đến 70ms theo khiến nghị của ITU-T để đảm bảo chất lượng cho hệ thốVoIP thigrave độ trễ từ đầu phaacutet tới đầu thu hoặc ngược lại khocircng được vượt quaacute 150mkhi magrave độ trễ vượt quaacute 400ms đến 500ms thigrave khocircng thể chấp nhận được
Caacutec nguyecircn nhacircn gacircy ra trễ bao gồm Trễ trecircn mạng lưới trễ trecircn bộ mả hoacutea
giải matilde trễ trong quaacute trigravenh đoacuteng goacutei trễ bộ đệm trễ xử lyacute tiếng noacuteihellip2 Độ trượt(Jitter)
Nguyecircn nhacircn gacircy ra trượt lagrave goacutei tiacuten hiệu thoại trong quaacute trigravenh truyền từnguồn đến điacutech sẽ gặp phải những điều kiện khaacutec nhau trecircn mạng lưới do đoacute thườđến điacutech với những khoảng trễ khaacutec nhau Đacircy lagrave tiacutenh khocircng đồng nhất của trễ Mnguyecircn nhacircn khaacutec của trượt đối với ứng dụng PC to PC lagrave do việc sử dụng hệ điề
hagravenh phi thời gian thực caacutec goacutei tin thoại phải đợi hệ điều hagravenh xử lyacute trong nhữnkhoảng thời gian khaacutec nhau khi magrave hệ điều hagravenh đang phải xử lyacute đối với caacutec ứndụng khaacutec
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3472
Taacutec Giả Lecirc Quốc Toagraven
34
Higravenh Nguyecircn nhacircn xảy ra trượt
Để loại bỏ tiacutenh khocircng đồng nhất của trễ người ta thiết kế caacutec bộ đệm t(Jitter Buffer) tại nơi đến của caacutec goacutei tin caacutec goacutei tin đến với caacutec khoảng caacutech khaacutecnhau về thời gian được lưu tại bộ đệm rồi phaacutet khỏi bộ đệm với khoảng trễ n
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3572
Taacutec Giả Lecirc Quốc Toagraven
35
nhau Khi bộ đếm coacute kiacutech thước cagraveng lớn thigrave khả năng loại bỏ tiacutenh khocircng đồng nhấcagraveng lớn tuy nhiecircn việc sử dụng bộ đệm sẽ gacircy ra hiện tượng trễ trong ứng dụnthoại do đoacute cần coacute bagravei toaacuten cacircn đối giữa độ trễ vagrave độ trượt
Ngoagravei 2 nguyecircn nhacircn trecircn cograven một số nguyecircn nhacircn nữa ảnh hưởng đến chấtlượng thoại như độ mất goacutei giới hạn băng thocircng tiếng vọng
3 CAgraveI ĐẶT ASTERISK
1 Cagravei đặt Asterisk
1 Download vagrave bung neacuten
Để cagravei đặt Asterisk đầu tiecircn chuacuteng ta cần phải cagravei đặt hệ điều hagravenh linux trecircnmaacutey tiacutenh của migravenh Coacute thể cagravei hệ điều hagravenh Linux Fedora CentOS Redhat hoặcDebian Caacutec goacutei phần mềm phụ thuộc phải coacute trong hệ điều hagravenh Linux trước khcagravei Asterisk bao gồm
bison
gcc
kernel-source
libtermcap-devel
ncurses-devel
openssl096b
openssl-devel
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3672
Taacutec Giả Lecirc Quốc Toagraven
36
Sau khi hoagraven tất caacutec bước trecircn chuacuteng ta tiến hagravenh download phần mềmasterisk với phiecircn bản mới nhất
cd usrsrc
wgetftpftpdigiumcompubasteriskasterisk-140targz
wgetftpftpdigiumcompubasteriskasterisk-addons-140targz
wgetftpftpdigiumcompubasteriskasterisk-sounds-140targz
wgethttpftpdigiumcompubzaptelzaptel-140targz
wgethttpftpdigiumcompublibprilibpri-140targz
Việc download coacute thể nhanh hay chậm tugravey vagraveo tốc độ trecircn đường internet saukhi download hoagraven thagravenh chuacuteng ta tiến hagravenh bung neacuten caacutec goacutei ra thư mục chỉ định
tar ndashxzvf asterisk-140targz
tar ndashxzvf asterisk-addons-140targz
tar ndashxzvf asterisk-sounds-140targz
tar ndashxzvf zaptel-140targz
tar ndashxzvf libpri-140targz
Giải neacuten xong chuacuteng ta nhớ thực hiện lệnh
ln ndashs usrsrcasterisk-140 usrsrcasterisk lệnh nagravey để bảo đảm goacuteildquoaddonsrdquo được biecircn dịch đuacuteng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3772
Taacutec Giả Lecirc Quốc Toagraven
37
Bacircy giờ tới phần chuacuteng ta biecircn dịch caacutec goacutei đatilde giải neacuten ở trecircn trước tiecircn lagrave goacuteizaptel kế đến lagrave libpri sau cugraveng lagrave goacutei Asterisk
2 Cagravei đặt goacutei Zaptel
Goacutei zaptel sẽ chứa tại thư mục usrsrczaptel Đaacutenh lệnh như dưới đacircy để cagraveđặt
cd usrsrczaptel
make clean make install
Lệnh nagravey thực hiện khoảng 2 phuacutet tugravey vagraveo tốc độ maacutey tiacutenh cagravei đặt sau khicagravei đặt xong sẽ trở lại dấu nhắc lệnh vagrave hiển thị một loạt caacutec thocircng baacuteo trong đoacute một số bản tin lỗi magrave chủ yếu lagrave yecircu cầu cagravei đặt caacutec goacutei phụ thuộc đatilde liệt kecirc ở trecircnếu caacutec goacutei trecircn chưa được cagravei đặt
Goacutei zaptel nagravey chứa caacutec driver cho caacutec phần cứng kết giao tiếp với asterisk
do Digium phacircn phối vagrave một số thư viện cho việc coacute thực hiện giao tiếp với phầcứng hay khocircng
Để Asterisk coacute thể chạy cugraveng với khởi động của maacutey tiacutenh chuacuteng ta cần thựchiện lệnh
make config
Lệnh nagravey sẽ tạo ra script chegraven module zaptel vagraveo kernel vagrave chạy ztconfig vagraveoluacutec khởi động maacutey Trong Redhat script nagravey sẽ được cheacutep vagraveo etcinitd chạy ở mức 3
3 Cagravei đặt goacutei libpri
Kế đến chuacuteng ta biecircn dịch goacutei libpri tại thư mục usrsrclibpri bằng lệnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3972
Taacutec Giả Lecirc Quốc Toagraven
39
make config
3 Cagravei đặt TrixBox
1 Giới thiệu
TRIXBOX được phaacutet triển từ nhacircn của ứng dụng Asterisk được tổng hợp từmột số thagravenh phần chiacutenh được phaacutet triển bởi cộng đồng phaacutet triển nguồn mAsterisk dưới bản quyền GPL Trixbox bao gồm những thagravenh phần chiacutenh cho việcấu higravenh ứng dụng thống kecirc tigravenh trạng hoạt động hệ thống lưu trữ dự phograveng v
nhacircn lagrave hệ điều hagravenh CentOS một phiecircn bản khaacutec của Redhat tất cả kết hợp vớnhau tạo thagravenh một goacutei hoagraven chỉnh Khi cagravei goacutei nagravey vagraveo maacutey tiacutenh thigrave coacute thể sử dụngnhư một tổng đagravei PBX
Caacutec thagravenh phần chiacutenh trong goacutei TRIXBOX lagrave
Asterisk PBX Thagravenh phần chiacutenh của hệ thống Trixbox
CentOS Một phiecircn bản Linux khaacutec của Redhat hoagraven toagraven miển phiacute sửdụng Lagrave nhacircn chiacutenh cho Trixbox
SugarCRM Hệ thống quan hệ khaacutech hagraveng CRM
A2Billing ndash Lagrave thagravenh phần dagravenh cho việc xacircy dựng hệ thống điện thoạitrả trước hay cograven gọi lagrave điện thọai thẻ (Calling Card)
Flash Operator Panel Bảng điều khiển giaacutem saacutet tigravenh trạng hoạt độngcủa caacutec maacutey điện thoại trong hệ thống
Web MeetMe Control Quản lyacute triển khai hệ thống điện thoại hội nghị
FreePBX Đacircy lagrave cocircng cụ với giao diện web dagravenh cho việc cấu higravenh hệthống Asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4072
Taacutec Giả Lecirc Quốc Toagraven
40
Hệ thống Lưu trữ dự phograveng vagrave thống kecirc Lagrave thagravenh phần của TRIXBOXcung cấp caacutec cocircng cụ cần thiết cho việc bảo trigrave bảo dưỡng hệ thống
Hệ thống Apache-Php-Mysql dagravenh cho giải phaacutep Webserver của hệthống
2 DOWNLOAD VAgrave LẮP ĐẶT TRIXBOX
Địa chỉ downloadhttpsourceforgenetprojectsasteriskathome
Khi download xong file Trixboxiso Hatildey dugraveng file nagravey Burn vagraveo CD ( xinlưu yacute lagrave dugraveng Nero hoặc chương trigravenh cheacutep đĩa ưa thiacutech rồi burn vagraveo cd_romchứ khocircng phải cheacutep file đoacute vagraveo cd_rom)
Sau khi coacute CD Hatildey boot từ CD nagravey để cagravei đặt trixbox
Chuacute yacute dữ liệu trecircn đĩa cứng sẽ bị xoacutea sạch để cagravei đặt trixbox Nếu trongđĩa cứng cograven dữ liệu hatildey backup tất cả trước khi tiến hagravenh lắp đặt trixbox
Tới đacircy lần lượt caacutec magraven higravenh chỉ dẫn sẽ hiện ra vagrave cứ theo hướng dẫn magrave cagraveđặt Sau khi cagravei đặt xong chuacuteng ta dugraveng Username root vagrave password password đểđăng nhập hệ thống
3 Cấu higravenh địa chỉ IP cho card mạng
Thiết lập địa chỉ IP bằng caacutech gotilde lệnh
netconfig
Chọn OK để thiếp lập
Nếu trong mạng coacute hỗ trợ DHCP thigrave hatildey chọn mục nagravey cograven nếu khocircng hatildeynhập địa chỉ IP tĩnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4172
Taacutec Giả Lecirc Quốc Toagraven
41
IP 19216801
Netmask 2552552550
Gateway 19216893254 ngotilde ra becircn ngoagravei
Primary nameserver 19216893200 thiết lập nếu coacute
Chọn OK để chấp nhận caacutec thiết lập trecircn
Sau khi hoagraven tất hatildey lagravem cho thiết lập coacute hiệu lực bằng caacutech reset lại
maacutey tiacutenh hoặc dugraveng lệnh sau
Service network stop
Service network start
Đến đacircy xem như cagravei đặt hoagraven tất bacircy giờ để cấu higravenh được Asterisk chuacutengta vagraveo một magravey khaacutec vagrave mở Internet Explorer hoặc một trigravenh duyệt web bất kỳ
nhập vagraveohttp19216801đatilde cấu higravenh ở trecircn vagrave tiến hagravenh cấu higravenh hệ thốngvới tagravei khoảng username maint vagrave password password
4 Tổ Chức Thư Mục của Asterisk
Asterisk sử dụng nhiều thư mục trecircn hệ thống linux để quản lyacute caacutec khiacutea cạnkhaacutec nhau của hệ thống như nghi nhận bản tin thoại caacutec bản tin nhắc thoại hoặcaacutec tập tin cấu higravenh Phần nagravey sẽ trigravenh bagravey caacutec thư mục chiacutenh yếu được tạo ra tronquaacute trigravenh lắp đặt vagrave được cấu higravenh trong tập tin Asteriskconf
1 etcasterisk
Thư mục etcasterisk chứa tất cả caacutec tập tin cấu higravenh của hệ thốngAsterisk ngoại trừ tập tin Zaptelconf được đặt tại thư mục etc Phần cứnZaptel đầu tiecircn được phaacutet triển bởi Jim Dixon thuộc nhoacutem Zapata Telephony
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4272
Taacutec Giả Lecirc Quốc Toagraven
42
Group để giao tiếp giữa maacutey tiacutenh với mạng điện thoại magrave Asterisk lại sửdụng phần cứng nagravey với lyacute do đoacute magrave file cấu higravenh zaptelconf khocircng nằmtrong thư mục etcasterisk
2 usrlibasteriskmodules
Thư mục usrlibasteriskmodules chứa tất cả caacutec module cần thiết đểasterisk hoạt động Becircn trong thư mục lagrave caacutec ứng dụng khaacutec nhau caacutec codeccaacutec định dạng acircm thanh(format) vagrave caacutec kecircnh thocircng tin(channel) Theo mặc địnhAsterisk sẽ nạp tất cả caacutec module vagraveo luacutec khởi động Chuacuteng ta coacute thể khocircng cho
nạp một module bất kỳ bằng caacutech khocircng khai baacuteo sử dụng trong tập tinmodulesconf Lưu yacute khi khocircng cho nạp module thigrave phải biết chắc module đoacutekhocircng lagravem ảnh hưởng hoạt động của asterisk nếu khocircng lỗi sẽ xuất hiện
3 varlibasterisk
Thư mục varlibasterisk chứa tập tin astdb vagrave một số thư mục con Tập tinastdb định vị thocircng tin cơ sở dữ liệu của Asterisk giống như Microsoft WindowsRegistry
Caacutec thư mục con của thư mục varlibasterisk bao gồm
agi-bin
Thư mục agi-bin chứa caacutec script của người dugraveng magrave Asterisk coacute thểđịnh vị sử dụng qua caacutec ứng dụng AGI
AGI lagrave phần giao tiếp với ngocircn ngữ lập trigravenh script để thực hiện mộtsố cocircng việc của Asterisk từ becircn ngoagravei
firmware
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4372
Taacutec Giả Lecirc Quốc Toagraven
43
Thư mục firmware chứa một số phần dẻo(firmware) cho caacutec thiết bịkhaacutec nhau tương thiacutech với Asterisk Hiện tại chỉ coacute thư mục con iax chứa
firmware cho thiếy bị IAXy của Digium IAXy lagrave thiết bị ATA sử dụng giaothức IAX
images
Caacutec ứng dụng thocircng tin với caacutec kecircnh hỗ trợ ảnh images thigrave sử dụng thư mụcnagravey Nhưng hiện tại caacutec kecircnh thocircng tin hầu như khocircng hỗ trợ truyền ảnh images necircthư mục nagravey cũng hiếm khi được sử dụng Tuy nhiecircn nếu caacutec thiết bị coacute hỗ trợ ththư mục nagravey trở necircn hiệu dụng
keys
Asterisk coacute thể sử dụng hệ thống khoaacute publicprivate để xaacutec minh caacutec kết nốgiữa caacutec server Asterisk thocircng qua chữ kyacute điện tử RSA Nếu đặt một khoaacute publicvagraveo thư mục keys thigrave kết nối của server đầu becircn kia coacute thể được xaacutec minh bằn
kecircnh thocircng tin coacute hỗ trợ đối với Asterisk thigrave kecircnh giao thức IAX hỗ trợ loại xaacutecminh nagravey Một khoaacute private khocircng bao giờ cocircng bố chuacuteng ta chỉ cocircng bố khoaacute public đến với server cần nối đến sau đoacute sẽ được xaacutec minh với khoaacute private nagravey Chai khoaacute public vagrave private được lưu với đuocirci pub vagrave key đặt tại thư mục keys
mohmp3
Khi cấu higravenh Asterisk sử dụng tiacutenh năng Music on Hold tiacutenh năng hoạt độngsẽ thực hiện lấy caacutec tập tin mp3 tại thư mục mohmp3 Tập tin định dạng theo chucủa Asterisk necircn khi sử dụng caacutec file Mp3 thocircng thường cần coacute sự chuyển đổi thiacutechợp trước khi cheacutep vagraveo thư mục trecircn để sử dụng
sounds
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4472
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4572
Taacutec Giả Lecirc Quốc Toagraven
45
Thư mục tmp sử dụng để lưu trữ những thocircng tin tạm để luocircn bảo đảm khocircnxảy ra tigravenh trạng đọc vagrave viết tập tin cugraveng một luacutec Khi yecircu cầu xử lyacute tập tin chuacuteng thao taacutec trecircn thư mục tmp trước khi lưu vagraveo tập tin điacutech
Tất cả caacutec lời nhắc thoại từ phiacutea người sử dụng vagrave caacutec lời nhắc thoại sử dụ
cho thao taacutec hộp voicemail đều được chứa trong thư mục voicemail Một hộp thưthoại được tạo ra ứng với một maacutey nội bộ trong tập tin voicemailconf sẽ được tra một thư mục con tương ứng cho maacutey nội bộ đoacute tại thư mục voicemail
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4672
Taacutec Giả Lecirc Quốc Toagraven
46
5 varrun
Thư mục varrun chứa thocircng tin process ID(pid) cho tất cả caacutec tiến trigravenh đang
hoạt động trong hệ thống bao gồm cả Asterisk Lưu yacute lagrave ứng với mỗi hệ điều hagravethư mục varrun coacute thể khaacutec
6 varlogasterisk
Thư mục varlogasterisk lagrave nơi Asterisk chứa tất cả caacutec tập tin nhật kyacute haycograven gọi lagrave tập tin log Chuacuteng ta coacute thể tuỳ biến caacutec loại thocircng tin được lưu trong caacutec
tập tin log khaacutec nhau qua tập tin cấu higravenh loggerconf đặt tại thư mục etcasterisk7 varlogasteriskcdr-csv
Thư mục varlogasteriskcdr-csv được sử dụng để lưu chi tiết cuộc gọi CDRThocircng tin mặc định về chi tiết thocircng tin cuộc gọi lưu trữ trong tập tin MasterCVSnhưng thường thigrave ứng với mỗi matilde accountcode sẽ tạo một thư mục riecircng để lưu ctiết cuộc gọi cho maacutey đoacute
5 Một số lệnh thao taacutec trecircn hệ thống asterisk
Asterisk coacute hai thagravenh phần được xacircy dụng tiacutech hợp với nhau vagrave chạy songsong nhau
Asterisk Server bigravenh thường chạy ở chế độ nền(background) giống caacutec sevicestrong window
Asterisk Client ở chế độ dograveng lệnh CLI giao tiếp với Asterisk Server thực thicaacutec lệnh để kiểm tra hay xem caacutec thocircng tin của server
Để Chạy vagrave dừng Asterisk ở chế độ nền chuacuteng ta thực hiện lệnh sau
etcinitdasterisk (start|stop)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4772
Taacutec Giả Lecirc Quốc Toagraven
47
Một khi Asterisk đatilde chạy chuacuteng ta coacute thể chuyển qua chế độ CLI từ dấu nhắlệnh của linux như sau
asterisk ndashr
Khi vagraveo chế độ lệnh nếu muốn thoaacutet về lại dấu nhắc linux chuacuteng ta dugraveng lệnh
CLIgtexit
Caacutec lệnh cơ bản thực hiện tại CLIgt
Bất cứ khi nagraveo chỉnh sửa caacutec tập tin cấu higravenh chuacuteng ta đều cần phải nạp lại đcaacutec thay đổi coacute hiệu lực điều đoacute thực hiện bằng lệnh
CLIgtreload
Bậc chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 debug
CLIgt SIP debug
Tắt chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 no debug
CLIgt SIP no debug
Hiển thị caacutec trạng thaacutei thocircng tin của users peers vagravechannels của SIP hoặc IAX2
CLIgt sip show users
CLIgt sip show peers
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4872
Taacutec Giả Lecirc Quốc Toagraven
48
CLIgt sip show channels
CLIgt iax2 show peers
CLIgt iax2 show users
CLIgt iax2 show channels
Đến thời điểm nagravey coacute thể noacutei chuacuteng ta đatilde hoagraven thagravenh cagravei đặt hệ thốngAsterisk cagravei đặt xong mới lagrave bước mở đầu để cho hệ thống Asterisk hoạt động vtừng ứng dụng cụ thể chuacuteng sẽ tiếp tục thực hiện caacutec giai đoạn được xem lagrave qutrọng nhất trong việc triển khai hệ thống Asterisk đoacute lagrave giai đoạn cấu higravenh hệ thốnlecircn kế hoạch Diaplan chương cograven lại đều nhắm đến mục tiecircu nagravey
4 CẤU HIgraveNH HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Sau khi hoagraven tất phần cagravei đặt hệ thống asterisk một bước quan trọng tiếp thelagrave cấu higravenh hệ thống coacute thể noacutei đacircy lagrave bước quan trọng nhất của việc khiển khai thống đến với từng ứng dụng cụ thể Trong chương nagravey xin giới thiệu caacutei nhigraven đầtiecircn về việc cấu higravenh trước khi đi sacircu hơn ở những chương sau những gigrave giới thiệ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4972
Taacutec Giả Lecirc Quốc Toagraven
49
trong chương nagravey lagrave nền moacuteng cơ bản nhưng đủ để hiểu lagravem thế nagraveo hệ thống coacute thoạt động được nội dung chiacutenh bao gồm
+ Thao taacutec cấu higravenh trecircn hệ thống tập tin của asterisk
+ Caacutech cagravei đặt phần mềm softphone trecircn cocircng nghệ sip
+ Cấu higravenh cho hai maacutey softphone liecircn lạc với nhau
+ Cấu higravenh phaacutet thocircng điệp
+ Quay số qua Sip vagrave mạng PSTN
2 Tập Tin cấu higravenh
Tất cả caacutec file cấu higravenh cho hệ thống asterisk đều nằm tại thư mục etcasterisngoại trừ file zaptelconf cấu higravenh cho phần cứng TDM nằm tại thư mục etc caacutecthức cấu higravenh giống như tập tin ini của window vậy Caacutec nội dung sau dấu chấm phảy lagrave nội dung chuacute thiacutech trong file cấu higravenh giống như chuacute thiacutech trong ngocircn ngữ
lập trigravenh C lagrave dấu Tất cả caacutec khoảng trắng trong tập tin đều được bỏ qua khocircng yacute nghĩa trong file cấu higravenh
Trong file cấu higravenh cograven coacute hai pheacutep gaacuten rất thường xuyecircn được sử dụng pheacutep gaacuten ldquo=rdquo lagrave dugraveng cho việc gaacuten caacutec biến cograven pheacutep gaacuten ldquo=gtrdquo dugraveng cho việc gaacutencaacutec đối tượng sau đacircy lagrave một viacute dụ cho file cấu higravenh
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5072
Taacutec Giả Lecirc Quốc Toagraven
50
Đacircy lagrave caacutec dograveng chuacute thiacutech
[section]
Key=value gaacuten giaacute trị cho biến
[section2]
Key=gtobject Gaacuten giaacute trị cho đối tượng
Cuacute phaacutep thực hiện giống nhau cho tất cả caacutec file cấu higravenh nhưng coacute vagravei kiểukhaacutec nhau cho mỗi file cầu higravenh dựa vagraveo thức caacutech hoạt động của chuacuteng
3 Caacutec kiểu ảnh hưởng trong tập cấu higravenh
Coacute ba kiểu caacutech thức hoạt động của tập tin cấu higravenh như sau
Kiểu Caacutech hoạt động File cầu higravenh Viacute dụ
S i m p l eGroup
Coacute hiệu lực trecircntừng dograveng trongfile
Extensionconf
Exten=gt4001dial(sip400)
O p t i o ninheritance
Dograveng khai baacuteosau thừa kếnhững thocircng sốkhai baacuteo trước
Zapataconf [channels]
Context=From_PSTN
Signalling=fxs_ks
Group=1Channel=gt1
C o m p l e xEntity
Mỗi entity nhậnmột ngữ cảnh
sipconf
iaxconf
[cisco]
Type=friend
Secret=12345
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5172
Taacutec Giả Lecirc Quốc Toagraven
51
Host=192168165
Context=NoiBo
[xten]
Type=friend
Secret=6789
Host=dynamic
Context=NoiBo
1 Simple Group
Đacircy lagrave kiểu cấu higravenh đơn giản nhất thường sử dụng trong caacutec fileextentionconf meetmeconf voicemailconf tương ứng với mỗi dograveng khai baacuteo lagravemột đối tượng coacute yacute nghĩa trecircn dograveng đoacute
Viacute dụ
Extentionconf [section]
object1=gt op1op2op3
object2=gt op1bop2bop3b
Trong viacute dụ trecircn mỗi dograveng tương ứng với caacutec toaacuten tử khaacutec nhau object1 coacute caacutectoaacuten từ op1 op2 op3 trong khi đoacute object2 lại coacute caacutec toaacuten từ op1b op2b op3b
2 Option inheritance
Đacircy lagrave cấu higravenh kiểu thừa kế thường được cấu higravenh trong caacutec file zapataconfagentconf với kiểu cấu higravenh nagravey thigrave caacutec dograveng phiacutea dưới coacute thể thừa kế caacutec thocircng sdograveng phiacutea trecircn tương ứng với mỗi section caacutec dograveng phiacutea dưới coacute thể thay đổi caacutecthocircng số cho tươngứng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5272
Taacutec Giả Lecirc Quốc Toagraven
52
Viacute dụ
Extentionconf
[section]
Op1=bas
Op2=adv
Object1=gt1
Op1=int
Object1=gt2
Với cấu higravenh trecircn coacute thể giải thiacutech như sau object1=gt1 thừa hưởng hai thocircngsố ở phiacutea trecircn đoacute lagrave op1=bas vagrave op2=adv trong khi đoacute đối với object1=gt2 với thocircngsố op1=int được khai baacuteo lại necircn object1=gt2 được thừa kế từ hai thocircng số op1=invagrave op2=adv
3 Complex Entity
Với cấu kiểu nagravey được tổ chức thagravenh nhiều entity ứng với mỗi entity coacute nhiềthocircng số được khai baacuteo mỗi entity ở đacircy chiacutenh lagrave caacutec section để khai baacuteo caacutec kecircnhthocircng tin Cấu higravenh thường được sử dụng trong caacutec file iaxconf sipconf
Viacute dụ
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5372
Taacutec Giả Lecirc Quốc Toagraven
53
[entity1]
Op1=value1
Op2=value2
[entity2]
Op1=value3
Op2=value4
Entity1 coacute caacutec giaacute trị value1 vagrave value2 cho thocircng số op1 vagrave op2 trong khi đoacute
cũng lagrave thocircng số op1 vagrave op 2 nhưng coacute caacutec giaacute trị khaacutec lagrave value3 vagrave value4 choentity2
4 Cấu higravenh giao tiếp với mạng PSTN
1 Ngữ cảnh kết nối
Để kết nối với mạng PSTN chuacuteng ta cần phải coacute một card TDM với Cổng
FXO vagrave một đường dacircy điện thoại hoặc coacute thể lagrave một tổng đagravei nội bộ PBX Cnhiều nhagrave sản xuất phần cứng khaacutec nhau nhưng trong phần cấu higravenh dưới dacircy lagrave cấhigravenh cho card zapata TDM01B của digium (card nagravey hiện nay giaacute baacuten khoảng175$)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 472
Taacutec Giả Lecirc Quốc Toagraven
4
342 usrlibasteriskmodules 36
343 varlibasterisk 37
344 varspoolasterisk 38
345 varrun 39
346 varlogasterisk 39
347 varlogasteriskcdr-csv 40
35 Một số lệnh thao taacutec trecircn hệ thống asterisk 40
Chương 4 CẤU HIgraveNH HỆ THỐNG ASTERISK 42
41 GIỚI THIỆU 42
42 Tập Tin cấu higravenh 42
43 Caacutec kiểu ảnh hưởng trong tập cấu higravenh 43
431 Simple Group 44
432 Option inheritance 44
433 Complex Entity 45
44 Cấu higravenh giao tiếp với mạng PSTN 46
441 Ngữ cảnh kết nối 46
442 Lắp đặt card TDM01B vagrave cấu higravenh 46
45 Cấu higravenh Điện thoại IP SIP phone 47
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 572
Taacutec Giả Lecirc Quốc Toagraven
5
451 Phần khai baacuteo Chung 48
452 Khai baacuteo kecircnh SIP 49
46 Giới Thiệu DialPlan 50
461 Extentions 51
462 Priorities ndash Thứ tự thực hiện 52
463 Aplications ndash Caacutec hagravem ứng dụng 53
464 Contexts - Ngữ cảnh 53
47 Ngữ cảnh thực hagravenh ứng dụng 55
471 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằngcaacutech cấu higravenh trecircn file sipconf như sau 56
472 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 805157
473 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052 58
48 Tạo diaplan 58
481 Thực hiện một viacute dụ cơ bản 58
482 Caacutec ứng dụng dial() background() vagrave goto() 59
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 672
Taacutec Giả Lecirc Quốc Toagraven
6
1 TỔNG QUAN VỀ ASTERISK
1 GIỚI THIỆU ASTERISK
Hacircn hạnh chagraveo mừng đến với thế giới diệu kỳ của Astetisk Asterisk đem đếcho người sử dụng tất cả caacutec tiacutenh năng vagrave ứng dụng của hệ thống tổng đagravei PBX
cung cấp nhiều tiacutenh năng magrave tổng đagravei PBX thocircng thường khocircng coacute được đoacute lagrave sựkết hợp giữa chuyển mạch VOIP vagrave chuyển mạch TDM đoacute lagrave khả năng mở rộnđaacutep ứng nhu cầu cho từng ứng dụnghellip
Asterisk lagrave hệ thống chuyển mạch mềm lagrave phần mềm nguồn mở được viế bằng ngocircn ngữ C chạy trecircn hệ điều hagravenh linux thực hiện tất cả caacutec tiacutenh năng củtổng đagravei PBX vagrave hơn thế nữa Asterisk ra đời vagraveo năm 1999 bởi một chagraveng trai sinh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 772
Taacutec Giả Lecirc Quốc Toagraven
7
năm 1977 tecircn lagrave Mark Spencer Anh ta viết phần mềm nagravey ban đầu khocircng ngoagraveimục điacutech hỗ trợ cho cocircng ty của migravenh trong việc liecircn lạc đagravem thoại hỗ trợ cộnđồng người sử dụng vagrave phaacutet triển Linux
Asterisk lagrave mộtPBXvagrave nhiều hơn thế Asterisk lagrave một phần mềm mang tiacutenhcaacutech mạng tin cậy matilde nguồn mở vagrave miễn phiacute magrave biến một PC rẻ tiền thocircng thườnchạy Linux thagravenh một hệ thống điện thoại doanh nghiệp mạnh mẽ Asterisk lagrave m bộ cocircng cụ matilde nguồn mở cho caacutec ứng dụng thoại vagrave lagrave một server xử lyacute cuộc gọđầy đủ chức năng Asterisk lagrave một nền tảng tiacutech hợp điện thoại vi tiacutenh hoaacute kiến truacutemở Nhiều hệ thống Asterisk đatilde được cagravei đặt thagravenh cocircng trecircn khắp thế giới Cocircnnghệ Asterisk đang phục vụ cho nhiều doanh nghiệp
Hiện nay Asterisk trecircn đagrave phaacutet triển nhanh được rất nhiều doanh nghiệp triểnkhai ứng dụng cho cocircng ty của migravenh Đacircy lagrave xu thế tất yếu của người sử dụng điệthoại vigrave caacutec cocircng ty đều coacute mạng maacutey tiacutenh vagrave cần liecircn lạc với nhau trong cocircng việcgiữa caacutec phograveng ban hoặc chi nhaacutenh vagrave cần một chi phiacute thấp thậm chiacute khocircng phải tốchi phiacute khi thực hiện caacutec cuộc gọi trecircn mạng nội bộ của cocircng ty
Khocircng goacutei gọn thocircng tin liecircn lạc trong cocircng ty magrave caacutec ứng dụng giao tiếp vớimạng PSTN hoặc mạng VOIP (như voice777) cho pheacutep gọi ra bất cứ số điện thoạnagraveo coacute trecircn mạng PSTN
Ngoagravei ra việc tiacutech hợp vagraveo caacutec ứng dụng như CRM vagrave hệ thống Outlook lagravemcho khả năng ứng dụng của Asterisk linh hoạt hơn đaacutep ứng nhu cầu cần thiết ch
người sử dụng điện thoại
Asterisk thoạt đầu được phaacutet triển trecircn GNULinux nền x86 (Intel) nhưng giờđacircy noacute cũng coacute thể biecircn dịch vagrave chạy trecircn OpenBSD FreeBSD vagrave Mac OS X vagraveMicrosoft Windows
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 872
Taacutec Giả Lecirc Quốc Toagraven
8
Sơ đồ Tổng quaacutet
Asterisk lagrave hệ thống chuyển mạch tiacutech hợp vừa lagrave cocircng nghệ truyền thốngTDM vừa lagrave chguyển mạch voip Higravenh trecircn cũng cho thấy khả năng giao tiếp của hthống Giao tiếp với điện thoại analog thocircng thường giao tiếp với thiết bị điện thovoip ngoagravei ra cograven coacute thể giao tiếp với mạng PSTN vagrave caacutec nhagrave cung cấp voip khaacutec
2 KIẾN TRUacuteC ASTERISK
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 972
Taacutec Giả Lecirc Quốc Toagraven
9
Về cơ bản kiến truacutec của Asterisk lagrave sự kết hộp giữa nền tảng cocircng nghệ đithoại vagrave ứng dụng điện thoại cocircng nghệ điện thoại cho VOIP như SIP H323 IAXMGCP caacutec cocircng nghệ điện thoại cho hệ thống chuyển mạch mạch TDM như TE1 ISDN vagrave caacutec giao tiếp đường truyền thoại Analog Caacutec ứng dụng thoại nhưchuyển mạch cuộc gọi tương taacutec thoại caller ID voicemail chuyển cuộc gọihellip
Asterisk coacute một số chức năng chiacutenh đoacuteng vai trograve quan trọng trong hệ thống
chuyển mạch cuộc gọi Khi khởi động hệ thống Asterisk thigrave chức năng DynamiModule Loader thực hiện nạp driver của thiết bị nạp caacutec kecircnh giao tiếp caacutecformat codec vagrave caacutec ứng dụng liecircn quan đồng thời caacutec hagravem API cũng được liecircn kếtnạp vagraveo hệ thống
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1072
Taacutec Giả Lecirc Quốc Toagraven
10
Sau đoacute hệ thống PBX Switching Core của Asterisk chuyển sang trạng thaacutei sẵnsagraveng hoạt động chuyển mạch cuộc gọi caacutec cuộc gọi được chuyển mạch tuỳ vagraveo
hoạch quay số (Dialplan) được thực hiện cấu higravenh trong file extensionconfChức năng Application Launchar để rung chuocircng thuecirc bao quay số định
hướng cuộc gọi kết nối với hộp thư thoạihellip
Scheduler and IO Manager đảm nhiệm caacutec ứng dụng nacircng cao caacutec chức năngđược phaacutet triển bởi cộng đồng phaacutet triển asterisk
Codec Translator xaacutec nhận caacutec kecircnh neacuten dữ liệu ứng với caacutec chuẩn khaacutec nhaucoacute thể kết hợp liecircn lạc được với nhau
Tất cả caacutec cuộc gọi định hướng qua hệ thống Asterisk đều thocircng qua caacutec giaotiếp như SIP Zaptel IAX Necircn hệ thống Asterisk phải đảm traacutech nhiệm vụ liecircn kếcaacutec giao tiếp khaacutec nhau đoacute để xử lyacute cuộc gọi
Hệ thống cũng bao gồm 4 chức năng API chiacutenh
Codec translator API caacutec hagravem đảm nhiệm thực thi vagrave giải neacuten caacutec chuẩn khaacutecnhau như G711 GMS G729hellip
Asterisk Channel API Giao tiếp với caacutec kecircnh liecircn lạc khaacutec nhau đacircy lagrave đầumối cho việc kết nối caacutec cuộc gọi tương thiacutech với nhiều chuần khaacutec nhau như SIIAX H323 Zaptelhellip
Asterisk file format API Asterisk tương thiacutech với việc xử lyacute caacutec loại file coacuteđịnh dạng khaacutec nhau như Mp3 wav gsmhellip
Asterisk Aplication API Bao gồm tất cả caacutec ứng dụng được thực thi trong hệthống Asterisk như voicemail callerIDhellip
wwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1172
Taacutec Giả Lecirc Quốc Toagraven
11
Ngoagravei ra Asterisk cograven coacute thư viện Asterisk Gateway Interface (AGI tương tựnhư CGI) - cơ chế kiacutech hoạt ứng dụng becircn ngoagravei cho pheacutep viết kịch bản phức tạp
với một số ngocircn ngữ như PHP hay Perl Noacutei chung khả năng viết caacutec ứng dụng tugravey biến rất lớn
3 MỘT SỐ TIacuteNH NĂNG CƠ BẢN
Asterisk coacute rất nhiều tiacutenh năng đatilde được giới thiệu ở trecircn nhưng để hiểu rotilde hếtất cả caacutec tiacutenh năng trecircn thật sự lagrave thaacutech thức đối với chuacuteng ta Trong phần nagraveychuacuteng tocirci sẽ giới thiệu một số tiacutenh năng với caacutec ứng dụng cụ thể để hiểu hơn về
thống asterisk
1 Voicemail (hộp thư thoại)
Đacircy lagrave tiacutenh năng cho pheacutep hệ thống nhận caacutec thocircng điệp tin nhắn thoại mỗmaacutey điện thoại được khai baacuteo trong hệ thống Asterisk cho pheacutep khai baacuteo thecircm chứnăng hộp thư thoại
Mỗi khi số điện thoại bận hay ngoagravei ldquovugraveng phủ soacutengrdquo thigrave hệ thống asteriskđịnh hướng trực tiếp caacutec cuộc gọi đến hộp thư thoại tương ứng đatilde khai baacuteo trước
Voicemail cung cấp cho người sử dụng nhiều tiacutenh năng lựa chọn như password xaacutec nhận khi truy cập vagraveo hộp thư thoại gửi mail baacuteo khi coacute thocircng điệmới
2 Call Forwarding(chuyển cuộc gọi)
Khi khocircng ở nhagrave hoặc đi cocircng taacutec magrave người sử dụng khocircng muốn bỏ lỡ tất ccaacutec cuộc gọi đến thigrave hatildey nghĩ ngay đến tiacutenh năng chuyển cuộc gọi
Đacircy lagrave tiacutenh năng thường được sử dụng trong hệ thống Asterisk Chức năng cho pheacutep chuyển một cuộc gọi đến một hay nhiều số maacutey điện thoại được định trước
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1272
Taacutec Giả Lecirc Quốc Toagraven
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ậnchuyển cuộc gọi khi khocircng trả lời chuyển cuộc gọi tức thời chuyển cuộc gọi v
thời gian định trước3 Caller ID (hiển thị số gọi)
Chức năng nagravey rất hữu dụng khi một ai đoacute gọi đến vagrave ta muốn biết chiacutenh xaacuteclagrave gọi từ đacircu vagrave trong một số trường hợp biết chắc họ lagrave ai
Ngoagravei ra Caller ID cograven lagrave chức năng cho pheacutep chuacuteng ta xaacutec nhận số thuecirc bao
gọi đến coacute nghĩa lagrave dựa vagraveo caller ID chuacuteng ta coacute tiếp nhận hay khocircng tiếp nhậncuộc gọi từ phiacutea hệ thống Asterisk Ngăn một số cuộc gọi ngoagravei yacute muốn
4 Automated attendant (chức năng IVR)
Chức năng tương taacutec thoại coacute rất nhiều ứng dụng trong thực tế khi gọi điệthoại đến một cơ quan hay xiacute nghiệp thuecirc bao thường nghe thocircng điệp nhưldquoXinchagraveo mừng bạn đatilde gọi đến cocircng ty chuacuteng Tocirci hatildey nhấn phiacutem 1 để gặp phograveng kinh
doanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquosau đoacute tuỳ vagraveo sự tương taacutec của thuecirc 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 thuecirc bao muố biết tỉ giaacute Đocircla hiện nay như thế nagraveo hay kết quả sổ số hellip tất caacutec những monmuốn trecircn đều coacute thể thực hiện qua chức năng tương taacutec thoại
5 Time and Date
Vagraveo từng thời gian cụ thể cuộc gọi sẽ định hướng đến một số điện thoại hmột chức năng cụ thể khaacutec viacute dụ trong cocircng ty giaacutem đốc muốn chỉ cho pheacutep nhacircnviecircn sử dụng maacutey điện thoại trong giờ hagravenh chaacutenh cograven ngoagravei giờ thigrave sẽ hạn chế hakhocircng cho pheacutep gọi ra becircn ngoagravei
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1372
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1472
Taacutec Giả Lecirc Quốc Toagraven
14
Asterisk thực hiện rất nhiều ngữ cảnh ứng dụng khaacutec nhau tuỳ vagraveo nhu cầu sdụng dưới dacircy lagrave những ngữ cảnh ứng dụng thường được sử dụng trong thực
triển khai hệ thống asterisk1 Tổng đagravei voip IP PBX
IP BPX
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1572
Taacutec Giả Lecirc Quốc Toagraven
15
Đacircy lagrave hệ thống chuyển mạch voip được xacircy dựng phục vụ caacutec cocircng ty coacute nhucầu thực hiện trecircn nền tảng mạng nội bộ đatilde triển khai Thay vigrave lắp đặt một hệ thố
PBX cho nhu cầu liecircn lạc nội bộ thigrave necircn lắp đặt hệ thống voip điều nagravey sẽ lagravem giảchi phiacute đaacuteng kể Hệ thống coacute thể liecircn 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 ở đacircy lagrave hiện tại Cocircng ty đatilde trang bị hệ thống PBX bacircygiờ cần trang bị thecircm để đaacutep ứng nhu cầu liecircn lạc trong cocircng ty sao cho với chi phthấp nhất giải phaacutep để thực hiện đoacute lagrave trang bị hệ thống asterisk vagrave kết nối với h
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1672
Taacutec Giả Lecirc Quốc Toagraven
16
thống PBX đang tồn tại qua luồng E1 Ngoagravei ra để tăng khả năng liecircn lạc với mạnPSTN vagrave VOIP khaacutec Cocircng Ty coacute thể thực hiện kết nối với nhagrave cung cấp dịch vụvoip
3 Kết nối giữa caacutec server Asterisk
Kết nối giữa caacutec server asterisk
Phương phaacutep trecircn ứng dụng rất hiệu quả cho caacutec cocircng ty nằm ratildei raacutec ở caacutec vtrị địa lyacute khaacutec nhau nhằm giảm chi phiacute đường dagravei Viacute dụ Cocircng ty Mẹ coacute trụ sở đặtại nước Mỹ vagrave caacutec Chi nhaacutenh đặt tại Việt Nam với caacutec địa điểm Thagravenh phố Hồ ChMinh vagrave Hagrave Nội Thocircng qua mạng WAN của Cocircng Ty caacutec cuộc gọi nội bộ giữa caacutec
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1772
Taacutec Giả Lecirc Quốc Toagraven
17
vị triacute khaacutec nhau sẽ lagravem giảm chi phiacute đaacuteng kể Ngữ cảnh nagravey về mặt phaacutep luật khocircncho cuộc gọi từ Mỹ vagraveo Việt Nam
4 Caacutec ứ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 caacutec server kết nối với hệ thống PSTN hay tổng đagravei PBXđể triển khai caacutec ứng dụng như tương taacutec thoại IVR Một viacute dụ cho ứng dụng tươtaacutec thoại đoacute lagrave cho biết kết quả sổ số hay kiểm tra cước cuộc gọi giống dịch v19001260 vậy Ứng dụng VoiceMail thu nhận những tin nhắn thoại từ phiacutea thuecirc bao giống như chức năng hộp thư thoại của Bưu Điện Thagravenh phố triển khai Cograve
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1872
Taacutec Giả Lecirc Quốc Toagraven
18
chức năng điện thoại hội nghị thiết lập cho nhiều maacutey điện thoại cugraveng noacutei chuyệvới nhau
5 Chức năng Phacircn phối cuộc gọi tự động ACD
Phacircn phối cuộc gọi với hagraveng đợi
ACD(Automatic Call Distribution) Phacircn phối cuộc gọi tự động
Đacircy lagrave chức năng ứng dụng cho nhu cầu chăm soacutec khaacutech hagraveng hay nhận phảnhổi từ phiacutea khaacutech hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1972
Taacutec Giả Lecirc Quốc Toagraven
19
Cocircng ty coacute khả năng tiếp nhận cugraveng một luacutec 10 cuộc gọi như thế cuộc gọi th11 gọi đến thigrave hệ thống giải quyết như thế nagraveo Bigravenh thường thigrave sẽ nghe tiacuten hiệ
bận nhưng với chức năng phacircn phối cuộc gọi sẽ đưa thuecirc bao đoacute vagraveo hagraveng đợi đchờ trả lời trong khi chờ trả lời cuộc gọi thuecirc bao coacute thể nghe những bagravei haacutet hay dasterisk cung cấp trong luacutec nagravey nếu 1 trong mười số điện thoại trở về trạng thaacutei rthigrave cuộc gọi đang chờ sẽ được trả lời Giống như chức năng của dịch vụ 1080 ha116 của Bưu Điện Thagravenh Phố vậy
2 CAacuteC KHAacuteI NIỆM TRONG HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Trong chương nagravey sẽ giải thiacutech rotilde caacutec khaacutei niệm cơ bản liecircn quan đến hệ thốnasterisk cung cấp những kiến thức nền tảng những khaacutei niệm cần thiết để thiếttriển khai xacircy dựng hệ thống điện thoại với Asterisk
2 PBX - Private Branch Exchange
PBX hay cograven gọi lagrave PABX - Private Automatic Branch Exchange lagrave hệ thốngtổng đagravei nội bộ được đặt tại nhagrave thuecirc bao từ Automatic ở đacircy muốn noacutei đến lagrave hthống tổng đagravei điện tử tự động nhưng hiện nay đa số lagrave tổng đagravei PBX điện tử tđộng necircn từ trecircn thực sự khocircng cograven cần thiết nữa
PBX với mục tiecircu chia sẻ nhiều thuecirc bao nội bộ gọi ra thế giới becircn ngoagraveithocircng qua một vagravei đường trung kế hay noacutei một caacutech khaacutec PBX lagrave hệ thống trungchuyển giữa caacutec đường dacircy điện thoại becircn ngoagravei từ cocircng ty điện thoại vagrave maacutey điệthoại nội bộ trong tổng đagravei PBX Vigrave thế necircn số lượng maacutey điện thoại nội bộ luocircnhiều hơn số đường dacircy nối đến PBX từ becircn ngoagravei
wwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2072
Taacutec Giả Lecirc Quốc Toagraven
20
PBX thực hiện chuyển mạch cuộc gọi caacutec maacutey điện thoại nội bộ với nhau vvới caacutec maacutey điện thoại becircn ngoagravei thocircng qua đường trung kế Đồng thời thực hiệ
chuyển mạch caacutec cuộc gọi điện thoại từ becircn ngoagravei vagraveo caacutec maacutey điện thoại nội bộNgoagravei việc chuyển mạch cuộc gọi PBX cung cấp nhiều tiacutenh năng sử dụng
cho nhiều mục điacutech khaacutec nhau của khaacutech hagraveng magrave bản thacircn caacutec đường dacircy điệnthoại từ cocircng ty điện thoại kết nối đến khocircng thể thực hiện được caacutec tiacutenh năng ntương taacutec thoại(IVR) Voicemail phacircn phối cuộc gọi tự động(ADC)hellip
Hiện nay với việc phaacutet triển mạnh mẽ của cocircng nghệ VoIP chuacuteng ta cograven coacutethecircm thuật ngữ IP PBX Đacircy lagrave hệ thống chuyển mạch PBX với cocircng nghệ Voip
3 VOIP - Voice Over Internet Protocol
Voice over Internet Protocol (VoIP) lagrave một cocircng nghệ cho pheacutep truyền thoạisử dụng giao thức mạng IP trecircn cơ sở hạ tầng sẵn coacute của mạng internet Voip lagrave mtrong những cocircng nghệ viễn thocircng đang được quan tacircm nhất hiện nay khocircng chỉ đố
với nhagrave khai thaacutec caacutec nhagrave sản xuất magrave cograven cả với người sử dụng dịch vụVoip coacute thể vừa thực hiện mọi loại cuộc gọi như trecircn mạng điện thoại kecircn
truyền thống (PSTN) đồng thời truyền dữ liệu trecircn cơ sở mạng truyền dữ liệu Dcaacutec ưu điểm về giaacute thagravenh dịch vụ vagrave sự tiacutech hợp nhiều loại higravenh dịch vụ necircn voihiện nay được triển khai một caacutec rộng ratildei
Dịch vụ điện thoại voip lagrave dịch vụ ứng dụng giao thức IP nguyecircn tắc củaVoIP bao gồm việc số hoaacute tiacuten hiệu tiếng noacutei thực hiện việc neacuten tiacuten hiệu số chia nhcaacutec goacutei nếu cần vagrave truyền goacutei tin nagravey qua mạng tới nơi nhận caacutec goacutei tin nagravey đượraacutep lại theo đuacuteng thứ tự của bản tin giải matilde tiacuten hiệu tương tự phục hồi lại tiếng n ban đầu
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2172
Taacutec Giả Lecirc Quốc Toagraven
21
Caacutec cuộc gọi trong VoIP dựa trecircn cơ sở sử dụng kết hợp cả chuyển mạchkecircnh vagrave chuyển mạch goacutei Trong mỗi loại chuyển mạch đều coacute ưu nhược điể
riecircng của noacute Trong kỹ thuật chuyển mạch kecircnh giagravenh riecircng cho một kecircnh truyềngiữa hai thiết bị đầu cuối thocircng qua caacutec node chuyển mạch trung gian Trongchuyển mạch kecircnh tốc độ truyền dẫn luocircn luocircn cố định(nghĩa lagrave băng thocircng khocircnđổi) với mạng điện thoại PSTN tốc độ nagravey lagrave 64kbps truyền dẫn trong chuyểmạch kecircnh coacute độ trễ nhỏ
Trong chuyển mạch goacutei caacutec bản tin được chia thagravenh caacutec goacutei nhỏ gọi lagrave caacutec
goacutei nguyecircn tắc hoạt động của noacute lagrave sử dụng hệ thống lưu trữ vagrave chuyển tiếp caacutec gtin trong nuacutet mạng Đối với chuyển mạch goacutei khocircng tồn tại khaacutei niệm kecircnh riecircng băng thocircng khocircng cố định coacute nghĩa lagrave coacute thể thay đổi tốc độ truyền kỹ thuật chuyểmạch goacutei phải chịu độ trễ lớn vigrave trong chuyển mạch goacutei khocircng quy định thời giancho mỗi goacutei dữ liệu tới điacutech mỗi goacutei coacute thể đi bằng nhiều con đường khaacutec nhau đtới điacutech chuyển mạch goacutei thiacutech hợp cho việc truyền dữ liệu vigrave trong mạng truyền dliệu khocircng đogravei hỏi về thời gian thực như thoại để sử dụng ưu điểm của mỗi lo
chuyển mạch trecircn thigrave trong voip kết hợp sử dụng cả hai loại chuyển mạch kecircnh vchuyển mạch goacutei
4 PSTN ndash Public Switched Telephone Network
PSTN lagrave mạng chuyển mạch điện thoại cocircng cộng hay noacutei caacutech khaacutec lagrave mạngkết nối tất cả caacutec hệ thống tổng đagravei chuyển mạch-mạch
Để hiểu rotilde hơn hatildey xem xeacutet mạng PSTN với mạng Internet về khiacutea cạnhchuyển thoại trecircn đoacute Chuyển mạch mạch muốn thực hiện cuộc gọi giữa hai thu bao thigrave hệ thống phải giagravenh riecircng một kecircnh truyền 64kbps để chuyển tải tiacuten hiệthoại trecircn đoacute Cograven cuộc gọi điện thoại trecircn mạng Internet thigrave tiacuten hiệu thoại đượđoacuteng goacutei vagrave chuyển đi trecircn cugraveng kecircnh truyền với nhiều dịch vụ khaacutec Vigrave lẽ đoacute chấlượng cuộc gọi trecircn mạng PSTN bao giờ cũng tốt hơn trecircn mạng Internet nhưng đổ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2272
Taacutec Giả Lecirc Quốc Toagraven
22
lại chi phiacute lại đắc hơn rất nhiều đặc biệt lagrave caacutec cuộc gọi quốc tế necircn phải cần nhắc kỹ khi sử dụng
PSTN được phaacutet triển trecircn chuẩn ITU(International TelecommunicationUnion) cograven mạng Internet được phaacutet triển trecircn chuẩn IETF(Internet EngineeringTask Force) cả hai mạng trecircn đều sử dụng địa chỉ để định tuyến cuộc gọi PSTN sdụng caacutec con số điện thoại để chuyển mạch cuộc gọi giữa caacutec tổng đagravei điện thotrong khi đoacute trecircn mạng Internet địa chỉ IP sẽ được sử dụng để định tuyến caacutec goacutethoại
5 TDM ndash Time Division Multiplexing
Lagrave kỹ thuật gheacutep kecircnh phacircn chia thời gian nhiều tiacuten hiệu coacute thể truyền đồngthời trecircn một đường truyền TDM được sử dụng chuyển thoại trong hệ thống mạPSTN Coacute hai chuẩn gheacutep kecircnh TDM cơ bản lagrave E1 với 30 kecircnh thoại trecircn mộtkhung tốc độ 2Mbps vagrave T1 với 24 kecircnh thoại tốc độ 15Mbps
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2372
Taacutec Giả Lecirc Quốc Toagraven
23
Higravenh Minh họa gheacutep kecircnh phacircn chia theo thời gian
6 Caacutec higravenh thức baacuteo hiệu giao tiếp TDM
1 FXO vagrave FXS
FXO (Foreign Exchange Office) lagrave thiết bị nhận tiacuten hiệu từ tổng đagravei gửi đếnnhư dograveng chuocircng tiacuten hiệu nhấc gaacutec maacutey tiacuten hiệu mời quay số gửi vagrave nhận tiacuten hiệthoạihellip FXO giống như maacutey Fax hay modem dial-up 56k vậy Dugraveng để kết nối vớ
đường dacircy điện thoại
FXS (Foreign Exchange Station) lagrave thiết bị tại nơi cung cấp đường dacircy điệnthoại thiết bị FXS sẽ cung cấp tiacuten hiệu mời quay số(dialtone) dograveng chuocircng hồi acircmchuocircng(ring tone) Trong đường dacircy Analog FXS cung cấp dograveng chuocircng vagrave điện aacutepcho điện thoại hoạt động viacute dụ FXS cung cấp điện aacutep -48VDC đến maacutey điện tho
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2472
Taacutec Giả Lecirc Quốc Toagraven
24
Analog trong suốt thời gian đagravem thoại vagrave cung cấp 90VAC(20hz) để phaacutet điện aacuteprung chuocircng Thiết bị FXS phaacutet cograven thiết bị FXO nhận
Card TDM sử dụng trong hệ thống asterisk thường tiacutech hợp vừa thiết bị FXOvừa lagrave thiết bị FXS(Giống bộ ATA) FXO để kết nối với đường dacircy điện thoại cograveFXS dugraveng để kết nối với maacutey điện thoại analog thocircng thường dugraveng để chuyển mạcuộc gọi TDM qua hệ thống asterisk(Xem thecircm trong phần cấu higravenh cho kecircnhTDM)
Toacutem lại cần nắm
FXS được kết nối với FXO giống với đường dacircy điện thoại nối với maacuteyđiện thoại
FXS cung cấp nguồn cho điện thoại FXO(điện thoại Analog)
Higravenh a) Maacutey điện thoại vai trograve FXO kết nối với FXS(PSTN) Higravenh b) PBXkết nối với FXO vagrave FXS Higravenh c) ATA đoacuteng vai trograve như FXS để kết nối với maacuteyđiện thoại vai trograve FXO
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2572
Taacutec Giả Lecirc Quốc Toagraven
25
2 Baacuteo hiệu Analog giữa đầu cuối vagrave tổng đagravei
Khi chuacuteng ta nhấc mấy điện thoại để gọi thigrave nghe tiacuten hiệu mời quay số kh
cuộc gọi gọi đầu becircn kia bị bận thigrave chuacuteng ta nghe tiacuten hiệu bận(busy tone) caacutec loạtiacuten hiệu như vậy gọi lagrave caacutec tiacuten hiệu baacuteo hiệu analog Caacutec tiacuten hiệu như Mời quay sốtiacuten hiệu bận rung chuocircng trạng thaacutei nhấc gaacutec maacutey Caacutec loại tiacuten hiệu trecircn được trađổi giữa thiết bị FXO vagrave FXS
Coacute nhiều phương thức baacuteo hiệu khaacutec nhau ứng với từng nơi sử dụng vigrave thếtại nơi kết nối với đường dacircy điện thoại cần xem xeacutet họ đang sử dụng phương th
baacuteo hiệu gigrave từ đoacute chuacuteng ta khai thaacutec loại tiacuten hiệu baacuteo hiệu cho thiacutech hợp caacutec phương thức baacuteo hiệu như Loop Start Ground Start Một minh họa cho việc sửdụng sai phương thức baacuteo hiệu lagrave khi chuacuteng ta khai baacuteo phương thức baacuteo hiệu giữhệ thống Asterisk vagrave đường dacircy điện thoại khaacutec nhau thigrave dẫn đến Asterisk sẽ khocircnnhận biết được tiacuten hiệu gaacutec maacutey điều nagravey sẽ lagravem cho asterisk khocircng baacuteo giờ giải tỏđược cuộc gọi để thực hiện cuộc gọi mới
3 Baacuteo hiệu giữa caacutec tổng đagravei
SS7 hệ thống baacuteo hiệu số 7 được phaacutet triển bởi ATampT vagrave ITU lagrave hệ thống baacuteo hiệu chuyển caacutec cuộc gọi giữa caacutec tổng đagravei trong mạng PSTN Trong hệ thốn baacuteo hiệu số 7 tiacuten hiệu chuyển tải trecircn đường trung kế kết nối giữa hai tổng đagravei gồcoacute hai mạch riecircng một cho thoại vagrave một cho baacuteo hiệu như vậy thoại vagrave baacuteo hiệu cthể chuyển trecircn hai kecircnh vật lyacute khaacutec nhau
7 Baacuteo Hiệu trecircn mạng điện thoại VoIP
1 SIP Session Initiation Prorocol
Sip lagrave giao thức Internet dagravenh cho baacuteo hiệu VoIP được phaacutet triển bởi IETFcung cấp vagravei chức năng giống hệ thống baacuteo hiệu số 7 nhưng dựa trecircn nền IP Mộchức năng giống baacuteo hiệu số 7 đoacute lagrave baacuteo hiệu vagrave thoại chuyển tải trecircn hai kecircnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2672
Taacutec Giả Lecirc Quốc Toagraven
26
riecircng Giao thức SIP thực hiện chức năng thiết lập vagrave baacuteo hiệu cuộc gọi khi noacutei đế baacuteo hiệu cuộc gọi lagrave chỉ định caacutec tiacuten hiệu baacuteo hiệu như tiacuten hiệu mời quay số tiacutehiệu bậnhellip
2 Proxy server
Mặc dầu hai thiết bị SIP coacute thể liecircn lạc trực tiếp với nhau để khởi tạo cuộgọi nhưng trong giao thức SIP cograven coacute chức năng Proxy để linh hoạt hơn trong thiếlập cuộc gọi Proxy Server sẽ lagravem nhiệm vụ ghi nhận tất cả caacutec số điện thoại đư phiacutea client đăng kyacute đến qua bản tin ldquoRegistrationrdquo Khi một client khaacutec thực hiện
cuộc gọi thigrave thực sự Client đoacute khocircng biết số điện thoại cần gọi đang ở đacircu necircn thocircnqua Proxy server để tigravem kiếm thiết lập cuộc gọi
+
Higravenh Đăng kyacute từ Client đến SIP Proxy Với Giao thức SIP đường baacuteo hiệu vagravethoại riecircng
3 RTP vaacute NAT
Caacutec cuộc gọi trecircn Internet với giao thức SIP được chia thagravenh caacutec goacutei thoại vagraveđược chuyển qua giao thức RTP(Real Time Protocol) RTP lagrave giao thức khocircng chỉthực hiện chuyển caacutec goacutei thoại qua Internet magrave cograven coacute cả video nữa Một cuộc gọ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2772
Taacutec Giả Lecirc Quốc Toagraven
27
thocircng thường coacute hai hướng thocircng tin lagrave nhận vagrave phaacutet RTP lagravem việc chuyển caacutec goacutedữ liệu thoại cũng trecircn hai hướng
NAT Network Address Translators lagrave một trở ngại lớn trong giao thức RTPMạng sử dụng NAT lagrave một mạng chia sẻ nhiều địa chỉ IP nội bộ với một địa chỉ ICocircng cộng để kết nối với thế giới becircn ngoagravei NAT dugraveng để chia sẻ nhiều maacutey tiacutentrong mạng LAN nội bộ sử dụng được Internet nhưng cũng chiacutenh vigrave thế magrave caacutec maacutetiacutenh nội bộ gặp khoacute khăn trong việc thực hiện cuộc gọi VoIP qua Internet Đoacute chiacutenhlagrave vấn để trở ngại khi truyền thoại qua giao thức RTP
Higravenh Minh họa hoạt động của NAT
Trong Giao thức RTP như chuacuteng ta đatilde biết đoacute lagrave thoại được chuyển trecircn haiđường khaacutec nhau lagrave đường phaacutet vagrave đường thu Vấn đề NAT nằm ở chỗ tiacuten hiệthoại từ becircn ngoagravei vagraveo becircn trong qua giao thức RTP khocircng thực hiện được cograven chiềungược lại thigrave thực hiện tốt Hay noacutei caacutech khaacutec vấn đề NAT lagravem cho caacutec cuộc gọi t
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2872
Taacutec Giả Lecirc Quốc Toagraven
28
Internet đagravem thoại vagraveo caacutec maacutey nội bộ qua NAT thigrave khocircng nghe được cograven trongtrường hợp caacutec cuộc gọi từ caacutec maacutey nội bộ ra caacutec maacutey internet thigrave nghe tốt
Vấn đề NAT trecircn được giải quyết trong Asterisk bằng việc khai baacuteo thocircng số NAT=yes trong cấu higravenh kecircnh giao thức SIP
4 IAX ndash Inter Asterisk eXchange
IAX lagrave giao thức baacuteo hiệu Voip được phaacutet triển bởi taacutec giả của phần mềmAsterisk để khắc phục những hạn chế trong giao thức SIP Khocircng giống như giathức SIP chuyển tải thoại vagrave baacuteo hiệu trecircn hai kecircnh khaacutec nhau (out of band) IAXchuyển tải thoại vagrave baacuteo hiệu trecircn cugraveng một kecircnh(in band) IAX giải quyết được vấđề NAT đề cập trecircn phần giao thức SIP Mặc khaacutec IAX lagrave giao thức tối ưu trongviệc sử dụng băng thocircng cho pheacutep nhiều goacutei dữ liệu thoại trecircn cugraveng một IP headecơ chế chuyển tải nhiều cuộc gọi trecircn cugraveng một goacutei IP được gọi lagrave trung kế(Trunk)
Coacute thể giải thiacutech thecircm cơ chế trung kế như sau Giả sử Tocirci cần gửi 5 bức thtới người bạn của Tocirci Tocirci sẽ coacute hai higravenh thức để thực hiện thứ nhất lagrave mỗi bức tTocirci bỏ vagraveo một phong bigrave vậy tổng cộng tocirci phải sử dụng 5 phong bigrave để gửi đi 5 bứthư Caacutech thứ hai lagrave Tocirci bỏ 5 bức thư vagraveo 1 phong bigrave vagrave gửi đi vậy tổng cộng Tocircchỉ tốn 1 phong bigrave Qua phacircn tiacutech trecircn rotilde ragraveng việc 5 bức thư vagraveo một phong bigrave sẽtiết kiệm hơn so với 5 bức thư với 5 phong biacute Cơ chế trecircn cũng giống như nhiềcuộc gọi được đoacuteng thagravenh goacutei vagrave chuyển đi trecircn đường trung kế
Toacutem lại IAX lagrave giao thức dagravenh cho VoIP mới nhất cho đến thời điểm nagravey vớinhiều ưu điểm hấp dẫn như
+ Tối thiểu sử dụng băng thocircng
+ Trong suốt với NAT
+ Hiệu quả với cơ chế trung kế
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2972
Taacutec Giả Lecirc Quốc Toagraven
29
8 Thiết Bị VoIP
1 Voip Phone
Đacircy lagrave thiết bị phần cứng kết nối với mạng VoIP giống như maacutey điện thoại đ bagraven thocircng thường nhưng dagravenh cho VoIP cần phải thực hiện cấu higravenh trước khi sửdụng
Lưu yacute một số tiacutenh năng khi thực hiện mua thiết bị điện thoại VoIP
+ Low bandwidth hỗ trợ Codec nagraveo G729 lagrave tốt nhất hiện nay
+ Web Interface Phải coacute giao tiếp thiết lập cấu higravenh thacircn thiện dễ sử dụng
+ Audio Interface Coacute speaker phone hay khocircng
Giaacute thagravenh của điện thoại voip IP đắc hơn điện thoại thocircng thường giaacute khoảntrecircn dưới 100$ một caacutei
Higravenh Maacutey Điện Thoại VoIP
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3072
Taacutec Giả Lecirc Quốc Toagraven
30
2 Softphone
Lagrave một phần mềm được cagravei trecircn maacutey tiacutenh thực hiện tất cả caacutec chức năng giốn
như thiết bị điện thoại Voip cần lưu yacute khi sử dụng softphone lagrave maacutey tiacutenh phải ccard acircm thanh headphone vagrave firewall khocircng bị khoacutea
Sử dụng softphone với hệ thống Asterisk necircn dugraveng softphone với cocircng nghệgiao thức mới dagravenh cho Asterisk đoacute lagrave IAX
Higravenh Điện Thoại Softphone
3 Card giao tiếp với PSTN
Muốn cho pheacutep caacutec maacutey điện thoại nội bộ trong hệ thống Asterisk kết nối vthực hiện cuộc gọi với mạng PSTN chuacuteng ta cần phải coacute thiết bị phần cứng tươthiacutech Thiết bị phần cứng sử dụng cho hệ thống Asterisk do chiacutenh taacutec giả lập cocircng
Digium phacircn phối đacircy cũng chiacutenh lagrave yacute tưởng lớn trong việc phacircn phối phần mềmAsterisk lagrave hệ thống nguồn mở sử dụng miễn phiacute
Thiết bị phần cứng thường kyacute hiệu bắt đầu bằng cụm từ TDMxyB trong đoacute lagrave số lượng port FXS y lagrave số lượng port FXO giaacute trị tối đa của x vagrave y lagrave 4 viacute dụcard TDM22B coacute nghĩa lagrave coacute 2 fort FXS vagrave 2 port FXO
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3172
Taacutec Giả Lecirc Quốc Toagraven
31
Higravenh Card TDM22B gồm 4 port 2 FXS vagrave 2 FXO
4 ATA Analog Telephone Adaptors
ATA lagrave thiết bị kết nối với điện thoại Analog thocircng thường đến mạng VoIPmột thiết bị ATA gồm coacute hai loại port RJ-11 để kết nối với maacutey điện thoại analo
thocircng thường cograven RJ-45 để kết nối với mạng VoIP
ATA thực sự lagrave thiết bị FXS chuyển đổi tiacuten hiệu Analog sang tiacuten hiệu số sửdụng cho mạng VoIP để tận dụng maacutey điện thoại Analog necircn trang bị thiết bị ATAthay vigrave phải trang bị điện thoại VoIP
Thiết bị ATA sử dụng với giao thức IAX được Digium phacircn phối lagrave thiết bịATA được sử dụng rộng ratildei với Asterisk coacute tecircn gọi lagrave IAXy
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3272
Taacutec Giả Lecirc Quốc Toagraven
32
Higravenh Thiết bị ATA
9 Codecs
Thuật Toaacuten codecs(CompressorDe-compressor) lagrave một tập caacutec quy luật đượcsử dụng để chuyển đổi caacutec tiacuten hiệu thoại dạng Analog sang tiacuten hiệu số vagrave ngược lạ
Coacute nhiều thuật toaacuten codec để thực hiện chuyển đổi tiacuten hiệu analog sang tiacuten
hiệu số dạng nhị phacircn (01) như G711 GSM G729hellipỨng với mỗi thuật toaacuten coacutenhững ưu điểm riecircng đặc biệt lagrave việc tối ưu sử dụng băng thocircng trecircn đường truyềMục tiecircu cuối cugraveng lagrave caacutec thuật toaacuten đưa ra phải đảm bảo chất lượng cuộc gọi nhvagrave tiết kiệm băng thocircng nhất
G729 lagrave thuật toaacuten codec tốt nhất hiện nay trong hệ thống VoIP Với hệthống Asterisk để sử dụng thuật toaacuten nagravey cần phải mua bản quyền sử dụng vigrave đacircy
codec khocircng miễn phiacute sử dụng
10 QoS ndash Quality of Service
Caacutec yếu tố ảnh hưởng đến chất lượng của dịch vụ đối với VoIP đoacute lagrave caacuteyếu ảnh hưởng đến chất lượng tiacuten hiệu thoại
1 Độ trễ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3372
Taacutec Giả Lecirc Quốc Toagraven
33
Thoại lagrave dịch vụ mang tiacutenh thời gian thực rất cao vigrave thế trễ lagrave yếu tố ảnhhưởng rất lớn đến chất lượng dịch vụ Trễ được định nghĩa lagrave khoảng thời gian tiacute
từ luacutec tiacuten hiệu thoại đi từ miệng người noacutei tới tai người nghe Trễ lagrave yếu tố khocircnthể traacutenh khỏi độ trễ đối với mạng điện thoại truyền thống (mạng PSTN) khoảng50ms đến 70ms theo khiến nghị của ITU-T để đảm bảo chất lượng cho hệ thốVoIP thigrave độ trễ từ đầu phaacutet tới đầu thu hoặc ngược lại khocircng được vượt quaacute 150mkhi magrave độ trễ vượt quaacute 400ms đến 500ms thigrave khocircng thể chấp nhận được
Caacutec nguyecircn nhacircn gacircy ra trễ bao gồm Trễ trecircn mạng lưới trễ trecircn bộ mả hoacutea
giải matilde trễ trong quaacute trigravenh đoacuteng goacutei trễ bộ đệm trễ xử lyacute tiếng noacuteihellip2 Độ trượt(Jitter)
Nguyecircn nhacircn gacircy ra trượt lagrave goacutei tiacuten hiệu thoại trong quaacute trigravenh truyền từnguồn đến điacutech sẽ gặp phải những điều kiện khaacutec nhau trecircn mạng lưới do đoacute thườđến điacutech với những khoảng trễ khaacutec nhau Đacircy lagrave tiacutenh khocircng đồng nhất của trễ Mnguyecircn nhacircn khaacutec của trượt đối với ứng dụng PC to PC lagrave do việc sử dụng hệ điề
hagravenh phi thời gian thực caacutec goacutei tin thoại phải đợi hệ điều hagravenh xử lyacute trong nhữnkhoảng thời gian khaacutec nhau khi magrave hệ điều hagravenh đang phải xử lyacute đối với caacutec ứndụng khaacutec
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3472
Taacutec Giả Lecirc Quốc Toagraven
34
Higravenh Nguyecircn nhacircn xảy ra trượt
Để loại bỏ tiacutenh khocircng đồng nhất của trễ người ta thiết kế caacutec bộ đệm t(Jitter Buffer) tại nơi đến của caacutec goacutei tin caacutec goacutei tin đến với caacutec khoảng caacutech khaacutecnhau về thời gian được lưu tại bộ đệm rồi phaacutet khỏi bộ đệm với khoảng trễ n
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3572
Taacutec Giả Lecirc Quốc Toagraven
35
nhau Khi bộ đếm coacute kiacutech thước cagraveng lớn thigrave khả năng loại bỏ tiacutenh khocircng đồng nhấcagraveng lớn tuy nhiecircn việc sử dụng bộ đệm sẽ gacircy ra hiện tượng trễ trong ứng dụnthoại do đoacute cần coacute bagravei toaacuten cacircn đối giữa độ trễ vagrave độ trượt
Ngoagravei 2 nguyecircn nhacircn trecircn cograven một số nguyecircn nhacircn nữa ảnh hưởng đến chấtlượng thoại như độ mất goacutei giới hạn băng thocircng tiếng vọng
3 CAgraveI ĐẶT ASTERISK
1 Cagravei đặt Asterisk
1 Download vagrave bung neacuten
Để cagravei đặt Asterisk đầu tiecircn chuacuteng ta cần phải cagravei đặt hệ điều hagravenh linux trecircnmaacutey tiacutenh của migravenh Coacute thể cagravei hệ điều hagravenh Linux Fedora CentOS Redhat hoặcDebian Caacutec goacutei phần mềm phụ thuộc phải coacute trong hệ điều hagravenh Linux trước khcagravei Asterisk bao gồm
bison
gcc
kernel-source
libtermcap-devel
ncurses-devel
openssl096b
openssl-devel
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3672
Taacutec Giả Lecirc Quốc Toagraven
36
Sau khi hoagraven tất caacutec bước trecircn chuacuteng ta tiến hagravenh download phần mềmasterisk với phiecircn bản mới nhất
cd usrsrc
wgetftpftpdigiumcompubasteriskasterisk-140targz
wgetftpftpdigiumcompubasteriskasterisk-addons-140targz
wgetftpftpdigiumcompubasteriskasterisk-sounds-140targz
wgethttpftpdigiumcompubzaptelzaptel-140targz
wgethttpftpdigiumcompublibprilibpri-140targz
Việc download coacute thể nhanh hay chậm tugravey vagraveo tốc độ trecircn đường internet saukhi download hoagraven thagravenh chuacuteng ta tiến hagravenh bung neacuten caacutec goacutei ra thư mục chỉ định
tar ndashxzvf asterisk-140targz
tar ndashxzvf asterisk-addons-140targz
tar ndashxzvf asterisk-sounds-140targz
tar ndashxzvf zaptel-140targz
tar ndashxzvf libpri-140targz
Giải neacuten xong chuacuteng ta nhớ thực hiện lệnh
ln ndashs usrsrcasterisk-140 usrsrcasterisk lệnh nagravey để bảo đảm goacuteildquoaddonsrdquo được biecircn dịch đuacuteng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3772
Taacutec Giả Lecirc Quốc Toagraven
37
Bacircy giờ tới phần chuacuteng ta biecircn dịch caacutec goacutei đatilde giải neacuten ở trecircn trước tiecircn lagrave goacuteizaptel kế đến lagrave libpri sau cugraveng lagrave goacutei Asterisk
2 Cagravei đặt goacutei Zaptel
Goacutei zaptel sẽ chứa tại thư mục usrsrczaptel Đaacutenh lệnh như dưới đacircy để cagraveđặt
cd usrsrczaptel
make clean make install
Lệnh nagravey thực hiện khoảng 2 phuacutet tugravey vagraveo tốc độ maacutey tiacutenh cagravei đặt sau khicagravei đặt xong sẽ trở lại dấu nhắc lệnh vagrave hiển thị một loạt caacutec thocircng baacuteo trong đoacute một số bản tin lỗi magrave chủ yếu lagrave yecircu cầu cagravei đặt caacutec goacutei phụ thuộc đatilde liệt kecirc ở trecircnếu caacutec goacutei trecircn chưa được cagravei đặt
Goacutei zaptel nagravey chứa caacutec driver cho caacutec phần cứng kết giao tiếp với asterisk
do Digium phacircn phối vagrave một số thư viện cho việc coacute thực hiện giao tiếp với phầcứng hay khocircng
Để Asterisk coacute thể chạy cugraveng với khởi động của maacutey tiacutenh chuacuteng ta cần thựchiện lệnh
make config
Lệnh nagravey sẽ tạo ra script chegraven module zaptel vagraveo kernel vagrave chạy ztconfig vagraveoluacutec khởi động maacutey Trong Redhat script nagravey sẽ được cheacutep vagraveo etcinitd chạy ở mức 3
3 Cagravei đặt goacutei libpri
Kế đến chuacuteng ta biecircn dịch goacutei libpri tại thư mục usrsrclibpri bằng lệnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3972
Taacutec Giả Lecirc Quốc Toagraven
39
make config
3 Cagravei đặt TrixBox
1 Giới thiệu
TRIXBOX được phaacutet triển từ nhacircn của ứng dụng Asterisk được tổng hợp từmột số thagravenh phần chiacutenh được phaacutet triển bởi cộng đồng phaacutet triển nguồn mAsterisk dưới bản quyền GPL Trixbox bao gồm những thagravenh phần chiacutenh cho việcấu higravenh ứng dụng thống kecirc tigravenh trạng hoạt động hệ thống lưu trữ dự phograveng v
nhacircn lagrave hệ điều hagravenh CentOS một phiecircn bản khaacutec của Redhat tất cả kết hợp vớnhau tạo thagravenh một goacutei hoagraven chỉnh Khi cagravei goacutei nagravey vagraveo maacutey tiacutenh thigrave coacute thể sử dụngnhư một tổng đagravei PBX
Caacutec thagravenh phần chiacutenh trong goacutei TRIXBOX lagrave
Asterisk PBX Thagravenh phần chiacutenh của hệ thống Trixbox
CentOS Một phiecircn bản Linux khaacutec của Redhat hoagraven toagraven miển phiacute sửdụng Lagrave nhacircn chiacutenh cho Trixbox
SugarCRM Hệ thống quan hệ khaacutech hagraveng CRM
A2Billing ndash Lagrave thagravenh phần dagravenh cho việc xacircy dựng hệ thống điện thoạitrả trước hay cograven gọi lagrave điện thọai thẻ (Calling Card)
Flash Operator Panel Bảng điều khiển giaacutem saacutet tigravenh trạng hoạt độngcủa caacutec maacutey điện thoại trong hệ thống
Web MeetMe Control Quản lyacute triển khai hệ thống điện thoại hội nghị
FreePBX Đacircy lagrave cocircng cụ với giao diện web dagravenh cho việc cấu higravenh hệthống Asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4072
Taacutec Giả Lecirc Quốc Toagraven
40
Hệ thống Lưu trữ dự phograveng vagrave thống kecirc Lagrave thagravenh phần của TRIXBOXcung cấp caacutec cocircng cụ cần thiết cho việc bảo trigrave bảo dưỡng hệ thống
Hệ thống Apache-Php-Mysql dagravenh cho giải phaacutep Webserver của hệthống
2 DOWNLOAD VAgrave LẮP ĐẶT TRIXBOX
Địa chỉ downloadhttpsourceforgenetprojectsasteriskathome
Khi download xong file Trixboxiso Hatildey dugraveng file nagravey Burn vagraveo CD ( xinlưu yacute lagrave dugraveng Nero hoặc chương trigravenh cheacutep đĩa ưa thiacutech rồi burn vagraveo cd_romchứ khocircng phải cheacutep file đoacute vagraveo cd_rom)
Sau khi coacute CD Hatildey boot từ CD nagravey để cagravei đặt trixbox
Chuacute yacute dữ liệu trecircn đĩa cứng sẽ bị xoacutea sạch để cagravei đặt trixbox Nếu trongđĩa cứng cograven dữ liệu hatildey backup tất cả trước khi tiến hagravenh lắp đặt trixbox
Tới đacircy lần lượt caacutec magraven higravenh chỉ dẫn sẽ hiện ra vagrave cứ theo hướng dẫn magrave cagraveđặt Sau khi cagravei đặt xong chuacuteng ta dugraveng Username root vagrave password password đểđăng nhập hệ thống
3 Cấu higravenh địa chỉ IP cho card mạng
Thiết lập địa chỉ IP bằng caacutech gotilde lệnh
netconfig
Chọn OK để thiếp lập
Nếu trong mạng coacute hỗ trợ DHCP thigrave hatildey chọn mục nagravey cograven nếu khocircng hatildeynhập địa chỉ IP tĩnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4172
Taacutec Giả Lecirc Quốc Toagraven
41
IP 19216801
Netmask 2552552550
Gateway 19216893254 ngotilde ra becircn ngoagravei
Primary nameserver 19216893200 thiết lập nếu coacute
Chọn OK để chấp nhận caacutec thiết lập trecircn
Sau khi hoagraven tất hatildey lagravem cho thiết lập coacute hiệu lực bằng caacutech reset lại
maacutey tiacutenh hoặc dugraveng lệnh sau
Service network stop
Service network start
Đến đacircy xem như cagravei đặt hoagraven tất bacircy giờ để cấu higravenh được Asterisk chuacutengta vagraveo một magravey khaacutec vagrave mở Internet Explorer hoặc một trigravenh duyệt web bất kỳ
nhập vagraveohttp19216801đatilde cấu higravenh ở trecircn vagrave tiến hagravenh cấu higravenh hệ thốngvới tagravei khoảng username maint vagrave password password
4 Tổ Chức Thư Mục của Asterisk
Asterisk sử dụng nhiều thư mục trecircn hệ thống linux để quản lyacute caacutec khiacutea cạnkhaacutec nhau của hệ thống như nghi nhận bản tin thoại caacutec bản tin nhắc thoại hoặcaacutec tập tin cấu higravenh Phần nagravey sẽ trigravenh bagravey caacutec thư mục chiacutenh yếu được tạo ra tronquaacute trigravenh lắp đặt vagrave được cấu higravenh trong tập tin Asteriskconf
1 etcasterisk
Thư mục etcasterisk chứa tất cả caacutec tập tin cấu higravenh của hệ thốngAsterisk ngoại trừ tập tin Zaptelconf được đặt tại thư mục etc Phần cứnZaptel đầu tiecircn được phaacutet triển bởi Jim Dixon thuộc nhoacutem Zapata Telephony
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4272
Taacutec Giả Lecirc Quốc Toagraven
42
Group để giao tiếp giữa maacutey tiacutenh với mạng điện thoại magrave Asterisk lại sửdụng phần cứng nagravey với lyacute do đoacute magrave file cấu higravenh zaptelconf khocircng nằmtrong thư mục etcasterisk
2 usrlibasteriskmodules
Thư mục usrlibasteriskmodules chứa tất cả caacutec module cần thiết đểasterisk hoạt động Becircn trong thư mục lagrave caacutec ứng dụng khaacutec nhau caacutec codeccaacutec định dạng acircm thanh(format) vagrave caacutec kecircnh thocircng tin(channel) Theo mặc địnhAsterisk sẽ nạp tất cả caacutec module vagraveo luacutec khởi động Chuacuteng ta coacute thể khocircng cho
nạp một module bất kỳ bằng caacutech khocircng khai baacuteo sử dụng trong tập tinmodulesconf Lưu yacute khi khocircng cho nạp module thigrave phải biết chắc module đoacutekhocircng lagravem ảnh hưởng hoạt động của asterisk nếu khocircng lỗi sẽ xuất hiện
3 varlibasterisk
Thư mục varlibasterisk chứa tập tin astdb vagrave một số thư mục con Tập tinastdb định vị thocircng tin cơ sở dữ liệu của Asterisk giống như Microsoft WindowsRegistry
Caacutec thư mục con của thư mục varlibasterisk bao gồm
agi-bin
Thư mục agi-bin chứa caacutec script của người dugraveng magrave Asterisk coacute thểđịnh vị sử dụng qua caacutec ứng dụng AGI
AGI lagrave phần giao tiếp với ngocircn ngữ lập trigravenh script để thực hiện mộtsố cocircng việc của Asterisk từ becircn ngoagravei
firmware
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4372
Taacutec Giả Lecirc Quốc Toagraven
43
Thư mục firmware chứa một số phần dẻo(firmware) cho caacutec thiết bịkhaacutec nhau tương thiacutech với Asterisk Hiện tại chỉ coacute thư mục con iax chứa
firmware cho thiếy bị IAXy của Digium IAXy lagrave thiết bị ATA sử dụng giaothức IAX
images
Caacutec ứng dụng thocircng tin với caacutec kecircnh hỗ trợ ảnh images thigrave sử dụng thư mụcnagravey Nhưng hiện tại caacutec kecircnh thocircng tin hầu như khocircng hỗ trợ truyền ảnh images necircthư mục nagravey cũng hiếm khi được sử dụng Tuy nhiecircn nếu caacutec thiết bị coacute hỗ trợ ththư mục nagravey trở necircn hiệu dụng
keys
Asterisk coacute thể sử dụng hệ thống khoaacute publicprivate để xaacutec minh caacutec kết nốgiữa caacutec server Asterisk thocircng qua chữ kyacute điện tử RSA Nếu đặt một khoaacute publicvagraveo thư mục keys thigrave kết nối của server đầu becircn kia coacute thể được xaacutec minh bằn
kecircnh thocircng tin coacute hỗ trợ đối với Asterisk thigrave kecircnh giao thức IAX hỗ trợ loại xaacutecminh nagravey Một khoaacute private khocircng bao giờ cocircng bố chuacuteng ta chỉ cocircng bố khoaacute public đến với server cần nối đến sau đoacute sẽ được xaacutec minh với khoaacute private nagravey Chai khoaacute public vagrave private được lưu với đuocirci pub vagrave key đặt tại thư mục keys
mohmp3
Khi cấu higravenh Asterisk sử dụng tiacutenh năng Music on Hold tiacutenh năng hoạt độngsẽ thực hiện lấy caacutec tập tin mp3 tại thư mục mohmp3 Tập tin định dạng theo chucủa Asterisk necircn khi sử dụng caacutec file Mp3 thocircng thường cần coacute sự chuyển đổi thiacutechợp trước khi cheacutep vagraveo thư mục trecircn để sử dụng
sounds
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4472
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4572
Taacutec Giả Lecirc Quốc Toagraven
45
Thư mục tmp sử dụng để lưu trữ những thocircng tin tạm để luocircn bảo đảm khocircnxảy ra tigravenh trạng đọc vagrave viết tập tin cugraveng một luacutec Khi yecircu cầu xử lyacute tập tin chuacuteng thao taacutec trecircn thư mục tmp trước khi lưu vagraveo tập tin điacutech
Tất cả caacutec lời nhắc thoại từ phiacutea người sử dụng vagrave caacutec lời nhắc thoại sử dụ
cho thao taacutec hộp voicemail đều được chứa trong thư mục voicemail Một hộp thưthoại được tạo ra ứng với một maacutey nội bộ trong tập tin voicemailconf sẽ được tra một thư mục con tương ứng cho maacutey nội bộ đoacute tại thư mục voicemail
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4672
Taacutec Giả Lecirc Quốc Toagraven
46
5 varrun
Thư mục varrun chứa thocircng tin process ID(pid) cho tất cả caacutec tiến trigravenh đang
hoạt động trong hệ thống bao gồm cả Asterisk Lưu yacute lagrave ứng với mỗi hệ điều hagravethư mục varrun coacute thể khaacutec
6 varlogasterisk
Thư mục varlogasterisk lagrave nơi Asterisk chứa tất cả caacutec tập tin nhật kyacute haycograven gọi lagrave tập tin log Chuacuteng ta coacute thể tuỳ biến caacutec loại thocircng tin được lưu trong caacutec
tập tin log khaacutec nhau qua tập tin cấu higravenh loggerconf đặt tại thư mục etcasterisk7 varlogasteriskcdr-csv
Thư mục varlogasteriskcdr-csv được sử dụng để lưu chi tiết cuộc gọi CDRThocircng tin mặc định về chi tiết thocircng tin cuộc gọi lưu trữ trong tập tin MasterCVSnhưng thường thigrave ứng với mỗi matilde accountcode sẽ tạo một thư mục riecircng để lưu ctiết cuộc gọi cho maacutey đoacute
5 Một số lệnh thao taacutec trecircn hệ thống asterisk
Asterisk coacute hai thagravenh phần được xacircy dụng tiacutech hợp với nhau vagrave chạy songsong nhau
Asterisk Server bigravenh thường chạy ở chế độ nền(background) giống caacutec sevicestrong window
Asterisk Client ở chế độ dograveng lệnh CLI giao tiếp với Asterisk Server thực thicaacutec lệnh để kiểm tra hay xem caacutec thocircng tin của server
Để Chạy vagrave dừng Asterisk ở chế độ nền chuacuteng ta thực hiện lệnh sau
etcinitdasterisk (start|stop)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4772
Taacutec Giả Lecirc Quốc Toagraven
47
Một khi Asterisk đatilde chạy chuacuteng ta coacute thể chuyển qua chế độ CLI từ dấu nhắlệnh của linux như sau
asterisk ndashr
Khi vagraveo chế độ lệnh nếu muốn thoaacutet về lại dấu nhắc linux chuacuteng ta dugraveng lệnh
CLIgtexit
Caacutec lệnh cơ bản thực hiện tại CLIgt
Bất cứ khi nagraveo chỉnh sửa caacutec tập tin cấu higravenh chuacuteng ta đều cần phải nạp lại đcaacutec thay đổi coacute hiệu lực điều đoacute thực hiện bằng lệnh
CLIgtreload
Bậc chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 debug
CLIgt SIP debug
Tắt chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 no debug
CLIgt SIP no debug
Hiển thị caacutec trạng thaacutei thocircng tin của users peers vagravechannels của SIP hoặc IAX2
CLIgt sip show users
CLIgt sip show peers
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4872
Taacutec Giả Lecirc Quốc Toagraven
48
CLIgt sip show channels
CLIgt iax2 show peers
CLIgt iax2 show users
CLIgt iax2 show channels
Đến thời điểm nagravey coacute thể noacutei chuacuteng ta đatilde hoagraven thagravenh cagravei đặt hệ thốngAsterisk cagravei đặt xong mới lagrave bước mở đầu để cho hệ thống Asterisk hoạt động vtừng ứng dụng cụ thể chuacuteng sẽ tiếp tục thực hiện caacutec giai đoạn được xem lagrave qutrọng nhất trong việc triển khai hệ thống Asterisk đoacute lagrave giai đoạn cấu higravenh hệ thốnlecircn kế hoạch Diaplan chương cograven lại đều nhắm đến mục tiecircu nagravey
4 CẤU HIgraveNH HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Sau khi hoagraven tất phần cagravei đặt hệ thống asterisk một bước quan trọng tiếp thelagrave cấu higravenh hệ thống coacute thể noacutei đacircy lagrave bước quan trọng nhất của việc khiển khai thống đến với từng ứng dụng cụ thể Trong chương nagravey xin giới thiệu caacutei nhigraven đầtiecircn về việc cấu higravenh trước khi đi sacircu hơn ở những chương sau những gigrave giới thiệ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4972
Taacutec Giả Lecirc Quốc Toagraven
49
trong chương nagravey lagrave nền moacuteng cơ bản nhưng đủ để hiểu lagravem thế nagraveo hệ thống coacute thoạt động được nội dung chiacutenh bao gồm
+ Thao taacutec cấu higravenh trecircn hệ thống tập tin của asterisk
+ Caacutech cagravei đặt phần mềm softphone trecircn cocircng nghệ sip
+ Cấu higravenh cho hai maacutey softphone liecircn lạc với nhau
+ Cấu higravenh phaacutet thocircng điệp
+ Quay số qua Sip vagrave mạng PSTN
2 Tập Tin cấu higravenh
Tất cả caacutec file cấu higravenh cho hệ thống asterisk đều nằm tại thư mục etcasterisngoại trừ file zaptelconf cấu higravenh cho phần cứng TDM nằm tại thư mục etc caacutecthức cấu higravenh giống như tập tin ini của window vậy Caacutec nội dung sau dấu chấm phảy lagrave nội dung chuacute thiacutech trong file cấu higravenh giống như chuacute thiacutech trong ngocircn ngữ
lập trigravenh C lagrave dấu Tất cả caacutec khoảng trắng trong tập tin đều được bỏ qua khocircng yacute nghĩa trong file cấu higravenh
Trong file cấu higravenh cograven coacute hai pheacutep gaacuten rất thường xuyecircn được sử dụng pheacutep gaacuten ldquo=rdquo lagrave dugraveng cho việc gaacuten caacutec biến cograven pheacutep gaacuten ldquo=gtrdquo dugraveng cho việc gaacutencaacutec đối tượng sau đacircy lagrave một viacute dụ cho file cấu higravenh
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5072
Taacutec Giả Lecirc Quốc Toagraven
50
Đacircy lagrave caacutec dograveng chuacute thiacutech
[section]
Key=value gaacuten giaacute trị cho biến
[section2]
Key=gtobject Gaacuten giaacute trị cho đối tượng
Cuacute phaacutep thực hiện giống nhau cho tất cả caacutec file cấu higravenh nhưng coacute vagravei kiểukhaacutec nhau cho mỗi file cầu higravenh dựa vagraveo thức caacutech hoạt động của chuacuteng
3 Caacutec kiểu ảnh hưởng trong tập cấu higravenh
Coacute ba kiểu caacutech thức hoạt động của tập tin cấu higravenh như sau
Kiểu Caacutech hoạt động File cầu higravenh Viacute dụ
S i m p l eGroup
Coacute hiệu lực trecircntừng dograveng trongfile
Extensionconf
Exten=gt4001dial(sip400)
O p t i o ninheritance
Dograveng khai baacuteosau thừa kếnhững thocircng sốkhai baacuteo trước
Zapataconf [channels]
Context=From_PSTN
Signalling=fxs_ks
Group=1Channel=gt1
C o m p l e xEntity
Mỗi entity nhậnmột ngữ cảnh
sipconf
iaxconf
[cisco]
Type=friend
Secret=12345
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5172
Taacutec Giả Lecirc Quốc Toagraven
51
Host=192168165
Context=NoiBo
[xten]
Type=friend
Secret=6789
Host=dynamic
Context=NoiBo
1 Simple Group
Đacircy lagrave kiểu cấu higravenh đơn giản nhất thường sử dụng trong caacutec fileextentionconf meetmeconf voicemailconf tương ứng với mỗi dograveng khai baacuteo lagravemột đối tượng coacute yacute nghĩa trecircn dograveng đoacute
Viacute dụ
Extentionconf [section]
object1=gt op1op2op3
object2=gt op1bop2bop3b
Trong viacute dụ trecircn mỗi dograveng tương ứng với caacutec toaacuten tử khaacutec nhau object1 coacute caacutectoaacuten từ op1 op2 op3 trong khi đoacute object2 lại coacute caacutec toaacuten từ op1b op2b op3b
2 Option inheritance
Đacircy lagrave cấu higravenh kiểu thừa kế thường được cấu higravenh trong caacutec file zapataconfagentconf với kiểu cấu higravenh nagravey thigrave caacutec dograveng phiacutea dưới coacute thể thừa kế caacutec thocircng sdograveng phiacutea trecircn tương ứng với mỗi section caacutec dograveng phiacutea dưới coacute thể thay đổi caacutecthocircng số cho tươngứng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5272
Taacutec Giả Lecirc Quốc Toagraven
52
Viacute dụ
Extentionconf
[section]
Op1=bas
Op2=adv
Object1=gt1
Op1=int
Object1=gt2
Với cấu higravenh trecircn coacute thể giải thiacutech như sau object1=gt1 thừa hưởng hai thocircngsố ở phiacutea trecircn đoacute lagrave op1=bas vagrave op2=adv trong khi đoacute đối với object1=gt2 với thocircngsố op1=int được khai baacuteo lại necircn object1=gt2 được thừa kế từ hai thocircng số op1=invagrave op2=adv
3 Complex Entity
Với cấu kiểu nagravey được tổ chức thagravenh nhiều entity ứng với mỗi entity coacute nhiềthocircng số được khai baacuteo mỗi entity ở đacircy chiacutenh lagrave caacutec section để khai baacuteo caacutec kecircnhthocircng tin Cấu higravenh thường được sử dụng trong caacutec file iaxconf sipconf
Viacute dụ
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5372
Taacutec Giả Lecirc Quốc Toagraven
53
[entity1]
Op1=value1
Op2=value2
[entity2]
Op1=value3
Op2=value4
Entity1 coacute caacutec giaacute trị value1 vagrave value2 cho thocircng số op1 vagrave op2 trong khi đoacute
cũng lagrave thocircng số op1 vagrave op 2 nhưng coacute caacutec giaacute trị khaacutec lagrave value3 vagrave value4 choentity2
4 Cấu higravenh giao tiếp với mạng PSTN
1 Ngữ cảnh kết nối
Để kết nối với mạng PSTN chuacuteng ta cần phải coacute một card TDM với Cổng
FXO vagrave một đường dacircy điện thoại hoặc coacute thể lagrave một tổng đagravei nội bộ PBX Cnhiều nhagrave sản xuất phần cứng khaacutec nhau nhưng trong phần cấu higravenh dưới dacircy lagrave cấhigravenh cho card zapata TDM01B của digium (card nagravey hiện nay giaacute baacuten khoảng175$)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 572
Taacutec Giả Lecirc Quốc Toagraven
5
451 Phần khai baacuteo Chung 48
452 Khai baacuteo kecircnh SIP 49
46 Giới Thiệu DialPlan 50
461 Extentions 51
462 Priorities ndash Thứ tự thực hiện 52
463 Aplications ndash Caacutec hagravem ứng dụng 53
464 Contexts - Ngữ cảnh 53
47 Ngữ cảnh thực hagravenh ứng dụng 55
471 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằngcaacutech cấu higravenh trecircn file sipconf như sau 56
472 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 805157
473 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052 58
48 Tạo diaplan 58
481 Thực hiện một viacute dụ cơ bản 58
482 Caacutec ứng dụng dial() background() vagrave goto() 59
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 672
Taacutec Giả Lecirc Quốc Toagraven
6
1 TỔNG QUAN VỀ ASTERISK
1 GIỚI THIỆU ASTERISK
Hacircn hạnh chagraveo mừng đến với thế giới diệu kỳ của Astetisk Asterisk đem đếcho người sử dụng tất cả caacutec tiacutenh năng vagrave ứng dụng của hệ thống tổng đagravei PBX
cung cấp nhiều tiacutenh năng magrave tổng đagravei PBX thocircng thường khocircng coacute được đoacute lagrave sựkết hợp giữa chuyển mạch VOIP vagrave chuyển mạch TDM đoacute lagrave khả năng mở rộnđaacutep ứng nhu cầu cho từng ứng dụnghellip
Asterisk lagrave hệ thống chuyển mạch mềm lagrave phần mềm nguồn mở được viế bằng ngocircn ngữ C chạy trecircn hệ điều hagravenh linux thực hiện tất cả caacutec tiacutenh năng củtổng đagravei PBX vagrave hơn thế nữa Asterisk ra đời vagraveo năm 1999 bởi một chagraveng trai sinh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 772
Taacutec Giả Lecirc Quốc Toagraven
7
năm 1977 tecircn lagrave Mark Spencer Anh ta viết phần mềm nagravey ban đầu khocircng ngoagraveimục điacutech hỗ trợ cho cocircng ty của migravenh trong việc liecircn lạc đagravem thoại hỗ trợ cộnđồng người sử dụng vagrave phaacutet triển Linux
Asterisk lagrave mộtPBXvagrave nhiều hơn thế Asterisk lagrave một phần mềm mang tiacutenhcaacutech mạng tin cậy matilde nguồn mở vagrave miễn phiacute magrave biến một PC rẻ tiền thocircng thườnchạy Linux thagravenh một hệ thống điện thoại doanh nghiệp mạnh mẽ Asterisk lagrave m bộ cocircng cụ matilde nguồn mở cho caacutec ứng dụng thoại vagrave lagrave một server xử lyacute cuộc gọđầy đủ chức năng Asterisk lagrave một nền tảng tiacutech hợp điện thoại vi tiacutenh hoaacute kiến truacutemở Nhiều hệ thống Asterisk đatilde được cagravei đặt thagravenh cocircng trecircn khắp thế giới Cocircnnghệ Asterisk đang phục vụ cho nhiều doanh nghiệp
Hiện nay Asterisk trecircn đagrave phaacutet triển nhanh được rất nhiều doanh nghiệp triểnkhai ứng dụng cho cocircng ty của migravenh Đacircy lagrave xu thế tất yếu của người sử dụng điệthoại vigrave caacutec cocircng ty đều coacute mạng maacutey tiacutenh vagrave cần liecircn lạc với nhau trong cocircng việcgiữa caacutec phograveng ban hoặc chi nhaacutenh vagrave cần một chi phiacute thấp thậm chiacute khocircng phải tốchi phiacute khi thực hiện caacutec cuộc gọi trecircn mạng nội bộ của cocircng ty
Khocircng goacutei gọn thocircng tin liecircn lạc trong cocircng ty magrave caacutec ứng dụng giao tiếp vớimạng PSTN hoặc mạng VOIP (như voice777) cho pheacutep gọi ra bất cứ số điện thoạnagraveo coacute trecircn mạng PSTN
Ngoagravei ra việc tiacutech hợp vagraveo caacutec ứng dụng như CRM vagrave hệ thống Outlook lagravemcho khả năng ứng dụng của Asterisk linh hoạt hơn đaacutep ứng nhu cầu cần thiết ch
người sử dụng điện thoại
Asterisk thoạt đầu được phaacutet triển trecircn GNULinux nền x86 (Intel) nhưng giờđacircy noacute cũng coacute thể biecircn dịch vagrave chạy trecircn OpenBSD FreeBSD vagrave Mac OS X vagraveMicrosoft Windows
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 872
Taacutec Giả Lecirc Quốc Toagraven
8
Sơ đồ Tổng quaacutet
Asterisk lagrave hệ thống chuyển mạch tiacutech hợp vừa lagrave cocircng nghệ truyền thốngTDM vừa lagrave chguyển mạch voip Higravenh trecircn cũng cho thấy khả năng giao tiếp của hthống Giao tiếp với điện thoại analog thocircng thường giao tiếp với thiết bị điện thovoip ngoagravei ra cograven coacute thể giao tiếp với mạng PSTN vagrave caacutec nhagrave cung cấp voip khaacutec
2 KIẾN TRUacuteC ASTERISK
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 972
Taacutec Giả Lecirc Quốc Toagraven
9
Về cơ bản kiến truacutec của Asterisk lagrave sự kết hộp giữa nền tảng cocircng nghệ đithoại vagrave ứng dụng điện thoại cocircng nghệ điện thoại cho VOIP như SIP H323 IAXMGCP caacutec cocircng nghệ điện thoại cho hệ thống chuyển mạch mạch TDM như TE1 ISDN vagrave caacutec giao tiếp đường truyền thoại Analog Caacutec ứng dụng thoại nhưchuyển mạch cuộc gọi tương taacutec thoại caller ID voicemail chuyển cuộc gọihellip
Asterisk coacute một số chức năng chiacutenh đoacuteng vai trograve quan trọng trong hệ thống
chuyển mạch cuộc gọi Khi khởi động hệ thống Asterisk thigrave chức năng DynamiModule Loader thực hiện nạp driver của thiết bị nạp caacutec kecircnh giao tiếp caacutecformat codec vagrave caacutec ứng dụng liecircn quan đồng thời caacutec hagravem API cũng được liecircn kếtnạp vagraveo hệ thống
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1072
Taacutec Giả Lecirc Quốc Toagraven
10
Sau đoacute hệ thống PBX Switching Core của Asterisk chuyển sang trạng thaacutei sẵnsagraveng hoạt động chuyển mạch cuộc gọi caacutec cuộc gọi được chuyển mạch tuỳ vagraveo
hoạch quay số (Dialplan) được thực hiện cấu higravenh trong file extensionconfChức năng Application Launchar để rung chuocircng thuecirc bao quay số định
hướng cuộc gọi kết nối với hộp thư thoạihellip
Scheduler and IO Manager đảm nhiệm caacutec ứng dụng nacircng cao caacutec chức năngđược phaacutet triển bởi cộng đồng phaacutet triển asterisk
Codec Translator xaacutec nhận caacutec kecircnh neacuten dữ liệu ứng với caacutec chuẩn khaacutec nhaucoacute thể kết hợp liecircn lạc được với nhau
Tất cả caacutec cuộc gọi định hướng qua hệ thống Asterisk đều thocircng qua caacutec giaotiếp như SIP Zaptel IAX Necircn hệ thống Asterisk phải đảm traacutech nhiệm vụ liecircn kếcaacutec giao tiếp khaacutec nhau đoacute để xử lyacute cuộc gọi
Hệ thống cũng bao gồm 4 chức năng API chiacutenh
Codec translator API caacutec hagravem đảm nhiệm thực thi vagrave giải neacuten caacutec chuẩn khaacutecnhau như G711 GMS G729hellip
Asterisk Channel API Giao tiếp với caacutec kecircnh liecircn lạc khaacutec nhau đacircy lagrave đầumối cho việc kết nối caacutec cuộc gọi tương thiacutech với nhiều chuần khaacutec nhau như SIIAX H323 Zaptelhellip
Asterisk file format API Asterisk tương thiacutech với việc xử lyacute caacutec loại file coacuteđịnh dạng khaacutec nhau như Mp3 wav gsmhellip
Asterisk Aplication API Bao gồm tất cả caacutec ứng dụng được thực thi trong hệthống Asterisk như voicemail callerIDhellip
wwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1172
Taacutec Giả Lecirc Quốc Toagraven
11
Ngoagravei ra Asterisk cograven coacute thư viện Asterisk Gateway Interface (AGI tương tựnhư CGI) - cơ chế kiacutech hoạt ứng dụng becircn ngoagravei cho pheacutep viết kịch bản phức tạp
với một số ngocircn ngữ như PHP hay Perl Noacutei chung khả năng viết caacutec ứng dụng tugravey biến rất lớn
3 MỘT SỐ TIacuteNH NĂNG CƠ BẢN
Asterisk coacute rất nhiều tiacutenh năng đatilde được giới thiệu ở trecircn nhưng để hiểu rotilde hếtất cả caacutec tiacutenh năng trecircn thật sự lagrave thaacutech thức đối với chuacuteng ta Trong phần nagraveychuacuteng tocirci sẽ giới thiệu một số tiacutenh năng với caacutec ứng dụng cụ thể để hiểu hơn về
thống asterisk
1 Voicemail (hộp thư thoại)
Đacircy lagrave tiacutenh năng cho pheacutep hệ thống nhận caacutec thocircng điệp tin nhắn thoại mỗmaacutey điện thoại được khai baacuteo trong hệ thống Asterisk cho pheacutep khai baacuteo thecircm chứnăng hộp thư thoại
Mỗi khi số điện thoại bận hay ngoagravei ldquovugraveng phủ soacutengrdquo thigrave hệ thống asteriskđịnh hướng trực tiếp caacutec cuộc gọi đến hộp thư thoại tương ứng đatilde khai baacuteo trước
Voicemail cung cấp cho người sử dụng nhiều tiacutenh năng lựa chọn như password xaacutec nhận khi truy cập vagraveo hộp thư thoại gửi mail baacuteo khi coacute thocircng điệmới
2 Call Forwarding(chuyển cuộc gọi)
Khi khocircng ở nhagrave hoặc đi cocircng taacutec magrave người sử dụng khocircng muốn bỏ lỡ tất ccaacutec cuộc gọi đến thigrave hatildey nghĩ ngay đến tiacutenh năng chuyển cuộc gọi
Đacircy lagrave tiacutenh năng thường được sử dụng trong hệ thống Asterisk Chức năng cho pheacutep chuyển một cuộc gọi đến một hay nhiều số maacutey điện thoại được định trước
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1272
Taacutec Giả Lecirc Quốc Toagraven
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ậnchuyển cuộc gọi khi khocircng trả lời chuyển cuộc gọi tức thời chuyển cuộc gọi v
thời gian định trước3 Caller ID (hiển thị số gọi)
Chức năng nagravey rất hữu dụng khi một ai đoacute gọi đến vagrave ta muốn biết chiacutenh xaacuteclagrave gọi từ đacircu vagrave trong một số trường hợp biết chắc họ lagrave ai
Ngoagravei ra Caller ID cograven lagrave chức năng cho pheacutep chuacuteng ta xaacutec nhận số thuecirc bao
gọi đến coacute nghĩa lagrave dựa vagraveo caller ID chuacuteng ta coacute tiếp nhận hay khocircng tiếp nhậncuộc gọi từ phiacutea hệ thống Asterisk Ngăn một số cuộc gọi ngoagravei yacute muốn
4 Automated attendant (chức năng IVR)
Chức năng tương taacutec thoại coacute rất nhiều ứng dụng trong thực tế khi gọi điệthoại đến một cơ quan hay xiacute nghiệp thuecirc bao thường nghe thocircng điệp nhưldquoXinchagraveo mừng bạn đatilde gọi đến cocircng ty chuacuteng Tocirci hatildey nhấn phiacutem 1 để gặp phograveng kinh
doanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquosau đoacute tuỳ vagraveo sự tương taacutec của thuecirc 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 thuecirc bao muố biết tỉ giaacute Đocircla hiện nay như thế nagraveo hay kết quả sổ số hellip tất caacutec những monmuốn trecircn đều coacute thể thực hiện qua chức năng tương taacutec thoại
5 Time and Date
Vagraveo từng thời gian cụ thể cuộc gọi sẽ định hướng đến một số điện thoại hmột chức năng cụ thể khaacutec viacute dụ trong cocircng ty giaacutem đốc muốn chỉ cho pheacutep nhacircnviecircn sử dụng maacutey điện thoại trong giờ hagravenh chaacutenh cograven ngoagravei giờ thigrave sẽ hạn chế hakhocircng cho pheacutep gọi ra becircn ngoagravei
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1372
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1472
Taacutec Giả Lecirc Quốc Toagraven
14
Asterisk thực hiện rất nhiều ngữ cảnh ứng dụng khaacutec nhau tuỳ vagraveo nhu cầu sdụng dưới dacircy lagrave những ngữ cảnh ứng dụng thường được sử dụng trong thực
triển khai hệ thống asterisk1 Tổng đagravei voip IP PBX
IP BPX
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1572
Taacutec Giả Lecirc Quốc Toagraven
15
Đacircy lagrave hệ thống chuyển mạch voip được xacircy dựng phục vụ caacutec cocircng ty coacute nhucầu thực hiện trecircn nền tảng mạng nội bộ đatilde triển khai Thay vigrave lắp đặt một hệ thố
PBX cho nhu cầu liecircn lạc nội bộ thigrave necircn lắp đặt hệ thống voip điều nagravey sẽ lagravem giảchi phiacute đaacuteng kể Hệ thống coacute thể liecircn 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 ở đacircy lagrave hiện tại Cocircng ty đatilde trang bị hệ thống PBX bacircygiờ cần trang bị thecircm để đaacutep ứng nhu cầu liecircn lạc trong cocircng ty sao cho với chi phthấp nhất giải phaacutep để thực hiện đoacute lagrave trang bị hệ thống asterisk vagrave kết nối với h
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1672
Taacutec Giả Lecirc Quốc Toagraven
16
thống PBX đang tồn tại qua luồng E1 Ngoagravei ra để tăng khả năng liecircn lạc với mạnPSTN vagrave VOIP khaacutec Cocircng Ty coacute thể thực hiện kết nối với nhagrave cung cấp dịch vụvoip
3 Kết nối giữa caacutec server Asterisk
Kết nối giữa caacutec server asterisk
Phương phaacutep trecircn ứng dụng rất hiệu quả cho caacutec cocircng ty nằm ratildei raacutec ở caacutec vtrị địa lyacute khaacutec nhau nhằm giảm chi phiacute đường dagravei Viacute dụ Cocircng ty Mẹ coacute trụ sở đặtại nước Mỹ vagrave caacutec Chi nhaacutenh đặt tại Việt Nam với caacutec địa điểm Thagravenh phố Hồ ChMinh vagrave Hagrave Nội Thocircng qua mạng WAN của Cocircng Ty caacutec cuộc gọi nội bộ giữa caacutec
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1772
Taacutec Giả Lecirc Quốc Toagraven
17
vị triacute khaacutec nhau sẽ lagravem giảm chi phiacute đaacuteng kể Ngữ cảnh nagravey về mặt phaacutep luật khocircncho cuộc gọi từ Mỹ vagraveo Việt Nam
4 Caacutec ứ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 caacutec server kết nối với hệ thống PSTN hay tổng đagravei PBXđể triển khai caacutec ứng dụng như tương taacutec thoại IVR Một viacute dụ cho ứng dụng tươtaacutec thoại đoacute lagrave cho biết kết quả sổ số hay kiểm tra cước cuộc gọi giống dịch v19001260 vậy Ứng dụng VoiceMail thu nhận những tin nhắn thoại từ phiacutea thuecirc bao giống như chức năng hộp thư thoại của Bưu Điện Thagravenh phố triển khai Cograve
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1872
Taacutec Giả Lecirc Quốc Toagraven
18
chức năng điện thoại hội nghị thiết lập cho nhiều maacutey điện thoại cugraveng noacutei chuyệvới nhau
5 Chức năng Phacircn phối cuộc gọi tự động ACD
Phacircn phối cuộc gọi với hagraveng đợi
ACD(Automatic Call Distribution) Phacircn phối cuộc gọi tự động
Đacircy lagrave chức năng ứng dụng cho nhu cầu chăm soacutec khaacutech hagraveng hay nhận phảnhổi từ phiacutea khaacutech hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1972
Taacutec Giả Lecirc Quốc Toagraven
19
Cocircng ty coacute khả năng tiếp nhận cugraveng một luacutec 10 cuộc gọi như thế cuộc gọi th11 gọi đến thigrave hệ thống giải quyết như thế nagraveo Bigravenh thường thigrave sẽ nghe tiacuten hiệ
bận nhưng với chức năng phacircn phối cuộc gọi sẽ đưa thuecirc bao đoacute vagraveo hagraveng đợi đchờ trả lời trong khi chờ trả lời cuộc gọi thuecirc bao coacute thể nghe những bagravei haacutet hay dasterisk cung cấp trong luacutec nagravey nếu 1 trong mười số điện thoại trở về trạng thaacutei rthigrave cuộc gọi đang chờ sẽ được trả lời Giống như chức năng của dịch vụ 1080 ha116 của Bưu Điện Thagravenh Phố vậy
2 CAacuteC KHAacuteI NIỆM TRONG HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Trong chương nagravey sẽ giải thiacutech rotilde caacutec khaacutei niệm cơ bản liecircn quan đến hệ thốnasterisk cung cấp những kiến thức nền tảng những khaacutei niệm cần thiết để thiếttriển khai xacircy dựng hệ thống điện thoại với Asterisk
2 PBX - Private Branch Exchange
PBX hay cograven gọi lagrave PABX - Private Automatic Branch Exchange lagrave hệ thốngtổng đagravei nội bộ được đặt tại nhagrave thuecirc bao từ Automatic ở đacircy muốn noacutei đến lagrave hthống tổng đagravei điện tử tự động nhưng hiện nay đa số lagrave tổng đagravei PBX điện tử tđộng necircn từ trecircn thực sự khocircng cograven cần thiết nữa
PBX với mục tiecircu chia sẻ nhiều thuecirc bao nội bộ gọi ra thế giới becircn ngoagraveithocircng qua một vagravei đường trung kế hay noacutei một caacutech khaacutec PBX lagrave hệ thống trungchuyển giữa caacutec đường dacircy điện thoại becircn ngoagravei từ cocircng ty điện thoại vagrave maacutey điệthoại nội bộ trong tổng đagravei PBX Vigrave thế necircn số lượng maacutey điện thoại nội bộ luocircnhiều hơn số đường dacircy nối đến PBX từ becircn ngoagravei
wwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2072
Taacutec Giả Lecirc Quốc Toagraven
20
PBX thực hiện chuyển mạch cuộc gọi caacutec maacutey điện thoại nội bộ với nhau vvới caacutec maacutey điện thoại becircn ngoagravei thocircng qua đường trung kế Đồng thời thực hiệ
chuyển mạch caacutec cuộc gọi điện thoại từ becircn ngoagravei vagraveo caacutec maacutey điện thoại nội bộNgoagravei việc chuyển mạch cuộc gọi PBX cung cấp nhiều tiacutenh năng sử dụng
cho nhiều mục điacutech khaacutec nhau của khaacutech hagraveng magrave bản thacircn caacutec đường dacircy điệnthoại từ cocircng ty điện thoại kết nối đến khocircng thể thực hiện được caacutec tiacutenh năng ntương taacutec thoại(IVR) Voicemail phacircn phối cuộc gọi tự động(ADC)hellip
Hiện nay với việc phaacutet triển mạnh mẽ của cocircng nghệ VoIP chuacuteng ta cograven coacutethecircm thuật ngữ IP PBX Đacircy lagrave hệ thống chuyển mạch PBX với cocircng nghệ Voip
3 VOIP - Voice Over Internet Protocol
Voice over Internet Protocol (VoIP) lagrave một cocircng nghệ cho pheacutep truyền thoạisử dụng giao thức mạng IP trecircn cơ sở hạ tầng sẵn coacute của mạng internet Voip lagrave mtrong những cocircng nghệ viễn thocircng đang được quan tacircm nhất hiện nay khocircng chỉ đố
với nhagrave khai thaacutec caacutec nhagrave sản xuất magrave cograven cả với người sử dụng dịch vụVoip coacute thể vừa thực hiện mọi loại cuộc gọi như trecircn mạng điện thoại kecircn
truyền thống (PSTN) đồng thời truyền dữ liệu trecircn cơ sở mạng truyền dữ liệu Dcaacutec ưu điểm về giaacute thagravenh dịch vụ vagrave sự tiacutech hợp nhiều loại higravenh dịch vụ necircn voihiện nay được triển khai một caacutec rộng ratildei
Dịch vụ điện thoại voip lagrave dịch vụ ứng dụng giao thức IP nguyecircn tắc củaVoIP bao gồm việc số hoaacute tiacuten hiệu tiếng noacutei thực hiện việc neacuten tiacuten hiệu số chia nhcaacutec goacutei nếu cần vagrave truyền goacutei tin nagravey qua mạng tới nơi nhận caacutec goacutei tin nagravey đượraacutep lại theo đuacuteng thứ tự của bản tin giải matilde tiacuten hiệu tương tự phục hồi lại tiếng n ban đầu
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2172
Taacutec Giả Lecirc Quốc Toagraven
21
Caacutec cuộc gọi trong VoIP dựa trecircn cơ sở sử dụng kết hợp cả chuyển mạchkecircnh vagrave chuyển mạch goacutei Trong mỗi loại chuyển mạch đều coacute ưu nhược điể
riecircng của noacute Trong kỹ thuật chuyển mạch kecircnh giagravenh riecircng cho một kecircnh truyềngiữa hai thiết bị đầu cuối thocircng qua caacutec node chuyển mạch trung gian Trongchuyển mạch kecircnh tốc độ truyền dẫn luocircn luocircn cố định(nghĩa lagrave băng thocircng khocircnđổi) với mạng điện thoại PSTN tốc độ nagravey lagrave 64kbps truyền dẫn trong chuyểmạch kecircnh coacute độ trễ nhỏ
Trong chuyển mạch goacutei caacutec bản tin được chia thagravenh caacutec goacutei nhỏ gọi lagrave caacutec
goacutei nguyecircn tắc hoạt động của noacute lagrave sử dụng hệ thống lưu trữ vagrave chuyển tiếp caacutec gtin trong nuacutet mạng Đối với chuyển mạch goacutei khocircng tồn tại khaacutei niệm kecircnh riecircng băng thocircng khocircng cố định coacute nghĩa lagrave coacute thể thay đổi tốc độ truyền kỹ thuật chuyểmạch goacutei phải chịu độ trễ lớn vigrave trong chuyển mạch goacutei khocircng quy định thời giancho mỗi goacutei dữ liệu tới điacutech mỗi goacutei coacute thể đi bằng nhiều con đường khaacutec nhau đtới điacutech chuyển mạch goacutei thiacutech hợp cho việc truyền dữ liệu vigrave trong mạng truyền dliệu khocircng đogravei hỏi về thời gian thực như thoại để sử dụng ưu điểm của mỗi lo
chuyển mạch trecircn thigrave trong voip kết hợp sử dụng cả hai loại chuyển mạch kecircnh vchuyển mạch goacutei
4 PSTN ndash Public Switched Telephone Network
PSTN lagrave mạng chuyển mạch điện thoại cocircng cộng hay noacutei caacutech khaacutec lagrave mạngkết nối tất cả caacutec hệ thống tổng đagravei chuyển mạch-mạch
Để hiểu rotilde hơn hatildey xem xeacutet mạng PSTN với mạng Internet về khiacutea cạnhchuyển thoại trecircn đoacute Chuyển mạch mạch muốn thực hiện cuộc gọi giữa hai thu bao thigrave hệ thống phải giagravenh riecircng một kecircnh truyền 64kbps để chuyển tải tiacuten hiệthoại trecircn đoacute Cograven cuộc gọi điện thoại trecircn mạng Internet thigrave tiacuten hiệu thoại đượđoacuteng goacutei vagrave chuyển đi trecircn cugraveng kecircnh truyền với nhiều dịch vụ khaacutec Vigrave lẽ đoacute chấlượng cuộc gọi trecircn mạng PSTN bao giờ cũng tốt hơn trecircn mạng Internet nhưng đổ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2272
Taacutec Giả Lecirc Quốc Toagraven
22
lại chi phiacute lại đắc hơn rất nhiều đặc biệt lagrave caacutec cuộc gọi quốc tế necircn phải cần nhắc kỹ khi sử dụng
PSTN được phaacutet triển trecircn chuẩn ITU(International TelecommunicationUnion) cograven mạng Internet được phaacutet triển trecircn chuẩn IETF(Internet EngineeringTask Force) cả hai mạng trecircn đều sử dụng địa chỉ để định tuyến cuộc gọi PSTN sdụng caacutec con số điện thoại để chuyển mạch cuộc gọi giữa caacutec tổng đagravei điện thotrong khi đoacute trecircn mạng Internet địa chỉ IP sẽ được sử dụng để định tuyến caacutec goacutethoại
5 TDM ndash Time Division Multiplexing
Lagrave kỹ thuật gheacutep kecircnh phacircn chia thời gian nhiều tiacuten hiệu coacute thể truyền đồngthời trecircn một đường truyền TDM được sử dụng chuyển thoại trong hệ thống mạPSTN Coacute hai chuẩn gheacutep kecircnh TDM cơ bản lagrave E1 với 30 kecircnh thoại trecircn mộtkhung tốc độ 2Mbps vagrave T1 với 24 kecircnh thoại tốc độ 15Mbps
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2372
Taacutec Giả Lecirc Quốc Toagraven
23
Higravenh Minh họa gheacutep kecircnh phacircn chia theo thời gian
6 Caacutec higravenh thức baacuteo hiệu giao tiếp TDM
1 FXO vagrave FXS
FXO (Foreign Exchange Office) lagrave thiết bị nhận tiacuten hiệu từ tổng đagravei gửi đếnnhư dograveng chuocircng tiacuten hiệu nhấc gaacutec maacutey tiacuten hiệu mời quay số gửi vagrave nhận tiacuten hiệthoạihellip FXO giống như maacutey Fax hay modem dial-up 56k vậy Dugraveng để kết nối vớ
đường dacircy điện thoại
FXS (Foreign Exchange Station) lagrave thiết bị tại nơi cung cấp đường dacircy điệnthoại thiết bị FXS sẽ cung cấp tiacuten hiệu mời quay số(dialtone) dograveng chuocircng hồi acircmchuocircng(ring tone) Trong đường dacircy Analog FXS cung cấp dograveng chuocircng vagrave điện aacutepcho điện thoại hoạt động viacute dụ FXS cung cấp điện aacutep -48VDC đến maacutey điện tho
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2472
Taacutec Giả Lecirc Quốc Toagraven
24
Analog trong suốt thời gian đagravem thoại vagrave cung cấp 90VAC(20hz) để phaacutet điện aacuteprung chuocircng Thiết bị FXS phaacutet cograven thiết bị FXO nhận
Card TDM sử dụng trong hệ thống asterisk thường tiacutech hợp vừa thiết bị FXOvừa lagrave thiết bị FXS(Giống bộ ATA) FXO để kết nối với đường dacircy điện thoại cograveFXS dugraveng để kết nối với maacutey điện thoại analog thocircng thường dugraveng để chuyển mạcuộc gọi TDM qua hệ thống asterisk(Xem thecircm trong phần cấu higravenh cho kecircnhTDM)
Toacutem lại cần nắm
FXS được kết nối với FXO giống với đường dacircy điện thoại nối với maacuteyđiện thoại
FXS cung cấp nguồn cho điện thoại FXO(điện thoại Analog)
Higravenh a) Maacutey điện thoại vai trograve FXO kết nối với FXS(PSTN) Higravenh b) PBXkết nối với FXO vagrave FXS Higravenh c) ATA đoacuteng vai trograve như FXS để kết nối với maacuteyđiện thoại vai trograve FXO
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2572
Taacutec Giả Lecirc Quốc Toagraven
25
2 Baacuteo hiệu Analog giữa đầu cuối vagrave tổng đagravei
Khi chuacuteng ta nhấc mấy điện thoại để gọi thigrave nghe tiacuten hiệu mời quay số kh
cuộc gọi gọi đầu becircn kia bị bận thigrave chuacuteng ta nghe tiacuten hiệu bận(busy tone) caacutec loạtiacuten hiệu như vậy gọi lagrave caacutec tiacuten hiệu baacuteo hiệu analog Caacutec tiacuten hiệu như Mời quay sốtiacuten hiệu bận rung chuocircng trạng thaacutei nhấc gaacutec maacutey Caacutec loại tiacuten hiệu trecircn được trađổi giữa thiết bị FXO vagrave FXS
Coacute nhiều phương thức baacuteo hiệu khaacutec nhau ứng với từng nơi sử dụng vigrave thếtại nơi kết nối với đường dacircy điện thoại cần xem xeacutet họ đang sử dụng phương th
baacuteo hiệu gigrave từ đoacute chuacuteng ta khai thaacutec loại tiacuten hiệu baacuteo hiệu cho thiacutech hợp caacutec phương thức baacuteo hiệu như Loop Start Ground Start Một minh họa cho việc sửdụng sai phương thức baacuteo hiệu lagrave khi chuacuteng ta khai baacuteo phương thức baacuteo hiệu giữhệ thống Asterisk vagrave đường dacircy điện thoại khaacutec nhau thigrave dẫn đến Asterisk sẽ khocircnnhận biết được tiacuten hiệu gaacutec maacutey điều nagravey sẽ lagravem cho asterisk khocircng baacuteo giờ giải tỏđược cuộc gọi để thực hiện cuộc gọi mới
3 Baacuteo hiệu giữa caacutec tổng đagravei
SS7 hệ thống baacuteo hiệu số 7 được phaacutet triển bởi ATampT vagrave ITU lagrave hệ thống baacuteo hiệu chuyển caacutec cuộc gọi giữa caacutec tổng đagravei trong mạng PSTN Trong hệ thốn baacuteo hiệu số 7 tiacuten hiệu chuyển tải trecircn đường trung kế kết nối giữa hai tổng đagravei gồcoacute hai mạch riecircng một cho thoại vagrave một cho baacuteo hiệu như vậy thoại vagrave baacuteo hiệu cthể chuyển trecircn hai kecircnh vật lyacute khaacutec nhau
7 Baacuteo Hiệu trecircn mạng điện thoại VoIP
1 SIP Session Initiation Prorocol
Sip lagrave giao thức Internet dagravenh cho baacuteo hiệu VoIP được phaacutet triển bởi IETFcung cấp vagravei chức năng giống hệ thống baacuteo hiệu số 7 nhưng dựa trecircn nền IP Mộchức năng giống baacuteo hiệu số 7 đoacute lagrave baacuteo hiệu vagrave thoại chuyển tải trecircn hai kecircnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2672
Taacutec Giả Lecirc Quốc Toagraven
26
riecircng Giao thức SIP thực hiện chức năng thiết lập vagrave baacuteo hiệu cuộc gọi khi noacutei đế baacuteo hiệu cuộc gọi lagrave chỉ định caacutec tiacuten hiệu baacuteo hiệu như tiacuten hiệu mời quay số tiacutehiệu bậnhellip
2 Proxy server
Mặc dầu hai thiết bị SIP coacute thể liecircn lạc trực tiếp với nhau để khởi tạo cuộgọi nhưng trong giao thức SIP cograven coacute chức năng Proxy để linh hoạt hơn trong thiếlập cuộc gọi Proxy Server sẽ lagravem nhiệm vụ ghi nhận tất cả caacutec số điện thoại đư phiacutea client đăng kyacute đến qua bản tin ldquoRegistrationrdquo Khi một client khaacutec thực hiện
cuộc gọi thigrave thực sự Client đoacute khocircng biết số điện thoại cần gọi đang ở đacircu necircn thocircnqua Proxy server để tigravem kiếm thiết lập cuộc gọi
+
Higravenh Đăng kyacute từ Client đến SIP Proxy Với Giao thức SIP đường baacuteo hiệu vagravethoại riecircng
3 RTP vaacute NAT
Caacutec cuộc gọi trecircn Internet với giao thức SIP được chia thagravenh caacutec goacutei thoại vagraveđược chuyển qua giao thức RTP(Real Time Protocol) RTP lagrave giao thức khocircng chỉthực hiện chuyển caacutec goacutei thoại qua Internet magrave cograven coacute cả video nữa Một cuộc gọ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2772
Taacutec Giả Lecirc Quốc Toagraven
27
thocircng thường coacute hai hướng thocircng tin lagrave nhận vagrave phaacutet RTP lagravem việc chuyển caacutec goacutedữ liệu thoại cũng trecircn hai hướng
NAT Network Address Translators lagrave một trở ngại lớn trong giao thức RTPMạng sử dụng NAT lagrave một mạng chia sẻ nhiều địa chỉ IP nội bộ với một địa chỉ ICocircng cộng để kết nối với thế giới becircn ngoagravei NAT dugraveng để chia sẻ nhiều maacutey tiacutentrong mạng LAN nội bộ sử dụng được Internet nhưng cũng chiacutenh vigrave thế magrave caacutec maacutetiacutenh nội bộ gặp khoacute khăn trong việc thực hiện cuộc gọi VoIP qua Internet Đoacute chiacutenhlagrave vấn để trở ngại khi truyền thoại qua giao thức RTP
Higravenh Minh họa hoạt động của NAT
Trong Giao thức RTP như chuacuteng ta đatilde biết đoacute lagrave thoại được chuyển trecircn haiđường khaacutec nhau lagrave đường phaacutet vagrave đường thu Vấn đề NAT nằm ở chỗ tiacuten hiệthoại từ becircn ngoagravei vagraveo becircn trong qua giao thức RTP khocircng thực hiện được cograven chiềungược lại thigrave thực hiện tốt Hay noacutei caacutech khaacutec vấn đề NAT lagravem cho caacutec cuộc gọi t
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2872
Taacutec Giả Lecirc Quốc Toagraven
28
Internet đagravem thoại vagraveo caacutec maacutey nội bộ qua NAT thigrave khocircng nghe được cograven trongtrường hợp caacutec cuộc gọi từ caacutec maacutey nội bộ ra caacutec maacutey internet thigrave nghe tốt
Vấn đề NAT trecircn được giải quyết trong Asterisk bằng việc khai baacuteo thocircng số NAT=yes trong cấu higravenh kecircnh giao thức SIP
4 IAX ndash Inter Asterisk eXchange
IAX lagrave giao thức baacuteo hiệu Voip được phaacutet triển bởi taacutec giả của phần mềmAsterisk để khắc phục những hạn chế trong giao thức SIP Khocircng giống như giathức SIP chuyển tải thoại vagrave baacuteo hiệu trecircn hai kecircnh khaacutec nhau (out of band) IAXchuyển tải thoại vagrave baacuteo hiệu trecircn cugraveng một kecircnh(in band) IAX giải quyết được vấđề NAT đề cập trecircn phần giao thức SIP Mặc khaacutec IAX lagrave giao thức tối ưu trongviệc sử dụng băng thocircng cho pheacutep nhiều goacutei dữ liệu thoại trecircn cugraveng một IP headecơ chế chuyển tải nhiều cuộc gọi trecircn cugraveng một goacutei IP được gọi lagrave trung kế(Trunk)
Coacute thể giải thiacutech thecircm cơ chế trung kế như sau Giả sử Tocirci cần gửi 5 bức thtới người bạn của Tocirci Tocirci sẽ coacute hai higravenh thức để thực hiện thứ nhất lagrave mỗi bức tTocirci bỏ vagraveo một phong bigrave vậy tổng cộng tocirci phải sử dụng 5 phong bigrave để gửi đi 5 bứthư Caacutech thứ hai lagrave Tocirci bỏ 5 bức thư vagraveo 1 phong bigrave vagrave gửi đi vậy tổng cộng Tocircchỉ tốn 1 phong bigrave Qua phacircn tiacutech trecircn rotilde ragraveng việc 5 bức thư vagraveo một phong bigrave sẽtiết kiệm hơn so với 5 bức thư với 5 phong biacute Cơ chế trecircn cũng giống như nhiềcuộc gọi được đoacuteng thagravenh goacutei vagrave chuyển đi trecircn đường trung kế
Toacutem lại IAX lagrave giao thức dagravenh cho VoIP mới nhất cho đến thời điểm nagravey vớinhiều ưu điểm hấp dẫn như
+ Tối thiểu sử dụng băng thocircng
+ Trong suốt với NAT
+ Hiệu quả với cơ chế trung kế
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2972
Taacutec Giả Lecirc Quốc Toagraven
29
8 Thiết Bị VoIP
1 Voip Phone
Đacircy lagrave thiết bị phần cứng kết nối với mạng VoIP giống như maacutey điện thoại đ bagraven thocircng thường nhưng dagravenh cho VoIP cần phải thực hiện cấu higravenh trước khi sửdụng
Lưu yacute một số tiacutenh năng khi thực hiện mua thiết bị điện thoại VoIP
+ Low bandwidth hỗ trợ Codec nagraveo G729 lagrave tốt nhất hiện nay
+ Web Interface Phải coacute giao tiếp thiết lập cấu higravenh thacircn thiện dễ sử dụng
+ Audio Interface Coacute speaker phone hay khocircng
Giaacute thagravenh của điện thoại voip IP đắc hơn điện thoại thocircng thường giaacute khoảntrecircn dưới 100$ một caacutei
Higravenh Maacutey Điện Thoại VoIP
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3072
Taacutec Giả Lecirc Quốc Toagraven
30
2 Softphone
Lagrave một phần mềm được cagravei trecircn maacutey tiacutenh thực hiện tất cả caacutec chức năng giốn
như thiết bị điện thoại Voip cần lưu yacute khi sử dụng softphone lagrave maacutey tiacutenh phải ccard acircm thanh headphone vagrave firewall khocircng bị khoacutea
Sử dụng softphone với hệ thống Asterisk necircn dugraveng softphone với cocircng nghệgiao thức mới dagravenh cho Asterisk đoacute lagrave IAX
Higravenh Điện Thoại Softphone
3 Card giao tiếp với PSTN
Muốn cho pheacutep caacutec maacutey điện thoại nội bộ trong hệ thống Asterisk kết nối vthực hiện cuộc gọi với mạng PSTN chuacuteng ta cần phải coacute thiết bị phần cứng tươthiacutech Thiết bị phần cứng sử dụng cho hệ thống Asterisk do chiacutenh taacutec giả lập cocircng
Digium phacircn phối đacircy cũng chiacutenh lagrave yacute tưởng lớn trong việc phacircn phối phần mềmAsterisk lagrave hệ thống nguồn mở sử dụng miễn phiacute
Thiết bị phần cứng thường kyacute hiệu bắt đầu bằng cụm từ TDMxyB trong đoacute lagrave số lượng port FXS y lagrave số lượng port FXO giaacute trị tối đa của x vagrave y lagrave 4 viacute dụcard TDM22B coacute nghĩa lagrave coacute 2 fort FXS vagrave 2 port FXO
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3172
Taacutec Giả Lecirc Quốc Toagraven
31
Higravenh Card TDM22B gồm 4 port 2 FXS vagrave 2 FXO
4 ATA Analog Telephone Adaptors
ATA lagrave thiết bị kết nối với điện thoại Analog thocircng thường đến mạng VoIPmột thiết bị ATA gồm coacute hai loại port RJ-11 để kết nối với maacutey điện thoại analo
thocircng thường cograven RJ-45 để kết nối với mạng VoIP
ATA thực sự lagrave thiết bị FXS chuyển đổi tiacuten hiệu Analog sang tiacuten hiệu số sửdụng cho mạng VoIP để tận dụng maacutey điện thoại Analog necircn trang bị thiết bị ATAthay vigrave phải trang bị điện thoại VoIP
Thiết bị ATA sử dụng với giao thức IAX được Digium phacircn phối lagrave thiết bịATA được sử dụng rộng ratildei với Asterisk coacute tecircn gọi lagrave IAXy
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3272
Taacutec Giả Lecirc Quốc Toagraven
32
Higravenh Thiết bị ATA
9 Codecs
Thuật Toaacuten codecs(CompressorDe-compressor) lagrave một tập caacutec quy luật đượcsử dụng để chuyển đổi caacutec tiacuten hiệu thoại dạng Analog sang tiacuten hiệu số vagrave ngược lạ
Coacute nhiều thuật toaacuten codec để thực hiện chuyển đổi tiacuten hiệu analog sang tiacuten
hiệu số dạng nhị phacircn (01) như G711 GSM G729hellipỨng với mỗi thuật toaacuten coacutenhững ưu điểm riecircng đặc biệt lagrave việc tối ưu sử dụng băng thocircng trecircn đường truyềMục tiecircu cuối cugraveng lagrave caacutec thuật toaacuten đưa ra phải đảm bảo chất lượng cuộc gọi nhvagrave tiết kiệm băng thocircng nhất
G729 lagrave thuật toaacuten codec tốt nhất hiện nay trong hệ thống VoIP Với hệthống Asterisk để sử dụng thuật toaacuten nagravey cần phải mua bản quyền sử dụng vigrave đacircy
codec khocircng miễn phiacute sử dụng
10 QoS ndash Quality of Service
Caacutec yếu tố ảnh hưởng đến chất lượng của dịch vụ đối với VoIP đoacute lagrave caacuteyếu ảnh hưởng đến chất lượng tiacuten hiệu thoại
1 Độ trễ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3372
Taacutec Giả Lecirc Quốc Toagraven
33
Thoại lagrave dịch vụ mang tiacutenh thời gian thực rất cao vigrave thế trễ lagrave yếu tố ảnhhưởng rất lớn đến chất lượng dịch vụ Trễ được định nghĩa lagrave khoảng thời gian tiacute
từ luacutec tiacuten hiệu thoại đi từ miệng người noacutei tới tai người nghe Trễ lagrave yếu tố khocircnthể traacutenh khỏi độ trễ đối với mạng điện thoại truyền thống (mạng PSTN) khoảng50ms đến 70ms theo khiến nghị của ITU-T để đảm bảo chất lượng cho hệ thốVoIP thigrave độ trễ từ đầu phaacutet tới đầu thu hoặc ngược lại khocircng được vượt quaacute 150mkhi magrave độ trễ vượt quaacute 400ms đến 500ms thigrave khocircng thể chấp nhận được
Caacutec nguyecircn nhacircn gacircy ra trễ bao gồm Trễ trecircn mạng lưới trễ trecircn bộ mả hoacutea
giải matilde trễ trong quaacute trigravenh đoacuteng goacutei trễ bộ đệm trễ xử lyacute tiếng noacuteihellip2 Độ trượt(Jitter)
Nguyecircn nhacircn gacircy ra trượt lagrave goacutei tiacuten hiệu thoại trong quaacute trigravenh truyền từnguồn đến điacutech sẽ gặp phải những điều kiện khaacutec nhau trecircn mạng lưới do đoacute thườđến điacutech với những khoảng trễ khaacutec nhau Đacircy lagrave tiacutenh khocircng đồng nhất của trễ Mnguyecircn nhacircn khaacutec của trượt đối với ứng dụng PC to PC lagrave do việc sử dụng hệ điề
hagravenh phi thời gian thực caacutec goacutei tin thoại phải đợi hệ điều hagravenh xử lyacute trong nhữnkhoảng thời gian khaacutec nhau khi magrave hệ điều hagravenh đang phải xử lyacute đối với caacutec ứndụng khaacutec
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3472
Taacutec Giả Lecirc Quốc Toagraven
34
Higravenh Nguyecircn nhacircn xảy ra trượt
Để loại bỏ tiacutenh khocircng đồng nhất của trễ người ta thiết kế caacutec bộ đệm t(Jitter Buffer) tại nơi đến của caacutec goacutei tin caacutec goacutei tin đến với caacutec khoảng caacutech khaacutecnhau về thời gian được lưu tại bộ đệm rồi phaacutet khỏi bộ đệm với khoảng trễ n
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3572
Taacutec Giả Lecirc Quốc Toagraven
35
nhau Khi bộ đếm coacute kiacutech thước cagraveng lớn thigrave khả năng loại bỏ tiacutenh khocircng đồng nhấcagraveng lớn tuy nhiecircn việc sử dụng bộ đệm sẽ gacircy ra hiện tượng trễ trong ứng dụnthoại do đoacute cần coacute bagravei toaacuten cacircn đối giữa độ trễ vagrave độ trượt
Ngoagravei 2 nguyecircn nhacircn trecircn cograven một số nguyecircn nhacircn nữa ảnh hưởng đến chấtlượng thoại như độ mất goacutei giới hạn băng thocircng tiếng vọng
3 CAgraveI ĐẶT ASTERISK
1 Cagravei đặt Asterisk
1 Download vagrave bung neacuten
Để cagravei đặt Asterisk đầu tiecircn chuacuteng ta cần phải cagravei đặt hệ điều hagravenh linux trecircnmaacutey tiacutenh của migravenh Coacute thể cagravei hệ điều hagravenh Linux Fedora CentOS Redhat hoặcDebian Caacutec goacutei phần mềm phụ thuộc phải coacute trong hệ điều hagravenh Linux trước khcagravei Asterisk bao gồm
bison
gcc
kernel-source
libtermcap-devel
ncurses-devel
openssl096b
openssl-devel
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3672
Taacutec Giả Lecirc Quốc Toagraven
36
Sau khi hoagraven tất caacutec bước trecircn chuacuteng ta tiến hagravenh download phần mềmasterisk với phiecircn bản mới nhất
cd usrsrc
wgetftpftpdigiumcompubasteriskasterisk-140targz
wgetftpftpdigiumcompubasteriskasterisk-addons-140targz
wgetftpftpdigiumcompubasteriskasterisk-sounds-140targz
wgethttpftpdigiumcompubzaptelzaptel-140targz
wgethttpftpdigiumcompublibprilibpri-140targz
Việc download coacute thể nhanh hay chậm tugravey vagraveo tốc độ trecircn đường internet saukhi download hoagraven thagravenh chuacuteng ta tiến hagravenh bung neacuten caacutec goacutei ra thư mục chỉ định
tar ndashxzvf asterisk-140targz
tar ndashxzvf asterisk-addons-140targz
tar ndashxzvf asterisk-sounds-140targz
tar ndashxzvf zaptel-140targz
tar ndashxzvf libpri-140targz
Giải neacuten xong chuacuteng ta nhớ thực hiện lệnh
ln ndashs usrsrcasterisk-140 usrsrcasterisk lệnh nagravey để bảo đảm goacuteildquoaddonsrdquo được biecircn dịch đuacuteng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3772
Taacutec Giả Lecirc Quốc Toagraven
37
Bacircy giờ tới phần chuacuteng ta biecircn dịch caacutec goacutei đatilde giải neacuten ở trecircn trước tiecircn lagrave goacuteizaptel kế đến lagrave libpri sau cugraveng lagrave goacutei Asterisk
2 Cagravei đặt goacutei Zaptel
Goacutei zaptel sẽ chứa tại thư mục usrsrczaptel Đaacutenh lệnh như dưới đacircy để cagraveđặt
cd usrsrczaptel
make clean make install
Lệnh nagravey thực hiện khoảng 2 phuacutet tugravey vagraveo tốc độ maacutey tiacutenh cagravei đặt sau khicagravei đặt xong sẽ trở lại dấu nhắc lệnh vagrave hiển thị một loạt caacutec thocircng baacuteo trong đoacute một số bản tin lỗi magrave chủ yếu lagrave yecircu cầu cagravei đặt caacutec goacutei phụ thuộc đatilde liệt kecirc ở trecircnếu caacutec goacutei trecircn chưa được cagravei đặt
Goacutei zaptel nagravey chứa caacutec driver cho caacutec phần cứng kết giao tiếp với asterisk
do Digium phacircn phối vagrave một số thư viện cho việc coacute thực hiện giao tiếp với phầcứng hay khocircng
Để Asterisk coacute thể chạy cugraveng với khởi động của maacutey tiacutenh chuacuteng ta cần thựchiện lệnh
make config
Lệnh nagravey sẽ tạo ra script chegraven module zaptel vagraveo kernel vagrave chạy ztconfig vagraveoluacutec khởi động maacutey Trong Redhat script nagravey sẽ được cheacutep vagraveo etcinitd chạy ở mức 3
3 Cagravei đặt goacutei libpri
Kế đến chuacuteng ta biecircn dịch goacutei libpri tại thư mục usrsrclibpri bằng lệnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3972
Taacutec Giả Lecirc Quốc Toagraven
39
make config
3 Cagravei đặt TrixBox
1 Giới thiệu
TRIXBOX được phaacutet triển từ nhacircn của ứng dụng Asterisk được tổng hợp từmột số thagravenh phần chiacutenh được phaacutet triển bởi cộng đồng phaacutet triển nguồn mAsterisk dưới bản quyền GPL Trixbox bao gồm những thagravenh phần chiacutenh cho việcấu higravenh ứng dụng thống kecirc tigravenh trạng hoạt động hệ thống lưu trữ dự phograveng v
nhacircn lagrave hệ điều hagravenh CentOS một phiecircn bản khaacutec của Redhat tất cả kết hợp vớnhau tạo thagravenh một goacutei hoagraven chỉnh Khi cagravei goacutei nagravey vagraveo maacutey tiacutenh thigrave coacute thể sử dụngnhư một tổng đagravei PBX
Caacutec thagravenh phần chiacutenh trong goacutei TRIXBOX lagrave
Asterisk PBX Thagravenh phần chiacutenh của hệ thống Trixbox
CentOS Một phiecircn bản Linux khaacutec của Redhat hoagraven toagraven miển phiacute sửdụng Lagrave nhacircn chiacutenh cho Trixbox
SugarCRM Hệ thống quan hệ khaacutech hagraveng CRM
A2Billing ndash Lagrave thagravenh phần dagravenh cho việc xacircy dựng hệ thống điện thoạitrả trước hay cograven gọi lagrave điện thọai thẻ (Calling Card)
Flash Operator Panel Bảng điều khiển giaacutem saacutet tigravenh trạng hoạt độngcủa caacutec maacutey điện thoại trong hệ thống
Web MeetMe Control Quản lyacute triển khai hệ thống điện thoại hội nghị
FreePBX Đacircy lagrave cocircng cụ với giao diện web dagravenh cho việc cấu higravenh hệthống Asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4072
Taacutec Giả Lecirc Quốc Toagraven
40
Hệ thống Lưu trữ dự phograveng vagrave thống kecirc Lagrave thagravenh phần của TRIXBOXcung cấp caacutec cocircng cụ cần thiết cho việc bảo trigrave bảo dưỡng hệ thống
Hệ thống Apache-Php-Mysql dagravenh cho giải phaacutep Webserver của hệthống
2 DOWNLOAD VAgrave LẮP ĐẶT TRIXBOX
Địa chỉ downloadhttpsourceforgenetprojectsasteriskathome
Khi download xong file Trixboxiso Hatildey dugraveng file nagravey Burn vagraveo CD ( xinlưu yacute lagrave dugraveng Nero hoặc chương trigravenh cheacutep đĩa ưa thiacutech rồi burn vagraveo cd_romchứ khocircng phải cheacutep file đoacute vagraveo cd_rom)
Sau khi coacute CD Hatildey boot từ CD nagravey để cagravei đặt trixbox
Chuacute yacute dữ liệu trecircn đĩa cứng sẽ bị xoacutea sạch để cagravei đặt trixbox Nếu trongđĩa cứng cograven dữ liệu hatildey backup tất cả trước khi tiến hagravenh lắp đặt trixbox
Tới đacircy lần lượt caacutec magraven higravenh chỉ dẫn sẽ hiện ra vagrave cứ theo hướng dẫn magrave cagraveđặt Sau khi cagravei đặt xong chuacuteng ta dugraveng Username root vagrave password password đểđăng nhập hệ thống
3 Cấu higravenh địa chỉ IP cho card mạng
Thiết lập địa chỉ IP bằng caacutech gotilde lệnh
netconfig
Chọn OK để thiếp lập
Nếu trong mạng coacute hỗ trợ DHCP thigrave hatildey chọn mục nagravey cograven nếu khocircng hatildeynhập địa chỉ IP tĩnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4172
Taacutec Giả Lecirc Quốc Toagraven
41
IP 19216801
Netmask 2552552550
Gateway 19216893254 ngotilde ra becircn ngoagravei
Primary nameserver 19216893200 thiết lập nếu coacute
Chọn OK để chấp nhận caacutec thiết lập trecircn
Sau khi hoagraven tất hatildey lagravem cho thiết lập coacute hiệu lực bằng caacutech reset lại
maacutey tiacutenh hoặc dugraveng lệnh sau
Service network stop
Service network start
Đến đacircy xem như cagravei đặt hoagraven tất bacircy giờ để cấu higravenh được Asterisk chuacutengta vagraveo một magravey khaacutec vagrave mở Internet Explorer hoặc một trigravenh duyệt web bất kỳ
nhập vagraveohttp19216801đatilde cấu higravenh ở trecircn vagrave tiến hagravenh cấu higravenh hệ thốngvới tagravei khoảng username maint vagrave password password
4 Tổ Chức Thư Mục của Asterisk
Asterisk sử dụng nhiều thư mục trecircn hệ thống linux để quản lyacute caacutec khiacutea cạnkhaacutec nhau của hệ thống như nghi nhận bản tin thoại caacutec bản tin nhắc thoại hoặcaacutec tập tin cấu higravenh Phần nagravey sẽ trigravenh bagravey caacutec thư mục chiacutenh yếu được tạo ra tronquaacute trigravenh lắp đặt vagrave được cấu higravenh trong tập tin Asteriskconf
1 etcasterisk
Thư mục etcasterisk chứa tất cả caacutec tập tin cấu higravenh của hệ thốngAsterisk ngoại trừ tập tin Zaptelconf được đặt tại thư mục etc Phần cứnZaptel đầu tiecircn được phaacutet triển bởi Jim Dixon thuộc nhoacutem Zapata Telephony
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4272
Taacutec Giả Lecirc Quốc Toagraven
42
Group để giao tiếp giữa maacutey tiacutenh với mạng điện thoại magrave Asterisk lại sửdụng phần cứng nagravey với lyacute do đoacute magrave file cấu higravenh zaptelconf khocircng nằmtrong thư mục etcasterisk
2 usrlibasteriskmodules
Thư mục usrlibasteriskmodules chứa tất cả caacutec module cần thiết đểasterisk hoạt động Becircn trong thư mục lagrave caacutec ứng dụng khaacutec nhau caacutec codeccaacutec định dạng acircm thanh(format) vagrave caacutec kecircnh thocircng tin(channel) Theo mặc địnhAsterisk sẽ nạp tất cả caacutec module vagraveo luacutec khởi động Chuacuteng ta coacute thể khocircng cho
nạp một module bất kỳ bằng caacutech khocircng khai baacuteo sử dụng trong tập tinmodulesconf Lưu yacute khi khocircng cho nạp module thigrave phải biết chắc module đoacutekhocircng lagravem ảnh hưởng hoạt động của asterisk nếu khocircng lỗi sẽ xuất hiện
3 varlibasterisk
Thư mục varlibasterisk chứa tập tin astdb vagrave một số thư mục con Tập tinastdb định vị thocircng tin cơ sở dữ liệu của Asterisk giống như Microsoft WindowsRegistry
Caacutec thư mục con của thư mục varlibasterisk bao gồm
agi-bin
Thư mục agi-bin chứa caacutec script của người dugraveng magrave Asterisk coacute thểđịnh vị sử dụng qua caacutec ứng dụng AGI
AGI lagrave phần giao tiếp với ngocircn ngữ lập trigravenh script để thực hiện mộtsố cocircng việc của Asterisk từ becircn ngoagravei
firmware
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4372
Taacutec Giả Lecirc Quốc Toagraven
43
Thư mục firmware chứa một số phần dẻo(firmware) cho caacutec thiết bịkhaacutec nhau tương thiacutech với Asterisk Hiện tại chỉ coacute thư mục con iax chứa
firmware cho thiếy bị IAXy của Digium IAXy lagrave thiết bị ATA sử dụng giaothức IAX
images
Caacutec ứng dụng thocircng tin với caacutec kecircnh hỗ trợ ảnh images thigrave sử dụng thư mụcnagravey Nhưng hiện tại caacutec kecircnh thocircng tin hầu như khocircng hỗ trợ truyền ảnh images necircthư mục nagravey cũng hiếm khi được sử dụng Tuy nhiecircn nếu caacutec thiết bị coacute hỗ trợ ththư mục nagravey trở necircn hiệu dụng
keys
Asterisk coacute thể sử dụng hệ thống khoaacute publicprivate để xaacutec minh caacutec kết nốgiữa caacutec server Asterisk thocircng qua chữ kyacute điện tử RSA Nếu đặt một khoaacute publicvagraveo thư mục keys thigrave kết nối của server đầu becircn kia coacute thể được xaacutec minh bằn
kecircnh thocircng tin coacute hỗ trợ đối với Asterisk thigrave kecircnh giao thức IAX hỗ trợ loại xaacutecminh nagravey Một khoaacute private khocircng bao giờ cocircng bố chuacuteng ta chỉ cocircng bố khoaacute public đến với server cần nối đến sau đoacute sẽ được xaacutec minh với khoaacute private nagravey Chai khoaacute public vagrave private được lưu với đuocirci pub vagrave key đặt tại thư mục keys
mohmp3
Khi cấu higravenh Asterisk sử dụng tiacutenh năng Music on Hold tiacutenh năng hoạt độngsẽ thực hiện lấy caacutec tập tin mp3 tại thư mục mohmp3 Tập tin định dạng theo chucủa Asterisk necircn khi sử dụng caacutec file Mp3 thocircng thường cần coacute sự chuyển đổi thiacutechợp trước khi cheacutep vagraveo thư mục trecircn để sử dụng
sounds
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4472
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4572
Taacutec Giả Lecirc Quốc Toagraven
45
Thư mục tmp sử dụng để lưu trữ những thocircng tin tạm để luocircn bảo đảm khocircnxảy ra tigravenh trạng đọc vagrave viết tập tin cugraveng một luacutec Khi yecircu cầu xử lyacute tập tin chuacuteng thao taacutec trecircn thư mục tmp trước khi lưu vagraveo tập tin điacutech
Tất cả caacutec lời nhắc thoại từ phiacutea người sử dụng vagrave caacutec lời nhắc thoại sử dụ
cho thao taacutec hộp voicemail đều được chứa trong thư mục voicemail Một hộp thưthoại được tạo ra ứng với một maacutey nội bộ trong tập tin voicemailconf sẽ được tra một thư mục con tương ứng cho maacutey nội bộ đoacute tại thư mục voicemail
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4672
Taacutec Giả Lecirc Quốc Toagraven
46
5 varrun
Thư mục varrun chứa thocircng tin process ID(pid) cho tất cả caacutec tiến trigravenh đang
hoạt động trong hệ thống bao gồm cả Asterisk Lưu yacute lagrave ứng với mỗi hệ điều hagravethư mục varrun coacute thể khaacutec
6 varlogasterisk
Thư mục varlogasterisk lagrave nơi Asterisk chứa tất cả caacutec tập tin nhật kyacute haycograven gọi lagrave tập tin log Chuacuteng ta coacute thể tuỳ biến caacutec loại thocircng tin được lưu trong caacutec
tập tin log khaacutec nhau qua tập tin cấu higravenh loggerconf đặt tại thư mục etcasterisk7 varlogasteriskcdr-csv
Thư mục varlogasteriskcdr-csv được sử dụng để lưu chi tiết cuộc gọi CDRThocircng tin mặc định về chi tiết thocircng tin cuộc gọi lưu trữ trong tập tin MasterCVSnhưng thường thigrave ứng với mỗi matilde accountcode sẽ tạo một thư mục riecircng để lưu ctiết cuộc gọi cho maacutey đoacute
5 Một số lệnh thao taacutec trecircn hệ thống asterisk
Asterisk coacute hai thagravenh phần được xacircy dụng tiacutech hợp với nhau vagrave chạy songsong nhau
Asterisk Server bigravenh thường chạy ở chế độ nền(background) giống caacutec sevicestrong window
Asterisk Client ở chế độ dograveng lệnh CLI giao tiếp với Asterisk Server thực thicaacutec lệnh để kiểm tra hay xem caacutec thocircng tin của server
Để Chạy vagrave dừng Asterisk ở chế độ nền chuacuteng ta thực hiện lệnh sau
etcinitdasterisk (start|stop)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4772
Taacutec Giả Lecirc Quốc Toagraven
47
Một khi Asterisk đatilde chạy chuacuteng ta coacute thể chuyển qua chế độ CLI từ dấu nhắlệnh của linux như sau
asterisk ndashr
Khi vagraveo chế độ lệnh nếu muốn thoaacutet về lại dấu nhắc linux chuacuteng ta dugraveng lệnh
CLIgtexit
Caacutec lệnh cơ bản thực hiện tại CLIgt
Bất cứ khi nagraveo chỉnh sửa caacutec tập tin cấu higravenh chuacuteng ta đều cần phải nạp lại đcaacutec thay đổi coacute hiệu lực điều đoacute thực hiện bằng lệnh
CLIgtreload
Bậc chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 debug
CLIgt SIP debug
Tắt chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 no debug
CLIgt SIP no debug
Hiển thị caacutec trạng thaacutei thocircng tin của users peers vagravechannels của SIP hoặc IAX2
CLIgt sip show users
CLIgt sip show peers
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4872
Taacutec Giả Lecirc Quốc Toagraven
48
CLIgt sip show channels
CLIgt iax2 show peers
CLIgt iax2 show users
CLIgt iax2 show channels
Đến thời điểm nagravey coacute thể noacutei chuacuteng ta đatilde hoagraven thagravenh cagravei đặt hệ thốngAsterisk cagravei đặt xong mới lagrave bước mở đầu để cho hệ thống Asterisk hoạt động vtừng ứng dụng cụ thể chuacuteng sẽ tiếp tục thực hiện caacutec giai đoạn được xem lagrave qutrọng nhất trong việc triển khai hệ thống Asterisk đoacute lagrave giai đoạn cấu higravenh hệ thốnlecircn kế hoạch Diaplan chương cograven lại đều nhắm đến mục tiecircu nagravey
4 CẤU HIgraveNH HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Sau khi hoagraven tất phần cagravei đặt hệ thống asterisk một bước quan trọng tiếp thelagrave cấu higravenh hệ thống coacute thể noacutei đacircy lagrave bước quan trọng nhất của việc khiển khai thống đến với từng ứng dụng cụ thể Trong chương nagravey xin giới thiệu caacutei nhigraven đầtiecircn về việc cấu higravenh trước khi đi sacircu hơn ở những chương sau những gigrave giới thiệ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4972
Taacutec Giả Lecirc Quốc Toagraven
49
trong chương nagravey lagrave nền moacuteng cơ bản nhưng đủ để hiểu lagravem thế nagraveo hệ thống coacute thoạt động được nội dung chiacutenh bao gồm
+ Thao taacutec cấu higravenh trecircn hệ thống tập tin của asterisk
+ Caacutech cagravei đặt phần mềm softphone trecircn cocircng nghệ sip
+ Cấu higravenh cho hai maacutey softphone liecircn lạc với nhau
+ Cấu higravenh phaacutet thocircng điệp
+ Quay số qua Sip vagrave mạng PSTN
2 Tập Tin cấu higravenh
Tất cả caacutec file cấu higravenh cho hệ thống asterisk đều nằm tại thư mục etcasterisngoại trừ file zaptelconf cấu higravenh cho phần cứng TDM nằm tại thư mục etc caacutecthức cấu higravenh giống như tập tin ini của window vậy Caacutec nội dung sau dấu chấm phảy lagrave nội dung chuacute thiacutech trong file cấu higravenh giống như chuacute thiacutech trong ngocircn ngữ
lập trigravenh C lagrave dấu Tất cả caacutec khoảng trắng trong tập tin đều được bỏ qua khocircng yacute nghĩa trong file cấu higravenh
Trong file cấu higravenh cograven coacute hai pheacutep gaacuten rất thường xuyecircn được sử dụng pheacutep gaacuten ldquo=rdquo lagrave dugraveng cho việc gaacuten caacutec biến cograven pheacutep gaacuten ldquo=gtrdquo dugraveng cho việc gaacutencaacutec đối tượng sau đacircy lagrave một viacute dụ cho file cấu higravenh
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5072
Taacutec Giả Lecirc Quốc Toagraven
50
Đacircy lagrave caacutec dograveng chuacute thiacutech
[section]
Key=value gaacuten giaacute trị cho biến
[section2]
Key=gtobject Gaacuten giaacute trị cho đối tượng
Cuacute phaacutep thực hiện giống nhau cho tất cả caacutec file cấu higravenh nhưng coacute vagravei kiểukhaacutec nhau cho mỗi file cầu higravenh dựa vagraveo thức caacutech hoạt động của chuacuteng
3 Caacutec kiểu ảnh hưởng trong tập cấu higravenh
Coacute ba kiểu caacutech thức hoạt động của tập tin cấu higravenh như sau
Kiểu Caacutech hoạt động File cầu higravenh Viacute dụ
S i m p l eGroup
Coacute hiệu lực trecircntừng dograveng trongfile
Extensionconf
Exten=gt4001dial(sip400)
O p t i o ninheritance
Dograveng khai baacuteosau thừa kếnhững thocircng sốkhai baacuteo trước
Zapataconf [channels]
Context=From_PSTN
Signalling=fxs_ks
Group=1Channel=gt1
C o m p l e xEntity
Mỗi entity nhậnmột ngữ cảnh
sipconf
iaxconf
[cisco]
Type=friend
Secret=12345
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5172
Taacutec Giả Lecirc Quốc Toagraven
51
Host=192168165
Context=NoiBo
[xten]
Type=friend
Secret=6789
Host=dynamic
Context=NoiBo
1 Simple Group
Đacircy lagrave kiểu cấu higravenh đơn giản nhất thường sử dụng trong caacutec fileextentionconf meetmeconf voicemailconf tương ứng với mỗi dograveng khai baacuteo lagravemột đối tượng coacute yacute nghĩa trecircn dograveng đoacute
Viacute dụ
Extentionconf [section]
object1=gt op1op2op3
object2=gt op1bop2bop3b
Trong viacute dụ trecircn mỗi dograveng tương ứng với caacutec toaacuten tử khaacutec nhau object1 coacute caacutectoaacuten từ op1 op2 op3 trong khi đoacute object2 lại coacute caacutec toaacuten từ op1b op2b op3b
2 Option inheritance
Đacircy lagrave cấu higravenh kiểu thừa kế thường được cấu higravenh trong caacutec file zapataconfagentconf với kiểu cấu higravenh nagravey thigrave caacutec dograveng phiacutea dưới coacute thể thừa kế caacutec thocircng sdograveng phiacutea trecircn tương ứng với mỗi section caacutec dograveng phiacutea dưới coacute thể thay đổi caacutecthocircng số cho tươngứng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5272
Taacutec Giả Lecirc Quốc Toagraven
52
Viacute dụ
Extentionconf
[section]
Op1=bas
Op2=adv
Object1=gt1
Op1=int
Object1=gt2
Với cấu higravenh trecircn coacute thể giải thiacutech như sau object1=gt1 thừa hưởng hai thocircngsố ở phiacutea trecircn đoacute lagrave op1=bas vagrave op2=adv trong khi đoacute đối với object1=gt2 với thocircngsố op1=int được khai baacuteo lại necircn object1=gt2 được thừa kế từ hai thocircng số op1=invagrave op2=adv
3 Complex Entity
Với cấu kiểu nagravey được tổ chức thagravenh nhiều entity ứng với mỗi entity coacute nhiềthocircng số được khai baacuteo mỗi entity ở đacircy chiacutenh lagrave caacutec section để khai baacuteo caacutec kecircnhthocircng tin Cấu higravenh thường được sử dụng trong caacutec file iaxconf sipconf
Viacute dụ
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5372
Taacutec Giả Lecirc Quốc Toagraven
53
[entity1]
Op1=value1
Op2=value2
[entity2]
Op1=value3
Op2=value4
Entity1 coacute caacutec giaacute trị value1 vagrave value2 cho thocircng số op1 vagrave op2 trong khi đoacute
cũng lagrave thocircng số op1 vagrave op 2 nhưng coacute caacutec giaacute trị khaacutec lagrave value3 vagrave value4 choentity2
4 Cấu higravenh giao tiếp với mạng PSTN
1 Ngữ cảnh kết nối
Để kết nối với mạng PSTN chuacuteng ta cần phải coacute một card TDM với Cổng
FXO vagrave một đường dacircy điện thoại hoặc coacute thể lagrave một tổng đagravei nội bộ PBX Cnhiều nhagrave sản xuất phần cứng khaacutec nhau nhưng trong phần cấu higravenh dưới dacircy lagrave cấhigravenh cho card zapata TDM01B của digium (card nagravey hiện nay giaacute baacuten khoảng175$)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 672
Taacutec Giả Lecirc Quốc Toagraven
6
1 TỔNG QUAN VỀ ASTERISK
1 GIỚI THIỆU ASTERISK
Hacircn hạnh chagraveo mừng đến với thế giới diệu kỳ của Astetisk Asterisk đem đếcho người sử dụng tất cả caacutec tiacutenh năng vagrave ứng dụng của hệ thống tổng đagravei PBX
cung cấp nhiều tiacutenh năng magrave tổng đagravei PBX thocircng thường khocircng coacute được đoacute lagrave sựkết hợp giữa chuyển mạch VOIP vagrave chuyển mạch TDM đoacute lagrave khả năng mở rộnđaacutep ứng nhu cầu cho từng ứng dụnghellip
Asterisk lagrave hệ thống chuyển mạch mềm lagrave phần mềm nguồn mở được viế bằng ngocircn ngữ C chạy trecircn hệ điều hagravenh linux thực hiện tất cả caacutec tiacutenh năng củtổng đagravei PBX vagrave hơn thế nữa Asterisk ra đời vagraveo năm 1999 bởi một chagraveng trai sinh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 772
Taacutec Giả Lecirc Quốc Toagraven
7
năm 1977 tecircn lagrave Mark Spencer Anh ta viết phần mềm nagravey ban đầu khocircng ngoagraveimục điacutech hỗ trợ cho cocircng ty của migravenh trong việc liecircn lạc đagravem thoại hỗ trợ cộnđồng người sử dụng vagrave phaacutet triển Linux
Asterisk lagrave mộtPBXvagrave nhiều hơn thế Asterisk lagrave một phần mềm mang tiacutenhcaacutech mạng tin cậy matilde nguồn mở vagrave miễn phiacute magrave biến một PC rẻ tiền thocircng thườnchạy Linux thagravenh một hệ thống điện thoại doanh nghiệp mạnh mẽ Asterisk lagrave m bộ cocircng cụ matilde nguồn mở cho caacutec ứng dụng thoại vagrave lagrave một server xử lyacute cuộc gọđầy đủ chức năng Asterisk lagrave một nền tảng tiacutech hợp điện thoại vi tiacutenh hoaacute kiến truacutemở Nhiều hệ thống Asterisk đatilde được cagravei đặt thagravenh cocircng trecircn khắp thế giới Cocircnnghệ Asterisk đang phục vụ cho nhiều doanh nghiệp
Hiện nay Asterisk trecircn đagrave phaacutet triển nhanh được rất nhiều doanh nghiệp triểnkhai ứng dụng cho cocircng ty của migravenh Đacircy lagrave xu thế tất yếu của người sử dụng điệthoại vigrave caacutec cocircng ty đều coacute mạng maacutey tiacutenh vagrave cần liecircn lạc với nhau trong cocircng việcgiữa caacutec phograveng ban hoặc chi nhaacutenh vagrave cần một chi phiacute thấp thậm chiacute khocircng phải tốchi phiacute khi thực hiện caacutec cuộc gọi trecircn mạng nội bộ của cocircng ty
Khocircng goacutei gọn thocircng tin liecircn lạc trong cocircng ty magrave caacutec ứng dụng giao tiếp vớimạng PSTN hoặc mạng VOIP (như voice777) cho pheacutep gọi ra bất cứ số điện thoạnagraveo coacute trecircn mạng PSTN
Ngoagravei ra việc tiacutech hợp vagraveo caacutec ứng dụng như CRM vagrave hệ thống Outlook lagravemcho khả năng ứng dụng của Asterisk linh hoạt hơn đaacutep ứng nhu cầu cần thiết ch
người sử dụng điện thoại
Asterisk thoạt đầu được phaacutet triển trecircn GNULinux nền x86 (Intel) nhưng giờđacircy noacute cũng coacute thể biecircn dịch vagrave chạy trecircn OpenBSD FreeBSD vagrave Mac OS X vagraveMicrosoft Windows
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 872
Taacutec Giả Lecirc Quốc Toagraven
8
Sơ đồ Tổng quaacutet
Asterisk lagrave hệ thống chuyển mạch tiacutech hợp vừa lagrave cocircng nghệ truyền thốngTDM vừa lagrave chguyển mạch voip Higravenh trecircn cũng cho thấy khả năng giao tiếp của hthống Giao tiếp với điện thoại analog thocircng thường giao tiếp với thiết bị điện thovoip ngoagravei ra cograven coacute thể giao tiếp với mạng PSTN vagrave caacutec nhagrave cung cấp voip khaacutec
2 KIẾN TRUacuteC ASTERISK
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 972
Taacutec Giả Lecirc Quốc Toagraven
9
Về cơ bản kiến truacutec của Asterisk lagrave sự kết hộp giữa nền tảng cocircng nghệ đithoại vagrave ứng dụng điện thoại cocircng nghệ điện thoại cho VOIP như SIP H323 IAXMGCP caacutec cocircng nghệ điện thoại cho hệ thống chuyển mạch mạch TDM như TE1 ISDN vagrave caacutec giao tiếp đường truyền thoại Analog Caacutec ứng dụng thoại nhưchuyển mạch cuộc gọi tương taacutec thoại caller ID voicemail chuyển cuộc gọihellip
Asterisk coacute một số chức năng chiacutenh đoacuteng vai trograve quan trọng trong hệ thống
chuyển mạch cuộc gọi Khi khởi động hệ thống Asterisk thigrave chức năng DynamiModule Loader thực hiện nạp driver của thiết bị nạp caacutec kecircnh giao tiếp caacutecformat codec vagrave caacutec ứng dụng liecircn quan đồng thời caacutec hagravem API cũng được liecircn kếtnạp vagraveo hệ thống
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1072
Taacutec Giả Lecirc Quốc Toagraven
10
Sau đoacute hệ thống PBX Switching Core của Asterisk chuyển sang trạng thaacutei sẵnsagraveng hoạt động chuyển mạch cuộc gọi caacutec cuộc gọi được chuyển mạch tuỳ vagraveo
hoạch quay số (Dialplan) được thực hiện cấu higravenh trong file extensionconfChức năng Application Launchar để rung chuocircng thuecirc bao quay số định
hướng cuộc gọi kết nối với hộp thư thoạihellip
Scheduler and IO Manager đảm nhiệm caacutec ứng dụng nacircng cao caacutec chức năngđược phaacutet triển bởi cộng đồng phaacutet triển asterisk
Codec Translator xaacutec nhận caacutec kecircnh neacuten dữ liệu ứng với caacutec chuẩn khaacutec nhaucoacute thể kết hợp liecircn lạc được với nhau
Tất cả caacutec cuộc gọi định hướng qua hệ thống Asterisk đều thocircng qua caacutec giaotiếp như SIP Zaptel IAX Necircn hệ thống Asterisk phải đảm traacutech nhiệm vụ liecircn kếcaacutec giao tiếp khaacutec nhau đoacute để xử lyacute cuộc gọi
Hệ thống cũng bao gồm 4 chức năng API chiacutenh
Codec translator API caacutec hagravem đảm nhiệm thực thi vagrave giải neacuten caacutec chuẩn khaacutecnhau như G711 GMS G729hellip
Asterisk Channel API Giao tiếp với caacutec kecircnh liecircn lạc khaacutec nhau đacircy lagrave đầumối cho việc kết nối caacutec cuộc gọi tương thiacutech với nhiều chuần khaacutec nhau như SIIAX H323 Zaptelhellip
Asterisk file format API Asterisk tương thiacutech với việc xử lyacute caacutec loại file coacuteđịnh dạng khaacutec nhau như Mp3 wav gsmhellip
Asterisk Aplication API Bao gồm tất cả caacutec ứng dụng được thực thi trong hệthống Asterisk như voicemail callerIDhellip
wwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1172
Taacutec Giả Lecirc Quốc Toagraven
11
Ngoagravei ra Asterisk cograven coacute thư viện Asterisk Gateway Interface (AGI tương tựnhư CGI) - cơ chế kiacutech hoạt ứng dụng becircn ngoagravei cho pheacutep viết kịch bản phức tạp
với một số ngocircn ngữ như PHP hay Perl Noacutei chung khả năng viết caacutec ứng dụng tugravey biến rất lớn
3 MỘT SỐ TIacuteNH NĂNG CƠ BẢN
Asterisk coacute rất nhiều tiacutenh năng đatilde được giới thiệu ở trecircn nhưng để hiểu rotilde hếtất cả caacutec tiacutenh năng trecircn thật sự lagrave thaacutech thức đối với chuacuteng ta Trong phần nagraveychuacuteng tocirci sẽ giới thiệu một số tiacutenh năng với caacutec ứng dụng cụ thể để hiểu hơn về
thống asterisk
1 Voicemail (hộp thư thoại)
Đacircy lagrave tiacutenh năng cho pheacutep hệ thống nhận caacutec thocircng điệp tin nhắn thoại mỗmaacutey điện thoại được khai baacuteo trong hệ thống Asterisk cho pheacutep khai baacuteo thecircm chứnăng hộp thư thoại
Mỗi khi số điện thoại bận hay ngoagravei ldquovugraveng phủ soacutengrdquo thigrave hệ thống asteriskđịnh hướng trực tiếp caacutec cuộc gọi đến hộp thư thoại tương ứng đatilde khai baacuteo trước
Voicemail cung cấp cho người sử dụng nhiều tiacutenh năng lựa chọn như password xaacutec nhận khi truy cập vagraveo hộp thư thoại gửi mail baacuteo khi coacute thocircng điệmới
2 Call Forwarding(chuyển cuộc gọi)
Khi khocircng ở nhagrave hoặc đi cocircng taacutec magrave người sử dụng khocircng muốn bỏ lỡ tất ccaacutec cuộc gọi đến thigrave hatildey nghĩ ngay đến tiacutenh năng chuyển cuộc gọi
Đacircy lagrave tiacutenh năng thường được sử dụng trong hệ thống Asterisk Chức năng cho pheacutep chuyển một cuộc gọi đến một hay nhiều số maacutey điện thoại được định trước
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1272
Taacutec Giả Lecirc Quốc Toagraven
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ậnchuyển cuộc gọi khi khocircng trả lời chuyển cuộc gọi tức thời chuyển cuộc gọi v
thời gian định trước3 Caller ID (hiển thị số gọi)
Chức năng nagravey rất hữu dụng khi một ai đoacute gọi đến vagrave ta muốn biết chiacutenh xaacuteclagrave gọi từ đacircu vagrave trong một số trường hợp biết chắc họ lagrave ai
Ngoagravei ra Caller ID cograven lagrave chức năng cho pheacutep chuacuteng ta xaacutec nhận số thuecirc bao
gọi đến coacute nghĩa lagrave dựa vagraveo caller ID chuacuteng ta coacute tiếp nhận hay khocircng tiếp nhậncuộc gọi từ phiacutea hệ thống Asterisk Ngăn một số cuộc gọi ngoagravei yacute muốn
4 Automated attendant (chức năng IVR)
Chức năng tương taacutec thoại coacute rất nhiều ứng dụng trong thực tế khi gọi điệthoại đến một cơ quan hay xiacute nghiệp thuecirc bao thường nghe thocircng điệp nhưldquoXinchagraveo mừng bạn đatilde gọi đến cocircng ty chuacuteng Tocirci hatildey nhấn phiacutem 1 để gặp phograveng kinh
doanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquosau đoacute tuỳ vagraveo sự tương taacutec của thuecirc 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 thuecirc bao muố biết tỉ giaacute Đocircla hiện nay như thế nagraveo hay kết quả sổ số hellip tất caacutec những monmuốn trecircn đều coacute thể thực hiện qua chức năng tương taacutec thoại
5 Time and Date
Vagraveo từng thời gian cụ thể cuộc gọi sẽ định hướng đến một số điện thoại hmột chức năng cụ thể khaacutec viacute dụ trong cocircng ty giaacutem đốc muốn chỉ cho pheacutep nhacircnviecircn sử dụng maacutey điện thoại trong giờ hagravenh chaacutenh cograven ngoagravei giờ thigrave sẽ hạn chế hakhocircng cho pheacutep gọi ra becircn ngoagravei
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1372
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1472
Taacutec Giả Lecirc Quốc Toagraven
14
Asterisk thực hiện rất nhiều ngữ cảnh ứng dụng khaacutec nhau tuỳ vagraveo nhu cầu sdụng dưới dacircy lagrave những ngữ cảnh ứng dụng thường được sử dụng trong thực
triển khai hệ thống asterisk1 Tổng đagravei voip IP PBX
IP BPX
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1572
Taacutec Giả Lecirc Quốc Toagraven
15
Đacircy lagrave hệ thống chuyển mạch voip được xacircy dựng phục vụ caacutec cocircng ty coacute nhucầu thực hiện trecircn nền tảng mạng nội bộ đatilde triển khai Thay vigrave lắp đặt một hệ thố
PBX cho nhu cầu liecircn lạc nội bộ thigrave necircn lắp đặt hệ thống voip điều nagravey sẽ lagravem giảchi phiacute đaacuteng kể Hệ thống coacute thể liecircn 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 ở đacircy lagrave hiện tại Cocircng ty đatilde trang bị hệ thống PBX bacircygiờ cần trang bị thecircm để đaacutep ứng nhu cầu liecircn lạc trong cocircng ty sao cho với chi phthấp nhất giải phaacutep để thực hiện đoacute lagrave trang bị hệ thống asterisk vagrave kết nối với h
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1672
Taacutec Giả Lecirc Quốc Toagraven
16
thống PBX đang tồn tại qua luồng E1 Ngoagravei ra để tăng khả năng liecircn lạc với mạnPSTN vagrave VOIP khaacutec Cocircng Ty coacute thể thực hiện kết nối với nhagrave cung cấp dịch vụvoip
3 Kết nối giữa caacutec server Asterisk
Kết nối giữa caacutec server asterisk
Phương phaacutep trecircn ứng dụng rất hiệu quả cho caacutec cocircng ty nằm ratildei raacutec ở caacutec vtrị địa lyacute khaacutec nhau nhằm giảm chi phiacute đường dagravei Viacute dụ Cocircng ty Mẹ coacute trụ sở đặtại nước Mỹ vagrave caacutec Chi nhaacutenh đặt tại Việt Nam với caacutec địa điểm Thagravenh phố Hồ ChMinh vagrave Hagrave Nội Thocircng qua mạng WAN của Cocircng Ty caacutec cuộc gọi nội bộ giữa caacutec
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1772
Taacutec Giả Lecirc Quốc Toagraven
17
vị triacute khaacutec nhau sẽ lagravem giảm chi phiacute đaacuteng kể Ngữ cảnh nagravey về mặt phaacutep luật khocircncho cuộc gọi từ Mỹ vagraveo Việt Nam
4 Caacutec ứ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 caacutec server kết nối với hệ thống PSTN hay tổng đagravei PBXđể triển khai caacutec ứng dụng như tương taacutec thoại IVR Một viacute dụ cho ứng dụng tươtaacutec thoại đoacute lagrave cho biết kết quả sổ số hay kiểm tra cước cuộc gọi giống dịch v19001260 vậy Ứng dụng VoiceMail thu nhận những tin nhắn thoại từ phiacutea thuecirc bao giống như chức năng hộp thư thoại của Bưu Điện Thagravenh phố triển khai Cograve
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1872
Taacutec Giả Lecirc Quốc Toagraven
18
chức năng điện thoại hội nghị thiết lập cho nhiều maacutey điện thoại cugraveng noacutei chuyệvới nhau
5 Chức năng Phacircn phối cuộc gọi tự động ACD
Phacircn phối cuộc gọi với hagraveng đợi
ACD(Automatic Call Distribution) Phacircn phối cuộc gọi tự động
Đacircy lagrave chức năng ứng dụng cho nhu cầu chăm soacutec khaacutech hagraveng hay nhận phảnhổi từ phiacutea khaacutech hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1972
Taacutec Giả Lecirc Quốc Toagraven
19
Cocircng ty coacute khả năng tiếp nhận cugraveng một luacutec 10 cuộc gọi như thế cuộc gọi th11 gọi đến thigrave hệ thống giải quyết như thế nagraveo Bigravenh thường thigrave sẽ nghe tiacuten hiệ
bận nhưng với chức năng phacircn phối cuộc gọi sẽ đưa thuecirc bao đoacute vagraveo hagraveng đợi đchờ trả lời trong khi chờ trả lời cuộc gọi thuecirc bao coacute thể nghe những bagravei haacutet hay dasterisk cung cấp trong luacutec nagravey nếu 1 trong mười số điện thoại trở về trạng thaacutei rthigrave cuộc gọi đang chờ sẽ được trả lời Giống như chức năng của dịch vụ 1080 ha116 của Bưu Điện Thagravenh Phố vậy
2 CAacuteC KHAacuteI NIỆM TRONG HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Trong chương nagravey sẽ giải thiacutech rotilde caacutec khaacutei niệm cơ bản liecircn quan đến hệ thốnasterisk cung cấp những kiến thức nền tảng những khaacutei niệm cần thiết để thiếttriển khai xacircy dựng hệ thống điện thoại với Asterisk
2 PBX - Private Branch Exchange
PBX hay cograven gọi lagrave PABX - Private Automatic Branch Exchange lagrave hệ thốngtổng đagravei nội bộ được đặt tại nhagrave thuecirc bao từ Automatic ở đacircy muốn noacutei đến lagrave hthống tổng đagravei điện tử tự động nhưng hiện nay đa số lagrave tổng đagravei PBX điện tử tđộng necircn từ trecircn thực sự khocircng cograven cần thiết nữa
PBX với mục tiecircu chia sẻ nhiều thuecirc bao nội bộ gọi ra thế giới becircn ngoagraveithocircng qua một vagravei đường trung kế hay noacutei một caacutech khaacutec PBX lagrave hệ thống trungchuyển giữa caacutec đường dacircy điện thoại becircn ngoagravei từ cocircng ty điện thoại vagrave maacutey điệthoại nội bộ trong tổng đagravei PBX Vigrave thế necircn số lượng maacutey điện thoại nội bộ luocircnhiều hơn số đường dacircy nối đến PBX từ becircn ngoagravei
wwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2072
Taacutec Giả Lecirc Quốc Toagraven
20
PBX thực hiện chuyển mạch cuộc gọi caacutec maacutey điện thoại nội bộ với nhau vvới caacutec maacutey điện thoại becircn ngoagravei thocircng qua đường trung kế Đồng thời thực hiệ
chuyển mạch caacutec cuộc gọi điện thoại từ becircn ngoagravei vagraveo caacutec maacutey điện thoại nội bộNgoagravei việc chuyển mạch cuộc gọi PBX cung cấp nhiều tiacutenh năng sử dụng
cho nhiều mục điacutech khaacutec nhau của khaacutech hagraveng magrave bản thacircn caacutec đường dacircy điệnthoại từ cocircng ty điện thoại kết nối đến khocircng thể thực hiện được caacutec tiacutenh năng ntương taacutec thoại(IVR) Voicemail phacircn phối cuộc gọi tự động(ADC)hellip
Hiện nay với việc phaacutet triển mạnh mẽ của cocircng nghệ VoIP chuacuteng ta cograven coacutethecircm thuật ngữ IP PBX Đacircy lagrave hệ thống chuyển mạch PBX với cocircng nghệ Voip
3 VOIP - Voice Over Internet Protocol
Voice over Internet Protocol (VoIP) lagrave một cocircng nghệ cho pheacutep truyền thoạisử dụng giao thức mạng IP trecircn cơ sở hạ tầng sẵn coacute của mạng internet Voip lagrave mtrong những cocircng nghệ viễn thocircng đang được quan tacircm nhất hiện nay khocircng chỉ đố
với nhagrave khai thaacutec caacutec nhagrave sản xuất magrave cograven cả với người sử dụng dịch vụVoip coacute thể vừa thực hiện mọi loại cuộc gọi như trecircn mạng điện thoại kecircn
truyền thống (PSTN) đồng thời truyền dữ liệu trecircn cơ sở mạng truyền dữ liệu Dcaacutec ưu điểm về giaacute thagravenh dịch vụ vagrave sự tiacutech hợp nhiều loại higravenh dịch vụ necircn voihiện nay được triển khai một caacutec rộng ratildei
Dịch vụ điện thoại voip lagrave dịch vụ ứng dụng giao thức IP nguyecircn tắc củaVoIP bao gồm việc số hoaacute tiacuten hiệu tiếng noacutei thực hiện việc neacuten tiacuten hiệu số chia nhcaacutec goacutei nếu cần vagrave truyền goacutei tin nagravey qua mạng tới nơi nhận caacutec goacutei tin nagravey đượraacutep lại theo đuacuteng thứ tự của bản tin giải matilde tiacuten hiệu tương tự phục hồi lại tiếng n ban đầu
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2172
Taacutec Giả Lecirc Quốc Toagraven
21
Caacutec cuộc gọi trong VoIP dựa trecircn cơ sở sử dụng kết hợp cả chuyển mạchkecircnh vagrave chuyển mạch goacutei Trong mỗi loại chuyển mạch đều coacute ưu nhược điể
riecircng của noacute Trong kỹ thuật chuyển mạch kecircnh giagravenh riecircng cho một kecircnh truyềngiữa hai thiết bị đầu cuối thocircng qua caacutec node chuyển mạch trung gian Trongchuyển mạch kecircnh tốc độ truyền dẫn luocircn luocircn cố định(nghĩa lagrave băng thocircng khocircnđổi) với mạng điện thoại PSTN tốc độ nagravey lagrave 64kbps truyền dẫn trong chuyểmạch kecircnh coacute độ trễ nhỏ
Trong chuyển mạch goacutei caacutec bản tin được chia thagravenh caacutec goacutei nhỏ gọi lagrave caacutec
goacutei nguyecircn tắc hoạt động của noacute lagrave sử dụng hệ thống lưu trữ vagrave chuyển tiếp caacutec gtin trong nuacutet mạng Đối với chuyển mạch goacutei khocircng tồn tại khaacutei niệm kecircnh riecircng băng thocircng khocircng cố định coacute nghĩa lagrave coacute thể thay đổi tốc độ truyền kỹ thuật chuyểmạch goacutei phải chịu độ trễ lớn vigrave trong chuyển mạch goacutei khocircng quy định thời giancho mỗi goacutei dữ liệu tới điacutech mỗi goacutei coacute thể đi bằng nhiều con đường khaacutec nhau đtới điacutech chuyển mạch goacutei thiacutech hợp cho việc truyền dữ liệu vigrave trong mạng truyền dliệu khocircng đogravei hỏi về thời gian thực như thoại để sử dụng ưu điểm của mỗi lo
chuyển mạch trecircn thigrave trong voip kết hợp sử dụng cả hai loại chuyển mạch kecircnh vchuyển mạch goacutei
4 PSTN ndash Public Switched Telephone Network
PSTN lagrave mạng chuyển mạch điện thoại cocircng cộng hay noacutei caacutech khaacutec lagrave mạngkết nối tất cả caacutec hệ thống tổng đagravei chuyển mạch-mạch
Để hiểu rotilde hơn hatildey xem xeacutet mạng PSTN với mạng Internet về khiacutea cạnhchuyển thoại trecircn đoacute Chuyển mạch mạch muốn thực hiện cuộc gọi giữa hai thu bao thigrave hệ thống phải giagravenh riecircng một kecircnh truyền 64kbps để chuyển tải tiacuten hiệthoại trecircn đoacute Cograven cuộc gọi điện thoại trecircn mạng Internet thigrave tiacuten hiệu thoại đượđoacuteng goacutei vagrave chuyển đi trecircn cugraveng kecircnh truyền với nhiều dịch vụ khaacutec Vigrave lẽ đoacute chấlượng cuộc gọi trecircn mạng PSTN bao giờ cũng tốt hơn trecircn mạng Internet nhưng đổ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2272
Taacutec Giả Lecirc Quốc Toagraven
22
lại chi phiacute lại đắc hơn rất nhiều đặc biệt lagrave caacutec cuộc gọi quốc tế necircn phải cần nhắc kỹ khi sử dụng
PSTN được phaacutet triển trecircn chuẩn ITU(International TelecommunicationUnion) cograven mạng Internet được phaacutet triển trecircn chuẩn IETF(Internet EngineeringTask Force) cả hai mạng trecircn đều sử dụng địa chỉ để định tuyến cuộc gọi PSTN sdụng caacutec con số điện thoại để chuyển mạch cuộc gọi giữa caacutec tổng đagravei điện thotrong khi đoacute trecircn mạng Internet địa chỉ IP sẽ được sử dụng để định tuyến caacutec goacutethoại
5 TDM ndash Time Division Multiplexing
Lagrave kỹ thuật gheacutep kecircnh phacircn chia thời gian nhiều tiacuten hiệu coacute thể truyền đồngthời trecircn một đường truyền TDM được sử dụng chuyển thoại trong hệ thống mạPSTN Coacute hai chuẩn gheacutep kecircnh TDM cơ bản lagrave E1 với 30 kecircnh thoại trecircn mộtkhung tốc độ 2Mbps vagrave T1 với 24 kecircnh thoại tốc độ 15Mbps
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2372
Taacutec Giả Lecirc Quốc Toagraven
23
Higravenh Minh họa gheacutep kecircnh phacircn chia theo thời gian
6 Caacutec higravenh thức baacuteo hiệu giao tiếp TDM
1 FXO vagrave FXS
FXO (Foreign Exchange Office) lagrave thiết bị nhận tiacuten hiệu từ tổng đagravei gửi đếnnhư dograveng chuocircng tiacuten hiệu nhấc gaacutec maacutey tiacuten hiệu mời quay số gửi vagrave nhận tiacuten hiệthoạihellip FXO giống như maacutey Fax hay modem dial-up 56k vậy Dugraveng để kết nối vớ
đường dacircy điện thoại
FXS (Foreign Exchange Station) lagrave thiết bị tại nơi cung cấp đường dacircy điệnthoại thiết bị FXS sẽ cung cấp tiacuten hiệu mời quay số(dialtone) dograveng chuocircng hồi acircmchuocircng(ring tone) Trong đường dacircy Analog FXS cung cấp dograveng chuocircng vagrave điện aacutepcho điện thoại hoạt động viacute dụ FXS cung cấp điện aacutep -48VDC đến maacutey điện tho
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2472
Taacutec Giả Lecirc Quốc Toagraven
24
Analog trong suốt thời gian đagravem thoại vagrave cung cấp 90VAC(20hz) để phaacutet điện aacuteprung chuocircng Thiết bị FXS phaacutet cograven thiết bị FXO nhận
Card TDM sử dụng trong hệ thống asterisk thường tiacutech hợp vừa thiết bị FXOvừa lagrave thiết bị FXS(Giống bộ ATA) FXO để kết nối với đường dacircy điện thoại cograveFXS dugraveng để kết nối với maacutey điện thoại analog thocircng thường dugraveng để chuyển mạcuộc gọi TDM qua hệ thống asterisk(Xem thecircm trong phần cấu higravenh cho kecircnhTDM)
Toacutem lại cần nắm
FXS được kết nối với FXO giống với đường dacircy điện thoại nối với maacuteyđiện thoại
FXS cung cấp nguồn cho điện thoại FXO(điện thoại Analog)
Higravenh a) Maacutey điện thoại vai trograve FXO kết nối với FXS(PSTN) Higravenh b) PBXkết nối với FXO vagrave FXS Higravenh c) ATA đoacuteng vai trograve như FXS để kết nối với maacuteyđiện thoại vai trograve FXO
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2572
Taacutec Giả Lecirc Quốc Toagraven
25
2 Baacuteo hiệu Analog giữa đầu cuối vagrave tổng đagravei
Khi chuacuteng ta nhấc mấy điện thoại để gọi thigrave nghe tiacuten hiệu mời quay số kh
cuộc gọi gọi đầu becircn kia bị bận thigrave chuacuteng ta nghe tiacuten hiệu bận(busy tone) caacutec loạtiacuten hiệu như vậy gọi lagrave caacutec tiacuten hiệu baacuteo hiệu analog Caacutec tiacuten hiệu như Mời quay sốtiacuten hiệu bận rung chuocircng trạng thaacutei nhấc gaacutec maacutey Caacutec loại tiacuten hiệu trecircn được trađổi giữa thiết bị FXO vagrave FXS
Coacute nhiều phương thức baacuteo hiệu khaacutec nhau ứng với từng nơi sử dụng vigrave thếtại nơi kết nối với đường dacircy điện thoại cần xem xeacutet họ đang sử dụng phương th
baacuteo hiệu gigrave từ đoacute chuacuteng ta khai thaacutec loại tiacuten hiệu baacuteo hiệu cho thiacutech hợp caacutec phương thức baacuteo hiệu như Loop Start Ground Start Một minh họa cho việc sửdụng sai phương thức baacuteo hiệu lagrave khi chuacuteng ta khai baacuteo phương thức baacuteo hiệu giữhệ thống Asterisk vagrave đường dacircy điện thoại khaacutec nhau thigrave dẫn đến Asterisk sẽ khocircnnhận biết được tiacuten hiệu gaacutec maacutey điều nagravey sẽ lagravem cho asterisk khocircng baacuteo giờ giải tỏđược cuộc gọi để thực hiện cuộc gọi mới
3 Baacuteo hiệu giữa caacutec tổng đagravei
SS7 hệ thống baacuteo hiệu số 7 được phaacutet triển bởi ATampT vagrave ITU lagrave hệ thống baacuteo hiệu chuyển caacutec cuộc gọi giữa caacutec tổng đagravei trong mạng PSTN Trong hệ thốn baacuteo hiệu số 7 tiacuten hiệu chuyển tải trecircn đường trung kế kết nối giữa hai tổng đagravei gồcoacute hai mạch riecircng một cho thoại vagrave một cho baacuteo hiệu như vậy thoại vagrave baacuteo hiệu cthể chuyển trecircn hai kecircnh vật lyacute khaacutec nhau
7 Baacuteo Hiệu trecircn mạng điện thoại VoIP
1 SIP Session Initiation Prorocol
Sip lagrave giao thức Internet dagravenh cho baacuteo hiệu VoIP được phaacutet triển bởi IETFcung cấp vagravei chức năng giống hệ thống baacuteo hiệu số 7 nhưng dựa trecircn nền IP Mộchức năng giống baacuteo hiệu số 7 đoacute lagrave baacuteo hiệu vagrave thoại chuyển tải trecircn hai kecircnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2672
Taacutec Giả Lecirc Quốc Toagraven
26
riecircng Giao thức SIP thực hiện chức năng thiết lập vagrave baacuteo hiệu cuộc gọi khi noacutei đế baacuteo hiệu cuộc gọi lagrave chỉ định caacutec tiacuten hiệu baacuteo hiệu như tiacuten hiệu mời quay số tiacutehiệu bậnhellip
2 Proxy server
Mặc dầu hai thiết bị SIP coacute thể liecircn lạc trực tiếp với nhau để khởi tạo cuộgọi nhưng trong giao thức SIP cograven coacute chức năng Proxy để linh hoạt hơn trong thiếlập cuộc gọi Proxy Server sẽ lagravem nhiệm vụ ghi nhận tất cả caacutec số điện thoại đư phiacutea client đăng kyacute đến qua bản tin ldquoRegistrationrdquo Khi một client khaacutec thực hiện
cuộc gọi thigrave thực sự Client đoacute khocircng biết số điện thoại cần gọi đang ở đacircu necircn thocircnqua Proxy server để tigravem kiếm thiết lập cuộc gọi
+
Higravenh Đăng kyacute từ Client đến SIP Proxy Với Giao thức SIP đường baacuteo hiệu vagravethoại riecircng
3 RTP vaacute NAT
Caacutec cuộc gọi trecircn Internet với giao thức SIP được chia thagravenh caacutec goacutei thoại vagraveđược chuyển qua giao thức RTP(Real Time Protocol) RTP lagrave giao thức khocircng chỉthực hiện chuyển caacutec goacutei thoại qua Internet magrave cograven coacute cả video nữa Một cuộc gọ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2772
Taacutec Giả Lecirc Quốc Toagraven
27
thocircng thường coacute hai hướng thocircng tin lagrave nhận vagrave phaacutet RTP lagravem việc chuyển caacutec goacutedữ liệu thoại cũng trecircn hai hướng
NAT Network Address Translators lagrave một trở ngại lớn trong giao thức RTPMạng sử dụng NAT lagrave một mạng chia sẻ nhiều địa chỉ IP nội bộ với một địa chỉ ICocircng cộng để kết nối với thế giới becircn ngoagravei NAT dugraveng để chia sẻ nhiều maacutey tiacutentrong mạng LAN nội bộ sử dụng được Internet nhưng cũng chiacutenh vigrave thế magrave caacutec maacutetiacutenh nội bộ gặp khoacute khăn trong việc thực hiện cuộc gọi VoIP qua Internet Đoacute chiacutenhlagrave vấn để trở ngại khi truyền thoại qua giao thức RTP
Higravenh Minh họa hoạt động của NAT
Trong Giao thức RTP như chuacuteng ta đatilde biết đoacute lagrave thoại được chuyển trecircn haiđường khaacutec nhau lagrave đường phaacutet vagrave đường thu Vấn đề NAT nằm ở chỗ tiacuten hiệthoại từ becircn ngoagravei vagraveo becircn trong qua giao thức RTP khocircng thực hiện được cograven chiềungược lại thigrave thực hiện tốt Hay noacutei caacutech khaacutec vấn đề NAT lagravem cho caacutec cuộc gọi t
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2872
Taacutec Giả Lecirc Quốc Toagraven
28
Internet đagravem thoại vagraveo caacutec maacutey nội bộ qua NAT thigrave khocircng nghe được cograven trongtrường hợp caacutec cuộc gọi từ caacutec maacutey nội bộ ra caacutec maacutey internet thigrave nghe tốt
Vấn đề NAT trecircn được giải quyết trong Asterisk bằng việc khai baacuteo thocircng số NAT=yes trong cấu higravenh kecircnh giao thức SIP
4 IAX ndash Inter Asterisk eXchange
IAX lagrave giao thức baacuteo hiệu Voip được phaacutet triển bởi taacutec giả của phần mềmAsterisk để khắc phục những hạn chế trong giao thức SIP Khocircng giống như giathức SIP chuyển tải thoại vagrave baacuteo hiệu trecircn hai kecircnh khaacutec nhau (out of band) IAXchuyển tải thoại vagrave baacuteo hiệu trecircn cugraveng một kecircnh(in band) IAX giải quyết được vấđề NAT đề cập trecircn phần giao thức SIP Mặc khaacutec IAX lagrave giao thức tối ưu trongviệc sử dụng băng thocircng cho pheacutep nhiều goacutei dữ liệu thoại trecircn cugraveng một IP headecơ chế chuyển tải nhiều cuộc gọi trecircn cugraveng một goacutei IP được gọi lagrave trung kế(Trunk)
Coacute thể giải thiacutech thecircm cơ chế trung kế như sau Giả sử Tocirci cần gửi 5 bức thtới người bạn của Tocirci Tocirci sẽ coacute hai higravenh thức để thực hiện thứ nhất lagrave mỗi bức tTocirci bỏ vagraveo một phong bigrave vậy tổng cộng tocirci phải sử dụng 5 phong bigrave để gửi đi 5 bứthư Caacutech thứ hai lagrave Tocirci bỏ 5 bức thư vagraveo 1 phong bigrave vagrave gửi đi vậy tổng cộng Tocircchỉ tốn 1 phong bigrave Qua phacircn tiacutech trecircn rotilde ragraveng việc 5 bức thư vagraveo một phong bigrave sẽtiết kiệm hơn so với 5 bức thư với 5 phong biacute Cơ chế trecircn cũng giống như nhiềcuộc gọi được đoacuteng thagravenh goacutei vagrave chuyển đi trecircn đường trung kế
Toacutem lại IAX lagrave giao thức dagravenh cho VoIP mới nhất cho đến thời điểm nagravey vớinhiều ưu điểm hấp dẫn như
+ Tối thiểu sử dụng băng thocircng
+ Trong suốt với NAT
+ Hiệu quả với cơ chế trung kế
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2972
Taacutec Giả Lecirc Quốc Toagraven
29
8 Thiết Bị VoIP
1 Voip Phone
Đacircy lagrave thiết bị phần cứng kết nối với mạng VoIP giống như maacutey điện thoại đ bagraven thocircng thường nhưng dagravenh cho VoIP cần phải thực hiện cấu higravenh trước khi sửdụng
Lưu yacute một số tiacutenh năng khi thực hiện mua thiết bị điện thoại VoIP
+ Low bandwidth hỗ trợ Codec nagraveo G729 lagrave tốt nhất hiện nay
+ Web Interface Phải coacute giao tiếp thiết lập cấu higravenh thacircn thiện dễ sử dụng
+ Audio Interface Coacute speaker phone hay khocircng
Giaacute thagravenh của điện thoại voip IP đắc hơn điện thoại thocircng thường giaacute khoảntrecircn dưới 100$ một caacutei
Higravenh Maacutey Điện Thoại VoIP
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3072
Taacutec Giả Lecirc Quốc Toagraven
30
2 Softphone
Lagrave một phần mềm được cagravei trecircn maacutey tiacutenh thực hiện tất cả caacutec chức năng giốn
như thiết bị điện thoại Voip cần lưu yacute khi sử dụng softphone lagrave maacutey tiacutenh phải ccard acircm thanh headphone vagrave firewall khocircng bị khoacutea
Sử dụng softphone với hệ thống Asterisk necircn dugraveng softphone với cocircng nghệgiao thức mới dagravenh cho Asterisk đoacute lagrave IAX
Higravenh Điện Thoại Softphone
3 Card giao tiếp với PSTN
Muốn cho pheacutep caacutec maacutey điện thoại nội bộ trong hệ thống Asterisk kết nối vthực hiện cuộc gọi với mạng PSTN chuacuteng ta cần phải coacute thiết bị phần cứng tươthiacutech Thiết bị phần cứng sử dụng cho hệ thống Asterisk do chiacutenh taacutec giả lập cocircng
Digium phacircn phối đacircy cũng chiacutenh lagrave yacute tưởng lớn trong việc phacircn phối phần mềmAsterisk lagrave hệ thống nguồn mở sử dụng miễn phiacute
Thiết bị phần cứng thường kyacute hiệu bắt đầu bằng cụm từ TDMxyB trong đoacute lagrave số lượng port FXS y lagrave số lượng port FXO giaacute trị tối đa của x vagrave y lagrave 4 viacute dụcard TDM22B coacute nghĩa lagrave coacute 2 fort FXS vagrave 2 port FXO
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3172
Taacutec Giả Lecirc Quốc Toagraven
31
Higravenh Card TDM22B gồm 4 port 2 FXS vagrave 2 FXO
4 ATA Analog Telephone Adaptors
ATA lagrave thiết bị kết nối với điện thoại Analog thocircng thường đến mạng VoIPmột thiết bị ATA gồm coacute hai loại port RJ-11 để kết nối với maacutey điện thoại analo
thocircng thường cograven RJ-45 để kết nối với mạng VoIP
ATA thực sự lagrave thiết bị FXS chuyển đổi tiacuten hiệu Analog sang tiacuten hiệu số sửdụng cho mạng VoIP để tận dụng maacutey điện thoại Analog necircn trang bị thiết bị ATAthay vigrave phải trang bị điện thoại VoIP
Thiết bị ATA sử dụng với giao thức IAX được Digium phacircn phối lagrave thiết bịATA được sử dụng rộng ratildei với Asterisk coacute tecircn gọi lagrave IAXy
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3272
Taacutec Giả Lecirc Quốc Toagraven
32
Higravenh Thiết bị ATA
9 Codecs
Thuật Toaacuten codecs(CompressorDe-compressor) lagrave một tập caacutec quy luật đượcsử dụng để chuyển đổi caacutec tiacuten hiệu thoại dạng Analog sang tiacuten hiệu số vagrave ngược lạ
Coacute nhiều thuật toaacuten codec để thực hiện chuyển đổi tiacuten hiệu analog sang tiacuten
hiệu số dạng nhị phacircn (01) như G711 GSM G729hellipỨng với mỗi thuật toaacuten coacutenhững ưu điểm riecircng đặc biệt lagrave việc tối ưu sử dụng băng thocircng trecircn đường truyềMục tiecircu cuối cugraveng lagrave caacutec thuật toaacuten đưa ra phải đảm bảo chất lượng cuộc gọi nhvagrave tiết kiệm băng thocircng nhất
G729 lagrave thuật toaacuten codec tốt nhất hiện nay trong hệ thống VoIP Với hệthống Asterisk để sử dụng thuật toaacuten nagravey cần phải mua bản quyền sử dụng vigrave đacircy
codec khocircng miễn phiacute sử dụng
10 QoS ndash Quality of Service
Caacutec yếu tố ảnh hưởng đến chất lượng của dịch vụ đối với VoIP đoacute lagrave caacuteyếu ảnh hưởng đến chất lượng tiacuten hiệu thoại
1 Độ trễ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3372
Taacutec Giả Lecirc Quốc Toagraven
33
Thoại lagrave dịch vụ mang tiacutenh thời gian thực rất cao vigrave thế trễ lagrave yếu tố ảnhhưởng rất lớn đến chất lượng dịch vụ Trễ được định nghĩa lagrave khoảng thời gian tiacute
từ luacutec tiacuten hiệu thoại đi từ miệng người noacutei tới tai người nghe Trễ lagrave yếu tố khocircnthể traacutenh khỏi độ trễ đối với mạng điện thoại truyền thống (mạng PSTN) khoảng50ms đến 70ms theo khiến nghị của ITU-T để đảm bảo chất lượng cho hệ thốVoIP thigrave độ trễ từ đầu phaacutet tới đầu thu hoặc ngược lại khocircng được vượt quaacute 150mkhi magrave độ trễ vượt quaacute 400ms đến 500ms thigrave khocircng thể chấp nhận được
Caacutec nguyecircn nhacircn gacircy ra trễ bao gồm Trễ trecircn mạng lưới trễ trecircn bộ mả hoacutea
giải matilde trễ trong quaacute trigravenh đoacuteng goacutei trễ bộ đệm trễ xử lyacute tiếng noacuteihellip2 Độ trượt(Jitter)
Nguyecircn nhacircn gacircy ra trượt lagrave goacutei tiacuten hiệu thoại trong quaacute trigravenh truyền từnguồn đến điacutech sẽ gặp phải những điều kiện khaacutec nhau trecircn mạng lưới do đoacute thườđến điacutech với những khoảng trễ khaacutec nhau Đacircy lagrave tiacutenh khocircng đồng nhất của trễ Mnguyecircn nhacircn khaacutec của trượt đối với ứng dụng PC to PC lagrave do việc sử dụng hệ điề
hagravenh phi thời gian thực caacutec goacutei tin thoại phải đợi hệ điều hagravenh xử lyacute trong nhữnkhoảng thời gian khaacutec nhau khi magrave hệ điều hagravenh đang phải xử lyacute đối với caacutec ứndụng khaacutec
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3472
Taacutec Giả Lecirc Quốc Toagraven
34
Higravenh Nguyecircn nhacircn xảy ra trượt
Để loại bỏ tiacutenh khocircng đồng nhất của trễ người ta thiết kế caacutec bộ đệm t(Jitter Buffer) tại nơi đến của caacutec goacutei tin caacutec goacutei tin đến với caacutec khoảng caacutech khaacutecnhau về thời gian được lưu tại bộ đệm rồi phaacutet khỏi bộ đệm với khoảng trễ n
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3572
Taacutec Giả Lecirc Quốc Toagraven
35
nhau Khi bộ đếm coacute kiacutech thước cagraveng lớn thigrave khả năng loại bỏ tiacutenh khocircng đồng nhấcagraveng lớn tuy nhiecircn việc sử dụng bộ đệm sẽ gacircy ra hiện tượng trễ trong ứng dụnthoại do đoacute cần coacute bagravei toaacuten cacircn đối giữa độ trễ vagrave độ trượt
Ngoagravei 2 nguyecircn nhacircn trecircn cograven một số nguyecircn nhacircn nữa ảnh hưởng đến chấtlượng thoại như độ mất goacutei giới hạn băng thocircng tiếng vọng
3 CAgraveI ĐẶT ASTERISK
1 Cagravei đặt Asterisk
1 Download vagrave bung neacuten
Để cagravei đặt Asterisk đầu tiecircn chuacuteng ta cần phải cagravei đặt hệ điều hagravenh linux trecircnmaacutey tiacutenh của migravenh Coacute thể cagravei hệ điều hagravenh Linux Fedora CentOS Redhat hoặcDebian Caacutec goacutei phần mềm phụ thuộc phải coacute trong hệ điều hagravenh Linux trước khcagravei Asterisk bao gồm
bison
gcc
kernel-source
libtermcap-devel
ncurses-devel
openssl096b
openssl-devel
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3672
Taacutec Giả Lecirc Quốc Toagraven
36
Sau khi hoagraven tất caacutec bước trecircn chuacuteng ta tiến hagravenh download phần mềmasterisk với phiecircn bản mới nhất
cd usrsrc
wgetftpftpdigiumcompubasteriskasterisk-140targz
wgetftpftpdigiumcompubasteriskasterisk-addons-140targz
wgetftpftpdigiumcompubasteriskasterisk-sounds-140targz
wgethttpftpdigiumcompubzaptelzaptel-140targz
wgethttpftpdigiumcompublibprilibpri-140targz
Việc download coacute thể nhanh hay chậm tugravey vagraveo tốc độ trecircn đường internet saukhi download hoagraven thagravenh chuacuteng ta tiến hagravenh bung neacuten caacutec goacutei ra thư mục chỉ định
tar ndashxzvf asterisk-140targz
tar ndashxzvf asterisk-addons-140targz
tar ndashxzvf asterisk-sounds-140targz
tar ndashxzvf zaptel-140targz
tar ndashxzvf libpri-140targz
Giải neacuten xong chuacuteng ta nhớ thực hiện lệnh
ln ndashs usrsrcasterisk-140 usrsrcasterisk lệnh nagravey để bảo đảm goacuteildquoaddonsrdquo được biecircn dịch đuacuteng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3772
Taacutec Giả Lecirc Quốc Toagraven
37
Bacircy giờ tới phần chuacuteng ta biecircn dịch caacutec goacutei đatilde giải neacuten ở trecircn trước tiecircn lagrave goacuteizaptel kế đến lagrave libpri sau cugraveng lagrave goacutei Asterisk
2 Cagravei đặt goacutei Zaptel
Goacutei zaptel sẽ chứa tại thư mục usrsrczaptel Đaacutenh lệnh như dưới đacircy để cagraveđặt
cd usrsrczaptel
make clean make install
Lệnh nagravey thực hiện khoảng 2 phuacutet tugravey vagraveo tốc độ maacutey tiacutenh cagravei đặt sau khicagravei đặt xong sẽ trở lại dấu nhắc lệnh vagrave hiển thị một loạt caacutec thocircng baacuteo trong đoacute một số bản tin lỗi magrave chủ yếu lagrave yecircu cầu cagravei đặt caacutec goacutei phụ thuộc đatilde liệt kecirc ở trecircnếu caacutec goacutei trecircn chưa được cagravei đặt
Goacutei zaptel nagravey chứa caacutec driver cho caacutec phần cứng kết giao tiếp với asterisk
do Digium phacircn phối vagrave một số thư viện cho việc coacute thực hiện giao tiếp với phầcứng hay khocircng
Để Asterisk coacute thể chạy cugraveng với khởi động của maacutey tiacutenh chuacuteng ta cần thựchiện lệnh
make config
Lệnh nagravey sẽ tạo ra script chegraven module zaptel vagraveo kernel vagrave chạy ztconfig vagraveoluacutec khởi động maacutey Trong Redhat script nagravey sẽ được cheacutep vagraveo etcinitd chạy ở mức 3
3 Cagravei đặt goacutei libpri
Kế đến chuacuteng ta biecircn dịch goacutei libpri tại thư mục usrsrclibpri bằng lệnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3972
Taacutec Giả Lecirc Quốc Toagraven
39
make config
3 Cagravei đặt TrixBox
1 Giới thiệu
TRIXBOX được phaacutet triển từ nhacircn của ứng dụng Asterisk được tổng hợp từmột số thagravenh phần chiacutenh được phaacutet triển bởi cộng đồng phaacutet triển nguồn mAsterisk dưới bản quyền GPL Trixbox bao gồm những thagravenh phần chiacutenh cho việcấu higravenh ứng dụng thống kecirc tigravenh trạng hoạt động hệ thống lưu trữ dự phograveng v
nhacircn lagrave hệ điều hagravenh CentOS một phiecircn bản khaacutec của Redhat tất cả kết hợp vớnhau tạo thagravenh một goacutei hoagraven chỉnh Khi cagravei goacutei nagravey vagraveo maacutey tiacutenh thigrave coacute thể sử dụngnhư một tổng đagravei PBX
Caacutec thagravenh phần chiacutenh trong goacutei TRIXBOX lagrave
Asterisk PBX Thagravenh phần chiacutenh của hệ thống Trixbox
CentOS Một phiecircn bản Linux khaacutec của Redhat hoagraven toagraven miển phiacute sửdụng Lagrave nhacircn chiacutenh cho Trixbox
SugarCRM Hệ thống quan hệ khaacutech hagraveng CRM
A2Billing ndash Lagrave thagravenh phần dagravenh cho việc xacircy dựng hệ thống điện thoạitrả trước hay cograven gọi lagrave điện thọai thẻ (Calling Card)
Flash Operator Panel Bảng điều khiển giaacutem saacutet tigravenh trạng hoạt độngcủa caacutec maacutey điện thoại trong hệ thống
Web MeetMe Control Quản lyacute triển khai hệ thống điện thoại hội nghị
FreePBX Đacircy lagrave cocircng cụ với giao diện web dagravenh cho việc cấu higravenh hệthống Asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4072
Taacutec Giả Lecirc Quốc Toagraven
40
Hệ thống Lưu trữ dự phograveng vagrave thống kecirc Lagrave thagravenh phần của TRIXBOXcung cấp caacutec cocircng cụ cần thiết cho việc bảo trigrave bảo dưỡng hệ thống
Hệ thống Apache-Php-Mysql dagravenh cho giải phaacutep Webserver của hệthống
2 DOWNLOAD VAgrave LẮP ĐẶT TRIXBOX
Địa chỉ downloadhttpsourceforgenetprojectsasteriskathome
Khi download xong file Trixboxiso Hatildey dugraveng file nagravey Burn vagraveo CD ( xinlưu yacute lagrave dugraveng Nero hoặc chương trigravenh cheacutep đĩa ưa thiacutech rồi burn vagraveo cd_romchứ khocircng phải cheacutep file đoacute vagraveo cd_rom)
Sau khi coacute CD Hatildey boot từ CD nagravey để cagravei đặt trixbox
Chuacute yacute dữ liệu trecircn đĩa cứng sẽ bị xoacutea sạch để cagravei đặt trixbox Nếu trongđĩa cứng cograven dữ liệu hatildey backup tất cả trước khi tiến hagravenh lắp đặt trixbox
Tới đacircy lần lượt caacutec magraven higravenh chỉ dẫn sẽ hiện ra vagrave cứ theo hướng dẫn magrave cagraveđặt Sau khi cagravei đặt xong chuacuteng ta dugraveng Username root vagrave password password đểđăng nhập hệ thống
3 Cấu higravenh địa chỉ IP cho card mạng
Thiết lập địa chỉ IP bằng caacutech gotilde lệnh
netconfig
Chọn OK để thiếp lập
Nếu trong mạng coacute hỗ trợ DHCP thigrave hatildey chọn mục nagravey cograven nếu khocircng hatildeynhập địa chỉ IP tĩnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4172
Taacutec Giả Lecirc Quốc Toagraven
41
IP 19216801
Netmask 2552552550
Gateway 19216893254 ngotilde ra becircn ngoagravei
Primary nameserver 19216893200 thiết lập nếu coacute
Chọn OK để chấp nhận caacutec thiết lập trecircn
Sau khi hoagraven tất hatildey lagravem cho thiết lập coacute hiệu lực bằng caacutech reset lại
maacutey tiacutenh hoặc dugraveng lệnh sau
Service network stop
Service network start
Đến đacircy xem như cagravei đặt hoagraven tất bacircy giờ để cấu higravenh được Asterisk chuacutengta vagraveo một magravey khaacutec vagrave mở Internet Explorer hoặc một trigravenh duyệt web bất kỳ
nhập vagraveohttp19216801đatilde cấu higravenh ở trecircn vagrave tiến hagravenh cấu higravenh hệ thốngvới tagravei khoảng username maint vagrave password password
4 Tổ Chức Thư Mục của Asterisk
Asterisk sử dụng nhiều thư mục trecircn hệ thống linux để quản lyacute caacutec khiacutea cạnkhaacutec nhau của hệ thống như nghi nhận bản tin thoại caacutec bản tin nhắc thoại hoặcaacutec tập tin cấu higravenh Phần nagravey sẽ trigravenh bagravey caacutec thư mục chiacutenh yếu được tạo ra tronquaacute trigravenh lắp đặt vagrave được cấu higravenh trong tập tin Asteriskconf
1 etcasterisk
Thư mục etcasterisk chứa tất cả caacutec tập tin cấu higravenh của hệ thốngAsterisk ngoại trừ tập tin Zaptelconf được đặt tại thư mục etc Phần cứnZaptel đầu tiecircn được phaacutet triển bởi Jim Dixon thuộc nhoacutem Zapata Telephony
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4272
Taacutec Giả Lecirc Quốc Toagraven
42
Group để giao tiếp giữa maacutey tiacutenh với mạng điện thoại magrave Asterisk lại sửdụng phần cứng nagravey với lyacute do đoacute magrave file cấu higravenh zaptelconf khocircng nằmtrong thư mục etcasterisk
2 usrlibasteriskmodules
Thư mục usrlibasteriskmodules chứa tất cả caacutec module cần thiết đểasterisk hoạt động Becircn trong thư mục lagrave caacutec ứng dụng khaacutec nhau caacutec codeccaacutec định dạng acircm thanh(format) vagrave caacutec kecircnh thocircng tin(channel) Theo mặc địnhAsterisk sẽ nạp tất cả caacutec module vagraveo luacutec khởi động Chuacuteng ta coacute thể khocircng cho
nạp một module bất kỳ bằng caacutech khocircng khai baacuteo sử dụng trong tập tinmodulesconf Lưu yacute khi khocircng cho nạp module thigrave phải biết chắc module đoacutekhocircng lagravem ảnh hưởng hoạt động của asterisk nếu khocircng lỗi sẽ xuất hiện
3 varlibasterisk
Thư mục varlibasterisk chứa tập tin astdb vagrave một số thư mục con Tập tinastdb định vị thocircng tin cơ sở dữ liệu của Asterisk giống như Microsoft WindowsRegistry
Caacutec thư mục con của thư mục varlibasterisk bao gồm
agi-bin
Thư mục agi-bin chứa caacutec script của người dugraveng magrave Asterisk coacute thểđịnh vị sử dụng qua caacutec ứng dụng AGI
AGI lagrave phần giao tiếp với ngocircn ngữ lập trigravenh script để thực hiện mộtsố cocircng việc của Asterisk từ becircn ngoagravei
firmware
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4372
Taacutec Giả Lecirc Quốc Toagraven
43
Thư mục firmware chứa một số phần dẻo(firmware) cho caacutec thiết bịkhaacutec nhau tương thiacutech với Asterisk Hiện tại chỉ coacute thư mục con iax chứa
firmware cho thiếy bị IAXy của Digium IAXy lagrave thiết bị ATA sử dụng giaothức IAX
images
Caacutec ứng dụng thocircng tin với caacutec kecircnh hỗ trợ ảnh images thigrave sử dụng thư mụcnagravey Nhưng hiện tại caacutec kecircnh thocircng tin hầu như khocircng hỗ trợ truyền ảnh images necircthư mục nagravey cũng hiếm khi được sử dụng Tuy nhiecircn nếu caacutec thiết bị coacute hỗ trợ ththư mục nagravey trở necircn hiệu dụng
keys
Asterisk coacute thể sử dụng hệ thống khoaacute publicprivate để xaacutec minh caacutec kết nốgiữa caacutec server Asterisk thocircng qua chữ kyacute điện tử RSA Nếu đặt một khoaacute publicvagraveo thư mục keys thigrave kết nối của server đầu becircn kia coacute thể được xaacutec minh bằn
kecircnh thocircng tin coacute hỗ trợ đối với Asterisk thigrave kecircnh giao thức IAX hỗ trợ loại xaacutecminh nagravey Một khoaacute private khocircng bao giờ cocircng bố chuacuteng ta chỉ cocircng bố khoaacute public đến với server cần nối đến sau đoacute sẽ được xaacutec minh với khoaacute private nagravey Chai khoaacute public vagrave private được lưu với đuocirci pub vagrave key đặt tại thư mục keys
mohmp3
Khi cấu higravenh Asterisk sử dụng tiacutenh năng Music on Hold tiacutenh năng hoạt độngsẽ thực hiện lấy caacutec tập tin mp3 tại thư mục mohmp3 Tập tin định dạng theo chucủa Asterisk necircn khi sử dụng caacutec file Mp3 thocircng thường cần coacute sự chuyển đổi thiacutechợp trước khi cheacutep vagraveo thư mục trecircn để sử dụng
sounds
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4472
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4572
Taacutec Giả Lecirc Quốc Toagraven
45
Thư mục tmp sử dụng để lưu trữ những thocircng tin tạm để luocircn bảo đảm khocircnxảy ra tigravenh trạng đọc vagrave viết tập tin cugraveng một luacutec Khi yecircu cầu xử lyacute tập tin chuacuteng thao taacutec trecircn thư mục tmp trước khi lưu vagraveo tập tin điacutech
Tất cả caacutec lời nhắc thoại từ phiacutea người sử dụng vagrave caacutec lời nhắc thoại sử dụ
cho thao taacutec hộp voicemail đều được chứa trong thư mục voicemail Một hộp thưthoại được tạo ra ứng với một maacutey nội bộ trong tập tin voicemailconf sẽ được tra một thư mục con tương ứng cho maacutey nội bộ đoacute tại thư mục voicemail
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4672
Taacutec Giả Lecirc Quốc Toagraven
46
5 varrun
Thư mục varrun chứa thocircng tin process ID(pid) cho tất cả caacutec tiến trigravenh đang
hoạt động trong hệ thống bao gồm cả Asterisk Lưu yacute lagrave ứng với mỗi hệ điều hagravethư mục varrun coacute thể khaacutec
6 varlogasterisk
Thư mục varlogasterisk lagrave nơi Asterisk chứa tất cả caacutec tập tin nhật kyacute haycograven gọi lagrave tập tin log Chuacuteng ta coacute thể tuỳ biến caacutec loại thocircng tin được lưu trong caacutec
tập tin log khaacutec nhau qua tập tin cấu higravenh loggerconf đặt tại thư mục etcasterisk7 varlogasteriskcdr-csv
Thư mục varlogasteriskcdr-csv được sử dụng để lưu chi tiết cuộc gọi CDRThocircng tin mặc định về chi tiết thocircng tin cuộc gọi lưu trữ trong tập tin MasterCVSnhưng thường thigrave ứng với mỗi matilde accountcode sẽ tạo một thư mục riecircng để lưu ctiết cuộc gọi cho maacutey đoacute
5 Một số lệnh thao taacutec trecircn hệ thống asterisk
Asterisk coacute hai thagravenh phần được xacircy dụng tiacutech hợp với nhau vagrave chạy songsong nhau
Asterisk Server bigravenh thường chạy ở chế độ nền(background) giống caacutec sevicestrong window
Asterisk Client ở chế độ dograveng lệnh CLI giao tiếp với Asterisk Server thực thicaacutec lệnh để kiểm tra hay xem caacutec thocircng tin của server
Để Chạy vagrave dừng Asterisk ở chế độ nền chuacuteng ta thực hiện lệnh sau
etcinitdasterisk (start|stop)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4772
Taacutec Giả Lecirc Quốc Toagraven
47
Một khi Asterisk đatilde chạy chuacuteng ta coacute thể chuyển qua chế độ CLI từ dấu nhắlệnh của linux như sau
asterisk ndashr
Khi vagraveo chế độ lệnh nếu muốn thoaacutet về lại dấu nhắc linux chuacuteng ta dugraveng lệnh
CLIgtexit
Caacutec lệnh cơ bản thực hiện tại CLIgt
Bất cứ khi nagraveo chỉnh sửa caacutec tập tin cấu higravenh chuacuteng ta đều cần phải nạp lại đcaacutec thay đổi coacute hiệu lực điều đoacute thực hiện bằng lệnh
CLIgtreload
Bậc chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 debug
CLIgt SIP debug
Tắt chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 no debug
CLIgt SIP no debug
Hiển thị caacutec trạng thaacutei thocircng tin của users peers vagravechannels của SIP hoặc IAX2
CLIgt sip show users
CLIgt sip show peers
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4872
Taacutec Giả Lecirc Quốc Toagraven
48
CLIgt sip show channels
CLIgt iax2 show peers
CLIgt iax2 show users
CLIgt iax2 show channels
Đến thời điểm nagravey coacute thể noacutei chuacuteng ta đatilde hoagraven thagravenh cagravei đặt hệ thốngAsterisk cagravei đặt xong mới lagrave bước mở đầu để cho hệ thống Asterisk hoạt động vtừng ứng dụng cụ thể chuacuteng sẽ tiếp tục thực hiện caacutec giai đoạn được xem lagrave qutrọng nhất trong việc triển khai hệ thống Asterisk đoacute lagrave giai đoạn cấu higravenh hệ thốnlecircn kế hoạch Diaplan chương cograven lại đều nhắm đến mục tiecircu nagravey
4 CẤU HIgraveNH HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Sau khi hoagraven tất phần cagravei đặt hệ thống asterisk một bước quan trọng tiếp thelagrave cấu higravenh hệ thống coacute thể noacutei đacircy lagrave bước quan trọng nhất của việc khiển khai thống đến với từng ứng dụng cụ thể Trong chương nagravey xin giới thiệu caacutei nhigraven đầtiecircn về việc cấu higravenh trước khi đi sacircu hơn ở những chương sau những gigrave giới thiệ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4972
Taacutec Giả Lecirc Quốc Toagraven
49
trong chương nagravey lagrave nền moacuteng cơ bản nhưng đủ để hiểu lagravem thế nagraveo hệ thống coacute thoạt động được nội dung chiacutenh bao gồm
+ Thao taacutec cấu higravenh trecircn hệ thống tập tin của asterisk
+ Caacutech cagravei đặt phần mềm softphone trecircn cocircng nghệ sip
+ Cấu higravenh cho hai maacutey softphone liecircn lạc với nhau
+ Cấu higravenh phaacutet thocircng điệp
+ Quay số qua Sip vagrave mạng PSTN
2 Tập Tin cấu higravenh
Tất cả caacutec file cấu higravenh cho hệ thống asterisk đều nằm tại thư mục etcasterisngoại trừ file zaptelconf cấu higravenh cho phần cứng TDM nằm tại thư mục etc caacutecthức cấu higravenh giống như tập tin ini của window vậy Caacutec nội dung sau dấu chấm phảy lagrave nội dung chuacute thiacutech trong file cấu higravenh giống như chuacute thiacutech trong ngocircn ngữ
lập trigravenh C lagrave dấu Tất cả caacutec khoảng trắng trong tập tin đều được bỏ qua khocircng yacute nghĩa trong file cấu higravenh
Trong file cấu higravenh cograven coacute hai pheacutep gaacuten rất thường xuyecircn được sử dụng pheacutep gaacuten ldquo=rdquo lagrave dugraveng cho việc gaacuten caacutec biến cograven pheacutep gaacuten ldquo=gtrdquo dugraveng cho việc gaacutencaacutec đối tượng sau đacircy lagrave một viacute dụ cho file cấu higravenh
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5072
Taacutec Giả Lecirc Quốc Toagraven
50
Đacircy lagrave caacutec dograveng chuacute thiacutech
[section]
Key=value gaacuten giaacute trị cho biến
[section2]
Key=gtobject Gaacuten giaacute trị cho đối tượng
Cuacute phaacutep thực hiện giống nhau cho tất cả caacutec file cấu higravenh nhưng coacute vagravei kiểukhaacutec nhau cho mỗi file cầu higravenh dựa vagraveo thức caacutech hoạt động của chuacuteng
3 Caacutec kiểu ảnh hưởng trong tập cấu higravenh
Coacute ba kiểu caacutech thức hoạt động của tập tin cấu higravenh như sau
Kiểu Caacutech hoạt động File cầu higravenh Viacute dụ
S i m p l eGroup
Coacute hiệu lực trecircntừng dograveng trongfile
Extensionconf
Exten=gt4001dial(sip400)
O p t i o ninheritance
Dograveng khai baacuteosau thừa kếnhững thocircng sốkhai baacuteo trước
Zapataconf [channels]
Context=From_PSTN
Signalling=fxs_ks
Group=1Channel=gt1
C o m p l e xEntity
Mỗi entity nhậnmột ngữ cảnh
sipconf
iaxconf
[cisco]
Type=friend
Secret=12345
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5172
Taacutec Giả Lecirc Quốc Toagraven
51
Host=192168165
Context=NoiBo
[xten]
Type=friend
Secret=6789
Host=dynamic
Context=NoiBo
1 Simple Group
Đacircy lagrave kiểu cấu higravenh đơn giản nhất thường sử dụng trong caacutec fileextentionconf meetmeconf voicemailconf tương ứng với mỗi dograveng khai baacuteo lagravemột đối tượng coacute yacute nghĩa trecircn dograveng đoacute
Viacute dụ
Extentionconf [section]
object1=gt op1op2op3
object2=gt op1bop2bop3b
Trong viacute dụ trecircn mỗi dograveng tương ứng với caacutec toaacuten tử khaacutec nhau object1 coacute caacutectoaacuten từ op1 op2 op3 trong khi đoacute object2 lại coacute caacutec toaacuten từ op1b op2b op3b
2 Option inheritance
Đacircy lagrave cấu higravenh kiểu thừa kế thường được cấu higravenh trong caacutec file zapataconfagentconf với kiểu cấu higravenh nagravey thigrave caacutec dograveng phiacutea dưới coacute thể thừa kế caacutec thocircng sdograveng phiacutea trecircn tương ứng với mỗi section caacutec dograveng phiacutea dưới coacute thể thay đổi caacutecthocircng số cho tươngứng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5272
Taacutec Giả Lecirc Quốc Toagraven
52
Viacute dụ
Extentionconf
[section]
Op1=bas
Op2=adv
Object1=gt1
Op1=int
Object1=gt2
Với cấu higravenh trecircn coacute thể giải thiacutech như sau object1=gt1 thừa hưởng hai thocircngsố ở phiacutea trecircn đoacute lagrave op1=bas vagrave op2=adv trong khi đoacute đối với object1=gt2 với thocircngsố op1=int được khai baacuteo lại necircn object1=gt2 được thừa kế từ hai thocircng số op1=invagrave op2=adv
3 Complex Entity
Với cấu kiểu nagravey được tổ chức thagravenh nhiều entity ứng với mỗi entity coacute nhiềthocircng số được khai baacuteo mỗi entity ở đacircy chiacutenh lagrave caacutec section để khai baacuteo caacutec kecircnhthocircng tin Cấu higravenh thường được sử dụng trong caacutec file iaxconf sipconf
Viacute dụ
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5372
Taacutec Giả Lecirc Quốc Toagraven
53
[entity1]
Op1=value1
Op2=value2
[entity2]
Op1=value3
Op2=value4
Entity1 coacute caacutec giaacute trị value1 vagrave value2 cho thocircng số op1 vagrave op2 trong khi đoacute
cũng lagrave thocircng số op1 vagrave op 2 nhưng coacute caacutec giaacute trị khaacutec lagrave value3 vagrave value4 choentity2
4 Cấu higravenh giao tiếp với mạng PSTN
1 Ngữ cảnh kết nối
Để kết nối với mạng PSTN chuacuteng ta cần phải coacute một card TDM với Cổng
FXO vagrave một đường dacircy điện thoại hoặc coacute thể lagrave một tổng đagravei nội bộ PBX Cnhiều nhagrave sản xuất phần cứng khaacutec nhau nhưng trong phần cấu higravenh dưới dacircy lagrave cấhigravenh cho card zapata TDM01B của digium (card nagravey hiện nay giaacute baacuten khoảng175$)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 772
Taacutec Giả Lecirc Quốc Toagraven
7
năm 1977 tecircn lagrave Mark Spencer Anh ta viết phần mềm nagravey ban đầu khocircng ngoagraveimục điacutech hỗ trợ cho cocircng ty của migravenh trong việc liecircn lạc đagravem thoại hỗ trợ cộnđồng người sử dụng vagrave phaacutet triển Linux
Asterisk lagrave mộtPBXvagrave nhiều hơn thế Asterisk lagrave một phần mềm mang tiacutenhcaacutech mạng tin cậy matilde nguồn mở vagrave miễn phiacute magrave biến một PC rẻ tiền thocircng thườnchạy Linux thagravenh một hệ thống điện thoại doanh nghiệp mạnh mẽ Asterisk lagrave m bộ cocircng cụ matilde nguồn mở cho caacutec ứng dụng thoại vagrave lagrave một server xử lyacute cuộc gọđầy đủ chức năng Asterisk lagrave một nền tảng tiacutech hợp điện thoại vi tiacutenh hoaacute kiến truacutemở Nhiều hệ thống Asterisk đatilde được cagravei đặt thagravenh cocircng trecircn khắp thế giới Cocircnnghệ Asterisk đang phục vụ cho nhiều doanh nghiệp
Hiện nay Asterisk trecircn đagrave phaacutet triển nhanh được rất nhiều doanh nghiệp triểnkhai ứng dụng cho cocircng ty của migravenh Đacircy lagrave xu thế tất yếu của người sử dụng điệthoại vigrave caacutec cocircng ty đều coacute mạng maacutey tiacutenh vagrave cần liecircn lạc với nhau trong cocircng việcgiữa caacutec phograveng ban hoặc chi nhaacutenh vagrave cần một chi phiacute thấp thậm chiacute khocircng phải tốchi phiacute khi thực hiện caacutec cuộc gọi trecircn mạng nội bộ của cocircng ty
Khocircng goacutei gọn thocircng tin liecircn lạc trong cocircng ty magrave caacutec ứng dụng giao tiếp vớimạng PSTN hoặc mạng VOIP (như voice777) cho pheacutep gọi ra bất cứ số điện thoạnagraveo coacute trecircn mạng PSTN
Ngoagravei ra việc tiacutech hợp vagraveo caacutec ứng dụng như CRM vagrave hệ thống Outlook lagravemcho khả năng ứng dụng của Asterisk linh hoạt hơn đaacutep ứng nhu cầu cần thiết ch
người sử dụng điện thoại
Asterisk thoạt đầu được phaacutet triển trecircn GNULinux nền x86 (Intel) nhưng giờđacircy noacute cũng coacute thể biecircn dịch vagrave chạy trecircn OpenBSD FreeBSD vagrave Mac OS X vagraveMicrosoft Windows
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 872
Taacutec Giả Lecirc Quốc Toagraven
8
Sơ đồ Tổng quaacutet
Asterisk lagrave hệ thống chuyển mạch tiacutech hợp vừa lagrave cocircng nghệ truyền thốngTDM vừa lagrave chguyển mạch voip Higravenh trecircn cũng cho thấy khả năng giao tiếp của hthống Giao tiếp với điện thoại analog thocircng thường giao tiếp với thiết bị điện thovoip ngoagravei ra cograven coacute thể giao tiếp với mạng PSTN vagrave caacutec nhagrave cung cấp voip khaacutec
2 KIẾN TRUacuteC ASTERISK
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 972
Taacutec Giả Lecirc Quốc Toagraven
9
Về cơ bản kiến truacutec của Asterisk lagrave sự kết hộp giữa nền tảng cocircng nghệ đithoại vagrave ứng dụng điện thoại cocircng nghệ điện thoại cho VOIP như SIP H323 IAXMGCP caacutec cocircng nghệ điện thoại cho hệ thống chuyển mạch mạch TDM như TE1 ISDN vagrave caacutec giao tiếp đường truyền thoại Analog Caacutec ứng dụng thoại nhưchuyển mạch cuộc gọi tương taacutec thoại caller ID voicemail chuyển cuộc gọihellip
Asterisk coacute một số chức năng chiacutenh đoacuteng vai trograve quan trọng trong hệ thống
chuyển mạch cuộc gọi Khi khởi động hệ thống Asterisk thigrave chức năng DynamiModule Loader thực hiện nạp driver của thiết bị nạp caacutec kecircnh giao tiếp caacutecformat codec vagrave caacutec ứng dụng liecircn quan đồng thời caacutec hagravem API cũng được liecircn kếtnạp vagraveo hệ thống
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1072
Taacutec Giả Lecirc Quốc Toagraven
10
Sau đoacute hệ thống PBX Switching Core của Asterisk chuyển sang trạng thaacutei sẵnsagraveng hoạt động chuyển mạch cuộc gọi caacutec cuộc gọi được chuyển mạch tuỳ vagraveo
hoạch quay số (Dialplan) được thực hiện cấu higravenh trong file extensionconfChức năng Application Launchar để rung chuocircng thuecirc bao quay số định
hướng cuộc gọi kết nối với hộp thư thoạihellip
Scheduler and IO Manager đảm nhiệm caacutec ứng dụng nacircng cao caacutec chức năngđược phaacutet triển bởi cộng đồng phaacutet triển asterisk
Codec Translator xaacutec nhận caacutec kecircnh neacuten dữ liệu ứng với caacutec chuẩn khaacutec nhaucoacute thể kết hợp liecircn lạc được với nhau
Tất cả caacutec cuộc gọi định hướng qua hệ thống Asterisk đều thocircng qua caacutec giaotiếp như SIP Zaptel IAX Necircn hệ thống Asterisk phải đảm traacutech nhiệm vụ liecircn kếcaacutec giao tiếp khaacutec nhau đoacute để xử lyacute cuộc gọi
Hệ thống cũng bao gồm 4 chức năng API chiacutenh
Codec translator API caacutec hagravem đảm nhiệm thực thi vagrave giải neacuten caacutec chuẩn khaacutecnhau như G711 GMS G729hellip
Asterisk Channel API Giao tiếp với caacutec kecircnh liecircn lạc khaacutec nhau đacircy lagrave đầumối cho việc kết nối caacutec cuộc gọi tương thiacutech với nhiều chuần khaacutec nhau như SIIAX H323 Zaptelhellip
Asterisk file format API Asterisk tương thiacutech với việc xử lyacute caacutec loại file coacuteđịnh dạng khaacutec nhau như Mp3 wav gsmhellip
Asterisk Aplication API Bao gồm tất cả caacutec ứng dụng được thực thi trong hệthống Asterisk như voicemail callerIDhellip
wwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1172
Taacutec Giả Lecirc Quốc Toagraven
11
Ngoagravei ra Asterisk cograven coacute thư viện Asterisk Gateway Interface (AGI tương tựnhư CGI) - cơ chế kiacutech hoạt ứng dụng becircn ngoagravei cho pheacutep viết kịch bản phức tạp
với một số ngocircn ngữ như PHP hay Perl Noacutei chung khả năng viết caacutec ứng dụng tugravey biến rất lớn
3 MỘT SỐ TIacuteNH NĂNG CƠ BẢN
Asterisk coacute rất nhiều tiacutenh năng đatilde được giới thiệu ở trecircn nhưng để hiểu rotilde hếtất cả caacutec tiacutenh năng trecircn thật sự lagrave thaacutech thức đối với chuacuteng ta Trong phần nagraveychuacuteng tocirci sẽ giới thiệu một số tiacutenh năng với caacutec ứng dụng cụ thể để hiểu hơn về
thống asterisk
1 Voicemail (hộp thư thoại)
Đacircy lagrave tiacutenh năng cho pheacutep hệ thống nhận caacutec thocircng điệp tin nhắn thoại mỗmaacutey điện thoại được khai baacuteo trong hệ thống Asterisk cho pheacutep khai baacuteo thecircm chứnăng hộp thư thoại
Mỗi khi số điện thoại bận hay ngoagravei ldquovugraveng phủ soacutengrdquo thigrave hệ thống asteriskđịnh hướng trực tiếp caacutec cuộc gọi đến hộp thư thoại tương ứng đatilde khai baacuteo trước
Voicemail cung cấp cho người sử dụng nhiều tiacutenh năng lựa chọn như password xaacutec nhận khi truy cập vagraveo hộp thư thoại gửi mail baacuteo khi coacute thocircng điệmới
2 Call Forwarding(chuyển cuộc gọi)
Khi khocircng ở nhagrave hoặc đi cocircng taacutec magrave người sử dụng khocircng muốn bỏ lỡ tất ccaacutec cuộc gọi đến thigrave hatildey nghĩ ngay đến tiacutenh năng chuyển cuộc gọi
Đacircy lagrave tiacutenh năng thường được sử dụng trong hệ thống Asterisk Chức năng cho pheacutep chuyển một cuộc gọi đến một hay nhiều số maacutey điện thoại được định trước
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1272
Taacutec Giả Lecirc Quốc Toagraven
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ậnchuyển cuộc gọi khi khocircng trả lời chuyển cuộc gọi tức thời chuyển cuộc gọi v
thời gian định trước3 Caller ID (hiển thị số gọi)
Chức năng nagravey rất hữu dụng khi một ai đoacute gọi đến vagrave ta muốn biết chiacutenh xaacuteclagrave gọi từ đacircu vagrave trong một số trường hợp biết chắc họ lagrave ai
Ngoagravei ra Caller ID cograven lagrave chức năng cho pheacutep chuacuteng ta xaacutec nhận số thuecirc bao
gọi đến coacute nghĩa lagrave dựa vagraveo caller ID chuacuteng ta coacute tiếp nhận hay khocircng tiếp nhậncuộc gọi từ phiacutea hệ thống Asterisk Ngăn một số cuộc gọi ngoagravei yacute muốn
4 Automated attendant (chức năng IVR)
Chức năng tương taacutec thoại coacute rất nhiều ứng dụng trong thực tế khi gọi điệthoại đến một cơ quan hay xiacute nghiệp thuecirc bao thường nghe thocircng điệp nhưldquoXinchagraveo mừng bạn đatilde gọi đến cocircng ty chuacuteng Tocirci hatildey nhấn phiacutem 1 để gặp phograveng kinh
doanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquosau đoacute tuỳ vagraveo sự tương taacutec của thuecirc 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 thuecirc bao muố biết tỉ giaacute Đocircla hiện nay như thế nagraveo hay kết quả sổ số hellip tất caacutec những monmuốn trecircn đều coacute thể thực hiện qua chức năng tương taacutec thoại
5 Time and Date
Vagraveo từng thời gian cụ thể cuộc gọi sẽ định hướng đến một số điện thoại hmột chức năng cụ thể khaacutec viacute dụ trong cocircng ty giaacutem đốc muốn chỉ cho pheacutep nhacircnviecircn sử dụng maacutey điện thoại trong giờ hagravenh chaacutenh cograven ngoagravei giờ thigrave sẽ hạn chế hakhocircng cho pheacutep gọi ra becircn ngoagravei
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1372
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1472
Taacutec Giả Lecirc Quốc Toagraven
14
Asterisk thực hiện rất nhiều ngữ cảnh ứng dụng khaacutec nhau tuỳ vagraveo nhu cầu sdụng dưới dacircy lagrave những ngữ cảnh ứng dụng thường được sử dụng trong thực
triển khai hệ thống asterisk1 Tổng đagravei voip IP PBX
IP BPX
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1572
Taacutec Giả Lecirc Quốc Toagraven
15
Đacircy lagrave hệ thống chuyển mạch voip được xacircy dựng phục vụ caacutec cocircng ty coacute nhucầu thực hiện trecircn nền tảng mạng nội bộ đatilde triển khai Thay vigrave lắp đặt một hệ thố
PBX cho nhu cầu liecircn lạc nội bộ thigrave necircn lắp đặt hệ thống voip điều nagravey sẽ lagravem giảchi phiacute đaacuteng kể Hệ thống coacute thể liecircn 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 ở đacircy lagrave hiện tại Cocircng ty đatilde trang bị hệ thống PBX bacircygiờ cần trang bị thecircm để đaacutep ứng nhu cầu liecircn lạc trong cocircng ty sao cho với chi phthấp nhất giải phaacutep để thực hiện đoacute lagrave trang bị hệ thống asterisk vagrave kết nối với h
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1672
Taacutec Giả Lecirc Quốc Toagraven
16
thống PBX đang tồn tại qua luồng E1 Ngoagravei ra để tăng khả năng liecircn lạc với mạnPSTN vagrave VOIP khaacutec Cocircng Ty coacute thể thực hiện kết nối với nhagrave cung cấp dịch vụvoip
3 Kết nối giữa caacutec server Asterisk
Kết nối giữa caacutec server asterisk
Phương phaacutep trecircn ứng dụng rất hiệu quả cho caacutec cocircng ty nằm ratildei raacutec ở caacutec vtrị địa lyacute khaacutec nhau nhằm giảm chi phiacute đường dagravei Viacute dụ Cocircng ty Mẹ coacute trụ sở đặtại nước Mỹ vagrave caacutec Chi nhaacutenh đặt tại Việt Nam với caacutec địa điểm Thagravenh phố Hồ ChMinh vagrave Hagrave Nội Thocircng qua mạng WAN của Cocircng Ty caacutec cuộc gọi nội bộ giữa caacutec
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1772
Taacutec Giả Lecirc Quốc Toagraven
17
vị triacute khaacutec nhau sẽ lagravem giảm chi phiacute đaacuteng kể Ngữ cảnh nagravey về mặt phaacutep luật khocircncho cuộc gọi từ Mỹ vagraveo Việt Nam
4 Caacutec ứ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 caacutec server kết nối với hệ thống PSTN hay tổng đagravei PBXđể triển khai caacutec ứng dụng như tương taacutec thoại IVR Một viacute dụ cho ứng dụng tươtaacutec thoại đoacute lagrave cho biết kết quả sổ số hay kiểm tra cước cuộc gọi giống dịch v19001260 vậy Ứng dụng VoiceMail thu nhận những tin nhắn thoại từ phiacutea thuecirc bao giống như chức năng hộp thư thoại của Bưu Điện Thagravenh phố triển khai Cograve
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1872
Taacutec Giả Lecirc Quốc Toagraven
18
chức năng điện thoại hội nghị thiết lập cho nhiều maacutey điện thoại cugraveng noacutei chuyệvới nhau
5 Chức năng Phacircn phối cuộc gọi tự động ACD
Phacircn phối cuộc gọi với hagraveng đợi
ACD(Automatic Call Distribution) Phacircn phối cuộc gọi tự động
Đacircy lagrave chức năng ứng dụng cho nhu cầu chăm soacutec khaacutech hagraveng hay nhận phảnhổi từ phiacutea khaacutech hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1972
Taacutec Giả Lecirc Quốc Toagraven
19
Cocircng ty coacute khả năng tiếp nhận cugraveng một luacutec 10 cuộc gọi như thế cuộc gọi th11 gọi đến thigrave hệ thống giải quyết như thế nagraveo Bigravenh thường thigrave sẽ nghe tiacuten hiệ
bận nhưng với chức năng phacircn phối cuộc gọi sẽ đưa thuecirc bao đoacute vagraveo hagraveng đợi đchờ trả lời trong khi chờ trả lời cuộc gọi thuecirc bao coacute thể nghe những bagravei haacutet hay dasterisk cung cấp trong luacutec nagravey nếu 1 trong mười số điện thoại trở về trạng thaacutei rthigrave cuộc gọi đang chờ sẽ được trả lời Giống như chức năng của dịch vụ 1080 ha116 của Bưu Điện Thagravenh Phố vậy
2 CAacuteC KHAacuteI NIỆM TRONG HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Trong chương nagravey sẽ giải thiacutech rotilde caacutec khaacutei niệm cơ bản liecircn quan đến hệ thốnasterisk cung cấp những kiến thức nền tảng những khaacutei niệm cần thiết để thiếttriển khai xacircy dựng hệ thống điện thoại với Asterisk
2 PBX - Private Branch Exchange
PBX hay cograven gọi lagrave PABX - Private Automatic Branch Exchange lagrave hệ thốngtổng đagravei nội bộ được đặt tại nhagrave thuecirc bao từ Automatic ở đacircy muốn noacutei đến lagrave hthống tổng đagravei điện tử tự động nhưng hiện nay đa số lagrave tổng đagravei PBX điện tử tđộng necircn từ trecircn thực sự khocircng cograven cần thiết nữa
PBX với mục tiecircu chia sẻ nhiều thuecirc bao nội bộ gọi ra thế giới becircn ngoagraveithocircng qua một vagravei đường trung kế hay noacutei một caacutech khaacutec PBX lagrave hệ thống trungchuyển giữa caacutec đường dacircy điện thoại becircn ngoagravei từ cocircng ty điện thoại vagrave maacutey điệthoại nội bộ trong tổng đagravei PBX Vigrave thế necircn số lượng maacutey điện thoại nội bộ luocircnhiều hơn số đường dacircy nối đến PBX từ becircn ngoagravei
wwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2072
Taacutec Giả Lecirc Quốc Toagraven
20
PBX thực hiện chuyển mạch cuộc gọi caacutec maacutey điện thoại nội bộ với nhau vvới caacutec maacutey điện thoại becircn ngoagravei thocircng qua đường trung kế Đồng thời thực hiệ
chuyển mạch caacutec cuộc gọi điện thoại từ becircn ngoagravei vagraveo caacutec maacutey điện thoại nội bộNgoagravei việc chuyển mạch cuộc gọi PBX cung cấp nhiều tiacutenh năng sử dụng
cho nhiều mục điacutech khaacutec nhau của khaacutech hagraveng magrave bản thacircn caacutec đường dacircy điệnthoại từ cocircng ty điện thoại kết nối đến khocircng thể thực hiện được caacutec tiacutenh năng ntương taacutec thoại(IVR) Voicemail phacircn phối cuộc gọi tự động(ADC)hellip
Hiện nay với việc phaacutet triển mạnh mẽ của cocircng nghệ VoIP chuacuteng ta cograven coacutethecircm thuật ngữ IP PBX Đacircy lagrave hệ thống chuyển mạch PBX với cocircng nghệ Voip
3 VOIP - Voice Over Internet Protocol
Voice over Internet Protocol (VoIP) lagrave một cocircng nghệ cho pheacutep truyền thoạisử dụng giao thức mạng IP trecircn cơ sở hạ tầng sẵn coacute của mạng internet Voip lagrave mtrong những cocircng nghệ viễn thocircng đang được quan tacircm nhất hiện nay khocircng chỉ đố
với nhagrave khai thaacutec caacutec nhagrave sản xuất magrave cograven cả với người sử dụng dịch vụVoip coacute thể vừa thực hiện mọi loại cuộc gọi như trecircn mạng điện thoại kecircn
truyền thống (PSTN) đồng thời truyền dữ liệu trecircn cơ sở mạng truyền dữ liệu Dcaacutec ưu điểm về giaacute thagravenh dịch vụ vagrave sự tiacutech hợp nhiều loại higravenh dịch vụ necircn voihiện nay được triển khai một caacutec rộng ratildei
Dịch vụ điện thoại voip lagrave dịch vụ ứng dụng giao thức IP nguyecircn tắc củaVoIP bao gồm việc số hoaacute tiacuten hiệu tiếng noacutei thực hiện việc neacuten tiacuten hiệu số chia nhcaacutec goacutei nếu cần vagrave truyền goacutei tin nagravey qua mạng tới nơi nhận caacutec goacutei tin nagravey đượraacutep lại theo đuacuteng thứ tự của bản tin giải matilde tiacuten hiệu tương tự phục hồi lại tiếng n ban đầu
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2172
Taacutec Giả Lecirc Quốc Toagraven
21
Caacutec cuộc gọi trong VoIP dựa trecircn cơ sở sử dụng kết hợp cả chuyển mạchkecircnh vagrave chuyển mạch goacutei Trong mỗi loại chuyển mạch đều coacute ưu nhược điể
riecircng của noacute Trong kỹ thuật chuyển mạch kecircnh giagravenh riecircng cho một kecircnh truyềngiữa hai thiết bị đầu cuối thocircng qua caacutec node chuyển mạch trung gian Trongchuyển mạch kecircnh tốc độ truyền dẫn luocircn luocircn cố định(nghĩa lagrave băng thocircng khocircnđổi) với mạng điện thoại PSTN tốc độ nagravey lagrave 64kbps truyền dẫn trong chuyểmạch kecircnh coacute độ trễ nhỏ
Trong chuyển mạch goacutei caacutec bản tin được chia thagravenh caacutec goacutei nhỏ gọi lagrave caacutec
goacutei nguyecircn tắc hoạt động của noacute lagrave sử dụng hệ thống lưu trữ vagrave chuyển tiếp caacutec gtin trong nuacutet mạng Đối với chuyển mạch goacutei khocircng tồn tại khaacutei niệm kecircnh riecircng băng thocircng khocircng cố định coacute nghĩa lagrave coacute thể thay đổi tốc độ truyền kỹ thuật chuyểmạch goacutei phải chịu độ trễ lớn vigrave trong chuyển mạch goacutei khocircng quy định thời giancho mỗi goacutei dữ liệu tới điacutech mỗi goacutei coacute thể đi bằng nhiều con đường khaacutec nhau đtới điacutech chuyển mạch goacutei thiacutech hợp cho việc truyền dữ liệu vigrave trong mạng truyền dliệu khocircng đogravei hỏi về thời gian thực như thoại để sử dụng ưu điểm của mỗi lo
chuyển mạch trecircn thigrave trong voip kết hợp sử dụng cả hai loại chuyển mạch kecircnh vchuyển mạch goacutei
4 PSTN ndash Public Switched Telephone Network
PSTN lagrave mạng chuyển mạch điện thoại cocircng cộng hay noacutei caacutech khaacutec lagrave mạngkết nối tất cả caacutec hệ thống tổng đagravei chuyển mạch-mạch
Để hiểu rotilde hơn hatildey xem xeacutet mạng PSTN với mạng Internet về khiacutea cạnhchuyển thoại trecircn đoacute Chuyển mạch mạch muốn thực hiện cuộc gọi giữa hai thu bao thigrave hệ thống phải giagravenh riecircng một kecircnh truyền 64kbps để chuyển tải tiacuten hiệthoại trecircn đoacute Cograven cuộc gọi điện thoại trecircn mạng Internet thigrave tiacuten hiệu thoại đượđoacuteng goacutei vagrave chuyển đi trecircn cugraveng kecircnh truyền với nhiều dịch vụ khaacutec Vigrave lẽ đoacute chấlượng cuộc gọi trecircn mạng PSTN bao giờ cũng tốt hơn trecircn mạng Internet nhưng đổ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2272
Taacutec Giả Lecirc Quốc Toagraven
22
lại chi phiacute lại đắc hơn rất nhiều đặc biệt lagrave caacutec cuộc gọi quốc tế necircn phải cần nhắc kỹ khi sử dụng
PSTN được phaacutet triển trecircn chuẩn ITU(International TelecommunicationUnion) cograven mạng Internet được phaacutet triển trecircn chuẩn IETF(Internet EngineeringTask Force) cả hai mạng trecircn đều sử dụng địa chỉ để định tuyến cuộc gọi PSTN sdụng caacutec con số điện thoại để chuyển mạch cuộc gọi giữa caacutec tổng đagravei điện thotrong khi đoacute trecircn mạng Internet địa chỉ IP sẽ được sử dụng để định tuyến caacutec goacutethoại
5 TDM ndash Time Division Multiplexing
Lagrave kỹ thuật gheacutep kecircnh phacircn chia thời gian nhiều tiacuten hiệu coacute thể truyền đồngthời trecircn một đường truyền TDM được sử dụng chuyển thoại trong hệ thống mạPSTN Coacute hai chuẩn gheacutep kecircnh TDM cơ bản lagrave E1 với 30 kecircnh thoại trecircn mộtkhung tốc độ 2Mbps vagrave T1 với 24 kecircnh thoại tốc độ 15Mbps
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2372
Taacutec Giả Lecirc Quốc Toagraven
23
Higravenh Minh họa gheacutep kecircnh phacircn chia theo thời gian
6 Caacutec higravenh thức baacuteo hiệu giao tiếp TDM
1 FXO vagrave FXS
FXO (Foreign Exchange Office) lagrave thiết bị nhận tiacuten hiệu từ tổng đagravei gửi đếnnhư dograveng chuocircng tiacuten hiệu nhấc gaacutec maacutey tiacuten hiệu mời quay số gửi vagrave nhận tiacuten hiệthoạihellip FXO giống như maacutey Fax hay modem dial-up 56k vậy Dugraveng để kết nối vớ
đường dacircy điện thoại
FXS (Foreign Exchange Station) lagrave thiết bị tại nơi cung cấp đường dacircy điệnthoại thiết bị FXS sẽ cung cấp tiacuten hiệu mời quay số(dialtone) dograveng chuocircng hồi acircmchuocircng(ring tone) Trong đường dacircy Analog FXS cung cấp dograveng chuocircng vagrave điện aacutepcho điện thoại hoạt động viacute dụ FXS cung cấp điện aacutep -48VDC đến maacutey điện tho
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2472
Taacutec Giả Lecirc Quốc Toagraven
24
Analog trong suốt thời gian đagravem thoại vagrave cung cấp 90VAC(20hz) để phaacutet điện aacuteprung chuocircng Thiết bị FXS phaacutet cograven thiết bị FXO nhận
Card TDM sử dụng trong hệ thống asterisk thường tiacutech hợp vừa thiết bị FXOvừa lagrave thiết bị FXS(Giống bộ ATA) FXO để kết nối với đường dacircy điện thoại cograveFXS dugraveng để kết nối với maacutey điện thoại analog thocircng thường dugraveng để chuyển mạcuộc gọi TDM qua hệ thống asterisk(Xem thecircm trong phần cấu higravenh cho kecircnhTDM)
Toacutem lại cần nắm
FXS được kết nối với FXO giống với đường dacircy điện thoại nối với maacuteyđiện thoại
FXS cung cấp nguồn cho điện thoại FXO(điện thoại Analog)
Higravenh a) Maacutey điện thoại vai trograve FXO kết nối với FXS(PSTN) Higravenh b) PBXkết nối với FXO vagrave FXS Higravenh c) ATA đoacuteng vai trograve như FXS để kết nối với maacuteyđiện thoại vai trograve FXO
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2572
Taacutec Giả Lecirc Quốc Toagraven
25
2 Baacuteo hiệu Analog giữa đầu cuối vagrave tổng đagravei
Khi chuacuteng ta nhấc mấy điện thoại để gọi thigrave nghe tiacuten hiệu mời quay số kh
cuộc gọi gọi đầu becircn kia bị bận thigrave chuacuteng ta nghe tiacuten hiệu bận(busy tone) caacutec loạtiacuten hiệu như vậy gọi lagrave caacutec tiacuten hiệu baacuteo hiệu analog Caacutec tiacuten hiệu như Mời quay sốtiacuten hiệu bận rung chuocircng trạng thaacutei nhấc gaacutec maacutey Caacutec loại tiacuten hiệu trecircn được trađổi giữa thiết bị FXO vagrave FXS
Coacute nhiều phương thức baacuteo hiệu khaacutec nhau ứng với từng nơi sử dụng vigrave thếtại nơi kết nối với đường dacircy điện thoại cần xem xeacutet họ đang sử dụng phương th
baacuteo hiệu gigrave từ đoacute chuacuteng ta khai thaacutec loại tiacuten hiệu baacuteo hiệu cho thiacutech hợp caacutec phương thức baacuteo hiệu như Loop Start Ground Start Một minh họa cho việc sửdụng sai phương thức baacuteo hiệu lagrave khi chuacuteng ta khai baacuteo phương thức baacuteo hiệu giữhệ thống Asterisk vagrave đường dacircy điện thoại khaacutec nhau thigrave dẫn đến Asterisk sẽ khocircnnhận biết được tiacuten hiệu gaacutec maacutey điều nagravey sẽ lagravem cho asterisk khocircng baacuteo giờ giải tỏđược cuộc gọi để thực hiện cuộc gọi mới
3 Baacuteo hiệu giữa caacutec tổng đagravei
SS7 hệ thống baacuteo hiệu số 7 được phaacutet triển bởi ATampT vagrave ITU lagrave hệ thống baacuteo hiệu chuyển caacutec cuộc gọi giữa caacutec tổng đagravei trong mạng PSTN Trong hệ thốn baacuteo hiệu số 7 tiacuten hiệu chuyển tải trecircn đường trung kế kết nối giữa hai tổng đagravei gồcoacute hai mạch riecircng một cho thoại vagrave một cho baacuteo hiệu như vậy thoại vagrave baacuteo hiệu cthể chuyển trecircn hai kecircnh vật lyacute khaacutec nhau
7 Baacuteo Hiệu trecircn mạng điện thoại VoIP
1 SIP Session Initiation Prorocol
Sip lagrave giao thức Internet dagravenh cho baacuteo hiệu VoIP được phaacutet triển bởi IETFcung cấp vagravei chức năng giống hệ thống baacuteo hiệu số 7 nhưng dựa trecircn nền IP Mộchức năng giống baacuteo hiệu số 7 đoacute lagrave baacuteo hiệu vagrave thoại chuyển tải trecircn hai kecircnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2672
Taacutec Giả Lecirc Quốc Toagraven
26
riecircng Giao thức SIP thực hiện chức năng thiết lập vagrave baacuteo hiệu cuộc gọi khi noacutei đế baacuteo hiệu cuộc gọi lagrave chỉ định caacutec tiacuten hiệu baacuteo hiệu như tiacuten hiệu mời quay số tiacutehiệu bậnhellip
2 Proxy server
Mặc dầu hai thiết bị SIP coacute thể liecircn lạc trực tiếp với nhau để khởi tạo cuộgọi nhưng trong giao thức SIP cograven coacute chức năng Proxy để linh hoạt hơn trong thiếlập cuộc gọi Proxy Server sẽ lagravem nhiệm vụ ghi nhận tất cả caacutec số điện thoại đư phiacutea client đăng kyacute đến qua bản tin ldquoRegistrationrdquo Khi một client khaacutec thực hiện
cuộc gọi thigrave thực sự Client đoacute khocircng biết số điện thoại cần gọi đang ở đacircu necircn thocircnqua Proxy server để tigravem kiếm thiết lập cuộc gọi
+
Higravenh Đăng kyacute từ Client đến SIP Proxy Với Giao thức SIP đường baacuteo hiệu vagravethoại riecircng
3 RTP vaacute NAT
Caacutec cuộc gọi trecircn Internet với giao thức SIP được chia thagravenh caacutec goacutei thoại vagraveđược chuyển qua giao thức RTP(Real Time Protocol) RTP lagrave giao thức khocircng chỉthực hiện chuyển caacutec goacutei thoại qua Internet magrave cograven coacute cả video nữa Một cuộc gọ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2772
Taacutec Giả Lecirc Quốc Toagraven
27
thocircng thường coacute hai hướng thocircng tin lagrave nhận vagrave phaacutet RTP lagravem việc chuyển caacutec goacutedữ liệu thoại cũng trecircn hai hướng
NAT Network Address Translators lagrave một trở ngại lớn trong giao thức RTPMạng sử dụng NAT lagrave một mạng chia sẻ nhiều địa chỉ IP nội bộ với một địa chỉ ICocircng cộng để kết nối với thế giới becircn ngoagravei NAT dugraveng để chia sẻ nhiều maacutey tiacutentrong mạng LAN nội bộ sử dụng được Internet nhưng cũng chiacutenh vigrave thế magrave caacutec maacutetiacutenh nội bộ gặp khoacute khăn trong việc thực hiện cuộc gọi VoIP qua Internet Đoacute chiacutenhlagrave vấn để trở ngại khi truyền thoại qua giao thức RTP
Higravenh Minh họa hoạt động của NAT
Trong Giao thức RTP như chuacuteng ta đatilde biết đoacute lagrave thoại được chuyển trecircn haiđường khaacutec nhau lagrave đường phaacutet vagrave đường thu Vấn đề NAT nằm ở chỗ tiacuten hiệthoại từ becircn ngoagravei vagraveo becircn trong qua giao thức RTP khocircng thực hiện được cograven chiềungược lại thigrave thực hiện tốt Hay noacutei caacutech khaacutec vấn đề NAT lagravem cho caacutec cuộc gọi t
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2872
Taacutec Giả Lecirc Quốc Toagraven
28
Internet đagravem thoại vagraveo caacutec maacutey nội bộ qua NAT thigrave khocircng nghe được cograven trongtrường hợp caacutec cuộc gọi từ caacutec maacutey nội bộ ra caacutec maacutey internet thigrave nghe tốt
Vấn đề NAT trecircn được giải quyết trong Asterisk bằng việc khai baacuteo thocircng số NAT=yes trong cấu higravenh kecircnh giao thức SIP
4 IAX ndash Inter Asterisk eXchange
IAX lagrave giao thức baacuteo hiệu Voip được phaacutet triển bởi taacutec giả của phần mềmAsterisk để khắc phục những hạn chế trong giao thức SIP Khocircng giống như giathức SIP chuyển tải thoại vagrave baacuteo hiệu trecircn hai kecircnh khaacutec nhau (out of band) IAXchuyển tải thoại vagrave baacuteo hiệu trecircn cugraveng một kecircnh(in band) IAX giải quyết được vấđề NAT đề cập trecircn phần giao thức SIP Mặc khaacutec IAX lagrave giao thức tối ưu trongviệc sử dụng băng thocircng cho pheacutep nhiều goacutei dữ liệu thoại trecircn cugraveng một IP headecơ chế chuyển tải nhiều cuộc gọi trecircn cugraveng một goacutei IP được gọi lagrave trung kế(Trunk)
Coacute thể giải thiacutech thecircm cơ chế trung kế như sau Giả sử Tocirci cần gửi 5 bức thtới người bạn của Tocirci Tocirci sẽ coacute hai higravenh thức để thực hiện thứ nhất lagrave mỗi bức tTocirci bỏ vagraveo một phong bigrave vậy tổng cộng tocirci phải sử dụng 5 phong bigrave để gửi đi 5 bứthư Caacutech thứ hai lagrave Tocirci bỏ 5 bức thư vagraveo 1 phong bigrave vagrave gửi đi vậy tổng cộng Tocircchỉ tốn 1 phong bigrave Qua phacircn tiacutech trecircn rotilde ragraveng việc 5 bức thư vagraveo một phong bigrave sẽtiết kiệm hơn so với 5 bức thư với 5 phong biacute Cơ chế trecircn cũng giống như nhiềcuộc gọi được đoacuteng thagravenh goacutei vagrave chuyển đi trecircn đường trung kế
Toacutem lại IAX lagrave giao thức dagravenh cho VoIP mới nhất cho đến thời điểm nagravey vớinhiều ưu điểm hấp dẫn như
+ Tối thiểu sử dụng băng thocircng
+ Trong suốt với NAT
+ Hiệu quả với cơ chế trung kế
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2972
Taacutec Giả Lecirc Quốc Toagraven
29
8 Thiết Bị VoIP
1 Voip Phone
Đacircy lagrave thiết bị phần cứng kết nối với mạng VoIP giống như maacutey điện thoại đ bagraven thocircng thường nhưng dagravenh cho VoIP cần phải thực hiện cấu higravenh trước khi sửdụng
Lưu yacute một số tiacutenh năng khi thực hiện mua thiết bị điện thoại VoIP
+ Low bandwidth hỗ trợ Codec nagraveo G729 lagrave tốt nhất hiện nay
+ Web Interface Phải coacute giao tiếp thiết lập cấu higravenh thacircn thiện dễ sử dụng
+ Audio Interface Coacute speaker phone hay khocircng
Giaacute thagravenh của điện thoại voip IP đắc hơn điện thoại thocircng thường giaacute khoảntrecircn dưới 100$ một caacutei
Higravenh Maacutey Điện Thoại VoIP
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3072
Taacutec Giả Lecirc Quốc Toagraven
30
2 Softphone
Lagrave một phần mềm được cagravei trecircn maacutey tiacutenh thực hiện tất cả caacutec chức năng giốn
như thiết bị điện thoại Voip cần lưu yacute khi sử dụng softphone lagrave maacutey tiacutenh phải ccard acircm thanh headphone vagrave firewall khocircng bị khoacutea
Sử dụng softphone với hệ thống Asterisk necircn dugraveng softphone với cocircng nghệgiao thức mới dagravenh cho Asterisk đoacute lagrave IAX
Higravenh Điện Thoại Softphone
3 Card giao tiếp với PSTN
Muốn cho pheacutep caacutec maacutey điện thoại nội bộ trong hệ thống Asterisk kết nối vthực hiện cuộc gọi với mạng PSTN chuacuteng ta cần phải coacute thiết bị phần cứng tươthiacutech Thiết bị phần cứng sử dụng cho hệ thống Asterisk do chiacutenh taacutec giả lập cocircng
Digium phacircn phối đacircy cũng chiacutenh lagrave yacute tưởng lớn trong việc phacircn phối phần mềmAsterisk lagrave hệ thống nguồn mở sử dụng miễn phiacute
Thiết bị phần cứng thường kyacute hiệu bắt đầu bằng cụm từ TDMxyB trong đoacute lagrave số lượng port FXS y lagrave số lượng port FXO giaacute trị tối đa của x vagrave y lagrave 4 viacute dụcard TDM22B coacute nghĩa lagrave coacute 2 fort FXS vagrave 2 port FXO
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3172
Taacutec Giả Lecirc Quốc Toagraven
31
Higravenh Card TDM22B gồm 4 port 2 FXS vagrave 2 FXO
4 ATA Analog Telephone Adaptors
ATA lagrave thiết bị kết nối với điện thoại Analog thocircng thường đến mạng VoIPmột thiết bị ATA gồm coacute hai loại port RJ-11 để kết nối với maacutey điện thoại analo
thocircng thường cograven RJ-45 để kết nối với mạng VoIP
ATA thực sự lagrave thiết bị FXS chuyển đổi tiacuten hiệu Analog sang tiacuten hiệu số sửdụng cho mạng VoIP để tận dụng maacutey điện thoại Analog necircn trang bị thiết bị ATAthay vigrave phải trang bị điện thoại VoIP
Thiết bị ATA sử dụng với giao thức IAX được Digium phacircn phối lagrave thiết bịATA được sử dụng rộng ratildei với Asterisk coacute tecircn gọi lagrave IAXy
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3272
Taacutec Giả Lecirc Quốc Toagraven
32
Higravenh Thiết bị ATA
9 Codecs
Thuật Toaacuten codecs(CompressorDe-compressor) lagrave một tập caacutec quy luật đượcsử dụng để chuyển đổi caacutec tiacuten hiệu thoại dạng Analog sang tiacuten hiệu số vagrave ngược lạ
Coacute nhiều thuật toaacuten codec để thực hiện chuyển đổi tiacuten hiệu analog sang tiacuten
hiệu số dạng nhị phacircn (01) như G711 GSM G729hellipỨng với mỗi thuật toaacuten coacutenhững ưu điểm riecircng đặc biệt lagrave việc tối ưu sử dụng băng thocircng trecircn đường truyềMục tiecircu cuối cugraveng lagrave caacutec thuật toaacuten đưa ra phải đảm bảo chất lượng cuộc gọi nhvagrave tiết kiệm băng thocircng nhất
G729 lagrave thuật toaacuten codec tốt nhất hiện nay trong hệ thống VoIP Với hệthống Asterisk để sử dụng thuật toaacuten nagravey cần phải mua bản quyền sử dụng vigrave đacircy
codec khocircng miễn phiacute sử dụng
10 QoS ndash Quality of Service
Caacutec yếu tố ảnh hưởng đến chất lượng của dịch vụ đối với VoIP đoacute lagrave caacuteyếu ảnh hưởng đến chất lượng tiacuten hiệu thoại
1 Độ trễ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3372
Taacutec Giả Lecirc Quốc Toagraven
33
Thoại lagrave dịch vụ mang tiacutenh thời gian thực rất cao vigrave thế trễ lagrave yếu tố ảnhhưởng rất lớn đến chất lượng dịch vụ Trễ được định nghĩa lagrave khoảng thời gian tiacute
từ luacutec tiacuten hiệu thoại đi từ miệng người noacutei tới tai người nghe Trễ lagrave yếu tố khocircnthể traacutenh khỏi độ trễ đối với mạng điện thoại truyền thống (mạng PSTN) khoảng50ms đến 70ms theo khiến nghị của ITU-T để đảm bảo chất lượng cho hệ thốVoIP thigrave độ trễ từ đầu phaacutet tới đầu thu hoặc ngược lại khocircng được vượt quaacute 150mkhi magrave độ trễ vượt quaacute 400ms đến 500ms thigrave khocircng thể chấp nhận được
Caacutec nguyecircn nhacircn gacircy ra trễ bao gồm Trễ trecircn mạng lưới trễ trecircn bộ mả hoacutea
giải matilde trễ trong quaacute trigravenh đoacuteng goacutei trễ bộ đệm trễ xử lyacute tiếng noacuteihellip2 Độ trượt(Jitter)
Nguyecircn nhacircn gacircy ra trượt lagrave goacutei tiacuten hiệu thoại trong quaacute trigravenh truyền từnguồn đến điacutech sẽ gặp phải những điều kiện khaacutec nhau trecircn mạng lưới do đoacute thườđến điacutech với những khoảng trễ khaacutec nhau Đacircy lagrave tiacutenh khocircng đồng nhất của trễ Mnguyecircn nhacircn khaacutec của trượt đối với ứng dụng PC to PC lagrave do việc sử dụng hệ điề
hagravenh phi thời gian thực caacutec goacutei tin thoại phải đợi hệ điều hagravenh xử lyacute trong nhữnkhoảng thời gian khaacutec nhau khi magrave hệ điều hagravenh đang phải xử lyacute đối với caacutec ứndụng khaacutec
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3472
Taacutec Giả Lecirc Quốc Toagraven
34
Higravenh Nguyecircn nhacircn xảy ra trượt
Để loại bỏ tiacutenh khocircng đồng nhất của trễ người ta thiết kế caacutec bộ đệm t(Jitter Buffer) tại nơi đến của caacutec goacutei tin caacutec goacutei tin đến với caacutec khoảng caacutech khaacutecnhau về thời gian được lưu tại bộ đệm rồi phaacutet khỏi bộ đệm với khoảng trễ n
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3572
Taacutec Giả Lecirc Quốc Toagraven
35
nhau Khi bộ đếm coacute kiacutech thước cagraveng lớn thigrave khả năng loại bỏ tiacutenh khocircng đồng nhấcagraveng lớn tuy nhiecircn việc sử dụng bộ đệm sẽ gacircy ra hiện tượng trễ trong ứng dụnthoại do đoacute cần coacute bagravei toaacuten cacircn đối giữa độ trễ vagrave độ trượt
Ngoagravei 2 nguyecircn nhacircn trecircn cograven một số nguyecircn nhacircn nữa ảnh hưởng đến chấtlượng thoại như độ mất goacutei giới hạn băng thocircng tiếng vọng
3 CAgraveI ĐẶT ASTERISK
1 Cagravei đặt Asterisk
1 Download vagrave bung neacuten
Để cagravei đặt Asterisk đầu tiecircn chuacuteng ta cần phải cagravei đặt hệ điều hagravenh linux trecircnmaacutey tiacutenh của migravenh Coacute thể cagravei hệ điều hagravenh Linux Fedora CentOS Redhat hoặcDebian Caacutec goacutei phần mềm phụ thuộc phải coacute trong hệ điều hagravenh Linux trước khcagravei Asterisk bao gồm
bison
gcc
kernel-source
libtermcap-devel
ncurses-devel
openssl096b
openssl-devel
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3672
Taacutec Giả Lecirc Quốc Toagraven
36
Sau khi hoagraven tất caacutec bước trecircn chuacuteng ta tiến hagravenh download phần mềmasterisk với phiecircn bản mới nhất
cd usrsrc
wgetftpftpdigiumcompubasteriskasterisk-140targz
wgetftpftpdigiumcompubasteriskasterisk-addons-140targz
wgetftpftpdigiumcompubasteriskasterisk-sounds-140targz
wgethttpftpdigiumcompubzaptelzaptel-140targz
wgethttpftpdigiumcompublibprilibpri-140targz
Việc download coacute thể nhanh hay chậm tugravey vagraveo tốc độ trecircn đường internet saukhi download hoagraven thagravenh chuacuteng ta tiến hagravenh bung neacuten caacutec goacutei ra thư mục chỉ định
tar ndashxzvf asterisk-140targz
tar ndashxzvf asterisk-addons-140targz
tar ndashxzvf asterisk-sounds-140targz
tar ndashxzvf zaptel-140targz
tar ndashxzvf libpri-140targz
Giải neacuten xong chuacuteng ta nhớ thực hiện lệnh
ln ndashs usrsrcasterisk-140 usrsrcasterisk lệnh nagravey để bảo đảm goacuteildquoaddonsrdquo được biecircn dịch đuacuteng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3772
Taacutec Giả Lecirc Quốc Toagraven
37
Bacircy giờ tới phần chuacuteng ta biecircn dịch caacutec goacutei đatilde giải neacuten ở trecircn trước tiecircn lagrave goacuteizaptel kế đến lagrave libpri sau cugraveng lagrave goacutei Asterisk
2 Cagravei đặt goacutei Zaptel
Goacutei zaptel sẽ chứa tại thư mục usrsrczaptel Đaacutenh lệnh như dưới đacircy để cagraveđặt
cd usrsrczaptel
make clean make install
Lệnh nagravey thực hiện khoảng 2 phuacutet tugravey vagraveo tốc độ maacutey tiacutenh cagravei đặt sau khicagravei đặt xong sẽ trở lại dấu nhắc lệnh vagrave hiển thị một loạt caacutec thocircng baacuteo trong đoacute một số bản tin lỗi magrave chủ yếu lagrave yecircu cầu cagravei đặt caacutec goacutei phụ thuộc đatilde liệt kecirc ở trecircnếu caacutec goacutei trecircn chưa được cagravei đặt
Goacutei zaptel nagravey chứa caacutec driver cho caacutec phần cứng kết giao tiếp với asterisk
do Digium phacircn phối vagrave một số thư viện cho việc coacute thực hiện giao tiếp với phầcứng hay khocircng
Để Asterisk coacute thể chạy cugraveng với khởi động của maacutey tiacutenh chuacuteng ta cần thựchiện lệnh
make config
Lệnh nagravey sẽ tạo ra script chegraven module zaptel vagraveo kernel vagrave chạy ztconfig vagraveoluacutec khởi động maacutey Trong Redhat script nagravey sẽ được cheacutep vagraveo etcinitd chạy ở mức 3
3 Cagravei đặt goacutei libpri
Kế đến chuacuteng ta biecircn dịch goacutei libpri tại thư mục usrsrclibpri bằng lệnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3972
Taacutec Giả Lecirc Quốc Toagraven
39
make config
3 Cagravei đặt TrixBox
1 Giới thiệu
TRIXBOX được phaacutet triển từ nhacircn của ứng dụng Asterisk được tổng hợp từmột số thagravenh phần chiacutenh được phaacutet triển bởi cộng đồng phaacutet triển nguồn mAsterisk dưới bản quyền GPL Trixbox bao gồm những thagravenh phần chiacutenh cho việcấu higravenh ứng dụng thống kecirc tigravenh trạng hoạt động hệ thống lưu trữ dự phograveng v
nhacircn lagrave hệ điều hagravenh CentOS một phiecircn bản khaacutec của Redhat tất cả kết hợp vớnhau tạo thagravenh một goacutei hoagraven chỉnh Khi cagravei goacutei nagravey vagraveo maacutey tiacutenh thigrave coacute thể sử dụngnhư một tổng đagravei PBX
Caacutec thagravenh phần chiacutenh trong goacutei TRIXBOX lagrave
Asterisk PBX Thagravenh phần chiacutenh của hệ thống Trixbox
CentOS Một phiecircn bản Linux khaacutec của Redhat hoagraven toagraven miển phiacute sửdụng Lagrave nhacircn chiacutenh cho Trixbox
SugarCRM Hệ thống quan hệ khaacutech hagraveng CRM
A2Billing ndash Lagrave thagravenh phần dagravenh cho việc xacircy dựng hệ thống điện thoạitrả trước hay cograven gọi lagrave điện thọai thẻ (Calling Card)
Flash Operator Panel Bảng điều khiển giaacutem saacutet tigravenh trạng hoạt độngcủa caacutec maacutey điện thoại trong hệ thống
Web MeetMe Control Quản lyacute triển khai hệ thống điện thoại hội nghị
FreePBX Đacircy lagrave cocircng cụ với giao diện web dagravenh cho việc cấu higravenh hệthống Asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4072
Taacutec Giả Lecirc Quốc Toagraven
40
Hệ thống Lưu trữ dự phograveng vagrave thống kecirc Lagrave thagravenh phần của TRIXBOXcung cấp caacutec cocircng cụ cần thiết cho việc bảo trigrave bảo dưỡng hệ thống
Hệ thống Apache-Php-Mysql dagravenh cho giải phaacutep Webserver của hệthống
2 DOWNLOAD VAgrave LẮP ĐẶT TRIXBOX
Địa chỉ downloadhttpsourceforgenetprojectsasteriskathome
Khi download xong file Trixboxiso Hatildey dugraveng file nagravey Burn vagraveo CD ( xinlưu yacute lagrave dugraveng Nero hoặc chương trigravenh cheacutep đĩa ưa thiacutech rồi burn vagraveo cd_romchứ khocircng phải cheacutep file đoacute vagraveo cd_rom)
Sau khi coacute CD Hatildey boot từ CD nagravey để cagravei đặt trixbox
Chuacute yacute dữ liệu trecircn đĩa cứng sẽ bị xoacutea sạch để cagravei đặt trixbox Nếu trongđĩa cứng cograven dữ liệu hatildey backup tất cả trước khi tiến hagravenh lắp đặt trixbox
Tới đacircy lần lượt caacutec magraven higravenh chỉ dẫn sẽ hiện ra vagrave cứ theo hướng dẫn magrave cagraveđặt Sau khi cagravei đặt xong chuacuteng ta dugraveng Username root vagrave password password đểđăng nhập hệ thống
3 Cấu higravenh địa chỉ IP cho card mạng
Thiết lập địa chỉ IP bằng caacutech gotilde lệnh
netconfig
Chọn OK để thiếp lập
Nếu trong mạng coacute hỗ trợ DHCP thigrave hatildey chọn mục nagravey cograven nếu khocircng hatildeynhập địa chỉ IP tĩnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4172
Taacutec Giả Lecirc Quốc Toagraven
41
IP 19216801
Netmask 2552552550
Gateway 19216893254 ngotilde ra becircn ngoagravei
Primary nameserver 19216893200 thiết lập nếu coacute
Chọn OK để chấp nhận caacutec thiết lập trecircn
Sau khi hoagraven tất hatildey lagravem cho thiết lập coacute hiệu lực bằng caacutech reset lại
maacutey tiacutenh hoặc dugraveng lệnh sau
Service network stop
Service network start
Đến đacircy xem như cagravei đặt hoagraven tất bacircy giờ để cấu higravenh được Asterisk chuacutengta vagraveo một magravey khaacutec vagrave mở Internet Explorer hoặc một trigravenh duyệt web bất kỳ
nhập vagraveohttp19216801đatilde cấu higravenh ở trecircn vagrave tiến hagravenh cấu higravenh hệ thốngvới tagravei khoảng username maint vagrave password password
4 Tổ Chức Thư Mục của Asterisk
Asterisk sử dụng nhiều thư mục trecircn hệ thống linux để quản lyacute caacutec khiacutea cạnkhaacutec nhau của hệ thống như nghi nhận bản tin thoại caacutec bản tin nhắc thoại hoặcaacutec tập tin cấu higravenh Phần nagravey sẽ trigravenh bagravey caacutec thư mục chiacutenh yếu được tạo ra tronquaacute trigravenh lắp đặt vagrave được cấu higravenh trong tập tin Asteriskconf
1 etcasterisk
Thư mục etcasterisk chứa tất cả caacutec tập tin cấu higravenh của hệ thốngAsterisk ngoại trừ tập tin Zaptelconf được đặt tại thư mục etc Phần cứnZaptel đầu tiecircn được phaacutet triển bởi Jim Dixon thuộc nhoacutem Zapata Telephony
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4272
Taacutec Giả Lecirc Quốc Toagraven
42
Group để giao tiếp giữa maacutey tiacutenh với mạng điện thoại magrave Asterisk lại sửdụng phần cứng nagravey với lyacute do đoacute magrave file cấu higravenh zaptelconf khocircng nằmtrong thư mục etcasterisk
2 usrlibasteriskmodules
Thư mục usrlibasteriskmodules chứa tất cả caacutec module cần thiết đểasterisk hoạt động Becircn trong thư mục lagrave caacutec ứng dụng khaacutec nhau caacutec codeccaacutec định dạng acircm thanh(format) vagrave caacutec kecircnh thocircng tin(channel) Theo mặc địnhAsterisk sẽ nạp tất cả caacutec module vagraveo luacutec khởi động Chuacuteng ta coacute thể khocircng cho
nạp một module bất kỳ bằng caacutech khocircng khai baacuteo sử dụng trong tập tinmodulesconf Lưu yacute khi khocircng cho nạp module thigrave phải biết chắc module đoacutekhocircng lagravem ảnh hưởng hoạt động của asterisk nếu khocircng lỗi sẽ xuất hiện
3 varlibasterisk
Thư mục varlibasterisk chứa tập tin astdb vagrave một số thư mục con Tập tinastdb định vị thocircng tin cơ sở dữ liệu của Asterisk giống như Microsoft WindowsRegistry
Caacutec thư mục con của thư mục varlibasterisk bao gồm
agi-bin
Thư mục agi-bin chứa caacutec script của người dugraveng magrave Asterisk coacute thểđịnh vị sử dụng qua caacutec ứng dụng AGI
AGI lagrave phần giao tiếp với ngocircn ngữ lập trigravenh script để thực hiện mộtsố cocircng việc của Asterisk từ becircn ngoagravei
firmware
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4372
Taacutec Giả Lecirc Quốc Toagraven
43
Thư mục firmware chứa một số phần dẻo(firmware) cho caacutec thiết bịkhaacutec nhau tương thiacutech với Asterisk Hiện tại chỉ coacute thư mục con iax chứa
firmware cho thiếy bị IAXy của Digium IAXy lagrave thiết bị ATA sử dụng giaothức IAX
images
Caacutec ứng dụng thocircng tin với caacutec kecircnh hỗ trợ ảnh images thigrave sử dụng thư mụcnagravey Nhưng hiện tại caacutec kecircnh thocircng tin hầu như khocircng hỗ trợ truyền ảnh images necircthư mục nagravey cũng hiếm khi được sử dụng Tuy nhiecircn nếu caacutec thiết bị coacute hỗ trợ ththư mục nagravey trở necircn hiệu dụng
keys
Asterisk coacute thể sử dụng hệ thống khoaacute publicprivate để xaacutec minh caacutec kết nốgiữa caacutec server Asterisk thocircng qua chữ kyacute điện tử RSA Nếu đặt một khoaacute publicvagraveo thư mục keys thigrave kết nối của server đầu becircn kia coacute thể được xaacutec minh bằn
kecircnh thocircng tin coacute hỗ trợ đối với Asterisk thigrave kecircnh giao thức IAX hỗ trợ loại xaacutecminh nagravey Một khoaacute private khocircng bao giờ cocircng bố chuacuteng ta chỉ cocircng bố khoaacute public đến với server cần nối đến sau đoacute sẽ được xaacutec minh với khoaacute private nagravey Chai khoaacute public vagrave private được lưu với đuocirci pub vagrave key đặt tại thư mục keys
mohmp3
Khi cấu higravenh Asterisk sử dụng tiacutenh năng Music on Hold tiacutenh năng hoạt độngsẽ thực hiện lấy caacutec tập tin mp3 tại thư mục mohmp3 Tập tin định dạng theo chucủa Asterisk necircn khi sử dụng caacutec file Mp3 thocircng thường cần coacute sự chuyển đổi thiacutechợp trước khi cheacutep vagraveo thư mục trecircn để sử dụng
sounds
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4472
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4572
Taacutec Giả Lecirc Quốc Toagraven
45
Thư mục tmp sử dụng để lưu trữ những thocircng tin tạm để luocircn bảo đảm khocircnxảy ra tigravenh trạng đọc vagrave viết tập tin cugraveng một luacutec Khi yecircu cầu xử lyacute tập tin chuacuteng thao taacutec trecircn thư mục tmp trước khi lưu vagraveo tập tin điacutech
Tất cả caacutec lời nhắc thoại từ phiacutea người sử dụng vagrave caacutec lời nhắc thoại sử dụ
cho thao taacutec hộp voicemail đều được chứa trong thư mục voicemail Một hộp thưthoại được tạo ra ứng với một maacutey nội bộ trong tập tin voicemailconf sẽ được tra một thư mục con tương ứng cho maacutey nội bộ đoacute tại thư mục voicemail
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4672
Taacutec Giả Lecirc Quốc Toagraven
46
5 varrun
Thư mục varrun chứa thocircng tin process ID(pid) cho tất cả caacutec tiến trigravenh đang
hoạt động trong hệ thống bao gồm cả Asterisk Lưu yacute lagrave ứng với mỗi hệ điều hagravethư mục varrun coacute thể khaacutec
6 varlogasterisk
Thư mục varlogasterisk lagrave nơi Asterisk chứa tất cả caacutec tập tin nhật kyacute haycograven gọi lagrave tập tin log Chuacuteng ta coacute thể tuỳ biến caacutec loại thocircng tin được lưu trong caacutec
tập tin log khaacutec nhau qua tập tin cấu higravenh loggerconf đặt tại thư mục etcasterisk7 varlogasteriskcdr-csv
Thư mục varlogasteriskcdr-csv được sử dụng để lưu chi tiết cuộc gọi CDRThocircng tin mặc định về chi tiết thocircng tin cuộc gọi lưu trữ trong tập tin MasterCVSnhưng thường thigrave ứng với mỗi matilde accountcode sẽ tạo một thư mục riecircng để lưu ctiết cuộc gọi cho maacutey đoacute
5 Một số lệnh thao taacutec trecircn hệ thống asterisk
Asterisk coacute hai thagravenh phần được xacircy dụng tiacutech hợp với nhau vagrave chạy songsong nhau
Asterisk Server bigravenh thường chạy ở chế độ nền(background) giống caacutec sevicestrong window
Asterisk Client ở chế độ dograveng lệnh CLI giao tiếp với Asterisk Server thực thicaacutec lệnh để kiểm tra hay xem caacutec thocircng tin của server
Để Chạy vagrave dừng Asterisk ở chế độ nền chuacuteng ta thực hiện lệnh sau
etcinitdasterisk (start|stop)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4772
Taacutec Giả Lecirc Quốc Toagraven
47
Một khi Asterisk đatilde chạy chuacuteng ta coacute thể chuyển qua chế độ CLI từ dấu nhắlệnh của linux như sau
asterisk ndashr
Khi vagraveo chế độ lệnh nếu muốn thoaacutet về lại dấu nhắc linux chuacuteng ta dugraveng lệnh
CLIgtexit
Caacutec lệnh cơ bản thực hiện tại CLIgt
Bất cứ khi nagraveo chỉnh sửa caacutec tập tin cấu higravenh chuacuteng ta đều cần phải nạp lại đcaacutec thay đổi coacute hiệu lực điều đoacute thực hiện bằng lệnh
CLIgtreload
Bậc chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 debug
CLIgt SIP debug
Tắt chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 no debug
CLIgt SIP no debug
Hiển thị caacutec trạng thaacutei thocircng tin của users peers vagravechannels của SIP hoặc IAX2
CLIgt sip show users
CLIgt sip show peers
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4872
Taacutec Giả Lecirc Quốc Toagraven
48
CLIgt sip show channels
CLIgt iax2 show peers
CLIgt iax2 show users
CLIgt iax2 show channels
Đến thời điểm nagravey coacute thể noacutei chuacuteng ta đatilde hoagraven thagravenh cagravei đặt hệ thốngAsterisk cagravei đặt xong mới lagrave bước mở đầu để cho hệ thống Asterisk hoạt động vtừng ứng dụng cụ thể chuacuteng sẽ tiếp tục thực hiện caacutec giai đoạn được xem lagrave qutrọng nhất trong việc triển khai hệ thống Asterisk đoacute lagrave giai đoạn cấu higravenh hệ thốnlecircn kế hoạch Diaplan chương cograven lại đều nhắm đến mục tiecircu nagravey
4 CẤU HIgraveNH HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Sau khi hoagraven tất phần cagravei đặt hệ thống asterisk một bước quan trọng tiếp thelagrave cấu higravenh hệ thống coacute thể noacutei đacircy lagrave bước quan trọng nhất của việc khiển khai thống đến với từng ứng dụng cụ thể Trong chương nagravey xin giới thiệu caacutei nhigraven đầtiecircn về việc cấu higravenh trước khi đi sacircu hơn ở những chương sau những gigrave giới thiệ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4972
Taacutec Giả Lecirc Quốc Toagraven
49
trong chương nagravey lagrave nền moacuteng cơ bản nhưng đủ để hiểu lagravem thế nagraveo hệ thống coacute thoạt động được nội dung chiacutenh bao gồm
+ Thao taacutec cấu higravenh trecircn hệ thống tập tin của asterisk
+ Caacutech cagravei đặt phần mềm softphone trecircn cocircng nghệ sip
+ Cấu higravenh cho hai maacutey softphone liecircn lạc với nhau
+ Cấu higravenh phaacutet thocircng điệp
+ Quay số qua Sip vagrave mạng PSTN
2 Tập Tin cấu higravenh
Tất cả caacutec file cấu higravenh cho hệ thống asterisk đều nằm tại thư mục etcasterisngoại trừ file zaptelconf cấu higravenh cho phần cứng TDM nằm tại thư mục etc caacutecthức cấu higravenh giống như tập tin ini của window vậy Caacutec nội dung sau dấu chấm phảy lagrave nội dung chuacute thiacutech trong file cấu higravenh giống như chuacute thiacutech trong ngocircn ngữ
lập trigravenh C lagrave dấu Tất cả caacutec khoảng trắng trong tập tin đều được bỏ qua khocircng yacute nghĩa trong file cấu higravenh
Trong file cấu higravenh cograven coacute hai pheacutep gaacuten rất thường xuyecircn được sử dụng pheacutep gaacuten ldquo=rdquo lagrave dugraveng cho việc gaacuten caacutec biến cograven pheacutep gaacuten ldquo=gtrdquo dugraveng cho việc gaacutencaacutec đối tượng sau đacircy lagrave một viacute dụ cho file cấu higravenh
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5072
Taacutec Giả Lecirc Quốc Toagraven
50
Đacircy lagrave caacutec dograveng chuacute thiacutech
[section]
Key=value gaacuten giaacute trị cho biến
[section2]
Key=gtobject Gaacuten giaacute trị cho đối tượng
Cuacute phaacutep thực hiện giống nhau cho tất cả caacutec file cấu higravenh nhưng coacute vagravei kiểukhaacutec nhau cho mỗi file cầu higravenh dựa vagraveo thức caacutech hoạt động của chuacuteng
3 Caacutec kiểu ảnh hưởng trong tập cấu higravenh
Coacute ba kiểu caacutech thức hoạt động của tập tin cấu higravenh như sau
Kiểu Caacutech hoạt động File cầu higravenh Viacute dụ
S i m p l eGroup
Coacute hiệu lực trecircntừng dograveng trongfile
Extensionconf
Exten=gt4001dial(sip400)
O p t i o ninheritance
Dograveng khai baacuteosau thừa kếnhững thocircng sốkhai baacuteo trước
Zapataconf [channels]
Context=From_PSTN
Signalling=fxs_ks
Group=1Channel=gt1
C o m p l e xEntity
Mỗi entity nhậnmột ngữ cảnh
sipconf
iaxconf
[cisco]
Type=friend
Secret=12345
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5172
Taacutec Giả Lecirc Quốc Toagraven
51
Host=192168165
Context=NoiBo
[xten]
Type=friend
Secret=6789
Host=dynamic
Context=NoiBo
1 Simple Group
Đacircy lagrave kiểu cấu higravenh đơn giản nhất thường sử dụng trong caacutec fileextentionconf meetmeconf voicemailconf tương ứng với mỗi dograveng khai baacuteo lagravemột đối tượng coacute yacute nghĩa trecircn dograveng đoacute
Viacute dụ
Extentionconf [section]
object1=gt op1op2op3
object2=gt op1bop2bop3b
Trong viacute dụ trecircn mỗi dograveng tương ứng với caacutec toaacuten tử khaacutec nhau object1 coacute caacutectoaacuten từ op1 op2 op3 trong khi đoacute object2 lại coacute caacutec toaacuten từ op1b op2b op3b
2 Option inheritance
Đacircy lagrave cấu higravenh kiểu thừa kế thường được cấu higravenh trong caacutec file zapataconfagentconf với kiểu cấu higravenh nagravey thigrave caacutec dograveng phiacutea dưới coacute thể thừa kế caacutec thocircng sdograveng phiacutea trecircn tương ứng với mỗi section caacutec dograveng phiacutea dưới coacute thể thay đổi caacutecthocircng số cho tươngứng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5272
Taacutec Giả Lecirc Quốc Toagraven
52
Viacute dụ
Extentionconf
[section]
Op1=bas
Op2=adv
Object1=gt1
Op1=int
Object1=gt2
Với cấu higravenh trecircn coacute thể giải thiacutech như sau object1=gt1 thừa hưởng hai thocircngsố ở phiacutea trecircn đoacute lagrave op1=bas vagrave op2=adv trong khi đoacute đối với object1=gt2 với thocircngsố op1=int được khai baacuteo lại necircn object1=gt2 được thừa kế từ hai thocircng số op1=invagrave op2=adv
3 Complex Entity
Với cấu kiểu nagravey được tổ chức thagravenh nhiều entity ứng với mỗi entity coacute nhiềthocircng số được khai baacuteo mỗi entity ở đacircy chiacutenh lagrave caacutec section để khai baacuteo caacutec kecircnhthocircng tin Cấu higravenh thường được sử dụng trong caacutec file iaxconf sipconf
Viacute dụ
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5372
Taacutec Giả Lecirc Quốc Toagraven
53
[entity1]
Op1=value1
Op2=value2
[entity2]
Op1=value3
Op2=value4
Entity1 coacute caacutec giaacute trị value1 vagrave value2 cho thocircng số op1 vagrave op2 trong khi đoacute
cũng lagrave thocircng số op1 vagrave op 2 nhưng coacute caacutec giaacute trị khaacutec lagrave value3 vagrave value4 choentity2
4 Cấu higravenh giao tiếp với mạng PSTN
1 Ngữ cảnh kết nối
Để kết nối với mạng PSTN chuacuteng ta cần phải coacute một card TDM với Cổng
FXO vagrave một đường dacircy điện thoại hoặc coacute thể lagrave một tổng đagravei nội bộ PBX Cnhiều nhagrave sản xuất phần cứng khaacutec nhau nhưng trong phần cấu higravenh dưới dacircy lagrave cấhigravenh cho card zapata TDM01B của digium (card nagravey hiện nay giaacute baacuten khoảng175$)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 872
Taacutec Giả Lecirc Quốc Toagraven
8
Sơ đồ Tổng quaacutet
Asterisk lagrave hệ thống chuyển mạch tiacutech hợp vừa lagrave cocircng nghệ truyền thốngTDM vừa lagrave chguyển mạch voip Higravenh trecircn cũng cho thấy khả năng giao tiếp của hthống Giao tiếp với điện thoại analog thocircng thường giao tiếp với thiết bị điện thovoip ngoagravei ra cograven coacute thể giao tiếp với mạng PSTN vagrave caacutec nhagrave cung cấp voip khaacutec
2 KIẾN TRUacuteC ASTERISK
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 972
Taacutec Giả Lecirc Quốc Toagraven
9
Về cơ bản kiến truacutec của Asterisk lagrave sự kết hộp giữa nền tảng cocircng nghệ đithoại vagrave ứng dụng điện thoại cocircng nghệ điện thoại cho VOIP như SIP H323 IAXMGCP caacutec cocircng nghệ điện thoại cho hệ thống chuyển mạch mạch TDM như TE1 ISDN vagrave caacutec giao tiếp đường truyền thoại Analog Caacutec ứng dụng thoại nhưchuyển mạch cuộc gọi tương taacutec thoại caller ID voicemail chuyển cuộc gọihellip
Asterisk coacute một số chức năng chiacutenh đoacuteng vai trograve quan trọng trong hệ thống
chuyển mạch cuộc gọi Khi khởi động hệ thống Asterisk thigrave chức năng DynamiModule Loader thực hiện nạp driver của thiết bị nạp caacutec kecircnh giao tiếp caacutecformat codec vagrave caacutec ứng dụng liecircn quan đồng thời caacutec hagravem API cũng được liecircn kếtnạp vagraveo hệ thống
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1072
Taacutec Giả Lecirc Quốc Toagraven
10
Sau đoacute hệ thống PBX Switching Core của Asterisk chuyển sang trạng thaacutei sẵnsagraveng hoạt động chuyển mạch cuộc gọi caacutec cuộc gọi được chuyển mạch tuỳ vagraveo
hoạch quay số (Dialplan) được thực hiện cấu higravenh trong file extensionconfChức năng Application Launchar để rung chuocircng thuecirc bao quay số định
hướng cuộc gọi kết nối với hộp thư thoạihellip
Scheduler and IO Manager đảm nhiệm caacutec ứng dụng nacircng cao caacutec chức năngđược phaacutet triển bởi cộng đồng phaacutet triển asterisk
Codec Translator xaacutec nhận caacutec kecircnh neacuten dữ liệu ứng với caacutec chuẩn khaacutec nhaucoacute thể kết hợp liecircn lạc được với nhau
Tất cả caacutec cuộc gọi định hướng qua hệ thống Asterisk đều thocircng qua caacutec giaotiếp như SIP Zaptel IAX Necircn hệ thống Asterisk phải đảm traacutech nhiệm vụ liecircn kếcaacutec giao tiếp khaacutec nhau đoacute để xử lyacute cuộc gọi
Hệ thống cũng bao gồm 4 chức năng API chiacutenh
Codec translator API caacutec hagravem đảm nhiệm thực thi vagrave giải neacuten caacutec chuẩn khaacutecnhau như G711 GMS G729hellip
Asterisk Channel API Giao tiếp với caacutec kecircnh liecircn lạc khaacutec nhau đacircy lagrave đầumối cho việc kết nối caacutec cuộc gọi tương thiacutech với nhiều chuần khaacutec nhau như SIIAX H323 Zaptelhellip
Asterisk file format API Asterisk tương thiacutech với việc xử lyacute caacutec loại file coacuteđịnh dạng khaacutec nhau như Mp3 wav gsmhellip
Asterisk Aplication API Bao gồm tất cả caacutec ứng dụng được thực thi trong hệthống Asterisk như voicemail callerIDhellip
wwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1172
Taacutec Giả Lecirc Quốc Toagraven
11
Ngoagravei ra Asterisk cograven coacute thư viện Asterisk Gateway Interface (AGI tương tựnhư CGI) - cơ chế kiacutech hoạt ứng dụng becircn ngoagravei cho pheacutep viết kịch bản phức tạp
với một số ngocircn ngữ như PHP hay Perl Noacutei chung khả năng viết caacutec ứng dụng tugravey biến rất lớn
3 MỘT SỐ TIacuteNH NĂNG CƠ BẢN
Asterisk coacute rất nhiều tiacutenh năng đatilde được giới thiệu ở trecircn nhưng để hiểu rotilde hếtất cả caacutec tiacutenh năng trecircn thật sự lagrave thaacutech thức đối với chuacuteng ta Trong phần nagraveychuacuteng tocirci sẽ giới thiệu một số tiacutenh năng với caacutec ứng dụng cụ thể để hiểu hơn về
thống asterisk
1 Voicemail (hộp thư thoại)
Đacircy lagrave tiacutenh năng cho pheacutep hệ thống nhận caacutec thocircng điệp tin nhắn thoại mỗmaacutey điện thoại được khai baacuteo trong hệ thống Asterisk cho pheacutep khai baacuteo thecircm chứnăng hộp thư thoại
Mỗi khi số điện thoại bận hay ngoagravei ldquovugraveng phủ soacutengrdquo thigrave hệ thống asteriskđịnh hướng trực tiếp caacutec cuộc gọi đến hộp thư thoại tương ứng đatilde khai baacuteo trước
Voicemail cung cấp cho người sử dụng nhiều tiacutenh năng lựa chọn như password xaacutec nhận khi truy cập vagraveo hộp thư thoại gửi mail baacuteo khi coacute thocircng điệmới
2 Call Forwarding(chuyển cuộc gọi)
Khi khocircng ở nhagrave hoặc đi cocircng taacutec magrave người sử dụng khocircng muốn bỏ lỡ tất ccaacutec cuộc gọi đến thigrave hatildey nghĩ ngay đến tiacutenh năng chuyển cuộc gọi
Đacircy lagrave tiacutenh năng thường được sử dụng trong hệ thống Asterisk Chức năng cho pheacutep chuyển một cuộc gọi đến một hay nhiều số maacutey điện thoại được định trước
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1272
Taacutec Giả Lecirc Quốc Toagraven
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ậnchuyển cuộc gọi khi khocircng trả lời chuyển cuộc gọi tức thời chuyển cuộc gọi v
thời gian định trước3 Caller ID (hiển thị số gọi)
Chức năng nagravey rất hữu dụng khi một ai đoacute gọi đến vagrave ta muốn biết chiacutenh xaacuteclagrave gọi từ đacircu vagrave trong một số trường hợp biết chắc họ lagrave ai
Ngoagravei ra Caller ID cograven lagrave chức năng cho pheacutep chuacuteng ta xaacutec nhận số thuecirc bao
gọi đến coacute nghĩa lagrave dựa vagraveo caller ID chuacuteng ta coacute tiếp nhận hay khocircng tiếp nhậncuộc gọi từ phiacutea hệ thống Asterisk Ngăn một số cuộc gọi ngoagravei yacute muốn
4 Automated attendant (chức năng IVR)
Chức năng tương taacutec thoại coacute rất nhiều ứng dụng trong thực tế khi gọi điệthoại đến một cơ quan hay xiacute nghiệp thuecirc bao thường nghe thocircng điệp nhưldquoXinchagraveo mừng bạn đatilde gọi đến cocircng ty chuacuteng Tocirci hatildey nhấn phiacutem 1 để gặp phograveng kinh
doanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquosau đoacute tuỳ vagraveo sự tương taacutec của thuecirc 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 thuecirc bao muố biết tỉ giaacute Đocircla hiện nay như thế nagraveo hay kết quả sổ số hellip tất caacutec những monmuốn trecircn đều coacute thể thực hiện qua chức năng tương taacutec thoại
5 Time and Date
Vagraveo từng thời gian cụ thể cuộc gọi sẽ định hướng đến một số điện thoại hmột chức năng cụ thể khaacutec viacute dụ trong cocircng ty giaacutem đốc muốn chỉ cho pheacutep nhacircnviecircn sử dụng maacutey điện thoại trong giờ hagravenh chaacutenh cograven ngoagravei giờ thigrave sẽ hạn chế hakhocircng cho pheacutep gọi ra becircn ngoagravei
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1372
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1472
Taacutec Giả Lecirc Quốc Toagraven
14
Asterisk thực hiện rất nhiều ngữ cảnh ứng dụng khaacutec nhau tuỳ vagraveo nhu cầu sdụng dưới dacircy lagrave những ngữ cảnh ứng dụng thường được sử dụng trong thực
triển khai hệ thống asterisk1 Tổng đagravei voip IP PBX
IP BPX
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1572
Taacutec Giả Lecirc Quốc Toagraven
15
Đacircy lagrave hệ thống chuyển mạch voip được xacircy dựng phục vụ caacutec cocircng ty coacute nhucầu thực hiện trecircn nền tảng mạng nội bộ đatilde triển khai Thay vigrave lắp đặt một hệ thố
PBX cho nhu cầu liecircn lạc nội bộ thigrave necircn lắp đặt hệ thống voip điều nagravey sẽ lagravem giảchi phiacute đaacuteng kể Hệ thống coacute thể liecircn 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 ở đacircy lagrave hiện tại Cocircng ty đatilde trang bị hệ thống PBX bacircygiờ cần trang bị thecircm để đaacutep ứng nhu cầu liecircn lạc trong cocircng ty sao cho với chi phthấp nhất giải phaacutep để thực hiện đoacute lagrave trang bị hệ thống asterisk vagrave kết nối với h
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1672
Taacutec Giả Lecirc Quốc Toagraven
16
thống PBX đang tồn tại qua luồng E1 Ngoagravei ra để tăng khả năng liecircn lạc với mạnPSTN vagrave VOIP khaacutec Cocircng Ty coacute thể thực hiện kết nối với nhagrave cung cấp dịch vụvoip
3 Kết nối giữa caacutec server Asterisk
Kết nối giữa caacutec server asterisk
Phương phaacutep trecircn ứng dụng rất hiệu quả cho caacutec cocircng ty nằm ratildei raacutec ở caacutec vtrị địa lyacute khaacutec nhau nhằm giảm chi phiacute đường dagravei Viacute dụ Cocircng ty Mẹ coacute trụ sở đặtại nước Mỹ vagrave caacutec Chi nhaacutenh đặt tại Việt Nam với caacutec địa điểm Thagravenh phố Hồ ChMinh vagrave Hagrave Nội Thocircng qua mạng WAN của Cocircng Ty caacutec cuộc gọi nội bộ giữa caacutec
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1772
Taacutec Giả Lecirc Quốc Toagraven
17
vị triacute khaacutec nhau sẽ lagravem giảm chi phiacute đaacuteng kể Ngữ cảnh nagravey về mặt phaacutep luật khocircncho cuộc gọi từ Mỹ vagraveo Việt Nam
4 Caacutec ứ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 caacutec server kết nối với hệ thống PSTN hay tổng đagravei PBXđể triển khai caacutec ứng dụng như tương taacutec thoại IVR Một viacute dụ cho ứng dụng tươtaacutec thoại đoacute lagrave cho biết kết quả sổ số hay kiểm tra cước cuộc gọi giống dịch v19001260 vậy Ứng dụng VoiceMail thu nhận những tin nhắn thoại từ phiacutea thuecirc bao giống như chức năng hộp thư thoại của Bưu Điện Thagravenh phố triển khai Cograve
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1872
Taacutec Giả Lecirc Quốc Toagraven
18
chức năng điện thoại hội nghị thiết lập cho nhiều maacutey điện thoại cugraveng noacutei chuyệvới nhau
5 Chức năng Phacircn phối cuộc gọi tự động ACD
Phacircn phối cuộc gọi với hagraveng đợi
ACD(Automatic Call Distribution) Phacircn phối cuộc gọi tự động
Đacircy lagrave chức năng ứng dụng cho nhu cầu chăm soacutec khaacutech hagraveng hay nhận phảnhổi từ phiacutea khaacutech hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1972
Taacutec Giả Lecirc Quốc Toagraven
19
Cocircng ty coacute khả năng tiếp nhận cugraveng một luacutec 10 cuộc gọi như thế cuộc gọi th11 gọi đến thigrave hệ thống giải quyết như thế nagraveo Bigravenh thường thigrave sẽ nghe tiacuten hiệ
bận nhưng với chức năng phacircn phối cuộc gọi sẽ đưa thuecirc bao đoacute vagraveo hagraveng đợi đchờ trả lời trong khi chờ trả lời cuộc gọi thuecirc bao coacute thể nghe những bagravei haacutet hay dasterisk cung cấp trong luacutec nagravey nếu 1 trong mười số điện thoại trở về trạng thaacutei rthigrave cuộc gọi đang chờ sẽ được trả lời Giống như chức năng của dịch vụ 1080 ha116 của Bưu Điện Thagravenh Phố vậy
2 CAacuteC KHAacuteI NIỆM TRONG HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Trong chương nagravey sẽ giải thiacutech rotilde caacutec khaacutei niệm cơ bản liecircn quan đến hệ thốnasterisk cung cấp những kiến thức nền tảng những khaacutei niệm cần thiết để thiếttriển khai xacircy dựng hệ thống điện thoại với Asterisk
2 PBX - Private Branch Exchange
PBX hay cograven gọi lagrave PABX - Private Automatic Branch Exchange lagrave hệ thốngtổng đagravei nội bộ được đặt tại nhagrave thuecirc bao từ Automatic ở đacircy muốn noacutei đến lagrave hthống tổng đagravei điện tử tự động nhưng hiện nay đa số lagrave tổng đagravei PBX điện tử tđộng necircn từ trecircn thực sự khocircng cograven cần thiết nữa
PBX với mục tiecircu chia sẻ nhiều thuecirc bao nội bộ gọi ra thế giới becircn ngoagraveithocircng qua một vagravei đường trung kế hay noacutei một caacutech khaacutec PBX lagrave hệ thống trungchuyển giữa caacutec đường dacircy điện thoại becircn ngoagravei từ cocircng ty điện thoại vagrave maacutey điệthoại nội bộ trong tổng đagravei PBX Vigrave thế necircn số lượng maacutey điện thoại nội bộ luocircnhiều hơn số đường dacircy nối đến PBX từ becircn ngoagravei
wwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2072
Taacutec Giả Lecirc Quốc Toagraven
20
PBX thực hiện chuyển mạch cuộc gọi caacutec maacutey điện thoại nội bộ với nhau vvới caacutec maacutey điện thoại becircn ngoagravei thocircng qua đường trung kế Đồng thời thực hiệ
chuyển mạch caacutec cuộc gọi điện thoại từ becircn ngoagravei vagraveo caacutec maacutey điện thoại nội bộNgoagravei việc chuyển mạch cuộc gọi PBX cung cấp nhiều tiacutenh năng sử dụng
cho nhiều mục điacutech khaacutec nhau của khaacutech hagraveng magrave bản thacircn caacutec đường dacircy điệnthoại từ cocircng ty điện thoại kết nối đến khocircng thể thực hiện được caacutec tiacutenh năng ntương taacutec thoại(IVR) Voicemail phacircn phối cuộc gọi tự động(ADC)hellip
Hiện nay với việc phaacutet triển mạnh mẽ của cocircng nghệ VoIP chuacuteng ta cograven coacutethecircm thuật ngữ IP PBX Đacircy lagrave hệ thống chuyển mạch PBX với cocircng nghệ Voip
3 VOIP - Voice Over Internet Protocol
Voice over Internet Protocol (VoIP) lagrave một cocircng nghệ cho pheacutep truyền thoạisử dụng giao thức mạng IP trecircn cơ sở hạ tầng sẵn coacute của mạng internet Voip lagrave mtrong những cocircng nghệ viễn thocircng đang được quan tacircm nhất hiện nay khocircng chỉ đố
với nhagrave khai thaacutec caacutec nhagrave sản xuất magrave cograven cả với người sử dụng dịch vụVoip coacute thể vừa thực hiện mọi loại cuộc gọi như trecircn mạng điện thoại kecircn
truyền thống (PSTN) đồng thời truyền dữ liệu trecircn cơ sở mạng truyền dữ liệu Dcaacutec ưu điểm về giaacute thagravenh dịch vụ vagrave sự tiacutech hợp nhiều loại higravenh dịch vụ necircn voihiện nay được triển khai một caacutec rộng ratildei
Dịch vụ điện thoại voip lagrave dịch vụ ứng dụng giao thức IP nguyecircn tắc củaVoIP bao gồm việc số hoaacute tiacuten hiệu tiếng noacutei thực hiện việc neacuten tiacuten hiệu số chia nhcaacutec goacutei nếu cần vagrave truyền goacutei tin nagravey qua mạng tới nơi nhận caacutec goacutei tin nagravey đượraacutep lại theo đuacuteng thứ tự của bản tin giải matilde tiacuten hiệu tương tự phục hồi lại tiếng n ban đầu
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2172
Taacutec Giả Lecirc Quốc Toagraven
21
Caacutec cuộc gọi trong VoIP dựa trecircn cơ sở sử dụng kết hợp cả chuyển mạchkecircnh vagrave chuyển mạch goacutei Trong mỗi loại chuyển mạch đều coacute ưu nhược điể
riecircng của noacute Trong kỹ thuật chuyển mạch kecircnh giagravenh riecircng cho một kecircnh truyềngiữa hai thiết bị đầu cuối thocircng qua caacutec node chuyển mạch trung gian Trongchuyển mạch kecircnh tốc độ truyền dẫn luocircn luocircn cố định(nghĩa lagrave băng thocircng khocircnđổi) với mạng điện thoại PSTN tốc độ nagravey lagrave 64kbps truyền dẫn trong chuyểmạch kecircnh coacute độ trễ nhỏ
Trong chuyển mạch goacutei caacutec bản tin được chia thagravenh caacutec goacutei nhỏ gọi lagrave caacutec
goacutei nguyecircn tắc hoạt động của noacute lagrave sử dụng hệ thống lưu trữ vagrave chuyển tiếp caacutec gtin trong nuacutet mạng Đối với chuyển mạch goacutei khocircng tồn tại khaacutei niệm kecircnh riecircng băng thocircng khocircng cố định coacute nghĩa lagrave coacute thể thay đổi tốc độ truyền kỹ thuật chuyểmạch goacutei phải chịu độ trễ lớn vigrave trong chuyển mạch goacutei khocircng quy định thời giancho mỗi goacutei dữ liệu tới điacutech mỗi goacutei coacute thể đi bằng nhiều con đường khaacutec nhau đtới điacutech chuyển mạch goacutei thiacutech hợp cho việc truyền dữ liệu vigrave trong mạng truyền dliệu khocircng đogravei hỏi về thời gian thực như thoại để sử dụng ưu điểm của mỗi lo
chuyển mạch trecircn thigrave trong voip kết hợp sử dụng cả hai loại chuyển mạch kecircnh vchuyển mạch goacutei
4 PSTN ndash Public Switched Telephone Network
PSTN lagrave mạng chuyển mạch điện thoại cocircng cộng hay noacutei caacutech khaacutec lagrave mạngkết nối tất cả caacutec hệ thống tổng đagravei chuyển mạch-mạch
Để hiểu rotilde hơn hatildey xem xeacutet mạng PSTN với mạng Internet về khiacutea cạnhchuyển thoại trecircn đoacute Chuyển mạch mạch muốn thực hiện cuộc gọi giữa hai thu bao thigrave hệ thống phải giagravenh riecircng một kecircnh truyền 64kbps để chuyển tải tiacuten hiệthoại trecircn đoacute Cograven cuộc gọi điện thoại trecircn mạng Internet thigrave tiacuten hiệu thoại đượđoacuteng goacutei vagrave chuyển đi trecircn cugraveng kecircnh truyền với nhiều dịch vụ khaacutec Vigrave lẽ đoacute chấlượng cuộc gọi trecircn mạng PSTN bao giờ cũng tốt hơn trecircn mạng Internet nhưng đổ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2272
Taacutec Giả Lecirc Quốc Toagraven
22
lại chi phiacute lại đắc hơn rất nhiều đặc biệt lagrave caacutec cuộc gọi quốc tế necircn phải cần nhắc kỹ khi sử dụng
PSTN được phaacutet triển trecircn chuẩn ITU(International TelecommunicationUnion) cograven mạng Internet được phaacutet triển trecircn chuẩn IETF(Internet EngineeringTask Force) cả hai mạng trecircn đều sử dụng địa chỉ để định tuyến cuộc gọi PSTN sdụng caacutec con số điện thoại để chuyển mạch cuộc gọi giữa caacutec tổng đagravei điện thotrong khi đoacute trecircn mạng Internet địa chỉ IP sẽ được sử dụng để định tuyến caacutec goacutethoại
5 TDM ndash Time Division Multiplexing
Lagrave kỹ thuật gheacutep kecircnh phacircn chia thời gian nhiều tiacuten hiệu coacute thể truyền đồngthời trecircn một đường truyền TDM được sử dụng chuyển thoại trong hệ thống mạPSTN Coacute hai chuẩn gheacutep kecircnh TDM cơ bản lagrave E1 với 30 kecircnh thoại trecircn mộtkhung tốc độ 2Mbps vagrave T1 với 24 kecircnh thoại tốc độ 15Mbps
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2372
Taacutec Giả Lecirc Quốc Toagraven
23
Higravenh Minh họa gheacutep kecircnh phacircn chia theo thời gian
6 Caacutec higravenh thức baacuteo hiệu giao tiếp TDM
1 FXO vagrave FXS
FXO (Foreign Exchange Office) lagrave thiết bị nhận tiacuten hiệu từ tổng đagravei gửi đếnnhư dograveng chuocircng tiacuten hiệu nhấc gaacutec maacutey tiacuten hiệu mời quay số gửi vagrave nhận tiacuten hiệthoạihellip FXO giống như maacutey Fax hay modem dial-up 56k vậy Dugraveng để kết nối vớ
đường dacircy điện thoại
FXS (Foreign Exchange Station) lagrave thiết bị tại nơi cung cấp đường dacircy điệnthoại thiết bị FXS sẽ cung cấp tiacuten hiệu mời quay số(dialtone) dograveng chuocircng hồi acircmchuocircng(ring tone) Trong đường dacircy Analog FXS cung cấp dograveng chuocircng vagrave điện aacutepcho điện thoại hoạt động viacute dụ FXS cung cấp điện aacutep -48VDC đến maacutey điện tho
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2472
Taacutec Giả Lecirc Quốc Toagraven
24
Analog trong suốt thời gian đagravem thoại vagrave cung cấp 90VAC(20hz) để phaacutet điện aacuteprung chuocircng Thiết bị FXS phaacutet cograven thiết bị FXO nhận
Card TDM sử dụng trong hệ thống asterisk thường tiacutech hợp vừa thiết bị FXOvừa lagrave thiết bị FXS(Giống bộ ATA) FXO để kết nối với đường dacircy điện thoại cograveFXS dugraveng để kết nối với maacutey điện thoại analog thocircng thường dugraveng để chuyển mạcuộc gọi TDM qua hệ thống asterisk(Xem thecircm trong phần cấu higravenh cho kecircnhTDM)
Toacutem lại cần nắm
FXS được kết nối với FXO giống với đường dacircy điện thoại nối với maacuteyđiện thoại
FXS cung cấp nguồn cho điện thoại FXO(điện thoại Analog)
Higravenh a) Maacutey điện thoại vai trograve FXO kết nối với FXS(PSTN) Higravenh b) PBXkết nối với FXO vagrave FXS Higravenh c) ATA đoacuteng vai trograve như FXS để kết nối với maacuteyđiện thoại vai trograve FXO
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2572
Taacutec Giả Lecirc Quốc Toagraven
25
2 Baacuteo hiệu Analog giữa đầu cuối vagrave tổng đagravei
Khi chuacuteng ta nhấc mấy điện thoại để gọi thigrave nghe tiacuten hiệu mời quay số kh
cuộc gọi gọi đầu becircn kia bị bận thigrave chuacuteng ta nghe tiacuten hiệu bận(busy tone) caacutec loạtiacuten hiệu như vậy gọi lagrave caacutec tiacuten hiệu baacuteo hiệu analog Caacutec tiacuten hiệu như Mời quay sốtiacuten hiệu bận rung chuocircng trạng thaacutei nhấc gaacutec maacutey Caacutec loại tiacuten hiệu trecircn được trađổi giữa thiết bị FXO vagrave FXS
Coacute nhiều phương thức baacuteo hiệu khaacutec nhau ứng với từng nơi sử dụng vigrave thếtại nơi kết nối với đường dacircy điện thoại cần xem xeacutet họ đang sử dụng phương th
baacuteo hiệu gigrave từ đoacute chuacuteng ta khai thaacutec loại tiacuten hiệu baacuteo hiệu cho thiacutech hợp caacutec phương thức baacuteo hiệu như Loop Start Ground Start Một minh họa cho việc sửdụng sai phương thức baacuteo hiệu lagrave khi chuacuteng ta khai baacuteo phương thức baacuteo hiệu giữhệ thống Asterisk vagrave đường dacircy điện thoại khaacutec nhau thigrave dẫn đến Asterisk sẽ khocircnnhận biết được tiacuten hiệu gaacutec maacutey điều nagravey sẽ lagravem cho asterisk khocircng baacuteo giờ giải tỏđược cuộc gọi để thực hiện cuộc gọi mới
3 Baacuteo hiệu giữa caacutec tổng đagravei
SS7 hệ thống baacuteo hiệu số 7 được phaacutet triển bởi ATampT vagrave ITU lagrave hệ thống baacuteo hiệu chuyển caacutec cuộc gọi giữa caacutec tổng đagravei trong mạng PSTN Trong hệ thốn baacuteo hiệu số 7 tiacuten hiệu chuyển tải trecircn đường trung kế kết nối giữa hai tổng đagravei gồcoacute hai mạch riecircng một cho thoại vagrave một cho baacuteo hiệu như vậy thoại vagrave baacuteo hiệu cthể chuyển trecircn hai kecircnh vật lyacute khaacutec nhau
7 Baacuteo Hiệu trecircn mạng điện thoại VoIP
1 SIP Session Initiation Prorocol
Sip lagrave giao thức Internet dagravenh cho baacuteo hiệu VoIP được phaacutet triển bởi IETFcung cấp vagravei chức năng giống hệ thống baacuteo hiệu số 7 nhưng dựa trecircn nền IP Mộchức năng giống baacuteo hiệu số 7 đoacute lagrave baacuteo hiệu vagrave thoại chuyển tải trecircn hai kecircnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2672
Taacutec Giả Lecirc Quốc Toagraven
26
riecircng Giao thức SIP thực hiện chức năng thiết lập vagrave baacuteo hiệu cuộc gọi khi noacutei đế baacuteo hiệu cuộc gọi lagrave chỉ định caacutec tiacuten hiệu baacuteo hiệu như tiacuten hiệu mời quay số tiacutehiệu bậnhellip
2 Proxy server
Mặc dầu hai thiết bị SIP coacute thể liecircn lạc trực tiếp với nhau để khởi tạo cuộgọi nhưng trong giao thức SIP cograven coacute chức năng Proxy để linh hoạt hơn trong thiếlập cuộc gọi Proxy Server sẽ lagravem nhiệm vụ ghi nhận tất cả caacutec số điện thoại đư phiacutea client đăng kyacute đến qua bản tin ldquoRegistrationrdquo Khi một client khaacutec thực hiện
cuộc gọi thigrave thực sự Client đoacute khocircng biết số điện thoại cần gọi đang ở đacircu necircn thocircnqua Proxy server để tigravem kiếm thiết lập cuộc gọi
+
Higravenh Đăng kyacute từ Client đến SIP Proxy Với Giao thức SIP đường baacuteo hiệu vagravethoại riecircng
3 RTP vaacute NAT
Caacutec cuộc gọi trecircn Internet với giao thức SIP được chia thagravenh caacutec goacutei thoại vagraveđược chuyển qua giao thức RTP(Real Time Protocol) RTP lagrave giao thức khocircng chỉthực hiện chuyển caacutec goacutei thoại qua Internet magrave cograven coacute cả video nữa Một cuộc gọ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2772
Taacutec Giả Lecirc Quốc Toagraven
27
thocircng thường coacute hai hướng thocircng tin lagrave nhận vagrave phaacutet RTP lagravem việc chuyển caacutec goacutedữ liệu thoại cũng trecircn hai hướng
NAT Network Address Translators lagrave một trở ngại lớn trong giao thức RTPMạng sử dụng NAT lagrave một mạng chia sẻ nhiều địa chỉ IP nội bộ với một địa chỉ ICocircng cộng để kết nối với thế giới becircn ngoagravei NAT dugraveng để chia sẻ nhiều maacutey tiacutentrong mạng LAN nội bộ sử dụng được Internet nhưng cũng chiacutenh vigrave thế magrave caacutec maacutetiacutenh nội bộ gặp khoacute khăn trong việc thực hiện cuộc gọi VoIP qua Internet Đoacute chiacutenhlagrave vấn để trở ngại khi truyền thoại qua giao thức RTP
Higravenh Minh họa hoạt động của NAT
Trong Giao thức RTP như chuacuteng ta đatilde biết đoacute lagrave thoại được chuyển trecircn haiđường khaacutec nhau lagrave đường phaacutet vagrave đường thu Vấn đề NAT nằm ở chỗ tiacuten hiệthoại từ becircn ngoagravei vagraveo becircn trong qua giao thức RTP khocircng thực hiện được cograven chiềungược lại thigrave thực hiện tốt Hay noacutei caacutech khaacutec vấn đề NAT lagravem cho caacutec cuộc gọi t
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2872
Taacutec Giả Lecirc Quốc Toagraven
28
Internet đagravem thoại vagraveo caacutec maacutey nội bộ qua NAT thigrave khocircng nghe được cograven trongtrường hợp caacutec cuộc gọi từ caacutec maacutey nội bộ ra caacutec maacutey internet thigrave nghe tốt
Vấn đề NAT trecircn được giải quyết trong Asterisk bằng việc khai baacuteo thocircng số NAT=yes trong cấu higravenh kecircnh giao thức SIP
4 IAX ndash Inter Asterisk eXchange
IAX lagrave giao thức baacuteo hiệu Voip được phaacutet triển bởi taacutec giả của phần mềmAsterisk để khắc phục những hạn chế trong giao thức SIP Khocircng giống như giathức SIP chuyển tải thoại vagrave baacuteo hiệu trecircn hai kecircnh khaacutec nhau (out of band) IAXchuyển tải thoại vagrave baacuteo hiệu trecircn cugraveng một kecircnh(in band) IAX giải quyết được vấđề NAT đề cập trecircn phần giao thức SIP Mặc khaacutec IAX lagrave giao thức tối ưu trongviệc sử dụng băng thocircng cho pheacutep nhiều goacutei dữ liệu thoại trecircn cugraveng một IP headecơ chế chuyển tải nhiều cuộc gọi trecircn cugraveng một goacutei IP được gọi lagrave trung kế(Trunk)
Coacute thể giải thiacutech thecircm cơ chế trung kế như sau Giả sử Tocirci cần gửi 5 bức thtới người bạn của Tocirci Tocirci sẽ coacute hai higravenh thức để thực hiện thứ nhất lagrave mỗi bức tTocirci bỏ vagraveo một phong bigrave vậy tổng cộng tocirci phải sử dụng 5 phong bigrave để gửi đi 5 bứthư Caacutech thứ hai lagrave Tocirci bỏ 5 bức thư vagraveo 1 phong bigrave vagrave gửi đi vậy tổng cộng Tocircchỉ tốn 1 phong bigrave Qua phacircn tiacutech trecircn rotilde ragraveng việc 5 bức thư vagraveo một phong bigrave sẽtiết kiệm hơn so với 5 bức thư với 5 phong biacute Cơ chế trecircn cũng giống như nhiềcuộc gọi được đoacuteng thagravenh goacutei vagrave chuyển đi trecircn đường trung kế
Toacutem lại IAX lagrave giao thức dagravenh cho VoIP mới nhất cho đến thời điểm nagravey vớinhiều ưu điểm hấp dẫn như
+ Tối thiểu sử dụng băng thocircng
+ Trong suốt với NAT
+ Hiệu quả với cơ chế trung kế
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2972
Taacutec Giả Lecirc Quốc Toagraven
29
8 Thiết Bị VoIP
1 Voip Phone
Đacircy lagrave thiết bị phần cứng kết nối với mạng VoIP giống như maacutey điện thoại đ bagraven thocircng thường nhưng dagravenh cho VoIP cần phải thực hiện cấu higravenh trước khi sửdụng
Lưu yacute một số tiacutenh năng khi thực hiện mua thiết bị điện thoại VoIP
+ Low bandwidth hỗ trợ Codec nagraveo G729 lagrave tốt nhất hiện nay
+ Web Interface Phải coacute giao tiếp thiết lập cấu higravenh thacircn thiện dễ sử dụng
+ Audio Interface Coacute speaker phone hay khocircng
Giaacute thagravenh của điện thoại voip IP đắc hơn điện thoại thocircng thường giaacute khoảntrecircn dưới 100$ một caacutei
Higravenh Maacutey Điện Thoại VoIP
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3072
Taacutec Giả Lecirc Quốc Toagraven
30
2 Softphone
Lagrave một phần mềm được cagravei trecircn maacutey tiacutenh thực hiện tất cả caacutec chức năng giốn
như thiết bị điện thoại Voip cần lưu yacute khi sử dụng softphone lagrave maacutey tiacutenh phải ccard acircm thanh headphone vagrave firewall khocircng bị khoacutea
Sử dụng softphone với hệ thống Asterisk necircn dugraveng softphone với cocircng nghệgiao thức mới dagravenh cho Asterisk đoacute lagrave IAX
Higravenh Điện Thoại Softphone
3 Card giao tiếp với PSTN
Muốn cho pheacutep caacutec maacutey điện thoại nội bộ trong hệ thống Asterisk kết nối vthực hiện cuộc gọi với mạng PSTN chuacuteng ta cần phải coacute thiết bị phần cứng tươthiacutech Thiết bị phần cứng sử dụng cho hệ thống Asterisk do chiacutenh taacutec giả lập cocircng
Digium phacircn phối đacircy cũng chiacutenh lagrave yacute tưởng lớn trong việc phacircn phối phần mềmAsterisk lagrave hệ thống nguồn mở sử dụng miễn phiacute
Thiết bị phần cứng thường kyacute hiệu bắt đầu bằng cụm từ TDMxyB trong đoacute lagrave số lượng port FXS y lagrave số lượng port FXO giaacute trị tối đa của x vagrave y lagrave 4 viacute dụcard TDM22B coacute nghĩa lagrave coacute 2 fort FXS vagrave 2 port FXO
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3172
Taacutec Giả Lecirc Quốc Toagraven
31
Higravenh Card TDM22B gồm 4 port 2 FXS vagrave 2 FXO
4 ATA Analog Telephone Adaptors
ATA lagrave thiết bị kết nối với điện thoại Analog thocircng thường đến mạng VoIPmột thiết bị ATA gồm coacute hai loại port RJ-11 để kết nối với maacutey điện thoại analo
thocircng thường cograven RJ-45 để kết nối với mạng VoIP
ATA thực sự lagrave thiết bị FXS chuyển đổi tiacuten hiệu Analog sang tiacuten hiệu số sửdụng cho mạng VoIP để tận dụng maacutey điện thoại Analog necircn trang bị thiết bị ATAthay vigrave phải trang bị điện thoại VoIP
Thiết bị ATA sử dụng với giao thức IAX được Digium phacircn phối lagrave thiết bịATA được sử dụng rộng ratildei với Asterisk coacute tecircn gọi lagrave IAXy
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3272
Taacutec Giả Lecirc Quốc Toagraven
32
Higravenh Thiết bị ATA
9 Codecs
Thuật Toaacuten codecs(CompressorDe-compressor) lagrave một tập caacutec quy luật đượcsử dụng để chuyển đổi caacutec tiacuten hiệu thoại dạng Analog sang tiacuten hiệu số vagrave ngược lạ
Coacute nhiều thuật toaacuten codec để thực hiện chuyển đổi tiacuten hiệu analog sang tiacuten
hiệu số dạng nhị phacircn (01) như G711 GSM G729hellipỨng với mỗi thuật toaacuten coacutenhững ưu điểm riecircng đặc biệt lagrave việc tối ưu sử dụng băng thocircng trecircn đường truyềMục tiecircu cuối cugraveng lagrave caacutec thuật toaacuten đưa ra phải đảm bảo chất lượng cuộc gọi nhvagrave tiết kiệm băng thocircng nhất
G729 lagrave thuật toaacuten codec tốt nhất hiện nay trong hệ thống VoIP Với hệthống Asterisk để sử dụng thuật toaacuten nagravey cần phải mua bản quyền sử dụng vigrave đacircy
codec khocircng miễn phiacute sử dụng
10 QoS ndash Quality of Service
Caacutec yếu tố ảnh hưởng đến chất lượng của dịch vụ đối với VoIP đoacute lagrave caacuteyếu ảnh hưởng đến chất lượng tiacuten hiệu thoại
1 Độ trễ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3372
Taacutec Giả Lecirc Quốc Toagraven
33
Thoại lagrave dịch vụ mang tiacutenh thời gian thực rất cao vigrave thế trễ lagrave yếu tố ảnhhưởng rất lớn đến chất lượng dịch vụ Trễ được định nghĩa lagrave khoảng thời gian tiacute
từ luacutec tiacuten hiệu thoại đi từ miệng người noacutei tới tai người nghe Trễ lagrave yếu tố khocircnthể traacutenh khỏi độ trễ đối với mạng điện thoại truyền thống (mạng PSTN) khoảng50ms đến 70ms theo khiến nghị của ITU-T để đảm bảo chất lượng cho hệ thốVoIP thigrave độ trễ từ đầu phaacutet tới đầu thu hoặc ngược lại khocircng được vượt quaacute 150mkhi magrave độ trễ vượt quaacute 400ms đến 500ms thigrave khocircng thể chấp nhận được
Caacutec nguyecircn nhacircn gacircy ra trễ bao gồm Trễ trecircn mạng lưới trễ trecircn bộ mả hoacutea
giải matilde trễ trong quaacute trigravenh đoacuteng goacutei trễ bộ đệm trễ xử lyacute tiếng noacuteihellip2 Độ trượt(Jitter)
Nguyecircn nhacircn gacircy ra trượt lagrave goacutei tiacuten hiệu thoại trong quaacute trigravenh truyền từnguồn đến điacutech sẽ gặp phải những điều kiện khaacutec nhau trecircn mạng lưới do đoacute thườđến điacutech với những khoảng trễ khaacutec nhau Đacircy lagrave tiacutenh khocircng đồng nhất của trễ Mnguyecircn nhacircn khaacutec của trượt đối với ứng dụng PC to PC lagrave do việc sử dụng hệ điề
hagravenh phi thời gian thực caacutec goacutei tin thoại phải đợi hệ điều hagravenh xử lyacute trong nhữnkhoảng thời gian khaacutec nhau khi magrave hệ điều hagravenh đang phải xử lyacute đối với caacutec ứndụng khaacutec
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3472
Taacutec Giả Lecirc Quốc Toagraven
34
Higravenh Nguyecircn nhacircn xảy ra trượt
Để loại bỏ tiacutenh khocircng đồng nhất của trễ người ta thiết kế caacutec bộ đệm t(Jitter Buffer) tại nơi đến của caacutec goacutei tin caacutec goacutei tin đến với caacutec khoảng caacutech khaacutecnhau về thời gian được lưu tại bộ đệm rồi phaacutet khỏi bộ đệm với khoảng trễ n
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3572
Taacutec Giả Lecirc Quốc Toagraven
35
nhau Khi bộ đếm coacute kiacutech thước cagraveng lớn thigrave khả năng loại bỏ tiacutenh khocircng đồng nhấcagraveng lớn tuy nhiecircn việc sử dụng bộ đệm sẽ gacircy ra hiện tượng trễ trong ứng dụnthoại do đoacute cần coacute bagravei toaacuten cacircn đối giữa độ trễ vagrave độ trượt
Ngoagravei 2 nguyecircn nhacircn trecircn cograven một số nguyecircn nhacircn nữa ảnh hưởng đến chấtlượng thoại như độ mất goacutei giới hạn băng thocircng tiếng vọng
3 CAgraveI ĐẶT ASTERISK
1 Cagravei đặt Asterisk
1 Download vagrave bung neacuten
Để cagravei đặt Asterisk đầu tiecircn chuacuteng ta cần phải cagravei đặt hệ điều hagravenh linux trecircnmaacutey tiacutenh của migravenh Coacute thể cagravei hệ điều hagravenh Linux Fedora CentOS Redhat hoặcDebian Caacutec goacutei phần mềm phụ thuộc phải coacute trong hệ điều hagravenh Linux trước khcagravei Asterisk bao gồm
bison
gcc
kernel-source
libtermcap-devel
ncurses-devel
openssl096b
openssl-devel
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3672
Taacutec Giả Lecirc Quốc Toagraven
36
Sau khi hoagraven tất caacutec bước trecircn chuacuteng ta tiến hagravenh download phần mềmasterisk với phiecircn bản mới nhất
cd usrsrc
wgetftpftpdigiumcompubasteriskasterisk-140targz
wgetftpftpdigiumcompubasteriskasterisk-addons-140targz
wgetftpftpdigiumcompubasteriskasterisk-sounds-140targz
wgethttpftpdigiumcompubzaptelzaptel-140targz
wgethttpftpdigiumcompublibprilibpri-140targz
Việc download coacute thể nhanh hay chậm tugravey vagraveo tốc độ trecircn đường internet saukhi download hoagraven thagravenh chuacuteng ta tiến hagravenh bung neacuten caacutec goacutei ra thư mục chỉ định
tar ndashxzvf asterisk-140targz
tar ndashxzvf asterisk-addons-140targz
tar ndashxzvf asterisk-sounds-140targz
tar ndashxzvf zaptel-140targz
tar ndashxzvf libpri-140targz
Giải neacuten xong chuacuteng ta nhớ thực hiện lệnh
ln ndashs usrsrcasterisk-140 usrsrcasterisk lệnh nagravey để bảo đảm goacuteildquoaddonsrdquo được biecircn dịch đuacuteng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3772
Taacutec Giả Lecirc Quốc Toagraven
37
Bacircy giờ tới phần chuacuteng ta biecircn dịch caacutec goacutei đatilde giải neacuten ở trecircn trước tiecircn lagrave goacuteizaptel kế đến lagrave libpri sau cugraveng lagrave goacutei Asterisk
2 Cagravei đặt goacutei Zaptel
Goacutei zaptel sẽ chứa tại thư mục usrsrczaptel Đaacutenh lệnh như dưới đacircy để cagraveđặt
cd usrsrczaptel
make clean make install
Lệnh nagravey thực hiện khoảng 2 phuacutet tugravey vagraveo tốc độ maacutey tiacutenh cagravei đặt sau khicagravei đặt xong sẽ trở lại dấu nhắc lệnh vagrave hiển thị một loạt caacutec thocircng baacuteo trong đoacute một số bản tin lỗi magrave chủ yếu lagrave yecircu cầu cagravei đặt caacutec goacutei phụ thuộc đatilde liệt kecirc ở trecircnếu caacutec goacutei trecircn chưa được cagravei đặt
Goacutei zaptel nagravey chứa caacutec driver cho caacutec phần cứng kết giao tiếp với asterisk
do Digium phacircn phối vagrave một số thư viện cho việc coacute thực hiện giao tiếp với phầcứng hay khocircng
Để Asterisk coacute thể chạy cugraveng với khởi động của maacutey tiacutenh chuacuteng ta cần thựchiện lệnh
make config
Lệnh nagravey sẽ tạo ra script chegraven module zaptel vagraveo kernel vagrave chạy ztconfig vagraveoluacutec khởi động maacutey Trong Redhat script nagravey sẽ được cheacutep vagraveo etcinitd chạy ở mức 3
3 Cagravei đặt goacutei libpri
Kế đến chuacuteng ta biecircn dịch goacutei libpri tại thư mục usrsrclibpri bằng lệnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3972
Taacutec Giả Lecirc Quốc Toagraven
39
make config
3 Cagravei đặt TrixBox
1 Giới thiệu
TRIXBOX được phaacutet triển từ nhacircn của ứng dụng Asterisk được tổng hợp từmột số thagravenh phần chiacutenh được phaacutet triển bởi cộng đồng phaacutet triển nguồn mAsterisk dưới bản quyền GPL Trixbox bao gồm những thagravenh phần chiacutenh cho việcấu higravenh ứng dụng thống kecirc tigravenh trạng hoạt động hệ thống lưu trữ dự phograveng v
nhacircn lagrave hệ điều hagravenh CentOS một phiecircn bản khaacutec của Redhat tất cả kết hợp vớnhau tạo thagravenh một goacutei hoagraven chỉnh Khi cagravei goacutei nagravey vagraveo maacutey tiacutenh thigrave coacute thể sử dụngnhư một tổng đagravei PBX
Caacutec thagravenh phần chiacutenh trong goacutei TRIXBOX lagrave
Asterisk PBX Thagravenh phần chiacutenh của hệ thống Trixbox
CentOS Một phiecircn bản Linux khaacutec của Redhat hoagraven toagraven miển phiacute sửdụng Lagrave nhacircn chiacutenh cho Trixbox
SugarCRM Hệ thống quan hệ khaacutech hagraveng CRM
A2Billing ndash Lagrave thagravenh phần dagravenh cho việc xacircy dựng hệ thống điện thoạitrả trước hay cograven gọi lagrave điện thọai thẻ (Calling Card)
Flash Operator Panel Bảng điều khiển giaacutem saacutet tigravenh trạng hoạt độngcủa caacutec maacutey điện thoại trong hệ thống
Web MeetMe Control Quản lyacute triển khai hệ thống điện thoại hội nghị
FreePBX Đacircy lagrave cocircng cụ với giao diện web dagravenh cho việc cấu higravenh hệthống Asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4072
Taacutec Giả Lecirc Quốc Toagraven
40
Hệ thống Lưu trữ dự phograveng vagrave thống kecirc Lagrave thagravenh phần của TRIXBOXcung cấp caacutec cocircng cụ cần thiết cho việc bảo trigrave bảo dưỡng hệ thống
Hệ thống Apache-Php-Mysql dagravenh cho giải phaacutep Webserver của hệthống
2 DOWNLOAD VAgrave LẮP ĐẶT TRIXBOX
Địa chỉ downloadhttpsourceforgenetprojectsasteriskathome
Khi download xong file Trixboxiso Hatildey dugraveng file nagravey Burn vagraveo CD ( xinlưu yacute lagrave dugraveng Nero hoặc chương trigravenh cheacutep đĩa ưa thiacutech rồi burn vagraveo cd_romchứ khocircng phải cheacutep file đoacute vagraveo cd_rom)
Sau khi coacute CD Hatildey boot từ CD nagravey để cagravei đặt trixbox
Chuacute yacute dữ liệu trecircn đĩa cứng sẽ bị xoacutea sạch để cagravei đặt trixbox Nếu trongđĩa cứng cograven dữ liệu hatildey backup tất cả trước khi tiến hagravenh lắp đặt trixbox
Tới đacircy lần lượt caacutec magraven higravenh chỉ dẫn sẽ hiện ra vagrave cứ theo hướng dẫn magrave cagraveđặt Sau khi cagravei đặt xong chuacuteng ta dugraveng Username root vagrave password password đểđăng nhập hệ thống
3 Cấu higravenh địa chỉ IP cho card mạng
Thiết lập địa chỉ IP bằng caacutech gotilde lệnh
netconfig
Chọn OK để thiếp lập
Nếu trong mạng coacute hỗ trợ DHCP thigrave hatildey chọn mục nagravey cograven nếu khocircng hatildeynhập địa chỉ IP tĩnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4172
Taacutec Giả Lecirc Quốc Toagraven
41
IP 19216801
Netmask 2552552550
Gateway 19216893254 ngotilde ra becircn ngoagravei
Primary nameserver 19216893200 thiết lập nếu coacute
Chọn OK để chấp nhận caacutec thiết lập trecircn
Sau khi hoagraven tất hatildey lagravem cho thiết lập coacute hiệu lực bằng caacutech reset lại
maacutey tiacutenh hoặc dugraveng lệnh sau
Service network stop
Service network start
Đến đacircy xem như cagravei đặt hoagraven tất bacircy giờ để cấu higravenh được Asterisk chuacutengta vagraveo một magravey khaacutec vagrave mở Internet Explorer hoặc một trigravenh duyệt web bất kỳ
nhập vagraveohttp19216801đatilde cấu higravenh ở trecircn vagrave tiến hagravenh cấu higravenh hệ thốngvới tagravei khoảng username maint vagrave password password
4 Tổ Chức Thư Mục của Asterisk
Asterisk sử dụng nhiều thư mục trecircn hệ thống linux để quản lyacute caacutec khiacutea cạnkhaacutec nhau của hệ thống như nghi nhận bản tin thoại caacutec bản tin nhắc thoại hoặcaacutec tập tin cấu higravenh Phần nagravey sẽ trigravenh bagravey caacutec thư mục chiacutenh yếu được tạo ra tronquaacute trigravenh lắp đặt vagrave được cấu higravenh trong tập tin Asteriskconf
1 etcasterisk
Thư mục etcasterisk chứa tất cả caacutec tập tin cấu higravenh của hệ thốngAsterisk ngoại trừ tập tin Zaptelconf được đặt tại thư mục etc Phần cứnZaptel đầu tiecircn được phaacutet triển bởi Jim Dixon thuộc nhoacutem Zapata Telephony
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4272
Taacutec Giả Lecirc Quốc Toagraven
42
Group để giao tiếp giữa maacutey tiacutenh với mạng điện thoại magrave Asterisk lại sửdụng phần cứng nagravey với lyacute do đoacute magrave file cấu higravenh zaptelconf khocircng nằmtrong thư mục etcasterisk
2 usrlibasteriskmodules
Thư mục usrlibasteriskmodules chứa tất cả caacutec module cần thiết đểasterisk hoạt động Becircn trong thư mục lagrave caacutec ứng dụng khaacutec nhau caacutec codeccaacutec định dạng acircm thanh(format) vagrave caacutec kecircnh thocircng tin(channel) Theo mặc địnhAsterisk sẽ nạp tất cả caacutec module vagraveo luacutec khởi động Chuacuteng ta coacute thể khocircng cho
nạp một module bất kỳ bằng caacutech khocircng khai baacuteo sử dụng trong tập tinmodulesconf Lưu yacute khi khocircng cho nạp module thigrave phải biết chắc module đoacutekhocircng lagravem ảnh hưởng hoạt động của asterisk nếu khocircng lỗi sẽ xuất hiện
3 varlibasterisk
Thư mục varlibasterisk chứa tập tin astdb vagrave một số thư mục con Tập tinastdb định vị thocircng tin cơ sở dữ liệu của Asterisk giống như Microsoft WindowsRegistry
Caacutec thư mục con của thư mục varlibasterisk bao gồm
agi-bin
Thư mục agi-bin chứa caacutec script của người dugraveng magrave Asterisk coacute thểđịnh vị sử dụng qua caacutec ứng dụng AGI
AGI lagrave phần giao tiếp với ngocircn ngữ lập trigravenh script để thực hiện mộtsố cocircng việc của Asterisk từ becircn ngoagravei
firmware
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4372
Taacutec Giả Lecirc Quốc Toagraven
43
Thư mục firmware chứa một số phần dẻo(firmware) cho caacutec thiết bịkhaacutec nhau tương thiacutech với Asterisk Hiện tại chỉ coacute thư mục con iax chứa
firmware cho thiếy bị IAXy của Digium IAXy lagrave thiết bị ATA sử dụng giaothức IAX
images
Caacutec ứng dụng thocircng tin với caacutec kecircnh hỗ trợ ảnh images thigrave sử dụng thư mụcnagravey Nhưng hiện tại caacutec kecircnh thocircng tin hầu như khocircng hỗ trợ truyền ảnh images necircthư mục nagravey cũng hiếm khi được sử dụng Tuy nhiecircn nếu caacutec thiết bị coacute hỗ trợ ththư mục nagravey trở necircn hiệu dụng
keys
Asterisk coacute thể sử dụng hệ thống khoaacute publicprivate để xaacutec minh caacutec kết nốgiữa caacutec server Asterisk thocircng qua chữ kyacute điện tử RSA Nếu đặt một khoaacute publicvagraveo thư mục keys thigrave kết nối của server đầu becircn kia coacute thể được xaacutec minh bằn
kecircnh thocircng tin coacute hỗ trợ đối với Asterisk thigrave kecircnh giao thức IAX hỗ trợ loại xaacutecminh nagravey Một khoaacute private khocircng bao giờ cocircng bố chuacuteng ta chỉ cocircng bố khoaacute public đến với server cần nối đến sau đoacute sẽ được xaacutec minh với khoaacute private nagravey Chai khoaacute public vagrave private được lưu với đuocirci pub vagrave key đặt tại thư mục keys
mohmp3
Khi cấu higravenh Asterisk sử dụng tiacutenh năng Music on Hold tiacutenh năng hoạt độngsẽ thực hiện lấy caacutec tập tin mp3 tại thư mục mohmp3 Tập tin định dạng theo chucủa Asterisk necircn khi sử dụng caacutec file Mp3 thocircng thường cần coacute sự chuyển đổi thiacutechợp trước khi cheacutep vagraveo thư mục trecircn để sử dụng
sounds
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4472
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4572
Taacutec Giả Lecirc Quốc Toagraven
45
Thư mục tmp sử dụng để lưu trữ những thocircng tin tạm để luocircn bảo đảm khocircnxảy ra tigravenh trạng đọc vagrave viết tập tin cugraveng một luacutec Khi yecircu cầu xử lyacute tập tin chuacuteng thao taacutec trecircn thư mục tmp trước khi lưu vagraveo tập tin điacutech
Tất cả caacutec lời nhắc thoại từ phiacutea người sử dụng vagrave caacutec lời nhắc thoại sử dụ
cho thao taacutec hộp voicemail đều được chứa trong thư mục voicemail Một hộp thưthoại được tạo ra ứng với một maacutey nội bộ trong tập tin voicemailconf sẽ được tra một thư mục con tương ứng cho maacutey nội bộ đoacute tại thư mục voicemail
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4672
Taacutec Giả Lecirc Quốc Toagraven
46
5 varrun
Thư mục varrun chứa thocircng tin process ID(pid) cho tất cả caacutec tiến trigravenh đang
hoạt động trong hệ thống bao gồm cả Asterisk Lưu yacute lagrave ứng với mỗi hệ điều hagravethư mục varrun coacute thể khaacutec
6 varlogasterisk
Thư mục varlogasterisk lagrave nơi Asterisk chứa tất cả caacutec tập tin nhật kyacute haycograven gọi lagrave tập tin log Chuacuteng ta coacute thể tuỳ biến caacutec loại thocircng tin được lưu trong caacutec
tập tin log khaacutec nhau qua tập tin cấu higravenh loggerconf đặt tại thư mục etcasterisk7 varlogasteriskcdr-csv
Thư mục varlogasteriskcdr-csv được sử dụng để lưu chi tiết cuộc gọi CDRThocircng tin mặc định về chi tiết thocircng tin cuộc gọi lưu trữ trong tập tin MasterCVSnhưng thường thigrave ứng với mỗi matilde accountcode sẽ tạo một thư mục riecircng để lưu ctiết cuộc gọi cho maacutey đoacute
5 Một số lệnh thao taacutec trecircn hệ thống asterisk
Asterisk coacute hai thagravenh phần được xacircy dụng tiacutech hợp với nhau vagrave chạy songsong nhau
Asterisk Server bigravenh thường chạy ở chế độ nền(background) giống caacutec sevicestrong window
Asterisk Client ở chế độ dograveng lệnh CLI giao tiếp với Asterisk Server thực thicaacutec lệnh để kiểm tra hay xem caacutec thocircng tin của server
Để Chạy vagrave dừng Asterisk ở chế độ nền chuacuteng ta thực hiện lệnh sau
etcinitdasterisk (start|stop)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4772
Taacutec Giả Lecirc Quốc Toagraven
47
Một khi Asterisk đatilde chạy chuacuteng ta coacute thể chuyển qua chế độ CLI từ dấu nhắlệnh của linux như sau
asterisk ndashr
Khi vagraveo chế độ lệnh nếu muốn thoaacutet về lại dấu nhắc linux chuacuteng ta dugraveng lệnh
CLIgtexit
Caacutec lệnh cơ bản thực hiện tại CLIgt
Bất cứ khi nagraveo chỉnh sửa caacutec tập tin cấu higravenh chuacuteng ta đều cần phải nạp lại đcaacutec thay đổi coacute hiệu lực điều đoacute thực hiện bằng lệnh
CLIgtreload
Bậc chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 debug
CLIgt SIP debug
Tắt chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 no debug
CLIgt SIP no debug
Hiển thị caacutec trạng thaacutei thocircng tin của users peers vagravechannels của SIP hoặc IAX2
CLIgt sip show users
CLIgt sip show peers
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4872
Taacutec Giả Lecirc Quốc Toagraven
48
CLIgt sip show channels
CLIgt iax2 show peers
CLIgt iax2 show users
CLIgt iax2 show channels
Đến thời điểm nagravey coacute thể noacutei chuacuteng ta đatilde hoagraven thagravenh cagravei đặt hệ thốngAsterisk cagravei đặt xong mới lagrave bước mở đầu để cho hệ thống Asterisk hoạt động vtừng ứng dụng cụ thể chuacuteng sẽ tiếp tục thực hiện caacutec giai đoạn được xem lagrave qutrọng nhất trong việc triển khai hệ thống Asterisk đoacute lagrave giai đoạn cấu higravenh hệ thốnlecircn kế hoạch Diaplan chương cograven lại đều nhắm đến mục tiecircu nagravey
4 CẤU HIgraveNH HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Sau khi hoagraven tất phần cagravei đặt hệ thống asterisk một bước quan trọng tiếp thelagrave cấu higravenh hệ thống coacute thể noacutei đacircy lagrave bước quan trọng nhất của việc khiển khai thống đến với từng ứng dụng cụ thể Trong chương nagravey xin giới thiệu caacutei nhigraven đầtiecircn về việc cấu higravenh trước khi đi sacircu hơn ở những chương sau những gigrave giới thiệ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4972
Taacutec Giả Lecirc Quốc Toagraven
49
trong chương nagravey lagrave nền moacuteng cơ bản nhưng đủ để hiểu lagravem thế nagraveo hệ thống coacute thoạt động được nội dung chiacutenh bao gồm
+ Thao taacutec cấu higravenh trecircn hệ thống tập tin của asterisk
+ Caacutech cagravei đặt phần mềm softphone trecircn cocircng nghệ sip
+ Cấu higravenh cho hai maacutey softphone liecircn lạc với nhau
+ Cấu higravenh phaacutet thocircng điệp
+ Quay số qua Sip vagrave mạng PSTN
2 Tập Tin cấu higravenh
Tất cả caacutec file cấu higravenh cho hệ thống asterisk đều nằm tại thư mục etcasterisngoại trừ file zaptelconf cấu higravenh cho phần cứng TDM nằm tại thư mục etc caacutecthức cấu higravenh giống như tập tin ini của window vậy Caacutec nội dung sau dấu chấm phảy lagrave nội dung chuacute thiacutech trong file cấu higravenh giống như chuacute thiacutech trong ngocircn ngữ
lập trigravenh C lagrave dấu Tất cả caacutec khoảng trắng trong tập tin đều được bỏ qua khocircng yacute nghĩa trong file cấu higravenh
Trong file cấu higravenh cograven coacute hai pheacutep gaacuten rất thường xuyecircn được sử dụng pheacutep gaacuten ldquo=rdquo lagrave dugraveng cho việc gaacuten caacutec biến cograven pheacutep gaacuten ldquo=gtrdquo dugraveng cho việc gaacutencaacutec đối tượng sau đacircy lagrave một viacute dụ cho file cấu higravenh
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5072
Taacutec Giả Lecirc Quốc Toagraven
50
Đacircy lagrave caacutec dograveng chuacute thiacutech
[section]
Key=value gaacuten giaacute trị cho biến
[section2]
Key=gtobject Gaacuten giaacute trị cho đối tượng
Cuacute phaacutep thực hiện giống nhau cho tất cả caacutec file cấu higravenh nhưng coacute vagravei kiểukhaacutec nhau cho mỗi file cầu higravenh dựa vagraveo thức caacutech hoạt động của chuacuteng
3 Caacutec kiểu ảnh hưởng trong tập cấu higravenh
Coacute ba kiểu caacutech thức hoạt động của tập tin cấu higravenh như sau
Kiểu Caacutech hoạt động File cầu higravenh Viacute dụ
S i m p l eGroup
Coacute hiệu lực trecircntừng dograveng trongfile
Extensionconf
Exten=gt4001dial(sip400)
O p t i o ninheritance
Dograveng khai baacuteosau thừa kếnhững thocircng sốkhai baacuteo trước
Zapataconf [channels]
Context=From_PSTN
Signalling=fxs_ks
Group=1Channel=gt1
C o m p l e xEntity
Mỗi entity nhậnmột ngữ cảnh
sipconf
iaxconf
[cisco]
Type=friend
Secret=12345
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5172
Taacutec Giả Lecirc Quốc Toagraven
51
Host=192168165
Context=NoiBo
[xten]
Type=friend
Secret=6789
Host=dynamic
Context=NoiBo
1 Simple Group
Đacircy lagrave kiểu cấu higravenh đơn giản nhất thường sử dụng trong caacutec fileextentionconf meetmeconf voicemailconf tương ứng với mỗi dograveng khai baacuteo lagravemột đối tượng coacute yacute nghĩa trecircn dograveng đoacute
Viacute dụ
Extentionconf [section]
object1=gt op1op2op3
object2=gt op1bop2bop3b
Trong viacute dụ trecircn mỗi dograveng tương ứng với caacutec toaacuten tử khaacutec nhau object1 coacute caacutectoaacuten từ op1 op2 op3 trong khi đoacute object2 lại coacute caacutec toaacuten từ op1b op2b op3b
2 Option inheritance
Đacircy lagrave cấu higravenh kiểu thừa kế thường được cấu higravenh trong caacutec file zapataconfagentconf với kiểu cấu higravenh nagravey thigrave caacutec dograveng phiacutea dưới coacute thể thừa kế caacutec thocircng sdograveng phiacutea trecircn tương ứng với mỗi section caacutec dograveng phiacutea dưới coacute thể thay đổi caacutecthocircng số cho tươngứng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5272
Taacutec Giả Lecirc Quốc Toagraven
52
Viacute dụ
Extentionconf
[section]
Op1=bas
Op2=adv
Object1=gt1
Op1=int
Object1=gt2
Với cấu higravenh trecircn coacute thể giải thiacutech như sau object1=gt1 thừa hưởng hai thocircngsố ở phiacutea trecircn đoacute lagrave op1=bas vagrave op2=adv trong khi đoacute đối với object1=gt2 với thocircngsố op1=int được khai baacuteo lại necircn object1=gt2 được thừa kế từ hai thocircng số op1=invagrave op2=adv
3 Complex Entity
Với cấu kiểu nagravey được tổ chức thagravenh nhiều entity ứng với mỗi entity coacute nhiềthocircng số được khai baacuteo mỗi entity ở đacircy chiacutenh lagrave caacutec section để khai baacuteo caacutec kecircnhthocircng tin Cấu higravenh thường được sử dụng trong caacutec file iaxconf sipconf
Viacute dụ
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5372
Taacutec Giả Lecirc Quốc Toagraven
53
[entity1]
Op1=value1
Op2=value2
[entity2]
Op1=value3
Op2=value4
Entity1 coacute caacutec giaacute trị value1 vagrave value2 cho thocircng số op1 vagrave op2 trong khi đoacute
cũng lagrave thocircng số op1 vagrave op 2 nhưng coacute caacutec giaacute trị khaacutec lagrave value3 vagrave value4 choentity2
4 Cấu higravenh giao tiếp với mạng PSTN
1 Ngữ cảnh kết nối
Để kết nối với mạng PSTN chuacuteng ta cần phải coacute một card TDM với Cổng
FXO vagrave một đường dacircy điện thoại hoặc coacute thể lagrave một tổng đagravei nội bộ PBX Cnhiều nhagrave sản xuất phần cứng khaacutec nhau nhưng trong phần cấu higravenh dưới dacircy lagrave cấhigravenh cho card zapata TDM01B của digium (card nagravey hiện nay giaacute baacuten khoảng175$)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 972
Taacutec Giả Lecirc Quốc Toagraven
9
Về cơ bản kiến truacutec của Asterisk lagrave sự kết hộp giữa nền tảng cocircng nghệ đithoại vagrave ứng dụng điện thoại cocircng nghệ điện thoại cho VOIP như SIP H323 IAXMGCP caacutec cocircng nghệ điện thoại cho hệ thống chuyển mạch mạch TDM như TE1 ISDN vagrave caacutec giao tiếp đường truyền thoại Analog Caacutec ứng dụng thoại nhưchuyển mạch cuộc gọi tương taacutec thoại caller ID voicemail chuyển cuộc gọihellip
Asterisk coacute một số chức năng chiacutenh đoacuteng vai trograve quan trọng trong hệ thống
chuyển mạch cuộc gọi Khi khởi động hệ thống Asterisk thigrave chức năng DynamiModule Loader thực hiện nạp driver của thiết bị nạp caacutec kecircnh giao tiếp caacutecformat codec vagrave caacutec ứng dụng liecircn quan đồng thời caacutec hagravem API cũng được liecircn kếtnạp vagraveo hệ thống
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1072
Taacutec Giả Lecirc Quốc Toagraven
10
Sau đoacute hệ thống PBX Switching Core của Asterisk chuyển sang trạng thaacutei sẵnsagraveng hoạt động chuyển mạch cuộc gọi caacutec cuộc gọi được chuyển mạch tuỳ vagraveo
hoạch quay số (Dialplan) được thực hiện cấu higravenh trong file extensionconfChức năng Application Launchar để rung chuocircng thuecirc bao quay số định
hướng cuộc gọi kết nối với hộp thư thoạihellip
Scheduler and IO Manager đảm nhiệm caacutec ứng dụng nacircng cao caacutec chức năngđược phaacutet triển bởi cộng đồng phaacutet triển asterisk
Codec Translator xaacutec nhận caacutec kecircnh neacuten dữ liệu ứng với caacutec chuẩn khaacutec nhaucoacute thể kết hợp liecircn lạc được với nhau
Tất cả caacutec cuộc gọi định hướng qua hệ thống Asterisk đều thocircng qua caacutec giaotiếp như SIP Zaptel IAX Necircn hệ thống Asterisk phải đảm traacutech nhiệm vụ liecircn kếcaacutec giao tiếp khaacutec nhau đoacute để xử lyacute cuộc gọi
Hệ thống cũng bao gồm 4 chức năng API chiacutenh
Codec translator API caacutec hagravem đảm nhiệm thực thi vagrave giải neacuten caacutec chuẩn khaacutecnhau như G711 GMS G729hellip
Asterisk Channel API Giao tiếp với caacutec kecircnh liecircn lạc khaacutec nhau đacircy lagrave đầumối cho việc kết nối caacutec cuộc gọi tương thiacutech với nhiều chuần khaacutec nhau như SIIAX H323 Zaptelhellip
Asterisk file format API Asterisk tương thiacutech với việc xử lyacute caacutec loại file coacuteđịnh dạng khaacutec nhau như Mp3 wav gsmhellip
Asterisk Aplication API Bao gồm tất cả caacutec ứng dụng được thực thi trong hệthống Asterisk như voicemail callerIDhellip
wwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1172
Taacutec Giả Lecirc Quốc Toagraven
11
Ngoagravei ra Asterisk cograven coacute thư viện Asterisk Gateway Interface (AGI tương tựnhư CGI) - cơ chế kiacutech hoạt ứng dụng becircn ngoagravei cho pheacutep viết kịch bản phức tạp
với một số ngocircn ngữ như PHP hay Perl Noacutei chung khả năng viết caacutec ứng dụng tugravey biến rất lớn
3 MỘT SỐ TIacuteNH NĂNG CƠ BẢN
Asterisk coacute rất nhiều tiacutenh năng đatilde được giới thiệu ở trecircn nhưng để hiểu rotilde hếtất cả caacutec tiacutenh năng trecircn thật sự lagrave thaacutech thức đối với chuacuteng ta Trong phần nagraveychuacuteng tocirci sẽ giới thiệu một số tiacutenh năng với caacutec ứng dụng cụ thể để hiểu hơn về
thống asterisk
1 Voicemail (hộp thư thoại)
Đacircy lagrave tiacutenh năng cho pheacutep hệ thống nhận caacutec thocircng điệp tin nhắn thoại mỗmaacutey điện thoại được khai baacuteo trong hệ thống Asterisk cho pheacutep khai baacuteo thecircm chứnăng hộp thư thoại
Mỗi khi số điện thoại bận hay ngoagravei ldquovugraveng phủ soacutengrdquo thigrave hệ thống asteriskđịnh hướng trực tiếp caacutec cuộc gọi đến hộp thư thoại tương ứng đatilde khai baacuteo trước
Voicemail cung cấp cho người sử dụng nhiều tiacutenh năng lựa chọn như password xaacutec nhận khi truy cập vagraveo hộp thư thoại gửi mail baacuteo khi coacute thocircng điệmới
2 Call Forwarding(chuyển cuộc gọi)
Khi khocircng ở nhagrave hoặc đi cocircng taacutec magrave người sử dụng khocircng muốn bỏ lỡ tất ccaacutec cuộc gọi đến thigrave hatildey nghĩ ngay đến tiacutenh năng chuyển cuộc gọi
Đacircy lagrave tiacutenh năng thường được sử dụng trong hệ thống Asterisk Chức năng cho pheacutep chuyển một cuộc gọi đến một hay nhiều số maacutey điện thoại được định trước
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1272
Taacutec Giả Lecirc Quốc Toagraven
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ậnchuyển cuộc gọi khi khocircng trả lời chuyển cuộc gọi tức thời chuyển cuộc gọi v
thời gian định trước3 Caller ID (hiển thị số gọi)
Chức năng nagravey rất hữu dụng khi một ai đoacute gọi đến vagrave ta muốn biết chiacutenh xaacuteclagrave gọi từ đacircu vagrave trong một số trường hợp biết chắc họ lagrave ai
Ngoagravei ra Caller ID cograven lagrave chức năng cho pheacutep chuacuteng ta xaacutec nhận số thuecirc bao
gọi đến coacute nghĩa lagrave dựa vagraveo caller ID chuacuteng ta coacute tiếp nhận hay khocircng tiếp nhậncuộc gọi từ phiacutea hệ thống Asterisk Ngăn một số cuộc gọi ngoagravei yacute muốn
4 Automated attendant (chức năng IVR)
Chức năng tương taacutec thoại coacute rất nhiều ứng dụng trong thực tế khi gọi điệthoại đến một cơ quan hay xiacute nghiệp thuecirc bao thường nghe thocircng điệp nhưldquoXinchagraveo mừng bạn đatilde gọi đến cocircng ty chuacuteng Tocirci hatildey nhấn phiacutem 1 để gặp phograveng kinh
doanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquosau đoacute tuỳ vagraveo sự tương taacutec của thuecirc 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 thuecirc bao muố biết tỉ giaacute Đocircla hiện nay như thế nagraveo hay kết quả sổ số hellip tất caacutec những monmuốn trecircn đều coacute thể thực hiện qua chức năng tương taacutec thoại
5 Time and Date
Vagraveo từng thời gian cụ thể cuộc gọi sẽ định hướng đến một số điện thoại hmột chức năng cụ thể khaacutec viacute dụ trong cocircng ty giaacutem đốc muốn chỉ cho pheacutep nhacircnviecircn sử dụng maacutey điện thoại trong giờ hagravenh chaacutenh cograven ngoagravei giờ thigrave sẽ hạn chế hakhocircng cho pheacutep gọi ra becircn ngoagravei
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1372
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1472
Taacutec Giả Lecirc Quốc Toagraven
14
Asterisk thực hiện rất nhiều ngữ cảnh ứng dụng khaacutec nhau tuỳ vagraveo nhu cầu sdụng dưới dacircy lagrave những ngữ cảnh ứng dụng thường được sử dụng trong thực
triển khai hệ thống asterisk1 Tổng đagravei voip IP PBX
IP BPX
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1572
Taacutec Giả Lecirc Quốc Toagraven
15
Đacircy lagrave hệ thống chuyển mạch voip được xacircy dựng phục vụ caacutec cocircng ty coacute nhucầu thực hiện trecircn nền tảng mạng nội bộ đatilde triển khai Thay vigrave lắp đặt một hệ thố
PBX cho nhu cầu liecircn lạc nội bộ thigrave necircn lắp đặt hệ thống voip điều nagravey sẽ lagravem giảchi phiacute đaacuteng kể Hệ thống coacute thể liecircn 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 ở đacircy lagrave hiện tại Cocircng ty đatilde trang bị hệ thống PBX bacircygiờ cần trang bị thecircm để đaacutep ứng nhu cầu liecircn lạc trong cocircng ty sao cho với chi phthấp nhất giải phaacutep để thực hiện đoacute lagrave trang bị hệ thống asterisk vagrave kết nối với h
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1672
Taacutec Giả Lecirc Quốc Toagraven
16
thống PBX đang tồn tại qua luồng E1 Ngoagravei ra để tăng khả năng liecircn lạc với mạnPSTN vagrave VOIP khaacutec Cocircng Ty coacute thể thực hiện kết nối với nhagrave cung cấp dịch vụvoip
3 Kết nối giữa caacutec server Asterisk
Kết nối giữa caacutec server asterisk
Phương phaacutep trecircn ứng dụng rất hiệu quả cho caacutec cocircng ty nằm ratildei raacutec ở caacutec vtrị địa lyacute khaacutec nhau nhằm giảm chi phiacute đường dagravei Viacute dụ Cocircng ty Mẹ coacute trụ sở đặtại nước Mỹ vagrave caacutec Chi nhaacutenh đặt tại Việt Nam với caacutec địa điểm Thagravenh phố Hồ ChMinh vagrave Hagrave Nội Thocircng qua mạng WAN của Cocircng Ty caacutec cuộc gọi nội bộ giữa caacutec
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1772
Taacutec Giả Lecirc Quốc Toagraven
17
vị triacute khaacutec nhau sẽ lagravem giảm chi phiacute đaacuteng kể Ngữ cảnh nagravey về mặt phaacutep luật khocircncho cuộc gọi từ Mỹ vagraveo Việt Nam
4 Caacutec ứ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 caacutec server kết nối với hệ thống PSTN hay tổng đagravei PBXđể triển khai caacutec ứng dụng như tương taacutec thoại IVR Một viacute dụ cho ứng dụng tươtaacutec thoại đoacute lagrave cho biết kết quả sổ số hay kiểm tra cước cuộc gọi giống dịch v19001260 vậy Ứng dụng VoiceMail thu nhận những tin nhắn thoại từ phiacutea thuecirc bao giống như chức năng hộp thư thoại của Bưu Điện Thagravenh phố triển khai Cograve
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1872
Taacutec Giả Lecirc Quốc Toagraven
18
chức năng điện thoại hội nghị thiết lập cho nhiều maacutey điện thoại cugraveng noacutei chuyệvới nhau
5 Chức năng Phacircn phối cuộc gọi tự động ACD
Phacircn phối cuộc gọi với hagraveng đợi
ACD(Automatic Call Distribution) Phacircn phối cuộc gọi tự động
Đacircy lagrave chức năng ứng dụng cho nhu cầu chăm soacutec khaacutech hagraveng hay nhận phảnhổi từ phiacutea khaacutech hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1972
Taacutec Giả Lecirc Quốc Toagraven
19
Cocircng ty coacute khả năng tiếp nhận cugraveng một luacutec 10 cuộc gọi như thế cuộc gọi th11 gọi đến thigrave hệ thống giải quyết như thế nagraveo Bigravenh thường thigrave sẽ nghe tiacuten hiệ
bận nhưng với chức năng phacircn phối cuộc gọi sẽ đưa thuecirc bao đoacute vagraveo hagraveng đợi đchờ trả lời trong khi chờ trả lời cuộc gọi thuecirc bao coacute thể nghe những bagravei haacutet hay dasterisk cung cấp trong luacutec nagravey nếu 1 trong mười số điện thoại trở về trạng thaacutei rthigrave cuộc gọi đang chờ sẽ được trả lời Giống như chức năng của dịch vụ 1080 ha116 của Bưu Điện Thagravenh Phố vậy
2 CAacuteC KHAacuteI NIỆM TRONG HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Trong chương nagravey sẽ giải thiacutech rotilde caacutec khaacutei niệm cơ bản liecircn quan đến hệ thốnasterisk cung cấp những kiến thức nền tảng những khaacutei niệm cần thiết để thiếttriển khai xacircy dựng hệ thống điện thoại với Asterisk
2 PBX - Private Branch Exchange
PBX hay cograven gọi lagrave PABX - Private Automatic Branch Exchange lagrave hệ thốngtổng đagravei nội bộ được đặt tại nhagrave thuecirc bao từ Automatic ở đacircy muốn noacutei đến lagrave hthống tổng đagravei điện tử tự động nhưng hiện nay đa số lagrave tổng đagravei PBX điện tử tđộng necircn từ trecircn thực sự khocircng cograven cần thiết nữa
PBX với mục tiecircu chia sẻ nhiều thuecirc bao nội bộ gọi ra thế giới becircn ngoagraveithocircng qua một vagravei đường trung kế hay noacutei một caacutech khaacutec PBX lagrave hệ thống trungchuyển giữa caacutec đường dacircy điện thoại becircn ngoagravei từ cocircng ty điện thoại vagrave maacutey điệthoại nội bộ trong tổng đagravei PBX Vigrave thế necircn số lượng maacutey điện thoại nội bộ luocircnhiều hơn số đường dacircy nối đến PBX từ becircn ngoagravei
wwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2072
Taacutec Giả Lecirc Quốc Toagraven
20
PBX thực hiện chuyển mạch cuộc gọi caacutec maacutey điện thoại nội bộ với nhau vvới caacutec maacutey điện thoại becircn ngoagravei thocircng qua đường trung kế Đồng thời thực hiệ
chuyển mạch caacutec cuộc gọi điện thoại từ becircn ngoagravei vagraveo caacutec maacutey điện thoại nội bộNgoagravei việc chuyển mạch cuộc gọi PBX cung cấp nhiều tiacutenh năng sử dụng
cho nhiều mục điacutech khaacutec nhau của khaacutech hagraveng magrave bản thacircn caacutec đường dacircy điệnthoại từ cocircng ty điện thoại kết nối đến khocircng thể thực hiện được caacutec tiacutenh năng ntương taacutec thoại(IVR) Voicemail phacircn phối cuộc gọi tự động(ADC)hellip
Hiện nay với việc phaacutet triển mạnh mẽ của cocircng nghệ VoIP chuacuteng ta cograven coacutethecircm thuật ngữ IP PBX Đacircy lagrave hệ thống chuyển mạch PBX với cocircng nghệ Voip
3 VOIP - Voice Over Internet Protocol
Voice over Internet Protocol (VoIP) lagrave một cocircng nghệ cho pheacutep truyền thoạisử dụng giao thức mạng IP trecircn cơ sở hạ tầng sẵn coacute của mạng internet Voip lagrave mtrong những cocircng nghệ viễn thocircng đang được quan tacircm nhất hiện nay khocircng chỉ đố
với nhagrave khai thaacutec caacutec nhagrave sản xuất magrave cograven cả với người sử dụng dịch vụVoip coacute thể vừa thực hiện mọi loại cuộc gọi như trecircn mạng điện thoại kecircn
truyền thống (PSTN) đồng thời truyền dữ liệu trecircn cơ sở mạng truyền dữ liệu Dcaacutec ưu điểm về giaacute thagravenh dịch vụ vagrave sự tiacutech hợp nhiều loại higravenh dịch vụ necircn voihiện nay được triển khai một caacutec rộng ratildei
Dịch vụ điện thoại voip lagrave dịch vụ ứng dụng giao thức IP nguyecircn tắc củaVoIP bao gồm việc số hoaacute tiacuten hiệu tiếng noacutei thực hiện việc neacuten tiacuten hiệu số chia nhcaacutec goacutei nếu cần vagrave truyền goacutei tin nagravey qua mạng tới nơi nhận caacutec goacutei tin nagravey đượraacutep lại theo đuacuteng thứ tự của bản tin giải matilde tiacuten hiệu tương tự phục hồi lại tiếng n ban đầu
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2172
Taacutec Giả Lecirc Quốc Toagraven
21
Caacutec cuộc gọi trong VoIP dựa trecircn cơ sở sử dụng kết hợp cả chuyển mạchkecircnh vagrave chuyển mạch goacutei Trong mỗi loại chuyển mạch đều coacute ưu nhược điể
riecircng của noacute Trong kỹ thuật chuyển mạch kecircnh giagravenh riecircng cho một kecircnh truyềngiữa hai thiết bị đầu cuối thocircng qua caacutec node chuyển mạch trung gian Trongchuyển mạch kecircnh tốc độ truyền dẫn luocircn luocircn cố định(nghĩa lagrave băng thocircng khocircnđổi) với mạng điện thoại PSTN tốc độ nagravey lagrave 64kbps truyền dẫn trong chuyểmạch kecircnh coacute độ trễ nhỏ
Trong chuyển mạch goacutei caacutec bản tin được chia thagravenh caacutec goacutei nhỏ gọi lagrave caacutec
goacutei nguyecircn tắc hoạt động của noacute lagrave sử dụng hệ thống lưu trữ vagrave chuyển tiếp caacutec gtin trong nuacutet mạng Đối với chuyển mạch goacutei khocircng tồn tại khaacutei niệm kecircnh riecircng băng thocircng khocircng cố định coacute nghĩa lagrave coacute thể thay đổi tốc độ truyền kỹ thuật chuyểmạch goacutei phải chịu độ trễ lớn vigrave trong chuyển mạch goacutei khocircng quy định thời giancho mỗi goacutei dữ liệu tới điacutech mỗi goacutei coacute thể đi bằng nhiều con đường khaacutec nhau đtới điacutech chuyển mạch goacutei thiacutech hợp cho việc truyền dữ liệu vigrave trong mạng truyền dliệu khocircng đogravei hỏi về thời gian thực như thoại để sử dụng ưu điểm của mỗi lo
chuyển mạch trecircn thigrave trong voip kết hợp sử dụng cả hai loại chuyển mạch kecircnh vchuyển mạch goacutei
4 PSTN ndash Public Switched Telephone Network
PSTN lagrave mạng chuyển mạch điện thoại cocircng cộng hay noacutei caacutech khaacutec lagrave mạngkết nối tất cả caacutec hệ thống tổng đagravei chuyển mạch-mạch
Để hiểu rotilde hơn hatildey xem xeacutet mạng PSTN với mạng Internet về khiacutea cạnhchuyển thoại trecircn đoacute Chuyển mạch mạch muốn thực hiện cuộc gọi giữa hai thu bao thigrave hệ thống phải giagravenh riecircng một kecircnh truyền 64kbps để chuyển tải tiacuten hiệthoại trecircn đoacute Cograven cuộc gọi điện thoại trecircn mạng Internet thigrave tiacuten hiệu thoại đượđoacuteng goacutei vagrave chuyển đi trecircn cugraveng kecircnh truyền với nhiều dịch vụ khaacutec Vigrave lẽ đoacute chấlượng cuộc gọi trecircn mạng PSTN bao giờ cũng tốt hơn trecircn mạng Internet nhưng đổ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2272
Taacutec Giả Lecirc Quốc Toagraven
22
lại chi phiacute lại đắc hơn rất nhiều đặc biệt lagrave caacutec cuộc gọi quốc tế necircn phải cần nhắc kỹ khi sử dụng
PSTN được phaacutet triển trecircn chuẩn ITU(International TelecommunicationUnion) cograven mạng Internet được phaacutet triển trecircn chuẩn IETF(Internet EngineeringTask Force) cả hai mạng trecircn đều sử dụng địa chỉ để định tuyến cuộc gọi PSTN sdụng caacutec con số điện thoại để chuyển mạch cuộc gọi giữa caacutec tổng đagravei điện thotrong khi đoacute trecircn mạng Internet địa chỉ IP sẽ được sử dụng để định tuyến caacutec goacutethoại
5 TDM ndash Time Division Multiplexing
Lagrave kỹ thuật gheacutep kecircnh phacircn chia thời gian nhiều tiacuten hiệu coacute thể truyền đồngthời trecircn một đường truyền TDM được sử dụng chuyển thoại trong hệ thống mạPSTN Coacute hai chuẩn gheacutep kecircnh TDM cơ bản lagrave E1 với 30 kecircnh thoại trecircn mộtkhung tốc độ 2Mbps vagrave T1 với 24 kecircnh thoại tốc độ 15Mbps
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2372
Taacutec Giả Lecirc Quốc Toagraven
23
Higravenh Minh họa gheacutep kecircnh phacircn chia theo thời gian
6 Caacutec higravenh thức baacuteo hiệu giao tiếp TDM
1 FXO vagrave FXS
FXO (Foreign Exchange Office) lagrave thiết bị nhận tiacuten hiệu từ tổng đagravei gửi đếnnhư dograveng chuocircng tiacuten hiệu nhấc gaacutec maacutey tiacuten hiệu mời quay số gửi vagrave nhận tiacuten hiệthoạihellip FXO giống như maacutey Fax hay modem dial-up 56k vậy Dugraveng để kết nối vớ
đường dacircy điện thoại
FXS (Foreign Exchange Station) lagrave thiết bị tại nơi cung cấp đường dacircy điệnthoại thiết bị FXS sẽ cung cấp tiacuten hiệu mời quay số(dialtone) dograveng chuocircng hồi acircmchuocircng(ring tone) Trong đường dacircy Analog FXS cung cấp dograveng chuocircng vagrave điện aacutepcho điện thoại hoạt động viacute dụ FXS cung cấp điện aacutep -48VDC đến maacutey điện tho
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2472
Taacutec Giả Lecirc Quốc Toagraven
24
Analog trong suốt thời gian đagravem thoại vagrave cung cấp 90VAC(20hz) để phaacutet điện aacuteprung chuocircng Thiết bị FXS phaacutet cograven thiết bị FXO nhận
Card TDM sử dụng trong hệ thống asterisk thường tiacutech hợp vừa thiết bị FXOvừa lagrave thiết bị FXS(Giống bộ ATA) FXO để kết nối với đường dacircy điện thoại cograveFXS dugraveng để kết nối với maacutey điện thoại analog thocircng thường dugraveng để chuyển mạcuộc gọi TDM qua hệ thống asterisk(Xem thecircm trong phần cấu higravenh cho kecircnhTDM)
Toacutem lại cần nắm
FXS được kết nối với FXO giống với đường dacircy điện thoại nối với maacuteyđiện thoại
FXS cung cấp nguồn cho điện thoại FXO(điện thoại Analog)
Higravenh a) Maacutey điện thoại vai trograve FXO kết nối với FXS(PSTN) Higravenh b) PBXkết nối với FXO vagrave FXS Higravenh c) ATA đoacuteng vai trograve như FXS để kết nối với maacuteyđiện thoại vai trograve FXO
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2572
Taacutec Giả Lecirc Quốc Toagraven
25
2 Baacuteo hiệu Analog giữa đầu cuối vagrave tổng đagravei
Khi chuacuteng ta nhấc mấy điện thoại để gọi thigrave nghe tiacuten hiệu mời quay số kh
cuộc gọi gọi đầu becircn kia bị bận thigrave chuacuteng ta nghe tiacuten hiệu bận(busy tone) caacutec loạtiacuten hiệu như vậy gọi lagrave caacutec tiacuten hiệu baacuteo hiệu analog Caacutec tiacuten hiệu như Mời quay sốtiacuten hiệu bận rung chuocircng trạng thaacutei nhấc gaacutec maacutey Caacutec loại tiacuten hiệu trecircn được trađổi giữa thiết bị FXO vagrave FXS
Coacute nhiều phương thức baacuteo hiệu khaacutec nhau ứng với từng nơi sử dụng vigrave thếtại nơi kết nối với đường dacircy điện thoại cần xem xeacutet họ đang sử dụng phương th
baacuteo hiệu gigrave từ đoacute chuacuteng ta khai thaacutec loại tiacuten hiệu baacuteo hiệu cho thiacutech hợp caacutec phương thức baacuteo hiệu như Loop Start Ground Start Một minh họa cho việc sửdụng sai phương thức baacuteo hiệu lagrave khi chuacuteng ta khai baacuteo phương thức baacuteo hiệu giữhệ thống Asterisk vagrave đường dacircy điện thoại khaacutec nhau thigrave dẫn đến Asterisk sẽ khocircnnhận biết được tiacuten hiệu gaacutec maacutey điều nagravey sẽ lagravem cho asterisk khocircng baacuteo giờ giải tỏđược cuộc gọi để thực hiện cuộc gọi mới
3 Baacuteo hiệu giữa caacutec tổng đagravei
SS7 hệ thống baacuteo hiệu số 7 được phaacutet triển bởi ATampT vagrave ITU lagrave hệ thống baacuteo hiệu chuyển caacutec cuộc gọi giữa caacutec tổng đagravei trong mạng PSTN Trong hệ thốn baacuteo hiệu số 7 tiacuten hiệu chuyển tải trecircn đường trung kế kết nối giữa hai tổng đagravei gồcoacute hai mạch riecircng một cho thoại vagrave một cho baacuteo hiệu như vậy thoại vagrave baacuteo hiệu cthể chuyển trecircn hai kecircnh vật lyacute khaacutec nhau
7 Baacuteo Hiệu trecircn mạng điện thoại VoIP
1 SIP Session Initiation Prorocol
Sip lagrave giao thức Internet dagravenh cho baacuteo hiệu VoIP được phaacutet triển bởi IETFcung cấp vagravei chức năng giống hệ thống baacuteo hiệu số 7 nhưng dựa trecircn nền IP Mộchức năng giống baacuteo hiệu số 7 đoacute lagrave baacuteo hiệu vagrave thoại chuyển tải trecircn hai kecircnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2672
Taacutec Giả Lecirc Quốc Toagraven
26
riecircng Giao thức SIP thực hiện chức năng thiết lập vagrave baacuteo hiệu cuộc gọi khi noacutei đế baacuteo hiệu cuộc gọi lagrave chỉ định caacutec tiacuten hiệu baacuteo hiệu như tiacuten hiệu mời quay số tiacutehiệu bậnhellip
2 Proxy server
Mặc dầu hai thiết bị SIP coacute thể liecircn lạc trực tiếp với nhau để khởi tạo cuộgọi nhưng trong giao thức SIP cograven coacute chức năng Proxy để linh hoạt hơn trong thiếlập cuộc gọi Proxy Server sẽ lagravem nhiệm vụ ghi nhận tất cả caacutec số điện thoại đư phiacutea client đăng kyacute đến qua bản tin ldquoRegistrationrdquo Khi một client khaacutec thực hiện
cuộc gọi thigrave thực sự Client đoacute khocircng biết số điện thoại cần gọi đang ở đacircu necircn thocircnqua Proxy server để tigravem kiếm thiết lập cuộc gọi
+
Higravenh Đăng kyacute từ Client đến SIP Proxy Với Giao thức SIP đường baacuteo hiệu vagravethoại riecircng
3 RTP vaacute NAT
Caacutec cuộc gọi trecircn Internet với giao thức SIP được chia thagravenh caacutec goacutei thoại vagraveđược chuyển qua giao thức RTP(Real Time Protocol) RTP lagrave giao thức khocircng chỉthực hiện chuyển caacutec goacutei thoại qua Internet magrave cograven coacute cả video nữa Một cuộc gọ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2772
Taacutec Giả Lecirc Quốc Toagraven
27
thocircng thường coacute hai hướng thocircng tin lagrave nhận vagrave phaacutet RTP lagravem việc chuyển caacutec goacutedữ liệu thoại cũng trecircn hai hướng
NAT Network Address Translators lagrave một trở ngại lớn trong giao thức RTPMạng sử dụng NAT lagrave một mạng chia sẻ nhiều địa chỉ IP nội bộ với một địa chỉ ICocircng cộng để kết nối với thế giới becircn ngoagravei NAT dugraveng để chia sẻ nhiều maacutey tiacutentrong mạng LAN nội bộ sử dụng được Internet nhưng cũng chiacutenh vigrave thế magrave caacutec maacutetiacutenh nội bộ gặp khoacute khăn trong việc thực hiện cuộc gọi VoIP qua Internet Đoacute chiacutenhlagrave vấn để trở ngại khi truyền thoại qua giao thức RTP
Higravenh Minh họa hoạt động của NAT
Trong Giao thức RTP như chuacuteng ta đatilde biết đoacute lagrave thoại được chuyển trecircn haiđường khaacutec nhau lagrave đường phaacutet vagrave đường thu Vấn đề NAT nằm ở chỗ tiacuten hiệthoại từ becircn ngoagravei vagraveo becircn trong qua giao thức RTP khocircng thực hiện được cograven chiềungược lại thigrave thực hiện tốt Hay noacutei caacutech khaacutec vấn đề NAT lagravem cho caacutec cuộc gọi t
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2872
Taacutec Giả Lecirc Quốc Toagraven
28
Internet đagravem thoại vagraveo caacutec maacutey nội bộ qua NAT thigrave khocircng nghe được cograven trongtrường hợp caacutec cuộc gọi từ caacutec maacutey nội bộ ra caacutec maacutey internet thigrave nghe tốt
Vấn đề NAT trecircn được giải quyết trong Asterisk bằng việc khai baacuteo thocircng số NAT=yes trong cấu higravenh kecircnh giao thức SIP
4 IAX ndash Inter Asterisk eXchange
IAX lagrave giao thức baacuteo hiệu Voip được phaacutet triển bởi taacutec giả của phần mềmAsterisk để khắc phục những hạn chế trong giao thức SIP Khocircng giống như giathức SIP chuyển tải thoại vagrave baacuteo hiệu trecircn hai kecircnh khaacutec nhau (out of band) IAXchuyển tải thoại vagrave baacuteo hiệu trecircn cugraveng một kecircnh(in band) IAX giải quyết được vấđề NAT đề cập trecircn phần giao thức SIP Mặc khaacutec IAX lagrave giao thức tối ưu trongviệc sử dụng băng thocircng cho pheacutep nhiều goacutei dữ liệu thoại trecircn cugraveng một IP headecơ chế chuyển tải nhiều cuộc gọi trecircn cugraveng một goacutei IP được gọi lagrave trung kế(Trunk)
Coacute thể giải thiacutech thecircm cơ chế trung kế như sau Giả sử Tocirci cần gửi 5 bức thtới người bạn của Tocirci Tocirci sẽ coacute hai higravenh thức để thực hiện thứ nhất lagrave mỗi bức tTocirci bỏ vagraveo một phong bigrave vậy tổng cộng tocirci phải sử dụng 5 phong bigrave để gửi đi 5 bứthư Caacutech thứ hai lagrave Tocirci bỏ 5 bức thư vagraveo 1 phong bigrave vagrave gửi đi vậy tổng cộng Tocircchỉ tốn 1 phong bigrave Qua phacircn tiacutech trecircn rotilde ragraveng việc 5 bức thư vagraveo một phong bigrave sẽtiết kiệm hơn so với 5 bức thư với 5 phong biacute Cơ chế trecircn cũng giống như nhiềcuộc gọi được đoacuteng thagravenh goacutei vagrave chuyển đi trecircn đường trung kế
Toacutem lại IAX lagrave giao thức dagravenh cho VoIP mới nhất cho đến thời điểm nagravey vớinhiều ưu điểm hấp dẫn như
+ Tối thiểu sử dụng băng thocircng
+ Trong suốt với NAT
+ Hiệu quả với cơ chế trung kế
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2972
Taacutec Giả Lecirc Quốc Toagraven
29
8 Thiết Bị VoIP
1 Voip Phone
Đacircy lagrave thiết bị phần cứng kết nối với mạng VoIP giống như maacutey điện thoại đ bagraven thocircng thường nhưng dagravenh cho VoIP cần phải thực hiện cấu higravenh trước khi sửdụng
Lưu yacute một số tiacutenh năng khi thực hiện mua thiết bị điện thoại VoIP
+ Low bandwidth hỗ trợ Codec nagraveo G729 lagrave tốt nhất hiện nay
+ Web Interface Phải coacute giao tiếp thiết lập cấu higravenh thacircn thiện dễ sử dụng
+ Audio Interface Coacute speaker phone hay khocircng
Giaacute thagravenh của điện thoại voip IP đắc hơn điện thoại thocircng thường giaacute khoảntrecircn dưới 100$ một caacutei
Higravenh Maacutey Điện Thoại VoIP
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3072
Taacutec Giả Lecirc Quốc Toagraven
30
2 Softphone
Lagrave một phần mềm được cagravei trecircn maacutey tiacutenh thực hiện tất cả caacutec chức năng giốn
như thiết bị điện thoại Voip cần lưu yacute khi sử dụng softphone lagrave maacutey tiacutenh phải ccard acircm thanh headphone vagrave firewall khocircng bị khoacutea
Sử dụng softphone với hệ thống Asterisk necircn dugraveng softphone với cocircng nghệgiao thức mới dagravenh cho Asterisk đoacute lagrave IAX
Higravenh Điện Thoại Softphone
3 Card giao tiếp với PSTN
Muốn cho pheacutep caacutec maacutey điện thoại nội bộ trong hệ thống Asterisk kết nối vthực hiện cuộc gọi với mạng PSTN chuacuteng ta cần phải coacute thiết bị phần cứng tươthiacutech Thiết bị phần cứng sử dụng cho hệ thống Asterisk do chiacutenh taacutec giả lập cocircng
Digium phacircn phối đacircy cũng chiacutenh lagrave yacute tưởng lớn trong việc phacircn phối phần mềmAsterisk lagrave hệ thống nguồn mở sử dụng miễn phiacute
Thiết bị phần cứng thường kyacute hiệu bắt đầu bằng cụm từ TDMxyB trong đoacute lagrave số lượng port FXS y lagrave số lượng port FXO giaacute trị tối đa của x vagrave y lagrave 4 viacute dụcard TDM22B coacute nghĩa lagrave coacute 2 fort FXS vagrave 2 port FXO
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3172
Taacutec Giả Lecirc Quốc Toagraven
31
Higravenh Card TDM22B gồm 4 port 2 FXS vagrave 2 FXO
4 ATA Analog Telephone Adaptors
ATA lagrave thiết bị kết nối với điện thoại Analog thocircng thường đến mạng VoIPmột thiết bị ATA gồm coacute hai loại port RJ-11 để kết nối với maacutey điện thoại analo
thocircng thường cograven RJ-45 để kết nối với mạng VoIP
ATA thực sự lagrave thiết bị FXS chuyển đổi tiacuten hiệu Analog sang tiacuten hiệu số sửdụng cho mạng VoIP để tận dụng maacutey điện thoại Analog necircn trang bị thiết bị ATAthay vigrave phải trang bị điện thoại VoIP
Thiết bị ATA sử dụng với giao thức IAX được Digium phacircn phối lagrave thiết bịATA được sử dụng rộng ratildei với Asterisk coacute tecircn gọi lagrave IAXy
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3272
Taacutec Giả Lecirc Quốc Toagraven
32
Higravenh Thiết bị ATA
9 Codecs
Thuật Toaacuten codecs(CompressorDe-compressor) lagrave một tập caacutec quy luật đượcsử dụng để chuyển đổi caacutec tiacuten hiệu thoại dạng Analog sang tiacuten hiệu số vagrave ngược lạ
Coacute nhiều thuật toaacuten codec để thực hiện chuyển đổi tiacuten hiệu analog sang tiacuten
hiệu số dạng nhị phacircn (01) như G711 GSM G729hellipỨng với mỗi thuật toaacuten coacutenhững ưu điểm riecircng đặc biệt lagrave việc tối ưu sử dụng băng thocircng trecircn đường truyềMục tiecircu cuối cugraveng lagrave caacutec thuật toaacuten đưa ra phải đảm bảo chất lượng cuộc gọi nhvagrave tiết kiệm băng thocircng nhất
G729 lagrave thuật toaacuten codec tốt nhất hiện nay trong hệ thống VoIP Với hệthống Asterisk để sử dụng thuật toaacuten nagravey cần phải mua bản quyền sử dụng vigrave đacircy
codec khocircng miễn phiacute sử dụng
10 QoS ndash Quality of Service
Caacutec yếu tố ảnh hưởng đến chất lượng của dịch vụ đối với VoIP đoacute lagrave caacuteyếu ảnh hưởng đến chất lượng tiacuten hiệu thoại
1 Độ trễ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3372
Taacutec Giả Lecirc Quốc Toagraven
33
Thoại lagrave dịch vụ mang tiacutenh thời gian thực rất cao vigrave thế trễ lagrave yếu tố ảnhhưởng rất lớn đến chất lượng dịch vụ Trễ được định nghĩa lagrave khoảng thời gian tiacute
từ luacutec tiacuten hiệu thoại đi từ miệng người noacutei tới tai người nghe Trễ lagrave yếu tố khocircnthể traacutenh khỏi độ trễ đối với mạng điện thoại truyền thống (mạng PSTN) khoảng50ms đến 70ms theo khiến nghị của ITU-T để đảm bảo chất lượng cho hệ thốVoIP thigrave độ trễ từ đầu phaacutet tới đầu thu hoặc ngược lại khocircng được vượt quaacute 150mkhi magrave độ trễ vượt quaacute 400ms đến 500ms thigrave khocircng thể chấp nhận được
Caacutec nguyecircn nhacircn gacircy ra trễ bao gồm Trễ trecircn mạng lưới trễ trecircn bộ mả hoacutea
giải matilde trễ trong quaacute trigravenh đoacuteng goacutei trễ bộ đệm trễ xử lyacute tiếng noacuteihellip2 Độ trượt(Jitter)
Nguyecircn nhacircn gacircy ra trượt lagrave goacutei tiacuten hiệu thoại trong quaacute trigravenh truyền từnguồn đến điacutech sẽ gặp phải những điều kiện khaacutec nhau trecircn mạng lưới do đoacute thườđến điacutech với những khoảng trễ khaacutec nhau Đacircy lagrave tiacutenh khocircng đồng nhất của trễ Mnguyecircn nhacircn khaacutec của trượt đối với ứng dụng PC to PC lagrave do việc sử dụng hệ điề
hagravenh phi thời gian thực caacutec goacutei tin thoại phải đợi hệ điều hagravenh xử lyacute trong nhữnkhoảng thời gian khaacutec nhau khi magrave hệ điều hagravenh đang phải xử lyacute đối với caacutec ứndụng khaacutec
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3472
Taacutec Giả Lecirc Quốc Toagraven
34
Higravenh Nguyecircn nhacircn xảy ra trượt
Để loại bỏ tiacutenh khocircng đồng nhất của trễ người ta thiết kế caacutec bộ đệm t(Jitter Buffer) tại nơi đến của caacutec goacutei tin caacutec goacutei tin đến với caacutec khoảng caacutech khaacutecnhau về thời gian được lưu tại bộ đệm rồi phaacutet khỏi bộ đệm với khoảng trễ n
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3572
Taacutec Giả Lecirc Quốc Toagraven
35
nhau Khi bộ đếm coacute kiacutech thước cagraveng lớn thigrave khả năng loại bỏ tiacutenh khocircng đồng nhấcagraveng lớn tuy nhiecircn việc sử dụng bộ đệm sẽ gacircy ra hiện tượng trễ trong ứng dụnthoại do đoacute cần coacute bagravei toaacuten cacircn đối giữa độ trễ vagrave độ trượt
Ngoagravei 2 nguyecircn nhacircn trecircn cograven một số nguyecircn nhacircn nữa ảnh hưởng đến chấtlượng thoại như độ mất goacutei giới hạn băng thocircng tiếng vọng
3 CAgraveI ĐẶT ASTERISK
1 Cagravei đặt Asterisk
1 Download vagrave bung neacuten
Để cagravei đặt Asterisk đầu tiecircn chuacuteng ta cần phải cagravei đặt hệ điều hagravenh linux trecircnmaacutey tiacutenh của migravenh Coacute thể cagravei hệ điều hagravenh Linux Fedora CentOS Redhat hoặcDebian Caacutec goacutei phần mềm phụ thuộc phải coacute trong hệ điều hagravenh Linux trước khcagravei Asterisk bao gồm
bison
gcc
kernel-source
libtermcap-devel
ncurses-devel
openssl096b
openssl-devel
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3672
Taacutec Giả Lecirc Quốc Toagraven
36
Sau khi hoagraven tất caacutec bước trecircn chuacuteng ta tiến hagravenh download phần mềmasterisk với phiecircn bản mới nhất
cd usrsrc
wgetftpftpdigiumcompubasteriskasterisk-140targz
wgetftpftpdigiumcompubasteriskasterisk-addons-140targz
wgetftpftpdigiumcompubasteriskasterisk-sounds-140targz
wgethttpftpdigiumcompubzaptelzaptel-140targz
wgethttpftpdigiumcompublibprilibpri-140targz
Việc download coacute thể nhanh hay chậm tugravey vagraveo tốc độ trecircn đường internet saukhi download hoagraven thagravenh chuacuteng ta tiến hagravenh bung neacuten caacutec goacutei ra thư mục chỉ định
tar ndashxzvf asterisk-140targz
tar ndashxzvf asterisk-addons-140targz
tar ndashxzvf asterisk-sounds-140targz
tar ndashxzvf zaptel-140targz
tar ndashxzvf libpri-140targz
Giải neacuten xong chuacuteng ta nhớ thực hiện lệnh
ln ndashs usrsrcasterisk-140 usrsrcasterisk lệnh nagravey để bảo đảm goacuteildquoaddonsrdquo được biecircn dịch đuacuteng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3772
Taacutec Giả Lecirc Quốc Toagraven
37
Bacircy giờ tới phần chuacuteng ta biecircn dịch caacutec goacutei đatilde giải neacuten ở trecircn trước tiecircn lagrave goacuteizaptel kế đến lagrave libpri sau cugraveng lagrave goacutei Asterisk
2 Cagravei đặt goacutei Zaptel
Goacutei zaptel sẽ chứa tại thư mục usrsrczaptel Đaacutenh lệnh như dưới đacircy để cagraveđặt
cd usrsrczaptel
make clean make install
Lệnh nagravey thực hiện khoảng 2 phuacutet tugravey vagraveo tốc độ maacutey tiacutenh cagravei đặt sau khicagravei đặt xong sẽ trở lại dấu nhắc lệnh vagrave hiển thị một loạt caacutec thocircng baacuteo trong đoacute một số bản tin lỗi magrave chủ yếu lagrave yecircu cầu cagravei đặt caacutec goacutei phụ thuộc đatilde liệt kecirc ở trecircnếu caacutec goacutei trecircn chưa được cagravei đặt
Goacutei zaptel nagravey chứa caacutec driver cho caacutec phần cứng kết giao tiếp với asterisk
do Digium phacircn phối vagrave một số thư viện cho việc coacute thực hiện giao tiếp với phầcứng hay khocircng
Để Asterisk coacute thể chạy cugraveng với khởi động của maacutey tiacutenh chuacuteng ta cần thựchiện lệnh
make config
Lệnh nagravey sẽ tạo ra script chegraven module zaptel vagraveo kernel vagrave chạy ztconfig vagraveoluacutec khởi động maacutey Trong Redhat script nagravey sẽ được cheacutep vagraveo etcinitd chạy ở mức 3
3 Cagravei đặt goacutei libpri
Kế đến chuacuteng ta biecircn dịch goacutei libpri tại thư mục usrsrclibpri bằng lệnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3972
Taacutec Giả Lecirc Quốc Toagraven
39
make config
3 Cagravei đặt TrixBox
1 Giới thiệu
TRIXBOX được phaacutet triển từ nhacircn của ứng dụng Asterisk được tổng hợp từmột số thagravenh phần chiacutenh được phaacutet triển bởi cộng đồng phaacutet triển nguồn mAsterisk dưới bản quyền GPL Trixbox bao gồm những thagravenh phần chiacutenh cho việcấu higravenh ứng dụng thống kecirc tigravenh trạng hoạt động hệ thống lưu trữ dự phograveng v
nhacircn lagrave hệ điều hagravenh CentOS một phiecircn bản khaacutec của Redhat tất cả kết hợp vớnhau tạo thagravenh một goacutei hoagraven chỉnh Khi cagravei goacutei nagravey vagraveo maacutey tiacutenh thigrave coacute thể sử dụngnhư một tổng đagravei PBX
Caacutec thagravenh phần chiacutenh trong goacutei TRIXBOX lagrave
Asterisk PBX Thagravenh phần chiacutenh của hệ thống Trixbox
CentOS Một phiecircn bản Linux khaacutec của Redhat hoagraven toagraven miển phiacute sửdụng Lagrave nhacircn chiacutenh cho Trixbox
SugarCRM Hệ thống quan hệ khaacutech hagraveng CRM
A2Billing ndash Lagrave thagravenh phần dagravenh cho việc xacircy dựng hệ thống điện thoạitrả trước hay cograven gọi lagrave điện thọai thẻ (Calling Card)
Flash Operator Panel Bảng điều khiển giaacutem saacutet tigravenh trạng hoạt độngcủa caacutec maacutey điện thoại trong hệ thống
Web MeetMe Control Quản lyacute triển khai hệ thống điện thoại hội nghị
FreePBX Đacircy lagrave cocircng cụ với giao diện web dagravenh cho việc cấu higravenh hệthống Asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4072
Taacutec Giả Lecirc Quốc Toagraven
40
Hệ thống Lưu trữ dự phograveng vagrave thống kecirc Lagrave thagravenh phần của TRIXBOXcung cấp caacutec cocircng cụ cần thiết cho việc bảo trigrave bảo dưỡng hệ thống
Hệ thống Apache-Php-Mysql dagravenh cho giải phaacutep Webserver của hệthống
2 DOWNLOAD VAgrave LẮP ĐẶT TRIXBOX
Địa chỉ downloadhttpsourceforgenetprojectsasteriskathome
Khi download xong file Trixboxiso Hatildey dugraveng file nagravey Burn vagraveo CD ( xinlưu yacute lagrave dugraveng Nero hoặc chương trigravenh cheacutep đĩa ưa thiacutech rồi burn vagraveo cd_romchứ khocircng phải cheacutep file đoacute vagraveo cd_rom)
Sau khi coacute CD Hatildey boot từ CD nagravey để cagravei đặt trixbox
Chuacute yacute dữ liệu trecircn đĩa cứng sẽ bị xoacutea sạch để cagravei đặt trixbox Nếu trongđĩa cứng cograven dữ liệu hatildey backup tất cả trước khi tiến hagravenh lắp đặt trixbox
Tới đacircy lần lượt caacutec magraven higravenh chỉ dẫn sẽ hiện ra vagrave cứ theo hướng dẫn magrave cagraveđặt Sau khi cagravei đặt xong chuacuteng ta dugraveng Username root vagrave password password đểđăng nhập hệ thống
3 Cấu higravenh địa chỉ IP cho card mạng
Thiết lập địa chỉ IP bằng caacutech gotilde lệnh
netconfig
Chọn OK để thiếp lập
Nếu trong mạng coacute hỗ trợ DHCP thigrave hatildey chọn mục nagravey cograven nếu khocircng hatildeynhập địa chỉ IP tĩnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4172
Taacutec Giả Lecirc Quốc Toagraven
41
IP 19216801
Netmask 2552552550
Gateway 19216893254 ngotilde ra becircn ngoagravei
Primary nameserver 19216893200 thiết lập nếu coacute
Chọn OK để chấp nhận caacutec thiết lập trecircn
Sau khi hoagraven tất hatildey lagravem cho thiết lập coacute hiệu lực bằng caacutech reset lại
maacutey tiacutenh hoặc dugraveng lệnh sau
Service network stop
Service network start
Đến đacircy xem như cagravei đặt hoagraven tất bacircy giờ để cấu higravenh được Asterisk chuacutengta vagraveo một magravey khaacutec vagrave mở Internet Explorer hoặc một trigravenh duyệt web bất kỳ
nhập vagraveohttp19216801đatilde cấu higravenh ở trecircn vagrave tiến hagravenh cấu higravenh hệ thốngvới tagravei khoảng username maint vagrave password password
4 Tổ Chức Thư Mục của Asterisk
Asterisk sử dụng nhiều thư mục trecircn hệ thống linux để quản lyacute caacutec khiacutea cạnkhaacutec nhau của hệ thống như nghi nhận bản tin thoại caacutec bản tin nhắc thoại hoặcaacutec tập tin cấu higravenh Phần nagravey sẽ trigravenh bagravey caacutec thư mục chiacutenh yếu được tạo ra tronquaacute trigravenh lắp đặt vagrave được cấu higravenh trong tập tin Asteriskconf
1 etcasterisk
Thư mục etcasterisk chứa tất cả caacutec tập tin cấu higravenh của hệ thốngAsterisk ngoại trừ tập tin Zaptelconf được đặt tại thư mục etc Phần cứnZaptel đầu tiecircn được phaacutet triển bởi Jim Dixon thuộc nhoacutem Zapata Telephony
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4272
Taacutec Giả Lecirc Quốc Toagraven
42
Group để giao tiếp giữa maacutey tiacutenh với mạng điện thoại magrave Asterisk lại sửdụng phần cứng nagravey với lyacute do đoacute magrave file cấu higravenh zaptelconf khocircng nằmtrong thư mục etcasterisk
2 usrlibasteriskmodules
Thư mục usrlibasteriskmodules chứa tất cả caacutec module cần thiết đểasterisk hoạt động Becircn trong thư mục lagrave caacutec ứng dụng khaacutec nhau caacutec codeccaacutec định dạng acircm thanh(format) vagrave caacutec kecircnh thocircng tin(channel) Theo mặc địnhAsterisk sẽ nạp tất cả caacutec module vagraveo luacutec khởi động Chuacuteng ta coacute thể khocircng cho
nạp một module bất kỳ bằng caacutech khocircng khai baacuteo sử dụng trong tập tinmodulesconf Lưu yacute khi khocircng cho nạp module thigrave phải biết chắc module đoacutekhocircng lagravem ảnh hưởng hoạt động của asterisk nếu khocircng lỗi sẽ xuất hiện
3 varlibasterisk
Thư mục varlibasterisk chứa tập tin astdb vagrave một số thư mục con Tập tinastdb định vị thocircng tin cơ sở dữ liệu của Asterisk giống như Microsoft WindowsRegistry
Caacutec thư mục con của thư mục varlibasterisk bao gồm
agi-bin
Thư mục agi-bin chứa caacutec script của người dugraveng magrave Asterisk coacute thểđịnh vị sử dụng qua caacutec ứng dụng AGI
AGI lagrave phần giao tiếp với ngocircn ngữ lập trigravenh script để thực hiện mộtsố cocircng việc của Asterisk từ becircn ngoagravei
firmware
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4372
Taacutec Giả Lecirc Quốc Toagraven
43
Thư mục firmware chứa một số phần dẻo(firmware) cho caacutec thiết bịkhaacutec nhau tương thiacutech với Asterisk Hiện tại chỉ coacute thư mục con iax chứa
firmware cho thiếy bị IAXy của Digium IAXy lagrave thiết bị ATA sử dụng giaothức IAX
images
Caacutec ứng dụng thocircng tin với caacutec kecircnh hỗ trợ ảnh images thigrave sử dụng thư mụcnagravey Nhưng hiện tại caacutec kecircnh thocircng tin hầu như khocircng hỗ trợ truyền ảnh images necircthư mục nagravey cũng hiếm khi được sử dụng Tuy nhiecircn nếu caacutec thiết bị coacute hỗ trợ ththư mục nagravey trở necircn hiệu dụng
keys
Asterisk coacute thể sử dụng hệ thống khoaacute publicprivate để xaacutec minh caacutec kết nốgiữa caacutec server Asterisk thocircng qua chữ kyacute điện tử RSA Nếu đặt một khoaacute publicvagraveo thư mục keys thigrave kết nối của server đầu becircn kia coacute thể được xaacutec minh bằn
kecircnh thocircng tin coacute hỗ trợ đối với Asterisk thigrave kecircnh giao thức IAX hỗ trợ loại xaacutecminh nagravey Một khoaacute private khocircng bao giờ cocircng bố chuacuteng ta chỉ cocircng bố khoaacute public đến với server cần nối đến sau đoacute sẽ được xaacutec minh với khoaacute private nagravey Chai khoaacute public vagrave private được lưu với đuocirci pub vagrave key đặt tại thư mục keys
mohmp3
Khi cấu higravenh Asterisk sử dụng tiacutenh năng Music on Hold tiacutenh năng hoạt độngsẽ thực hiện lấy caacutec tập tin mp3 tại thư mục mohmp3 Tập tin định dạng theo chucủa Asterisk necircn khi sử dụng caacutec file Mp3 thocircng thường cần coacute sự chuyển đổi thiacutechợp trước khi cheacutep vagraveo thư mục trecircn để sử dụng
sounds
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4472
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4572
Taacutec Giả Lecirc Quốc Toagraven
45
Thư mục tmp sử dụng để lưu trữ những thocircng tin tạm để luocircn bảo đảm khocircnxảy ra tigravenh trạng đọc vagrave viết tập tin cugraveng một luacutec Khi yecircu cầu xử lyacute tập tin chuacuteng thao taacutec trecircn thư mục tmp trước khi lưu vagraveo tập tin điacutech
Tất cả caacutec lời nhắc thoại từ phiacutea người sử dụng vagrave caacutec lời nhắc thoại sử dụ
cho thao taacutec hộp voicemail đều được chứa trong thư mục voicemail Một hộp thưthoại được tạo ra ứng với một maacutey nội bộ trong tập tin voicemailconf sẽ được tra một thư mục con tương ứng cho maacutey nội bộ đoacute tại thư mục voicemail
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4672
Taacutec Giả Lecirc Quốc Toagraven
46
5 varrun
Thư mục varrun chứa thocircng tin process ID(pid) cho tất cả caacutec tiến trigravenh đang
hoạt động trong hệ thống bao gồm cả Asterisk Lưu yacute lagrave ứng với mỗi hệ điều hagravethư mục varrun coacute thể khaacutec
6 varlogasterisk
Thư mục varlogasterisk lagrave nơi Asterisk chứa tất cả caacutec tập tin nhật kyacute haycograven gọi lagrave tập tin log Chuacuteng ta coacute thể tuỳ biến caacutec loại thocircng tin được lưu trong caacutec
tập tin log khaacutec nhau qua tập tin cấu higravenh loggerconf đặt tại thư mục etcasterisk7 varlogasteriskcdr-csv
Thư mục varlogasteriskcdr-csv được sử dụng để lưu chi tiết cuộc gọi CDRThocircng tin mặc định về chi tiết thocircng tin cuộc gọi lưu trữ trong tập tin MasterCVSnhưng thường thigrave ứng với mỗi matilde accountcode sẽ tạo một thư mục riecircng để lưu ctiết cuộc gọi cho maacutey đoacute
5 Một số lệnh thao taacutec trecircn hệ thống asterisk
Asterisk coacute hai thagravenh phần được xacircy dụng tiacutech hợp với nhau vagrave chạy songsong nhau
Asterisk Server bigravenh thường chạy ở chế độ nền(background) giống caacutec sevicestrong window
Asterisk Client ở chế độ dograveng lệnh CLI giao tiếp với Asterisk Server thực thicaacutec lệnh để kiểm tra hay xem caacutec thocircng tin của server
Để Chạy vagrave dừng Asterisk ở chế độ nền chuacuteng ta thực hiện lệnh sau
etcinitdasterisk (start|stop)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4772
Taacutec Giả Lecirc Quốc Toagraven
47
Một khi Asterisk đatilde chạy chuacuteng ta coacute thể chuyển qua chế độ CLI từ dấu nhắlệnh của linux như sau
asterisk ndashr
Khi vagraveo chế độ lệnh nếu muốn thoaacutet về lại dấu nhắc linux chuacuteng ta dugraveng lệnh
CLIgtexit
Caacutec lệnh cơ bản thực hiện tại CLIgt
Bất cứ khi nagraveo chỉnh sửa caacutec tập tin cấu higravenh chuacuteng ta đều cần phải nạp lại đcaacutec thay đổi coacute hiệu lực điều đoacute thực hiện bằng lệnh
CLIgtreload
Bậc chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 debug
CLIgt SIP debug
Tắt chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 no debug
CLIgt SIP no debug
Hiển thị caacutec trạng thaacutei thocircng tin của users peers vagravechannels của SIP hoặc IAX2
CLIgt sip show users
CLIgt sip show peers
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4872
Taacutec Giả Lecirc Quốc Toagraven
48
CLIgt sip show channels
CLIgt iax2 show peers
CLIgt iax2 show users
CLIgt iax2 show channels
Đến thời điểm nagravey coacute thể noacutei chuacuteng ta đatilde hoagraven thagravenh cagravei đặt hệ thốngAsterisk cagravei đặt xong mới lagrave bước mở đầu để cho hệ thống Asterisk hoạt động vtừng ứng dụng cụ thể chuacuteng sẽ tiếp tục thực hiện caacutec giai đoạn được xem lagrave qutrọng nhất trong việc triển khai hệ thống Asterisk đoacute lagrave giai đoạn cấu higravenh hệ thốnlecircn kế hoạch Diaplan chương cograven lại đều nhắm đến mục tiecircu nagravey
4 CẤU HIgraveNH HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Sau khi hoagraven tất phần cagravei đặt hệ thống asterisk một bước quan trọng tiếp thelagrave cấu higravenh hệ thống coacute thể noacutei đacircy lagrave bước quan trọng nhất của việc khiển khai thống đến với từng ứng dụng cụ thể Trong chương nagravey xin giới thiệu caacutei nhigraven đầtiecircn về việc cấu higravenh trước khi đi sacircu hơn ở những chương sau những gigrave giới thiệ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4972
Taacutec Giả Lecirc Quốc Toagraven
49
trong chương nagravey lagrave nền moacuteng cơ bản nhưng đủ để hiểu lagravem thế nagraveo hệ thống coacute thoạt động được nội dung chiacutenh bao gồm
+ Thao taacutec cấu higravenh trecircn hệ thống tập tin của asterisk
+ Caacutech cagravei đặt phần mềm softphone trecircn cocircng nghệ sip
+ Cấu higravenh cho hai maacutey softphone liecircn lạc với nhau
+ Cấu higravenh phaacutet thocircng điệp
+ Quay số qua Sip vagrave mạng PSTN
2 Tập Tin cấu higravenh
Tất cả caacutec file cấu higravenh cho hệ thống asterisk đều nằm tại thư mục etcasterisngoại trừ file zaptelconf cấu higravenh cho phần cứng TDM nằm tại thư mục etc caacutecthức cấu higravenh giống như tập tin ini của window vậy Caacutec nội dung sau dấu chấm phảy lagrave nội dung chuacute thiacutech trong file cấu higravenh giống như chuacute thiacutech trong ngocircn ngữ
lập trigravenh C lagrave dấu Tất cả caacutec khoảng trắng trong tập tin đều được bỏ qua khocircng yacute nghĩa trong file cấu higravenh
Trong file cấu higravenh cograven coacute hai pheacutep gaacuten rất thường xuyecircn được sử dụng pheacutep gaacuten ldquo=rdquo lagrave dugraveng cho việc gaacuten caacutec biến cograven pheacutep gaacuten ldquo=gtrdquo dugraveng cho việc gaacutencaacutec đối tượng sau đacircy lagrave một viacute dụ cho file cấu higravenh
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5072
Taacutec Giả Lecirc Quốc Toagraven
50
Đacircy lagrave caacutec dograveng chuacute thiacutech
[section]
Key=value gaacuten giaacute trị cho biến
[section2]
Key=gtobject Gaacuten giaacute trị cho đối tượng
Cuacute phaacutep thực hiện giống nhau cho tất cả caacutec file cấu higravenh nhưng coacute vagravei kiểukhaacutec nhau cho mỗi file cầu higravenh dựa vagraveo thức caacutech hoạt động của chuacuteng
3 Caacutec kiểu ảnh hưởng trong tập cấu higravenh
Coacute ba kiểu caacutech thức hoạt động của tập tin cấu higravenh như sau
Kiểu Caacutech hoạt động File cầu higravenh Viacute dụ
S i m p l eGroup
Coacute hiệu lực trecircntừng dograveng trongfile
Extensionconf
Exten=gt4001dial(sip400)
O p t i o ninheritance
Dograveng khai baacuteosau thừa kếnhững thocircng sốkhai baacuteo trước
Zapataconf [channels]
Context=From_PSTN
Signalling=fxs_ks
Group=1Channel=gt1
C o m p l e xEntity
Mỗi entity nhậnmột ngữ cảnh
sipconf
iaxconf
[cisco]
Type=friend
Secret=12345
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5172
Taacutec Giả Lecirc Quốc Toagraven
51
Host=192168165
Context=NoiBo
[xten]
Type=friend
Secret=6789
Host=dynamic
Context=NoiBo
1 Simple Group
Đacircy lagrave kiểu cấu higravenh đơn giản nhất thường sử dụng trong caacutec fileextentionconf meetmeconf voicemailconf tương ứng với mỗi dograveng khai baacuteo lagravemột đối tượng coacute yacute nghĩa trecircn dograveng đoacute
Viacute dụ
Extentionconf [section]
object1=gt op1op2op3
object2=gt op1bop2bop3b
Trong viacute dụ trecircn mỗi dograveng tương ứng với caacutec toaacuten tử khaacutec nhau object1 coacute caacutectoaacuten từ op1 op2 op3 trong khi đoacute object2 lại coacute caacutec toaacuten từ op1b op2b op3b
2 Option inheritance
Đacircy lagrave cấu higravenh kiểu thừa kế thường được cấu higravenh trong caacutec file zapataconfagentconf với kiểu cấu higravenh nagravey thigrave caacutec dograveng phiacutea dưới coacute thể thừa kế caacutec thocircng sdograveng phiacutea trecircn tương ứng với mỗi section caacutec dograveng phiacutea dưới coacute thể thay đổi caacutecthocircng số cho tươngứng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5272
Taacutec Giả Lecirc Quốc Toagraven
52
Viacute dụ
Extentionconf
[section]
Op1=bas
Op2=adv
Object1=gt1
Op1=int
Object1=gt2
Với cấu higravenh trecircn coacute thể giải thiacutech như sau object1=gt1 thừa hưởng hai thocircngsố ở phiacutea trecircn đoacute lagrave op1=bas vagrave op2=adv trong khi đoacute đối với object1=gt2 với thocircngsố op1=int được khai baacuteo lại necircn object1=gt2 được thừa kế từ hai thocircng số op1=invagrave op2=adv
3 Complex Entity
Với cấu kiểu nagravey được tổ chức thagravenh nhiều entity ứng với mỗi entity coacute nhiềthocircng số được khai baacuteo mỗi entity ở đacircy chiacutenh lagrave caacutec section để khai baacuteo caacutec kecircnhthocircng tin Cấu higravenh thường được sử dụng trong caacutec file iaxconf sipconf
Viacute dụ
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5372
Taacutec Giả Lecirc Quốc Toagraven
53
[entity1]
Op1=value1
Op2=value2
[entity2]
Op1=value3
Op2=value4
Entity1 coacute caacutec giaacute trị value1 vagrave value2 cho thocircng số op1 vagrave op2 trong khi đoacute
cũng lagrave thocircng số op1 vagrave op 2 nhưng coacute caacutec giaacute trị khaacutec lagrave value3 vagrave value4 choentity2
4 Cấu higravenh giao tiếp với mạng PSTN
1 Ngữ cảnh kết nối
Để kết nối với mạng PSTN chuacuteng ta cần phải coacute một card TDM với Cổng
FXO vagrave một đường dacircy điện thoại hoặc coacute thể lagrave một tổng đagravei nội bộ PBX Cnhiều nhagrave sản xuất phần cứng khaacutec nhau nhưng trong phần cấu higravenh dưới dacircy lagrave cấhigravenh cho card zapata TDM01B của digium (card nagravey hiện nay giaacute baacuten khoảng175$)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1072
Taacutec Giả Lecirc Quốc Toagraven
10
Sau đoacute hệ thống PBX Switching Core của Asterisk chuyển sang trạng thaacutei sẵnsagraveng hoạt động chuyển mạch cuộc gọi caacutec cuộc gọi được chuyển mạch tuỳ vagraveo
hoạch quay số (Dialplan) được thực hiện cấu higravenh trong file extensionconfChức năng Application Launchar để rung chuocircng thuecirc bao quay số định
hướng cuộc gọi kết nối với hộp thư thoạihellip
Scheduler and IO Manager đảm nhiệm caacutec ứng dụng nacircng cao caacutec chức năngđược phaacutet triển bởi cộng đồng phaacutet triển asterisk
Codec Translator xaacutec nhận caacutec kecircnh neacuten dữ liệu ứng với caacutec chuẩn khaacutec nhaucoacute thể kết hợp liecircn lạc được với nhau
Tất cả caacutec cuộc gọi định hướng qua hệ thống Asterisk đều thocircng qua caacutec giaotiếp như SIP Zaptel IAX Necircn hệ thống Asterisk phải đảm traacutech nhiệm vụ liecircn kếcaacutec giao tiếp khaacutec nhau đoacute để xử lyacute cuộc gọi
Hệ thống cũng bao gồm 4 chức năng API chiacutenh
Codec translator API caacutec hagravem đảm nhiệm thực thi vagrave giải neacuten caacutec chuẩn khaacutecnhau như G711 GMS G729hellip
Asterisk Channel API Giao tiếp với caacutec kecircnh liecircn lạc khaacutec nhau đacircy lagrave đầumối cho việc kết nối caacutec cuộc gọi tương thiacutech với nhiều chuần khaacutec nhau như SIIAX H323 Zaptelhellip
Asterisk file format API Asterisk tương thiacutech với việc xử lyacute caacutec loại file coacuteđịnh dạng khaacutec nhau như Mp3 wav gsmhellip
Asterisk Aplication API Bao gồm tất cả caacutec ứng dụng được thực thi trong hệthống Asterisk như voicemail callerIDhellip
wwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1172
Taacutec Giả Lecirc Quốc Toagraven
11
Ngoagravei ra Asterisk cograven coacute thư viện Asterisk Gateway Interface (AGI tương tựnhư CGI) - cơ chế kiacutech hoạt ứng dụng becircn ngoagravei cho pheacutep viết kịch bản phức tạp
với một số ngocircn ngữ như PHP hay Perl Noacutei chung khả năng viết caacutec ứng dụng tugravey biến rất lớn
3 MỘT SỐ TIacuteNH NĂNG CƠ BẢN
Asterisk coacute rất nhiều tiacutenh năng đatilde được giới thiệu ở trecircn nhưng để hiểu rotilde hếtất cả caacutec tiacutenh năng trecircn thật sự lagrave thaacutech thức đối với chuacuteng ta Trong phần nagraveychuacuteng tocirci sẽ giới thiệu một số tiacutenh năng với caacutec ứng dụng cụ thể để hiểu hơn về
thống asterisk
1 Voicemail (hộp thư thoại)
Đacircy lagrave tiacutenh năng cho pheacutep hệ thống nhận caacutec thocircng điệp tin nhắn thoại mỗmaacutey điện thoại được khai baacuteo trong hệ thống Asterisk cho pheacutep khai baacuteo thecircm chứnăng hộp thư thoại
Mỗi khi số điện thoại bận hay ngoagravei ldquovugraveng phủ soacutengrdquo thigrave hệ thống asteriskđịnh hướng trực tiếp caacutec cuộc gọi đến hộp thư thoại tương ứng đatilde khai baacuteo trước
Voicemail cung cấp cho người sử dụng nhiều tiacutenh năng lựa chọn như password xaacutec nhận khi truy cập vagraveo hộp thư thoại gửi mail baacuteo khi coacute thocircng điệmới
2 Call Forwarding(chuyển cuộc gọi)
Khi khocircng ở nhagrave hoặc đi cocircng taacutec magrave người sử dụng khocircng muốn bỏ lỡ tất ccaacutec cuộc gọi đến thigrave hatildey nghĩ ngay đến tiacutenh năng chuyển cuộc gọi
Đacircy lagrave tiacutenh năng thường được sử dụng trong hệ thống Asterisk Chức năng cho pheacutep chuyển một cuộc gọi đến một hay nhiều số maacutey điện thoại được định trước
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1272
Taacutec Giả Lecirc Quốc Toagraven
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ậnchuyển cuộc gọi khi khocircng trả lời chuyển cuộc gọi tức thời chuyển cuộc gọi v
thời gian định trước3 Caller ID (hiển thị số gọi)
Chức năng nagravey rất hữu dụng khi một ai đoacute gọi đến vagrave ta muốn biết chiacutenh xaacuteclagrave gọi từ đacircu vagrave trong một số trường hợp biết chắc họ lagrave ai
Ngoagravei ra Caller ID cograven lagrave chức năng cho pheacutep chuacuteng ta xaacutec nhận số thuecirc bao
gọi đến coacute nghĩa lagrave dựa vagraveo caller ID chuacuteng ta coacute tiếp nhận hay khocircng tiếp nhậncuộc gọi từ phiacutea hệ thống Asterisk Ngăn một số cuộc gọi ngoagravei yacute muốn
4 Automated attendant (chức năng IVR)
Chức năng tương taacutec thoại coacute rất nhiều ứng dụng trong thực tế khi gọi điệthoại đến một cơ quan hay xiacute nghiệp thuecirc bao thường nghe thocircng điệp nhưldquoXinchagraveo mừng bạn đatilde gọi đến cocircng ty chuacuteng Tocirci hatildey nhấn phiacutem 1 để gặp phograveng kinh
doanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquosau đoacute tuỳ vagraveo sự tương taacutec của thuecirc 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 thuecirc bao muố biết tỉ giaacute Đocircla hiện nay như thế nagraveo hay kết quả sổ số hellip tất caacutec những monmuốn trecircn đều coacute thể thực hiện qua chức năng tương taacutec thoại
5 Time and Date
Vagraveo từng thời gian cụ thể cuộc gọi sẽ định hướng đến một số điện thoại hmột chức năng cụ thể khaacutec viacute dụ trong cocircng ty giaacutem đốc muốn chỉ cho pheacutep nhacircnviecircn sử dụng maacutey điện thoại trong giờ hagravenh chaacutenh cograven ngoagravei giờ thigrave sẽ hạn chế hakhocircng cho pheacutep gọi ra becircn ngoagravei
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1372
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1472
Taacutec Giả Lecirc Quốc Toagraven
14
Asterisk thực hiện rất nhiều ngữ cảnh ứng dụng khaacutec nhau tuỳ vagraveo nhu cầu sdụng dưới dacircy lagrave những ngữ cảnh ứng dụng thường được sử dụng trong thực
triển khai hệ thống asterisk1 Tổng đagravei voip IP PBX
IP BPX
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1572
Taacutec Giả Lecirc Quốc Toagraven
15
Đacircy lagrave hệ thống chuyển mạch voip được xacircy dựng phục vụ caacutec cocircng ty coacute nhucầu thực hiện trecircn nền tảng mạng nội bộ đatilde triển khai Thay vigrave lắp đặt một hệ thố
PBX cho nhu cầu liecircn lạc nội bộ thigrave necircn lắp đặt hệ thống voip điều nagravey sẽ lagravem giảchi phiacute đaacuteng kể Hệ thống coacute thể liecircn 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 ở đacircy lagrave hiện tại Cocircng ty đatilde trang bị hệ thống PBX bacircygiờ cần trang bị thecircm để đaacutep ứng nhu cầu liecircn lạc trong cocircng ty sao cho với chi phthấp nhất giải phaacutep để thực hiện đoacute lagrave trang bị hệ thống asterisk vagrave kết nối với h
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1672
Taacutec Giả Lecirc Quốc Toagraven
16
thống PBX đang tồn tại qua luồng E1 Ngoagravei ra để tăng khả năng liecircn lạc với mạnPSTN vagrave VOIP khaacutec Cocircng Ty coacute thể thực hiện kết nối với nhagrave cung cấp dịch vụvoip
3 Kết nối giữa caacutec server Asterisk
Kết nối giữa caacutec server asterisk
Phương phaacutep trecircn ứng dụng rất hiệu quả cho caacutec cocircng ty nằm ratildei raacutec ở caacutec vtrị địa lyacute khaacutec nhau nhằm giảm chi phiacute đường dagravei Viacute dụ Cocircng ty Mẹ coacute trụ sở đặtại nước Mỹ vagrave caacutec Chi nhaacutenh đặt tại Việt Nam với caacutec địa điểm Thagravenh phố Hồ ChMinh vagrave Hagrave Nội Thocircng qua mạng WAN của Cocircng Ty caacutec cuộc gọi nội bộ giữa caacutec
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1772
Taacutec Giả Lecirc Quốc Toagraven
17
vị triacute khaacutec nhau sẽ lagravem giảm chi phiacute đaacuteng kể Ngữ cảnh nagravey về mặt phaacutep luật khocircncho cuộc gọi từ Mỹ vagraveo Việt Nam
4 Caacutec ứ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 caacutec server kết nối với hệ thống PSTN hay tổng đagravei PBXđể triển khai caacutec ứng dụng như tương taacutec thoại IVR Một viacute dụ cho ứng dụng tươtaacutec thoại đoacute lagrave cho biết kết quả sổ số hay kiểm tra cước cuộc gọi giống dịch v19001260 vậy Ứng dụng VoiceMail thu nhận những tin nhắn thoại từ phiacutea thuecirc bao giống như chức năng hộp thư thoại của Bưu Điện Thagravenh phố triển khai Cograve
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1872
Taacutec Giả Lecirc Quốc Toagraven
18
chức năng điện thoại hội nghị thiết lập cho nhiều maacutey điện thoại cugraveng noacutei chuyệvới nhau
5 Chức năng Phacircn phối cuộc gọi tự động ACD
Phacircn phối cuộc gọi với hagraveng đợi
ACD(Automatic Call Distribution) Phacircn phối cuộc gọi tự động
Đacircy lagrave chức năng ứng dụng cho nhu cầu chăm soacutec khaacutech hagraveng hay nhận phảnhổi từ phiacutea khaacutech hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1972
Taacutec Giả Lecirc Quốc Toagraven
19
Cocircng ty coacute khả năng tiếp nhận cugraveng một luacutec 10 cuộc gọi như thế cuộc gọi th11 gọi đến thigrave hệ thống giải quyết như thế nagraveo Bigravenh thường thigrave sẽ nghe tiacuten hiệ
bận nhưng với chức năng phacircn phối cuộc gọi sẽ đưa thuecirc bao đoacute vagraveo hagraveng đợi đchờ trả lời trong khi chờ trả lời cuộc gọi thuecirc bao coacute thể nghe những bagravei haacutet hay dasterisk cung cấp trong luacutec nagravey nếu 1 trong mười số điện thoại trở về trạng thaacutei rthigrave cuộc gọi đang chờ sẽ được trả lời Giống như chức năng của dịch vụ 1080 ha116 của Bưu Điện Thagravenh Phố vậy
2 CAacuteC KHAacuteI NIỆM TRONG HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Trong chương nagravey sẽ giải thiacutech rotilde caacutec khaacutei niệm cơ bản liecircn quan đến hệ thốnasterisk cung cấp những kiến thức nền tảng những khaacutei niệm cần thiết để thiếttriển khai xacircy dựng hệ thống điện thoại với Asterisk
2 PBX - Private Branch Exchange
PBX hay cograven gọi lagrave PABX - Private Automatic Branch Exchange lagrave hệ thốngtổng đagravei nội bộ được đặt tại nhagrave thuecirc bao từ Automatic ở đacircy muốn noacutei đến lagrave hthống tổng đagravei điện tử tự động nhưng hiện nay đa số lagrave tổng đagravei PBX điện tử tđộng necircn từ trecircn thực sự khocircng cograven cần thiết nữa
PBX với mục tiecircu chia sẻ nhiều thuecirc bao nội bộ gọi ra thế giới becircn ngoagraveithocircng qua một vagravei đường trung kế hay noacutei một caacutech khaacutec PBX lagrave hệ thống trungchuyển giữa caacutec đường dacircy điện thoại becircn ngoagravei từ cocircng ty điện thoại vagrave maacutey điệthoại nội bộ trong tổng đagravei PBX Vigrave thế necircn số lượng maacutey điện thoại nội bộ luocircnhiều hơn số đường dacircy nối đến PBX từ becircn ngoagravei
wwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2072
Taacutec Giả Lecirc Quốc Toagraven
20
PBX thực hiện chuyển mạch cuộc gọi caacutec maacutey điện thoại nội bộ với nhau vvới caacutec maacutey điện thoại becircn ngoagravei thocircng qua đường trung kế Đồng thời thực hiệ
chuyển mạch caacutec cuộc gọi điện thoại từ becircn ngoagravei vagraveo caacutec maacutey điện thoại nội bộNgoagravei việc chuyển mạch cuộc gọi PBX cung cấp nhiều tiacutenh năng sử dụng
cho nhiều mục điacutech khaacutec nhau của khaacutech hagraveng magrave bản thacircn caacutec đường dacircy điệnthoại từ cocircng ty điện thoại kết nối đến khocircng thể thực hiện được caacutec tiacutenh năng ntương taacutec thoại(IVR) Voicemail phacircn phối cuộc gọi tự động(ADC)hellip
Hiện nay với việc phaacutet triển mạnh mẽ của cocircng nghệ VoIP chuacuteng ta cograven coacutethecircm thuật ngữ IP PBX Đacircy lagrave hệ thống chuyển mạch PBX với cocircng nghệ Voip
3 VOIP - Voice Over Internet Protocol
Voice over Internet Protocol (VoIP) lagrave một cocircng nghệ cho pheacutep truyền thoạisử dụng giao thức mạng IP trecircn cơ sở hạ tầng sẵn coacute của mạng internet Voip lagrave mtrong những cocircng nghệ viễn thocircng đang được quan tacircm nhất hiện nay khocircng chỉ đố
với nhagrave khai thaacutec caacutec nhagrave sản xuất magrave cograven cả với người sử dụng dịch vụVoip coacute thể vừa thực hiện mọi loại cuộc gọi như trecircn mạng điện thoại kecircn
truyền thống (PSTN) đồng thời truyền dữ liệu trecircn cơ sở mạng truyền dữ liệu Dcaacutec ưu điểm về giaacute thagravenh dịch vụ vagrave sự tiacutech hợp nhiều loại higravenh dịch vụ necircn voihiện nay được triển khai một caacutec rộng ratildei
Dịch vụ điện thoại voip lagrave dịch vụ ứng dụng giao thức IP nguyecircn tắc củaVoIP bao gồm việc số hoaacute tiacuten hiệu tiếng noacutei thực hiện việc neacuten tiacuten hiệu số chia nhcaacutec goacutei nếu cần vagrave truyền goacutei tin nagravey qua mạng tới nơi nhận caacutec goacutei tin nagravey đượraacutep lại theo đuacuteng thứ tự của bản tin giải matilde tiacuten hiệu tương tự phục hồi lại tiếng n ban đầu
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2172
Taacutec Giả Lecirc Quốc Toagraven
21
Caacutec cuộc gọi trong VoIP dựa trecircn cơ sở sử dụng kết hợp cả chuyển mạchkecircnh vagrave chuyển mạch goacutei Trong mỗi loại chuyển mạch đều coacute ưu nhược điể
riecircng của noacute Trong kỹ thuật chuyển mạch kecircnh giagravenh riecircng cho một kecircnh truyềngiữa hai thiết bị đầu cuối thocircng qua caacutec node chuyển mạch trung gian Trongchuyển mạch kecircnh tốc độ truyền dẫn luocircn luocircn cố định(nghĩa lagrave băng thocircng khocircnđổi) với mạng điện thoại PSTN tốc độ nagravey lagrave 64kbps truyền dẫn trong chuyểmạch kecircnh coacute độ trễ nhỏ
Trong chuyển mạch goacutei caacutec bản tin được chia thagravenh caacutec goacutei nhỏ gọi lagrave caacutec
goacutei nguyecircn tắc hoạt động của noacute lagrave sử dụng hệ thống lưu trữ vagrave chuyển tiếp caacutec gtin trong nuacutet mạng Đối với chuyển mạch goacutei khocircng tồn tại khaacutei niệm kecircnh riecircng băng thocircng khocircng cố định coacute nghĩa lagrave coacute thể thay đổi tốc độ truyền kỹ thuật chuyểmạch goacutei phải chịu độ trễ lớn vigrave trong chuyển mạch goacutei khocircng quy định thời giancho mỗi goacutei dữ liệu tới điacutech mỗi goacutei coacute thể đi bằng nhiều con đường khaacutec nhau đtới điacutech chuyển mạch goacutei thiacutech hợp cho việc truyền dữ liệu vigrave trong mạng truyền dliệu khocircng đogravei hỏi về thời gian thực như thoại để sử dụng ưu điểm của mỗi lo
chuyển mạch trecircn thigrave trong voip kết hợp sử dụng cả hai loại chuyển mạch kecircnh vchuyển mạch goacutei
4 PSTN ndash Public Switched Telephone Network
PSTN lagrave mạng chuyển mạch điện thoại cocircng cộng hay noacutei caacutech khaacutec lagrave mạngkết nối tất cả caacutec hệ thống tổng đagravei chuyển mạch-mạch
Để hiểu rotilde hơn hatildey xem xeacutet mạng PSTN với mạng Internet về khiacutea cạnhchuyển thoại trecircn đoacute Chuyển mạch mạch muốn thực hiện cuộc gọi giữa hai thu bao thigrave hệ thống phải giagravenh riecircng một kecircnh truyền 64kbps để chuyển tải tiacuten hiệthoại trecircn đoacute Cograven cuộc gọi điện thoại trecircn mạng Internet thigrave tiacuten hiệu thoại đượđoacuteng goacutei vagrave chuyển đi trecircn cugraveng kecircnh truyền với nhiều dịch vụ khaacutec Vigrave lẽ đoacute chấlượng cuộc gọi trecircn mạng PSTN bao giờ cũng tốt hơn trecircn mạng Internet nhưng đổ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2272
Taacutec Giả Lecirc Quốc Toagraven
22
lại chi phiacute lại đắc hơn rất nhiều đặc biệt lagrave caacutec cuộc gọi quốc tế necircn phải cần nhắc kỹ khi sử dụng
PSTN được phaacutet triển trecircn chuẩn ITU(International TelecommunicationUnion) cograven mạng Internet được phaacutet triển trecircn chuẩn IETF(Internet EngineeringTask Force) cả hai mạng trecircn đều sử dụng địa chỉ để định tuyến cuộc gọi PSTN sdụng caacutec con số điện thoại để chuyển mạch cuộc gọi giữa caacutec tổng đagravei điện thotrong khi đoacute trecircn mạng Internet địa chỉ IP sẽ được sử dụng để định tuyến caacutec goacutethoại
5 TDM ndash Time Division Multiplexing
Lagrave kỹ thuật gheacutep kecircnh phacircn chia thời gian nhiều tiacuten hiệu coacute thể truyền đồngthời trecircn một đường truyền TDM được sử dụng chuyển thoại trong hệ thống mạPSTN Coacute hai chuẩn gheacutep kecircnh TDM cơ bản lagrave E1 với 30 kecircnh thoại trecircn mộtkhung tốc độ 2Mbps vagrave T1 với 24 kecircnh thoại tốc độ 15Mbps
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2372
Taacutec Giả Lecirc Quốc Toagraven
23
Higravenh Minh họa gheacutep kecircnh phacircn chia theo thời gian
6 Caacutec higravenh thức baacuteo hiệu giao tiếp TDM
1 FXO vagrave FXS
FXO (Foreign Exchange Office) lagrave thiết bị nhận tiacuten hiệu từ tổng đagravei gửi đếnnhư dograveng chuocircng tiacuten hiệu nhấc gaacutec maacutey tiacuten hiệu mời quay số gửi vagrave nhận tiacuten hiệthoạihellip FXO giống như maacutey Fax hay modem dial-up 56k vậy Dugraveng để kết nối vớ
đường dacircy điện thoại
FXS (Foreign Exchange Station) lagrave thiết bị tại nơi cung cấp đường dacircy điệnthoại thiết bị FXS sẽ cung cấp tiacuten hiệu mời quay số(dialtone) dograveng chuocircng hồi acircmchuocircng(ring tone) Trong đường dacircy Analog FXS cung cấp dograveng chuocircng vagrave điện aacutepcho điện thoại hoạt động viacute dụ FXS cung cấp điện aacutep -48VDC đến maacutey điện tho
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2472
Taacutec Giả Lecirc Quốc Toagraven
24
Analog trong suốt thời gian đagravem thoại vagrave cung cấp 90VAC(20hz) để phaacutet điện aacuteprung chuocircng Thiết bị FXS phaacutet cograven thiết bị FXO nhận
Card TDM sử dụng trong hệ thống asterisk thường tiacutech hợp vừa thiết bị FXOvừa lagrave thiết bị FXS(Giống bộ ATA) FXO để kết nối với đường dacircy điện thoại cograveFXS dugraveng để kết nối với maacutey điện thoại analog thocircng thường dugraveng để chuyển mạcuộc gọi TDM qua hệ thống asterisk(Xem thecircm trong phần cấu higravenh cho kecircnhTDM)
Toacutem lại cần nắm
FXS được kết nối với FXO giống với đường dacircy điện thoại nối với maacuteyđiện thoại
FXS cung cấp nguồn cho điện thoại FXO(điện thoại Analog)
Higravenh a) Maacutey điện thoại vai trograve FXO kết nối với FXS(PSTN) Higravenh b) PBXkết nối với FXO vagrave FXS Higravenh c) ATA đoacuteng vai trograve như FXS để kết nối với maacuteyđiện thoại vai trograve FXO
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2572
Taacutec Giả Lecirc Quốc Toagraven
25
2 Baacuteo hiệu Analog giữa đầu cuối vagrave tổng đagravei
Khi chuacuteng ta nhấc mấy điện thoại để gọi thigrave nghe tiacuten hiệu mời quay số kh
cuộc gọi gọi đầu becircn kia bị bận thigrave chuacuteng ta nghe tiacuten hiệu bận(busy tone) caacutec loạtiacuten hiệu như vậy gọi lagrave caacutec tiacuten hiệu baacuteo hiệu analog Caacutec tiacuten hiệu như Mời quay sốtiacuten hiệu bận rung chuocircng trạng thaacutei nhấc gaacutec maacutey Caacutec loại tiacuten hiệu trecircn được trađổi giữa thiết bị FXO vagrave FXS
Coacute nhiều phương thức baacuteo hiệu khaacutec nhau ứng với từng nơi sử dụng vigrave thếtại nơi kết nối với đường dacircy điện thoại cần xem xeacutet họ đang sử dụng phương th
baacuteo hiệu gigrave từ đoacute chuacuteng ta khai thaacutec loại tiacuten hiệu baacuteo hiệu cho thiacutech hợp caacutec phương thức baacuteo hiệu như Loop Start Ground Start Một minh họa cho việc sửdụng sai phương thức baacuteo hiệu lagrave khi chuacuteng ta khai baacuteo phương thức baacuteo hiệu giữhệ thống Asterisk vagrave đường dacircy điện thoại khaacutec nhau thigrave dẫn đến Asterisk sẽ khocircnnhận biết được tiacuten hiệu gaacutec maacutey điều nagravey sẽ lagravem cho asterisk khocircng baacuteo giờ giải tỏđược cuộc gọi để thực hiện cuộc gọi mới
3 Baacuteo hiệu giữa caacutec tổng đagravei
SS7 hệ thống baacuteo hiệu số 7 được phaacutet triển bởi ATampT vagrave ITU lagrave hệ thống baacuteo hiệu chuyển caacutec cuộc gọi giữa caacutec tổng đagravei trong mạng PSTN Trong hệ thốn baacuteo hiệu số 7 tiacuten hiệu chuyển tải trecircn đường trung kế kết nối giữa hai tổng đagravei gồcoacute hai mạch riecircng một cho thoại vagrave một cho baacuteo hiệu như vậy thoại vagrave baacuteo hiệu cthể chuyển trecircn hai kecircnh vật lyacute khaacutec nhau
7 Baacuteo Hiệu trecircn mạng điện thoại VoIP
1 SIP Session Initiation Prorocol
Sip lagrave giao thức Internet dagravenh cho baacuteo hiệu VoIP được phaacutet triển bởi IETFcung cấp vagravei chức năng giống hệ thống baacuteo hiệu số 7 nhưng dựa trecircn nền IP Mộchức năng giống baacuteo hiệu số 7 đoacute lagrave baacuteo hiệu vagrave thoại chuyển tải trecircn hai kecircnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2672
Taacutec Giả Lecirc Quốc Toagraven
26
riecircng Giao thức SIP thực hiện chức năng thiết lập vagrave baacuteo hiệu cuộc gọi khi noacutei đế baacuteo hiệu cuộc gọi lagrave chỉ định caacutec tiacuten hiệu baacuteo hiệu như tiacuten hiệu mời quay số tiacutehiệu bậnhellip
2 Proxy server
Mặc dầu hai thiết bị SIP coacute thể liecircn lạc trực tiếp với nhau để khởi tạo cuộgọi nhưng trong giao thức SIP cograven coacute chức năng Proxy để linh hoạt hơn trong thiếlập cuộc gọi Proxy Server sẽ lagravem nhiệm vụ ghi nhận tất cả caacutec số điện thoại đư phiacutea client đăng kyacute đến qua bản tin ldquoRegistrationrdquo Khi một client khaacutec thực hiện
cuộc gọi thigrave thực sự Client đoacute khocircng biết số điện thoại cần gọi đang ở đacircu necircn thocircnqua Proxy server để tigravem kiếm thiết lập cuộc gọi
+
Higravenh Đăng kyacute từ Client đến SIP Proxy Với Giao thức SIP đường baacuteo hiệu vagravethoại riecircng
3 RTP vaacute NAT
Caacutec cuộc gọi trecircn Internet với giao thức SIP được chia thagravenh caacutec goacutei thoại vagraveđược chuyển qua giao thức RTP(Real Time Protocol) RTP lagrave giao thức khocircng chỉthực hiện chuyển caacutec goacutei thoại qua Internet magrave cograven coacute cả video nữa Một cuộc gọ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2772
Taacutec Giả Lecirc Quốc Toagraven
27
thocircng thường coacute hai hướng thocircng tin lagrave nhận vagrave phaacutet RTP lagravem việc chuyển caacutec goacutedữ liệu thoại cũng trecircn hai hướng
NAT Network Address Translators lagrave một trở ngại lớn trong giao thức RTPMạng sử dụng NAT lagrave một mạng chia sẻ nhiều địa chỉ IP nội bộ với một địa chỉ ICocircng cộng để kết nối với thế giới becircn ngoagravei NAT dugraveng để chia sẻ nhiều maacutey tiacutentrong mạng LAN nội bộ sử dụng được Internet nhưng cũng chiacutenh vigrave thế magrave caacutec maacutetiacutenh nội bộ gặp khoacute khăn trong việc thực hiện cuộc gọi VoIP qua Internet Đoacute chiacutenhlagrave vấn để trở ngại khi truyền thoại qua giao thức RTP
Higravenh Minh họa hoạt động của NAT
Trong Giao thức RTP như chuacuteng ta đatilde biết đoacute lagrave thoại được chuyển trecircn haiđường khaacutec nhau lagrave đường phaacutet vagrave đường thu Vấn đề NAT nằm ở chỗ tiacuten hiệthoại từ becircn ngoagravei vagraveo becircn trong qua giao thức RTP khocircng thực hiện được cograven chiềungược lại thigrave thực hiện tốt Hay noacutei caacutech khaacutec vấn đề NAT lagravem cho caacutec cuộc gọi t
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2872
Taacutec Giả Lecirc Quốc Toagraven
28
Internet đagravem thoại vagraveo caacutec maacutey nội bộ qua NAT thigrave khocircng nghe được cograven trongtrường hợp caacutec cuộc gọi từ caacutec maacutey nội bộ ra caacutec maacutey internet thigrave nghe tốt
Vấn đề NAT trecircn được giải quyết trong Asterisk bằng việc khai baacuteo thocircng số NAT=yes trong cấu higravenh kecircnh giao thức SIP
4 IAX ndash Inter Asterisk eXchange
IAX lagrave giao thức baacuteo hiệu Voip được phaacutet triển bởi taacutec giả của phần mềmAsterisk để khắc phục những hạn chế trong giao thức SIP Khocircng giống như giathức SIP chuyển tải thoại vagrave baacuteo hiệu trecircn hai kecircnh khaacutec nhau (out of band) IAXchuyển tải thoại vagrave baacuteo hiệu trecircn cugraveng một kecircnh(in band) IAX giải quyết được vấđề NAT đề cập trecircn phần giao thức SIP Mặc khaacutec IAX lagrave giao thức tối ưu trongviệc sử dụng băng thocircng cho pheacutep nhiều goacutei dữ liệu thoại trecircn cugraveng một IP headecơ chế chuyển tải nhiều cuộc gọi trecircn cugraveng một goacutei IP được gọi lagrave trung kế(Trunk)
Coacute thể giải thiacutech thecircm cơ chế trung kế như sau Giả sử Tocirci cần gửi 5 bức thtới người bạn của Tocirci Tocirci sẽ coacute hai higravenh thức để thực hiện thứ nhất lagrave mỗi bức tTocirci bỏ vagraveo một phong bigrave vậy tổng cộng tocirci phải sử dụng 5 phong bigrave để gửi đi 5 bứthư Caacutech thứ hai lagrave Tocirci bỏ 5 bức thư vagraveo 1 phong bigrave vagrave gửi đi vậy tổng cộng Tocircchỉ tốn 1 phong bigrave Qua phacircn tiacutech trecircn rotilde ragraveng việc 5 bức thư vagraveo một phong bigrave sẽtiết kiệm hơn so với 5 bức thư với 5 phong biacute Cơ chế trecircn cũng giống như nhiềcuộc gọi được đoacuteng thagravenh goacutei vagrave chuyển đi trecircn đường trung kế
Toacutem lại IAX lagrave giao thức dagravenh cho VoIP mới nhất cho đến thời điểm nagravey vớinhiều ưu điểm hấp dẫn như
+ Tối thiểu sử dụng băng thocircng
+ Trong suốt với NAT
+ Hiệu quả với cơ chế trung kế
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2972
Taacutec Giả Lecirc Quốc Toagraven
29
8 Thiết Bị VoIP
1 Voip Phone
Đacircy lagrave thiết bị phần cứng kết nối với mạng VoIP giống như maacutey điện thoại đ bagraven thocircng thường nhưng dagravenh cho VoIP cần phải thực hiện cấu higravenh trước khi sửdụng
Lưu yacute một số tiacutenh năng khi thực hiện mua thiết bị điện thoại VoIP
+ Low bandwidth hỗ trợ Codec nagraveo G729 lagrave tốt nhất hiện nay
+ Web Interface Phải coacute giao tiếp thiết lập cấu higravenh thacircn thiện dễ sử dụng
+ Audio Interface Coacute speaker phone hay khocircng
Giaacute thagravenh của điện thoại voip IP đắc hơn điện thoại thocircng thường giaacute khoảntrecircn dưới 100$ một caacutei
Higravenh Maacutey Điện Thoại VoIP
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3072
Taacutec Giả Lecirc Quốc Toagraven
30
2 Softphone
Lagrave một phần mềm được cagravei trecircn maacutey tiacutenh thực hiện tất cả caacutec chức năng giốn
như thiết bị điện thoại Voip cần lưu yacute khi sử dụng softphone lagrave maacutey tiacutenh phải ccard acircm thanh headphone vagrave firewall khocircng bị khoacutea
Sử dụng softphone với hệ thống Asterisk necircn dugraveng softphone với cocircng nghệgiao thức mới dagravenh cho Asterisk đoacute lagrave IAX
Higravenh Điện Thoại Softphone
3 Card giao tiếp với PSTN
Muốn cho pheacutep caacutec maacutey điện thoại nội bộ trong hệ thống Asterisk kết nối vthực hiện cuộc gọi với mạng PSTN chuacuteng ta cần phải coacute thiết bị phần cứng tươthiacutech Thiết bị phần cứng sử dụng cho hệ thống Asterisk do chiacutenh taacutec giả lập cocircng
Digium phacircn phối đacircy cũng chiacutenh lagrave yacute tưởng lớn trong việc phacircn phối phần mềmAsterisk lagrave hệ thống nguồn mở sử dụng miễn phiacute
Thiết bị phần cứng thường kyacute hiệu bắt đầu bằng cụm từ TDMxyB trong đoacute lagrave số lượng port FXS y lagrave số lượng port FXO giaacute trị tối đa của x vagrave y lagrave 4 viacute dụcard TDM22B coacute nghĩa lagrave coacute 2 fort FXS vagrave 2 port FXO
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3172
Taacutec Giả Lecirc Quốc Toagraven
31
Higravenh Card TDM22B gồm 4 port 2 FXS vagrave 2 FXO
4 ATA Analog Telephone Adaptors
ATA lagrave thiết bị kết nối với điện thoại Analog thocircng thường đến mạng VoIPmột thiết bị ATA gồm coacute hai loại port RJ-11 để kết nối với maacutey điện thoại analo
thocircng thường cograven RJ-45 để kết nối với mạng VoIP
ATA thực sự lagrave thiết bị FXS chuyển đổi tiacuten hiệu Analog sang tiacuten hiệu số sửdụng cho mạng VoIP để tận dụng maacutey điện thoại Analog necircn trang bị thiết bị ATAthay vigrave phải trang bị điện thoại VoIP
Thiết bị ATA sử dụng với giao thức IAX được Digium phacircn phối lagrave thiết bịATA được sử dụng rộng ratildei với Asterisk coacute tecircn gọi lagrave IAXy
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3272
Taacutec Giả Lecirc Quốc Toagraven
32
Higravenh Thiết bị ATA
9 Codecs
Thuật Toaacuten codecs(CompressorDe-compressor) lagrave một tập caacutec quy luật đượcsử dụng để chuyển đổi caacutec tiacuten hiệu thoại dạng Analog sang tiacuten hiệu số vagrave ngược lạ
Coacute nhiều thuật toaacuten codec để thực hiện chuyển đổi tiacuten hiệu analog sang tiacuten
hiệu số dạng nhị phacircn (01) như G711 GSM G729hellipỨng với mỗi thuật toaacuten coacutenhững ưu điểm riecircng đặc biệt lagrave việc tối ưu sử dụng băng thocircng trecircn đường truyềMục tiecircu cuối cugraveng lagrave caacutec thuật toaacuten đưa ra phải đảm bảo chất lượng cuộc gọi nhvagrave tiết kiệm băng thocircng nhất
G729 lagrave thuật toaacuten codec tốt nhất hiện nay trong hệ thống VoIP Với hệthống Asterisk để sử dụng thuật toaacuten nagravey cần phải mua bản quyền sử dụng vigrave đacircy
codec khocircng miễn phiacute sử dụng
10 QoS ndash Quality of Service
Caacutec yếu tố ảnh hưởng đến chất lượng của dịch vụ đối với VoIP đoacute lagrave caacuteyếu ảnh hưởng đến chất lượng tiacuten hiệu thoại
1 Độ trễ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3372
Taacutec Giả Lecirc Quốc Toagraven
33
Thoại lagrave dịch vụ mang tiacutenh thời gian thực rất cao vigrave thế trễ lagrave yếu tố ảnhhưởng rất lớn đến chất lượng dịch vụ Trễ được định nghĩa lagrave khoảng thời gian tiacute
từ luacutec tiacuten hiệu thoại đi từ miệng người noacutei tới tai người nghe Trễ lagrave yếu tố khocircnthể traacutenh khỏi độ trễ đối với mạng điện thoại truyền thống (mạng PSTN) khoảng50ms đến 70ms theo khiến nghị của ITU-T để đảm bảo chất lượng cho hệ thốVoIP thigrave độ trễ từ đầu phaacutet tới đầu thu hoặc ngược lại khocircng được vượt quaacute 150mkhi magrave độ trễ vượt quaacute 400ms đến 500ms thigrave khocircng thể chấp nhận được
Caacutec nguyecircn nhacircn gacircy ra trễ bao gồm Trễ trecircn mạng lưới trễ trecircn bộ mả hoacutea
giải matilde trễ trong quaacute trigravenh đoacuteng goacutei trễ bộ đệm trễ xử lyacute tiếng noacuteihellip2 Độ trượt(Jitter)
Nguyecircn nhacircn gacircy ra trượt lagrave goacutei tiacuten hiệu thoại trong quaacute trigravenh truyền từnguồn đến điacutech sẽ gặp phải những điều kiện khaacutec nhau trecircn mạng lưới do đoacute thườđến điacutech với những khoảng trễ khaacutec nhau Đacircy lagrave tiacutenh khocircng đồng nhất của trễ Mnguyecircn nhacircn khaacutec của trượt đối với ứng dụng PC to PC lagrave do việc sử dụng hệ điề
hagravenh phi thời gian thực caacutec goacutei tin thoại phải đợi hệ điều hagravenh xử lyacute trong nhữnkhoảng thời gian khaacutec nhau khi magrave hệ điều hagravenh đang phải xử lyacute đối với caacutec ứndụng khaacutec
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3472
Taacutec Giả Lecirc Quốc Toagraven
34
Higravenh Nguyecircn nhacircn xảy ra trượt
Để loại bỏ tiacutenh khocircng đồng nhất của trễ người ta thiết kế caacutec bộ đệm t(Jitter Buffer) tại nơi đến của caacutec goacutei tin caacutec goacutei tin đến với caacutec khoảng caacutech khaacutecnhau về thời gian được lưu tại bộ đệm rồi phaacutet khỏi bộ đệm với khoảng trễ n
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3572
Taacutec Giả Lecirc Quốc Toagraven
35
nhau Khi bộ đếm coacute kiacutech thước cagraveng lớn thigrave khả năng loại bỏ tiacutenh khocircng đồng nhấcagraveng lớn tuy nhiecircn việc sử dụng bộ đệm sẽ gacircy ra hiện tượng trễ trong ứng dụnthoại do đoacute cần coacute bagravei toaacuten cacircn đối giữa độ trễ vagrave độ trượt
Ngoagravei 2 nguyecircn nhacircn trecircn cograven một số nguyecircn nhacircn nữa ảnh hưởng đến chấtlượng thoại như độ mất goacutei giới hạn băng thocircng tiếng vọng
3 CAgraveI ĐẶT ASTERISK
1 Cagravei đặt Asterisk
1 Download vagrave bung neacuten
Để cagravei đặt Asterisk đầu tiecircn chuacuteng ta cần phải cagravei đặt hệ điều hagravenh linux trecircnmaacutey tiacutenh của migravenh Coacute thể cagravei hệ điều hagravenh Linux Fedora CentOS Redhat hoặcDebian Caacutec goacutei phần mềm phụ thuộc phải coacute trong hệ điều hagravenh Linux trước khcagravei Asterisk bao gồm
bison
gcc
kernel-source
libtermcap-devel
ncurses-devel
openssl096b
openssl-devel
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3672
Taacutec Giả Lecirc Quốc Toagraven
36
Sau khi hoagraven tất caacutec bước trecircn chuacuteng ta tiến hagravenh download phần mềmasterisk với phiecircn bản mới nhất
cd usrsrc
wgetftpftpdigiumcompubasteriskasterisk-140targz
wgetftpftpdigiumcompubasteriskasterisk-addons-140targz
wgetftpftpdigiumcompubasteriskasterisk-sounds-140targz
wgethttpftpdigiumcompubzaptelzaptel-140targz
wgethttpftpdigiumcompublibprilibpri-140targz
Việc download coacute thể nhanh hay chậm tugravey vagraveo tốc độ trecircn đường internet saukhi download hoagraven thagravenh chuacuteng ta tiến hagravenh bung neacuten caacutec goacutei ra thư mục chỉ định
tar ndashxzvf asterisk-140targz
tar ndashxzvf asterisk-addons-140targz
tar ndashxzvf asterisk-sounds-140targz
tar ndashxzvf zaptel-140targz
tar ndashxzvf libpri-140targz
Giải neacuten xong chuacuteng ta nhớ thực hiện lệnh
ln ndashs usrsrcasterisk-140 usrsrcasterisk lệnh nagravey để bảo đảm goacuteildquoaddonsrdquo được biecircn dịch đuacuteng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3772
Taacutec Giả Lecirc Quốc Toagraven
37
Bacircy giờ tới phần chuacuteng ta biecircn dịch caacutec goacutei đatilde giải neacuten ở trecircn trước tiecircn lagrave goacuteizaptel kế đến lagrave libpri sau cugraveng lagrave goacutei Asterisk
2 Cagravei đặt goacutei Zaptel
Goacutei zaptel sẽ chứa tại thư mục usrsrczaptel Đaacutenh lệnh như dưới đacircy để cagraveđặt
cd usrsrczaptel
make clean make install
Lệnh nagravey thực hiện khoảng 2 phuacutet tugravey vagraveo tốc độ maacutey tiacutenh cagravei đặt sau khicagravei đặt xong sẽ trở lại dấu nhắc lệnh vagrave hiển thị một loạt caacutec thocircng baacuteo trong đoacute một số bản tin lỗi magrave chủ yếu lagrave yecircu cầu cagravei đặt caacutec goacutei phụ thuộc đatilde liệt kecirc ở trecircnếu caacutec goacutei trecircn chưa được cagravei đặt
Goacutei zaptel nagravey chứa caacutec driver cho caacutec phần cứng kết giao tiếp với asterisk
do Digium phacircn phối vagrave một số thư viện cho việc coacute thực hiện giao tiếp với phầcứng hay khocircng
Để Asterisk coacute thể chạy cugraveng với khởi động của maacutey tiacutenh chuacuteng ta cần thựchiện lệnh
make config
Lệnh nagravey sẽ tạo ra script chegraven module zaptel vagraveo kernel vagrave chạy ztconfig vagraveoluacutec khởi động maacutey Trong Redhat script nagravey sẽ được cheacutep vagraveo etcinitd chạy ở mức 3
3 Cagravei đặt goacutei libpri
Kế đến chuacuteng ta biecircn dịch goacutei libpri tại thư mục usrsrclibpri bằng lệnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3972
Taacutec Giả Lecirc Quốc Toagraven
39
make config
3 Cagravei đặt TrixBox
1 Giới thiệu
TRIXBOX được phaacutet triển từ nhacircn của ứng dụng Asterisk được tổng hợp từmột số thagravenh phần chiacutenh được phaacutet triển bởi cộng đồng phaacutet triển nguồn mAsterisk dưới bản quyền GPL Trixbox bao gồm những thagravenh phần chiacutenh cho việcấu higravenh ứng dụng thống kecirc tigravenh trạng hoạt động hệ thống lưu trữ dự phograveng v
nhacircn lagrave hệ điều hagravenh CentOS một phiecircn bản khaacutec của Redhat tất cả kết hợp vớnhau tạo thagravenh một goacutei hoagraven chỉnh Khi cagravei goacutei nagravey vagraveo maacutey tiacutenh thigrave coacute thể sử dụngnhư một tổng đagravei PBX
Caacutec thagravenh phần chiacutenh trong goacutei TRIXBOX lagrave
Asterisk PBX Thagravenh phần chiacutenh của hệ thống Trixbox
CentOS Một phiecircn bản Linux khaacutec của Redhat hoagraven toagraven miển phiacute sửdụng Lagrave nhacircn chiacutenh cho Trixbox
SugarCRM Hệ thống quan hệ khaacutech hagraveng CRM
A2Billing ndash Lagrave thagravenh phần dagravenh cho việc xacircy dựng hệ thống điện thoạitrả trước hay cograven gọi lagrave điện thọai thẻ (Calling Card)
Flash Operator Panel Bảng điều khiển giaacutem saacutet tigravenh trạng hoạt độngcủa caacutec maacutey điện thoại trong hệ thống
Web MeetMe Control Quản lyacute triển khai hệ thống điện thoại hội nghị
FreePBX Đacircy lagrave cocircng cụ với giao diện web dagravenh cho việc cấu higravenh hệthống Asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4072
Taacutec Giả Lecirc Quốc Toagraven
40
Hệ thống Lưu trữ dự phograveng vagrave thống kecirc Lagrave thagravenh phần của TRIXBOXcung cấp caacutec cocircng cụ cần thiết cho việc bảo trigrave bảo dưỡng hệ thống
Hệ thống Apache-Php-Mysql dagravenh cho giải phaacutep Webserver của hệthống
2 DOWNLOAD VAgrave LẮP ĐẶT TRIXBOX
Địa chỉ downloadhttpsourceforgenetprojectsasteriskathome
Khi download xong file Trixboxiso Hatildey dugraveng file nagravey Burn vagraveo CD ( xinlưu yacute lagrave dugraveng Nero hoặc chương trigravenh cheacutep đĩa ưa thiacutech rồi burn vagraveo cd_romchứ khocircng phải cheacutep file đoacute vagraveo cd_rom)
Sau khi coacute CD Hatildey boot từ CD nagravey để cagravei đặt trixbox
Chuacute yacute dữ liệu trecircn đĩa cứng sẽ bị xoacutea sạch để cagravei đặt trixbox Nếu trongđĩa cứng cograven dữ liệu hatildey backup tất cả trước khi tiến hagravenh lắp đặt trixbox
Tới đacircy lần lượt caacutec magraven higravenh chỉ dẫn sẽ hiện ra vagrave cứ theo hướng dẫn magrave cagraveđặt Sau khi cagravei đặt xong chuacuteng ta dugraveng Username root vagrave password password đểđăng nhập hệ thống
3 Cấu higravenh địa chỉ IP cho card mạng
Thiết lập địa chỉ IP bằng caacutech gotilde lệnh
netconfig
Chọn OK để thiếp lập
Nếu trong mạng coacute hỗ trợ DHCP thigrave hatildey chọn mục nagravey cograven nếu khocircng hatildeynhập địa chỉ IP tĩnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4172
Taacutec Giả Lecirc Quốc Toagraven
41
IP 19216801
Netmask 2552552550
Gateway 19216893254 ngotilde ra becircn ngoagravei
Primary nameserver 19216893200 thiết lập nếu coacute
Chọn OK để chấp nhận caacutec thiết lập trecircn
Sau khi hoagraven tất hatildey lagravem cho thiết lập coacute hiệu lực bằng caacutech reset lại
maacutey tiacutenh hoặc dugraveng lệnh sau
Service network stop
Service network start
Đến đacircy xem như cagravei đặt hoagraven tất bacircy giờ để cấu higravenh được Asterisk chuacutengta vagraveo một magravey khaacutec vagrave mở Internet Explorer hoặc một trigravenh duyệt web bất kỳ
nhập vagraveohttp19216801đatilde cấu higravenh ở trecircn vagrave tiến hagravenh cấu higravenh hệ thốngvới tagravei khoảng username maint vagrave password password
4 Tổ Chức Thư Mục của Asterisk
Asterisk sử dụng nhiều thư mục trecircn hệ thống linux để quản lyacute caacutec khiacutea cạnkhaacutec nhau của hệ thống như nghi nhận bản tin thoại caacutec bản tin nhắc thoại hoặcaacutec tập tin cấu higravenh Phần nagravey sẽ trigravenh bagravey caacutec thư mục chiacutenh yếu được tạo ra tronquaacute trigravenh lắp đặt vagrave được cấu higravenh trong tập tin Asteriskconf
1 etcasterisk
Thư mục etcasterisk chứa tất cả caacutec tập tin cấu higravenh của hệ thốngAsterisk ngoại trừ tập tin Zaptelconf được đặt tại thư mục etc Phần cứnZaptel đầu tiecircn được phaacutet triển bởi Jim Dixon thuộc nhoacutem Zapata Telephony
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4272
Taacutec Giả Lecirc Quốc Toagraven
42
Group để giao tiếp giữa maacutey tiacutenh với mạng điện thoại magrave Asterisk lại sửdụng phần cứng nagravey với lyacute do đoacute magrave file cấu higravenh zaptelconf khocircng nằmtrong thư mục etcasterisk
2 usrlibasteriskmodules
Thư mục usrlibasteriskmodules chứa tất cả caacutec module cần thiết đểasterisk hoạt động Becircn trong thư mục lagrave caacutec ứng dụng khaacutec nhau caacutec codeccaacutec định dạng acircm thanh(format) vagrave caacutec kecircnh thocircng tin(channel) Theo mặc địnhAsterisk sẽ nạp tất cả caacutec module vagraveo luacutec khởi động Chuacuteng ta coacute thể khocircng cho
nạp một module bất kỳ bằng caacutech khocircng khai baacuteo sử dụng trong tập tinmodulesconf Lưu yacute khi khocircng cho nạp module thigrave phải biết chắc module đoacutekhocircng lagravem ảnh hưởng hoạt động của asterisk nếu khocircng lỗi sẽ xuất hiện
3 varlibasterisk
Thư mục varlibasterisk chứa tập tin astdb vagrave một số thư mục con Tập tinastdb định vị thocircng tin cơ sở dữ liệu của Asterisk giống như Microsoft WindowsRegistry
Caacutec thư mục con của thư mục varlibasterisk bao gồm
agi-bin
Thư mục agi-bin chứa caacutec script của người dugraveng magrave Asterisk coacute thểđịnh vị sử dụng qua caacutec ứng dụng AGI
AGI lagrave phần giao tiếp với ngocircn ngữ lập trigravenh script để thực hiện mộtsố cocircng việc của Asterisk từ becircn ngoagravei
firmware
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4372
Taacutec Giả Lecirc Quốc Toagraven
43
Thư mục firmware chứa một số phần dẻo(firmware) cho caacutec thiết bịkhaacutec nhau tương thiacutech với Asterisk Hiện tại chỉ coacute thư mục con iax chứa
firmware cho thiếy bị IAXy của Digium IAXy lagrave thiết bị ATA sử dụng giaothức IAX
images
Caacutec ứng dụng thocircng tin với caacutec kecircnh hỗ trợ ảnh images thigrave sử dụng thư mụcnagravey Nhưng hiện tại caacutec kecircnh thocircng tin hầu như khocircng hỗ trợ truyền ảnh images necircthư mục nagravey cũng hiếm khi được sử dụng Tuy nhiecircn nếu caacutec thiết bị coacute hỗ trợ ththư mục nagravey trở necircn hiệu dụng
keys
Asterisk coacute thể sử dụng hệ thống khoaacute publicprivate để xaacutec minh caacutec kết nốgiữa caacutec server Asterisk thocircng qua chữ kyacute điện tử RSA Nếu đặt một khoaacute publicvagraveo thư mục keys thigrave kết nối của server đầu becircn kia coacute thể được xaacutec minh bằn
kecircnh thocircng tin coacute hỗ trợ đối với Asterisk thigrave kecircnh giao thức IAX hỗ trợ loại xaacutecminh nagravey Một khoaacute private khocircng bao giờ cocircng bố chuacuteng ta chỉ cocircng bố khoaacute public đến với server cần nối đến sau đoacute sẽ được xaacutec minh với khoaacute private nagravey Chai khoaacute public vagrave private được lưu với đuocirci pub vagrave key đặt tại thư mục keys
mohmp3
Khi cấu higravenh Asterisk sử dụng tiacutenh năng Music on Hold tiacutenh năng hoạt độngsẽ thực hiện lấy caacutec tập tin mp3 tại thư mục mohmp3 Tập tin định dạng theo chucủa Asterisk necircn khi sử dụng caacutec file Mp3 thocircng thường cần coacute sự chuyển đổi thiacutechợp trước khi cheacutep vagraveo thư mục trecircn để sử dụng
sounds
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4472
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4572
Taacutec Giả Lecirc Quốc Toagraven
45
Thư mục tmp sử dụng để lưu trữ những thocircng tin tạm để luocircn bảo đảm khocircnxảy ra tigravenh trạng đọc vagrave viết tập tin cugraveng một luacutec Khi yecircu cầu xử lyacute tập tin chuacuteng thao taacutec trecircn thư mục tmp trước khi lưu vagraveo tập tin điacutech
Tất cả caacutec lời nhắc thoại từ phiacutea người sử dụng vagrave caacutec lời nhắc thoại sử dụ
cho thao taacutec hộp voicemail đều được chứa trong thư mục voicemail Một hộp thưthoại được tạo ra ứng với một maacutey nội bộ trong tập tin voicemailconf sẽ được tra một thư mục con tương ứng cho maacutey nội bộ đoacute tại thư mục voicemail
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4672
Taacutec Giả Lecirc Quốc Toagraven
46
5 varrun
Thư mục varrun chứa thocircng tin process ID(pid) cho tất cả caacutec tiến trigravenh đang
hoạt động trong hệ thống bao gồm cả Asterisk Lưu yacute lagrave ứng với mỗi hệ điều hagravethư mục varrun coacute thể khaacutec
6 varlogasterisk
Thư mục varlogasterisk lagrave nơi Asterisk chứa tất cả caacutec tập tin nhật kyacute haycograven gọi lagrave tập tin log Chuacuteng ta coacute thể tuỳ biến caacutec loại thocircng tin được lưu trong caacutec
tập tin log khaacutec nhau qua tập tin cấu higravenh loggerconf đặt tại thư mục etcasterisk7 varlogasteriskcdr-csv
Thư mục varlogasteriskcdr-csv được sử dụng để lưu chi tiết cuộc gọi CDRThocircng tin mặc định về chi tiết thocircng tin cuộc gọi lưu trữ trong tập tin MasterCVSnhưng thường thigrave ứng với mỗi matilde accountcode sẽ tạo một thư mục riecircng để lưu ctiết cuộc gọi cho maacutey đoacute
5 Một số lệnh thao taacutec trecircn hệ thống asterisk
Asterisk coacute hai thagravenh phần được xacircy dụng tiacutech hợp với nhau vagrave chạy songsong nhau
Asterisk Server bigravenh thường chạy ở chế độ nền(background) giống caacutec sevicestrong window
Asterisk Client ở chế độ dograveng lệnh CLI giao tiếp với Asterisk Server thực thicaacutec lệnh để kiểm tra hay xem caacutec thocircng tin của server
Để Chạy vagrave dừng Asterisk ở chế độ nền chuacuteng ta thực hiện lệnh sau
etcinitdasterisk (start|stop)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4772
Taacutec Giả Lecirc Quốc Toagraven
47
Một khi Asterisk đatilde chạy chuacuteng ta coacute thể chuyển qua chế độ CLI từ dấu nhắlệnh của linux như sau
asterisk ndashr
Khi vagraveo chế độ lệnh nếu muốn thoaacutet về lại dấu nhắc linux chuacuteng ta dugraveng lệnh
CLIgtexit
Caacutec lệnh cơ bản thực hiện tại CLIgt
Bất cứ khi nagraveo chỉnh sửa caacutec tập tin cấu higravenh chuacuteng ta đều cần phải nạp lại đcaacutec thay đổi coacute hiệu lực điều đoacute thực hiện bằng lệnh
CLIgtreload
Bậc chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 debug
CLIgt SIP debug
Tắt chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 no debug
CLIgt SIP no debug
Hiển thị caacutec trạng thaacutei thocircng tin của users peers vagravechannels của SIP hoặc IAX2
CLIgt sip show users
CLIgt sip show peers
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4872
Taacutec Giả Lecirc Quốc Toagraven
48
CLIgt sip show channels
CLIgt iax2 show peers
CLIgt iax2 show users
CLIgt iax2 show channels
Đến thời điểm nagravey coacute thể noacutei chuacuteng ta đatilde hoagraven thagravenh cagravei đặt hệ thốngAsterisk cagravei đặt xong mới lagrave bước mở đầu để cho hệ thống Asterisk hoạt động vtừng ứng dụng cụ thể chuacuteng sẽ tiếp tục thực hiện caacutec giai đoạn được xem lagrave qutrọng nhất trong việc triển khai hệ thống Asterisk đoacute lagrave giai đoạn cấu higravenh hệ thốnlecircn kế hoạch Diaplan chương cograven lại đều nhắm đến mục tiecircu nagravey
4 CẤU HIgraveNH HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Sau khi hoagraven tất phần cagravei đặt hệ thống asterisk một bước quan trọng tiếp thelagrave cấu higravenh hệ thống coacute thể noacutei đacircy lagrave bước quan trọng nhất của việc khiển khai thống đến với từng ứng dụng cụ thể Trong chương nagravey xin giới thiệu caacutei nhigraven đầtiecircn về việc cấu higravenh trước khi đi sacircu hơn ở những chương sau những gigrave giới thiệ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4972
Taacutec Giả Lecirc Quốc Toagraven
49
trong chương nagravey lagrave nền moacuteng cơ bản nhưng đủ để hiểu lagravem thế nagraveo hệ thống coacute thoạt động được nội dung chiacutenh bao gồm
+ Thao taacutec cấu higravenh trecircn hệ thống tập tin của asterisk
+ Caacutech cagravei đặt phần mềm softphone trecircn cocircng nghệ sip
+ Cấu higravenh cho hai maacutey softphone liecircn lạc với nhau
+ Cấu higravenh phaacutet thocircng điệp
+ Quay số qua Sip vagrave mạng PSTN
2 Tập Tin cấu higravenh
Tất cả caacutec file cấu higravenh cho hệ thống asterisk đều nằm tại thư mục etcasterisngoại trừ file zaptelconf cấu higravenh cho phần cứng TDM nằm tại thư mục etc caacutecthức cấu higravenh giống như tập tin ini của window vậy Caacutec nội dung sau dấu chấm phảy lagrave nội dung chuacute thiacutech trong file cấu higravenh giống như chuacute thiacutech trong ngocircn ngữ
lập trigravenh C lagrave dấu Tất cả caacutec khoảng trắng trong tập tin đều được bỏ qua khocircng yacute nghĩa trong file cấu higravenh
Trong file cấu higravenh cograven coacute hai pheacutep gaacuten rất thường xuyecircn được sử dụng pheacutep gaacuten ldquo=rdquo lagrave dugraveng cho việc gaacuten caacutec biến cograven pheacutep gaacuten ldquo=gtrdquo dugraveng cho việc gaacutencaacutec đối tượng sau đacircy lagrave một viacute dụ cho file cấu higravenh
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5072
Taacutec Giả Lecirc Quốc Toagraven
50
Đacircy lagrave caacutec dograveng chuacute thiacutech
[section]
Key=value gaacuten giaacute trị cho biến
[section2]
Key=gtobject Gaacuten giaacute trị cho đối tượng
Cuacute phaacutep thực hiện giống nhau cho tất cả caacutec file cấu higravenh nhưng coacute vagravei kiểukhaacutec nhau cho mỗi file cầu higravenh dựa vagraveo thức caacutech hoạt động của chuacuteng
3 Caacutec kiểu ảnh hưởng trong tập cấu higravenh
Coacute ba kiểu caacutech thức hoạt động của tập tin cấu higravenh như sau
Kiểu Caacutech hoạt động File cầu higravenh Viacute dụ
S i m p l eGroup
Coacute hiệu lực trecircntừng dograveng trongfile
Extensionconf
Exten=gt4001dial(sip400)
O p t i o ninheritance
Dograveng khai baacuteosau thừa kếnhững thocircng sốkhai baacuteo trước
Zapataconf [channels]
Context=From_PSTN
Signalling=fxs_ks
Group=1Channel=gt1
C o m p l e xEntity
Mỗi entity nhậnmột ngữ cảnh
sipconf
iaxconf
[cisco]
Type=friend
Secret=12345
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5172
Taacutec Giả Lecirc Quốc Toagraven
51
Host=192168165
Context=NoiBo
[xten]
Type=friend
Secret=6789
Host=dynamic
Context=NoiBo
1 Simple Group
Đacircy lagrave kiểu cấu higravenh đơn giản nhất thường sử dụng trong caacutec fileextentionconf meetmeconf voicemailconf tương ứng với mỗi dograveng khai baacuteo lagravemột đối tượng coacute yacute nghĩa trecircn dograveng đoacute
Viacute dụ
Extentionconf [section]
object1=gt op1op2op3
object2=gt op1bop2bop3b
Trong viacute dụ trecircn mỗi dograveng tương ứng với caacutec toaacuten tử khaacutec nhau object1 coacute caacutectoaacuten từ op1 op2 op3 trong khi đoacute object2 lại coacute caacutec toaacuten từ op1b op2b op3b
2 Option inheritance
Đacircy lagrave cấu higravenh kiểu thừa kế thường được cấu higravenh trong caacutec file zapataconfagentconf với kiểu cấu higravenh nagravey thigrave caacutec dograveng phiacutea dưới coacute thể thừa kế caacutec thocircng sdograveng phiacutea trecircn tương ứng với mỗi section caacutec dograveng phiacutea dưới coacute thể thay đổi caacutecthocircng số cho tươngứng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5272
Taacutec Giả Lecirc Quốc Toagraven
52
Viacute dụ
Extentionconf
[section]
Op1=bas
Op2=adv
Object1=gt1
Op1=int
Object1=gt2
Với cấu higravenh trecircn coacute thể giải thiacutech như sau object1=gt1 thừa hưởng hai thocircngsố ở phiacutea trecircn đoacute lagrave op1=bas vagrave op2=adv trong khi đoacute đối với object1=gt2 với thocircngsố op1=int được khai baacuteo lại necircn object1=gt2 được thừa kế từ hai thocircng số op1=invagrave op2=adv
3 Complex Entity
Với cấu kiểu nagravey được tổ chức thagravenh nhiều entity ứng với mỗi entity coacute nhiềthocircng số được khai baacuteo mỗi entity ở đacircy chiacutenh lagrave caacutec section để khai baacuteo caacutec kecircnhthocircng tin Cấu higravenh thường được sử dụng trong caacutec file iaxconf sipconf
Viacute dụ
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5372
Taacutec Giả Lecirc Quốc Toagraven
53
[entity1]
Op1=value1
Op2=value2
[entity2]
Op1=value3
Op2=value4
Entity1 coacute caacutec giaacute trị value1 vagrave value2 cho thocircng số op1 vagrave op2 trong khi đoacute
cũng lagrave thocircng số op1 vagrave op 2 nhưng coacute caacutec giaacute trị khaacutec lagrave value3 vagrave value4 choentity2
4 Cấu higravenh giao tiếp với mạng PSTN
1 Ngữ cảnh kết nối
Để kết nối với mạng PSTN chuacuteng ta cần phải coacute một card TDM với Cổng
FXO vagrave một đường dacircy điện thoại hoặc coacute thể lagrave một tổng đagravei nội bộ PBX Cnhiều nhagrave sản xuất phần cứng khaacutec nhau nhưng trong phần cấu higravenh dưới dacircy lagrave cấhigravenh cho card zapata TDM01B của digium (card nagravey hiện nay giaacute baacuten khoảng175$)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1172
Taacutec Giả Lecirc Quốc Toagraven
11
Ngoagravei ra Asterisk cograven coacute thư viện Asterisk Gateway Interface (AGI tương tựnhư CGI) - cơ chế kiacutech hoạt ứng dụng becircn ngoagravei cho pheacutep viết kịch bản phức tạp
với một số ngocircn ngữ như PHP hay Perl Noacutei chung khả năng viết caacutec ứng dụng tugravey biến rất lớn
3 MỘT SỐ TIacuteNH NĂNG CƠ BẢN
Asterisk coacute rất nhiều tiacutenh năng đatilde được giới thiệu ở trecircn nhưng để hiểu rotilde hếtất cả caacutec tiacutenh năng trecircn thật sự lagrave thaacutech thức đối với chuacuteng ta Trong phần nagraveychuacuteng tocirci sẽ giới thiệu một số tiacutenh năng với caacutec ứng dụng cụ thể để hiểu hơn về
thống asterisk
1 Voicemail (hộp thư thoại)
Đacircy lagrave tiacutenh năng cho pheacutep hệ thống nhận caacutec thocircng điệp tin nhắn thoại mỗmaacutey điện thoại được khai baacuteo trong hệ thống Asterisk cho pheacutep khai baacuteo thecircm chứnăng hộp thư thoại
Mỗi khi số điện thoại bận hay ngoagravei ldquovugraveng phủ soacutengrdquo thigrave hệ thống asteriskđịnh hướng trực tiếp caacutec cuộc gọi đến hộp thư thoại tương ứng đatilde khai baacuteo trước
Voicemail cung cấp cho người sử dụng nhiều tiacutenh năng lựa chọn như password xaacutec nhận khi truy cập vagraveo hộp thư thoại gửi mail baacuteo khi coacute thocircng điệmới
2 Call Forwarding(chuyển cuộc gọi)
Khi khocircng ở nhagrave hoặc đi cocircng taacutec magrave người sử dụng khocircng muốn bỏ lỡ tất ccaacutec cuộc gọi đến thigrave hatildey nghĩ ngay đến tiacutenh năng chuyển cuộc gọi
Đacircy lagrave tiacutenh năng thường được sử dụng trong hệ thống Asterisk Chức năng cho pheacutep chuyển một cuộc gọi đến một hay nhiều số maacutey điện thoại được định trước
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1272
Taacutec Giả Lecirc Quốc Toagraven
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ậnchuyển cuộc gọi khi khocircng trả lời chuyển cuộc gọi tức thời chuyển cuộc gọi v
thời gian định trước3 Caller ID (hiển thị số gọi)
Chức năng nagravey rất hữu dụng khi một ai đoacute gọi đến vagrave ta muốn biết chiacutenh xaacuteclagrave gọi từ đacircu vagrave trong một số trường hợp biết chắc họ lagrave ai
Ngoagravei ra Caller ID cograven lagrave chức năng cho pheacutep chuacuteng ta xaacutec nhận số thuecirc bao
gọi đến coacute nghĩa lagrave dựa vagraveo caller ID chuacuteng ta coacute tiếp nhận hay khocircng tiếp nhậncuộc gọi từ phiacutea hệ thống Asterisk Ngăn một số cuộc gọi ngoagravei yacute muốn
4 Automated attendant (chức năng IVR)
Chức năng tương taacutec thoại coacute rất nhiều ứng dụng trong thực tế khi gọi điệthoại đến một cơ quan hay xiacute nghiệp thuecirc bao thường nghe thocircng điệp nhưldquoXinchagraveo mừng bạn đatilde gọi đến cocircng ty chuacuteng Tocirci hatildey nhấn phiacutem 1 để gặp phograveng kinh
doanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquosau đoacute tuỳ vagraveo sự tương taacutec của thuecirc 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 thuecirc bao muố biết tỉ giaacute Đocircla hiện nay như thế nagraveo hay kết quả sổ số hellip tất caacutec những monmuốn trecircn đều coacute thể thực hiện qua chức năng tương taacutec thoại
5 Time and Date
Vagraveo từng thời gian cụ thể cuộc gọi sẽ định hướng đến một số điện thoại hmột chức năng cụ thể khaacutec viacute dụ trong cocircng ty giaacutem đốc muốn chỉ cho pheacutep nhacircnviecircn sử dụng maacutey điện thoại trong giờ hagravenh chaacutenh cograven ngoagravei giờ thigrave sẽ hạn chế hakhocircng cho pheacutep gọi ra becircn ngoagravei
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1372
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1472
Taacutec Giả Lecirc Quốc Toagraven
14
Asterisk thực hiện rất nhiều ngữ cảnh ứng dụng khaacutec nhau tuỳ vagraveo nhu cầu sdụng dưới dacircy lagrave những ngữ cảnh ứng dụng thường được sử dụng trong thực
triển khai hệ thống asterisk1 Tổng đagravei voip IP PBX
IP BPX
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1572
Taacutec Giả Lecirc Quốc Toagraven
15
Đacircy lagrave hệ thống chuyển mạch voip được xacircy dựng phục vụ caacutec cocircng ty coacute nhucầu thực hiện trecircn nền tảng mạng nội bộ đatilde triển khai Thay vigrave lắp đặt một hệ thố
PBX cho nhu cầu liecircn lạc nội bộ thigrave necircn lắp đặt hệ thống voip điều nagravey sẽ lagravem giảchi phiacute đaacuteng kể Hệ thống coacute thể liecircn 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 ở đacircy lagrave hiện tại Cocircng ty đatilde trang bị hệ thống PBX bacircygiờ cần trang bị thecircm để đaacutep ứng nhu cầu liecircn lạc trong cocircng ty sao cho với chi phthấp nhất giải phaacutep để thực hiện đoacute lagrave trang bị hệ thống asterisk vagrave kết nối với h
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1672
Taacutec Giả Lecirc Quốc Toagraven
16
thống PBX đang tồn tại qua luồng E1 Ngoagravei ra để tăng khả năng liecircn lạc với mạnPSTN vagrave VOIP khaacutec Cocircng Ty coacute thể thực hiện kết nối với nhagrave cung cấp dịch vụvoip
3 Kết nối giữa caacutec server Asterisk
Kết nối giữa caacutec server asterisk
Phương phaacutep trecircn ứng dụng rất hiệu quả cho caacutec cocircng ty nằm ratildei raacutec ở caacutec vtrị địa lyacute khaacutec nhau nhằm giảm chi phiacute đường dagravei Viacute dụ Cocircng ty Mẹ coacute trụ sở đặtại nước Mỹ vagrave caacutec Chi nhaacutenh đặt tại Việt Nam với caacutec địa điểm Thagravenh phố Hồ ChMinh vagrave Hagrave Nội Thocircng qua mạng WAN của Cocircng Ty caacutec cuộc gọi nội bộ giữa caacutec
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1772
Taacutec Giả Lecirc Quốc Toagraven
17
vị triacute khaacutec nhau sẽ lagravem giảm chi phiacute đaacuteng kể Ngữ cảnh nagravey về mặt phaacutep luật khocircncho cuộc gọi từ Mỹ vagraveo Việt Nam
4 Caacutec ứ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 caacutec server kết nối với hệ thống PSTN hay tổng đagravei PBXđể triển khai caacutec ứng dụng như tương taacutec thoại IVR Một viacute dụ cho ứng dụng tươtaacutec thoại đoacute lagrave cho biết kết quả sổ số hay kiểm tra cước cuộc gọi giống dịch v19001260 vậy Ứng dụng VoiceMail thu nhận những tin nhắn thoại từ phiacutea thuecirc bao giống như chức năng hộp thư thoại của Bưu Điện Thagravenh phố triển khai Cograve
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1872
Taacutec Giả Lecirc Quốc Toagraven
18
chức năng điện thoại hội nghị thiết lập cho nhiều maacutey điện thoại cugraveng noacutei chuyệvới nhau
5 Chức năng Phacircn phối cuộc gọi tự động ACD
Phacircn phối cuộc gọi với hagraveng đợi
ACD(Automatic Call Distribution) Phacircn phối cuộc gọi tự động
Đacircy lagrave chức năng ứng dụng cho nhu cầu chăm soacutec khaacutech hagraveng hay nhận phảnhổi từ phiacutea khaacutech hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1972
Taacutec Giả Lecirc Quốc Toagraven
19
Cocircng ty coacute khả năng tiếp nhận cugraveng một luacutec 10 cuộc gọi như thế cuộc gọi th11 gọi đến thigrave hệ thống giải quyết như thế nagraveo Bigravenh thường thigrave sẽ nghe tiacuten hiệ
bận nhưng với chức năng phacircn phối cuộc gọi sẽ đưa thuecirc bao đoacute vagraveo hagraveng đợi đchờ trả lời trong khi chờ trả lời cuộc gọi thuecirc bao coacute thể nghe những bagravei haacutet hay dasterisk cung cấp trong luacutec nagravey nếu 1 trong mười số điện thoại trở về trạng thaacutei rthigrave cuộc gọi đang chờ sẽ được trả lời Giống như chức năng của dịch vụ 1080 ha116 của Bưu Điện Thagravenh Phố vậy
2 CAacuteC KHAacuteI NIỆM TRONG HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Trong chương nagravey sẽ giải thiacutech rotilde caacutec khaacutei niệm cơ bản liecircn quan đến hệ thốnasterisk cung cấp những kiến thức nền tảng những khaacutei niệm cần thiết để thiếttriển khai xacircy dựng hệ thống điện thoại với Asterisk
2 PBX - Private Branch Exchange
PBX hay cograven gọi lagrave PABX - Private Automatic Branch Exchange lagrave hệ thốngtổng đagravei nội bộ được đặt tại nhagrave thuecirc bao từ Automatic ở đacircy muốn noacutei đến lagrave hthống tổng đagravei điện tử tự động nhưng hiện nay đa số lagrave tổng đagravei PBX điện tử tđộng necircn từ trecircn thực sự khocircng cograven cần thiết nữa
PBX với mục tiecircu chia sẻ nhiều thuecirc bao nội bộ gọi ra thế giới becircn ngoagraveithocircng qua một vagravei đường trung kế hay noacutei một caacutech khaacutec PBX lagrave hệ thống trungchuyển giữa caacutec đường dacircy điện thoại becircn ngoagravei từ cocircng ty điện thoại vagrave maacutey điệthoại nội bộ trong tổng đagravei PBX Vigrave thế necircn số lượng maacutey điện thoại nội bộ luocircnhiều hơn số đường dacircy nối đến PBX từ becircn ngoagravei
wwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2072
Taacutec Giả Lecirc Quốc Toagraven
20
PBX thực hiện chuyển mạch cuộc gọi caacutec maacutey điện thoại nội bộ với nhau vvới caacutec maacutey điện thoại becircn ngoagravei thocircng qua đường trung kế Đồng thời thực hiệ
chuyển mạch caacutec cuộc gọi điện thoại từ becircn ngoagravei vagraveo caacutec maacutey điện thoại nội bộNgoagravei việc chuyển mạch cuộc gọi PBX cung cấp nhiều tiacutenh năng sử dụng
cho nhiều mục điacutech khaacutec nhau của khaacutech hagraveng magrave bản thacircn caacutec đường dacircy điệnthoại từ cocircng ty điện thoại kết nối đến khocircng thể thực hiện được caacutec tiacutenh năng ntương taacutec thoại(IVR) Voicemail phacircn phối cuộc gọi tự động(ADC)hellip
Hiện nay với việc phaacutet triển mạnh mẽ của cocircng nghệ VoIP chuacuteng ta cograven coacutethecircm thuật ngữ IP PBX Đacircy lagrave hệ thống chuyển mạch PBX với cocircng nghệ Voip
3 VOIP - Voice Over Internet Protocol
Voice over Internet Protocol (VoIP) lagrave một cocircng nghệ cho pheacutep truyền thoạisử dụng giao thức mạng IP trecircn cơ sở hạ tầng sẵn coacute của mạng internet Voip lagrave mtrong những cocircng nghệ viễn thocircng đang được quan tacircm nhất hiện nay khocircng chỉ đố
với nhagrave khai thaacutec caacutec nhagrave sản xuất magrave cograven cả với người sử dụng dịch vụVoip coacute thể vừa thực hiện mọi loại cuộc gọi như trecircn mạng điện thoại kecircn
truyền thống (PSTN) đồng thời truyền dữ liệu trecircn cơ sở mạng truyền dữ liệu Dcaacutec ưu điểm về giaacute thagravenh dịch vụ vagrave sự tiacutech hợp nhiều loại higravenh dịch vụ necircn voihiện nay được triển khai một caacutec rộng ratildei
Dịch vụ điện thoại voip lagrave dịch vụ ứng dụng giao thức IP nguyecircn tắc củaVoIP bao gồm việc số hoaacute tiacuten hiệu tiếng noacutei thực hiện việc neacuten tiacuten hiệu số chia nhcaacutec goacutei nếu cần vagrave truyền goacutei tin nagravey qua mạng tới nơi nhận caacutec goacutei tin nagravey đượraacutep lại theo đuacuteng thứ tự của bản tin giải matilde tiacuten hiệu tương tự phục hồi lại tiếng n ban đầu
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2172
Taacutec Giả Lecirc Quốc Toagraven
21
Caacutec cuộc gọi trong VoIP dựa trecircn cơ sở sử dụng kết hợp cả chuyển mạchkecircnh vagrave chuyển mạch goacutei Trong mỗi loại chuyển mạch đều coacute ưu nhược điể
riecircng của noacute Trong kỹ thuật chuyển mạch kecircnh giagravenh riecircng cho một kecircnh truyềngiữa hai thiết bị đầu cuối thocircng qua caacutec node chuyển mạch trung gian Trongchuyển mạch kecircnh tốc độ truyền dẫn luocircn luocircn cố định(nghĩa lagrave băng thocircng khocircnđổi) với mạng điện thoại PSTN tốc độ nagravey lagrave 64kbps truyền dẫn trong chuyểmạch kecircnh coacute độ trễ nhỏ
Trong chuyển mạch goacutei caacutec bản tin được chia thagravenh caacutec goacutei nhỏ gọi lagrave caacutec
goacutei nguyecircn tắc hoạt động của noacute lagrave sử dụng hệ thống lưu trữ vagrave chuyển tiếp caacutec gtin trong nuacutet mạng Đối với chuyển mạch goacutei khocircng tồn tại khaacutei niệm kecircnh riecircng băng thocircng khocircng cố định coacute nghĩa lagrave coacute thể thay đổi tốc độ truyền kỹ thuật chuyểmạch goacutei phải chịu độ trễ lớn vigrave trong chuyển mạch goacutei khocircng quy định thời giancho mỗi goacutei dữ liệu tới điacutech mỗi goacutei coacute thể đi bằng nhiều con đường khaacutec nhau đtới điacutech chuyển mạch goacutei thiacutech hợp cho việc truyền dữ liệu vigrave trong mạng truyền dliệu khocircng đogravei hỏi về thời gian thực như thoại để sử dụng ưu điểm của mỗi lo
chuyển mạch trecircn thigrave trong voip kết hợp sử dụng cả hai loại chuyển mạch kecircnh vchuyển mạch goacutei
4 PSTN ndash Public Switched Telephone Network
PSTN lagrave mạng chuyển mạch điện thoại cocircng cộng hay noacutei caacutech khaacutec lagrave mạngkết nối tất cả caacutec hệ thống tổng đagravei chuyển mạch-mạch
Để hiểu rotilde hơn hatildey xem xeacutet mạng PSTN với mạng Internet về khiacutea cạnhchuyển thoại trecircn đoacute Chuyển mạch mạch muốn thực hiện cuộc gọi giữa hai thu bao thigrave hệ thống phải giagravenh riecircng một kecircnh truyền 64kbps để chuyển tải tiacuten hiệthoại trecircn đoacute Cograven cuộc gọi điện thoại trecircn mạng Internet thigrave tiacuten hiệu thoại đượđoacuteng goacutei vagrave chuyển đi trecircn cugraveng kecircnh truyền với nhiều dịch vụ khaacutec Vigrave lẽ đoacute chấlượng cuộc gọi trecircn mạng PSTN bao giờ cũng tốt hơn trecircn mạng Internet nhưng đổ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2272
Taacutec Giả Lecirc Quốc Toagraven
22
lại chi phiacute lại đắc hơn rất nhiều đặc biệt lagrave caacutec cuộc gọi quốc tế necircn phải cần nhắc kỹ khi sử dụng
PSTN được phaacutet triển trecircn chuẩn ITU(International TelecommunicationUnion) cograven mạng Internet được phaacutet triển trecircn chuẩn IETF(Internet EngineeringTask Force) cả hai mạng trecircn đều sử dụng địa chỉ để định tuyến cuộc gọi PSTN sdụng caacutec con số điện thoại để chuyển mạch cuộc gọi giữa caacutec tổng đagravei điện thotrong khi đoacute trecircn mạng Internet địa chỉ IP sẽ được sử dụng để định tuyến caacutec goacutethoại
5 TDM ndash Time Division Multiplexing
Lagrave kỹ thuật gheacutep kecircnh phacircn chia thời gian nhiều tiacuten hiệu coacute thể truyền đồngthời trecircn một đường truyền TDM được sử dụng chuyển thoại trong hệ thống mạPSTN Coacute hai chuẩn gheacutep kecircnh TDM cơ bản lagrave E1 với 30 kecircnh thoại trecircn mộtkhung tốc độ 2Mbps vagrave T1 với 24 kecircnh thoại tốc độ 15Mbps
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2372
Taacutec Giả Lecirc Quốc Toagraven
23
Higravenh Minh họa gheacutep kecircnh phacircn chia theo thời gian
6 Caacutec higravenh thức baacuteo hiệu giao tiếp TDM
1 FXO vagrave FXS
FXO (Foreign Exchange Office) lagrave thiết bị nhận tiacuten hiệu từ tổng đagravei gửi đếnnhư dograveng chuocircng tiacuten hiệu nhấc gaacutec maacutey tiacuten hiệu mời quay số gửi vagrave nhận tiacuten hiệthoạihellip FXO giống như maacutey Fax hay modem dial-up 56k vậy Dugraveng để kết nối vớ
đường dacircy điện thoại
FXS (Foreign Exchange Station) lagrave thiết bị tại nơi cung cấp đường dacircy điệnthoại thiết bị FXS sẽ cung cấp tiacuten hiệu mời quay số(dialtone) dograveng chuocircng hồi acircmchuocircng(ring tone) Trong đường dacircy Analog FXS cung cấp dograveng chuocircng vagrave điện aacutepcho điện thoại hoạt động viacute dụ FXS cung cấp điện aacutep -48VDC đến maacutey điện tho
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2472
Taacutec Giả Lecirc Quốc Toagraven
24
Analog trong suốt thời gian đagravem thoại vagrave cung cấp 90VAC(20hz) để phaacutet điện aacuteprung chuocircng Thiết bị FXS phaacutet cograven thiết bị FXO nhận
Card TDM sử dụng trong hệ thống asterisk thường tiacutech hợp vừa thiết bị FXOvừa lagrave thiết bị FXS(Giống bộ ATA) FXO để kết nối với đường dacircy điện thoại cograveFXS dugraveng để kết nối với maacutey điện thoại analog thocircng thường dugraveng để chuyển mạcuộc gọi TDM qua hệ thống asterisk(Xem thecircm trong phần cấu higravenh cho kecircnhTDM)
Toacutem lại cần nắm
FXS được kết nối với FXO giống với đường dacircy điện thoại nối với maacuteyđiện thoại
FXS cung cấp nguồn cho điện thoại FXO(điện thoại Analog)
Higravenh a) Maacutey điện thoại vai trograve FXO kết nối với FXS(PSTN) Higravenh b) PBXkết nối với FXO vagrave FXS Higravenh c) ATA đoacuteng vai trograve như FXS để kết nối với maacuteyđiện thoại vai trograve FXO
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2572
Taacutec Giả Lecirc Quốc Toagraven
25
2 Baacuteo hiệu Analog giữa đầu cuối vagrave tổng đagravei
Khi chuacuteng ta nhấc mấy điện thoại để gọi thigrave nghe tiacuten hiệu mời quay số kh
cuộc gọi gọi đầu becircn kia bị bận thigrave chuacuteng ta nghe tiacuten hiệu bận(busy tone) caacutec loạtiacuten hiệu như vậy gọi lagrave caacutec tiacuten hiệu baacuteo hiệu analog Caacutec tiacuten hiệu như Mời quay sốtiacuten hiệu bận rung chuocircng trạng thaacutei nhấc gaacutec maacutey Caacutec loại tiacuten hiệu trecircn được trađổi giữa thiết bị FXO vagrave FXS
Coacute nhiều phương thức baacuteo hiệu khaacutec nhau ứng với từng nơi sử dụng vigrave thếtại nơi kết nối với đường dacircy điện thoại cần xem xeacutet họ đang sử dụng phương th
baacuteo hiệu gigrave từ đoacute chuacuteng ta khai thaacutec loại tiacuten hiệu baacuteo hiệu cho thiacutech hợp caacutec phương thức baacuteo hiệu như Loop Start Ground Start Một minh họa cho việc sửdụng sai phương thức baacuteo hiệu lagrave khi chuacuteng ta khai baacuteo phương thức baacuteo hiệu giữhệ thống Asterisk vagrave đường dacircy điện thoại khaacutec nhau thigrave dẫn đến Asterisk sẽ khocircnnhận biết được tiacuten hiệu gaacutec maacutey điều nagravey sẽ lagravem cho asterisk khocircng baacuteo giờ giải tỏđược cuộc gọi để thực hiện cuộc gọi mới
3 Baacuteo hiệu giữa caacutec tổng đagravei
SS7 hệ thống baacuteo hiệu số 7 được phaacutet triển bởi ATampT vagrave ITU lagrave hệ thống baacuteo hiệu chuyển caacutec cuộc gọi giữa caacutec tổng đagravei trong mạng PSTN Trong hệ thốn baacuteo hiệu số 7 tiacuten hiệu chuyển tải trecircn đường trung kế kết nối giữa hai tổng đagravei gồcoacute hai mạch riecircng một cho thoại vagrave một cho baacuteo hiệu như vậy thoại vagrave baacuteo hiệu cthể chuyển trecircn hai kecircnh vật lyacute khaacutec nhau
7 Baacuteo Hiệu trecircn mạng điện thoại VoIP
1 SIP Session Initiation Prorocol
Sip lagrave giao thức Internet dagravenh cho baacuteo hiệu VoIP được phaacutet triển bởi IETFcung cấp vagravei chức năng giống hệ thống baacuteo hiệu số 7 nhưng dựa trecircn nền IP Mộchức năng giống baacuteo hiệu số 7 đoacute lagrave baacuteo hiệu vagrave thoại chuyển tải trecircn hai kecircnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2672
Taacutec Giả Lecirc Quốc Toagraven
26
riecircng Giao thức SIP thực hiện chức năng thiết lập vagrave baacuteo hiệu cuộc gọi khi noacutei đế baacuteo hiệu cuộc gọi lagrave chỉ định caacutec tiacuten hiệu baacuteo hiệu như tiacuten hiệu mời quay số tiacutehiệu bậnhellip
2 Proxy server
Mặc dầu hai thiết bị SIP coacute thể liecircn lạc trực tiếp với nhau để khởi tạo cuộgọi nhưng trong giao thức SIP cograven coacute chức năng Proxy để linh hoạt hơn trong thiếlập cuộc gọi Proxy Server sẽ lagravem nhiệm vụ ghi nhận tất cả caacutec số điện thoại đư phiacutea client đăng kyacute đến qua bản tin ldquoRegistrationrdquo Khi một client khaacutec thực hiện
cuộc gọi thigrave thực sự Client đoacute khocircng biết số điện thoại cần gọi đang ở đacircu necircn thocircnqua Proxy server để tigravem kiếm thiết lập cuộc gọi
+
Higravenh Đăng kyacute từ Client đến SIP Proxy Với Giao thức SIP đường baacuteo hiệu vagravethoại riecircng
3 RTP vaacute NAT
Caacutec cuộc gọi trecircn Internet với giao thức SIP được chia thagravenh caacutec goacutei thoại vagraveđược chuyển qua giao thức RTP(Real Time Protocol) RTP lagrave giao thức khocircng chỉthực hiện chuyển caacutec goacutei thoại qua Internet magrave cograven coacute cả video nữa Một cuộc gọ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2772
Taacutec Giả Lecirc Quốc Toagraven
27
thocircng thường coacute hai hướng thocircng tin lagrave nhận vagrave phaacutet RTP lagravem việc chuyển caacutec goacutedữ liệu thoại cũng trecircn hai hướng
NAT Network Address Translators lagrave một trở ngại lớn trong giao thức RTPMạng sử dụng NAT lagrave một mạng chia sẻ nhiều địa chỉ IP nội bộ với một địa chỉ ICocircng cộng để kết nối với thế giới becircn ngoagravei NAT dugraveng để chia sẻ nhiều maacutey tiacutentrong mạng LAN nội bộ sử dụng được Internet nhưng cũng chiacutenh vigrave thế magrave caacutec maacutetiacutenh nội bộ gặp khoacute khăn trong việc thực hiện cuộc gọi VoIP qua Internet Đoacute chiacutenhlagrave vấn để trở ngại khi truyền thoại qua giao thức RTP
Higravenh Minh họa hoạt động của NAT
Trong Giao thức RTP như chuacuteng ta đatilde biết đoacute lagrave thoại được chuyển trecircn haiđường khaacutec nhau lagrave đường phaacutet vagrave đường thu Vấn đề NAT nằm ở chỗ tiacuten hiệthoại từ becircn ngoagravei vagraveo becircn trong qua giao thức RTP khocircng thực hiện được cograven chiềungược lại thigrave thực hiện tốt Hay noacutei caacutech khaacutec vấn đề NAT lagravem cho caacutec cuộc gọi t
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2872
Taacutec Giả Lecirc Quốc Toagraven
28
Internet đagravem thoại vagraveo caacutec maacutey nội bộ qua NAT thigrave khocircng nghe được cograven trongtrường hợp caacutec cuộc gọi từ caacutec maacutey nội bộ ra caacutec maacutey internet thigrave nghe tốt
Vấn đề NAT trecircn được giải quyết trong Asterisk bằng việc khai baacuteo thocircng số NAT=yes trong cấu higravenh kecircnh giao thức SIP
4 IAX ndash Inter Asterisk eXchange
IAX lagrave giao thức baacuteo hiệu Voip được phaacutet triển bởi taacutec giả của phần mềmAsterisk để khắc phục những hạn chế trong giao thức SIP Khocircng giống như giathức SIP chuyển tải thoại vagrave baacuteo hiệu trecircn hai kecircnh khaacutec nhau (out of band) IAXchuyển tải thoại vagrave baacuteo hiệu trecircn cugraveng một kecircnh(in band) IAX giải quyết được vấđề NAT đề cập trecircn phần giao thức SIP Mặc khaacutec IAX lagrave giao thức tối ưu trongviệc sử dụng băng thocircng cho pheacutep nhiều goacutei dữ liệu thoại trecircn cugraveng một IP headecơ chế chuyển tải nhiều cuộc gọi trecircn cugraveng một goacutei IP được gọi lagrave trung kế(Trunk)
Coacute thể giải thiacutech thecircm cơ chế trung kế như sau Giả sử Tocirci cần gửi 5 bức thtới người bạn của Tocirci Tocirci sẽ coacute hai higravenh thức để thực hiện thứ nhất lagrave mỗi bức tTocirci bỏ vagraveo một phong bigrave vậy tổng cộng tocirci phải sử dụng 5 phong bigrave để gửi đi 5 bứthư Caacutech thứ hai lagrave Tocirci bỏ 5 bức thư vagraveo 1 phong bigrave vagrave gửi đi vậy tổng cộng Tocircchỉ tốn 1 phong bigrave Qua phacircn tiacutech trecircn rotilde ragraveng việc 5 bức thư vagraveo một phong bigrave sẽtiết kiệm hơn so với 5 bức thư với 5 phong biacute Cơ chế trecircn cũng giống như nhiềcuộc gọi được đoacuteng thagravenh goacutei vagrave chuyển đi trecircn đường trung kế
Toacutem lại IAX lagrave giao thức dagravenh cho VoIP mới nhất cho đến thời điểm nagravey vớinhiều ưu điểm hấp dẫn như
+ Tối thiểu sử dụng băng thocircng
+ Trong suốt với NAT
+ Hiệu quả với cơ chế trung kế
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2972
Taacutec Giả Lecirc Quốc Toagraven
29
8 Thiết Bị VoIP
1 Voip Phone
Đacircy lagrave thiết bị phần cứng kết nối với mạng VoIP giống như maacutey điện thoại đ bagraven thocircng thường nhưng dagravenh cho VoIP cần phải thực hiện cấu higravenh trước khi sửdụng
Lưu yacute một số tiacutenh năng khi thực hiện mua thiết bị điện thoại VoIP
+ Low bandwidth hỗ trợ Codec nagraveo G729 lagrave tốt nhất hiện nay
+ Web Interface Phải coacute giao tiếp thiết lập cấu higravenh thacircn thiện dễ sử dụng
+ Audio Interface Coacute speaker phone hay khocircng
Giaacute thagravenh của điện thoại voip IP đắc hơn điện thoại thocircng thường giaacute khoảntrecircn dưới 100$ một caacutei
Higravenh Maacutey Điện Thoại VoIP
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3072
Taacutec Giả Lecirc Quốc Toagraven
30
2 Softphone
Lagrave một phần mềm được cagravei trecircn maacutey tiacutenh thực hiện tất cả caacutec chức năng giốn
như thiết bị điện thoại Voip cần lưu yacute khi sử dụng softphone lagrave maacutey tiacutenh phải ccard acircm thanh headphone vagrave firewall khocircng bị khoacutea
Sử dụng softphone với hệ thống Asterisk necircn dugraveng softphone với cocircng nghệgiao thức mới dagravenh cho Asterisk đoacute lagrave IAX
Higravenh Điện Thoại Softphone
3 Card giao tiếp với PSTN
Muốn cho pheacutep caacutec maacutey điện thoại nội bộ trong hệ thống Asterisk kết nối vthực hiện cuộc gọi với mạng PSTN chuacuteng ta cần phải coacute thiết bị phần cứng tươthiacutech Thiết bị phần cứng sử dụng cho hệ thống Asterisk do chiacutenh taacutec giả lập cocircng
Digium phacircn phối đacircy cũng chiacutenh lagrave yacute tưởng lớn trong việc phacircn phối phần mềmAsterisk lagrave hệ thống nguồn mở sử dụng miễn phiacute
Thiết bị phần cứng thường kyacute hiệu bắt đầu bằng cụm từ TDMxyB trong đoacute lagrave số lượng port FXS y lagrave số lượng port FXO giaacute trị tối đa của x vagrave y lagrave 4 viacute dụcard TDM22B coacute nghĩa lagrave coacute 2 fort FXS vagrave 2 port FXO
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3172
Taacutec Giả Lecirc Quốc Toagraven
31
Higravenh Card TDM22B gồm 4 port 2 FXS vagrave 2 FXO
4 ATA Analog Telephone Adaptors
ATA lagrave thiết bị kết nối với điện thoại Analog thocircng thường đến mạng VoIPmột thiết bị ATA gồm coacute hai loại port RJ-11 để kết nối với maacutey điện thoại analo
thocircng thường cograven RJ-45 để kết nối với mạng VoIP
ATA thực sự lagrave thiết bị FXS chuyển đổi tiacuten hiệu Analog sang tiacuten hiệu số sửdụng cho mạng VoIP để tận dụng maacutey điện thoại Analog necircn trang bị thiết bị ATAthay vigrave phải trang bị điện thoại VoIP
Thiết bị ATA sử dụng với giao thức IAX được Digium phacircn phối lagrave thiết bịATA được sử dụng rộng ratildei với Asterisk coacute tecircn gọi lagrave IAXy
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3272
Taacutec Giả Lecirc Quốc Toagraven
32
Higravenh Thiết bị ATA
9 Codecs
Thuật Toaacuten codecs(CompressorDe-compressor) lagrave một tập caacutec quy luật đượcsử dụng để chuyển đổi caacutec tiacuten hiệu thoại dạng Analog sang tiacuten hiệu số vagrave ngược lạ
Coacute nhiều thuật toaacuten codec để thực hiện chuyển đổi tiacuten hiệu analog sang tiacuten
hiệu số dạng nhị phacircn (01) như G711 GSM G729hellipỨng với mỗi thuật toaacuten coacutenhững ưu điểm riecircng đặc biệt lagrave việc tối ưu sử dụng băng thocircng trecircn đường truyềMục tiecircu cuối cugraveng lagrave caacutec thuật toaacuten đưa ra phải đảm bảo chất lượng cuộc gọi nhvagrave tiết kiệm băng thocircng nhất
G729 lagrave thuật toaacuten codec tốt nhất hiện nay trong hệ thống VoIP Với hệthống Asterisk để sử dụng thuật toaacuten nagravey cần phải mua bản quyền sử dụng vigrave đacircy
codec khocircng miễn phiacute sử dụng
10 QoS ndash Quality of Service
Caacutec yếu tố ảnh hưởng đến chất lượng của dịch vụ đối với VoIP đoacute lagrave caacuteyếu ảnh hưởng đến chất lượng tiacuten hiệu thoại
1 Độ trễ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3372
Taacutec Giả Lecirc Quốc Toagraven
33
Thoại lagrave dịch vụ mang tiacutenh thời gian thực rất cao vigrave thế trễ lagrave yếu tố ảnhhưởng rất lớn đến chất lượng dịch vụ Trễ được định nghĩa lagrave khoảng thời gian tiacute
từ luacutec tiacuten hiệu thoại đi từ miệng người noacutei tới tai người nghe Trễ lagrave yếu tố khocircnthể traacutenh khỏi độ trễ đối với mạng điện thoại truyền thống (mạng PSTN) khoảng50ms đến 70ms theo khiến nghị của ITU-T để đảm bảo chất lượng cho hệ thốVoIP thigrave độ trễ từ đầu phaacutet tới đầu thu hoặc ngược lại khocircng được vượt quaacute 150mkhi magrave độ trễ vượt quaacute 400ms đến 500ms thigrave khocircng thể chấp nhận được
Caacutec nguyecircn nhacircn gacircy ra trễ bao gồm Trễ trecircn mạng lưới trễ trecircn bộ mả hoacutea
giải matilde trễ trong quaacute trigravenh đoacuteng goacutei trễ bộ đệm trễ xử lyacute tiếng noacuteihellip2 Độ trượt(Jitter)
Nguyecircn nhacircn gacircy ra trượt lagrave goacutei tiacuten hiệu thoại trong quaacute trigravenh truyền từnguồn đến điacutech sẽ gặp phải những điều kiện khaacutec nhau trecircn mạng lưới do đoacute thườđến điacutech với những khoảng trễ khaacutec nhau Đacircy lagrave tiacutenh khocircng đồng nhất của trễ Mnguyecircn nhacircn khaacutec của trượt đối với ứng dụng PC to PC lagrave do việc sử dụng hệ điề
hagravenh phi thời gian thực caacutec goacutei tin thoại phải đợi hệ điều hagravenh xử lyacute trong nhữnkhoảng thời gian khaacutec nhau khi magrave hệ điều hagravenh đang phải xử lyacute đối với caacutec ứndụng khaacutec
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3472
Taacutec Giả Lecirc Quốc Toagraven
34
Higravenh Nguyecircn nhacircn xảy ra trượt
Để loại bỏ tiacutenh khocircng đồng nhất của trễ người ta thiết kế caacutec bộ đệm t(Jitter Buffer) tại nơi đến của caacutec goacutei tin caacutec goacutei tin đến với caacutec khoảng caacutech khaacutecnhau về thời gian được lưu tại bộ đệm rồi phaacutet khỏi bộ đệm với khoảng trễ n
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3572
Taacutec Giả Lecirc Quốc Toagraven
35
nhau Khi bộ đếm coacute kiacutech thước cagraveng lớn thigrave khả năng loại bỏ tiacutenh khocircng đồng nhấcagraveng lớn tuy nhiecircn việc sử dụng bộ đệm sẽ gacircy ra hiện tượng trễ trong ứng dụnthoại do đoacute cần coacute bagravei toaacuten cacircn đối giữa độ trễ vagrave độ trượt
Ngoagravei 2 nguyecircn nhacircn trecircn cograven một số nguyecircn nhacircn nữa ảnh hưởng đến chấtlượng thoại như độ mất goacutei giới hạn băng thocircng tiếng vọng
3 CAgraveI ĐẶT ASTERISK
1 Cagravei đặt Asterisk
1 Download vagrave bung neacuten
Để cagravei đặt Asterisk đầu tiecircn chuacuteng ta cần phải cagravei đặt hệ điều hagravenh linux trecircnmaacutey tiacutenh của migravenh Coacute thể cagravei hệ điều hagravenh Linux Fedora CentOS Redhat hoặcDebian Caacutec goacutei phần mềm phụ thuộc phải coacute trong hệ điều hagravenh Linux trước khcagravei Asterisk bao gồm
bison
gcc
kernel-source
libtermcap-devel
ncurses-devel
openssl096b
openssl-devel
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3672
Taacutec Giả Lecirc Quốc Toagraven
36
Sau khi hoagraven tất caacutec bước trecircn chuacuteng ta tiến hagravenh download phần mềmasterisk với phiecircn bản mới nhất
cd usrsrc
wgetftpftpdigiumcompubasteriskasterisk-140targz
wgetftpftpdigiumcompubasteriskasterisk-addons-140targz
wgetftpftpdigiumcompubasteriskasterisk-sounds-140targz
wgethttpftpdigiumcompubzaptelzaptel-140targz
wgethttpftpdigiumcompublibprilibpri-140targz
Việc download coacute thể nhanh hay chậm tugravey vagraveo tốc độ trecircn đường internet saukhi download hoagraven thagravenh chuacuteng ta tiến hagravenh bung neacuten caacutec goacutei ra thư mục chỉ định
tar ndashxzvf asterisk-140targz
tar ndashxzvf asterisk-addons-140targz
tar ndashxzvf asterisk-sounds-140targz
tar ndashxzvf zaptel-140targz
tar ndashxzvf libpri-140targz
Giải neacuten xong chuacuteng ta nhớ thực hiện lệnh
ln ndashs usrsrcasterisk-140 usrsrcasterisk lệnh nagravey để bảo đảm goacuteildquoaddonsrdquo được biecircn dịch đuacuteng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3772
Taacutec Giả Lecirc Quốc Toagraven
37
Bacircy giờ tới phần chuacuteng ta biecircn dịch caacutec goacutei đatilde giải neacuten ở trecircn trước tiecircn lagrave goacuteizaptel kế đến lagrave libpri sau cugraveng lagrave goacutei Asterisk
2 Cagravei đặt goacutei Zaptel
Goacutei zaptel sẽ chứa tại thư mục usrsrczaptel Đaacutenh lệnh như dưới đacircy để cagraveđặt
cd usrsrczaptel
make clean make install
Lệnh nagravey thực hiện khoảng 2 phuacutet tugravey vagraveo tốc độ maacutey tiacutenh cagravei đặt sau khicagravei đặt xong sẽ trở lại dấu nhắc lệnh vagrave hiển thị một loạt caacutec thocircng baacuteo trong đoacute một số bản tin lỗi magrave chủ yếu lagrave yecircu cầu cagravei đặt caacutec goacutei phụ thuộc đatilde liệt kecirc ở trecircnếu caacutec goacutei trecircn chưa được cagravei đặt
Goacutei zaptel nagravey chứa caacutec driver cho caacutec phần cứng kết giao tiếp với asterisk
do Digium phacircn phối vagrave một số thư viện cho việc coacute thực hiện giao tiếp với phầcứng hay khocircng
Để Asterisk coacute thể chạy cugraveng với khởi động của maacutey tiacutenh chuacuteng ta cần thựchiện lệnh
make config
Lệnh nagravey sẽ tạo ra script chegraven module zaptel vagraveo kernel vagrave chạy ztconfig vagraveoluacutec khởi động maacutey Trong Redhat script nagravey sẽ được cheacutep vagraveo etcinitd chạy ở mức 3
3 Cagravei đặt goacutei libpri
Kế đến chuacuteng ta biecircn dịch goacutei libpri tại thư mục usrsrclibpri bằng lệnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3972
Taacutec Giả Lecirc Quốc Toagraven
39
make config
3 Cagravei đặt TrixBox
1 Giới thiệu
TRIXBOX được phaacutet triển từ nhacircn của ứng dụng Asterisk được tổng hợp từmột số thagravenh phần chiacutenh được phaacutet triển bởi cộng đồng phaacutet triển nguồn mAsterisk dưới bản quyền GPL Trixbox bao gồm những thagravenh phần chiacutenh cho việcấu higravenh ứng dụng thống kecirc tigravenh trạng hoạt động hệ thống lưu trữ dự phograveng v
nhacircn lagrave hệ điều hagravenh CentOS một phiecircn bản khaacutec của Redhat tất cả kết hợp vớnhau tạo thagravenh một goacutei hoagraven chỉnh Khi cagravei goacutei nagravey vagraveo maacutey tiacutenh thigrave coacute thể sử dụngnhư một tổng đagravei PBX
Caacutec thagravenh phần chiacutenh trong goacutei TRIXBOX lagrave
Asterisk PBX Thagravenh phần chiacutenh của hệ thống Trixbox
CentOS Một phiecircn bản Linux khaacutec của Redhat hoagraven toagraven miển phiacute sửdụng Lagrave nhacircn chiacutenh cho Trixbox
SugarCRM Hệ thống quan hệ khaacutech hagraveng CRM
A2Billing ndash Lagrave thagravenh phần dagravenh cho việc xacircy dựng hệ thống điện thoạitrả trước hay cograven gọi lagrave điện thọai thẻ (Calling Card)
Flash Operator Panel Bảng điều khiển giaacutem saacutet tigravenh trạng hoạt độngcủa caacutec maacutey điện thoại trong hệ thống
Web MeetMe Control Quản lyacute triển khai hệ thống điện thoại hội nghị
FreePBX Đacircy lagrave cocircng cụ với giao diện web dagravenh cho việc cấu higravenh hệthống Asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4072
Taacutec Giả Lecirc Quốc Toagraven
40
Hệ thống Lưu trữ dự phograveng vagrave thống kecirc Lagrave thagravenh phần của TRIXBOXcung cấp caacutec cocircng cụ cần thiết cho việc bảo trigrave bảo dưỡng hệ thống
Hệ thống Apache-Php-Mysql dagravenh cho giải phaacutep Webserver của hệthống
2 DOWNLOAD VAgrave LẮP ĐẶT TRIXBOX
Địa chỉ downloadhttpsourceforgenetprojectsasteriskathome
Khi download xong file Trixboxiso Hatildey dugraveng file nagravey Burn vagraveo CD ( xinlưu yacute lagrave dugraveng Nero hoặc chương trigravenh cheacutep đĩa ưa thiacutech rồi burn vagraveo cd_romchứ khocircng phải cheacutep file đoacute vagraveo cd_rom)
Sau khi coacute CD Hatildey boot từ CD nagravey để cagravei đặt trixbox
Chuacute yacute dữ liệu trecircn đĩa cứng sẽ bị xoacutea sạch để cagravei đặt trixbox Nếu trongđĩa cứng cograven dữ liệu hatildey backup tất cả trước khi tiến hagravenh lắp đặt trixbox
Tới đacircy lần lượt caacutec magraven higravenh chỉ dẫn sẽ hiện ra vagrave cứ theo hướng dẫn magrave cagraveđặt Sau khi cagravei đặt xong chuacuteng ta dugraveng Username root vagrave password password đểđăng nhập hệ thống
3 Cấu higravenh địa chỉ IP cho card mạng
Thiết lập địa chỉ IP bằng caacutech gotilde lệnh
netconfig
Chọn OK để thiếp lập
Nếu trong mạng coacute hỗ trợ DHCP thigrave hatildey chọn mục nagravey cograven nếu khocircng hatildeynhập địa chỉ IP tĩnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4172
Taacutec Giả Lecirc Quốc Toagraven
41
IP 19216801
Netmask 2552552550
Gateway 19216893254 ngotilde ra becircn ngoagravei
Primary nameserver 19216893200 thiết lập nếu coacute
Chọn OK để chấp nhận caacutec thiết lập trecircn
Sau khi hoagraven tất hatildey lagravem cho thiết lập coacute hiệu lực bằng caacutech reset lại
maacutey tiacutenh hoặc dugraveng lệnh sau
Service network stop
Service network start
Đến đacircy xem như cagravei đặt hoagraven tất bacircy giờ để cấu higravenh được Asterisk chuacutengta vagraveo một magravey khaacutec vagrave mở Internet Explorer hoặc một trigravenh duyệt web bất kỳ
nhập vagraveohttp19216801đatilde cấu higravenh ở trecircn vagrave tiến hagravenh cấu higravenh hệ thốngvới tagravei khoảng username maint vagrave password password
4 Tổ Chức Thư Mục của Asterisk
Asterisk sử dụng nhiều thư mục trecircn hệ thống linux để quản lyacute caacutec khiacutea cạnkhaacutec nhau của hệ thống như nghi nhận bản tin thoại caacutec bản tin nhắc thoại hoặcaacutec tập tin cấu higravenh Phần nagravey sẽ trigravenh bagravey caacutec thư mục chiacutenh yếu được tạo ra tronquaacute trigravenh lắp đặt vagrave được cấu higravenh trong tập tin Asteriskconf
1 etcasterisk
Thư mục etcasterisk chứa tất cả caacutec tập tin cấu higravenh của hệ thốngAsterisk ngoại trừ tập tin Zaptelconf được đặt tại thư mục etc Phần cứnZaptel đầu tiecircn được phaacutet triển bởi Jim Dixon thuộc nhoacutem Zapata Telephony
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4272
Taacutec Giả Lecirc Quốc Toagraven
42
Group để giao tiếp giữa maacutey tiacutenh với mạng điện thoại magrave Asterisk lại sửdụng phần cứng nagravey với lyacute do đoacute magrave file cấu higravenh zaptelconf khocircng nằmtrong thư mục etcasterisk
2 usrlibasteriskmodules
Thư mục usrlibasteriskmodules chứa tất cả caacutec module cần thiết đểasterisk hoạt động Becircn trong thư mục lagrave caacutec ứng dụng khaacutec nhau caacutec codeccaacutec định dạng acircm thanh(format) vagrave caacutec kecircnh thocircng tin(channel) Theo mặc địnhAsterisk sẽ nạp tất cả caacutec module vagraveo luacutec khởi động Chuacuteng ta coacute thể khocircng cho
nạp một module bất kỳ bằng caacutech khocircng khai baacuteo sử dụng trong tập tinmodulesconf Lưu yacute khi khocircng cho nạp module thigrave phải biết chắc module đoacutekhocircng lagravem ảnh hưởng hoạt động của asterisk nếu khocircng lỗi sẽ xuất hiện
3 varlibasterisk
Thư mục varlibasterisk chứa tập tin astdb vagrave một số thư mục con Tập tinastdb định vị thocircng tin cơ sở dữ liệu của Asterisk giống như Microsoft WindowsRegistry
Caacutec thư mục con của thư mục varlibasterisk bao gồm
agi-bin
Thư mục agi-bin chứa caacutec script của người dugraveng magrave Asterisk coacute thểđịnh vị sử dụng qua caacutec ứng dụng AGI
AGI lagrave phần giao tiếp với ngocircn ngữ lập trigravenh script để thực hiện mộtsố cocircng việc của Asterisk từ becircn ngoagravei
firmware
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4372
Taacutec Giả Lecirc Quốc Toagraven
43
Thư mục firmware chứa một số phần dẻo(firmware) cho caacutec thiết bịkhaacutec nhau tương thiacutech với Asterisk Hiện tại chỉ coacute thư mục con iax chứa
firmware cho thiếy bị IAXy của Digium IAXy lagrave thiết bị ATA sử dụng giaothức IAX
images
Caacutec ứng dụng thocircng tin với caacutec kecircnh hỗ trợ ảnh images thigrave sử dụng thư mụcnagravey Nhưng hiện tại caacutec kecircnh thocircng tin hầu như khocircng hỗ trợ truyền ảnh images necircthư mục nagravey cũng hiếm khi được sử dụng Tuy nhiecircn nếu caacutec thiết bị coacute hỗ trợ ththư mục nagravey trở necircn hiệu dụng
keys
Asterisk coacute thể sử dụng hệ thống khoaacute publicprivate để xaacutec minh caacutec kết nốgiữa caacutec server Asterisk thocircng qua chữ kyacute điện tử RSA Nếu đặt một khoaacute publicvagraveo thư mục keys thigrave kết nối của server đầu becircn kia coacute thể được xaacutec minh bằn
kecircnh thocircng tin coacute hỗ trợ đối với Asterisk thigrave kecircnh giao thức IAX hỗ trợ loại xaacutecminh nagravey Một khoaacute private khocircng bao giờ cocircng bố chuacuteng ta chỉ cocircng bố khoaacute public đến với server cần nối đến sau đoacute sẽ được xaacutec minh với khoaacute private nagravey Chai khoaacute public vagrave private được lưu với đuocirci pub vagrave key đặt tại thư mục keys
mohmp3
Khi cấu higravenh Asterisk sử dụng tiacutenh năng Music on Hold tiacutenh năng hoạt độngsẽ thực hiện lấy caacutec tập tin mp3 tại thư mục mohmp3 Tập tin định dạng theo chucủa Asterisk necircn khi sử dụng caacutec file Mp3 thocircng thường cần coacute sự chuyển đổi thiacutechợp trước khi cheacutep vagraveo thư mục trecircn để sử dụng
sounds
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4472
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4572
Taacutec Giả Lecirc Quốc Toagraven
45
Thư mục tmp sử dụng để lưu trữ những thocircng tin tạm để luocircn bảo đảm khocircnxảy ra tigravenh trạng đọc vagrave viết tập tin cugraveng một luacutec Khi yecircu cầu xử lyacute tập tin chuacuteng thao taacutec trecircn thư mục tmp trước khi lưu vagraveo tập tin điacutech
Tất cả caacutec lời nhắc thoại từ phiacutea người sử dụng vagrave caacutec lời nhắc thoại sử dụ
cho thao taacutec hộp voicemail đều được chứa trong thư mục voicemail Một hộp thưthoại được tạo ra ứng với một maacutey nội bộ trong tập tin voicemailconf sẽ được tra một thư mục con tương ứng cho maacutey nội bộ đoacute tại thư mục voicemail
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4672
Taacutec Giả Lecirc Quốc Toagraven
46
5 varrun
Thư mục varrun chứa thocircng tin process ID(pid) cho tất cả caacutec tiến trigravenh đang
hoạt động trong hệ thống bao gồm cả Asterisk Lưu yacute lagrave ứng với mỗi hệ điều hagravethư mục varrun coacute thể khaacutec
6 varlogasterisk
Thư mục varlogasterisk lagrave nơi Asterisk chứa tất cả caacutec tập tin nhật kyacute haycograven gọi lagrave tập tin log Chuacuteng ta coacute thể tuỳ biến caacutec loại thocircng tin được lưu trong caacutec
tập tin log khaacutec nhau qua tập tin cấu higravenh loggerconf đặt tại thư mục etcasterisk7 varlogasteriskcdr-csv
Thư mục varlogasteriskcdr-csv được sử dụng để lưu chi tiết cuộc gọi CDRThocircng tin mặc định về chi tiết thocircng tin cuộc gọi lưu trữ trong tập tin MasterCVSnhưng thường thigrave ứng với mỗi matilde accountcode sẽ tạo một thư mục riecircng để lưu ctiết cuộc gọi cho maacutey đoacute
5 Một số lệnh thao taacutec trecircn hệ thống asterisk
Asterisk coacute hai thagravenh phần được xacircy dụng tiacutech hợp với nhau vagrave chạy songsong nhau
Asterisk Server bigravenh thường chạy ở chế độ nền(background) giống caacutec sevicestrong window
Asterisk Client ở chế độ dograveng lệnh CLI giao tiếp với Asterisk Server thực thicaacutec lệnh để kiểm tra hay xem caacutec thocircng tin của server
Để Chạy vagrave dừng Asterisk ở chế độ nền chuacuteng ta thực hiện lệnh sau
etcinitdasterisk (start|stop)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4772
Taacutec Giả Lecirc Quốc Toagraven
47
Một khi Asterisk đatilde chạy chuacuteng ta coacute thể chuyển qua chế độ CLI từ dấu nhắlệnh của linux như sau
asterisk ndashr
Khi vagraveo chế độ lệnh nếu muốn thoaacutet về lại dấu nhắc linux chuacuteng ta dugraveng lệnh
CLIgtexit
Caacutec lệnh cơ bản thực hiện tại CLIgt
Bất cứ khi nagraveo chỉnh sửa caacutec tập tin cấu higravenh chuacuteng ta đều cần phải nạp lại đcaacutec thay đổi coacute hiệu lực điều đoacute thực hiện bằng lệnh
CLIgtreload
Bậc chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 debug
CLIgt SIP debug
Tắt chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 no debug
CLIgt SIP no debug
Hiển thị caacutec trạng thaacutei thocircng tin của users peers vagravechannels của SIP hoặc IAX2
CLIgt sip show users
CLIgt sip show peers
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4872
Taacutec Giả Lecirc Quốc Toagraven
48
CLIgt sip show channels
CLIgt iax2 show peers
CLIgt iax2 show users
CLIgt iax2 show channels
Đến thời điểm nagravey coacute thể noacutei chuacuteng ta đatilde hoagraven thagravenh cagravei đặt hệ thốngAsterisk cagravei đặt xong mới lagrave bước mở đầu để cho hệ thống Asterisk hoạt động vtừng ứng dụng cụ thể chuacuteng sẽ tiếp tục thực hiện caacutec giai đoạn được xem lagrave qutrọng nhất trong việc triển khai hệ thống Asterisk đoacute lagrave giai đoạn cấu higravenh hệ thốnlecircn kế hoạch Diaplan chương cograven lại đều nhắm đến mục tiecircu nagravey
4 CẤU HIgraveNH HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Sau khi hoagraven tất phần cagravei đặt hệ thống asterisk một bước quan trọng tiếp thelagrave cấu higravenh hệ thống coacute thể noacutei đacircy lagrave bước quan trọng nhất của việc khiển khai thống đến với từng ứng dụng cụ thể Trong chương nagravey xin giới thiệu caacutei nhigraven đầtiecircn về việc cấu higravenh trước khi đi sacircu hơn ở những chương sau những gigrave giới thiệ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4972
Taacutec Giả Lecirc Quốc Toagraven
49
trong chương nagravey lagrave nền moacuteng cơ bản nhưng đủ để hiểu lagravem thế nagraveo hệ thống coacute thoạt động được nội dung chiacutenh bao gồm
+ Thao taacutec cấu higravenh trecircn hệ thống tập tin của asterisk
+ Caacutech cagravei đặt phần mềm softphone trecircn cocircng nghệ sip
+ Cấu higravenh cho hai maacutey softphone liecircn lạc với nhau
+ Cấu higravenh phaacutet thocircng điệp
+ Quay số qua Sip vagrave mạng PSTN
2 Tập Tin cấu higravenh
Tất cả caacutec file cấu higravenh cho hệ thống asterisk đều nằm tại thư mục etcasterisngoại trừ file zaptelconf cấu higravenh cho phần cứng TDM nằm tại thư mục etc caacutecthức cấu higravenh giống như tập tin ini của window vậy Caacutec nội dung sau dấu chấm phảy lagrave nội dung chuacute thiacutech trong file cấu higravenh giống như chuacute thiacutech trong ngocircn ngữ
lập trigravenh C lagrave dấu Tất cả caacutec khoảng trắng trong tập tin đều được bỏ qua khocircng yacute nghĩa trong file cấu higravenh
Trong file cấu higravenh cograven coacute hai pheacutep gaacuten rất thường xuyecircn được sử dụng pheacutep gaacuten ldquo=rdquo lagrave dugraveng cho việc gaacuten caacutec biến cograven pheacutep gaacuten ldquo=gtrdquo dugraveng cho việc gaacutencaacutec đối tượng sau đacircy lagrave một viacute dụ cho file cấu higravenh
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5072
Taacutec Giả Lecirc Quốc Toagraven
50
Đacircy lagrave caacutec dograveng chuacute thiacutech
[section]
Key=value gaacuten giaacute trị cho biến
[section2]
Key=gtobject Gaacuten giaacute trị cho đối tượng
Cuacute phaacutep thực hiện giống nhau cho tất cả caacutec file cấu higravenh nhưng coacute vagravei kiểukhaacutec nhau cho mỗi file cầu higravenh dựa vagraveo thức caacutech hoạt động của chuacuteng
3 Caacutec kiểu ảnh hưởng trong tập cấu higravenh
Coacute ba kiểu caacutech thức hoạt động của tập tin cấu higravenh như sau
Kiểu Caacutech hoạt động File cầu higravenh Viacute dụ
S i m p l eGroup
Coacute hiệu lực trecircntừng dograveng trongfile
Extensionconf
Exten=gt4001dial(sip400)
O p t i o ninheritance
Dograveng khai baacuteosau thừa kếnhững thocircng sốkhai baacuteo trước
Zapataconf [channels]
Context=From_PSTN
Signalling=fxs_ks
Group=1Channel=gt1
C o m p l e xEntity
Mỗi entity nhậnmột ngữ cảnh
sipconf
iaxconf
[cisco]
Type=friend
Secret=12345
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5172
Taacutec Giả Lecirc Quốc Toagraven
51
Host=192168165
Context=NoiBo
[xten]
Type=friend
Secret=6789
Host=dynamic
Context=NoiBo
1 Simple Group
Đacircy lagrave kiểu cấu higravenh đơn giản nhất thường sử dụng trong caacutec fileextentionconf meetmeconf voicemailconf tương ứng với mỗi dograveng khai baacuteo lagravemột đối tượng coacute yacute nghĩa trecircn dograveng đoacute
Viacute dụ
Extentionconf [section]
object1=gt op1op2op3
object2=gt op1bop2bop3b
Trong viacute dụ trecircn mỗi dograveng tương ứng với caacutec toaacuten tử khaacutec nhau object1 coacute caacutectoaacuten từ op1 op2 op3 trong khi đoacute object2 lại coacute caacutec toaacuten từ op1b op2b op3b
2 Option inheritance
Đacircy lagrave cấu higravenh kiểu thừa kế thường được cấu higravenh trong caacutec file zapataconfagentconf với kiểu cấu higravenh nagravey thigrave caacutec dograveng phiacutea dưới coacute thể thừa kế caacutec thocircng sdograveng phiacutea trecircn tương ứng với mỗi section caacutec dograveng phiacutea dưới coacute thể thay đổi caacutecthocircng số cho tươngứng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5272
Taacutec Giả Lecirc Quốc Toagraven
52
Viacute dụ
Extentionconf
[section]
Op1=bas
Op2=adv
Object1=gt1
Op1=int
Object1=gt2
Với cấu higravenh trecircn coacute thể giải thiacutech như sau object1=gt1 thừa hưởng hai thocircngsố ở phiacutea trecircn đoacute lagrave op1=bas vagrave op2=adv trong khi đoacute đối với object1=gt2 với thocircngsố op1=int được khai baacuteo lại necircn object1=gt2 được thừa kế từ hai thocircng số op1=invagrave op2=adv
3 Complex Entity
Với cấu kiểu nagravey được tổ chức thagravenh nhiều entity ứng với mỗi entity coacute nhiềthocircng số được khai baacuteo mỗi entity ở đacircy chiacutenh lagrave caacutec section để khai baacuteo caacutec kecircnhthocircng tin Cấu higravenh thường được sử dụng trong caacutec file iaxconf sipconf
Viacute dụ
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5372
Taacutec Giả Lecirc Quốc Toagraven
53
[entity1]
Op1=value1
Op2=value2
[entity2]
Op1=value3
Op2=value4
Entity1 coacute caacutec giaacute trị value1 vagrave value2 cho thocircng số op1 vagrave op2 trong khi đoacute
cũng lagrave thocircng số op1 vagrave op 2 nhưng coacute caacutec giaacute trị khaacutec lagrave value3 vagrave value4 choentity2
4 Cấu higravenh giao tiếp với mạng PSTN
1 Ngữ cảnh kết nối
Để kết nối với mạng PSTN chuacuteng ta cần phải coacute một card TDM với Cổng
FXO vagrave một đường dacircy điện thoại hoặc coacute thể lagrave một tổng đagravei nội bộ PBX Cnhiều nhagrave sản xuất phần cứng khaacutec nhau nhưng trong phần cấu higravenh dưới dacircy lagrave cấhigravenh cho card zapata TDM01B của digium (card nagravey hiện nay giaacute baacuten khoảng175$)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1272
Taacutec Giả Lecirc Quốc Toagraven
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ậnchuyển cuộc gọi khi khocircng trả lời chuyển cuộc gọi tức thời chuyển cuộc gọi v
thời gian định trước3 Caller ID (hiển thị số gọi)
Chức năng nagravey rất hữu dụng khi một ai đoacute gọi đến vagrave ta muốn biết chiacutenh xaacuteclagrave gọi từ đacircu vagrave trong một số trường hợp biết chắc họ lagrave ai
Ngoagravei ra Caller ID cograven lagrave chức năng cho pheacutep chuacuteng ta xaacutec nhận số thuecirc bao
gọi đến coacute nghĩa lagrave dựa vagraveo caller ID chuacuteng ta coacute tiếp nhận hay khocircng tiếp nhậncuộc gọi từ phiacutea hệ thống Asterisk Ngăn một số cuộc gọi ngoagravei yacute muốn
4 Automated attendant (chức năng IVR)
Chức năng tương taacutec thoại coacute rất nhiều ứng dụng trong thực tế khi gọi điệthoại đến một cơ quan hay xiacute nghiệp thuecirc bao thường nghe thocircng điệp nhưldquoXinchagraveo mừng bạn đatilde gọi đến cocircng ty chuacuteng Tocirci hatildey nhấn phiacutem 1 để gặp phograveng kinh
doanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquosau đoacute tuỳ vagraveo sự tương taacutec của thuecirc 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 thuecirc bao muố biết tỉ giaacute Đocircla hiện nay như thế nagraveo hay kết quả sổ số hellip tất caacutec những monmuốn trecircn đều coacute thể thực hiện qua chức năng tương taacutec thoại
5 Time and Date
Vagraveo từng thời gian cụ thể cuộc gọi sẽ định hướng đến một số điện thoại hmột chức năng cụ thể khaacutec viacute dụ trong cocircng ty giaacutem đốc muốn chỉ cho pheacutep nhacircnviecircn sử dụng maacutey điện thoại trong giờ hagravenh chaacutenh cograven ngoagravei giờ thigrave sẽ hạn chế hakhocircng cho pheacutep gọi ra becircn ngoagravei
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1372
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1472
Taacutec Giả Lecirc Quốc Toagraven
14
Asterisk thực hiện rất nhiều ngữ cảnh ứng dụng khaacutec nhau tuỳ vagraveo nhu cầu sdụng dưới dacircy lagrave những ngữ cảnh ứng dụng thường được sử dụng trong thực
triển khai hệ thống asterisk1 Tổng đagravei voip IP PBX
IP BPX
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1572
Taacutec Giả Lecirc Quốc Toagraven
15
Đacircy lagrave hệ thống chuyển mạch voip được xacircy dựng phục vụ caacutec cocircng ty coacute nhucầu thực hiện trecircn nền tảng mạng nội bộ đatilde triển khai Thay vigrave lắp đặt một hệ thố
PBX cho nhu cầu liecircn lạc nội bộ thigrave necircn lắp đặt hệ thống voip điều nagravey sẽ lagravem giảchi phiacute đaacuteng kể Hệ thống coacute thể liecircn 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 ở đacircy lagrave hiện tại Cocircng ty đatilde trang bị hệ thống PBX bacircygiờ cần trang bị thecircm để đaacutep ứng nhu cầu liecircn lạc trong cocircng ty sao cho với chi phthấp nhất giải phaacutep để thực hiện đoacute lagrave trang bị hệ thống asterisk vagrave kết nối với h
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1672
Taacutec Giả Lecirc Quốc Toagraven
16
thống PBX đang tồn tại qua luồng E1 Ngoagravei ra để tăng khả năng liecircn lạc với mạnPSTN vagrave VOIP khaacutec Cocircng Ty coacute thể thực hiện kết nối với nhagrave cung cấp dịch vụvoip
3 Kết nối giữa caacutec server Asterisk
Kết nối giữa caacutec server asterisk
Phương phaacutep trecircn ứng dụng rất hiệu quả cho caacutec cocircng ty nằm ratildei raacutec ở caacutec vtrị địa lyacute khaacutec nhau nhằm giảm chi phiacute đường dagravei Viacute dụ Cocircng ty Mẹ coacute trụ sở đặtại nước Mỹ vagrave caacutec Chi nhaacutenh đặt tại Việt Nam với caacutec địa điểm Thagravenh phố Hồ ChMinh vagrave Hagrave Nội Thocircng qua mạng WAN của Cocircng Ty caacutec cuộc gọi nội bộ giữa caacutec
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1772
Taacutec Giả Lecirc Quốc Toagraven
17
vị triacute khaacutec nhau sẽ lagravem giảm chi phiacute đaacuteng kể Ngữ cảnh nagravey về mặt phaacutep luật khocircncho cuộc gọi từ Mỹ vagraveo Việt Nam
4 Caacutec ứ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 caacutec server kết nối với hệ thống PSTN hay tổng đagravei PBXđể triển khai caacutec ứng dụng như tương taacutec thoại IVR Một viacute dụ cho ứng dụng tươtaacutec thoại đoacute lagrave cho biết kết quả sổ số hay kiểm tra cước cuộc gọi giống dịch v19001260 vậy Ứng dụng VoiceMail thu nhận những tin nhắn thoại từ phiacutea thuecirc bao giống như chức năng hộp thư thoại của Bưu Điện Thagravenh phố triển khai Cograve
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1872
Taacutec Giả Lecirc Quốc Toagraven
18
chức năng điện thoại hội nghị thiết lập cho nhiều maacutey điện thoại cugraveng noacutei chuyệvới nhau
5 Chức năng Phacircn phối cuộc gọi tự động ACD
Phacircn phối cuộc gọi với hagraveng đợi
ACD(Automatic Call Distribution) Phacircn phối cuộc gọi tự động
Đacircy lagrave chức năng ứng dụng cho nhu cầu chăm soacutec khaacutech hagraveng hay nhận phảnhổi từ phiacutea khaacutech hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1972
Taacutec Giả Lecirc Quốc Toagraven
19
Cocircng ty coacute khả năng tiếp nhận cugraveng một luacutec 10 cuộc gọi như thế cuộc gọi th11 gọi đến thigrave hệ thống giải quyết như thế nagraveo Bigravenh thường thigrave sẽ nghe tiacuten hiệ
bận nhưng với chức năng phacircn phối cuộc gọi sẽ đưa thuecirc bao đoacute vagraveo hagraveng đợi đchờ trả lời trong khi chờ trả lời cuộc gọi thuecirc bao coacute thể nghe những bagravei haacutet hay dasterisk cung cấp trong luacutec nagravey nếu 1 trong mười số điện thoại trở về trạng thaacutei rthigrave cuộc gọi đang chờ sẽ được trả lời Giống như chức năng của dịch vụ 1080 ha116 của Bưu Điện Thagravenh Phố vậy
2 CAacuteC KHAacuteI NIỆM TRONG HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Trong chương nagravey sẽ giải thiacutech rotilde caacutec khaacutei niệm cơ bản liecircn quan đến hệ thốnasterisk cung cấp những kiến thức nền tảng những khaacutei niệm cần thiết để thiếttriển khai xacircy dựng hệ thống điện thoại với Asterisk
2 PBX - Private Branch Exchange
PBX hay cograven gọi lagrave PABX - Private Automatic Branch Exchange lagrave hệ thốngtổng đagravei nội bộ được đặt tại nhagrave thuecirc bao từ Automatic ở đacircy muốn noacutei đến lagrave hthống tổng đagravei điện tử tự động nhưng hiện nay đa số lagrave tổng đagravei PBX điện tử tđộng necircn từ trecircn thực sự khocircng cograven cần thiết nữa
PBX với mục tiecircu chia sẻ nhiều thuecirc bao nội bộ gọi ra thế giới becircn ngoagraveithocircng qua một vagravei đường trung kế hay noacutei một caacutech khaacutec PBX lagrave hệ thống trungchuyển giữa caacutec đường dacircy điện thoại becircn ngoagravei từ cocircng ty điện thoại vagrave maacutey điệthoại nội bộ trong tổng đagravei PBX Vigrave thế necircn số lượng maacutey điện thoại nội bộ luocircnhiều hơn số đường dacircy nối đến PBX từ becircn ngoagravei
wwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2072
Taacutec Giả Lecirc Quốc Toagraven
20
PBX thực hiện chuyển mạch cuộc gọi caacutec maacutey điện thoại nội bộ với nhau vvới caacutec maacutey điện thoại becircn ngoagravei thocircng qua đường trung kế Đồng thời thực hiệ
chuyển mạch caacutec cuộc gọi điện thoại từ becircn ngoagravei vagraveo caacutec maacutey điện thoại nội bộNgoagravei việc chuyển mạch cuộc gọi PBX cung cấp nhiều tiacutenh năng sử dụng
cho nhiều mục điacutech khaacutec nhau của khaacutech hagraveng magrave bản thacircn caacutec đường dacircy điệnthoại từ cocircng ty điện thoại kết nối đến khocircng thể thực hiện được caacutec tiacutenh năng ntương taacutec thoại(IVR) Voicemail phacircn phối cuộc gọi tự động(ADC)hellip
Hiện nay với việc phaacutet triển mạnh mẽ của cocircng nghệ VoIP chuacuteng ta cograven coacutethecircm thuật ngữ IP PBX Đacircy lagrave hệ thống chuyển mạch PBX với cocircng nghệ Voip
3 VOIP - Voice Over Internet Protocol
Voice over Internet Protocol (VoIP) lagrave một cocircng nghệ cho pheacutep truyền thoạisử dụng giao thức mạng IP trecircn cơ sở hạ tầng sẵn coacute của mạng internet Voip lagrave mtrong những cocircng nghệ viễn thocircng đang được quan tacircm nhất hiện nay khocircng chỉ đố
với nhagrave khai thaacutec caacutec nhagrave sản xuất magrave cograven cả với người sử dụng dịch vụVoip coacute thể vừa thực hiện mọi loại cuộc gọi như trecircn mạng điện thoại kecircn
truyền thống (PSTN) đồng thời truyền dữ liệu trecircn cơ sở mạng truyền dữ liệu Dcaacutec ưu điểm về giaacute thagravenh dịch vụ vagrave sự tiacutech hợp nhiều loại higravenh dịch vụ necircn voihiện nay được triển khai một caacutec rộng ratildei
Dịch vụ điện thoại voip lagrave dịch vụ ứng dụng giao thức IP nguyecircn tắc củaVoIP bao gồm việc số hoaacute tiacuten hiệu tiếng noacutei thực hiện việc neacuten tiacuten hiệu số chia nhcaacutec goacutei nếu cần vagrave truyền goacutei tin nagravey qua mạng tới nơi nhận caacutec goacutei tin nagravey đượraacutep lại theo đuacuteng thứ tự của bản tin giải matilde tiacuten hiệu tương tự phục hồi lại tiếng n ban đầu
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2172
Taacutec Giả Lecirc Quốc Toagraven
21
Caacutec cuộc gọi trong VoIP dựa trecircn cơ sở sử dụng kết hợp cả chuyển mạchkecircnh vagrave chuyển mạch goacutei Trong mỗi loại chuyển mạch đều coacute ưu nhược điể
riecircng của noacute Trong kỹ thuật chuyển mạch kecircnh giagravenh riecircng cho một kecircnh truyềngiữa hai thiết bị đầu cuối thocircng qua caacutec node chuyển mạch trung gian Trongchuyển mạch kecircnh tốc độ truyền dẫn luocircn luocircn cố định(nghĩa lagrave băng thocircng khocircnđổi) với mạng điện thoại PSTN tốc độ nagravey lagrave 64kbps truyền dẫn trong chuyểmạch kecircnh coacute độ trễ nhỏ
Trong chuyển mạch goacutei caacutec bản tin được chia thagravenh caacutec goacutei nhỏ gọi lagrave caacutec
goacutei nguyecircn tắc hoạt động của noacute lagrave sử dụng hệ thống lưu trữ vagrave chuyển tiếp caacutec gtin trong nuacutet mạng Đối với chuyển mạch goacutei khocircng tồn tại khaacutei niệm kecircnh riecircng băng thocircng khocircng cố định coacute nghĩa lagrave coacute thể thay đổi tốc độ truyền kỹ thuật chuyểmạch goacutei phải chịu độ trễ lớn vigrave trong chuyển mạch goacutei khocircng quy định thời giancho mỗi goacutei dữ liệu tới điacutech mỗi goacutei coacute thể đi bằng nhiều con đường khaacutec nhau đtới điacutech chuyển mạch goacutei thiacutech hợp cho việc truyền dữ liệu vigrave trong mạng truyền dliệu khocircng đogravei hỏi về thời gian thực như thoại để sử dụng ưu điểm của mỗi lo
chuyển mạch trecircn thigrave trong voip kết hợp sử dụng cả hai loại chuyển mạch kecircnh vchuyển mạch goacutei
4 PSTN ndash Public Switched Telephone Network
PSTN lagrave mạng chuyển mạch điện thoại cocircng cộng hay noacutei caacutech khaacutec lagrave mạngkết nối tất cả caacutec hệ thống tổng đagravei chuyển mạch-mạch
Để hiểu rotilde hơn hatildey xem xeacutet mạng PSTN với mạng Internet về khiacutea cạnhchuyển thoại trecircn đoacute Chuyển mạch mạch muốn thực hiện cuộc gọi giữa hai thu bao thigrave hệ thống phải giagravenh riecircng một kecircnh truyền 64kbps để chuyển tải tiacuten hiệthoại trecircn đoacute Cograven cuộc gọi điện thoại trecircn mạng Internet thigrave tiacuten hiệu thoại đượđoacuteng goacutei vagrave chuyển đi trecircn cugraveng kecircnh truyền với nhiều dịch vụ khaacutec Vigrave lẽ đoacute chấlượng cuộc gọi trecircn mạng PSTN bao giờ cũng tốt hơn trecircn mạng Internet nhưng đổ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2272
Taacutec Giả Lecirc Quốc Toagraven
22
lại chi phiacute lại đắc hơn rất nhiều đặc biệt lagrave caacutec cuộc gọi quốc tế necircn phải cần nhắc kỹ khi sử dụng
PSTN được phaacutet triển trecircn chuẩn ITU(International TelecommunicationUnion) cograven mạng Internet được phaacutet triển trecircn chuẩn IETF(Internet EngineeringTask Force) cả hai mạng trecircn đều sử dụng địa chỉ để định tuyến cuộc gọi PSTN sdụng caacutec con số điện thoại để chuyển mạch cuộc gọi giữa caacutec tổng đagravei điện thotrong khi đoacute trecircn mạng Internet địa chỉ IP sẽ được sử dụng để định tuyến caacutec goacutethoại
5 TDM ndash Time Division Multiplexing
Lagrave kỹ thuật gheacutep kecircnh phacircn chia thời gian nhiều tiacuten hiệu coacute thể truyền đồngthời trecircn một đường truyền TDM được sử dụng chuyển thoại trong hệ thống mạPSTN Coacute hai chuẩn gheacutep kecircnh TDM cơ bản lagrave E1 với 30 kecircnh thoại trecircn mộtkhung tốc độ 2Mbps vagrave T1 với 24 kecircnh thoại tốc độ 15Mbps
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2372
Taacutec Giả Lecirc Quốc Toagraven
23
Higravenh Minh họa gheacutep kecircnh phacircn chia theo thời gian
6 Caacutec higravenh thức baacuteo hiệu giao tiếp TDM
1 FXO vagrave FXS
FXO (Foreign Exchange Office) lagrave thiết bị nhận tiacuten hiệu từ tổng đagravei gửi đếnnhư dograveng chuocircng tiacuten hiệu nhấc gaacutec maacutey tiacuten hiệu mời quay số gửi vagrave nhận tiacuten hiệthoạihellip FXO giống như maacutey Fax hay modem dial-up 56k vậy Dugraveng để kết nối vớ
đường dacircy điện thoại
FXS (Foreign Exchange Station) lagrave thiết bị tại nơi cung cấp đường dacircy điệnthoại thiết bị FXS sẽ cung cấp tiacuten hiệu mời quay số(dialtone) dograveng chuocircng hồi acircmchuocircng(ring tone) Trong đường dacircy Analog FXS cung cấp dograveng chuocircng vagrave điện aacutepcho điện thoại hoạt động viacute dụ FXS cung cấp điện aacutep -48VDC đến maacutey điện tho
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2472
Taacutec Giả Lecirc Quốc Toagraven
24
Analog trong suốt thời gian đagravem thoại vagrave cung cấp 90VAC(20hz) để phaacutet điện aacuteprung chuocircng Thiết bị FXS phaacutet cograven thiết bị FXO nhận
Card TDM sử dụng trong hệ thống asterisk thường tiacutech hợp vừa thiết bị FXOvừa lagrave thiết bị FXS(Giống bộ ATA) FXO để kết nối với đường dacircy điện thoại cograveFXS dugraveng để kết nối với maacutey điện thoại analog thocircng thường dugraveng để chuyển mạcuộc gọi TDM qua hệ thống asterisk(Xem thecircm trong phần cấu higravenh cho kecircnhTDM)
Toacutem lại cần nắm
FXS được kết nối với FXO giống với đường dacircy điện thoại nối với maacuteyđiện thoại
FXS cung cấp nguồn cho điện thoại FXO(điện thoại Analog)
Higravenh a) Maacutey điện thoại vai trograve FXO kết nối với FXS(PSTN) Higravenh b) PBXkết nối với FXO vagrave FXS Higravenh c) ATA đoacuteng vai trograve như FXS để kết nối với maacuteyđiện thoại vai trograve FXO
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2572
Taacutec Giả Lecirc Quốc Toagraven
25
2 Baacuteo hiệu Analog giữa đầu cuối vagrave tổng đagravei
Khi chuacuteng ta nhấc mấy điện thoại để gọi thigrave nghe tiacuten hiệu mời quay số kh
cuộc gọi gọi đầu becircn kia bị bận thigrave chuacuteng ta nghe tiacuten hiệu bận(busy tone) caacutec loạtiacuten hiệu như vậy gọi lagrave caacutec tiacuten hiệu baacuteo hiệu analog Caacutec tiacuten hiệu như Mời quay sốtiacuten hiệu bận rung chuocircng trạng thaacutei nhấc gaacutec maacutey Caacutec loại tiacuten hiệu trecircn được trađổi giữa thiết bị FXO vagrave FXS
Coacute nhiều phương thức baacuteo hiệu khaacutec nhau ứng với từng nơi sử dụng vigrave thếtại nơi kết nối với đường dacircy điện thoại cần xem xeacutet họ đang sử dụng phương th
baacuteo hiệu gigrave từ đoacute chuacuteng ta khai thaacutec loại tiacuten hiệu baacuteo hiệu cho thiacutech hợp caacutec phương thức baacuteo hiệu như Loop Start Ground Start Một minh họa cho việc sửdụng sai phương thức baacuteo hiệu lagrave khi chuacuteng ta khai baacuteo phương thức baacuteo hiệu giữhệ thống Asterisk vagrave đường dacircy điện thoại khaacutec nhau thigrave dẫn đến Asterisk sẽ khocircnnhận biết được tiacuten hiệu gaacutec maacutey điều nagravey sẽ lagravem cho asterisk khocircng baacuteo giờ giải tỏđược cuộc gọi để thực hiện cuộc gọi mới
3 Baacuteo hiệu giữa caacutec tổng đagravei
SS7 hệ thống baacuteo hiệu số 7 được phaacutet triển bởi ATampT vagrave ITU lagrave hệ thống baacuteo hiệu chuyển caacutec cuộc gọi giữa caacutec tổng đagravei trong mạng PSTN Trong hệ thốn baacuteo hiệu số 7 tiacuten hiệu chuyển tải trecircn đường trung kế kết nối giữa hai tổng đagravei gồcoacute hai mạch riecircng một cho thoại vagrave một cho baacuteo hiệu như vậy thoại vagrave baacuteo hiệu cthể chuyển trecircn hai kecircnh vật lyacute khaacutec nhau
7 Baacuteo Hiệu trecircn mạng điện thoại VoIP
1 SIP Session Initiation Prorocol
Sip lagrave giao thức Internet dagravenh cho baacuteo hiệu VoIP được phaacutet triển bởi IETFcung cấp vagravei chức năng giống hệ thống baacuteo hiệu số 7 nhưng dựa trecircn nền IP Mộchức năng giống baacuteo hiệu số 7 đoacute lagrave baacuteo hiệu vagrave thoại chuyển tải trecircn hai kecircnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2672
Taacutec Giả Lecirc Quốc Toagraven
26
riecircng Giao thức SIP thực hiện chức năng thiết lập vagrave baacuteo hiệu cuộc gọi khi noacutei đế baacuteo hiệu cuộc gọi lagrave chỉ định caacutec tiacuten hiệu baacuteo hiệu như tiacuten hiệu mời quay số tiacutehiệu bậnhellip
2 Proxy server
Mặc dầu hai thiết bị SIP coacute thể liecircn lạc trực tiếp với nhau để khởi tạo cuộgọi nhưng trong giao thức SIP cograven coacute chức năng Proxy để linh hoạt hơn trong thiếlập cuộc gọi Proxy Server sẽ lagravem nhiệm vụ ghi nhận tất cả caacutec số điện thoại đư phiacutea client đăng kyacute đến qua bản tin ldquoRegistrationrdquo Khi một client khaacutec thực hiện
cuộc gọi thigrave thực sự Client đoacute khocircng biết số điện thoại cần gọi đang ở đacircu necircn thocircnqua Proxy server để tigravem kiếm thiết lập cuộc gọi
+
Higravenh Đăng kyacute từ Client đến SIP Proxy Với Giao thức SIP đường baacuteo hiệu vagravethoại riecircng
3 RTP vaacute NAT
Caacutec cuộc gọi trecircn Internet với giao thức SIP được chia thagravenh caacutec goacutei thoại vagraveđược chuyển qua giao thức RTP(Real Time Protocol) RTP lagrave giao thức khocircng chỉthực hiện chuyển caacutec goacutei thoại qua Internet magrave cograven coacute cả video nữa Một cuộc gọ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2772
Taacutec Giả Lecirc Quốc Toagraven
27
thocircng thường coacute hai hướng thocircng tin lagrave nhận vagrave phaacutet RTP lagravem việc chuyển caacutec goacutedữ liệu thoại cũng trecircn hai hướng
NAT Network Address Translators lagrave một trở ngại lớn trong giao thức RTPMạng sử dụng NAT lagrave một mạng chia sẻ nhiều địa chỉ IP nội bộ với một địa chỉ ICocircng cộng để kết nối với thế giới becircn ngoagravei NAT dugraveng để chia sẻ nhiều maacutey tiacutentrong mạng LAN nội bộ sử dụng được Internet nhưng cũng chiacutenh vigrave thế magrave caacutec maacutetiacutenh nội bộ gặp khoacute khăn trong việc thực hiện cuộc gọi VoIP qua Internet Đoacute chiacutenhlagrave vấn để trở ngại khi truyền thoại qua giao thức RTP
Higravenh Minh họa hoạt động của NAT
Trong Giao thức RTP như chuacuteng ta đatilde biết đoacute lagrave thoại được chuyển trecircn haiđường khaacutec nhau lagrave đường phaacutet vagrave đường thu Vấn đề NAT nằm ở chỗ tiacuten hiệthoại từ becircn ngoagravei vagraveo becircn trong qua giao thức RTP khocircng thực hiện được cograven chiềungược lại thigrave thực hiện tốt Hay noacutei caacutech khaacutec vấn đề NAT lagravem cho caacutec cuộc gọi t
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2872
Taacutec Giả Lecirc Quốc Toagraven
28
Internet đagravem thoại vagraveo caacutec maacutey nội bộ qua NAT thigrave khocircng nghe được cograven trongtrường hợp caacutec cuộc gọi từ caacutec maacutey nội bộ ra caacutec maacutey internet thigrave nghe tốt
Vấn đề NAT trecircn được giải quyết trong Asterisk bằng việc khai baacuteo thocircng số NAT=yes trong cấu higravenh kecircnh giao thức SIP
4 IAX ndash Inter Asterisk eXchange
IAX lagrave giao thức baacuteo hiệu Voip được phaacutet triển bởi taacutec giả của phần mềmAsterisk để khắc phục những hạn chế trong giao thức SIP Khocircng giống như giathức SIP chuyển tải thoại vagrave baacuteo hiệu trecircn hai kecircnh khaacutec nhau (out of band) IAXchuyển tải thoại vagrave baacuteo hiệu trecircn cugraveng một kecircnh(in band) IAX giải quyết được vấđề NAT đề cập trecircn phần giao thức SIP Mặc khaacutec IAX lagrave giao thức tối ưu trongviệc sử dụng băng thocircng cho pheacutep nhiều goacutei dữ liệu thoại trecircn cugraveng một IP headecơ chế chuyển tải nhiều cuộc gọi trecircn cugraveng một goacutei IP được gọi lagrave trung kế(Trunk)
Coacute thể giải thiacutech thecircm cơ chế trung kế như sau Giả sử Tocirci cần gửi 5 bức thtới người bạn của Tocirci Tocirci sẽ coacute hai higravenh thức để thực hiện thứ nhất lagrave mỗi bức tTocirci bỏ vagraveo một phong bigrave vậy tổng cộng tocirci phải sử dụng 5 phong bigrave để gửi đi 5 bứthư Caacutech thứ hai lagrave Tocirci bỏ 5 bức thư vagraveo 1 phong bigrave vagrave gửi đi vậy tổng cộng Tocircchỉ tốn 1 phong bigrave Qua phacircn tiacutech trecircn rotilde ragraveng việc 5 bức thư vagraveo một phong bigrave sẽtiết kiệm hơn so với 5 bức thư với 5 phong biacute Cơ chế trecircn cũng giống như nhiềcuộc gọi được đoacuteng thagravenh goacutei vagrave chuyển đi trecircn đường trung kế
Toacutem lại IAX lagrave giao thức dagravenh cho VoIP mới nhất cho đến thời điểm nagravey vớinhiều ưu điểm hấp dẫn như
+ Tối thiểu sử dụng băng thocircng
+ Trong suốt với NAT
+ Hiệu quả với cơ chế trung kế
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2972
Taacutec Giả Lecirc Quốc Toagraven
29
8 Thiết Bị VoIP
1 Voip Phone
Đacircy lagrave thiết bị phần cứng kết nối với mạng VoIP giống như maacutey điện thoại đ bagraven thocircng thường nhưng dagravenh cho VoIP cần phải thực hiện cấu higravenh trước khi sửdụng
Lưu yacute một số tiacutenh năng khi thực hiện mua thiết bị điện thoại VoIP
+ Low bandwidth hỗ trợ Codec nagraveo G729 lagrave tốt nhất hiện nay
+ Web Interface Phải coacute giao tiếp thiết lập cấu higravenh thacircn thiện dễ sử dụng
+ Audio Interface Coacute speaker phone hay khocircng
Giaacute thagravenh của điện thoại voip IP đắc hơn điện thoại thocircng thường giaacute khoảntrecircn dưới 100$ một caacutei
Higravenh Maacutey Điện Thoại VoIP
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3072
Taacutec Giả Lecirc Quốc Toagraven
30
2 Softphone
Lagrave một phần mềm được cagravei trecircn maacutey tiacutenh thực hiện tất cả caacutec chức năng giốn
như thiết bị điện thoại Voip cần lưu yacute khi sử dụng softphone lagrave maacutey tiacutenh phải ccard acircm thanh headphone vagrave firewall khocircng bị khoacutea
Sử dụng softphone với hệ thống Asterisk necircn dugraveng softphone với cocircng nghệgiao thức mới dagravenh cho Asterisk đoacute lagrave IAX
Higravenh Điện Thoại Softphone
3 Card giao tiếp với PSTN
Muốn cho pheacutep caacutec maacutey điện thoại nội bộ trong hệ thống Asterisk kết nối vthực hiện cuộc gọi với mạng PSTN chuacuteng ta cần phải coacute thiết bị phần cứng tươthiacutech Thiết bị phần cứng sử dụng cho hệ thống Asterisk do chiacutenh taacutec giả lập cocircng
Digium phacircn phối đacircy cũng chiacutenh lagrave yacute tưởng lớn trong việc phacircn phối phần mềmAsterisk lagrave hệ thống nguồn mở sử dụng miễn phiacute
Thiết bị phần cứng thường kyacute hiệu bắt đầu bằng cụm từ TDMxyB trong đoacute lagrave số lượng port FXS y lagrave số lượng port FXO giaacute trị tối đa của x vagrave y lagrave 4 viacute dụcard TDM22B coacute nghĩa lagrave coacute 2 fort FXS vagrave 2 port FXO
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3172
Taacutec Giả Lecirc Quốc Toagraven
31
Higravenh Card TDM22B gồm 4 port 2 FXS vagrave 2 FXO
4 ATA Analog Telephone Adaptors
ATA lagrave thiết bị kết nối với điện thoại Analog thocircng thường đến mạng VoIPmột thiết bị ATA gồm coacute hai loại port RJ-11 để kết nối với maacutey điện thoại analo
thocircng thường cograven RJ-45 để kết nối với mạng VoIP
ATA thực sự lagrave thiết bị FXS chuyển đổi tiacuten hiệu Analog sang tiacuten hiệu số sửdụng cho mạng VoIP để tận dụng maacutey điện thoại Analog necircn trang bị thiết bị ATAthay vigrave phải trang bị điện thoại VoIP
Thiết bị ATA sử dụng với giao thức IAX được Digium phacircn phối lagrave thiết bịATA được sử dụng rộng ratildei với Asterisk coacute tecircn gọi lagrave IAXy
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3272
Taacutec Giả Lecirc Quốc Toagraven
32
Higravenh Thiết bị ATA
9 Codecs
Thuật Toaacuten codecs(CompressorDe-compressor) lagrave một tập caacutec quy luật đượcsử dụng để chuyển đổi caacutec tiacuten hiệu thoại dạng Analog sang tiacuten hiệu số vagrave ngược lạ
Coacute nhiều thuật toaacuten codec để thực hiện chuyển đổi tiacuten hiệu analog sang tiacuten
hiệu số dạng nhị phacircn (01) như G711 GSM G729hellipỨng với mỗi thuật toaacuten coacutenhững ưu điểm riecircng đặc biệt lagrave việc tối ưu sử dụng băng thocircng trecircn đường truyềMục tiecircu cuối cugraveng lagrave caacutec thuật toaacuten đưa ra phải đảm bảo chất lượng cuộc gọi nhvagrave tiết kiệm băng thocircng nhất
G729 lagrave thuật toaacuten codec tốt nhất hiện nay trong hệ thống VoIP Với hệthống Asterisk để sử dụng thuật toaacuten nagravey cần phải mua bản quyền sử dụng vigrave đacircy
codec khocircng miễn phiacute sử dụng
10 QoS ndash Quality of Service
Caacutec yếu tố ảnh hưởng đến chất lượng của dịch vụ đối với VoIP đoacute lagrave caacuteyếu ảnh hưởng đến chất lượng tiacuten hiệu thoại
1 Độ trễ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3372
Taacutec Giả Lecirc Quốc Toagraven
33
Thoại lagrave dịch vụ mang tiacutenh thời gian thực rất cao vigrave thế trễ lagrave yếu tố ảnhhưởng rất lớn đến chất lượng dịch vụ Trễ được định nghĩa lagrave khoảng thời gian tiacute
từ luacutec tiacuten hiệu thoại đi từ miệng người noacutei tới tai người nghe Trễ lagrave yếu tố khocircnthể traacutenh khỏi độ trễ đối với mạng điện thoại truyền thống (mạng PSTN) khoảng50ms đến 70ms theo khiến nghị của ITU-T để đảm bảo chất lượng cho hệ thốVoIP thigrave độ trễ từ đầu phaacutet tới đầu thu hoặc ngược lại khocircng được vượt quaacute 150mkhi magrave độ trễ vượt quaacute 400ms đến 500ms thigrave khocircng thể chấp nhận được
Caacutec nguyecircn nhacircn gacircy ra trễ bao gồm Trễ trecircn mạng lưới trễ trecircn bộ mả hoacutea
giải matilde trễ trong quaacute trigravenh đoacuteng goacutei trễ bộ đệm trễ xử lyacute tiếng noacuteihellip2 Độ trượt(Jitter)
Nguyecircn nhacircn gacircy ra trượt lagrave goacutei tiacuten hiệu thoại trong quaacute trigravenh truyền từnguồn đến điacutech sẽ gặp phải những điều kiện khaacutec nhau trecircn mạng lưới do đoacute thườđến điacutech với những khoảng trễ khaacutec nhau Đacircy lagrave tiacutenh khocircng đồng nhất của trễ Mnguyecircn nhacircn khaacutec của trượt đối với ứng dụng PC to PC lagrave do việc sử dụng hệ điề
hagravenh phi thời gian thực caacutec goacutei tin thoại phải đợi hệ điều hagravenh xử lyacute trong nhữnkhoảng thời gian khaacutec nhau khi magrave hệ điều hagravenh đang phải xử lyacute đối với caacutec ứndụng khaacutec
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3472
Taacutec Giả Lecirc Quốc Toagraven
34
Higravenh Nguyecircn nhacircn xảy ra trượt
Để loại bỏ tiacutenh khocircng đồng nhất của trễ người ta thiết kế caacutec bộ đệm t(Jitter Buffer) tại nơi đến của caacutec goacutei tin caacutec goacutei tin đến với caacutec khoảng caacutech khaacutecnhau về thời gian được lưu tại bộ đệm rồi phaacutet khỏi bộ đệm với khoảng trễ n
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3572
Taacutec Giả Lecirc Quốc Toagraven
35
nhau Khi bộ đếm coacute kiacutech thước cagraveng lớn thigrave khả năng loại bỏ tiacutenh khocircng đồng nhấcagraveng lớn tuy nhiecircn việc sử dụng bộ đệm sẽ gacircy ra hiện tượng trễ trong ứng dụnthoại do đoacute cần coacute bagravei toaacuten cacircn đối giữa độ trễ vagrave độ trượt
Ngoagravei 2 nguyecircn nhacircn trecircn cograven một số nguyecircn nhacircn nữa ảnh hưởng đến chấtlượng thoại như độ mất goacutei giới hạn băng thocircng tiếng vọng
3 CAgraveI ĐẶT ASTERISK
1 Cagravei đặt Asterisk
1 Download vagrave bung neacuten
Để cagravei đặt Asterisk đầu tiecircn chuacuteng ta cần phải cagravei đặt hệ điều hagravenh linux trecircnmaacutey tiacutenh của migravenh Coacute thể cagravei hệ điều hagravenh Linux Fedora CentOS Redhat hoặcDebian Caacutec goacutei phần mềm phụ thuộc phải coacute trong hệ điều hagravenh Linux trước khcagravei Asterisk bao gồm
bison
gcc
kernel-source
libtermcap-devel
ncurses-devel
openssl096b
openssl-devel
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3672
Taacutec Giả Lecirc Quốc Toagraven
36
Sau khi hoagraven tất caacutec bước trecircn chuacuteng ta tiến hagravenh download phần mềmasterisk với phiecircn bản mới nhất
cd usrsrc
wgetftpftpdigiumcompubasteriskasterisk-140targz
wgetftpftpdigiumcompubasteriskasterisk-addons-140targz
wgetftpftpdigiumcompubasteriskasterisk-sounds-140targz
wgethttpftpdigiumcompubzaptelzaptel-140targz
wgethttpftpdigiumcompublibprilibpri-140targz
Việc download coacute thể nhanh hay chậm tugravey vagraveo tốc độ trecircn đường internet saukhi download hoagraven thagravenh chuacuteng ta tiến hagravenh bung neacuten caacutec goacutei ra thư mục chỉ định
tar ndashxzvf asterisk-140targz
tar ndashxzvf asterisk-addons-140targz
tar ndashxzvf asterisk-sounds-140targz
tar ndashxzvf zaptel-140targz
tar ndashxzvf libpri-140targz
Giải neacuten xong chuacuteng ta nhớ thực hiện lệnh
ln ndashs usrsrcasterisk-140 usrsrcasterisk lệnh nagravey để bảo đảm goacuteildquoaddonsrdquo được biecircn dịch đuacuteng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3772
Taacutec Giả Lecirc Quốc Toagraven
37
Bacircy giờ tới phần chuacuteng ta biecircn dịch caacutec goacutei đatilde giải neacuten ở trecircn trước tiecircn lagrave goacuteizaptel kế đến lagrave libpri sau cugraveng lagrave goacutei Asterisk
2 Cagravei đặt goacutei Zaptel
Goacutei zaptel sẽ chứa tại thư mục usrsrczaptel Đaacutenh lệnh như dưới đacircy để cagraveđặt
cd usrsrczaptel
make clean make install
Lệnh nagravey thực hiện khoảng 2 phuacutet tugravey vagraveo tốc độ maacutey tiacutenh cagravei đặt sau khicagravei đặt xong sẽ trở lại dấu nhắc lệnh vagrave hiển thị một loạt caacutec thocircng baacuteo trong đoacute một số bản tin lỗi magrave chủ yếu lagrave yecircu cầu cagravei đặt caacutec goacutei phụ thuộc đatilde liệt kecirc ở trecircnếu caacutec goacutei trecircn chưa được cagravei đặt
Goacutei zaptel nagravey chứa caacutec driver cho caacutec phần cứng kết giao tiếp với asterisk
do Digium phacircn phối vagrave một số thư viện cho việc coacute thực hiện giao tiếp với phầcứng hay khocircng
Để Asterisk coacute thể chạy cugraveng với khởi động của maacutey tiacutenh chuacuteng ta cần thựchiện lệnh
make config
Lệnh nagravey sẽ tạo ra script chegraven module zaptel vagraveo kernel vagrave chạy ztconfig vagraveoluacutec khởi động maacutey Trong Redhat script nagravey sẽ được cheacutep vagraveo etcinitd chạy ở mức 3
3 Cagravei đặt goacutei libpri
Kế đến chuacuteng ta biecircn dịch goacutei libpri tại thư mục usrsrclibpri bằng lệnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3972
Taacutec Giả Lecirc Quốc Toagraven
39
make config
3 Cagravei đặt TrixBox
1 Giới thiệu
TRIXBOX được phaacutet triển từ nhacircn của ứng dụng Asterisk được tổng hợp từmột số thagravenh phần chiacutenh được phaacutet triển bởi cộng đồng phaacutet triển nguồn mAsterisk dưới bản quyền GPL Trixbox bao gồm những thagravenh phần chiacutenh cho việcấu higravenh ứng dụng thống kecirc tigravenh trạng hoạt động hệ thống lưu trữ dự phograveng v
nhacircn lagrave hệ điều hagravenh CentOS một phiecircn bản khaacutec của Redhat tất cả kết hợp vớnhau tạo thagravenh một goacutei hoagraven chỉnh Khi cagravei goacutei nagravey vagraveo maacutey tiacutenh thigrave coacute thể sử dụngnhư một tổng đagravei PBX
Caacutec thagravenh phần chiacutenh trong goacutei TRIXBOX lagrave
Asterisk PBX Thagravenh phần chiacutenh của hệ thống Trixbox
CentOS Một phiecircn bản Linux khaacutec của Redhat hoagraven toagraven miển phiacute sửdụng Lagrave nhacircn chiacutenh cho Trixbox
SugarCRM Hệ thống quan hệ khaacutech hagraveng CRM
A2Billing ndash Lagrave thagravenh phần dagravenh cho việc xacircy dựng hệ thống điện thoạitrả trước hay cograven gọi lagrave điện thọai thẻ (Calling Card)
Flash Operator Panel Bảng điều khiển giaacutem saacutet tigravenh trạng hoạt độngcủa caacutec maacutey điện thoại trong hệ thống
Web MeetMe Control Quản lyacute triển khai hệ thống điện thoại hội nghị
FreePBX Đacircy lagrave cocircng cụ với giao diện web dagravenh cho việc cấu higravenh hệthống Asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4072
Taacutec Giả Lecirc Quốc Toagraven
40
Hệ thống Lưu trữ dự phograveng vagrave thống kecirc Lagrave thagravenh phần của TRIXBOXcung cấp caacutec cocircng cụ cần thiết cho việc bảo trigrave bảo dưỡng hệ thống
Hệ thống Apache-Php-Mysql dagravenh cho giải phaacutep Webserver của hệthống
2 DOWNLOAD VAgrave LẮP ĐẶT TRIXBOX
Địa chỉ downloadhttpsourceforgenetprojectsasteriskathome
Khi download xong file Trixboxiso Hatildey dugraveng file nagravey Burn vagraveo CD ( xinlưu yacute lagrave dugraveng Nero hoặc chương trigravenh cheacutep đĩa ưa thiacutech rồi burn vagraveo cd_romchứ khocircng phải cheacutep file đoacute vagraveo cd_rom)
Sau khi coacute CD Hatildey boot từ CD nagravey để cagravei đặt trixbox
Chuacute yacute dữ liệu trecircn đĩa cứng sẽ bị xoacutea sạch để cagravei đặt trixbox Nếu trongđĩa cứng cograven dữ liệu hatildey backup tất cả trước khi tiến hagravenh lắp đặt trixbox
Tới đacircy lần lượt caacutec magraven higravenh chỉ dẫn sẽ hiện ra vagrave cứ theo hướng dẫn magrave cagraveđặt Sau khi cagravei đặt xong chuacuteng ta dugraveng Username root vagrave password password đểđăng nhập hệ thống
3 Cấu higravenh địa chỉ IP cho card mạng
Thiết lập địa chỉ IP bằng caacutech gotilde lệnh
netconfig
Chọn OK để thiếp lập
Nếu trong mạng coacute hỗ trợ DHCP thigrave hatildey chọn mục nagravey cograven nếu khocircng hatildeynhập địa chỉ IP tĩnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4172
Taacutec Giả Lecirc Quốc Toagraven
41
IP 19216801
Netmask 2552552550
Gateway 19216893254 ngotilde ra becircn ngoagravei
Primary nameserver 19216893200 thiết lập nếu coacute
Chọn OK để chấp nhận caacutec thiết lập trecircn
Sau khi hoagraven tất hatildey lagravem cho thiết lập coacute hiệu lực bằng caacutech reset lại
maacutey tiacutenh hoặc dugraveng lệnh sau
Service network stop
Service network start
Đến đacircy xem như cagravei đặt hoagraven tất bacircy giờ để cấu higravenh được Asterisk chuacutengta vagraveo một magravey khaacutec vagrave mở Internet Explorer hoặc một trigravenh duyệt web bất kỳ
nhập vagraveohttp19216801đatilde cấu higravenh ở trecircn vagrave tiến hagravenh cấu higravenh hệ thốngvới tagravei khoảng username maint vagrave password password
4 Tổ Chức Thư Mục của Asterisk
Asterisk sử dụng nhiều thư mục trecircn hệ thống linux để quản lyacute caacutec khiacutea cạnkhaacutec nhau của hệ thống như nghi nhận bản tin thoại caacutec bản tin nhắc thoại hoặcaacutec tập tin cấu higravenh Phần nagravey sẽ trigravenh bagravey caacutec thư mục chiacutenh yếu được tạo ra tronquaacute trigravenh lắp đặt vagrave được cấu higravenh trong tập tin Asteriskconf
1 etcasterisk
Thư mục etcasterisk chứa tất cả caacutec tập tin cấu higravenh của hệ thốngAsterisk ngoại trừ tập tin Zaptelconf được đặt tại thư mục etc Phần cứnZaptel đầu tiecircn được phaacutet triển bởi Jim Dixon thuộc nhoacutem Zapata Telephony
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4272
Taacutec Giả Lecirc Quốc Toagraven
42
Group để giao tiếp giữa maacutey tiacutenh với mạng điện thoại magrave Asterisk lại sửdụng phần cứng nagravey với lyacute do đoacute magrave file cấu higravenh zaptelconf khocircng nằmtrong thư mục etcasterisk
2 usrlibasteriskmodules
Thư mục usrlibasteriskmodules chứa tất cả caacutec module cần thiết đểasterisk hoạt động Becircn trong thư mục lagrave caacutec ứng dụng khaacutec nhau caacutec codeccaacutec định dạng acircm thanh(format) vagrave caacutec kecircnh thocircng tin(channel) Theo mặc địnhAsterisk sẽ nạp tất cả caacutec module vagraveo luacutec khởi động Chuacuteng ta coacute thể khocircng cho
nạp một module bất kỳ bằng caacutech khocircng khai baacuteo sử dụng trong tập tinmodulesconf Lưu yacute khi khocircng cho nạp module thigrave phải biết chắc module đoacutekhocircng lagravem ảnh hưởng hoạt động của asterisk nếu khocircng lỗi sẽ xuất hiện
3 varlibasterisk
Thư mục varlibasterisk chứa tập tin astdb vagrave một số thư mục con Tập tinastdb định vị thocircng tin cơ sở dữ liệu của Asterisk giống như Microsoft WindowsRegistry
Caacutec thư mục con của thư mục varlibasterisk bao gồm
agi-bin
Thư mục agi-bin chứa caacutec script của người dugraveng magrave Asterisk coacute thểđịnh vị sử dụng qua caacutec ứng dụng AGI
AGI lagrave phần giao tiếp với ngocircn ngữ lập trigravenh script để thực hiện mộtsố cocircng việc của Asterisk từ becircn ngoagravei
firmware
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4372
Taacutec Giả Lecirc Quốc Toagraven
43
Thư mục firmware chứa một số phần dẻo(firmware) cho caacutec thiết bịkhaacutec nhau tương thiacutech với Asterisk Hiện tại chỉ coacute thư mục con iax chứa
firmware cho thiếy bị IAXy của Digium IAXy lagrave thiết bị ATA sử dụng giaothức IAX
images
Caacutec ứng dụng thocircng tin với caacutec kecircnh hỗ trợ ảnh images thigrave sử dụng thư mụcnagravey Nhưng hiện tại caacutec kecircnh thocircng tin hầu như khocircng hỗ trợ truyền ảnh images necircthư mục nagravey cũng hiếm khi được sử dụng Tuy nhiecircn nếu caacutec thiết bị coacute hỗ trợ ththư mục nagravey trở necircn hiệu dụng
keys
Asterisk coacute thể sử dụng hệ thống khoaacute publicprivate để xaacutec minh caacutec kết nốgiữa caacutec server Asterisk thocircng qua chữ kyacute điện tử RSA Nếu đặt một khoaacute publicvagraveo thư mục keys thigrave kết nối của server đầu becircn kia coacute thể được xaacutec minh bằn
kecircnh thocircng tin coacute hỗ trợ đối với Asterisk thigrave kecircnh giao thức IAX hỗ trợ loại xaacutecminh nagravey Một khoaacute private khocircng bao giờ cocircng bố chuacuteng ta chỉ cocircng bố khoaacute public đến với server cần nối đến sau đoacute sẽ được xaacutec minh với khoaacute private nagravey Chai khoaacute public vagrave private được lưu với đuocirci pub vagrave key đặt tại thư mục keys
mohmp3
Khi cấu higravenh Asterisk sử dụng tiacutenh năng Music on Hold tiacutenh năng hoạt độngsẽ thực hiện lấy caacutec tập tin mp3 tại thư mục mohmp3 Tập tin định dạng theo chucủa Asterisk necircn khi sử dụng caacutec file Mp3 thocircng thường cần coacute sự chuyển đổi thiacutechợp trước khi cheacutep vagraveo thư mục trecircn để sử dụng
sounds
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4472
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4572
Taacutec Giả Lecirc Quốc Toagraven
45
Thư mục tmp sử dụng để lưu trữ những thocircng tin tạm để luocircn bảo đảm khocircnxảy ra tigravenh trạng đọc vagrave viết tập tin cugraveng một luacutec Khi yecircu cầu xử lyacute tập tin chuacuteng thao taacutec trecircn thư mục tmp trước khi lưu vagraveo tập tin điacutech
Tất cả caacutec lời nhắc thoại từ phiacutea người sử dụng vagrave caacutec lời nhắc thoại sử dụ
cho thao taacutec hộp voicemail đều được chứa trong thư mục voicemail Một hộp thưthoại được tạo ra ứng với một maacutey nội bộ trong tập tin voicemailconf sẽ được tra một thư mục con tương ứng cho maacutey nội bộ đoacute tại thư mục voicemail
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4672
Taacutec Giả Lecirc Quốc Toagraven
46
5 varrun
Thư mục varrun chứa thocircng tin process ID(pid) cho tất cả caacutec tiến trigravenh đang
hoạt động trong hệ thống bao gồm cả Asterisk Lưu yacute lagrave ứng với mỗi hệ điều hagravethư mục varrun coacute thể khaacutec
6 varlogasterisk
Thư mục varlogasterisk lagrave nơi Asterisk chứa tất cả caacutec tập tin nhật kyacute haycograven gọi lagrave tập tin log Chuacuteng ta coacute thể tuỳ biến caacutec loại thocircng tin được lưu trong caacutec
tập tin log khaacutec nhau qua tập tin cấu higravenh loggerconf đặt tại thư mục etcasterisk7 varlogasteriskcdr-csv
Thư mục varlogasteriskcdr-csv được sử dụng để lưu chi tiết cuộc gọi CDRThocircng tin mặc định về chi tiết thocircng tin cuộc gọi lưu trữ trong tập tin MasterCVSnhưng thường thigrave ứng với mỗi matilde accountcode sẽ tạo một thư mục riecircng để lưu ctiết cuộc gọi cho maacutey đoacute
5 Một số lệnh thao taacutec trecircn hệ thống asterisk
Asterisk coacute hai thagravenh phần được xacircy dụng tiacutech hợp với nhau vagrave chạy songsong nhau
Asterisk Server bigravenh thường chạy ở chế độ nền(background) giống caacutec sevicestrong window
Asterisk Client ở chế độ dograveng lệnh CLI giao tiếp với Asterisk Server thực thicaacutec lệnh để kiểm tra hay xem caacutec thocircng tin của server
Để Chạy vagrave dừng Asterisk ở chế độ nền chuacuteng ta thực hiện lệnh sau
etcinitdasterisk (start|stop)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4772
Taacutec Giả Lecirc Quốc Toagraven
47
Một khi Asterisk đatilde chạy chuacuteng ta coacute thể chuyển qua chế độ CLI từ dấu nhắlệnh của linux như sau
asterisk ndashr
Khi vagraveo chế độ lệnh nếu muốn thoaacutet về lại dấu nhắc linux chuacuteng ta dugraveng lệnh
CLIgtexit
Caacutec lệnh cơ bản thực hiện tại CLIgt
Bất cứ khi nagraveo chỉnh sửa caacutec tập tin cấu higravenh chuacuteng ta đều cần phải nạp lại đcaacutec thay đổi coacute hiệu lực điều đoacute thực hiện bằng lệnh
CLIgtreload
Bậc chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 debug
CLIgt SIP debug
Tắt chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 no debug
CLIgt SIP no debug
Hiển thị caacutec trạng thaacutei thocircng tin của users peers vagravechannels của SIP hoặc IAX2
CLIgt sip show users
CLIgt sip show peers
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4872
Taacutec Giả Lecirc Quốc Toagraven
48
CLIgt sip show channels
CLIgt iax2 show peers
CLIgt iax2 show users
CLIgt iax2 show channels
Đến thời điểm nagravey coacute thể noacutei chuacuteng ta đatilde hoagraven thagravenh cagravei đặt hệ thốngAsterisk cagravei đặt xong mới lagrave bước mở đầu để cho hệ thống Asterisk hoạt động vtừng ứng dụng cụ thể chuacuteng sẽ tiếp tục thực hiện caacutec giai đoạn được xem lagrave qutrọng nhất trong việc triển khai hệ thống Asterisk đoacute lagrave giai đoạn cấu higravenh hệ thốnlecircn kế hoạch Diaplan chương cograven lại đều nhắm đến mục tiecircu nagravey
4 CẤU HIgraveNH HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Sau khi hoagraven tất phần cagravei đặt hệ thống asterisk một bước quan trọng tiếp thelagrave cấu higravenh hệ thống coacute thể noacutei đacircy lagrave bước quan trọng nhất của việc khiển khai thống đến với từng ứng dụng cụ thể Trong chương nagravey xin giới thiệu caacutei nhigraven đầtiecircn về việc cấu higravenh trước khi đi sacircu hơn ở những chương sau những gigrave giới thiệ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4972
Taacutec Giả Lecirc Quốc Toagraven
49
trong chương nagravey lagrave nền moacuteng cơ bản nhưng đủ để hiểu lagravem thế nagraveo hệ thống coacute thoạt động được nội dung chiacutenh bao gồm
+ Thao taacutec cấu higravenh trecircn hệ thống tập tin của asterisk
+ Caacutech cagravei đặt phần mềm softphone trecircn cocircng nghệ sip
+ Cấu higravenh cho hai maacutey softphone liecircn lạc với nhau
+ Cấu higravenh phaacutet thocircng điệp
+ Quay số qua Sip vagrave mạng PSTN
2 Tập Tin cấu higravenh
Tất cả caacutec file cấu higravenh cho hệ thống asterisk đều nằm tại thư mục etcasterisngoại trừ file zaptelconf cấu higravenh cho phần cứng TDM nằm tại thư mục etc caacutecthức cấu higravenh giống như tập tin ini của window vậy Caacutec nội dung sau dấu chấm phảy lagrave nội dung chuacute thiacutech trong file cấu higravenh giống như chuacute thiacutech trong ngocircn ngữ
lập trigravenh C lagrave dấu Tất cả caacutec khoảng trắng trong tập tin đều được bỏ qua khocircng yacute nghĩa trong file cấu higravenh
Trong file cấu higravenh cograven coacute hai pheacutep gaacuten rất thường xuyecircn được sử dụng pheacutep gaacuten ldquo=rdquo lagrave dugraveng cho việc gaacuten caacutec biến cograven pheacutep gaacuten ldquo=gtrdquo dugraveng cho việc gaacutencaacutec đối tượng sau đacircy lagrave một viacute dụ cho file cấu higravenh
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5072
Taacutec Giả Lecirc Quốc Toagraven
50
Đacircy lagrave caacutec dograveng chuacute thiacutech
[section]
Key=value gaacuten giaacute trị cho biến
[section2]
Key=gtobject Gaacuten giaacute trị cho đối tượng
Cuacute phaacutep thực hiện giống nhau cho tất cả caacutec file cấu higravenh nhưng coacute vagravei kiểukhaacutec nhau cho mỗi file cầu higravenh dựa vagraveo thức caacutech hoạt động của chuacuteng
3 Caacutec kiểu ảnh hưởng trong tập cấu higravenh
Coacute ba kiểu caacutech thức hoạt động của tập tin cấu higravenh như sau
Kiểu Caacutech hoạt động File cầu higravenh Viacute dụ
S i m p l eGroup
Coacute hiệu lực trecircntừng dograveng trongfile
Extensionconf
Exten=gt4001dial(sip400)
O p t i o ninheritance
Dograveng khai baacuteosau thừa kếnhững thocircng sốkhai baacuteo trước
Zapataconf [channels]
Context=From_PSTN
Signalling=fxs_ks
Group=1Channel=gt1
C o m p l e xEntity
Mỗi entity nhậnmột ngữ cảnh
sipconf
iaxconf
[cisco]
Type=friend
Secret=12345
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5172
Taacutec Giả Lecirc Quốc Toagraven
51
Host=192168165
Context=NoiBo
[xten]
Type=friend
Secret=6789
Host=dynamic
Context=NoiBo
1 Simple Group
Đacircy lagrave kiểu cấu higravenh đơn giản nhất thường sử dụng trong caacutec fileextentionconf meetmeconf voicemailconf tương ứng với mỗi dograveng khai baacuteo lagravemột đối tượng coacute yacute nghĩa trecircn dograveng đoacute
Viacute dụ
Extentionconf [section]
object1=gt op1op2op3
object2=gt op1bop2bop3b
Trong viacute dụ trecircn mỗi dograveng tương ứng với caacutec toaacuten tử khaacutec nhau object1 coacute caacutectoaacuten từ op1 op2 op3 trong khi đoacute object2 lại coacute caacutec toaacuten từ op1b op2b op3b
2 Option inheritance
Đacircy lagrave cấu higravenh kiểu thừa kế thường được cấu higravenh trong caacutec file zapataconfagentconf với kiểu cấu higravenh nagravey thigrave caacutec dograveng phiacutea dưới coacute thể thừa kế caacutec thocircng sdograveng phiacutea trecircn tương ứng với mỗi section caacutec dograveng phiacutea dưới coacute thể thay đổi caacutecthocircng số cho tươngứng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5272
Taacutec Giả Lecirc Quốc Toagraven
52
Viacute dụ
Extentionconf
[section]
Op1=bas
Op2=adv
Object1=gt1
Op1=int
Object1=gt2
Với cấu higravenh trecircn coacute thể giải thiacutech như sau object1=gt1 thừa hưởng hai thocircngsố ở phiacutea trecircn đoacute lagrave op1=bas vagrave op2=adv trong khi đoacute đối với object1=gt2 với thocircngsố op1=int được khai baacuteo lại necircn object1=gt2 được thừa kế từ hai thocircng số op1=invagrave op2=adv
3 Complex Entity
Với cấu kiểu nagravey được tổ chức thagravenh nhiều entity ứng với mỗi entity coacute nhiềthocircng số được khai baacuteo mỗi entity ở đacircy chiacutenh lagrave caacutec section để khai baacuteo caacutec kecircnhthocircng tin Cấu higravenh thường được sử dụng trong caacutec file iaxconf sipconf
Viacute dụ
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5372
Taacutec Giả Lecirc Quốc Toagraven
53
[entity1]
Op1=value1
Op2=value2
[entity2]
Op1=value3
Op2=value4
Entity1 coacute caacutec giaacute trị value1 vagrave value2 cho thocircng số op1 vagrave op2 trong khi đoacute
cũng lagrave thocircng số op1 vagrave op 2 nhưng coacute caacutec giaacute trị khaacutec lagrave value3 vagrave value4 choentity2
4 Cấu higravenh giao tiếp với mạng PSTN
1 Ngữ cảnh kết nối
Để kết nối với mạng PSTN chuacuteng ta cần phải coacute một card TDM với Cổng
FXO vagrave một đường dacircy điện thoại hoặc coacute thể lagrave một tổng đagravei nội bộ PBX Cnhiều nhagrave sản xuất phần cứng khaacutec nhau nhưng trong phần cấu higravenh dưới dacircy lagrave cấhigravenh cho card zapata TDM01B của digium (card nagravey hiện nay giaacute baacuten khoảng175$)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1372
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1472
Taacutec Giả Lecirc Quốc Toagraven
14
Asterisk thực hiện rất nhiều ngữ cảnh ứng dụng khaacutec nhau tuỳ vagraveo nhu cầu sdụng dưới dacircy lagrave những ngữ cảnh ứng dụng thường được sử dụng trong thực
triển khai hệ thống asterisk1 Tổng đagravei voip IP PBX
IP BPX
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1572
Taacutec Giả Lecirc Quốc Toagraven
15
Đacircy lagrave hệ thống chuyển mạch voip được xacircy dựng phục vụ caacutec cocircng ty coacute nhucầu thực hiện trecircn nền tảng mạng nội bộ đatilde triển khai Thay vigrave lắp đặt một hệ thố
PBX cho nhu cầu liecircn lạc nội bộ thigrave necircn lắp đặt hệ thống voip điều nagravey sẽ lagravem giảchi phiacute đaacuteng kể Hệ thống coacute thể liecircn 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 ở đacircy lagrave hiện tại Cocircng ty đatilde trang bị hệ thống PBX bacircygiờ cần trang bị thecircm để đaacutep ứng nhu cầu liecircn lạc trong cocircng ty sao cho với chi phthấp nhất giải phaacutep để thực hiện đoacute lagrave trang bị hệ thống asterisk vagrave kết nối với h
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1672
Taacutec Giả Lecirc Quốc Toagraven
16
thống PBX đang tồn tại qua luồng E1 Ngoagravei ra để tăng khả năng liecircn lạc với mạnPSTN vagrave VOIP khaacutec Cocircng Ty coacute thể thực hiện kết nối với nhagrave cung cấp dịch vụvoip
3 Kết nối giữa caacutec server Asterisk
Kết nối giữa caacutec server asterisk
Phương phaacutep trecircn ứng dụng rất hiệu quả cho caacutec cocircng ty nằm ratildei raacutec ở caacutec vtrị địa lyacute khaacutec nhau nhằm giảm chi phiacute đường dagravei Viacute dụ Cocircng ty Mẹ coacute trụ sở đặtại nước Mỹ vagrave caacutec Chi nhaacutenh đặt tại Việt Nam với caacutec địa điểm Thagravenh phố Hồ ChMinh vagrave Hagrave Nội Thocircng qua mạng WAN của Cocircng Ty caacutec cuộc gọi nội bộ giữa caacutec
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1772
Taacutec Giả Lecirc Quốc Toagraven
17
vị triacute khaacutec nhau sẽ lagravem giảm chi phiacute đaacuteng kể Ngữ cảnh nagravey về mặt phaacutep luật khocircncho cuộc gọi từ Mỹ vagraveo Việt Nam
4 Caacutec ứ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 caacutec server kết nối với hệ thống PSTN hay tổng đagravei PBXđể triển khai caacutec ứng dụng như tương taacutec thoại IVR Một viacute dụ cho ứng dụng tươtaacutec thoại đoacute lagrave cho biết kết quả sổ số hay kiểm tra cước cuộc gọi giống dịch v19001260 vậy Ứng dụng VoiceMail thu nhận những tin nhắn thoại từ phiacutea thuecirc bao giống như chức năng hộp thư thoại của Bưu Điện Thagravenh phố triển khai Cograve
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1872
Taacutec Giả Lecirc Quốc Toagraven
18
chức năng điện thoại hội nghị thiết lập cho nhiều maacutey điện thoại cugraveng noacutei chuyệvới nhau
5 Chức năng Phacircn phối cuộc gọi tự động ACD
Phacircn phối cuộc gọi với hagraveng đợi
ACD(Automatic Call Distribution) Phacircn phối cuộc gọi tự động
Đacircy lagrave chức năng ứng dụng cho nhu cầu chăm soacutec khaacutech hagraveng hay nhận phảnhổi từ phiacutea khaacutech hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1972
Taacutec Giả Lecirc Quốc Toagraven
19
Cocircng ty coacute khả năng tiếp nhận cugraveng một luacutec 10 cuộc gọi như thế cuộc gọi th11 gọi đến thigrave hệ thống giải quyết như thế nagraveo Bigravenh thường thigrave sẽ nghe tiacuten hiệ
bận nhưng với chức năng phacircn phối cuộc gọi sẽ đưa thuecirc bao đoacute vagraveo hagraveng đợi đchờ trả lời trong khi chờ trả lời cuộc gọi thuecirc bao coacute thể nghe những bagravei haacutet hay dasterisk cung cấp trong luacutec nagravey nếu 1 trong mười số điện thoại trở về trạng thaacutei rthigrave cuộc gọi đang chờ sẽ được trả lời Giống như chức năng của dịch vụ 1080 ha116 của Bưu Điện Thagravenh Phố vậy
2 CAacuteC KHAacuteI NIỆM TRONG HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Trong chương nagravey sẽ giải thiacutech rotilde caacutec khaacutei niệm cơ bản liecircn quan đến hệ thốnasterisk cung cấp những kiến thức nền tảng những khaacutei niệm cần thiết để thiếttriển khai xacircy dựng hệ thống điện thoại với Asterisk
2 PBX - Private Branch Exchange
PBX hay cograven gọi lagrave PABX - Private Automatic Branch Exchange lagrave hệ thốngtổng đagravei nội bộ được đặt tại nhagrave thuecirc bao từ Automatic ở đacircy muốn noacutei đến lagrave hthống tổng đagravei điện tử tự động nhưng hiện nay đa số lagrave tổng đagravei PBX điện tử tđộng necircn từ trecircn thực sự khocircng cograven cần thiết nữa
PBX với mục tiecircu chia sẻ nhiều thuecirc bao nội bộ gọi ra thế giới becircn ngoagraveithocircng qua một vagravei đường trung kế hay noacutei một caacutech khaacutec PBX lagrave hệ thống trungchuyển giữa caacutec đường dacircy điện thoại becircn ngoagravei từ cocircng ty điện thoại vagrave maacutey điệthoại nội bộ trong tổng đagravei PBX Vigrave thế necircn số lượng maacutey điện thoại nội bộ luocircnhiều hơn số đường dacircy nối đến PBX từ becircn ngoagravei
wwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2072
Taacutec Giả Lecirc Quốc Toagraven
20
PBX thực hiện chuyển mạch cuộc gọi caacutec maacutey điện thoại nội bộ với nhau vvới caacutec maacutey điện thoại becircn ngoagravei thocircng qua đường trung kế Đồng thời thực hiệ
chuyển mạch caacutec cuộc gọi điện thoại từ becircn ngoagravei vagraveo caacutec maacutey điện thoại nội bộNgoagravei việc chuyển mạch cuộc gọi PBX cung cấp nhiều tiacutenh năng sử dụng
cho nhiều mục điacutech khaacutec nhau của khaacutech hagraveng magrave bản thacircn caacutec đường dacircy điệnthoại từ cocircng ty điện thoại kết nối đến khocircng thể thực hiện được caacutec tiacutenh năng ntương taacutec thoại(IVR) Voicemail phacircn phối cuộc gọi tự động(ADC)hellip
Hiện nay với việc phaacutet triển mạnh mẽ của cocircng nghệ VoIP chuacuteng ta cograven coacutethecircm thuật ngữ IP PBX Đacircy lagrave hệ thống chuyển mạch PBX với cocircng nghệ Voip
3 VOIP - Voice Over Internet Protocol
Voice over Internet Protocol (VoIP) lagrave một cocircng nghệ cho pheacutep truyền thoạisử dụng giao thức mạng IP trecircn cơ sở hạ tầng sẵn coacute của mạng internet Voip lagrave mtrong những cocircng nghệ viễn thocircng đang được quan tacircm nhất hiện nay khocircng chỉ đố
với nhagrave khai thaacutec caacutec nhagrave sản xuất magrave cograven cả với người sử dụng dịch vụVoip coacute thể vừa thực hiện mọi loại cuộc gọi như trecircn mạng điện thoại kecircn
truyền thống (PSTN) đồng thời truyền dữ liệu trecircn cơ sở mạng truyền dữ liệu Dcaacutec ưu điểm về giaacute thagravenh dịch vụ vagrave sự tiacutech hợp nhiều loại higravenh dịch vụ necircn voihiện nay được triển khai một caacutec rộng ratildei
Dịch vụ điện thoại voip lagrave dịch vụ ứng dụng giao thức IP nguyecircn tắc củaVoIP bao gồm việc số hoaacute tiacuten hiệu tiếng noacutei thực hiện việc neacuten tiacuten hiệu số chia nhcaacutec goacutei nếu cần vagrave truyền goacutei tin nagravey qua mạng tới nơi nhận caacutec goacutei tin nagravey đượraacutep lại theo đuacuteng thứ tự của bản tin giải matilde tiacuten hiệu tương tự phục hồi lại tiếng n ban đầu
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2172
Taacutec Giả Lecirc Quốc Toagraven
21
Caacutec cuộc gọi trong VoIP dựa trecircn cơ sở sử dụng kết hợp cả chuyển mạchkecircnh vagrave chuyển mạch goacutei Trong mỗi loại chuyển mạch đều coacute ưu nhược điể
riecircng của noacute Trong kỹ thuật chuyển mạch kecircnh giagravenh riecircng cho một kecircnh truyềngiữa hai thiết bị đầu cuối thocircng qua caacutec node chuyển mạch trung gian Trongchuyển mạch kecircnh tốc độ truyền dẫn luocircn luocircn cố định(nghĩa lagrave băng thocircng khocircnđổi) với mạng điện thoại PSTN tốc độ nagravey lagrave 64kbps truyền dẫn trong chuyểmạch kecircnh coacute độ trễ nhỏ
Trong chuyển mạch goacutei caacutec bản tin được chia thagravenh caacutec goacutei nhỏ gọi lagrave caacutec
goacutei nguyecircn tắc hoạt động của noacute lagrave sử dụng hệ thống lưu trữ vagrave chuyển tiếp caacutec gtin trong nuacutet mạng Đối với chuyển mạch goacutei khocircng tồn tại khaacutei niệm kecircnh riecircng băng thocircng khocircng cố định coacute nghĩa lagrave coacute thể thay đổi tốc độ truyền kỹ thuật chuyểmạch goacutei phải chịu độ trễ lớn vigrave trong chuyển mạch goacutei khocircng quy định thời giancho mỗi goacutei dữ liệu tới điacutech mỗi goacutei coacute thể đi bằng nhiều con đường khaacutec nhau đtới điacutech chuyển mạch goacutei thiacutech hợp cho việc truyền dữ liệu vigrave trong mạng truyền dliệu khocircng đogravei hỏi về thời gian thực như thoại để sử dụng ưu điểm của mỗi lo
chuyển mạch trecircn thigrave trong voip kết hợp sử dụng cả hai loại chuyển mạch kecircnh vchuyển mạch goacutei
4 PSTN ndash Public Switched Telephone Network
PSTN lagrave mạng chuyển mạch điện thoại cocircng cộng hay noacutei caacutech khaacutec lagrave mạngkết nối tất cả caacutec hệ thống tổng đagravei chuyển mạch-mạch
Để hiểu rotilde hơn hatildey xem xeacutet mạng PSTN với mạng Internet về khiacutea cạnhchuyển thoại trecircn đoacute Chuyển mạch mạch muốn thực hiện cuộc gọi giữa hai thu bao thigrave hệ thống phải giagravenh riecircng một kecircnh truyền 64kbps để chuyển tải tiacuten hiệthoại trecircn đoacute Cograven cuộc gọi điện thoại trecircn mạng Internet thigrave tiacuten hiệu thoại đượđoacuteng goacutei vagrave chuyển đi trecircn cugraveng kecircnh truyền với nhiều dịch vụ khaacutec Vigrave lẽ đoacute chấlượng cuộc gọi trecircn mạng PSTN bao giờ cũng tốt hơn trecircn mạng Internet nhưng đổ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2272
Taacutec Giả Lecirc Quốc Toagraven
22
lại chi phiacute lại đắc hơn rất nhiều đặc biệt lagrave caacutec cuộc gọi quốc tế necircn phải cần nhắc kỹ khi sử dụng
PSTN được phaacutet triển trecircn chuẩn ITU(International TelecommunicationUnion) cograven mạng Internet được phaacutet triển trecircn chuẩn IETF(Internet EngineeringTask Force) cả hai mạng trecircn đều sử dụng địa chỉ để định tuyến cuộc gọi PSTN sdụng caacutec con số điện thoại để chuyển mạch cuộc gọi giữa caacutec tổng đagravei điện thotrong khi đoacute trecircn mạng Internet địa chỉ IP sẽ được sử dụng để định tuyến caacutec goacutethoại
5 TDM ndash Time Division Multiplexing
Lagrave kỹ thuật gheacutep kecircnh phacircn chia thời gian nhiều tiacuten hiệu coacute thể truyền đồngthời trecircn một đường truyền TDM được sử dụng chuyển thoại trong hệ thống mạPSTN Coacute hai chuẩn gheacutep kecircnh TDM cơ bản lagrave E1 với 30 kecircnh thoại trecircn mộtkhung tốc độ 2Mbps vagrave T1 với 24 kecircnh thoại tốc độ 15Mbps
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2372
Taacutec Giả Lecirc Quốc Toagraven
23
Higravenh Minh họa gheacutep kecircnh phacircn chia theo thời gian
6 Caacutec higravenh thức baacuteo hiệu giao tiếp TDM
1 FXO vagrave FXS
FXO (Foreign Exchange Office) lagrave thiết bị nhận tiacuten hiệu từ tổng đagravei gửi đếnnhư dograveng chuocircng tiacuten hiệu nhấc gaacutec maacutey tiacuten hiệu mời quay số gửi vagrave nhận tiacuten hiệthoạihellip FXO giống như maacutey Fax hay modem dial-up 56k vậy Dugraveng để kết nối vớ
đường dacircy điện thoại
FXS (Foreign Exchange Station) lagrave thiết bị tại nơi cung cấp đường dacircy điệnthoại thiết bị FXS sẽ cung cấp tiacuten hiệu mời quay số(dialtone) dograveng chuocircng hồi acircmchuocircng(ring tone) Trong đường dacircy Analog FXS cung cấp dograveng chuocircng vagrave điện aacutepcho điện thoại hoạt động viacute dụ FXS cung cấp điện aacutep -48VDC đến maacutey điện tho
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2472
Taacutec Giả Lecirc Quốc Toagraven
24
Analog trong suốt thời gian đagravem thoại vagrave cung cấp 90VAC(20hz) để phaacutet điện aacuteprung chuocircng Thiết bị FXS phaacutet cograven thiết bị FXO nhận
Card TDM sử dụng trong hệ thống asterisk thường tiacutech hợp vừa thiết bị FXOvừa lagrave thiết bị FXS(Giống bộ ATA) FXO để kết nối với đường dacircy điện thoại cograveFXS dugraveng để kết nối với maacutey điện thoại analog thocircng thường dugraveng để chuyển mạcuộc gọi TDM qua hệ thống asterisk(Xem thecircm trong phần cấu higravenh cho kecircnhTDM)
Toacutem lại cần nắm
FXS được kết nối với FXO giống với đường dacircy điện thoại nối với maacuteyđiện thoại
FXS cung cấp nguồn cho điện thoại FXO(điện thoại Analog)
Higravenh a) Maacutey điện thoại vai trograve FXO kết nối với FXS(PSTN) Higravenh b) PBXkết nối với FXO vagrave FXS Higravenh c) ATA đoacuteng vai trograve như FXS để kết nối với maacuteyđiện thoại vai trograve FXO
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2572
Taacutec Giả Lecirc Quốc Toagraven
25
2 Baacuteo hiệu Analog giữa đầu cuối vagrave tổng đagravei
Khi chuacuteng ta nhấc mấy điện thoại để gọi thigrave nghe tiacuten hiệu mời quay số kh
cuộc gọi gọi đầu becircn kia bị bận thigrave chuacuteng ta nghe tiacuten hiệu bận(busy tone) caacutec loạtiacuten hiệu như vậy gọi lagrave caacutec tiacuten hiệu baacuteo hiệu analog Caacutec tiacuten hiệu như Mời quay sốtiacuten hiệu bận rung chuocircng trạng thaacutei nhấc gaacutec maacutey Caacutec loại tiacuten hiệu trecircn được trađổi giữa thiết bị FXO vagrave FXS
Coacute nhiều phương thức baacuteo hiệu khaacutec nhau ứng với từng nơi sử dụng vigrave thếtại nơi kết nối với đường dacircy điện thoại cần xem xeacutet họ đang sử dụng phương th
baacuteo hiệu gigrave từ đoacute chuacuteng ta khai thaacutec loại tiacuten hiệu baacuteo hiệu cho thiacutech hợp caacutec phương thức baacuteo hiệu như Loop Start Ground Start Một minh họa cho việc sửdụng sai phương thức baacuteo hiệu lagrave khi chuacuteng ta khai baacuteo phương thức baacuteo hiệu giữhệ thống Asterisk vagrave đường dacircy điện thoại khaacutec nhau thigrave dẫn đến Asterisk sẽ khocircnnhận biết được tiacuten hiệu gaacutec maacutey điều nagravey sẽ lagravem cho asterisk khocircng baacuteo giờ giải tỏđược cuộc gọi để thực hiện cuộc gọi mới
3 Baacuteo hiệu giữa caacutec tổng đagravei
SS7 hệ thống baacuteo hiệu số 7 được phaacutet triển bởi ATampT vagrave ITU lagrave hệ thống baacuteo hiệu chuyển caacutec cuộc gọi giữa caacutec tổng đagravei trong mạng PSTN Trong hệ thốn baacuteo hiệu số 7 tiacuten hiệu chuyển tải trecircn đường trung kế kết nối giữa hai tổng đagravei gồcoacute hai mạch riecircng một cho thoại vagrave một cho baacuteo hiệu như vậy thoại vagrave baacuteo hiệu cthể chuyển trecircn hai kecircnh vật lyacute khaacutec nhau
7 Baacuteo Hiệu trecircn mạng điện thoại VoIP
1 SIP Session Initiation Prorocol
Sip lagrave giao thức Internet dagravenh cho baacuteo hiệu VoIP được phaacutet triển bởi IETFcung cấp vagravei chức năng giống hệ thống baacuteo hiệu số 7 nhưng dựa trecircn nền IP Mộchức năng giống baacuteo hiệu số 7 đoacute lagrave baacuteo hiệu vagrave thoại chuyển tải trecircn hai kecircnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2672
Taacutec Giả Lecirc Quốc Toagraven
26
riecircng Giao thức SIP thực hiện chức năng thiết lập vagrave baacuteo hiệu cuộc gọi khi noacutei đế baacuteo hiệu cuộc gọi lagrave chỉ định caacutec tiacuten hiệu baacuteo hiệu như tiacuten hiệu mời quay số tiacutehiệu bậnhellip
2 Proxy server
Mặc dầu hai thiết bị SIP coacute thể liecircn lạc trực tiếp với nhau để khởi tạo cuộgọi nhưng trong giao thức SIP cograven coacute chức năng Proxy để linh hoạt hơn trong thiếlập cuộc gọi Proxy Server sẽ lagravem nhiệm vụ ghi nhận tất cả caacutec số điện thoại đư phiacutea client đăng kyacute đến qua bản tin ldquoRegistrationrdquo Khi một client khaacutec thực hiện
cuộc gọi thigrave thực sự Client đoacute khocircng biết số điện thoại cần gọi đang ở đacircu necircn thocircnqua Proxy server để tigravem kiếm thiết lập cuộc gọi
+
Higravenh Đăng kyacute từ Client đến SIP Proxy Với Giao thức SIP đường baacuteo hiệu vagravethoại riecircng
3 RTP vaacute NAT
Caacutec cuộc gọi trecircn Internet với giao thức SIP được chia thagravenh caacutec goacutei thoại vagraveđược chuyển qua giao thức RTP(Real Time Protocol) RTP lagrave giao thức khocircng chỉthực hiện chuyển caacutec goacutei thoại qua Internet magrave cograven coacute cả video nữa Một cuộc gọ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2772
Taacutec Giả Lecirc Quốc Toagraven
27
thocircng thường coacute hai hướng thocircng tin lagrave nhận vagrave phaacutet RTP lagravem việc chuyển caacutec goacutedữ liệu thoại cũng trecircn hai hướng
NAT Network Address Translators lagrave một trở ngại lớn trong giao thức RTPMạng sử dụng NAT lagrave một mạng chia sẻ nhiều địa chỉ IP nội bộ với một địa chỉ ICocircng cộng để kết nối với thế giới becircn ngoagravei NAT dugraveng để chia sẻ nhiều maacutey tiacutentrong mạng LAN nội bộ sử dụng được Internet nhưng cũng chiacutenh vigrave thế magrave caacutec maacutetiacutenh nội bộ gặp khoacute khăn trong việc thực hiện cuộc gọi VoIP qua Internet Đoacute chiacutenhlagrave vấn để trở ngại khi truyền thoại qua giao thức RTP
Higravenh Minh họa hoạt động của NAT
Trong Giao thức RTP như chuacuteng ta đatilde biết đoacute lagrave thoại được chuyển trecircn haiđường khaacutec nhau lagrave đường phaacutet vagrave đường thu Vấn đề NAT nằm ở chỗ tiacuten hiệthoại từ becircn ngoagravei vagraveo becircn trong qua giao thức RTP khocircng thực hiện được cograven chiềungược lại thigrave thực hiện tốt Hay noacutei caacutech khaacutec vấn đề NAT lagravem cho caacutec cuộc gọi t
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2872
Taacutec Giả Lecirc Quốc Toagraven
28
Internet đagravem thoại vagraveo caacutec maacutey nội bộ qua NAT thigrave khocircng nghe được cograven trongtrường hợp caacutec cuộc gọi từ caacutec maacutey nội bộ ra caacutec maacutey internet thigrave nghe tốt
Vấn đề NAT trecircn được giải quyết trong Asterisk bằng việc khai baacuteo thocircng số NAT=yes trong cấu higravenh kecircnh giao thức SIP
4 IAX ndash Inter Asterisk eXchange
IAX lagrave giao thức baacuteo hiệu Voip được phaacutet triển bởi taacutec giả của phần mềmAsterisk để khắc phục những hạn chế trong giao thức SIP Khocircng giống như giathức SIP chuyển tải thoại vagrave baacuteo hiệu trecircn hai kecircnh khaacutec nhau (out of band) IAXchuyển tải thoại vagrave baacuteo hiệu trecircn cugraveng một kecircnh(in band) IAX giải quyết được vấđề NAT đề cập trecircn phần giao thức SIP Mặc khaacutec IAX lagrave giao thức tối ưu trongviệc sử dụng băng thocircng cho pheacutep nhiều goacutei dữ liệu thoại trecircn cugraveng một IP headecơ chế chuyển tải nhiều cuộc gọi trecircn cugraveng một goacutei IP được gọi lagrave trung kế(Trunk)
Coacute thể giải thiacutech thecircm cơ chế trung kế như sau Giả sử Tocirci cần gửi 5 bức thtới người bạn của Tocirci Tocirci sẽ coacute hai higravenh thức để thực hiện thứ nhất lagrave mỗi bức tTocirci bỏ vagraveo một phong bigrave vậy tổng cộng tocirci phải sử dụng 5 phong bigrave để gửi đi 5 bứthư Caacutech thứ hai lagrave Tocirci bỏ 5 bức thư vagraveo 1 phong bigrave vagrave gửi đi vậy tổng cộng Tocircchỉ tốn 1 phong bigrave Qua phacircn tiacutech trecircn rotilde ragraveng việc 5 bức thư vagraveo một phong bigrave sẽtiết kiệm hơn so với 5 bức thư với 5 phong biacute Cơ chế trecircn cũng giống như nhiềcuộc gọi được đoacuteng thagravenh goacutei vagrave chuyển đi trecircn đường trung kế
Toacutem lại IAX lagrave giao thức dagravenh cho VoIP mới nhất cho đến thời điểm nagravey vớinhiều ưu điểm hấp dẫn như
+ Tối thiểu sử dụng băng thocircng
+ Trong suốt với NAT
+ Hiệu quả với cơ chế trung kế
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2972
Taacutec Giả Lecirc Quốc Toagraven
29
8 Thiết Bị VoIP
1 Voip Phone
Đacircy lagrave thiết bị phần cứng kết nối với mạng VoIP giống như maacutey điện thoại đ bagraven thocircng thường nhưng dagravenh cho VoIP cần phải thực hiện cấu higravenh trước khi sửdụng
Lưu yacute một số tiacutenh năng khi thực hiện mua thiết bị điện thoại VoIP
+ Low bandwidth hỗ trợ Codec nagraveo G729 lagrave tốt nhất hiện nay
+ Web Interface Phải coacute giao tiếp thiết lập cấu higravenh thacircn thiện dễ sử dụng
+ Audio Interface Coacute speaker phone hay khocircng
Giaacute thagravenh của điện thoại voip IP đắc hơn điện thoại thocircng thường giaacute khoảntrecircn dưới 100$ một caacutei
Higravenh Maacutey Điện Thoại VoIP
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3072
Taacutec Giả Lecirc Quốc Toagraven
30
2 Softphone
Lagrave một phần mềm được cagravei trecircn maacutey tiacutenh thực hiện tất cả caacutec chức năng giốn
như thiết bị điện thoại Voip cần lưu yacute khi sử dụng softphone lagrave maacutey tiacutenh phải ccard acircm thanh headphone vagrave firewall khocircng bị khoacutea
Sử dụng softphone với hệ thống Asterisk necircn dugraveng softphone với cocircng nghệgiao thức mới dagravenh cho Asterisk đoacute lagrave IAX
Higravenh Điện Thoại Softphone
3 Card giao tiếp với PSTN
Muốn cho pheacutep caacutec maacutey điện thoại nội bộ trong hệ thống Asterisk kết nối vthực hiện cuộc gọi với mạng PSTN chuacuteng ta cần phải coacute thiết bị phần cứng tươthiacutech Thiết bị phần cứng sử dụng cho hệ thống Asterisk do chiacutenh taacutec giả lập cocircng
Digium phacircn phối đacircy cũng chiacutenh lagrave yacute tưởng lớn trong việc phacircn phối phần mềmAsterisk lagrave hệ thống nguồn mở sử dụng miễn phiacute
Thiết bị phần cứng thường kyacute hiệu bắt đầu bằng cụm từ TDMxyB trong đoacute lagrave số lượng port FXS y lagrave số lượng port FXO giaacute trị tối đa của x vagrave y lagrave 4 viacute dụcard TDM22B coacute nghĩa lagrave coacute 2 fort FXS vagrave 2 port FXO
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3172
Taacutec Giả Lecirc Quốc Toagraven
31
Higravenh Card TDM22B gồm 4 port 2 FXS vagrave 2 FXO
4 ATA Analog Telephone Adaptors
ATA lagrave thiết bị kết nối với điện thoại Analog thocircng thường đến mạng VoIPmột thiết bị ATA gồm coacute hai loại port RJ-11 để kết nối với maacutey điện thoại analo
thocircng thường cograven RJ-45 để kết nối với mạng VoIP
ATA thực sự lagrave thiết bị FXS chuyển đổi tiacuten hiệu Analog sang tiacuten hiệu số sửdụng cho mạng VoIP để tận dụng maacutey điện thoại Analog necircn trang bị thiết bị ATAthay vigrave phải trang bị điện thoại VoIP
Thiết bị ATA sử dụng với giao thức IAX được Digium phacircn phối lagrave thiết bịATA được sử dụng rộng ratildei với Asterisk coacute tecircn gọi lagrave IAXy
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3272
Taacutec Giả Lecirc Quốc Toagraven
32
Higravenh Thiết bị ATA
9 Codecs
Thuật Toaacuten codecs(CompressorDe-compressor) lagrave một tập caacutec quy luật đượcsử dụng để chuyển đổi caacutec tiacuten hiệu thoại dạng Analog sang tiacuten hiệu số vagrave ngược lạ
Coacute nhiều thuật toaacuten codec để thực hiện chuyển đổi tiacuten hiệu analog sang tiacuten
hiệu số dạng nhị phacircn (01) như G711 GSM G729hellipỨng với mỗi thuật toaacuten coacutenhững ưu điểm riecircng đặc biệt lagrave việc tối ưu sử dụng băng thocircng trecircn đường truyềMục tiecircu cuối cugraveng lagrave caacutec thuật toaacuten đưa ra phải đảm bảo chất lượng cuộc gọi nhvagrave tiết kiệm băng thocircng nhất
G729 lagrave thuật toaacuten codec tốt nhất hiện nay trong hệ thống VoIP Với hệthống Asterisk để sử dụng thuật toaacuten nagravey cần phải mua bản quyền sử dụng vigrave đacircy
codec khocircng miễn phiacute sử dụng
10 QoS ndash Quality of Service
Caacutec yếu tố ảnh hưởng đến chất lượng của dịch vụ đối với VoIP đoacute lagrave caacuteyếu ảnh hưởng đến chất lượng tiacuten hiệu thoại
1 Độ trễ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3372
Taacutec Giả Lecirc Quốc Toagraven
33
Thoại lagrave dịch vụ mang tiacutenh thời gian thực rất cao vigrave thế trễ lagrave yếu tố ảnhhưởng rất lớn đến chất lượng dịch vụ Trễ được định nghĩa lagrave khoảng thời gian tiacute
từ luacutec tiacuten hiệu thoại đi từ miệng người noacutei tới tai người nghe Trễ lagrave yếu tố khocircnthể traacutenh khỏi độ trễ đối với mạng điện thoại truyền thống (mạng PSTN) khoảng50ms đến 70ms theo khiến nghị của ITU-T để đảm bảo chất lượng cho hệ thốVoIP thigrave độ trễ từ đầu phaacutet tới đầu thu hoặc ngược lại khocircng được vượt quaacute 150mkhi magrave độ trễ vượt quaacute 400ms đến 500ms thigrave khocircng thể chấp nhận được
Caacutec nguyecircn nhacircn gacircy ra trễ bao gồm Trễ trecircn mạng lưới trễ trecircn bộ mả hoacutea
giải matilde trễ trong quaacute trigravenh đoacuteng goacutei trễ bộ đệm trễ xử lyacute tiếng noacuteihellip2 Độ trượt(Jitter)
Nguyecircn nhacircn gacircy ra trượt lagrave goacutei tiacuten hiệu thoại trong quaacute trigravenh truyền từnguồn đến điacutech sẽ gặp phải những điều kiện khaacutec nhau trecircn mạng lưới do đoacute thườđến điacutech với những khoảng trễ khaacutec nhau Đacircy lagrave tiacutenh khocircng đồng nhất của trễ Mnguyecircn nhacircn khaacutec của trượt đối với ứng dụng PC to PC lagrave do việc sử dụng hệ điề
hagravenh phi thời gian thực caacutec goacutei tin thoại phải đợi hệ điều hagravenh xử lyacute trong nhữnkhoảng thời gian khaacutec nhau khi magrave hệ điều hagravenh đang phải xử lyacute đối với caacutec ứndụng khaacutec
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3472
Taacutec Giả Lecirc Quốc Toagraven
34
Higravenh Nguyecircn nhacircn xảy ra trượt
Để loại bỏ tiacutenh khocircng đồng nhất của trễ người ta thiết kế caacutec bộ đệm t(Jitter Buffer) tại nơi đến của caacutec goacutei tin caacutec goacutei tin đến với caacutec khoảng caacutech khaacutecnhau về thời gian được lưu tại bộ đệm rồi phaacutet khỏi bộ đệm với khoảng trễ n
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3572
Taacutec Giả Lecirc Quốc Toagraven
35
nhau Khi bộ đếm coacute kiacutech thước cagraveng lớn thigrave khả năng loại bỏ tiacutenh khocircng đồng nhấcagraveng lớn tuy nhiecircn việc sử dụng bộ đệm sẽ gacircy ra hiện tượng trễ trong ứng dụnthoại do đoacute cần coacute bagravei toaacuten cacircn đối giữa độ trễ vagrave độ trượt
Ngoagravei 2 nguyecircn nhacircn trecircn cograven một số nguyecircn nhacircn nữa ảnh hưởng đến chấtlượng thoại như độ mất goacutei giới hạn băng thocircng tiếng vọng
3 CAgraveI ĐẶT ASTERISK
1 Cagravei đặt Asterisk
1 Download vagrave bung neacuten
Để cagravei đặt Asterisk đầu tiecircn chuacuteng ta cần phải cagravei đặt hệ điều hagravenh linux trecircnmaacutey tiacutenh của migravenh Coacute thể cagravei hệ điều hagravenh Linux Fedora CentOS Redhat hoặcDebian Caacutec goacutei phần mềm phụ thuộc phải coacute trong hệ điều hagravenh Linux trước khcagravei Asterisk bao gồm
bison
gcc
kernel-source
libtermcap-devel
ncurses-devel
openssl096b
openssl-devel
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3672
Taacutec Giả Lecirc Quốc Toagraven
36
Sau khi hoagraven tất caacutec bước trecircn chuacuteng ta tiến hagravenh download phần mềmasterisk với phiecircn bản mới nhất
cd usrsrc
wgetftpftpdigiumcompubasteriskasterisk-140targz
wgetftpftpdigiumcompubasteriskasterisk-addons-140targz
wgetftpftpdigiumcompubasteriskasterisk-sounds-140targz
wgethttpftpdigiumcompubzaptelzaptel-140targz
wgethttpftpdigiumcompublibprilibpri-140targz
Việc download coacute thể nhanh hay chậm tugravey vagraveo tốc độ trecircn đường internet saukhi download hoagraven thagravenh chuacuteng ta tiến hagravenh bung neacuten caacutec goacutei ra thư mục chỉ định
tar ndashxzvf asterisk-140targz
tar ndashxzvf asterisk-addons-140targz
tar ndashxzvf asterisk-sounds-140targz
tar ndashxzvf zaptel-140targz
tar ndashxzvf libpri-140targz
Giải neacuten xong chuacuteng ta nhớ thực hiện lệnh
ln ndashs usrsrcasterisk-140 usrsrcasterisk lệnh nagravey để bảo đảm goacuteildquoaddonsrdquo được biecircn dịch đuacuteng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3772
Taacutec Giả Lecirc Quốc Toagraven
37
Bacircy giờ tới phần chuacuteng ta biecircn dịch caacutec goacutei đatilde giải neacuten ở trecircn trước tiecircn lagrave goacuteizaptel kế đến lagrave libpri sau cugraveng lagrave goacutei Asterisk
2 Cagravei đặt goacutei Zaptel
Goacutei zaptel sẽ chứa tại thư mục usrsrczaptel Đaacutenh lệnh như dưới đacircy để cagraveđặt
cd usrsrczaptel
make clean make install
Lệnh nagravey thực hiện khoảng 2 phuacutet tugravey vagraveo tốc độ maacutey tiacutenh cagravei đặt sau khicagravei đặt xong sẽ trở lại dấu nhắc lệnh vagrave hiển thị một loạt caacutec thocircng baacuteo trong đoacute một số bản tin lỗi magrave chủ yếu lagrave yecircu cầu cagravei đặt caacutec goacutei phụ thuộc đatilde liệt kecirc ở trecircnếu caacutec goacutei trecircn chưa được cagravei đặt
Goacutei zaptel nagravey chứa caacutec driver cho caacutec phần cứng kết giao tiếp với asterisk
do Digium phacircn phối vagrave một số thư viện cho việc coacute thực hiện giao tiếp với phầcứng hay khocircng
Để Asterisk coacute thể chạy cugraveng với khởi động của maacutey tiacutenh chuacuteng ta cần thựchiện lệnh
make config
Lệnh nagravey sẽ tạo ra script chegraven module zaptel vagraveo kernel vagrave chạy ztconfig vagraveoluacutec khởi động maacutey Trong Redhat script nagravey sẽ được cheacutep vagraveo etcinitd chạy ở mức 3
3 Cagravei đặt goacutei libpri
Kế đến chuacuteng ta biecircn dịch goacutei libpri tại thư mục usrsrclibpri bằng lệnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3972
Taacutec Giả Lecirc Quốc Toagraven
39
make config
3 Cagravei đặt TrixBox
1 Giới thiệu
TRIXBOX được phaacutet triển từ nhacircn của ứng dụng Asterisk được tổng hợp từmột số thagravenh phần chiacutenh được phaacutet triển bởi cộng đồng phaacutet triển nguồn mAsterisk dưới bản quyền GPL Trixbox bao gồm những thagravenh phần chiacutenh cho việcấu higravenh ứng dụng thống kecirc tigravenh trạng hoạt động hệ thống lưu trữ dự phograveng v
nhacircn lagrave hệ điều hagravenh CentOS một phiecircn bản khaacutec của Redhat tất cả kết hợp vớnhau tạo thagravenh một goacutei hoagraven chỉnh Khi cagravei goacutei nagravey vagraveo maacutey tiacutenh thigrave coacute thể sử dụngnhư một tổng đagravei PBX
Caacutec thagravenh phần chiacutenh trong goacutei TRIXBOX lagrave
Asterisk PBX Thagravenh phần chiacutenh của hệ thống Trixbox
CentOS Một phiecircn bản Linux khaacutec của Redhat hoagraven toagraven miển phiacute sửdụng Lagrave nhacircn chiacutenh cho Trixbox
SugarCRM Hệ thống quan hệ khaacutech hagraveng CRM
A2Billing ndash Lagrave thagravenh phần dagravenh cho việc xacircy dựng hệ thống điện thoạitrả trước hay cograven gọi lagrave điện thọai thẻ (Calling Card)
Flash Operator Panel Bảng điều khiển giaacutem saacutet tigravenh trạng hoạt độngcủa caacutec maacutey điện thoại trong hệ thống
Web MeetMe Control Quản lyacute triển khai hệ thống điện thoại hội nghị
FreePBX Đacircy lagrave cocircng cụ với giao diện web dagravenh cho việc cấu higravenh hệthống Asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4072
Taacutec Giả Lecirc Quốc Toagraven
40
Hệ thống Lưu trữ dự phograveng vagrave thống kecirc Lagrave thagravenh phần của TRIXBOXcung cấp caacutec cocircng cụ cần thiết cho việc bảo trigrave bảo dưỡng hệ thống
Hệ thống Apache-Php-Mysql dagravenh cho giải phaacutep Webserver của hệthống
2 DOWNLOAD VAgrave LẮP ĐẶT TRIXBOX
Địa chỉ downloadhttpsourceforgenetprojectsasteriskathome
Khi download xong file Trixboxiso Hatildey dugraveng file nagravey Burn vagraveo CD ( xinlưu yacute lagrave dugraveng Nero hoặc chương trigravenh cheacutep đĩa ưa thiacutech rồi burn vagraveo cd_romchứ khocircng phải cheacutep file đoacute vagraveo cd_rom)
Sau khi coacute CD Hatildey boot từ CD nagravey để cagravei đặt trixbox
Chuacute yacute dữ liệu trecircn đĩa cứng sẽ bị xoacutea sạch để cagravei đặt trixbox Nếu trongđĩa cứng cograven dữ liệu hatildey backup tất cả trước khi tiến hagravenh lắp đặt trixbox
Tới đacircy lần lượt caacutec magraven higravenh chỉ dẫn sẽ hiện ra vagrave cứ theo hướng dẫn magrave cagraveđặt Sau khi cagravei đặt xong chuacuteng ta dugraveng Username root vagrave password password đểđăng nhập hệ thống
3 Cấu higravenh địa chỉ IP cho card mạng
Thiết lập địa chỉ IP bằng caacutech gotilde lệnh
netconfig
Chọn OK để thiếp lập
Nếu trong mạng coacute hỗ trợ DHCP thigrave hatildey chọn mục nagravey cograven nếu khocircng hatildeynhập địa chỉ IP tĩnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4172
Taacutec Giả Lecirc Quốc Toagraven
41
IP 19216801
Netmask 2552552550
Gateway 19216893254 ngotilde ra becircn ngoagravei
Primary nameserver 19216893200 thiết lập nếu coacute
Chọn OK để chấp nhận caacutec thiết lập trecircn
Sau khi hoagraven tất hatildey lagravem cho thiết lập coacute hiệu lực bằng caacutech reset lại
maacutey tiacutenh hoặc dugraveng lệnh sau
Service network stop
Service network start
Đến đacircy xem như cagravei đặt hoagraven tất bacircy giờ để cấu higravenh được Asterisk chuacutengta vagraveo một magravey khaacutec vagrave mở Internet Explorer hoặc một trigravenh duyệt web bất kỳ
nhập vagraveohttp19216801đatilde cấu higravenh ở trecircn vagrave tiến hagravenh cấu higravenh hệ thốngvới tagravei khoảng username maint vagrave password password
4 Tổ Chức Thư Mục của Asterisk
Asterisk sử dụng nhiều thư mục trecircn hệ thống linux để quản lyacute caacutec khiacutea cạnkhaacutec nhau của hệ thống như nghi nhận bản tin thoại caacutec bản tin nhắc thoại hoặcaacutec tập tin cấu higravenh Phần nagravey sẽ trigravenh bagravey caacutec thư mục chiacutenh yếu được tạo ra tronquaacute trigravenh lắp đặt vagrave được cấu higravenh trong tập tin Asteriskconf
1 etcasterisk
Thư mục etcasterisk chứa tất cả caacutec tập tin cấu higravenh của hệ thốngAsterisk ngoại trừ tập tin Zaptelconf được đặt tại thư mục etc Phần cứnZaptel đầu tiecircn được phaacutet triển bởi Jim Dixon thuộc nhoacutem Zapata Telephony
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4272
Taacutec Giả Lecirc Quốc Toagraven
42
Group để giao tiếp giữa maacutey tiacutenh với mạng điện thoại magrave Asterisk lại sửdụng phần cứng nagravey với lyacute do đoacute magrave file cấu higravenh zaptelconf khocircng nằmtrong thư mục etcasterisk
2 usrlibasteriskmodules
Thư mục usrlibasteriskmodules chứa tất cả caacutec module cần thiết đểasterisk hoạt động Becircn trong thư mục lagrave caacutec ứng dụng khaacutec nhau caacutec codeccaacutec định dạng acircm thanh(format) vagrave caacutec kecircnh thocircng tin(channel) Theo mặc địnhAsterisk sẽ nạp tất cả caacutec module vagraveo luacutec khởi động Chuacuteng ta coacute thể khocircng cho
nạp một module bất kỳ bằng caacutech khocircng khai baacuteo sử dụng trong tập tinmodulesconf Lưu yacute khi khocircng cho nạp module thigrave phải biết chắc module đoacutekhocircng lagravem ảnh hưởng hoạt động của asterisk nếu khocircng lỗi sẽ xuất hiện
3 varlibasterisk
Thư mục varlibasterisk chứa tập tin astdb vagrave một số thư mục con Tập tinastdb định vị thocircng tin cơ sở dữ liệu của Asterisk giống như Microsoft WindowsRegistry
Caacutec thư mục con của thư mục varlibasterisk bao gồm
agi-bin
Thư mục agi-bin chứa caacutec script của người dugraveng magrave Asterisk coacute thểđịnh vị sử dụng qua caacutec ứng dụng AGI
AGI lagrave phần giao tiếp với ngocircn ngữ lập trigravenh script để thực hiện mộtsố cocircng việc của Asterisk từ becircn ngoagravei
firmware
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4372
Taacutec Giả Lecirc Quốc Toagraven
43
Thư mục firmware chứa một số phần dẻo(firmware) cho caacutec thiết bịkhaacutec nhau tương thiacutech với Asterisk Hiện tại chỉ coacute thư mục con iax chứa
firmware cho thiếy bị IAXy của Digium IAXy lagrave thiết bị ATA sử dụng giaothức IAX
images
Caacutec ứng dụng thocircng tin với caacutec kecircnh hỗ trợ ảnh images thigrave sử dụng thư mụcnagravey Nhưng hiện tại caacutec kecircnh thocircng tin hầu như khocircng hỗ trợ truyền ảnh images necircthư mục nagravey cũng hiếm khi được sử dụng Tuy nhiecircn nếu caacutec thiết bị coacute hỗ trợ ththư mục nagravey trở necircn hiệu dụng
keys
Asterisk coacute thể sử dụng hệ thống khoaacute publicprivate để xaacutec minh caacutec kết nốgiữa caacutec server Asterisk thocircng qua chữ kyacute điện tử RSA Nếu đặt một khoaacute publicvagraveo thư mục keys thigrave kết nối của server đầu becircn kia coacute thể được xaacutec minh bằn
kecircnh thocircng tin coacute hỗ trợ đối với Asterisk thigrave kecircnh giao thức IAX hỗ trợ loại xaacutecminh nagravey Một khoaacute private khocircng bao giờ cocircng bố chuacuteng ta chỉ cocircng bố khoaacute public đến với server cần nối đến sau đoacute sẽ được xaacutec minh với khoaacute private nagravey Chai khoaacute public vagrave private được lưu với đuocirci pub vagrave key đặt tại thư mục keys
mohmp3
Khi cấu higravenh Asterisk sử dụng tiacutenh năng Music on Hold tiacutenh năng hoạt độngsẽ thực hiện lấy caacutec tập tin mp3 tại thư mục mohmp3 Tập tin định dạng theo chucủa Asterisk necircn khi sử dụng caacutec file Mp3 thocircng thường cần coacute sự chuyển đổi thiacutechợp trước khi cheacutep vagraveo thư mục trecircn để sử dụng
sounds
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4472
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4572
Taacutec Giả Lecirc Quốc Toagraven
45
Thư mục tmp sử dụng để lưu trữ những thocircng tin tạm để luocircn bảo đảm khocircnxảy ra tigravenh trạng đọc vagrave viết tập tin cugraveng một luacutec Khi yecircu cầu xử lyacute tập tin chuacuteng thao taacutec trecircn thư mục tmp trước khi lưu vagraveo tập tin điacutech
Tất cả caacutec lời nhắc thoại từ phiacutea người sử dụng vagrave caacutec lời nhắc thoại sử dụ
cho thao taacutec hộp voicemail đều được chứa trong thư mục voicemail Một hộp thưthoại được tạo ra ứng với một maacutey nội bộ trong tập tin voicemailconf sẽ được tra một thư mục con tương ứng cho maacutey nội bộ đoacute tại thư mục voicemail
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4672
Taacutec Giả Lecirc Quốc Toagraven
46
5 varrun
Thư mục varrun chứa thocircng tin process ID(pid) cho tất cả caacutec tiến trigravenh đang
hoạt động trong hệ thống bao gồm cả Asterisk Lưu yacute lagrave ứng với mỗi hệ điều hagravethư mục varrun coacute thể khaacutec
6 varlogasterisk
Thư mục varlogasterisk lagrave nơi Asterisk chứa tất cả caacutec tập tin nhật kyacute haycograven gọi lagrave tập tin log Chuacuteng ta coacute thể tuỳ biến caacutec loại thocircng tin được lưu trong caacutec
tập tin log khaacutec nhau qua tập tin cấu higravenh loggerconf đặt tại thư mục etcasterisk7 varlogasteriskcdr-csv
Thư mục varlogasteriskcdr-csv được sử dụng để lưu chi tiết cuộc gọi CDRThocircng tin mặc định về chi tiết thocircng tin cuộc gọi lưu trữ trong tập tin MasterCVSnhưng thường thigrave ứng với mỗi matilde accountcode sẽ tạo một thư mục riecircng để lưu ctiết cuộc gọi cho maacutey đoacute
5 Một số lệnh thao taacutec trecircn hệ thống asterisk
Asterisk coacute hai thagravenh phần được xacircy dụng tiacutech hợp với nhau vagrave chạy songsong nhau
Asterisk Server bigravenh thường chạy ở chế độ nền(background) giống caacutec sevicestrong window
Asterisk Client ở chế độ dograveng lệnh CLI giao tiếp với Asterisk Server thực thicaacutec lệnh để kiểm tra hay xem caacutec thocircng tin của server
Để Chạy vagrave dừng Asterisk ở chế độ nền chuacuteng ta thực hiện lệnh sau
etcinitdasterisk (start|stop)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4772
Taacutec Giả Lecirc Quốc Toagraven
47
Một khi Asterisk đatilde chạy chuacuteng ta coacute thể chuyển qua chế độ CLI từ dấu nhắlệnh của linux như sau
asterisk ndashr
Khi vagraveo chế độ lệnh nếu muốn thoaacutet về lại dấu nhắc linux chuacuteng ta dugraveng lệnh
CLIgtexit
Caacutec lệnh cơ bản thực hiện tại CLIgt
Bất cứ khi nagraveo chỉnh sửa caacutec tập tin cấu higravenh chuacuteng ta đều cần phải nạp lại đcaacutec thay đổi coacute hiệu lực điều đoacute thực hiện bằng lệnh
CLIgtreload
Bậc chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 debug
CLIgt SIP debug
Tắt chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 no debug
CLIgt SIP no debug
Hiển thị caacutec trạng thaacutei thocircng tin của users peers vagravechannels của SIP hoặc IAX2
CLIgt sip show users
CLIgt sip show peers
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4872
Taacutec Giả Lecirc Quốc Toagraven
48
CLIgt sip show channels
CLIgt iax2 show peers
CLIgt iax2 show users
CLIgt iax2 show channels
Đến thời điểm nagravey coacute thể noacutei chuacuteng ta đatilde hoagraven thagravenh cagravei đặt hệ thốngAsterisk cagravei đặt xong mới lagrave bước mở đầu để cho hệ thống Asterisk hoạt động vtừng ứng dụng cụ thể chuacuteng sẽ tiếp tục thực hiện caacutec giai đoạn được xem lagrave qutrọng nhất trong việc triển khai hệ thống Asterisk đoacute lagrave giai đoạn cấu higravenh hệ thốnlecircn kế hoạch Diaplan chương cograven lại đều nhắm đến mục tiecircu nagravey
4 CẤU HIgraveNH HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Sau khi hoagraven tất phần cagravei đặt hệ thống asterisk một bước quan trọng tiếp thelagrave cấu higravenh hệ thống coacute thể noacutei đacircy lagrave bước quan trọng nhất của việc khiển khai thống đến với từng ứng dụng cụ thể Trong chương nagravey xin giới thiệu caacutei nhigraven đầtiecircn về việc cấu higravenh trước khi đi sacircu hơn ở những chương sau những gigrave giới thiệ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4972
Taacutec Giả Lecirc Quốc Toagraven
49
trong chương nagravey lagrave nền moacuteng cơ bản nhưng đủ để hiểu lagravem thế nagraveo hệ thống coacute thoạt động được nội dung chiacutenh bao gồm
+ Thao taacutec cấu higravenh trecircn hệ thống tập tin của asterisk
+ Caacutech cagravei đặt phần mềm softphone trecircn cocircng nghệ sip
+ Cấu higravenh cho hai maacutey softphone liecircn lạc với nhau
+ Cấu higravenh phaacutet thocircng điệp
+ Quay số qua Sip vagrave mạng PSTN
2 Tập Tin cấu higravenh
Tất cả caacutec file cấu higravenh cho hệ thống asterisk đều nằm tại thư mục etcasterisngoại trừ file zaptelconf cấu higravenh cho phần cứng TDM nằm tại thư mục etc caacutecthức cấu higravenh giống như tập tin ini của window vậy Caacutec nội dung sau dấu chấm phảy lagrave nội dung chuacute thiacutech trong file cấu higravenh giống như chuacute thiacutech trong ngocircn ngữ
lập trigravenh C lagrave dấu Tất cả caacutec khoảng trắng trong tập tin đều được bỏ qua khocircng yacute nghĩa trong file cấu higravenh
Trong file cấu higravenh cograven coacute hai pheacutep gaacuten rất thường xuyecircn được sử dụng pheacutep gaacuten ldquo=rdquo lagrave dugraveng cho việc gaacuten caacutec biến cograven pheacutep gaacuten ldquo=gtrdquo dugraveng cho việc gaacutencaacutec đối tượng sau đacircy lagrave một viacute dụ cho file cấu higravenh
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5072
Taacutec Giả Lecirc Quốc Toagraven
50
Đacircy lagrave caacutec dograveng chuacute thiacutech
[section]
Key=value gaacuten giaacute trị cho biến
[section2]
Key=gtobject Gaacuten giaacute trị cho đối tượng
Cuacute phaacutep thực hiện giống nhau cho tất cả caacutec file cấu higravenh nhưng coacute vagravei kiểukhaacutec nhau cho mỗi file cầu higravenh dựa vagraveo thức caacutech hoạt động của chuacuteng
3 Caacutec kiểu ảnh hưởng trong tập cấu higravenh
Coacute ba kiểu caacutech thức hoạt động của tập tin cấu higravenh như sau
Kiểu Caacutech hoạt động File cầu higravenh Viacute dụ
S i m p l eGroup
Coacute hiệu lực trecircntừng dograveng trongfile
Extensionconf
Exten=gt4001dial(sip400)
O p t i o ninheritance
Dograveng khai baacuteosau thừa kếnhững thocircng sốkhai baacuteo trước
Zapataconf [channels]
Context=From_PSTN
Signalling=fxs_ks
Group=1Channel=gt1
C o m p l e xEntity
Mỗi entity nhậnmột ngữ cảnh
sipconf
iaxconf
[cisco]
Type=friend
Secret=12345
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5172
Taacutec Giả Lecirc Quốc Toagraven
51
Host=192168165
Context=NoiBo
[xten]
Type=friend
Secret=6789
Host=dynamic
Context=NoiBo
1 Simple Group
Đacircy lagrave kiểu cấu higravenh đơn giản nhất thường sử dụng trong caacutec fileextentionconf meetmeconf voicemailconf tương ứng với mỗi dograveng khai baacuteo lagravemột đối tượng coacute yacute nghĩa trecircn dograveng đoacute
Viacute dụ
Extentionconf [section]
object1=gt op1op2op3
object2=gt op1bop2bop3b
Trong viacute dụ trecircn mỗi dograveng tương ứng với caacutec toaacuten tử khaacutec nhau object1 coacute caacutectoaacuten từ op1 op2 op3 trong khi đoacute object2 lại coacute caacutec toaacuten từ op1b op2b op3b
2 Option inheritance
Đacircy lagrave cấu higravenh kiểu thừa kế thường được cấu higravenh trong caacutec file zapataconfagentconf với kiểu cấu higravenh nagravey thigrave caacutec dograveng phiacutea dưới coacute thể thừa kế caacutec thocircng sdograveng phiacutea trecircn tương ứng với mỗi section caacutec dograveng phiacutea dưới coacute thể thay đổi caacutecthocircng số cho tươngứng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5272
Taacutec Giả Lecirc Quốc Toagraven
52
Viacute dụ
Extentionconf
[section]
Op1=bas
Op2=adv
Object1=gt1
Op1=int
Object1=gt2
Với cấu higravenh trecircn coacute thể giải thiacutech như sau object1=gt1 thừa hưởng hai thocircngsố ở phiacutea trecircn đoacute lagrave op1=bas vagrave op2=adv trong khi đoacute đối với object1=gt2 với thocircngsố op1=int được khai baacuteo lại necircn object1=gt2 được thừa kế từ hai thocircng số op1=invagrave op2=adv
3 Complex Entity
Với cấu kiểu nagravey được tổ chức thagravenh nhiều entity ứng với mỗi entity coacute nhiềthocircng số được khai baacuteo mỗi entity ở đacircy chiacutenh lagrave caacutec section để khai baacuteo caacutec kecircnhthocircng tin Cấu higravenh thường được sử dụng trong caacutec file iaxconf sipconf
Viacute dụ
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5372
Taacutec Giả Lecirc Quốc Toagraven
53
[entity1]
Op1=value1
Op2=value2
[entity2]
Op1=value3
Op2=value4
Entity1 coacute caacutec giaacute trị value1 vagrave value2 cho thocircng số op1 vagrave op2 trong khi đoacute
cũng lagrave thocircng số op1 vagrave op 2 nhưng coacute caacutec giaacute trị khaacutec lagrave value3 vagrave value4 choentity2
4 Cấu higravenh giao tiếp với mạng PSTN
1 Ngữ cảnh kết nối
Để kết nối với mạng PSTN chuacuteng ta cần phải coacute một card TDM với Cổng
FXO vagrave một đường dacircy điện thoại hoặc coacute thể lagrave một tổng đagravei nội bộ PBX Cnhiều nhagrave sản xuất phần cứng khaacutec nhau nhưng trong phần cấu higravenh dưới dacircy lagrave cấhigravenh cho card zapata TDM01B của digium (card nagravey hiện nay giaacute baacuten khoảng175$)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1472
Taacutec Giả Lecirc Quốc Toagraven
14
Asterisk thực hiện rất nhiều ngữ cảnh ứng dụng khaacutec nhau tuỳ vagraveo nhu cầu sdụng dưới dacircy lagrave những ngữ cảnh ứng dụng thường được sử dụng trong thực
triển khai hệ thống asterisk1 Tổng đagravei voip IP PBX
IP BPX
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1572
Taacutec Giả Lecirc Quốc Toagraven
15
Đacircy lagrave hệ thống chuyển mạch voip được xacircy dựng phục vụ caacutec cocircng ty coacute nhucầu thực hiện trecircn nền tảng mạng nội bộ đatilde triển khai Thay vigrave lắp đặt một hệ thố
PBX cho nhu cầu liecircn lạc nội bộ thigrave necircn lắp đặt hệ thống voip điều nagravey sẽ lagravem giảchi phiacute đaacuteng kể Hệ thống coacute thể liecircn 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 ở đacircy lagrave hiện tại Cocircng ty đatilde trang bị hệ thống PBX bacircygiờ cần trang bị thecircm để đaacutep ứng nhu cầu liecircn lạc trong cocircng ty sao cho với chi phthấp nhất giải phaacutep để thực hiện đoacute lagrave trang bị hệ thống asterisk vagrave kết nối với h
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1672
Taacutec Giả Lecirc Quốc Toagraven
16
thống PBX đang tồn tại qua luồng E1 Ngoagravei ra để tăng khả năng liecircn lạc với mạnPSTN vagrave VOIP khaacutec Cocircng Ty coacute thể thực hiện kết nối với nhagrave cung cấp dịch vụvoip
3 Kết nối giữa caacutec server Asterisk
Kết nối giữa caacutec server asterisk
Phương phaacutep trecircn ứng dụng rất hiệu quả cho caacutec cocircng ty nằm ratildei raacutec ở caacutec vtrị địa lyacute khaacutec nhau nhằm giảm chi phiacute đường dagravei Viacute dụ Cocircng ty Mẹ coacute trụ sở đặtại nước Mỹ vagrave caacutec Chi nhaacutenh đặt tại Việt Nam với caacutec địa điểm Thagravenh phố Hồ ChMinh vagrave Hagrave Nội Thocircng qua mạng WAN của Cocircng Ty caacutec cuộc gọi nội bộ giữa caacutec
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1772
Taacutec Giả Lecirc Quốc Toagraven
17
vị triacute khaacutec nhau sẽ lagravem giảm chi phiacute đaacuteng kể Ngữ cảnh nagravey về mặt phaacutep luật khocircncho cuộc gọi từ Mỹ vagraveo Việt Nam
4 Caacutec ứ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 caacutec server kết nối với hệ thống PSTN hay tổng đagravei PBXđể triển khai caacutec ứng dụng như tương taacutec thoại IVR Một viacute dụ cho ứng dụng tươtaacutec thoại đoacute lagrave cho biết kết quả sổ số hay kiểm tra cước cuộc gọi giống dịch v19001260 vậy Ứng dụng VoiceMail thu nhận những tin nhắn thoại từ phiacutea thuecirc bao giống như chức năng hộp thư thoại của Bưu Điện Thagravenh phố triển khai Cograve
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1872
Taacutec Giả Lecirc Quốc Toagraven
18
chức năng điện thoại hội nghị thiết lập cho nhiều maacutey điện thoại cugraveng noacutei chuyệvới nhau
5 Chức năng Phacircn phối cuộc gọi tự động ACD
Phacircn phối cuộc gọi với hagraveng đợi
ACD(Automatic Call Distribution) Phacircn phối cuộc gọi tự động
Đacircy lagrave chức năng ứng dụng cho nhu cầu chăm soacutec khaacutech hagraveng hay nhận phảnhổi từ phiacutea khaacutech hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1972
Taacutec Giả Lecirc Quốc Toagraven
19
Cocircng ty coacute khả năng tiếp nhận cugraveng một luacutec 10 cuộc gọi như thế cuộc gọi th11 gọi đến thigrave hệ thống giải quyết như thế nagraveo Bigravenh thường thigrave sẽ nghe tiacuten hiệ
bận nhưng với chức năng phacircn phối cuộc gọi sẽ đưa thuecirc bao đoacute vagraveo hagraveng đợi đchờ trả lời trong khi chờ trả lời cuộc gọi thuecirc bao coacute thể nghe những bagravei haacutet hay dasterisk cung cấp trong luacutec nagravey nếu 1 trong mười số điện thoại trở về trạng thaacutei rthigrave cuộc gọi đang chờ sẽ được trả lời Giống như chức năng của dịch vụ 1080 ha116 của Bưu Điện Thagravenh Phố vậy
2 CAacuteC KHAacuteI NIỆM TRONG HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Trong chương nagravey sẽ giải thiacutech rotilde caacutec khaacutei niệm cơ bản liecircn quan đến hệ thốnasterisk cung cấp những kiến thức nền tảng những khaacutei niệm cần thiết để thiếttriển khai xacircy dựng hệ thống điện thoại với Asterisk
2 PBX - Private Branch Exchange
PBX hay cograven gọi lagrave PABX - Private Automatic Branch Exchange lagrave hệ thốngtổng đagravei nội bộ được đặt tại nhagrave thuecirc bao từ Automatic ở đacircy muốn noacutei đến lagrave hthống tổng đagravei điện tử tự động nhưng hiện nay đa số lagrave tổng đagravei PBX điện tử tđộng necircn từ trecircn thực sự khocircng cograven cần thiết nữa
PBX với mục tiecircu chia sẻ nhiều thuecirc bao nội bộ gọi ra thế giới becircn ngoagraveithocircng qua một vagravei đường trung kế hay noacutei một caacutech khaacutec PBX lagrave hệ thống trungchuyển giữa caacutec đường dacircy điện thoại becircn ngoagravei từ cocircng ty điện thoại vagrave maacutey điệthoại nội bộ trong tổng đagravei PBX Vigrave thế necircn số lượng maacutey điện thoại nội bộ luocircnhiều hơn số đường dacircy nối đến PBX từ becircn ngoagravei
wwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2072
Taacutec Giả Lecirc Quốc Toagraven
20
PBX thực hiện chuyển mạch cuộc gọi caacutec maacutey điện thoại nội bộ với nhau vvới caacutec maacutey điện thoại becircn ngoagravei thocircng qua đường trung kế Đồng thời thực hiệ
chuyển mạch caacutec cuộc gọi điện thoại từ becircn ngoagravei vagraveo caacutec maacutey điện thoại nội bộNgoagravei việc chuyển mạch cuộc gọi PBX cung cấp nhiều tiacutenh năng sử dụng
cho nhiều mục điacutech khaacutec nhau của khaacutech hagraveng magrave bản thacircn caacutec đường dacircy điệnthoại từ cocircng ty điện thoại kết nối đến khocircng thể thực hiện được caacutec tiacutenh năng ntương taacutec thoại(IVR) Voicemail phacircn phối cuộc gọi tự động(ADC)hellip
Hiện nay với việc phaacutet triển mạnh mẽ của cocircng nghệ VoIP chuacuteng ta cograven coacutethecircm thuật ngữ IP PBX Đacircy lagrave hệ thống chuyển mạch PBX với cocircng nghệ Voip
3 VOIP - Voice Over Internet Protocol
Voice over Internet Protocol (VoIP) lagrave một cocircng nghệ cho pheacutep truyền thoạisử dụng giao thức mạng IP trecircn cơ sở hạ tầng sẵn coacute của mạng internet Voip lagrave mtrong những cocircng nghệ viễn thocircng đang được quan tacircm nhất hiện nay khocircng chỉ đố
với nhagrave khai thaacutec caacutec nhagrave sản xuất magrave cograven cả với người sử dụng dịch vụVoip coacute thể vừa thực hiện mọi loại cuộc gọi như trecircn mạng điện thoại kecircn
truyền thống (PSTN) đồng thời truyền dữ liệu trecircn cơ sở mạng truyền dữ liệu Dcaacutec ưu điểm về giaacute thagravenh dịch vụ vagrave sự tiacutech hợp nhiều loại higravenh dịch vụ necircn voihiện nay được triển khai một caacutec rộng ratildei
Dịch vụ điện thoại voip lagrave dịch vụ ứng dụng giao thức IP nguyecircn tắc củaVoIP bao gồm việc số hoaacute tiacuten hiệu tiếng noacutei thực hiện việc neacuten tiacuten hiệu số chia nhcaacutec goacutei nếu cần vagrave truyền goacutei tin nagravey qua mạng tới nơi nhận caacutec goacutei tin nagravey đượraacutep lại theo đuacuteng thứ tự của bản tin giải matilde tiacuten hiệu tương tự phục hồi lại tiếng n ban đầu
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2172
Taacutec Giả Lecirc Quốc Toagraven
21
Caacutec cuộc gọi trong VoIP dựa trecircn cơ sở sử dụng kết hợp cả chuyển mạchkecircnh vagrave chuyển mạch goacutei Trong mỗi loại chuyển mạch đều coacute ưu nhược điể
riecircng của noacute Trong kỹ thuật chuyển mạch kecircnh giagravenh riecircng cho một kecircnh truyềngiữa hai thiết bị đầu cuối thocircng qua caacutec node chuyển mạch trung gian Trongchuyển mạch kecircnh tốc độ truyền dẫn luocircn luocircn cố định(nghĩa lagrave băng thocircng khocircnđổi) với mạng điện thoại PSTN tốc độ nagravey lagrave 64kbps truyền dẫn trong chuyểmạch kecircnh coacute độ trễ nhỏ
Trong chuyển mạch goacutei caacutec bản tin được chia thagravenh caacutec goacutei nhỏ gọi lagrave caacutec
goacutei nguyecircn tắc hoạt động của noacute lagrave sử dụng hệ thống lưu trữ vagrave chuyển tiếp caacutec gtin trong nuacutet mạng Đối với chuyển mạch goacutei khocircng tồn tại khaacutei niệm kecircnh riecircng băng thocircng khocircng cố định coacute nghĩa lagrave coacute thể thay đổi tốc độ truyền kỹ thuật chuyểmạch goacutei phải chịu độ trễ lớn vigrave trong chuyển mạch goacutei khocircng quy định thời giancho mỗi goacutei dữ liệu tới điacutech mỗi goacutei coacute thể đi bằng nhiều con đường khaacutec nhau đtới điacutech chuyển mạch goacutei thiacutech hợp cho việc truyền dữ liệu vigrave trong mạng truyền dliệu khocircng đogravei hỏi về thời gian thực như thoại để sử dụng ưu điểm của mỗi lo
chuyển mạch trecircn thigrave trong voip kết hợp sử dụng cả hai loại chuyển mạch kecircnh vchuyển mạch goacutei
4 PSTN ndash Public Switched Telephone Network
PSTN lagrave mạng chuyển mạch điện thoại cocircng cộng hay noacutei caacutech khaacutec lagrave mạngkết nối tất cả caacutec hệ thống tổng đagravei chuyển mạch-mạch
Để hiểu rotilde hơn hatildey xem xeacutet mạng PSTN với mạng Internet về khiacutea cạnhchuyển thoại trecircn đoacute Chuyển mạch mạch muốn thực hiện cuộc gọi giữa hai thu bao thigrave hệ thống phải giagravenh riecircng một kecircnh truyền 64kbps để chuyển tải tiacuten hiệthoại trecircn đoacute Cograven cuộc gọi điện thoại trecircn mạng Internet thigrave tiacuten hiệu thoại đượđoacuteng goacutei vagrave chuyển đi trecircn cugraveng kecircnh truyền với nhiều dịch vụ khaacutec Vigrave lẽ đoacute chấlượng cuộc gọi trecircn mạng PSTN bao giờ cũng tốt hơn trecircn mạng Internet nhưng đổ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2272
Taacutec Giả Lecirc Quốc Toagraven
22
lại chi phiacute lại đắc hơn rất nhiều đặc biệt lagrave caacutec cuộc gọi quốc tế necircn phải cần nhắc kỹ khi sử dụng
PSTN được phaacutet triển trecircn chuẩn ITU(International TelecommunicationUnion) cograven mạng Internet được phaacutet triển trecircn chuẩn IETF(Internet EngineeringTask Force) cả hai mạng trecircn đều sử dụng địa chỉ để định tuyến cuộc gọi PSTN sdụng caacutec con số điện thoại để chuyển mạch cuộc gọi giữa caacutec tổng đagravei điện thotrong khi đoacute trecircn mạng Internet địa chỉ IP sẽ được sử dụng để định tuyến caacutec goacutethoại
5 TDM ndash Time Division Multiplexing
Lagrave kỹ thuật gheacutep kecircnh phacircn chia thời gian nhiều tiacuten hiệu coacute thể truyền đồngthời trecircn một đường truyền TDM được sử dụng chuyển thoại trong hệ thống mạPSTN Coacute hai chuẩn gheacutep kecircnh TDM cơ bản lagrave E1 với 30 kecircnh thoại trecircn mộtkhung tốc độ 2Mbps vagrave T1 với 24 kecircnh thoại tốc độ 15Mbps
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2372
Taacutec Giả Lecirc Quốc Toagraven
23
Higravenh Minh họa gheacutep kecircnh phacircn chia theo thời gian
6 Caacutec higravenh thức baacuteo hiệu giao tiếp TDM
1 FXO vagrave FXS
FXO (Foreign Exchange Office) lagrave thiết bị nhận tiacuten hiệu từ tổng đagravei gửi đếnnhư dograveng chuocircng tiacuten hiệu nhấc gaacutec maacutey tiacuten hiệu mời quay số gửi vagrave nhận tiacuten hiệthoạihellip FXO giống như maacutey Fax hay modem dial-up 56k vậy Dugraveng để kết nối vớ
đường dacircy điện thoại
FXS (Foreign Exchange Station) lagrave thiết bị tại nơi cung cấp đường dacircy điệnthoại thiết bị FXS sẽ cung cấp tiacuten hiệu mời quay số(dialtone) dograveng chuocircng hồi acircmchuocircng(ring tone) Trong đường dacircy Analog FXS cung cấp dograveng chuocircng vagrave điện aacutepcho điện thoại hoạt động viacute dụ FXS cung cấp điện aacutep -48VDC đến maacutey điện tho
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2472
Taacutec Giả Lecirc Quốc Toagraven
24
Analog trong suốt thời gian đagravem thoại vagrave cung cấp 90VAC(20hz) để phaacutet điện aacuteprung chuocircng Thiết bị FXS phaacutet cograven thiết bị FXO nhận
Card TDM sử dụng trong hệ thống asterisk thường tiacutech hợp vừa thiết bị FXOvừa lagrave thiết bị FXS(Giống bộ ATA) FXO để kết nối với đường dacircy điện thoại cograveFXS dugraveng để kết nối với maacutey điện thoại analog thocircng thường dugraveng để chuyển mạcuộc gọi TDM qua hệ thống asterisk(Xem thecircm trong phần cấu higravenh cho kecircnhTDM)
Toacutem lại cần nắm
FXS được kết nối với FXO giống với đường dacircy điện thoại nối với maacuteyđiện thoại
FXS cung cấp nguồn cho điện thoại FXO(điện thoại Analog)
Higravenh a) Maacutey điện thoại vai trograve FXO kết nối với FXS(PSTN) Higravenh b) PBXkết nối với FXO vagrave FXS Higravenh c) ATA đoacuteng vai trograve như FXS để kết nối với maacuteyđiện thoại vai trograve FXO
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2572
Taacutec Giả Lecirc Quốc Toagraven
25
2 Baacuteo hiệu Analog giữa đầu cuối vagrave tổng đagravei
Khi chuacuteng ta nhấc mấy điện thoại để gọi thigrave nghe tiacuten hiệu mời quay số kh
cuộc gọi gọi đầu becircn kia bị bận thigrave chuacuteng ta nghe tiacuten hiệu bận(busy tone) caacutec loạtiacuten hiệu như vậy gọi lagrave caacutec tiacuten hiệu baacuteo hiệu analog Caacutec tiacuten hiệu như Mời quay sốtiacuten hiệu bận rung chuocircng trạng thaacutei nhấc gaacutec maacutey Caacutec loại tiacuten hiệu trecircn được trađổi giữa thiết bị FXO vagrave FXS
Coacute nhiều phương thức baacuteo hiệu khaacutec nhau ứng với từng nơi sử dụng vigrave thếtại nơi kết nối với đường dacircy điện thoại cần xem xeacutet họ đang sử dụng phương th
baacuteo hiệu gigrave từ đoacute chuacuteng ta khai thaacutec loại tiacuten hiệu baacuteo hiệu cho thiacutech hợp caacutec phương thức baacuteo hiệu như Loop Start Ground Start Một minh họa cho việc sửdụng sai phương thức baacuteo hiệu lagrave khi chuacuteng ta khai baacuteo phương thức baacuteo hiệu giữhệ thống Asterisk vagrave đường dacircy điện thoại khaacutec nhau thigrave dẫn đến Asterisk sẽ khocircnnhận biết được tiacuten hiệu gaacutec maacutey điều nagravey sẽ lagravem cho asterisk khocircng baacuteo giờ giải tỏđược cuộc gọi để thực hiện cuộc gọi mới
3 Baacuteo hiệu giữa caacutec tổng đagravei
SS7 hệ thống baacuteo hiệu số 7 được phaacutet triển bởi ATampT vagrave ITU lagrave hệ thống baacuteo hiệu chuyển caacutec cuộc gọi giữa caacutec tổng đagravei trong mạng PSTN Trong hệ thốn baacuteo hiệu số 7 tiacuten hiệu chuyển tải trecircn đường trung kế kết nối giữa hai tổng đagravei gồcoacute hai mạch riecircng một cho thoại vagrave một cho baacuteo hiệu như vậy thoại vagrave baacuteo hiệu cthể chuyển trecircn hai kecircnh vật lyacute khaacutec nhau
7 Baacuteo Hiệu trecircn mạng điện thoại VoIP
1 SIP Session Initiation Prorocol
Sip lagrave giao thức Internet dagravenh cho baacuteo hiệu VoIP được phaacutet triển bởi IETFcung cấp vagravei chức năng giống hệ thống baacuteo hiệu số 7 nhưng dựa trecircn nền IP Mộchức năng giống baacuteo hiệu số 7 đoacute lagrave baacuteo hiệu vagrave thoại chuyển tải trecircn hai kecircnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2672
Taacutec Giả Lecirc Quốc Toagraven
26
riecircng Giao thức SIP thực hiện chức năng thiết lập vagrave baacuteo hiệu cuộc gọi khi noacutei đế baacuteo hiệu cuộc gọi lagrave chỉ định caacutec tiacuten hiệu baacuteo hiệu như tiacuten hiệu mời quay số tiacutehiệu bậnhellip
2 Proxy server
Mặc dầu hai thiết bị SIP coacute thể liecircn lạc trực tiếp với nhau để khởi tạo cuộgọi nhưng trong giao thức SIP cograven coacute chức năng Proxy để linh hoạt hơn trong thiếlập cuộc gọi Proxy Server sẽ lagravem nhiệm vụ ghi nhận tất cả caacutec số điện thoại đư phiacutea client đăng kyacute đến qua bản tin ldquoRegistrationrdquo Khi một client khaacutec thực hiện
cuộc gọi thigrave thực sự Client đoacute khocircng biết số điện thoại cần gọi đang ở đacircu necircn thocircnqua Proxy server để tigravem kiếm thiết lập cuộc gọi
+
Higravenh Đăng kyacute từ Client đến SIP Proxy Với Giao thức SIP đường baacuteo hiệu vagravethoại riecircng
3 RTP vaacute NAT
Caacutec cuộc gọi trecircn Internet với giao thức SIP được chia thagravenh caacutec goacutei thoại vagraveđược chuyển qua giao thức RTP(Real Time Protocol) RTP lagrave giao thức khocircng chỉthực hiện chuyển caacutec goacutei thoại qua Internet magrave cograven coacute cả video nữa Một cuộc gọ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2772
Taacutec Giả Lecirc Quốc Toagraven
27
thocircng thường coacute hai hướng thocircng tin lagrave nhận vagrave phaacutet RTP lagravem việc chuyển caacutec goacutedữ liệu thoại cũng trecircn hai hướng
NAT Network Address Translators lagrave một trở ngại lớn trong giao thức RTPMạng sử dụng NAT lagrave một mạng chia sẻ nhiều địa chỉ IP nội bộ với một địa chỉ ICocircng cộng để kết nối với thế giới becircn ngoagravei NAT dugraveng để chia sẻ nhiều maacutey tiacutentrong mạng LAN nội bộ sử dụng được Internet nhưng cũng chiacutenh vigrave thế magrave caacutec maacutetiacutenh nội bộ gặp khoacute khăn trong việc thực hiện cuộc gọi VoIP qua Internet Đoacute chiacutenhlagrave vấn để trở ngại khi truyền thoại qua giao thức RTP
Higravenh Minh họa hoạt động của NAT
Trong Giao thức RTP như chuacuteng ta đatilde biết đoacute lagrave thoại được chuyển trecircn haiđường khaacutec nhau lagrave đường phaacutet vagrave đường thu Vấn đề NAT nằm ở chỗ tiacuten hiệthoại từ becircn ngoagravei vagraveo becircn trong qua giao thức RTP khocircng thực hiện được cograven chiềungược lại thigrave thực hiện tốt Hay noacutei caacutech khaacutec vấn đề NAT lagravem cho caacutec cuộc gọi t
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2872
Taacutec Giả Lecirc Quốc Toagraven
28
Internet đagravem thoại vagraveo caacutec maacutey nội bộ qua NAT thigrave khocircng nghe được cograven trongtrường hợp caacutec cuộc gọi từ caacutec maacutey nội bộ ra caacutec maacutey internet thigrave nghe tốt
Vấn đề NAT trecircn được giải quyết trong Asterisk bằng việc khai baacuteo thocircng số NAT=yes trong cấu higravenh kecircnh giao thức SIP
4 IAX ndash Inter Asterisk eXchange
IAX lagrave giao thức baacuteo hiệu Voip được phaacutet triển bởi taacutec giả của phần mềmAsterisk để khắc phục những hạn chế trong giao thức SIP Khocircng giống như giathức SIP chuyển tải thoại vagrave baacuteo hiệu trecircn hai kecircnh khaacutec nhau (out of band) IAXchuyển tải thoại vagrave baacuteo hiệu trecircn cugraveng một kecircnh(in band) IAX giải quyết được vấđề NAT đề cập trecircn phần giao thức SIP Mặc khaacutec IAX lagrave giao thức tối ưu trongviệc sử dụng băng thocircng cho pheacutep nhiều goacutei dữ liệu thoại trecircn cugraveng một IP headecơ chế chuyển tải nhiều cuộc gọi trecircn cugraveng một goacutei IP được gọi lagrave trung kế(Trunk)
Coacute thể giải thiacutech thecircm cơ chế trung kế như sau Giả sử Tocirci cần gửi 5 bức thtới người bạn của Tocirci Tocirci sẽ coacute hai higravenh thức để thực hiện thứ nhất lagrave mỗi bức tTocirci bỏ vagraveo một phong bigrave vậy tổng cộng tocirci phải sử dụng 5 phong bigrave để gửi đi 5 bứthư Caacutech thứ hai lagrave Tocirci bỏ 5 bức thư vagraveo 1 phong bigrave vagrave gửi đi vậy tổng cộng Tocircchỉ tốn 1 phong bigrave Qua phacircn tiacutech trecircn rotilde ragraveng việc 5 bức thư vagraveo một phong bigrave sẽtiết kiệm hơn so với 5 bức thư với 5 phong biacute Cơ chế trecircn cũng giống như nhiềcuộc gọi được đoacuteng thagravenh goacutei vagrave chuyển đi trecircn đường trung kế
Toacutem lại IAX lagrave giao thức dagravenh cho VoIP mới nhất cho đến thời điểm nagravey vớinhiều ưu điểm hấp dẫn như
+ Tối thiểu sử dụng băng thocircng
+ Trong suốt với NAT
+ Hiệu quả với cơ chế trung kế
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2972
Taacutec Giả Lecirc Quốc Toagraven
29
8 Thiết Bị VoIP
1 Voip Phone
Đacircy lagrave thiết bị phần cứng kết nối với mạng VoIP giống như maacutey điện thoại đ bagraven thocircng thường nhưng dagravenh cho VoIP cần phải thực hiện cấu higravenh trước khi sửdụng
Lưu yacute một số tiacutenh năng khi thực hiện mua thiết bị điện thoại VoIP
+ Low bandwidth hỗ trợ Codec nagraveo G729 lagrave tốt nhất hiện nay
+ Web Interface Phải coacute giao tiếp thiết lập cấu higravenh thacircn thiện dễ sử dụng
+ Audio Interface Coacute speaker phone hay khocircng
Giaacute thagravenh của điện thoại voip IP đắc hơn điện thoại thocircng thường giaacute khoảntrecircn dưới 100$ một caacutei
Higravenh Maacutey Điện Thoại VoIP
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3072
Taacutec Giả Lecirc Quốc Toagraven
30
2 Softphone
Lagrave một phần mềm được cagravei trecircn maacutey tiacutenh thực hiện tất cả caacutec chức năng giốn
như thiết bị điện thoại Voip cần lưu yacute khi sử dụng softphone lagrave maacutey tiacutenh phải ccard acircm thanh headphone vagrave firewall khocircng bị khoacutea
Sử dụng softphone với hệ thống Asterisk necircn dugraveng softphone với cocircng nghệgiao thức mới dagravenh cho Asterisk đoacute lagrave IAX
Higravenh Điện Thoại Softphone
3 Card giao tiếp với PSTN
Muốn cho pheacutep caacutec maacutey điện thoại nội bộ trong hệ thống Asterisk kết nối vthực hiện cuộc gọi với mạng PSTN chuacuteng ta cần phải coacute thiết bị phần cứng tươthiacutech Thiết bị phần cứng sử dụng cho hệ thống Asterisk do chiacutenh taacutec giả lập cocircng
Digium phacircn phối đacircy cũng chiacutenh lagrave yacute tưởng lớn trong việc phacircn phối phần mềmAsterisk lagrave hệ thống nguồn mở sử dụng miễn phiacute
Thiết bị phần cứng thường kyacute hiệu bắt đầu bằng cụm từ TDMxyB trong đoacute lagrave số lượng port FXS y lagrave số lượng port FXO giaacute trị tối đa của x vagrave y lagrave 4 viacute dụcard TDM22B coacute nghĩa lagrave coacute 2 fort FXS vagrave 2 port FXO
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3172
Taacutec Giả Lecirc Quốc Toagraven
31
Higravenh Card TDM22B gồm 4 port 2 FXS vagrave 2 FXO
4 ATA Analog Telephone Adaptors
ATA lagrave thiết bị kết nối với điện thoại Analog thocircng thường đến mạng VoIPmột thiết bị ATA gồm coacute hai loại port RJ-11 để kết nối với maacutey điện thoại analo
thocircng thường cograven RJ-45 để kết nối với mạng VoIP
ATA thực sự lagrave thiết bị FXS chuyển đổi tiacuten hiệu Analog sang tiacuten hiệu số sửdụng cho mạng VoIP để tận dụng maacutey điện thoại Analog necircn trang bị thiết bị ATAthay vigrave phải trang bị điện thoại VoIP
Thiết bị ATA sử dụng với giao thức IAX được Digium phacircn phối lagrave thiết bịATA được sử dụng rộng ratildei với Asterisk coacute tecircn gọi lagrave IAXy
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3272
Taacutec Giả Lecirc Quốc Toagraven
32
Higravenh Thiết bị ATA
9 Codecs
Thuật Toaacuten codecs(CompressorDe-compressor) lagrave một tập caacutec quy luật đượcsử dụng để chuyển đổi caacutec tiacuten hiệu thoại dạng Analog sang tiacuten hiệu số vagrave ngược lạ
Coacute nhiều thuật toaacuten codec để thực hiện chuyển đổi tiacuten hiệu analog sang tiacuten
hiệu số dạng nhị phacircn (01) như G711 GSM G729hellipỨng với mỗi thuật toaacuten coacutenhững ưu điểm riecircng đặc biệt lagrave việc tối ưu sử dụng băng thocircng trecircn đường truyềMục tiecircu cuối cugraveng lagrave caacutec thuật toaacuten đưa ra phải đảm bảo chất lượng cuộc gọi nhvagrave tiết kiệm băng thocircng nhất
G729 lagrave thuật toaacuten codec tốt nhất hiện nay trong hệ thống VoIP Với hệthống Asterisk để sử dụng thuật toaacuten nagravey cần phải mua bản quyền sử dụng vigrave đacircy
codec khocircng miễn phiacute sử dụng
10 QoS ndash Quality of Service
Caacutec yếu tố ảnh hưởng đến chất lượng của dịch vụ đối với VoIP đoacute lagrave caacuteyếu ảnh hưởng đến chất lượng tiacuten hiệu thoại
1 Độ trễ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3372
Taacutec Giả Lecirc Quốc Toagraven
33
Thoại lagrave dịch vụ mang tiacutenh thời gian thực rất cao vigrave thế trễ lagrave yếu tố ảnhhưởng rất lớn đến chất lượng dịch vụ Trễ được định nghĩa lagrave khoảng thời gian tiacute
từ luacutec tiacuten hiệu thoại đi từ miệng người noacutei tới tai người nghe Trễ lagrave yếu tố khocircnthể traacutenh khỏi độ trễ đối với mạng điện thoại truyền thống (mạng PSTN) khoảng50ms đến 70ms theo khiến nghị của ITU-T để đảm bảo chất lượng cho hệ thốVoIP thigrave độ trễ từ đầu phaacutet tới đầu thu hoặc ngược lại khocircng được vượt quaacute 150mkhi magrave độ trễ vượt quaacute 400ms đến 500ms thigrave khocircng thể chấp nhận được
Caacutec nguyecircn nhacircn gacircy ra trễ bao gồm Trễ trecircn mạng lưới trễ trecircn bộ mả hoacutea
giải matilde trễ trong quaacute trigravenh đoacuteng goacutei trễ bộ đệm trễ xử lyacute tiếng noacuteihellip2 Độ trượt(Jitter)
Nguyecircn nhacircn gacircy ra trượt lagrave goacutei tiacuten hiệu thoại trong quaacute trigravenh truyền từnguồn đến điacutech sẽ gặp phải những điều kiện khaacutec nhau trecircn mạng lưới do đoacute thườđến điacutech với những khoảng trễ khaacutec nhau Đacircy lagrave tiacutenh khocircng đồng nhất của trễ Mnguyecircn nhacircn khaacutec của trượt đối với ứng dụng PC to PC lagrave do việc sử dụng hệ điề
hagravenh phi thời gian thực caacutec goacutei tin thoại phải đợi hệ điều hagravenh xử lyacute trong nhữnkhoảng thời gian khaacutec nhau khi magrave hệ điều hagravenh đang phải xử lyacute đối với caacutec ứndụng khaacutec
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3472
Taacutec Giả Lecirc Quốc Toagraven
34
Higravenh Nguyecircn nhacircn xảy ra trượt
Để loại bỏ tiacutenh khocircng đồng nhất của trễ người ta thiết kế caacutec bộ đệm t(Jitter Buffer) tại nơi đến của caacutec goacutei tin caacutec goacutei tin đến với caacutec khoảng caacutech khaacutecnhau về thời gian được lưu tại bộ đệm rồi phaacutet khỏi bộ đệm với khoảng trễ n
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3572
Taacutec Giả Lecirc Quốc Toagraven
35
nhau Khi bộ đếm coacute kiacutech thước cagraveng lớn thigrave khả năng loại bỏ tiacutenh khocircng đồng nhấcagraveng lớn tuy nhiecircn việc sử dụng bộ đệm sẽ gacircy ra hiện tượng trễ trong ứng dụnthoại do đoacute cần coacute bagravei toaacuten cacircn đối giữa độ trễ vagrave độ trượt
Ngoagravei 2 nguyecircn nhacircn trecircn cograven một số nguyecircn nhacircn nữa ảnh hưởng đến chấtlượng thoại như độ mất goacutei giới hạn băng thocircng tiếng vọng
3 CAgraveI ĐẶT ASTERISK
1 Cagravei đặt Asterisk
1 Download vagrave bung neacuten
Để cagravei đặt Asterisk đầu tiecircn chuacuteng ta cần phải cagravei đặt hệ điều hagravenh linux trecircnmaacutey tiacutenh của migravenh Coacute thể cagravei hệ điều hagravenh Linux Fedora CentOS Redhat hoặcDebian Caacutec goacutei phần mềm phụ thuộc phải coacute trong hệ điều hagravenh Linux trước khcagravei Asterisk bao gồm
bison
gcc
kernel-source
libtermcap-devel
ncurses-devel
openssl096b
openssl-devel
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3672
Taacutec Giả Lecirc Quốc Toagraven
36
Sau khi hoagraven tất caacutec bước trecircn chuacuteng ta tiến hagravenh download phần mềmasterisk với phiecircn bản mới nhất
cd usrsrc
wgetftpftpdigiumcompubasteriskasterisk-140targz
wgetftpftpdigiumcompubasteriskasterisk-addons-140targz
wgetftpftpdigiumcompubasteriskasterisk-sounds-140targz
wgethttpftpdigiumcompubzaptelzaptel-140targz
wgethttpftpdigiumcompublibprilibpri-140targz
Việc download coacute thể nhanh hay chậm tugravey vagraveo tốc độ trecircn đường internet saukhi download hoagraven thagravenh chuacuteng ta tiến hagravenh bung neacuten caacutec goacutei ra thư mục chỉ định
tar ndashxzvf asterisk-140targz
tar ndashxzvf asterisk-addons-140targz
tar ndashxzvf asterisk-sounds-140targz
tar ndashxzvf zaptel-140targz
tar ndashxzvf libpri-140targz
Giải neacuten xong chuacuteng ta nhớ thực hiện lệnh
ln ndashs usrsrcasterisk-140 usrsrcasterisk lệnh nagravey để bảo đảm goacuteildquoaddonsrdquo được biecircn dịch đuacuteng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3772
Taacutec Giả Lecirc Quốc Toagraven
37
Bacircy giờ tới phần chuacuteng ta biecircn dịch caacutec goacutei đatilde giải neacuten ở trecircn trước tiecircn lagrave goacuteizaptel kế đến lagrave libpri sau cugraveng lagrave goacutei Asterisk
2 Cagravei đặt goacutei Zaptel
Goacutei zaptel sẽ chứa tại thư mục usrsrczaptel Đaacutenh lệnh như dưới đacircy để cagraveđặt
cd usrsrczaptel
make clean make install
Lệnh nagravey thực hiện khoảng 2 phuacutet tugravey vagraveo tốc độ maacutey tiacutenh cagravei đặt sau khicagravei đặt xong sẽ trở lại dấu nhắc lệnh vagrave hiển thị một loạt caacutec thocircng baacuteo trong đoacute một số bản tin lỗi magrave chủ yếu lagrave yecircu cầu cagravei đặt caacutec goacutei phụ thuộc đatilde liệt kecirc ở trecircnếu caacutec goacutei trecircn chưa được cagravei đặt
Goacutei zaptel nagravey chứa caacutec driver cho caacutec phần cứng kết giao tiếp với asterisk
do Digium phacircn phối vagrave một số thư viện cho việc coacute thực hiện giao tiếp với phầcứng hay khocircng
Để Asterisk coacute thể chạy cugraveng với khởi động của maacutey tiacutenh chuacuteng ta cần thựchiện lệnh
make config
Lệnh nagravey sẽ tạo ra script chegraven module zaptel vagraveo kernel vagrave chạy ztconfig vagraveoluacutec khởi động maacutey Trong Redhat script nagravey sẽ được cheacutep vagraveo etcinitd chạy ở mức 3
3 Cagravei đặt goacutei libpri
Kế đến chuacuteng ta biecircn dịch goacutei libpri tại thư mục usrsrclibpri bằng lệnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3972
Taacutec Giả Lecirc Quốc Toagraven
39
make config
3 Cagravei đặt TrixBox
1 Giới thiệu
TRIXBOX được phaacutet triển từ nhacircn của ứng dụng Asterisk được tổng hợp từmột số thagravenh phần chiacutenh được phaacutet triển bởi cộng đồng phaacutet triển nguồn mAsterisk dưới bản quyền GPL Trixbox bao gồm những thagravenh phần chiacutenh cho việcấu higravenh ứng dụng thống kecirc tigravenh trạng hoạt động hệ thống lưu trữ dự phograveng v
nhacircn lagrave hệ điều hagravenh CentOS một phiecircn bản khaacutec của Redhat tất cả kết hợp vớnhau tạo thagravenh một goacutei hoagraven chỉnh Khi cagravei goacutei nagravey vagraveo maacutey tiacutenh thigrave coacute thể sử dụngnhư một tổng đagravei PBX
Caacutec thagravenh phần chiacutenh trong goacutei TRIXBOX lagrave
Asterisk PBX Thagravenh phần chiacutenh của hệ thống Trixbox
CentOS Một phiecircn bản Linux khaacutec của Redhat hoagraven toagraven miển phiacute sửdụng Lagrave nhacircn chiacutenh cho Trixbox
SugarCRM Hệ thống quan hệ khaacutech hagraveng CRM
A2Billing ndash Lagrave thagravenh phần dagravenh cho việc xacircy dựng hệ thống điện thoạitrả trước hay cograven gọi lagrave điện thọai thẻ (Calling Card)
Flash Operator Panel Bảng điều khiển giaacutem saacutet tigravenh trạng hoạt độngcủa caacutec maacutey điện thoại trong hệ thống
Web MeetMe Control Quản lyacute triển khai hệ thống điện thoại hội nghị
FreePBX Đacircy lagrave cocircng cụ với giao diện web dagravenh cho việc cấu higravenh hệthống Asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4072
Taacutec Giả Lecirc Quốc Toagraven
40
Hệ thống Lưu trữ dự phograveng vagrave thống kecirc Lagrave thagravenh phần của TRIXBOXcung cấp caacutec cocircng cụ cần thiết cho việc bảo trigrave bảo dưỡng hệ thống
Hệ thống Apache-Php-Mysql dagravenh cho giải phaacutep Webserver của hệthống
2 DOWNLOAD VAgrave LẮP ĐẶT TRIXBOX
Địa chỉ downloadhttpsourceforgenetprojectsasteriskathome
Khi download xong file Trixboxiso Hatildey dugraveng file nagravey Burn vagraveo CD ( xinlưu yacute lagrave dugraveng Nero hoặc chương trigravenh cheacutep đĩa ưa thiacutech rồi burn vagraveo cd_romchứ khocircng phải cheacutep file đoacute vagraveo cd_rom)
Sau khi coacute CD Hatildey boot từ CD nagravey để cagravei đặt trixbox
Chuacute yacute dữ liệu trecircn đĩa cứng sẽ bị xoacutea sạch để cagravei đặt trixbox Nếu trongđĩa cứng cograven dữ liệu hatildey backup tất cả trước khi tiến hagravenh lắp đặt trixbox
Tới đacircy lần lượt caacutec magraven higravenh chỉ dẫn sẽ hiện ra vagrave cứ theo hướng dẫn magrave cagraveđặt Sau khi cagravei đặt xong chuacuteng ta dugraveng Username root vagrave password password đểđăng nhập hệ thống
3 Cấu higravenh địa chỉ IP cho card mạng
Thiết lập địa chỉ IP bằng caacutech gotilde lệnh
netconfig
Chọn OK để thiếp lập
Nếu trong mạng coacute hỗ trợ DHCP thigrave hatildey chọn mục nagravey cograven nếu khocircng hatildeynhập địa chỉ IP tĩnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4172
Taacutec Giả Lecirc Quốc Toagraven
41
IP 19216801
Netmask 2552552550
Gateway 19216893254 ngotilde ra becircn ngoagravei
Primary nameserver 19216893200 thiết lập nếu coacute
Chọn OK để chấp nhận caacutec thiết lập trecircn
Sau khi hoagraven tất hatildey lagravem cho thiết lập coacute hiệu lực bằng caacutech reset lại
maacutey tiacutenh hoặc dugraveng lệnh sau
Service network stop
Service network start
Đến đacircy xem như cagravei đặt hoagraven tất bacircy giờ để cấu higravenh được Asterisk chuacutengta vagraveo một magravey khaacutec vagrave mở Internet Explorer hoặc một trigravenh duyệt web bất kỳ
nhập vagraveohttp19216801đatilde cấu higravenh ở trecircn vagrave tiến hagravenh cấu higravenh hệ thốngvới tagravei khoảng username maint vagrave password password
4 Tổ Chức Thư Mục của Asterisk
Asterisk sử dụng nhiều thư mục trecircn hệ thống linux để quản lyacute caacutec khiacutea cạnkhaacutec nhau của hệ thống như nghi nhận bản tin thoại caacutec bản tin nhắc thoại hoặcaacutec tập tin cấu higravenh Phần nagravey sẽ trigravenh bagravey caacutec thư mục chiacutenh yếu được tạo ra tronquaacute trigravenh lắp đặt vagrave được cấu higravenh trong tập tin Asteriskconf
1 etcasterisk
Thư mục etcasterisk chứa tất cả caacutec tập tin cấu higravenh của hệ thốngAsterisk ngoại trừ tập tin Zaptelconf được đặt tại thư mục etc Phần cứnZaptel đầu tiecircn được phaacutet triển bởi Jim Dixon thuộc nhoacutem Zapata Telephony
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4272
Taacutec Giả Lecirc Quốc Toagraven
42
Group để giao tiếp giữa maacutey tiacutenh với mạng điện thoại magrave Asterisk lại sửdụng phần cứng nagravey với lyacute do đoacute magrave file cấu higravenh zaptelconf khocircng nằmtrong thư mục etcasterisk
2 usrlibasteriskmodules
Thư mục usrlibasteriskmodules chứa tất cả caacutec module cần thiết đểasterisk hoạt động Becircn trong thư mục lagrave caacutec ứng dụng khaacutec nhau caacutec codeccaacutec định dạng acircm thanh(format) vagrave caacutec kecircnh thocircng tin(channel) Theo mặc địnhAsterisk sẽ nạp tất cả caacutec module vagraveo luacutec khởi động Chuacuteng ta coacute thể khocircng cho
nạp một module bất kỳ bằng caacutech khocircng khai baacuteo sử dụng trong tập tinmodulesconf Lưu yacute khi khocircng cho nạp module thigrave phải biết chắc module đoacutekhocircng lagravem ảnh hưởng hoạt động của asterisk nếu khocircng lỗi sẽ xuất hiện
3 varlibasterisk
Thư mục varlibasterisk chứa tập tin astdb vagrave một số thư mục con Tập tinastdb định vị thocircng tin cơ sở dữ liệu của Asterisk giống như Microsoft WindowsRegistry
Caacutec thư mục con của thư mục varlibasterisk bao gồm
agi-bin
Thư mục agi-bin chứa caacutec script của người dugraveng magrave Asterisk coacute thểđịnh vị sử dụng qua caacutec ứng dụng AGI
AGI lagrave phần giao tiếp với ngocircn ngữ lập trigravenh script để thực hiện mộtsố cocircng việc của Asterisk từ becircn ngoagravei
firmware
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4372
Taacutec Giả Lecirc Quốc Toagraven
43
Thư mục firmware chứa một số phần dẻo(firmware) cho caacutec thiết bịkhaacutec nhau tương thiacutech với Asterisk Hiện tại chỉ coacute thư mục con iax chứa
firmware cho thiếy bị IAXy của Digium IAXy lagrave thiết bị ATA sử dụng giaothức IAX
images
Caacutec ứng dụng thocircng tin với caacutec kecircnh hỗ trợ ảnh images thigrave sử dụng thư mụcnagravey Nhưng hiện tại caacutec kecircnh thocircng tin hầu như khocircng hỗ trợ truyền ảnh images necircthư mục nagravey cũng hiếm khi được sử dụng Tuy nhiecircn nếu caacutec thiết bị coacute hỗ trợ ththư mục nagravey trở necircn hiệu dụng
keys
Asterisk coacute thể sử dụng hệ thống khoaacute publicprivate để xaacutec minh caacutec kết nốgiữa caacutec server Asterisk thocircng qua chữ kyacute điện tử RSA Nếu đặt một khoaacute publicvagraveo thư mục keys thigrave kết nối của server đầu becircn kia coacute thể được xaacutec minh bằn
kecircnh thocircng tin coacute hỗ trợ đối với Asterisk thigrave kecircnh giao thức IAX hỗ trợ loại xaacutecminh nagravey Một khoaacute private khocircng bao giờ cocircng bố chuacuteng ta chỉ cocircng bố khoaacute public đến với server cần nối đến sau đoacute sẽ được xaacutec minh với khoaacute private nagravey Chai khoaacute public vagrave private được lưu với đuocirci pub vagrave key đặt tại thư mục keys
mohmp3
Khi cấu higravenh Asterisk sử dụng tiacutenh năng Music on Hold tiacutenh năng hoạt độngsẽ thực hiện lấy caacutec tập tin mp3 tại thư mục mohmp3 Tập tin định dạng theo chucủa Asterisk necircn khi sử dụng caacutec file Mp3 thocircng thường cần coacute sự chuyển đổi thiacutechợp trước khi cheacutep vagraveo thư mục trecircn để sử dụng
sounds
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4472
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4572
Taacutec Giả Lecirc Quốc Toagraven
45
Thư mục tmp sử dụng để lưu trữ những thocircng tin tạm để luocircn bảo đảm khocircnxảy ra tigravenh trạng đọc vagrave viết tập tin cugraveng một luacutec Khi yecircu cầu xử lyacute tập tin chuacuteng thao taacutec trecircn thư mục tmp trước khi lưu vagraveo tập tin điacutech
Tất cả caacutec lời nhắc thoại từ phiacutea người sử dụng vagrave caacutec lời nhắc thoại sử dụ
cho thao taacutec hộp voicemail đều được chứa trong thư mục voicemail Một hộp thưthoại được tạo ra ứng với một maacutey nội bộ trong tập tin voicemailconf sẽ được tra một thư mục con tương ứng cho maacutey nội bộ đoacute tại thư mục voicemail
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4672
Taacutec Giả Lecirc Quốc Toagraven
46
5 varrun
Thư mục varrun chứa thocircng tin process ID(pid) cho tất cả caacutec tiến trigravenh đang
hoạt động trong hệ thống bao gồm cả Asterisk Lưu yacute lagrave ứng với mỗi hệ điều hagravethư mục varrun coacute thể khaacutec
6 varlogasterisk
Thư mục varlogasterisk lagrave nơi Asterisk chứa tất cả caacutec tập tin nhật kyacute haycograven gọi lagrave tập tin log Chuacuteng ta coacute thể tuỳ biến caacutec loại thocircng tin được lưu trong caacutec
tập tin log khaacutec nhau qua tập tin cấu higravenh loggerconf đặt tại thư mục etcasterisk7 varlogasteriskcdr-csv
Thư mục varlogasteriskcdr-csv được sử dụng để lưu chi tiết cuộc gọi CDRThocircng tin mặc định về chi tiết thocircng tin cuộc gọi lưu trữ trong tập tin MasterCVSnhưng thường thigrave ứng với mỗi matilde accountcode sẽ tạo một thư mục riecircng để lưu ctiết cuộc gọi cho maacutey đoacute
5 Một số lệnh thao taacutec trecircn hệ thống asterisk
Asterisk coacute hai thagravenh phần được xacircy dụng tiacutech hợp với nhau vagrave chạy songsong nhau
Asterisk Server bigravenh thường chạy ở chế độ nền(background) giống caacutec sevicestrong window
Asterisk Client ở chế độ dograveng lệnh CLI giao tiếp với Asterisk Server thực thicaacutec lệnh để kiểm tra hay xem caacutec thocircng tin của server
Để Chạy vagrave dừng Asterisk ở chế độ nền chuacuteng ta thực hiện lệnh sau
etcinitdasterisk (start|stop)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4772
Taacutec Giả Lecirc Quốc Toagraven
47
Một khi Asterisk đatilde chạy chuacuteng ta coacute thể chuyển qua chế độ CLI từ dấu nhắlệnh của linux như sau
asterisk ndashr
Khi vagraveo chế độ lệnh nếu muốn thoaacutet về lại dấu nhắc linux chuacuteng ta dugraveng lệnh
CLIgtexit
Caacutec lệnh cơ bản thực hiện tại CLIgt
Bất cứ khi nagraveo chỉnh sửa caacutec tập tin cấu higravenh chuacuteng ta đều cần phải nạp lại đcaacutec thay đổi coacute hiệu lực điều đoacute thực hiện bằng lệnh
CLIgtreload
Bậc chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 debug
CLIgt SIP debug
Tắt chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 no debug
CLIgt SIP no debug
Hiển thị caacutec trạng thaacutei thocircng tin của users peers vagravechannels của SIP hoặc IAX2
CLIgt sip show users
CLIgt sip show peers
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4872
Taacutec Giả Lecirc Quốc Toagraven
48
CLIgt sip show channels
CLIgt iax2 show peers
CLIgt iax2 show users
CLIgt iax2 show channels
Đến thời điểm nagravey coacute thể noacutei chuacuteng ta đatilde hoagraven thagravenh cagravei đặt hệ thốngAsterisk cagravei đặt xong mới lagrave bước mở đầu để cho hệ thống Asterisk hoạt động vtừng ứng dụng cụ thể chuacuteng sẽ tiếp tục thực hiện caacutec giai đoạn được xem lagrave qutrọng nhất trong việc triển khai hệ thống Asterisk đoacute lagrave giai đoạn cấu higravenh hệ thốnlecircn kế hoạch Diaplan chương cograven lại đều nhắm đến mục tiecircu nagravey
4 CẤU HIgraveNH HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Sau khi hoagraven tất phần cagravei đặt hệ thống asterisk một bước quan trọng tiếp thelagrave cấu higravenh hệ thống coacute thể noacutei đacircy lagrave bước quan trọng nhất của việc khiển khai thống đến với từng ứng dụng cụ thể Trong chương nagravey xin giới thiệu caacutei nhigraven đầtiecircn về việc cấu higravenh trước khi đi sacircu hơn ở những chương sau những gigrave giới thiệ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4972
Taacutec Giả Lecirc Quốc Toagraven
49
trong chương nagravey lagrave nền moacuteng cơ bản nhưng đủ để hiểu lagravem thế nagraveo hệ thống coacute thoạt động được nội dung chiacutenh bao gồm
+ Thao taacutec cấu higravenh trecircn hệ thống tập tin của asterisk
+ Caacutech cagravei đặt phần mềm softphone trecircn cocircng nghệ sip
+ Cấu higravenh cho hai maacutey softphone liecircn lạc với nhau
+ Cấu higravenh phaacutet thocircng điệp
+ Quay số qua Sip vagrave mạng PSTN
2 Tập Tin cấu higravenh
Tất cả caacutec file cấu higravenh cho hệ thống asterisk đều nằm tại thư mục etcasterisngoại trừ file zaptelconf cấu higravenh cho phần cứng TDM nằm tại thư mục etc caacutecthức cấu higravenh giống như tập tin ini của window vậy Caacutec nội dung sau dấu chấm phảy lagrave nội dung chuacute thiacutech trong file cấu higravenh giống như chuacute thiacutech trong ngocircn ngữ
lập trigravenh C lagrave dấu Tất cả caacutec khoảng trắng trong tập tin đều được bỏ qua khocircng yacute nghĩa trong file cấu higravenh
Trong file cấu higravenh cograven coacute hai pheacutep gaacuten rất thường xuyecircn được sử dụng pheacutep gaacuten ldquo=rdquo lagrave dugraveng cho việc gaacuten caacutec biến cograven pheacutep gaacuten ldquo=gtrdquo dugraveng cho việc gaacutencaacutec đối tượng sau đacircy lagrave một viacute dụ cho file cấu higravenh
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5072
Taacutec Giả Lecirc Quốc Toagraven
50
Đacircy lagrave caacutec dograveng chuacute thiacutech
[section]
Key=value gaacuten giaacute trị cho biến
[section2]
Key=gtobject Gaacuten giaacute trị cho đối tượng
Cuacute phaacutep thực hiện giống nhau cho tất cả caacutec file cấu higravenh nhưng coacute vagravei kiểukhaacutec nhau cho mỗi file cầu higravenh dựa vagraveo thức caacutech hoạt động của chuacuteng
3 Caacutec kiểu ảnh hưởng trong tập cấu higravenh
Coacute ba kiểu caacutech thức hoạt động của tập tin cấu higravenh như sau
Kiểu Caacutech hoạt động File cầu higravenh Viacute dụ
S i m p l eGroup
Coacute hiệu lực trecircntừng dograveng trongfile
Extensionconf
Exten=gt4001dial(sip400)
O p t i o ninheritance
Dograveng khai baacuteosau thừa kếnhững thocircng sốkhai baacuteo trước
Zapataconf [channels]
Context=From_PSTN
Signalling=fxs_ks
Group=1Channel=gt1
C o m p l e xEntity
Mỗi entity nhậnmột ngữ cảnh
sipconf
iaxconf
[cisco]
Type=friend
Secret=12345
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5172
Taacutec Giả Lecirc Quốc Toagraven
51
Host=192168165
Context=NoiBo
[xten]
Type=friend
Secret=6789
Host=dynamic
Context=NoiBo
1 Simple Group
Đacircy lagrave kiểu cấu higravenh đơn giản nhất thường sử dụng trong caacutec fileextentionconf meetmeconf voicemailconf tương ứng với mỗi dograveng khai baacuteo lagravemột đối tượng coacute yacute nghĩa trecircn dograveng đoacute
Viacute dụ
Extentionconf [section]
object1=gt op1op2op3
object2=gt op1bop2bop3b
Trong viacute dụ trecircn mỗi dograveng tương ứng với caacutec toaacuten tử khaacutec nhau object1 coacute caacutectoaacuten từ op1 op2 op3 trong khi đoacute object2 lại coacute caacutec toaacuten từ op1b op2b op3b
2 Option inheritance
Đacircy lagrave cấu higravenh kiểu thừa kế thường được cấu higravenh trong caacutec file zapataconfagentconf với kiểu cấu higravenh nagravey thigrave caacutec dograveng phiacutea dưới coacute thể thừa kế caacutec thocircng sdograveng phiacutea trecircn tương ứng với mỗi section caacutec dograveng phiacutea dưới coacute thể thay đổi caacutecthocircng số cho tươngứng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5272
Taacutec Giả Lecirc Quốc Toagraven
52
Viacute dụ
Extentionconf
[section]
Op1=bas
Op2=adv
Object1=gt1
Op1=int
Object1=gt2
Với cấu higravenh trecircn coacute thể giải thiacutech như sau object1=gt1 thừa hưởng hai thocircngsố ở phiacutea trecircn đoacute lagrave op1=bas vagrave op2=adv trong khi đoacute đối với object1=gt2 với thocircngsố op1=int được khai baacuteo lại necircn object1=gt2 được thừa kế từ hai thocircng số op1=invagrave op2=adv
3 Complex Entity
Với cấu kiểu nagravey được tổ chức thagravenh nhiều entity ứng với mỗi entity coacute nhiềthocircng số được khai baacuteo mỗi entity ở đacircy chiacutenh lagrave caacutec section để khai baacuteo caacutec kecircnhthocircng tin Cấu higravenh thường được sử dụng trong caacutec file iaxconf sipconf
Viacute dụ
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5372
Taacutec Giả Lecirc Quốc Toagraven
53
[entity1]
Op1=value1
Op2=value2
[entity2]
Op1=value3
Op2=value4
Entity1 coacute caacutec giaacute trị value1 vagrave value2 cho thocircng số op1 vagrave op2 trong khi đoacute
cũng lagrave thocircng số op1 vagrave op 2 nhưng coacute caacutec giaacute trị khaacutec lagrave value3 vagrave value4 choentity2
4 Cấu higravenh giao tiếp với mạng PSTN
1 Ngữ cảnh kết nối
Để kết nối với mạng PSTN chuacuteng ta cần phải coacute một card TDM với Cổng
FXO vagrave một đường dacircy điện thoại hoặc coacute thể lagrave một tổng đagravei nội bộ PBX Cnhiều nhagrave sản xuất phần cứng khaacutec nhau nhưng trong phần cấu higravenh dưới dacircy lagrave cấhigravenh cho card zapata TDM01B của digium (card nagravey hiện nay giaacute baacuten khoảng175$)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1572
Taacutec Giả Lecirc Quốc Toagraven
15
Đacircy lagrave hệ thống chuyển mạch voip được xacircy dựng phục vụ caacutec cocircng ty coacute nhucầu thực hiện trecircn nền tảng mạng nội bộ đatilde triển khai Thay vigrave lắp đặt một hệ thố
PBX cho nhu cầu liecircn lạc nội bộ thigrave necircn lắp đặt hệ thống voip điều nagravey sẽ lagravem giảchi phiacute đaacuteng kể Hệ thống coacute thể liecircn 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 ở đacircy lagrave hiện tại Cocircng ty đatilde trang bị hệ thống PBX bacircygiờ cần trang bị thecircm để đaacutep ứng nhu cầu liecircn lạc trong cocircng ty sao cho với chi phthấp nhất giải phaacutep để thực hiện đoacute lagrave trang bị hệ thống asterisk vagrave kết nối với h
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1672
Taacutec Giả Lecirc Quốc Toagraven
16
thống PBX đang tồn tại qua luồng E1 Ngoagravei ra để tăng khả năng liecircn lạc với mạnPSTN vagrave VOIP khaacutec Cocircng Ty coacute thể thực hiện kết nối với nhagrave cung cấp dịch vụvoip
3 Kết nối giữa caacutec server Asterisk
Kết nối giữa caacutec server asterisk
Phương phaacutep trecircn ứng dụng rất hiệu quả cho caacutec cocircng ty nằm ratildei raacutec ở caacutec vtrị địa lyacute khaacutec nhau nhằm giảm chi phiacute đường dagravei Viacute dụ Cocircng ty Mẹ coacute trụ sở đặtại nước Mỹ vagrave caacutec Chi nhaacutenh đặt tại Việt Nam với caacutec địa điểm Thagravenh phố Hồ ChMinh vagrave Hagrave Nội Thocircng qua mạng WAN của Cocircng Ty caacutec cuộc gọi nội bộ giữa caacutec
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1772
Taacutec Giả Lecirc Quốc Toagraven
17
vị triacute khaacutec nhau sẽ lagravem giảm chi phiacute đaacuteng kể Ngữ cảnh nagravey về mặt phaacutep luật khocircncho cuộc gọi từ Mỹ vagraveo Việt Nam
4 Caacutec ứ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 caacutec server kết nối với hệ thống PSTN hay tổng đagravei PBXđể triển khai caacutec ứng dụng như tương taacutec thoại IVR Một viacute dụ cho ứng dụng tươtaacutec thoại đoacute lagrave cho biết kết quả sổ số hay kiểm tra cước cuộc gọi giống dịch v19001260 vậy Ứng dụng VoiceMail thu nhận những tin nhắn thoại từ phiacutea thuecirc bao giống như chức năng hộp thư thoại của Bưu Điện Thagravenh phố triển khai Cograve
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1872
Taacutec Giả Lecirc Quốc Toagraven
18
chức năng điện thoại hội nghị thiết lập cho nhiều maacutey điện thoại cugraveng noacutei chuyệvới nhau
5 Chức năng Phacircn phối cuộc gọi tự động ACD
Phacircn phối cuộc gọi với hagraveng đợi
ACD(Automatic Call Distribution) Phacircn phối cuộc gọi tự động
Đacircy lagrave chức năng ứng dụng cho nhu cầu chăm soacutec khaacutech hagraveng hay nhận phảnhổi từ phiacutea khaacutech hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1972
Taacutec Giả Lecirc Quốc Toagraven
19
Cocircng ty coacute khả năng tiếp nhận cugraveng một luacutec 10 cuộc gọi như thế cuộc gọi th11 gọi đến thigrave hệ thống giải quyết như thế nagraveo Bigravenh thường thigrave sẽ nghe tiacuten hiệ
bận nhưng với chức năng phacircn phối cuộc gọi sẽ đưa thuecirc bao đoacute vagraveo hagraveng đợi đchờ trả lời trong khi chờ trả lời cuộc gọi thuecirc bao coacute thể nghe những bagravei haacutet hay dasterisk cung cấp trong luacutec nagravey nếu 1 trong mười số điện thoại trở về trạng thaacutei rthigrave cuộc gọi đang chờ sẽ được trả lời Giống như chức năng của dịch vụ 1080 ha116 của Bưu Điện Thagravenh Phố vậy
2 CAacuteC KHAacuteI NIỆM TRONG HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Trong chương nagravey sẽ giải thiacutech rotilde caacutec khaacutei niệm cơ bản liecircn quan đến hệ thốnasterisk cung cấp những kiến thức nền tảng những khaacutei niệm cần thiết để thiếttriển khai xacircy dựng hệ thống điện thoại với Asterisk
2 PBX - Private Branch Exchange
PBX hay cograven gọi lagrave PABX - Private Automatic Branch Exchange lagrave hệ thốngtổng đagravei nội bộ được đặt tại nhagrave thuecirc bao từ Automatic ở đacircy muốn noacutei đến lagrave hthống tổng đagravei điện tử tự động nhưng hiện nay đa số lagrave tổng đagravei PBX điện tử tđộng necircn từ trecircn thực sự khocircng cograven cần thiết nữa
PBX với mục tiecircu chia sẻ nhiều thuecirc bao nội bộ gọi ra thế giới becircn ngoagraveithocircng qua một vagravei đường trung kế hay noacutei một caacutech khaacutec PBX lagrave hệ thống trungchuyển giữa caacutec đường dacircy điện thoại becircn ngoagravei từ cocircng ty điện thoại vagrave maacutey điệthoại nội bộ trong tổng đagravei PBX Vigrave thế necircn số lượng maacutey điện thoại nội bộ luocircnhiều hơn số đường dacircy nối đến PBX từ becircn ngoagravei
wwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2072
Taacutec Giả Lecirc Quốc Toagraven
20
PBX thực hiện chuyển mạch cuộc gọi caacutec maacutey điện thoại nội bộ với nhau vvới caacutec maacutey điện thoại becircn ngoagravei thocircng qua đường trung kế Đồng thời thực hiệ
chuyển mạch caacutec cuộc gọi điện thoại từ becircn ngoagravei vagraveo caacutec maacutey điện thoại nội bộNgoagravei việc chuyển mạch cuộc gọi PBX cung cấp nhiều tiacutenh năng sử dụng
cho nhiều mục điacutech khaacutec nhau của khaacutech hagraveng magrave bản thacircn caacutec đường dacircy điệnthoại từ cocircng ty điện thoại kết nối đến khocircng thể thực hiện được caacutec tiacutenh năng ntương taacutec thoại(IVR) Voicemail phacircn phối cuộc gọi tự động(ADC)hellip
Hiện nay với việc phaacutet triển mạnh mẽ của cocircng nghệ VoIP chuacuteng ta cograven coacutethecircm thuật ngữ IP PBX Đacircy lagrave hệ thống chuyển mạch PBX với cocircng nghệ Voip
3 VOIP - Voice Over Internet Protocol
Voice over Internet Protocol (VoIP) lagrave một cocircng nghệ cho pheacutep truyền thoạisử dụng giao thức mạng IP trecircn cơ sở hạ tầng sẵn coacute của mạng internet Voip lagrave mtrong những cocircng nghệ viễn thocircng đang được quan tacircm nhất hiện nay khocircng chỉ đố
với nhagrave khai thaacutec caacutec nhagrave sản xuất magrave cograven cả với người sử dụng dịch vụVoip coacute thể vừa thực hiện mọi loại cuộc gọi như trecircn mạng điện thoại kecircn
truyền thống (PSTN) đồng thời truyền dữ liệu trecircn cơ sở mạng truyền dữ liệu Dcaacutec ưu điểm về giaacute thagravenh dịch vụ vagrave sự tiacutech hợp nhiều loại higravenh dịch vụ necircn voihiện nay được triển khai một caacutec rộng ratildei
Dịch vụ điện thoại voip lagrave dịch vụ ứng dụng giao thức IP nguyecircn tắc củaVoIP bao gồm việc số hoaacute tiacuten hiệu tiếng noacutei thực hiện việc neacuten tiacuten hiệu số chia nhcaacutec goacutei nếu cần vagrave truyền goacutei tin nagravey qua mạng tới nơi nhận caacutec goacutei tin nagravey đượraacutep lại theo đuacuteng thứ tự của bản tin giải matilde tiacuten hiệu tương tự phục hồi lại tiếng n ban đầu
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2172
Taacutec Giả Lecirc Quốc Toagraven
21
Caacutec cuộc gọi trong VoIP dựa trecircn cơ sở sử dụng kết hợp cả chuyển mạchkecircnh vagrave chuyển mạch goacutei Trong mỗi loại chuyển mạch đều coacute ưu nhược điể
riecircng của noacute Trong kỹ thuật chuyển mạch kecircnh giagravenh riecircng cho một kecircnh truyềngiữa hai thiết bị đầu cuối thocircng qua caacutec node chuyển mạch trung gian Trongchuyển mạch kecircnh tốc độ truyền dẫn luocircn luocircn cố định(nghĩa lagrave băng thocircng khocircnđổi) với mạng điện thoại PSTN tốc độ nagravey lagrave 64kbps truyền dẫn trong chuyểmạch kecircnh coacute độ trễ nhỏ
Trong chuyển mạch goacutei caacutec bản tin được chia thagravenh caacutec goacutei nhỏ gọi lagrave caacutec
goacutei nguyecircn tắc hoạt động của noacute lagrave sử dụng hệ thống lưu trữ vagrave chuyển tiếp caacutec gtin trong nuacutet mạng Đối với chuyển mạch goacutei khocircng tồn tại khaacutei niệm kecircnh riecircng băng thocircng khocircng cố định coacute nghĩa lagrave coacute thể thay đổi tốc độ truyền kỹ thuật chuyểmạch goacutei phải chịu độ trễ lớn vigrave trong chuyển mạch goacutei khocircng quy định thời giancho mỗi goacutei dữ liệu tới điacutech mỗi goacutei coacute thể đi bằng nhiều con đường khaacutec nhau đtới điacutech chuyển mạch goacutei thiacutech hợp cho việc truyền dữ liệu vigrave trong mạng truyền dliệu khocircng đogravei hỏi về thời gian thực như thoại để sử dụng ưu điểm của mỗi lo
chuyển mạch trecircn thigrave trong voip kết hợp sử dụng cả hai loại chuyển mạch kecircnh vchuyển mạch goacutei
4 PSTN ndash Public Switched Telephone Network
PSTN lagrave mạng chuyển mạch điện thoại cocircng cộng hay noacutei caacutech khaacutec lagrave mạngkết nối tất cả caacutec hệ thống tổng đagravei chuyển mạch-mạch
Để hiểu rotilde hơn hatildey xem xeacutet mạng PSTN với mạng Internet về khiacutea cạnhchuyển thoại trecircn đoacute Chuyển mạch mạch muốn thực hiện cuộc gọi giữa hai thu bao thigrave hệ thống phải giagravenh riecircng một kecircnh truyền 64kbps để chuyển tải tiacuten hiệthoại trecircn đoacute Cograven cuộc gọi điện thoại trecircn mạng Internet thigrave tiacuten hiệu thoại đượđoacuteng goacutei vagrave chuyển đi trecircn cugraveng kecircnh truyền với nhiều dịch vụ khaacutec Vigrave lẽ đoacute chấlượng cuộc gọi trecircn mạng PSTN bao giờ cũng tốt hơn trecircn mạng Internet nhưng đổ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2272
Taacutec Giả Lecirc Quốc Toagraven
22
lại chi phiacute lại đắc hơn rất nhiều đặc biệt lagrave caacutec cuộc gọi quốc tế necircn phải cần nhắc kỹ khi sử dụng
PSTN được phaacutet triển trecircn chuẩn ITU(International TelecommunicationUnion) cograven mạng Internet được phaacutet triển trecircn chuẩn IETF(Internet EngineeringTask Force) cả hai mạng trecircn đều sử dụng địa chỉ để định tuyến cuộc gọi PSTN sdụng caacutec con số điện thoại để chuyển mạch cuộc gọi giữa caacutec tổng đagravei điện thotrong khi đoacute trecircn mạng Internet địa chỉ IP sẽ được sử dụng để định tuyến caacutec goacutethoại
5 TDM ndash Time Division Multiplexing
Lagrave kỹ thuật gheacutep kecircnh phacircn chia thời gian nhiều tiacuten hiệu coacute thể truyền đồngthời trecircn một đường truyền TDM được sử dụng chuyển thoại trong hệ thống mạPSTN Coacute hai chuẩn gheacutep kecircnh TDM cơ bản lagrave E1 với 30 kecircnh thoại trecircn mộtkhung tốc độ 2Mbps vagrave T1 với 24 kecircnh thoại tốc độ 15Mbps
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2372
Taacutec Giả Lecirc Quốc Toagraven
23
Higravenh Minh họa gheacutep kecircnh phacircn chia theo thời gian
6 Caacutec higravenh thức baacuteo hiệu giao tiếp TDM
1 FXO vagrave FXS
FXO (Foreign Exchange Office) lagrave thiết bị nhận tiacuten hiệu từ tổng đagravei gửi đếnnhư dograveng chuocircng tiacuten hiệu nhấc gaacutec maacutey tiacuten hiệu mời quay số gửi vagrave nhận tiacuten hiệthoạihellip FXO giống như maacutey Fax hay modem dial-up 56k vậy Dugraveng để kết nối vớ
đường dacircy điện thoại
FXS (Foreign Exchange Station) lagrave thiết bị tại nơi cung cấp đường dacircy điệnthoại thiết bị FXS sẽ cung cấp tiacuten hiệu mời quay số(dialtone) dograveng chuocircng hồi acircmchuocircng(ring tone) Trong đường dacircy Analog FXS cung cấp dograveng chuocircng vagrave điện aacutepcho điện thoại hoạt động viacute dụ FXS cung cấp điện aacutep -48VDC đến maacutey điện tho
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2472
Taacutec Giả Lecirc Quốc Toagraven
24
Analog trong suốt thời gian đagravem thoại vagrave cung cấp 90VAC(20hz) để phaacutet điện aacuteprung chuocircng Thiết bị FXS phaacutet cograven thiết bị FXO nhận
Card TDM sử dụng trong hệ thống asterisk thường tiacutech hợp vừa thiết bị FXOvừa lagrave thiết bị FXS(Giống bộ ATA) FXO để kết nối với đường dacircy điện thoại cograveFXS dugraveng để kết nối với maacutey điện thoại analog thocircng thường dugraveng để chuyển mạcuộc gọi TDM qua hệ thống asterisk(Xem thecircm trong phần cấu higravenh cho kecircnhTDM)
Toacutem lại cần nắm
FXS được kết nối với FXO giống với đường dacircy điện thoại nối với maacuteyđiện thoại
FXS cung cấp nguồn cho điện thoại FXO(điện thoại Analog)
Higravenh a) Maacutey điện thoại vai trograve FXO kết nối với FXS(PSTN) Higravenh b) PBXkết nối với FXO vagrave FXS Higravenh c) ATA đoacuteng vai trograve như FXS để kết nối với maacuteyđiện thoại vai trograve FXO
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2572
Taacutec Giả Lecirc Quốc Toagraven
25
2 Baacuteo hiệu Analog giữa đầu cuối vagrave tổng đagravei
Khi chuacuteng ta nhấc mấy điện thoại để gọi thigrave nghe tiacuten hiệu mời quay số kh
cuộc gọi gọi đầu becircn kia bị bận thigrave chuacuteng ta nghe tiacuten hiệu bận(busy tone) caacutec loạtiacuten hiệu như vậy gọi lagrave caacutec tiacuten hiệu baacuteo hiệu analog Caacutec tiacuten hiệu như Mời quay sốtiacuten hiệu bận rung chuocircng trạng thaacutei nhấc gaacutec maacutey Caacutec loại tiacuten hiệu trecircn được trađổi giữa thiết bị FXO vagrave FXS
Coacute nhiều phương thức baacuteo hiệu khaacutec nhau ứng với từng nơi sử dụng vigrave thếtại nơi kết nối với đường dacircy điện thoại cần xem xeacutet họ đang sử dụng phương th
baacuteo hiệu gigrave từ đoacute chuacuteng ta khai thaacutec loại tiacuten hiệu baacuteo hiệu cho thiacutech hợp caacutec phương thức baacuteo hiệu như Loop Start Ground Start Một minh họa cho việc sửdụng sai phương thức baacuteo hiệu lagrave khi chuacuteng ta khai baacuteo phương thức baacuteo hiệu giữhệ thống Asterisk vagrave đường dacircy điện thoại khaacutec nhau thigrave dẫn đến Asterisk sẽ khocircnnhận biết được tiacuten hiệu gaacutec maacutey điều nagravey sẽ lagravem cho asterisk khocircng baacuteo giờ giải tỏđược cuộc gọi để thực hiện cuộc gọi mới
3 Baacuteo hiệu giữa caacutec tổng đagravei
SS7 hệ thống baacuteo hiệu số 7 được phaacutet triển bởi ATampT vagrave ITU lagrave hệ thống baacuteo hiệu chuyển caacutec cuộc gọi giữa caacutec tổng đagravei trong mạng PSTN Trong hệ thốn baacuteo hiệu số 7 tiacuten hiệu chuyển tải trecircn đường trung kế kết nối giữa hai tổng đagravei gồcoacute hai mạch riecircng một cho thoại vagrave một cho baacuteo hiệu như vậy thoại vagrave baacuteo hiệu cthể chuyển trecircn hai kecircnh vật lyacute khaacutec nhau
7 Baacuteo Hiệu trecircn mạng điện thoại VoIP
1 SIP Session Initiation Prorocol
Sip lagrave giao thức Internet dagravenh cho baacuteo hiệu VoIP được phaacutet triển bởi IETFcung cấp vagravei chức năng giống hệ thống baacuteo hiệu số 7 nhưng dựa trecircn nền IP Mộchức năng giống baacuteo hiệu số 7 đoacute lagrave baacuteo hiệu vagrave thoại chuyển tải trecircn hai kecircnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2672
Taacutec Giả Lecirc Quốc Toagraven
26
riecircng Giao thức SIP thực hiện chức năng thiết lập vagrave baacuteo hiệu cuộc gọi khi noacutei đế baacuteo hiệu cuộc gọi lagrave chỉ định caacutec tiacuten hiệu baacuteo hiệu như tiacuten hiệu mời quay số tiacutehiệu bậnhellip
2 Proxy server
Mặc dầu hai thiết bị SIP coacute thể liecircn lạc trực tiếp với nhau để khởi tạo cuộgọi nhưng trong giao thức SIP cograven coacute chức năng Proxy để linh hoạt hơn trong thiếlập cuộc gọi Proxy Server sẽ lagravem nhiệm vụ ghi nhận tất cả caacutec số điện thoại đư phiacutea client đăng kyacute đến qua bản tin ldquoRegistrationrdquo Khi một client khaacutec thực hiện
cuộc gọi thigrave thực sự Client đoacute khocircng biết số điện thoại cần gọi đang ở đacircu necircn thocircnqua Proxy server để tigravem kiếm thiết lập cuộc gọi
+
Higravenh Đăng kyacute từ Client đến SIP Proxy Với Giao thức SIP đường baacuteo hiệu vagravethoại riecircng
3 RTP vaacute NAT
Caacutec cuộc gọi trecircn Internet với giao thức SIP được chia thagravenh caacutec goacutei thoại vagraveđược chuyển qua giao thức RTP(Real Time Protocol) RTP lagrave giao thức khocircng chỉthực hiện chuyển caacutec goacutei thoại qua Internet magrave cograven coacute cả video nữa Một cuộc gọ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2772
Taacutec Giả Lecirc Quốc Toagraven
27
thocircng thường coacute hai hướng thocircng tin lagrave nhận vagrave phaacutet RTP lagravem việc chuyển caacutec goacutedữ liệu thoại cũng trecircn hai hướng
NAT Network Address Translators lagrave một trở ngại lớn trong giao thức RTPMạng sử dụng NAT lagrave một mạng chia sẻ nhiều địa chỉ IP nội bộ với một địa chỉ ICocircng cộng để kết nối với thế giới becircn ngoagravei NAT dugraveng để chia sẻ nhiều maacutey tiacutentrong mạng LAN nội bộ sử dụng được Internet nhưng cũng chiacutenh vigrave thế magrave caacutec maacutetiacutenh nội bộ gặp khoacute khăn trong việc thực hiện cuộc gọi VoIP qua Internet Đoacute chiacutenhlagrave vấn để trở ngại khi truyền thoại qua giao thức RTP
Higravenh Minh họa hoạt động của NAT
Trong Giao thức RTP như chuacuteng ta đatilde biết đoacute lagrave thoại được chuyển trecircn haiđường khaacutec nhau lagrave đường phaacutet vagrave đường thu Vấn đề NAT nằm ở chỗ tiacuten hiệthoại từ becircn ngoagravei vagraveo becircn trong qua giao thức RTP khocircng thực hiện được cograven chiềungược lại thigrave thực hiện tốt Hay noacutei caacutech khaacutec vấn đề NAT lagravem cho caacutec cuộc gọi t
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2872
Taacutec Giả Lecirc Quốc Toagraven
28
Internet đagravem thoại vagraveo caacutec maacutey nội bộ qua NAT thigrave khocircng nghe được cograven trongtrường hợp caacutec cuộc gọi từ caacutec maacutey nội bộ ra caacutec maacutey internet thigrave nghe tốt
Vấn đề NAT trecircn được giải quyết trong Asterisk bằng việc khai baacuteo thocircng số NAT=yes trong cấu higravenh kecircnh giao thức SIP
4 IAX ndash Inter Asterisk eXchange
IAX lagrave giao thức baacuteo hiệu Voip được phaacutet triển bởi taacutec giả của phần mềmAsterisk để khắc phục những hạn chế trong giao thức SIP Khocircng giống như giathức SIP chuyển tải thoại vagrave baacuteo hiệu trecircn hai kecircnh khaacutec nhau (out of band) IAXchuyển tải thoại vagrave baacuteo hiệu trecircn cugraveng một kecircnh(in band) IAX giải quyết được vấđề NAT đề cập trecircn phần giao thức SIP Mặc khaacutec IAX lagrave giao thức tối ưu trongviệc sử dụng băng thocircng cho pheacutep nhiều goacutei dữ liệu thoại trecircn cugraveng một IP headecơ chế chuyển tải nhiều cuộc gọi trecircn cugraveng một goacutei IP được gọi lagrave trung kế(Trunk)
Coacute thể giải thiacutech thecircm cơ chế trung kế như sau Giả sử Tocirci cần gửi 5 bức thtới người bạn của Tocirci Tocirci sẽ coacute hai higravenh thức để thực hiện thứ nhất lagrave mỗi bức tTocirci bỏ vagraveo một phong bigrave vậy tổng cộng tocirci phải sử dụng 5 phong bigrave để gửi đi 5 bứthư Caacutech thứ hai lagrave Tocirci bỏ 5 bức thư vagraveo 1 phong bigrave vagrave gửi đi vậy tổng cộng Tocircchỉ tốn 1 phong bigrave Qua phacircn tiacutech trecircn rotilde ragraveng việc 5 bức thư vagraveo một phong bigrave sẽtiết kiệm hơn so với 5 bức thư với 5 phong biacute Cơ chế trecircn cũng giống như nhiềcuộc gọi được đoacuteng thagravenh goacutei vagrave chuyển đi trecircn đường trung kế
Toacutem lại IAX lagrave giao thức dagravenh cho VoIP mới nhất cho đến thời điểm nagravey vớinhiều ưu điểm hấp dẫn như
+ Tối thiểu sử dụng băng thocircng
+ Trong suốt với NAT
+ Hiệu quả với cơ chế trung kế
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2972
Taacutec Giả Lecirc Quốc Toagraven
29
8 Thiết Bị VoIP
1 Voip Phone
Đacircy lagrave thiết bị phần cứng kết nối với mạng VoIP giống như maacutey điện thoại đ bagraven thocircng thường nhưng dagravenh cho VoIP cần phải thực hiện cấu higravenh trước khi sửdụng
Lưu yacute một số tiacutenh năng khi thực hiện mua thiết bị điện thoại VoIP
+ Low bandwidth hỗ trợ Codec nagraveo G729 lagrave tốt nhất hiện nay
+ Web Interface Phải coacute giao tiếp thiết lập cấu higravenh thacircn thiện dễ sử dụng
+ Audio Interface Coacute speaker phone hay khocircng
Giaacute thagravenh của điện thoại voip IP đắc hơn điện thoại thocircng thường giaacute khoảntrecircn dưới 100$ một caacutei
Higravenh Maacutey Điện Thoại VoIP
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3072
Taacutec Giả Lecirc Quốc Toagraven
30
2 Softphone
Lagrave một phần mềm được cagravei trecircn maacutey tiacutenh thực hiện tất cả caacutec chức năng giốn
như thiết bị điện thoại Voip cần lưu yacute khi sử dụng softphone lagrave maacutey tiacutenh phải ccard acircm thanh headphone vagrave firewall khocircng bị khoacutea
Sử dụng softphone với hệ thống Asterisk necircn dugraveng softphone với cocircng nghệgiao thức mới dagravenh cho Asterisk đoacute lagrave IAX
Higravenh Điện Thoại Softphone
3 Card giao tiếp với PSTN
Muốn cho pheacutep caacutec maacutey điện thoại nội bộ trong hệ thống Asterisk kết nối vthực hiện cuộc gọi với mạng PSTN chuacuteng ta cần phải coacute thiết bị phần cứng tươthiacutech Thiết bị phần cứng sử dụng cho hệ thống Asterisk do chiacutenh taacutec giả lập cocircng
Digium phacircn phối đacircy cũng chiacutenh lagrave yacute tưởng lớn trong việc phacircn phối phần mềmAsterisk lagrave hệ thống nguồn mở sử dụng miễn phiacute
Thiết bị phần cứng thường kyacute hiệu bắt đầu bằng cụm từ TDMxyB trong đoacute lagrave số lượng port FXS y lagrave số lượng port FXO giaacute trị tối đa của x vagrave y lagrave 4 viacute dụcard TDM22B coacute nghĩa lagrave coacute 2 fort FXS vagrave 2 port FXO
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3172
Taacutec Giả Lecirc Quốc Toagraven
31
Higravenh Card TDM22B gồm 4 port 2 FXS vagrave 2 FXO
4 ATA Analog Telephone Adaptors
ATA lagrave thiết bị kết nối với điện thoại Analog thocircng thường đến mạng VoIPmột thiết bị ATA gồm coacute hai loại port RJ-11 để kết nối với maacutey điện thoại analo
thocircng thường cograven RJ-45 để kết nối với mạng VoIP
ATA thực sự lagrave thiết bị FXS chuyển đổi tiacuten hiệu Analog sang tiacuten hiệu số sửdụng cho mạng VoIP để tận dụng maacutey điện thoại Analog necircn trang bị thiết bị ATAthay vigrave phải trang bị điện thoại VoIP
Thiết bị ATA sử dụng với giao thức IAX được Digium phacircn phối lagrave thiết bịATA được sử dụng rộng ratildei với Asterisk coacute tecircn gọi lagrave IAXy
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3272
Taacutec Giả Lecirc Quốc Toagraven
32
Higravenh Thiết bị ATA
9 Codecs
Thuật Toaacuten codecs(CompressorDe-compressor) lagrave một tập caacutec quy luật đượcsử dụng để chuyển đổi caacutec tiacuten hiệu thoại dạng Analog sang tiacuten hiệu số vagrave ngược lạ
Coacute nhiều thuật toaacuten codec để thực hiện chuyển đổi tiacuten hiệu analog sang tiacuten
hiệu số dạng nhị phacircn (01) như G711 GSM G729hellipỨng với mỗi thuật toaacuten coacutenhững ưu điểm riecircng đặc biệt lagrave việc tối ưu sử dụng băng thocircng trecircn đường truyềMục tiecircu cuối cugraveng lagrave caacutec thuật toaacuten đưa ra phải đảm bảo chất lượng cuộc gọi nhvagrave tiết kiệm băng thocircng nhất
G729 lagrave thuật toaacuten codec tốt nhất hiện nay trong hệ thống VoIP Với hệthống Asterisk để sử dụng thuật toaacuten nagravey cần phải mua bản quyền sử dụng vigrave đacircy
codec khocircng miễn phiacute sử dụng
10 QoS ndash Quality of Service
Caacutec yếu tố ảnh hưởng đến chất lượng của dịch vụ đối với VoIP đoacute lagrave caacuteyếu ảnh hưởng đến chất lượng tiacuten hiệu thoại
1 Độ trễ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3372
Taacutec Giả Lecirc Quốc Toagraven
33
Thoại lagrave dịch vụ mang tiacutenh thời gian thực rất cao vigrave thế trễ lagrave yếu tố ảnhhưởng rất lớn đến chất lượng dịch vụ Trễ được định nghĩa lagrave khoảng thời gian tiacute
từ luacutec tiacuten hiệu thoại đi từ miệng người noacutei tới tai người nghe Trễ lagrave yếu tố khocircnthể traacutenh khỏi độ trễ đối với mạng điện thoại truyền thống (mạng PSTN) khoảng50ms đến 70ms theo khiến nghị của ITU-T để đảm bảo chất lượng cho hệ thốVoIP thigrave độ trễ từ đầu phaacutet tới đầu thu hoặc ngược lại khocircng được vượt quaacute 150mkhi magrave độ trễ vượt quaacute 400ms đến 500ms thigrave khocircng thể chấp nhận được
Caacutec nguyecircn nhacircn gacircy ra trễ bao gồm Trễ trecircn mạng lưới trễ trecircn bộ mả hoacutea
giải matilde trễ trong quaacute trigravenh đoacuteng goacutei trễ bộ đệm trễ xử lyacute tiếng noacuteihellip2 Độ trượt(Jitter)
Nguyecircn nhacircn gacircy ra trượt lagrave goacutei tiacuten hiệu thoại trong quaacute trigravenh truyền từnguồn đến điacutech sẽ gặp phải những điều kiện khaacutec nhau trecircn mạng lưới do đoacute thườđến điacutech với những khoảng trễ khaacutec nhau Đacircy lagrave tiacutenh khocircng đồng nhất của trễ Mnguyecircn nhacircn khaacutec của trượt đối với ứng dụng PC to PC lagrave do việc sử dụng hệ điề
hagravenh phi thời gian thực caacutec goacutei tin thoại phải đợi hệ điều hagravenh xử lyacute trong nhữnkhoảng thời gian khaacutec nhau khi magrave hệ điều hagravenh đang phải xử lyacute đối với caacutec ứndụng khaacutec
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3472
Taacutec Giả Lecirc Quốc Toagraven
34
Higravenh Nguyecircn nhacircn xảy ra trượt
Để loại bỏ tiacutenh khocircng đồng nhất của trễ người ta thiết kế caacutec bộ đệm t(Jitter Buffer) tại nơi đến của caacutec goacutei tin caacutec goacutei tin đến với caacutec khoảng caacutech khaacutecnhau về thời gian được lưu tại bộ đệm rồi phaacutet khỏi bộ đệm với khoảng trễ n
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3572
Taacutec Giả Lecirc Quốc Toagraven
35
nhau Khi bộ đếm coacute kiacutech thước cagraveng lớn thigrave khả năng loại bỏ tiacutenh khocircng đồng nhấcagraveng lớn tuy nhiecircn việc sử dụng bộ đệm sẽ gacircy ra hiện tượng trễ trong ứng dụnthoại do đoacute cần coacute bagravei toaacuten cacircn đối giữa độ trễ vagrave độ trượt
Ngoagravei 2 nguyecircn nhacircn trecircn cograven một số nguyecircn nhacircn nữa ảnh hưởng đến chấtlượng thoại như độ mất goacutei giới hạn băng thocircng tiếng vọng
3 CAgraveI ĐẶT ASTERISK
1 Cagravei đặt Asterisk
1 Download vagrave bung neacuten
Để cagravei đặt Asterisk đầu tiecircn chuacuteng ta cần phải cagravei đặt hệ điều hagravenh linux trecircnmaacutey tiacutenh của migravenh Coacute thể cagravei hệ điều hagravenh Linux Fedora CentOS Redhat hoặcDebian Caacutec goacutei phần mềm phụ thuộc phải coacute trong hệ điều hagravenh Linux trước khcagravei Asterisk bao gồm
bison
gcc
kernel-source
libtermcap-devel
ncurses-devel
openssl096b
openssl-devel
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3672
Taacutec Giả Lecirc Quốc Toagraven
36
Sau khi hoagraven tất caacutec bước trecircn chuacuteng ta tiến hagravenh download phần mềmasterisk với phiecircn bản mới nhất
cd usrsrc
wgetftpftpdigiumcompubasteriskasterisk-140targz
wgetftpftpdigiumcompubasteriskasterisk-addons-140targz
wgetftpftpdigiumcompubasteriskasterisk-sounds-140targz
wgethttpftpdigiumcompubzaptelzaptel-140targz
wgethttpftpdigiumcompublibprilibpri-140targz
Việc download coacute thể nhanh hay chậm tugravey vagraveo tốc độ trecircn đường internet saukhi download hoagraven thagravenh chuacuteng ta tiến hagravenh bung neacuten caacutec goacutei ra thư mục chỉ định
tar ndashxzvf asterisk-140targz
tar ndashxzvf asterisk-addons-140targz
tar ndashxzvf asterisk-sounds-140targz
tar ndashxzvf zaptel-140targz
tar ndashxzvf libpri-140targz
Giải neacuten xong chuacuteng ta nhớ thực hiện lệnh
ln ndashs usrsrcasterisk-140 usrsrcasterisk lệnh nagravey để bảo đảm goacuteildquoaddonsrdquo được biecircn dịch đuacuteng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3772
Taacutec Giả Lecirc Quốc Toagraven
37
Bacircy giờ tới phần chuacuteng ta biecircn dịch caacutec goacutei đatilde giải neacuten ở trecircn trước tiecircn lagrave goacuteizaptel kế đến lagrave libpri sau cugraveng lagrave goacutei Asterisk
2 Cagravei đặt goacutei Zaptel
Goacutei zaptel sẽ chứa tại thư mục usrsrczaptel Đaacutenh lệnh như dưới đacircy để cagraveđặt
cd usrsrczaptel
make clean make install
Lệnh nagravey thực hiện khoảng 2 phuacutet tugravey vagraveo tốc độ maacutey tiacutenh cagravei đặt sau khicagravei đặt xong sẽ trở lại dấu nhắc lệnh vagrave hiển thị một loạt caacutec thocircng baacuteo trong đoacute một số bản tin lỗi magrave chủ yếu lagrave yecircu cầu cagravei đặt caacutec goacutei phụ thuộc đatilde liệt kecirc ở trecircnếu caacutec goacutei trecircn chưa được cagravei đặt
Goacutei zaptel nagravey chứa caacutec driver cho caacutec phần cứng kết giao tiếp với asterisk
do Digium phacircn phối vagrave một số thư viện cho việc coacute thực hiện giao tiếp với phầcứng hay khocircng
Để Asterisk coacute thể chạy cugraveng với khởi động của maacutey tiacutenh chuacuteng ta cần thựchiện lệnh
make config
Lệnh nagravey sẽ tạo ra script chegraven module zaptel vagraveo kernel vagrave chạy ztconfig vagraveoluacutec khởi động maacutey Trong Redhat script nagravey sẽ được cheacutep vagraveo etcinitd chạy ở mức 3
3 Cagravei đặt goacutei libpri
Kế đến chuacuteng ta biecircn dịch goacutei libpri tại thư mục usrsrclibpri bằng lệnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3972
Taacutec Giả Lecirc Quốc Toagraven
39
make config
3 Cagravei đặt TrixBox
1 Giới thiệu
TRIXBOX được phaacutet triển từ nhacircn của ứng dụng Asterisk được tổng hợp từmột số thagravenh phần chiacutenh được phaacutet triển bởi cộng đồng phaacutet triển nguồn mAsterisk dưới bản quyền GPL Trixbox bao gồm những thagravenh phần chiacutenh cho việcấu higravenh ứng dụng thống kecirc tigravenh trạng hoạt động hệ thống lưu trữ dự phograveng v
nhacircn lagrave hệ điều hagravenh CentOS một phiecircn bản khaacutec của Redhat tất cả kết hợp vớnhau tạo thagravenh một goacutei hoagraven chỉnh Khi cagravei goacutei nagravey vagraveo maacutey tiacutenh thigrave coacute thể sử dụngnhư một tổng đagravei PBX
Caacutec thagravenh phần chiacutenh trong goacutei TRIXBOX lagrave
Asterisk PBX Thagravenh phần chiacutenh của hệ thống Trixbox
CentOS Một phiecircn bản Linux khaacutec của Redhat hoagraven toagraven miển phiacute sửdụng Lagrave nhacircn chiacutenh cho Trixbox
SugarCRM Hệ thống quan hệ khaacutech hagraveng CRM
A2Billing ndash Lagrave thagravenh phần dagravenh cho việc xacircy dựng hệ thống điện thoạitrả trước hay cograven gọi lagrave điện thọai thẻ (Calling Card)
Flash Operator Panel Bảng điều khiển giaacutem saacutet tigravenh trạng hoạt độngcủa caacutec maacutey điện thoại trong hệ thống
Web MeetMe Control Quản lyacute triển khai hệ thống điện thoại hội nghị
FreePBX Đacircy lagrave cocircng cụ với giao diện web dagravenh cho việc cấu higravenh hệthống Asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4072
Taacutec Giả Lecirc Quốc Toagraven
40
Hệ thống Lưu trữ dự phograveng vagrave thống kecirc Lagrave thagravenh phần của TRIXBOXcung cấp caacutec cocircng cụ cần thiết cho việc bảo trigrave bảo dưỡng hệ thống
Hệ thống Apache-Php-Mysql dagravenh cho giải phaacutep Webserver của hệthống
2 DOWNLOAD VAgrave LẮP ĐẶT TRIXBOX
Địa chỉ downloadhttpsourceforgenetprojectsasteriskathome
Khi download xong file Trixboxiso Hatildey dugraveng file nagravey Burn vagraveo CD ( xinlưu yacute lagrave dugraveng Nero hoặc chương trigravenh cheacutep đĩa ưa thiacutech rồi burn vagraveo cd_romchứ khocircng phải cheacutep file đoacute vagraveo cd_rom)
Sau khi coacute CD Hatildey boot từ CD nagravey để cagravei đặt trixbox
Chuacute yacute dữ liệu trecircn đĩa cứng sẽ bị xoacutea sạch để cagravei đặt trixbox Nếu trongđĩa cứng cograven dữ liệu hatildey backup tất cả trước khi tiến hagravenh lắp đặt trixbox
Tới đacircy lần lượt caacutec magraven higravenh chỉ dẫn sẽ hiện ra vagrave cứ theo hướng dẫn magrave cagraveđặt Sau khi cagravei đặt xong chuacuteng ta dugraveng Username root vagrave password password đểđăng nhập hệ thống
3 Cấu higravenh địa chỉ IP cho card mạng
Thiết lập địa chỉ IP bằng caacutech gotilde lệnh
netconfig
Chọn OK để thiếp lập
Nếu trong mạng coacute hỗ trợ DHCP thigrave hatildey chọn mục nagravey cograven nếu khocircng hatildeynhập địa chỉ IP tĩnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4172
Taacutec Giả Lecirc Quốc Toagraven
41
IP 19216801
Netmask 2552552550
Gateway 19216893254 ngotilde ra becircn ngoagravei
Primary nameserver 19216893200 thiết lập nếu coacute
Chọn OK để chấp nhận caacutec thiết lập trecircn
Sau khi hoagraven tất hatildey lagravem cho thiết lập coacute hiệu lực bằng caacutech reset lại
maacutey tiacutenh hoặc dugraveng lệnh sau
Service network stop
Service network start
Đến đacircy xem như cagravei đặt hoagraven tất bacircy giờ để cấu higravenh được Asterisk chuacutengta vagraveo một magravey khaacutec vagrave mở Internet Explorer hoặc một trigravenh duyệt web bất kỳ
nhập vagraveohttp19216801đatilde cấu higravenh ở trecircn vagrave tiến hagravenh cấu higravenh hệ thốngvới tagravei khoảng username maint vagrave password password
4 Tổ Chức Thư Mục của Asterisk
Asterisk sử dụng nhiều thư mục trecircn hệ thống linux để quản lyacute caacutec khiacutea cạnkhaacutec nhau của hệ thống như nghi nhận bản tin thoại caacutec bản tin nhắc thoại hoặcaacutec tập tin cấu higravenh Phần nagravey sẽ trigravenh bagravey caacutec thư mục chiacutenh yếu được tạo ra tronquaacute trigravenh lắp đặt vagrave được cấu higravenh trong tập tin Asteriskconf
1 etcasterisk
Thư mục etcasterisk chứa tất cả caacutec tập tin cấu higravenh của hệ thốngAsterisk ngoại trừ tập tin Zaptelconf được đặt tại thư mục etc Phần cứnZaptel đầu tiecircn được phaacutet triển bởi Jim Dixon thuộc nhoacutem Zapata Telephony
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4272
Taacutec Giả Lecirc Quốc Toagraven
42
Group để giao tiếp giữa maacutey tiacutenh với mạng điện thoại magrave Asterisk lại sửdụng phần cứng nagravey với lyacute do đoacute magrave file cấu higravenh zaptelconf khocircng nằmtrong thư mục etcasterisk
2 usrlibasteriskmodules
Thư mục usrlibasteriskmodules chứa tất cả caacutec module cần thiết đểasterisk hoạt động Becircn trong thư mục lagrave caacutec ứng dụng khaacutec nhau caacutec codeccaacutec định dạng acircm thanh(format) vagrave caacutec kecircnh thocircng tin(channel) Theo mặc địnhAsterisk sẽ nạp tất cả caacutec module vagraveo luacutec khởi động Chuacuteng ta coacute thể khocircng cho
nạp một module bất kỳ bằng caacutech khocircng khai baacuteo sử dụng trong tập tinmodulesconf Lưu yacute khi khocircng cho nạp module thigrave phải biết chắc module đoacutekhocircng lagravem ảnh hưởng hoạt động của asterisk nếu khocircng lỗi sẽ xuất hiện
3 varlibasterisk
Thư mục varlibasterisk chứa tập tin astdb vagrave một số thư mục con Tập tinastdb định vị thocircng tin cơ sở dữ liệu của Asterisk giống như Microsoft WindowsRegistry
Caacutec thư mục con của thư mục varlibasterisk bao gồm
agi-bin
Thư mục agi-bin chứa caacutec script của người dugraveng magrave Asterisk coacute thểđịnh vị sử dụng qua caacutec ứng dụng AGI
AGI lagrave phần giao tiếp với ngocircn ngữ lập trigravenh script để thực hiện mộtsố cocircng việc của Asterisk từ becircn ngoagravei
firmware
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4372
Taacutec Giả Lecirc Quốc Toagraven
43
Thư mục firmware chứa một số phần dẻo(firmware) cho caacutec thiết bịkhaacutec nhau tương thiacutech với Asterisk Hiện tại chỉ coacute thư mục con iax chứa
firmware cho thiếy bị IAXy của Digium IAXy lagrave thiết bị ATA sử dụng giaothức IAX
images
Caacutec ứng dụng thocircng tin với caacutec kecircnh hỗ trợ ảnh images thigrave sử dụng thư mụcnagravey Nhưng hiện tại caacutec kecircnh thocircng tin hầu như khocircng hỗ trợ truyền ảnh images necircthư mục nagravey cũng hiếm khi được sử dụng Tuy nhiecircn nếu caacutec thiết bị coacute hỗ trợ ththư mục nagravey trở necircn hiệu dụng
keys
Asterisk coacute thể sử dụng hệ thống khoaacute publicprivate để xaacutec minh caacutec kết nốgiữa caacutec server Asterisk thocircng qua chữ kyacute điện tử RSA Nếu đặt một khoaacute publicvagraveo thư mục keys thigrave kết nối của server đầu becircn kia coacute thể được xaacutec minh bằn
kecircnh thocircng tin coacute hỗ trợ đối với Asterisk thigrave kecircnh giao thức IAX hỗ trợ loại xaacutecminh nagravey Một khoaacute private khocircng bao giờ cocircng bố chuacuteng ta chỉ cocircng bố khoaacute public đến với server cần nối đến sau đoacute sẽ được xaacutec minh với khoaacute private nagravey Chai khoaacute public vagrave private được lưu với đuocirci pub vagrave key đặt tại thư mục keys
mohmp3
Khi cấu higravenh Asterisk sử dụng tiacutenh năng Music on Hold tiacutenh năng hoạt độngsẽ thực hiện lấy caacutec tập tin mp3 tại thư mục mohmp3 Tập tin định dạng theo chucủa Asterisk necircn khi sử dụng caacutec file Mp3 thocircng thường cần coacute sự chuyển đổi thiacutechợp trước khi cheacutep vagraveo thư mục trecircn để sử dụng
sounds
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4472
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4572
Taacutec Giả Lecirc Quốc Toagraven
45
Thư mục tmp sử dụng để lưu trữ những thocircng tin tạm để luocircn bảo đảm khocircnxảy ra tigravenh trạng đọc vagrave viết tập tin cugraveng một luacutec Khi yecircu cầu xử lyacute tập tin chuacuteng thao taacutec trecircn thư mục tmp trước khi lưu vagraveo tập tin điacutech
Tất cả caacutec lời nhắc thoại từ phiacutea người sử dụng vagrave caacutec lời nhắc thoại sử dụ
cho thao taacutec hộp voicemail đều được chứa trong thư mục voicemail Một hộp thưthoại được tạo ra ứng với một maacutey nội bộ trong tập tin voicemailconf sẽ được tra một thư mục con tương ứng cho maacutey nội bộ đoacute tại thư mục voicemail
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4672
Taacutec Giả Lecirc Quốc Toagraven
46
5 varrun
Thư mục varrun chứa thocircng tin process ID(pid) cho tất cả caacutec tiến trigravenh đang
hoạt động trong hệ thống bao gồm cả Asterisk Lưu yacute lagrave ứng với mỗi hệ điều hagravethư mục varrun coacute thể khaacutec
6 varlogasterisk
Thư mục varlogasterisk lagrave nơi Asterisk chứa tất cả caacutec tập tin nhật kyacute haycograven gọi lagrave tập tin log Chuacuteng ta coacute thể tuỳ biến caacutec loại thocircng tin được lưu trong caacutec
tập tin log khaacutec nhau qua tập tin cấu higravenh loggerconf đặt tại thư mục etcasterisk7 varlogasteriskcdr-csv
Thư mục varlogasteriskcdr-csv được sử dụng để lưu chi tiết cuộc gọi CDRThocircng tin mặc định về chi tiết thocircng tin cuộc gọi lưu trữ trong tập tin MasterCVSnhưng thường thigrave ứng với mỗi matilde accountcode sẽ tạo một thư mục riecircng để lưu ctiết cuộc gọi cho maacutey đoacute
5 Một số lệnh thao taacutec trecircn hệ thống asterisk
Asterisk coacute hai thagravenh phần được xacircy dụng tiacutech hợp với nhau vagrave chạy songsong nhau
Asterisk Server bigravenh thường chạy ở chế độ nền(background) giống caacutec sevicestrong window
Asterisk Client ở chế độ dograveng lệnh CLI giao tiếp với Asterisk Server thực thicaacutec lệnh để kiểm tra hay xem caacutec thocircng tin của server
Để Chạy vagrave dừng Asterisk ở chế độ nền chuacuteng ta thực hiện lệnh sau
etcinitdasterisk (start|stop)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4772
Taacutec Giả Lecirc Quốc Toagraven
47
Một khi Asterisk đatilde chạy chuacuteng ta coacute thể chuyển qua chế độ CLI từ dấu nhắlệnh của linux như sau
asterisk ndashr
Khi vagraveo chế độ lệnh nếu muốn thoaacutet về lại dấu nhắc linux chuacuteng ta dugraveng lệnh
CLIgtexit
Caacutec lệnh cơ bản thực hiện tại CLIgt
Bất cứ khi nagraveo chỉnh sửa caacutec tập tin cấu higravenh chuacuteng ta đều cần phải nạp lại đcaacutec thay đổi coacute hiệu lực điều đoacute thực hiện bằng lệnh
CLIgtreload
Bậc chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 debug
CLIgt SIP debug
Tắt chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 no debug
CLIgt SIP no debug
Hiển thị caacutec trạng thaacutei thocircng tin của users peers vagravechannels của SIP hoặc IAX2
CLIgt sip show users
CLIgt sip show peers
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4872
Taacutec Giả Lecirc Quốc Toagraven
48
CLIgt sip show channels
CLIgt iax2 show peers
CLIgt iax2 show users
CLIgt iax2 show channels
Đến thời điểm nagravey coacute thể noacutei chuacuteng ta đatilde hoagraven thagravenh cagravei đặt hệ thốngAsterisk cagravei đặt xong mới lagrave bước mở đầu để cho hệ thống Asterisk hoạt động vtừng ứng dụng cụ thể chuacuteng sẽ tiếp tục thực hiện caacutec giai đoạn được xem lagrave qutrọng nhất trong việc triển khai hệ thống Asterisk đoacute lagrave giai đoạn cấu higravenh hệ thốnlecircn kế hoạch Diaplan chương cograven lại đều nhắm đến mục tiecircu nagravey
4 CẤU HIgraveNH HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Sau khi hoagraven tất phần cagravei đặt hệ thống asterisk một bước quan trọng tiếp thelagrave cấu higravenh hệ thống coacute thể noacutei đacircy lagrave bước quan trọng nhất của việc khiển khai thống đến với từng ứng dụng cụ thể Trong chương nagravey xin giới thiệu caacutei nhigraven đầtiecircn về việc cấu higravenh trước khi đi sacircu hơn ở những chương sau những gigrave giới thiệ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4972
Taacutec Giả Lecirc Quốc Toagraven
49
trong chương nagravey lagrave nền moacuteng cơ bản nhưng đủ để hiểu lagravem thế nagraveo hệ thống coacute thoạt động được nội dung chiacutenh bao gồm
+ Thao taacutec cấu higravenh trecircn hệ thống tập tin của asterisk
+ Caacutech cagravei đặt phần mềm softphone trecircn cocircng nghệ sip
+ Cấu higravenh cho hai maacutey softphone liecircn lạc với nhau
+ Cấu higravenh phaacutet thocircng điệp
+ Quay số qua Sip vagrave mạng PSTN
2 Tập Tin cấu higravenh
Tất cả caacutec file cấu higravenh cho hệ thống asterisk đều nằm tại thư mục etcasterisngoại trừ file zaptelconf cấu higravenh cho phần cứng TDM nằm tại thư mục etc caacutecthức cấu higravenh giống như tập tin ini của window vậy Caacutec nội dung sau dấu chấm phảy lagrave nội dung chuacute thiacutech trong file cấu higravenh giống như chuacute thiacutech trong ngocircn ngữ
lập trigravenh C lagrave dấu Tất cả caacutec khoảng trắng trong tập tin đều được bỏ qua khocircng yacute nghĩa trong file cấu higravenh
Trong file cấu higravenh cograven coacute hai pheacutep gaacuten rất thường xuyecircn được sử dụng pheacutep gaacuten ldquo=rdquo lagrave dugraveng cho việc gaacuten caacutec biến cograven pheacutep gaacuten ldquo=gtrdquo dugraveng cho việc gaacutencaacutec đối tượng sau đacircy lagrave một viacute dụ cho file cấu higravenh
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5072
Taacutec Giả Lecirc Quốc Toagraven
50
Đacircy lagrave caacutec dograveng chuacute thiacutech
[section]
Key=value gaacuten giaacute trị cho biến
[section2]
Key=gtobject Gaacuten giaacute trị cho đối tượng
Cuacute phaacutep thực hiện giống nhau cho tất cả caacutec file cấu higravenh nhưng coacute vagravei kiểukhaacutec nhau cho mỗi file cầu higravenh dựa vagraveo thức caacutech hoạt động của chuacuteng
3 Caacutec kiểu ảnh hưởng trong tập cấu higravenh
Coacute ba kiểu caacutech thức hoạt động của tập tin cấu higravenh như sau
Kiểu Caacutech hoạt động File cầu higravenh Viacute dụ
S i m p l eGroup
Coacute hiệu lực trecircntừng dograveng trongfile
Extensionconf
Exten=gt4001dial(sip400)
O p t i o ninheritance
Dograveng khai baacuteosau thừa kếnhững thocircng sốkhai baacuteo trước
Zapataconf [channels]
Context=From_PSTN
Signalling=fxs_ks
Group=1Channel=gt1
C o m p l e xEntity
Mỗi entity nhậnmột ngữ cảnh
sipconf
iaxconf
[cisco]
Type=friend
Secret=12345
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5172
Taacutec Giả Lecirc Quốc Toagraven
51
Host=192168165
Context=NoiBo
[xten]
Type=friend
Secret=6789
Host=dynamic
Context=NoiBo
1 Simple Group
Đacircy lagrave kiểu cấu higravenh đơn giản nhất thường sử dụng trong caacutec fileextentionconf meetmeconf voicemailconf tương ứng với mỗi dograveng khai baacuteo lagravemột đối tượng coacute yacute nghĩa trecircn dograveng đoacute
Viacute dụ
Extentionconf [section]
object1=gt op1op2op3
object2=gt op1bop2bop3b
Trong viacute dụ trecircn mỗi dograveng tương ứng với caacutec toaacuten tử khaacutec nhau object1 coacute caacutectoaacuten từ op1 op2 op3 trong khi đoacute object2 lại coacute caacutec toaacuten từ op1b op2b op3b
2 Option inheritance
Đacircy lagrave cấu higravenh kiểu thừa kế thường được cấu higravenh trong caacutec file zapataconfagentconf với kiểu cấu higravenh nagravey thigrave caacutec dograveng phiacutea dưới coacute thể thừa kế caacutec thocircng sdograveng phiacutea trecircn tương ứng với mỗi section caacutec dograveng phiacutea dưới coacute thể thay đổi caacutecthocircng số cho tươngứng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5272
Taacutec Giả Lecirc Quốc Toagraven
52
Viacute dụ
Extentionconf
[section]
Op1=bas
Op2=adv
Object1=gt1
Op1=int
Object1=gt2
Với cấu higravenh trecircn coacute thể giải thiacutech như sau object1=gt1 thừa hưởng hai thocircngsố ở phiacutea trecircn đoacute lagrave op1=bas vagrave op2=adv trong khi đoacute đối với object1=gt2 với thocircngsố op1=int được khai baacuteo lại necircn object1=gt2 được thừa kế từ hai thocircng số op1=invagrave op2=adv
3 Complex Entity
Với cấu kiểu nagravey được tổ chức thagravenh nhiều entity ứng với mỗi entity coacute nhiềthocircng số được khai baacuteo mỗi entity ở đacircy chiacutenh lagrave caacutec section để khai baacuteo caacutec kecircnhthocircng tin Cấu higravenh thường được sử dụng trong caacutec file iaxconf sipconf
Viacute dụ
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5372
Taacutec Giả Lecirc Quốc Toagraven
53
[entity1]
Op1=value1
Op2=value2
[entity2]
Op1=value3
Op2=value4
Entity1 coacute caacutec giaacute trị value1 vagrave value2 cho thocircng số op1 vagrave op2 trong khi đoacute
cũng lagrave thocircng số op1 vagrave op 2 nhưng coacute caacutec giaacute trị khaacutec lagrave value3 vagrave value4 choentity2
4 Cấu higravenh giao tiếp với mạng PSTN
1 Ngữ cảnh kết nối
Để kết nối với mạng PSTN chuacuteng ta cần phải coacute một card TDM với Cổng
FXO vagrave một đường dacircy điện thoại hoặc coacute thể lagrave một tổng đagravei nội bộ PBX Cnhiều nhagrave sản xuất phần cứng khaacutec nhau nhưng trong phần cấu higravenh dưới dacircy lagrave cấhigravenh cho card zapata TDM01B của digium (card nagravey hiện nay giaacute baacuten khoảng175$)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1672
Taacutec Giả Lecirc Quốc Toagraven
16
thống PBX đang tồn tại qua luồng E1 Ngoagravei ra để tăng khả năng liecircn lạc với mạnPSTN vagrave VOIP khaacutec Cocircng Ty coacute thể thực hiện kết nối với nhagrave cung cấp dịch vụvoip
3 Kết nối giữa caacutec server Asterisk
Kết nối giữa caacutec server asterisk
Phương phaacutep trecircn ứng dụng rất hiệu quả cho caacutec cocircng ty nằm ratildei raacutec ở caacutec vtrị địa lyacute khaacutec nhau nhằm giảm chi phiacute đường dagravei Viacute dụ Cocircng ty Mẹ coacute trụ sở đặtại nước Mỹ vagrave caacutec Chi nhaacutenh đặt tại Việt Nam với caacutec địa điểm Thagravenh phố Hồ ChMinh vagrave Hagrave Nội Thocircng qua mạng WAN của Cocircng Ty caacutec cuộc gọi nội bộ giữa caacutec
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1772
Taacutec Giả Lecirc Quốc Toagraven
17
vị triacute khaacutec nhau sẽ lagravem giảm chi phiacute đaacuteng kể Ngữ cảnh nagravey về mặt phaacutep luật khocircncho cuộc gọi từ Mỹ vagraveo Việt Nam
4 Caacutec ứ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 caacutec server kết nối với hệ thống PSTN hay tổng đagravei PBXđể triển khai caacutec ứng dụng như tương taacutec thoại IVR Một viacute dụ cho ứng dụng tươtaacutec thoại đoacute lagrave cho biết kết quả sổ số hay kiểm tra cước cuộc gọi giống dịch v19001260 vậy Ứng dụng VoiceMail thu nhận những tin nhắn thoại từ phiacutea thuecirc bao giống như chức năng hộp thư thoại của Bưu Điện Thagravenh phố triển khai Cograve
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1872
Taacutec Giả Lecirc Quốc Toagraven
18
chức năng điện thoại hội nghị thiết lập cho nhiều maacutey điện thoại cugraveng noacutei chuyệvới nhau
5 Chức năng Phacircn phối cuộc gọi tự động ACD
Phacircn phối cuộc gọi với hagraveng đợi
ACD(Automatic Call Distribution) Phacircn phối cuộc gọi tự động
Đacircy lagrave chức năng ứng dụng cho nhu cầu chăm soacutec khaacutech hagraveng hay nhận phảnhổi từ phiacutea khaacutech hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1972
Taacutec Giả Lecirc Quốc Toagraven
19
Cocircng ty coacute khả năng tiếp nhận cugraveng một luacutec 10 cuộc gọi như thế cuộc gọi th11 gọi đến thigrave hệ thống giải quyết như thế nagraveo Bigravenh thường thigrave sẽ nghe tiacuten hiệ
bận nhưng với chức năng phacircn phối cuộc gọi sẽ đưa thuecirc bao đoacute vagraveo hagraveng đợi đchờ trả lời trong khi chờ trả lời cuộc gọi thuecirc bao coacute thể nghe những bagravei haacutet hay dasterisk cung cấp trong luacutec nagravey nếu 1 trong mười số điện thoại trở về trạng thaacutei rthigrave cuộc gọi đang chờ sẽ được trả lời Giống như chức năng của dịch vụ 1080 ha116 của Bưu Điện Thagravenh Phố vậy
2 CAacuteC KHAacuteI NIỆM TRONG HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Trong chương nagravey sẽ giải thiacutech rotilde caacutec khaacutei niệm cơ bản liecircn quan đến hệ thốnasterisk cung cấp những kiến thức nền tảng những khaacutei niệm cần thiết để thiếttriển khai xacircy dựng hệ thống điện thoại với Asterisk
2 PBX - Private Branch Exchange
PBX hay cograven gọi lagrave PABX - Private Automatic Branch Exchange lagrave hệ thốngtổng đagravei nội bộ được đặt tại nhagrave thuecirc bao từ Automatic ở đacircy muốn noacutei đến lagrave hthống tổng đagravei điện tử tự động nhưng hiện nay đa số lagrave tổng đagravei PBX điện tử tđộng necircn từ trecircn thực sự khocircng cograven cần thiết nữa
PBX với mục tiecircu chia sẻ nhiều thuecirc bao nội bộ gọi ra thế giới becircn ngoagraveithocircng qua một vagravei đường trung kế hay noacutei một caacutech khaacutec PBX lagrave hệ thống trungchuyển giữa caacutec đường dacircy điện thoại becircn ngoagravei từ cocircng ty điện thoại vagrave maacutey điệthoại nội bộ trong tổng đagravei PBX Vigrave thế necircn số lượng maacutey điện thoại nội bộ luocircnhiều hơn số đường dacircy nối đến PBX từ becircn ngoagravei
wwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2072
Taacutec Giả Lecirc Quốc Toagraven
20
PBX thực hiện chuyển mạch cuộc gọi caacutec maacutey điện thoại nội bộ với nhau vvới caacutec maacutey điện thoại becircn ngoagravei thocircng qua đường trung kế Đồng thời thực hiệ
chuyển mạch caacutec cuộc gọi điện thoại từ becircn ngoagravei vagraveo caacutec maacutey điện thoại nội bộNgoagravei việc chuyển mạch cuộc gọi PBX cung cấp nhiều tiacutenh năng sử dụng
cho nhiều mục điacutech khaacutec nhau của khaacutech hagraveng magrave bản thacircn caacutec đường dacircy điệnthoại từ cocircng ty điện thoại kết nối đến khocircng thể thực hiện được caacutec tiacutenh năng ntương taacutec thoại(IVR) Voicemail phacircn phối cuộc gọi tự động(ADC)hellip
Hiện nay với việc phaacutet triển mạnh mẽ của cocircng nghệ VoIP chuacuteng ta cograven coacutethecircm thuật ngữ IP PBX Đacircy lagrave hệ thống chuyển mạch PBX với cocircng nghệ Voip
3 VOIP - Voice Over Internet Protocol
Voice over Internet Protocol (VoIP) lagrave một cocircng nghệ cho pheacutep truyền thoạisử dụng giao thức mạng IP trecircn cơ sở hạ tầng sẵn coacute của mạng internet Voip lagrave mtrong những cocircng nghệ viễn thocircng đang được quan tacircm nhất hiện nay khocircng chỉ đố
với nhagrave khai thaacutec caacutec nhagrave sản xuất magrave cograven cả với người sử dụng dịch vụVoip coacute thể vừa thực hiện mọi loại cuộc gọi như trecircn mạng điện thoại kecircn
truyền thống (PSTN) đồng thời truyền dữ liệu trecircn cơ sở mạng truyền dữ liệu Dcaacutec ưu điểm về giaacute thagravenh dịch vụ vagrave sự tiacutech hợp nhiều loại higravenh dịch vụ necircn voihiện nay được triển khai một caacutec rộng ratildei
Dịch vụ điện thoại voip lagrave dịch vụ ứng dụng giao thức IP nguyecircn tắc củaVoIP bao gồm việc số hoaacute tiacuten hiệu tiếng noacutei thực hiện việc neacuten tiacuten hiệu số chia nhcaacutec goacutei nếu cần vagrave truyền goacutei tin nagravey qua mạng tới nơi nhận caacutec goacutei tin nagravey đượraacutep lại theo đuacuteng thứ tự của bản tin giải matilde tiacuten hiệu tương tự phục hồi lại tiếng n ban đầu
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2172
Taacutec Giả Lecirc Quốc Toagraven
21
Caacutec cuộc gọi trong VoIP dựa trecircn cơ sở sử dụng kết hợp cả chuyển mạchkecircnh vagrave chuyển mạch goacutei Trong mỗi loại chuyển mạch đều coacute ưu nhược điể
riecircng của noacute Trong kỹ thuật chuyển mạch kecircnh giagravenh riecircng cho một kecircnh truyềngiữa hai thiết bị đầu cuối thocircng qua caacutec node chuyển mạch trung gian Trongchuyển mạch kecircnh tốc độ truyền dẫn luocircn luocircn cố định(nghĩa lagrave băng thocircng khocircnđổi) với mạng điện thoại PSTN tốc độ nagravey lagrave 64kbps truyền dẫn trong chuyểmạch kecircnh coacute độ trễ nhỏ
Trong chuyển mạch goacutei caacutec bản tin được chia thagravenh caacutec goacutei nhỏ gọi lagrave caacutec
goacutei nguyecircn tắc hoạt động của noacute lagrave sử dụng hệ thống lưu trữ vagrave chuyển tiếp caacutec gtin trong nuacutet mạng Đối với chuyển mạch goacutei khocircng tồn tại khaacutei niệm kecircnh riecircng băng thocircng khocircng cố định coacute nghĩa lagrave coacute thể thay đổi tốc độ truyền kỹ thuật chuyểmạch goacutei phải chịu độ trễ lớn vigrave trong chuyển mạch goacutei khocircng quy định thời giancho mỗi goacutei dữ liệu tới điacutech mỗi goacutei coacute thể đi bằng nhiều con đường khaacutec nhau đtới điacutech chuyển mạch goacutei thiacutech hợp cho việc truyền dữ liệu vigrave trong mạng truyền dliệu khocircng đogravei hỏi về thời gian thực như thoại để sử dụng ưu điểm của mỗi lo
chuyển mạch trecircn thigrave trong voip kết hợp sử dụng cả hai loại chuyển mạch kecircnh vchuyển mạch goacutei
4 PSTN ndash Public Switched Telephone Network
PSTN lagrave mạng chuyển mạch điện thoại cocircng cộng hay noacutei caacutech khaacutec lagrave mạngkết nối tất cả caacutec hệ thống tổng đagravei chuyển mạch-mạch
Để hiểu rotilde hơn hatildey xem xeacutet mạng PSTN với mạng Internet về khiacutea cạnhchuyển thoại trecircn đoacute Chuyển mạch mạch muốn thực hiện cuộc gọi giữa hai thu bao thigrave hệ thống phải giagravenh riecircng một kecircnh truyền 64kbps để chuyển tải tiacuten hiệthoại trecircn đoacute Cograven cuộc gọi điện thoại trecircn mạng Internet thigrave tiacuten hiệu thoại đượđoacuteng goacutei vagrave chuyển đi trecircn cugraveng kecircnh truyền với nhiều dịch vụ khaacutec Vigrave lẽ đoacute chấlượng cuộc gọi trecircn mạng PSTN bao giờ cũng tốt hơn trecircn mạng Internet nhưng đổ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2272
Taacutec Giả Lecirc Quốc Toagraven
22
lại chi phiacute lại đắc hơn rất nhiều đặc biệt lagrave caacutec cuộc gọi quốc tế necircn phải cần nhắc kỹ khi sử dụng
PSTN được phaacutet triển trecircn chuẩn ITU(International TelecommunicationUnion) cograven mạng Internet được phaacutet triển trecircn chuẩn IETF(Internet EngineeringTask Force) cả hai mạng trecircn đều sử dụng địa chỉ để định tuyến cuộc gọi PSTN sdụng caacutec con số điện thoại để chuyển mạch cuộc gọi giữa caacutec tổng đagravei điện thotrong khi đoacute trecircn mạng Internet địa chỉ IP sẽ được sử dụng để định tuyến caacutec goacutethoại
5 TDM ndash Time Division Multiplexing
Lagrave kỹ thuật gheacutep kecircnh phacircn chia thời gian nhiều tiacuten hiệu coacute thể truyền đồngthời trecircn một đường truyền TDM được sử dụng chuyển thoại trong hệ thống mạPSTN Coacute hai chuẩn gheacutep kecircnh TDM cơ bản lagrave E1 với 30 kecircnh thoại trecircn mộtkhung tốc độ 2Mbps vagrave T1 với 24 kecircnh thoại tốc độ 15Mbps
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2372
Taacutec Giả Lecirc Quốc Toagraven
23
Higravenh Minh họa gheacutep kecircnh phacircn chia theo thời gian
6 Caacutec higravenh thức baacuteo hiệu giao tiếp TDM
1 FXO vagrave FXS
FXO (Foreign Exchange Office) lagrave thiết bị nhận tiacuten hiệu từ tổng đagravei gửi đếnnhư dograveng chuocircng tiacuten hiệu nhấc gaacutec maacutey tiacuten hiệu mời quay số gửi vagrave nhận tiacuten hiệthoạihellip FXO giống như maacutey Fax hay modem dial-up 56k vậy Dugraveng để kết nối vớ
đường dacircy điện thoại
FXS (Foreign Exchange Station) lagrave thiết bị tại nơi cung cấp đường dacircy điệnthoại thiết bị FXS sẽ cung cấp tiacuten hiệu mời quay số(dialtone) dograveng chuocircng hồi acircmchuocircng(ring tone) Trong đường dacircy Analog FXS cung cấp dograveng chuocircng vagrave điện aacutepcho điện thoại hoạt động viacute dụ FXS cung cấp điện aacutep -48VDC đến maacutey điện tho
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2472
Taacutec Giả Lecirc Quốc Toagraven
24
Analog trong suốt thời gian đagravem thoại vagrave cung cấp 90VAC(20hz) để phaacutet điện aacuteprung chuocircng Thiết bị FXS phaacutet cograven thiết bị FXO nhận
Card TDM sử dụng trong hệ thống asterisk thường tiacutech hợp vừa thiết bị FXOvừa lagrave thiết bị FXS(Giống bộ ATA) FXO để kết nối với đường dacircy điện thoại cograveFXS dugraveng để kết nối với maacutey điện thoại analog thocircng thường dugraveng để chuyển mạcuộc gọi TDM qua hệ thống asterisk(Xem thecircm trong phần cấu higravenh cho kecircnhTDM)
Toacutem lại cần nắm
FXS được kết nối với FXO giống với đường dacircy điện thoại nối với maacuteyđiện thoại
FXS cung cấp nguồn cho điện thoại FXO(điện thoại Analog)
Higravenh a) Maacutey điện thoại vai trograve FXO kết nối với FXS(PSTN) Higravenh b) PBXkết nối với FXO vagrave FXS Higravenh c) ATA đoacuteng vai trograve như FXS để kết nối với maacuteyđiện thoại vai trograve FXO
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2572
Taacutec Giả Lecirc Quốc Toagraven
25
2 Baacuteo hiệu Analog giữa đầu cuối vagrave tổng đagravei
Khi chuacuteng ta nhấc mấy điện thoại để gọi thigrave nghe tiacuten hiệu mời quay số kh
cuộc gọi gọi đầu becircn kia bị bận thigrave chuacuteng ta nghe tiacuten hiệu bận(busy tone) caacutec loạtiacuten hiệu như vậy gọi lagrave caacutec tiacuten hiệu baacuteo hiệu analog Caacutec tiacuten hiệu như Mời quay sốtiacuten hiệu bận rung chuocircng trạng thaacutei nhấc gaacutec maacutey Caacutec loại tiacuten hiệu trecircn được trađổi giữa thiết bị FXO vagrave FXS
Coacute nhiều phương thức baacuteo hiệu khaacutec nhau ứng với từng nơi sử dụng vigrave thếtại nơi kết nối với đường dacircy điện thoại cần xem xeacutet họ đang sử dụng phương th
baacuteo hiệu gigrave từ đoacute chuacuteng ta khai thaacutec loại tiacuten hiệu baacuteo hiệu cho thiacutech hợp caacutec phương thức baacuteo hiệu như Loop Start Ground Start Một minh họa cho việc sửdụng sai phương thức baacuteo hiệu lagrave khi chuacuteng ta khai baacuteo phương thức baacuteo hiệu giữhệ thống Asterisk vagrave đường dacircy điện thoại khaacutec nhau thigrave dẫn đến Asterisk sẽ khocircnnhận biết được tiacuten hiệu gaacutec maacutey điều nagravey sẽ lagravem cho asterisk khocircng baacuteo giờ giải tỏđược cuộc gọi để thực hiện cuộc gọi mới
3 Baacuteo hiệu giữa caacutec tổng đagravei
SS7 hệ thống baacuteo hiệu số 7 được phaacutet triển bởi ATampT vagrave ITU lagrave hệ thống baacuteo hiệu chuyển caacutec cuộc gọi giữa caacutec tổng đagravei trong mạng PSTN Trong hệ thốn baacuteo hiệu số 7 tiacuten hiệu chuyển tải trecircn đường trung kế kết nối giữa hai tổng đagravei gồcoacute hai mạch riecircng một cho thoại vagrave một cho baacuteo hiệu như vậy thoại vagrave baacuteo hiệu cthể chuyển trecircn hai kecircnh vật lyacute khaacutec nhau
7 Baacuteo Hiệu trecircn mạng điện thoại VoIP
1 SIP Session Initiation Prorocol
Sip lagrave giao thức Internet dagravenh cho baacuteo hiệu VoIP được phaacutet triển bởi IETFcung cấp vagravei chức năng giống hệ thống baacuteo hiệu số 7 nhưng dựa trecircn nền IP Mộchức năng giống baacuteo hiệu số 7 đoacute lagrave baacuteo hiệu vagrave thoại chuyển tải trecircn hai kecircnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2672
Taacutec Giả Lecirc Quốc Toagraven
26
riecircng Giao thức SIP thực hiện chức năng thiết lập vagrave baacuteo hiệu cuộc gọi khi noacutei đế baacuteo hiệu cuộc gọi lagrave chỉ định caacutec tiacuten hiệu baacuteo hiệu như tiacuten hiệu mời quay số tiacutehiệu bậnhellip
2 Proxy server
Mặc dầu hai thiết bị SIP coacute thể liecircn lạc trực tiếp với nhau để khởi tạo cuộgọi nhưng trong giao thức SIP cograven coacute chức năng Proxy để linh hoạt hơn trong thiếlập cuộc gọi Proxy Server sẽ lagravem nhiệm vụ ghi nhận tất cả caacutec số điện thoại đư phiacutea client đăng kyacute đến qua bản tin ldquoRegistrationrdquo Khi một client khaacutec thực hiện
cuộc gọi thigrave thực sự Client đoacute khocircng biết số điện thoại cần gọi đang ở đacircu necircn thocircnqua Proxy server để tigravem kiếm thiết lập cuộc gọi
+
Higravenh Đăng kyacute từ Client đến SIP Proxy Với Giao thức SIP đường baacuteo hiệu vagravethoại riecircng
3 RTP vaacute NAT
Caacutec cuộc gọi trecircn Internet với giao thức SIP được chia thagravenh caacutec goacutei thoại vagraveđược chuyển qua giao thức RTP(Real Time Protocol) RTP lagrave giao thức khocircng chỉthực hiện chuyển caacutec goacutei thoại qua Internet magrave cograven coacute cả video nữa Một cuộc gọ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2772
Taacutec Giả Lecirc Quốc Toagraven
27
thocircng thường coacute hai hướng thocircng tin lagrave nhận vagrave phaacutet RTP lagravem việc chuyển caacutec goacutedữ liệu thoại cũng trecircn hai hướng
NAT Network Address Translators lagrave một trở ngại lớn trong giao thức RTPMạng sử dụng NAT lagrave một mạng chia sẻ nhiều địa chỉ IP nội bộ với một địa chỉ ICocircng cộng để kết nối với thế giới becircn ngoagravei NAT dugraveng để chia sẻ nhiều maacutey tiacutentrong mạng LAN nội bộ sử dụng được Internet nhưng cũng chiacutenh vigrave thế magrave caacutec maacutetiacutenh nội bộ gặp khoacute khăn trong việc thực hiện cuộc gọi VoIP qua Internet Đoacute chiacutenhlagrave vấn để trở ngại khi truyền thoại qua giao thức RTP
Higravenh Minh họa hoạt động của NAT
Trong Giao thức RTP như chuacuteng ta đatilde biết đoacute lagrave thoại được chuyển trecircn haiđường khaacutec nhau lagrave đường phaacutet vagrave đường thu Vấn đề NAT nằm ở chỗ tiacuten hiệthoại từ becircn ngoagravei vagraveo becircn trong qua giao thức RTP khocircng thực hiện được cograven chiềungược lại thigrave thực hiện tốt Hay noacutei caacutech khaacutec vấn đề NAT lagravem cho caacutec cuộc gọi t
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2872
Taacutec Giả Lecirc Quốc Toagraven
28
Internet đagravem thoại vagraveo caacutec maacutey nội bộ qua NAT thigrave khocircng nghe được cograven trongtrường hợp caacutec cuộc gọi từ caacutec maacutey nội bộ ra caacutec maacutey internet thigrave nghe tốt
Vấn đề NAT trecircn được giải quyết trong Asterisk bằng việc khai baacuteo thocircng số NAT=yes trong cấu higravenh kecircnh giao thức SIP
4 IAX ndash Inter Asterisk eXchange
IAX lagrave giao thức baacuteo hiệu Voip được phaacutet triển bởi taacutec giả của phần mềmAsterisk để khắc phục những hạn chế trong giao thức SIP Khocircng giống như giathức SIP chuyển tải thoại vagrave baacuteo hiệu trecircn hai kecircnh khaacutec nhau (out of band) IAXchuyển tải thoại vagrave baacuteo hiệu trecircn cugraveng một kecircnh(in band) IAX giải quyết được vấđề NAT đề cập trecircn phần giao thức SIP Mặc khaacutec IAX lagrave giao thức tối ưu trongviệc sử dụng băng thocircng cho pheacutep nhiều goacutei dữ liệu thoại trecircn cugraveng một IP headecơ chế chuyển tải nhiều cuộc gọi trecircn cugraveng một goacutei IP được gọi lagrave trung kế(Trunk)
Coacute thể giải thiacutech thecircm cơ chế trung kế như sau Giả sử Tocirci cần gửi 5 bức thtới người bạn của Tocirci Tocirci sẽ coacute hai higravenh thức để thực hiện thứ nhất lagrave mỗi bức tTocirci bỏ vagraveo một phong bigrave vậy tổng cộng tocirci phải sử dụng 5 phong bigrave để gửi đi 5 bứthư Caacutech thứ hai lagrave Tocirci bỏ 5 bức thư vagraveo 1 phong bigrave vagrave gửi đi vậy tổng cộng Tocircchỉ tốn 1 phong bigrave Qua phacircn tiacutech trecircn rotilde ragraveng việc 5 bức thư vagraveo một phong bigrave sẽtiết kiệm hơn so với 5 bức thư với 5 phong biacute Cơ chế trecircn cũng giống như nhiềcuộc gọi được đoacuteng thagravenh goacutei vagrave chuyển đi trecircn đường trung kế
Toacutem lại IAX lagrave giao thức dagravenh cho VoIP mới nhất cho đến thời điểm nagravey vớinhiều ưu điểm hấp dẫn như
+ Tối thiểu sử dụng băng thocircng
+ Trong suốt với NAT
+ Hiệu quả với cơ chế trung kế
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2972
Taacutec Giả Lecirc Quốc Toagraven
29
8 Thiết Bị VoIP
1 Voip Phone
Đacircy lagrave thiết bị phần cứng kết nối với mạng VoIP giống như maacutey điện thoại đ bagraven thocircng thường nhưng dagravenh cho VoIP cần phải thực hiện cấu higravenh trước khi sửdụng
Lưu yacute một số tiacutenh năng khi thực hiện mua thiết bị điện thoại VoIP
+ Low bandwidth hỗ trợ Codec nagraveo G729 lagrave tốt nhất hiện nay
+ Web Interface Phải coacute giao tiếp thiết lập cấu higravenh thacircn thiện dễ sử dụng
+ Audio Interface Coacute speaker phone hay khocircng
Giaacute thagravenh của điện thoại voip IP đắc hơn điện thoại thocircng thường giaacute khoảntrecircn dưới 100$ một caacutei
Higravenh Maacutey Điện Thoại VoIP
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3072
Taacutec Giả Lecirc Quốc Toagraven
30
2 Softphone
Lagrave một phần mềm được cagravei trecircn maacutey tiacutenh thực hiện tất cả caacutec chức năng giốn
như thiết bị điện thoại Voip cần lưu yacute khi sử dụng softphone lagrave maacutey tiacutenh phải ccard acircm thanh headphone vagrave firewall khocircng bị khoacutea
Sử dụng softphone với hệ thống Asterisk necircn dugraveng softphone với cocircng nghệgiao thức mới dagravenh cho Asterisk đoacute lagrave IAX
Higravenh Điện Thoại Softphone
3 Card giao tiếp với PSTN
Muốn cho pheacutep caacutec maacutey điện thoại nội bộ trong hệ thống Asterisk kết nối vthực hiện cuộc gọi với mạng PSTN chuacuteng ta cần phải coacute thiết bị phần cứng tươthiacutech Thiết bị phần cứng sử dụng cho hệ thống Asterisk do chiacutenh taacutec giả lập cocircng
Digium phacircn phối đacircy cũng chiacutenh lagrave yacute tưởng lớn trong việc phacircn phối phần mềmAsterisk lagrave hệ thống nguồn mở sử dụng miễn phiacute
Thiết bị phần cứng thường kyacute hiệu bắt đầu bằng cụm từ TDMxyB trong đoacute lagrave số lượng port FXS y lagrave số lượng port FXO giaacute trị tối đa của x vagrave y lagrave 4 viacute dụcard TDM22B coacute nghĩa lagrave coacute 2 fort FXS vagrave 2 port FXO
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3172
Taacutec Giả Lecirc Quốc Toagraven
31
Higravenh Card TDM22B gồm 4 port 2 FXS vagrave 2 FXO
4 ATA Analog Telephone Adaptors
ATA lagrave thiết bị kết nối với điện thoại Analog thocircng thường đến mạng VoIPmột thiết bị ATA gồm coacute hai loại port RJ-11 để kết nối với maacutey điện thoại analo
thocircng thường cograven RJ-45 để kết nối với mạng VoIP
ATA thực sự lagrave thiết bị FXS chuyển đổi tiacuten hiệu Analog sang tiacuten hiệu số sửdụng cho mạng VoIP để tận dụng maacutey điện thoại Analog necircn trang bị thiết bị ATAthay vigrave phải trang bị điện thoại VoIP
Thiết bị ATA sử dụng với giao thức IAX được Digium phacircn phối lagrave thiết bịATA được sử dụng rộng ratildei với Asterisk coacute tecircn gọi lagrave IAXy
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3272
Taacutec Giả Lecirc Quốc Toagraven
32
Higravenh Thiết bị ATA
9 Codecs
Thuật Toaacuten codecs(CompressorDe-compressor) lagrave một tập caacutec quy luật đượcsử dụng để chuyển đổi caacutec tiacuten hiệu thoại dạng Analog sang tiacuten hiệu số vagrave ngược lạ
Coacute nhiều thuật toaacuten codec để thực hiện chuyển đổi tiacuten hiệu analog sang tiacuten
hiệu số dạng nhị phacircn (01) như G711 GSM G729hellipỨng với mỗi thuật toaacuten coacutenhững ưu điểm riecircng đặc biệt lagrave việc tối ưu sử dụng băng thocircng trecircn đường truyềMục tiecircu cuối cugraveng lagrave caacutec thuật toaacuten đưa ra phải đảm bảo chất lượng cuộc gọi nhvagrave tiết kiệm băng thocircng nhất
G729 lagrave thuật toaacuten codec tốt nhất hiện nay trong hệ thống VoIP Với hệthống Asterisk để sử dụng thuật toaacuten nagravey cần phải mua bản quyền sử dụng vigrave đacircy
codec khocircng miễn phiacute sử dụng
10 QoS ndash Quality of Service
Caacutec yếu tố ảnh hưởng đến chất lượng của dịch vụ đối với VoIP đoacute lagrave caacuteyếu ảnh hưởng đến chất lượng tiacuten hiệu thoại
1 Độ trễ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3372
Taacutec Giả Lecirc Quốc Toagraven
33
Thoại lagrave dịch vụ mang tiacutenh thời gian thực rất cao vigrave thế trễ lagrave yếu tố ảnhhưởng rất lớn đến chất lượng dịch vụ Trễ được định nghĩa lagrave khoảng thời gian tiacute
từ luacutec tiacuten hiệu thoại đi từ miệng người noacutei tới tai người nghe Trễ lagrave yếu tố khocircnthể traacutenh khỏi độ trễ đối với mạng điện thoại truyền thống (mạng PSTN) khoảng50ms đến 70ms theo khiến nghị của ITU-T để đảm bảo chất lượng cho hệ thốVoIP thigrave độ trễ từ đầu phaacutet tới đầu thu hoặc ngược lại khocircng được vượt quaacute 150mkhi magrave độ trễ vượt quaacute 400ms đến 500ms thigrave khocircng thể chấp nhận được
Caacutec nguyecircn nhacircn gacircy ra trễ bao gồm Trễ trecircn mạng lưới trễ trecircn bộ mả hoacutea
giải matilde trễ trong quaacute trigravenh đoacuteng goacutei trễ bộ đệm trễ xử lyacute tiếng noacuteihellip2 Độ trượt(Jitter)
Nguyecircn nhacircn gacircy ra trượt lagrave goacutei tiacuten hiệu thoại trong quaacute trigravenh truyền từnguồn đến điacutech sẽ gặp phải những điều kiện khaacutec nhau trecircn mạng lưới do đoacute thườđến điacutech với những khoảng trễ khaacutec nhau Đacircy lagrave tiacutenh khocircng đồng nhất của trễ Mnguyecircn nhacircn khaacutec của trượt đối với ứng dụng PC to PC lagrave do việc sử dụng hệ điề
hagravenh phi thời gian thực caacutec goacutei tin thoại phải đợi hệ điều hagravenh xử lyacute trong nhữnkhoảng thời gian khaacutec nhau khi magrave hệ điều hagravenh đang phải xử lyacute đối với caacutec ứndụng khaacutec
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3472
Taacutec Giả Lecirc Quốc Toagraven
34
Higravenh Nguyecircn nhacircn xảy ra trượt
Để loại bỏ tiacutenh khocircng đồng nhất của trễ người ta thiết kế caacutec bộ đệm t(Jitter Buffer) tại nơi đến của caacutec goacutei tin caacutec goacutei tin đến với caacutec khoảng caacutech khaacutecnhau về thời gian được lưu tại bộ đệm rồi phaacutet khỏi bộ đệm với khoảng trễ n
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3572
Taacutec Giả Lecirc Quốc Toagraven
35
nhau Khi bộ đếm coacute kiacutech thước cagraveng lớn thigrave khả năng loại bỏ tiacutenh khocircng đồng nhấcagraveng lớn tuy nhiecircn việc sử dụng bộ đệm sẽ gacircy ra hiện tượng trễ trong ứng dụnthoại do đoacute cần coacute bagravei toaacuten cacircn đối giữa độ trễ vagrave độ trượt
Ngoagravei 2 nguyecircn nhacircn trecircn cograven một số nguyecircn nhacircn nữa ảnh hưởng đến chấtlượng thoại như độ mất goacutei giới hạn băng thocircng tiếng vọng
3 CAgraveI ĐẶT ASTERISK
1 Cagravei đặt Asterisk
1 Download vagrave bung neacuten
Để cagravei đặt Asterisk đầu tiecircn chuacuteng ta cần phải cagravei đặt hệ điều hagravenh linux trecircnmaacutey tiacutenh của migravenh Coacute thể cagravei hệ điều hagravenh Linux Fedora CentOS Redhat hoặcDebian Caacutec goacutei phần mềm phụ thuộc phải coacute trong hệ điều hagravenh Linux trước khcagravei Asterisk bao gồm
bison
gcc
kernel-source
libtermcap-devel
ncurses-devel
openssl096b
openssl-devel
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3672
Taacutec Giả Lecirc Quốc Toagraven
36
Sau khi hoagraven tất caacutec bước trecircn chuacuteng ta tiến hagravenh download phần mềmasterisk với phiecircn bản mới nhất
cd usrsrc
wgetftpftpdigiumcompubasteriskasterisk-140targz
wgetftpftpdigiumcompubasteriskasterisk-addons-140targz
wgetftpftpdigiumcompubasteriskasterisk-sounds-140targz
wgethttpftpdigiumcompubzaptelzaptel-140targz
wgethttpftpdigiumcompublibprilibpri-140targz
Việc download coacute thể nhanh hay chậm tugravey vagraveo tốc độ trecircn đường internet saukhi download hoagraven thagravenh chuacuteng ta tiến hagravenh bung neacuten caacutec goacutei ra thư mục chỉ định
tar ndashxzvf asterisk-140targz
tar ndashxzvf asterisk-addons-140targz
tar ndashxzvf asterisk-sounds-140targz
tar ndashxzvf zaptel-140targz
tar ndashxzvf libpri-140targz
Giải neacuten xong chuacuteng ta nhớ thực hiện lệnh
ln ndashs usrsrcasterisk-140 usrsrcasterisk lệnh nagravey để bảo đảm goacuteildquoaddonsrdquo được biecircn dịch đuacuteng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3772
Taacutec Giả Lecirc Quốc Toagraven
37
Bacircy giờ tới phần chuacuteng ta biecircn dịch caacutec goacutei đatilde giải neacuten ở trecircn trước tiecircn lagrave goacuteizaptel kế đến lagrave libpri sau cugraveng lagrave goacutei Asterisk
2 Cagravei đặt goacutei Zaptel
Goacutei zaptel sẽ chứa tại thư mục usrsrczaptel Đaacutenh lệnh như dưới đacircy để cagraveđặt
cd usrsrczaptel
make clean make install
Lệnh nagravey thực hiện khoảng 2 phuacutet tugravey vagraveo tốc độ maacutey tiacutenh cagravei đặt sau khicagravei đặt xong sẽ trở lại dấu nhắc lệnh vagrave hiển thị một loạt caacutec thocircng baacuteo trong đoacute một số bản tin lỗi magrave chủ yếu lagrave yecircu cầu cagravei đặt caacutec goacutei phụ thuộc đatilde liệt kecirc ở trecircnếu caacutec goacutei trecircn chưa được cagravei đặt
Goacutei zaptel nagravey chứa caacutec driver cho caacutec phần cứng kết giao tiếp với asterisk
do Digium phacircn phối vagrave một số thư viện cho việc coacute thực hiện giao tiếp với phầcứng hay khocircng
Để Asterisk coacute thể chạy cugraveng với khởi động của maacutey tiacutenh chuacuteng ta cần thựchiện lệnh
make config
Lệnh nagravey sẽ tạo ra script chegraven module zaptel vagraveo kernel vagrave chạy ztconfig vagraveoluacutec khởi động maacutey Trong Redhat script nagravey sẽ được cheacutep vagraveo etcinitd chạy ở mức 3
3 Cagravei đặt goacutei libpri
Kế đến chuacuteng ta biecircn dịch goacutei libpri tại thư mục usrsrclibpri bằng lệnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3972
Taacutec Giả Lecirc Quốc Toagraven
39
make config
3 Cagravei đặt TrixBox
1 Giới thiệu
TRIXBOX được phaacutet triển từ nhacircn của ứng dụng Asterisk được tổng hợp từmột số thagravenh phần chiacutenh được phaacutet triển bởi cộng đồng phaacutet triển nguồn mAsterisk dưới bản quyền GPL Trixbox bao gồm những thagravenh phần chiacutenh cho việcấu higravenh ứng dụng thống kecirc tigravenh trạng hoạt động hệ thống lưu trữ dự phograveng v
nhacircn lagrave hệ điều hagravenh CentOS một phiecircn bản khaacutec của Redhat tất cả kết hợp vớnhau tạo thagravenh một goacutei hoagraven chỉnh Khi cagravei goacutei nagravey vagraveo maacutey tiacutenh thigrave coacute thể sử dụngnhư một tổng đagravei PBX
Caacutec thagravenh phần chiacutenh trong goacutei TRIXBOX lagrave
Asterisk PBX Thagravenh phần chiacutenh của hệ thống Trixbox
CentOS Một phiecircn bản Linux khaacutec của Redhat hoagraven toagraven miển phiacute sửdụng Lagrave nhacircn chiacutenh cho Trixbox
SugarCRM Hệ thống quan hệ khaacutech hagraveng CRM
A2Billing ndash Lagrave thagravenh phần dagravenh cho việc xacircy dựng hệ thống điện thoạitrả trước hay cograven gọi lagrave điện thọai thẻ (Calling Card)
Flash Operator Panel Bảng điều khiển giaacutem saacutet tigravenh trạng hoạt độngcủa caacutec maacutey điện thoại trong hệ thống
Web MeetMe Control Quản lyacute triển khai hệ thống điện thoại hội nghị
FreePBX Đacircy lagrave cocircng cụ với giao diện web dagravenh cho việc cấu higravenh hệthống Asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4072
Taacutec Giả Lecirc Quốc Toagraven
40
Hệ thống Lưu trữ dự phograveng vagrave thống kecirc Lagrave thagravenh phần của TRIXBOXcung cấp caacutec cocircng cụ cần thiết cho việc bảo trigrave bảo dưỡng hệ thống
Hệ thống Apache-Php-Mysql dagravenh cho giải phaacutep Webserver của hệthống
2 DOWNLOAD VAgrave LẮP ĐẶT TRIXBOX
Địa chỉ downloadhttpsourceforgenetprojectsasteriskathome
Khi download xong file Trixboxiso Hatildey dugraveng file nagravey Burn vagraveo CD ( xinlưu yacute lagrave dugraveng Nero hoặc chương trigravenh cheacutep đĩa ưa thiacutech rồi burn vagraveo cd_romchứ khocircng phải cheacutep file đoacute vagraveo cd_rom)
Sau khi coacute CD Hatildey boot từ CD nagravey để cagravei đặt trixbox
Chuacute yacute dữ liệu trecircn đĩa cứng sẽ bị xoacutea sạch để cagravei đặt trixbox Nếu trongđĩa cứng cograven dữ liệu hatildey backup tất cả trước khi tiến hagravenh lắp đặt trixbox
Tới đacircy lần lượt caacutec magraven higravenh chỉ dẫn sẽ hiện ra vagrave cứ theo hướng dẫn magrave cagraveđặt Sau khi cagravei đặt xong chuacuteng ta dugraveng Username root vagrave password password đểđăng nhập hệ thống
3 Cấu higravenh địa chỉ IP cho card mạng
Thiết lập địa chỉ IP bằng caacutech gotilde lệnh
netconfig
Chọn OK để thiếp lập
Nếu trong mạng coacute hỗ trợ DHCP thigrave hatildey chọn mục nagravey cograven nếu khocircng hatildeynhập địa chỉ IP tĩnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4172
Taacutec Giả Lecirc Quốc Toagraven
41
IP 19216801
Netmask 2552552550
Gateway 19216893254 ngotilde ra becircn ngoagravei
Primary nameserver 19216893200 thiết lập nếu coacute
Chọn OK để chấp nhận caacutec thiết lập trecircn
Sau khi hoagraven tất hatildey lagravem cho thiết lập coacute hiệu lực bằng caacutech reset lại
maacutey tiacutenh hoặc dugraveng lệnh sau
Service network stop
Service network start
Đến đacircy xem như cagravei đặt hoagraven tất bacircy giờ để cấu higravenh được Asterisk chuacutengta vagraveo một magravey khaacutec vagrave mở Internet Explorer hoặc một trigravenh duyệt web bất kỳ
nhập vagraveohttp19216801đatilde cấu higravenh ở trecircn vagrave tiến hagravenh cấu higravenh hệ thốngvới tagravei khoảng username maint vagrave password password
4 Tổ Chức Thư Mục của Asterisk
Asterisk sử dụng nhiều thư mục trecircn hệ thống linux để quản lyacute caacutec khiacutea cạnkhaacutec nhau của hệ thống như nghi nhận bản tin thoại caacutec bản tin nhắc thoại hoặcaacutec tập tin cấu higravenh Phần nagravey sẽ trigravenh bagravey caacutec thư mục chiacutenh yếu được tạo ra tronquaacute trigravenh lắp đặt vagrave được cấu higravenh trong tập tin Asteriskconf
1 etcasterisk
Thư mục etcasterisk chứa tất cả caacutec tập tin cấu higravenh của hệ thốngAsterisk ngoại trừ tập tin Zaptelconf được đặt tại thư mục etc Phần cứnZaptel đầu tiecircn được phaacutet triển bởi Jim Dixon thuộc nhoacutem Zapata Telephony
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4272
Taacutec Giả Lecirc Quốc Toagraven
42
Group để giao tiếp giữa maacutey tiacutenh với mạng điện thoại magrave Asterisk lại sửdụng phần cứng nagravey với lyacute do đoacute magrave file cấu higravenh zaptelconf khocircng nằmtrong thư mục etcasterisk
2 usrlibasteriskmodules
Thư mục usrlibasteriskmodules chứa tất cả caacutec module cần thiết đểasterisk hoạt động Becircn trong thư mục lagrave caacutec ứng dụng khaacutec nhau caacutec codeccaacutec định dạng acircm thanh(format) vagrave caacutec kecircnh thocircng tin(channel) Theo mặc địnhAsterisk sẽ nạp tất cả caacutec module vagraveo luacutec khởi động Chuacuteng ta coacute thể khocircng cho
nạp một module bất kỳ bằng caacutech khocircng khai baacuteo sử dụng trong tập tinmodulesconf Lưu yacute khi khocircng cho nạp module thigrave phải biết chắc module đoacutekhocircng lagravem ảnh hưởng hoạt động của asterisk nếu khocircng lỗi sẽ xuất hiện
3 varlibasterisk
Thư mục varlibasterisk chứa tập tin astdb vagrave một số thư mục con Tập tinastdb định vị thocircng tin cơ sở dữ liệu của Asterisk giống như Microsoft WindowsRegistry
Caacutec thư mục con của thư mục varlibasterisk bao gồm
agi-bin
Thư mục agi-bin chứa caacutec script của người dugraveng magrave Asterisk coacute thểđịnh vị sử dụng qua caacutec ứng dụng AGI
AGI lagrave phần giao tiếp với ngocircn ngữ lập trigravenh script để thực hiện mộtsố cocircng việc của Asterisk từ becircn ngoagravei
firmware
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4372
Taacutec Giả Lecirc Quốc Toagraven
43
Thư mục firmware chứa một số phần dẻo(firmware) cho caacutec thiết bịkhaacutec nhau tương thiacutech với Asterisk Hiện tại chỉ coacute thư mục con iax chứa
firmware cho thiếy bị IAXy của Digium IAXy lagrave thiết bị ATA sử dụng giaothức IAX
images
Caacutec ứng dụng thocircng tin với caacutec kecircnh hỗ trợ ảnh images thigrave sử dụng thư mụcnagravey Nhưng hiện tại caacutec kecircnh thocircng tin hầu như khocircng hỗ trợ truyền ảnh images necircthư mục nagravey cũng hiếm khi được sử dụng Tuy nhiecircn nếu caacutec thiết bị coacute hỗ trợ ththư mục nagravey trở necircn hiệu dụng
keys
Asterisk coacute thể sử dụng hệ thống khoaacute publicprivate để xaacutec minh caacutec kết nốgiữa caacutec server Asterisk thocircng qua chữ kyacute điện tử RSA Nếu đặt một khoaacute publicvagraveo thư mục keys thigrave kết nối của server đầu becircn kia coacute thể được xaacutec minh bằn
kecircnh thocircng tin coacute hỗ trợ đối với Asterisk thigrave kecircnh giao thức IAX hỗ trợ loại xaacutecminh nagravey Một khoaacute private khocircng bao giờ cocircng bố chuacuteng ta chỉ cocircng bố khoaacute public đến với server cần nối đến sau đoacute sẽ được xaacutec minh với khoaacute private nagravey Chai khoaacute public vagrave private được lưu với đuocirci pub vagrave key đặt tại thư mục keys
mohmp3
Khi cấu higravenh Asterisk sử dụng tiacutenh năng Music on Hold tiacutenh năng hoạt độngsẽ thực hiện lấy caacutec tập tin mp3 tại thư mục mohmp3 Tập tin định dạng theo chucủa Asterisk necircn khi sử dụng caacutec file Mp3 thocircng thường cần coacute sự chuyển đổi thiacutechợp trước khi cheacutep vagraveo thư mục trecircn để sử dụng
sounds
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4472
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4572
Taacutec Giả Lecirc Quốc Toagraven
45
Thư mục tmp sử dụng để lưu trữ những thocircng tin tạm để luocircn bảo đảm khocircnxảy ra tigravenh trạng đọc vagrave viết tập tin cugraveng một luacutec Khi yecircu cầu xử lyacute tập tin chuacuteng thao taacutec trecircn thư mục tmp trước khi lưu vagraveo tập tin điacutech
Tất cả caacutec lời nhắc thoại từ phiacutea người sử dụng vagrave caacutec lời nhắc thoại sử dụ
cho thao taacutec hộp voicemail đều được chứa trong thư mục voicemail Một hộp thưthoại được tạo ra ứng với một maacutey nội bộ trong tập tin voicemailconf sẽ được tra một thư mục con tương ứng cho maacutey nội bộ đoacute tại thư mục voicemail
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4672
Taacutec Giả Lecirc Quốc Toagraven
46
5 varrun
Thư mục varrun chứa thocircng tin process ID(pid) cho tất cả caacutec tiến trigravenh đang
hoạt động trong hệ thống bao gồm cả Asterisk Lưu yacute lagrave ứng với mỗi hệ điều hagravethư mục varrun coacute thể khaacutec
6 varlogasterisk
Thư mục varlogasterisk lagrave nơi Asterisk chứa tất cả caacutec tập tin nhật kyacute haycograven gọi lagrave tập tin log Chuacuteng ta coacute thể tuỳ biến caacutec loại thocircng tin được lưu trong caacutec
tập tin log khaacutec nhau qua tập tin cấu higravenh loggerconf đặt tại thư mục etcasterisk7 varlogasteriskcdr-csv
Thư mục varlogasteriskcdr-csv được sử dụng để lưu chi tiết cuộc gọi CDRThocircng tin mặc định về chi tiết thocircng tin cuộc gọi lưu trữ trong tập tin MasterCVSnhưng thường thigrave ứng với mỗi matilde accountcode sẽ tạo một thư mục riecircng để lưu ctiết cuộc gọi cho maacutey đoacute
5 Một số lệnh thao taacutec trecircn hệ thống asterisk
Asterisk coacute hai thagravenh phần được xacircy dụng tiacutech hợp với nhau vagrave chạy songsong nhau
Asterisk Server bigravenh thường chạy ở chế độ nền(background) giống caacutec sevicestrong window
Asterisk Client ở chế độ dograveng lệnh CLI giao tiếp với Asterisk Server thực thicaacutec lệnh để kiểm tra hay xem caacutec thocircng tin của server
Để Chạy vagrave dừng Asterisk ở chế độ nền chuacuteng ta thực hiện lệnh sau
etcinitdasterisk (start|stop)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4772
Taacutec Giả Lecirc Quốc Toagraven
47
Một khi Asterisk đatilde chạy chuacuteng ta coacute thể chuyển qua chế độ CLI từ dấu nhắlệnh của linux như sau
asterisk ndashr
Khi vagraveo chế độ lệnh nếu muốn thoaacutet về lại dấu nhắc linux chuacuteng ta dugraveng lệnh
CLIgtexit
Caacutec lệnh cơ bản thực hiện tại CLIgt
Bất cứ khi nagraveo chỉnh sửa caacutec tập tin cấu higravenh chuacuteng ta đều cần phải nạp lại đcaacutec thay đổi coacute hiệu lực điều đoacute thực hiện bằng lệnh
CLIgtreload
Bậc chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 debug
CLIgt SIP debug
Tắt chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 no debug
CLIgt SIP no debug
Hiển thị caacutec trạng thaacutei thocircng tin của users peers vagravechannels của SIP hoặc IAX2
CLIgt sip show users
CLIgt sip show peers
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4872
Taacutec Giả Lecirc Quốc Toagraven
48
CLIgt sip show channels
CLIgt iax2 show peers
CLIgt iax2 show users
CLIgt iax2 show channels
Đến thời điểm nagravey coacute thể noacutei chuacuteng ta đatilde hoagraven thagravenh cagravei đặt hệ thốngAsterisk cagravei đặt xong mới lagrave bước mở đầu để cho hệ thống Asterisk hoạt động vtừng ứng dụng cụ thể chuacuteng sẽ tiếp tục thực hiện caacutec giai đoạn được xem lagrave qutrọng nhất trong việc triển khai hệ thống Asterisk đoacute lagrave giai đoạn cấu higravenh hệ thốnlecircn kế hoạch Diaplan chương cograven lại đều nhắm đến mục tiecircu nagravey
4 CẤU HIgraveNH HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Sau khi hoagraven tất phần cagravei đặt hệ thống asterisk một bước quan trọng tiếp thelagrave cấu higravenh hệ thống coacute thể noacutei đacircy lagrave bước quan trọng nhất của việc khiển khai thống đến với từng ứng dụng cụ thể Trong chương nagravey xin giới thiệu caacutei nhigraven đầtiecircn về việc cấu higravenh trước khi đi sacircu hơn ở những chương sau những gigrave giới thiệ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4972
Taacutec Giả Lecirc Quốc Toagraven
49
trong chương nagravey lagrave nền moacuteng cơ bản nhưng đủ để hiểu lagravem thế nagraveo hệ thống coacute thoạt động được nội dung chiacutenh bao gồm
+ Thao taacutec cấu higravenh trecircn hệ thống tập tin của asterisk
+ Caacutech cagravei đặt phần mềm softphone trecircn cocircng nghệ sip
+ Cấu higravenh cho hai maacutey softphone liecircn lạc với nhau
+ Cấu higravenh phaacutet thocircng điệp
+ Quay số qua Sip vagrave mạng PSTN
2 Tập Tin cấu higravenh
Tất cả caacutec file cấu higravenh cho hệ thống asterisk đều nằm tại thư mục etcasterisngoại trừ file zaptelconf cấu higravenh cho phần cứng TDM nằm tại thư mục etc caacutecthức cấu higravenh giống như tập tin ini của window vậy Caacutec nội dung sau dấu chấm phảy lagrave nội dung chuacute thiacutech trong file cấu higravenh giống như chuacute thiacutech trong ngocircn ngữ
lập trigravenh C lagrave dấu Tất cả caacutec khoảng trắng trong tập tin đều được bỏ qua khocircng yacute nghĩa trong file cấu higravenh
Trong file cấu higravenh cograven coacute hai pheacutep gaacuten rất thường xuyecircn được sử dụng pheacutep gaacuten ldquo=rdquo lagrave dugraveng cho việc gaacuten caacutec biến cograven pheacutep gaacuten ldquo=gtrdquo dugraveng cho việc gaacutencaacutec đối tượng sau đacircy lagrave một viacute dụ cho file cấu higravenh
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5072
Taacutec Giả Lecirc Quốc Toagraven
50
Đacircy lagrave caacutec dograveng chuacute thiacutech
[section]
Key=value gaacuten giaacute trị cho biến
[section2]
Key=gtobject Gaacuten giaacute trị cho đối tượng
Cuacute phaacutep thực hiện giống nhau cho tất cả caacutec file cấu higravenh nhưng coacute vagravei kiểukhaacutec nhau cho mỗi file cầu higravenh dựa vagraveo thức caacutech hoạt động của chuacuteng
3 Caacutec kiểu ảnh hưởng trong tập cấu higravenh
Coacute ba kiểu caacutech thức hoạt động của tập tin cấu higravenh như sau
Kiểu Caacutech hoạt động File cầu higravenh Viacute dụ
S i m p l eGroup
Coacute hiệu lực trecircntừng dograveng trongfile
Extensionconf
Exten=gt4001dial(sip400)
O p t i o ninheritance
Dograveng khai baacuteosau thừa kếnhững thocircng sốkhai baacuteo trước
Zapataconf [channels]
Context=From_PSTN
Signalling=fxs_ks
Group=1Channel=gt1
C o m p l e xEntity
Mỗi entity nhậnmột ngữ cảnh
sipconf
iaxconf
[cisco]
Type=friend
Secret=12345
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5172
Taacutec Giả Lecirc Quốc Toagraven
51
Host=192168165
Context=NoiBo
[xten]
Type=friend
Secret=6789
Host=dynamic
Context=NoiBo
1 Simple Group
Đacircy lagrave kiểu cấu higravenh đơn giản nhất thường sử dụng trong caacutec fileextentionconf meetmeconf voicemailconf tương ứng với mỗi dograveng khai baacuteo lagravemột đối tượng coacute yacute nghĩa trecircn dograveng đoacute
Viacute dụ
Extentionconf [section]
object1=gt op1op2op3
object2=gt op1bop2bop3b
Trong viacute dụ trecircn mỗi dograveng tương ứng với caacutec toaacuten tử khaacutec nhau object1 coacute caacutectoaacuten từ op1 op2 op3 trong khi đoacute object2 lại coacute caacutec toaacuten từ op1b op2b op3b
2 Option inheritance
Đacircy lagrave cấu higravenh kiểu thừa kế thường được cấu higravenh trong caacutec file zapataconfagentconf với kiểu cấu higravenh nagravey thigrave caacutec dograveng phiacutea dưới coacute thể thừa kế caacutec thocircng sdograveng phiacutea trecircn tương ứng với mỗi section caacutec dograveng phiacutea dưới coacute thể thay đổi caacutecthocircng số cho tươngứng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5272
Taacutec Giả Lecirc Quốc Toagraven
52
Viacute dụ
Extentionconf
[section]
Op1=bas
Op2=adv
Object1=gt1
Op1=int
Object1=gt2
Với cấu higravenh trecircn coacute thể giải thiacutech như sau object1=gt1 thừa hưởng hai thocircngsố ở phiacutea trecircn đoacute lagrave op1=bas vagrave op2=adv trong khi đoacute đối với object1=gt2 với thocircngsố op1=int được khai baacuteo lại necircn object1=gt2 được thừa kế từ hai thocircng số op1=invagrave op2=adv
3 Complex Entity
Với cấu kiểu nagravey được tổ chức thagravenh nhiều entity ứng với mỗi entity coacute nhiềthocircng số được khai baacuteo mỗi entity ở đacircy chiacutenh lagrave caacutec section để khai baacuteo caacutec kecircnhthocircng tin Cấu higravenh thường được sử dụng trong caacutec file iaxconf sipconf
Viacute dụ
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5372
Taacutec Giả Lecirc Quốc Toagraven
53
[entity1]
Op1=value1
Op2=value2
[entity2]
Op1=value3
Op2=value4
Entity1 coacute caacutec giaacute trị value1 vagrave value2 cho thocircng số op1 vagrave op2 trong khi đoacute
cũng lagrave thocircng số op1 vagrave op 2 nhưng coacute caacutec giaacute trị khaacutec lagrave value3 vagrave value4 choentity2
4 Cấu higravenh giao tiếp với mạng PSTN
1 Ngữ cảnh kết nối
Để kết nối với mạng PSTN chuacuteng ta cần phải coacute một card TDM với Cổng
FXO vagrave một đường dacircy điện thoại hoặc coacute thể lagrave một tổng đagravei nội bộ PBX Cnhiều nhagrave sản xuất phần cứng khaacutec nhau nhưng trong phần cấu higravenh dưới dacircy lagrave cấhigravenh cho card zapata TDM01B của digium (card nagravey hiện nay giaacute baacuten khoảng175$)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1772
Taacutec Giả Lecirc Quốc Toagraven
17
vị triacute khaacutec nhau sẽ lagravem giảm chi phiacute đaacuteng kể Ngữ cảnh nagravey về mặt phaacutep luật khocircncho cuộc gọi từ Mỹ vagraveo Việt Nam
4 Caacutec ứ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 caacutec server kết nối với hệ thống PSTN hay tổng đagravei PBXđể triển khai caacutec ứng dụng như tương taacutec thoại IVR Một viacute dụ cho ứng dụng tươtaacutec thoại đoacute lagrave cho biết kết quả sổ số hay kiểm tra cước cuộc gọi giống dịch v19001260 vậy Ứng dụng VoiceMail thu nhận những tin nhắn thoại từ phiacutea thuecirc bao giống như chức năng hộp thư thoại của Bưu Điện Thagravenh phố triển khai Cograve
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1872
Taacutec Giả Lecirc Quốc Toagraven
18
chức năng điện thoại hội nghị thiết lập cho nhiều maacutey điện thoại cugraveng noacutei chuyệvới nhau
5 Chức năng Phacircn phối cuộc gọi tự động ACD
Phacircn phối cuộc gọi với hagraveng đợi
ACD(Automatic Call Distribution) Phacircn phối cuộc gọi tự động
Đacircy lagrave chức năng ứng dụng cho nhu cầu chăm soacutec khaacutech hagraveng hay nhận phảnhổi từ phiacutea khaacutech hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1972
Taacutec Giả Lecirc Quốc Toagraven
19
Cocircng ty coacute khả năng tiếp nhận cugraveng một luacutec 10 cuộc gọi như thế cuộc gọi th11 gọi đến thigrave hệ thống giải quyết như thế nagraveo Bigravenh thường thigrave sẽ nghe tiacuten hiệ
bận nhưng với chức năng phacircn phối cuộc gọi sẽ đưa thuecirc bao đoacute vagraveo hagraveng đợi đchờ trả lời trong khi chờ trả lời cuộc gọi thuecirc bao coacute thể nghe những bagravei haacutet hay dasterisk cung cấp trong luacutec nagravey nếu 1 trong mười số điện thoại trở về trạng thaacutei rthigrave cuộc gọi đang chờ sẽ được trả lời Giống như chức năng của dịch vụ 1080 ha116 của Bưu Điện Thagravenh Phố vậy
2 CAacuteC KHAacuteI NIỆM TRONG HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Trong chương nagravey sẽ giải thiacutech rotilde caacutec khaacutei niệm cơ bản liecircn quan đến hệ thốnasterisk cung cấp những kiến thức nền tảng những khaacutei niệm cần thiết để thiếttriển khai xacircy dựng hệ thống điện thoại với Asterisk
2 PBX - Private Branch Exchange
PBX hay cograven gọi lagrave PABX - Private Automatic Branch Exchange lagrave hệ thốngtổng đagravei nội bộ được đặt tại nhagrave thuecirc bao từ Automatic ở đacircy muốn noacutei đến lagrave hthống tổng đagravei điện tử tự động nhưng hiện nay đa số lagrave tổng đagravei PBX điện tử tđộng necircn từ trecircn thực sự khocircng cograven cần thiết nữa
PBX với mục tiecircu chia sẻ nhiều thuecirc bao nội bộ gọi ra thế giới becircn ngoagraveithocircng qua một vagravei đường trung kế hay noacutei một caacutech khaacutec PBX lagrave hệ thống trungchuyển giữa caacutec đường dacircy điện thoại becircn ngoagravei từ cocircng ty điện thoại vagrave maacutey điệthoại nội bộ trong tổng đagravei PBX Vigrave thế necircn số lượng maacutey điện thoại nội bộ luocircnhiều hơn số đường dacircy nối đến PBX từ becircn ngoagravei
wwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2072
Taacutec Giả Lecirc Quốc Toagraven
20
PBX thực hiện chuyển mạch cuộc gọi caacutec maacutey điện thoại nội bộ với nhau vvới caacutec maacutey điện thoại becircn ngoagravei thocircng qua đường trung kế Đồng thời thực hiệ
chuyển mạch caacutec cuộc gọi điện thoại từ becircn ngoagravei vagraveo caacutec maacutey điện thoại nội bộNgoagravei việc chuyển mạch cuộc gọi PBX cung cấp nhiều tiacutenh năng sử dụng
cho nhiều mục điacutech khaacutec nhau của khaacutech hagraveng magrave bản thacircn caacutec đường dacircy điệnthoại từ cocircng ty điện thoại kết nối đến khocircng thể thực hiện được caacutec tiacutenh năng ntương taacutec thoại(IVR) Voicemail phacircn phối cuộc gọi tự động(ADC)hellip
Hiện nay với việc phaacutet triển mạnh mẽ của cocircng nghệ VoIP chuacuteng ta cograven coacutethecircm thuật ngữ IP PBX Đacircy lagrave hệ thống chuyển mạch PBX với cocircng nghệ Voip
3 VOIP - Voice Over Internet Protocol
Voice over Internet Protocol (VoIP) lagrave một cocircng nghệ cho pheacutep truyền thoạisử dụng giao thức mạng IP trecircn cơ sở hạ tầng sẵn coacute của mạng internet Voip lagrave mtrong những cocircng nghệ viễn thocircng đang được quan tacircm nhất hiện nay khocircng chỉ đố
với nhagrave khai thaacutec caacutec nhagrave sản xuất magrave cograven cả với người sử dụng dịch vụVoip coacute thể vừa thực hiện mọi loại cuộc gọi như trecircn mạng điện thoại kecircn
truyền thống (PSTN) đồng thời truyền dữ liệu trecircn cơ sở mạng truyền dữ liệu Dcaacutec ưu điểm về giaacute thagravenh dịch vụ vagrave sự tiacutech hợp nhiều loại higravenh dịch vụ necircn voihiện nay được triển khai một caacutec rộng ratildei
Dịch vụ điện thoại voip lagrave dịch vụ ứng dụng giao thức IP nguyecircn tắc củaVoIP bao gồm việc số hoaacute tiacuten hiệu tiếng noacutei thực hiện việc neacuten tiacuten hiệu số chia nhcaacutec goacutei nếu cần vagrave truyền goacutei tin nagravey qua mạng tới nơi nhận caacutec goacutei tin nagravey đượraacutep lại theo đuacuteng thứ tự của bản tin giải matilde tiacuten hiệu tương tự phục hồi lại tiếng n ban đầu
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2172
Taacutec Giả Lecirc Quốc Toagraven
21
Caacutec cuộc gọi trong VoIP dựa trecircn cơ sở sử dụng kết hợp cả chuyển mạchkecircnh vagrave chuyển mạch goacutei Trong mỗi loại chuyển mạch đều coacute ưu nhược điể
riecircng của noacute Trong kỹ thuật chuyển mạch kecircnh giagravenh riecircng cho một kecircnh truyềngiữa hai thiết bị đầu cuối thocircng qua caacutec node chuyển mạch trung gian Trongchuyển mạch kecircnh tốc độ truyền dẫn luocircn luocircn cố định(nghĩa lagrave băng thocircng khocircnđổi) với mạng điện thoại PSTN tốc độ nagravey lagrave 64kbps truyền dẫn trong chuyểmạch kecircnh coacute độ trễ nhỏ
Trong chuyển mạch goacutei caacutec bản tin được chia thagravenh caacutec goacutei nhỏ gọi lagrave caacutec
goacutei nguyecircn tắc hoạt động của noacute lagrave sử dụng hệ thống lưu trữ vagrave chuyển tiếp caacutec gtin trong nuacutet mạng Đối với chuyển mạch goacutei khocircng tồn tại khaacutei niệm kecircnh riecircng băng thocircng khocircng cố định coacute nghĩa lagrave coacute thể thay đổi tốc độ truyền kỹ thuật chuyểmạch goacutei phải chịu độ trễ lớn vigrave trong chuyển mạch goacutei khocircng quy định thời giancho mỗi goacutei dữ liệu tới điacutech mỗi goacutei coacute thể đi bằng nhiều con đường khaacutec nhau đtới điacutech chuyển mạch goacutei thiacutech hợp cho việc truyền dữ liệu vigrave trong mạng truyền dliệu khocircng đogravei hỏi về thời gian thực như thoại để sử dụng ưu điểm của mỗi lo
chuyển mạch trecircn thigrave trong voip kết hợp sử dụng cả hai loại chuyển mạch kecircnh vchuyển mạch goacutei
4 PSTN ndash Public Switched Telephone Network
PSTN lagrave mạng chuyển mạch điện thoại cocircng cộng hay noacutei caacutech khaacutec lagrave mạngkết nối tất cả caacutec hệ thống tổng đagravei chuyển mạch-mạch
Để hiểu rotilde hơn hatildey xem xeacutet mạng PSTN với mạng Internet về khiacutea cạnhchuyển thoại trecircn đoacute Chuyển mạch mạch muốn thực hiện cuộc gọi giữa hai thu bao thigrave hệ thống phải giagravenh riecircng một kecircnh truyền 64kbps để chuyển tải tiacuten hiệthoại trecircn đoacute Cograven cuộc gọi điện thoại trecircn mạng Internet thigrave tiacuten hiệu thoại đượđoacuteng goacutei vagrave chuyển đi trecircn cugraveng kecircnh truyền với nhiều dịch vụ khaacutec Vigrave lẽ đoacute chấlượng cuộc gọi trecircn mạng PSTN bao giờ cũng tốt hơn trecircn mạng Internet nhưng đổ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2272
Taacutec Giả Lecirc Quốc Toagraven
22
lại chi phiacute lại đắc hơn rất nhiều đặc biệt lagrave caacutec cuộc gọi quốc tế necircn phải cần nhắc kỹ khi sử dụng
PSTN được phaacutet triển trecircn chuẩn ITU(International TelecommunicationUnion) cograven mạng Internet được phaacutet triển trecircn chuẩn IETF(Internet EngineeringTask Force) cả hai mạng trecircn đều sử dụng địa chỉ để định tuyến cuộc gọi PSTN sdụng caacutec con số điện thoại để chuyển mạch cuộc gọi giữa caacutec tổng đagravei điện thotrong khi đoacute trecircn mạng Internet địa chỉ IP sẽ được sử dụng để định tuyến caacutec goacutethoại
5 TDM ndash Time Division Multiplexing
Lagrave kỹ thuật gheacutep kecircnh phacircn chia thời gian nhiều tiacuten hiệu coacute thể truyền đồngthời trecircn một đường truyền TDM được sử dụng chuyển thoại trong hệ thống mạPSTN Coacute hai chuẩn gheacutep kecircnh TDM cơ bản lagrave E1 với 30 kecircnh thoại trecircn mộtkhung tốc độ 2Mbps vagrave T1 với 24 kecircnh thoại tốc độ 15Mbps
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2372
Taacutec Giả Lecirc Quốc Toagraven
23
Higravenh Minh họa gheacutep kecircnh phacircn chia theo thời gian
6 Caacutec higravenh thức baacuteo hiệu giao tiếp TDM
1 FXO vagrave FXS
FXO (Foreign Exchange Office) lagrave thiết bị nhận tiacuten hiệu từ tổng đagravei gửi đếnnhư dograveng chuocircng tiacuten hiệu nhấc gaacutec maacutey tiacuten hiệu mời quay số gửi vagrave nhận tiacuten hiệthoạihellip FXO giống như maacutey Fax hay modem dial-up 56k vậy Dugraveng để kết nối vớ
đường dacircy điện thoại
FXS (Foreign Exchange Station) lagrave thiết bị tại nơi cung cấp đường dacircy điệnthoại thiết bị FXS sẽ cung cấp tiacuten hiệu mời quay số(dialtone) dograveng chuocircng hồi acircmchuocircng(ring tone) Trong đường dacircy Analog FXS cung cấp dograveng chuocircng vagrave điện aacutepcho điện thoại hoạt động viacute dụ FXS cung cấp điện aacutep -48VDC đến maacutey điện tho
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2472
Taacutec Giả Lecirc Quốc Toagraven
24
Analog trong suốt thời gian đagravem thoại vagrave cung cấp 90VAC(20hz) để phaacutet điện aacuteprung chuocircng Thiết bị FXS phaacutet cograven thiết bị FXO nhận
Card TDM sử dụng trong hệ thống asterisk thường tiacutech hợp vừa thiết bị FXOvừa lagrave thiết bị FXS(Giống bộ ATA) FXO để kết nối với đường dacircy điện thoại cograveFXS dugraveng để kết nối với maacutey điện thoại analog thocircng thường dugraveng để chuyển mạcuộc gọi TDM qua hệ thống asterisk(Xem thecircm trong phần cấu higravenh cho kecircnhTDM)
Toacutem lại cần nắm
FXS được kết nối với FXO giống với đường dacircy điện thoại nối với maacuteyđiện thoại
FXS cung cấp nguồn cho điện thoại FXO(điện thoại Analog)
Higravenh a) Maacutey điện thoại vai trograve FXO kết nối với FXS(PSTN) Higravenh b) PBXkết nối với FXO vagrave FXS Higravenh c) ATA đoacuteng vai trograve như FXS để kết nối với maacuteyđiện thoại vai trograve FXO
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2572
Taacutec Giả Lecirc Quốc Toagraven
25
2 Baacuteo hiệu Analog giữa đầu cuối vagrave tổng đagravei
Khi chuacuteng ta nhấc mấy điện thoại để gọi thigrave nghe tiacuten hiệu mời quay số kh
cuộc gọi gọi đầu becircn kia bị bận thigrave chuacuteng ta nghe tiacuten hiệu bận(busy tone) caacutec loạtiacuten hiệu như vậy gọi lagrave caacutec tiacuten hiệu baacuteo hiệu analog Caacutec tiacuten hiệu như Mời quay sốtiacuten hiệu bận rung chuocircng trạng thaacutei nhấc gaacutec maacutey Caacutec loại tiacuten hiệu trecircn được trađổi giữa thiết bị FXO vagrave FXS
Coacute nhiều phương thức baacuteo hiệu khaacutec nhau ứng với từng nơi sử dụng vigrave thếtại nơi kết nối với đường dacircy điện thoại cần xem xeacutet họ đang sử dụng phương th
baacuteo hiệu gigrave từ đoacute chuacuteng ta khai thaacutec loại tiacuten hiệu baacuteo hiệu cho thiacutech hợp caacutec phương thức baacuteo hiệu như Loop Start Ground Start Một minh họa cho việc sửdụng sai phương thức baacuteo hiệu lagrave khi chuacuteng ta khai baacuteo phương thức baacuteo hiệu giữhệ thống Asterisk vagrave đường dacircy điện thoại khaacutec nhau thigrave dẫn đến Asterisk sẽ khocircnnhận biết được tiacuten hiệu gaacutec maacutey điều nagravey sẽ lagravem cho asterisk khocircng baacuteo giờ giải tỏđược cuộc gọi để thực hiện cuộc gọi mới
3 Baacuteo hiệu giữa caacutec tổng đagravei
SS7 hệ thống baacuteo hiệu số 7 được phaacutet triển bởi ATampT vagrave ITU lagrave hệ thống baacuteo hiệu chuyển caacutec cuộc gọi giữa caacutec tổng đagravei trong mạng PSTN Trong hệ thốn baacuteo hiệu số 7 tiacuten hiệu chuyển tải trecircn đường trung kế kết nối giữa hai tổng đagravei gồcoacute hai mạch riecircng một cho thoại vagrave một cho baacuteo hiệu như vậy thoại vagrave baacuteo hiệu cthể chuyển trecircn hai kecircnh vật lyacute khaacutec nhau
7 Baacuteo Hiệu trecircn mạng điện thoại VoIP
1 SIP Session Initiation Prorocol
Sip lagrave giao thức Internet dagravenh cho baacuteo hiệu VoIP được phaacutet triển bởi IETFcung cấp vagravei chức năng giống hệ thống baacuteo hiệu số 7 nhưng dựa trecircn nền IP Mộchức năng giống baacuteo hiệu số 7 đoacute lagrave baacuteo hiệu vagrave thoại chuyển tải trecircn hai kecircnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2672
Taacutec Giả Lecirc Quốc Toagraven
26
riecircng Giao thức SIP thực hiện chức năng thiết lập vagrave baacuteo hiệu cuộc gọi khi noacutei đế baacuteo hiệu cuộc gọi lagrave chỉ định caacutec tiacuten hiệu baacuteo hiệu như tiacuten hiệu mời quay số tiacutehiệu bậnhellip
2 Proxy server
Mặc dầu hai thiết bị SIP coacute thể liecircn lạc trực tiếp với nhau để khởi tạo cuộgọi nhưng trong giao thức SIP cograven coacute chức năng Proxy để linh hoạt hơn trong thiếlập cuộc gọi Proxy Server sẽ lagravem nhiệm vụ ghi nhận tất cả caacutec số điện thoại đư phiacutea client đăng kyacute đến qua bản tin ldquoRegistrationrdquo Khi một client khaacutec thực hiện
cuộc gọi thigrave thực sự Client đoacute khocircng biết số điện thoại cần gọi đang ở đacircu necircn thocircnqua Proxy server để tigravem kiếm thiết lập cuộc gọi
+
Higravenh Đăng kyacute từ Client đến SIP Proxy Với Giao thức SIP đường baacuteo hiệu vagravethoại riecircng
3 RTP vaacute NAT
Caacutec cuộc gọi trecircn Internet với giao thức SIP được chia thagravenh caacutec goacutei thoại vagraveđược chuyển qua giao thức RTP(Real Time Protocol) RTP lagrave giao thức khocircng chỉthực hiện chuyển caacutec goacutei thoại qua Internet magrave cograven coacute cả video nữa Một cuộc gọ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2772
Taacutec Giả Lecirc Quốc Toagraven
27
thocircng thường coacute hai hướng thocircng tin lagrave nhận vagrave phaacutet RTP lagravem việc chuyển caacutec goacutedữ liệu thoại cũng trecircn hai hướng
NAT Network Address Translators lagrave một trở ngại lớn trong giao thức RTPMạng sử dụng NAT lagrave một mạng chia sẻ nhiều địa chỉ IP nội bộ với một địa chỉ ICocircng cộng để kết nối với thế giới becircn ngoagravei NAT dugraveng để chia sẻ nhiều maacutey tiacutentrong mạng LAN nội bộ sử dụng được Internet nhưng cũng chiacutenh vigrave thế magrave caacutec maacutetiacutenh nội bộ gặp khoacute khăn trong việc thực hiện cuộc gọi VoIP qua Internet Đoacute chiacutenhlagrave vấn để trở ngại khi truyền thoại qua giao thức RTP
Higravenh Minh họa hoạt động của NAT
Trong Giao thức RTP như chuacuteng ta đatilde biết đoacute lagrave thoại được chuyển trecircn haiđường khaacutec nhau lagrave đường phaacutet vagrave đường thu Vấn đề NAT nằm ở chỗ tiacuten hiệthoại từ becircn ngoagravei vagraveo becircn trong qua giao thức RTP khocircng thực hiện được cograven chiềungược lại thigrave thực hiện tốt Hay noacutei caacutech khaacutec vấn đề NAT lagravem cho caacutec cuộc gọi t
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2872
Taacutec Giả Lecirc Quốc Toagraven
28
Internet đagravem thoại vagraveo caacutec maacutey nội bộ qua NAT thigrave khocircng nghe được cograven trongtrường hợp caacutec cuộc gọi từ caacutec maacutey nội bộ ra caacutec maacutey internet thigrave nghe tốt
Vấn đề NAT trecircn được giải quyết trong Asterisk bằng việc khai baacuteo thocircng số NAT=yes trong cấu higravenh kecircnh giao thức SIP
4 IAX ndash Inter Asterisk eXchange
IAX lagrave giao thức baacuteo hiệu Voip được phaacutet triển bởi taacutec giả của phần mềmAsterisk để khắc phục những hạn chế trong giao thức SIP Khocircng giống như giathức SIP chuyển tải thoại vagrave baacuteo hiệu trecircn hai kecircnh khaacutec nhau (out of band) IAXchuyển tải thoại vagrave baacuteo hiệu trecircn cugraveng một kecircnh(in band) IAX giải quyết được vấđề NAT đề cập trecircn phần giao thức SIP Mặc khaacutec IAX lagrave giao thức tối ưu trongviệc sử dụng băng thocircng cho pheacutep nhiều goacutei dữ liệu thoại trecircn cugraveng một IP headecơ chế chuyển tải nhiều cuộc gọi trecircn cugraveng một goacutei IP được gọi lagrave trung kế(Trunk)
Coacute thể giải thiacutech thecircm cơ chế trung kế như sau Giả sử Tocirci cần gửi 5 bức thtới người bạn của Tocirci Tocirci sẽ coacute hai higravenh thức để thực hiện thứ nhất lagrave mỗi bức tTocirci bỏ vagraveo một phong bigrave vậy tổng cộng tocirci phải sử dụng 5 phong bigrave để gửi đi 5 bứthư Caacutech thứ hai lagrave Tocirci bỏ 5 bức thư vagraveo 1 phong bigrave vagrave gửi đi vậy tổng cộng Tocircchỉ tốn 1 phong bigrave Qua phacircn tiacutech trecircn rotilde ragraveng việc 5 bức thư vagraveo một phong bigrave sẽtiết kiệm hơn so với 5 bức thư với 5 phong biacute Cơ chế trecircn cũng giống như nhiềcuộc gọi được đoacuteng thagravenh goacutei vagrave chuyển đi trecircn đường trung kế
Toacutem lại IAX lagrave giao thức dagravenh cho VoIP mới nhất cho đến thời điểm nagravey vớinhiều ưu điểm hấp dẫn như
+ Tối thiểu sử dụng băng thocircng
+ Trong suốt với NAT
+ Hiệu quả với cơ chế trung kế
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2972
Taacutec Giả Lecirc Quốc Toagraven
29
8 Thiết Bị VoIP
1 Voip Phone
Đacircy lagrave thiết bị phần cứng kết nối với mạng VoIP giống như maacutey điện thoại đ bagraven thocircng thường nhưng dagravenh cho VoIP cần phải thực hiện cấu higravenh trước khi sửdụng
Lưu yacute một số tiacutenh năng khi thực hiện mua thiết bị điện thoại VoIP
+ Low bandwidth hỗ trợ Codec nagraveo G729 lagrave tốt nhất hiện nay
+ Web Interface Phải coacute giao tiếp thiết lập cấu higravenh thacircn thiện dễ sử dụng
+ Audio Interface Coacute speaker phone hay khocircng
Giaacute thagravenh của điện thoại voip IP đắc hơn điện thoại thocircng thường giaacute khoảntrecircn dưới 100$ một caacutei
Higravenh Maacutey Điện Thoại VoIP
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3072
Taacutec Giả Lecirc Quốc Toagraven
30
2 Softphone
Lagrave một phần mềm được cagravei trecircn maacutey tiacutenh thực hiện tất cả caacutec chức năng giốn
như thiết bị điện thoại Voip cần lưu yacute khi sử dụng softphone lagrave maacutey tiacutenh phải ccard acircm thanh headphone vagrave firewall khocircng bị khoacutea
Sử dụng softphone với hệ thống Asterisk necircn dugraveng softphone với cocircng nghệgiao thức mới dagravenh cho Asterisk đoacute lagrave IAX
Higravenh Điện Thoại Softphone
3 Card giao tiếp với PSTN
Muốn cho pheacutep caacutec maacutey điện thoại nội bộ trong hệ thống Asterisk kết nối vthực hiện cuộc gọi với mạng PSTN chuacuteng ta cần phải coacute thiết bị phần cứng tươthiacutech Thiết bị phần cứng sử dụng cho hệ thống Asterisk do chiacutenh taacutec giả lập cocircng
Digium phacircn phối đacircy cũng chiacutenh lagrave yacute tưởng lớn trong việc phacircn phối phần mềmAsterisk lagrave hệ thống nguồn mở sử dụng miễn phiacute
Thiết bị phần cứng thường kyacute hiệu bắt đầu bằng cụm từ TDMxyB trong đoacute lagrave số lượng port FXS y lagrave số lượng port FXO giaacute trị tối đa của x vagrave y lagrave 4 viacute dụcard TDM22B coacute nghĩa lagrave coacute 2 fort FXS vagrave 2 port FXO
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3172
Taacutec Giả Lecirc Quốc Toagraven
31
Higravenh Card TDM22B gồm 4 port 2 FXS vagrave 2 FXO
4 ATA Analog Telephone Adaptors
ATA lagrave thiết bị kết nối với điện thoại Analog thocircng thường đến mạng VoIPmột thiết bị ATA gồm coacute hai loại port RJ-11 để kết nối với maacutey điện thoại analo
thocircng thường cograven RJ-45 để kết nối với mạng VoIP
ATA thực sự lagrave thiết bị FXS chuyển đổi tiacuten hiệu Analog sang tiacuten hiệu số sửdụng cho mạng VoIP để tận dụng maacutey điện thoại Analog necircn trang bị thiết bị ATAthay vigrave phải trang bị điện thoại VoIP
Thiết bị ATA sử dụng với giao thức IAX được Digium phacircn phối lagrave thiết bịATA được sử dụng rộng ratildei với Asterisk coacute tecircn gọi lagrave IAXy
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3272
Taacutec Giả Lecirc Quốc Toagraven
32
Higravenh Thiết bị ATA
9 Codecs
Thuật Toaacuten codecs(CompressorDe-compressor) lagrave một tập caacutec quy luật đượcsử dụng để chuyển đổi caacutec tiacuten hiệu thoại dạng Analog sang tiacuten hiệu số vagrave ngược lạ
Coacute nhiều thuật toaacuten codec để thực hiện chuyển đổi tiacuten hiệu analog sang tiacuten
hiệu số dạng nhị phacircn (01) như G711 GSM G729hellipỨng với mỗi thuật toaacuten coacutenhững ưu điểm riecircng đặc biệt lagrave việc tối ưu sử dụng băng thocircng trecircn đường truyềMục tiecircu cuối cugraveng lagrave caacutec thuật toaacuten đưa ra phải đảm bảo chất lượng cuộc gọi nhvagrave tiết kiệm băng thocircng nhất
G729 lagrave thuật toaacuten codec tốt nhất hiện nay trong hệ thống VoIP Với hệthống Asterisk để sử dụng thuật toaacuten nagravey cần phải mua bản quyền sử dụng vigrave đacircy
codec khocircng miễn phiacute sử dụng
10 QoS ndash Quality of Service
Caacutec yếu tố ảnh hưởng đến chất lượng của dịch vụ đối với VoIP đoacute lagrave caacuteyếu ảnh hưởng đến chất lượng tiacuten hiệu thoại
1 Độ trễ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3372
Taacutec Giả Lecirc Quốc Toagraven
33
Thoại lagrave dịch vụ mang tiacutenh thời gian thực rất cao vigrave thế trễ lagrave yếu tố ảnhhưởng rất lớn đến chất lượng dịch vụ Trễ được định nghĩa lagrave khoảng thời gian tiacute
từ luacutec tiacuten hiệu thoại đi từ miệng người noacutei tới tai người nghe Trễ lagrave yếu tố khocircnthể traacutenh khỏi độ trễ đối với mạng điện thoại truyền thống (mạng PSTN) khoảng50ms đến 70ms theo khiến nghị của ITU-T để đảm bảo chất lượng cho hệ thốVoIP thigrave độ trễ từ đầu phaacutet tới đầu thu hoặc ngược lại khocircng được vượt quaacute 150mkhi magrave độ trễ vượt quaacute 400ms đến 500ms thigrave khocircng thể chấp nhận được
Caacutec nguyecircn nhacircn gacircy ra trễ bao gồm Trễ trecircn mạng lưới trễ trecircn bộ mả hoacutea
giải matilde trễ trong quaacute trigravenh đoacuteng goacutei trễ bộ đệm trễ xử lyacute tiếng noacuteihellip2 Độ trượt(Jitter)
Nguyecircn nhacircn gacircy ra trượt lagrave goacutei tiacuten hiệu thoại trong quaacute trigravenh truyền từnguồn đến điacutech sẽ gặp phải những điều kiện khaacutec nhau trecircn mạng lưới do đoacute thườđến điacutech với những khoảng trễ khaacutec nhau Đacircy lagrave tiacutenh khocircng đồng nhất của trễ Mnguyecircn nhacircn khaacutec của trượt đối với ứng dụng PC to PC lagrave do việc sử dụng hệ điề
hagravenh phi thời gian thực caacutec goacutei tin thoại phải đợi hệ điều hagravenh xử lyacute trong nhữnkhoảng thời gian khaacutec nhau khi magrave hệ điều hagravenh đang phải xử lyacute đối với caacutec ứndụng khaacutec
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3472
Taacutec Giả Lecirc Quốc Toagraven
34
Higravenh Nguyecircn nhacircn xảy ra trượt
Để loại bỏ tiacutenh khocircng đồng nhất của trễ người ta thiết kế caacutec bộ đệm t(Jitter Buffer) tại nơi đến của caacutec goacutei tin caacutec goacutei tin đến với caacutec khoảng caacutech khaacutecnhau về thời gian được lưu tại bộ đệm rồi phaacutet khỏi bộ đệm với khoảng trễ n
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3572
Taacutec Giả Lecirc Quốc Toagraven
35
nhau Khi bộ đếm coacute kiacutech thước cagraveng lớn thigrave khả năng loại bỏ tiacutenh khocircng đồng nhấcagraveng lớn tuy nhiecircn việc sử dụng bộ đệm sẽ gacircy ra hiện tượng trễ trong ứng dụnthoại do đoacute cần coacute bagravei toaacuten cacircn đối giữa độ trễ vagrave độ trượt
Ngoagravei 2 nguyecircn nhacircn trecircn cograven một số nguyecircn nhacircn nữa ảnh hưởng đến chấtlượng thoại như độ mất goacutei giới hạn băng thocircng tiếng vọng
3 CAgraveI ĐẶT ASTERISK
1 Cagravei đặt Asterisk
1 Download vagrave bung neacuten
Để cagravei đặt Asterisk đầu tiecircn chuacuteng ta cần phải cagravei đặt hệ điều hagravenh linux trecircnmaacutey tiacutenh của migravenh Coacute thể cagravei hệ điều hagravenh Linux Fedora CentOS Redhat hoặcDebian Caacutec goacutei phần mềm phụ thuộc phải coacute trong hệ điều hagravenh Linux trước khcagravei Asterisk bao gồm
bison
gcc
kernel-source
libtermcap-devel
ncurses-devel
openssl096b
openssl-devel
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3672
Taacutec Giả Lecirc Quốc Toagraven
36
Sau khi hoagraven tất caacutec bước trecircn chuacuteng ta tiến hagravenh download phần mềmasterisk với phiecircn bản mới nhất
cd usrsrc
wgetftpftpdigiumcompubasteriskasterisk-140targz
wgetftpftpdigiumcompubasteriskasterisk-addons-140targz
wgetftpftpdigiumcompubasteriskasterisk-sounds-140targz
wgethttpftpdigiumcompubzaptelzaptel-140targz
wgethttpftpdigiumcompublibprilibpri-140targz
Việc download coacute thể nhanh hay chậm tugravey vagraveo tốc độ trecircn đường internet saukhi download hoagraven thagravenh chuacuteng ta tiến hagravenh bung neacuten caacutec goacutei ra thư mục chỉ định
tar ndashxzvf asterisk-140targz
tar ndashxzvf asterisk-addons-140targz
tar ndashxzvf asterisk-sounds-140targz
tar ndashxzvf zaptel-140targz
tar ndashxzvf libpri-140targz
Giải neacuten xong chuacuteng ta nhớ thực hiện lệnh
ln ndashs usrsrcasterisk-140 usrsrcasterisk lệnh nagravey để bảo đảm goacuteildquoaddonsrdquo được biecircn dịch đuacuteng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3772
Taacutec Giả Lecirc Quốc Toagraven
37
Bacircy giờ tới phần chuacuteng ta biecircn dịch caacutec goacutei đatilde giải neacuten ở trecircn trước tiecircn lagrave goacuteizaptel kế đến lagrave libpri sau cugraveng lagrave goacutei Asterisk
2 Cagravei đặt goacutei Zaptel
Goacutei zaptel sẽ chứa tại thư mục usrsrczaptel Đaacutenh lệnh như dưới đacircy để cagraveđặt
cd usrsrczaptel
make clean make install
Lệnh nagravey thực hiện khoảng 2 phuacutet tugravey vagraveo tốc độ maacutey tiacutenh cagravei đặt sau khicagravei đặt xong sẽ trở lại dấu nhắc lệnh vagrave hiển thị một loạt caacutec thocircng baacuteo trong đoacute một số bản tin lỗi magrave chủ yếu lagrave yecircu cầu cagravei đặt caacutec goacutei phụ thuộc đatilde liệt kecirc ở trecircnếu caacutec goacutei trecircn chưa được cagravei đặt
Goacutei zaptel nagravey chứa caacutec driver cho caacutec phần cứng kết giao tiếp với asterisk
do Digium phacircn phối vagrave một số thư viện cho việc coacute thực hiện giao tiếp với phầcứng hay khocircng
Để Asterisk coacute thể chạy cugraveng với khởi động của maacutey tiacutenh chuacuteng ta cần thựchiện lệnh
make config
Lệnh nagravey sẽ tạo ra script chegraven module zaptel vagraveo kernel vagrave chạy ztconfig vagraveoluacutec khởi động maacutey Trong Redhat script nagravey sẽ được cheacutep vagraveo etcinitd chạy ở mức 3
3 Cagravei đặt goacutei libpri
Kế đến chuacuteng ta biecircn dịch goacutei libpri tại thư mục usrsrclibpri bằng lệnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3972
Taacutec Giả Lecirc Quốc Toagraven
39
make config
3 Cagravei đặt TrixBox
1 Giới thiệu
TRIXBOX được phaacutet triển từ nhacircn của ứng dụng Asterisk được tổng hợp từmột số thagravenh phần chiacutenh được phaacutet triển bởi cộng đồng phaacutet triển nguồn mAsterisk dưới bản quyền GPL Trixbox bao gồm những thagravenh phần chiacutenh cho việcấu higravenh ứng dụng thống kecirc tigravenh trạng hoạt động hệ thống lưu trữ dự phograveng v
nhacircn lagrave hệ điều hagravenh CentOS một phiecircn bản khaacutec của Redhat tất cả kết hợp vớnhau tạo thagravenh một goacutei hoagraven chỉnh Khi cagravei goacutei nagravey vagraveo maacutey tiacutenh thigrave coacute thể sử dụngnhư một tổng đagravei PBX
Caacutec thagravenh phần chiacutenh trong goacutei TRIXBOX lagrave
Asterisk PBX Thagravenh phần chiacutenh của hệ thống Trixbox
CentOS Một phiecircn bản Linux khaacutec của Redhat hoagraven toagraven miển phiacute sửdụng Lagrave nhacircn chiacutenh cho Trixbox
SugarCRM Hệ thống quan hệ khaacutech hagraveng CRM
A2Billing ndash Lagrave thagravenh phần dagravenh cho việc xacircy dựng hệ thống điện thoạitrả trước hay cograven gọi lagrave điện thọai thẻ (Calling Card)
Flash Operator Panel Bảng điều khiển giaacutem saacutet tigravenh trạng hoạt độngcủa caacutec maacutey điện thoại trong hệ thống
Web MeetMe Control Quản lyacute triển khai hệ thống điện thoại hội nghị
FreePBX Đacircy lagrave cocircng cụ với giao diện web dagravenh cho việc cấu higravenh hệthống Asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4072
Taacutec Giả Lecirc Quốc Toagraven
40
Hệ thống Lưu trữ dự phograveng vagrave thống kecirc Lagrave thagravenh phần của TRIXBOXcung cấp caacutec cocircng cụ cần thiết cho việc bảo trigrave bảo dưỡng hệ thống
Hệ thống Apache-Php-Mysql dagravenh cho giải phaacutep Webserver của hệthống
2 DOWNLOAD VAgrave LẮP ĐẶT TRIXBOX
Địa chỉ downloadhttpsourceforgenetprojectsasteriskathome
Khi download xong file Trixboxiso Hatildey dugraveng file nagravey Burn vagraveo CD ( xinlưu yacute lagrave dugraveng Nero hoặc chương trigravenh cheacutep đĩa ưa thiacutech rồi burn vagraveo cd_romchứ khocircng phải cheacutep file đoacute vagraveo cd_rom)
Sau khi coacute CD Hatildey boot từ CD nagravey để cagravei đặt trixbox
Chuacute yacute dữ liệu trecircn đĩa cứng sẽ bị xoacutea sạch để cagravei đặt trixbox Nếu trongđĩa cứng cograven dữ liệu hatildey backup tất cả trước khi tiến hagravenh lắp đặt trixbox
Tới đacircy lần lượt caacutec magraven higravenh chỉ dẫn sẽ hiện ra vagrave cứ theo hướng dẫn magrave cagraveđặt Sau khi cagravei đặt xong chuacuteng ta dugraveng Username root vagrave password password đểđăng nhập hệ thống
3 Cấu higravenh địa chỉ IP cho card mạng
Thiết lập địa chỉ IP bằng caacutech gotilde lệnh
netconfig
Chọn OK để thiếp lập
Nếu trong mạng coacute hỗ trợ DHCP thigrave hatildey chọn mục nagravey cograven nếu khocircng hatildeynhập địa chỉ IP tĩnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4172
Taacutec Giả Lecirc Quốc Toagraven
41
IP 19216801
Netmask 2552552550
Gateway 19216893254 ngotilde ra becircn ngoagravei
Primary nameserver 19216893200 thiết lập nếu coacute
Chọn OK để chấp nhận caacutec thiết lập trecircn
Sau khi hoagraven tất hatildey lagravem cho thiết lập coacute hiệu lực bằng caacutech reset lại
maacutey tiacutenh hoặc dugraveng lệnh sau
Service network stop
Service network start
Đến đacircy xem như cagravei đặt hoagraven tất bacircy giờ để cấu higravenh được Asterisk chuacutengta vagraveo một magravey khaacutec vagrave mở Internet Explorer hoặc một trigravenh duyệt web bất kỳ
nhập vagraveohttp19216801đatilde cấu higravenh ở trecircn vagrave tiến hagravenh cấu higravenh hệ thốngvới tagravei khoảng username maint vagrave password password
4 Tổ Chức Thư Mục của Asterisk
Asterisk sử dụng nhiều thư mục trecircn hệ thống linux để quản lyacute caacutec khiacutea cạnkhaacutec nhau của hệ thống như nghi nhận bản tin thoại caacutec bản tin nhắc thoại hoặcaacutec tập tin cấu higravenh Phần nagravey sẽ trigravenh bagravey caacutec thư mục chiacutenh yếu được tạo ra tronquaacute trigravenh lắp đặt vagrave được cấu higravenh trong tập tin Asteriskconf
1 etcasterisk
Thư mục etcasterisk chứa tất cả caacutec tập tin cấu higravenh của hệ thốngAsterisk ngoại trừ tập tin Zaptelconf được đặt tại thư mục etc Phần cứnZaptel đầu tiecircn được phaacutet triển bởi Jim Dixon thuộc nhoacutem Zapata Telephony
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4272
Taacutec Giả Lecirc Quốc Toagraven
42
Group để giao tiếp giữa maacutey tiacutenh với mạng điện thoại magrave Asterisk lại sửdụng phần cứng nagravey với lyacute do đoacute magrave file cấu higravenh zaptelconf khocircng nằmtrong thư mục etcasterisk
2 usrlibasteriskmodules
Thư mục usrlibasteriskmodules chứa tất cả caacutec module cần thiết đểasterisk hoạt động Becircn trong thư mục lagrave caacutec ứng dụng khaacutec nhau caacutec codeccaacutec định dạng acircm thanh(format) vagrave caacutec kecircnh thocircng tin(channel) Theo mặc địnhAsterisk sẽ nạp tất cả caacutec module vagraveo luacutec khởi động Chuacuteng ta coacute thể khocircng cho
nạp một module bất kỳ bằng caacutech khocircng khai baacuteo sử dụng trong tập tinmodulesconf Lưu yacute khi khocircng cho nạp module thigrave phải biết chắc module đoacutekhocircng lagravem ảnh hưởng hoạt động của asterisk nếu khocircng lỗi sẽ xuất hiện
3 varlibasterisk
Thư mục varlibasterisk chứa tập tin astdb vagrave một số thư mục con Tập tinastdb định vị thocircng tin cơ sở dữ liệu của Asterisk giống như Microsoft WindowsRegistry
Caacutec thư mục con của thư mục varlibasterisk bao gồm
agi-bin
Thư mục agi-bin chứa caacutec script của người dugraveng magrave Asterisk coacute thểđịnh vị sử dụng qua caacutec ứng dụng AGI
AGI lagrave phần giao tiếp với ngocircn ngữ lập trigravenh script để thực hiện mộtsố cocircng việc của Asterisk từ becircn ngoagravei
firmware
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4372
Taacutec Giả Lecirc Quốc Toagraven
43
Thư mục firmware chứa một số phần dẻo(firmware) cho caacutec thiết bịkhaacutec nhau tương thiacutech với Asterisk Hiện tại chỉ coacute thư mục con iax chứa
firmware cho thiếy bị IAXy của Digium IAXy lagrave thiết bị ATA sử dụng giaothức IAX
images
Caacutec ứng dụng thocircng tin với caacutec kecircnh hỗ trợ ảnh images thigrave sử dụng thư mụcnagravey Nhưng hiện tại caacutec kecircnh thocircng tin hầu như khocircng hỗ trợ truyền ảnh images necircthư mục nagravey cũng hiếm khi được sử dụng Tuy nhiecircn nếu caacutec thiết bị coacute hỗ trợ ththư mục nagravey trở necircn hiệu dụng
keys
Asterisk coacute thể sử dụng hệ thống khoaacute publicprivate để xaacutec minh caacutec kết nốgiữa caacutec server Asterisk thocircng qua chữ kyacute điện tử RSA Nếu đặt một khoaacute publicvagraveo thư mục keys thigrave kết nối của server đầu becircn kia coacute thể được xaacutec minh bằn
kecircnh thocircng tin coacute hỗ trợ đối với Asterisk thigrave kecircnh giao thức IAX hỗ trợ loại xaacutecminh nagravey Một khoaacute private khocircng bao giờ cocircng bố chuacuteng ta chỉ cocircng bố khoaacute public đến với server cần nối đến sau đoacute sẽ được xaacutec minh với khoaacute private nagravey Chai khoaacute public vagrave private được lưu với đuocirci pub vagrave key đặt tại thư mục keys
mohmp3
Khi cấu higravenh Asterisk sử dụng tiacutenh năng Music on Hold tiacutenh năng hoạt độngsẽ thực hiện lấy caacutec tập tin mp3 tại thư mục mohmp3 Tập tin định dạng theo chucủa Asterisk necircn khi sử dụng caacutec file Mp3 thocircng thường cần coacute sự chuyển đổi thiacutechợp trước khi cheacutep vagraveo thư mục trecircn để sử dụng
sounds
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4472
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4572
Taacutec Giả Lecirc Quốc Toagraven
45
Thư mục tmp sử dụng để lưu trữ những thocircng tin tạm để luocircn bảo đảm khocircnxảy ra tigravenh trạng đọc vagrave viết tập tin cugraveng một luacutec Khi yecircu cầu xử lyacute tập tin chuacuteng thao taacutec trecircn thư mục tmp trước khi lưu vagraveo tập tin điacutech
Tất cả caacutec lời nhắc thoại từ phiacutea người sử dụng vagrave caacutec lời nhắc thoại sử dụ
cho thao taacutec hộp voicemail đều được chứa trong thư mục voicemail Một hộp thưthoại được tạo ra ứng với một maacutey nội bộ trong tập tin voicemailconf sẽ được tra một thư mục con tương ứng cho maacutey nội bộ đoacute tại thư mục voicemail
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4672
Taacutec Giả Lecirc Quốc Toagraven
46
5 varrun
Thư mục varrun chứa thocircng tin process ID(pid) cho tất cả caacutec tiến trigravenh đang
hoạt động trong hệ thống bao gồm cả Asterisk Lưu yacute lagrave ứng với mỗi hệ điều hagravethư mục varrun coacute thể khaacutec
6 varlogasterisk
Thư mục varlogasterisk lagrave nơi Asterisk chứa tất cả caacutec tập tin nhật kyacute haycograven gọi lagrave tập tin log Chuacuteng ta coacute thể tuỳ biến caacutec loại thocircng tin được lưu trong caacutec
tập tin log khaacutec nhau qua tập tin cấu higravenh loggerconf đặt tại thư mục etcasterisk7 varlogasteriskcdr-csv
Thư mục varlogasteriskcdr-csv được sử dụng để lưu chi tiết cuộc gọi CDRThocircng tin mặc định về chi tiết thocircng tin cuộc gọi lưu trữ trong tập tin MasterCVSnhưng thường thigrave ứng với mỗi matilde accountcode sẽ tạo một thư mục riecircng để lưu ctiết cuộc gọi cho maacutey đoacute
5 Một số lệnh thao taacutec trecircn hệ thống asterisk
Asterisk coacute hai thagravenh phần được xacircy dụng tiacutech hợp với nhau vagrave chạy songsong nhau
Asterisk Server bigravenh thường chạy ở chế độ nền(background) giống caacutec sevicestrong window
Asterisk Client ở chế độ dograveng lệnh CLI giao tiếp với Asterisk Server thực thicaacutec lệnh để kiểm tra hay xem caacutec thocircng tin của server
Để Chạy vagrave dừng Asterisk ở chế độ nền chuacuteng ta thực hiện lệnh sau
etcinitdasterisk (start|stop)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4772
Taacutec Giả Lecirc Quốc Toagraven
47
Một khi Asterisk đatilde chạy chuacuteng ta coacute thể chuyển qua chế độ CLI từ dấu nhắlệnh của linux như sau
asterisk ndashr
Khi vagraveo chế độ lệnh nếu muốn thoaacutet về lại dấu nhắc linux chuacuteng ta dugraveng lệnh
CLIgtexit
Caacutec lệnh cơ bản thực hiện tại CLIgt
Bất cứ khi nagraveo chỉnh sửa caacutec tập tin cấu higravenh chuacuteng ta đều cần phải nạp lại đcaacutec thay đổi coacute hiệu lực điều đoacute thực hiện bằng lệnh
CLIgtreload
Bậc chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 debug
CLIgt SIP debug
Tắt chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 no debug
CLIgt SIP no debug
Hiển thị caacutec trạng thaacutei thocircng tin của users peers vagravechannels của SIP hoặc IAX2
CLIgt sip show users
CLIgt sip show peers
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4872
Taacutec Giả Lecirc Quốc Toagraven
48
CLIgt sip show channels
CLIgt iax2 show peers
CLIgt iax2 show users
CLIgt iax2 show channels
Đến thời điểm nagravey coacute thể noacutei chuacuteng ta đatilde hoagraven thagravenh cagravei đặt hệ thốngAsterisk cagravei đặt xong mới lagrave bước mở đầu để cho hệ thống Asterisk hoạt động vtừng ứng dụng cụ thể chuacuteng sẽ tiếp tục thực hiện caacutec giai đoạn được xem lagrave qutrọng nhất trong việc triển khai hệ thống Asterisk đoacute lagrave giai đoạn cấu higravenh hệ thốnlecircn kế hoạch Diaplan chương cograven lại đều nhắm đến mục tiecircu nagravey
4 CẤU HIgraveNH HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Sau khi hoagraven tất phần cagravei đặt hệ thống asterisk một bước quan trọng tiếp thelagrave cấu higravenh hệ thống coacute thể noacutei đacircy lagrave bước quan trọng nhất của việc khiển khai thống đến với từng ứng dụng cụ thể Trong chương nagravey xin giới thiệu caacutei nhigraven đầtiecircn về việc cấu higravenh trước khi đi sacircu hơn ở những chương sau những gigrave giới thiệ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4972
Taacutec Giả Lecirc Quốc Toagraven
49
trong chương nagravey lagrave nền moacuteng cơ bản nhưng đủ để hiểu lagravem thế nagraveo hệ thống coacute thoạt động được nội dung chiacutenh bao gồm
+ Thao taacutec cấu higravenh trecircn hệ thống tập tin của asterisk
+ Caacutech cagravei đặt phần mềm softphone trecircn cocircng nghệ sip
+ Cấu higravenh cho hai maacutey softphone liecircn lạc với nhau
+ Cấu higravenh phaacutet thocircng điệp
+ Quay số qua Sip vagrave mạng PSTN
2 Tập Tin cấu higravenh
Tất cả caacutec file cấu higravenh cho hệ thống asterisk đều nằm tại thư mục etcasterisngoại trừ file zaptelconf cấu higravenh cho phần cứng TDM nằm tại thư mục etc caacutecthức cấu higravenh giống như tập tin ini của window vậy Caacutec nội dung sau dấu chấm phảy lagrave nội dung chuacute thiacutech trong file cấu higravenh giống như chuacute thiacutech trong ngocircn ngữ
lập trigravenh C lagrave dấu Tất cả caacutec khoảng trắng trong tập tin đều được bỏ qua khocircng yacute nghĩa trong file cấu higravenh
Trong file cấu higravenh cograven coacute hai pheacutep gaacuten rất thường xuyecircn được sử dụng pheacutep gaacuten ldquo=rdquo lagrave dugraveng cho việc gaacuten caacutec biến cograven pheacutep gaacuten ldquo=gtrdquo dugraveng cho việc gaacutencaacutec đối tượng sau đacircy lagrave một viacute dụ cho file cấu higravenh
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5072
Taacutec Giả Lecirc Quốc Toagraven
50
Đacircy lagrave caacutec dograveng chuacute thiacutech
[section]
Key=value gaacuten giaacute trị cho biến
[section2]
Key=gtobject Gaacuten giaacute trị cho đối tượng
Cuacute phaacutep thực hiện giống nhau cho tất cả caacutec file cấu higravenh nhưng coacute vagravei kiểukhaacutec nhau cho mỗi file cầu higravenh dựa vagraveo thức caacutech hoạt động của chuacuteng
3 Caacutec kiểu ảnh hưởng trong tập cấu higravenh
Coacute ba kiểu caacutech thức hoạt động của tập tin cấu higravenh như sau
Kiểu Caacutech hoạt động File cầu higravenh Viacute dụ
S i m p l eGroup
Coacute hiệu lực trecircntừng dograveng trongfile
Extensionconf
Exten=gt4001dial(sip400)
O p t i o ninheritance
Dograveng khai baacuteosau thừa kếnhững thocircng sốkhai baacuteo trước
Zapataconf [channels]
Context=From_PSTN
Signalling=fxs_ks
Group=1Channel=gt1
C o m p l e xEntity
Mỗi entity nhậnmột ngữ cảnh
sipconf
iaxconf
[cisco]
Type=friend
Secret=12345
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5172
Taacutec Giả Lecirc Quốc Toagraven
51
Host=192168165
Context=NoiBo
[xten]
Type=friend
Secret=6789
Host=dynamic
Context=NoiBo
1 Simple Group
Đacircy lagrave kiểu cấu higravenh đơn giản nhất thường sử dụng trong caacutec fileextentionconf meetmeconf voicemailconf tương ứng với mỗi dograveng khai baacuteo lagravemột đối tượng coacute yacute nghĩa trecircn dograveng đoacute
Viacute dụ
Extentionconf [section]
object1=gt op1op2op3
object2=gt op1bop2bop3b
Trong viacute dụ trecircn mỗi dograveng tương ứng với caacutec toaacuten tử khaacutec nhau object1 coacute caacutectoaacuten từ op1 op2 op3 trong khi đoacute object2 lại coacute caacutec toaacuten từ op1b op2b op3b
2 Option inheritance
Đacircy lagrave cấu higravenh kiểu thừa kế thường được cấu higravenh trong caacutec file zapataconfagentconf với kiểu cấu higravenh nagravey thigrave caacutec dograveng phiacutea dưới coacute thể thừa kế caacutec thocircng sdograveng phiacutea trecircn tương ứng với mỗi section caacutec dograveng phiacutea dưới coacute thể thay đổi caacutecthocircng số cho tươngứng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5272
Taacutec Giả Lecirc Quốc Toagraven
52
Viacute dụ
Extentionconf
[section]
Op1=bas
Op2=adv
Object1=gt1
Op1=int
Object1=gt2
Với cấu higravenh trecircn coacute thể giải thiacutech như sau object1=gt1 thừa hưởng hai thocircngsố ở phiacutea trecircn đoacute lagrave op1=bas vagrave op2=adv trong khi đoacute đối với object1=gt2 với thocircngsố op1=int được khai baacuteo lại necircn object1=gt2 được thừa kế từ hai thocircng số op1=invagrave op2=adv
3 Complex Entity
Với cấu kiểu nagravey được tổ chức thagravenh nhiều entity ứng với mỗi entity coacute nhiềthocircng số được khai baacuteo mỗi entity ở đacircy chiacutenh lagrave caacutec section để khai baacuteo caacutec kecircnhthocircng tin Cấu higravenh thường được sử dụng trong caacutec file iaxconf sipconf
Viacute dụ
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5372
Taacutec Giả Lecirc Quốc Toagraven
53
[entity1]
Op1=value1
Op2=value2
[entity2]
Op1=value3
Op2=value4
Entity1 coacute caacutec giaacute trị value1 vagrave value2 cho thocircng số op1 vagrave op2 trong khi đoacute
cũng lagrave thocircng số op1 vagrave op 2 nhưng coacute caacutec giaacute trị khaacutec lagrave value3 vagrave value4 choentity2
4 Cấu higravenh giao tiếp với mạng PSTN
1 Ngữ cảnh kết nối
Để kết nối với mạng PSTN chuacuteng ta cần phải coacute một card TDM với Cổng
FXO vagrave một đường dacircy điện thoại hoặc coacute thể lagrave một tổng đagravei nội bộ PBX Cnhiều nhagrave sản xuất phần cứng khaacutec nhau nhưng trong phần cấu higravenh dưới dacircy lagrave cấhigravenh cho card zapata TDM01B của digium (card nagravey hiện nay giaacute baacuten khoảng175$)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1872
Taacutec Giả Lecirc Quốc Toagraven
18
chức năng điện thoại hội nghị thiết lập cho nhiều maacutey điện thoại cugraveng noacutei chuyệvới nhau
5 Chức năng Phacircn phối cuộc gọi tự động ACD
Phacircn phối cuộc gọi với hagraveng đợi
ACD(Automatic Call Distribution) Phacircn phối cuộc gọi tự động
Đacircy lagrave chức năng ứng dụng cho nhu cầu chăm soacutec khaacutech hagraveng hay nhận phảnhổi từ phiacutea khaacutech hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1972
Taacutec Giả Lecirc Quốc Toagraven
19
Cocircng ty coacute khả năng tiếp nhận cugraveng một luacutec 10 cuộc gọi như thế cuộc gọi th11 gọi đến thigrave hệ thống giải quyết như thế nagraveo Bigravenh thường thigrave sẽ nghe tiacuten hiệ
bận nhưng với chức năng phacircn phối cuộc gọi sẽ đưa thuecirc bao đoacute vagraveo hagraveng đợi đchờ trả lời trong khi chờ trả lời cuộc gọi thuecirc bao coacute thể nghe những bagravei haacutet hay dasterisk cung cấp trong luacutec nagravey nếu 1 trong mười số điện thoại trở về trạng thaacutei rthigrave cuộc gọi đang chờ sẽ được trả lời Giống như chức năng của dịch vụ 1080 ha116 của Bưu Điện Thagravenh Phố vậy
2 CAacuteC KHAacuteI NIỆM TRONG HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Trong chương nagravey sẽ giải thiacutech rotilde caacutec khaacutei niệm cơ bản liecircn quan đến hệ thốnasterisk cung cấp những kiến thức nền tảng những khaacutei niệm cần thiết để thiếttriển khai xacircy dựng hệ thống điện thoại với Asterisk
2 PBX - Private Branch Exchange
PBX hay cograven gọi lagrave PABX - Private Automatic Branch Exchange lagrave hệ thốngtổng đagravei nội bộ được đặt tại nhagrave thuecirc bao từ Automatic ở đacircy muốn noacutei đến lagrave hthống tổng đagravei điện tử tự động nhưng hiện nay đa số lagrave tổng đagravei PBX điện tử tđộng necircn từ trecircn thực sự khocircng cograven cần thiết nữa
PBX với mục tiecircu chia sẻ nhiều thuecirc bao nội bộ gọi ra thế giới becircn ngoagraveithocircng qua một vagravei đường trung kế hay noacutei một caacutech khaacutec PBX lagrave hệ thống trungchuyển giữa caacutec đường dacircy điện thoại becircn ngoagravei từ cocircng ty điện thoại vagrave maacutey điệthoại nội bộ trong tổng đagravei PBX Vigrave thế necircn số lượng maacutey điện thoại nội bộ luocircnhiều hơn số đường dacircy nối đến PBX từ becircn ngoagravei
wwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2072
Taacutec Giả Lecirc Quốc Toagraven
20
PBX thực hiện chuyển mạch cuộc gọi caacutec maacutey điện thoại nội bộ với nhau vvới caacutec maacutey điện thoại becircn ngoagravei thocircng qua đường trung kế Đồng thời thực hiệ
chuyển mạch caacutec cuộc gọi điện thoại từ becircn ngoagravei vagraveo caacutec maacutey điện thoại nội bộNgoagravei việc chuyển mạch cuộc gọi PBX cung cấp nhiều tiacutenh năng sử dụng
cho nhiều mục điacutech khaacutec nhau của khaacutech hagraveng magrave bản thacircn caacutec đường dacircy điệnthoại từ cocircng ty điện thoại kết nối đến khocircng thể thực hiện được caacutec tiacutenh năng ntương taacutec thoại(IVR) Voicemail phacircn phối cuộc gọi tự động(ADC)hellip
Hiện nay với việc phaacutet triển mạnh mẽ của cocircng nghệ VoIP chuacuteng ta cograven coacutethecircm thuật ngữ IP PBX Đacircy lagrave hệ thống chuyển mạch PBX với cocircng nghệ Voip
3 VOIP - Voice Over Internet Protocol
Voice over Internet Protocol (VoIP) lagrave một cocircng nghệ cho pheacutep truyền thoạisử dụng giao thức mạng IP trecircn cơ sở hạ tầng sẵn coacute của mạng internet Voip lagrave mtrong những cocircng nghệ viễn thocircng đang được quan tacircm nhất hiện nay khocircng chỉ đố
với nhagrave khai thaacutec caacutec nhagrave sản xuất magrave cograven cả với người sử dụng dịch vụVoip coacute thể vừa thực hiện mọi loại cuộc gọi như trecircn mạng điện thoại kecircn
truyền thống (PSTN) đồng thời truyền dữ liệu trecircn cơ sở mạng truyền dữ liệu Dcaacutec ưu điểm về giaacute thagravenh dịch vụ vagrave sự tiacutech hợp nhiều loại higravenh dịch vụ necircn voihiện nay được triển khai một caacutec rộng ratildei
Dịch vụ điện thoại voip lagrave dịch vụ ứng dụng giao thức IP nguyecircn tắc củaVoIP bao gồm việc số hoaacute tiacuten hiệu tiếng noacutei thực hiện việc neacuten tiacuten hiệu số chia nhcaacutec goacutei nếu cần vagrave truyền goacutei tin nagravey qua mạng tới nơi nhận caacutec goacutei tin nagravey đượraacutep lại theo đuacuteng thứ tự của bản tin giải matilde tiacuten hiệu tương tự phục hồi lại tiếng n ban đầu
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2172
Taacutec Giả Lecirc Quốc Toagraven
21
Caacutec cuộc gọi trong VoIP dựa trecircn cơ sở sử dụng kết hợp cả chuyển mạchkecircnh vagrave chuyển mạch goacutei Trong mỗi loại chuyển mạch đều coacute ưu nhược điể
riecircng của noacute Trong kỹ thuật chuyển mạch kecircnh giagravenh riecircng cho một kecircnh truyềngiữa hai thiết bị đầu cuối thocircng qua caacutec node chuyển mạch trung gian Trongchuyển mạch kecircnh tốc độ truyền dẫn luocircn luocircn cố định(nghĩa lagrave băng thocircng khocircnđổi) với mạng điện thoại PSTN tốc độ nagravey lagrave 64kbps truyền dẫn trong chuyểmạch kecircnh coacute độ trễ nhỏ
Trong chuyển mạch goacutei caacutec bản tin được chia thagravenh caacutec goacutei nhỏ gọi lagrave caacutec
goacutei nguyecircn tắc hoạt động của noacute lagrave sử dụng hệ thống lưu trữ vagrave chuyển tiếp caacutec gtin trong nuacutet mạng Đối với chuyển mạch goacutei khocircng tồn tại khaacutei niệm kecircnh riecircng băng thocircng khocircng cố định coacute nghĩa lagrave coacute thể thay đổi tốc độ truyền kỹ thuật chuyểmạch goacutei phải chịu độ trễ lớn vigrave trong chuyển mạch goacutei khocircng quy định thời giancho mỗi goacutei dữ liệu tới điacutech mỗi goacutei coacute thể đi bằng nhiều con đường khaacutec nhau đtới điacutech chuyển mạch goacutei thiacutech hợp cho việc truyền dữ liệu vigrave trong mạng truyền dliệu khocircng đogravei hỏi về thời gian thực như thoại để sử dụng ưu điểm của mỗi lo
chuyển mạch trecircn thigrave trong voip kết hợp sử dụng cả hai loại chuyển mạch kecircnh vchuyển mạch goacutei
4 PSTN ndash Public Switched Telephone Network
PSTN lagrave mạng chuyển mạch điện thoại cocircng cộng hay noacutei caacutech khaacutec lagrave mạngkết nối tất cả caacutec hệ thống tổng đagravei chuyển mạch-mạch
Để hiểu rotilde hơn hatildey xem xeacutet mạng PSTN với mạng Internet về khiacutea cạnhchuyển thoại trecircn đoacute Chuyển mạch mạch muốn thực hiện cuộc gọi giữa hai thu bao thigrave hệ thống phải giagravenh riecircng một kecircnh truyền 64kbps để chuyển tải tiacuten hiệthoại trecircn đoacute Cograven cuộc gọi điện thoại trecircn mạng Internet thigrave tiacuten hiệu thoại đượđoacuteng goacutei vagrave chuyển đi trecircn cugraveng kecircnh truyền với nhiều dịch vụ khaacutec Vigrave lẽ đoacute chấlượng cuộc gọi trecircn mạng PSTN bao giờ cũng tốt hơn trecircn mạng Internet nhưng đổ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2272
Taacutec Giả Lecirc Quốc Toagraven
22
lại chi phiacute lại đắc hơn rất nhiều đặc biệt lagrave caacutec cuộc gọi quốc tế necircn phải cần nhắc kỹ khi sử dụng
PSTN được phaacutet triển trecircn chuẩn ITU(International TelecommunicationUnion) cograven mạng Internet được phaacutet triển trecircn chuẩn IETF(Internet EngineeringTask Force) cả hai mạng trecircn đều sử dụng địa chỉ để định tuyến cuộc gọi PSTN sdụng caacutec con số điện thoại để chuyển mạch cuộc gọi giữa caacutec tổng đagravei điện thotrong khi đoacute trecircn mạng Internet địa chỉ IP sẽ được sử dụng để định tuyến caacutec goacutethoại
5 TDM ndash Time Division Multiplexing
Lagrave kỹ thuật gheacutep kecircnh phacircn chia thời gian nhiều tiacuten hiệu coacute thể truyền đồngthời trecircn một đường truyền TDM được sử dụng chuyển thoại trong hệ thống mạPSTN Coacute hai chuẩn gheacutep kecircnh TDM cơ bản lagrave E1 với 30 kecircnh thoại trecircn mộtkhung tốc độ 2Mbps vagrave T1 với 24 kecircnh thoại tốc độ 15Mbps
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2372
Taacutec Giả Lecirc Quốc Toagraven
23
Higravenh Minh họa gheacutep kecircnh phacircn chia theo thời gian
6 Caacutec higravenh thức baacuteo hiệu giao tiếp TDM
1 FXO vagrave FXS
FXO (Foreign Exchange Office) lagrave thiết bị nhận tiacuten hiệu từ tổng đagravei gửi đếnnhư dograveng chuocircng tiacuten hiệu nhấc gaacutec maacutey tiacuten hiệu mời quay số gửi vagrave nhận tiacuten hiệthoạihellip FXO giống như maacutey Fax hay modem dial-up 56k vậy Dugraveng để kết nối vớ
đường dacircy điện thoại
FXS (Foreign Exchange Station) lagrave thiết bị tại nơi cung cấp đường dacircy điệnthoại thiết bị FXS sẽ cung cấp tiacuten hiệu mời quay số(dialtone) dograveng chuocircng hồi acircmchuocircng(ring tone) Trong đường dacircy Analog FXS cung cấp dograveng chuocircng vagrave điện aacutepcho điện thoại hoạt động viacute dụ FXS cung cấp điện aacutep -48VDC đến maacutey điện tho
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2472
Taacutec Giả Lecirc Quốc Toagraven
24
Analog trong suốt thời gian đagravem thoại vagrave cung cấp 90VAC(20hz) để phaacutet điện aacuteprung chuocircng Thiết bị FXS phaacutet cograven thiết bị FXO nhận
Card TDM sử dụng trong hệ thống asterisk thường tiacutech hợp vừa thiết bị FXOvừa lagrave thiết bị FXS(Giống bộ ATA) FXO để kết nối với đường dacircy điện thoại cograveFXS dugraveng để kết nối với maacutey điện thoại analog thocircng thường dugraveng để chuyển mạcuộc gọi TDM qua hệ thống asterisk(Xem thecircm trong phần cấu higravenh cho kecircnhTDM)
Toacutem lại cần nắm
FXS được kết nối với FXO giống với đường dacircy điện thoại nối với maacuteyđiện thoại
FXS cung cấp nguồn cho điện thoại FXO(điện thoại Analog)
Higravenh a) Maacutey điện thoại vai trograve FXO kết nối với FXS(PSTN) Higravenh b) PBXkết nối với FXO vagrave FXS Higravenh c) ATA đoacuteng vai trograve như FXS để kết nối với maacuteyđiện thoại vai trograve FXO
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2572
Taacutec Giả Lecirc Quốc Toagraven
25
2 Baacuteo hiệu Analog giữa đầu cuối vagrave tổng đagravei
Khi chuacuteng ta nhấc mấy điện thoại để gọi thigrave nghe tiacuten hiệu mời quay số kh
cuộc gọi gọi đầu becircn kia bị bận thigrave chuacuteng ta nghe tiacuten hiệu bận(busy tone) caacutec loạtiacuten hiệu như vậy gọi lagrave caacutec tiacuten hiệu baacuteo hiệu analog Caacutec tiacuten hiệu như Mời quay sốtiacuten hiệu bận rung chuocircng trạng thaacutei nhấc gaacutec maacutey Caacutec loại tiacuten hiệu trecircn được trađổi giữa thiết bị FXO vagrave FXS
Coacute nhiều phương thức baacuteo hiệu khaacutec nhau ứng với từng nơi sử dụng vigrave thếtại nơi kết nối với đường dacircy điện thoại cần xem xeacutet họ đang sử dụng phương th
baacuteo hiệu gigrave từ đoacute chuacuteng ta khai thaacutec loại tiacuten hiệu baacuteo hiệu cho thiacutech hợp caacutec phương thức baacuteo hiệu như Loop Start Ground Start Một minh họa cho việc sửdụng sai phương thức baacuteo hiệu lagrave khi chuacuteng ta khai baacuteo phương thức baacuteo hiệu giữhệ thống Asterisk vagrave đường dacircy điện thoại khaacutec nhau thigrave dẫn đến Asterisk sẽ khocircnnhận biết được tiacuten hiệu gaacutec maacutey điều nagravey sẽ lagravem cho asterisk khocircng baacuteo giờ giải tỏđược cuộc gọi để thực hiện cuộc gọi mới
3 Baacuteo hiệu giữa caacutec tổng đagravei
SS7 hệ thống baacuteo hiệu số 7 được phaacutet triển bởi ATampT vagrave ITU lagrave hệ thống baacuteo hiệu chuyển caacutec cuộc gọi giữa caacutec tổng đagravei trong mạng PSTN Trong hệ thốn baacuteo hiệu số 7 tiacuten hiệu chuyển tải trecircn đường trung kế kết nối giữa hai tổng đagravei gồcoacute hai mạch riecircng một cho thoại vagrave một cho baacuteo hiệu như vậy thoại vagrave baacuteo hiệu cthể chuyển trecircn hai kecircnh vật lyacute khaacutec nhau
7 Baacuteo Hiệu trecircn mạng điện thoại VoIP
1 SIP Session Initiation Prorocol
Sip lagrave giao thức Internet dagravenh cho baacuteo hiệu VoIP được phaacutet triển bởi IETFcung cấp vagravei chức năng giống hệ thống baacuteo hiệu số 7 nhưng dựa trecircn nền IP Mộchức năng giống baacuteo hiệu số 7 đoacute lagrave baacuteo hiệu vagrave thoại chuyển tải trecircn hai kecircnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2672
Taacutec Giả Lecirc Quốc Toagraven
26
riecircng Giao thức SIP thực hiện chức năng thiết lập vagrave baacuteo hiệu cuộc gọi khi noacutei đế baacuteo hiệu cuộc gọi lagrave chỉ định caacutec tiacuten hiệu baacuteo hiệu như tiacuten hiệu mời quay số tiacutehiệu bậnhellip
2 Proxy server
Mặc dầu hai thiết bị SIP coacute thể liecircn lạc trực tiếp với nhau để khởi tạo cuộgọi nhưng trong giao thức SIP cograven coacute chức năng Proxy để linh hoạt hơn trong thiếlập cuộc gọi Proxy Server sẽ lagravem nhiệm vụ ghi nhận tất cả caacutec số điện thoại đư phiacutea client đăng kyacute đến qua bản tin ldquoRegistrationrdquo Khi một client khaacutec thực hiện
cuộc gọi thigrave thực sự Client đoacute khocircng biết số điện thoại cần gọi đang ở đacircu necircn thocircnqua Proxy server để tigravem kiếm thiết lập cuộc gọi
+
Higravenh Đăng kyacute từ Client đến SIP Proxy Với Giao thức SIP đường baacuteo hiệu vagravethoại riecircng
3 RTP vaacute NAT
Caacutec cuộc gọi trecircn Internet với giao thức SIP được chia thagravenh caacutec goacutei thoại vagraveđược chuyển qua giao thức RTP(Real Time Protocol) RTP lagrave giao thức khocircng chỉthực hiện chuyển caacutec goacutei thoại qua Internet magrave cograven coacute cả video nữa Một cuộc gọ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2772
Taacutec Giả Lecirc Quốc Toagraven
27
thocircng thường coacute hai hướng thocircng tin lagrave nhận vagrave phaacutet RTP lagravem việc chuyển caacutec goacutedữ liệu thoại cũng trecircn hai hướng
NAT Network Address Translators lagrave một trở ngại lớn trong giao thức RTPMạng sử dụng NAT lagrave một mạng chia sẻ nhiều địa chỉ IP nội bộ với một địa chỉ ICocircng cộng để kết nối với thế giới becircn ngoagravei NAT dugraveng để chia sẻ nhiều maacutey tiacutentrong mạng LAN nội bộ sử dụng được Internet nhưng cũng chiacutenh vigrave thế magrave caacutec maacutetiacutenh nội bộ gặp khoacute khăn trong việc thực hiện cuộc gọi VoIP qua Internet Đoacute chiacutenhlagrave vấn để trở ngại khi truyền thoại qua giao thức RTP
Higravenh Minh họa hoạt động của NAT
Trong Giao thức RTP như chuacuteng ta đatilde biết đoacute lagrave thoại được chuyển trecircn haiđường khaacutec nhau lagrave đường phaacutet vagrave đường thu Vấn đề NAT nằm ở chỗ tiacuten hiệthoại từ becircn ngoagravei vagraveo becircn trong qua giao thức RTP khocircng thực hiện được cograven chiềungược lại thigrave thực hiện tốt Hay noacutei caacutech khaacutec vấn đề NAT lagravem cho caacutec cuộc gọi t
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2872
Taacutec Giả Lecirc Quốc Toagraven
28
Internet đagravem thoại vagraveo caacutec maacutey nội bộ qua NAT thigrave khocircng nghe được cograven trongtrường hợp caacutec cuộc gọi từ caacutec maacutey nội bộ ra caacutec maacutey internet thigrave nghe tốt
Vấn đề NAT trecircn được giải quyết trong Asterisk bằng việc khai baacuteo thocircng số NAT=yes trong cấu higravenh kecircnh giao thức SIP
4 IAX ndash Inter Asterisk eXchange
IAX lagrave giao thức baacuteo hiệu Voip được phaacutet triển bởi taacutec giả của phần mềmAsterisk để khắc phục những hạn chế trong giao thức SIP Khocircng giống như giathức SIP chuyển tải thoại vagrave baacuteo hiệu trecircn hai kecircnh khaacutec nhau (out of band) IAXchuyển tải thoại vagrave baacuteo hiệu trecircn cugraveng một kecircnh(in band) IAX giải quyết được vấđề NAT đề cập trecircn phần giao thức SIP Mặc khaacutec IAX lagrave giao thức tối ưu trongviệc sử dụng băng thocircng cho pheacutep nhiều goacutei dữ liệu thoại trecircn cugraveng một IP headecơ chế chuyển tải nhiều cuộc gọi trecircn cugraveng một goacutei IP được gọi lagrave trung kế(Trunk)
Coacute thể giải thiacutech thecircm cơ chế trung kế như sau Giả sử Tocirci cần gửi 5 bức thtới người bạn của Tocirci Tocirci sẽ coacute hai higravenh thức để thực hiện thứ nhất lagrave mỗi bức tTocirci bỏ vagraveo một phong bigrave vậy tổng cộng tocirci phải sử dụng 5 phong bigrave để gửi đi 5 bứthư Caacutech thứ hai lagrave Tocirci bỏ 5 bức thư vagraveo 1 phong bigrave vagrave gửi đi vậy tổng cộng Tocircchỉ tốn 1 phong bigrave Qua phacircn tiacutech trecircn rotilde ragraveng việc 5 bức thư vagraveo một phong bigrave sẽtiết kiệm hơn so với 5 bức thư với 5 phong biacute Cơ chế trecircn cũng giống như nhiềcuộc gọi được đoacuteng thagravenh goacutei vagrave chuyển đi trecircn đường trung kế
Toacutem lại IAX lagrave giao thức dagravenh cho VoIP mới nhất cho đến thời điểm nagravey vớinhiều ưu điểm hấp dẫn như
+ Tối thiểu sử dụng băng thocircng
+ Trong suốt với NAT
+ Hiệu quả với cơ chế trung kế
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2972
Taacutec Giả Lecirc Quốc Toagraven
29
8 Thiết Bị VoIP
1 Voip Phone
Đacircy lagrave thiết bị phần cứng kết nối với mạng VoIP giống như maacutey điện thoại đ bagraven thocircng thường nhưng dagravenh cho VoIP cần phải thực hiện cấu higravenh trước khi sửdụng
Lưu yacute một số tiacutenh năng khi thực hiện mua thiết bị điện thoại VoIP
+ Low bandwidth hỗ trợ Codec nagraveo G729 lagrave tốt nhất hiện nay
+ Web Interface Phải coacute giao tiếp thiết lập cấu higravenh thacircn thiện dễ sử dụng
+ Audio Interface Coacute speaker phone hay khocircng
Giaacute thagravenh của điện thoại voip IP đắc hơn điện thoại thocircng thường giaacute khoảntrecircn dưới 100$ một caacutei
Higravenh Maacutey Điện Thoại VoIP
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3072
Taacutec Giả Lecirc Quốc Toagraven
30
2 Softphone
Lagrave một phần mềm được cagravei trecircn maacutey tiacutenh thực hiện tất cả caacutec chức năng giốn
như thiết bị điện thoại Voip cần lưu yacute khi sử dụng softphone lagrave maacutey tiacutenh phải ccard acircm thanh headphone vagrave firewall khocircng bị khoacutea
Sử dụng softphone với hệ thống Asterisk necircn dugraveng softphone với cocircng nghệgiao thức mới dagravenh cho Asterisk đoacute lagrave IAX
Higravenh Điện Thoại Softphone
3 Card giao tiếp với PSTN
Muốn cho pheacutep caacutec maacutey điện thoại nội bộ trong hệ thống Asterisk kết nối vthực hiện cuộc gọi với mạng PSTN chuacuteng ta cần phải coacute thiết bị phần cứng tươthiacutech Thiết bị phần cứng sử dụng cho hệ thống Asterisk do chiacutenh taacutec giả lập cocircng
Digium phacircn phối đacircy cũng chiacutenh lagrave yacute tưởng lớn trong việc phacircn phối phần mềmAsterisk lagrave hệ thống nguồn mở sử dụng miễn phiacute
Thiết bị phần cứng thường kyacute hiệu bắt đầu bằng cụm từ TDMxyB trong đoacute lagrave số lượng port FXS y lagrave số lượng port FXO giaacute trị tối đa của x vagrave y lagrave 4 viacute dụcard TDM22B coacute nghĩa lagrave coacute 2 fort FXS vagrave 2 port FXO
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3172
Taacutec Giả Lecirc Quốc Toagraven
31
Higravenh Card TDM22B gồm 4 port 2 FXS vagrave 2 FXO
4 ATA Analog Telephone Adaptors
ATA lagrave thiết bị kết nối với điện thoại Analog thocircng thường đến mạng VoIPmột thiết bị ATA gồm coacute hai loại port RJ-11 để kết nối với maacutey điện thoại analo
thocircng thường cograven RJ-45 để kết nối với mạng VoIP
ATA thực sự lagrave thiết bị FXS chuyển đổi tiacuten hiệu Analog sang tiacuten hiệu số sửdụng cho mạng VoIP để tận dụng maacutey điện thoại Analog necircn trang bị thiết bị ATAthay vigrave phải trang bị điện thoại VoIP
Thiết bị ATA sử dụng với giao thức IAX được Digium phacircn phối lagrave thiết bịATA được sử dụng rộng ratildei với Asterisk coacute tecircn gọi lagrave IAXy
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3272
Taacutec Giả Lecirc Quốc Toagraven
32
Higravenh Thiết bị ATA
9 Codecs
Thuật Toaacuten codecs(CompressorDe-compressor) lagrave một tập caacutec quy luật đượcsử dụng để chuyển đổi caacutec tiacuten hiệu thoại dạng Analog sang tiacuten hiệu số vagrave ngược lạ
Coacute nhiều thuật toaacuten codec để thực hiện chuyển đổi tiacuten hiệu analog sang tiacuten
hiệu số dạng nhị phacircn (01) như G711 GSM G729hellipỨng với mỗi thuật toaacuten coacutenhững ưu điểm riecircng đặc biệt lagrave việc tối ưu sử dụng băng thocircng trecircn đường truyềMục tiecircu cuối cugraveng lagrave caacutec thuật toaacuten đưa ra phải đảm bảo chất lượng cuộc gọi nhvagrave tiết kiệm băng thocircng nhất
G729 lagrave thuật toaacuten codec tốt nhất hiện nay trong hệ thống VoIP Với hệthống Asterisk để sử dụng thuật toaacuten nagravey cần phải mua bản quyền sử dụng vigrave đacircy
codec khocircng miễn phiacute sử dụng
10 QoS ndash Quality of Service
Caacutec yếu tố ảnh hưởng đến chất lượng của dịch vụ đối với VoIP đoacute lagrave caacuteyếu ảnh hưởng đến chất lượng tiacuten hiệu thoại
1 Độ trễ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3372
Taacutec Giả Lecirc Quốc Toagraven
33
Thoại lagrave dịch vụ mang tiacutenh thời gian thực rất cao vigrave thế trễ lagrave yếu tố ảnhhưởng rất lớn đến chất lượng dịch vụ Trễ được định nghĩa lagrave khoảng thời gian tiacute
từ luacutec tiacuten hiệu thoại đi từ miệng người noacutei tới tai người nghe Trễ lagrave yếu tố khocircnthể traacutenh khỏi độ trễ đối với mạng điện thoại truyền thống (mạng PSTN) khoảng50ms đến 70ms theo khiến nghị của ITU-T để đảm bảo chất lượng cho hệ thốVoIP thigrave độ trễ từ đầu phaacutet tới đầu thu hoặc ngược lại khocircng được vượt quaacute 150mkhi magrave độ trễ vượt quaacute 400ms đến 500ms thigrave khocircng thể chấp nhận được
Caacutec nguyecircn nhacircn gacircy ra trễ bao gồm Trễ trecircn mạng lưới trễ trecircn bộ mả hoacutea
giải matilde trễ trong quaacute trigravenh đoacuteng goacutei trễ bộ đệm trễ xử lyacute tiếng noacuteihellip2 Độ trượt(Jitter)
Nguyecircn nhacircn gacircy ra trượt lagrave goacutei tiacuten hiệu thoại trong quaacute trigravenh truyền từnguồn đến điacutech sẽ gặp phải những điều kiện khaacutec nhau trecircn mạng lưới do đoacute thườđến điacutech với những khoảng trễ khaacutec nhau Đacircy lagrave tiacutenh khocircng đồng nhất của trễ Mnguyecircn nhacircn khaacutec của trượt đối với ứng dụng PC to PC lagrave do việc sử dụng hệ điề
hagravenh phi thời gian thực caacutec goacutei tin thoại phải đợi hệ điều hagravenh xử lyacute trong nhữnkhoảng thời gian khaacutec nhau khi magrave hệ điều hagravenh đang phải xử lyacute đối với caacutec ứndụng khaacutec
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3472
Taacutec Giả Lecirc Quốc Toagraven
34
Higravenh Nguyecircn nhacircn xảy ra trượt
Để loại bỏ tiacutenh khocircng đồng nhất của trễ người ta thiết kế caacutec bộ đệm t(Jitter Buffer) tại nơi đến của caacutec goacutei tin caacutec goacutei tin đến với caacutec khoảng caacutech khaacutecnhau về thời gian được lưu tại bộ đệm rồi phaacutet khỏi bộ đệm với khoảng trễ n
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3572
Taacutec Giả Lecirc Quốc Toagraven
35
nhau Khi bộ đếm coacute kiacutech thước cagraveng lớn thigrave khả năng loại bỏ tiacutenh khocircng đồng nhấcagraveng lớn tuy nhiecircn việc sử dụng bộ đệm sẽ gacircy ra hiện tượng trễ trong ứng dụnthoại do đoacute cần coacute bagravei toaacuten cacircn đối giữa độ trễ vagrave độ trượt
Ngoagravei 2 nguyecircn nhacircn trecircn cograven một số nguyecircn nhacircn nữa ảnh hưởng đến chấtlượng thoại như độ mất goacutei giới hạn băng thocircng tiếng vọng
3 CAgraveI ĐẶT ASTERISK
1 Cagravei đặt Asterisk
1 Download vagrave bung neacuten
Để cagravei đặt Asterisk đầu tiecircn chuacuteng ta cần phải cagravei đặt hệ điều hagravenh linux trecircnmaacutey tiacutenh của migravenh Coacute thể cagravei hệ điều hagravenh Linux Fedora CentOS Redhat hoặcDebian Caacutec goacutei phần mềm phụ thuộc phải coacute trong hệ điều hagravenh Linux trước khcagravei Asterisk bao gồm
bison
gcc
kernel-source
libtermcap-devel
ncurses-devel
openssl096b
openssl-devel
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3672
Taacutec Giả Lecirc Quốc Toagraven
36
Sau khi hoagraven tất caacutec bước trecircn chuacuteng ta tiến hagravenh download phần mềmasterisk với phiecircn bản mới nhất
cd usrsrc
wgetftpftpdigiumcompubasteriskasterisk-140targz
wgetftpftpdigiumcompubasteriskasterisk-addons-140targz
wgetftpftpdigiumcompubasteriskasterisk-sounds-140targz
wgethttpftpdigiumcompubzaptelzaptel-140targz
wgethttpftpdigiumcompublibprilibpri-140targz
Việc download coacute thể nhanh hay chậm tugravey vagraveo tốc độ trecircn đường internet saukhi download hoagraven thagravenh chuacuteng ta tiến hagravenh bung neacuten caacutec goacutei ra thư mục chỉ định
tar ndashxzvf asterisk-140targz
tar ndashxzvf asterisk-addons-140targz
tar ndashxzvf asterisk-sounds-140targz
tar ndashxzvf zaptel-140targz
tar ndashxzvf libpri-140targz
Giải neacuten xong chuacuteng ta nhớ thực hiện lệnh
ln ndashs usrsrcasterisk-140 usrsrcasterisk lệnh nagravey để bảo đảm goacuteildquoaddonsrdquo được biecircn dịch đuacuteng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3772
Taacutec Giả Lecirc Quốc Toagraven
37
Bacircy giờ tới phần chuacuteng ta biecircn dịch caacutec goacutei đatilde giải neacuten ở trecircn trước tiecircn lagrave goacuteizaptel kế đến lagrave libpri sau cugraveng lagrave goacutei Asterisk
2 Cagravei đặt goacutei Zaptel
Goacutei zaptel sẽ chứa tại thư mục usrsrczaptel Đaacutenh lệnh như dưới đacircy để cagraveđặt
cd usrsrczaptel
make clean make install
Lệnh nagravey thực hiện khoảng 2 phuacutet tugravey vagraveo tốc độ maacutey tiacutenh cagravei đặt sau khicagravei đặt xong sẽ trở lại dấu nhắc lệnh vagrave hiển thị một loạt caacutec thocircng baacuteo trong đoacute một số bản tin lỗi magrave chủ yếu lagrave yecircu cầu cagravei đặt caacutec goacutei phụ thuộc đatilde liệt kecirc ở trecircnếu caacutec goacutei trecircn chưa được cagravei đặt
Goacutei zaptel nagravey chứa caacutec driver cho caacutec phần cứng kết giao tiếp với asterisk
do Digium phacircn phối vagrave một số thư viện cho việc coacute thực hiện giao tiếp với phầcứng hay khocircng
Để Asterisk coacute thể chạy cugraveng với khởi động của maacutey tiacutenh chuacuteng ta cần thựchiện lệnh
make config
Lệnh nagravey sẽ tạo ra script chegraven module zaptel vagraveo kernel vagrave chạy ztconfig vagraveoluacutec khởi động maacutey Trong Redhat script nagravey sẽ được cheacutep vagraveo etcinitd chạy ở mức 3
3 Cagravei đặt goacutei libpri
Kế đến chuacuteng ta biecircn dịch goacutei libpri tại thư mục usrsrclibpri bằng lệnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3972
Taacutec Giả Lecirc Quốc Toagraven
39
make config
3 Cagravei đặt TrixBox
1 Giới thiệu
TRIXBOX được phaacutet triển từ nhacircn của ứng dụng Asterisk được tổng hợp từmột số thagravenh phần chiacutenh được phaacutet triển bởi cộng đồng phaacutet triển nguồn mAsterisk dưới bản quyền GPL Trixbox bao gồm những thagravenh phần chiacutenh cho việcấu higravenh ứng dụng thống kecirc tigravenh trạng hoạt động hệ thống lưu trữ dự phograveng v
nhacircn lagrave hệ điều hagravenh CentOS một phiecircn bản khaacutec của Redhat tất cả kết hợp vớnhau tạo thagravenh một goacutei hoagraven chỉnh Khi cagravei goacutei nagravey vagraveo maacutey tiacutenh thigrave coacute thể sử dụngnhư một tổng đagravei PBX
Caacutec thagravenh phần chiacutenh trong goacutei TRIXBOX lagrave
Asterisk PBX Thagravenh phần chiacutenh của hệ thống Trixbox
CentOS Một phiecircn bản Linux khaacutec của Redhat hoagraven toagraven miển phiacute sửdụng Lagrave nhacircn chiacutenh cho Trixbox
SugarCRM Hệ thống quan hệ khaacutech hagraveng CRM
A2Billing ndash Lagrave thagravenh phần dagravenh cho việc xacircy dựng hệ thống điện thoạitrả trước hay cograven gọi lagrave điện thọai thẻ (Calling Card)
Flash Operator Panel Bảng điều khiển giaacutem saacutet tigravenh trạng hoạt độngcủa caacutec maacutey điện thoại trong hệ thống
Web MeetMe Control Quản lyacute triển khai hệ thống điện thoại hội nghị
FreePBX Đacircy lagrave cocircng cụ với giao diện web dagravenh cho việc cấu higravenh hệthống Asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4072
Taacutec Giả Lecirc Quốc Toagraven
40
Hệ thống Lưu trữ dự phograveng vagrave thống kecirc Lagrave thagravenh phần của TRIXBOXcung cấp caacutec cocircng cụ cần thiết cho việc bảo trigrave bảo dưỡng hệ thống
Hệ thống Apache-Php-Mysql dagravenh cho giải phaacutep Webserver của hệthống
2 DOWNLOAD VAgrave LẮP ĐẶT TRIXBOX
Địa chỉ downloadhttpsourceforgenetprojectsasteriskathome
Khi download xong file Trixboxiso Hatildey dugraveng file nagravey Burn vagraveo CD ( xinlưu yacute lagrave dugraveng Nero hoặc chương trigravenh cheacutep đĩa ưa thiacutech rồi burn vagraveo cd_romchứ khocircng phải cheacutep file đoacute vagraveo cd_rom)
Sau khi coacute CD Hatildey boot từ CD nagravey để cagravei đặt trixbox
Chuacute yacute dữ liệu trecircn đĩa cứng sẽ bị xoacutea sạch để cagravei đặt trixbox Nếu trongđĩa cứng cograven dữ liệu hatildey backup tất cả trước khi tiến hagravenh lắp đặt trixbox
Tới đacircy lần lượt caacutec magraven higravenh chỉ dẫn sẽ hiện ra vagrave cứ theo hướng dẫn magrave cagraveđặt Sau khi cagravei đặt xong chuacuteng ta dugraveng Username root vagrave password password đểđăng nhập hệ thống
3 Cấu higravenh địa chỉ IP cho card mạng
Thiết lập địa chỉ IP bằng caacutech gotilde lệnh
netconfig
Chọn OK để thiếp lập
Nếu trong mạng coacute hỗ trợ DHCP thigrave hatildey chọn mục nagravey cograven nếu khocircng hatildeynhập địa chỉ IP tĩnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4172
Taacutec Giả Lecirc Quốc Toagraven
41
IP 19216801
Netmask 2552552550
Gateway 19216893254 ngotilde ra becircn ngoagravei
Primary nameserver 19216893200 thiết lập nếu coacute
Chọn OK để chấp nhận caacutec thiết lập trecircn
Sau khi hoagraven tất hatildey lagravem cho thiết lập coacute hiệu lực bằng caacutech reset lại
maacutey tiacutenh hoặc dugraveng lệnh sau
Service network stop
Service network start
Đến đacircy xem như cagravei đặt hoagraven tất bacircy giờ để cấu higravenh được Asterisk chuacutengta vagraveo một magravey khaacutec vagrave mở Internet Explorer hoặc một trigravenh duyệt web bất kỳ
nhập vagraveohttp19216801đatilde cấu higravenh ở trecircn vagrave tiến hagravenh cấu higravenh hệ thốngvới tagravei khoảng username maint vagrave password password
4 Tổ Chức Thư Mục của Asterisk
Asterisk sử dụng nhiều thư mục trecircn hệ thống linux để quản lyacute caacutec khiacutea cạnkhaacutec nhau của hệ thống như nghi nhận bản tin thoại caacutec bản tin nhắc thoại hoặcaacutec tập tin cấu higravenh Phần nagravey sẽ trigravenh bagravey caacutec thư mục chiacutenh yếu được tạo ra tronquaacute trigravenh lắp đặt vagrave được cấu higravenh trong tập tin Asteriskconf
1 etcasterisk
Thư mục etcasterisk chứa tất cả caacutec tập tin cấu higravenh của hệ thốngAsterisk ngoại trừ tập tin Zaptelconf được đặt tại thư mục etc Phần cứnZaptel đầu tiecircn được phaacutet triển bởi Jim Dixon thuộc nhoacutem Zapata Telephony
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4272
Taacutec Giả Lecirc Quốc Toagraven
42
Group để giao tiếp giữa maacutey tiacutenh với mạng điện thoại magrave Asterisk lại sửdụng phần cứng nagravey với lyacute do đoacute magrave file cấu higravenh zaptelconf khocircng nằmtrong thư mục etcasterisk
2 usrlibasteriskmodules
Thư mục usrlibasteriskmodules chứa tất cả caacutec module cần thiết đểasterisk hoạt động Becircn trong thư mục lagrave caacutec ứng dụng khaacutec nhau caacutec codeccaacutec định dạng acircm thanh(format) vagrave caacutec kecircnh thocircng tin(channel) Theo mặc địnhAsterisk sẽ nạp tất cả caacutec module vagraveo luacutec khởi động Chuacuteng ta coacute thể khocircng cho
nạp một module bất kỳ bằng caacutech khocircng khai baacuteo sử dụng trong tập tinmodulesconf Lưu yacute khi khocircng cho nạp module thigrave phải biết chắc module đoacutekhocircng lagravem ảnh hưởng hoạt động của asterisk nếu khocircng lỗi sẽ xuất hiện
3 varlibasterisk
Thư mục varlibasterisk chứa tập tin astdb vagrave một số thư mục con Tập tinastdb định vị thocircng tin cơ sở dữ liệu của Asterisk giống như Microsoft WindowsRegistry
Caacutec thư mục con của thư mục varlibasterisk bao gồm
agi-bin
Thư mục agi-bin chứa caacutec script của người dugraveng magrave Asterisk coacute thểđịnh vị sử dụng qua caacutec ứng dụng AGI
AGI lagrave phần giao tiếp với ngocircn ngữ lập trigravenh script để thực hiện mộtsố cocircng việc của Asterisk từ becircn ngoagravei
firmware
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4372
Taacutec Giả Lecirc Quốc Toagraven
43
Thư mục firmware chứa một số phần dẻo(firmware) cho caacutec thiết bịkhaacutec nhau tương thiacutech với Asterisk Hiện tại chỉ coacute thư mục con iax chứa
firmware cho thiếy bị IAXy của Digium IAXy lagrave thiết bị ATA sử dụng giaothức IAX
images
Caacutec ứng dụng thocircng tin với caacutec kecircnh hỗ trợ ảnh images thigrave sử dụng thư mụcnagravey Nhưng hiện tại caacutec kecircnh thocircng tin hầu như khocircng hỗ trợ truyền ảnh images necircthư mục nagravey cũng hiếm khi được sử dụng Tuy nhiecircn nếu caacutec thiết bị coacute hỗ trợ ththư mục nagravey trở necircn hiệu dụng
keys
Asterisk coacute thể sử dụng hệ thống khoaacute publicprivate để xaacutec minh caacutec kết nốgiữa caacutec server Asterisk thocircng qua chữ kyacute điện tử RSA Nếu đặt một khoaacute publicvagraveo thư mục keys thigrave kết nối của server đầu becircn kia coacute thể được xaacutec minh bằn
kecircnh thocircng tin coacute hỗ trợ đối với Asterisk thigrave kecircnh giao thức IAX hỗ trợ loại xaacutecminh nagravey Một khoaacute private khocircng bao giờ cocircng bố chuacuteng ta chỉ cocircng bố khoaacute public đến với server cần nối đến sau đoacute sẽ được xaacutec minh với khoaacute private nagravey Chai khoaacute public vagrave private được lưu với đuocirci pub vagrave key đặt tại thư mục keys
mohmp3
Khi cấu higravenh Asterisk sử dụng tiacutenh năng Music on Hold tiacutenh năng hoạt độngsẽ thực hiện lấy caacutec tập tin mp3 tại thư mục mohmp3 Tập tin định dạng theo chucủa Asterisk necircn khi sử dụng caacutec file Mp3 thocircng thường cần coacute sự chuyển đổi thiacutechợp trước khi cheacutep vagraveo thư mục trecircn để sử dụng
sounds
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4472
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4572
Taacutec Giả Lecirc Quốc Toagraven
45
Thư mục tmp sử dụng để lưu trữ những thocircng tin tạm để luocircn bảo đảm khocircnxảy ra tigravenh trạng đọc vagrave viết tập tin cugraveng một luacutec Khi yecircu cầu xử lyacute tập tin chuacuteng thao taacutec trecircn thư mục tmp trước khi lưu vagraveo tập tin điacutech
Tất cả caacutec lời nhắc thoại từ phiacutea người sử dụng vagrave caacutec lời nhắc thoại sử dụ
cho thao taacutec hộp voicemail đều được chứa trong thư mục voicemail Một hộp thưthoại được tạo ra ứng với một maacutey nội bộ trong tập tin voicemailconf sẽ được tra một thư mục con tương ứng cho maacutey nội bộ đoacute tại thư mục voicemail
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4672
Taacutec Giả Lecirc Quốc Toagraven
46
5 varrun
Thư mục varrun chứa thocircng tin process ID(pid) cho tất cả caacutec tiến trigravenh đang
hoạt động trong hệ thống bao gồm cả Asterisk Lưu yacute lagrave ứng với mỗi hệ điều hagravethư mục varrun coacute thể khaacutec
6 varlogasterisk
Thư mục varlogasterisk lagrave nơi Asterisk chứa tất cả caacutec tập tin nhật kyacute haycograven gọi lagrave tập tin log Chuacuteng ta coacute thể tuỳ biến caacutec loại thocircng tin được lưu trong caacutec
tập tin log khaacutec nhau qua tập tin cấu higravenh loggerconf đặt tại thư mục etcasterisk7 varlogasteriskcdr-csv
Thư mục varlogasteriskcdr-csv được sử dụng để lưu chi tiết cuộc gọi CDRThocircng tin mặc định về chi tiết thocircng tin cuộc gọi lưu trữ trong tập tin MasterCVSnhưng thường thigrave ứng với mỗi matilde accountcode sẽ tạo một thư mục riecircng để lưu ctiết cuộc gọi cho maacutey đoacute
5 Một số lệnh thao taacutec trecircn hệ thống asterisk
Asterisk coacute hai thagravenh phần được xacircy dụng tiacutech hợp với nhau vagrave chạy songsong nhau
Asterisk Server bigravenh thường chạy ở chế độ nền(background) giống caacutec sevicestrong window
Asterisk Client ở chế độ dograveng lệnh CLI giao tiếp với Asterisk Server thực thicaacutec lệnh để kiểm tra hay xem caacutec thocircng tin của server
Để Chạy vagrave dừng Asterisk ở chế độ nền chuacuteng ta thực hiện lệnh sau
etcinitdasterisk (start|stop)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4772
Taacutec Giả Lecirc Quốc Toagraven
47
Một khi Asterisk đatilde chạy chuacuteng ta coacute thể chuyển qua chế độ CLI từ dấu nhắlệnh của linux như sau
asterisk ndashr
Khi vagraveo chế độ lệnh nếu muốn thoaacutet về lại dấu nhắc linux chuacuteng ta dugraveng lệnh
CLIgtexit
Caacutec lệnh cơ bản thực hiện tại CLIgt
Bất cứ khi nagraveo chỉnh sửa caacutec tập tin cấu higravenh chuacuteng ta đều cần phải nạp lại đcaacutec thay đổi coacute hiệu lực điều đoacute thực hiện bằng lệnh
CLIgtreload
Bậc chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 debug
CLIgt SIP debug
Tắt chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 no debug
CLIgt SIP no debug
Hiển thị caacutec trạng thaacutei thocircng tin của users peers vagravechannels của SIP hoặc IAX2
CLIgt sip show users
CLIgt sip show peers
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4872
Taacutec Giả Lecirc Quốc Toagraven
48
CLIgt sip show channels
CLIgt iax2 show peers
CLIgt iax2 show users
CLIgt iax2 show channels
Đến thời điểm nagravey coacute thể noacutei chuacuteng ta đatilde hoagraven thagravenh cagravei đặt hệ thốngAsterisk cagravei đặt xong mới lagrave bước mở đầu để cho hệ thống Asterisk hoạt động vtừng ứng dụng cụ thể chuacuteng sẽ tiếp tục thực hiện caacutec giai đoạn được xem lagrave qutrọng nhất trong việc triển khai hệ thống Asterisk đoacute lagrave giai đoạn cấu higravenh hệ thốnlecircn kế hoạch Diaplan chương cograven lại đều nhắm đến mục tiecircu nagravey
4 CẤU HIgraveNH HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Sau khi hoagraven tất phần cagravei đặt hệ thống asterisk một bước quan trọng tiếp thelagrave cấu higravenh hệ thống coacute thể noacutei đacircy lagrave bước quan trọng nhất của việc khiển khai thống đến với từng ứng dụng cụ thể Trong chương nagravey xin giới thiệu caacutei nhigraven đầtiecircn về việc cấu higravenh trước khi đi sacircu hơn ở những chương sau những gigrave giới thiệ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4972
Taacutec Giả Lecirc Quốc Toagraven
49
trong chương nagravey lagrave nền moacuteng cơ bản nhưng đủ để hiểu lagravem thế nagraveo hệ thống coacute thoạt động được nội dung chiacutenh bao gồm
+ Thao taacutec cấu higravenh trecircn hệ thống tập tin của asterisk
+ Caacutech cagravei đặt phần mềm softphone trecircn cocircng nghệ sip
+ Cấu higravenh cho hai maacutey softphone liecircn lạc với nhau
+ Cấu higravenh phaacutet thocircng điệp
+ Quay số qua Sip vagrave mạng PSTN
2 Tập Tin cấu higravenh
Tất cả caacutec file cấu higravenh cho hệ thống asterisk đều nằm tại thư mục etcasterisngoại trừ file zaptelconf cấu higravenh cho phần cứng TDM nằm tại thư mục etc caacutecthức cấu higravenh giống như tập tin ini của window vậy Caacutec nội dung sau dấu chấm phảy lagrave nội dung chuacute thiacutech trong file cấu higravenh giống như chuacute thiacutech trong ngocircn ngữ
lập trigravenh C lagrave dấu Tất cả caacutec khoảng trắng trong tập tin đều được bỏ qua khocircng yacute nghĩa trong file cấu higravenh
Trong file cấu higravenh cograven coacute hai pheacutep gaacuten rất thường xuyecircn được sử dụng pheacutep gaacuten ldquo=rdquo lagrave dugraveng cho việc gaacuten caacutec biến cograven pheacutep gaacuten ldquo=gtrdquo dugraveng cho việc gaacutencaacutec đối tượng sau đacircy lagrave một viacute dụ cho file cấu higravenh
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5072
Taacutec Giả Lecirc Quốc Toagraven
50
Đacircy lagrave caacutec dograveng chuacute thiacutech
[section]
Key=value gaacuten giaacute trị cho biến
[section2]
Key=gtobject Gaacuten giaacute trị cho đối tượng
Cuacute phaacutep thực hiện giống nhau cho tất cả caacutec file cấu higravenh nhưng coacute vagravei kiểukhaacutec nhau cho mỗi file cầu higravenh dựa vagraveo thức caacutech hoạt động của chuacuteng
3 Caacutec kiểu ảnh hưởng trong tập cấu higravenh
Coacute ba kiểu caacutech thức hoạt động của tập tin cấu higravenh như sau
Kiểu Caacutech hoạt động File cầu higravenh Viacute dụ
S i m p l eGroup
Coacute hiệu lực trecircntừng dograveng trongfile
Extensionconf
Exten=gt4001dial(sip400)
O p t i o ninheritance
Dograveng khai baacuteosau thừa kếnhững thocircng sốkhai baacuteo trước
Zapataconf [channels]
Context=From_PSTN
Signalling=fxs_ks
Group=1Channel=gt1
C o m p l e xEntity
Mỗi entity nhậnmột ngữ cảnh
sipconf
iaxconf
[cisco]
Type=friend
Secret=12345
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5172
Taacutec Giả Lecirc Quốc Toagraven
51
Host=192168165
Context=NoiBo
[xten]
Type=friend
Secret=6789
Host=dynamic
Context=NoiBo
1 Simple Group
Đacircy lagrave kiểu cấu higravenh đơn giản nhất thường sử dụng trong caacutec fileextentionconf meetmeconf voicemailconf tương ứng với mỗi dograveng khai baacuteo lagravemột đối tượng coacute yacute nghĩa trecircn dograveng đoacute
Viacute dụ
Extentionconf [section]
object1=gt op1op2op3
object2=gt op1bop2bop3b
Trong viacute dụ trecircn mỗi dograveng tương ứng với caacutec toaacuten tử khaacutec nhau object1 coacute caacutectoaacuten từ op1 op2 op3 trong khi đoacute object2 lại coacute caacutec toaacuten từ op1b op2b op3b
2 Option inheritance
Đacircy lagrave cấu higravenh kiểu thừa kế thường được cấu higravenh trong caacutec file zapataconfagentconf với kiểu cấu higravenh nagravey thigrave caacutec dograveng phiacutea dưới coacute thể thừa kế caacutec thocircng sdograveng phiacutea trecircn tương ứng với mỗi section caacutec dograveng phiacutea dưới coacute thể thay đổi caacutecthocircng số cho tươngứng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5272
Taacutec Giả Lecirc Quốc Toagraven
52
Viacute dụ
Extentionconf
[section]
Op1=bas
Op2=adv
Object1=gt1
Op1=int
Object1=gt2
Với cấu higravenh trecircn coacute thể giải thiacutech như sau object1=gt1 thừa hưởng hai thocircngsố ở phiacutea trecircn đoacute lagrave op1=bas vagrave op2=adv trong khi đoacute đối với object1=gt2 với thocircngsố op1=int được khai baacuteo lại necircn object1=gt2 được thừa kế từ hai thocircng số op1=invagrave op2=adv
3 Complex Entity
Với cấu kiểu nagravey được tổ chức thagravenh nhiều entity ứng với mỗi entity coacute nhiềthocircng số được khai baacuteo mỗi entity ở đacircy chiacutenh lagrave caacutec section để khai baacuteo caacutec kecircnhthocircng tin Cấu higravenh thường được sử dụng trong caacutec file iaxconf sipconf
Viacute dụ
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5372
Taacutec Giả Lecirc Quốc Toagraven
53
[entity1]
Op1=value1
Op2=value2
[entity2]
Op1=value3
Op2=value4
Entity1 coacute caacutec giaacute trị value1 vagrave value2 cho thocircng số op1 vagrave op2 trong khi đoacute
cũng lagrave thocircng số op1 vagrave op 2 nhưng coacute caacutec giaacute trị khaacutec lagrave value3 vagrave value4 choentity2
4 Cấu higravenh giao tiếp với mạng PSTN
1 Ngữ cảnh kết nối
Để kết nối với mạng PSTN chuacuteng ta cần phải coacute một card TDM với Cổng
FXO vagrave một đường dacircy điện thoại hoặc coacute thể lagrave một tổng đagravei nội bộ PBX Cnhiều nhagrave sản xuất phần cứng khaacutec nhau nhưng trong phần cấu higravenh dưới dacircy lagrave cấhigravenh cho card zapata TDM01B của digium (card nagravey hiện nay giaacute baacuten khoảng175$)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 1972
Taacutec Giả Lecirc Quốc Toagraven
19
Cocircng ty coacute khả năng tiếp nhận cugraveng một luacutec 10 cuộc gọi như thế cuộc gọi th11 gọi đến thigrave hệ thống giải quyết như thế nagraveo Bigravenh thường thigrave sẽ nghe tiacuten hiệ
bận nhưng với chức năng phacircn phối cuộc gọi sẽ đưa thuecirc bao đoacute vagraveo hagraveng đợi đchờ trả lời trong khi chờ trả lời cuộc gọi thuecirc bao coacute thể nghe những bagravei haacutet hay dasterisk cung cấp trong luacutec nagravey nếu 1 trong mười số điện thoại trở về trạng thaacutei rthigrave cuộc gọi đang chờ sẽ được trả lời Giống như chức năng của dịch vụ 1080 ha116 của Bưu Điện Thagravenh Phố vậy
2 CAacuteC KHAacuteI NIỆM TRONG HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Trong chương nagravey sẽ giải thiacutech rotilde caacutec khaacutei niệm cơ bản liecircn quan đến hệ thốnasterisk cung cấp những kiến thức nền tảng những khaacutei niệm cần thiết để thiếttriển khai xacircy dựng hệ thống điện thoại với Asterisk
2 PBX - Private Branch Exchange
PBX hay cograven gọi lagrave PABX - Private Automatic Branch Exchange lagrave hệ thốngtổng đagravei nội bộ được đặt tại nhagrave thuecirc bao từ Automatic ở đacircy muốn noacutei đến lagrave hthống tổng đagravei điện tử tự động nhưng hiện nay đa số lagrave tổng đagravei PBX điện tử tđộng necircn từ trecircn thực sự khocircng cograven cần thiết nữa
PBX với mục tiecircu chia sẻ nhiều thuecirc bao nội bộ gọi ra thế giới becircn ngoagraveithocircng qua một vagravei đường trung kế hay noacutei một caacutech khaacutec PBX lagrave hệ thống trungchuyển giữa caacutec đường dacircy điện thoại becircn ngoagravei từ cocircng ty điện thoại vagrave maacutey điệthoại nội bộ trong tổng đagravei PBX Vigrave thế necircn số lượng maacutey điện thoại nội bộ luocircnhiều hơn số đường dacircy nối đến PBX từ becircn ngoagravei
wwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2072
Taacutec Giả Lecirc Quốc Toagraven
20
PBX thực hiện chuyển mạch cuộc gọi caacutec maacutey điện thoại nội bộ với nhau vvới caacutec maacutey điện thoại becircn ngoagravei thocircng qua đường trung kế Đồng thời thực hiệ
chuyển mạch caacutec cuộc gọi điện thoại từ becircn ngoagravei vagraveo caacutec maacutey điện thoại nội bộNgoagravei việc chuyển mạch cuộc gọi PBX cung cấp nhiều tiacutenh năng sử dụng
cho nhiều mục điacutech khaacutec nhau của khaacutech hagraveng magrave bản thacircn caacutec đường dacircy điệnthoại từ cocircng ty điện thoại kết nối đến khocircng thể thực hiện được caacutec tiacutenh năng ntương taacutec thoại(IVR) Voicemail phacircn phối cuộc gọi tự động(ADC)hellip
Hiện nay với việc phaacutet triển mạnh mẽ của cocircng nghệ VoIP chuacuteng ta cograven coacutethecircm thuật ngữ IP PBX Đacircy lagrave hệ thống chuyển mạch PBX với cocircng nghệ Voip
3 VOIP - Voice Over Internet Protocol
Voice over Internet Protocol (VoIP) lagrave một cocircng nghệ cho pheacutep truyền thoạisử dụng giao thức mạng IP trecircn cơ sở hạ tầng sẵn coacute của mạng internet Voip lagrave mtrong những cocircng nghệ viễn thocircng đang được quan tacircm nhất hiện nay khocircng chỉ đố
với nhagrave khai thaacutec caacutec nhagrave sản xuất magrave cograven cả với người sử dụng dịch vụVoip coacute thể vừa thực hiện mọi loại cuộc gọi như trecircn mạng điện thoại kecircn
truyền thống (PSTN) đồng thời truyền dữ liệu trecircn cơ sở mạng truyền dữ liệu Dcaacutec ưu điểm về giaacute thagravenh dịch vụ vagrave sự tiacutech hợp nhiều loại higravenh dịch vụ necircn voihiện nay được triển khai một caacutec rộng ratildei
Dịch vụ điện thoại voip lagrave dịch vụ ứng dụng giao thức IP nguyecircn tắc củaVoIP bao gồm việc số hoaacute tiacuten hiệu tiếng noacutei thực hiện việc neacuten tiacuten hiệu số chia nhcaacutec goacutei nếu cần vagrave truyền goacutei tin nagravey qua mạng tới nơi nhận caacutec goacutei tin nagravey đượraacutep lại theo đuacuteng thứ tự của bản tin giải matilde tiacuten hiệu tương tự phục hồi lại tiếng n ban đầu
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2172
Taacutec Giả Lecirc Quốc Toagraven
21
Caacutec cuộc gọi trong VoIP dựa trecircn cơ sở sử dụng kết hợp cả chuyển mạchkecircnh vagrave chuyển mạch goacutei Trong mỗi loại chuyển mạch đều coacute ưu nhược điể
riecircng của noacute Trong kỹ thuật chuyển mạch kecircnh giagravenh riecircng cho một kecircnh truyềngiữa hai thiết bị đầu cuối thocircng qua caacutec node chuyển mạch trung gian Trongchuyển mạch kecircnh tốc độ truyền dẫn luocircn luocircn cố định(nghĩa lagrave băng thocircng khocircnđổi) với mạng điện thoại PSTN tốc độ nagravey lagrave 64kbps truyền dẫn trong chuyểmạch kecircnh coacute độ trễ nhỏ
Trong chuyển mạch goacutei caacutec bản tin được chia thagravenh caacutec goacutei nhỏ gọi lagrave caacutec
goacutei nguyecircn tắc hoạt động của noacute lagrave sử dụng hệ thống lưu trữ vagrave chuyển tiếp caacutec gtin trong nuacutet mạng Đối với chuyển mạch goacutei khocircng tồn tại khaacutei niệm kecircnh riecircng băng thocircng khocircng cố định coacute nghĩa lagrave coacute thể thay đổi tốc độ truyền kỹ thuật chuyểmạch goacutei phải chịu độ trễ lớn vigrave trong chuyển mạch goacutei khocircng quy định thời giancho mỗi goacutei dữ liệu tới điacutech mỗi goacutei coacute thể đi bằng nhiều con đường khaacutec nhau đtới điacutech chuyển mạch goacutei thiacutech hợp cho việc truyền dữ liệu vigrave trong mạng truyền dliệu khocircng đogravei hỏi về thời gian thực như thoại để sử dụng ưu điểm của mỗi lo
chuyển mạch trecircn thigrave trong voip kết hợp sử dụng cả hai loại chuyển mạch kecircnh vchuyển mạch goacutei
4 PSTN ndash Public Switched Telephone Network
PSTN lagrave mạng chuyển mạch điện thoại cocircng cộng hay noacutei caacutech khaacutec lagrave mạngkết nối tất cả caacutec hệ thống tổng đagravei chuyển mạch-mạch
Để hiểu rotilde hơn hatildey xem xeacutet mạng PSTN với mạng Internet về khiacutea cạnhchuyển thoại trecircn đoacute Chuyển mạch mạch muốn thực hiện cuộc gọi giữa hai thu bao thigrave hệ thống phải giagravenh riecircng một kecircnh truyền 64kbps để chuyển tải tiacuten hiệthoại trecircn đoacute Cograven cuộc gọi điện thoại trecircn mạng Internet thigrave tiacuten hiệu thoại đượđoacuteng goacutei vagrave chuyển đi trecircn cugraveng kecircnh truyền với nhiều dịch vụ khaacutec Vigrave lẽ đoacute chấlượng cuộc gọi trecircn mạng PSTN bao giờ cũng tốt hơn trecircn mạng Internet nhưng đổ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2272
Taacutec Giả Lecirc Quốc Toagraven
22
lại chi phiacute lại đắc hơn rất nhiều đặc biệt lagrave caacutec cuộc gọi quốc tế necircn phải cần nhắc kỹ khi sử dụng
PSTN được phaacutet triển trecircn chuẩn ITU(International TelecommunicationUnion) cograven mạng Internet được phaacutet triển trecircn chuẩn IETF(Internet EngineeringTask Force) cả hai mạng trecircn đều sử dụng địa chỉ để định tuyến cuộc gọi PSTN sdụng caacutec con số điện thoại để chuyển mạch cuộc gọi giữa caacutec tổng đagravei điện thotrong khi đoacute trecircn mạng Internet địa chỉ IP sẽ được sử dụng để định tuyến caacutec goacutethoại
5 TDM ndash Time Division Multiplexing
Lagrave kỹ thuật gheacutep kecircnh phacircn chia thời gian nhiều tiacuten hiệu coacute thể truyền đồngthời trecircn một đường truyền TDM được sử dụng chuyển thoại trong hệ thống mạPSTN Coacute hai chuẩn gheacutep kecircnh TDM cơ bản lagrave E1 với 30 kecircnh thoại trecircn mộtkhung tốc độ 2Mbps vagrave T1 với 24 kecircnh thoại tốc độ 15Mbps
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2372
Taacutec Giả Lecirc Quốc Toagraven
23
Higravenh Minh họa gheacutep kecircnh phacircn chia theo thời gian
6 Caacutec higravenh thức baacuteo hiệu giao tiếp TDM
1 FXO vagrave FXS
FXO (Foreign Exchange Office) lagrave thiết bị nhận tiacuten hiệu từ tổng đagravei gửi đếnnhư dograveng chuocircng tiacuten hiệu nhấc gaacutec maacutey tiacuten hiệu mời quay số gửi vagrave nhận tiacuten hiệthoạihellip FXO giống như maacutey Fax hay modem dial-up 56k vậy Dugraveng để kết nối vớ
đường dacircy điện thoại
FXS (Foreign Exchange Station) lagrave thiết bị tại nơi cung cấp đường dacircy điệnthoại thiết bị FXS sẽ cung cấp tiacuten hiệu mời quay số(dialtone) dograveng chuocircng hồi acircmchuocircng(ring tone) Trong đường dacircy Analog FXS cung cấp dograveng chuocircng vagrave điện aacutepcho điện thoại hoạt động viacute dụ FXS cung cấp điện aacutep -48VDC đến maacutey điện tho
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2472
Taacutec Giả Lecirc Quốc Toagraven
24
Analog trong suốt thời gian đagravem thoại vagrave cung cấp 90VAC(20hz) để phaacutet điện aacuteprung chuocircng Thiết bị FXS phaacutet cograven thiết bị FXO nhận
Card TDM sử dụng trong hệ thống asterisk thường tiacutech hợp vừa thiết bị FXOvừa lagrave thiết bị FXS(Giống bộ ATA) FXO để kết nối với đường dacircy điện thoại cograveFXS dugraveng để kết nối với maacutey điện thoại analog thocircng thường dugraveng để chuyển mạcuộc gọi TDM qua hệ thống asterisk(Xem thecircm trong phần cấu higravenh cho kecircnhTDM)
Toacutem lại cần nắm
FXS được kết nối với FXO giống với đường dacircy điện thoại nối với maacuteyđiện thoại
FXS cung cấp nguồn cho điện thoại FXO(điện thoại Analog)
Higravenh a) Maacutey điện thoại vai trograve FXO kết nối với FXS(PSTN) Higravenh b) PBXkết nối với FXO vagrave FXS Higravenh c) ATA đoacuteng vai trograve như FXS để kết nối với maacuteyđiện thoại vai trograve FXO
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2572
Taacutec Giả Lecirc Quốc Toagraven
25
2 Baacuteo hiệu Analog giữa đầu cuối vagrave tổng đagravei
Khi chuacuteng ta nhấc mấy điện thoại để gọi thigrave nghe tiacuten hiệu mời quay số kh
cuộc gọi gọi đầu becircn kia bị bận thigrave chuacuteng ta nghe tiacuten hiệu bận(busy tone) caacutec loạtiacuten hiệu như vậy gọi lagrave caacutec tiacuten hiệu baacuteo hiệu analog Caacutec tiacuten hiệu như Mời quay sốtiacuten hiệu bận rung chuocircng trạng thaacutei nhấc gaacutec maacutey Caacutec loại tiacuten hiệu trecircn được trađổi giữa thiết bị FXO vagrave FXS
Coacute nhiều phương thức baacuteo hiệu khaacutec nhau ứng với từng nơi sử dụng vigrave thếtại nơi kết nối với đường dacircy điện thoại cần xem xeacutet họ đang sử dụng phương th
baacuteo hiệu gigrave từ đoacute chuacuteng ta khai thaacutec loại tiacuten hiệu baacuteo hiệu cho thiacutech hợp caacutec phương thức baacuteo hiệu như Loop Start Ground Start Một minh họa cho việc sửdụng sai phương thức baacuteo hiệu lagrave khi chuacuteng ta khai baacuteo phương thức baacuteo hiệu giữhệ thống Asterisk vagrave đường dacircy điện thoại khaacutec nhau thigrave dẫn đến Asterisk sẽ khocircnnhận biết được tiacuten hiệu gaacutec maacutey điều nagravey sẽ lagravem cho asterisk khocircng baacuteo giờ giải tỏđược cuộc gọi để thực hiện cuộc gọi mới
3 Baacuteo hiệu giữa caacutec tổng đagravei
SS7 hệ thống baacuteo hiệu số 7 được phaacutet triển bởi ATampT vagrave ITU lagrave hệ thống baacuteo hiệu chuyển caacutec cuộc gọi giữa caacutec tổng đagravei trong mạng PSTN Trong hệ thốn baacuteo hiệu số 7 tiacuten hiệu chuyển tải trecircn đường trung kế kết nối giữa hai tổng đagravei gồcoacute hai mạch riecircng một cho thoại vagrave một cho baacuteo hiệu như vậy thoại vagrave baacuteo hiệu cthể chuyển trecircn hai kecircnh vật lyacute khaacutec nhau
7 Baacuteo Hiệu trecircn mạng điện thoại VoIP
1 SIP Session Initiation Prorocol
Sip lagrave giao thức Internet dagravenh cho baacuteo hiệu VoIP được phaacutet triển bởi IETFcung cấp vagravei chức năng giống hệ thống baacuteo hiệu số 7 nhưng dựa trecircn nền IP Mộchức năng giống baacuteo hiệu số 7 đoacute lagrave baacuteo hiệu vagrave thoại chuyển tải trecircn hai kecircnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2672
Taacutec Giả Lecirc Quốc Toagraven
26
riecircng Giao thức SIP thực hiện chức năng thiết lập vagrave baacuteo hiệu cuộc gọi khi noacutei đế baacuteo hiệu cuộc gọi lagrave chỉ định caacutec tiacuten hiệu baacuteo hiệu như tiacuten hiệu mời quay số tiacutehiệu bậnhellip
2 Proxy server
Mặc dầu hai thiết bị SIP coacute thể liecircn lạc trực tiếp với nhau để khởi tạo cuộgọi nhưng trong giao thức SIP cograven coacute chức năng Proxy để linh hoạt hơn trong thiếlập cuộc gọi Proxy Server sẽ lagravem nhiệm vụ ghi nhận tất cả caacutec số điện thoại đư phiacutea client đăng kyacute đến qua bản tin ldquoRegistrationrdquo Khi một client khaacutec thực hiện
cuộc gọi thigrave thực sự Client đoacute khocircng biết số điện thoại cần gọi đang ở đacircu necircn thocircnqua Proxy server để tigravem kiếm thiết lập cuộc gọi
+
Higravenh Đăng kyacute từ Client đến SIP Proxy Với Giao thức SIP đường baacuteo hiệu vagravethoại riecircng
3 RTP vaacute NAT
Caacutec cuộc gọi trecircn Internet với giao thức SIP được chia thagravenh caacutec goacutei thoại vagraveđược chuyển qua giao thức RTP(Real Time Protocol) RTP lagrave giao thức khocircng chỉthực hiện chuyển caacutec goacutei thoại qua Internet magrave cograven coacute cả video nữa Một cuộc gọ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2772
Taacutec Giả Lecirc Quốc Toagraven
27
thocircng thường coacute hai hướng thocircng tin lagrave nhận vagrave phaacutet RTP lagravem việc chuyển caacutec goacutedữ liệu thoại cũng trecircn hai hướng
NAT Network Address Translators lagrave một trở ngại lớn trong giao thức RTPMạng sử dụng NAT lagrave một mạng chia sẻ nhiều địa chỉ IP nội bộ với một địa chỉ ICocircng cộng để kết nối với thế giới becircn ngoagravei NAT dugraveng để chia sẻ nhiều maacutey tiacutentrong mạng LAN nội bộ sử dụng được Internet nhưng cũng chiacutenh vigrave thế magrave caacutec maacutetiacutenh nội bộ gặp khoacute khăn trong việc thực hiện cuộc gọi VoIP qua Internet Đoacute chiacutenhlagrave vấn để trở ngại khi truyền thoại qua giao thức RTP
Higravenh Minh họa hoạt động của NAT
Trong Giao thức RTP như chuacuteng ta đatilde biết đoacute lagrave thoại được chuyển trecircn haiđường khaacutec nhau lagrave đường phaacutet vagrave đường thu Vấn đề NAT nằm ở chỗ tiacuten hiệthoại từ becircn ngoagravei vagraveo becircn trong qua giao thức RTP khocircng thực hiện được cograven chiềungược lại thigrave thực hiện tốt Hay noacutei caacutech khaacutec vấn đề NAT lagravem cho caacutec cuộc gọi t
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2872
Taacutec Giả Lecirc Quốc Toagraven
28
Internet đagravem thoại vagraveo caacutec maacutey nội bộ qua NAT thigrave khocircng nghe được cograven trongtrường hợp caacutec cuộc gọi từ caacutec maacutey nội bộ ra caacutec maacutey internet thigrave nghe tốt
Vấn đề NAT trecircn được giải quyết trong Asterisk bằng việc khai baacuteo thocircng số NAT=yes trong cấu higravenh kecircnh giao thức SIP
4 IAX ndash Inter Asterisk eXchange
IAX lagrave giao thức baacuteo hiệu Voip được phaacutet triển bởi taacutec giả của phần mềmAsterisk để khắc phục những hạn chế trong giao thức SIP Khocircng giống như giathức SIP chuyển tải thoại vagrave baacuteo hiệu trecircn hai kecircnh khaacutec nhau (out of band) IAXchuyển tải thoại vagrave baacuteo hiệu trecircn cugraveng một kecircnh(in band) IAX giải quyết được vấđề NAT đề cập trecircn phần giao thức SIP Mặc khaacutec IAX lagrave giao thức tối ưu trongviệc sử dụng băng thocircng cho pheacutep nhiều goacutei dữ liệu thoại trecircn cugraveng một IP headecơ chế chuyển tải nhiều cuộc gọi trecircn cugraveng một goacutei IP được gọi lagrave trung kế(Trunk)
Coacute thể giải thiacutech thecircm cơ chế trung kế như sau Giả sử Tocirci cần gửi 5 bức thtới người bạn của Tocirci Tocirci sẽ coacute hai higravenh thức để thực hiện thứ nhất lagrave mỗi bức tTocirci bỏ vagraveo một phong bigrave vậy tổng cộng tocirci phải sử dụng 5 phong bigrave để gửi đi 5 bứthư Caacutech thứ hai lagrave Tocirci bỏ 5 bức thư vagraveo 1 phong bigrave vagrave gửi đi vậy tổng cộng Tocircchỉ tốn 1 phong bigrave Qua phacircn tiacutech trecircn rotilde ragraveng việc 5 bức thư vagraveo một phong bigrave sẽtiết kiệm hơn so với 5 bức thư với 5 phong biacute Cơ chế trecircn cũng giống như nhiềcuộc gọi được đoacuteng thagravenh goacutei vagrave chuyển đi trecircn đường trung kế
Toacutem lại IAX lagrave giao thức dagravenh cho VoIP mới nhất cho đến thời điểm nagravey vớinhiều ưu điểm hấp dẫn như
+ Tối thiểu sử dụng băng thocircng
+ Trong suốt với NAT
+ Hiệu quả với cơ chế trung kế
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2972
Taacutec Giả Lecirc Quốc Toagraven
29
8 Thiết Bị VoIP
1 Voip Phone
Đacircy lagrave thiết bị phần cứng kết nối với mạng VoIP giống như maacutey điện thoại đ bagraven thocircng thường nhưng dagravenh cho VoIP cần phải thực hiện cấu higravenh trước khi sửdụng
Lưu yacute một số tiacutenh năng khi thực hiện mua thiết bị điện thoại VoIP
+ Low bandwidth hỗ trợ Codec nagraveo G729 lagrave tốt nhất hiện nay
+ Web Interface Phải coacute giao tiếp thiết lập cấu higravenh thacircn thiện dễ sử dụng
+ Audio Interface Coacute speaker phone hay khocircng
Giaacute thagravenh của điện thoại voip IP đắc hơn điện thoại thocircng thường giaacute khoảntrecircn dưới 100$ một caacutei
Higravenh Maacutey Điện Thoại VoIP
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3072
Taacutec Giả Lecirc Quốc Toagraven
30
2 Softphone
Lagrave một phần mềm được cagravei trecircn maacutey tiacutenh thực hiện tất cả caacutec chức năng giốn
như thiết bị điện thoại Voip cần lưu yacute khi sử dụng softphone lagrave maacutey tiacutenh phải ccard acircm thanh headphone vagrave firewall khocircng bị khoacutea
Sử dụng softphone với hệ thống Asterisk necircn dugraveng softphone với cocircng nghệgiao thức mới dagravenh cho Asterisk đoacute lagrave IAX
Higravenh Điện Thoại Softphone
3 Card giao tiếp với PSTN
Muốn cho pheacutep caacutec maacutey điện thoại nội bộ trong hệ thống Asterisk kết nối vthực hiện cuộc gọi với mạng PSTN chuacuteng ta cần phải coacute thiết bị phần cứng tươthiacutech Thiết bị phần cứng sử dụng cho hệ thống Asterisk do chiacutenh taacutec giả lập cocircng
Digium phacircn phối đacircy cũng chiacutenh lagrave yacute tưởng lớn trong việc phacircn phối phần mềmAsterisk lagrave hệ thống nguồn mở sử dụng miễn phiacute
Thiết bị phần cứng thường kyacute hiệu bắt đầu bằng cụm từ TDMxyB trong đoacute lagrave số lượng port FXS y lagrave số lượng port FXO giaacute trị tối đa của x vagrave y lagrave 4 viacute dụcard TDM22B coacute nghĩa lagrave coacute 2 fort FXS vagrave 2 port FXO
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3172
Taacutec Giả Lecirc Quốc Toagraven
31
Higravenh Card TDM22B gồm 4 port 2 FXS vagrave 2 FXO
4 ATA Analog Telephone Adaptors
ATA lagrave thiết bị kết nối với điện thoại Analog thocircng thường đến mạng VoIPmột thiết bị ATA gồm coacute hai loại port RJ-11 để kết nối với maacutey điện thoại analo
thocircng thường cograven RJ-45 để kết nối với mạng VoIP
ATA thực sự lagrave thiết bị FXS chuyển đổi tiacuten hiệu Analog sang tiacuten hiệu số sửdụng cho mạng VoIP để tận dụng maacutey điện thoại Analog necircn trang bị thiết bị ATAthay vigrave phải trang bị điện thoại VoIP
Thiết bị ATA sử dụng với giao thức IAX được Digium phacircn phối lagrave thiết bịATA được sử dụng rộng ratildei với Asterisk coacute tecircn gọi lagrave IAXy
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3272
Taacutec Giả Lecirc Quốc Toagraven
32
Higravenh Thiết bị ATA
9 Codecs
Thuật Toaacuten codecs(CompressorDe-compressor) lagrave một tập caacutec quy luật đượcsử dụng để chuyển đổi caacutec tiacuten hiệu thoại dạng Analog sang tiacuten hiệu số vagrave ngược lạ
Coacute nhiều thuật toaacuten codec để thực hiện chuyển đổi tiacuten hiệu analog sang tiacuten
hiệu số dạng nhị phacircn (01) như G711 GSM G729hellipỨng với mỗi thuật toaacuten coacutenhững ưu điểm riecircng đặc biệt lagrave việc tối ưu sử dụng băng thocircng trecircn đường truyềMục tiecircu cuối cugraveng lagrave caacutec thuật toaacuten đưa ra phải đảm bảo chất lượng cuộc gọi nhvagrave tiết kiệm băng thocircng nhất
G729 lagrave thuật toaacuten codec tốt nhất hiện nay trong hệ thống VoIP Với hệthống Asterisk để sử dụng thuật toaacuten nagravey cần phải mua bản quyền sử dụng vigrave đacircy
codec khocircng miễn phiacute sử dụng
10 QoS ndash Quality of Service
Caacutec yếu tố ảnh hưởng đến chất lượng của dịch vụ đối với VoIP đoacute lagrave caacuteyếu ảnh hưởng đến chất lượng tiacuten hiệu thoại
1 Độ trễ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3372
Taacutec Giả Lecirc Quốc Toagraven
33
Thoại lagrave dịch vụ mang tiacutenh thời gian thực rất cao vigrave thế trễ lagrave yếu tố ảnhhưởng rất lớn đến chất lượng dịch vụ Trễ được định nghĩa lagrave khoảng thời gian tiacute
từ luacutec tiacuten hiệu thoại đi từ miệng người noacutei tới tai người nghe Trễ lagrave yếu tố khocircnthể traacutenh khỏi độ trễ đối với mạng điện thoại truyền thống (mạng PSTN) khoảng50ms đến 70ms theo khiến nghị của ITU-T để đảm bảo chất lượng cho hệ thốVoIP thigrave độ trễ từ đầu phaacutet tới đầu thu hoặc ngược lại khocircng được vượt quaacute 150mkhi magrave độ trễ vượt quaacute 400ms đến 500ms thigrave khocircng thể chấp nhận được
Caacutec nguyecircn nhacircn gacircy ra trễ bao gồm Trễ trecircn mạng lưới trễ trecircn bộ mả hoacutea
giải matilde trễ trong quaacute trigravenh đoacuteng goacutei trễ bộ đệm trễ xử lyacute tiếng noacuteihellip2 Độ trượt(Jitter)
Nguyecircn nhacircn gacircy ra trượt lagrave goacutei tiacuten hiệu thoại trong quaacute trigravenh truyền từnguồn đến điacutech sẽ gặp phải những điều kiện khaacutec nhau trecircn mạng lưới do đoacute thườđến điacutech với những khoảng trễ khaacutec nhau Đacircy lagrave tiacutenh khocircng đồng nhất của trễ Mnguyecircn nhacircn khaacutec của trượt đối với ứng dụng PC to PC lagrave do việc sử dụng hệ điề
hagravenh phi thời gian thực caacutec goacutei tin thoại phải đợi hệ điều hagravenh xử lyacute trong nhữnkhoảng thời gian khaacutec nhau khi magrave hệ điều hagravenh đang phải xử lyacute đối với caacutec ứndụng khaacutec
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3472
Taacutec Giả Lecirc Quốc Toagraven
34
Higravenh Nguyecircn nhacircn xảy ra trượt
Để loại bỏ tiacutenh khocircng đồng nhất của trễ người ta thiết kế caacutec bộ đệm t(Jitter Buffer) tại nơi đến của caacutec goacutei tin caacutec goacutei tin đến với caacutec khoảng caacutech khaacutecnhau về thời gian được lưu tại bộ đệm rồi phaacutet khỏi bộ đệm với khoảng trễ n
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3572
Taacutec Giả Lecirc Quốc Toagraven
35
nhau Khi bộ đếm coacute kiacutech thước cagraveng lớn thigrave khả năng loại bỏ tiacutenh khocircng đồng nhấcagraveng lớn tuy nhiecircn việc sử dụng bộ đệm sẽ gacircy ra hiện tượng trễ trong ứng dụnthoại do đoacute cần coacute bagravei toaacuten cacircn đối giữa độ trễ vagrave độ trượt
Ngoagravei 2 nguyecircn nhacircn trecircn cograven một số nguyecircn nhacircn nữa ảnh hưởng đến chấtlượng thoại như độ mất goacutei giới hạn băng thocircng tiếng vọng
3 CAgraveI ĐẶT ASTERISK
1 Cagravei đặt Asterisk
1 Download vagrave bung neacuten
Để cagravei đặt Asterisk đầu tiecircn chuacuteng ta cần phải cagravei đặt hệ điều hagravenh linux trecircnmaacutey tiacutenh của migravenh Coacute thể cagravei hệ điều hagravenh Linux Fedora CentOS Redhat hoặcDebian Caacutec goacutei phần mềm phụ thuộc phải coacute trong hệ điều hagravenh Linux trước khcagravei Asterisk bao gồm
bison
gcc
kernel-source
libtermcap-devel
ncurses-devel
openssl096b
openssl-devel
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3672
Taacutec Giả Lecirc Quốc Toagraven
36
Sau khi hoagraven tất caacutec bước trecircn chuacuteng ta tiến hagravenh download phần mềmasterisk với phiecircn bản mới nhất
cd usrsrc
wgetftpftpdigiumcompubasteriskasterisk-140targz
wgetftpftpdigiumcompubasteriskasterisk-addons-140targz
wgetftpftpdigiumcompubasteriskasterisk-sounds-140targz
wgethttpftpdigiumcompubzaptelzaptel-140targz
wgethttpftpdigiumcompublibprilibpri-140targz
Việc download coacute thể nhanh hay chậm tugravey vagraveo tốc độ trecircn đường internet saukhi download hoagraven thagravenh chuacuteng ta tiến hagravenh bung neacuten caacutec goacutei ra thư mục chỉ định
tar ndashxzvf asterisk-140targz
tar ndashxzvf asterisk-addons-140targz
tar ndashxzvf asterisk-sounds-140targz
tar ndashxzvf zaptel-140targz
tar ndashxzvf libpri-140targz
Giải neacuten xong chuacuteng ta nhớ thực hiện lệnh
ln ndashs usrsrcasterisk-140 usrsrcasterisk lệnh nagravey để bảo đảm goacuteildquoaddonsrdquo được biecircn dịch đuacuteng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3772
Taacutec Giả Lecirc Quốc Toagraven
37
Bacircy giờ tới phần chuacuteng ta biecircn dịch caacutec goacutei đatilde giải neacuten ở trecircn trước tiecircn lagrave goacuteizaptel kế đến lagrave libpri sau cugraveng lagrave goacutei Asterisk
2 Cagravei đặt goacutei Zaptel
Goacutei zaptel sẽ chứa tại thư mục usrsrczaptel Đaacutenh lệnh như dưới đacircy để cagraveđặt
cd usrsrczaptel
make clean make install
Lệnh nagravey thực hiện khoảng 2 phuacutet tugravey vagraveo tốc độ maacutey tiacutenh cagravei đặt sau khicagravei đặt xong sẽ trở lại dấu nhắc lệnh vagrave hiển thị một loạt caacutec thocircng baacuteo trong đoacute một số bản tin lỗi magrave chủ yếu lagrave yecircu cầu cagravei đặt caacutec goacutei phụ thuộc đatilde liệt kecirc ở trecircnếu caacutec goacutei trecircn chưa được cagravei đặt
Goacutei zaptel nagravey chứa caacutec driver cho caacutec phần cứng kết giao tiếp với asterisk
do Digium phacircn phối vagrave một số thư viện cho việc coacute thực hiện giao tiếp với phầcứng hay khocircng
Để Asterisk coacute thể chạy cugraveng với khởi động của maacutey tiacutenh chuacuteng ta cần thựchiện lệnh
make config
Lệnh nagravey sẽ tạo ra script chegraven module zaptel vagraveo kernel vagrave chạy ztconfig vagraveoluacutec khởi động maacutey Trong Redhat script nagravey sẽ được cheacutep vagraveo etcinitd chạy ở mức 3
3 Cagravei đặt goacutei libpri
Kế đến chuacuteng ta biecircn dịch goacutei libpri tại thư mục usrsrclibpri bằng lệnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3972
Taacutec Giả Lecirc Quốc Toagraven
39
make config
3 Cagravei đặt TrixBox
1 Giới thiệu
TRIXBOX được phaacutet triển từ nhacircn của ứng dụng Asterisk được tổng hợp từmột số thagravenh phần chiacutenh được phaacutet triển bởi cộng đồng phaacutet triển nguồn mAsterisk dưới bản quyền GPL Trixbox bao gồm những thagravenh phần chiacutenh cho việcấu higravenh ứng dụng thống kecirc tigravenh trạng hoạt động hệ thống lưu trữ dự phograveng v
nhacircn lagrave hệ điều hagravenh CentOS một phiecircn bản khaacutec của Redhat tất cả kết hợp vớnhau tạo thagravenh một goacutei hoagraven chỉnh Khi cagravei goacutei nagravey vagraveo maacutey tiacutenh thigrave coacute thể sử dụngnhư một tổng đagravei PBX
Caacutec thagravenh phần chiacutenh trong goacutei TRIXBOX lagrave
Asterisk PBX Thagravenh phần chiacutenh của hệ thống Trixbox
CentOS Một phiecircn bản Linux khaacutec của Redhat hoagraven toagraven miển phiacute sửdụng Lagrave nhacircn chiacutenh cho Trixbox
SugarCRM Hệ thống quan hệ khaacutech hagraveng CRM
A2Billing ndash Lagrave thagravenh phần dagravenh cho việc xacircy dựng hệ thống điện thoạitrả trước hay cograven gọi lagrave điện thọai thẻ (Calling Card)
Flash Operator Panel Bảng điều khiển giaacutem saacutet tigravenh trạng hoạt độngcủa caacutec maacutey điện thoại trong hệ thống
Web MeetMe Control Quản lyacute triển khai hệ thống điện thoại hội nghị
FreePBX Đacircy lagrave cocircng cụ với giao diện web dagravenh cho việc cấu higravenh hệthống Asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4072
Taacutec Giả Lecirc Quốc Toagraven
40
Hệ thống Lưu trữ dự phograveng vagrave thống kecirc Lagrave thagravenh phần của TRIXBOXcung cấp caacutec cocircng cụ cần thiết cho việc bảo trigrave bảo dưỡng hệ thống
Hệ thống Apache-Php-Mysql dagravenh cho giải phaacutep Webserver của hệthống
2 DOWNLOAD VAgrave LẮP ĐẶT TRIXBOX
Địa chỉ downloadhttpsourceforgenetprojectsasteriskathome
Khi download xong file Trixboxiso Hatildey dugraveng file nagravey Burn vagraveo CD ( xinlưu yacute lagrave dugraveng Nero hoặc chương trigravenh cheacutep đĩa ưa thiacutech rồi burn vagraveo cd_romchứ khocircng phải cheacutep file đoacute vagraveo cd_rom)
Sau khi coacute CD Hatildey boot từ CD nagravey để cagravei đặt trixbox
Chuacute yacute dữ liệu trecircn đĩa cứng sẽ bị xoacutea sạch để cagravei đặt trixbox Nếu trongđĩa cứng cograven dữ liệu hatildey backup tất cả trước khi tiến hagravenh lắp đặt trixbox
Tới đacircy lần lượt caacutec magraven higravenh chỉ dẫn sẽ hiện ra vagrave cứ theo hướng dẫn magrave cagraveđặt Sau khi cagravei đặt xong chuacuteng ta dugraveng Username root vagrave password password đểđăng nhập hệ thống
3 Cấu higravenh địa chỉ IP cho card mạng
Thiết lập địa chỉ IP bằng caacutech gotilde lệnh
netconfig
Chọn OK để thiếp lập
Nếu trong mạng coacute hỗ trợ DHCP thigrave hatildey chọn mục nagravey cograven nếu khocircng hatildeynhập địa chỉ IP tĩnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4172
Taacutec Giả Lecirc Quốc Toagraven
41
IP 19216801
Netmask 2552552550
Gateway 19216893254 ngotilde ra becircn ngoagravei
Primary nameserver 19216893200 thiết lập nếu coacute
Chọn OK để chấp nhận caacutec thiết lập trecircn
Sau khi hoagraven tất hatildey lagravem cho thiết lập coacute hiệu lực bằng caacutech reset lại
maacutey tiacutenh hoặc dugraveng lệnh sau
Service network stop
Service network start
Đến đacircy xem như cagravei đặt hoagraven tất bacircy giờ để cấu higravenh được Asterisk chuacutengta vagraveo một magravey khaacutec vagrave mở Internet Explorer hoặc một trigravenh duyệt web bất kỳ
nhập vagraveohttp19216801đatilde cấu higravenh ở trecircn vagrave tiến hagravenh cấu higravenh hệ thốngvới tagravei khoảng username maint vagrave password password
4 Tổ Chức Thư Mục của Asterisk
Asterisk sử dụng nhiều thư mục trecircn hệ thống linux để quản lyacute caacutec khiacutea cạnkhaacutec nhau của hệ thống như nghi nhận bản tin thoại caacutec bản tin nhắc thoại hoặcaacutec tập tin cấu higravenh Phần nagravey sẽ trigravenh bagravey caacutec thư mục chiacutenh yếu được tạo ra tronquaacute trigravenh lắp đặt vagrave được cấu higravenh trong tập tin Asteriskconf
1 etcasterisk
Thư mục etcasterisk chứa tất cả caacutec tập tin cấu higravenh của hệ thốngAsterisk ngoại trừ tập tin Zaptelconf được đặt tại thư mục etc Phần cứnZaptel đầu tiecircn được phaacutet triển bởi Jim Dixon thuộc nhoacutem Zapata Telephony
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4272
Taacutec Giả Lecirc Quốc Toagraven
42
Group để giao tiếp giữa maacutey tiacutenh với mạng điện thoại magrave Asterisk lại sửdụng phần cứng nagravey với lyacute do đoacute magrave file cấu higravenh zaptelconf khocircng nằmtrong thư mục etcasterisk
2 usrlibasteriskmodules
Thư mục usrlibasteriskmodules chứa tất cả caacutec module cần thiết đểasterisk hoạt động Becircn trong thư mục lagrave caacutec ứng dụng khaacutec nhau caacutec codeccaacutec định dạng acircm thanh(format) vagrave caacutec kecircnh thocircng tin(channel) Theo mặc địnhAsterisk sẽ nạp tất cả caacutec module vagraveo luacutec khởi động Chuacuteng ta coacute thể khocircng cho
nạp một module bất kỳ bằng caacutech khocircng khai baacuteo sử dụng trong tập tinmodulesconf Lưu yacute khi khocircng cho nạp module thigrave phải biết chắc module đoacutekhocircng lagravem ảnh hưởng hoạt động của asterisk nếu khocircng lỗi sẽ xuất hiện
3 varlibasterisk
Thư mục varlibasterisk chứa tập tin astdb vagrave một số thư mục con Tập tinastdb định vị thocircng tin cơ sở dữ liệu của Asterisk giống như Microsoft WindowsRegistry
Caacutec thư mục con của thư mục varlibasterisk bao gồm
agi-bin
Thư mục agi-bin chứa caacutec script của người dugraveng magrave Asterisk coacute thểđịnh vị sử dụng qua caacutec ứng dụng AGI
AGI lagrave phần giao tiếp với ngocircn ngữ lập trigravenh script để thực hiện mộtsố cocircng việc của Asterisk từ becircn ngoagravei
firmware
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4372
Taacutec Giả Lecirc Quốc Toagraven
43
Thư mục firmware chứa một số phần dẻo(firmware) cho caacutec thiết bịkhaacutec nhau tương thiacutech với Asterisk Hiện tại chỉ coacute thư mục con iax chứa
firmware cho thiếy bị IAXy của Digium IAXy lagrave thiết bị ATA sử dụng giaothức IAX
images
Caacutec ứng dụng thocircng tin với caacutec kecircnh hỗ trợ ảnh images thigrave sử dụng thư mụcnagravey Nhưng hiện tại caacutec kecircnh thocircng tin hầu như khocircng hỗ trợ truyền ảnh images necircthư mục nagravey cũng hiếm khi được sử dụng Tuy nhiecircn nếu caacutec thiết bị coacute hỗ trợ ththư mục nagravey trở necircn hiệu dụng
keys
Asterisk coacute thể sử dụng hệ thống khoaacute publicprivate để xaacutec minh caacutec kết nốgiữa caacutec server Asterisk thocircng qua chữ kyacute điện tử RSA Nếu đặt một khoaacute publicvagraveo thư mục keys thigrave kết nối của server đầu becircn kia coacute thể được xaacutec minh bằn
kecircnh thocircng tin coacute hỗ trợ đối với Asterisk thigrave kecircnh giao thức IAX hỗ trợ loại xaacutecminh nagravey Một khoaacute private khocircng bao giờ cocircng bố chuacuteng ta chỉ cocircng bố khoaacute public đến với server cần nối đến sau đoacute sẽ được xaacutec minh với khoaacute private nagravey Chai khoaacute public vagrave private được lưu với đuocirci pub vagrave key đặt tại thư mục keys
mohmp3
Khi cấu higravenh Asterisk sử dụng tiacutenh năng Music on Hold tiacutenh năng hoạt độngsẽ thực hiện lấy caacutec tập tin mp3 tại thư mục mohmp3 Tập tin định dạng theo chucủa Asterisk necircn khi sử dụng caacutec file Mp3 thocircng thường cần coacute sự chuyển đổi thiacutechợp trước khi cheacutep vagraveo thư mục trecircn để sử dụng
sounds
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4472
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4572
Taacutec Giả Lecirc Quốc Toagraven
45
Thư mục tmp sử dụng để lưu trữ những thocircng tin tạm để luocircn bảo đảm khocircnxảy ra tigravenh trạng đọc vagrave viết tập tin cugraveng một luacutec Khi yecircu cầu xử lyacute tập tin chuacuteng thao taacutec trecircn thư mục tmp trước khi lưu vagraveo tập tin điacutech
Tất cả caacutec lời nhắc thoại từ phiacutea người sử dụng vagrave caacutec lời nhắc thoại sử dụ
cho thao taacutec hộp voicemail đều được chứa trong thư mục voicemail Một hộp thưthoại được tạo ra ứng với một maacutey nội bộ trong tập tin voicemailconf sẽ được tra một thư mục con tương ứng cho maacutey nội bộ đoacute tại thư mục voicemail
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4672
Taacutec Giả Lecirc Quốc Toagraven
46
5 varrun
Thư mục varrun chứa thocircng tin process ID(pid) cho tất cả caacutec tiến trigravenh đang
hoạt động trong hệ thống bao gồm cả Asterisk Lưu yacute lagrave ứng với mỗi hệ điều hagravethư mục varrun coacute thể khaacutec
6 varlogasterisk
Thư mục varlogasterisk lagrave nơi Asterisk chứa tất cả caacutec tập tin nhật kyacute haycograven gọi lagrave tập tin log Chuacuteng ta coacute thể tuỳ biến caacutec loại thocircng tin được lưu trong caacutec
tập tin log khaacutec nhau qua tập tin cấu higravenh loggerconf đặt tại thư mục etcasterisk7 varlogasteriskcdr-csv
Thư mục varlogasteriskcdr-csv được sử dụng để lưu chi tiết cuộc gọi CDRThocircng tin mặc định về chi tiết thocircng tin cuộc gọi lưu trữ trong tập tin MasterCVSnhưng thường thigrave ứng với mỗi matilde accountcode sẽ tạo một thư mục riecircng để lưu ctiết cuộc gọi cho maacutey đoacute
5 Một số lệnh thao taacutec trecircn hệ thống asterisk
Asterisk coacute hai thagravenh phần được xacircy dụng tiacutech hợp với nhau vagrave chạy songsong nhau
Asterisk Server bigravenh thường chạy ở chế độ nền(background) giống caacutec sevicestrong window
Asterisk Client ở chế độ dograveng lệnh CLI giao tiếp với Asterisk Server thực thicaacutec lệnh để kiểm tra hay xem caacutec thocircng tin của server
Để Chạy vagrave dừng Asterisk ở chế độ nền chuacuteng ta thực hiện lệnh sau
etcinitdasterisk (start|stop)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4772
Taacutec Giả Lecirc Quốc Toagraven
47
Một khi Asterisk đatilde chạy chuacuteng ta coacute thể chuyển qua chế độ CLI từ dấu nhắlệnh của linux như sau
asterisk ndashr
Khi vagraveo chế độ lệnh nếu muốn thoaacutet về lại dấu nhắc linux chuacuteng ta dugraveng lệnh
CLIgtexit
Caacutec lệnh cơ bản thực hiện tại CLIgt
Bất cứ khi nagraveo chỉnh sửa caacutec tập tin cấu higravenh chuacuteng ta đều cần phải nạp lại đcaacutec thay đổi coacute hiệu lực điều đoacute thực hiện bằng lệnh
CLIgtreload
Bậc chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 debug
CLIgt SIP debug
Tắt chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 no debug
CLIgt SIP no debug
Hiển thị caacutec trạng thaacutei thocircng tin của users peers vagravechannels của SIP hoặc IAX2
CLIgt sip show users
CLIgt sip show peers
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4872
Taacutec Giả Lecirc Quốc Toagraven
48
CLIgt sip show channels
CLIgt iax2 show peers
CLIgt iax2 show users
CLIgt iax2 show channels
Đến thời điểm nagravey coacute thể noacutei chuacuteng ta đatilde hoagraven thagravenh cagravei đặt hệ thốngAsterisk cagravei đặt xong mới lagrave bước mở đầu để cho hệ thống Asterisk hoạt động vtừng ứng dụng cụ thể chuacuteng sẽ tiếp tục thực hiện caacutec giai đoạn được xem lagrave qutrọng nhất trong việc triển khai hệ thống Asterisk đoacute lagrave giai đoạn cấu higravenh hệ thốnlecircn kế hoạch Diaplan chương cograven lại đều nhắm đến mục tiecircu nagravey
4 CẤU HIgraveNH HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Sau khi hoagraven tất phần cagravei đặt hệ thống asterisk một bước quan trọng tiếp thelagrave cấu higravenh hệ thống coacute thể noacutei đacircy lagrave bước quan trọng nhất của việc khiển khai thống đến với từng ứng dụng cụ thể Trong chương nagravey xin giới thiệu caacutei nhigraven đầtiecircn về việc cấu higravenh trước khi đi sacircu hơn ở những chương sau những gigrave giới thiệ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4972
Taacutec Giả Lecirc Quốc Toagraven
49
trong chương nagravey lagrave nền moacuteng cơ bản nhưng đủ để hiểu lagravem thế nagraveo hệ thống coacute thoạt động được nội dung chiacutenh bao gồm
+ Thao taacutec cấu higravenh trecircn hệ thống tập tin của asterisk
+ Caacutech cagravei đặt phần mềm softphone trecircn cocircng nghệ sip
+ Cấu higravenh cho hai maacutey softphone liecircn lạc với nhau
+ Cấu higravenh phaacutet thocircng điệp
+ Quay số qua Sip vagrave mạng PSTN
2 Tập Tin cấu higravenh
Tất cả caacutec file cấu higravenh cho hệ thống asterisk đều nằm tại thư mục etcasterisngoại trừ file zaptelconf cấu higravenh cho phần cứng TDM nằm tại thư mục etc caacutecthức cấu higravenh giống như tập tin ini của window vậy Caacutec nội dung sau dấu chấm phảy lagrave nội dung chuacute thiacutech trong file cấu higravenh giống như chuacute thiacutech trong ngocircn ngữ
lập trigravenh C lagrave dấu Tất cả caacutec khoảng trắng trong tập tin đều được bỏ qua khocircng yacute nghĩa trong file cấu higravenh
Trong file cấu higravenh cograven coacute hai pheacutep gaacuten rất thường xuyecircn được sử dụng pheacutep gaacuten ldquo=rdquo lagrave dugraveng cho việc gaacuten caacutec biến cograven pheacutep gaacuten ldquo=gtrdquo dugraveng cho việc gaacutencaacutec đối tượng sau đacircy lagrave một viacute dụ cho file cấu higravenh
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5072
Taacutec Giả Lecirc Quốc Toagraven
50
Đacircy lagrave caacutec dograveng chuacute thiacutech
[section]
Key=value gaacuten giaacute trị cho biến
[section2]
Key=gtobject Gaacuten giaacute trị cho đối tượng
Cuacute phaacutep thực hiện giống nhau cho tất cả caacutec file cấu higravenh nhưng coacute vagravei kiểukhaacutec nhau cho mỗi file cầu higravenh dựa vagraveo thức caacutech hoạt động của chuacuteng
3 Caacutec kiểu ảnh hưởng trong tập cấu higravenh
Coacute ba kiểu caacutech thức hoạt động của tập tin cấu higravenh như sau
Kiểu Caacutech hoạt động File cầu higravenh Viacute dụ
S i m p l eGroup
Coacute hiệu lực trecircntừng dograveng trongfile
Extensionconf
Exten=gt4001dial(sip400)
O p t i o ninheritance
Dograveng khai baacuteosau thừa kếnhững thocircng sốkhai baacuteo trước
Zapataconf [channels]
Context=From_PSTN
Signalling=fxs_ks
Group=1Channel=gt1
C o m p l e xEntity
Mỗi entity nhậnmột ngữ cảnh
sipconf
iaxconf
[cisco]
Type=friend
Secret=12345
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5172
Taacutec Giả Lecirc Quốc Toagraven
51
Host=192168165
Context=NoiBo
[xten]
Type=friend
Secret=6789
Host=dynamic
Context=NoiBo
1 Simple Group
Đacircy lagrave kiểu cấu higravenh đơn giản nhất thường sử dụng trong caacutec fileextentionconf meetmeconf voicemailconf tương ứng với mỗi dograveng khai baacuteo lagravemột đối tượng coacute yacute nghĩa trecircn dograveng đoacute
Viacute dụ
Extentionconf [section]
object1=gt op1op2op3
object2=gt op1bop2bop3b
Trong viacute dụ trecircn mỗi dograveng tương ứng với caacutec toaacuten tử khaacutec nhau object1 coacute caacutectoaacuten từ op1 op2 op3 trong khi đoacute object2 lại coacute caacutec toaacuten từ op1b op2b op3b
2 Option inheritance
Đacircy lagrave cấu higravenh kiểu thừa kế thường được cấu higravenh trong caacutec file zapataconfagentconf với kiểu cấu higravenh nagravey thigrave caacutec dograveng phiacutea dưới coacute thể thừa kế caacutec thocircng sdograveng phiacutea trecircn tương ứng với mỗi section caacutec dograveng phiacutea dưới coacute thể thay đổi caacutecthocircng số cho tươngứng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5272
Taacutec Giả Lecirc Quốc Toagraven
52
Viacute dụ
Extentionconf
[section]
Op1=bas
Op2=adv
Object1=gt1
Op1=int
Object1=gt2
Với cấu higravenh trecircn coacute thể giải thiacutech như sau object1=gt1 thừa hưởng hai thocircngsố ở phiacutea trecircn đoacute lagrave op1=bas vagrave op2=adv trong khi đoacute đối với object1=gt2 với thocircngsố op1=int được khai baacuteo lại necircn object1=gt2 được thừa kế từ hai thocircng số op1=invagrave op2=adv
3 Complex Entity
Với cấu kiểu nagravey được tổ chức thagravenh nhiều entity ứng với mỗi entity coacute nhiềthocircng số được khai baacuteo mỗi entity ở đacircy chiacutenh lagrave caacutec section để khai baacuteo caacutec kecircnhthocircng tin Cấu higravenh thường được sử dụng trong caacutec file iaxconf sipconf
Viacute dụ
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5372
Taacutec Giả Lecirc Quốc Toagraven
53
[entity1]
Op1=value1
Op2=value2
[entity2]
Op1=value3
Op2=value4
Entity1 coacute caacutec giaacute trị value1 vagrave value2 cho thocircng số op1 vagrave op2 trong khi đoacute
cũng lagrave thocircng số op1 vagrave op 2 nhưng coacute caacutec giaacute trị khaacutec lagrave value3 vagrave value4 choentity2
4 Cấu higravenh giao tiếp với mạng PSTN
1 Ngữ cảnh kết nối
Để kết nối với mạng PSTN chuacuteng ta cần phải coacute một card TDM với Cổng
FXO vagrave một đường dacircy điện thoại hoặc coacute thể lagrave một tổng đagravei nội bộ PBX Cnhiều nhagrave sản xuất phần cứng khaacutec nhau nhưng trong phần cấu higravenh dưới dacircy lagrave cấhigravenh cho card zapata TDM01B của digium (card nagravey hiện nay giaacute baacuten khoảng175$)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2072
Taacutec Giả Lecirc Quốc Toagraven
20
PBX thực hiện chuyển mạch cuộc gọi caacutec maacutey điện thoại nội bộ với nhau vvới caacutec maacutey điện thoại becircn ngoagravei thocircng qua đường trung kế Đồng thời thực hiệ
chuyển mạch caacutec cuộc gọi điện thoại từ becircn ngoagravei vagraveo caacutec maacutey điện thoại nội bộNgoagravei việc chuyển mạch cuộc gọi PBX cung cấp nhiều tiacutenh năng sử dụng
cho nhiều mục điacutech khaacutec nhau của khaacutech hagraveng magrave bản thacircn caacutec đường dacircy điệnthoại từ cocircng ty điện thoại kết nối đến khocircng thể thực hiện được caacutec tiacutenh năng ntương taacutec thoại(IVR) Voicemail phacircn phối cuộc gọi tự động(ADC)hellip
Hiện nay với việc phaacutet triển mạnh mẽ của cocircng nghệ VoIP chuacuteng ta cograven coacutethecircm thuật ngữ IP PBX Đacircy lagrave hệ thống chuyển mạch PBX với cocircng nghệ Voip
3 VOIP - Voice Over Internet Protocol
Voice over Internet Protocol (VoIP) lagrave một cocircng nghệ cho pheacutep truyền thoạisử dụng giao thức mạng IP trecircn cơ sở hạ tầng sẵn coacute của mạng internet Voip lagrave mtrong những cocircng nghệ viễn thocircng đang được quan tacircm nhất hiện nay khocircng chỉ đố
với nhagrave khai thaacutec caacutec nhagrave sản xuất magrave cograven cả với người sử dụng dịch vụVoip coacute thể vừa thực hiện mọi loại cuộc gọi như trecircn mạng điện thoại kecircn
truyền thống (PSTN) đồng thời truyền dữ liệu trecircn cơ sở mạng truyền dữ liệu Dcaacutec ưu điểm về giaacute thagravenh dịch vụ vagrave sự tiacutech hợp nhiều loại higravenh dịch vụ necircn voihiện nay được triển khai một caacutec rộng ratildei
Dịch vụ điện thoại voip lagrave dịch vụ ứng dụng giao thức IP nguyecircn tắc củaVoIP bao gồm việc số hoaacute tiacuten hiệu tiếng noacutei thực hiện việc neacuten tiacuten hiệu số chia nhcaacutec goacutei nếu cần vagrave truyền goacutei tin nagravey qua mạng tới nơi nhận caacutec goacutei tin nagravey đượraacutep lại theo đuacuteng thứ tự của bản tin giải matilde tiacuten hiệu tương tự phục hồi lại tiếng n ban đầu
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2172
Taacutec Giả Lecirc Quốc Toagraven
21
Caacutec cuộc gọi trong VoIP dựa trecircn cơ sở sử dụng kết hợp cả chuyển mạchkecircnh vagrave chuyển mạch goacutei Trong mỗi loại chuyển mạch đều coacute ưu nhược điể
riecircng của noacute Trong kỹ thuật chuyển mạch kecircnh giagravenh riecircng cho một kecircnh truyềngiữa hai thiết bị đầu cuối thocircng qua caacutec node chuyển mạch trung gian Trongchuyển mạch kecircnh tốc độ truyền dẫn luocircn luocircn cố định(nghĩa lagrave băng thocircng khocircnđổi) với mạng điện thoại PSTN tốc độ nagravey lagrave 64kbps truyền dẫn trong chuyểmạch kecircnh coacute độ trễ nhỏ
Trong chuyển mạch goacutei caacutec bản tin được chia thagravenh caacutec goacutei nhỏ gọi lagrave caacutec
goacutei nguyecircn tắc hoạt động của noacute lagrave sử dụng hệ thống lưu trữ vagrave chuyển tiếp caacutec gtin trong nuacutet mạng Đối với chuyển mạch goacutei khocircng tồn tại khaacutei niệm kecircnh riecircng băng thocircng khocircng cố định coacute nghĩa lagrave coacute thể thay đổi tốc độ truyền kỹ thuật chuyểmạch goacutei phải chịu độ trễ lớn vigrave trong chuyển mạch goacutei khocircng quy định thời giancho mỗi goacutei dữ liệu tới điacutech mỗi goacutei coacute thể đi bằng nhiều con đường khaacutec nhau đtới điacutech chuyển mạch goacutei thiacutech hợp cho việc truyền dữ liệu vigrave trong mạng truyền dliệu khocircng đogravei hỏi về thời gian thực như thoại để sử dụng ưu điểm của mỗi lo
chuyển mạch trecircn thigrave trong voip kết hợp sử dụng cả hai loại chuyển mạch kecircnh vchuyển mạch goacutei
4 PSTN ndash Public Switched Telephone Network
PSTN lagrave mạng chuyển mạch điện thoại cocircng cộng hay noacutei caacutech khaacutec lagrave mạngkết nối tất cả caacutec hệ thống tổng đagravei chuyển mạch-mạch
Để hiểu rotilde hơn hatildey xem xeacutet mạng PSTN với mạng Internet về khiacutea cạnhchuyển thoại trecircn đoacute Chuyển mạch mạch muốn thực hiện cuộc gọi giữa hai thu bao thigrave hệ thống phải giagravenh riecircng một kecircnh truyền 64kbps để chuyển tải tiacuten hiệthoại trecircn đoacute Cograven cuộc gọi điện thoại trecircn mạng Internet thigrave tiacuten hiệu thoại đượđoacuteng goacutei vagrave chuyển đi trecircn cugraveng kecircnh truyền với nhiều dịch vụ khaacutec Vigrave lẽ đoacute chấlượng cuộc gọi trecircn mạng PSTN bao giờ cũng tốt hơn trecircn mạng Internet nhưng đổ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2272
Taacutec Giả Lecirc Quốc Toagraven
22
lại chi phiacute lại đắc hơn rất nhiều đặc biệt lagrave caacutec cuộc gọi quốc tế necircn phải cần nhắc kỹ khi sử dụng
PSTN được phaacutet triển trecircn chuẩn ITU(International TelecommunicationUnion) cograven mạng Internet được phaacutet triển trecircn chuẩn IETF(Internet EngineeringTask Force) cả hai mạng trecircn đều sử dụng địa chỉ để định tuyến cuộc gọi PSTN sdụng caacutec con số điện thoại để chuyển mạch cuộc gọi giữa caacutec tổng đagravei điện thotrong khi đoacute trecircn mạng Internet địa chỉ IP sẽ được sử dụng để định tuyến caacutec goacutethoại
5 TDM ndash Time Division Multiplexing
Lagrave kỹ thuật gheacutep kecircnh phacircn chia thời gian nhiều tiacuten hiệu coacute thể truyền đồngthời trecircn một đường truyền TDM được sử dụng chuyển thoại trong hệ thống mạPSTN Coacute hai chuẩn gheacutep kecircnh TDM cơ bản lagrave E1 với 30 kecircnh thoại trecircn mộtkhung tốc độ 2Mbps vagrave T1 với 24 kecircnh thoại tốc độ 15Mbps
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2372
Taacutec Giả Lecirc Quốc Toagraven
23
Higravenh Minh họa gheacutep kecircnh phacircn chia theo thời gian
6 Caacutec higravenh thức baacuteo hiệu giao tiếp TDM
1 FXO vagrave FXS
FXO (Foreign Exchange Office) lagrave thiết bị nhận tiacuten hiệu từ tổng đagravei gửi đếnnhư dograveng chuocircng tiacuten hiệu nhấc gaacutec maacutey tiacuten hiệu mời quay số gửi vagrave nhận tiacuten hiệthoạihellip FXO giống như maacutey Fax hay modem dial-up 56k vậy Dugraveng để kết nối vớ
đường dacircy điện thoại
FXS (Foreign Exchange Station) lagrave thiết bị tại nơi cung cấp đường dacircy điệnthoại thiết bị FXS sẽ cung cấp tiacuten hiệu mời quay số(dialtone) dograveng chuocircng hồi acircmchuocircng(ring tone) Trong đường dacircy Analog FXS cung cấp dograveng chuocircng vagrave điện aacutepcho điện thoại hoạt động viacute dụ FXS cung cấp điện aacutep -48VDC đến maacutey điện tho
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2472
Taacutec Giả Lecirc Quốc Toagraven
24
Analog trong suốt thời gian đagravem thoại vagrave cung cấp 90VAC(20hz) để phaacutet điện aacuteprung chuocircng Thiết bị FXS phaacutet cograven thiết bị FXO nhận
Card TDM sử dụng trong hệ thống asterisk thường tiacutech hợp vừa thiết bị FXOvừa lagrave thiết bị FXS(Giống bộ ATA) FXO để kết nối với đường dacircy điện thoại cograveFXS dugraveng để kết nối với maacutey điện thoại analog thocircng thường dugraveng để chuyển mạcuộc gọi TDM qua hệ thống asterisk(Xem thecircm trong phần cấu higravenh cho kecircnhTDM)
Toacutem lại cần nắm
FXS được kết nối với FXO giống với đường dacircy điện thoại nối với maacuteyđiện thoại
FXS cung cấp nguồn cho điện thoại FXO(điện thoại Analog)
Higravenh a) Maacutey điện thoại vai trograve FXO kết nối với FXS(PSTN) Higravenh b) PBXkết nối với FXO vagrave FXS Higravenh c) ATA đoacuteng vai trograve như FXS để kết nối với maacuteyđiện thoại vai trograve FXO
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2572
Taacutec Giả Lecirc Quốc Toagraven
25
2 Baacuteo hiệu Analog giữa đầu cuối vagrave tổng đagravei
Khi chuacuteng ta nhấc mấy điện thoại để gọi thigrave nghe tiacuten hiệu mời quay số kh
cuộc gọi gọi đầu becircn kia bị bận thigrave chuacuteng ta nghe tiacuten hiệu bận(busy tone) caacutec loạtiacuten hiệu như vậy gọi lagrave caacutec tiacuten hiệu baacuteo hiệu analog Caacutec tiacuten hiệu như Mời quay sốtiacuten hiệu bận rung chuocircng trạng thaacutei nhấc gaacutec maacutey Caacutec loại tiacuten hiệu trecircn được trađổi giữa thiết bị FXO vagrave FXS
Coacute nhiều phương thức baacuteo hiệu khaacutec nhau ứng với từng nơi sử dụng vigrave thếtại nơi kết nối với đường dacircy điện thoại cần xem xeacutet họ đang sử dụng phương th
baacuteo hiệu gigrave từ đoacute chuacuteng ta khai thaacutec loại tiacuten hiệu baacuteo hiệu cho thiacutech hợp caacutec phương thức baacuteo hiệu như Loop Start Ground Start Một minh họa cho việc sửdụng sai phương thức baacuteo hiệu lagrave khi chuacuteng ta khai baacuteo phương thức baacuteo hiệu giữhệ thống Asterisk vagrave đường dacircy điện thoại khaacutec nhau thigrave dẫn đến Asterisk sẽ khocircnnhận biết được tiacuten hiệu gaacutec maacutey điều nagravey sẽ lagravem cho asterisk khocircng baacuteo giờ giải tỏđược cuộc gọi để thực hiện cuộc gọi mới
3 Baacuteo hiệu giữa caacutec tổng đagravei
SS7 hệ thống baacuteo hiệu số 7 được phaacutet triển bởi ATampT vagrave ITU lagrave hệ thống baacuteo hiệu chuyển caacutec cuộc gọi giữa caacutec tổng đagravei trong mạng PSTN Trong hệ thốn baacuteo hiệu số 7 tiacuten hiệu chuyển tải trecircn đường trung kế kết nối giữa hai tổng đagravei gồcoacute hai mạch riecircng một cho thoại vagrave một cho baacuteo hiệu như vậy thoại vagrave baacuteo hiệu cthể chuyển trecircn hai kecircnh vật lyacute khaacutec nhau
7 Baacuteo Hiệu trecircn mạng điện thoại VoIP
1 SIP Session Initiation Prorocol
Sip lagrave giao thức Internet dagravenh cho baacuteo hiệu VoIP được phaacutet triển bởi IETFcung cấp vagravei chức năng giống hệ thống baacuteo hiệu số 7 nhưng dựa trecircn nền IP Mộchức năng giống baacuteo hiệu số 7 đoacute lagrave baacuteo hiệu vagrave thoại chuyển tải trecircn hai kecircnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2672
Taacutec Giả Lecirc Quốc Toagraven
26
riecircng Giao thức SIP thực hiện chức năng thiết lập vagrave baacuteo hiệu cuộc gọi khi noacutei đế baacuteo hiệu cuộc gọi lagrave chỉ định caacutec tiacuten hiệu baacuteo hiệu như tiacuten hiệu mời quay số tiacutehiệu bậnhellip
2 Proxy server
Mặc dầu hai thiết bị SIP coacute thể liecircn lạc trực tiếp với nhau để khởi tạo cuộgọi nhưng trong giao thức SIP cograven coacute chức năng Proxy để linh hoạt hơn trong thiếlập cuộc gọi Proxy Server sẽ lagravem nhiệm vụ ghi nhận tất cả caacutec số điện thoại đư phiacutea client đăng kyacute đến qua bản tin ldquoRegistrationrdquo Khi một client khaacutec thực hiện
cuộc gọi thigrave thực sự Client đoacute khocircng biết số điện thoại cần gọi đang ở đacircu necircn thocircnqua Proxy server để tigravem kiếm thiết lập cuộc gọi
+
Higravenh Đăng kyacute từ Client đến SIP Proxy Với Giao thức SIP đường baacuteo hiệu vagravethoại riecircng
3 RTP vaacute NAT
Caacutec cuộc gọi trecircn Internet với giao thức SIP được chia thagravenh caacutec goacutei thoại vagraveđược chuyển qua giao thức RTP(Real Time Protocol) RTP lagrave giao thức khocircng chỉthực hiện chuyển caacutec goacutei thoại qua Internet magrave cograven coacute cả video nữa Một cuộc gọ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2772
Taacutec Giả Lecirc Quốc Toagraven
27
thocircng thường coacute hai hướng thocircng tin lagrave nhận vagrave phaacutet RTP lagravem việc chuyển caacutec goacutedữ liệu thoại cũng trecircn hai hướng
NAT Network Address Translators lagrave một trở ngại lớn trong giao thức RTPMạng sử dụng NAT lagrave một mạng chia sẻ nhiều địa chỉ IP nội bộ với một địa chỉ ICocircng cộng để kết nối với thế giới becircn ngoagravei NAT dugraveng để chia sẻ nhiều maacutey tiacutentrong mạng LAN nội bộ sử dụng được Internet nhưng cũng chiacutenh vigrave thế magrave caacutec maacutetiacutenh nội bộ gặp khoacute khăn trong việc thực hiện cuộc gọi VoIP qua Internet Đoacute chiacutenhlagrave vấn để trở ngại khi truyền thoại qua giao thức RTP
Higravenh Minh họa hoạt động của NAT
Trong Giao thức RTP như chuacuteng ta đatilde biết đoacute lagrave thoại được chuyển trecircn haiđường khaacutec nhau lagrave đường phaacutet vagrave đường thu Vấn đề NAT nằm ở chỗ tiacuten hiệthoại từ becircn ngoagravei vagraveo becircn trong qua giao thức RTP khocircng thực hiện được cograven chiềungược lại thigrave thực hiện tốt Hay noacutei caacutech khaacutec vấn đề NAT lagravem cho caacutec cuộc gọi t
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2872
Taacutec Giả Lecirc Quốc Toagraven
28
Internet đagravem thoại vagraveo caacutec maacutey nội bộ qua NAT thigrave khocircng nghe được cograven trongtrường hợp caacutec cuộc gọi từ caacutec maacutey nội bộ ra caacutec maacutey internet thigrave nghe tốt
Vấn đề NAT trecircn được giải quyết trong Asterisk bằng việc khai baacuteo thocircng số NAT=yes trong cấu higravenh kecircnh giao thức SIP
4 IAX ndash Inter Asterisk eXchange
IAX lagrave giao thức baacuteo hiệu Voip được phaacutet triển bởi taacutec giả của phần mềmAsterisk để khắc phục những hạn chế trong giao thức SIP Khocircng giống như giathức SIP chuyển tải thoại vagrave baacuteo hiệu trecircn hai kecircnh khaacutec nhau (out of band) IAXchuyển tải thoại vagrave baacuteo hiệu trecircn cugraveng một kecircnh(in band) IAX giải quyết được vấđề NAT đề cập trecircn phần giao thức SIP Mặc khaacutec IAX lagrave giao thức tối ưu trongviệc sử dụng băng thocircng cho pheacutep nhiều goacutei dữ liệu thoại trecircn cugraveng một IP headecơ chế chuyển tải nhiều cuộc gọi trecircn cugraveng một goacutei IP được gọi lagrave trung kế(Trunk)
Coacute thể giải thiacutech thecircm cơ chế trung kế như sau Giả sử Tocirci cần gửi 5 bức thtới người bạn của Tocirci Tocirci sẽ coacute hai higravenh thức để thực hiện thứ nhất lagrave mỗi bức tTocirci bỏ vagraveo một phong bigrave vậy tổng cộng tocirci phải sử dụng 5 phong bigrave để gửi đi 5 bứthư Caacutech thứ hai lagrave Tocirci bỏ 5 bức thư vagraveo 1 phong bigrave vagrave gửi đi vậy tổng cộng Tocircchỉ tốn 1 phong bigrave Qua phacircn tiacutech trecircn rotilde ragraveng việc 5 bức thư vagraveo một phong bigrave sẽtiết kiệm hơn so với 5 bức thư với 5 phong biacute Cơ chế trecircn cũng giống như nhiềcuộc gọi được đoacuteng thagravenh goacutei vagrave chuyển đi trecircn đường trung kế
Toacutem lại IAX lagrave giao thức dagravenh cho VoIP mới nhất cho đến thời điểm nagravey vớinhiều ưu điểm hấp dẫn như
+ Tối thiểu sử dụng băng thocircng
+ Trong suốt với NAT
+ Hiệu quả với cơ chế trung kế
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2972
Taacutec Giả Lecirc Quốc Toagraven
29
8 Thiết Bị VoIP
1 Voip Phone
Đacircy lagrave thiết bị phần cứng kết nối với mạng VoIP giống như maacutey điện thoại đ bagraven thocircng thường nhưng dagravenh cho VoIP cần phải thực hiện cấu higravenh trước khi sửdụng
Lưu yacute một số tiacutenh năng khi thực hiện mua thiết bị điện thoại VoIP
+ Low bandwidth hỗ trợ Codec nagraveo G729 lagrave tốt nhất hiện nay
+ Web Interface Phải coacute giao tiếp thiết lập cấu higravenh thacircn thiện dễ sử dụng
+ Audio Interface Coacute speaker phone hay khocircng
Giaacute thagravenh của điện thoại voip IP đắc hơn điện thoại thocircng thường giaacute khoảntrecircn dưới 100$ một caacutei
Higravenh Maacutey Điện Thoại VoIP
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3072
Taacutec Giả Lecirc Quốc Toagraven
30
2 Softphone
Lagrave một phần mềm được cagravei trecircn maacutey tiacutenh thực hiện tất cả caacutec chức năng giốn
như thiết bị điện thoại Voip cần lưu yacute khi sử dụng softphone lagrave maacutey tiacutenh phải ccard acircm thanh headphone vagrave firewall khocircng bị khoacutea
Sử dụng softphone với hệ thống Asterisk necircn dugraveng softphone với cocircng nghệgiao thức mới dagravenh cho Asterisk đoacute lagrave IAX
Higravenh Điện Thoại Softphone
3 Card giao tiếp với PSTN
Muốn cho pheacutep caacutec maacutey điện thoại nội bộ trong hệ thống Asterisk kết nối vthực hiện cuộc gọi với mạng PSTN chuacuteng ta cần phải coacute thiết bị phần cứng tươthiacutech Thiết bị phần cứng sử dụng cho hệ thống Asterisk do chiacutenh taacutec giả lập cocircng
Digium phacircn phối đacircy cũng chiacutenh lagrave yacute tưởng lớn trong việc phacircn phối phần mềmAsterisk lagrave hệ thống nguồn mở sử dụng miễn phiacute
Thiết bị phần cứng thường kyacute hiệu bắt đầu bằng cụm từ TDMxyB trong đoacute lagrave số lượng port FXS y lagrave số lượng port FXO giaacute trị tối đa của x vagrave y lagrave 4 viacute dụcard TDM22B coacute nghĩa lagrave coacute 2 fort FXS vagrave 2 port FXO
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3172
Taacutec Giả Lecirc Quốc Toagraven
31
Higravenh Card TDM22B gồm 4 port 2 FXS vagrave 2 FXO
4 ATA Analog Telephone Adaptors
ATA lagrave thiết bị kết nối với điện thoại Analog thocircng thường đến mạng VoIPmột thiết bị ATA gồm coacute hai loại port RJ-11 để kết nối với maacutey điện thoại analo
thocircng thường cograven RJ-45 để kết nối với mạng VoIP
ATA thực sự lagrave thiết bị FXS chuyển đổi tiacuten hiệu Analog sang tiacuten hiệu số sửdụng cho mạng VoIP để tận dụng maacutey điện thoại Analog necircn trang bị thiết bị ATAthay vigrave phải trang bị điện thoại VoIP
Thiết bị ATA sử dụng với giao thức IAX được Digium phacircn phối lagrave thiết bịATA được sử dụng rộng ratildei với Asterisk coacute tecircn gọi lagrave IAXy
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3272
Taacutec Giả Lecirc Quốc Toagraven
32
Higravenh Thiết bị ATA
9 Codecs
Thuật Toaacuten codecs(CompressorDe-compressor) lagrave một tập caacutec quy luật đượcsử dụng để chuyển đổi caacutec tiacuten hiệu thoại dạng Analog sang tiacuten hiệu số vagrave ngược lạ
Coacute nhiều thuật toaacuten codec để thực hiện chuyển đổi tiacuten hiệu analog sang tiacuten
hiệu số dạng nhị phacircn (01) như G711 GSM G729hellipỨng với mỗi thuật toaacuten coacutenhững ưu điểm riecircng đặc biệt lagrave việc tối ưu sử dụng băng thocircng trecircn đường truyềMục tiecircu cuối cugraveng lagrave caacutec thuật toaacuten đưa ra phải đảm bảo chất lượng cuộc gọi nhvagrave tiết kiệm băng thocircng nhất
G729 lagrave thuật toaacuten codec tốt nhất hiện nay trong hệ thống VoIP Với hệthống Asterisk để sử dụng thuật toaacuten nagravey cần phải mua bản quyền sử dụng vigrave đacircy
codec khocircng miễn phiacute sử dụng
10 QoS ndash Quality of Service
Caacutec yếu tố ảnh hưởng đến chất lượng của dịch vụ đối với VoIP đoacute lagrave caacuteyếu ảnh hưởng đến chất lượng tiacuten hiệu thoại
1 Độ trễ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3372
Taacutec Giả Lecirc Quốc Toagraven
33
Thoại lagrave dịch vụ mang tiacutenh thời gian thực rất cao vigrave thế trễ lagrave yếu tố ảnhhưởng rất lớn đến chất lượng dịch vụ Trễ được định nghĩa lagrave khoảng thời gian tiacute
từ luacutec tiacuten hiệu thoại đi từ miệng người noacutei tới tai người nghe Trễ lagrave yếu tố khocircnthể traacutenh khỏi độ trễ đối với mạng điện thoại truyền thống (mạng PSTN) khoảng50ms đến 70ms theo khiến nghị của ITU-T để đảm bảo chất lượng cho hệ thốVoIP thigrave độ trễ từ đầu phaacutet tới đầu thu hoặc ngược lại khocircng được vượt quaacute 150mkhi magrave độ trễ vượt quaacute 400ms đến 500ms thigrave khocircng thể chấp nhận được
Caacutec nguyecircn nhacircn gacircy ra trễ bao gồm Trễ trecircn mạng lưới trễ trecircn bộ mả hoacutea
giải matilde trễ trong quaacute trigravenh đoacuteng goacutei trễ bộ đệm trễ xử lyacute tiếng noacuteihellip2 Độ trượt(Jitter)
Nguyecircn nhacircn gacircy ra trượt lagrave goacutei tiacuten hiệu thoại trong quaacute trigravenh truyền từnguồn đến điacutech sẽ gặp phải những điều kiện khaacutec nhau trecircn mạng lưới do đoacute thườđến điacutech với những khoảng trễ khaacutec nhau Đacircy lagrave tiacutenh khocircng đồng nhất của trễ Mnguyecircn nhacircn khaacutec của trượt đối với ứng dụng PC to PC lagrave do việc sử dụng hệ điề
hagravenh phi thời gian thực caacutec goacutei tin thoại phải đợi hệ điều hagravenh xử lyacute trong nhữnkhoảng thời gian khaacutec nhau khi magrave hệ điều hagravenh đang phải xử lyacute đối với caacutec ứndụng khaacutec
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3472
Taacutec Giả Lecirc Quốc Toagraven
34
Higravenh Nguyecircn nhacircn xảy ra trượt
Để loại bỏ tiacutenh khocircng đồng nhất của trễ người ta thiết kế caacutec bộ đệm t(Jitter Buffer) tại nơi đến của caacutec goacutei tin caacutec goacutei tin đến với caacutec khoảng caacutech khaacutecnhau về thời gian được lưu tại bộ đệm rồi phaacutet khỏi bộ đệm với khoảng trễ n
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3572
Taacutec Giả Lecirc Quốc Toagraven
35
nhau Khi bộ đếm coacute kiacutech thước cagraveng lớn thigrave khả năng loại bỏ tiacutenh khocircng đồng nhấcagraveng lớn tuy nhiecircn việc sử dụng bộ đệm sẽ gacircy ra hiện tượng trễ trong ứng dụnthoại do đoacute cần coacute bagravei toaacuten cacircn đối giữa độ trễ vagrave độ trượt
Ngoagravei 2 nguyecircn nhacircn trecircn cograven một số nguyecircn nhacircn nữa ảnh hưởng đến chấtlượng thoại như độ mất goacutei giới hạn băng thocircng tiếng vọng
3 CAgraveI ĐẶT ASTERISK
1 Cagravei đặt Asterisk
1 Download vagrave bung neacuten
Để cagravei đặt Asterisk đầu tiecircn chuacuteng ta cần phải cagravei đặt hệ điều hagravenh linux trecircnmaacutey tiacutenh của migravenh Coacute thể cagravei hệ điều hagravenh Linux Fedora CentOS Redhat hoặcDebian Caacutec goacutei phần mềm phụ thuộc phải coacute trong hệ điều hagravenh Linux trước khcagravei Asterisk bao gồm
bison
gcc
kernel-source
libtermcap-devel
ncurses-devel
openssl096b
openssl-devel
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3672
Taacutec Giả Lecirc Quốc Toagraven
36
Sau khi hoagraven tất caacutec bước trecircn chuacuteng ta tiến hagravenh download phần mềmasterisk với phiecircn bản mới nhất
cd usrsrc
wgetftpftpdigiumcompubasteriskasterisk-140targz
wgetftpftpdigiumcompubasteriskasterisk-addons-140targz
wgetftpftpdigiumcompubasteriskasterisk-sounds-140targz
wgethttpftpdigiumcompubzaptelzaptel-140targz
wgethttpftpdigiumcompublibprilibpri-140targz
Việc download coacute thể nhanh hay chậm tugravey vagraveo tốc độ trecircn đường internet saukhi download hoagraven thagravenh chuacuteng ta tiến hagravenh bung neacuten caacutec goacutei ra thư mục chỉ định
tar ndashxzvf asterisk-140targz
tar ndashxzvf asterisk-addons-140targz
tar ndashxzvf asterisk-sounds-140targz
tar ndashxzvf zaptel-140targz
tar ndashxzvf libpri-140targz
Giải neacuten xong chuacuteng ta nhớ thực hiện lệnh
ln ndashs usrsrcasterisk-140 usrsrcasterisk lệnh nagravey để bảo đảm goacuteildquoaddonsrdquo được biecircn dịch đuacuteng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3772
Taacutec Giả Lecirc Quốc Toagraven
37
Bacircy giờ tới phần chuacuteng ta biecircn dịch caacutec goacutei đatilde giải neacuten ở trecircn trước tiecircn lagrave goacuteizaptel kế đến lagrave libpri sau cugraveng lagrave goacutei Asterisk
2 Cagravei đặt goacutei Zaptel
Goacutei zaptel sẽ chứa tại thư mục usrsrczaptel Đaacutenh lệnh như dưới đacircy để cagraveđặt
cd usrsrczaptel
make clean make install
Lệnh nagravey thực hiện khoảng 2 phuacutet tugravey vagraveo tốc độ maacutey tiacutenh cagravei đặt sau khicagravei đặt xong sẽ trở lại dấu nhắc lệnh vagrave hiển thị một loạt caacutec thocircng baacuteo trong đoacute một số bản tin lỗi magrave chủ yếu lagrave yecircu cầu cagravei đặt caacutec goacutei phụ thuộc đatilde liệt kecirc ở trecircnếu caacutec goacutei trecircn chưa được cagravei đặt
Goacutei zaptel nagravey chứa caacutec driver cho caacutec phần cứng kết giao tiếp với asterisk
do Digium phacircn phối vagrave một số thư viện cho việc coacute thực hiện giao tiếp với phầcứng hay khocircng
Để Asterisk coacute thể chạy cugraveng với khởi động của maacutey tiacutenh chuacuteng ta cần thựchiện lệnh
make config
Lệnh nagravey sẽ tạo ra script chegraven module zaptel vagraveo kernel vagrave chạy ztconfig vagraveoluacutec khởi động maacutey Trong Redhat script nagravey sẽ được cheacutep vagraveo etcinitd chạy ở mức 3
3 Cagravei đặt goacutei libpri
Kế đến chuacuteng ta biecircn dịch goacutei libpri tại thư mục usrsrclibpri bằng lệnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3972
Taacutec Giả Lecirc Quốc Toagraven
39
make config
3 Cagravei đặt TrixBox
1 Giới thiệu
TRIXBOX được phaacutet triển từ nhacircn của ứng dụng Asterisk được tổng hợp từmột số thagravenh phần chiacutenh được phaacutet triển bởi cộng đồng phaacutet triển nguồn mAsterisk dưới bản quyền GPL Trixbox bao gồm những thagravenh phần chiacutenh cho việcấu higravenh ứng dụng thống kecirc tigravenh trạng hoạt động hệ thống lưu trữ dự phograveng v
nhacircn lagrave hệ điều hagravenh CentOS một phiecircn bản khaacutec của Redhat tất cả kết hợp vớnhau tạo thagravenh một goacutei hoagraven chỉnh Khi cagravei goacutei nagravey vagraveo maacutey tiacutenh thigrave coacute thể sử dụngnhư một tổng đagravei PBX
Caacutec thagravenh phần chiacutenh trong goacutei TRIXBOX lagrave
Asterisk PBX Thagravenh phần chiacutenh của hệ thống Trixbox
CentOS Một phiecircn bản Linux khaacutec của Redhat hoagraven toagraven miển phiacute sửdụng Lagrave nhacircn chiacutenh cho Trixbox
SugarCRM Hệ thống quan hệ khaacutech hagraveng CRM
A2Billing ndash Lagrave thagravenh phần dagravenh cho việc xacircy dựng hệ thống điện thoạitrả trước hay cograven gọi lagrave điện thọai thẻ (Calling Card)
Flash Operator Panel Bảng điều khiển giaacutem saacutet tigravenh trạng hoạt độngcủa caacutec maacutey điện thoại trong hệ thống
Web MeetMe Control Quản lyacute triển khai hệ thống điện thoại hội nghị
FreePBX Đacircy lagrave cocircng cụ với giao diện web dagravenh cho việc cấu higravenh hệthống Asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4072
Taacutec Giả Lecirc Quốc Toagraven
40
Hệ thống Lưu trữ dự phograveng vagrave thống kecirc Lagrave thagravenh phần của TRIXBOXcung cấp caacutec cocircng cụ cần thiết cho việc bảo trigrave bảo dưỡng hệ thống
Hệ thống Apache-Php-Mysql dagravenh cho giải phaacutep Webserver của hệthống
2 DOWNLOAD VAgrave LẮP ĐẶT TRIXBOX
Địa chỉ downloadhttpsourceforgenetprojectsasteriskathome
Khi download xong file Trixboxiso Hatildey dugraveng file nagravey Burn vagraveo CD ( xinlưu yacute lagrave dugraveng Nero hoặc chương trigravenh cheacutep đĩa ưa thiacutech rồi burn vagraveo cd_romchứ khocircng phải cheacutep file đoacute vagraveo cd_rom)
Sau khi coacute CD Hatildey boot từ CD nagravey để cagravei đặt trixbox
Chuacute yacute dữ liệu trecircn đĩa cứng sẽ bị xoacutea sạch để cagravei đặt trixbox Nếu trongđĩa cứng cograven dữ liệu hatildey backup tất cả trước khi tiến hagravenh lắp đặt trixbox
Tới đacircy lần lượt caacutec magraven higravenh chỉ dẫn sẽ hiện ra vagrave cứ theo hướng dẫn magrave cagraveđặt Sau khi cagravei đặt xong chuacuteng ta dugraveng Username root vagrave password password đểđăng nhập hệ thống
3 Cấu higravenh địa chỉ IP cho card mạng
Thiết lập địa chỉ IP bằng caacutech gotilde lệnh
netconfig
Chọn OK để thiếp lập
Nếu trong mạng coacute hỗ trợ DHCP thigrave hatildey chọn mục nagravey cograven nếu khocircng hatildeynhập địa chỉ IP tĩnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4172
Taacutec Giả Lecirc Quốc Toagraven
41
IP 19216801
Netmask 2552552550
Gateway 19216893254 ngotilde ra becircn ngoagravei
Primary nameserver 19216893200 thiết lập nếu coacute
Chọn OK để chấp nhận caacutec thiết lập trecircn
Sau khi hoagraven tất hatildey lagravem cho thiết lập coacute hiệu lực bằng caacutech reset lại
maacutey tiacutenh hoặc dugraveng lệnh sau
Service network stop
Service network start
Đến đacircy xem như cagravei đặt hoagraven tất bacircy giờ để cấu higravenh được Asterisk chuacutengta vagraveo một magravey khaacutec vagrave mở Internet Explorer hoặc một trigravenh duyệt web bất kỳ
nhập vagraveohttp19216801đatilde cấu higravenh ở trecircn vagrave tiến hagravenh cấu higravenh hệ thốngvới tagravei khoảng username maint vagrave password password
4 Tổ Chức Thư Mục của Asterisk
Asterisk sử dụng nhiều thư mục trecircn hệ thống linux để quản lyacute caacutec khiacutea cạnkhaacutec nhau của hệ thống như nghi nhận bản tin thoại caacutec bản tin nhắc thoại hoặcaacutec tập tin cấu higravenh Phần nagravey sẽ trigravenh bagravey caacutec thư mục chiacutenh yếu được tạo ra tronquaacute trigravenh lắp đặt vagrave được cấu higravenh trong tập tin Asteriskconf
1 etcasterisk
Thư mục etcasterisk chứa tất cả caacutec tập tin cấu higravenh của hệ thốngAsterisk ngoại trừ tập tin Zaptelconf được đặt tại thư mục etc Phần cứnZaptel đầu tiecircn được phaacutet triển bởi Jim Dixon thuộc nhoacutem Zapata Telephony
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4272
Taacutec Giả Lecirc Quốc Toagraven
42
Group để giao tiếp giữa maacutey tiacutenh với mạng điện thoại magrave Asterisk lại sửdụng phần cứng nagravey với lyacute do đoacute magrave file cấu higravenh zaptelconf khocircng nằmtrong thư mục etcasterisk
2 usrlibasteriskmodules
Thư mục usrlibasteriskmodules chứa tất cả caacutec module cần thiết đểasterisk hoạt động Becircn trong thư mục lagrave caacutec ứng dụng khaacutec nhau caacutec codeccaacutec định dạng acircm thanh(format) vagrave caacutec kecircnh thocircng tin(channel) Theo mặc địnhAsterisk sẽ nạp tất cả caacutec module vagraveo luacutec khởi động Chuacuteng ta coacute thể khocircng cho
nạp một module bất kỳ bằng caacutech khocircng khai baacuteo sử dụng trong tập tinmodulesconf Lưu yacute khi khocircng cho nạp module thigrave phải biết chắc module đoacutekhocircng lagravem ảnh hưởng hoạt động của asterisk nếu khocircng lỗi sẽ xuất hiện
3 varlibasterisk
Thư mục varlibasterisk chứa tập tin astdb vagrave một số thư mục con Tập tinastdb định vị thocircng tin cơ sở dữ liệu của Asterisk giống như Microsoft WindowsRegistry
Caacutec thư mục con của thư mục varlibasterisk bao gồm
agi-bin
Thư mục agi-bin chứa caacutec script của người dugraveng magrave Asterisk coacute thểđịnh vị sử dụng qua caacutec ứng dụng AGI
AGI lagrave phần giao tiếp với ngocircn ngữ lập trigravenh script để thực hiện mộtsố cocircng việc của Asterisk từ becircn ngoagravei
firmware
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4372
Taacutec Giả Lecirc Quốc Toagraven
43
Thư mục firmware chứa một số phần dẻo(firmware) cho caacutec thiết bịkhaacutec nhau tương thiacutech với Asterisk Hiện tại chỉ coacute thư mục con iax chứa
firmware cho thiếy bị IAXy của Digium IAXy lagrave thiết bị ATA sử dụng giaothức IAX
images
Caacutec ứng dụng thocircng tin với caacutec kecircnh hỗ trợ ảnh images thigrave sử dụng thư mụcnagravey Nhưng hiện tại caacutec kecircnh thocircng tin hầu như khocircng hỗ trợ truyền ảnh images necircthư mục nagravey cũng hiếm khi được sử dụng Tuy nhiecircn nếu caacutec thiết bị coacute hỗ trợ ththư mục nagravey trở necircn hiệu dụng
keys
Asterisk coacute thể sử dụng hệ thống khoaacute publicprivate để xaacutec minh caacutec kết nốgiữa caacutec server Asterisk thocircng qua chữ kyacute điện tử RSA Nếu đặt một khoaacute publicvagraveo thư mục keys thigrave kết nối của server đầu becircn kia coacute thể được xaacutec minh bằn
kecircnh thocircng tin coacute hỗ trợ đối với Asterisk thigrave kecircnh giao thức IAX hỗ trợ loại xaacutecminh nagravey Một khoaacute private khocircng bao giờ cocircng bố chuacuteng ta chỉ cocircng bố khoaacute public đến với server cần nối đến sau đoacute sẽ được xaacutec minh với khoaacute private nagravey Chai khoaacute public vagrave private được lưu với đuocirci pub vagrave key đặt tại thư mục keys
mohmp3
Khi cấu higravenh Asterisk sử dụng tiacutenh năng Music on Hold tiacutenh năng hoạt độngsẽ thực hiện lấy caacutec tập tin mp3 tại thư mục mohmp3 Tập tin định dạng theo chucủa Asterisk necircn khi sử dụng caacutec file Mp3 thocircng thường cần coacute sự chuyển đổi thiacutechợp trước khi cheacutep vagraveo thư mục trecircn để sử dụng
sounds
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4472
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4572
Taacutec Giả Lecirc Quốc Toagraven
45
Thư mục tmp sử dụng để lưu trữ những thocircng tin tạm để luocircn bảo đảm khocircnxảy ra tigravenh trạng đọc vagrave viết tập tin cugraveng một luacutec Khi yecircu cầu xử lyacute tập tin chuacuteng thao taacutec trecircn thư mục tmp trước khi lưu vagraveo tập tin điacutech
Tất cả caacutec lời nhắc thoại từ phiacutea người sử dụng vagrave caacutec lời nhắc thoại sử dụ
cho thao taacutec hộp voicemail đều được chứa trong thư mục voicemail Một hộp thưthoại được tạo ra ứng với một maacutey nội bộ trong tập tin voicemailconf sẽ được tra một thư mục con tương ứng cho maacutey nội bộ đoacute tại thư mục voicemail
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4672
Taacutec Giả Lecirc Quốc Toagraven
46
5 varrun
Thư mục varrun chứa thocircng tin process ID(pid) cho tất cả caacutec tiến trigravenh đang
hoạt động trong hệ thống bao gồm cả Asterisk Lưu yacute lagrave ứng với mỗi hệ điều hagravethư mục varrun coacute thể khaacutec
6 varlogasterisk
Thư mục varlogasterisk lagrave nơi Asterisk chứa tất cả caacutec tập tin nhật kyacute haycograven gọi lagrave tập tin log Chuacuteng ta coacute thể tuỳ biến caacutec loại thocircng tin được lưu trong caacutec
tập tin log khaacutec nhau qua tập tin cấu higravenh loggerconf đặt tại thư mục etcasterisk7 varlogasteriskcdr-csv
Thư mục varlogasteriskcdr-csv được sử dụng để lưu chi tiết cuộc gọi CDRThocircng tin mặc định về chi tiết thocircng tin cuộc gọi lưu trữ trong tập tin MasterCVSnhưng thường thigrave ứng với mỗi matilde accountcode sẽ tạo một thư mục riecircng để lưu ctiết cuộc gọi cho maacutey đoacute
5 Một số lệnh thao taacutec trecircn hệ thống asterisk
Asterisk coacute hai thagravenh phần được xacircy dụng tiacutech hợp với nhau vagrave chạy songsong nhau
Asterisk Server bigravenh thường chạy ở chế độ nền(background) giống caacutec sevicestrong window
Asterisk Client ở chế độ dograveng lệnh CLI giao tiếp với Asterisk Server thực thicaacutec lệnh để kiểm tra hay xem caacutec thocircng tin của server
Để Chạy vagrave dừng Asterisk ở chế độ nền chuacuteng ta thực hiện lệnh sau
etcinitdasterisk (start|stop)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4772
Taacutec Giả Lecirc Quốc Toagraven
47
Một khi Asterisk đatilde chạy chuacuteng ta coacute thể chuyển qua chế độ CLI từ dấu nhắlệnh của linux như sau
asterisk ndashr
Khi vagraveo chế độ lệnh nếu muốn thoaacutet về lại dấu nhắc linux chuacuteng ta dugraveng lệnh
CLIgtexit
Caacutec lệnh cơ bản thực hiện tại CLIgt
Bất cứ khi nagraveo chỉnh sửa caacutec tập tin cấu higravenh chuacuteng ta đều cần phải nạp lại đcaacutec thay đổi coacute hiệu lực điều đoacute thực hiện bằng lệnh
CLIgtreload
Bậc chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 debug
CLIgt SIP debug
Tắt chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 no debug
CLIgt SIP no debug
Hiển thị caacutec trạng thaacutei thocircng tin của users peers vagravechannels của SIP hoặc IAX2
CLIgt sip show users
CLIgt sip show peers
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4872
Taacutec Giả Lecirc Quốc Toagraven
48
CLIgt sip show channels
CLIgt iax2 show peers
CLIgt iax2 show users
CLIgt iax2 show channels
Đến thời điểm nagravey coacute thể noacutei chuacuteng ta đatilde hoagraven thagravenh cagravei đặt hệ thốngAsterisk cagravei đặt xong mới lagrave bước mở đầu để cho hệ thống Asterisk hoạt động vtừng ứng dụng cụ thể chuacuteng sẽ tiếp tục thực hiện caacutec giai đoạn được xem lagrave qutrọng nhất trong việc triển khai hệ thống Asterisk đoacute lagrave giai đoạn cấu higravenh hệ thốnlecircn kế hoạch Diaplan chương cograven lại đều nhắm đến mục tiecircu nagravey
4 CẤU HIgraveNH HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Sau khi hoagraven tất phần cagravei đặt hệ thống asterisk một bước quan trọng tiếp thelagrave cấu higravenh hệ thống coacute thể noacutei đacircy lagrave bước quan trọng nhất của việc khiển khai thống đến với từng ứng dụng cụ thể Trong chương nagravey xin giới thiệu caacutei nhigraven đầtiecircn về việc cấu higravenh trước khi đi sacircu hơn ở những chương sau những gigrave giới thiệ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4972
Taacutec Giả Lecirc Quốc Toagraven
49
trong chương nagravey lagrave nền moacuteng cơ bản nhưng đủ để hiểu lagravem thế nagraveo hệ thống coacute thoạt động được nội dung chiacutenh bao gồm
+ Thao taacutec cấu higravenh trecircn hệ thống tập tin của asterisk
+ Caacutech cagravei đặt phần mềm softphone trecircn cocircng nghệ sip
+ Cấu higravenh cho hai maacutey softphone liecircn lạc với nhau
+ Cấu higravenh phaacutet thocircng điệp
+ Quay số qua Sip vagrave mạng PSTN
2 Tập Tin cấu higravenh
Tất cả caacutec file cấu higravenh cho hệ thống asterisk đều nằm tại thư mục etcasterisngoại trừ file zaptelconf cấu higravenh cho phần cứng TDM nằm tại thư mục etc caacutecthức cấu higravenh giống như tập tin ini của window vậy Caacutec nội dung sau dấu chấm phảy lagrave nội dung chuacute thiacutech trong file cấu higravenh giống như chuacute thiacutech trong ngocircn ngữ
lập trigravenh C lagrave dấu Tất cả caacutec khoảng trắng trong tập tin đều được bỏ qua khocircng yacute nghĩa trong file cấu higravenh
Trong file cấu higravenh cograven coacute hai pheacutep gaacuten rất thường xuyecircn được sử dụng pheacutep gaacuten ldquo=rdquo lagrave dugraveng cho việc gaacuten caacutec biến cograven pheacutep gaacuten ldquo=gtrdquo dugraveng cho việc gaacutencaacutec đối tượng sau đacircy lagrave một viacute dụ cho file cấu higravenh
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5072
Taacutec Giả Lecirc Quốc Toagraven
50
Đacircy lagrave caacutec dograveng chuacute thiacutech
[section]
Key=value gaacuten giaacute trị cho biến
[section2]
Key=gtobject Gaacuten giaacute trị cho đối tượng
Cuacute phaacutep thực hiện giống nhau cho tất cả caacutec file cấu higravenh nhưng coacute vagravei kiểukhaacutec nhau cho mỗi file cầu higravenh dựa vagraveo thức caacutech hoạt động của chuacuteng
3 Caacutec kiểu ảnh hưởng trong tập cấu higravenh
Coacute ba kiểu caacutech thức hoạt động của tập tin cấu higravenh như sau
Kiểu Caacutech hoạt động File cầu higravenh Viacute dụ
S i m p l eGroup
Coacute hiệu lực trecircntừng dograveng trongfile
Extensionconf
Exten=gt4001dial(sip400)
O p t i o ninheritance
Dograveng khai baacuteosau thừa kếnhững thocircng sốkhai baacuteo trước
Zapataconf [channels]
Context=From_PSTN
Signalling=fxs_ks
Group=1Channel=gt1
C o m p l e xEntity
Mỗi entity nhậnmột ngữ cảnh
sipconf
iaxconf
[cisco]
Type=friend
Secret=12345
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5172
Taacutec Giả Lecirc Quốc Toagraven
51
Host=192168165
Context=NoiBo
[xten]
Type=friend
Secret=6789
Host=dynamic
Context=NoiBo
1 Simple Group
Đacircy lagrave kiểu cấu higravenh đơn giản nhất thường sử dụng trong caacutec fileextentionconf meetmeconf voicemailconf tương ứng với mỗi dograveng khai baacuteo lagravemột đối tượng coacute yacute nghĩa trecircn dograveng đoacute
Viacute dụ
Extentionconf [section]
object1=gt op1op2op3
object2=gt op1bop2bop3b
Trong viacute dụ trecircn mỗi dograveng tương ứng với caacutec toaacuten tử khaacutec nhau object1 coacute caacutectoaacuten từ op1 op2 op3 trong khi đoacute object2 lại coacute caacutec toaacuten từ op1b op2b op3b
2 Option inheritance
Đacircy lagrave cấu higravenh kiểu thừa kế thường được cấu higravenh trong caacutec file zapataconfagentconf với kiểu cấu higravenh nagravey thigrave caacutec dograveng phiacutea dưới coacute thể thừa kế caacutec thocircng sdograveng phiacutea trecircn tương ứng với mỗi section caacutec dograveng phiacutea dưới coacute thể thay đổi caacutecthocircng số cho tươngứng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5272
Taacutec Giả Lecirc Quốc Toagraven
52
Viacute dụ
Extentionconf
[section]
Op1=bas
Op2=adv
Object1=gt1
Op1=int
Object1=gt2
Với cấu higravenh trecircn coacute thể giải thiacutech như sau object1=gt1 thừa hưởng hai thocircngsố ở phiacutea trecircn đoacute lagrave op1=bas vagrave op2=adv trong khi đoacute đối với object1=gt2 với thocircngsố op1=int được khai baacuteo lại necircn object1=gt2 được thừa kế từ hai thocircng số op1=invagrave op2=adv
3 Complex Entity
Với cấu kiểu nagravey được tổ chức thagravenh nhiều entity ứng với mỗi entity coacute nhiềthocircng số được khai baacuteo mỗi entity ở đacircy chiacutenh lagrave caacutec section để khai baacuteo caacutec kecircnhthocircng tin Cấu higravenh thường được sử dụng trong caacutec file iaxconf sipconf
Viacute dụ
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5372
Taacutec Giả Lecirc Quốc Toagraven
53
[entity1]
Op1=value1
Op2=value2
[entity2]
Op1=value3
Op2=value4
Entity1 coacute caacutec giaacute trị value1 vagrave value2 cho thocircng số op1 vagrave op2 trong khi đoacute
cũng lagrave thocircng số op1 vagrave op 2 nhưng coacute caacutec giaacute trị khaacutec lagrave value3 vagrave value4 choentity2
4 Cấu higravenh giao tiếp với mạng PSTN
1 Ngữ cảnh kết nối
Để kết nối với mạng PSTN chuacuteng ta cần phải coacute một card TDM với Cổng
FXO vagrave một đường dacircy điện thoại hoặc coacute thể lagrave một tổng đagravei nội bộ PBX Cnhiều nhagrave sản xuất phần cứng khaacutec nhau nhưng trong phần cấu higravenh dưới dacircy lagrave cấhigravenh cho card zapata TDM01B của digium (card nagravey hiện nay giaacute baacuten khoảng175$)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2172
Taacutec Giả Lecirc Quốc Toagraven
21
Caacutec cuộc gọi trong VoIP dựa trecircn cơ sở sử dụng kết hợp cả chuyển mạchkecircnh vagrave chuyển mạch goacutei Trong mỗi loại chuyển mạch đều coacute ưu nhược điể
riecircng của noacute Trong kỹ thuật chuyển mạch kecircnh giagravenh riecircng cho một kecircnh truyềngiữa hai thiết bị đầu cuối thocircng qua caacutec node chuyển mạch trung gian Trongchuyển mạch kecircnh tốc độ truyền dẫn luocircn luocircn cố định(nghĩa lagrave băng thocircng khocircnđổi) với mạng điện thoại PSTN tốc độ nagravey lagrave 64kbps truyền dẫn trong chuyểmạch kecircnh coacute độ trễ nhỏ
Trong chuyển mạch goacutei caacutec bản tin được chia thagravenh caacutec goacutei nhỏ gọi lagrave caacutec
goacutei nguyecircn tắc hoạt động của noacute lagrave sử dụng hệ thống lưu trữ vagrave chuyển tiếp caacutec gtin trong nuacutet mạng Đối với chuyển mạch goacutei khocircng tồn tại khaacutei niệm kecircnh riecircng băng thocircng khocircng cố định coacute nghĩa lagrave coacute thể thay đổi tốc độ truyền kỹ thuật chuyểmạch goacutei phải chịu độ trễ lớn vigrave trong chuyển mạch goacutei khocircng quy định thời giancho mỗi goacutei dữ liệu tới điacutech mỗi goacutei coacute thể đi bằng nhiều con đường khaacutec nhau đtới điacutech chuyển mạch goacutei thiacutech hợp cho việc truyền dữ liệu vigrave trong mạng truyền dliệu khocircng đogravei hỏi về thời gian thực như thoại để sử dụng ưu điểm của mỗi lo
chuyển mạch trecircn thigrave trong voip kết hợp sử dụng cả hai loại chuyển mạch kecircnh vchuyển mạch goacutei
4 PSTN ndash Public Switched Telephone Network
PSTN lagrave mạng chuyển mạch điện thoại cocircng cộng hay noacutei caacutech khaacutec lagrave mạngkết nối tất cả caacutec hệ thống tổng đagravei chuyển mạch-mạch
Để hiểu rotilde hơn hatildey xem xeacutet mạng PSTN với mạng Internet về khiacutea cạnhchuyển thoại trecircn đoacute Chuyển mạch mạch muốn thực hiện cuộc gọi giữa hai thu bao thigrave hệ thống phải giagravenh riecircng một kecircnh truyền 64kbps để chuyển tải tiacuten hiệthoại trecircn đoacute Cograven cuộc gọi điện thoại trecircn mạng Internet thigrave tiacuten hiệu thoại đượđoacuteng goacutei vagrave chuyển đi trecircn cugraveng kecircnh truyền với nhiều dịch vụ khaacutec Vigrave lẽ đoacute chấlượng cuộc gọi trecircn mạng PSTN bao giờ cũng tốt hơn trecircn mạng Internet nhưng đổ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2272
Taacutec Giả Lecirc Quốc Toagraven
22
lại chi phiacute lại đắc hơn rất nhiều đặc biệt lagrave caacutec cuộc gọi quốc tế necircn phải cần nhắc kỹ khi sử dụng
PSTN được phaacutet triển trecircn chuẩn ITU(International TelecommunicationUnion) cograven mạng Internet được phaacutet triển trecircn chuẩn IETF(Internet EngineeringTask Force) cả hai mạng trecircn đều sử dụng địa chỉ để định tuyến cuộc gọi PSTN sdụng caacutec con số điện thoại để chuyển mạch cuộc gọi giữa caacutec tổng đagravei điện thotrong khi đoacute trecircn mạng Internet địa chỉ IP sẽ được sử dụng để định tuyến caacutec goacutethoại
5 TDM ndash Time Division Multiplexing
Lagrave kỹ thuật gheacutep kecircnh phacircn chia thời gian nhiều tiacuten hiệu coacute thể truyền đồngthời trecircn một đường truyền TDM được sử dụng chuyển thoại trong hệ thống mạPSTN Coacute hai chuẩn gheacutep kecircnh TDM cơ bản lagrave E1 với 30 kecircnh thoại trecircn mộtkhung tốc độ 2Mbps vagrave T1 với 24 kecircnh thoại tốc độ 15Mbps
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2372
Taacutec Giả Lecirc Quốc Toagraven
23
Higravenh Minh họa gheacutep kecircnh phacircn chia theo thời gian
6 Caacutec higravenh thức baacuteo hiệu giao tiếp TDM
1 FXO vagrave FXS
FXO (Foreign Exchange Office) lagrave thiết bị nhận tiacuten hiệu từ tổng đagravei gửi đếnnhư dograveng chuocircng tiacuten hiệu nhấc gaacutec maacutey tiacuten hiệu mời quay số gửi vagrave nhận tiacuten hiệthoạihellip FXO giống như maacutey Fax hay modem dial-up 56k vậy Dugraveng để kết nối vớ
đường dacircy điện thoại
FXS (Foreign Exchange Station) lagrave thiết bị tại nơi cung cấp đường dacircy điệnthoại thiết bị FXS sẽ cung cấp tiacuten hiệu mời quay số(dialtone) dograveng chuocircng hồi acircmchuocircng(ring tone) Trong đường dacircy Analog FXS cung cấp dograveng chuocircng vagrave điện aacutepcho điện thoại hoạt động viacute dụ FXS cung cấp điện aacutep -48VDC đến maacutey điện tho
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2472
Taacutec Giả Lecirc Quốc Toagraven
24
Analog trong suốt thời gian đagravem thoại vagrave cung cấp 90VAC(20hz) để phaacutet điện aacuteprung chuocircng Thiết bị FXS phaacutet cograven thiết bị FXO nhận
Card TDM sử dụng trong hệ thống asterisk thường tiacutech hợp vừa thiết bị FXOvừa lagrave thiết bị FXS(Giống bộ ATA) FXO để kết nối với đường dacircy điện thoại cograveFXS dugraveng để kết nối với maacutey điện thoại analog thocircng thường dugraveng để chuyển mạcuộc gọi TDM qua hệ thống asterisk(Xem thecircm trong phần cấu higravenh cho kecircnhTDM)
Toacutem lại cần nắm
FXS được kết nối với FXO giống với đường dacircy điện thoại nối với maacuteyđiện thoại
FXS cung cấp nguồn cho điện thoại FXO(điện thoại Analog)
Higravenh a) Maacutey điện thoại vai trograve FXO kết nối với FXS(PSTN) Higravenh b) PBXkết nối với FXO vagrave FXS Higravenh c) ATA đoacuteng vai trograve như FXS để kết nối với maacuteyđiện thoại vai trograve FXO
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2572
Taacutec Giả Lecirc Quốc Toagraven
25
2 Baacuteo hiệu Analog giữa đầu cuối vagrave tổng đagravei
Khi chuacuteng ta nhấc mấy điện thoại để gọi thigrave nghe tiacuten hiệu mời quay số kh
cuộc gọi gọi đầu becircn kia bị bận thigrave chuacuteng ta nghe tiacuten hiệu bận(busy tone) caacutec loạtiacuten hiệu như vậy gọi lagrave caacutec tiacuten hiệu baacuteo hiệu analog Caacutec tiacuten hiệu như Mời quay sốtiacuten hiệu bận rung chuocircng trạng thaacutei nhấc gaacutec maacutey Caacutec loại tiacuten hiệu trecircn được trađổi giữa thiết bị FXO vagrave FXS
Coacute nhiều phương thức baacuteo hiệu khaacutec nhau ứng với từng nơi sử dụng vigrave thếtại nơi kết nối với đường dacircy điện thoại cần xem xeacutet họ đang sử dụng phương th
baacuteo hiệu gigrave từ đoacute chuacuteng ta khai thaacutec loại tiacuten hiệu baacuteo hiệu cho thiacutech hợp caacutec phương thức baacuteo hiệu như Loop Start Ground Start Một minh họa cho việc sửdụng sai phương thức baacuteo hiệu lagrave khi chuacuteng ta khai baacuteo phương thức baacuteo hiệu giữhệ thống Asterisk vagrave đường dacircy điện thoại khaacutec nhau thigrave dẫn đến Asterisk sẽ khocircnnhận biết được tiacuten hiệu gaacutec maacutey điều nagravey sẽ lagravem cho asterisk khocircng baacuteo giờ giải tỏđược cuộc gọi để thực hiện cuộc gọi mới
3 Baacuteo hiệu giữa caacutec tổng đagravei
SS7 hệ thống baacuteo hiệu số 7 được phaacutet triển bởi ATampT vagrave ITU lagrave hệ thống baacuteo hiệu chuyển caacutec cuộc gọi giữa caacutec tổng đagravei trong mạng PSTN Trong hệ thốn baacuteo hiệu số 7 tiacuten hiệu chuyển tải trecircn đường trung kế kết nối giữa hai tổng đagravei gồcoacute hai mạch riecircng một cho thoại vagrave một cho baacuteo hiệu như vậy thoại vagrave baacuteo hiệu cthể chuyển trecircn hai kecircnh vật lyacute khaacutec nhau
7 Baacuteo Hiệu trecircn mạng điện thoại VoIP
1 SIP Session Initiation Prorocol
Sip lagrave giao thức Internet dagravenh cho baacuteo hiệu VoIP được phaacutet triển bởi IETFcung cấp vagravei chức năng giống hệ thống baacuteo hiệu số 7 nhưng dựa trecircn nền IP Mộchức năng giống baacuteo hiệu số 7 đoacute lagrave baacuteo hiệu vagrave thoại chuyển tải trecircn hai kecircnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2672
Taacutec Giả Lecirc Quốc Toagraven
26
riecircng Giao thức SIP thực hiện chức năng thiết lập vagrave baacuteo hiệu cuộc gọi khi noacutei đế baacuteo hiệu cuộc gọi lagrave chỉ định caacutec tiacuten hiệu baacuteo hiệu như tiacuten hiệu mời quay số tiacutehiệu bậnhellip
2 Proxy server
Mặc dầu hai thiết bị SIP coacute thể liecircn lạc trực tiếp với nhau để khởi tạo cuộgọi nhưng trong giao thức SIP cograven coacute chức năng Proxy để linh hoạt hơn trong thiếlập cuộc gọi Proxy Server sẽ lagravem nhiệm vụ ghi nhận tất cả caacutec số điện thoại đư phiacutea client đăng kyacute đến qua bản tin ldquoRegistrationrdquo Khi một client khaacutec thực hiện
cuộc gọi thigrave thực sự Client đoacute khocircng biết số điện thoại cần gọi đang ở đacircu necircn thocircnqua Proxy server để tigravem kiếm thiết lập cuộc gọi
+
Higravenh Đăng kyacute từ Client đến SIP Proxy Với Giao thức SIP đường baacuteo hiệu vagravethoại riecircng
3 RTP vaacute NAT
Caacutec cuộc gọi trecircn Internet với giao thức SIP được chia thagravenh caacutec goacutei thoại vagraveđược chuyển qua giao thức RTP(Real Time Protocol) RTP lagrave giao thức khocircng chỉthực hiện chuyển caacutec goacutei thoại qua Internet magrave cograven coacute cả video nữa Một cuộc gọ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2772
Taacutec Giả Lecirc Quốc Toagraven
27
thocircng thường coacute hai hướng thocircng tin lagrave nhận vagrave phaacutet RTP lagravem việc chuyển caacutec goacutedữ liệu thoại cũng trecircn hai hướng
NAT Network Address Translators lagrave một trở ngại lớn trong giao thức RTPMạng sử dụng NAT lagrave một mạng chia sẻ nhiều địa chỉ IP nội bộ với một địa chỉ ICocircng cộng để kết nối với thế giới becircn ngoagravei NAT dugraveng để chia sẻ nhiều maacutey tiacutentrong mạng LAN nội bộ sử dụng được Internet nhưng cũng chiacutenh vigrave thế magrave caacutec maacutetiacutenh nội bộ gặp khoacute khăn trong việc thực hiện cuộc gọi VoIP qua Internet Đoacute chiacutenhlagrave vấn để trở ngại khi truyền thoại qua giao thức RTP
Higravenh Minh họa hoạt động của NAT
Trong Giao thức RTP như chuacuteng ta đatilde biết đoacute lagrave thoại được chuyển trecircn haiđường khaacutec nhau lagrave đường phaacutet vagrave đường thu Vấn đề NAT nằm ở chỗ tiacuten hiệthoại từ becircn ngoagravei vagraveo becircn trong qua giao thức RTP khocircng thực hiện được cograven chiềungược lại thigrave thực hiện tốt Hay noacutei caacutech khaacutec vấn đề NAT lagravem cho caacutec cuộc gọi t
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2872
Taacutec Giả Lecirc Quốc Toagraven
28
Internet đagravem thoại vagraveo caacutec maacutey nội bộ qua NAT thigrave khocircng nghe được cograven trongtrường hợp caacutec cuộc gọi từ caacutec maacutey nội bộ ra caacutec maacutey internet thigrave nghe tốt
Vấn đề NAT trecircn được giải quyết trong Asterisk bằng việc khai baacuteo thocircng số NAT=yes trong cấu higravenh kecircnh giao thức SIP
4 IAX ndash Inter Asterisk eXchange
IAX lagrave giao thức baacuteo hiệu Voip được phaacutet triển bởi taacutec giả của phần mềmAsterisk để khắc phục những hạn chế trong giao thức SIP Khocircng giống như giathức SIP chuyển tải thoại vagrave baacuteo hiệu trecircn hai kecircnh khaacutec nhau (out of band) IAXchuyển tải thoại vagrave baacuteo hiệu trecircn cugraveng một kecircnh(in band) IAX giải quyết được vấđề NAT đề cập trecircn phần giao thức SIP Mặc khaacutec IAX lagrave giao thức tối ưu trongviệc sử dụng băng thocircng cho pheacutep nhiều goacutei dữ liệu thoại trecircn cugraveng một IP headecơ chế chuyển tải nhiều cuộc gọi trecircn cugraveng một goacutei IP được gọi lagrave trung kế(Trunk)
Coacute thể giải thiacutech thecircm cơ chế trung kế như sau Giả sử Tocirci cần gửi 5 bức thtới người bạn của Tocirci Tocirci sẽ coacute hai higravenh thức để thực hiện thứ nhất lagrave mỗi bức tTocirci bỏ vagraveo một phong bigrave vậy tổng cộng tocirci phải sử dụng 5 phong bigrave để gửi đi 5 bứthư Caacutech thứ hai lagrave Tocirci bỏ 5 bức thư vagraveo 1 phong bigrave vagrave gửi đi vậy tổng cộng Tocircchỉ tốn 1 phong bigrave Qua phacircn tiacutech trecircn rotilde ragraveng việc 5 bức thư vagraveo một phong bigrave sẽtiết kiệm hơn so với 5 bức thư với 5 phong biacute Cơ chế trecircn cũng giống như nhiềcuộc gọi được đoacuteng thagravenh goacutei vagrave chuyển đi trecircn đường trung kế
Toacutem lại IAX lagrave giao thức dagravenh cho VoIP mới nhất cho đến thời điểm nagravey vớinhiều ưu điểm hấp dẫn như
+ Tối thiểu sử dụng băng thocircng
+ Trong suốt với NAT
+ Hiệu quả với cơ chế trung kế
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2972
Taacutec Giả Lecirc Quốc Toagraven
29
8 Thiết Bị VoIP
1 Voip Phone
Đacircy lagrave thiết bị phần cứng kết nối với mạng VoIP giống như maacutey điện thoại đ bagraven thocircng thường nhưng dagravenh cho VoIP cần phải thực hiện cấu higravenh trước khi sửdụng
Lưu yacute một số tiacutenh năng khi thực hiện mua thiết bị điện thoại VoIP
+ Low bandwidth hỗ trợ Codec nagraveo G729 lagrave tốt nhất hiện nay
+ Web Interface Phải coacute giao tiếp thiết lập cấu higravenh thacircn thiện dễ sử dụng
+ Audio Interface Coacute speaker phone hay khocircng
Giaacute thagravenh của điện thoại voip IP đắc hơn điện thoại thocircng thường giaacute khoảntrecircn dưới 100$ một caacutei
Higravenh Maacutey Điện Thoại VoIP
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3072
Taacutec Giả Lecirc Quốc Toagraven
30
2 Softphone
Lagrave một phần mềm được cagravei trecircn maacutey tiacutenh thực hiện tất cả caacutec chức năng giốn
như thiết bị điện thoại Voip cần lưu yacute khi sử dụng softphone lagrave maacutey tiacutenh phải ccard acircm thanh headphone vagrave firewall khocircng bị khoacutea
Sử dụng softphone với hệ thống Asterisk necircn dugraveng softphone với cocircng nghệgiao thức mới dagravenh cho Asterisk đoacute lagrave IAX
Higravenh Điện Thoại Softphone
3 Card giao tiếp với PSTN
Muốn cho pheacutep caacutec maacutey điện thoại nội bộ trong hệ thống Asterisk kết nối vthực hiện cuộc gọi với mạng PSTN chuacuteng ta cần phải coacute thiết bị phần cứng tươthiacutech Thiết bị phần cứng sử dụng cho hệ thống Asterisk do chiacutenh taacutec giả lập cocircng
Digium phacircn phối đacircy cũng chiacutenh lagrave yacute tưởng lớn trong việc phacircn phối phần mềmAsterisk lagrave hệ thống nguồn mở sử dụng miễn phiacute
Thiết bị phần cứng thường kyacute hiệu bắt đầu bằng cụm từ TDMxyB trong đoacute lagrave số lượng port FXS y lagrave số lượng port FXO giaacute trị tối đa của x vagrave y lagrave 4 viacute dụcard TDM22B coacute nghĩa lagrave coacute 2 fort FXS vagrave 2 port FXO
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3172
Taacutec Giả Lecirc Quốc Toagraven
31
Higravenh Card TDM22B gồm 4 port 2 FXS vagrave 2 FXO
4 ATA Analog Telephone Adaptors
ATA lagrave thiết bị kết nối với điện thoại Analog thocircng thường đến mạng VoIPmột thiết bị ATA gồm coacute hai loại port RJ-11 để kết nối với maacutey điện thoại analo
thocircng thường cograven RJ-45 để kết nối với mạng VoIP
ATA thực sự lagrave thiết bị FXS chuyển đổi tiacuten hiệu Analog sang tiacuten hiệu số sửdụng cho mạng VoIP để tận dụng maacutey điện thoại Analog necircn trang bị thiết bị ATAthay vigrave phải trang bị điện thoại VoIP
Thiết bị ATA sử dụng với giao thức IAX được Digium phacircn phối lagrave thiết bịATA được sử dụng rộng ratildei với Asterisk coacute tecircn gọi lagrave IAXy
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3272
Taacutec Giả Lecirc Quốc Toagraven
32
Higravenh Thiết bị ATA
9 Codecs
Thuật Toaacuten codecs(CompressorDe-compressor) lagrave một tập caacutec quy luật đượcsử dụng để chuyển đổi caacutec tiacuten hiệu thoại dạng Analog sang tiacuten hiệu số vagrave ngược lạ
Coacute nhiều thuật toaacuten codec để thực hiện chuyển đổi tiacuten hiệu analog sang tiacuten
hiệu số dạng nhị phacircn (01) như G711 GSM G729hellipỨng với mỗi thuật toaacuten coacutenhững ưu điểm riecircng đặc biệt lagrave việc tối ưu sử dụng băng thocircng trecircn đường truyềMục tiecircu cuối cugraveng lagrave caacutec thuật toaacuten đưa ra phải đảm bảo chất lượng cuộc gọi nhvagrave tiết kiệm băng thocircng nhất
G729 lagrave thuật toaacuten codec tốt nhất hiện nay trong hệ thống VoIP Với hệthống Asterisk để sử dụng thuật toaacuten nagravey cần phải mua bản quyền sử dụng vigrave đacircy
codec khocircng miễn phiacute sử dụng
10 QoS ndash Quality of Service
Caacutec yếu tố ảnh hưởng đến chất lượng của dịch vụ đối với VoIP đoacute lagrave caacuteyếu ảnh hưởng đến chất lượng tiacuten hiệu thoại
1 Độ trễ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3372
Taacutec Giả Lecirc Quốc Toagraven
33
Thoại lagrave dịch vụ mang tiacutenh thời gian thực rất cao vigrave thế trễ lagrave yếu tố ảnhhưởng rất lớn đến chất lượng dịch vụ Trễ được định nghĩa lagrave khoảng thời gian tiacute
từ luacutec tiacuten hiệu thoại đi từ miệng người noacutei tới tai người nghe Trễ lagrave yếu tố khocircnthể traacutenh khỏi độ trễ đối với mạng điện thoại truyền thống (mạng PSTN) khoảng50ms đến 70ms theo khiến nghị của ITU-T để đảm bảo chất lượng cho hệ thốVoIP thigrave độ trễ từ đầu phaacutet tới đầu thu hoặc ngược lại khocircng được vượt quaacute 150mkhi magrave độ trễ vượt quaacute 400ms đến 500ms thigrave khocircng thể chấp nhận được
Caacutec nguyecircn nhacircn gacircy ra trễ bao gồm Trễ trecircn mạng lưới trễ trecircn bộ mả hoacutea
giải matilde trễ trong quaacute trigravenh đoacuteng goacutei trễ bộ đệm trễ xử lyacute tiếng noacuteihellip2 Độ trượt(Jitter)
Nguyecircn nhacircn gacircy ra trượt lagrave goacutei tiacuten hiệu thoại trong quaacute trigravenh truyền từnguồn đến điacutech sẽ gặp phải những điều kiện khaacutec nhau trecircn mạng lưới do đoacute thườđến điacutech với những khoảng trễ khaacutec nhau Đacircy lagrave tiacutenh khocircng đồng nhất của trễ Mnguyecircn nhacircn khaacutec của trượt đối với ứng dụng PC to PC lagrave do việc sử dụng hệ điề
hagravenh phi thời gian thực caacutec goacutei tin thoại phải đợi hệ điều hagravenh xử lyacute trong nhữnkhoảng thời gian khaacutec nhau khi magrave hệ điều hagravenh đang phải xử lyacute đối với caacutec ứndụng khaacutec
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3472
Taacutec Giả Lecirc Quốc Toagraven
34
Higravenh Nguyecircn nhacircn xảy ra trượt
Để loại bỏ tiacutenh khocircng đồng nhất của trễ người ta thiết kế caacutec bộ đệm t(Jitter Buffer) tại nơi đến của caacutec goacutei tin caacutec goacutei tin đến với caacutec khoảng caacutech khaacutecnhau về thời gian được lưu tại bộ đệm rồi phaacutet khỏi bộ đệm với khoảng trễ n
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3572
Taacutec Giả Lecirc Quốc Toagraven
35
nhau Khi bộ đếm coacute kiacutech thước cagraveng lớn thigrave khả năng loại bỏ tiacutenh khocircng đồng nhấcagraveng lớn tuy nhiecircn việc sử dụng bộ đệm sẽ gacircy ra hiện tượng trễ trong ứng dụnthoại do đoacute cần coacute bagravei toaacuten cacircn đối giữa độ trễ vagrave độ trượt
Ngoagravei 2 nguyecircn nhacircn trecircn cograven một số nguyecircn nhacircn nữa ảnh hưởng đến chấtlượng thoại như độ mất goacutei giới hạn băng thocircng tiếng vọng
3 CAgraveI ĐẶT ASTERISK
1 Cagravei đặt Asterisk
1 Download vagrave bung neacuten
Để cagravei đặt Asterisk đầu tiecircn chuacuteng ta cần phải cagravei đặt hệ điều hagravenh linux trecircnmaacutey tiacutenh của migravenh Coacute thể cagravei hệ điều hagravenh Linux Fedora CentOS Redhat hoặcDebian Caacutec goacutei phần mềm phụ thuộc phải coacute trong hệ điều hagravenh Linux trước khcagravei Asterisk bao gồm
bison
gcc
kernel-source
libtermcap-devel
ncurses-devel
openssl096b
openssl-devel
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3672
Taacutec Giả Lecirc Quốc Toagraven
36
Sau khi hoagraven tất caacutec bước trecircn chuacuteng ta tiến hagravenh download phần mềmasterisk với phiecircn bản mới nhất
cd usrsrc
wgetftpftpdigiumcompubasteriskasterisk-140targz
wgetftpftpdigiumcompubasteriskasterisk-addons-140targz
wgetftpftpdigiumcompubasteriskasterisk-sounds-140targz
wgethttpftpdigiumcompubzaptelzaptel-140targz
wgethttpftpdigiumcompublibprilibpri-140targz
Việc download coacute thể nhanh hay chậm tugravey vagraveo tốc độ trecircn đường internet saukhi download hoagraven thagravenh chuacuteng ta tiến hagravenh bung neacuten caacutec goacutei ra thư mục chỉ định
tar ndashxzvf asterisk-140targz
tar ndashxzvf asterisk-addons-140targz
tar ndashxzvf asterisk-sounds-140targz
tar ndashxzvf zaptel-140targz
tar ndashxzvf libpri-140targz
Giải neacuten xong chuacuteng ta nhớ thực hiện lệnh
ln ndashs usrsrcasterisk-140 usrsrcasterisk lệnh nagravey để bảo đảm goacuteildquoaddonsrdquo được biecircn dịch đuacuteng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3772
Taacutec Giả Lecirc Quốc Toagraven
37
Bacircy giờ tới phần chuacuteng ta biecircn dịch caacutec goacutei đatilde giải neacuten ở trecircn trước tiecircn lagrave goacuteizaptel kế đến lagrave libpri sau cugraveng lagrave goacutei Asterisk
2 Cagravei đặt goacutei Zaptel
Goacutei zaptel sẽ chứa tại thư mục usrsrczaptel Đaacutenh lệnh như dưới đacircy để cagraveđặt
cd usrsrczaptel
make clean make install
Lệnh nagravey thực hiện khoảng 2 phuacutet tugravey vagraveo tốc độ maacutey tiacutenh cagravei đặt sau khicagravei đặt xong sẽ trở lại dấu nhắc lệnh vagrave hiển thị một loạt caacutec thocircng baacuteo trong đoacute một số bản tin lỗi magrave chủ yếu lagrave yecircu cầu cagravei đặt caacutec goacutei phụ thuộc đatilde liệt kecirc ở trecircnếu caacutec goacutei trecircn chưa được cagravei đặt
Goacutei zaptel nagravey chứa caacutec driver cho caacutec phần cứng kết giao tiếp với asterisk
do Digium phacircn phối vagrave một số thư viện cho việc coacute thực hiện giao tiếp với phầcứng hay khocircng
Để Asterisk coacute thể chạy cugraveng với khởi động của maacutey tiacutenh chuacuteng ta cần thựchiện lệnh
make config
Lệnh nagravey sẽ tạo ra script chegraven module zaptel vagraveo kernel vagrave chạy ztconfig vagraveoluacutec khởi động maacutey Trong Redhat script nagravey sẽ được cheacutep vagraveo etcinitd chạy ở mức 3
3 Cagravei đặt goacutei libpri
Kế đến chuacuteng ta biecircn dịch goacutei libpri tại thư mục usrsrclibpri bằng lệnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3972
Taacutec Giả Lecirc Quốc Toagraven
39
make config
3 Cagravei đặt TrixBox
1 Giới thiệu
TRIXBOX được phaacutet triển từ nhacircn của ứng dụng Asterisk được tổng hợp từmột số thagravenh phần chiacutenh được phaacutet triển bởi cộng đồng phaacutet triển nguồn mAsterisk dưới bản quyền GPL Trixbox bao gồm những thagravenh phần chiacutenh cho việcấu higravenh ứng dụng thống kecirc tigravenh trạng hoạt động hệ thống lưu trữ dự phograveng v
nhacircn lagrave hệ điều hagravenh CentOS một phiecircn bản khaacutec của Redhat tất cả kết hợp vớnhau tạo thagravenh một goacutei hoagraven chỉnh Khi cagravei goacutei nagravey vagraveo maacutey tiacutenh thigrave coacute thể sử dụngnhư một tổng đagravei PBX
Caacutec thagravenh phần chiacutenh trong goacutei TRIXBOX lagrave
Asterisk PBX Thagravenh phần chiacutenh của hệ thống Trixbox
CentOS Một phiecircn bản Linux khaacutec của Redhat hoagraven toagraven miển phiacute sửdụng Lagrave nhacircn chiacutenh cho Trixbox
SugarCRM Hệ thống quan hệ khaacutech hagraveng CRM
A2Billing ndash Lagrave thagravenh phần dagravenh cho việc xacircy dựng hệ thống điện thoạitrả trước hay cograven gọi lagrave điện thọai thẻ (Calling Card)
Flash Operator Panel Bảng điều khiển giaacutem saacutet tigravenh trạng hoạt độngcủa caacutec maacutey điện thoại trong hệ thống
Web MeetMe Control Quản lyacute triển khai hệ thống điện thoại hội nghị
FreePBX Đacircy lagrave cocircng cụ với giao diện web dagravenh cho việc cấu higravenh hệthống Asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4072
Taacutec Giả Lecirc Quốc Toagraven
40
Hệ thống Lưu trữ dự phograveng vagrave thống kecirc Lagrave thagravenh phần của TRIXBOXcung cấp caacutec cocircng cụ cần thiết cho việc bảo trigrave bảo dưỡng hệ thống
Hệ thống Apache-Php-Mysql dagravenh cho giải phaacutep Webserver của hệthống
2 DOWNLOAD VAgrave LẮP ĐẶT TRIXBOX
Địa chỉ downloadhttpsourceforgenetprojectsasteriskathome
Khi download xong file Trixboxiso Hatildey dugraveng file nagravey Burn vagraveo CD ( xinlưu yacute lagrave dugraveng Nero hoặc chương trigravenh cheacutep đĩa ưa thiacutech rồi burn vagraveo cd_romchứ khocircng phải cheacutep file đoacute vagraveo cd_rom)
Sau khi coacute CD Hatildey boot từ CD nagravey để cagravei đặt trixbox
Chuacute yacute dữ liệu trecircn đĩa cứng sẽ bị xoacutea sạch để cagravei đặt trixbox Nếu trongđĩa cứng cograven dữ liệu hatildey backup tất cả trước khi tiến hagravenh lắp đặt trixbox
Tới đacircy lần lượt caacutec magraven higravenh chỉ dẫn sẽ hiện ra vagrave cứ theo hướng dẫn magrave cagraveđặt Sau khi cagravei đặt xong chuacuteng ta dugraveng Username root vagrave password password đểđăng nhập hệ thống
3 Cấu higravenh địa chỉ IP cho card mạng
Thiết lập địa chỉ IP bằng caacutech gotilde lệnh
netconfig
Chọn OK để thiếp lập
Nếu trong mạng coacute hỗ trợ DHCP thigrave hatildey chọn mục nagravey cograven nếu khocircng hatildeynhập địa chỉ IP tĩnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4172
Taacutec Giả Lecirc Quốc Toagraven
41
IP 19216801
Netmask 2552552550
Gateway 19216893254 ngotilde ra becircn ngoagravei
Primary nameserver 19216893200 thiết lập nếu coacute
Chọn OK để chấp nhận caacutec thiết lập trecircn
Sau khi hoagraven tất hatildey lagravem cho thiết lập coacute hiệu lực bằng caacutech reset lại
maacutey tiacutenh hoặc dugraveng lệnh sau
Service network stop
Service network start
Đến đacircy xem như cagravei đặt hoagraven tất bacircy giờ để cấu higravenh được Asterisk chuacutengta vagraveo một magravey khaacutec vagrave mở Internet Explorer hoặc một trigravenh duyệt web bất kỳ
nhập vagraveohttp19216801đatilde cấu higravenh ở trecircn vagrave tiến hagravenh cấu higravenh hệ thốngvới tagravei khoảng username maint vagrave password password
4 Tổ Chức Thư Mục của Asterisk
Asterisk sử dụng nhiều thư mục trecircn hệ thống linux để quản lyacute caacutec khiacutea cạnkhaacutec nhau của hệ thống như nghi nhận bản tin thoại caacutec bản tin nhắc thoại hoặcaacutec tập tin cấu higravenh Phần nagravey sẽ trigravenh bagravey caacutec thư mục chiacutenh yếu được tạo ra tronquaacute trigravenh lắp đặt vagrave được cấu higravenh trong tập tin Asteriskconf
1 etcasterisk
Thư mục etcasterisk chứa tất cả caacutec tập tin cấu higravenh của hệ thốngAsterisk ngoại trừ tập tin Zaptelconf được đặt tại thư mục etc Phần cứnZaptel đầu tiecircn được phaacutet triển bởi Jim Dixon thuộc nhoacutem Zapata Telephony
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4272
Taacutec Giả Lecirc Quốc Toagraven
42
Group để giao tiếp giữa maacutey tiacutenh với mạng điện thoại magrave Asterisk lại sửdụng phần cứng nagravey với lyacute do đoacute magrave file cấu higravenh zaptelconf khocircng nằmtrong thư mục etcasterisk
2 usrlibasteriskmodules
Thư mục usrlibasteriskmodules chứa tất cả caacutec module cần thiết đểasterisk hoạt động Becircn trong thư mục lagrave caacutec ứng dụng khaacutec nhau caacutec codeccaacutec định dạng acircm thanh(format) vagrave caacutec kecircnh thocircng tin(channel) Theo mặc địnhAsterisk sẽ nạp tất cả caacutec module vagraveo luacutec khởi động Chuacuteng ta coacute thể khocircng cho
nạp một module bất kỳ bằng caacutech khocircng khai baacuteo sử dụng trong tập tinmodulesconf Lưu yacute khi khocircng cho nạp module thigrave phải biết chắc module đoacutekhocircng lagravem ảnh hưởng hoạt động của asterisk nếu khocircng lỗi sẽ xuất hiện
3 varlibasterisk
Thư mục varlibasterisk chứa tập tin astdb vagrave một số thư mục con Tập tinastdb định vị thocircng tin cơ sở dữ liệu của Asterisk giống như Microsoft WindowsRegistry
Caacutec thư mục con của thư mục varlibasterisk bao gồm
agi-bin
Thư mục agi-bin chứa caacutec script của người dugraveng magrave Asterisk coacute thểđịnh vị sử dụng qua caacutec ứng dụng AGI
AGI lagrave phần giao tiếp với ngocircn ngữ lập trigravenh script để thực hiện mộtsố cocircng việc của Asterisk từ becircn ngoagravei
firmware
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4372
Taacutec Giả Lecirc Quốc Toagraven
43
Thư mục firmware chứa một số phần dẻo(firmware) cho caacutec thiết bịkhaacutec nhau tương thiacutech với Asterisk Hiện tại chỉ coacute thư mục con iax chứa
firmware cho thiếy bị IAXy của Digium IAXy lagrave thiết bị ATA sử dụng giaothức IAX
images
Caacutec ứng dụng thocircng tin với caacutec kecircnh hỗ trợ ảnh images thigrave sử dụng thư mụcnagravey Nhưng hiện tại caacutec kecircnh thocircng tin hầu như khocircng hỗ trợ truyền ảnh images necircthư mục nagravey cũng hiếm khi được sử dụng Tuy nhiecircn nếu caacutec thiết bị coacute hỗ trợ ththư mục nagravey trở necircn hiệu dụng
keys
Asterisk coacute thể sử dụng hệ thống khoaacute publicprivate để xaacutec minh caacutec kết nốgiữa caacutec server Asterisk thocircng qua chữ kyacute điện tử RSA Nếu đặt một khoaacute publicvagraveo thư mục keys thigrave kết nối của server đầu becircn kia coacute thể được xaacutec minh bằn
kecircnh thocircng tin coacute hỗ trợ đối với Asterisk thigrave kecircnh giao thức IAX hỗ trợ loại xaacutecminh nagravey Một khoaacute private khocircng bao giờ cocircng bố chuacuteng ta chỉ cocircng bố khoaacute public đến với server cần nối đến sau đoacute sẽ được xaacutec minh với khoaacute private nagravey Chai khoaacute public vagrave private được lưu với đuocirci pub vagrave key đặt tại thư mục keys
mohmp3
Khi cấu higravenh Asterisk sử dụng tiacutenh năng Music on Hold tiacutenh năng hoạt độngsẽ thực hiện lấy caacutec tập tin mp3 tại thư mục mohmp3 Tập tin định dạng theo chucủa Asterisk necircn khi sử dụng caacutec file Mp3 thocircng thường cần coacute sự chuyển đổi thiacutechợp trước khi cheacutep vagraveo thư mục trecircn để sử dụng
sounds
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4472
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4572
Taacutec Giả Lecirc Quốc Toagraven
45
Thư mục tmp sử dụng để lưu trữ những thocircng tin tạm để luocircn bảo đảm khocircnxảy ra tigravenh trạng đọc vagrave viết tập tin cugraveng một luacutec Khi yecircu cầu xử lyacute tập tin chuacuteng thao taacutec trecircn thư mục tmp trước khi lưu vagraveo tập tin điacutech
Tất cả caacutec lời nhắc thoại từ phiacutea người sử dụng vagrave caacutec lời nhắc thoại sử dụ
cho thao taacutec hộp voicemail đều được chứa trong thư mục voicemail Một hộp thưthoại được tạo ra ứng với một maacutey nội bộ trong tập tin voicemailconf sẽ được tra một thư mục con tương ứng cho maacutey nội bộ đoacute tại thư mục voicemail
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4672
Taacutec Giả Lecirc Quốc Toagraven
46
5 varrun
Thư mục varrun chứa thocircng tin process ID(pid) cho tất cả caacutec tiến trigravenh đang
hoạt động trong hệ thống bao gồm cả Asterisk Lưu yacute lagrave ứng với mỗi hệ điều hagravethư mục varrun coacute thể khaacutec
6 varlogasterisk
Thư mục varlogasterisk lagrave nơi Asterisk chứa tất cả caacutec tập tin nhật kyacute haycograven gọi lagrave tập tin log Chuacuteng ta coacute thể tuỳ biến caacutec loại thocircng tin được lưu trong caacutec
tập tin log khaacutec nhau qua tập tin cấu higravenh loggerconf đặt tại thư mục etcasterisk7 varlogasteriskcdr-csv
Thư mục varlogasteriskcdr-csv được sử dụng để lưu chi tiết cuộc gọi CDRThocircng tin mặc định về chi tiết thocircng tin cuộc gọi lưu trữ trong tập tin MasterCVSnhưng thường thigrave ứng với mỗi matilde accountcode sẽ tạo một thư mục riecircng để lưu ctiết cuộc gọi cho maacutey đoacute
5 Một số lệnh thao taacutec trecircn hệ thống asterisk
Asterisk coacute hai thagravenh phần được xacircy dụng tiacutech hợp với nhau vagrave chạy songsong nhau
Asterisk Server bigravenh thường chạy ở chế độ nền(background) giống caacutec sevicestrong window
Asterisk Client ở chế độ dograveng lệnh CLI giao tiếp với Asterisk Server thực thicaacutec lệnh để kiểm tra hay xem caacutec thocircng tin của server
Để Chạy vagrave dừng Asterisk ở chế độ nền chuacuteng ta thực hiện lệnh sau
etcinitdasterisk (start|stop)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4772
Taacutec Giả Lecirc Quốc Toagraven
47
Một khi Asterisk đatilde chạy chuacuteng ta coacute thể chuyển qua chế độ CLI từ dấu nhắlệnh của linux như sau
asterisk ndashr
Khi vagraveo chế độ lệnh nếu muốn thoaacutet về lại dấu nhắc linux chuacuteng ta dugraveng lệnh
CLIgtexit
Caacutec lệnh cơ bản thực hiện tại CLIgt
Bất cứ khi nagraveo chỉnh sửa caacutec tập tin cấu higravenh chuacuteng ta đều cần phải nạp lại đcaacutec thay đổi coacute hiệu lực điều đoacute thực hiện bằng lệnh
CLIgtreload
Bậc chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 debug
CLIgt SIP debug
Tắt chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 no debug
CLIgt SIP no debug
Hiển thị caacutec trạng thaacutei thocircng tin của users peers vagravechannels của SIP hoặc IAX2
CLIgt sip show users
CLIgt sip show peers
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4872
Taacutec Giả Lecirc Quốc Toagraven
48
CLIgt sip show channels
CLIgt iax2 show peers
CLIgt iax2 show users
CLIgt iax2 show channels
Đến thời điểm nagravey coacute thể noacutei chuacuteng ta đatilde hoagraven thagravenh cagravei đặt hệ thốngAsterisk cagravei đặt xong mới lagrave bước mở đầu để cho hệ thống Asterisk hoạt động vtừng ứng dụng cụ thể chuacuteng sẽ tiếp tục thực hiện caacutec giai đoạn được xem lagrave qutrọng nhất trong việc triển khai hệ thống Asterisk đoacute lagrave giai đoạn cấu higravenh hệ thốnlecircn kế hoạch Diaplan chương cograven lại đều nhắm đến mục tiecircu nagravey
4 CẤU HIgraveNH HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Sau khi hoagraven tất phần cagravei đặt hệ thống asterisk một bước quan trọng tiếp thelagrave cấu higravenh hệ thống coacute thể noacutei đacircy lagrave bước quan trọng nhất của việc khiển khai thống đến với từng ứng dụng cụ thể Trong chương nagravey xin giới thiệu caacutei nhigraven đầtiecircn về việc cấu higravenh trước khi đi sacircu hơn ở những chương sau những gigrave giới thiệ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4972
Taacutec Giả Lecirc Quốc Toagraven
49
trong chương nagravey lagrave nền moacuteng cơ bản nhưng đủ để hiểu lagravem thế nagraveo hệ thống coacute thoạt động được nội dung chiacutenh bao gồm
+ Thao taacutec cấu higravenh trecircn hệ thống tập tin của asterisk
+ Caacutech cagravei đặt phần mềm softphone trecircn cocircng nghệ sip
+ Cấu higravenh cho hai maacutey softphone liecircn lạc với nhau
+ Cấu higravenh phaacutet thocircng điệp
+ Quay số qua Sip vagrave mạng PSTN
2 Tập Tin cấu higravenh
Tất cả caacutec file cấu higravenh cho hệ thống asterisk đều nằm tại thư mục etcasterisngoại trừ file zaptelconf cấu higravenh cho phần cứng TDM nằm tại thư mục etc caacutecthức cấu higravenh giống như tập tin ini của window vậy Caacutec nội dung sau dấu chấm phảy lagrave nội dung chuacute thiacutech trong file cấu higravenh giống như chuacute thiacutech trong ngocircn ngữ
lập trigravenh C lagrave dấu Tất cả caacutec khoảng trắng trong tập tin đều được bỏ qua khocircng yacute nghĩa trong file cấu higravenh
Trong file cấu higravenh cograven coacute hai pheacutep gaacuten rất thường xuyecircn được sử dụng pheacutep gaacuten ldquo=rdquo lagrave dugraveng cho việc gaacuten caacutec biến cograven pheacutep gaacuten ldquo=gtrdquo dugraveng cho việc gaacutencaacutec đối tượng sau đacircy lagrave một viacute dụ cho file cấu higravenh
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5072
Taacutec Giả Lecirc Quốc Toagraven
50
Đacircy lagrave caacutec dograveng chuacute thiacutech
[section]
Key=value gaacuten giaacute trị cho biến
[section2]
Key=gtobject Gaacuten giaacute trị cho đối tượng
Cuacute phaacutep thực hiện giống nhau cho tất cả caacutec file cấu higravenh nhưng coacute vagravei kiểukhaacutec nhau cho mỗi file cầu higravenh dựa vagraveo thức caacutech hoạt động của chuacuteng
3 Caacutec kiểu ảnh hưởng trong tập cấu higravenh
Coacute ba kiểu caacutech thức hoạt động của tập tin cấu higravenh như sau
Kiểu Caacutech hoạt động File cầu higravenh Viacute dụ
S i m p l eGroup
Coacute hiệu lực trecircntừng dograveng trongfile
Extensionconf
Exten=gt4001dial(sip400)
O p t i o ninheritance
Dograveng khai baacuteosau thừa kếnhững thocircng sốkhai baacuteo trước
Zapataconf [channels]
Context=From_PSTN
Signalling=fxs_ks
Group=1Channel=gt1
C o m p l e xEntity
Mỗi entity nhậnmột ngữ cảnh
sipconf
iaxconf
[cisco]
Type=friend
Secret=12345
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5172
Taacutec Giả Lecirc Quốc Toagraven
51
Host=192168165
Context=NoiBo
[xten]
Type=friend
Secret=6789
Host=dynamic
Context=NoiBo
1 Simple Group
Đacircy lagrave kiểu cấu higravenh đơn giản nhất thường sử dụng trong caacutec fileextentionconf meetmeconf voicemailconf tương ứng với mỗi dograveng khai baacuteo lagravemột đối tượng coacute yacute nghĩa trecircn dograveng đoacute
Viacute dụ
Extentionconf [section]
object1=gt op1op2op3
object2=gt op1bop2bop3b
Trong viacute dụ trecircn mỗi dograveng tương ứng với caacutec toaacuten tử khaacutec nhau object1 coacute caacutectoaacuten từ op1 op2 op3 trong khi đoacute object2 lại coacute caacutec toaacuten từ op1b op2b op3b
2 Option inheritance
Đacircy lagrave cấu higravenh kiểu thừa kế thường được cấu higravenh trong caacutec file zapataconfagentconf với kiểu cấu higravenh nagravey thigrave caacutec dograveng phiacutea dưới coacute thể thừa kế caacutec thocircng sdograveng phiacutea trecircn tương ứng với mỗi section caacutec dograveng phiacutea dưới coacute thể thay đổi caacutecthocircng số cho tươngứng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5272
Taacutec Giả Lecirc Quốc Toagraven
52
Viacute dụ
Extentionconf
[section]
Op1=bas
Op2=adv
Object1=gt1
Op1=int
Object1=gt2
Với cấu higravenh trecircn coacute thể giải thiacutech như sau object1=gt1 thừa hưởng hai thocircngsố ở phiacutea trecircn đoacute lagrave op1=bas vagrave op2=adv trong khi đoacute đối với object1=gt2 với thocircngsố op1=int được khai baacuteo lại necircn object1=gt2 được thừa kế từ hai thocircng số op1=invagrave op2=adv
3 Complex Entity
Với cấu kiểu nagravey được tổ chức thagravenh nhiều entity ứng với mỗi entity coacute nhiềthocircng số được khai baacuteo mỗi entity ở đacircy chiacutenh lagrave caacutec section để khai baacuteo caacutec kecircnhthocircng tin Cấu higravenh thường được sử dụng trong caacutec file iaxconf sipconf
Viacute dụ
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5372
Taacutec Giả Lecirc Quốc Toagraven
53
[entity1]
Op1=value1
Op2=value2
[entity2]
Op1=value3
Op2=value4
Entity1 coacute caacutec giaacute trị value1 vagrave value2 cho thocircng số op1 vagrave op2 trong khi đoacute
cũng lagrave thocircng số op1 vagrave op 2 nhưng coacute caacutec giaacute trị khaacutec lagrave value3 vagrave value4 choentity2
4 Cấu higravenh giao tiếp với mạng PSTN
1 Ngữ cảnh kết nối
Để kết nối với mạng PSTN chuacuteng ta cần phải coacute một card TDM với Cổng
FXO vagrave một đường dacircy điện thoại hoặc coacute thể lagrave một tổng đagravei nội bộ PBX Cnhiều nhagrave sản xuất phần cứng khaacutec nhau nhưng trong phần cấu higravenh dưới dacircy lagrave cấhigravenh cho card zapata TDM01B của digium (card nagravey hiện nay giaacute baacuten khoảng175$)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2272
Taacutec Giả Lecirc Quốc Toagraven
22
lại chi phiacute lại đắc hơn rất nhiều đặc biệt lagrave caacutec cuộc gọi quốc tế necircn phải cần nhắc kỹ khi sử dụng
PSTN được phaacutet triển trecircn chuẩn ITU(International TelecommunicationUnion) cograven mạng Internet được phaacutet triển trecircn chuẩn IETF(Internet EngineeringTask Force) cả hai mạng trecircn đều sử dụng địa chỉ để định tuyến cuộc gọi PSTN sdụng caacutec con số điện thoại để chuyển mạch cuộc gọi giữa caacutec tổng đagravei điện thotrong khi đoacute trecircn mạng Internet địa chỉ IP sẽ được sử dụng để định tuyến caacutec goacutethoại
5 TDM ndash Time Division Multiplexing
Lagrave kỹ thuật gheacutep kecircnh phacircn chia thời gian nhiều tiacuten hiệu coacute thể truyền đồngthời trecircn một đường truyền TDM được sử dụng chuyển thoại trong hệ thống mạPSTN Coacute hai chuẩn gheacutep kecircnh TDM cơ bản lagrave E1 với 30 kecircnh thoại trecircn mộtkhung tốc độ 2Mbps vagrave T1 với 24 kecircnh thoại tốc độ 15Mbps
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2372
Taacutec Giả Lecirc Quốc Toagraven
23
Higravenh Minh họa gheacutep kecircnh phacircn chia theo thời gian
6 Caacutec higravenh thức baacuteo hiệu giao tiếp TDM
1 FXO vagrave FXS
FXO (Foreign Exchange Office) lagrave thiết bị nhận tiacuten hiệu từ tổng đagravei gửi đếnnhư dograveng chuocircng tiacuten hiệu nhấc gaacutec maacutey tiacuten hiệu mời quay số gửi vagrave nhận tiacuten hiệthoạihellip FXO giống như maacutey Fax hay modem dial-up 56k vậy Dugraveng để kết nối vớ
đường dacircy điện thoại
FXS (Foreign Exchange Station) lagrave thiết bị tại nơi cung cấp đường dacircy điệnthoại thiết bị FXS sẽ cung cấp tiacuten hiệu mời quay số(dialtone) dograveng chuocircng hồi acircmchuocircng(ring tone) Trong đường dacircy Analog FXS cung cấp dograveng chuocircng vagrave điện aacutepcho điện thoại hoạt động viacute dụ FXS cung cấp điện aacutep -48VDC đến maacutey điện tho
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2472
Taacutec Giả Lecirc Quốc Toagraven
24
Analog trong suốt thời gian đagravem thoại vagrave cung cấp 90VAC(20hz) để phaacutet điện aacuteprung chuocircng Thiết bị FXS phaacutet cograven thiết bị FXO nhận
Card TDM sử dụng trong hệ thống asterisk thường tiacutech hợp vừa thiết bị FXOvừa lagrave thiết bị FXS(Giống bộ ATA) FXO để kết nối với đường dacircy điện thoại cograveFXS dugraveng để kết nối với maacutey điện thoại analog thocircng thường dugraveng để chuyển mạcuộc gọi TDM qua hệ thống asterisk(Xem thecircm trong phần cấu higravenh cho kecircnhTDM)
Toacutem lại cần nắm
FXS được kết nối với FXO giống với đường dacircy điện thoại nối với maacuteyđiện thoại
FXS cung cấp nguồn cho điện thoại FXO(điện thoại Analog)
Higravenh a) Maacutey điện thoại vai trograve FXO kết nối với FXS(PSTN) Higravenh b) PBXkết nối với FXO vagrave FXS Higravenh c) ATA đoacuteng vai trograve như FXS để kết nối với maacuteyđiện thoại vai trograve FXO
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2572
Taacutec Giả Lecirc Quốc Toagraven
25
2 Baacuteo hiệu Analog giữa đầu cuối vagrave tổng đagravei
Khi chuacuteng ta nhấc mấy điện thoại để gọi thigrave nghe tiacuten hiệu mời quay số kh
cuộc gọi gọi đầu becircn kia bị bận thigrave chuacuteng ta nghe tiacuten hiệu bận(busy tone) caacutec loạtiacuten hiệu như vậy gọi lagrave caacutec tiacuten hiệu baacuteo hiệu analog Caacutec tiacuten hiệu như Mời quay sốtiacuten hiệu bận rung chuocircng trạng thaacutei nhấc gaacutec maacutey Caacutec loại tiacuten hiệu trecircn được trađổi giữa thiết bị FXO vagrave FXS
Coacute nhiều phương thức baacuteo hiệu khaacutec nhau ứng với từng nơi sử dụng vigrave thếtại nơi kết nối với đường dacircy điện thoại cần xem xeacutet họ đang sử dụng phương th
baacuteo hiệu gigrave từ đoacute chuacuteng ta khai thaacutec loại tiacuten hiệu baacuteo hiệu cho thiacutech hợp caacutec phương thức baacuteo hiệu như Loop Start Ground Start Một minh họa cho việc sửdụng sai phương thức baacuteo hiệu lagrave khi chuacuteng ta khai baacuteo phương thức baacuteo hiệu giữhệ thống Asterisk vagrave đường dacircy điện thoại khaacutec nhau thigrave dẫn đến Asterisk sẽ khocircnnhận biết được tiacuten hiệu gaacutec maacutey điều nagravey sẽ lagravem cho asterisk khocircng baacuteo giờ giải tỏđược cuộc gọi để thực hiện cuộc gọi mới
3 Baacuteo hiệu giữa caacutec tổng đagravei
SS7 hệ thống baacuteo hiệu số 7 được phaacutet triển bởi ATampT vagrave ITU lagrave hệ thống baacuteo hiệu chuyển caacutec cuộc gọi giữa caacutec tổng đagravei trong mạng PSTN Trong hệ thốn baacuteo hiệu số 7 tiacuten hiệu chuyển tải trecircn đường trung kế kết nối giữa hai tổng đagravei gồcoacute hai mạch riecircng một cho thoại vagrave một cho baacuteo hiệu như vậy thoại vagrave baacuteo hiệu cthể chuyển trecircn hai kecircnh vật lyacute khaacutec nhau
7 Baacuteo Hiệu trecircn mạng điện thoại VoIP
1 SIP Session Initiation Prorocol
Sip lagrave giao thức Internet dagravenh cho baacuteo hiệu VoIP được phaacutet triển bởi IETFcung cấp vagravei chức năng giống hệ thống baacuteo hiệu số 7 nhưng dựa trecircn nền IP Mộchức năng giống baacuteo hiệu số 7 đoacute lagrave baacuteo hiệu vagrave thoại chuyển tải trecircn hai kecircnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2672
Taacutec Giả Lecirc Quốc Toagraven
26
riecircng Giao thức SIP thực hiện chức năng thiết lập vagrave baacuteo hiệu cuộc gọi khi noacutei đế baacuteo hiệu cuộc gọi lagrave chỉ định caacutec tiacuten hiệu baacuteo hiệu như tiacuten hiệu mời quay số tiacutehiệu bậnhellip
2 Proxy server
Mặc dầu hai thiết bị SIP coacute thể liecircn lạc trực tiếp với nhau để khởi tạo cuộgọi nhưng trong giao thức SIP cograven coacute chức năng Proxy để linh hoạt hơn trong thiếlập cuộc gọi Proxy Server sẽ lagravem nhiệm vụ ghi nhận tất cả caacutec số điện thoại đư phiacutea client đăng kyacute đến qua bản tin ldquoRegistrationrdquo Khi một client khaacutec thực hiện
cuộc gọi thigrave thực sự Client đoacute khocircng biết số điện thoại cần gọi đang ở đacircu necircn thocircnqua Proxy server để tigravem kiếm thiết lập cuộc gọi
+
Higravenh Đăng kyacute từ Client đến SIP Proxy Với Giao thức SIP đường baacuteo hiệu vagravethoại riecircng
3 RTP vaacute NAT
Caacutec cuộc gọi trecircn Internet với giao thức SIP được chia thagravenh caacutec goacutei thoại vagraveđược chuyển qua giao thức RTP(Real Time Protocol) RTP lagrave giao thức khocircng chỉthực hiện chuyển caacutec goacutei thoại qua Internet magrave cograven coacute cả video nữa Một cuộc gọ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2772
Taacutec Giả Lecirc Quốc Toagraven
27
thocircng thường coacute hai hướng thocircng tin lagrave nhận vagrave phaacutet RTP lagravem việc chuyển caacutec goacutedữ liệu thoại cũng trecircn hai hướng
NAT Network Address Translators lagrave một trở ngại lớn trong giao thức RTPMạng sử dụng NAT lagrave một mạng chia sẻ nhiều địa chỉ IP nội bộ với một địa chỉ ICocircng cộng để kết nối với thế giới becircn ngoagravei NAT dugraveng để chia sẻ nhiều maacutey tiacutentrong mạng LAN nội bộ sử dụng được Internet nhưng cũng chiacutenh vigrave thế magrave caacutec maacutetiacutenh nội bộ gặp khoacute khăn trong việc thực hiện cuộc gọi VoIP qua Internet Đoacute chiacutenhlagrave vấn để trở ngại khi truyền thoại qua giao thức RTP
Higravenh Minh họa hoạt động của NAT
Trong Giao thức RTP như chuacuteng ta đatilde biết đoacute lagrave thoại được chuyển trecircn haiđường khaacutec nhau lagrave đường phaacutet vagrave đường thu Vấn đề NAT nằm ở chỗ tiacuten hiệthoại từ becircn ngoagravei vagraveo becircn trong qua giao thức RTP khocircng thực hiện được cograven chiềungược lại thigrave thực hiện tốt Hay noacutei caacutech khaacutec vấn đề NAT lagravem cho caacutec cuộc gọi t
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2872
Taacutec Giả Lecirc Quốc Toagraven
28
Internet đagravem thoại vagraveo caacutec maacutey nội bộ qua NAT thigrave khocircng nghe được cograven trongtrường hợp caacutec cuộc gọi từ caacutec maacutey nội bộ ra caacutec maacutey internet thigrave nghe tốt
Vấn đề NAT trecircn được giải quyết trong Asterisk bằng việc khai baacuteo thocircng số NAT=yes trong cấu higravenh kecircnh giao thức SIP
4 IAX ndash Inter Asterisk eXchange
IAX lagrave giao thức baacuteo hiệu Voip được phaacutet triển bởi taacutec giả của phần mềmAsterisk để khắc phục những hạn chế trong giao thức SIP Khocircng giống như giathức SIP chuyển tải thoại vagrave baacuteo hiệu trecircn hai kecircnh khaacutec nhau (out of band) IAXchuyển tải thoại vagrave baacuteo hiệu trecircn cugraveng một kecircnh(in band) IAX giải quyết được vấđề NAT đề cập trecircn phần giao thức SIP Mặc khaacutec IAX lagrave giao thức tối ưu trongviệc sử dụng băng thocircng cho pheacutep nhiều goacutei dữ liệu thoại trecircn cugraveng một IP headecơ chế chuyển tải nhiều cuộc gọi trecircn cugraveng một goacutei IP được gọi lagrave trung kế(Trunk)
Coacute thể giải thiacutech thecircm cơ chế trung kế như sau Giả sử Tocirci cần gửi 5 bức thtới người bạn của Tocirci Tocirci sẽ coacute hai higravenh thức để thực hiện thứ nhất lagrave mỗi bức tTocirci bỏ vagraveo một phong bigrave vậy tổng cộng tocirci phải sử dụng 5 phong bigrave để gửi đi 5 bứthư Caacutech thứ hai lagrave Tocirci bỏ 5 bức thư vagraveo 1 phong bigrave vagrave gửi đi vậy tổng cộng Tocircchỉ tốn 1 phong bigrave Qua phacircn tiacutech trecircn rotilde ragraveng việc 5 bức thư vagraveo một phong bigrave sẽtiết kiệm hơn so với 5 bức thư với 5 phong biacute Cơ chế trecircn cũng giống như nhiềcuộc gọi được đoacuteng thagravenh goacutei vagrave chuyển đi trecircn đường trung kế
Toacutem lại IAX lagrave giao thức dagravenh cho VoIP mới nhất cho đến thời điểm nagravey vớinhiều ưu điểm hấp dẫn như
+ Tối thiểu sử dụng băng thocircng
+ Trong suốt với NAT
+ Hiệu quả với cơ chế trung kế
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2972
Taacutec Giả Lecirc Quốc Toagraven
29
8 Thiết Bị VoIP
1 Voip Phone
Đacircy lagrave thiết bị phần cứng kết nối với mạng VoIP giống như maacutey điện thoại đ bagraven thocircng thường nhưng dagravenh cho VoIP cần phải thực hiện cấu higravenh trước khi sửdụng
Lưu yacute một số tiacutenh năng khi thực hiện mua thiết bị điện thoại VoIP
+ Low bandwidth hỗ trợ Codec nagraveo G729 lagrave tốt nhất hiện nay
+ Web Interface Phải coacute giao tiếp thiết lập cấu higravenh thacircn thiện dễ sử dụng
+ Audio Interface Coacute speaker phone hay khocircng
Giaacute thagravenh của điện thoại voip IP đắc hơn điện thoại thocircng thường giaacute khoảntrecircn dưới 100$ một caacutei
Higravenh Maacutey Điện Thoại VoIP
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3072
Taacutec Giả Lecirc Quốc Toagraven
30
2 Softphone
Lagrave một phần mềm được cagravei trecircn maacutey tiacutenh thực hiện tất cả caacutec chức năng giốn
như thiết bị điện thoại Voip cần lưu yacute khi sử dụng softphone lagrave maacutey tiacutenh phải ccard acircm thanh headphone vagrave firewall khocircng bị khoacutea
Sử dụng softphone với hệ thống Asterisk necircn dugraveng softphone với cocircng nghệgiao thức mới dagravenh cho Asterisk đoacute lagrave IAX
Higravenh Điện Thoại Softphone
3 Card giao tiếp với PSTN
Muốn cho pheacutep caacutec maacutey điện thoại nội bộ trong hệ thống Asterisk kết nối vthực hiện cuộc gọi với mạng PSTN chuacuteng ta cần phải coacute thiết bị phần cứng tươthiacutech Thiết bị phần cứng sử dụng cho hệ thống Asterisk do chiacutenh taacutec giả lập cocircng
Digium phacircn phối đacircy cũng chiacutenh lagrave yacute tưởng lớn trong việc phacircn phối phần mềmAsterisk lagrave hệ thống nguồn mở sử dụng miễn phiacute
Thiết bị phần cứng thường kyacute hiệu bắt đầu bằng cụm từ TDMxyB trong đoacute lagrave số lượng port FXS y lagrave số lượng port FXO giaacute trị tối đa của x vagrave y lagrave 4 viacute dụcard TDM22B coacute nghĩa lagrave coacute 2 fort FXS vagrave 2 port FXO
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3172
Taacutec Giả Lecirc Quốc Toagraven
31
Higravenh Card TDM22B gồm 4 port 2 FXS vagrave 2 FXO
4 ATA Analog Telephone Adaptors
ATA lagrave thiết bị kết nối với điện thoại Analog thocircng thường đến mạng VoIPmột thiết bị ATA gồm coacute hai loại port RJ-11 để kết nối với maacutey điện thoại analo
thocircng thường cograven RJ-45 để kết nối với mạng VoIP
ATA thực sự lagrave thiết bị FXS chuyển đổi tiacuten hiệu Analog sang tiacuten hiệu số sửdụng cho mạng VoIP để tận dụng maacutey điện thoại Analog necircn trang bị thiết bị ATAthay vigrave phải trang bị điện thoại VoIP
Thiết bị ATA sử dụng với giao thức IAX được Digium phacircn phối lagrave thiết bịATA được sử dụng rộng ratildei với Asterisk coacute tecircn gọi lagrave IAXy
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3272
Taacutec Giả Lecirc Quốc Toagraven
32
Higravenh Thiết bị ATA
9 Codecs
Thuật Toaacuten codecs(CompressorDe-compressor) lagrave một tập caacutec quy luật đượcsử dụng để chuyển đổi caacutec tiacuten hiệu thoại dạng Analog sang tiacuten hiệu số vagrave ngược lạ
Coacute nhiều thuật toaacuten codec để thực hiện chuyển đổi tiacuten hiệu analog sang tiacuten
hiệu số dạng nhị phacircn (01) như G711 GSM G729hellipỨng với mỗi thuật toaacuten coacutenhững ưu điểm riecircng đặc biệt lagrave việc tối ưu sử dụng băng thocircng trecircn đường truyềMục tiecircu cuối cugraveng lagrave caacutec thuật toaacuten đưa ra phải đảm bảo chất lượng cuộc gọi nhvagrave tiết kiệm băng thocircng nhất
G729 lagrave thuật toaacuten codec tốt nhất hiện nay trong hệ thống VoIP Với hệthống Asterisk để sử dụng thuật toaacuten nagravey cần phải mua bản quyền sử dụng vigrave đacircy
codec khocircng miễn phiacute sử dụng
10 QoS ndash Quality of Service
Caacutec yếu tố ảnh hưởng đến chất lượng của dịch vụ đối với VoIP đoacute lagrave caacuteyếu ảnh hưởng đến chất lượng tiacuten hiệu thoại
1 Độ trễ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3372
Taacutec Giả Lecirc Quốc Toagraven
33
Thoại lagrave dịch vụ mang tiacutenh thời gian thực rất cao vigrave thế trễ lagrave yếu tố ảnhhưởng rất lớn đến chất lượng dịch vụ Trễ được định nghĩa lagrave khoảng thời gian tiacute
từ luacutec tiacuten hiệu thoại đi từ miệng người noacutei tới tai người nghe Trễ lagrave yếu tố khocircnthể traacutenh khỏi độ trễ đối với mạng điện thoại truyền thống (mạng PSTN) khoảng50ms đến 70ms theo khiến nghị của ITU-T để đảm bảo chất lượng cho hệ thốVoIP thigrave độ trễ từ đầu phaacutet tới đầu thu hoặc ngược lại khocircng được vượt quaacute 150mkhi magrave độ trễ vượt quaacute 400ms đến 500ms thigrave khocircng thể chấp nhận được
Caacutec nguyecircn nhacircn gacircy ra trễ bao gồm Trễ trecircn mạng lưới trễ trecircn bộ mả hoacutea
giải matilde trễ trong quaacute trigravenh đoacuteng goacutei trễ bộ đệm trễ xử lyacute tiếng noacuteihellip2 Độ trượt(Jitter)
Nguyecircn nhacircn gacircy ra trượt lagrave goacutei tiacuten hiệu thoại trong quaacute trigravenh truyền từnguồn đến điacutech sẽ gặp phải những điều kiện khaacutec nhau trecircn mạng lưới do đoacute thườđến điacutech với những khoảng trễ khaacutec nhau Đacircy lagrave tiacutenh khocircng đồng nhất của trễ Mnguyecircn nhacircn khaacutec của trượt đối với ứng dụng PC to PC lagrave do việc sử dụng hệ điề
hagravenh phi thời gian thực caacutec goacutei tin thoại phải đợi hệ điều hagravenh xử lyacute trong nhữnkhoảng thời gian khaacutec nhau khi magrave hệ điều hagravenh đang phải xử lyacute đối với caacutec ứndụng khaacutec
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3472
Taacutec Giả Lecirc Quốc Toagraven
34
Higravenh Nguyecircn nhacircn xảy ra trượt
Để loại bỏ tiacutenh khocircng đồng nhất của trễ người ta thiết kế caacutec bộ đệm t(Jitter Buffer) tại nơi đến của caacutec goacutei tin caacutec goacutei tin đến với caacutec khoảng caacutech khaacutecnhau về thời gian được lưu tại bộ đệm rồi phaacutet khỏi bộ đệm với khoảng trễ n
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3572
Taacutec Giả Lecirc Quốc Toagraven
35
nhau Khi bộ đếm coacute kiacutech thước cagraveng lớn thigrave khả năng loại bỏ tiacutenh khocircng đồng nhấcagraveng lớn tuy nhiecircn việc sử dụng bộ đệm sẽ gacircy ra hiện tượng trễ trong ứng dụnthoại do đoacute cần coacute bagravei toaacuten cacircn đối giữa độ trễ vagrave độ trượt
Ngoagravei 2 nguyecircn nhacircn trecircn cograven một số nguyecircn nhacircn nữa ảnh hưởng đến chấtlượng thoại như độ mất goacutei giới hạn băng thocircng tiếng vọng
3 CAgraveI ĐẶT ASTERISK
1 Cagravei đặt Asterisk
1 Download vagrave bung neacuten
Để cagravei đặt Asterisk đầu tiecircn chuacuteng ta cần phải cagravei đặt hệ điều hagravenh linux trecircnmaacutey tiacutenh của migravenh Coacute thể cagravei hệ điều hagravenh Linux Fedora CentOS Redhat hoặcDebian Caacutec goacutei phần mềm phụ thuộc phải coacute trong hệ điều hagravenh Linux trước khcagravei Asterisk bao gồm
bison
gcc
kernel-source
libtermcap-devel
ncurses-devel
openssl096b
openssl-devel
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3672
Taacutec Giả Lecirc Quốc Toagraven
36
Sau khi hoagraven tất caacutec bước trecircn chuacuteng ta tiến hagravenh download phần mềmasterisk với phiecircn bản mới nhất
cd usrsrc
wgetftpftpdigiumcompubasteriskasterisk-140targz
wgetftpftpdigiumcompubasteriskasterisk-addons-140targz
wgetftpftpdigiumcompubasteriskasterisk-sounds-140targz
wgethttpftpdigiumcompubzaptelzaptel-140targz
wgethttpftpdigiumcompublibprilibpri-140targz
Việc download coacute thể nhanh hay chậm tugravey vagraveo tốc độ trecircn đường internet saukhi download hoagraven thagravenh chuacuteng ta tiến hagravenh bung neacuten caacutec goacutei ra thư mục chỉ định
tar ndashxzvf asterisk-140targz
tar ndashxzvf asterisk-addons-140targz
tar ndashxzvf asterisk-sounds-140targz
tar ndashxzvf zaptel-140targz
tar ndashxzvf libpri-140targz
Giải neacuten xong chuacuteng ta nhớ thực hiện lệnh
ln ndashs usrsrcasterisk-140 usrsrcasterisk lệnh nagravey để bảo đảm goacuteildquoaddonsrdquo được biecircn dịch đuacuteng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3772
Taacutec Giả Lecirc Quốc Toagraven
37
Bacircy giờ tới phần chuacuteng ta biecircn dịch caacutec goacutei đatilde giải neacuten ở trecircn trước tiecircn lagrave goacuteizaptel kế đến lagrave libpri sau cugraveng lagrave goacutei Asterisk
2 Cagravei đặt goacutei Zaptel
Goacutei zaptel sẽ chứa tại thư mục usrsrczaptel Đaacutenh lệnh như dưới đacircy để cagraveđặt
cd usrsrczaptel
make clean make install
Lệnh nagravey thực hiện khoảng 2 phuacutet tugravey vagraveo tốc độ maacutey tiacutenh cagravei đặt sau khicagravei đặt xong sẽ trở lại dấu nhắc lệnh vagrave hiển thị một loạt caacutec thocircng baacuteo trong đoacute một số bản tin lỗi magrave chủ yếu lagrave yecircu cầu cagravei đặt caacutec goacutei phụ thuộc đatilde liệt kecirc ở trecircnếu caacutec goacutei trecircn chưa được cagravei đặt
Goacutei zaptel nagravey chứa caacutec driver cho caacutec phần cứng kết giao tiếp với asterisk
do Digium phacircn phối vagrave một số thư viện cho việc coacute thực hiện giao tiếp với phầcứng hay khocircng
Để Asterisk coacute thể chạy cugraveng với khởi động của maacutey tiacutenh chuacuteng ta cần thựchiện lệnh
make config
Lệnh nagravey sẽ tạo ra script chegraven module zaptel vagraveo kernel vagrave chạy ztconfig vagraveoluacutec khởi động maacutey Trong Redhat script nagravey sẽ được cheacutep vagraveo etcinitd chạy ở mức 3
3 Cagravei đặt goacutei libpri
Kế đến chuacuteng ta biecircn dịch goacutei libpri tại thư mục usrsrclibpri bằng lệnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3972
Taacutec Giả Lecirc Quốc Toagraven
39
make config
3 Cagravei đặt TrixBox
1 Giới thiệu
TRIXBOX được phaacutet triển từ nhacircn của ứng dụng Asterisk được tổng hợp từmột số thagravenh phần chiacutenh được phaacutet triển bởi cộng đồng phaacutet triển nguồn mAsterisk dưới bản quyền GPL Trixbox bao gồm những thagravenh phần chiacutenh cho việcấu higravenh ứng dụng thống kecirc tigravenh trạng hoạt động hệ thống lưu trữ dự phograveng v
nhacircn lagrave hệ điều hagravenh CentOS một phiecircn bản khaacutec của Redhat tất cả kết hợp vớnhau tạo thagravenh một goacutei hoagraven chỉnh Khi cagravei goacutei nagravey vagraveo maacutey tiacutenh thigrave coacute thể sử dụngnhư một tổng đagravei PBX
Caacutec thagravenh phần chiacutenh trong goacutei TRIXBOX lagrave
Asterisk PBX Thagravenh phần chiacutenh của hệ thống Trixbox
CentOS Một phiecircn bản Linux khaacutec của Redhat hoagraven toagraven miển phiacute sửdụng Lagrave nhacircn chiacutenh cho Trixbox
SugarCRM Hệ thống quan hệ khaacutech hagraveng CRM
A2Billing ndash Lagrave thagravenh phần dagravenh cho việc xacircy dựng hệ thống điện thoạitrả trước hay cograven gọi lagrave điện thọai thẻ (Calling Card)
Flash Operator Panel Bảng điều khiển giaacutem saacutet tigravenh trạng hoạt độngcủa caacutec maacutey điện thoại trong hệ thống
Web MeetMe Control Quản lyacute triển khai hệ thống điện thoại hội nghị
FreePBX Đacircy lagrave cocircng cụ với giao diện web dagravenh cho việc cấu higravenh hệthống Asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4072
Taacutec Giả Lecirc Quốc Toagraven
40
Hệ thống Lưu trữ dự phograveng vagrave thống kecirc Lagrave thagravenh phần của TRIXBOXcung cấp caacutec cocircng cụ cần thiết cho việc bảo trigrave bảo dưỡng hệ thống
Hệ thống Apache-Php-Mysql dagravenh cho giải phaacutep Webserver của hệthống
2 DOWNLOAD VAgrave LẮP ĐẶT TRIXBOX
Địa chỉ downloadhttpsourceforgenetprojectsasteriskathome
Khi download xong file Trixboxiso Hatildey dugraveng file nagravey Burn vagraveo CD ( xinlưu yacute lagrave dugraveng Nero hoặc chương trigravenh cheacutep đĩa ưa thiacutech rồi burn vagraveo cd_romchứ khocircng phải cheacutep file đoacute vagraveo cd_rom)
Sau khi coacute CD Hatildey boot từ CD nagravey để cagravei đặt trixbox
Chuacute yacute dữ liệu trecircn đĩa cứng sẽ bị xoacutea sạch để cagravei đặt trixbox Nếu trongđĩa cứng cograven dữ liệu hatildey backup tất cả trước khi tiến hagravenh lắp đặt trixbox
Tới đacircy lần lượt caacutec magraven higravenh chỉ dẫn sẽ hiện ra vagrave cứ theo hướng dẫn magrave cagraveđặt Sau khi cagravei đặt xong chuacuteng ta dugraveng Username root vagrave password password đểđăng nhập hệ thống
3 Cấu higravenh địa chỉ IP cho card mạng
Thiết lập địa chỉ IP bằng caacutech gotilde lệnh
netconfig
Chọn OK để thiếp lập
Nếu trong mạng coacute hỗ trợ DHCP thigrave hatildey chọn mục nagravey cograven nếu khocircng hatildeynhập địa chỉ IP tĩnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4172
Taacutec Giả Lecirc Quốc Toagraven
41
IP 19216801
Netmask 2552552550
Gateway 19216893254 ngotilde ra becircn ngoagravei
Primary nameserver 19216893200 thiết lập nếu coacute
Chọn OK để chấp nhận caacutec thiết lập trecircn
Sau khi hoagraven tất hatildey lagravem cho thiết lập coacute hiệu lực bằng caacutech reset lại
maacutey tiacutenh hoặc dugraveng lệnh sau
Service network stop
Service network start
Đến đacircy xem như cagravei đặt hoagraven tất bacircy giờ để cấu higravenh được Asterisk chuacutengta vagraveo một magravey khaacutec vagrave mở Internet Explorer hoặc một trigravenh duyệt web bất kỳ
nhập vagraveohttp19216801đatilde cấu higravenh ở trecircn vagrave tiến hagravenh cấu higravenh hệ thốngvới tagravei khoảng username maint vagrave password password
4 Tổ Chức Thư Mục của Asterisk
Asterisk sử dụng nhiều thư mục trecircn hệ thống linux để quản lyacute caacutec khiacutea cạnkhaacutec nhau của hệ thống như nghi nhận bản tin thoại caacutec bản tin nhắc thoại hoặcaacutec tập tin cấu higravenh Phần nagravey sẽ trigravenh bagravey caacutec thư mục chiacutenh yếu được tạo ra tronquaacute trigravenh lắp đặt vagrave được cấu higravenh trong tập tin Asteriskconf
1 etcasterisk
Thư mục etcasterisk chứa tất cả caacutec tập tin cấu higravenh của hệ thốngAsterisk ngoại trừ tập tin Zaptelconf được đặt tại thư mục etc Phần cứnZaptel đầu tiecircn được phaacutet triển bởi Jim Dixon thuộc nhoacutem Zapata Telephony
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4272
Taacutec Giả Lecirc Quốc Toagraven
42
Group để giao tiếp giữa maacutey tiacutenh với mạng điện thoại magrave Asterisk lại sửdụng phần cứng nagravey với lyacute do đoacute magrave file cấu higravenh zaptelconf khocircng nằmtrong thư mục etcasterisk
2 usrlibasteriskmodules
Thư mục usrlibasteriskmodules chứa tất cả caacutec module cần thiết đểasterisk hoạt động Becircn trong thư mục lagrave caacutec ứng dụng khaacutec nhau caacutec codeccaacutec định dạng acircm thanh(format) vagrave caacutec kecircnh thocircng tin(channel) Theo mặc địnhAsterisk sẽ nạp tất cả caacutec module vagraveo luacutec khởi động Chuacuteng ta coacute thể khocircng cho
nạp một module bất kỳ bằng caacutech khocircng khai baacuteo sử dụng trong tập tinmodulesconf Lưu yacute khi khocircng cho nạp module thigrave phải biết chắc module đoacutekhocircng lagravem ảnh hưởng hoạt động của asterisk nếu khocircng lỗi sẽ xuất hiện
3 varlibasterisk
Thư mục varlibasterisk chứa tập tin astdb vagrave một số thư mục con Tập tinastdb định vị thocircng tin cơ sở dữ liệu của Asterisk giống như Microsoft WindowsRegistry
Caacutec thư mục con của thư mục varlibasterisk bao gồm
agi-bin
Thư mục agi-bin chứa caacutec script của người dugraveng magrave Asterisk coacute thểđịnh vị sử dụng qua caacutec ứng dụng AGI
AGI lagrave phần giao tiếp với ngocircn ngữ lập trigravenh script để thực hiện mộtsố cocircng việc của Asterisk từ becircn ngoagravei
firmware
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4372
Taacutec Giả Lecirc Quốc Toagraven
43
Thư mục firmware chứa một số phần dẻo(firmware) cho caacutec thiết bịkhaacutec nhau tương thiacutech với Asterisk Hiện tại chỉ coacute thư mục con iax chứa
firmware cho thiếy bị IAXy của Digium IAXy lagrave thiết bị ATA sử dụng giaothức IAX
images
Caacutec ứng dụng thocircng tin với caacutec kecircnh hỗ trợ ảnh images thigrave sử dụng thư mụcnagravey Nhưng hiện tại caacutec kecircnh thocircng tin hầu như khocircng hỗ trợ truyền ảnh images necircthư mục nagravey cũng hiếm khi được sử dụng Tuy nhiecircn nếu caacutec thiết bị coacute hỗ trợ ththư mục nagravey trở necircn hiệu dụng
keys
Asterisk coacute thể sử dụng hệ thống khoaacute publicprivate để xaacutec minh caacutec kết nốgiữa caacutec server Asterisk thocircng qua chữ kyacute điện tử RSA Nếu đặt một khoaacute publicvagraveo thư mục keys thigrave kết nối của server đầu becircn kia coacute thể được xaacutec minh bằn
kecircnh thocircng tin coacute hỗ trợ đối với Asterisk thigrave kecircnh giao thức IAX hỗ trợ loại xaacutecminh nagravey Một khoaacute private khocircng bao giờ cocircng bố chuacuteng ta chỉ cocircng bố khoaacute public đến với server cần nối đến sau đoacute sẽ được xaacutec minh với khoaacute private nagravey Chai khoaacute public vagrave private được lưu với đuocirci pub vagrave key đặt tại thư mục keys
mohmp3
Khi cấu higravenh Asterisk sử dụng tiacutenh năng Music on Hold tiacutenh năng hoạt độngsẽ thực hiện lấy caacutec tập tin mp3 tại thư mục mohmp3 Tập tin định dạng theo chucủa Asterisk necircn khi sử dụng caacutec file Mp3 thocircng thường cần coacute sự chuyển đổi thiacutechợp trước khi cheacutep vagraveo thư mục trecircn để sử dụng
sounds
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4472
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4572
Taacutec Giả Lecirc Quốc Toagraven
45
Thư mục tmp sử dụng để lưu trữ những thocircng tin tạm để luocircn bảo đảm khocircnxảy ra tigravenh trạng đọc vagrave viết tập tin cugraveng một luacutec Khi yecircu cầu xử lyacute tập tin chuacuteng thao taacutec trecircn thư mục tmp trước khi lưu vagraveo tập tin điacutech
Tất cả caacutec lời nhắc thoại từ phiacutea người sử dụng vagrave caacutec lời nhắc thoại sử dụ
cho thao taacutec hộp voicemail đều được chứa trong thư mục voicemail Một hộp thưthoại được tạo ra ứng với một maacutey nội bộ trong tập tin voicemailconf sẽ được tra một thư mục con tương ứng cho maacutey nội bộ đoacute tại thư mục voicemail
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4672
Taacutec Giả Lecirc Quốc Toagraven
46
5 varrun
Thư mục varrun chứa thocircng tin process ID(pid) cho tất cả caacutec tiến trigravenh đang
hoạt động trong hệ thống bao gồm cả Asterisk Lưu yacute lagrave ứng với mỗi hệ điều hagravethư mục varrun coacute thể khaacutec
6 varlogasterisk
Thư mục varlogasterisk lagrave nơi Asterisk chứa tất cả caacutec tập tin nhật kyacute haycograven gọi lagrave tập tin log Chuacuteng ta coacute thể tuỳ biến caacutec loại thocircng tin được lưu trong caacutec
tập tin log khaacutec nhau qua tập tin cấu higravenh loggerconf đặt tại thư mục etcasterisk7 varlogasteriskcdr-csv
Thư mục varlogasteriskcdr-csv được sử dụng để lưu chi tiết cuộc gọi CDRThocircng tin mặc định về chi tiết thocircng tin cuộc gọi lưu trữ trong tập tin MasterCVSnhưng thường thigrave ứng với mỗi matilde accountcode sẽ tạo một thư mục riecircng để lưu ctiết cuộc gọi cho maacutey đoacute
5 Một số lệnh thao taacutec trecircn hệ thống asterisk
Asterisk coacute hai thagravenh phần được xacircy dụng tiacutech hợp với nhau vagrave chạy songsong nhau
Asterisk Server bigravenh thường chạy ở chế độ nền(background) giống caacutec sevicestrong window
Asterisk Client ở chế độ dograveng lệnh CLI giao tiếp với Asterisk Server thực thicaacutec lệnh để kiểm tra hay xem caacutec thocircng tin của server
Để Chạy vagrave dừng Asterisk ở chế độ nền chuacuteng ta thực hiện lệnh sau
etcinitdasterisk (start|stop)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4772
Taacutec Giả Lecirc Quốc Toagraven
47
Một khi Asterisk đatilde chạy chuacuteng ta coacute thể chuyển qua chế độ CLI từ dấu nhắlệnh của linux như sau
asterisk ndashr
Khi vagraveo chế độ lệnh nếu muốn thoaacutet về lại dấu nhắc linux chuacuteng ta dugraveng lệnh
CLIgtexit
Caacutec lệnh cơ bản thực hiện tại CLIgt
Bất cứ khi nagraveo chỉnh sửa caacutec tập tin cấu higravenh chuacuteng ta đều cần phải nạp lại đcaacutec thay đổi coacute hiệu lực điều đoacute thực hiện bằng lệnh
CLIgtreload
Bậc chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 debug
CLIgt SIP debug
Tắt chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 no debug
CLIgt SIP no debug
Hiển thị caacutec trạng thaacutei thocircng tin của users peers vagravechannels của SIP hoặc IAX2
CLIgt sip show users
CLIgt sip show peers
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4872
Taacutec Giả Lecirc Quốc Toagraven
48
CLIgt sip show channels
CLIgt iax2 show peers
CLIgt iax2 show users
CLIgt iax2 show channels
Đến thời điểm nagravey coacute thể noacutei chuacuteng ta đatilde hoagraven thagravenh cagravei đặt hệ thốngAsterisk cagravei đặt xong mới lagrave bước mở đầu để cho hệ thống Asterisk hoạt động vtừng ứng dụng cụ thể chuacuteng sẽ tiếp tục thực hiện caacutec giai đoạn được xem lagrave qutrọng nhất trong việc triển khai hệ thống Asterisk đoacute lagrave giai đoạn cấu higravenh hệ thốnlecircn kế hoạch Diaplan chương cograven lại đều nhắm đến mục tiecircu nagravey
4 CẤU HIgraveNH HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Sau khi hoagraven tất phần cagravei đặt hệ thống asterisk một bước quan trọng tiếp thelagrave cấu higravenh hệ thống coacute thể noacutei đacircy lagrave bước quan trọng nhất của việc khiển khai thống đến với từng ứng dụng cụ thể Trong chương nagravey xin giới thiệu caacutei nhigraven đầtiecircn về việc cấu higravenh trước khi đi sacircu hơn ở những chương sau những gigrave giới thiệ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4972
Taacutec Giả Lecirc Quốc Toagraven
49
trong chương nagravey lagrave nền moacuteng cơ bản nhưng đủ để hiểu lagravem thế nagraveo hệ thống coacute thoạt động được nội dung chiacutenh bao gồm
+ Thao taacutec cấu higravenh trecircn hệ thống tập tin của asterisk
+ Caacutech cagravei đặt phần mềm softphone trecircn cocircng nghệ sip
+ Cấu higravenh cho hai maacutey softphone liecircn lạc với nhau
+ Cấu higravenh phaacutet thocircng điệp
+ Quay số qua Sip vagrave mạng PSTN
2 Tập Tin cấu higravenh
Tất cả caacutec file cấu higravenh cho hệ thống asterisk đều nằm tại thư mục etcasterisngoại trừ file zaptelconf cấu higravenh cho phần cứng TDM nằm tại thư mục etc caacutecthức cấu higravenh giống như tập tin ini của window vậy Caacutec nội dung sau dấu chấm phảy lagrave nội dung chuacute thiacutech trong file cấu higravenh giống như chuacute thiacutech trong ngocircn ngữ
lập trigravenh C lagrave dấu Tất cả caacutec khoảng trắng trong tập tin đều được bỏ qua khocircng yacute nghĩa trong file cấu higravenh
Trong file cấu higravenh cograven coacute hai pheacutep gaacuten rất thường xuyecircn được sử dụng pheacutep gaacuten ldquo=rdquo lagrave dugraveng cho việc gaacuten caacutec biến cograven pheacutep gaacuten ldquo=gtrdquo dugraveng cho việc gaacutencaacutec đối tượng sau đacircy lagrave một viacute dụ cho file cấu higravenh
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5072
Taacutec Giả Lecirc Quốc Toagraven
50
Đacircy lagrave caacutec dograveng chuacute thiacutech
[section]
Key=value gaacuten giaacute trị cho biến
[section2]
Key=gtobject Gaacuten giaacute trị cho đối tượng
Cuacute phaacutep thực hiện giống nhau cho tất cả caacutec file cấu higravenh nhưng coacute vagravei kiểukhaacutec nhau cho mỗi file cầu higravenh dựa vagraveo thức caacutech hoạt động của chuacuteng
3 Caacutec kiểu ảnh hưởng trong tập cấu higravenh
Coacute ba kiểu caacutech thức hoạt động của tập tin cấu higravenh như sau
Kiểu Caacutech hoạt động File cầu higravenh Viacute dụ
S i m p l eGroup
Coacute hiệu lực trecircntừng dograveng trongfile
Extensionconf
Exten=gt4001dial(sip400)
O p t i o ninheritance
Dograveng khai baacuteosau thừa kếnhững thocircng sốkhai baacuteo trước
Zapataconf [channels]
Context=From_PSTN
Signalling=fxs_ks
Group=1Channel=gt1
C o m p l e xEntity
Mỗi entity nhậnmột ngữ cảnh
sipconf
iaxconf
[cisco]
Type=friend
Secret=12345
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5172
Taacutec Giả Lecirc Quốc Toagraven
51
Host=192168165
Context=NoiBo
[xten]
Type=friend
Secret=6789
Host=dynamic
Context=NoiBo
1 Simple Group
Đacircy lagrave kiểu cấu higravenh đơn giản nhất thường sử dụng trong caacutec fileextentionconf meetmeconf voicemailconf tương ứng với mỗi dograveng khai baacuteo lagravemột đối tượng coacute yacute nghĩa trecircn dograveng đoacute
Viacute dụ
Extentionconf [section]
object1=gt op1op2op3
object2=gt op1bop2bop3b
Trong viacute dụ trecircn mỗi dograveng tương ứng với caacutec toaacuten tử khaacutec nhau object1 coacute caacutectoaacuten từ op1 op2 op3 trong khi đoacute object2 lại coacute caacutec toaacuten từ op1b op2b op3b
2 Option inheritance
Đacircy lagrave cấu higravenh kiểu thừa kế thường được cấu higravenh trong caacutec file zapataconfagentconf với kiểu cấu higravenh nagravey thigrave caacutec dograveng phiacutea dưới coacute thể thừa kế caacutec thocircng sdograveng phiacutea trecircn tương ứng với mỗi section caacutec dograveng phiacutea dưới coacute thể thay đổi caacutecthocircng số cho tươngứng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5272
Taacutec Giả Lecirc Quốc Toagraven
52
Viacute dụ
Extentionconf
[section]
Op1=bas
Op2=adv
Object1=gt1
Op1=int
Object1=gt2
Với cấu higravenh trecircn coacute thể giải thiacutech như sau object1=gt1 thừa hưởng hai thocircngsố ở phiacutea trecircn đoacute lagrave op1=bas vagrave op2=adv trong khi đoacute đối với object1=gt2 với thocircngsố op1=int được khai baacuteo lại necircn object1=gt2 được thừa kế từ hai thocircng số op1=invagrave op2=adv
3 Complex Entity
Với cấu kiểu nagravey được tổ chức thagravenh nhiều entity ứng với mỗi entity coacute nhiềthocircng số được khai baacuteo mỗi entity ở đacircy chiacutenh lagrave caacutec section để khai baacuteo caacutec kecircnhthocircng tin Cấu higravenh thường được sử dụng trong caacutec file iaxconf sipconf
Viacute dụ
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5372
Taacutec Giả Lecirc Quốc Toagraven
53
[entity1]
Op1=value1
Op2=value2
[entity2]
Op1=value3
Op2=value4
Entity1 coacute caacutec giaacute trị value1 vagrave value2 cho thocircng số op1 vagrave op2 trong khi đoacute
cũng lagrave thocircng số op1 vagrave op 2 nhưng coacute caacutec giaacute trị khaacutec lagrave value3 vagrave value4 choentity2
4 Cấu higravenh giao tiếp với mạng PSTN
1 Ngữ cảnh kết nối
Để kết nối với mạng PSTN chuacuteng ta cần phải coacute một card TDM với Cổng
FXO vagrave một đường dacircy điện thoại hoặc coacute thể lagrave một tổng đagravei nội bộ PBX Cnhiều nhagrave sản xuất phần cứng khaacutec nhau nhưng trong phần cấu higravenh dưới dacircy lagrave cấhigravenh cho card zapata TDM01B của digium (card nagravey hiện nay giaacute baacuten khoảng175$)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2372
Taacutec Giả Lecirc Quốc Toagraven
23
Higravenh Minh họa gheacutep kecircnh phacircn chia theo thời gian
6 Caacutec higravenh thức baacuteo hiệu giao tiếp TDM
1 FXO vagrave FXS
FXO (Foreign Exchange Office) lagrave thiết bị nhận tiacuten hiệu từ tổng đagravei gửi đếnnhư dograveng chuocircng tiacuten hiệu nhấc gaacutec maacutey tiacuten hiệu mời quay số gửi vagrave nhận tiacuten hiệthoạihellip FXO giống như maacutey Fax hay modem dial-up 56k vậy Dugraveng để kết nối vớ
đường dacircy điện thoại
FXS (Foreign Exchange Station) lagrave thiết bị tại nơi cung cấp đường dacircy điệnthoại thiết bị FXS sẽ cung cấp tiacuten hiệu mời quay số(dialtone) dograveng chuocircng hồi acircmchuocircng(ring tone) Trong đường dacircy Analog FXS cung cấp dograveng chuocircng vagrave điện aacutepcho điện thoại hoạt động viacute dụ FXS cung cấp điện aacutep -48VDC đến maacutey điện tho
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2472
Taacutec Giả Lecirc Quốc Toagraven
24
Analog trong suốt thời gian đagravem thoại vagrave cung cấp 90VAC(20hz) để phaacutet điện aacuteprung chuocircng Thiết bị FXS phaacutet cograven thiết bị FXO nhận
Card TDM sử dụng trong hệ thống asterisk thường tiacutech hợp vừa thiết bị FXOvừa lagrave thiết bị FXS(Giống bộ ATA) FXO để kết nối với đường dacircy điện thoại cograveFXS dugraveng để kết nối với maacutey điện thoại analog thocircng thường dugraveng để chuyển mạcuộc gọi TDM qua hệ thống asterisk(Xem thecircm trong phần cấu higravenh cho kecircnhTDM)
Toacutem lại cần nắm
FXS được kết nối với FXO giống với đường dacircy điện thoại nối với maacuteyđiện thoại
FXS cung cấp nguồn cho điện thoại FXO(điện thoại Analog)
Higravenh a) Maacutey điện thoại vai trograve FXO kết nối với FXS(PSTN) Higravenh b) PBXkết nối với FXO vagrave FXS Higravenh c) ATA đoacuteng vai trograve như FXS để kết nối với maacuteyđiện thoại vai trograve FXO
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2572
Taacutec Giả Lecirc Quốc Toagraven
25
2 Baacuteo hiệu Analog giữa đầu cuối vagrave tổng đagravei
Khi chuacuteng ta nhấc mấy điện thoại để gọi thigrave nghe tiacuten hiệu mời quay số kh
cuộc gọi gọi đầu becircn kia bị bận thigrave chuacuteng ta nghe tiacuten hiệu bận(busy tone) caacutec loạtiacuten hiệu như vậy gọi lagrave caacutec tiacuten hiệu baacuteo hiệu analog Caacutec tiacuten hiệu như Mời quay sốtiacuten hiệu bận rung chuocircng trạng thaacutei nhấc gaacutec maacutey Caacutec loại tiacuten hiệu trecircn được trađổi giữa thiết bị FXO vagrave FXS
Coacute nhiều phương thức baacuteo hiệu khaacutec nhau ứng với từng nơi sử dụng vigrave thếtại nơi kết nối với đường dacircy điện thoại cần xem xeacutet họ đang sử dụng phương th
baacuteo hiệu gigrave từ đoacute chuacuteng ta khai thaacutec loại tiacuten hiệu baacuteo hiệu cho thiacutech hợp caacutec phương thức baacuteo hiệu như Loop Start Ground Start Một minh họa cho việc sửdụng sai phương thức baacuteo hiệu lagrave khi chuacuteng ta khai baacuteo phương thức baacuteo hiệu giữhệ thống Asterisk vagrave đường dacircy điện thoại khaacutec nhau thigrave dẫn đến Asterisk sẽ khocircnnhận biết được tiacuten hiệu gaacutec maacutey điều nagravey sẽ lagravem cho asterisk khocircng baacuteo giờ giải tỏđược cuộc gọi để thực hiện cuộc gọi mới
3 Baacuteo hiệu giữa caacutec tổng đagravei
SS7 hệ thống baacuteo hiệu số 7 được phaacutet triển bởi ATampT vagrave ITU lagrave hệ thống baacuteo hiệu chuyển caacutec cuộc gọi giữa caacutec tổng đagravei trong mạng PSTN Trong hệ thốn baacuteo hiệu số 7 tiacuten hiệu chuyển tải trecircn đường trung kế kết nối giữa hai tổng đagravei gồcoacute hai mạch riecircng một cho thoại vagrave một cho baacuteo hiệu như vậy thoại vagrave baacuteo hiệu cthể chuyển trecircn hai kecircnh vật lyacute khaacutec nhau
7 Baacuteo Hiệu trecircn mạng điện thoại VoIP
1 SIP Session Initiation Prorocol
Sip lagrave giao thức Internet dagravenh cho baacuteo hiệu VoIP được phaacutet triển bởi IETFcung cấp vagravei chức năng giống hệ thống baacuteo hiệu số 7 nhưng dựa trecircn nền IP Mộchức năng giống baacuteo hiệu số 7 đoacute lagrave baacuteo hiệu vagrave thoại chuyển tải trecircn hai kecircnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2672
Taacutec Giả Lecirc Quốc Toagraven
26
riecircng Giao thức SIP thực hiện chức năng thiết lập vagrave baacuteo hiệu cuộc gọi khi noacutei đế baacuteo hiệu cuộc gọi lagrave chỉ định caacutec tiacuten hiệu baacuteo hiệu như tiacuten hiệu mời quay số tiacutehiệu bậnhellip
2 Proxy server
Mặc dầu hai thiết bị SIP coacute thể liecircn lạc trực tiếp với nhau để khởi tạo cuộgọi nhưng trong giao thức SIP cograven coacute chức năng Proxy để linh hoạt hơn trong thiếlập cuộc gọi Proxy Server sẽ lagravem nhiệm vụ ghi nhận tất cả caacutec số điện thoại đư phiacutea client đăng kyacute đến qua bản tin ldquoRegistrationrdquo Khi một client khaacutec thực hiện
cuộc gọi thigrave thực sự Client đoacute khocircng biết số điện thoại cần gọi đang ở đacircu necircn thocircnqua Proxy server để tigravem kiếm thiết lập cuộc gọi
+
Higravenh Đăng kyacute từ Client đến SIP Proxy Với Giao thức SIP đường baacuteo hiệu vagravethoại riecircng
3 RTP vaacute NAT
Caacutec cuộc gọi trecircn Internet với giao thức SIP được chia thagravenh caacutec goacutei thoại vagraveđược chuyển qua giao thức RTP(Real Time Protocol) RTP lagrave giao thức khocircng chỉthực hiện chuyển caacutec goacutei thoại qua Internet magrave cograven coacute cả video nữa Một cuộc gọ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2772
Taacutec Giả Lecirc Quốc Toagraven
27
thocircng thường coacute hai hướng thocircng tin lagrave nhận vagrave phaacutet RTP lagravem việc chuyển caacutec goacutedữ liệu thoại cũng trecircn hai hướng
NAT Network Address Translators lagrave một trở ngại lớn trong giao thức RTPMạng sử dụng NAT lagrave một mạng chia sẻ nhiều địa chỉ IP nội bộ với một địa chỉ ICocircng cộng để kết nối với thế giới becircn ngoagravei NAT dugraveng để chia sẻ nhiều maacutey tiacutentrong mạng LAN nội bộ sử dụng được Internet nhưng cũng chiacutenh vigrave thế magrave caacutec maacutetiacutenh nội bộ gặp khoacute khăn trong việc thực hiện cuộc gọi VoIP qua Internet Đoacute chiacutenhlagrave vấn để trở ngại khi truyền thoại qua giao thức RTP
Higravenh Minh họa hoạt động của NAT
Trong Giao thức RTP như chuacuteng ta đatilde biết đoacute lagrave thoại được chuyển trecircn haiđường khaacutec nhau lagrave đường phaacutet vagrave đường thu Vấn đề NAT nằm ở chỗ tiacuten hiệthoại từ becircn ngoagravei vagraveo becircn trong qua giao thức RTP khocircng thực hiện được cograven chiềungược lại thigrave thực hiện tốt Hay noacutei caacutech khaacutec vấn đề NAT lagravem cho caacutec cuộc gọi t
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2872
Taacutec Giả Lecirc Quốc Toagraven
28
Internet đagravem thoại vagraveo caacutec maacutey nội bộ qua NAT thigrave khocircng nghe được cograven trongtrường hợp caacutec cuộc gọi từ caacutec maacutey nội bộ ra caacutec maacutey internet thigrave nghe tốt
Vấn đề NAT trecircn được giải quyết trong Asterisk bằng việc khai baacuteo thocircng số NAT=yes trong cấu higravenh kecircnh giao thức SIP
4 IAX ndash Inter Asterisk eXchange
IAX lagrave giao thức baacuteo hiệu Voip được phaacutet triển bởi taacutec giả của phần mềmAsterisk để khắc phục những hạn chế trong giao thức SIP Khocircng giống như giathức SIP chuyển tải thoại vagrave baacuteo hiệu trecircn hai kecircnh khaacutec nhau (out of band) IAXchuyển tải thoại vagrave baacuteo hiệu trecircn cugraveng một kecircnh(in band) IAX giải quyết được vấđề NAT đề cập trecircn phần giao thức SIP Mặc khaacutec IAX lagrave giao thức tối ưu trongviệc sử dụng băng thocircng cho pheacutep nhiều goacutei dữ liệu thoại trecircn cugraveng một IP headecơ chế chuyển tải nhiều cuộc gọi trecircn cugraveng một goacutei IP được gọi lagrave trung kế(Trunk)
Coacute thể giải thiacutech thecircm cơ chế trung kế như sau Giả sử Tocirci cần gửi 5 bức thtới người bạn của Tocirci Tocirci sẽ coacute hai higravenh thức để thực hiện thứ nhất lagrave mỗi bức tTocirci bỏ vagraveo một phong bigrave vậy tổng cộng tocirci phải sử dụng 5 phong bigrave để gửi đi 5 bứthư Caacutech thứ hai lagrave Tocirci bỏ 5 bức thư vagraveo 1 phong bigrave vagrave gửi đi vậy tổng cộng Tocircchỉ tốn 1 phong bigrave Qua phacircn tiacutech trecircn rotilde ragraveng việc 5 bức thư vagraveo một phong bigrave sẽtiết kiệm hơn so với 5 bức thư với 5 phong biacute Cơ chế trecircn cũng giống như nhiềcuộc gọi được đoacuteng thagravenh goacutei vagrave chuyển đi trecircn đường trung kế
Toacutem lại IAX lagrave giao thức dagravenh cho VoIP mới nhất cho đến thời điểm nagravey vớinhiều ưu điểm hấp dẫn như
+ Tối thiểu sử dụng băng thocircng
+ Trong suốt với NAT
+ Hiệu quả với cơ chế trung kế
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2972
Taacutec Giả Lecirc Quốc Toagraven
29
8 Thiết Bị VoIP
1 Voip Phone
Đacircy lagrave thiết bị phần cứng kết nối với mạng VoIP giống như maacutey điện thoại đ bagraven thocircng thường nhưng dagravenh cho VoIP cần phải thực hiện cấu higravenh trước khi sửdụng
Lưu yacute một số tiacutenh năng khi thực hiện mua thiết bị điện thoại VoIP
+ Low bandwidth hỗ trợ Codec nagraveo G729 lagrave tốt nhất hiện nay
+ Web Interface Phải coacute giao tiếp thiết lập cấu higravenh thacircn thiện dễ sử dụng
+ Audio Interface Coacute speaker phone hay khocircng
Giaacute thagravenh của điện thoại voip IP đắc hơn điện thoại thocircng thường giaacute khoảntrecircn dưới 100$ một caacutei
Higravenh Maacutey Điện Thoại VoIP
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3072
Taacutec Giả Lecirc Quốc Toagraven
30
2 Softphone
Lagrave một phần mềm được cagravei trecircn maacutey tiacutenh thực hiện tất cả caacutec chức năng giốn
như thiết bị điện thoại Voip cần lưu yacute khi sử dụng softphone lagrave maacutey tiacutenh phải ccard acircm thanh headphone vagrave firewall khocircng bị khoacutea
Sử dụng softphone với hệ thống Asterisk necircn dugraveng softphone với cocircng nghệgiao thức mới dagravenh cho Asterisk đoacute lagrave IAX
Higravenh Điện Thoại Softphone
3 Card giao tiếp với PSTN
Muốn cho pheacutep caacutec maacutey điện thoại nội bộ trong hệ thống Asterisk kết nối vthực hiện cuộc gọi với mạng PSTN chuacuteng ta cần phải coacute thiết bị phần cứng tươthiacutech Thiết bị phần cứng sử dụng cho hệ thống Asterisk do chiacutenh taacutec giả lập cocircng
Digium phacircn phối đacircy cũng chiacutenh lagrave yacute tưởng lớn trong việc phacircn phối phần mềmAsterisk lagrave hệ thống nguồn mở sử dụng miễn phiacute
Thiết bị phần cứng thường kyacute hiệu bắt đầu bằng cụm từ TDMxyB trong đoacute lagrave số lượng port FXS y lagrave số lượng port FXO giaacute trị tối đa của x vagrave y lagrave 4 viacute dụcard TDM22B coacute nghĩa lagrave coacute 2 fort FXS vagrave 2 port FXO
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3172
Taacutec Giả Lecirc Quốc Toagraven
31
Higravenh Card TDM22B gồm 4 port 2 FXS vagrave 2 FXO
4 ATA Analog Telephone Adaptors
ATA lagrave thiết bị kết nối với điện thoại Analog thocircng thường đến mạng VoIPmột thiết bị ATA gồm coacute hai loại port RJ-11 để kết nối với maacutey điện thoại analo
thocircng thường cograven RJ-45 để kết nối với mạng VoIP
ATA thực sự lagrave thiết bị FXS chuyển đổi tiacuten hiệu Analog sang tiacuten hiệu số sửdụng cho mạng VoIP để tận dụng maacutey điện thoại Analog necircn trang bị thiết bị ATAthay vigrave phải trang bị điện thoại VoIP
Thiết bị ATA sử dụng với giao thức IAX được Digium phacircn phối lagrave thiết bịATA được sử dụng rộng ratildei với Asterisk coacute tecircn gọi lagrave IAXy
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3272
Taacutec Giả Lecirc Quốc Toagraven
32
Higravenh Thiết bị ATA
9 Codecs
Thuật Toaacuten codecs(CompressorDe-compressor) lagrave một tập caacutec quy luật đượcsử dụng để chuyển đổi caacutec tiacuten hiệu thoại dạng Analog sang tiacuten hiệu số vagrave ngược lạ
Coacute nhiều thuật toaacuten codec để thực hiện chuyển đổi tiacuten hiệu analog sang tiacuten
hiệu số dạng nhị phacircn (01) như G711 GSM G729hellipỨng với mỗi thuật toaacuten coacutenhững ưu điểm riecircng đặc biệt lagrave việc tối ưu sử dụng băng thocircng trecircn đường truyềMục tiecircu cuối cugraveng lagrave caacutec thuật toaacuten đưa ra phải đảm bảo chất lượng cuộc gọi nhvagrave tiết kiệm băng thocircng nhất
G729 lagrave thuật toaacuten codec tốt nhất hiện nay trong hệ thống VoIP Với hệthống Asterisk để sử dụng thuật toaacuten nagravey cần phải mua bản quyền sử dụng vigrave đacircy
codec khocircng miễn phiacute sử dụng
10 QoS ndash Quality of Service
Caacutec yếu tố ảnh hưởng đến chất lượng của dịch vụ đối với VoIP đoacute lagrave caacuteyếu ảnh hưởng đến chất lượng tiacuten hiệu thoại
1 Độ trễ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3372
Taacutec Giả Lecirc Quốc Toagraven
33
Thoại lagrave dịch vụ mang tiacutenh thời gian thực rất cao vigrave thế trễ lagrave yếu tố ảnhhưởng rất lớn đến chất lượng dịch vụ Trễ được định nghĩa lagrave khoảng thời gian tiacute
từ luacutec tiacuten hiệu thoại đi từ miệng người noacutei tới tai người nghe Trễ lagrave yếu tố khocircnthể traacutenh khỏi độ trễ đối với mạng điện thoại truyền thống (mạng PSTN) khoảng50ms đến 70ms theo khiến nghị của ITU-T để đảm bảo chất lượng cho hệ thốVoIP thigrave độ trễ từ đầu phaacutet tới đầu thu hoặc ngược lại khocircng được vượt quaacute 150mkhi magrave độ trễ vượt quaacute 400ms đến 500ms thigrave khocircng thể chấp nhận được
Caacutec nguyecircn nhacircn gacircy ra trễ bao gồm Trễ trecircn mạng lưới trễ trecircn bộ mả hoacutea
giải matilde trễ trong quaacute trigravenh đoacuteng goacutei trễ bộ đệm trễ xử lyacute tiếng noacuteihellip2 Độ trượt(Jitter)
Nguyecircn nhacircn gacircy ra trượt lagrave goacutei tiacuten hiệu thoại trong quaacute trigravenh truyền từnguồn đến điacutech sẽ gặp phải những điều kiện khaacutec nhau trecircn mạng lưới do đoacute thườđến điacutech với những khoảng trễ khaacutec nhau Đacircy lagrave tiacutenh khocircng đồng nhất của trễ Mnguyecircn nhacircn khaacutec của trượt đối với ứng dụng PC to PC lagrave do việc sử dụng hệ điề
hagravenh phi thời gian thực caacutec goacutei tin thoại phải đợi hệ điều hagravenh xử lyacute trong nhữnkhoảng thời gian khaacutec nhau khi magrave hệ điều hagravenh đang phải xử lyacute đối với caacutec ứndụng khaacutec
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3472
Taacutec Giả Lecirc Quốc Toagraven
34
Higravenh Nguyecircn nhacircn xảy ra trượt
Để loại bỏ tiacutenh khocircng đồng nhất của trễ người ta thiết kế caacutec bộ đệm t(Jitter Buffer) tại nơi đến của caacutec goacutei tin caacutec goacutei tin đến với caacutec khoảng caacutech khaacutecnhau về thời gian được lưu tại bộ đệm rồi phaacutet khỏi bộ đệm với khoảng trễ n
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3572
Taacutec Giả Lecirc Quốc Toagraven
35
nhau Khi bộ đếm coacute kiacutech thước cagraveng lớn thigrave khả năng loại bỏ tiacutenh khocircng đồng nhấcagraveng lớn tuy nhiecircn việc sử dụng bộ đệm sẽ gacircy ra hiện tượng trễ trong ứng dụnthoại do đoacute cần coacute bagravei toaacuten cacircn đối giữa độ trễ vagrave độ trượt
Ngoagravei 2 nguyecircn nhacircn trecircn cograven một số nguyecircn nhacircn nữa ảnh hưởng đến chấtlượng thoại như độ mất goacutei giới hạn băng thocircng tiếng vọng
3 CAgraveI ĐẶT ASTERISK
1 Cagravei đặt Asterisk
1 Download vagrave bung neacuten
Để cagravei đặt Asterisk đầu tiecircn chuacuteng ta cần phải cagravei đặt hệ điều hagravenh linux trecircnmaacutey tiacutenh của migravenh Coacute thể cagravei hệ điều hagravenh Linux Fedora CentOS Redhat hoặcDebian Caacutec goacutei phần mềm phụ thuộc phải coacute trong hệ điều hagravenh Linux trước khcagravei Asterisk bao gồm
bison
gcc
kernel-source
libtermcap-devel
ncurses-devel
openssl096b
openssl-devel
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3672
Taacutec Giả Lecirc Quốc Toagraven
36
Sau khi hoagraven tất caacutec bước trecircn chuacuteng ta tiến hagravenh download phần mềmasterisk với phiecircn bản mới nhất
cd usrsrc
wgetftpftpdigiumcompubasteriskasterisk-140targz
wgetftpftpdigiumcompubasteriskasterisk-addons-140targz
wgetftpftpdigiumcompubasteriskasterisk-sounds-140targz
wgethttpftpdigiumcompubzaptelzaptel-140targz
wgethttpftpdigiumcompublibprilibpri-140targz
Việc download coacute thể nhanh hay chậm tugravey vagraveo tốc độ trecircn đường internet saukhi download hoagraven thagravenh chuacuteng ta tiến hagravenh bung neacuten caacutec goacutei ra thư mục chỉ định
tar ndashxzvf asterisk-140targz
tar ndashxzvf asterisk-addons-140targz
tar ndashxzvf asterisk-sounds-140targz
tar ndashxzvf zaptel-140targz
tar ndashxzvf libpri-140targz
Giải neacuten xong chuacuteng ta nhớ thực hiện lệnh
ln ndashs usrsrcasterisk-140 usrsrcasterisk lệnh nagravey để bảo đảm goacuteildquoaddonsrdquo được biecircn dịch đuacuteng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3772
Taacutec Giả Lecirc Quốc Toagraven
37
Bacircy giờ tới phần chuacuteng ta biecircn dịch caacutec goacutei đatilde giải neacuten ở trecircn trước tiecircn lagrave goacuteizaptel kế đến lagrave libpri sau cugraveng lagrave goacutei Asterisk
2 Cagravei đặt goacutei Zaptel
Goacutei zaptel sẽ chứa tại thư mục usrsrczaptel Đaacutenh lệnh như dưới đacircy để cagraveđặt
cd usrsrczaptel
make clean make install
Lệnh nagravey thực hiện khoảng 2 phuacutet tugravey vagraveo tốc độ maacutey tiacutenh cagravei đặt sau khicagravei đặt xong sẽ trở lại dấu nhắc lệnh vagrave hiển thị một loạt caacutec thocircng baacuteo trong đoacute một số bản tin lỗi magrave chủ yếu lagrave yecircu cầu cagravei đặt caacutec goacutei phụ thuộc đatilde liệt kecirc ở trecircnếu caacutec goacutei trecircn chưa được cagravei đặt
Goacutei zaptel nagravey chứa caacutec driver cho caacutec phần cứng kết giao tiếp với asterisk
do Digium phacircn phối vagrave một số thư viện cho việc coacute thực hiện giao tiếp với phầcứng hay khocircng
Để Asterisk coacute thể chạy cugraveng với khởi động của maacutey tiacutenh chuacuteng ta cần thựchiện lệnh
make config
Lệnh nagravey sẽ tạo ra script chegraven module zaptel vagraveo kernel vagrave chạy ztconfig vagraveoluacutec khởi động maacutey Trong Redhat script nagravey sẽ được cheacutep vagraveo etcinitd chạy ở mức 3
3 Cagravei đặt goacutei libpri
Kế đến chuacuteng ta biecircn dịch goacutei libpri tại thư mục usrsrclibpri bằng lệnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3972
Taacutec Giả Lecirc Quốc Toagraven
39
make config
3 Cagravei đặt TrixBox
1 Giới thiệu
TRIXBOX được phaacutet triển từ nhacircn của ứng dụng Asterisk được tổng hợp từmột số thagravenh phần chiacutenh được phaacutet triển bởi cộng đồng phaacutet triển nguồn mAsterisk dưới bản quyền GPL Trixbox bao gồm những thagravenh phần chiacutenh cho việcấu higravenh ứng dụng thống kecirc tigravenh trạng hoạt động hệ thống lưu trữ dự phograveng v
nhacircn lagrave hệ điều hagravenh CentOS một phiecircn bản khaacutec của Redhat tất cả kết hợp vớnhau tạo thagravenh một goacutei hoagraven chỉnh Khi cagravei goacutei nagravey vagraveo maacutey tiacutenh thigrave coacute thể sử dụngnhư một tổng đagravei PBX
Caacutec thagravenh phần chiacutenh trong goacutei TRIXBOX lagrave
Asterisk PBX Thagravenh phần chiacutenh của hệ thống Trixbox
CentOS Một phiecircn bản Linux khaacutec của Redhat hoagraven toagraven miển phiacute sửdụng Lagrave nhacircn chiacutenh cho Trixbox
SugarCRM Hệ thống quan hệ khaacutech hagraveng CRM
A2Billing ndash Lagrave thagravenh phần dagravenh cho việc xacircy dựng hệ thống điện thoạitrả trước hay cograven gọi lagrave điện thọai thẻ (Calling Card)
Flash Operator Panel Bảng điều khiển giaacutem saacutet tigravenh trạng hoạt độngcủa caacutec maacutey điện thoại trong hệ thống
Web MeetMe Control Quản lyacute triển khai hệ thống điện thoại hội nghị
FreePBX Đacircy lagrave cocircng cụ với giao diện web dagravenh cho việc cấu higravenh hệthống Asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4072
Taacutec Giả Lecirc Quốc Toagraven
40
Hệ thống Lưu trữ dự phograveng vagrave thống kecirc Lagrave thagravenh phần của TRIXBOXcung cấp caacutec cocircng cụ cần thiết cho việc bảo trigrave bảo dưỡng hệ thống
Hệ thống Apache-Php-Mysql dagravenh cho giải phaacutep Webserver của hệthống
2 DOWNLOAD VAgrave LẮP ĐẶT TRIXBOX
Địa chỉ downloadhttpsourceforgenetprojectsasteriskathome
Khi download xong file Trixboxiso Hatildey dugraveng file nagravey Burn vagraveo CD ( xinlưu yacute lagrave dugraveng Nero hoặc chương trigravenh cheacutep đĩa ưa thiacutech rồi burn vagraveo cd_romchứ khocircng phải cheacutep file đoacute vagraveo cd_rom)
Sau khi coacute CD Hatildey boot từ CD nagravey để cagravei đặt trixbox
Chuacute yacute dữ liệu trecircn đĩa cứng sẽ bị xoacutea sạch để cagravei đặt trixbox Nếu trongđĩa cứng cograven dữ liệu hatildey backup tất cả trước khi tiến hagravenh lắp đặt trixbox
Tới đacircy lần lượt caacutec magraven higravenh chỉ dẫn sẽ hiện ra vagrave cứ theo hướng dẫn magrave cagraveđặt Sau khi cagravei đặt xong chuacuteng ta dugraveng Username root vagrave password password đểđăng nhập hệ thống
3 Cấu higravenh địa chỉ IP cho card mạng
Thiết lập địa chỉ IP bằng caacutech gotilde lệnh
netconfig
Chọn OK để thiếp lập
Nếu trong mạng coacute hỗ trợ DHCP thigrave hatildey chọn mục nagravey cograven nếu khocircng hatildeynhập địa chỉ IP tĩnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4172
Taacutec Giả Lecirc Quốc Toagraven
41
IP 19216801
Netmask 2552552550
Gateway 19216893254 ngotilde ra becircn ngoagravei
Primary nameserver 19216893200 thiết lập nếu coacute
Chọn OK để chấp nhận caacutec thiết lập trecircn
Sau khi hoagraven tất hatildey lagravem cho thiết lập coacute hiệu lực bằng caacutech reset lại
maacutey tiacutenh hoặc dugraveng lệnh sau
Service network stop
Service network start
Đến đacircy xem như cagravei đặt hoagraven tất bacircy giờ để cấu higravenh được Asterisk chuacutengta vagraveo một magravey khaacutec vagrave mở Internet Explorer hoặc một trigravenh duyệt web bất kỳ
nhập vagraveohttp19216801đatilde cấu higravenh ở trecircn vagrave tiến hagravenh cấu higravenh hệ thốngvới tagravei khoảng username maint vagrave password password
4 Tổ Chức Thư Mục của Asterisk
Asterisk sử dụng nhiều thư mục trecircn hệ thống linux để quản lyacute caacutec khiacutea cạnkhaacutec nhau của hệ thống như nghi nhận bản tin thoại caacutec bản tin nhắc thoại hoặcaacutec tập tin cấu higravenh Phần nagravey sẽ trigravenh bagravey caacutec thư mục chiacutenh yếu được tạo ra tronquaacute trigravenh lắp đặt vagrave được cấu higravenh trong tập tin Asteriskconf
1 etcasterisk
Thư mục etcasterisk chứa tất cả caacutec tập tin cấu higravenh của hệ thốngAsterisk ngoại trừ tập tin Zaptelconf được đặt tại thư mục etc Phần cứnZaptel đầu tiecircn được phaacutet triển bởi Jim Dixon thuộc nhoacutem Zapata Telephony
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4272
Taacutec Giả Lecirc Quốc Toagraven
42
Group để giao tiếp giữa maacutey tiacutenh với mạng điện thoại magrave Asterisk lại sửdụng phần cứng nagravey với lyacute do đoacute magrave file cấu higravenh zaptelconf khocircng nằmtrong thư mục etcasterisk
2 usrlibasteriskmodules
Thư mục usrlibasteriskmodules chứa tất cả caacutec module cần thiết đểasterisk hoạt động Becircn trong thư mục lagrave caacutec ứng dụng khaacutec nhau caacutec codeccaacutec định dạng acircm thanh(format) vagrave caacutec kecircnh thocircng tin(channel) Theo mặc địnhAsterisk sẽ nạp tất cả caacutec module vagraveo luacutec khởi động Chuacuteng ta coacute thể khocircng cho
nạp một module bất kỳ bằng caacutech khocircng khai baacuteo sử dụng trong tập tinmodulesconf Lưu yacute khi khocircng cho nạp module thigrave phải biết chắc module đoacutekhocircng lagravem ảnh hưởng hoạt động của asterisk nếu khocircng lỗi sẽ xuất hiện
3 varlibasterisk
Thư mục varlibasterisk chứa tập tin astdb vagrave một số thư mục con Tập tinastdb định vị thocircng tin cơ sở dữ liệu của Asterisk giống như Microsoft WindowsRegistry
Caacutec thư mục con của thư mục varlibasterisk bao gồm
agi-bin
Thư mục agi-bin chứa caacutec script của người dugraveng magrave Asterisk coacute thểđịnh vị sử dụng qua caacutec ứng dụng AGI
AGI lagrave phần giao tiếp với ngocircn ngữ lập trigravenh script để thực hiện mộtsố cocircng việc của Asterisk từ becircn ngoagravei
firmware
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4372
Taacutec Giả Lecirc Quốc Toagraven
43
Thư mục firmware chứa một số phần dẻo(firmware) cho caacutec thiết bịkhaacutec nhau tương thiacutech với Asterisk Hiện tại chỉ coacute thư mục con iax chứa
firmware cho thiếy bị IAXy của Digium IAXy lagrave thiết bị ATA sử dụng giaothức IAX
images
Caacutec ứng dụng thocircng tin với caacutec kecircnh hỗ trợ ảnh images thigrave sử dụng thư mụcnagravey Nhưng hiện tại caacutec kecircnh thocircng tin hầu như khocircng hỗ trợ truyền ảnh images necircthư mục nagravey cũng hiếm khi được sử dụng Tuy nhiecircn nếu caacutec thiết bị coacute hỗ trợ ththư mục nagravey trở necircn hiệu dụng
keys
Asterisk coacute thể sử dụng hệ thống khoaacute publicprivate để xaacutec minh caacutec kết nốgiữa caacutec server Asterisk thocircng qua chữ kyacute điện tử RSA Nếu đặt một khoaacute publicvagraveo thư mục keys thigrave kết nối của server đầu becircn kia coacute thể được xaacutec minh bằn
kecircnh thocircng tin coacute hỗ trợ đối với Asterisk thigrave kecircnh giao thức IAX hỗ trợ loại xaacutecminh nagravey Một khoaacute private khocircng bao giờ cocircng bố chuacuteng ta chỉ cocircng bố khoaacute public đến với server cần nối đến sau đoacute sẽ được xaacutec minh với khoaacute private nagravey Chai khoaacute public vagrave private được lưu với đuocirci pub vagrave key đặt tại thư mục keys
mohmp3
Khi cấu higravenh Asterisk sử dụng tiacutenh năng Music on Hold tiacutenh năng hoạt độngsẽ thực hiện lấy caacutec tập tin mp3 tại thư mục mohmp3 Tập tin định dạng theo chucủa Asterisk necircn khi sử dụng caacutec file Mp3 thocircng thường cần coacute sự chuyển đổi thiacutechợp trước khi cheacutep vagraveo thư mục trecircn để sử dụng
sounds
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4472
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4572
Taacutec Giả Lecirc Quốc Toagraven
45
Thư mục tmp sử dụng để lưu trữ những thocircng tin tạm để luocircn bảo đảm khocircnxảy ra tigravenh trạng đọc vagrave viết tập tin cugraveng một luacutec Khi yecircu cầu xử lyacute tập tin chuacuteng thao taacutec trecircn thư mục tmp trước khi lưu vagraveo tập tin điacutech
Tất cả caacutec lời nhắc thoại từ phiacutea người sử dụng vagrave caacutec lời nhắc thoại sử dụ
cho thao taacutec hộp voicemail đều được chứa trong thư mục voicemail Một hộp thưthoại được tạo ra ứng với một maacutey nội bộ trong tập tin voicemailconf sẽ được tra một thư mục con tương ứng cho maacutey nội bộ đoacute tại thư mục voicemail
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4672
Taacutec Giả Lecirc Quốc Toagraven
46
5 varrun
Thư mục varrun chứa thocircng tin process ID(pid) cho tất cả caacutec tiến trigravenh đang
hoạt động trong hệ thống bao gồm cả Asterisk Lưu yacute lagrave ứng với mỗi hệ điều hagravethư mục varrun coacute thể khaacutec
6 varlogasterisk
Thư mục varlogasterisk lagrave nơi Asterisk chứa tất cả caacutec tập tin nhật kyacute haycograven gọi lagrave tập tin log Chuacuteng ta coacute thể tuỳ biến caacutec loại thocircng tin được lưu trong caacutec
tập tin log khaacutec nhau qua tập tin cấu higravenh loggerconf đặt tại thư mục etcasterisk7 varlogasteriskcdr-csv
Thư mục varlogasteriskcdr-csv được sử dụng để lưu chi tiết cuộc gọi CDRThocircng tin mặc định về chi tiết thocircng tin cuộc gọi lưu trữ trong tập tin MasterCVSnhưng thường thigrave ứng với mỗi matilde accountcode sẽ tạo một thư mục riecircng để lưu ctiết cuộc gọi cho maacutey đoacute
5 Một số lệnh thao taacutec trecircn hệ thống asterisk
Asterisk coacute hai thagravenh phần được xacircy dụng tiacutech hợp với nhau vagrave chạy songsong nhau
Asterisk Server bigravenh thường chạy ở chế độ nền(background) giống caacutec sevicestrong window
Asterisk Client ở chế độ dograveng lệnh CLI giao tiếp với Asterisk Server thực thicaacutec lệnh để kiểm tra hay xem caacutec thocircng tin của server
Để Chạy vagrave dừng Asterisk ở chế độ nền chuacuteng ta thực hiện lệnh sau
etcinitdasterisk (start|stop)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4772
Taacutec Giả Lecirc Quốc Toagraven
47
Một khi Asterisk đatilde chạy chuacuteng ta coacute thể chuyển qua chế độ CLI từ dấu nhắlệnh của linux như sau
asterisk ndashr
Khi vagraveo chế độ lệnh nếu muốn thoaacutet về lại dấu nhắc linux chuacuteng ta dugraveng lệnh
CLIgtexit
Caacutec lệnh cơ bản thực hiện tại CLIgt
Bất cứ khi nagraveo chỉnh sửa caacutec tập tin cấu higravenh chuacuteng ta đều cần phải nạp lại đcaacutec thay đổi coacute hiệu lực điều đoacute thực hiện bằng lệnh
CLIgtreload
Bậc chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 debug
CLIgt SIP debug
Tắt chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 no debug
CLIgt SIP no debug
Hiển thị caacutec trạng thaacutei thocircng tin của users peers vagravechannels của SIP hoặc IAX2
CLIgt sip show users
CLIgt sip show peers
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4872
Taacutec Giả Lecirc Quốc Toagraven
48
CLIgt sip show channels
CLIgt iax2 show peers
CLIgt iax2 show users
CLIgt iax2 show channels
Đến thời điểm nagravey coacute thể noacutei chuacuteng ta đatilde hoagraven thagravenh cagravei đặt hệ thốngAsterisk cagravei đặt xong mới lagrave bước mở đầu để cho hệ thống Asterisk hoạt động vtừng ứng dụng cụ thể chuacuteng sẽ tiếp tục thực hiện caacutec giai đoạn được xem lagrave qutrọng nhất trong việc triển khai hệ thống Asterisk đoacute lagrave giai đoạn cấu higravenh hệ thốnlecircn kế hoạch Diaplan chương cograven lại đều nhắm đến mục tiecircu nagravey
4 CẤU HIgraveNH HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Sau khi hoagraven tất phần cagravei đặt hệ thống asterisk một bước quan trọng tiếp thelagrave cấu higravenh hệ thống coacute thể noacutei đacircy lagrave bước quan trọng nhất của việc khiển khai thống đến với từng ứng dụng cụ thể Trong chương nagravey xin giới thiệu caacutei nhigraven đầtiecircn về việc cấu higravenh trước khi đi sacircu hơn ở những chương sau những gigrave giới thiệ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4972
Taacutec Giả Lecirc Quốc Toagraven
49
trong chương nagravey lagrave nền moacuteng cơ bản nhưng đủ để hiểu lagravem thế nagraveo hệ thống coacute thoạt động được nội dung chiacutenh bao gồm
+ Thao taacutec cấu higravenh trecircn hệ thống tập tin của asterisk
+ Caacutech cagravei đặt phần mềm softphone trecircn cocircng nghệ sip
+ Cấu higravenh cho hai maacutey softphone liecircn lạc với nhau
+ Cấu higravenh phaacutet thocircng điệp
+ Quay số qua Sip vagrave mạng PSTN
2 Tập Tin cấu higravenh
Tất cả caacutec file cấu higravenh cho hệ thống asterisk đều nằm tại thư mục etcasterisngoại trừ file zaptelconf cấu higravenh cho phần cứng TDM nằm tại thư mục etc caacutecthức cấu higravenh giống như tập tin ini của window vậy Caacutec nội dung sau dấu chấm phảy lagrave nội dung chuacute thiacutech trong file cấu higravenh giống như chuacute thiacutech trong ngocircn ngữ
lập trigravenh C lagrave dấu Tất cả caacutec khoảng trắng trong tập tin đều được bỏ qua khocircng yacute nghĩa trong file cấu higravenh
Trong file cấu higravenh cograven coacute hai pheacutep gaacuten rất thường xuyecircn được sử dụng pheacutep gaacuten ldquo=rdquo lagrave dugraveng cho việc gaacuten caacutec biến cograven pheacutep gaacuten ldquo=gtrdquo dugraveng cho việc gaacutencaacutec đối tượng sau đacircy lagrave một viacute dụ cho file cấu higravenh
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5072
Taacutec Giả Lecirc Quốc Toagraven
50
Đacircy lagrave caacutec dograveng chuacute thiacutech
[section]
Key=value gaacuten giaacute trị cho biến
[section2]
Key=gtobject Gaacuten giaacute trị cho đối tượng
Cuacute phaacutep thực hiện giống nhau cho tất cả caacutec file cấu higravenh nhưng coacute vagravei kiểukhaacutec nhau cho mỗi file cầu higravenh dựa vagraveo thức caacutech hoạt động của chuacuteng
3 Caacutec kiểu ảnh hưởng trong tập cấu higravenh
Coacute ba kiểu caacutech thức hoạt động của tập tin cấu higravenh như sau
Kiểu Caacutech hoạt động File cầu higravenh Viacute dụ
S i m p l eGroup
Coacute hiệu lực trecircntừng dograveng trongfile
Extensionconf
Exten=gt4001dial(sip400)
O p t i o ninheritance
Dograveng khai baacuteosau thừa kếnhững thocircng sốkhai baacuteo trước
Zapataconf [channels]
Context=From_PSTN
Signalling=fxs_ks
Group=1Channel=gt1
C o m p l e xEntity
Mỗi entity nhậnmột ngữ cảnh
sipconf
iaxconf
[cisco]
Type=friend
Secret=12345
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5172
Taacutec Giả Lecirc Quốc Toagraven
51
Host=192168165
Context=NoiBo
[xten]
Type=friend
Secret=6789
Host=dynamic
Context=NoiBo
1 Simple Group
Đacircy lagrave kiểu cấu higravenh đơn giản nhất thường sử dụng trong caacutec fileextentionconf meetmeconf voicemailconf tương ứng với mỗi dograveng khai baacuteo lagravemột đối tượng coacute yacute nghĩa trecircn dograveng đoacute
Viacute dụ
Extentionconf [section]
object1=gt op1op2op3
object2=gt op1bop2bop3b
Trong viacute dụ trecircn mỗi dograveng tương ứng với caacutec toaacuten tử khaacutec nhau object1 coacute caacutectoaacuten từ op1 op2 op3 trong khi đoacute object2 lại coacute caacutec toaacuten từ op1b op2b op3b
2 Option inheritance
Đacircy lagrave cấu higravenh kiểu thừa kế thường được cấu higravenh trong caacutec file zapataconfagentconf với kiểu cấu higravenh nagravey thigrave caacutec dograveng phiacutea dưới coacute thể thừa kế caacutec thocircng sdograveng phiacutea trecircn tương ứng với mỗi section caacutec dograveng phiacutea dưới coacute thể thay đổi caacutecthocircng số cho tươngứng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5272
Taacutec Giả Lecirc Quốc Toagraven
52
Viacute dụ
Extentionconf
[section]
Op1=bas
Op2=adv
Object1=gt1
Op1=int
Object1=gt2
Với cấu higravenh trecircn coacute thể giải thiacutech như sau object1=gt1 thừa hưởng hai thocircngsố ở phiacutea trecircn đoacute lagrave op1=bas vagrave op2=adv trong khi đoacute đối với object1=gt2 với thocircngsố op1=int được khai baacuteo lại necircn object1=gt2 được thừa kế từ hai thocircng số op1=invagrave op2=adv
3 Complex Entity
Với cấu kiểu nagravey được tổ chức thagravenh nhiều entity ứng với mỗi entity coacute nhiềthocircng số được khai baacuteo mỗi entity ở đacircy chiacutenh lagrave caacutec section để khai baacuteo caacutec kecircnhthocircng tin Cấu higravenh thường được sử dụng trong caacutec file iaxconf sipconf
Viacute dụ
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5372
Taacutec Giả Lecirc Quốc Toagraven
53
[entity1]
Op1=value1
Op2=value2
[entity2]
Op1=value3
Op2=value4
Entity1 coacute caacutec giaacute trị value1 vagrave value2 cho thocircng số op1 vagrave op2 trong khi đoacute
cũng lagrave thocircng số op1 vagrave op 2 nhưng coacute caacutec giaacute trị khaacutec lagrave value3 vagrave value4 choentity2
4 Cấu higravenh giao tiếp với mạng PSTN
1 Ngữ cảnh kết nối
Để kết nối với mạng PSTN chuacuteng ta cần phải coacute một card TDM với Cổng
FXO vagrave một đường dacircy điện thoại hoặc coacute thể lagrave một tổng đagravei nội bộ PBX Cnhiều nhagrave sản xuất phần cứng khaacutec nhau nhưng trong phần cấu higravenh dưới dacircy lagrave cấhigravenh cho card zapata TDM01B của digium (card nagravey hiện nay giaacute baacuten khoảng175$)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2472
Taacutec Giả Lecirc Quốc Toagraven
24
Analog trong suốt thời gian đagravem thoại vagrave cung cấp 90VAC(20hz) để phaacutet điện aacuteprung chuocircng Thiết bị FXS phaacutet cograven thiết bị FXO nhận
Card TDM sử dụng trong hệ thống asterisk thường tiacutech hợp vừa thiết bị FXOvừa lagrave thiết bị FXS(Giống bộ ATA) FXO để kết nối với đường dacircy điện thoại cograveFXS dugraveng để kết nối với maacutey điện thoại analog thocircng thường dugraveng để chuyển mạcuộc gọi TDM qua hệ thống asterisk(Xem thecircm trong phần cấu higravenh cho kecircnhTDM)
Toacutem lại cần nắm
FXS được kết nối với FXO giống với đường dacircy điện thoại nối với maacuteyđiện thoại
FXS cung cấp nguồn cho điện thoại FXO(điện thoại Analog)
Higravenh a) Maacutey điện thoại vai trograve FXO kết nối với FXS(PSTN) Higravenh b) PBXkết nối với FXO vagrave FXS Higravenh c) ATA đoacuteng vai trograve như FXS để kết nối với maacuteyđiện thoại vai trograve FXO
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2572
Taacutec Giả Lecirc Quốc Toagraven
25
2 Baacuteo hiệu Analog giữa đầu cuối vagrave tổng đagravei
Khi chuacuteng ta nhấc mấy điện thoại để gọi thigrave nghe tiacuten hiệu mời quay số kh
cuộc gọi gọi đầu becircn kia bị bận thigrave chuacuteng ta nghe tiacuten hiệu bận(busy tone) caacutec loạtiacuten hiệu như vậy gọi lagrave caacutec tiacuten hiệu baacuteo hiệu analog Caacutec tiacuten hiệu như Mời quay sốtiacuten hiệu bận rung chuocircng trạng thaacutei nhấc gaacutec maacutey Caacutec loại tiacuten hiệu trecircn được trađổi giữa thiết bị FXO vagrave FXS
Coacute nhiều phương thức baacuteo hiệu khaacutec nhau ứng với từng nơi sử dụng vigrave thếtại nơi kết nối với đường dacircy điện thoại cần xem xeacutet họ đang sử dụng phương th
baacuteo hiệu gigrave từ đoacute chuacuteng ta khai thaacutec loại tiacuten hiệu baacuteo hiệu cho thiacutech hợp caacutec phương thức baacuteo hiệu như Loop Start Ground Start Một minh họa cho việc sửdụng sai phương thức baacuteo hiệu lagrave khi chuacuteng ta khai baacuteo phương thức baacuteo hiệu giữhệ thống Asterisk vagrave đường dacircy điện thoại khaacutec nhau thigrave dẫn đến Asterisk sẽ khocircnnhận biết được tiacuten hiệu gaacutec maacutey điều nagravey sẽ lagravem cho asterisk khocircng baacuteo giờ giải tỏđược cuộc gọi để thực hiện cuộc gọi mới
3 Baacuteo hiệu giữa caacutec tổng đagravei
SS7 hệ thống baacuteo hiệu số 7 được phaacutet triển bởi ATampT vagrave ITU lagrave hệ thống baacuteo hiệu chuyển caacutec cuộc gọi giữa caacutec tổng đagravei trong mạng PSTN Trong hệ thốn baacuteo hiệu số 7 tiacuten hiệu chuyển tải trecircn đường trung kế kết nối giữa hai tổng đagravei gồcoacute hai mạch riecircng một cho thoại vagrave một cho baacuteo hiệu như vậy thoại vagrave baacuteo hiệu cthể chuyển trecircn hai kecircnh vật lyacute khaacutec nhau
7 Baacuteo Hiệu trecircn mạng điện thoại VoIP
1 SIP Session Initiation Prorocol
Sip lagrave giao thức Internet dagravenh cho baacuteo hiệu VoIP được phaacutet triển bởi IETFcung cấp vagravei chức năng giống hệ thống baacuteo hiệu số 7 nhưng dựa trecircn nền IP Mộchức năng giống baacuteo hiệu số 7 đoacute lagrave baacuteo hiệu vagrave thoại chuyển tải trecircn hai kecircnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2672
Taacutec Giả Lecirc Quốc Toagraven
26
riecircng Giao thức SIP thực hiện chức năng thiết lập vagrave baacuteo hiệu cuộc gọi khi noacutei đế baacuteo hiệu cuộc gọi lagrave chỉ định caacutec tiacuten hiệu baacuteo hiệu như tiacuten hiệu mời quay số tiacutehiệu bậnhellip
2 Proxy server
Mặc dầu hai thiết bị SIP coacute thể liecircn lạc trực tiếp với nhau để khởi tạo cuộgọi nhưng trong giao thức SIP cograven coacute chức năng Proxy để linh hoạt hơn trong thiếlập cuộc gọi Proxy Server sẽ lagravem nhiệm vụ ghi nhận tất cả caacutec số điện thoại đư phiacutea client đăng kyacute đến qua bản tin ldquoRegistrationrdquo Khi một client khaacutec thực hiện
cuộc gọi thigrave thực sự Client đoacute khocircng biết số điện thoại cần gọi đang ở đacircu necircn thocircnqua Proxy server để tigravem kiếm thiết lập cuộc gọi
+
Higravenh Đăng kyacute từ Client đến SIP Proxy Với Giao thức SIP đường baacuteo hiệu vagravethoại riecircng
3 RTP vaacute NAT
Caacutec cuộc gọi trecircn Internet với giao thức SIP được chia thagravenh caacutec goacutei thoại vagraveđược chuyển qua giao thức RTP(Real Time Protocol) RTP lagrave giao thức khocircng chỉthực hiện chuyển caacutec goacutei thoại qua Internet magrave cograven coacute cả video nữa Một cuộc gọ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2772
Taacutec Giả Lecirc Quốc Toagraven
27
thocircng thường coacute hai hướng thocircng tin lagrave nhận vagrave phaacutet RTP lagravem việc chuyển caacutec goacutedữ liệu thoại cũng trecircn hai hướng
NAT Network Address Translators lagrave một trở ngại lớn trong giao thức RTPMạng sử dụng NAT lagrave một mạng chia sẻ nhiều địa chỉ IP nội bộ với một địa chỉ ICocircng cộng để kết nối với thế giới becircn ngoagravei NAT dugraveng để chia sẻ nhiều maacutey tiacutentrong mạng LAN nội bộ sử dụng được Internet nhưng cũng chiacutenh vigrave thế magrave caacutec maacutetiacutenh nội bộ gặp khoacute khăn trong việc thực hiện cuộc gọi VoIP qua Internet Đoacute chiacutenhlagrave vấn để trở ngại khi truyền thoại qua giao thức RTP
Higravenh Minh họa hoạt động của NAT
Trong Giao thức RTP như chuacuteng ta đatilde biết đoacute lagrave thoại được chuyển trecircn haiđường khaacutec nhau lagrave đường phaacutet vagrave đường thu Vấn đề NAT nằm ở chỗ tiacuten hiệthoại từ becircn ngoagravei vagraveo becircn trong qua giao thức RTP khocircng thực hiện được cograven chiềungược lại thigrave thực hiện tốt Hay noacutei caacutech khaacutec vấn đề NAT lagravem cho caacutec cuộc gọi t
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2872
Taacutec Giả Lecirc Quốc Toagraven
28
Internet đagravem thoại vagraveo caacutec maacutey nội bộ qua NAT thigrave khocircng nghe được cograven trongtrường hợp caacutec cuộc gọi từ caacutec maacutey nội bộ ra caacutec maacutey internet thigrave nghe tốt
Vấn đề NAT trecircn được giải quyết trong Asterisk bằng việc khai baacuteo thocircng số NAT=yes trong cấu higravenh kecircnh giao thức SIP
4 IAX ndash Inter Asterisk eXchange
IAX lagrave giao thức baacuteo hiệu Voip được phaacutet triển bởi taacutec giả của phần mềmAsterisk để khắc phục những hạn chế trong giao thức SIP Khocircng giống như giathức SIP chuyển tải thoại vagrave baacuteo hiệu trecircn hai kecircnh khaacutec nhau (out of band) IAXchuyển tải thoại vagrave baacuteo hiệu trecircn cugraveng một kecircnh(in band) IAX giải quyết được vấđề NAT đề cập trecircn phần giao thức SIP Mặc khaacutec IAX lagrave giao thức tối ưu trongviệc sử dụng băng thocircng cho pheacutep nhiều goacutei dữ liệu thoại trecircn cugraveng một IP headecơ chế chuyển tải nhiều cuộc gọi trecircn cugraveng một goacutei IP được gọi lagrave trung kế(Trunk)
Coacute thể giải thiacutech thecircm cơ chế trung kế như sau Giả sử Tocirci cần gửi 5 bức thtới người bạn của Tocirci Tocirci sẽ coacute hai higravenh thức để thực hiện thứ nhất lagrave mỗi bức tTocirci bỏ vagraveo một phong bigrave vậy tổng cộng tocirci phải sử dụng 5 phong bigrave để gửi đi 5 bứthư Caacutech thứ hai lagrave Tocirci bỏ 5 bức thư vagraveo 1 phong bigrave vagrave gửi đi vậy tổng cộng Tocircchỉ tốn 1 phong bigrave Qua phacircn tiacutech trecircn rotilde ragraveng việc 5 bức thư vagraveo một phong bigrave sẽtiết kiệm hơn so với 5 bức thư với 5 phong biacute Cơ chế trecircn cũng giống như nhiềcuộc gọi được đoacuteng thagravenh goacutei vagrave chuyển đi trecircn đường trung kế
Toacutem lại IAX lagrave giao thức dagravenh cho VoIP mới nhất cho đến thời điểm nagravey vớinhiều ưu điểm hấp dẫn như
+ Tối thiểu sử dụng băng thocircng
+ Trong suốt với NAT
+ Hiệu quả với cơ chế trung kế
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2972
Taacutec Giả Lecirc Quốc Toagraven
29
8 Thiết Bị VoIP
1 Voip Phone
Đacircy lagrave thiết bị phần cứng kết nối với mạng VoIP giống như maacutey điện thoại đ bagraven thocircng thường nhưng dagravenh cho VoIP cần phải thực hiện cấu higravenh trước khi sửdụng
Lưu yacute một số tiacutenh năng khi thực hiện mua thiết bị điện thoại VoIP
+ Low bandwidth hỗ trợ Codec nagraveo G729 lagrave tốt nhất hiện nay
+ Web Interface Phải coacute giao tiếp thiết lập cấu higravenh thacircn thiện dễ sử dụng
+ Audio Interface Coacute speaker phone hay khocircng
Giaacute thagravenh của điện thoại voip IP đắc hơn điện thoại thocircng thường giaacute khoảntrecircn dưới 100$ một caacutei
Higravenh Maacutey Điện Thoại VoIP
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3072
Taacutec Giả Lecirc Quốc Toagraven
30
2 Softphone
Lagrave một phần mềm được cagravei trecircn maacutey tiacutenh thực hiện tất cả caacutec chức năng giốn
như thiết bị điện thoại Voip cần lưu yacute khi sử dụng softphone lagrave maacutey tiacutenh phải ccard acircm thanh headphone vagrave firewall khocircng bị khoacutea
Sử dụng softphone với hệ thống Asterisk necircn dugraveng softphone với cocircng nghệgiao thức mới dagravenh cho Asterisk đoacute lagrave IAX
Higravenh Điện Thoại Softphone
3 Card giao tiếp với PSTN
Muốn cho pheacutep caacutec maacutey điện thoại nội bộ trong hệ thống Asterisk kết nối vthực hiện cuộc gọi với mạng PSTN chuacuteng ta cần phải coacute thiết bị phần cứng tươthiacutech Thiết bị phần cứng sử dụng cho hệ thống Asterisk do chiacutenh taacutec giả lập cocircng
Digium phacircn phối đacircy cũng chiacutenh lagrave yacute tưởng lớn trong việc phacircn phối phần mềmAsterisk lagrave hệ thống nguồn mở sử dụng miễn phiacute
Thiết bị phần cứng thường kyacute hiệu bắt đầu bằng cụm từ TDMxyB trong đoacute lagrave số lượng port FXS y lagrave số lượng port FXO giaacute trị tối đa của x vagrave y lagrave 4 viacute dụcard TDM22B coacute nghĩa lagrave coacute 2 fort FXS vagrave 2 port FXO
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3172
Taacutec Giả Lecirc Quốc Toagraven
31
Higravenh Card TDM22B gồm 4 port 2 FXS vagrave 2 FXO
4 ATA Analog Telephone Adaptors
ATA lagrave thiết bị kết nối với điện thoại Analog thocircng thường đến mạng VoIPmột thiết bị ATA gồm coacute hai loại port RJ-11 để kết nối với maacutey điện thoại analo
thocircng thường cograven RJ-45 để kết nối với mạng VoIP
ATA thực sự lagrave thiết bị FXS chuyển đổi tiacuten hiệu Analog sang tiacuten hiệu số sửdụng cho mạng VoIP để tận dụng maacutey điện thoại Analog necircn trang bị thiết bị ATAthay vigrave phải trang bị điện thoại VoIP
Thiết bị ATA sử dụng với giao thức IAX được Digium phacircn phối lagrave thiết bịATA được sử dụng rộng ratildei với Asterisk coacute tecircn gọi lagrave IAXy
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3272
Taacutec Giả Lecirc Quốc Toagraven
32
Higravenh Thiết bị ATA
9 Codecs
Thuật Toaacuten codecs(CompressorDe-compressor) lagrave một tập caacutec quy luật đượcsử dụng để chuyển đổi caacutec tiacuten hiệu thoại dạng Analog sang tiacuten hiệu số vagrave ngược lạ
Coacute nhiều thuật toaacuten codec để thực hiện chuyển đổi tiacuten hiệu analog sang tiacuten
hiệu số dạng nhị phacircn (01) như G711 GSM G729hellipỨng với mỗi thuật toaacuten coacutenhững ưu điểm riecircng đặc biệt lagrave việc tối ưu sử dụng băng thocircng trecircn đường truyềMục tiecircu cuối cugraveng lagrave caacutec thuật toaacuten đưa ra phải đảm bảo chất lượng cuộc gọi nhvagrave tiết kiệm băng thocircng nhất
G729 lagrave thuật toaacuten codec tốt nhất hiện nay trong hệ thống VoIP Với hệthống Asterisk để sử dụng thuật toaacuten nagravey cần phải mua bản quyền sử dụng vigrave đacircy
codec khocircng miễn phiacute sử dụng
10 QoS ndash Quality of Service
Caacutec yếu tố ảnh hưởng đến chất lượng của dịch vụ đối với VoIP đoacute lagrave caacuteyếu ảnh hưởng đến chất lượng tiacuten hiệu thoại
1 Độ trễ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3372
Taacutec Giả Lecirc Quốc Toagraven
33
Thoại lagrave dịch vụ mang tiacutenh thời gian thực rất cao vigrave thế trễ lagrave yếu tố ảnhhưởng rất lớn đến chất lượng dịch vụ Trễ được định nghĩa lagrave khoảng thời gian tiacute
từ luacutec tiacuten hiệu thoại đi từ miệng người noacutei tới tai người nghe Trễ lagrave yếu tố khocircnthể traacutenh khỏi độ trễ đối với mạng điện thoại truyền thống (mạng PSTN) khoảng50ms đến 70ms theo khiến nghị của ITU-T để đảm bảo chất lượng cho hệ thốVoIP thigrave độ trễ từ đầu phaacutet tới đầu thu hoặc ngược lại khocircng được vượt quaacute 150mkhi magrave độ trễ vượt quaacute 400ms đến 500ms thigrave khocircng thể chấp nhận được
Caacutec nguyecircn nhacircn gacircy ra trễ bao gồm Trễ trecircn mạng lưới trễ trecircn bộ mả hoacutea
giải matilde trễ trong quaacute trigravenh đoacuteng goacutei trễ bộ đệm trễ xử lyacute tiếng noacuteihellip2 Độ trượt(Jitter)
Nguyecircn nhacircn gacircy ra trượt lagrave goacutei tiacuten hiệu thoại trong quaacute trigravenh truyền từnguồn đến điacutech sẽ gặp phải những điều kiện khaacutec nhau trecircn mạng lưới do đoacute thườđến điacutech với những khoảng trễ khaacutec nhau Đacircy lagrave tiacutenh khocircng đồng nhất của trễ Mnguyecircn nhacircn khaacutec của trượt đối với ứng dụng PC to PC lagrave do việc sử dụng hệ điề
hagravenh phi thời gian thực caacutec goacutei tin thoại phải đợi hệ điều hagravenh xử lyacute trong nhữnkhoảng thời gian khaacutec nhau khi magrave hệ điều hagravenh đang phải xử lyacute đối với caacutec ứndụng khaacutec
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3472
Taacutec Giả Lecirc Quốc Toagraven
34
Higravenh Nguyecircn nhacircn xảy ra trượt
Để loại bỏ tiacutenh khocircng đồng nhất của trễ người ta thiết kế caacutec bộ đệm t(Jitter Buffer) tại nơi đến của caacutec goacutei tin caacutec goacutei tin đến với caacutec khoảng caacutech khaacutecnhau về thời gian được lưu tại bộ đệm rồi phaacutet khỏi bộ đệm với khoảng trễ n
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3572
Taacutec Giả Lecirc Quốc Toagraven
35
nhau Khi bộ đếm coacute kiacutech thước cagraveng lớn thigrave khả năng loại bỏ tiacutenh khocircng đồng nhấcagraveng lớn tuy nhiecircn việc sử dụng bộ đệm sẽ gacircy ra hiện tượng trễ trong ứng dụnthoại do đoacute cần coacute bagravei toaacuten cacircn đối giữa độ trễ vagrave độ trượt
Ngoagravei 2 nguyecircn nhacircn trecircn cograven một số nguyecircn nhacircn nữa ảnh hưởng đến chấtlượng thoại như độ mất goacutei giới hạn băng thocircng tiếng vọng
3 CAgraveI ĐẶT ASTERISK
1 Cagravei đặt Asterisk
1 Download vagrave bung neacuten
Để cagravei đặt Asterisk đầu tiecircn chuacuteng ta cần phải cagravei đặt hệ điều hagravenh linux trecircnmaacutey tiacutenh của migravenh Coacute thể cagravei hệ điều hagravenh Linux Fedora CentOS Redhat hoặcDebian Caacutec goacutei phần mềm phụ thuộc phải coacute trong hệ điều hagravenh Linux trước khcagravei Asterisk bao gồm
bison
gcc
kernel-source
libtermcap-devel
ncurses-devel
openssl096b
openssl-devel
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3672
Taacutec Giả Lecirc Quốc Toagraven
36
Sau khi hoagraven tất caacutec bước trecircn chuacuteng ta tiến hagravenh download phần mềmasterisk với phiecircn bản mới nhất
cd usrsrc
wgetftpftpdigiumcompubasteriskasterisk-140targz
wgetftpftpdigiumcompubasteriskasterisk-addons-140targz
wgetftpftpdigiumcompubasteriskasterisk-sounds-140targz
wgethttpftpdigiumcompubzaptelzaptel-140targz
wgethttpftpdigiumcompublibprilibpri-140targz
Việc download coacute thể nhanh hay chậm tugravey vagraveo tốc độ trecircn đường internet saukhi download hoagraven thagravenh chuacuteng ta tiến hagravenh bung neacuten caacutec goacutei ra thư mục chỉ định
tar ndashxzvf asterisk-140targz
tar ndashxzvf asterisk-addons-140targz
tar ndashxzvf asterisk-sounds-140targz
tar ndashxzvf zaptel-140targz
tar ndashxzvf libpri-140targz
Giải neacuten xong chuacuteng ta nhớ thực hiện lệnh
ln ndashs usrsrcasterisk-140 usrsrcasterisk lệnh nagravey để bảo đảm goacuteildquoaddonsrdquo được biecircn dịch đuacuteng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3772
Taacutec Giả Lecirc Quốc Toagraven
37
Bacircy giờ tới phần chuacuteng ta biecircn dịch caacutec goacutei đatilde giải neacuten ở trecircn trước tiecircn lagrave goacuteizaptel kế đến lagrave libpri sau cugraveng lagrave goacutei Asterisk
2 Cagravei đặt goacutei Zaptel
Goacutei zaptel sẽ chứa tại thư mục usrsrczaptel Đaacutenh lệnh như dưới đacircy để cagraveđặt
cd usrsrczaptel
make clean make install
Lệnh nagravey thực hiện khoảng 2 phuacutet tugravey vagraveo tốc độ maacutey tiacutenh cagravei đặt sau khicagravei đặt xong sẽ trở lại dấu nhắc lệnh vagrave hiển thị một loạt caacutec thocircng baacuteo trong đoacute một số bản tin lỗi magrave chủ yếu lagrave yecircu cầu cagravei đặt caacutec goacutei phụ thuộc đatilde liệt kecirc ở trecircnếu caacutec goacutei trecircn chưa được cagravei đặt
Goacutei zaptel nagravey chứa caacutec driver cho caacutec phần cứng kết giao tiếp với asterisk
do Digium phacircn phối vagrave một số thư viện cho việc coacute thực hiện giao tiếp với phầcứng hay khocircng
Để Asterisk coacute thể chạy cugraveng với khởi động của maacutey tiacutenh chuacuteng ta cần thựchiện lệnh
make config
Lệnh nagravey sẽ tạo ra script chegraven module zaptel vagraveo kernel vagrave chạy ztconfig vagraveoluacutec khởi động maacutey Trong Redhat script nagravey sẽ được cheacutep vagraveo etcinitd chạy ở mức 3
3 Cagravei đặt goacutei libpri
Kế đến chuacuteng ta biecircn dịch goacutei libpri tại thư mục usrsrclibpri bằng lệnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3972
Taacutec Giả Lecirc Quốc Toagraven
39
make config
3 Cagravei đặt TrixBox
1 Giới thiệu
TRIXBOX được phaacutet triển từ nhacircn của ứng dụng Asterisk được tổng hợp từmột số thagravenh phần chiacutenh được phaacutet triển bởi cộng đồng phaacutet triển nguồn mAsterisk dưới bản quyền GPL Trixbox bao gồm những thagravenh phần chiacutenh cho việcấu higravenh ứng dụng thống kecirc tigravenh trạng hoạt động hệ thống lưu trữ dự phograveng v
nhacircn lagrave hệ điều hagravenh CentOS một phiecircn bản khaacutec của Redhat tất cả kết hợp vớnhau tạo thagravenh một goacutei hoagraven chỉnh Khi cagravei goacutei nagravey vagraveo maacutey tiacutenh thigrave coacute thể sử dụngnhư một tổng đagravei PBX
Caacutec thagravenh phần chiacutenh trong goacutei TRIXBOX lagrave
Asterisk PBX Thagravenh phần chiacutenh của hệ thống Trixbox
CentOS Một phiecircn bản Linux khaacutec của Redhat hoagraven toagraven miển phiacute sửdụng Lagrave nhacircn chiacutenh cho Trixbox
SugarCRM Hệ thống quan hệ khaacutech hagraveng CRM
A2Billing ndash Lagrave thagravenh phần dagravenh cho việc xacircy dựng hệ thống điện thoạitrả trước hay cograven gọi lagrave điện thọai thẻ (Calling Card)
Flash Operator Panel Bảng điều khiển giaacutem saacutet tigravenh trạng hoạt độngcủa caacutec maacutey điện thoại trong hệ thống
Web MeetMe Control Quản lyacute triển khai hệ thống điện thoại hội nghị
FreePBX Đacircy lagrave cocircng cụ với giao diện web dagravenh cho việc cấu higravenh hệthống Asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4072
Taacutec Giả Lecirc Quốc Toagraven
40
Hệ thống Lưu trữ dự phograveng vagrave thống kecirc Lagrave thagravenh phần của TRIXBOXcung cấp caacutec cocircng cụ cần thiết cho việc bảo trigrave bảo dưỡng hệ thống
Hệ thống Apache-Php-Mysql dagravenh cho giải phaacutep Webserver của hệthống
2 DOWNLOAD VAgrave LẮP ĐẶT TRIXBOX
Địa chỉ downloadhttpsourceforgenetprojectsasteriskathome
Khi download xong file Trixboxiso Hatildey dugraveng file nagravey Burn vagraveo CD ( xinlưu yacute lagrave dugraveng Nero hoặc chương trigravenh cheacutep đĩa ưa thiacutech rồi burn vagraveo cd_romchứ khocircng phải cheacutep file đoacute vagraveo cd_rom)
Sau khi coacute CD Hatildey boot từ CD nagravey để cagravei đặt trixbox
Chuacute yacute dữ liệu trecircn đĩa cứng sẽ bị xoacutea sạch để cagravei đặt trixbox Nếu trongđĩa cứng cograven dữ liệu hatildey backup tất cả trước khi tiến hagravenh lắp đặt trixbox
Tới đacircy lần lượt caacutec magraven higravenh chỉ dẫn sẽ hiện ra vagrave cứ theo hướng dẫn magrave cagraveđặt Sau khi cagravei đặt xong chuacuteng ta dugraveng Username root vagrave password password đểđăng nhập hệ thống
3 Cấu higravenh địa chỉ IP cho card mạng
Thiết lập địa chỉ IP bằng caacutech gotilde lệnh
netconfig
Chọn OK để thiếp lập
Nếu trong mạng coacute hỗ trợ DHCP thigrave hatildey chọn mục nagravey cograven nếu khocircng hatildeynhập địa chỉ IP tĩnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4172
Taacutec Giả Lecirc Quốc Toagraven
41
IP 19216801
Netmask 2552552550
Gateway 19216893254 ngotilde ra becircn ngoagravei
Primary nameserver 19216893200 thiết lập nếu coacute
Chọn OK để chấp nhận caacutec thiết lập trecircn
Sau khi hoagraven tất hatildey lagravem cho thiết lập coacute hiệu lực bằng caacutech reset lại
maacutey tiacutenh hoặc dugraveng lệnh sau
Service network stop
Service network start
Đến đacircy xem như cagravei đặt hoagraven tất bacircy giờ để cấu higravenh được Asterisk chuacutengta vagraveo một magravey khaacutec vagrave mở Internet Explorer hoặc một trigravenh duyệt web bất kỳ
nhập vagraveohttp19216801đatilde cấu higravenh ở trecircn vagrave tiến hagravenh cấu higravenh hệ thốngvới tagravei khoảng username maint vagrave password password
4 Tổ Chức Thư Mục của Asterisk
Asterisk sử dụng nhiều thư mục trecircn hệ thống linux để quản lyacute caacutec khiacutea cạnkhaacutec nhau của hệ thống như nghi nhận bản tin thoại caacutec bản tin nhắc thoại hoặcaacutec tập tin cấu higravenh Phần nagravey sẽ trigravenh bagravey caacutec thư mục chiacutenh yếu được tạo ra tronquaacute trigravenh lắp đặt vagrave được cấu higravenh trong tập tin Asteriskconf
1 etcasterisk
Thư mục etcasterisk chứa tất cả caacutec tập tin cấu higravenh của hệ thốngAsterisk ngoại trừ tập tin Zaptelconf được đặt tại thư mục etc Phần cứnZaptel đầu tiecircn được phaacutet triển bởi Jim Dixon thuộc nhoacutem Zapata Telephony
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4272
Taacutec Giả Lecirc Quốc Toagraven
42
Group để giao tiếp giữa maacutey tiacutenh với mạng điện thoại magrave Asterisk lại sửdụng phần cứng nagravey với lyacute do đoacute magrave file cấu higravenh zaptelconf khocircng nằmtrong thư mục etcasterisk
2 usrlibasteriskmodules
Thư mục usrlibasteriskmodules chứa tất cả caacutec module cần thiết đểasterisk hoạt động Becircn trong thư mục lagrave caacutec ứng dụng khaacutec nhau caacutec codeccaacutec định dạng acircm thanh(format) vagrave caacutec kecircnh thocircng tin(channel) Theo mặc địnhAsterisk sẽ nạp tất cả caacutec module vagraveo luacutec khởi động Chuacuteng ta coacute thể khocircng cho
nạp một module bất kỳ bằng caacutech khocircng khai baacuteo sử dụng trong tập tinmodulesconf Lưu yacute khi khocircng cho nạp module thigrave phải biết chắc module đoacutekhocircng lagravem ảnh hưởng hoạt động của asterisk nếu khocircng lỗi sẽ xuất hiện
3 varlibasterisk
Thư mục varlibasterisk chứa tập tin astdb vagrave một số thư mục con Tập tinastdb định vị thocircng tin cơ sở dữ liệu của Asterisk giống như Microsoft WindowsRegistry
Caacutec thư mục con của thư mục varlibasterisk bao gồm
agi-bin
Thư mục agi-bin chứa caacutec script của người dugraveng magrave Asterisk coacute thểđịnh vị sử dụng qua caacutec ứng dụng AGI
AGI lagrave phần giao tiếp với ngocircn ngữ lập trigravenh script để thực hiện mộtsố cocircng việc của Asterisk từ becircn ngoagravei
firmware
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4372
Taacutec Giả Lecirc Quốc Toagraven
43
Thư mục firmware chứa một số phần dẻo(firmware) cho caacutec thiết bịkhaacutec nhau tương thiacutech với Asterisk Hiện tại chỉ coacute thư mục con iax chứa
firmware cho thiếy bị IAXy của Digium IAXy lagrave thiết bị ATA sử dụng giaothức IAX
images
Caacutec ứng dụng thocircng tin với caacutec kecircnh hỗ trợ ảnh images thigrave sử dụng thư mụcnagravey Nhưng hiện tại caacutec kecircnh thocircng tin hầu như khocircng hỗ trợ truyền ảnh images necircthư mục nagravey cũng hiếm khi được sử dụng Tuy nhiecircn nếu caacutec thiết bị coacute hỗ trợ ththư mục nagravey trở necircn hiệu dụng
keys
Asterisk coacute thể sử dụng hệ thống khoaacute publicprivate để xaacutec minh caacutec kết nốgiữa caacutec server Asterisk thocircng qua chữ kyacute điện tử RSA Nếu đặt một khoaacute publicvagraveo thư mục keys thigrave kết nối của server đầu becircn kia coacute thể được xaacutec minh bằn
kecircnh thocircng tin coacute hỗ trợ đối với Asterisk thigrave kecircnh giao thức IAX hỗ trợ loại xaacutecminh nagravey Một khoaacute private khocircng bao giờ cocircng bố chuacuteng ta chỉ cocircng bố khoaacute public đến với server cần nối đến sau đoacute sẽ được xaacutec minh với khoaacute private nagravey Chai khoaacute public vagrave private được lưu với đuocirci pub vagrave key đặt tại thư mục keys
mohmp3
Khi cấu higravenh Asterisk sử dụng tiacutenh năng Music on Hold tiacutenh năng hoạt độngsẽ thực hiện lấy caacutec tập tin mp3 tại thư mục mohmp3 Tập tin định dạng theo chucủa Asterisk necircn khi sử dụng caacutec file Mp3 thocircng thường cần coacute sự chuyển đổi thiacutechợp trước khi cheacutep vagraveo thư mục trecircn để sử dụng
sounds
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4472
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4572
Taacutec Giả Lecirc Quốc Toagraven
45
Thư mục tmp sử dụng để lưu trữ những thocircng tin tạm để luocircn bảo đảm khocircnxảy ra tigravenh trạng đọc vagrave viết tập tin cugraveng một luacutec Khi yecircu cầu xử lyacute tập tin chuacuteng thao taacutec trecircn thư mục tmp trước khi lưu vagraveo tập tin điacutech
Tất cả caacutec lời nhắc thoại từ phiacutea người sử dụng vagrave caacutec lời nhắc thoại sử dụ
cho thao taacutec hộp voicemail đều được chứa trong thư mục voicemail Một hộp thưthoại được tạo ra ứng với một maacutey nội bộ trong tập tin voicemailconf sẽ được tra một thư mục con tương ứng cho maacutey nội bộ đoacute tại thư mục voicemail
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4672
Taacutec Giả Lecirc Quốc Toagraven
46
5 varrun
Thư mục varrun chứa thocircng tin process ID(pid) cho tất cả caacutec tiến trigravenh đang
hoạt động trong hệ thống bao gồm cả Asterisk Lưu yacute lagrave ứng với mỗi hệ điều hagravethư mục varrun coacute thể khaacutec
6 varlogasterisk
Thư mục varlogasterisk lagrave nơi Asterisk chứa tất cả caacutec tập tin nhật kyacute haycograven gọi lagrave tập tin log Chuacuteng ta coacute thể tuỳ biến caacutec loại thocircng tin được lưu trong caacutec
tập tin log khaacutec nhau qua tập tin cấu higravenh loggerconf đặt tại thư mục etcasterisk7 varlogasteriskcdr-csv
Thư mục varlogasteriskcdr-csv được sử dụng để lưu chi tiết cuộc gọi CDRThocircng tin mặc định về chi tiết thocircng tin cuộc gọi lưu trữ trong tập tin MasterCVSnhưng thường thigrave ứng với mỗi matilde accountcode sẽ tạo một thư mục riecircng để lưu ctiết cuộc gọi cho maacutey đoacute
5 Một số lệnh thao taacutec trecircn hệ thống asterisk
Asterisk coacute hai thagravenh phần được xacircy dụng tiacutech hợp với nhau vagrave chạy songsong nhau
Asterisk Server bigravenh thường chạy ở chế độ nền(background) giống caacutec sevicestrong window
Asterisk Client ở chế độ dograveng lệnh CLI giao tiếp với Asterisk Server thực thicaacutec lệnh để kiểm tra hay xem caacutec thocircng tin của server
Để Chạy vagrave dừng Asterisk ở chế độ nền chuacuteng ta thực hiện lệnh sau
etcinitdasterisk (start|stop)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4772
Taacutec Giả Lecirc Quốc Toagraven
47
Một khi Asterisk đatilde chạy chuacuteng ta coacute thể chuyển qua chế độ CLI từ dấu nhắlệnh của linux như sau
asterisk ndashr
Khi vagraveo chế độ lệnh nếu muốn thoaacutet về lại dấu nhắc linux chuacuteng ta dugraveng lệnh
CLIgtexit
Caacutec lệnh cơ bản thực hiện tại CLIgt
Bất cứ khi nagraveo chỉnh sửa caacutec tập tin cấu higravenh chuacuteng ta đều cần phải nạp lại đcaacutec thay đổi coacute hiệu lực điều đoacute thực hiện bằng lệnh
CLIgtreload
Bậc chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 debug
CLIgt SIP debug
Tắt chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 no debug
CLIgt SIP no debug
Hiển thị caacutec trạng thaacutei thocircng tin của users peers vagravechannels của SIP hoặc IAX2
CLIgt sip show users
CLIgt sip show peers
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4872
Taacutec Giả Lecirc Quốc Toagraven
48
CLIgt sip show channels
CLIgt iax2 show peers
CLIgt iax2 show users
CLIgt iax2 show channels
Đến thời điểm nagravey coacute thể noacutei chuacuteng ta đatilde hoagraven thagravenh cagravei đặt hệ thốngAsterisk cagravei đặt xong mới lagrave bước mở đầu để cho hệ thống Asterisk hoạt động vtừng ứng dụng cụ thể chuacuteng sẽ tiếp tục thực hiện caacutec giai đoạn được xem lagrave qutrọng nhất trong việc triển khai hệ thống Asterisk đoacute lagrave giai đoạn cấu higravenh hệ thốnlecircn kế hoạch Diaplan chương cograven lại đều nhắm đến mục tiecircu nagravey
4 CẤU HIgraveNH HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Sau khi hoagraven tất phần cagravei đặt hệ thống asterisk một bước quan trọng tiếp thelagrave cấu higravenh hệ thống coacute thể noacutei đacircy lagrave bước quan trọng nhất của việc khiển khai thống đến với từng ứng dụng cụ thể Trong chương nagravey xin giới thiệu caacutei nhigraven đầtiecircn về việc cấu higravenh trước khi đi sacircu hơn ở những chương sau những gigrave giới thiệ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4972
Taacutec Giả Lecirc Quốc Toagraven
49
trong chương nagravey lagrave nền moacuteng cơ bản nhưng đủ để hiểu lagravem thế nagraveo hệ thống coacute thoạt động được nội dung chiacutenh bao gồm
+ Thao taacutec cấu higravenh trecircn hệ thống tập tin của asterisk
+ Caacutech cagravei đặt phần mềm softphone trecircn cocircng nghệ sip
+ Cấu higravenh cho hai maacutey softphone liecircn lạc với nhau
+ Cấu higravenh phaacutet thocircng điệp
+ Quay số qua Sip vagrave mạng PSTN
2 Tập Tin cấu higravenh
Tất cả caacutec file cấu higravenh cho hệ thống asterisk đều nằm tại thư mục etcasterisngoại trừ file zaptelconf cấu higravenh cho phần cứng TDM nằm tại thư mục etc caacutecthức cấu higravenh giống như tập tin ini của window vậy Caacutec nội dung sau dấu chấm phảy lagrave nội dung chuacute thiacutech trong file cấu higravenh giống như chuacute thiacutech trong ngocircn ngữ
lập trigravenh C lagrave dấu Tất cả caacutec khoảng trắng trong tập tin đều được bỏ qua khocircng yacute nghĩa trong file cấu higravenh
Trong file cấu higravenh cograven coacute hai pheacutep gaacuten rất thường xuyecircn được sử dụng pheacutep gaacuten ldquo=rdquo lagrave dugraveng cho việc gaacuten caacutec biến cograven pheacutep gaacuten ldquo=gtrdquo dugraveng cho việc gaacutencaacutec đối tượng sau đacircy lagrave một viacute dụ cho file cấu higravenh
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5072
Taacutec Giả Lecirc Quốc Toagraven
50
Đacircy lagrave caacutec dograveng chuacute thiacutech
[section]
Key=value gaacuten giaacute trị cho biến
[section2]
Key=gtobject Gaacuten giaacute trị cho đối tượng
Cuacute phaacutep thực hiện giống nhau cho tất cả caacutec file cấu higravenh nhưng coacute vagravei kiểukhaacutec nhau cho mỗi file cầu higravenh dựa vagraveo thức caacutech hoạt động của chuacuteng
3 Caacutec kiểu ảnh hưởng trong tập cấu higravenh
Coacute ba kiểu caacutech thức hoạt động của tập tin cấu higravenh như sau
Kiểu Caacutech hoạt động File cầu higravenh Viacute dụ
S i m p l eGroup
Coacute hiệu lực trecircntừng dograveng trongfile
Extensionconf
Exten=gt4001dial(sip400)
O p t i o ninheritance
Dograveng khai baacuteosau thừa kếnhững thocircng sốkhai baacuteo trước
Zapataconf [channels]
Context=From_PSTN
Signalling=fxs_ks
Group=1Channel=gt1
C o m p l e xEntity
Mỗi entity nhậnmột ngữ cảnh
sipconf
iaxconf
[cisco]
Type=friend
Secret=12345
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5172
Taacutec Giả Lecirc Quốc Toagraven
51
Host=192168165
Context=NoiBo
[xten]
Type=friend
Secret=6789
Host=dynamic
Context=NoiBo
1 Simple Group
Đacircy lagrave kiểu cấu higravenh đơn giản nhất thường sử dụng trong caacutec fileextentionconf meetmeconf voicemailconf tương ứng với mỗi dograveng khai baacuteo lagravemột đối tượng coacute yacute nghĩa trecircn dograveng đoacute
Viacute dụ
Extentionconf [section]
object1=gt op1op2op3
object2=gt op1bop2bop3b
Trong viacute dụ trecircn mỗi dograveng tương ứng với caacutec toaacuten tử khaacutec nhau object1 coacute caacutectoaacuten từ op1 op2 op3 trong khi đoacute object2 lại coacute caacutec toaacuten từ op1b op2b op3b
2 Option inheritance
Đacircy lagrave cấu higravenh kiểu thừa kế thường được cấu higravenh trong caacutec file zapataconfagentconf với kiểu cấu higravenh nagravey thigrave caacutec dograveng phiacutea dưới coacute thể thừa kế caacutec thocircng sdograveng phiacutea trecircn tương ứng với mỗi section caacutec dograveng phiacutea dưới coacute thể thay đổi caacutecthocircng số cho tươngứng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5272
Taacutec Giả Lecirc Quốc Toagraven
52
Viacute dụ
Extentionconf
[section]
Op1=bas
Op2=adv
Object1=gt1
Op1=int
Object1=gt2
Với cấu higravenh trecircn coacute thể giải thiacutech như sau object1=gt1 thừa hưởng hai thocircngsố ở phiacutea trecircn đoacute lagrave op1=bas vagrave op2=adv trong khi đoacute đối với object1=gt2 với thocircngsố op1=int được khai baacuteo lại necircn object1=gt2 được thừa kế từ hai thocircng số op1=invagrave op2=adv
3 Complex Entity
Với cấu kiểu nagravey được tổ chức thagravenh nhiều entity ứng với mỗi entity coacute nhiềthocircng số được khai baacuteo mỗi entity ở đacircy chiacutenh lagrave caacutec section để khai baacuteo caacutec kecircnhthocircng tin Cấu higravenh thường được sử dụng trong caacutec file iaxconf sipconf
Viacute dụ
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5372
Taacutec Giả Lecirc Quốc Toagraven
53
[entity1]
Op1=value1
Op2=value2
[entity2]
Op1=value3
Op2=value4
Entity1 coacute caacutec giaacute trị value1 vagrave value2 cho thocircng số op1 vagrave op2 trong khi đoacute
cũng lagrave thocircng số op1 vagrave op 2 nhưng coacute caacutec giaacute trị khaacutec lagrave value3 vagrave value4 choentity2
4 Cấu higravenh giao tiếp với mạng PSTN
1 Ngữ cảnh kết nối
Để kết nối với mạng PSTN chuacuteng ta cần phải coacute một card TDM với Cổng
FXO vagrave một đường dacircy điện thoại hoặc coacute thể lagrave một tổng đagravei nội bộ PBX Cnhiều nhagrave sản xuất phần cứng khaacutec nhau nhưng trong phần cấu higravenh dưới dacircy lagrave cấhigravenh cho card zapata TDM01B của digium (card nagravey hiện nay giaacute baacuten khoảng175$)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2572
Taacutec Giả Lecirc Quốc Toagraven
25
2 Baacuteo hiệu Analog giữa đầu cuối vagrave tổng đagravei
Khi chuacuteng ta nhấc mấy điện thoại để gọi thigrave nghe tiacuten hiệu mời quay số kh
cuộc gọi gọi đầu becircn kia bị bận thigrave chuacuteng ta nghe tiacuten hiệu bận(busy tone) caacutec loạtiacuten hiệu như vậy gọi lagrave caacutec tiacuten hiệu baacuteo hiệu analog Caacutec tiacuten hiệu như Mời quay sốtiacuten hiệu bận rung chuocircng trạng thaacutei nhấc gaacutec maacutey Caacutec loại tiacuten hiệu trecircn được trađổi giữa thiết bị FXO vagrave FXS
Coacute nhiều phương thức baacuteo hiệu khaacutec nhau ứng với từng nơi sử dụng vigrave thếtại nơi kết nối với đường dacircy điện thoại cần xem xeacutet họ đang sử dụng phương th
baacuteo hiệu gigrave từ đoacute chuacuteng ta khai thaacutec loại tiacuten hiệu baacuteo hiệu cho thiacutech hợp caacutec phương thức baacuteo hiệu như Loop Start Ground Start Một minh họa cho việc sửdụng sai phương thức baacuteo hiệu lagrave khi chuacuteng ta khai baacuteo phương thức baacuteo hiệu giữhệ thống Asterisk vagrave đường dacircy điện thoại khaacutec nhau thigrave dẫn đến Asterisk sẽ khocircnnhận biết được tiacuten hiệu gaacutec maacutey điều nagravey sẽ lagravem cho asterisk khocircng baacuteo giờ giải tỏđược cuộc gọi để thực hiện cuộc gọi mới
3 Baacuteo hiệu giữa caacutec tổng đagravei
SS7 hệ thống baacuteo hiệu số 7 được phaacutet triển bởi ATampT vagrave ITU lagrave hệ thống baacuteo hiệu chuyển caacutec cuộc gọi giữa caacutec tổng đagravei trong mạng PSTN Trong hệ thốn baacuteo hiệu số 7 tiacuten hiệu chuyển tải trecircn đường trung kế kết nối giữa hai tổng đagravei gồcoacute hai mạch riecircng một cho thoại vagrave một cho baacuteo hiệu như vậy thoại vagrave baacuteo hiệu cthể chuyển trecircn hai kecircnh vật lyacute khaacutec nhau
7 Baacuteo Hiệu trecircn mạng điện thoại VoIP
1 SIP Session Initiation Prorocol
Sip lagrave giao thức Internet dagravenh cho baacuteo hiệu VoIP được phaacutet triển bởi IETFcung cấp vagravei chức năng giống hệ thống baacuteo hiệu số 7 nhưng dựa trecircn nền IP Mộchức năng giống baacuteo hiệu số 7 đoacute lagrave baacuteo hiệu vagrave thoại chuyển tải trecircn hai kecircnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2672
Taacutec Giả Lecirc Quốc Toagraven
26
riecircng Giao thức SIP thực hiện chức năng thiết lập vagrave baacuteo hiệu cuộc gọi khi noacutei đế baacuteo hiệu cuộc gọi lagrave chỉ định caacutec tiacuten hiệu baacuteo hiệu như tiacuten hiệu mời quay số tiacutehiệu bậnhellip
2 Proxy server
Mặc dầu hai thiết bị SIP coacute thể liecircn lạc trực tiếp với nhau để khởi tạo cuộgọi nhưng trong giao thức SIP cograven coacute chức năng Proxy để linh hoạt hơn trong thiếlập cuộc gọi Proxy Server sẽ lagravem nhiệm vụ ghi nhận tất cả caacutec số điện thoại đư phiacutea client đăng kyacute đến qua bản tin ldquoRegistrationrdquo Khi một client khaacutec thực hiện
cuộc gọi thigrave thực sự Client đoacute khocircng biết số điện thoại cần gọi đang ở đacircu necircn thocircnqua Proxy server để tigravem kiếm thiết lập cuộc gọi
+
Higravenh Đăng kyacute từ Client đến SIP Proxy Với Giao thức SIP đường baacuteo hiệu vagravethoại riecircng
3 RTP vaacute NAT
Caacutec cuộc gọi trecircn Internet với giao thức SIP được chia thagravenh caacutec goacutei thoại vagraveđược chuyển qua giao thức RTP(Real Time Protocol) RTP lagrave giao thức khocircng chỉthực hiện chuyển caacutec goacutei thoại qua Internet magrave cograven coacute cả video nữa Một cuộc gọ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2772
Taacutec Giả Lecirc Quốc Toagraven
27
thocircng thường coacute hai hướng thocircng tin lagrave nhận vagrave phaacutet RTP lagravem việc chuyển caacutec goacutedữ liệu thoại cũng trecircn hai hướng
NAT Network Address Translators lagrave một trở ngại lớn trong giao thức RTPMạng sử dụng NAT lagrave một mạng chia sẻ nhiều địa chỉ IP nội bộ với một địa chỉ ICocircng cộng để kết nối với thế giới becircn ngoagravei NAT dugraveng để chia sẻ nhiều maacutey tiacutentrong mạng LAN nội bộ sử dụng được Internet nhưng cũng chiacutenh vigrave thế magrave caacutec maacutetiacutenh nội bộ gặp khoacute khăn trong việc thực hiện cuộc gọi VoIP qua Internet Đoacute chiacutenhlagrave vấn để trở ngại khi truyền thoại qua giao thức RTP
Higravenh Minh họa hoạt động của NAT
Trong Giao thức RTP như chuacuteng ta đatilde biết đoacute lagrave thoại được chuyển trecircn haiđường khaacutec nhau lagrave đường phaacutet vagrave đường thu Vấn đề NAT nằm ở chỗ tiacuten hiệthoại từ becircn ngoagravei vagraveo becircn trong qua giao thức RTP khocircng thực hiện được cograven chiềungược lại thigrave thực hiện tốt Hay noacutei caacutech khaacutec vấn đề NAT lagravem cho caacutec cuộc gọi t
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2872
Taacutec Giả Lecirc Quốc Toagraven
28
Internet đagravem thoại vagraveo caacutec maacutey nội bộ qua NAT thigrave khocircng nghe được cograven trongtrường hợp caacutec cuộc gọi từ caacutec maacutey nội bộ ra caacutec maacutey internet thigrave nghe tốt
Vấn đề NAT trecircn được giải quyết trong Asterisk bằng việc khai baacuteo thocircng số NAT=yes trong cấu higravenh kecircnh giao thức SIP
4 IAX ndash Inter Asterisk eXchange
IAX lagrave giao thức baacuteo hiệu Voip được phaacutet triển bởi taacutec giả của phần mềmAsterisk để khắc phục những hạn chế trong giao thức SIP Khocircng giống như giathức SIP chuyển tải thoại vagrave baacuteo hiệu trecircn hai kecircnh khaacutec nhau (out of band) IAXchuyển tải thoại vagrave baacuteo hiệu trecircn cugraveng một kecircnh(in band) IAX giải quyết được vấđề NAT đề cập trecircn phần giao thức SIP Mặc khaacutec IAX lagrave giao thức tối ưu trongviệc sử dụng băng thocircng cho pheacutep nhiều goacutei dữ liệu thoại trecircn cugraveng một IP headecơ chế chuyển tải nhiều cuộc gọi trecircn cugraveng một goacutei IP được gọi lagrave trung kế(Trunk)
Coacute thể giải thiacutech thecircm cơ chế trung kế như sau Giả sử Tocirci cần gửi 5 bức thtới người bạn của Tocirci Tocirci sẽ coacute hai higravenh thức để thực hiện thứ nhất lagrave mỗi bức tTocirci bỏ vagraveo một phong bigrave vậy tổng cộng tocirci phải sử dụng 5 phong bigrave để gửi đi 5 bứthư Caacutech thứ hai lagrave Tocirci bỏ 5 bức thư vagraveo 1 phong bigrave vagrave gửi đi vậy tổng cộng Tocircchỉ tốn 1 phong bigrave Qua phacircn tiacutech trecircn rotilde ragraveng việc 5 bức thư vagraveo một phong bigrave sẽtiết kiệm hơn so với 5 bức thư với 5 phong biacute Cơ chế trecircn cũng giống như nhiềcuộc gọi được đoacuteng thagravenh goacutei vagrave chuyển đi trecircn đường trung kế
Toacutem lại IAX lagrave giao thức dagravenh cho VoIP mới nhất cho đến thời điểm nagravey vớinhiều ưu điểm hấp dẫn như
+ Tối thiểu sử dụng băng thocircng
+ Trong suốt với NAT
+ Hiệu quả với cơ chế trung kế
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2972
Taacutec Giả Lecirc Quốc Toagraven
29
8 Thiết Bị VoIP
1 Voip Phone
Đacircy lagrave thiết bị phần cứng kết nối với mạng VoIP giống như maacutey điện thoại đ bagraven thocircng thường nhưng dagravenh cho VoIP cần phải thực hiện cấu higravenh trước khi sửdụng
Lưu yacute một số tiacutenh năng khi thực hiện mua thiết bị điện thoại VoIP
+ Low bandwidth hỗ trợ Codec nagraveo G729 lagrave tốt nhất hiện nay
+ Web Interface Phải coacute giao tiếp thiết lập cấu higravenh thacircn thiện dễ sử dụng
+ Audio Interface Coacute speaker phone hay khocircng
Giaacute thagravenh của điện thoại voip IP đắc hơn điện thoại thocircng thường giaacute khoảntrecircn dưới 100$ một caacutei
Higravenh Maacutey Điện Thoại VoIP
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3072
Taacutec Giả Lecirc Quốc Toagraven
30
2 Softphone
Lagrave một phần mềm được cagravei trecircn maacutey tiacutenh thực hiện tất cả caacutec chức năng giốn
như thiết bị điện thoại Voip cần lưu yacute khi sử dụng softphone lagrave maacutey tiacutenh phải ccard acircm thanh headphone vagrave firewall khocircng bị khoacutea
Sử dụng softphone với hệ thống Asterisk necircn dugraveng softphone với cocircng nghệgiao thức mới dagravenh cho Asterisk đoacute lagrave IAX
Higravenh Điện Thoại Softphone
3 Card giao tiếp với PSTN
Muốn cho pheacutep caacutec maacutey điện thoại nội bộ trong hệ thống Asterisk kết nối vthực hiện cuộc gọi với mạng PSTN chuacuteng ta cần phải coacute thiết bị phần cứng tươthiacutech Thiết bị phần cứng sử dụng cho hệ thống Asterisk do chiacutenh taacutec giả lập cocircng
Digium phacircn phối đacircy cũng chiacutenh lagrave yacute tưởng lớn trong việc phacircn phối phần mềmAsterisk lagrave hệ thống nguồn mở sử dụng miễn phiacute
Thiết bị phần cứng thường kyacute hiệu bắt đầu bằng cụm từ TDMxyB trong đoacute lagrave số lượng port FXS y lagrave số lượng port FXO giaacute trị tối đa của x vagrave y lagrave 4 viacute dụcard TDM22B coacute nghĩa lagrave coacute 2 fort FXS vagrave 2 port FXO
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3172
Taacutec Giả Lecirc Quốc Toagraven
31
Higravenh Card TDM22B gồm 4 port 2 FXS vagrave 2 FXO
4 ATA Analog Telephone Adaptors
ATA lagrave thiết bị kết nối với điện thoại Analog thocircng thường đến mạng VoIPmột thiết bị ATA gồm coacute hai loại port RJ-11 để kết nối với maacutey điện thoại analo
thocircng thường cograven RJ-45 để kết nối với mạng VoIP
ATA thực sự lagrave thiết bị FXS chuyển đổi tiacuten hiệu Analog sang tiacuten hiệu số sửdụng cho mạng VoIP để tận dụng maacutey điện thoại Analog necircn trang bị thiết bị ATAthay vigrave phải trang bị điện thoại VoIP
Thiết bị ATA sử dụng với giao thức IAX được Digium phacircn phối lagrave thiết bịATA được sử dụng rộng ratildei với Asterisk coacute tecircn gọi lagrave IAXy
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3272
Taacutec Giả Lecirc Quốc Toagraven
32
Higravenh Thiết bị ATA
9 Codecs
Thuật Toaacuten codecs(CompressorDe-compressor) lagrave một tập caacutec quy luật đượcsử dụng để chuyển đổi caacutec tiacuten hiệu thoại dạng Analog sang tiacuten hiệu số vagrave ngược lạ
Coacute nhiều thuật toaacuten codec để thực hiện chuyển đổi tiacuten hiệu analog sang tiacuten
hiệu số dạng nhị phacircn (01) như G711 GSM G729hellipỨng với mỗi thuật toaacuten coacutenhững ưu điểm riecircng đặc biệt lagrave việc tối ưu sử dụng băng thocircng trecircn đường truyềMục tiecircu cuối cugraveng lagrave caacutec thuật toaacuten đưa ra phải đảm bảo chất lượng cuộc gọi nhvagrave tiết kiệm băng thocircng nhất
G729 lagrave thuật toaacuten codec tốt nhất hiện nay trong hệ thống VoIP Với hệthống Asterisk để sử dụng thuật toaacuten nagravey cần phải mua bản quyền sử dụng vigrave đacircy
codec khocircng miễn phiacute sử dụng
10 QoS ndash Quality of Service
Caacutec yếu tố ảnh hưởng đến chất lượng của dịch vụ đối với VoIP đoacute lagrave caacuteyếu ảnh hưởng đến chất lượng tiacuten hiệu thoại
1 Độ trễ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3372
Taacutec Giả Lecirc Quốc Toagraven
33
Thoại lagrave dịch vụ mang tiacutenh thời gian thực rất cao vigrave thế trễ lagrave yếu tố ảnhhưởng rất lớn đến chất lượng dịch vụ Trễ được định nghĩa lagrave khoảng thời gian tiacute
từ luacutec tiacuten hiệu thoại đi từ miệng người noacutei tới tai người nghe Trễ lagrave yếu tố khocircnthể traacutenh khỏi độ trễ đối với mạng điện thoại truyền thống (mạng PSTN) khoảng50ms đến 70ms theo khiến nghị của ITU-T để đảm bảo chất lượng cho hệ thốVoIP thigrave độ trễ từ đầu phaacutet tới đầu thu hoặc ngược lại khocircng được vượt quaacute 150mkhi magrave độ trễ vượt quaacute 400ms đến 500ms thigrave khocircng thể chấp nhận được
Caacutec nguyecircn nhacircn gacircy ra trễ bao gồm Trễ trecircn mạng lưới trễ trecircn bộ mả hoacutea
giải matilde trễ trong quaacute trigravenh đoacuteng goacutei trễ bộ đệm trễ xử lyacute tiếng noacuteihellip2 Độ trượt(Jitter)
Nguyecircn nhacircn gacircy ra trượt lagrave goacutei tiacuten hiệu thoại trong quaacute trigravenh truyền từnguồn đến điacutech sẽ gặp phải những điều kiện khaacutec nhau trecircn mạng lưới do đoacute thườđến điacutech với những khoảng trễ khaacutec nhau Đacircy lagrave tiacutenh khocircng đồng nhất của trễ Mnguyecircn nhacircn khaacutec của trượt đối với ứng dụng PC to PC lagrave do việc sử dụng hệ điề
hagravenh phi thời gian thực caacutec goacutei tin thoại phải đợi hệ điều hagravenh xử lyacute trong nhữnkhoảng thời gian khaacutec nhau khi magrave hệ điều hagravenh đang phải xử lyacute đối với caacutec ứndụng khaacutec
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3472
Taacutec Giả Lecirc Quốc Toagraven
34
Higravenh Nguyecircn nhacircn xảy ra trượt
Để loại bỏ tiacutenh khocircng đồng nhất của trễ người ta thiết kế caacutec bộ đệm t(Jitter Buffer) tại nơi đến của caacutec goacutei tin caacutec goacutei tin đến với caacutec khoảng caacutech khaacutecnhau về thời gian được lưu tại bộ đệm rồi phaacutet khỏi bộ đệm với khoảng trễ n
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3572
Taacutec Giả Lecirc Quốc Toagraven
35
nhau Khi bộ đếm coacute kiacutech thước cagraveng lớn thigrave khả năng loại bỏ tiacutenh khocircng đồng nhấcagraveng lớn tuy nhiecircn việc sử dụng bộ đệm sẽ gacircy ra hiện tượng trễ trong ứng dụnthoại do đoacute cần coacute bagravei toaacuten cacircn đối giữa độ trễ vagrave độ trượt
Ngoagravei 2 nguyecircn nhacircn trecircn cograven một số nguyecircn nhacircn nữa ảnh hưởng đến chấtlượng thoại như độ mất goacutei giới hạn băng thocircng tiếng vọng
3 CAgraveI ĐẶT ASTERISK
1 Cagravei đặt Asterisk
1 Download vagrave bung neacuten
Để cagravei đặt Asterisk đầu tiecircn chuacuteng ta cần phải cagravei đặt hệ điều hagravenh linux trecircnmaacutey tiacutenh của migravenh Coacute thể cagravei hệ điều hagravenh Linux Fedora CentOS Redhat hoặcDebian Caacutec goacutei phần mềm phụ thuộc phải coacute trong hệ điều hagravenh Linux trước khcagravei Asterisk bao gồm
bison
gcc
kernel-source
libtermcap-devel
ncurses-devel
openssl096b
openssl-devel
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3672
Taacutec Giả Lecirc Quốc Toagraven
36
Sau khi hoagraven tất caacutec bước trecircn chuacuteng ta tiến hagravenh download phần mềmasterisk với phiecircn bản mới nhất
cd usrsrc
wgetftpftpdigiumcompubasteriskasterisk-140targz
wgetftpftpdigiumcompubasteriskasterisk-addons-140targz
wgetftpftpdigiumcompubasteriskasterisk-sounds-140targz
wgethttpftpdigiumcompubzaptelzaptel-140targz
wgethttpftpdigiumcompublibprilibpri-140targz
Việc download coacute thể nhanh hay chậm tugravey vagraveo tốc độ trecircn đường internet saukhi download hoagraven thagravenh chuacuteng ta tiến hagravenh bung neacuten caacutec goacutei ra thư mục chỉ định
tar ndashxzvf asterisk-140targz
tar ndashxzvf asterisk-addons-140targz
tar ndashxzvf asterisk-sounds-140targz
tar ndashxzvf zaptel-140targz
tar ndashxzvf libpri-140targz
Giải neacuten xong chuacuteng ta nhớ thực hiện lệnh
ln ndashs usrsrcasterisk-140 usrsrcasterisk lệnh nagravey để bảo đảm goacuteildquoaddonsrdquo được biecircn dịch đuacuteng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3772
Taacutec Giả Lecirc Quốc Toagraven
37
Bacircy giờ tới phần chuacuteng ta biecircn dịch caacutec goacutei đatilde giải neacuten ở trecircn trước tiecircn lagrave goacuteizaptel kế đến lagrave libpri sau cugraveng lagrave goacutei Asterisk
2 Cagravei đặt goacutei Zaptel
Goacutei zaptel sẽ chứa tại thư mục usrsrczaptel Đaacutenh lệnh như dưới đacircy để cagraveđặt
cd usrsrczaptel
make clean make install
Lệnh nagravey thực hiện khoảng 2 phuacutet tugravey vagraveo tốc độ maacutey tiacutenh cagravei đặt sau khicagravei đặt xong sẽ trở lại dấu nhắc lệnh vagrave hiển thị một loạt caacutec thocircng baacuteo trong đoacute một số bản tin lỗi magrave chủ yếu lagrave yecircu cầu cagravei đặt caacutec goacutei phụ thuộc đatilde liệt kecirc ở trecircnếu caacutec goacutei trecircn chưa được cagravei đặt
Goacutei zaptel nagravey chứa caacutec driver cho caacutec phần cứng kết giao tiếp với asterisk
do Digium phacircn phối vagrave một số thư viện cho việc coacute thực hiện giao tiếp với phầcứng hay khocircng
Để Asterisk coacute thể chạy cugraveng với khởi động của maacutey tiacutenh chuacuteng ta cần thựchiện lệnh
make config
Lệnh nagravey sẽ tạo ra script chegraven module zaptel vagraveo kernel vagrave chạy ztconfig vagraveoluacutec khởi động maacutey Trong Redhat script nagravey sẽ được cheacutep vagraveo etcinitd chạy ở mức 3
3 Cagravei đặt goacutei libpri
Kế đến chuacuteng ta biecircn dịch goacutei libpri tại thư mục usrsrclibpri bằng lệnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3972
Taacutec Giả Lecirc Quốc Toagraven
39
make config
3 Cagravei đặt TrixBox
1 Giới thiệu
TRIXBOX được phaacutet triển từ nhacircn của ứng dụng Asterisk được tổng hợp từmột số thagravenh phần chiacutenh được phaacutet triển bởi cộng đồng phaacutet triển nguồn mAsterisk dưới bản quyền GPL Trixbox bao gồm những thagravenh phần chiacutenh cho việcấu higravenh ứng dụng thống kecirc tigravenh trạng hoạt động hệ thống lưu trữ dự phograveng v
nhacircn lagrave hệ điều hagravenh CentOS một phiecircn bản khaacutec của Redhat tất cả kết hợp vớnhau tạo thagravenh một goacutei hoagraven chỉnh Khi cagravei goacutei nagravey vagraveo maacutey tiacutenh thigrave coacute thể sử dụngnhư một tổng đagravei PBX
Caacutec thagravenh phần chiacutenh trong goacutei TRIXBOX lagrave
Asterisk PBX Thagravenh phần chiacutenh của hệ thống Trixbox
CentOS Một phiecircn bản Linux khaacutec của Redhat hoagraven toagraven miển phiacute sửdụng Lagrave nhacircn chiacutenh cho Trixbox
SugarCRM Hệ thống quan hệ khaacutech hagraveng CRM
A2Billing ndash Lagrave thagravenh phần dagravenh cho việc xacircy dựng hệ thống điện thoạitrả trước hay cograven gọi lagrave điện thọai thẻ (Calling Card)
Flash Operator Panel Bảng điều khiển giaacutem saacutet tigravenh trạng hoạt độngcủa caacutec maacutey điện thoại trong hệ thống
Web MeetMe Control Quản lyacute triển khai hệ thống điện thoại hội nghị
FreePBX Đacircy lagrave cocircng cụ với giao diện web dagravenh cho việc cấu higravenh hệthống Asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4072
Taacutec Giả Lecirc Quốc Toagraven
40
Hệ thống Lưu trữ dự phograveng vagrave thống kecirc Lagrave thagravenh phần của TRIXBOXcung cấp caacutec cocircng cụ cần thiết cho việc bảo trigrave bảo dưỡng hệ thống
Hệ thống Apache-Php-Mysql dagravenh cho giải phaacutep Webserver của hệthống
2 DOWNLOAD VAgrave LẮP ĐẶT TRIXBOX
Địa chỉ downloadhttpsourceforgenetprojectsasteriskathome
Khi download xong file Trixboxiso Hatildey dugraveng file nagravey Burn vagraveo CD ( xinlưu yacute lagrave dugraveng Nero hoặc chương trigravenh cheacutep đĩa ưa thiacutech rồi burn vagraveo cd_romchứ khocircng phải cheacutep file đoacute vagraveo cd_rom)
Sau khi coacute CD Hatildey boot từ CD nagravey để cagravei đặt trixbox
Chuacute yacute dữ liệu trecircn đĩa cứng sẽ bị xoacutea sạch để cagravei đặt trixbox Nếu trongđĩa cứng cograven dữ liệu hatildey backup tất cả trước khi tiến hagravenh lắp đặt trixbox
Tới đacircy lần lượt caacutec magraven higravenh chỉ dẫn sẽ hiện ra vagrave cứ theo hướng dẫn magrave cagraveđặt Sau khi cagravei đặt xong chuacuteng ta dugraveng Username root vagrave password password đểđăng nhập hệ thống
3 Cấu higravenh địa chỉ IP cho card mạng
Thiết lập địa chỉ IP bằng caacutech gotilde lệnh
netconfig
Chọn OK để thiếp lập
Nếu trong mạng coacute hỗ trợ DHCP thigrave hatildey chọn mục nagravey cograven nếu khocircng hatildeynhập địa chỉ IP tĩnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4172
Taacutec Giả Lecirc Quốc Toagraven
41
IP 19216801
Netmask 2552552550
Gateway 19216893254 ngotilde ra becircn ngoagravei
Primary nameserver 19216893200 thiết lập nếu coacute
Chọn OK để chấp nhận caacutec thiết lập trecircn
Sau khi hoagraven tất hatildey lagravem cho thiết lập coacute hiệu lực bằng caacutech reset lại
maacutey tiacutenh hoặc dugraveng lệnh sau
Service network stop
Service network start
Đến đacircy xem như cagravei đặt hoagraven tất bacircy giờ để cấu higravenh được Asterisk chuacutengta vagraveo một magravey khaacutec vagrave mở Internet Explorer hoặc một trigravenh duyệt web bất kỳ
nhập vagraveohttp19216801đatilde cấu higravenh ở trecircn vagrave tiến hagravenh cấu higravenh hệ thốngvới tagravei khoảng username maint vagrave password password
4 Tổ Chức Thư Mục của Asterisk
Asterisk sử dụng nhiều thư mục trecircn hệ thống linux để quản lyacute caacutec khiacutea cạnkhaacutec nhau của hệ thống như nghi nhận bản tin thoại caacutec bản tin nhắc thoại hoặcaacutec tập tin cấu higravenh Phần nagravey sẽ trigravenh bagravey caacutec thư mục chiacutenh yếu được tạo ra tronquaacute trigravenh lắp đặt vagrave được cấu higravenh trong tập tin Asteriskconf
1 etcasterisk
Thư mục etcasterisk chứa tất cả caacutec tập tin cấu higravenh của hệ thốngAsterisk ngoại trừ tập tin Zaptelconf được đặt tại thư mục etc Phần cứnZaptel đầu tiecircn được phaacutet triển bởi Jim Dixon thuộc nhoacutem Zapata Telephony
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4272
Taacutec Giả Lecirc Quốc Toagraven
42
Group để giao tiếp giữa maacutey tiacutenh với mạng điện thoại magrave Asterisk lại sửdụng phần cứng nagravey với lyacute do đoacute magrave file cấu higravenh zaptelconf khocircng nằmtrong thư mục etcasterisk
2 usrlibasteriskmodules
Thư mục usrlibasteriskmodules chứa tất cả caacutec module cần thiết đểasterisk hoạt động Becircn trong thư mục lagrave caacutec ứng dụng khaacutec nhau caacutec codeccaacutec định dạng acircm thanh(format) vagrave caacutec kecircnh thocircng tin(channel) Theo mặc địnhAsterisk sẽ nạp tất cả caacutec module vagraveo luacutec khởi động Chuacuteng ta coacute thể khocircng cho
nạp một module bất kỳ bằng caacutech khocircng khai baacuteo sử dụng trong tập tinmodulesconf Lưu yacute khi khocircng cho nạp module thigrave phải biết chắc module đoacutekhocircng lagravem ảnh hưởng hoạt động của asterisk nếu khocircng lỗi sẽ xuất hiện
3 varlibasterisk
Thư mục varlibasterisk chứa tập tin astdb vagrave một số thư mục con Tập tinastdb định vị thocircng tin cơ sở dữ liệu của Asterisk giống như Microsoft WindowsRegistry
Caacutec thư mục con của thư mục varlibasterisk bao gồm
agi-bin
Thư mục agi-bin chứa caacutec script của người dugraveng magrave Asterisk coacute thểđịnh vị sử dụng qua caacutec ứng dụng AGI
AGI lagrave phần giao tiếp với ngocircn ngữ lập trigravenh script để thực hiện mộtsố cocircng việc của Asterisk từ becircn ngoagravei
firmware
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4372
Taacutec Giả Lecirc Quốc Toagraven
43
Thư mục firmware chứa một số phần dẻo(firmware) cho caacutec thiết bịkhaacutec nhau tương thiacutech với Asterisk Hiện tại chỉ coacute thư mục con iax chứa
firmware cho thiếy bị IAXy của Digium IAXy lagrave thiết bị ATA sử dụng giaothức IAX
images
Caacutec ứng dụng thocircng tin với caacutec kecircnh hỗ trợ ảnh images thigrave sử dụng thư mụcnagravey Nhưng hiện tại caacutec kecircnh thocircng tin hầu như khocircng hỗ trợ truyền ảnh images necircthư mục nagravey cũng hiếm khi được sử dụng Tuy nhiecircn nếu caacutec thiết bị coacute hỗ trợ ththư mục nagravey trở necircn hiệu dụng
keys
Asterisk coacute thể sử dụng hệ thống khoaacute publicprivate để xaacutec minh caacutec kết nốgiữa caacutec server Asterisk thocircng qua chữ kyacute điện tử RSA Nếu đặt một khoaacute publicvagraveo thư mục keys thigrave kết nối của server đầu becircn kia coacute thể được xaacutec minh bằn
kecircnh thocircng tin coacute hỗ trợ đối với Asterisk thigrave kecircnh giao thức IAX hỗ trợ loại xaacutecminh nagravey Một khoaacute private khocircng bao giờ cocircng bố chuacuteng ta chỉ cocircng bố khoaacute public đến với server cần nối đến sau đoacute sẽ được xaacutec minh với khoaacute private nagravey Chai khoaacute public vagrave private được lưu với đuocirci pub vagrave key đặt tại thư mục keys
mohmp3
Khi cấu higravenh Asterisk sử dụng tiacutenh năng Music on Hold tiacutenh năng hoạt độngsẽ thực hiện lấy caacutec tập tin mp3 tại thư mục mohmp3 Tập tin định dạng theo chucủa Asterisk necircn khi sử dụng caacutec file Mp3 thocircng thường cần coacute sự chuyển đổi thiacutechợp trước khi cheacutep vagraveo thư mục trecircn để sử dụng
sounds
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4472
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4572
Taacutec Giả Lecirc Quốc Toagraven
45
Thư mục tmp sử dụng để lưu trữ những thocircng tin tạm để luocircn bảo đảm khocircnxảy ra tigravenh trạng đọc vagrave viết tập tin cugraveng một luacutec Khi yecircu cầu xử lyacute tập tin chuacuteng thao taacutec trecircn thư mục tmp trước khi lưu vagraveo tập tin điacutech
Tất cả caacutec lời nhắc thoại từ phiacutea người sử dụng vagrave caacutec lời nhắc thoại sử dụ
cho thao taacutec hộp voicemail đều được chứa trong thư mục voicemail Một hộp thưthoại được tạo ra ứng với một maacutey nội bộ trong tập tin voicemailconf sẽ được tra một thư mục con tương ứng cho maacutey nội bộ đoacute tại thư mục voicemail
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4672
Taacutec Giả Lecirc Quốc Toagraven
46
5 varrun
Thư mục varrun chứa thocircng tin process ID(pid) cho tất cả caacutec tiến trigravenh đang
hoạt động trong hệ thống bao gồm cả Asterisk Lưu yacute lagrave ứng với mỗi hệ điều hagravethư mục varrun coacute thể khaacutec
6 varlogasterisk
Thư mục varlogasterisk lagrave nơi Asterisk chứa tất cả caacutec tập tin nhật kyacute haycograven gọi lagrave tập tin log Chuacuteng ta coacute thể tuỳ biến caacutec loại thocircng tin được lưu trong caacutec
tập tin log khaacutec nhau qua tập tin cấu higravenh loggerconf đặt tại thư mục etcasterisk7 varlogasteriskcdr-csv
Thư mục varlogasteriskcdr-csv được sử dụng để lưu chi tiết cuộc gọi CDRThocircng tin mặc định về chi tiết thocircng tin cuộc gọi lưu trữ trong tập tin MasterCVSnhưng thường thigrave ứng với mỗi matilde accountcode sẽ tạo một thư mục riecircng để lưu ctiết cuộc gọi cho maacutey đoacute
5 Một số lệnh thao taacutec trecircn hệ thống asterisk
Asterisk coacute hai thagravenh phần được xacircy dụng tiacutech hợp với nhau vagrave chạy songsong nhau
Asterisk Server bigravenh thường chạy ở chế độ nền(background) giống caacutec sevicestrong window
Asterisk Client ở chế độ dograveng lệnh CLI giao tiếp với Asterisk Server thực thicaacutec lệnh để kiểm tra hay xem caacutec thocircng tin của server
Để Chạy vagrave dừng Asterisk ở chế độ nền chuacuteng ta thực hiện lệnh sau
etcinitdasterisk (start|stop)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4772
Taacutec Giả Lecirc Quốc Toagraven
47
Một khi Asterisk đatilde chạy chuacuteng ta coacute thể chuyển qua chế độ CLI từ dấu nhắlệnh của linux như sau
asterisk ndashr
Khi vagraveo chế độ lệnh nếu muốn thoaacutet về lại dấu nhắc linux chuacuteng ta dugraveng lệnh
CLIgtexit
Caacutec lệnh cơ bản thực hiện tại CLIgt
Bất cứ khi nagraveo chỉnh sửa caacutec tập tin cấu higravenh chuacuteng ta đều cần phải nạp lại đcaacutec thay đổi coacute hiệu lực điều đoacute thực hiện bằng lệnh
CLIgtreload
Bậc chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 debug
CLIgt SIP debug
Tắt chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 no debug
CLIgt SIP no debug
Hiển thị caacutec trạng thaacutei thocircng tin của users peers vagravechannels của SIP hoặc IAX2
CLIgt sip show users
CLIgt sip show peers
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4872
Taacutec Giả Lecirc Quốc Toagraven
48
CLIgt sip show channels
CLIgt iax2 show peers
CLIgt iax2 show users
CLIgt iax2 show channels
Đến thời điểm nagravey coacute thể noacutei chuacuteng ta đatilde hoagraven thagravenh cagravei đặt hệ thốngAsterisk cagravei đặt xong mới lagrave bước mở đầu để cho hệ thống Asterisk hoạt động vtừng ứng dụng cụ thể chuacuteng sẽ tiếp tục thực hiện caacutec giai đoạn được xem lagrave qutrọng nhất trong việc triển khai hệ thống Asterisk đoacute lagrave giai đoạn cấu higravenh hệ thốnlecircn kế hoạch Diaplan chương cograven lại đều nhắm đến mục tiecircu nagravey
4 CẤU HIgraveNH HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Sau khi hoagraven tất phần cagravei đặt hệ thống asterisk một bước quan trọng tiếp thelagrave cấu higravenh hệ thống coacute thể noacutei đacircy lagrave bước quan trọng nhất của việc khiển khai thống đến với từng ứng dụng cụ thể Trong chương nagravey xin giới thiệu caacutei nhigraven đầtiecircn về việc cấu higravenh trước khi đi sacircu hơn ở những chương sau những gigrave giới thiệ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4972
Taacutec Giả Lecirc Quốc Toagraven
49
trong chương nagravey lagrave nền moacuteng cơ bản nhưng đủ để hiểu lagravem thế nagraveo hệ thống coacute thoạt động được nội dung chiacutenh bao gồm
+ Thao taacutec cấu higravenh trecircn hệ thống tập tin của asterisk
+ Caacutech cagravei đặt phần mềm softphone trecircn cocircng nghệ sip
+ Cấu higravenh cho hai maacutey softphone liecircn lạc với nhau
+ Cấu higravenh phaacutet thocircng điệp
+ Quay số qua Sip vagrave mạng PSTN
2 Tập Tin cấu higravenh
Tất cả caacutec file cấu higravenh cho hệ thống asterisk đều nằm tại thư mục etcasterisngoại trừ file zaptelconf cấu higravenh cho phần cứng TDM nằm tại thư mục etc caacutecthức cấu higravenh giống như tập tin ini của window vậy Caacutec nội dung sau dấu chấm phảy lagrave nội dung chuacute thiacutech trong file cấu higravenh giống như chuacute thiacutech trong ngocircn ngữ
lập trigravenh C lagrave dấu Tất cả caacutec khoảng trắng trong tập tin đều được bỏ qua khocircng yacute nghĩa trong file cấu higravenh
Trong file cấu higravenh cograven coacute hai pheacutep gaacuten rất thường xuyecircn được sử dụng pheacutep gaacuten ldquo=rdquo lagrave dugraveng cho việc gaacuten caacutec biến cograven pheacutep gaacuten ldquo=gtrdquo dugraveng cho việc gaacutencaacutec đối tượng sau đacircy lagrave một viacute dụ cho file cấu higravenh
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5072
Taacutec Giả Lecirc Quốc Toagraven
50
Đacircy lagrave caacutec dograveng chuacute thiacutech
[section]
Key=value gaacuten giaacute trị cho biến
[section2]
Key=gtobject Gaacuten giaacute trị cho đối tượng
Cuacute phaacutep thực hiện giống nhau cho tất cả caacutec file cấu higravenh nhưng coacute vagravei kiểukhaacutec nhau cho mỗi file cầu higravenh dựa vagraveo thức caacutech hoạt động của chuacuteng
3 Caacutec kiểu ảnh hưởng trong tập cấu higravenh
Coacute ba kiểu caacutech thức hoạt động của tập tin cấu higravenh như sau
Kiểu Caacutech hoạt động File cầu higravenh Viacute dụ
S i m p l eGroup
Coacute hiệu lực trecircntừng dograveng trongfile
Extensionconf
Exten=gt4001dial(sip400)
O p t i o ninheritance
Dograveng khai baacuteosau thừa kếnhững thocircng sốkhai baacuteo trước
Zapataconf [channels]
Context=From_PSTN
Signalling=fxs_ks
Group=1Channel=gt1
C o m p l e xEntity
Mỗi entity nhậnmột ngữ cảnh
sipconf
iaxconf
[cisco]
Type=friend
Secret=12345
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5172
Taacutec Giả Lecirc Quốc Toagraven
51
Host=192168165
Context=NoiBo
[xten]
Type=friend
Secret=6789
Host=dynamic
Context=NoiBo
1 Simple Group
Đacircy lagrave kiểu cấu higravenh đơn giản nhất thường sử dụng trong caacutec fileextentionconf meetmeconf voicemailconf tương ứng với mỗi dograveng khai baacuteo lagravemột đối tượng coacute yacute nghĩa trecircn dograveng đoacute
Viacute dụ
Extentionconf [section]
object1=gt op1op2op3
object2=gt op1bop2bop3b
Trong viacute dụ trecircn mỗi dograveng tương ứng với caacutec toaacuten tử khaacutec nhau object1 coacute caacutectoaacuten từ op1 op2 op3 trong khi đoacute object2 lại coacute caacutec toaacuten từ op1b op2b op3b
2 Option inheritance
Đacircy lagrave cấu higravenh kiểu thừa kế thường được cấu higravenh trong caacutec file zapataconfagentconf với kiểu cấu higravenh nagravey thigrave caacutec dograveng phiacutea dưới coacute thể thừa kế caacutec thocircng sdograveng phiacutea trecircn tương ứng với mỗi section caacutec dograveng phiacutea dưới coacute thể thay đổi caacutecthocircng số cho tươngứng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5272
Taacutec Giả Lecirc Quốc Toagraven
52
Viacute dụ
Extentionconf
[section]
Op1=bas
Op2=adv
Object1=gt1
Op1=int
Object1=gt2
Với cấu higravenh trecircn coacute thể giải thiacutech như sau object1=gt1 thừa hưởng hai thocircngsố ở phiacutea trecircn đoacute lagrave op1=bas vagrave op2=adv trong khi đoacute đối với object1=gt2 với thocircngsố op1=int được khai baacuteo lại necircn object1=gt2 được thừa kế từ hai thocircng số op1=invagrave op2=adv
3 Complex Entity
Với cấu kiểu nagravey được tổ chức thagravenh nhiều entity ứng với mỗi entity coacute nhiềthocircng số được khai baacuteo mỗi entity ở đacircy chiacutenh lagrave caacutec section để khai baacuteo caacutec kecircnhthocircng tin Cấu higravenh thường được sử dụng trong caacutec file iaxconf sipconf
Viacute dụ
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5372
Taacutec Giả Lecirc Quốc Toagraven
53
[entity1]
Op1=value1
Op2=value2
[entity2]
Op1=value3
Op2=value4
Entity1 coacute caacutec giaacute trị value1 vagrave value2 cho thocircng số op1 vagrave op2 trong khi đoacute
cũng lagrave thocircng số op1 vagrave op 2 nhưng coacute caacutec giaacute trị khaacutec lagrave value3 vagrave value4 choentity2
4 Cấu higravenh giao tiếp với mạng PSTN
1 Ngữ cảnh kết nối
Để kết nối với mạng PSTN chuacuteng ta cần phải coacute một card TDM với Cổng
FXO vagrave một đường dacircy điện thoại hoặc coacute thể lagrave một tổng đagravei nội bộ PBX Cnhiều nhagrave sản xuất phần cứng khaacutec nhau nhưng trong phần cấu higravenh dưới dacircy lagrave cấhigravenh cho card zapata TDM01B của digium (card nagravey hiện nay giaacute baacuten khoảng175$)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2672
Taacutec Giả Lecirc Quốc Toagraven
26
riecircng Giao thức SIP thực hiện chức năng thiết lập vagrave baacuteo hiệu cuộc gọi khi noacutei đế baacuteo hiệu cuộc gọi lagrave chỉ định caacutec tiacuten hiệu baacuteo hiệu như tiacuten hiệu mời quay số tiacutehiệu bậnhellip
2 Proxy server
Mặc dầu hai thiết bị SIP coacute thể liecircn lạc trực tiếp với nhau để khởi tạo cuộgọi nhưng trong giao thức SIP cograven coacute chức năng Proxy để linh hoạt hơn trong thiếlập cuộc gọi Proxy Server sẽ lagravem nhiệm vụ ghi nhận tất cả caacutec số điện thoại đư phiacutea client đăng kyacute đến qua bản tin ldquoRegistrationrdquo Khi một client khaacutec thực hiện
cuộc gọi thigrave thực sự Client đoacute khocircng biết số điện thoại cần gọi đang ở đacircu necircn thocircnqua Proxy server để tigravem kiếm thiết lập cuộc gọi
+
Higravenh Đăng kyacute từ Client đến SIP Proxy Với Giao thức SIP đường baacuteo hiệu vagravethoại riecircng
3 RTP vaacute NAT
Caacutec cuộc gọi trecircn Internet với giao thức SIP được chia thagravenh caacutec goacutei thoại vagraveđược chuyển qua giao thức RTP(Real Time Protocol) RTP lagrave giao thức khocircng chỉthực hiện chuyển caacutec goacutei thoại qua Internet magrave cograven coacute cả video nữa Một cuộc gọ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2772
Taacutec Giả Lecirc Quốc Toagraven
27
thocircng thường coacute hai hướng thocircng tin lagrave nhận vagrave phaacutet RTP lagravem việc chuyển caacutec goacutedữ liệu thoại cũng trecircn hai hướng
NAT Network Address Translators lagrave một trở ngại lớn trong giao thức RTPMạng sử dụng NAT lagrave một mạng chia sẻ nhiều địa chỉ IP nội bộ với một địa chỉ ICocircng cộng để kết nối với thế giới becircn ngoagravei NAT dugraveng để chia sẻ nhiều maacutey tiacutentrong mạng LAN nội bộ sử dụng được Internet nhưng cũng chiacutenh vigrave thế magrave caacutec maacutetiacutenh nội bộ gặp khoacute khăn trong việc thực hiện cuộc gọi VoIP qua Internet Đoacute chiacutenhlagrave vấn để trở ngại khi truyền thoại qua giao thức RTP
Higravenh Minh họa hoạt động của NAT
Trong Giao thức RTP như chuacuteng ta đatilde biết đoacute lagrave thoại được chuyển trecircn haiđường khaacutec nhau lagrave đường phaacutet vagrave đường thu Vấn đề NAT nằm ở chỗ tiacuten hiệthoại từ becircn ngoagravei vagraveo becircn trong qua giao thức RTP khocircng thực hiện được cograven chiềungược lại thigrave thực hiện tốt Hay noacutei caacutech khaacutec vấn đề NAT lagravem cho caacutec cuộc gọi t
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2872
Taacutec Giả Lecirc Quốc Toagraven
28
Internet đagravem thoại vagraveo caacutec maacutey nội bộ qua NAT thigrave khocircng nghe được cograven trongtrường hợp caacutec cuộc gọi từ caacutec maacutey nội bộ ra caacutec maacutey internet thigrave nghe tốt
Vấn đề NAT trecircn được giải quyết trong Asterisk bằng việc khai baacuteo thocircng số NAT=yes trong cấu higravenh kecircnh giao thức SIP
4 IAX ndash Inter Asterisk eXchange
IAX lagrave giao thức baacuteo hiệu Voip được phaacutet triển bởi taacutec giả của phần mềmAsterisk để khắc phục những hạn chế trong giao thức SIP Khocircng giống như giathức SIP chuyển tải thoại vagrave baacuteo hiệu trecircn hai kecircnh khaacutec nhau (out of band) IAXchuyển tải thoại vagrave baacuteo hiệu trecircn cugraveng một kecircnh(in band) IAX giải quyết được vấđề NAT đề cập trecircn phần giao thức SIP Mặc khaacutec IAX lagrave giao thức tối ưu trongviệc sử dụng băng thocircng cho pheacutep nhiều goacutei dữ liệu thoại trecircn cugraveng một IP headecơ chế chuyển tải nhiều cuộc gọi trecircn cugraveng một goacutei IP được gọi lagrave trung kế(Trunk)
Coacute thể giải thiacutech thecircm cơ chế trung kế như sau Giả sử Tocirci cần gửi 5 bức thtới người bạn của Tocirci Tocirci sẽ coacute hai higravenh thức để thực hiện thứ nhất lagrave mỗi bức tTocirci bỏ vagraveo một phong bigrave vậy tổng cộng tocirci phải sử dụng 5 phong bigrave để gửi đi 5 bứthư Caacutech thứ hai lagrave Tocirci bỏ 5 bức thư vagraveo 1 phong bigrave vagrave gửi đi vậy tổng cộng Tocircchỉ tốn 1 phong bigrave Qua phacircn tiacutech trecircn rotilde ragraveng việc 5 bức thư vagraveo một phong bigrave sẽtiết kiệm hơn so với 5 bức thư với 5 phong biacute Cơ chế trecircn cũng giống như nhiềcuộc gọi được đoacuteng thagravenh goacutei vagrave chuyển đi trecircn đường trung kế
Toacutem lại IAX lagrave giao thức dagravenh cho VoIP mới nhất cho đến thời điểm nagravey vớinhiều ưu điểm hấp dẫn như
+ Tối thiểu sử dụng băng thocircng
+ Trong suốt với NAT
+ Hiệu quả với cơ chế trung kế
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2972
Taacutec Giả Lecirc Quốc Toagraven
29
8 Thiết Bị VoIP
1 Voip Phone
Đacircy lagrave thiết bị phần cứng kết nối với mạng VoIP giống như maacutey điện thoại đ bagraven thocircng thường nhưng dagravenh cho VoIP cần phải thực hiện cấu higravenh trước khi sửdụng
Lưu yacute một số tiacutenh năng khi thực hiện mua thiết bị điện thoại VoIP
+ Low bandwidth hỗ trợ Codec nagraveo G729 lagrave tốt nhất hiện nay
+ Web Interface Phải coacute giao tiếp thiết lập cấu higravenh thacircn thiện dễ sử dụng
+ Audio Interface Coacute speaker phone hay khocircng
Giaacute thagravenh của điện thoại voip IP đắc hơn điện thoại thocircng thường giaacute khoảntrecircn dưới 100$ một caacutei
Higravenh Maacutey Điện Thoại VoIP
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3072
Taacutec Giả Lecirc Quốc Toagraven
30
2 Softphone
Lagrave một phần mềm được cagravei trecircn maacutey tiacutenh thực hiện tất cả caacutec chức năng giốn
như thiết bị điện thoại Voip cần lưu yacute khi sử dụng softphone lagrave maacutey tiacutenh phải ccard acircm thanh headphone vagrave firewall khocircng bị khoacutea
Sử dụng softphone với hệ thống Asterisk necircn dugraveng softphone với cocircng nghệgiao thức mới dagravenh cho Asterisk đoacute lagrave IAX
Higravenh Điện Thoại Softphone
3 Card giao tiếp với PSTN
Muốn cho pheacutep caacutec maacutey điện thoại nội bộ trong hệ thống Asterisk kết nối vthực hiện cuộc gọi với mạng PSTN chuacuteng ta cần phải coacute thiết bị phần cứng tươthiacutech Thiết bị phần cứng sử dụng cho hệ thống Asterisk do chiacutenh taacutec giả lập cocircng
Digium phacircn phối đacircy cũng chiacutenh lagrave yacute tưởng lớn trong việc phacircn phối phần mềmAsterisk lagrave hệ thống nguồn mở sử dụng miễn phiacute
Thiết bị phần cứng thường kyacute hiệu bắt đầu bằng cụm từ TDMxyB trong đoacute lagrave số lượng port FXS y lagrave số lượng port FXO giaacute trị tối đa của x vagrave y lagrave 4 viacute dụcard TDM22B coacute nghĩa lagrave coacute 2 fort FXS vagrave 2 port FXO
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3172
Taacutec Giả Lecirc Quốc Toagraven
31
Higravenh Card TDM22B gồm 4 port 2 FXS vagrave 2 FXO
4 ATA Analog Telephone Adaptors
ATA lagrave thiết bị kết nối với điện thoại Analog thocircng thường đến mạng VoIPmột thiết bị ATA gồm coacute hai loại port RJ-11 để kết nối với maacutey điện thoại analo
thocircng thường cograven RJ-45 để kết nối với mạng VoIP
ATA thực sự lagrave thiết bị FXS chuyển đổi tiacuten hiệu Analog sang tiacuten hiệu số sửdụng cho mạng VoIP để tận dụng maacutey điện thoại Analog necircn trang bị thiết bị ATAthay vigrave phải trang bị điện thoại VoIP
Thiết bị ATA sử dụng với giao thức IAX được Digium phacircn phối lagrave thiết bịATA được sử dụng rộng ratildei với Asterisk coacute tecircn gọi lagrave IAXy
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3272
Taacutec Giả Lecirc Quốc Toagraven
32
Higravenh Thiết bị ATA
9 Codecs
Thuật Toaacuten codecs(CompressorDe-compressor) lagrave một tập caacutec quy luật đượcsử dụng để chuyển đổi caacutec tiacuten hiệu thoại dạng Analog sang tiacuten hiệu số vagrave ngược lạ
Coacute nhiều thuật toaacuten codec để thực hiện chuyển đổi tiacuten hiệu analog sang tiacuten
hiệu số dạng nhị phacircn (01) như G711 GSM G729hellipỨng với mỗi thuật toaacuten coacutenhững ưu điểm riecircng đặc biệt lagrave việc tối ưu sử dụng băng thocircng trecircn đường truyềMục tiecircu cuối cugraveng lagrave caacutec thuật toaacuten đưa ra phải đảm bảo chất lượng cuộc gọi nhvagrave tiết kiệm băng thocircng nhất
G729 lagrave thuật toaacuten codec tốt nhất hiện nay trong hệ thống VoIP Với hệthống Asterisk để sử dụng thuật toaacuten nagravey cần phải mua bản quyền sử dụng vigrave đacircy
codec khocircng miễn phiacute sử dụng
10 QoS ndash Quality of Service
Caacutec yếu tố ảnh hưởng đến chất lượng của dịch vụ đối với VoIP đoacute lagrave caacuteyếu ảnh hưởng đến chất lượng tiacuten hiệu thoại
1 Độ trễ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3372
Taacutec Giả Lecirc Quốc Toagraven
33
Thoại lagrave dịch vụ mang tiacutenh thời gian thực rất cao vigrave thế trễ lagrave yếu tố ảnhhưởng rất lớn đến chất lượng dịch vụ Trễ được định nghĩa lagrave khoảng thời gian tiacute
từ luacutec tiacuten hiệu thoại đi từ miệng người noacutei tới tai người nghe Trễ lagrave yếu tố khocircnthể traacutenh khỏi độ trễ đối với mạng điện thoại truyền thống (mạng PSTN) khoảng50ms đến 70ms theo khiến nghị của ITU-T để đảm bảo chất lượng cho hệ thốVoIP thigrave độ trễ từ đầu phaacutet tới đầu thu hoặc ngược lại khocircng được vượt quaacute 150mkhi magrave độ trễ vượt quaacute 400ms đến 500ms thigrave khocircng thể chấp nhận được
Caacutec nguyecircn nhacircn gacircy ra trễ bao gồm Trễ trecircn mạng lưới trễ trecircn bộ mả hoacutea
giải matilde trễ trong quaacute trigravenh đoacuteng goacutei trễ bộ đệm trễ xử lyacute tiếng noacuteihellip2 Độ trượt(Jitter)
Nguyecircn nhacircn gacircy ra trượt lagrave goacutei tiacuten hiệu thoại trong quaacute trigravenh truyền từnguồn đến điacutech sẽ gặp phải những điều kiện khaacutec nhau trecircn mạng lưới do đoacute thườđến điacutech với những khoảng trễ khaacutec nhau Đacircy lagrave tiacutenh khocircng đồng nhất của trễ Mnguyecircn nhacircn khaacutec của trượt đối với ứng dụng PC to PC lagrave do việc sử dụng hệ điề
hagravenh phi thời gian thực caacutec goacutei tin thoại phải đợi hệ điều hagravenh xử lyacute trong nhữnkhoảng thời gian khaacutec nhau khi magrave hệ điều hagravenh đang phải xử lyacute đối với caacutec ứndụng khaacutec
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3472
Taacutec Giả Lecirc Quốc Toagraven
34
Higravenh Nguyecircn nhacircn xảy ra trượt
Để loại bỏ tiacutenh khocircng đồng nhất của trễ người ta thiết kế caacutec bộ đệm t(Jitter Buffer) tại nơi đến của caacutec goacutei tin caacutec goacutei tin đến với caacutec khoảng caacutech khaacutecnhau về thời gian được lưu tại bộ đệm rồi phaacutet khỏi bộ đệm với khoảng trễ n
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3572
Taacutec Giả Lecirc Quốc Toagraven
35
nhau Khi bộ đếm coacute kiacutech thước cagraveng lớn thigrave khả năng loại bỏ tiacutenh khocircng đồng nhấcagraveng lớn tuy nhiecircn việc sử dụng bộ đệm sẽ gacircy ra hiện tượng trễ trong ứng dụnthoại do đoacute cần coacute bagravei toaacuten cacircn đối giữa độ trễ vagrave độ trượt
Ngoagravei 2 nguyecircn nhacircn trecircn cograven một số nguyecircn nhacircn nữa ảnh hưởng đến chấtlượng thoại như độ mất goacutei giới hạn băng thocircng tiếng vọng
3 CAgraveI ĐẶT ASTERISK
1 Cagravei đặt Asterisk
1 Download vagrave bung neacuten
Để cagravei đặt Asterisk đầu tiecircn chuacuteng ta cần phải cagravei đặt hệ điều hagravenh linux trecircnmaacutey tiacutenh của migravenh Coacute thể cagravei hệ điều hagravenh Linux Fedora CentOS Redhat hoặcDebian Caacutec goacutei phần mềm phụ thuộc phải coacute trong hệ điều hagravenh Linux trước khcagravei Asterisk bao gồm
bison
gcc
kernel-source
libtermcap-devel
ncurses-devel
openssl096b
openssl-devel
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3672
Taacutec Giả Lecirc Quốc Toagraven
36
Sau khi hoagraven tất caacutec bước trecircn chuacuteng ta tiến hagravenh download phần mềmasterisk với phiecircn bản mới nhất
cd usrsrc
wgetftpftpdigiumcompubasteriskasterisk-140targz
wgetftpftpdigiumcompubasteriskasterisk-addons-140targz
wgetftpftpdigiumcompubasteriskasterisk-sounds-140targz
wgethttpftpdigiumcompubzaptelzaptel-140targz
wgethttpftpdigiumcompublibprilibpri-140targz
Việc download coacute thể nhanh hay chậm tugravey vagraveo tốc độ trecircn đường internet saukhi download hoagraven thagravenh chuacuteng ta tiến hagravenh bung neacuten caacutec goacutei ra thư mục chỉ định
tar ndashxzvf asterisk-140targz
tar ndashxzvf asterisk-addons-140targz
tar ndashxzvf asterisk-sounds-140targz
tar ndashxzvf zaptel-140targz
tar ndashxzvf libpri-140targz
Giải neacuten xong chuacuteng ta nhớ thực hiện lệnh
ln ndashs usrsrcasterisk-140 usrsrcasterisk lệnh nagravey để bảo đảm goacuteildquoaddonsrdquo được biecircn dịch đuacuteng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3772
Taacutec Giả Lecirc Quốc Toagraven
37
Bacircy giờ tới phần chuacuteng ta biecircn dịch caacutec goacutei đatilde giải neacuten ở trecircn trước tiecircn lagrave goacuteizaptel kế đến lagrave libpri sau cugraveng lagrave goacutei Asterisk
2 Cagravei đặt goacutei Zaptel
Goacutei zaptel sẽ chứa tại thư mục usrsrczaptel Đaacutenh lệnh như dưới đacircy để cagraveđặt
cd usrsrczaptel
make clean make install
Lệnh nagravey thực hiện khoảng 2 phuacutet tugravey vagraveo tốc độ maacutey tiacutenh cagravei đặt sau khicagravei đặt xong sẽ trở lại dấu nhắc lệnh vagrave hiển thị một loạt caacutec thocircng baacuteo trong đoacute một số bản tin lỗi magrave chủ yếu lagrave yecircu cầu cagravei đặt caacutec goacutei phụ thuộc đatilde liệt kecirc ở trecircnếu caacutec goacutei trecircn chưa được cagravei đặt
Goacutei zaptel nagravey chứa caacutec driver cho caacutec phần cứng kết giao tiếp với asterisk
do Digium phacircn phối vagrave một số thư viện cho việc coacute thực hiện giao tiếp với phầcứng hay khocircng
Để Asterisk coacute thể chạy cugraveng với khởi động của maacutey tiacutenh chuacuteng ta cần thựchiện lệnh
make config
Lệnh nagravey sẽ tạo ra script chegraven module zaptel vagraveo kernel vagrave chạy ztconfig vagraveoluacutec khởi động maacutey Trong Redhat script nagravey sẽ được cheacutep vagraveo etcinitd chạy ở mức 3
3 Cagravei đặt goacutei libpri
Kế đến chuacuteng ta biecircn dịch goacutei libpri tại thư mục usrsrclibpri bằng lệnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3972
Taacutec Giả Lecirc Quốc Toagraven
39
make config
3 Cagravei đặt TrixBox
1 Giới thiệu
TRIXBOX được phaacutet triển từ nhacircn của ứng dụng Asterisk được tổng hợp từmột số thagravenh phần chiacutenh được phaacutet triển bởi cộng đồng phaacutet triển nguồn mAsterisk dưới bản quyền GPL Trixbox bao gồm những thagravenh phần chiacutenh cho việcấu higravenh ứng dụng thống kecirc tigravenh trạng hoạt động hệ thống lưu trữ dự phograveng v
nhacircn lagrave hệ điều hagravenh CentOS một phiecircn bản khaacutec của Redhat tất cả kết hợp vớnhau tạo thagravenh một goacutei hoagraven chỉnh Khi cagravei goacutei nagravey vagraveo maacutey tiacutenh thigrave coacute thể sử dụngnhư một tổng đagravei PBX
Caacutec thagravenh phần chiacutenh trong goacutei TRIXBOX lagrave
Asterisk PBX Thagravenh phần chiacutenh của hệ thống Trixbox
CentOS Một phiecircn bản Linux khaacutec của Redhat hoagraven toagraven miển phiacute sửdụng Lagrave nhacircn chiacutenh cho Trixbox
SugarCRM Hệ thống quan hệ khaacutech hagraveng CRM
A2Billing ndash Lagrave thagravenh phần dagravenh cho việc xacircy dựng hệ thống điện thoạitrả trước hay cograven gọi lagrave điện thọai thẻ (Calling Card)
Flash Operator Panel Bảng điều khiển giaacutem saacutet tigravenh trạng hoạt độngcủa caacutec maacutey điện thoại trong hệ thống
Web MeetMe Control Quản lyacute triển khai hệ thống điện thoại hội nghị
FreePBX Đacircy lagrave cocircng cụ với giao diện web dagravenh cho việc cấu higravenh hệthống Asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4072
Taacutec Giả Lecirc Quốc Toagraven
40
Hệ thống Lưu trữ dự phograveng vagrave thống kecirc Lagrave thagravenh phần của TRIXBOXcung cấp caacutec cocircng cụ cần thiết cho việc bảo trigrave bảo dưỡng hệ thống
Hệ thống Apache-Php-Mysql dagravenh cho giải phaacutep Webserver của hệthống
2 DOWNLOAD VAgrave LẮP ĐẶT TRIXBOX
Địa chỉ downloadhttpsourceforgenetprojectsasteriskathome
Khi download xong file Trixboxiso Hatildey dugraveng file nagravey Burn vagraveo CD ( xinlưu yacute lagrave dugraveng Nero hoặc chương trigravenh cheacutep đĩa ưa thiacutech rồi burn vagraveo cd_romchứ khocircng phải cheacutep file đoacute vagraveo cd_rom)
Sau khi coacute CD Hatildey boot từ CD nagravey để cagravei đặt trixbox
Chuacute yacute dữ liệu trecircn đĩa cứng sẽ bị xoacutea sạch để cagravei đặt trixbox Nếu trongđĩa cứng cograven dữ liệu hatildey backup tất cả trước khi tiến hagravenh lắp đặt trixbox
Tới đacircy lần lượt caacutec magraven higravenh chỉ dẫn sẽ hiện ra vagrave cứ theo hướng dẫn magrave cagraveđặt Sau khi cagravei đặt xong chuacuteng ta dugraveng Username root vagrave password password đểđăng nhập hệ thống
3 Cấu higravenh địa chỉ IP cho card mạng
Thiết lập địa chỉ IP bằng caacutech gotilde lệnh
netconfig
Chọn OK để thiếp lập
Nếu trong mạng coacute hỗ trợ DHCP thigrave hatildey chọn mục nagravey cograven nếu khocircng hatildeynhập địa chỉ IP tĩnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4172
Taacutec Giả Lecirc Quốc Toagraven
41
IP 19216801
Netmask 2552552550
Gateway 19216893254 ngotilde ra becircn ngoagravei
Primary nameserver 19216893200 thiết lập nếu coacute
Chọn OK để chấp nhận caacutec thiết lập trecircn
Sau khi hoagraven tất hatildey lagravem cho thiết lập coacute hiệu lực bằng caacutech reset lại
maacutey tiacutenh hoặc dugraveng lệnh sau
Service network stop
Service network start
Đến đacircy xem như cagravei đặt hoagraven tất bacircy giờ để cấu higravenh được Asterisk chuacutengta vagraveo một magravey khaacutec vagrave mở Internet Explorer hoặc một trigravenh duyệt web bất kỳ
nhập vagraveohttp19216801đatilde cấu higravenh ở trecircn vagrave tiến hagravenh cấu higravenh hệ thốngvới tagravei khoảng username maint vagrave password password
4 Tổ Chức Thư Mục của Asterisk
Asterisk sử dụng nhiều thư mục trecircn hệ thống linux để quản lyacute caacutec khiacutea cạnkhaacutec nhau của hệ thống như nghi nhận bản tin thoại caacutec bản tin nhắc thoại hoặcaacutec tập tin cấu higravenh Phần nagravey sẽ trigravenh bagravey caacutec thư mục chiacutenh yếu được tạo ra tronquaacute trigravenh lắp đặt vagrave được cấu higravenh trong tập tin Asteriskconf
1 etcasterisk
Thư mục etcasterisk chứa tất cả caacutec tập tin cấu higravenh của hệ thốngAsterisk ngoại trừ tập tin Zaptelconf được đặt tại thư mục etc Phần cứnZaptel đầu tiecircn được phaacutet triển bởi Jim Dixon thuộc nhoacutem Zapata Telephony
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4272
Taacutec Giả Lecirc Quốc Toagraven
42
Group để giao tiếp giữa maacutey tiacutenh với mạng điện thoại magrave Asterisk lại sửdụng phần cứng nagravey với lyacute do đoacute magrave file cấu higravenh zaptelconf khocircng nằmtrong thư mục etcasterisk
2 usrlibasteriskmodules
Thư mục usrlibasteriskmodules chứa tất cả caacutec module cần thiết đểasterisk hoạt động Becircn trong thư mục lagrave caacutec ứng dụng khaacutec nhau caacutec codeccaacutec định dạng acircm thanh(format) vagrave caacutec kecircnh thocircng tin(channel) Theo mặc địnhAsterisk sẽ nạp tất cả caacutec module vagraveo luacutec khởi động Chuacuteng ta coacute thể khocircng cho
nạp một module bất kỳ bằng caacutech khocircng khai baacuteo sử dụng trong tập tinmodulesconf Lưu yacute khi khocircng cho nạp module thigrave phải biết chắc module đoacutekhocircng lagravem ảnh hưởng hoạt động của asterisk nếu khocircng lỗi sẽ xuất hiện
3 varlibasterisk
Thư mục varlibasterisk chứa tập tin astdb vagrave một số thư mục con Tập tinastdb định vị thocircng tin cơ sở dữ liệu của Asterisk giống như Microsoft WindowsRegistry
Caacutec thư mục con của thư mục varlibasterisk bao gồm
agi-bin
Thư mục agi-bin chứa caacutec script của người dugraveng magrave Asterisk coacute thểđịnh vị sử dụng qua caacutec ứng dụng AGI
AGI lagrave phần giao tiếp với ngocircn ngữ lập trigravenh script để thực hiện mộtsố cocircng việc của Asterisk từ becircn ngoagravei
firmware
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4372
Taacutec Giả Lecirc Quốc Toagraven
43
Thư mục firmware chứa một số phần dẻo(firmware) cho caacutec thiết bịkhaacutec nhau tương thiacutech với Asterisk Hiện tại chỉ coacute thư mục con iax chứa
firmware cho thiếy bị IAXy của Digium IAXy lagrave thiết bị ATA sử dụng giaothức IAX
images
Caacutec ứng dụng thocircng tin với caacutec kecircnh hỗ trợ ảnh images thigrave sử dụng thư mụcnagravey Nhưng hiện tại caacutec kecircnh thocircng tin hầu như khocircng hỗ trợ truyền ảnh images necircthư mục nagravey cũng hiếm khi được sử dụng Tuy nhiecircn nếu caacutec thiết bị coacute hỗ trợ ththư mục nagravey trở necircn hiệu dụng
keys
Asterisk coacute thể sử dụng hệ thống khoaacute publicprivate để xaacutec minh caacutec kết nốgiữa caacutec server Asterisk thocircng qua chữ kyacute điện tử RSA Nếu đặt một khoaacute publicvagraveo thư mục keys thigrave kết nối của server đầu becircn kia coacute thể được xaacutec minh bằn
kecircnh thocircng tin coacute hỗ trợ đối với Asterisk thigrave kecircnh giao thức IAX hỗ trợ loại xaacutecminh nagravey Một khoaacute private khocircng bao giờ cocircng bố chuacuteng ta chỉ cocircng bố khoaacute public đến với server cần nối đến sau đoacute sẽ được xaacutec minh với khoaacute private nagravey Chai khoaacute public vagrave private được lưu với đuocirci pub vagrave key đặt tại thư mục keys
mohmp3
Khi cấu higravenh Asterisk sử dụng tiacutenh năng Music on Hold tiacutenh năng hoạt độngsẽ thực hiện lấy caacutec tập tin mp3 tại thư mục mohmp3 Tập tin định dạng theo chucủa Asterisk necircn khi sử dụng caacutec file Mp3 thocircng thường cần coacute sự chuyển đổi thiacutechợp trước khi cheacutep vagraveo thư mục trecircn để sử dụng
sounds
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4472
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4572
Taacutec Giả Lecirc Quốc Toagraven
45
Thư mục tmp sử dụng để lưu trữ những thocircng tin tạm để luocircn bảo đảm khocircnxảy ra tigravenh trạng đọc vagrave viết tập tin cugraveng một luacutec Khi yecircu cầu xử lyacute tập tin chuacuteng thao taacutec trecircn thư mục tmp trước khi lưu vagraveo tập tin điacutech
Tất cả caacutec lời nhắc thoại từ phiacutea người sử dụng vagrave caacutec lời nhắc thoại sử dụ
cho thao taacutec hộp voicemail đều được chứa trong thư mục voicemail Một hộp thưthoại được tạo ra ứng với một maacutey nội bộ trong tập tin voicemailconf sẽ được tra một thư mục con tương ứng cho maacutey nội bộ đoacute tại thư mục voicemail
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4672
Taacutec Giả Lecirc Quốc Toagraven
46
5 varrun
Thư mục varrun chứa thocircng tin process ID(pid) cho tất cả caacutec tiến trigravenh đang
hoạt động trong hệ thống bao gồm cả Asterisk Lưu yacute lagrave ứng với mỗi hệ điều hagravethư mục varrun coacute thể khaacutec
6 varlogasterisk
Thư mục varlogasterisk lagrave nơi Asterisk chứa tất cả caacutec tập tin nhật kyacute haycograven gọi lagrave tập tin log Chuacuteng ta coacute thể tuỳ biến caacutec loại thocircng tin được lưu trong caacutec
tập tin log khaacutec nhau qua tập tin cấu higravenh loggerconf đặt tại thư mục etcasterisk7 varlogasteriskcdr-csv
Thư mục varlogasteriskcdr-csv được sử dụng để lưu chi tiết cuộc gọi CDRThocircng tin mặc định về chi tiết thocircng tin cuộc gọi lưu trữ trong tập tin MasterCVSnhưng thường thigrave ứng với mỗi matilde accountcode sẽ tạo một thư mục riecircng để lưu ctiết cuộc gọi cho maacutey đoacute
5 Một số lệnh thao taacutec trecircn hệ thống asterisk
Asterisk coacute hai thagravenh phần được xacircy dụng tiacutech hợp với nhau vagrave chạy songsong nhau
Asterisk Server bigravenh thường chạy ở chế độ nền(background) giống caacutec sevicestrong window
Asterisk Client ở chế độ dograveng lệnh CLI giao tiếp với Asterisk Server thực thicaacutec lệnh để kiểm tra hay xem caacutec thocircng tin của server
Để Chạy vagrave dừng Asterisk ở chế độ nền chuacuteng ta thực hiện lệnh sau
etcinitdasterisk (start|stop)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4772
Taacutec Giả Lecirc Quốc Toagraven
47
Một khi Asterisk đatilde chạy chuacuteng ta coacute thể chuyển qua chế độ CLI từ dấu nhắlệnh của linux như sau
asterisk ndashr
Khi vagraveo chế độ lệnh nếu muốn thoaacutet về lại dấu nhắc linux chuacuteng ta dugraveng lệnh
CLIgtexit
Caacutec lệnh cơ bản thực hiện tại CLIgt
Bất cứ khi nagraveo chỉnh sửa caacutec tập tin cấu higravenh chuacuteng ta đều cần phải nạp lại đcaacutec thay đổi coacute hiệu lực điều đoacute thực hiện bằng lệnh
CLIgtreload
Bậc chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 debug
CLIgt SIP debug
Tắt chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 no debug
CLIgt SIP no debug
Hiển thị caacutec trạng thaacutei thocircng tin của users peers vagravechannels của SIP hoặc IAX2
CLIgt sip show users
CLIgt sip show peers
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4872
Taacutec Giả Lecirc Quốc Toagraven
48
CLIgt sip show channels
CLIgt iax2 show peers
CLIgt iax2 show users
CLIgt iax2 show channels
Đến thời điểm nagravey coacute thể noacutei chuacuteng ta đatilde hoagraven thagravenh cagravei đặt hệ thốngAsterisk cagravei đặt xong mới lagrave bước mở đầu để cho hệ thống Asterisk hoạt động vtừng ứng dụng cụ thể chuacuteng sẽ tiếp tục thực hiện caacutec giai đoạn được xem lagrave qutrọng nhất trong việc triển khai hệ thống Asterisk đoacute lagrave giai đoạn cấu higravenh hệ thốnlecircn kế hoạch Diaplan chương cograven lại đều nhắm đến mục tiecircu nagravey
4 CẤU HIgraveNH HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Sau khi hoagraven tất phần cagravei đặt hệ thống asterisk một bước quan trọng tiếp thelagrave cấu higravenh hệ thống coacute thể noacutei đacircy lagrave bước quan trọng nhất của việc khiển khai thống đến với từng ứng dụng cụ thể Trong chương nagravey xin giới thiệu caacutei nhigraven đầtiecircn về việc cấu higravenh trước khi đi sacircu hơn ở những chương sau những gigrave giới thiệ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4972
Taacutec Giả Lecirc Quốc Toagraven
49
trong chương nagravey lagrave nền moacuteng cơ bản nhưng đủ để hiểu lagravem thế nagraveo hệ thống coacute thoạt động được nội dung chiacutenh bao gồm
+ Thao taacutec cấu higravenh trecircn hệ thống tập tin của asterisk
+ Caacutech cagravei đặt phần mềm softphone trecircn cocircng nghệ sip
+ Cấu higravenh cho hai maacutey softphone liecircn lạc với nhau
+ Cấu higravenh phaacutet thocircng điệp
+ Quay số qua Sip vagrave mạng PSTN
2 Tập Tin cấu higravenh
Tất cả caacutec file cấu higravenh cho hệ thống asterisk đều nằm tại thư mục etcasterisngoại trừ file zaptelconf cấu higravenh cho phần cứng TDM nằm tại thư mục etc caacutecthức cấu higravenh giống như tập tin ini của window vậy Caacutec nội dung sau dấu chấm phảy lagrave nội dung chuacute thiacutech trong file cấu higravenh giống như chuacute thiacutech trong ngocircn ngữ
lập trigravenh C lagrave dấu Tất cả caacutec khoảng trắng trong tập tin đều được bỏ qua khocircng yacute nghĩa trong file cấu higravenh
Trong file cấu higravenh cograven coacute hai pheacutep gaacuten rất thường xuyecircn được sử dụng pheacutep gaacuten ldquo=rdquo lagrave dugraveng cho việc gaacuten caacutec biến cograven pheacutep gaacuten ldquo=gtrdquo dugraveng cho việc gaacutencaacutec đối tượng sau đacircy lagrave một viacute dụ cho file cấu higravenh
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5072
Taacutec Giả Lecirc Quốc Toagraven
50
Đacircy lagrave caacutec dograveng chuacute thiacutech
[section]
Key=value gaacuten giaacute trị cho biến
[section2]
Key=gtobject Gaacuten giaacute trị cho đối tượng
Cuacute phaacutep thực hiện giống nhau cho tất cả caacutec file cấu higravenh nhưng coacute vagravei kiểukhaacutec nhau cho mỗi file cầu higravenh dựa vagraveo thức caacutech hoạt động của chuacuteng
3 Caacutec kiểu ảnh hưởng trong tập cấu higravenh
Coacute ba kiểu caacutech thức hoạt động của tập tin cấu higravenh như sau
Kiểu Caacutech hoạt động File cầu higravenh Viacute dụ
S i m p l eGroup
Coacute hiệu lực trecircntừng dograveng trongfile
Extensionconf
Exten=gt4001dial(sip400)
O p t i o ninheritance
Dograveng khai baacuteosau thừa kếnhững thocircng sốkhai baacuteo trước
Zapataconf [channels]
Context=From_PSTN
Signalling=fxs_ks
Group=1Channel=gt1
C o m p l e xEntity
Mỗi entity nhậnmột ngữ cảnh
sipconf
iaxconf
[cisco]
Type=friend
Secret=12345
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5172
Taacutec Giả Lecirc Quốc Toagraven
51
Host=192168165
Context=NoiBo
[xten]
Type=friend
Secret=6789
Host=dynamic
Context=NoiBo
1 Simple Group
Đacircy lagrave kiểu cấu higravenh đơn giản nhất thường sử dụng trong caacutec fileextentionconf meetmeconf voicemailconf tương ứng với mỗi dograveng khai baacuteo lagravemột đối tượng coacute yacute nghĩa trecircn dograveng đoacute
Viacute dụ
Extentionconf [section]
object1=gt op1op2op3
object2=gt op1bop2bop3b
Trong viacute dụ trecircn mỗi dograveng tương ứng với caacutec toaacuten tử khaacutec nhau object1 coacute caacutectoaacuten từ op1 op2 op3 trong khi đoacute object2 lại coacute caacutec toaacuten từ op1b op2b op3b
2 Option inheritance
Đacircy lagrave cấu higravenh kiểu thừa kế thường được cấu higravenh trong caacutec file zapataconfagentconf với kiểu cấu higravenh nagravey thigrave caacutec dograveng phiacutea dưới coacute thể thừa kế caacutec thocircng sdograveng phiacutea trecircn tương ứng với mỗi section caacutec dograveng phiacutea dưới coacute thể thay đổi caacutecthocircng số cho tươngứng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5272
Taacutec Giả Lecirc Quốc Toagraven
52
Viacute dụ
Extentionconf
[section]
Op1=bas
Op2=adv
Object1=gt1
Op1=int
Object1=gt2
Với cấu higravenh trecircn coacute thể giải thiacutech như sau object1=gt1 thừa hưởng hai thocircngsố ở phiacutea trecircn đoacute lagrave op1=bas vagrave op2=adv trong khi đoacute đối với object1=gt2 với thocircngsố op1=int được khai baacuteo lại necircn object1=gt2 được thừa kế từ hai thocircng số op1=invagrave op2=adv
3 Complex Entity
Với cấu kiểu nagravey được tổ chức thagravenh nhiều entity ứng với mỗi entity coacute nhiềthocircng số được khai baacuteo mỗi entity ở đacircy chiacutenh lagrave caacutec section để khai baacuteo caacutec kecircnhthocircng tin Cấu higravenh thường được sử dụng trong caacutec file iaxconf sipconf
Viacute dụ
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5372
Taacutec Giả Lecirc Quốc Toagraven
53
[entity1]
Op1=value1
Op2=value2
[entity2]
Op1=value3
Op2=value4
Entity1 coacute caacutec giaacute trị value1 vagrave value2 cho thocircng số op1 vagrave op2 trong khi đoacute
cũng lagrave thocircng số op1 vagrave op 2 nhưng coacute caacutec giaacute trị khaacutec lagrave value3 vagrave value4 choentity2
4 Cấu higravenh giao tiếp với mạng PSTN
1 Ngữ cảnh kết nối
Để kết nối với mạng PSTN chuacuteng ta cần phải coacute một card TDM với Cổng
FXO vagrave một đường dacircy điện thoại hoặc coacute thể lagrave một tổng đagravei nội bộ PBX Cnhiều nhagrave sản xuất phần cứng khaacutec nhau nhưng trong phần cấu higravenh dưới dacircy lagrave cấhigravenh cho card zapata TDM01B của digium (card nagravey hiện nay giaacute baacuten khoảng175$)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2772
Taacutec Giả Lecirc Quốc Toagraven
27
thocircng thường coacute hai hướng thocircng tin lagrave nhận vagrave phaacutet RTP lagravem việc chuyển caacutec goacutedữ liệu thoại cũng trecircn hai hướng
NAT Network Address Translators lagrave một trở ngại lớn trong giao thức RTPMạng sử dụng NAT lagrave một mạng chia sẻ nhiều địa chỉ IP nội bộ với một địa chỉ ICocircng cộng để kết nối với thế giới becircn ngoagravei NAT dugraveng để chia sẻ nhiều maacutey tiacutentrong mạng LAN nội bộ sử dụng được Internet nhưng cũng chiacutenh vigrave thế magrave caacutec maacutetiacutenh nội bộ gặp khoacute khăn trong việc thực hiện cuộc gọi VoIP qua Internet Đoacute chiacutenhlagrave vấn để trở ngại khi truyền thoại qua giao thức RTP
Higravenh Minh họa hoạt động của NAT
Trong Giao thức RTP như chuacuteng ta đatilde biết đoacute lagrave thoại được chuyển trecircn haiđường khaacutec nhau lagrave đường phaacutet vagrave đường thu Vấn đề NAT nằm ở chỗ tiacuten hiệthoại từ becircn ngoagravei vagraveo becircn trong qua giao thức RTP khocircng thực hiện được cograven chiềungược lại thigrave thực hiện tốt Hay noacutei caacutech khaacutec vấn đề NAT lagravem cho caacutec cuộc gọi t
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2872
Taacutec Giả Lecirc Quốc Toagraven
28
Internet đagravem thoại vagraveo caacutec maacutey nội bộ qua NAT thigrave khocircng nghe được cograven trongtrường hợp caacutec cuộc gọi từ caacutec maacutey nội bộ ra caacutec maacutey internet thigrave nghe tốt
Vấn đề NAT trecircn được giải quyết trong Asterisk bằng việc khai baacuteo thocircng số NAT=yes trong cấu higravenh kecircnh giao thức SIP
4 IAX ndash Inter Asterisk eXchange
IAX lagrave giao thức baacuteo hiệu Voip được phaacutet triển bởi taacutec giả của phần mềmAsterisk để khắc phục những hạn chế trong giao thức SIP Khocircng giống như giathức SIP chuyển tải thoại vagrave baacuteo hiệu trecircn hai kecircnh khaacutec nhau (out of band) IAXchuyển tải thoại vagrave baacuteo hiệu trecircn cugraveng một kecircnh(in band) IAX giải quyết được vấđề NAT đề cập trecircn phần giao thức SIP Mặc khaacutec IAX lagrave giao thức tối ưu trongviệc sử dụng băng thocircng cho pheacutep nhiều goacutei dữ liệu thoại trecircn cugraveng một IP headecơ chế chuyển tải nhiều cuộc gọi trecircn cugraveng một goacutei IP được gọi lagrave trung kế(Trunk)
Coacute thể giải thiacutech thecircm cơ chế trung kế như sau Giả sử Tocirci cần gửi 5 bức thtới người bạn của Tocirci Tocirci sẽ coacute hai higravenh thức để thực hiện thứ nhất lagrave mỗi bức tTocirci bỏ vagraveo một phong bigrave vậy tổng cộng tocirci phải sử dụng 5 phong bigrave để gửi đi 5 bứthư Caacutech thứ hai lagrave Tocirci bỏ 5 bức thư vagraveo 1 phong bigrave vagrave gửi đi vậy tổng cộng Tocircchỉ tốn 1 phong bigrave Qua phacircn tiacutech trecircn rotilde ragraveng việc 5 bức thư vagraveo một phong bigrave sẽtiết kiệm hơn so với 5 bức thư với 5 phong biacute Cơ chế trecircn cũng giống như nhiềcuộc gọi được đoacuteng thagravenh goacutei vagrave chuyển đi trecircn đường trung kế
Toacutem lại IAX lagrave giao thức dagravenh cho VoIP mới nhất cho đến thời điểm nagravey vớinhiều ưu điểm hấp dẫn như
+ Tối thiểu sử dụng băng thocircng
+ Trong suốt với NAT
+ Hiệu quả với cơ chế trung kế
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2972
Taacutec Giả Lecirc Quốc Toagraven
29
8 Thiết Bị VoIP
1 Voip Phone
Đacircy lagrave thiết bị phần cứng kết nối với mạng VoIP giống như maacutey điện thoại đ bagraven thocircng thường nhưng dagravenh cho VoIP cần phải thực hiện cấu higravenh trước khi sửdụng
Lưu yacute một số tiacutenh năng khi thực hiện mua thiết bị điện thoại VoIP
+ Low bandwidth hỗ trợ Codec nagraveo G729 lagrave tốt nhất hiện nay
+ Web Interface Phải coacute giao tiếp thiết lập cấu higravenh thacircn thiện dễ sử dụng
+ Audio Interface Coacute speaker phone hay khocircng
Giaacute thagravenh của điện thoại voip IP đắc hơn điện thoại thocircng thường giaacute khoảntrecircn dưới 100$ một caacutei
Higravenh Maacutey Điện Thoại VoIP
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3072
Taacutec Giả Lecirc Quốc Toagraven
30
2 Softphone
Lagrave một phần mềm được cagravei trecircn maacutey tiacutenh thực hiện tất cả caacutec chức năng giốn
như thiết bị điện thoại Voip cần lưu yacute khi sử dụng softphone lagrave maacutey tiacutenh phải ccard acircm thanh headphone vagrave firewall khocircng bị khoacutea
Sử dụng softphone với hệ thống Asterisk necircn dugraveng softphone với cocircng nghệgiao thức mới dagravenh cho Asterisk đoacute lagrave IAX
Higravenh Điện Thoại Softphone
3 Card giao tiếp với PSTN
Muốn cho pheacutep caacutec maacutey điện thoại nội bộ trong hệ thống Asterisk kết nối vthực hiện cuộc gọi với mạng PSTN chuacuteng ta cần phải coacute thiết bị phần cứng tươthiacutech Thiết bị phần cứng sử dụng cho hệ thống Asterisk do chiacutenh taacutec giả lập cocircng
Digium phacircn phối đacircy cũng chiacutenh lagrave yacute tưởng lớn trong việc phacircn phối phần mềmAsterisk lagrave hệ thống nguồn mở sử dụng miễn phiacute
Thiết bị phần cứng thường kyacute hiệu bắt đầu bằng cụm từ TDMxyB trong đoacute lagrave số lượng port FXS y lagrave số lượng port FXO giaacute trị tối đa của x vagrave y lagrave 4 viacute dụcard TDM22B coacute nghĩa lagrave coacute 2 fort FXS vagrave 2 port FXO
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3172
Taacutec Giả Lecirc Quốc Toagraven
31
Higravenh Card TDM22B gồm 4 port 2 FXS vagrave 2 FXO
4 ATA Analog Telephone Adaptors
ATA lagrave thiết bị kết nối với điện thoại Analog thocircng thường đến mạng VoIPmột thiết bị ATA gồm coacute hai loại port RJ-11 để kết nối với maacutey điện thoại analo
thocircng thường cograven RJ-45 để kết nối với mạng VoIP
ATA thực sự lagrave thiết bị FXS chuyển đổi tiacuten hiệu Analog sang tiacuten hiệu số sửdụng cho mạng VoIP để tận dụng maacutey điện thoại Analog necircn trang bị thiết bị ATAthay vigrave phải trang bị điện thoại VoIP
Thiết bị ATA sử dụng với giao thức IAX được Digium phacircn phối lagrave thiết bịATA được sử dụng rộng ratildei với Asterisk coacute tecircn gọi lagrave IAXy
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3272
Taacutec Giả Lecirc Quốc Toagraven
32
Higravenh Thiết bị ATA
9 Codecs
Thuật Toaacuten codecs(CompressorDe-compressor) lagrave một tập caacutec quy luật đượcsử dụng để chuyển đổi caacutec tiacuten hiệu thoại dạng Analog sang tiacuten hiệu số vagrave ngược lạ
Coacute nhiều thuật toaacuten codec để thực hiện chuyển đổi tiacuten hiệu analog sang tiacuten
hiệu số dạng nhị phacircn (01) như G711 GSM G729hellipỨng với mỗi thuật toaacuten coacutenhững ưu điểm riecircng đặc biệt lagrave việc tối ưu sử dụng băng thocircng trecircn đường truyềMục tiecircu cuối cugraveng lagrave caacutec thuật toaacuten đưa ra phải đảm bảo chất lượng cuộc gọi nhvagrave tiết kiệm băng thocircng nhất
G729 lagrave thuật toaacuten codec tốt nhất hiện nay trong hệ thống VoIP Với hệthống Asterisk để sử dụng thuật toaacuten nagravey cần phải mua bản quyền sử dụng vigrave đacircy
codec khocircng miễn phiacute sử dụng
10 QoS ndash Quality of Service
Caacutec yếu tố ảnh hưởng đến chất lượng của dịch vụ đối với VoIP đoacute lagrave caacuteyếu ảnh hưởng đến chất lượng tiacuten hiệu thoại
1 Độ trễ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3372
Taacutec Giả Lecirc Quốc Toagraven
33
Thoại lagrave dịch vụ mang tiacutenh thời gian thực rất cao vigrave thế trễ lagrave yếu tố ảnhhưởng rất lớn đến chất lượng dịch vụ Trễ được định nghĩa lagrave khoảng thời gian tiacute
từ luacutec tiacuten hiệu thoại đi từ miệng người noacutei tới tai người nghe Trễ lagrave yếu tố khocircnthể traacutenh khỏi độ trễ đối với mạng điện thoại truyền thống (mạng PSTN) khoảng50ms đến 70ms theo khiến nghị của ITU-T để đảm bảo chất lượng cho hệ thốVoIP thigrave độ trễ từ đầu phaacutet tới đầu thu hoặc ngược lại khocircng được vượt quaacute 150mkhi magrave độ trễ vượt quaacute 400ms đến 500ms thigrave khocircng thể chấp nhận được
Caacutec nguyecircn nhacircn gacircy ra trễ bao gồm Trễ trecircn mạng lưới trễ trecircn bộ mả hoacutea
giải matilde trễ trong quaacute trigravenh đoacuteng goacutei trễ bộ đệm trễ xử lyacute tiếng noacuteihellip2 Độ trượt(Jitter)
Nguyecircn nhacircn gacircy ra trượt lagrave goacutei tiacuten hiệu thoại trong quaacute trigravenh truyền từnguồn đến điacutech sẽ gặp phải những điều kiện khaacutec nhau trecircn mạng lưới do đoacute thườđến điacutech với những khoảng trễ khaacutec nhau Đacircy lagrave tiacutenh khocircng đồng nhất của trễ Mnguyecircn nhacircn khaacutec của trượt đối với ứng dụng PC to PC lagrave do việc sử dụng hệ điề
hagravenh phi thời gian thực caacutec goacutei tin thoại phải đợi hệ điều hagravenh xử lyacute trong nhữnkhoảng thời gian khaacutec nhau khi magrave hệ điều hagravenh đang phải xử lyacute đối với caacutec ứndụng khaacutec
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3472
Taacutec Giả Lecirc Quốc Toagraven
34
Higravenh Nguyecircn nhacircn xảy ra trượt
Để loại bỏ tiacutenh khocircng đồng nhất của trễ người ta thiết kế caacutec bộ đệm t(Jitter Buffer) tại nơi đến của caacutec goacutei tin caacutec goacutei tin đến với caacutec khoảng caacutech khaacutecnhau về thời gian được lưu tại bộ đệm rồi phaacutet khỏi bộ đệm với khoảng trễ n
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3572
Taacutec Giả Lecirc Quốc Toagraven
35
nhau Khi bộ đếm coacute kiacutech thước cagraveng lớn thigrave khả năng loại bỏ tiacutenh khocircng đồng nhấcagraveng lớn tuy nhiecircn việc sử dụng bộ đệm sẽ gacircy ra hiện tượng trễ trong ứng dụnthoại do đoacute cần coacute bagravei toaacuten cacircn đối giữa độ trễ vagrave độ trượt
Ngoagravei 2 nguyecircn nhacircn trecircn cograven một số nguyecircn nhacircn nữa ảnh hưởng đến chấtlượng thoại như độ mất goacutei giới hạn băng thocircng tiếng vọng
3 CAgraveI ĐẶT ASTERISK
1 Cagravei đặt Asterisk
1 Download vagrave bung neacuten
Để cagravei đặt Asterisk đầu tiecircn chuacuteng ta cần phải cagravei đặt hệ điều hagravenh linux trecircnmaacutey tiacutenh của migravenh Coacute thể cagravei hệ điều hagravenh Linux Fedora CentOS Redhat hoặcDebian Caacutec goacutei phần mềm phụ thuộc phải coacute trong hệ điều hagravenh Linux trước khcagravei Asterisk bao gồm
bison
gcc
kernel-source
libtermcap-devel
ncurses-devel
openssl096b
openssl-devel
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3672
Taacutec Giả Lecirc Quốc Toagraven
36
Sau khi hoagraven tất caacutec bước trecircn chuacuteng ta tiến hagravenh download phần mềmasterisk với phiecircn bản mới nhất
cd usrsrc
wgetftpftpdigiumcompubasteriskasterisk-140targz
wgetftpftpdigiumcompubasteriskasterisk-addons-140targz
wgetftpftpdigiumcompubasteriskasterisk-sounds-140targz
wgethttpftpdigiumcompubzaptelzaptel-140targz
wgethttpftpdigiumcompublibprilibpri-140targz
Việc download coacute thể nhanh hay chậm tugravey vagraveo tốc độ trecircn đường internet saukhi download hoagraven thagravenh chuacuteng ta tiến hagravenh bung neacuten caacutec goacutei ra thư mục chỉ định
tar ndashxzvf asterisk-140targz
tar ndashxzvf asterisk-addons-140targz
tar ndashxzvf asterisk-sounds-140targz
tar ndashxzvf zaptel-140targz
tar ndashxzvf libpri-140targz
Giải neacuten xong chuacuteng ta nhớ thực hiện lệnh
ln ndashs usrsrcasterisk-140 usrsrcasterisk lệnh nagravey để bảo đảm goacuteildquoaddonsrdquo được biecircn dịch đuacuteng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3772
Taacutec Giả Lecirc Quốc Toagraven
37
Bacircy giờ tới phần chuacuteng ta biecircn dịch caacutec goacutei đatilde giải neacuten ở trecircn trước tiecircn lagrave goacuteizaptel kế đến lagrave libpri sau cugraveng lagrave goacutei Asterisk
2 Cagravei đặt goacutei Zaptel
Goacutei zaptel sẽ chứa tại thư mục usrsrczaptel Đaacutenh lệnh như dưới đacircy để cagraveđặt
cd usrsrczaptel
make clean make install
Lệnh nagravey thực hiện khoảng 2 phuacutet tugravey vagraveo tốc độ maacutey tiacutenh cagravei đặt sau khicagravei đặt xong sẽ trở lại dấu nhắc lệnh vagrave hiển thị một loạt caacutec thocircng baacuteo trong đoacute một số bản tin lỗi magrave chủ yếu lagrave yecircu cầu cagravei đặt caacutec goacutei phụ thuộc đatilde liệt kecirc ở trecircnếu caacutec goacutei trecircn chưa được cagravei đặt
Goacutei zaptel nagravey chứa caacutec driver cho caacutec phần cứng kết giao tiếp với asterisk
do Digium phacircn phối vagrave một số thư viện cho việc coacute thực hiện giao tiếp với phầcứng hay khocircng
Để Asterisk coacute thể chạy cugraveng với khởi động của maacutey tiacutenh chuacuteng ta cần thựchiện lệnh
make config
Lệnh nagravey sẽ tạo ra script chegraven module zaptel vagraveo kernel vagrave chạy ztconfig vagraveoluacutec khởi động maacutey Trong Redhat script nagravey sẽ được cheacutep vagraveo etcinitd chạy ở mức 3
3 Cagravei đặt goacutei libpri
Kế đến chuacuteng ta biecircn dịch goacutei libpri tại thư mục usrsrclibpri bằng lệnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3972
Taacutec Giả Lecirc Quốc Toagraven
39
make config
3 Cagravei đặt TrixBox
1 Giới thiệu
TRIXBOX được phaacutet triển từ nhacircn của ứng dụng Asterisk được tổng hợp từmột số thagravenh phần chiacutenh được phaacutet triển bởi cộng đồng phaacutet triển nguồn mAsterisk dưới bản quyền GPL Trixbox bao gồm những thagravenh phần chiacutenh cho việcấu higravenh ứng dụng thống kecirc tigravenh trạng hoạt động hệ thống lưu trữ dự phograveng v
nhacircn lagrave hệ điều hagravenh CentOS một phiecircn bản khaacutec của Redhat tất cả kết hợp vớnhau tạo thagravenh một goacutei hoagraven chỉnh Khi cagravei goacutei nagravey vagraveo maacutey tiacutenh thigrave coacute thể sử dụngnhư một tổng đagravei PBX
Caacutec thagravenh phần chiacutenh trong goacutei TRIXBOX lagrave
Asterisk PBX Thagravenh phần chiacutenh của hệ thống Trixbox
CentOS Một phiecircn bản Linux khaacutec của Redhat hoagraven toagraven miển phiacute sửdụng Lagrave nhacircn chiacutenh cho Trixbox
SugarCRM Hệ thống quan hệ khaacutech hagraveng CRM
A2Billing ndash Lagrave thagravenh phần dagravenh cho việc xacircy dựng hệ thống điện thoạitrả trước hay cograven gọi lagrave điện thọai thẻ (Calling Card)
Flash Operator Panel Bảng điều khiển giaacutem saacutet tigravenh trạng hoạt độngcủa caacutec maacutey điện thoại trong hệ thống
Web MeetMe Control Quản lyacute triển khai hệ thống điện thoại hội nghị
FreePBX Đacircy lagrave cocircng cụ với giao diện web dagravenh cho việc cấu higravenh hệthống Asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4072
Taacutec Giả Lecirc Quốc Toagraven
40
Hệ thống Lưu trữ dự phograveng vagrave thống kecirc Lagrave thagravenh phần của TRIXBOXcung cấp caacutec cocircng cụ cần thiết cho việc bảo trigrave bảo dưỡng hệ thống
Hệ thống Apache-Php-Mysql dagravenh cho giải phaacutep Webserver của hệthống
2 DOWNLOAD VAgrave LẮP ĐẶT TRIXBOX
Địa chỉ downloadhttpsourceforgenetprojectsasteriskathome
Khi download xong file Trixboxiso Hatildey dugraveng file nagravey Burn vagraveo CD ( xinlưu yacute lagrave dugraveng Nero hoặc chương trigravenh cheacutep đĩa ưa thiacutech rồi burn vagraveo cd_romchứ khocircng phải cheacutep file đoacute vagraveo cd_rom)
Sau khi coacute CD Hatildey boot từ CD nagravey để cagravei đặt trixbox
Chuacute yacute dữ liệu trecircn đĩa cứng sẽ bị xoacutea sạch để cagravei đặt trixbox Nếu trongđĩa cứng cograven dữ liệu hatildey backup tất cả trước khi tiến hagravenh lắp đặt trixbox
Tới đacircy lần lượt caacutec magraven higravenh chỉ dẫn sẽ hiện ra vagrave cứ theo hướng dẫn magrave cagraveđặt Sau khi cagravei đặt xong chuacuteng ta dugraveng Username root vagrave password password đểđăng nhập hệ thống
3 Cấu higravenh địa chỉ IP cho card mạng
Thiết lập địa chỉ IP bằng caacutech gotilde lệnh
netconfig
Chọn OK để thiếp lập
Nếu trong mạng coacute hỗ trợ DHCP thigrave hatildey chọn mục nagravey cograven nếu khocircng hatildeynhập địa chỉ IP tĩnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4172
Taacutec Giả Lecirc Quốc Toagraven
41
IP 19216801
Netmask 2552552550
Gateway 19216893254 ngotilde ra becircn ngoagravei
Primary nameserver 19216893200 thiết lập nếu coacute
Chọn OK để chấp nhận caacutec thiết lập trecircn
Sau khi hoagraven tất hatildey lagravem cho thiết lập coacute hiệu lực bằng caacutech reset lại
maacutey tiacutenh hoặc dugraveng lệnh sau
Service network stop
Service network start
Đến đacircy xem như cagravei đặt hoagraven tất bacircy giờ để cấu higravenh được Asterisk chuacutengta vagraveo một magravey khaacutec vagrave mở Internet Explorer hoặc một trigravenh duyệt web bất kỳ
nhập vagraveohttp19216801đatilde cấu higravenh ở trecircn vagrave tiến hagravenh cấu higravenh hệ thốngvới tagravei khoảng username maint vagrave password password
4 Tổ Chức Thư Mục của Asterisk
Asterisk sử dụng nhiều thư mục trecircn hệ thống linux để quản lyacute caacutec khiacutea cạnkhaacutec nhau của hệ thống như nghi nhận bản tin thoại caacutec bản tin nhắc thoại hoặcaacutec tập tin cấu higravenh Phần nagravey sẽ trigravenh bagravey caacutec thư mục chiacutenh yếu được tạo ra tronquaacute trigravenh lắp đặt vagrave được cấu higravenh trong tập tin Asteriskconf
1 etcasterisk
Thư mục etcasterisk chứa tất cả caacutec tập tin cấu higravenh của hệ thốngAsterisk ngoại trừ tập tin Zaptelconf được đặt tại thư mục etc Phần cứnZaptel đầu tiecircn được phaacutet triển bởi Jim Dixon thuộc nhoacutem Zapata Telephony
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4272
Taacutec Giả Lecirc Quốc Toagraven
42
Group để giao tiếp giữa maacutey tiacutenh với mạng điện thoại magrave Asterisk lại sửdụng phần cứng nagravey với lyacute do đoacute magrave file cấu higravenh zaptelconf khocircng nằmtrong thư mục etcasterisk
2 usrlibasteriskmodules
Thư mục usrlibasteriskmodules chứa tất cả caacutec module cần thiết đểasterisk hoạt động Becircn trong thư mục lagrave caacutec ứng dụng khaacutec nhau caacutec codeccaacutec định dạng acircm thanh(format) vagrave caacutec kecircnh thocircng tin(channel) Theo mặc địnhAsterisk sẽ nạp tất cả caacutec module vagraveo luacutec khởi động Chuacuteng ta coacute thể khocircng cho
nạp một module bất kỳ bằng caacutech khocircng khai baacuteo sử dụng trong tập tinmodulesconf Lưu yacute khi khocircng cho nạp module thigrave phải biết chắc module đoacutekhocircng lagravem ảnh hưởng hoạt động của asterisk nếu khocircng lỗi sẽ xuất hiện
3 varlibasterisk
Thư mục varlibasterisk chứa tập tin astdb vagrave một số thư mục con Tập tinastdb định vị thocircng tin cơ sở dữ liệu của Asterisk giống như Microsoft WindowsRegistry
Caacutec thư mục con của thư mục varlibasterisk bao gồm
agi-bin
Thư mục agi-bin chứa caacutec script của người dugraveng magrave Asterisk coacute thểđịnh vị sử dụng qua caacutec ứng dụng AGI
AGI lagrave phần giao tiếp với ngocircn ngữ lập trigravenh script để thực hiện mộtsố cocircng việc của Asterisk từ becircn ngoagravei
firmware
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4372
Taacutec Giả Lecirc Quốc Toagraven
43
Thư mục firmware chứa một số phần dẻo(firmware) cho caacutec thiết bịkhaacutec nhau tương thiacutech với Asterisk Hiện tại chỉ coacute thư mục con iax chứa
firmware cho thiếy bị IAXy của Digium IAXy lagrave thiết bị ATA sử dụng giaothức IAX
images
Caacutec ứng dụng thocircng tin với caacutec kecircnh hỗ trợ ảnh images thigrave sử dụng thư mụcnagravey Nhưng hiện tại caacutec kecircnh thocircng tin hầu như khocircng hỗ trợ truyền ảnh images necircthư mục nagravey cũng hiếm khi được sử dụng Tuy nhiecircn nếu caacutec thiết bị coacute hỗ trợ ththư mục nagravey trở necircn hiệu dụng
keys
Asterisk coacute thể sử dụng hệ thống khoaacute publicprivate để xaacutec minh caacutec kết nốgiữa caacutec server Asterisk thocircng qua chữ kyacute điện tử RSA Nếu đặt một khoaacute publicvagraveo thư mục keys thigrave kết nối của server đầu becircn kia coacute thể được xaacutec minh bằn
kecircnh thocircng tin coacute hỗ trợ đối với Asterisk thigrave kecircnh giao thức IAX hỗ trợ loại xaacutecminh nagravey Một khoaacute private khocircng bao giờ cocircng bố chuacuteng ta chỉ cocircng bố khoaacute public đến với server cần nối đến sau đoacute sẽ được xaacutec minh với khoaacute private nagravey Chai khoaacute public vagrave private được lưu với đuocirci pub vagrave key đặt tại thư mục keys
mohmp3
Khi cấu higravenh Asterisk sử dụng tiacutenh năng Music on Hold tiacutenh năng hoạt độngsẽ thực hiện lấy caacutec tập tin mp3 tại thư mục mohmp3 Tập tin định dạng theo chucủa Asterisk necircn khi sử dụng caacutec file Mp3 thocircng thường cần coacute sự chuyển đổi thiacutechợp trước khi cheacutep vagraveo thư mục trecircn để sử dụng
sounds
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4472
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4572
Taacutec Giả Lecirc Quốc Toagraven
45
Thư mục tmp sử dụng để lưu trữ những thocircng tin tạm để luocircn bảo đảm khocircnxảy ra tigravenh trạng đọc vagrave viết tập tin cugraveng một luacutec Khi yecircu cầu xử lyacute tập tin chuacuteng thao taacutec trecircn thư mục tmp trước khi lưu vagraveo tập tin điacutech
Tất cả caacutec lời nhắc thoại từ phiacutea người sử dụng vagrave caacutec lời nhắc thoại sử dụ
cho thao taacutec hộp voicemail đều được chứa trong thư mục voicemail Một hộp thưthoại được tạo ra ứng với một maacutey nội bộ trong tập tin voicemailconf sẽ được tra một thư mục con tương ứng cho maacutey nội bộ đoacute tại thư mục voicemail
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4672
Taacutec Giả Lecirc Quốc Toagraven
46
5 varrun
Thư mục varrun chứa thocircng tin process ID(pid) cho tất cả caacutec tiến trigravenh đang
hoạt động trong hệ thống bao gồm cả Asterisk Lưu yacute lagrave ứng với mỗi hệ điều hagravethư mục varrun coacute thể khaacutec
6 varlogasterisk
Thư mục varlogasterisk lagrave nơi Asterisk chứa tất cả caacutec tập tin nhật kyacute haycograven gọi lagrave tập tin log Chuacuteng ta coacute thể tuỳ biến caacutec loại thocircng tin được lưu trong caacutec
tập tin log khaacutec nhau qua tập tin cấu higravenh loggerconf đặt tại thư mục etcasterisk7 varlogasteriskcdr-csv
Thư mục varlogasteriskcdr-csv được sử dụng để lưu chi tiết cuộc gọi CDRThocircng tin mặc định về chi tiết thocircng tin cuộc gọi lưu trữ trong tập tin MasterCVSnhưng thường thigrave ứng với mỗi matilde accountcode sẽ tạo một thư mục riecircng để lưu ctiết cuộc gọi cho maacutey đoacute
5 Một số lệnh thao taacutec trecircn hệ thống asterisk
Asterisk coacute hai thagravenh phần được xacircy dụng tiacutech hợp với nhau vagrave chạy songsong nhau
Asterisk Server bigravenh thường chạy ở chế độ nền(background) giống caacutec sevicestrong window
Asterisk Client ở chế độ dograveng lệnh CLI giao tiếp với Asterisk Server thực thicaacutec lệnh để kiểm tra hay xem caacutec thocircng tin của server
Để Chạy vagrave dừng Asterisk ở chế độ nền chuacuteng ta thực hiện lệnh sau
etcinitdasterisk (start|stop)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4772
Taacutec Giả Lecirc Quốc Toagraven
47
Một khi Asterisk đatilde chạy chuacuteng ta coacute thể chuyển qua chế độ CLI từ dấu nhắlệnh của linux như sau
asterisk ndashr
Khi vagraveo chế độ lệnh nếu muốn thoaacutet về lại dấu nhắc linux chuacuteng ta dugraveng lệnh
CLIgtexit
Caacutec lệnh cơ bản thực hiện tại CLIgt
Bất cứ khi nagraveo chỉnh sửa caacutec tập tin cấu higravenh chuacuteng ta đều cần phải nạp lại đcaacutec thay đổi coacute hiệu lực điều đoacute thực hiện bằng lệnh
CLIgtreload
Bậc chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 debug
CLIgt SIP debug
Tắt chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 no debug
CLIgt SIP no debug
Hiển thị caacutec trạng thaacutei thocircng tin của users peers vagravechannels của SIP hoặc IAX2
CLIgt sip show users
CLIgt sip show peers
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4872
Taacutec Giả Lecirc Quốc Toagraven
48
CLIgt sip show channels
CLIgt iax2 show peers
CLIgt iax2 show users
CLIgt iax2 show channels
Đến thời điểm nagravey coacute thể noacutei chuacuteng ta đatilde hoagraven thagravenh cagravei đặt hệ thốngAsterisk cagravei đặt xong mới lagrave bước mở đầu để cho hệ thống Asterisk hoạt động vtừng ứng dụng cụ thể chuacuteng sẽ tiếp tục thực hiện caacutec giai đoạn được xem lagrave qutrọng nhất trong việc triển khai hệ thống Asterisk đoacute lagrave giai đoạn cấu higravenh hệ thốnlecircn kế hoạch Diaplan chương cograven lại đều nhắm đến mục tiecircu nagravey
4 CẤU HIgraveNH HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Sau khi hoagraven tất phần cagravei đặt hệ thống asterisk một bước quan trọng tiếp thelagrave cấu higravenh hệ thống coacute thể noacutei đacircy lagrave bước quan trọng nhất của việc khiển khai thống đến với từng ứng dụng cụ thể Trong chương nagravey xin giới thiệu caacutei nhigraven đầtiecircn về việc cấu higravenh trước khi đi sacircu hơn ở những chương sau những gigrave giới thiệ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4972
Taacutec Giả Lecirc Quốc Toagraven
49
trong chương nagravey lagrave nền moacuteng cơ bản nhưng đủ để hiểu lagravem thế nagraveo hệ thống coacute thoạt động được nội dung chiacutenh bao gồm
+ Thao taacutec cấu higravenh trecircn hệ thống tập tin của asterisk
+ Caacutech cagravei đặt phần mềm softphone trecircn cocircng nghệ sip
+ Cấu higravenh cho hai maacutey softphone liecircn lạc với nhau
+ Cấu higravenh phaacutet thocircng điệp
+ Quay số qua Sip vagrave mạng PSTN
2 Tập Tin cấu higravenh
Tất cả caacutec file cấu higravenh cho hệ thống asterisk đều nằm tại thư mục etcasterisngoại trừ file zaptelconf cấu higravenh cho phần cứng TDM nằm tại thư mục etc caacutecthức cấu higravenh giống như tập tin ini của window vậy Caacutec nội dung sau dấu chấm phảy lagrave nội dung chuacute thiacutech trong file cấu higravenh giống như chuacute thiacutech trong ngocircn ngữ
lập trigravenh C lagrave dấu Tất cả caacutec khoảng trắng trong tập tin đều được bỏ qua khocircng yacute nghĩa trong file cấu higravenh
Trong file cấu higravenh cograven coacute hai pheacutep gaacuten rất thường xuyecircn được sử dụng pheacutep gaacuten ldquo=rdquo lagrave dugraveng cho việc gaacuten caacutec biến cograven pheacutep gaacuten ldquo=gtrdquo dugraveng cho việc gaacutencaacutec đối tượng sau đacircy lagrave một viacute dụ cho file cấu higravenh
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5072
Taacutec Giả Lecirc Quốc Toagraven
50
Đacircy lagrave caacutec dograveng chuacute thiacutech
[section]
Key=value gaacuten giaacute trị cho biến
[section2]
Key=gtobject Gaacuten giaacute trị cho đối tượng
Cuacute phaacutep thực hiện giống nhau cho tất cả caacutec file cấu higravenh nhưng coacute vagravei kiểukhaacutec nhau cho mỗi file cầu higravenh dựa vagraveo thức caacutech hoạt động của chuacuteng
3 Caacutec kiểu ảnh hưởng trong tập cấu higravenh
Coacute ba kiểu caacutech thức hoạt động của tập tin cấu higravenh như sau
Kiểu Caacutech hoạt động File cầu higravenh Viacute dụ
S i m p l eGroup
Coacute hiệu lực trecircntừng dograveng trongfile
Extensionconf
Exten=gt4001dial(sip400)
O p t i o ninheritance
Dograveng khai baacuteosau thừa kếnhững thocircng sốkhai baacuteo trước
Zapataconf [channels]
Context=From_PSTN
Signalling=fxs_ks
Group=1Channel=gt1
C o m p l e xEntity
Mỗi entity nhậnmột ngữ cảnh
sipconf
iaxconf
[cisco]
Type=friend
Secret=12345
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5172
Taacutec Giả Lecirc Quốc Toagraven
51
Host=192168165
Context=NoiBo
[xten]
Type=friend
Secret=6789
Host=dynamic
Context=NoiBo
1 Simple Group
Đacircy lagrave kiểu cấu higravenh đơn giản nhất thường sử dụng trong caacutec fileextentionconf meetmeconf voicemailconf tương ứng với mỗi dograveng khai baacuteo lagravemột đối tượng coacute yacute nghĩa trecircn dograveng đoacute
Viacute dụ
Extentionconf [section]
object1=gt op1op2op3
object2=gt op1bop2bop3b
Trong viacute dụ trecircn mỗi dograveng tương ứng với caacutec toaacuten tử khaacutec nhau object1 coacute caacutectoaacuten từ op1 op2 op3 trong khi đoacute object2 lại coacute caacutec toaacuten từ op1b op2b op3b
2 Option inheritance
Đacircy lagrave cấu higravenh kiểu thừa kế thường được cấu higravenh trong caacutec file zapataconfagentconf với kiểu cấu higravenh nagravey thigrave caacutec dograveng phiacutea dưới coacute thể thừa kế caacutec thocircng sdograveng phiacutea trecircn tương ứng với mỗi section caacutec dograveng phiacutea dưới coacute thể thay đổi caacutecthocircng số cho tươngứng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5272
Taacutec Giả Lecirc Quốc Toagraven
52
Viacute dụ
Extentionconf
[section]
Op1=bas
Op2=adv
Object1=gt1
Op1=int
Object1=gt2
Với cấu higravenh trecircn coacute thể giải thiacutech như sau object1=gt1 thừa hưởng hai thocircngsố ở phiacutea trecircn đoacute lagrave op1=bas vagrave op2=adv trong khi đoacute đối với object1=gt2 với thocircngsố op1=int được khai baacuteo lại necircn object1=gt2 được thừa kế từ hai thocircng số op1=invagrave op2=adv
3 Complex Entity
Với cấu kiểu nagravey được tổ chức thagravenh nhiều entity ứng với mỗi entity coacute nhiềthocircng số được khai baacuteo mỗi entity ở đacircy chiacutenh lagrave caacutec section để khai baacuteo caacutec kecircnhthocircng tin Cấu higravenh thường được sử dụng trong caacutec file iaxconf sipconf
Viacute dụ
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5372
Taacutec Giả Lecirc Quốc Toagraven
53
[entity1]
Op1=value1
Op2=value2
[entity2]
Op1=value3
Op2=value4
Entity1 coacute caacutec giaacute trị value1 vagrave value2 cho thocircng số op1 vagrave op2 trong khi đoacute
cũng lagrave thocircng số op1 vagrave op 2 nhưng coacute caacutec giaacute trị khaacutec lagrave value3 vagrave value4 choentity2
4 Cấu higravenh giao tiếp với mạng PSTN
1 Ngữ cảnh kết nối
Để kết nối với mạng PSTN chuacuteng ta cần phải coacute một card TDM với Cổng
FXO vagrave một đường dacircy điện thoại hoặc coacute thể lagrave một tổng đagravei nội bộ PBX Cnhiều nhagrave sản xuất phần cứng khaacutec nhau nhưng trong phần cấu higravenh dưới dacircy lagrave cấhigravenh cho card zapata TDM01B của digium (card nagravey hiện nay giaacute baacuten khoảng175$)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2872
Taacutec Giả Lecirc Quốc Toagraven
28
Internet đagravem thoại vagraveo caacutec maacutey nội bộ qua NAT thigrave khocircng nghe được cograven trongtrường hợp caacutec cuộc gọi từ caacutec maacutey nội bộ ra caacutec maacutey internet thigrave nghe tốt
Vấn đề NAT trecircn được giải quyết trong Asterisk bằng việc khai baacuteo thocircng số NAT=yes trong cấu higravenh kecircnh giao thức SIP
4 IAX ndash Inter Asterisk eXchange
IAX lagrave giao thức baacuteo hiệu Voip được phaacutet triển bởi taacutec giả của phần mềmAsterisk để khắc phục những hạn chế trong giao thức SIP Khocircng giống như giathức SIP chuyển tải thoại vagrave baacuteo hiệu trecircn hai kecircnh khaacutec nhau (out of band) IAXchuyển tải thoại vagrave baacuteo hiệu trecircn cugraveng một kecircnh(in band) IAX giải quyết được vấđề NAT đề cập trecircn phần giao thức SIP Mặc khaacutec IAX lagrave giao thức tối ưu trongviệc sử dụng băng thocircng cho pheacutep nhiều goacutei dữ liệu thoại trecircn cugraveng một IP headecơ chế chuyển tải nhiều cuộc gọi trecircn cugraveng một goacutei IP được gọi lagrave trung kế(Trunk)
Coacute thể giải thiacutech thecircm cơ chế trung kế như sau Giả sử Tocirci cần gửi 5 bức thtới người bạn của Tocirci Tocirci sẽ coacute hai higravenh thức để thực hiện thứ nhất lagrave mỗi bức tTocirci bỏ vagraveo một phong bigrave vậy tổng cộng tocirci phải sử dụng 5 phong bigrave để gửi đi 5 bứthư Caacutech thứ hai lagrave Tocirci bỏ 5 bức thư vagraveo 1 phong bigrave vagrave gửi đi vậy tổng cộng Tocircchỉ tốn 1 phong bigrave Qua phacircn tiacutech trecircn rotilde ragraveng việc 5 bức thư vagraveo một phong bigrave sẽtiết kiệm hơn so với 5 bức thư với 5 phong biacute Cơ chế trecircn cũng giống như nhiềcuộc gọi được đoacuteng thagravenh goacutei vagrave chuyển đi trecircn đường trung kế
Toacutem lại IAX lagrave giao thức dagravenh cho VoIP mới nhất cho đến thời điểm nagravey vớinhiều ưu điểm hấp dẫn như
+ Tối thiểu sử dụng băng thocircng
+ Trong suốt với NAT
+ Hiệu quả với cơ chế trung kế
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2972
Taacutec Giả Lecirc Quốc Toagraven
29
8 Thiết Bị VoIP
1 Voip Phone
Đacircy lagrave thiết bị phần cứng kết nối với mạng VoIP giống như maacutey điện thoại đ bagraven thocircng thường nhưng dagravenh cho VoIP cần phải thực hiện cấu higravenh trước khi sửdụng
Lưu yacute một số tiacutenh năng khi thực hiện mua thiết bị điện thoại VoIP
+ Low bandwidth hỗ trợ Codec nagraveo G729 lagrave tốt nhất hiện nay
+ Web Interface Phải coacute giao tiếp thiết lập cấu higravenh thacircn thiện dễ sử dụng
+ Audio Interface Coacute speaker phone hay khocircng
Giaacute thagravenh của điện thoại voip IP đắc hơn điện thoại thocircng thường giaacute khoảntrecircn dưới 100$ một caacutei
Higravenh Maacutey Điện Thoại VoIP
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3072
Taacutec Giả Lecirc Quốc Toagraven
30
2 Softphone
Lagrave một phần mềm được cagravei trecircn maacutey tiacutenh thực hiện tất cả caacutec chức năng giốn
như thiết bị điện thoại Voip cần lưu yacute khi sử dụng softphone lagrave maacutey tiacutenh phải ccard acircm thanh headphone vagrave firewall khocircng bị khoacutea
Sử dụng softphone với hệ thống Asterisk necircn dugraveng softphone với cocircng nghệgiao thức mới dagravenh cho Asterisk đoacute lagrave IAX
Higravenh Điện Thoại Softphone
3 Card giao tiếp với PSTN
Muốn cho pheacutep caacutec maacutey điện thoại nội bộ trong hệ thống Asterisk kết nối vthực hiện cuộc gọi với mạng PSTN chuacuteng ta cần phải coacute thiết bị phần cứng tươthiacutech Thiết bị phần cứng sử dụng cho hệ thống Asterisk do chiacutenh taacutec giả lập cocircng
Digium phacircn phối đacircy cũng chiacutenh lagrave yacute tưởng lớn trong việc phacircn phối phần mềmAsterisk lagrave hệ thống nguồn mở sử dụng miễn phiacute
Thiết bị phần cứng thường kyacute hiệu bắt đầu bằng cụm từ TDMxyB trong đoacute lagrave số lượng port FXS y lagrave số lượng port FXO giaacute trị tối đa của x vagrave y lagrave 4 viacute dụcard TDM22B coacute nghĩa lagrave coacute 2 fort FXS vagrave 2 port FXO
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3172
Taacutec Giả Lecirc Quốc Toagraven
31
Higravenh Card TDM22B gồm 4 port 2 FXS vagrave 2 FXO
4 ATA Analog Telephone Adaptors
ATA lagrave thiết bị kết nối với điện thoại Analog thocircng thường đến mạng VoIPmột thiết bị ATA gồm coacute hai loại port RJ-11 để kết nối với maacutey điện thoại analo
thocircng thường cograven RJ-45 để kết nối với mạng VoIP
ATA thực sự lagrave thiết bị FXS chuyển đổi tiacuten hiệu Analog sang tiacuten hiệu số sửdụng cho mạng VoIP để tận dụng maacutey điện thoại Analog necircn trang bị thiết bị ATAthay vigrave phải trang bị điện thoại VoIP
Thiết bị ATA sử dụng với giao thức IAX được Digium phacircn phối lagrave thiết bịATA được sử dụng rộng ratildei với Asterisk coacute tecircn gọi lagrave IAXy
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3272
Taacutec Giả Lecirc Quốc Toagraven
32
Higravenh Thiết bị ATA
9 Codecs
Thuật Toaacuten codecs(CompressorDe-compressor) lagrave một tập caacutec quy luật đượcsử dụng để chuyển đổi caacutec tiacuten hiệu thoại dạng Analog sang tiacuten hiệu số vagrave ngược lạ
Coacute nhiều thuật toaacuten codec để thực hiện chuyển đổi tiacuten hiệu analog sang tiacuten
hiệu số dạng nhị phacircn (01) như G711 GSM G729hellipỨng với mỗi thuật toaacuten coacutenhững ưu điểm riecircng đặc biệt lagrave việc tối ưu sử dụng băng thocircng trecircn đường truyềMục tiecircu cuối cugraveng lagrave caacutec thuật toaacuten đưa ra phải đảm bảo chất lượng cuộc gọi nhvagrave tiết kiệm băng thocircng nhất
G729 lagrave thuật toaacuten codec tốt nhất hiện nay trong hệ thống VoIP Với hệthống Asterisk để sử dụng thuật toaacuten nagravey cần phải mua bản quyền sử dụng vigrave đacircy
codec khocircng miễn phiacute sử dụng
10 QoS ndash Quality of Service
Caacutec yếu tố ảnh hưởng đến chất lượng của dịch vụ đối với VoIP đoacute lagrave caacuteyếu ảnh hưởng đến chất lượng tiacuten hiệu thoại
1 Độ trễ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3372
Taacutec Giả Lecirc Quốc Toagraven
33
Thoại lagrave dịch vụ mang tiacutenh thời gian thực rất cao vigrave thế trễ lagrave yếu tố ảnhhưởng rất lớn đến chất lượng dịch vụ Trễ được định nghĩa lagrave khoảng thời gian tiacute
từ luacutec tiacuten hiệu thoại đi từ miệng người noacutei tới tai người nghe Trễ lagrave yếu tố khocircnthể traacutenh khỏi độ trễ đối với mạng điện thoại truyền thống (mạng PSTN) khoảng50ms đến 70ms theo khiến nghị của ITU-T để đảm bảo chất lượng cho hệ thốVoIP thigrave độ trễ từ đầu phaacutet tới đầu thu hoặc ngược lại khocircng được vượt quaacute 150mkhi magrave độ trễ vượt quaacute 400ms đến 500ms thigrave khocircng thể chấp nhận được
Caacutec nguyecircn nhacircn gacircy ra trễ bao gồm Trễ trecircn mạng lưới trễ trecircn bộ mả hoacutea
giải matilde trễ trong quaacute trigravenh đoacuteng goacutei trễ bộ đệm trễ xử lyacute tiếng noacuteihellip2 Độ trượt(Jitter)
Nguyecircn nhacircn gacircy ra trượt lagrave goacutei tiacuten hiệu thoại trong quaacute trigravenh truyền từnguồn đến điacutech sẽ gặp phải những điều kiện khaacutec nhau trecircn mạng lưới do đoacute thườđến điacutech với những khoảng trễ khaacutec nhau Đacircy lagrave tiacutenh khocircng đồng nhất của trễ Mnguyecircn nhacircn khaacutec của trượt đối với ứng dụng PC to PC lagrave do việc sử dụng hệ điề
hagravenh phi thời gian thực caacutec goacutei tin thoại phải đợi hệ điều hagravenh xử lyacute trong nhữnkhoảng thời gian khaacutec nhau khi magrave hệ điều hagravenh đang phải xử lyacute đối với caacutec ứndụng khaacutec
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3472
Taacutec Giả Lecirc Quốc Toagraven
34
Higravenh Nguyecircn nhacircn xảy ra trượt
Để loại bỏ tiacutenh khocircng đồng nhất của trễ người ta thiết kế caacutec bộ đệm t(Jitter Buffer) tại nơi đến của caacutec goacutei tin caacutec goacutei tin đến với caacutec khoảng caacutech khaacutecnhau về thời gian được lưu tại bộ đệm rồi phaacutet khỏi bộ đệm với khoảng trễ n
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3572
Taacutec Giả Lecirc Quốc Toagraven
35
nhau Khi bộ đếm coacute kiacutech thước cagraveng lớn thigrave khả năng loại bỏ tiacutenh khocircng đồng nhấcagraveng lớn tuy nhiecircn việc sử dụng bộ đệm sẽ gacircy ra hiện tượng trễ trong ứng dụnthoại do đoacute cần coacute bagravei toaacuten cacircn đối giữa độ trễ vagrave độ trượt
Ngoagravei 2 nguyecircn nhacircn trecircn cograven một số nguyecircn nhacircn nữa ảnh hưởng đến chấtlượng thoại như độ mất goacutei giới hạn băng thocircng tiếng vọng
3 CAgraveI ĐẶT ASTERISK
1 Cagravei đặt Asterisk
1 Download vagrave bung neacuten
Để cagravei đặt Asterisk đầu tiecircn chuacuteng ta cần phải cagravei đặt hệ điều hagravenh linux trecircnmaacutey tiacutenh của migravenh Coacute thể cagravei hệ điều hagravenh Linux Fedora CentOS Redhat hoặcDebian Caacutec goacutei phần mềm phụ thuộc phải coacute trong hệ điều hagravenh Linux trước khcagravei Asterisk bao gồm
bison
gcc
kernel-source
libtermcap-devel
ncurses-devel
openssl096b
openssl-devel
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3672
Taacutec Giả Lecirc Quốc Toagraven
36
Sau khi hoagraven tất caacutec bước trecircn chuacuteng ta tiến hagravenh download phần mềmasterisk với phiecircn bản mới nhất
cd usrsrc
wgetftpftpdigiumcompubasteriskasterisk-140targz
wgetftpftpdigiumcompubasteriskasterisk-addons-140targz
wgetftpftpdigiumcompubasteriskasterisk-sounds-140targz
wgethttpftpdigiumcompubzaptelzaptel-140targz
wgethttpftpdigiumcompublibprilibpri-140targz
Việc download coacute thể nhanh hay chậm tugravey vagraveo tốc độ trecircn đường internet saukhi download hoagraven thagravenh chuacuteng ta tiến hagravenh bung neacuten caacutec goacutei ra thư mục chỉ định
tar ndashxzvf asterisk-140targz
tar ndashxzvf asterisk-addons-140targz
tar ndashxzvf asterisk-sounds-140targz
tar ndashxzvf zaptel-140targz
tar ndashxzvf libpri-140targz
Giải neacuten xong chuacuteng ta nhớ thực hiện lệnh
ln ndashs usrsrcasterisk-140 usrsrcasterisk lệnh nagravey để bảo đảm goacuteildquoaddonsrdquo được biecircn dịch đuacuteng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3772
Taacutec Giả Lecirc Quốc Toagraven
37
Bacircy giờ tới phần chuacuteng ta biecircn dịch caacutec goacutei đatilde giải neacuten ở trecircn trước tiecircn lagrave goacuteizaptel kế đến lagrave libpri sau cugraveng lagrave goacutei Asterisk
2 Cagravei đặt goacutei Zaptel
Goacutei zaptel sẽ chứa tại thư mục usrsrczaptel Đaacutenh lệnh như dưới đacircy để cagraveđặt
cd usrsrczaptel
make clean make install
Lệnh nagravey thực hiện khoảng 2 phuacutet tugravey vagraveo tốc độ maacutey tiacutenh cagravei đặt sau khicagravei đặt xong sẽ trở lại dấu nhắc lệnh vagrave hiển thị một loạt caacutec thocircng baacuteo trong đoacute một số bản tin lỗi magrave chủ yếu lagrave yecircu cầu cagravei đặt caacutec goacutei phụ thuộc đatilde liệt kecirc ở trecircnếu caacutec goacutei trecircn chưa được cagravei đặt
Goacutei zaptel nagravey chứa caacutec driver cho caacutec phần cứng kết giao tiếp với asterisk
do Digium phacircn phối vagrave một số thư viện cho việc coacute thực hiện giao tiếp với phầcứng hay khocircng
Để Asterisk coacute thể chạy cugraveng với khởi động của maacutey tiacutenh chuacuteng ta cần thựchiện lệnh
make config
Lệnh nagravey sẽ tạo ra script chegraven module zaptel vagraveo kernel vagrave chạy ztconfig vagraveoluacutec khởi động maacutey Trong Redhat script nagravey sẽ được cheacutep vagraveo etcinitd chạy ở mức 3
3 Cagravei đặt goacutei libpri
Kế đến chuacuteng ta biecircn dịch goacutei libpri tại thư mục usrsrclibpri bằng lệnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3972
Taacutec Giả Lecirc Quốc Toagraven
39
make config
3 Cagravei đặt TrixBox
1 Giới thiệu
TRIXBOX được phaacutet triển từ nhacircn của ứng dụng Asterisk được tổng hợp từmột số thagravenh phần chiacutenh được phaacutet triển bởi cộng đồng phaacutet triển nguồn mAsterisk dưới bản quyền GPL Trixbox bao gồm những thagravenh phần chiacutenh cho việcấu higravenh ứng dụng thống kecirc tigravenh trạng hoạt động hệ thống lưu trữ dự phograveng v
nhacircn lagrave hệ điều hagravenh CentOS một phiecircn bản khaacutec của Redhat tất cả kết hợp vớnhau tạo thagravenh một goacutei hoagraven chỉnh Khi cagravei goacutei nagravey vagraveo maacutey tiacutenh thigrave coacute thể sử dụngnhư một tổng đagravei PBX
Caacutec thagravenh phần chiacutenh trong goacutei TRIXBOX lagrave
Asterisk PBX Thagravenh phần chiacutenh của hệ thống Trixbox
CentOS Một phiecircn bản Linux khaacutec của Redhat hoagraven toagraven miển phiacute sửdụng Lagrave nhacircn chiacutenh cho Trixbox
SugarCRM Hệ thống quan hệ khaacutech hagraveng CRM
A2Billing ndash Lagrave thagravenh phần dagravenh cho việc xacircy dựng hệ thống điện thoạitrả trước hay cograven gọi lagrave điện thọai thẻ (Calling Card)
Flash Operator Panel Bảng điều khiển giaacutem saacutet tigravenh trạng hoạt độngcủa caacutec maacutey điện thoại trong hệ thống
Web MeetMe Control Quản lyacute triển khai hệ thống điện thoại hội nghị
FreePBX Đacircy lagrave cocircng cụ với giao diện web dagravenh cho việc cấu higravenh hệthống Asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4072
Taacutec Giả Lecirc Quốc Toagraven
40
Hệ thống Lưu trữ dự phograveng vagrave thống kecirc Lagrave thagravenh phần của TRIXBOXcung cấp caacutec cocircng cụ cần thiết cho việc bảo trigrave bảo dưỡng hệ thống
Hệ thống Apache-Php-Mysql dagravenh cho giải phaacutep Webserver của hệthống
2 DOWNLOAD VAgrave LẮP ĐẶT TRIXBOX
Địa chỉ downloadhttpsourceforgenetprojectsasteriskathome
Khi download xong file Trixboxiso Hatildey dugraveng file nagravey Burn vagraveo CD ( xinlưu yacute lagrave dugraveng Nero hoặc chương trigravenh cheacutep đĩa ưa thiacutech rồi burn vagraveo cd_romchứ khocircng phải cheacutep file đoacute vagraveo cd_rom)
Sau khi coacute CD Hatildey boot từ CD nagravey để cagravei đặt trixbox
Chuacute yacute dữ liệu trecircn đĩa cứng sẽ bị xoacutea sạch để cagravei đặt trixbox Nếu trongđĩa cứng cograven dữ liệu hatildey backup tất cả trước khi tiến hagravenh lắp đặt trixbox
Tới đacircy lần lượt caacutec magraven higravenh chỉ dẫn sẽ hiện ra vagrave cứ theo hướng dẫn magrave cagraveđặt Sau khi cagravei đặt xong chuacuteng ta dugraveng Username root vagrave password password đểđăng nhập hệ thống
3 Cấu higravenh địa chỉ IP cho card mạng
Thiết lập địa chỉ IP bằng caacutech gotilde lệnh
netconfig
Chọn OK để thiếp lập
Nếu trong mạng coacute hỗ trợ DHCP thigrave hatildey chọn mục nagravey cograven nếu khocircng hatildeynhập địa chỉ IP tĩnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4172
Taacutec Giả Lecirc Quốc Toagraven
41
IP 19216801
Netmask 2552552550
Gateway 19216893254 ngotilde ra becircn ngoagravei
Primary nameserver 19216893200 thiết lập nếu coacute
Chọn OK để chấp nhận caacutec thiết lập trecircn
Sau khi hoagraven tất hatildey lagravem cho thiết lập coacute hiệu lực bằng caacutech reset lại
maacutey tiacutenh hoặc dugraveng lệnh sau
Service network stop
Service network start
Đến đacircy xem như cagravei đặt hoagraven tất bacircy giờ để cấu higravenh được Asterisk chuacutengta vagraveo một magravey khaacutec vagrave mở Internet Explorer hoặc một trigravenh duyệt web bất kỳ
nhập vagraveohttp19216801đatilde cấu higravenh ở trecircn vagrave tiến hagravenh cấu higravenh hệ thốngvới tagravei khoảng username maint vagrave password password
4 Tổ Chức Thư Mục của Asterisk
Asterisk sử dụng nhiều thư mục trecircn hệ thống linux để quản lyacute caacutec khiacutea cạnkhaacutec nhau của hệ thống như nghi nhận bản tin thoại caacutec bản tin nhắc thoại hoặcaacutec tập tin cấu higravenh Phần nagravey sẽ trigravenh bagravey caacutec thư mục chiacutenh yếu được tạo ra tronquaacute trigravenh lắp đặt vagrave được cấu higravenh trong tập tin Asteriskconf
1 etcasterisk
Thư mục etcasterisk chứa tất cả caacutec tập tin cấu higravenh của hệ thốngAsterisk ngoại trừ tập tin Zaptelconf được đặt tại thư mục etc Phần cứnZaptel đầu tiecircn được phaacutet triển bởi Jim Dixon thuộc nhoacutem Zapata Telephony
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4272
Taacutec Giả Lecirc Quốc Toagraven
42
Group để giao tiếp giữa maacutey tiacutenh với mạng điện thoại magrave Asterisk lại sửdụng phần cứng nagravey với lyacute do đoacute magrave file cấu higravenh zaptelconf khocircng nằmtrong thư mục etcasterisk
2 usrlibasteriskmodules
Thư mục usrlibasteriskmodules chứa tất cả caacutec module cần thiết đểasterisk hoạt động Becircn trong thư mục lagrave caacutec ứng dụng khaacutec nhau caacutec codeccaacutec định dạng acircm thanh(format) vagrave caacutec kecircnh thocircng tin(channel) Theo mặc địnhAsterisk sẽ nạp tất cả caacutec module vagraveo luacutec khởi động Chuacuteng ta coacute thể khocircng cho
nạp một module bất kỳ bằng caacutech khocircng khai baacuteo sử dụng trong tập tinmodulesconf Lưu yacute khi khocircng cho nạp module thigrave phải biết chắc module đoacutekhocircng lagravem ảnh hưởng hoạt động của asterisk nếu khocircng lỗi sẽ xuất hiện
3 varlibasterisk
Thư mục varlibasterisk chứa tập tin astdb vagrave một số thư mục con Tập tinastdb định vị thocircng tin cơ sở dữ liệu của Asterisk giống như Microsoft WindowsRegistry
Caacutec thư mục con của thư mục varlibasterisk bao gồm
agi-bin
Thư mục agi-bin chứa caacutec script của người dugraveng magrave Asterisk coacute thểđịnh vị sử dụng qua caacutec ứng dụng AGI
AGI lagrave phần giao tiếp với ngocircn ngữ lập trigravenh script để thực hiện mộtsố cocircng việc của Asterisk từ becircn ngoagravei
firmware
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4372
Taacutec Giả Lecirc Quốc Toagraven
43
Thư mục firmware chứa một số phần dẻo(firmware) cho caacutec thiết bịkhaacutec nhau tương thiacutech với Asterisk Hiện tại chỉ coacute thư mục con iax chứa
firmware cho thiếy bị IAXy của Digium IAXy lagrave thiết bị ATA sử dụng giaothức IAX
images
Caacutec ứng dụng thocircng tin với caacutec kecircnh hỗ trợ ảnh images thigrave sử dụng thư mụcnagravey Nhưng hiện tại caacutec kecircnh thocircng tin hầu như khocircng hỗ trợ truyền ảnh images necircthư mục nagravey cũng hiếm khi được sử dụng Tuy nhiecircn nếu caacutec thiết bị coacute hỗ trợ ththư mục nagravey trở necircn hiệu dụng
keys
Asterisk coacute thể sử dụng hệ thống khoaacute publicprivate để xaacutec minh caacutec kết nốgiữa caacutec server Asterisk thocircng qua chữ kyacute điện tử RSA Nếu đặt một khoaacute publicvagraveo thư mục keys thigrave kết nối của server đầu becircn kia coacute thể được xaacutec minh bằn
kecircnh thocircng tin coacute hỗ trợ đối với Asterisk thigrave kecircnh giao thức IAX hỗ trợ loại xaacutecminh nagravey Một khoaacute private khocircng bao giờ cocircng bố chuacuteng ta chỉ cocircng bố khoaacute public đến với server cần nối đến sau đoacute sẽ được xaacutec minh với khoaacute private nagravey Chai khoaacute public vagrave private được lưu với đuocirci pub vagrave key đặt tại thư mục keys
mohmp3
Khi cấu higravenh Asterisk sử dụng tiacutenh năng Music on Hold tiacutenh năng hoạt độngsẽ thực hiện lấy caacutec tập tin mp3 tại thư mục mohmp3 Tập tin định dạng theo chucủa Asterisk necircn khi sử dụng caacutec file Mp3 thocircng thường cần coacute sự chuyển đổi thiacutechợp trước khi cheacutep vagraveo thư mục trecircn để sử dụng
sounds
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4472
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4572
Taacutec Giả Lecirc Quốc Toagraven
45
Thư mục tmp sử dụng để lưu trữ những thocircng tin tạm để luocircn bảo đảm khocircnxảy ra tigravenh trạng đọc vagrave viết tập tin cugraveng một luacutec Khi yecircu cầu xử lyacute tập tin chuacuteng thao taacutec trecircn thư mục tmp trước khi lưu vagraveo tập tin điacutech
Tất cả caacutec lời nhắc thoại từ phiacutea người sử dụng vagrave caacutec lời nhắc thoại sử dụ
cho thao taacutec hộp voicemail đều được chứa trong thư mục voicemail Một hộp thưthoại được tạo ra ứng với một maacutey nội bộ trong tập tin voicemailconf sẽ được tra một thư mục con tương ứng cho maacutey nội bộ đoacute tại thư mục voicemail
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4672
Taacutec Giả Lecirc Quốc Toagraven
46
5 varrun
Thư mục varrun chứa thocircng tin process ID(pid) cho tất cả caacutec tiến trigravenh đang
hoạt động trong hệ thống bao gồm cả Asterisk Lưu yacute lagrave ứng với mỗi hệ điều hagravethư mục varrun coacute thể khaacutec
6 varlogasterisk
Thư mục varlogasterisk lagrave nơi Asterisk chứa tất cả caacutec tập tin nhật kyacute haycograven gọi lagrave tập tin log Chuacuteng ta coacute thể tuỳ biến caacutec loại thocircng tin được lưu trong caacutec
tập tin log khaacutec nhau qua tập tin cấu higravenh loggerconf đặt tại thư mục etcasterisk7 varlogasteriskcdr-csv
Thư mục varlogasteriskcdr-csv được sử dụng để lưu chi tiết cuộc gọi CDRThocircng tin mặc định về chi tiết thocircng tin cuộc gọi lưu trữ trong tập tin MasterCVSnhưng thường thigrave ứng với mỗi matilde accountcode sẽ tạo một thư mục riecircng để lưu ctiết cuộc gọi cho maacutey đoacute
5 Một số lệnh thao taacutec trecircn hệ thống asterisk
Asterisk coacute hai thagravenh phần được xacircy dụng tiacutech hợp với nhau vagrave chạy songsong nhau
Asterisk Server bigravenh thường chạy ở chế độ nền(background) giống caacutec sevicestrong window
Asterisk Client ở chế độ dograveng lệnh CLI giao tiếp với Asterisk Server thực thicaacutec lệnh để kiểm tra hay xem caacutec thocircng tin của server
Để Chạy vagrave dừng Asterisk ở chế độ nền chuacuteng ta thực hiện lệnh sau
etcinitdasterisk (start|stop)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4772
Taacutec Giả Lecirc Quốc Toagraven
47
Một khi Asterisk đatilde chạy chuacuteng ta coacute thể chuyển qua chế độ CLI từ dấu nhắlệnh của linux như sau
asterisk ndashr
Khi vagraveo chế độ lệnh nếu muốn thoaacutet về lại dấu nhắc linux chuacuteng ta dugraveng lệnh
CLIgtexit
Caacutec lệnh cơ bản thực hiện tại CLIgt
Bất cứ khi nagraveo chỉnh sửa caacutec tập tin cấu higravenh chuacuteng ta đều cần phải nạp lại đcaacutec thay đổi coacute hiệu lực điều đoacute thực hiện bằng lệnh
CLIgtreload
Bậc chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 debug
CLIgt SIP debug
Tắt chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 no debug
CLIgt SIP no debug
Hiển thị caacutec trạng thaacutei thocircng tin của users peers vagravechannels của SIP hoặc IAX2
CLIgt sip show users
CLIgt sip show peers
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4872
Taacutec Giả Lecirc Quốc Toagraven
48
CLIgt sip show channels
CLIgt iax2 show peers
CLIgt iax2 show users
CLIgt iax2 show channels
Đến thời điểm nagravey coacute thể noacutei chuacuteng ta đatilde hoagraven thagravenh cagravei đặt hệ thốngAsterisk cagravei đặt xong mới lagrave bước mở đầu để cho hệ thống Asterisk hoạt động vtừng ứng dụng cụ thể chuacuteng sẽ tiếp tục thực hiện caacutec giai đoạn được xem lagrave qutrọng nhất trong việc triển khai hệ thống Asterisk đoacute lagrave giai đoạn cấu higravenh hệ thốnlecircn kế hoạch Diaplan chương cograven lại đều nhắm đến mục tiecircu nagravey
4 CẤU HIgraveNH HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Sau khi hoagraven tất phần cagravei đặt hệ thống asterisk một bước quan trọng tiếp thelagrave cấu higravenh hệ thống coacute thể noacutei đacircy lagrave bước quan trọng nhất của việc khiển khai thống đến với từng ứng dụng cụ thể Trong chương nagravey xin giới thiệu caacutei nhigraven đầtiecircn về việc cấu higravenh trước khi đi sacircu hơn ở những chương sau những gigrave giới thiệ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4972
Taacutec Giả Lecirc Quốc Toagraven
49
trong chương nagravey lagrave nền moacuteng cơ bản nhưng đủ để hiểu lagravem thế nagraveo hệ thống coacute thoạt động được nội dung chiacutenh bao gồm
+ Thao taacutec cấu higravenh trecircn hệ thống tập tin của asterisk
+ Caacutech cagravei đặt phần mềm softphone trecircn cocircng nghệ sip
+ Cấu higravenh cho hai maacutey softphone liecircn lạc với nhau
+ Cấu higravenh phaacutet thocircng điệp
+ Quay số qua Sip vagrave mạng PSTN
2 Tập Tin cấu higravenh
Tất cả caacutec file cấu higravenh cho hệ thống asterisk đều nằm tại thư mục etcasterisngoại trừ file zaptelconf cấu higravenh cho phần cứng TDM nằm tại thư mục etc caacutecthức cấu higravenh giống như tập tin ini của window vậy Caacutec nội dung sau dấu chấm phảy lagrave nội dung chuacute thiacutech trong file cấu higravenh giống như chuacute thiacutech trong ngocircn ngữ
lập trigravenh C lagrave dấu Tất cả caacutec khoảng trắng trong tập tin đều được bỏ qua khocircng yacute nghĩa trong file cấu higravenh
Trong file cấu higravenh cograven coacute hai pheacutep gaacuten rất thường xuyecircn được sử dụng pheacutep gaacuten ldquo=rdquo lagrave dugraveng cho việc gaacuten caacutec biến cograven pheacutep gaacuten ldquo=gtrdquo dugraveng cho việc gaacutencaacutec đối tượng sau đacircy lagrave một viacute dụ cho file cấu higravenh
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5072
Taacutec Giả Lecirc Quốc Toagraven
50
Đacircy lagrave caacutec dograveng chuacute thiacutech
[section]
Key=value gaacuten giaacute trị cho biến
[section2]
Key=gtobject Gaacuten giaacute trị cho đối tượng
Cuacute phaacutep thực hiện giống nhau cho tất cả caacutec file cấu higravenh nhưng coacute vagravei kiểukhaacutec nhau cho mỗi file cầu higravenh dựa vagraveo thức caacutech hoạt động của chuacuteng
3 Caacutec kiểu ảnh hưởng trong tập cấu higravenh
Coacute ba kiểu caacutech thức hoạt động của tập tin cấu higravenh như sau
Kiểu Caacutech hoạt động File cầu higravenh Viacute dụ
S i m p l eGroup
Coacute hiệu lực trecircntừng dograveng trongfile
Extensionconf
Exten=gt4001dial(sip400)
O p t i o ninheritance
Dograveng khai baacuteosau thừa kếnhững thocircng sốkhai baacuteo trước
Zapataconf [channels]
Context=From_PSTN
Signalling=fxs_ks
Group=1Channel=gt1
C o m p l e xEntity
Mỗi entity nhậnmột ngữ cảnh
sipconf
iaxconf
[cisco]
Type=friend
Secret=12345
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5172
Taacutec Giả Lecirc Quốc Toagraven
51
Host=192168165
Context=NoiBo
[xten]
Type=friend
Secret=6789
Host=dynamic
Context=NoiBo
1 Simple Group
Đacircy lagrave kiểu cấu higravenh đơn giản nhất thường sử dụng trong caacutec fileextentionconf meetmeconf voicemailconf tương ứng với mỗi dograveng khai baacuteo lagravemột đối tượng coacute yacute nghĩa trecircn dograveng đoacute
Viacute dụ
Extentionconf [section]
object1=gt op1op2op3
object2=gt op1bop2bop3b
Trong viacute dụ trecircn mỗi dograveng tương ứng với caacutec toaacuten tử khaacutec nhau object1 coacute caacutectoaacuten từ op1 op2 op3 trong khi đoacute object2 lại coacute caacutec toaacuten từ op1b op2b op3b
2 Option inheritance
Đacircy lagrave cấu higravenh kiểu thừa kế thường được cấu higravenh trong caacutec file zapataconfagentconf với kiểu cấu higravenh nagravey thigrave caacutec dograveng phiacutea dưới coacute thể thừa kế caacutec thocircng sdograveng phiacutea trecircn tương ứng với mỗi section caacutec dograveng phiacutea dưới coacute thể thay đổi caacutecthocircng số cho tươngứng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5272
Taacutec Giả Lecirc Quốc Toagraven
52
Viacute dụ
Extentionconf
[section]
Op1=bas
Op2=adv
Object1=gt1
Op1=int
Object1=gt2
Với cấu higravenh trecircn coacute thể giải thiacutech như sau object1=gt1 thừa hưởng hai thocircngsố ở phiacutea trecircn đoacute lagrave op1=bas vagrave op2=adv trong khi đoacute đối với object1=gt2 với thocircngsố op1=int được khai baacuteo lại necircn object1=gt2 được thừa kế từ hai thocircng số op1=invagrave op2=adv
3 Complex Entity
Với cấu kiểu nagravey được tổ chức thagravenh nhiều entity ứng với mỗi entity coacute nhiềthocircng số được khai baacuteo mỗi entity ở đacircy chiacutenh lagrave caacutec section để khai baacuteo caacutec kecircnhthocircng tin Cấu higravenh thường được sử dụng trong caacutec file iaxconf sipconf
Viacute dụ
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5372
Taacutec Giả Lecirc Quốc Toagraven
53
[entity1]
Op1=value1
Op2=value2
[entity2]
Op1=value3
Op2=value4
Entity1 coacute caacutec giaacute trị value1 vagrave value2 cho thocircng số op1 vagrave op2 trong khi đoacute
cũng lagrave thocircng số op1 vagrave op 2 nhưng coacute caacutec giaacute trị khaacutec lagrave value3 vagrave value4 choentity2
4 Cấu higravenh giao tiếp với mạng PSTN
1 Ngữ cảnh kết nối
Để kết nối với mạng PSTN chuacuteng ta cần phải coacute một card TDM với Cổng
FXO vagrave một đường dacircy điện thoại hoặc coacute thể lagrave một tổng đagravei nội bộ PBX Cnhiều nhagrave sản xuất phần cứng khaacutec nhau nhưng trong phần cấu higravenh dưới dacircy lagrave cấhigravenh cho card zapata TDM01B của digium (card nagravey hiện nay giaacute baacuten khoảng175$)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 2972
Taacutec Giả Lecirc Quốc Toagraven
29
8 Thiết Bị VoIP
1 Voip Phone
Đacircy lagrave thiết bị phần cứng kết nối với mạng VoIP giống như maacutey điện thoại đ bagraven thocircng thường nhưng dagravenh cho VoIP cần phải thực hiện cấu higravenh trước khi sửdụng
Lưu yacute một số tiacutenh năng khi thực hiện mua thiết bị điện thoại VoIP
+ Low bandwidth hỗ trợ Codec nagraveo G729 lagrave tốt nhất hiện nay
+ Web Interface Phải coacute giao tiếp thiết lập cấu higravenh thacircn thiện dễ sử dụng
+ Audio Interface Coacute speaker phone hay khocircng
Giaacute thagravenh của điện thoại voip IP đắc hơn điện thoại thocircng thường giaacute khoảntrecircn dưới 100$ một caacutei
Higravenh Maacutey Điện Thoại VoIP
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3072
Taacutec Giả Lecirc Quốc Toagraven
30
2 Softphone
Lagrave một phần mềm được cagravei trecircn maacutey tiacutenh thực hiện tất cả caacutec chức năng giốn
như thiết bị điện thoại Voip cần lưu yacute khi sử dụng softphone lagrave maacutey tiacutenh phải ccard acircm thanh headphone vagrave firewall khocircng bị khoacutea
Sử dụng softphone với hệ thống Asterisk necircn dugraveng softphone với cocircng nghệgiao thức mới dagravenh cho Asterisk đoacute lagrave IAX
Higravenh Điện Thoại Softphone
3 Card giao tiếp với PSTN
Muốn cho pheacutep caacutec maacutey điện thoại nội bộ trong hệ thống Asterisk kết nối vthực hiện cuộc gọi với mạng PSTN chuacuteng ta cần phải coacute thiết bị phần cứng tươthiacutech Thiết bị phần cứng sử dụng cho hệ thống Asterisk do chiacutenh taacutec giả lập cocircng
Digium phacircn phối đacircy cũng chiacutenh lagrave yacute tưởng lớn trong việc phacircn phối phần mềmAsterisk lagrave hệ thống nguồn mở sử dụng miễn phiacute
Thiết bị phần cứng thường kyacute hiệu bắt đầu bằng cụm từ TDMxyB trong đoacute lagrave số lượng port FXS y lagrave số lượng port FXO giaacute trị tối đa của x vagrave y lagrave 4 viacute dụcard TDM22B coacute nghĩa lagrave coacute 2 fort FXS vagrave 2 port FXO
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3172
Taacutec Giả Lecirc Quốc Toagraven
31
Higravenh Card TDM22B gồm 4 port 2 FXS vagrave 2 FXO
4 ATA Analog Telephone Adaptors
ATA lagrave thiết bị kết nối với điện thoại Analog thocircng thường đến mạng VoIPmột thiết bị ATA gồm coacute hai loại port RJ-11 để kết nối với maacutey điện thoại analo
thocircng thường cograven RJ-45 để kết nối với mạng VoIP
ATA thực sự lagrave thiết bị FXS chuyển đổi tiacuten hiệu Analog sang tiacuten hiệu số sửdụng cho mạng VoIP để tận dụng maacutey điện thoại Analog necircn trang bị thiết bị ATAthay vigrave phải trang bị điện thoại VoIP
Thiết bị ATA sử dụng với giao thức IAX được Digium phacircn phối lagrave thiết bịATA được sử dụng rộng ratildei với Asterisk coacute tecircn gọi lagrave IAXy
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3272
Taacutec Giả Lecirc Quốc Toagraven
32
Higravenh Thiết bị ATA
9 Codecs
Thuật Toaacuten codecs(CompressorDe-compressor) lagrave một tập caacutec quy luật đượcsử dụng để chuyển đổi caacutec tiacuten hiệu thoại dạng Analog sang tiacuten hiệu số vagrave ngược lạ
Coacute nhiều thuật toaacuten codec để thực hiện chuyển đổi tiacuten hiệu analog sang tiacuten
hiệu số dạng nhị phacircn (01) như G711 GSM G729hellipỨng với mỗi thuật toaacuten coacutenhững ưu điểm riecircng đặc biệt lagrave việc tối ưu sử dụng băng thocircng trecircn đường truyềMục tiecircu cuối cugraveng lagrave caacutec thuật toaacuten đưa ra phải đảm bảo chất lượng cuộc gọi nhvagrave tiết kiệm băng thocircng nhất
G729 lagrave thuật toaacuten codec tốt nhất hiện nay trong hệ thống VoIP Với hệthống Asterisk để sử dụng thuật toaacuten nagravey cần phải mua bản quyền sử dụng vigrave đacircy
codec khocircng miễn phiacute sử dụng
10 QoS ndash Quality of Service
Caacutec yếu tố ảnh hưởng đến chất lượng của dịch vụ đối với VoIP đoacute lagrave caacuteyếu ảnh hưởng đến chất lượng tiacuten hiệu thoại
1 Độ trễ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3372
Taacutec Giả Lecirc Quốc Toagraven
33
Thoại lagrave dịch vụ mang tiacutenh thời gian thực rất cao vigrave thế trễ lagrave yếu tố ảnhhưởng rất lớn đến chất lượng dịch vụ Trễ được định nghĩa lagrave khoảng thời gian tiacute
từ luacutec tiacuten hiệu thoại đi từ miệng người noacutei tới tai người nghe Trễ lagrave yếu tố khocircnthể traacutenh khỏi độ trễ đối với mạng điện thoại truyền thống (mạng PSTN) khoảng50ms đến 70ms theo khiến nghị của ITU-T để đảm bảo chất lượng cho hệ thốVoIP thigrave độ trễ từ đầu phaacutet tới đầu thu hoặc ngược lại khocircng được vượt quaacute 150mkhi magrave độ trễ vượt quaacute 400ms đến 500ms thigrave khocircng thể chấp nhận được
Caacutec nguyecircn nhacircn gacircy ra trễ bao gồm Trễ trecircn mạng lưới trễ trecircn bộ mả hoacutea
giải matilde trễ trong quaacute trigravenh đoacuteng goacutei trễ bộ đệm trễ xử lyacute tiếng noacuteihellip2 Độ trượt(Jitter)
Nguyecircn nhacircn gacircy ra trượt lagrave goacutei tiacuten hiệu thoại trong quaacute trigravenh truyền từnguồn đến điacutech sẽ gặp phải những điều kiện khaacutec nhau trecircn mạng lưới do đoacute thườđến điacutech với những khoảng trễ khaacutec nhau Đacircy lagrave tiacutenh khocircng đồng nhất của trễ Mnguyecircn nhacircn khaacutec của trượt đối với ứng dụng PC to PC lagrave do việc sử dụng hệ điề
hagravenh phi thời gian thực caacutec goacutei tin thoại phải đợi hệ điều hagravenh xử lyacute trong nhữnkhoảng thời gian khaacutec nhau khi magrave hệ điều hagravenh đang phải xử lyacute đối với caacutec ứndụng khaacutec
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3472
Taacutec Giả Lecirc Quốc Toagraven
34
Higravenh Nguyecircn nhacircn xảy ra trượt
Để loại bỏ tiacutenh khocircng đồng nhất của trễ người ta thiết kế caacutec bộ đệm t(Jitter Buffer) tại nơi đến của caacutec goacutei tin caacutec goacutei tin đến với caacutec khoảng caacutech khaacutecnhau về thời gian được lưu tại bộ đệm rồi phaacutet khỏi bộ đệm với khoảng trễ n
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3572
Taacutec Giả Lecirc Quốc Toagraven
35
nhau Khi bộ đếm coacute kiacutech thước cagraveng lớn thigrave khả năng loại bỏ tiacutenh khocircng đồng nhấcagraveng lớn tuy nhiecircn việc sử dụng bộ đệm sẽ gacircy ra hiện tượng trễ trong ứng dụnthoại do đoacute cần coacute bagravei toaacuten cacircn đối giữa độ trễ vagrave độ trượt
Ngoagravei 2 nguyecircn nhacircn trecircn cograven một số nguyecircn nhacircn nữa ảnh hưởng đến chấtlượng thoại như độ mất goacutei giới hạn băng thocircng tiếng vọng
3 CAgraveI ĐẶT ASTERISK
1 Cagravei đặt Asterisk
1 Download vagrave bung neacuten
Để cagravei đặt Asterisk đầu tiecircn chuacuteng ta cần phải cagravei đặt hệ điều hagravenh linux trecircnmaacutey tiacutenh của migravenh Coacute thể cagravei hệ điều hagravenh Linux Fedora CentOS Redhat hoặcDebian Caacutec goacutei phần mềm phụ thuộc phải coacute trong hệ điều hagravenh Linux trước khcagravei Asterisk bao gồm
bison
gcc
kernel-source
libtermcap-devel
ncurses-devel
openssl096b
openssl-devel
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3672
Taacutec Giả Lecirc Quốc Toagraven
36
Sau khi hoagraven tất caacutec bước trecircn chuacuteng ta tiến hagravenh download phần mềmasterisk với phiecircn bản mới nhất
cd usrsrc
wgetftpftpdigiumcompubasteriskasterisk-140targz
wgetftpftpdigiumcompubasteriskasterisk-addons-140targz
wgetftpftpdigiumcompubasteriskasterisk-sounds-140targz
wgethttpftpdigiumcompubzaptelzaptel-140targz
wgethttpftpdigiumcompublibprilibpri-140targz
Việc download coacute thể nhanh hay chậm tugravey vagraveo tốc độ trecircn đường internet saukhi download hoagraven thagravenh chuacuteng ta tiến hagravenh bung neacuten caacutec goacutei ra thư mục chỉ định
tar ndashxzvf asterisk-140targz
tar ndashxzvf asterisk-addons-140targz
tar ndashxzvf asterisk-sounds-140targz
tar ndashxzvf zaptel-140targz
tar ndashxzvf libpri-140targz
Giải neacuten xong chuacuteng ta nhớ thực hiện lệnh
ln ndashs usrsrcasterisk-140 usrsrcasterisk lệnh nagravey để bảo đảm goacuteildquoaddonsrdquo được biecircn dịch đuacuteng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3772
Taacutec Giả Lecirc Quốc Toagraven
37
Bacircy giờ tới phần chuacuteng ta biecircn dịch caacutec goacutei đatilde giải neacuten ở trecircn trước tiecircn lagrave goacuteizaptel kế đến lagrave libpri sau cugraveng lagrave goacutei Asterisk
2 Cagravei đặt goacutei Zaptel
Goacutei zaptel sẽ chứa tại thư mục usrsrczaptel Đaacutenh lệnh như dưới đacircy để cagraveđặt
cd usrsrczaptel
make clean make install
Lệnh nagravey thực hiện khoảng 2 phuacutet tugravey vagraveo tốc độ maacutey tiacutenh cagravei đặt sau khicagravei đặt xong sẽ trở lại dấu nhắc lệnh vagrave hiển thị một loạt caacutec thocircng baacuteo trong đoacute một số bản tin lỗi magrave chủ yếu lagrave yecircu cầu cagravei đặt caacutec goacutei phụ thuộc đatilde liệt kecirc ở trecircnếu caacutec goacutei trecircn chưa được cagravei đặt
Goacutei zaptel nagravey chứa caacutec driver cho caacutec phần cứng kết giao tiếp với asterisk
do Digium phacircn phối vagrave một số thư viện cho việc coacute thực hiện giao tiếp với phầcứng hay khocircng
Để Asterisk coacute thể chạy cugraveng với khởi động của maacutey tiacutenh chuacuteng ta cần thựchiện lệnh
make config
Lệnh nagravey sẽ tạo ra script chegraven module zaptel vagraveo kernel vagrave chạy ztconfig vagraveoluacutec khởi động maacutey Trong Redhat script nagravey sẽ được cheacutep vagraveo etcinitd chạy ở mức 3
3 Cagravei đặt goacutei libpri
Kế đến chuacuteng ta biecircn dịch goacutei libpri tại thư mục usrsrclibpri bằng lệnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3972
Taacutec Giả Lecirc Quốc Toagraven
39
make config
3 Cagravei đặt TrixBox
1 Giới thiệu
TRIXBOX được phaacutet triển từ nhacircn của ứng dụng Asterisk được tổng hợp từmột số thagravenh phần chiacutenh được phaacutet triển bởi cộng đồng phaacutet triển nguồn mAsterisk dưới bản quyền GPL Trixbox bao gồm những thagravenh phần chiacutenh cho việcấu higravenh ứng dụng thống kecirc tigravenh trạng hoạt động hệ thống lưu trữ dự phograveng v
nhacircn lagrave hệ điều hagravenh CentOS một phiecircn bản khaacutec của Redhat tất cả kết hợp vớnhau tạo thagravenh một goacutei hoagraven chỉnh Khi cagravei goacutei nagravey vagraveo maacutey tiacutenh thigrave coacute thể sử dụngnhư một tổng đagravei PBX
Caacutec thagravenh phần chiacutenh trong goacutei TRIXBOX lagrave
Asterisk PBX Thagravenh phần chiacutenh của hệ thống Trixbox
CentOS Một phiecircn bản Linux khaacutec của Redhat hoagraven toagraven miển phiacute sửdụng Lagrave nhacircn chiacutenh cho Trixbox
SugarCRM Hệ thống quan hệ khaacutech hagraveng CRM
A2Billing ndash Lagrave thagravenh phần dagravenh cho việc xacircy dựng hệ thống điện thoạitrả trước hay cograven gọi lagrave điện thọai thẻ (Calling Card)
Flash Operator Panel Bảng điều khiển giaacutem saacutet tigravenh trạng hoạt độngcủa caacutec maacutey điện thoại trong hệ thống
Web MeetMe Control Quản lyacute triển khai hệ thống điện thoại hội nghị
FreePBX Đacircy lagrave cocircng cụ với giao diện web dagravenh cho việc cấu higravenh hệthống Asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4072
Taacutec Giả Lecirc Quốc Toagraven
40
Hệ thống Lưu trữ dự phograveng vagrave thống kecirc Lagrave thagravenh phần của TRIXBOXcung cấp caacutec cocircng cụ cần thiết cho việc bảo trigrave bảo dưỡng hệ thống
Hệ thống Apache-Php-Mysql dagravenh cho giải phaacutep Webserver của hệthống
2 DOWNLOAD VAgrave LẮP ĐẶT TRIXBOX
Địa chỉ downloadhttpsourceforgenetprojectsasteriskathome
Khi download xong file Trixboxiso Hatildey dugraveng file nagravey Burn vagraveo CD ( xinlưu yacute lagrave dugraveng Nero hoặc chương trigravenh cheacutep đĩa ưa thiacutech rồi burn vagraveo cd_romchứ khocircng phải cheacutep file đoacute vagraveo cd_rom)
Sau khi coacute CD Hatildey boot từ CD nagravey để cagravei đặt trixbox
Chuacute yacute dữ liệu trecircn đĩa cứng sẽ bị xoacutea sạch để cagravei đặt trixbox Nếu trongđĩa cứng cograven dữ liệu hatildey backup tất cả trước khi tiến hagravenh lắp đặt trixbox
Tới đacircy lần lượt caacutec magraven higravenh chỉ dẫn sẽ hiện ra vagrave cứ theo hướng dẫn magrave cagraveđặt Sau khi cagravei đặt xong chuacuteng ta dugraveng Username root vagrave password password đểđăng nhập hệ thống
3 Cấu higravenh địa chỉ IP cho card mạng
Thiết lập địa chỉ IP bằng caacutech gotilde lệnh
netconfig
Chọn OK để thiếp lập
Nếu trong mạng coacute hỗ trợ DHCP thigrave hatildey chọn mục nagravey cograven nếu khocircng hatildeynhập địa chỉ IP tĩnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4172
Taacutec Giả Lecirc Quốc Toagraven
41
IP 19216801
Netmask 2552552550
Gateway 19216893254 ngotilde ra becircn ngoagravei
Primary nameserver 19216893200 thiết lập nếu coacute
Chọn OK để chấp nhận caacutec thiết lập trecircn
Sau khi hoagraven tất hatildey lagravem cho thiết lập coacute hiệu lực bằng caacutech reset lại
maacutey tiacutenh hoặc dugraveng lệnh sau
Service network stop
Service network start
Đến đacircy xem như cagravei đặt hoagraven tất bacircy giờ để cấu higravenh được Asterisk chuacutengta vagraveo một magravey khaacutec vagrave mở Internet Explorer hoặc một trigravenh duyệt web bất kỳ
nhập vagraveohttp19216801đatilde cấu higravenh ở trecircn vagrave tiến hagravenh cấu higravenh hệ thốngvới tagravei khoảng username maint vagrave password password
4 Tổ Chức Thư Mục của Asterisk
Asterisk sử dụng nhiều thư mục trecircn hệ thống linux để quản lyacute caacutec khiacutea cạnkhaacutec nhau của hệ thống như nghi nhận bản tin thoại caacutec bản tin nhắc thoại hoặcaacutec tập tin cấu higravenh Phần nagravey sẽ trigravenh bagravey caacutec thư mục chiacutenh yếu được tạo ra tronquaacute trigravenh lắp đặt vagrave được cấu higravenh trong tập tin Asteriskconf
1 etcasterisk
Thư mục etcasterisk chứa tất cả caacutec tập tin cấu higravenh của hệ thốngAsterisk ngoại trừ tập tin Zaptelconf được đặt tại thư mục etc Phần cứnZaptel đầu tiecircn được phaacutet triển bởi Jim Dixon thuộc nhoacutem Zapata Telephony
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4272
Taacutec Giả Lecirc Quốc Toagraven
42
Group để giao tiếp giữa maacutey tiacutenh với mạng điện thoại magrave Asterisk lại sửdụng phần cứng nagravey với lyacute do đoacute magrave file cấu higravenh zaptelconf khocircng nằmtrong thư mục etcasterisk
2 usrlibasteriskmodules
Thư mục usrlibasteriskmodules chứa tất cả caacutec module cần thiết đểasterisk hoạt động Becircn trong thư mục lagrave caacutec ứng dụng khaacutec nhau caacutec codeccaacutec định dạng acircm thanh(format) vagrave caacutec kecircnh thocircng tin(channel) Theo mặc địnhAsterisk sẽ nạp tất cả caacutec module vagraveo luacutec khởi động Chuacuteng ta coacute thể khocircng cho
nạp một module bất kỳ bằng caacutech khocircng khai baacuteo sử dụng trong tập tinmodulesconf Lưu yacute khi khocircng cho nạp module thigrave phải biết chắc module đoacutekhocircng lagravem ảnh hưởng hoạt động của asterisk nếu khocircng lỗi sẽ xuất hiện
3 varlibasterisk
Thư mục varlibasterisk chứa tập tin astdb vagrave một số thư mục con Tập tinastdb định vị thocircng tin cơ sở dữ liệu của Asterisk giống như Microsoft WindowsRegistry
Caacutec thư mục con của thư mục varlibasterisk bao gồm
agi-bin
Thư mục agi-bin chứa caacutec script của người dugraveng magrave Asterisk coacute thểđịnh vị sử dụng qua caacutec ứng dụng AGI
AGI lagrave phần giao tiếp với ngocircn ngữ lập trigravenh script để thực hiện mộtsố cocircng việc của Asterisk từ becircn ngoagravei
firmware
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4372
Taacutec Giả Lecirc Quốc Toagraven
43
Thư mục firmware chứa một số phần dẻo(firmware) cho caacutec thiết bịkhaacutec nhau tương thiacutech với Asterisk Hiện tại chỉ coacute thư mục con iax chứa
firmware cho thiếy bị IAXy của Digium IAXy lagrave thiết bị ATA sử dụng giaothức IAX
images
Caacutec ứng dụng thocircng tin với caacutec kecircnh hỗ trợ ảnh images thigrave sử dụng thư mụcnagravey Nhưng hiện tại caacutec kecircnh thocircng tin hầu như khocircng hỗ trợ truyền ảnh images necircthư mục nagravey cũng hiếm khi được sử dụng Tuy nhiecircn nếu caacutec thiết bị coacute hỗ trợ ththư mục nagravey trở necircn hiệu dụng
keys
Asterisk coacute thể sử dụng hệ thống khoaacute publicprivate để xaacutec minh caacutec kết nốgiữa caacutec server Asterisk thocircng qua chữ kyacute điện tử RSA Nếu đặt một khoaacute publicvagraveo thư mục keys thigrave kết nối của server đầu becircn kia coacute thể được xaacutec minh bằn
kecircnh thocircng tin coacute hỗ trợ đối với Asterisk thigrave kecircnh giao thức IAX hỗ trợ loại xaacutecminh nagravey Một khoaacute private khocircng bao giờ cocircng bố chuacuteng ta chỉ cocircng bố khoaacute public đến với server cần nối đến sau đoacute sẽ được xaacutec minh với khoaacute private nagravey Chai khoaacute public vagrave private được lưu với đuocirci pub vagrave key đặt tại thư mục keys
mohmp3
Khi cấu higravenh Asterisk sử dụng tiacutenh năng Music on Hold tiacutenh năng hoạt độngsẽ thực hiện lấy caacutec tập tin mp3 tại thư mục mohmp3 Tập tin định dạng theo chucủa Asterisk necircn khi sử dụng caacutec file Mp3 thocircng thường cần coacute sự chuyển đổi thiacutechợp trước khi cheacutep vagraveo thư mục trecircn để sử dụng
sounds
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4472
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4572
Taacutec Giả Lecirc Quốc Toagraven
45
Thư mục tmp sử dụng để lưu trữ những thocircng tin tạm để luocircn bảo đảm khocircnxảy ra tigravenh trạng đọc vagrave viết tập tin cugraveng một luacutec Khi yecircu cầu xử lyacute tập tin chuacuteng thao taacutec trecircn thư mục tmp trước khi lưu vagraveo tập tin điacutech
Tất cả caacutec lời nhắc thoại từ phiacutea người sử dụng vagrave caacutec lời nhắc thoại sử dụ
cho thao taacutec hộp voicemail đều được chứa trong thư mục voicemail Một hộp thưthoại được tạo ra ứng với một maacutey nội bộ trong tập tin voicemailconf sẽ được tra một thư mục con tương ứng cho maacutey nội bộ đoacute tại thư mục voicemail
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4672
Taacutec Giả Lecirc Quốc Toagraven
46
5 varrun
Thư mục varrun chứa thocircng tin process ID(pid) cho tất cả caacutec tiến trigravenh đang
hoạt động trong hệ thống bao gồm cả Asterisk Lưu yacute lagrave ứng với mỗi hệ điều hagravethư mục varrun coacute thể khaacutec
6 varlogasterisk
Thư mục varlogasterisk lagrave nơi Asterisk chứa tất cả caacutec tập tin nhật kyacute haycograven gọi lagrave tập tin log Chuacuteng ta coacute thể tuỳ biến caacutec loại thocircng tin được lưu trong caacutec
tập tin log khaacutec nhau qua tập tin cấu higravenh loggerconf đặt tại thư mục etcasterisk7 varlogasteriskcdr-csv
Thư mục varlogasteriskcdr-csv được sử dụng để lưu chi tiết cuộc gọi CDRThocircng tin mặc định về chi tiết thocircng tin cuộc gọi lưu trữ trong tập tin MasterCVSnhưng thường thigrave ứng với mỗi matilde accountcode sẽ tạo một thư mục riecircng để lưu ctiết cuộc gọi cho maacutey đoacute
5 Một số lệnh thao taacutec trecircn hệ thống asterisk
Asterisk coacute hai thagravenh phần được xacircy dụng tiacutech hợp với nhau vagrave chạy songsong nhau
Asterisk Server bigravenh thường chạy ở chế độ nền(background) giống caacutec sevicestrong window
Asterisk Client ở chế độ dograveng lệnh CLI giao tiếp với Asterisk Server thực thicaacutec lệnh để kiểm tra hay xem caacutec thocircng tin của server
Để Chạy vagrave dừng Asterisk ở chế độ nền chuacuteng ta thực hiện lệnh sau
etcinitdasterisk (start|stop)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4772
Taacutec Giả Lecirc Quốc Toagraven
47
Một khi Asterisk đatilde chạy chuacuteng ta coacute thể chuyển qua chế độ CLI từ dấu nhắlệnh của linux như sau
asterisk ndashr
Khi vagraveo chế độ lệnh nếu muốn thoaacutet về lại dấu nhắc linux chuacuteng ta dugraveng lệnh
CLIgtexit
Caacutec lệnh cơ bản thực hiện tại CLIgt
Bất cứ khi nagraveo chỉnh sửa caacutec tập tin cấu higravenh chuacuteng ta đều cần phải nạp lại đcaacutec thay đổi coacute hiệu lực điều đoacute thực hiện bằng lệnh
CLIgtreload
Bậc chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 debug
CLIgt SIP debug
Tắt chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 no debug
CLIgt SIP no debug
Hiển thị caacutec trạng thaacutei thocircng tin của users peers vagravechannels của SIP hoặc IAX2
CLIgt sip show users
CLIgt sip show peers
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4872
Taacutec Giả Lecirc Quốc Toagraven
48
CLIgt sip show channels
CLIgt iax2 show peers
CLIgt iax2 show users
CLIgt iax2 show channels
Đến thời điểm nagravey coacute thể noacutei chuacuteng ta đatilde hoagraven thagravenh cagravei đặt hệ thốngAsterisk cagravei đặt xong mới lagrave bước mở đầu để cho hệ thống Asterisk hoạt động vtừng ứng dụng cụ thể chuacuteng sẽ tiếp tục thực hiện caacutec giai đoạn được xem lagrave qutrọng nhất trong việc triển khai hệ thống Asterisk đoacute lagrave giai đoạn cấu higravenh hệ thốnlecircn kế hoạch Diaplan chương cograven lại đều nhắm đến mục tiecircu nagravey
4 CẤU HIgraveNH HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Sau khi hoagraven tất phần cagravei đặt hệ thống asterisk một bước quan trọng tiếp thelagrave cấu higravenh hệ thống coacute thể noacutei đacircy lagrave bước quan trọng nhất của việc khiển khai thống đến với từng ứng dụng cụ thể Trong chương nagravey xin giới thiệu caacutei nhigraven đầtiecircn về việc cấu higravenh trước khi đi sacircu hơn ở những chương sau những gigrave giới thiệ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4972
Taacutec Giả Lecirc Quốc Toagraven
49
trong chương nagravey lagrave nền moacuteng cơ bản nhưng đủ để hiểu lagravem thế nagraveo hệ thống coacute thoạt động được nội dung chiacutenh bao gồm
+ Thao taacutec cấu higravenh trecircn hệ thống tập tin của asterisk
+ Caacutech cagravei đặt phần mềm softphone trecircn cocircng nghệ sip
+ Cấu higravenh cho hai maacutey softphone liecircn lạc với nhau
+ Cấu higravenh phaacutet thocircng điệp
+ Quay số qua Sip vagrave mạng PSTN
2 Tập Tin cấu higravenh
Tất cả caacutec file cấu higravenh cho hệ thống asterisk đều nằm tại thư mục etcasterisngoại trừ file zaptelconf cấu higravenh cho phần cứng TDM nằm tại thư mục etc caacutecthức cấu higravenh giống như tập tin ini của window vậy Caacutec nội dung sau dấu chấm phảy lagrave nội dung chuacute thiacutech trong file cấu higravenh giống như chuacute thiacutech trong ngocircn ngữ
lập trigravenh C lagrave dấu Tất cả caacutec khoảng trắng trong tập tin đều được bỏ qua khocircng yacute nghĩa trong file cấu higravenh
Trong file cấu higravenh cograven coacute hai pheacutep gaacuten rất thường xuyecircn được sử dụng pheacutep gaacuten ldquo=rdquo lagrave dugraveng cho việc gaacuten caacutec biến cograven pheacutep gaacuten ldquo=gtrdquo dugraveng cho việc gaacutencaacutec đối tượng sau đacircy lagrave một viacute dụ cho file cấu higravenh
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5072
Taacutec Giả Lecirc Quốc Toagraven
50
Đacircy lagrave caacutec dograveng chuacute thiacutech
[section]
Key=value gaacuten giaacute trị cho biến
[section2]
Key=gtobject Gaacuten giaacute trị cho đối tượng
Cuacute phaacutep thực hiện giống nhau cho tất cả caacutec file cấu higravenh nhưng coacute vagravei kiểukhaacutec nhau cho mỗi file cầu higravenh dựa vagraveo thức caacutech hoạt động của chuacuteng
3 Caacutec kiểu ảnh hưởng trong tập cấu higravenh
Coacute ba kiểu caacutech thức hoạt động của tập tin cấu higravenh như sau
Kiểu Caacutech hoạt động File cầu higravenh Viacute dụ
S i m p l eGroup
Coacute hiệu lực trecircntừng dograveng trongfile
Extensionconf
Exten=gt4001dial(sip400)
O p t i o ninheritance
Dograveng khai baacuteosau thừa kếnhững thocircng sốkhai baacuteo trước
Zapataconf [channels]
Context=From_PSTN
Signalling=fxs_ks
Group=1Channel=gt1
C o m p l e xEntity
Mỗi entity nhậnmột ngữ cảnh
sipconf
iaxconf
[cisco]
Type=friend
Secret=12345
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5172
Taacutec Giả Lecirc Quốc Toagraven
51
Host=192168165
Context=NoiBo
[xten]
Type=friend
Secret=6789
Host=dynamic
Context=NoiBo
1 Simple Group
Đacircy lagrave kiểu cấu higravenh đơn giản nhất thường sử dụng trong caacutec fileextentionconf meetmeconf voicemailconf tương ứng với mỗi dograveng khai baacuteo lagravemột đối tượng coacute yacute nghĩa trecircn dograveng đoacute
Viacute dụ
Extentionconf [section]
object1=gt op1op2op3
object2=gt op1bop2bop3b
Trong viacute dụ trecircn mỗi dograveng tương ứng với caacutec toaacuten tử khaacutec nhau object1 coacute caacutectoaacuten từ op1 op2 op3 trong khi đoacute object2 lại coacute caacutec toaacuten từ op1b op2b op3b
2 Option inheritance
Đacircy lagrave cấu higravenh kiểu thừa kế thường được cấu higravenh trong caacutec file zapataconfagentconf với kiểu cấu higravenh nagravey thigrave caacutec dograveng phiacutea dưới coacute thể thừa kế caacutec thocircng sdograveng phiacutea trecircn tương ứng với mỗi section caacutec dograveng phiacutea dưới coacute thể thay đổi caacutecthocircng số cho tươngứng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5272
Taacutec Giả Lecirc Quốc Toagraven
52
Viacute dụ
Extentionconf
[section]
Op1=bas
Op2=adv
Object1=gt1
Op1=int
Object1=gt2
Với cấu higravenh trecircn coacute thể giải thiacutech như sau object1=gt1 thừa hưởng hai thocircngsố ở phiacutea trecircn đoacute lagrave op1=bas vagrave op2=adv trong khi đoacute đối với object1=gt2 với thocircngsố op1=int được khai baacuteo lại necircn object1=gt2 được thừa kế từ hai thocircng số op1=invagrave op2=adv
3 Complex Entity
Với cấu kiểu nagravey được tổ chức thagravenh nhiều entity ứng với mỗi entity coacute nhiềthocircng số được khai baacuteo mỗi entity ở đacircy chiacutenh lagrave caacutec section để khai baacuteo caacutec kecircnhthocircng tin Cấu higravenh thường được sử dụng trong caacutec file iaxconf sipconf
Viacute dụ
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5372
Taacutec Giả Lecirc Quốc Toagraven
53
[entity1]
Op1=value1
Op2=value2
[entity2]
Op1=value3
Op2=value4
Entity1 coacute caacutec giaacute trị value1 vagrave value2 cho thocircng số op1 vagrave op2 trong khi đoacute
cũng lagrave thocircng số op1 vagrave op 2 nhưng coacute caacutec giaacute trị khaacutec lagrave value3 vagrave value4 choentity2
4 Cấu higravenh giao tiếp với mạng PSTN
1 Ngữ cảnh kết nối
Để kết nối với mạng PSTN chuacuteng ta cần phải coacute một card TDM với Cổng
FXO vagrave một đường dacircy điện thoại hoặc coacute thể lagrave một tổng đagravei nội bộ PBX Cnhiều nhagrave sản xuất phần cứng khaacutec nhau nhưng trong phần cấu higravenh dưới dacircy lagrave cấhigravenh cho card zapata TDM01B của digium (card nagravey hiện nay giaacute baacuten khoảng175$)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3072
Taacutec Giả Lecirc Quốc Toagraven
30
2 Softphone
Lagrave một phần mềm được cagravei trecircn maacutey tiacutenh thực hiện tất cả caacutec chức năng giốn
như thiết bị điện thoại Voip cần lưu yacute khi sử dụng softphone lagrave maacutey tiacutenh phải ccard acircm thanh headphone vagrave firewall khocircng bị khoacutea
Sử dụng softphone với hệ thống Asterisk necircn dugraveng softphone với cocircng nghệgiao thức mới dagravenh cho Asterisk đoacute lagrave IAX
Higravenh Điện Thoại Softphone
3 Card giao tiếp với PSTN
Muốn cho pheacutep caacutec maacutey điện thoại nội bộ trong hệ thống Asterisk kết nối vthực hiện cuộc gọi với mạng PSTN chuacuteng ta cần phải coacute thiết bị phần cứng tươthiacutech Thiết bị phần cứng sử dụng cho hệ thống Asterisk do chiacutenh taacutec giả lập cocircng
Digium phacircn phối đacircy cũng chiacutenh lagrave yacute tưởng lớn trong việc phacircn phối phần mềmAsterisk lagrave hệ thống nguồn mở sử dụng miễn phiacute
Thiết bị phần cứng thường kyacute hiệu bắt đầu bằng cụm từ TDMxyB trong đoacute lagrave số lượng port FXS y lagrave số lượng port FXO giaacute trị tối đa của x vagrave y lagrave 4 viacute dụcard TDM22B coacute nghĩa lagrave coacute 2 fort FXS vagrave 2 port FXO
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3172
Taacutec Giả Lecirc Quốc Toagraven
31
Higravenh Card TDM22B gồm 4 port 2 FXS vagrave 2 FXO
4 ATA Analog Telephone Adaptors
ATA lagrave thiết bị kết nối với điện thoại Analog thocircng thường đến mạng VoIPmột thiết bị ATA gồm coacute hai loại port RJ-11 để kết nối với maacutey điện thoại analo
thocircng thường cograven RJ-45 để kết nối với mạng VoIP
ATA thực sự lagrave thiết bị FXS chuyển đổi tiacuten hiệu Analog sang tiacuten hiệu số sửdụng cho mạng VoIP để tận dụng maacutey điện thoại Analog necircn trang bị thiết bị ATAthay vigrave phải trang bị điện thoại VoIP
Thiết bị ATA sử dụng với giao thức IAX được Digium phacircn phối lagrave thiết bịATA được sử dụng rộng ratildei với Asterisk coacute tecircn gọi lagrave IAXy
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3272
Taacutec Giả Lecirc Quốc Toagraven
32
Higravenh Thiết bị ATA
9 Codecs
Thuật Toaacuten codecs(CompressorDe-compressor) lagrave một tập caacutec quy luật đượcsử dụng để chuyển đổi caacutec tiacuten hiệu thoại dạng Analog sang tiacuten hiệu số vagrave ngược lạ
Coacute nhiều thuật toaacuten codec để thực hiện chuyển đổi tiacuten hiệu analog sang tiacuten
hiệu số dạng nhị phacircn (01) như G711 GSM G729hellipỨng với mỗi thuật toaacuten coacutenhững ưu điểm riecircng đặc biệt lagrave việc tối ưu sử dụng băng thocircng trecircn đường truyềMục tiecircu cuối cugraveng lagrave caacutec thuật toaacuten đưa ra phải đảm bảo chất lượng cuộc gọi nhvagrave tiết kiệm băng thocircng nhất
G729 lagrave thuật toaacuten codec tốt nhất hiện nay trong hệ thống VoIP Với hệthống Asterisk để sử dụng thuật toaacuten nagravey cần phải mua bản quyền sử dụng vigrave đacircy
codec khocircng miễn phiacute sử dụng
10 QoS ndash Quality of Service
Caacutec yếu tố ảnh hưởng đến chất lượng của dịch vụ đối với VoIP đoacute lagrave caacuteyếu ảnh hưởng đến chất lượng tiacuten hiệu thoại
1 Độ trễ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3372
Taacutec Giả Lecirc Quốc Toagraven
33
Thoại lagrave dịch vụ mang tiacutenh thời gian thực rất cao vigrave thế trễ lagrave yếu tố ảnhhưởng rất lớn đến chất lượng dịch vụ Trễ được định nghĩa lagrave khoảng thời gian tiacute
từ luacutec tiacuten hiệu thoại đi từ miệng người noacutei tới tai người nghe Trễ lagrave yếu tố khocircnthể traacutenh khỏi độ trễ đối với mạng điện thoại truyền thống (mạng PSTN) khoảng50ms đến 70ms theo khiến nghị của ITU-T để đảm bảo chất lượng cho hệ thốVoIP thigrave độ trễ từ đầu phaacutet tới đầu thu hoặc ngược lại khocircng được vượt quaacute 150mkhi magrave độ trễ vượt quaacute 400ms đến 500ms thigrave khocircng thể chấp nhận được
Caacutec nguyecircn nhacircn gacircy ra trễ bao gồm Trễ trecircn mạng lưới trễ trecircn bộ mả hoacutea
giải matilde trễ trong quaacute trigravenh đoacuteng goacutei trễ bộ đệm trễ xử lyacute tiếng noacuteihellip2 Độ trượt(Jitter)
Nguyecircn nhacircn gacircy ra trượt lagrave goacutei tiacuten hiệu thoại trong quaacute trigravenh truyền từnguồn đến điacutech sẽ gặp phải những điều kiện khaacutec nhau trecircn mạng lưới do đoacute thườđến điacutech với những khoảng trễ khaacutec nhau Đacircy lagrave tiacutenh khocircng đồng nhất của trễ Mnguyecircn nhacircn khaacutec của trượt đối với ứng dụng PC to PC lagrave do việc sử dụng hệ điề
hagravenh phi thời gian thực caacutec goacutei tin thoại phải đợi hệ điều hagravenh xử lyacute trong nhữnkhoảng thời gian khaacutec nhau khi magrave hệ điều hagravenh đang phải xử lyacute đối với caacutec ứndụng khaacutec
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3472
Taacutec Giả Lecirc Quốc Toagraven
34
Higravenh Nguyecircn nhacircn xảy ra trượt
Để loại bỏ tiacutenh khocircng đồng nhất của trễ người ta thiết kế caacutec bộ đệm t(Jitter Buffer) tại nơi đến của caacutec goacutei tin caacutec goacutei tin đến với caacutec khoảng caacutech khaacutecnhau về thời gian được lưu tại bộ đệm rồi phaacutet khỏi bộ đệm với khoảng trễ n
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3572
Taacutec Giả Lecirc Quốc Toagraven
35
nhau Khi bộ đếm coacute kiacutech thước cagraveng lớn thigrave khả năng loại bỏ tiacutenh khocircng đồng nhấcagraveng lớn tuy nhiecircn việc sử dụng bộ đệm sẽ gacircy ra hiện tượng trễ trong ứng dụnthoại do đoacute cần coacute bagravei toaacuten cacircn đối giữa độ trễ vagrave độ trượt
Ngoagravei 2 nguyecircn nhacircn trecircn cograven một số nguyecircn nhacircn nữa ảnh hưởng đến chấtlượng thoại như độ mất goacutei giới hạn băng thocircng tiếng vọng
3 CAgraveI ĐẶT ASTERISK
1 Cagravei đặt Asterisk
1 Download vagrave bung neacuten
Để cagravei đặt Asterisk đầu tiecircn chuacuteng ta cần phải cagravei đặt hệ điều hagravenh linux trecircnmaacutey tiacutenh của migravenh Coacute thể cagravei hệ điều hagravenh Linux Fedora CentOS Redhat hoặcDebian Caacutec goacutei phần mềm phụ thuộc phải coacute trong hệ điều hagravenh Linux trước khcagravei Asterisk bao gồm
bison
gcc
kernel-source
libtermcap-devel
ncurses-devel
openssl096b
openssl-devel
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3672
Taacutec Giả Lecirc Quốc Toagraven
36
Sau khi hoagraven tất caacutec bước trecircn chuacuteng ta tiến hagravenh download phần mềmasterisk với phiecircn bản mới nhất
cd usrsrc
wgetftpftpdigiumcompubasteriskasterisk-140targz
wgetftpftpdigiumcompubasteriskasterisk-addons-140targz
wgetftpftpdigiumcompubasteriskasterisk-sounds-140targz
wgethttpftpdigiumcompubzaptelzaptel-140targz
wgethttpftpdigiumcompublibprilibpri-140targz
Việc download coacute thể nhanh hay chậm tugravey vagraveo tốc độ trecircn đường internet saukhi download hoagraven thagravenh chuacuteng ta tiến hagravenh bung neacuten caacutec goacutei ra thư mục chỉ định
tar ndashxzvf asterisk-140targz
tar ndashxzvf asterisk-addons-140targz
tar ndashxzvf asterisk-sounds-140targz
tar ndashxzvf zaptel-140targz
tar ndashxzvf libpri-140targz
Giải neacuten xong chuacuteng ta nhớ thực hiện lệnh
ln ndashs usrsrcasterisk-140 usrsrcasterisk lệnh nagravey để bảo đảm goacuteildquoaddonsrdquo được biecircn dịch đuacuteng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3772
Taacutec Giả Lecirc Quốc Toagraven
37
Bacircy giờ tới phần chuacuteng ta biecircn dịch caacutec goacutei đatilde giải neacuten ở trecircn trước tiecircn lagrave goacuteizaptel kế đến lagrave libpri sau cugraveng lagrave goacutei Asterisk
2 Cagravei đặt goacutei Zaptel
Goacutei zaptel sẽ chứa tại thư mục usrsrczaptel Đaacutenh lệnh như dưới đacircy để cagraveđặt
cd usrsrczaptel
make clean make install
Lệnh nagravey thực hiện khoảng 2 phuacutet tugravey vagraveo tốc độ maacutey tiacutenh cagravei đặt sau khicagravei đặt xong sẽ trở lại dấu nhắc lệnh vagrave hiển thị một loạt caacutec thocircng baacuteo trong đoacute một số bản tin lỗi magrave chủ yếu lagrave yecircu cầu cagravei đặt caacutec goacutei phụ thuộc đatilde liệt kecirc ở trecircnếu caacutec goacutei trecircn chưa được cagravei đặt
Goacutei zaptel nagravey chứa caacutec driver cho caacutec phần cứng kết giao tiếp với asterisk
do Digium phacircn phối vagrave một số thư viện cho việc coacute thực hiện giao tiếp với phầcứng hay khocircng
Để Asterisk coacute thể chạy cugraveng với khởi động của maacutey tiacutenh chuacuteng ta cần thựchiện lệnh
make config
Lệnh nagravey sẽ tạo ra script chegraven module zaptel vagraveo kernel vagrave chạy ztconfig vagraveoluacutec khởi động maacutey Trong Redhat script nagravey sẽ được cheacutep vagraveo etcinitd chạy ở mức 3
3 Cagravei đặt goacutei libpri
Kế đến chuacuteng ta biecircn dịch goacutei libpri tại thư mục usrsrclibpri bằng lệnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3972
Taacutec Giả Lecirc Quốc Toagraven
39
make config
3 Cagravei đặt TrixBox
1 Giới thiệu
TRIXBOX được phaacutet triển từ nhacircn của ứng dụng Asterisk được tổng hợp từmột số thagravenh phần chiacutenh được phaacutet triển bởi cộng đồng phaacutet triển nguồn mAsterisk dưới bản quyền GPL Trixbox bao gồm những thagravenh phần chiacutenh cho việcấu higravenh ứng dụng thống kecirc tigravenh trạng hoạt động hệ thống lưu trữ dự phograveng v
nhacircn lagrave hệ điều hagravenh CentOS một phiecircn bản khaacutec của Redhat tất cả kết hợp vớnhau tạo thagravenh một goacutei hoagraven chỉnh Khi cagravei goacutei nagravey vagraveo maacutey tiacutenh thigrave coacute thể sử dụngnhư một tổng đagravei PBX
Caacutec thagravenh phần chiacutenh trong goacutei TRIXBOX lagrave
Asterisk PBX Thagravenh phần chiacutenh của hệ thống Trixbox
CentOS Một phiecircn bản Linux khaacutec của Redhat hoagraven toagraven miển phiacute sửdụng Lagrave nhacircn chiacutenh cho Trixbox
SugarCRM Hệ thống quan hệ khaacutech hagraveng CRM
A2Billing ndash Lagrave thagravenh phần dagravenh cho việc xacircy dựng hệ thống điện thoạitrả trước hay cograven gọi lagrave điện thọai thẻ (Calling Card)
Flash Operator Panel Bảng điều khiển giaacutem saacutet tigravenh trạng hoạt độngcủa caacutec maacutey điện thoại trong hệ thống
Web MeetMe Control Quản lyacute triển khai hệ thống điện thoại hội nghị
FreePBX Đacircy lagrave cocircng cụ với giao diện web dagravenh cho việc cấu higravenh hệthống Asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4072
Taacutec Giả Lecirc Quốc Toagraven
40
Hệ thống Lưu trữ dự phograveng vagrave thống kecirc Lagrave thagravenh phần của TRIXBOXcung cấp caacutec cocircng cụ cần thiết cho việc bảo trigrave bảo dưỡng hệ thống
Hệ thống Apache-Php-Mysql dagravenh cho giải phaacutep Webserver của hệthống
2 DOWNLOAD VAgrave LẮP ĐẶT TRIXBOX
Địa chỉ downloadhttpsourceforgenetprojectsasteriskathome
Khi download xong file Trixboxiso Hatildey dugraveng file nagravey Burn vagraveo CD ( xinlưu yacute lagrave dugraveng Nero hoặc chương trigravenh cheacutep đĩa ưa thiacutech rồi burn vagraveo cd_romchứ khocircng phải cheacutep file đoacute vagraveo cd_rom)
Sau khi coacute CD Hatildey boot từ CD nagravey để cagravei đặt trixbox
Chuacute yacute dữ liệu trecircn đĩa cứng sẽ bị xoacutea sạch để cagravei đặt trixbox Nếu trongđĩa cứng cograven dữ liệu hatildey backup tất cả trước khi tiến hagravenh lắp đặt trixbox
Tới đacircy lần lượt caacutec magraven higravenh chỉ dẫn sẽ hiện ra vagrave cứ theo hướng dẫn magrave cagraveđặt Sau khi cagravei đặt xong chuacuteng ta dugraveng Username root vagrave password password đểđăng nhập hệ thống
3 Cấu higravenh địa chỉ IP cho card mạng
Thiết lập địa chỉ IP bằng caacutech gotilde lệnh
netconfig
Chọn OK để thiếp lập
Nếu trong mạng coacute hỗ trợ DHCP thigrave hatildey chọn mục nagravey cograven nếu khocircng hatildeynhập địa chỉ IP tĩnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4172
Taacutec Giả Lecirc Quốc Toagraven
41
IP 19216801
Netmask 2552552550
Gateway 19216893254 ngotilde ra becircn ngoagravei
Primary nameserver 19216893200 thiết lập nếu coacute
Chọn OK để chấp nhận caacutec thiết lập trecircn
Sau khi hoagraven tất hatildey lagravem cho thiết lập coacute hiệu lực bằng caacutech reset lại
maacutey tiacutenh hoặc dugraveng lệnh sau
Service network stop
Service network start
Đến đacircy xem như cagravei đặt hoagraven tất bacircy giờ để cấu higravenh được Asterisk chuacutengta vagraveo một magravey khaacutec vagrave mở Internet Explorer hoặc một trigravenh duyệt web bất kỳ
nhập vagraveohttp19216801đatilde cấu higravenh ở trecircn vagrave tiến hagravenh cấu higravenh hệ thốngvới tagravei khoảng username maint vagrave password password
4 Tổ Chức Thư Mục của Asterisk
Asterisk sử dụng nhiều thư mục trecircn hệ thống linux để quản lyacute caacutec khiacutea cạnkhaacutec nhau của hệ thống như nghi nhận bản tin thoại caacutec bản tin nhắc thoại hoặcaacutec tập tin cấu higravenh Phần nagravey sẽ trigravenh bagravey caacutec thư mục chiacutenh yếu được tạo ra tronquaacute trigravenh lắp đặt vagrave được cấu higravenh trong tập tin Asteriskconf
1 etcasterisk
Thư mục etcasterisk chứa tất cả caacutec tập tin cấu higravenh của hệ thốngAsterisk ngoại trừ tập tin Zaptelconf được đặt tại thư mục etc Phần cứnZaptel đầu tiecircn được phaacutet triển bởi Jim Dixon thuộc nhoacutem Zapata Telephony
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4272
Taacutec Giả Lecirc Quốc Toagraven
42
Group để giao tiếp giữa maacutey tiacutenh với mạng điện thoại magrave Asterisk lại sửdụng phần cứng nagravey với lyacute do đoacute magrave file cấu higravenh zaptelconf khocircng nằmtrong thư mục etcasterisk
2 usrlibasteriskmodules
Thư mục usrlibasteriskmodules chứa tất cả caacutec module cần thiết đểasterisk hoạt động Becircn trong thư mục lagrave caacutec ứng dụng khaacutec nhau caacutec codeccaacutec định dạng acircm thanh(format) vagrave caacutec kecircnh thocircng tin(channel) Theo mặc địnhAsterisk sẽ nạp tất cả caacutec module vagraveo luacutec khởi động Chuacuteng ta coacute thể khocircng cho
nạp một module bất kỳ bằng caacutech khocircng khai baacuteo sử dụng trong tập tinmodulesconf Lưu yacute khi khocircng cho nạp module thigrave phải biết chắc module đoacutekhocircng lagravem ảnh hưởng hoạt động của asterisk nếu khocircng lỗi sẽ xuất hiện
3 varlibasterisk
Thư mục varlibasterisk chứa tập tin astdb vagrave một số thư mục con Tập tinastdb định vị thocircng tin cơ sở dữ liệu của Asterisk giống như Microsoft WindowsRegistry
Caacutec thư mục con của thư mục varlibasterisk bao gồm
agi-bin
Thư mục agi-bin chứa caacutec script của người dugraveng magrave Asterisk coacute thểđịnh vị sử dụng qua caacutec ứng dụng AGI
AGI lagrave phần giao tiếp với ngocircn ngữ lập trigravenh script để thực hiện mộtsố cocircng việc của Asterisk từ becircn ngoagravei
firmware
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4372
Taacutec Giả Lecirc Quốc Toagraven
43
Thư mục firmware chứa một số phần dẻo(firmware) cho caacutec thiết bịkhaacutec nhau tương thiacutech với Asterisk Hiện tại chỉ coacute thư mục con iax chứa
firmware cho thiếy bị IAXy của Digium IAXy lagrave thiết bị ATA sử dụng giaothức IAX
images
Caacutec ứng dụng thocircng tin với caacutec kecircnh hỗ trợ ảnh images thigrave sử dụng thư mụcnagravey Nhưng hiện tại caacutec kecircnh thocircng tin hầu như khocircng hỗ trợ truyền ảnh images necircthư mục nagravey cũng hiếm khi được sử dụng Tuy nhiecircn nếu caacutec thiết bị coacute hỗ trợ ththư mục nagravey trở necircn hiệu dụng
keys
Asterisk coacute thể sử dụng hệ thống khoaacute publicprivate để xaacutec minh caacutec kết nốgiữa caacutec server Asterisk thocircng qua chữ kyacute điện tử RSA Nếu đặt một khoaacute publicvagraveo thư mục keys thigrave kết nối của server đầu becircn kia coacute thể được xaacutec minh bằn
kecircnh thocircng tin coacute hỗ trợ đối với Asterisk thigrave kecircnh giao thức IAX hỗ trợ loại xaacutecminh nagravey Một khoaacute private khocircng bao giờ cocircng bố chuacuteng ta chỉ cocircng bố khoaacute public đến với server cần nối đến sau đoacute sẽ được xaacutec minh với khoaacute private nagravey Chai khoaacute public vagrave private được lưu với đuocirci pub vagrave key đặt tại thư mục keys
mohmp3
Khi cấu higravenh Asterisk sử dụng tiacutenh năng Music on Hold tiacutenh năng hoạt độngsẽ thực hiện lấy caacutec tập tin mp3 tại thư mục mohmp3 Tập tin định dạng theo chucủa Asterisk necircn khi sử dụng caacutec file Mp3 thocircng thường cần coacute sự chuyển đổi thiacutechợp trước khi cheacutep vagraveo thư mục trecircn để sử dụng
sounds
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4472
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4572
Taacutec Giả Lecirc Quốc Toagraven
45
Thư mục tmp sử dụng để lưu trữ những thocircng tin tạm để luocircn bảo đảm khocircnxảy ra tigravenh trạng đọc vagrave viết tập tin cugraveng một luacutec Khi yecircu cầu xử lyacute tập tin chuacuteng thao taacutec trecircn thư mục tmp trước khi lưu vagraveo tập tin điacutech
Tất cả caacutec lời nhắc thoại từ phiacutea người sử dụng vagrave caacutec lời nhắc thoại sử dụ
cho thao taacutec hộp voicemail đều được chứa trong thư mục voicemail Một hộp thưthoại được tạo ra ứng với một maacutey nội bộ trong tập tin voicemailconf sẽ được tra một thư mục con tương ứng cho maacutey nội bộ đoacute tại thư mục voicemail
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4672
Taacutec Giả Lecirc Quốc Toagraven
46
5 varrun
Thư mục varrun chứa thocircng tin process ID(pid) cho tất cả caacutec tiến trigravenh đang
hoạt động trong hệ thống bao gồm cả Asterisk Lưu yacute lagrave ứng với mỗi hệ điều hagravethư mục varrun coacute thể khaacutec
6 varlogasterisk
Thư mục varlogasterisk lagrave nơi Asterisk chứa tất cả caacutec tập tin nhật kyacute haycograven gọi lagrave tập tin log Chuacuteng ta coacute thể tuỳ biến caacutec loại thocircng tin được lưu trong caacutec
tập tin log khaacutec nhau qua tập tin cấu higravenh loggerconf đặt tại thư mục etcasterisk7 varlogasteriskcdr-csv
Thư mục varlogasteriskcdr-csv được sử dụng để lưu chi tiết cuộc gọi CDRThocircng tin mặc định về chi tiết thocircng tin cuộc gọi lưu trữ trong tập tin MasterCVSnhưng thường thigrave ứng với mỗi matilde accountcode sẽ tạo một thư mục riecircng để lưu ctiết cuộc gọi cho maacutey đoacute
5 Một số lệnh thao taacutec trecircn hệ thống asterisk
Asterisk coacute hai thagravenh phần được xacircy dụng tiacutech hợp với nhau vagrave chạy songsong nhau
Asterisk Server bigravenh thường chạy ở chế độ nền(background) giống caacutec sevicestrong window
Asterisk Client ở chế độ dograveng lệnh CLI giao tiếp với Asterisk Server thực thicaacutec lệnh để kiểm tra hay xem caacutec thocircng tin của server
Để Chạy vagrave dừng Asterisk ở chế độ nền chuacuteng ta thực hiện lệnh sau
etcinitdasterisk (start|stop)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4772
Taacutec Giả Lecirc Quốc Toagraven
47
Một khi Asterisk đatilde chạy chuacuteng ta coacute thể chuyển qua chế độ CLI từ dấu nhắlệnh của linux như sau
asterisk ndashr
Khi vagraveo chế độ lệnh nếu muốn thoaacutet về lại dấu nhắc linux chuacuteng ta dugraveng lệnh
CLIgtexit
Caacutec lệnh cơ bản thực hiện tại CLIgt
Bất cứ khi nagraveo chỉnh sửa caacutec tập tin cấu higravenh chuacuteng ta đều cần phải nạp lại đcaacutec thay đổi coacute hiệu lực điều đoacute thực hiện bằng lệnh
CLIgtreload
Bậc chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 debug
CLIgt SIP debug
Tắt chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 no debug
CLIgt SIP no debug
Hiển thị caacutec trạng thaacutei thocircng tin của users peers vagravechannels của SIP hoặc IAX2
CLIgt sip show users
CLIgt sip show peers
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4872
Taacutec Giả Lecirc Quốc Toagraven
48
CLIgt sip show channels
CLIgt iax2 show peers
CLIgt iax2 show users
CLIgt iax2 show channels
Đến thời điểm nagravey coacute thể noacutei chuacuteng ta đatilde hoagraven thagravenh cagravei đặt hệ thốngAsterisk cagravei đặt xong mới lagrave bước mở đầu để cho hệ thống Asterisk hoạt động vtừng ứng dụng cụ thể chuacuteng sẽ tiếp tục thực hiện caacutec giai đoạn được xem lagrave qutrọng nhất trong việc triển khai hệ thống Asterisk đoacute lagrave giai đoạn cấu higravenh hệ thốnlecircn kế hoạch Diaplan chương cograven lại đều nhắm đến mục tiecircu nagravey
4 CẤU HIgraveNH HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Sau khi hoagraven tất phần cagravei đặt hệ thống asterisk một bước quan trọng tiếp thelagrave cấu higravenh hệ thống coacute thể noacutei đacircy lagrave bước quan trọng nhất của việc khiển khai thống đến với từng ứng dụng cụ thể Trong chương nagravey xin giới thiệu caacutei nhigraven đầtiecircn về việc cấu higravenh trước khi đi sacircu hơn ở những chương sau những gigrave giới thiệ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4972
Taacutec Giả Lecirc Quốc Toagraven
49
trong chương nagravey lagrave nền moacuteng cơ bản nhưng đủ để hiểu lagravem thế nagraveo hệ thống coacute thoạt động được nội dung chiacutenh bao gồm
+ Thao taacutec cấu higravenh trecircn hệ thống tập tin của asterisk
+ Caacutech cagravei đặt phần mềm softphone trecircn cocircng nghệ sip
+ Cấu higravenh cho hai maacutey softphone liecircn lạc với nhau
+ Cấu higravenh phaacutet thocircng điệp
+ Quay số qua Sip vagrave mạng PSTN
2 Tập Tin cấu higravenh
Tất cả caacutec file cấu higravenh cho hệ thống asterisk đều nằm tại thư mục etcasterisngoại trừ file zaptelconf cấu higravenh cho phần cứng TDM nằm tại thư mục etc caacutecthức cấu higravenh giống như tập tin ini của window vậy Caacutec nội dung sau dấu chấm phảy lagrave nội dung chuacute thiacutech trong file cấu higravenh giống như chuacute thiacutech trong ngocircn ngữ
lập trigravenh C lagrave dấu Tất cả caacutec khoảng trắng trong tập tin đều được bỏ qua khocircng yacute nghĩa trong file cấu higravenh
Trong file cấu higravenh cograven coacute hai pheacutep gaacuten rất thường xuyecircn được sử dụng pheacutep gaacuten ldquo=rdquo lagrave dugraveng cho việc gaacuten caacutec biến cograven pheacutep gaacuten ldquo=gtrdquo dugraveng cho việc gaacutencaacutec đối tượng sau đacircy lagrave một viacute dụ cho file cấu higravenh
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5072
Taacutec Giả Lecirc Quốc Toagraven
50
Đacircy lagrave caacutec dograveng chuacute thiacutech
[section]
Key=value gaacuten giaacute trị cho biến
[section2]
Key=gtobject Gaacuten giaacute trị cho đối tượng
Cuacute phaacutep thực hiện giống nhau cho tất cả caacutec file cấu higravenh nhưng coacute vagravei kiểukhaacutec nhau cho mỗi file cầu higravenh dựa vagraveo thức caacutech hoạt động của chuacuteng
3 Caacutec kiểu ảnh hưởng trong tập cấu higravenh
Coacute ba kiểu caacutech thức hoạt động của tập tin cấu higravenh như sau
Kiểu Caacutech hoạt động File cầu higravenh Viacute dụ
S i m p l eGroup
Coacute hiệu lực trecircntừng dograveng trongfile
Extensionconf
Exten=gt4001dial(sip400)
O p t i o ninheritance
Dograveng khai baacuteosau thừa kếnhững thocircng sốkhai baacuteo trước
Zapataconf [channels]
Context=From_PSTN
Signalling=fxs_ks
Group=1Channel=gt1
C o m p l e xEntity
Mỗi entity nhậnmột ngữ cảnh
sipconf
iaxconf
[cisco]
Type=friend
Secret=12345
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5172
Taacutec Giả Lecirc Quốc Toagraven
51
Host=192168165
Context=NoiBo
[xten]
Type=friend
Secret=6789
Host=dynamic
Context=NoiBo
1 Simple Group
Đacircy lagrave kiểu cấu higravenh đơn giản nhất thường sử dụng trong caacutec fileextentionconf meetmeconf voicemailconf tương ứng với mỗi dograveng khai baacuteo lagravemột đối tượng coacute yacute nghĩa trecircn dograveng đoacute
Viacute dụ
Extentionconf [section]
object1=gt op1op2op3
object2=gt op1bop2bop3b
Trong viacute dụ trecircn mỗi dograveng tương ứng với caacutec toaacuten tử khaacutec nhau object1 coacute caacutectoaacuten từ op1 op2 op3 trong khi đoacute object2 lại coacute caacutec toaacuten từ op1b op2b op3b
2 Option inheritance
Đacircy lagrave cấu higravenh kiểu thừa kế thường được cấu higravenh trong caacutec file zapataconfagentconf với kiểu cấu higravenh nagravey thigrave caacutec dograveng phiacutea dưới coacute thể thừa kế caacutec thocircng sdograveng phiacutea trecircn tương ứng với mỗi section caacutec dograveng phiacutea dưới coacute thể thay đổi caacutecthocircng số cho tươngứng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5272
Taacutec Giả Lecirc Quốc Toagraven
52
Viacute dụ
Extentionconf
[section]
Op1=bas
Op2=adv
Object1=gt1
Op1=int
Object1=gt2
Với cấu higravenh trecircn coacute thể giải thiacutech như sau object1=gt1 thừa hưởng hai thocircngsố ở phiacutea trecircn đoacute lagrave op1=bas vagrave op2=adv trong khi đoacute đối với object1=gt2 với thocircngsố op1=int được khai baacuteo lại necircn object1=gt2 được thừa kế từ hai thocircng số op1=invagrave op2=adv
3 Complex Entity
Với cấu kiểu nagravey được tổ chức thagravenh nhiều entity ứng với mỗi entity coacute nhiềthocircng số được khai baacuteo mỗi entity ở đacircy chiacutenh lagrave caacutec section để khai baacuteo caacutec kecircnhthocircng tin Cấu higravenh thường được sử dụng trong caacutec file iaxconf sipconf
Viacute dụ
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5372
Taacutec Giả Lecirc Quốc Toagraven
53
[entity1]
Op1=value1
Op2=value2
[entity2]
Op1=value3
Op2=value4
Entity1 coacute caacutec giaacute trị value1 vagrave value2 cho thocircng số op1 vagrave op2 trong khi đoacute
cũng lagrave thocircng số op1 vagrave op 2 nhưng coacute caacutec giaacute trị khaacutec lagrave value3 vagrave value4 choentity2
4 Cấu higravenh giao tiếp với mạng PSTN
1 Ngữ cảnh kết nối
Để kết nối với mạng PSTN chuacuteng ta cần phải coacute một card TDM với Cổng
FXO vagrave một đường dacircy điện thoại hoặc coacute thể lagrave một tổng đagravei nội bộ PBX Cnhiều nhagrave sản xuất phần cứng khaacutec nhau nhưng trong phần cấu higravenh dưới dacircy lagrave cấhigravenh cho card zapata TDM01B của digium (card nagravey hiện nay giaacute baacuten khoảng175$)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3172
Taacutec Giả Lecirc Quốc Toagraven
31
Higravenh Card TDM22B gồm 4 port 2 FXS vagrave 2 FXO
4 ATA Analog Telephone Adaptors
ATA lagrave thiết bị kết nối với điện thoại Analog thocircng thường đến mạng VoIPmột thiết bị ATA gồm coacute hai loại port RJ-11 để kết nối với maacutey điện thoại analo
thocircng thường cograven RJ-45 để kết nối với mạng VoIP
ATA thực sự lagrave thiết bị FXS chuyển đổi tiacuten hiệu Analog sang tiacuten hiệu số sửdụng cho mạng VoIP để tận dụng maacutey điện thoại Analog necircn trang bị thiết bị ATAthay vigrave phải trang bị điện thoại VoIP
Thiết bị ATA sử dụng với giao thức IAX được Digium phacircn phối lagrave thiết bịATA được sử dụng rộng ratildei với Asterisk coacute tecircn gọi lagrave IAXy
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3272
Taacutec Giả Lecirc Quốc Toagraven
32
Higravenh Thiết bị ATA
9 Codecs
Thuật Toaacuten codecs(CompressorDe-compressor) lagrave một tập caacutec quy luật đượcsử dụng để chuyển đổi caacutec tiacuten hiệu thoại dạng Analog sang tiacuten hiệu số vagrave ngược lạ
Coacute nhiều thuật toaacuten codec để thực hiện chuyển đổi tiacuten hiệu analog sang tiacuten
hiệu số dạng nhị phacircn (01) như G711 GSM G729hellipỨng với mỗi thuật toaacuten coacutenhững ưu điểm riecircng đặc biệt lagrave việc tối ưu sử dụng băng thocircng trecircn đường truyềMục tiecircu cuối cugraveng lagrave caacutec thuật toaacuten đưa ra phải đảm bảo chất lượng cuộc gọi nhvagrave tiết kiệm băng thocircng nhất
G729 lagrave thuật toaacuten codec tốt nhất hiện nay trong hệ thống VoIP Với hệthống Asterisk để sử dụng thuật toaacuten nagravey cần phải mua bản quyền sử dụng vigrave đacircy
codec khocircng miễn phiacute sử dụng
10 QoS ndash Quality of Service
Caacutec yếu tố ảnh hưởng đến chất lượng của dịch vụ đối với VoIP đoacute lagrave caacuteyếu ảnh hưởng đến chất lượng tiacuten hiệu thoại
1 Độ trễ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3372
Taacutec Giả Lecirc Quốc Toagraven
33
Thoại lagrave dịch vụ mang tiacutenh thời gian thực rất cao vigrave thế trễ lagrave yếu tố ảnhhưởng rất lớn đến chất lượng dịch vụ Trễ được định nghĩa lagrave khoảng thời gian tiacute
từ luacutec tiacuten hiệu thoại đi từ miệng người noacutei tới tai người nghe Trễ lagrave yếu tố khocircnthể traacutenh khỏi độ trễ đối với mạng điện thoại truyền thống (mạng PSTN) khoảng50ms đến 70ms theo khiến nghị của ITU-T để đảm bảo chất lượng cho hệ thốVoIP thigrave độ trễ từ đầu phaacutet tới đầu thu hoặc ngược lại khocircng được vượt quaacute 150mkhi magrave độ trễ vượt quaacute 400ms đến 500ms thigrave khocircng thể chấp nhận được
Caacutec nguyecircn nhacircn gacircy ra trễ bao gồm Trễ trecircn mạng lưới trễ trecircn bộ mả hoacutea
giải matilde trễ trong quaacute trigravenh đoacuteng goacutei trễ bộ đệm trễ xử lyacute tiếng noacuteihellip2 Độ trượt(Jitter)
Nguyecircn nhacircn gacircy ra trượt lagrave goacutei tiacuten hiệu thoại trong quaacute trigravenh truyền từnguồn đến điacutech sẽ gặp phải những điều kiện khaacutec nhau trecircn mạng lưới do đoacute thườđến điacutech với những khoảng trễ khaacutec nhau Đacircy lagrave tiacutenh khocircng đồng nhất của trễ Mnguyecircn nhacircn khaacutec của trượt đối với ứng dụng PC to PC lagrave do việc sử dụng hệ điề
hagravenh phi thời gian thực caacutec goacutei tin thoại phải đợi hệ điều hagravenh xử lyacute trong nhữnkhoảng thời gian khaacutec nhau khi magrave hệ điều hagravenh đang phải xử lyacute đối với caacutec ứndụng khaacutec
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3472
Taacutec Giả Lecirc Quốc Toagraven
34
Higravenh Nguyecircn nhacircn xảy ra trượt
Để loại bỏ tiacutenh khocircng đồng nhất của trễ người ta thiết kế caacutec bộ đệm t(Jitter Buffer) tại nơi đến của caacutec goacutei tin caacutec goacutei tin đến với caacutec khoảng caacutech khaacutecnhau về thời gian được lưu tại bộ đệm rồi phaacutet khỏi bộ đệm với khoảng trễ n
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3572
Taacutec Giả Lecirc Quốc Toagraven
35
nhau Khi bộ đếm coacute kiacutech thước cagraveng lớn thigrave khả năng loại bỏ tiacutenh khocircng đồng nhấcagraveng lớn tuy nhiecircn việc sử dụng bộ đệm sẽ gacircy ra hiện tượng trễ trong ứng dụnthoại do đoacute cần coacute bagravei toaacuten cacircn đối giữa độ trễ vagrave độ trượt
Ngoagravei 2 nguyecircn nhacircn trecircn cograven một số nguyecircn nhacircn nữa ảnh hưởng đến chấtlượng thoại như độ mất goacutei giới hạn băng thocircng tiếng vọng
3 CAgraveI ĐẶT ASTERISK
1 Cagravei đặt Asterisk
1 Download vagrave bung neacuten
Để cagravei đặt Asterisk đầu tiecircn chuacuteng ta cần phải cagravei đặt hệ điều hagravenh linux trecircnmaacutey tiacutenh của migravenh Coacute thể cagravei hệ điều hagravenh Linux Fedora CentOS Redhat hoặcDebian Caacutec goacutei phần mềm phụ thuộc phải coacute trong hệ điều hagravenh Linux trước khcagravei Asterisk bao gồm
bison
gcc
kernel-source
libtermcap-devel
ncurses-devel
openssl096b
openssl-devel
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3672
Taacutec Giả Lecirc Quốc Toagraven
36
Sau khi hoagraven tất caacutec bước trecircn chuacuteng ta tiến hagravenh download phần mềmasterisk với phiecircn bản mới nhất
cd usrsrc
wgetftpftpdigiumcompubasteriskasterisk-140targz
wgetftpftpdigiumcompubasteriskasterisk-addons-140targz
wgetftpftpdigiumcompubasteriskasterisk-sounds-140targz
wgethttpftpdigiumcompubzaptelzaptel-140targz
wgethttpftpdigiumcompublibprilibpri-140targz
Việc download coacute thể nhanh hay chậm tugravey vagraveo tốc độ trecircn đường internet saukhi download hoagraven thagravenh chuacuteng ta tiến hagravenh bung neacuten caacutec goacutei ra thư mục chỉ định
tar ndashxzvf asterisk-140targz
tar ndashxzvf asterisk-addons-140targz
tar ndashxzvf asterisk-sounds-140targz
tar ndashxzvf zaptel-140targz
tar ndashxzvf libpri-140targz
Giải neacuten xong chuacuteng ta nhớ thực hiện lệnh
ln ndashs usrsrcasterisk-140 usrsrcasterisk lệnh nagravey để bảo đảm goacuteildquoaddonsrdquo được biecircn dịch đuacuteng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3772
Taacutec Giả Lecirc Quốc Toagraven
37
Bacircy giờ tới phần chuacuteng ta biecircn dịch caacutec goacutei đatilde giải neacuten ở trecircn trước tiecircn lagrave goacuteizaptel kế đến lagrave libpri sau cugraveng lagrave goacutei Asterisk
2 Cagravei đặt goacutei Zaptel
Goacutei zaptel sẽ chứa tại thư mục usrsrczaptel Đaacutenh lệnh như dưới đacircy để cagraveđặt
cd usrsrczaptel
make clean make install
Lệnh nagravey thực hiện khoảng 2 phuacutet tugravey vagraveo tốc độ maacutey tiacutenh cagravei đặt sau khicagravei đặt xong sẽ trở lại dấu nhắc lệnh vagrave hiển thị một loạt caacutec thocircng baacuteo trong đoacute một số bản tin lỗi magrave chủ yếu lagrave yecircu cầu cagravei đặt caacutec goacutei phụ thuộc đatilde liệt kecirc ở trecircnếu caacutec goacutei trecircn chưa được cagravei đặt
Goacutei zaptel nagravey chứa caacutec driver cho caacutec phần cứng kết giao tiếp với asterisk
do Digium phacircn phối vagrave một số thư viện cho việc coacute thực hiện giao tiếp với phầcứng hay khocircng
Để Asterisk coacute thể chạy cugraveng với khởi động của maacutey tiacutenh chuacuteng ta cần thựchiện lệnh
make config
Lệnh nagravey sẽ tạo ra script chegraven module zaptel vagraveo kernel vagrave chạy ztconfig vagraveoluacutec khởi động maacutey Trong Redhat script nagravey sẽ được cheacutep vagraveo etcinitd chạy ở mức 3
3 Cagravei đặt goacutei libpri
Kế đến chuacuteng ta biecircn dịch goacutei libpri tại thư mục usrsrclibpri bằng lệnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3972
Taacutec Giả Lecirc Quốc Toagraven
39
make config
3 Cagravei đặt TrixBox
1 Giới thiệu
TRIXBOX được phaacutet triển từ nhacircn của ứng dụng Asterisk được tổng hợp từmột số thagravenh phần chiacutenh được phaacutet triển bởi cộng đồng phaacutet triển nguồn mAsterisk dưới bản quyền GPL Trixbox bao gồm những thagravenh phần chiacutenh cho việcấu higravenh ứng dụng thống kecirc tigravenh trạng hoạt động hệ thống lưu trữ dự phograveng v
nhacircn lagrave hệ điều hagravenh CentOS một phiecircn bản khaacutec của Redhat tất cả kết hợp vớnhau tạo thagravenh một goacutei hoagraven chỉnh Khi cagravei goacutei nagravey vagraveo maacutey tiacutenh thigrave coacute thể sử dụngnhư một tổng đagravei PBX
Caacutec thagravenh phần chiacutenh trong goacutei TRIXBOX lagrave
Asterisk PBX Thagravenh phần chiacutenh của hệ thống Trixbox
CentOS Một phiecircn bản Linux khaacutec của Redhat hoagraven toagraven miển phiacute sửdụng Lagrave nhacircn chiacutenh cho Trixbox
SugarCRM Hệ thống quan hệ khaacutech hagraveng CRM
A2Billing ndash Lagrave thagravenh phần dagravenh cho việc xacircy dựng hệ thống điện thoạitrả trước hay cograven gọi lagrave điện thọai thẻ (Calling Card)
Flash Operator Panel Bảng điều khiển giaacutem saacutet tigravenh trạng hoạt độngcủa caacutec maacutey điện thoại trong hệ thống
Web MeetMe Control Quản lyacute triển khai hệ thống điện thoại hội nghị
FreePBX Đacircy lagrave cocircng cụ với giao diện web dagravenh cho việc cấu higravenh hệthống Asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4072
Taacutec Giả Lecirc Quốc Toagraven
40
Hệ thống Lưu trữ dự phograveng vagrave thống kecirc Lagrave thagravenh phần của TRIXBOXcung cấp caacutec cocircng cụ cần thiết cho việc bảo trigrave bảo dưỡng hệ thống
Hệ thống Apache-Php-Mysql dagravenh cho giải phaacutep Webserver của hệthống
2 DOWNLOAD VAgrave LẮP ĐẶT TRIXBOX
Địa chỉ downloadhttpsourceforgenetprojectsasteriskathome
Khi download xong file Trixboxiso Hatildey dugraveng file nagravey Burn vagraveo CD ( xinlưu yacute lagrave dugraveng Nero hoặc chương trigravenh cheacutep đĩa ưa thiacutech rồi burn vagraveo cd_romchứ khocircng phải cheacutep file đoacute vagraveo cd_rom)
Sau khi coacute CD Hatildey boot từ CD nagravey để cagravei đặt trixbox
Chuacute yacute dữ liệu trecircn đĩa cứng sẽ bị xoacutea sạch để cagravei đặt trixbox Nếu trongđĩa cứng cograven dữ liệu hatildey backup tất cả trước khi tiến hagravenh lắp đặt trixbox
Tới đacircy lần lượt caacutec magraven higravenh chỉ dẫn sẽ hiện ra vagrave cứ theo hướng dẫn magrave cagraveđặt Sau khi cagravei đặt xong chuacuteng ta dugraveng Username root vagrave password password đểđăng nhập hệ thống
3 Cấu higravenh địa chỉ IP cho card mạng
Thiết lập địa chỉ IP bằng caacutech gotilde lệnh
netconfig
Chọn OK để thiếp lập
Nếu trong mạng coacute hỗ trợ DHCP thigrave hatildey chọn mục nagravey cograven nếu khocircng hatildeynhập địa chỉ IP tĩnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4172
Taacutec Giả Lecirc Quốc Toagraven
41
IP 19216801
Netmask 2552552550
Gateway 19216893254 ngotilde ra becircn ngoagravei
Primary nameserver 19216893200 thiết lập nếu coacute
Chọn OK để chấp nhận caacutec thiết lập trecircn
Sau khi hoagraven tất hatildey lagravem cho thiết lập coacute hiệu lực bằng caacutech reset lại
maacutey tiacutenh hoặc dugraveng lệnh sau
Service network stop
Service network start
Đến đacircy xem như cagravei đặt hoagraven tất bacircy giờ để cấu higravenh được Asterisk chuacutengta vagraveo một magravey khaacutec vagrave mở Internet Explorer hoặc một trigravenh duyệt web bất kỳ
nhập vagraveohttp19216801đatilde cấu higravenh ở trecircn vagrave tiến hagravenh cấu higravenh hệ thốngvới tagravei khoảng username maint vagrave password password
4 Tổ Chức Thư Mục của Asterisk
Asterisk sử dụng nhiều thư mục trecircn hệ thống linux để quản lyacute caacutec khiacutea cạnkhaacutec nhau của hệ thống như nghi nhận bản tin thoại caacutec bản tin nhắc thoại hoặcaacutec tập tin cấu higravenh Phần nagravey sẽ trigravenh bagravey caacutec thư mục chiacutenh yếu được tạo ra tronquaacute trigravenh lắp đặt vagrave được cấu higravenh trong tập tin Asteriskconf
1 etcasterisk
Thư mục etcasterisk chứa tất cả caacutec tập tin cấu higravenh của hệ thốngAsterisk ngoại trừ tập tin Zaptelconf được đặt tại thư mục etc Phần cứnZaptel đầu tiecircn được phaacutet triển bởi Jim Dixon thuộc nhoacutem Zapata Telephony
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4272
Taacutec Giả Lecirc Quốc Toagraven
42
Group để giao tiếp giữa maacutey tiacutenh với mạng điện thoại magrave Asterisk lại sửdụng phần cứng nagravey với lyacute do đoacute magrave file cấu higravenh zaptelconf khocircng nằmtrong thư mục etcasterisk
2 usrlibasteriskmodules
Thư mục usrlibasteriskmodules chứa tất cả caacutec module cần thiết đểasterisk hoạt động Becircn trong thư mục lagrave caacutec ứng dụng khaacutec nhau caacutec codeccaacutec định dạng acircm thanh(format) vagrave caacutec kecircnh thocircng tin(channel) Theo mặc địnhAsterisk sẽ nạp tất cả caacutec module vagraveo luacutec khởi động Chuacuteng ta coacute thể khocircng cho
nạp một module bất kỳ bằng caacutech khocircng khai baacuteo sử dụng trong tập tinmodulesconf Lưu yacute khi khocircng cho nạp module thigrave phải biết chắc module đoacutekhocircng lagravem ảnh hưởng hoạt động của asterisk nếu khocircng lỗi sẽ xuất hiện
3 varlibasterisk
Thư mục varlibasterisk chứa tập tin astdb vagrave một số thư mục con Tập tinastdb định vị thocircng tin cơ sở dữ liệu của Asterisk giống như Microsoft WindowsRegistry
Caacutec thư mục con của thư mục varlibasterisk bao gồm
agi-bin
Thư mục agi-bin chứa caacutec script của người dugraveng magrave Asterisk coacute thểđịnh vị sử dụng qua caacutec ứng dụng AGI
AGI lagrave phần giao tiếp với ngocircn ngữ lập trigravenh script để thực hiện mộtsố cocircng việc của Asterisk từ becircn ngoagravei
firmware
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4372
Taacutec Giả Lecirc Quốc Toagraven
43
Thư mục firmware chứa một số phần dẻo(firmware) cho caacutec thiết bịkhaacutec nhau tương thiacutech với Asterisk Hiện tại chỉ coacute thư mục con iax chứa
firmware cho thiếy bị IAXy của Digium IAXy lagrave thiết bị ATA sử dụng giaothức IAX
images
Caacutec ứng dụng thocircng tin với caacutec kecircnh hỗ trợ ảnh images thigrave sử dụng thư mụcnagravey Nhưng hiện tại caacutec kecircnh thocircng tin hầu như khocircng hỗ trợ truyền ảnh images necircthư mục nagravey cũng hiếm khi được sử dụng Tuy nhiecircn nếu caacutec thiết bị coacute hỗ trợ ththư mục nagravey trở necircn hiệu dụng
keys
Asterisk coacute thể sử dụng hệ thống khoaacute publicprivate để xaacutec minh caacutec kết nốgiữa caacutec server Asterisk thocircng qua chữ kyacute điện tử RSA Nếu đặt một khoaacute publicvagraveo thư mục keys thigrave kết nối của server đầu becircn kia coacute thể được xaacutec minh bằn
kecircnh thocircng tin coacute hỗ trợ đối với Asterisk thigrave kecircnh giao thức IAX hỗ trợ loại xaacutecminh nagravey Một khoaacute private khocircng bao giờ cocircng bố chuacuteng ta chỉ cocircng bố khoaacute public đến với server cần nối đến sau đoacute sẽ được xaacutec minh với khoaacute private nagravey Chai khoaacute public vagrave private được lưu với đuocirci pub vagrave key đặt tại thư mục keys
mohmp3
Khi cấu higravenh Asterisk sử dụng tiacutenh năng Music on Hold tiacutenh năng hoạt độngsẽ thực hiện lấy caacutec tập tin mp3 tại thư mục mohmp3 Tập tin định dạng theo chucủa Asterisk necircn khi sử dụng caacutec file Mp3 thocircng thường cần coacute sự chuyển đổi thiacutechợp trước khi cheacutep vagraveo thư mục trecircn để sử dụng
sounds
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4472
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4572
Taacutec Giả Lecirc Quốc Toagraven
45
Thư mục tmp sử dụng để lưu trữ những thocircng tin tạm để luocircn bảo đảm khocircnxảy ra tigravenh trạng đọc vagrave viết tập tin cugraveng một luacutec Khi yecircu cầu xử lyacute tập tin chuacuteng thao taacutec trecircn thư mục tmp trước khi lưu vagraveo tập tin điacutech
Tất cả caacutec lời nhắc thoại từ phiacutea người sử dụng vagrave caacutec lời nhắc thoại sử dụ
cho thao taacutec hộp voicemail đều được chứa trong thư mục voicemail Một hộp thưthoại được tạo ra ứng với một maacutey nội bộ trong tập tin voicemailconf sẽ được tra một thư mục con tương ứng cho maacutey nội bộ đoacute tại thư mục voicemail
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4672
Taacutec Giả Lecirc Quốc Toagraven
46
5 varrun
Thư mục varrun chứa thocircng tin process ID(pid) cho tất cả caacutec tiến trigravenh đang
hoạt động trong hệ thống bao gồm cả Asterisk Lưu yacute lagrave ứng với mỗi hệ điều hagravethư mục varrun coacute thể khaacutec
6 varlogasterisk
Thư mục varlogasterisk lagrave nơi Asterisk chứa tất cả caacutec tập tin nhật kyacute haycograven gọi lagrave tập tin log Chuacuteng ta coacute thể tuỳ biến caacutec loại thocircng tin được lưu trong caacutec
tập tin log khaacutec nhau qua tập tin cấu higravenh loggerconf đặt tại thư mục etcasterisk7 varlogasteriskcdr-csv
Thư mục varlogasteriskcdr-csv được sử dụng để lưu chi tiết cuộc gọi CDRThocircng tin mặc định về chi tiết thocircng tin cuộc gọi lưu trữ trong tập tin MasterCVSnhưng thường thigrave ứng với mỗi matilde accountcode sẽ tạo một thư mục riecircng để lưu ctiết cuộc gọi cho maacutey đoacute
5 Một số lệnh thao taacutec trecircn hệ thống asterisk
Asterisk coacute hai thagravenh phần được xacircy dụng tiacutech hợp với nhau vagrave chạy songsong nhau
Asterisk Server bigravenh thường chạy ở chế độ nền(background) giống caacutec sevicestrong window
Asterisk Client ở chế độ dograveng lệnh CLI giao tiếp với Asterisk Server thực thicaacutec lệnh để kiểm tra hay xem caacutec thocircng tin của server
Để Chạy vagrave dừng Asterisk ở chế độ nền chuacuteng ta thực hiện lệnh sau
etcinitdasterisk (start|stop)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4772
Taacutec Giả Lecirc Quốc Toagraven
47
Một khi Asterisk đatilde chạy chuacuteng ta coacute thể chuyển qua chế độ CLI từ dấu nhắlệnh của linux như sau
asterisk ndashr
Khi vagraveo chế độ lệnh nếu muốn thoaacutet về lại dấu nhắc linux chuacuteng ta dugraveng lệnh
CLIgtexit
Caacutec lệnh cơ bản thực hiện tại CLIgt
Bất cứ khi nagraveo chỉnh sửa caacutec tập tin cấu higravenh chuacuteng ta đều cần phải nạp lại đcaacutec thay đổi coacute hiệu lực điều đoacute thực hiện bằng lệnh
CLIgtreload
Bậc chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 debug
CLIgt SIP debug
Tắt chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 no debug
CLIgt SIP no debug
Hiển thị caacutec trạng thaacutei thocircng tin của users peers vagravechannels của SIP hoặc IAX2
CLIgt sip show users
CLIgt sip show peers
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4872
Taacutec Giả Lecirc Quốc Toagraven
48
CLIgt sip show channels
CLIgt iax2 show peers
CLIgt iax2 show users
CLIgt iax2 show channels
Đến thời điểm nagravey coacute thể noacutei chuacuteng ta đatilde hoagraven thagravenh cagravei đặt hệ thốngAsterisk cagravei đặt xong mới lagrave bước mở đầu để cho hệ thống Asterisk hoạt động vtừng ứng dụng cụ thể chuacuteng sẽ tiếp tục thực hiện caacutec giai đoạn được xem lagrave qutrọng nhất trong việc triển khai hệ thống Asterisk đoacute lagrave giai đoạn cấu higravenh hệ thốnlecircn kế hoạch Diaplan chương cograven lại đều nhắm đến mục tiecircu nagravey
4 CẤU HIgraveNH HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Sau khi hoagraven tất phần cagravei đặt hệ thống asterisk một bước quan trọng tiếp thelagrave cấu higravenh hệ thống coacute thể noacutei đacircy lagrave bước quan trọng nhất của việc khiển khai thống đến với từng ứng dụng cụ thể Trong chương nagravey xin giới thiệu caacutei nhigraven đầtiecircn về việc cấu higravenh trước khi đi sacircu hơn ở những chương sau những gigrave giới thiệ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4972
Taacutec Giả Lecirc Quốc Toagraven
49
trong chương nagravey lagrave nền moacuteng cơ bản nhưng đủ để hiểu lagravem thế nagraveo hệ thống coacute thoạt động được nội dung chiacutenh bao gồm
+ Thao taacutec cấu higravenh trecircn hệ thống tập tin của asterisk
+ Caacutech cagravei đặt phần mềm softphone trecircn cocircng nghệ sip
+ Cấu higravenh cho hai maacutey softphone liecircn lạc với nhau
+ Cấu higravenh phaacutet thocircng điệp
+ Quay số qua Sip vagrave mạng PSTN
2 Tập Tin cấu higravenh
Tất cả caacutec file cấu higravenh cho hệ thống asterisk đều nằm tại thư mục etcasterisngoại trừ file zaptelconf cấu higravenh cho phần cứng TDM nằm tại thư mục etc caacutecthức cấu higravenh giống như tập tin ini của window vậy Caacutec nội dung sau dấu chấm phảy lagrave nội dung chuacute thiacutech trong file cấu higravenh giống như chuacute thiacutech trong ngocircn ngữ
lập trigravenh C lagrave dấu Tất cả caacutec khoảng trắng trong tập tin đều được bỏ qua khocircng yacute nghĩa trong file cấu higravenh
Trong file cấu higravenh cograven coacute hai pheacutep gaacuten rất thường xuyecircn được sử dụng pheacutep gaacuten ldquo=rdquo lagrave dugraveng cho việc gaacuten caacutec biến cograven pheacutep gaacuten ldquo=gtrdquo dugraveng cho việc gaacutencaacutec đối tượng sau đacircy lagrave một viacute dụ cho file cấu higravenh
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5072
Taacutec Giả Lecirc Quốc Toagraven
50
Đacircy lagrave caacutec dograveng chuacute thiacutech
[section]
Key=value gaacuten giaacute trị cho biến
[section2]
Key=gtobject Gaacuten giaacute trị cho đối tượng
Cuacute phaacutep thực hiện giống nhau cho tất cả caacutec file cấu higravenh nhưng coacute vagravei kiểukhaacutec nhau cho mỗi file cầu higravenh dựa vagraveo thức caacutech hoạt động của chuacuteng
3 Caacutec kiểu ảnh hưởng trong tập cấu higravenh
Coacute ba kiểu caacutech thức hoạt động của tập tin cấu higravenh như sau
Kiểu Caacutech hoạt động File cầu higravenh Viacute dụ
S i m p l eGroup
Coacute hiệu lực trecircntừng dograveng trongfile
Extensionconf
Exten=gt4001dial(sip400)
O p t i o ninheritance
Dograveng khai baacuteosau thừa kếnhững thocircng sốkhai baacuteo trước
Zapataconf [channels]
Context=From_PSTN
Signalling=fxs_ks
Group=1Channel=gt1
C o m p l e xEntity
Mỗi entity nhậnmột ngữ cảnh
sipconf
iaxconf
[cisco]
Type=friend
Secret=12345
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5172
Taacutec Giả Lecirc Quốc Toagraven
51
Host=192168165
Context=NoiBo
[xten]
Type=friend
Secret=6789
Host=dynamic
Context=NoiBo
1 Simple Group
Đacircy lagrave kiểu cấu higravenh đơn giản nhất thường sử dụng trong caacutec fileextentionconf meetmeconf voicemailconf tương ứng với mỗi dograveng khai baacuteo lagravemột đối tượng coacute yacute nghĩa trecircn dograveng đoacute
Viacute dụ
Extentionconf [section]
object1=gt op1op2op3
object2=gt op1bop2bop3b
Trong viacute dụ trecircn mỗi dograveng tương ứng với caacutec toaacuten tử khaacutec nhau object1 coacute caacutectoaacuten từ op1 op2 op3 trong khi đoacute object2 lại coacute caacutec toaacuten từ op1b op2b op3b
2 Option inheritance
Đacircy lagrave cấu higravenh kiểu thừa kế thường được cấu higravenh trong caacutec file zapataconfagentconf với kiểu cấu higravenh nagravey thigrave caacutec dograveng phiacutea dưới coacute thể thừa kế caacutec thocircng sdograveng phiacutea trecircn tương ứng với mỗi section caacutec dograveng phiacutea dưới coacute thể thay đổi caacutecthocircng số cho tươngứng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5272
Taacutec Giả Lecirc Quốc Toagraven
52
Viacute dụ
Extentionconf
[section]
Op1=bas
Op2=adv
Object1=gt1
Op1=int
Object1=gt2
Với cấu higravenh trecircn coacute thể giải thiacutech như sau object1=gt1 thừa hưởng hai thocircngsố ở phiacutea trecircn đoacute lagrave op1=bas vagrave op2=adv trong khi đoacute đối với object1=gt2 với thocircngsố op1=int được khai baacuteo lại necircn object1=gt2 được thừa kế từ hai thocircng số op1=invagrave op2=adv
3 Complex Entity
Với cấu kiểu nagravey được tổ chức thagravenh nhiều entity ứng với mỗi entity coacute nhiềthocircng số được khai baacuteo mỗi entity ở đacircy chiacutenh lagrave caacutec section để khai baacuteo caacutec kecircnhthocircng tin Cấu higravenh thường được sử dụng trong caacutec file iaxconf sipconf
Viacute dụ
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5372
Taacutec Giả Lecirc Quốc Toagraven
53
[entity1]
Op1=value1
Op2=value2
[entity2]
Op1=value3
Op2=value4
Entity1 coacute caacutec giaacute trị value1 vagrave value2 cho thocircng số op1 vagrave op2 trong khi đoacute
cũng lagrave thocircng số op1 vagrave op 2 nhưng coacute caacutec giaacute trị khaacutec lagrave value3 vagrave value4 choentity2
4 Cấu higravenh giao tiếp với mạng PSTN
1 Ngữ cảnh kết nối
Để kết nối với mạng PSTN chuacuteng ta cần phải coacute một card TDM với Cổng
FXO vagrave một đường dacircy điện thoại hoặc coacute thể lagrave một tổng đagravei nội bộ PBX Cnhiều nhagrave sản xuất phần cứng khaacutec nhau nhưng trong phần cấu higravenh dưới dacircy lagrave cấhigravenh cho card zapata TDM01B của digium (card nagravey hiện nay giaacute baacuten khoảng175$)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3272
Taacutec Giả Lecirc Quốc Toagraven
32
Higravenh Thiết bị ATA
9 Codecs
Thuật Toaacuten codecs(CompressorDe-compressor) lagrave một tập caacutec quy luật đượcsử dụng để chuyển đổi caacutec tiacuten hiệu thoại dạng Analog sang tiacuten hiệu số vagrave ngược lạ
Coacute nhiều thuật toaacuten codec để thực hiện chuyển đổi tiacuten hiệu analog sang tiacuten
hiệu số dạng nhị phacircn (01) như G711 GSM G729hellipỨng với mỗi thuật toaacuten coacutenhững ưu điểm riecircng đặc biệt lagrave việc tối ưu sử dụng băng thocircng trecircn đường truyềMục tiecircu cuối cugraveng lagrave caacutec thuật toaacuten đưa ra phải đảm bảo chất lượng cuộc gọi nhvagrave tiết kiệm băng thocircng nhất
G729 lagrave thuật toaacuten codec tốt nhất hiện nay trong hệ thống VoIP Với hệthống Asterisk để sử dụng thuật toaacuten nagravey cần phải mua bản quyền sử dụng vigrave đacircy
codec khocircng miễn phiacute sử dụng
10 QoS ndash Quality of Service
Caacutec yếu tố ảnh hưởng đến chất lượng của dịch vụ đối với VoIP đoacute lagrave caacuteyếu ảnh hưởng đến chất lượng tiacuten hiệu thoại
1 Độ trễ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3372
Taacutec Giả Lecirc Quốc Toagraven
33
Thoại lagrave dịch vụ mang tiacutenh thời gian thực rất cao vigrave thế trễ lagrave yếu tố ảnhhưởng rất lớn đến chất lượng dịch vụ Trễ được định nghĩa lagrave khoảng thời gian tiacute
từ luacutec tiacuten hiệu thoại đi từ miệng người noacutei tới tai người nghe Trễ lagrave yếu tố khocircnthể traacutenh khỏi độ trễ đối với mạng điện thoại truyền thống (mạng PSTN) khoảng50ms đến 70ms theo khiến nghị của ITU-T để đảm bảo chất lượng cho hệ thốVoIP thigrave độ trễ từ đầu phaacutet tới đầu thu hoặc ngược lại khocircng được vượt quaacute 150mkhi magrave độ trễ vượt quaacute 400ms đến 500ms thigrave khocircng thể chấp nhận được
Caacutec nguyecircn nhacircn gacircy ra trễ bao gồm Trễ trecircn mạng lưới trễ trecircn bộ mả hoacutea
giải matilde trễ trong quaacute trigravenh đoacuteng goacutei trễ bộ đệm trễ xử lyacute tiếng noacuteihellip2 Độ trượt(Jitter)
Nguyecircn nhacircn gacircy ra trượt lagrave goacutei tiacuten hiệu thoại trong quaacute trigravenh truyền từnguồn đến điacutech sẽ gặp phải những điều kiện khaacutec nhau trecircn mạng lưới do đoacute thườđến điacutech với những khoảng trễ khaacutec nhau Đacircy lagrave tiacutenh khocircng đồng nhất của trễ Mnguyecircn nhacircn khaacutec của trượt đối với ứng dụng PC to PC lagrave do việc sử dụng hệ điề
hagravenh phi thời gian thực caacutec goacutei tin thoại phải đợi hệ điều hagravenh xử lyacute trong nhữnkhoảng thời gian khaacutec nhau khi magrave hệ điều hagravenh đang phải xử lyacute đối với caacutec ứndụng khaacutec
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3472
Taacutec Giả Lecirc Quốc Toagraven
34
Higravenh Nguyecircn nhacircn xảy ra trượt
Để loại bỏ tiacutenh khocircng đồng nhất của trễ người ta thiết kế caacutec bộ đệm t(Jitter Buffer) tại nơi đến của caacutec goacutei tin caacutec goacutei tin đến với caacutec khoảng caacutech khaacutecnhau về thời gian được lưu tại bộ đệm rồi phaacutet khỏi bộ đệm với khoảng trễ n
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3572
Taacutec Giả Lecirc Quốc Toagraven
35
nhau Khi bộ đếm coacute kiacutech thước cagraveng lớn thigrave khả năng loại bỏ tiacutenh khocircng đồng nhấcagraveng lớn tuy nhiecircn việc sử dụng bộ đệm sẽ gacircy ra hiện tượng trễ trong ứng dụnthoại do đoacute cần coacute bagravei toaacuten cacircn đối giữa độ trễ vagrave độ trượt
Ngoagravei 2 nguyecircn nhacircn trecircn cograven một số nguyecircn nhacircn nữa ảnh hưởng đến chấtlượng thoại như độ mất goacutei giới hạn băng thocircng tiếng vọng
3 CAgraveI ĐẶT ASTERISK
1 Cagravei đặt Asterisk
1 Download vagrave bung neacuten
Để cagravei đặt Asterisk đầu tiecircn chuacuteng ta cần phải cagravei đặt hệ điều hagravenh linux trecircnmaacutey tiacutenh của migravenh Coacute thể cagravei hệ điều hagravenh Linux Fedora CentOS Redhat hoặcDebian Caacutec goacutei phần mềm phụ thuộc phải coacute trong hệ điều hagravenh Linux trước khcagravei Asterisk bao gồm
bison
gcc
kernel-source
libtermcap-devel
ncurses-devel
openssl096b
openssl-devel
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3672
Taacutec Giả Lecirc Quốc Toagraven
36
Sau khi hoagraven tất caacutec bước trecircn chuacuteng ta tiến hagravenh download phần mềmasterisk với phiecircn bản mới nhất
cd usrsrc
wgetftpftpdigiumcompubasteriskasterisk-140targz
wgetftpftpdigiumcompubasteriskasterisk-addons-140targz
wgetftpftpdigiumcompubasteriskasterisk-sounds-140targz
wgethttpftpdigiumcompubzaptelzaptel-140targz
wgethttpftpdigiumcompublibprilibpri-140targz
Việc download coacute thể nhanh hay chậm tugravey vagraveo tốc độ trecircn đường internet saukhi download hoagraven thagravenh chuacuteng ta tiến hagravenh bung neacuten caacutec goacutei ra thư mục chỉ định
tar ndashxzvf asterisk-140targz
tar ndashxzvf asterisk-addons-140targz
tar ndashxzvf asterisk-sounds-140targz
tar ndashxzvf zaptel-140targz
tar ndashxzvf libpri-140targz
Giải neacuten xong chuacuteng ta nhớ thực hiện lệnh
ln ndashs usrsrcasterisk-140 usrsrcasterisk lệnh nagravey để bảo đảm goacuteildquoaddonsrdquo được biecircn dịch đuacuteng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3772
Taacutec Giả Lecirc Quốc Toagraven
37
Bacircy giờ tới phần chuacuteng ta biecircn dịch caacutec goacutei đatilde giải neacuten ở trecircn trước tiecircn lagrave goacuteizaptel kế đến lagrave libpri sau cugraveng lagrave goacutei Asterisk
2 Cagravei đặt goacutei Zaptel
Goacutei zaptel sẽ chứa tại thư mục usrsrczaptel Đaacutenh lệnh như dưới đacircy để cagraveđặt
cd usrsrczaptel
make clean make install
Lệnh nagravey thực hiện khoảng 2 phuacutet tugravey vagraveo tốc độ maacutey tiacutenh cagravei đặt sau khicagravei đặt xong sẽ trở lại dấu nhắc lệnh vagrave hiển thị một loạt caacutec thocircng baacuteo trong đoacute một số bản tin lỗi magrave chủ yếu lagrave yecircu cầu cagravei đặt caacutec goacutei phụ thuộc đatilde liệt kecirc ở trecircnếu caacutec goacutei trecircn chưa được cagravei đặt
Goacutei zaptel nagravey chứa caacutec driver cho caacutec phần cứng kết giao tiếp với asterisk
do Digium phacircn phối vagrave một số thư viện cho việc coacute thực hiện giao tiếp với phầcứng hay khocircng
Để Asterisk coacute thể chạy cugraveng với khởi động của maacutey tiacutenh chuacuteng ta cần thựchiện lệnh
make config
Lệnh nagravey sẽ tạo ra script chegraven module zaptel vagraveo kernel vagrave chạy ztconfig vagraveoluacutec khởi động maacutey Trong Redhat script nagravey sẽ được cheacutep vagraveo etcinitd chạy ở mức 3
3 Cagravei đặt goacutei libpri
Kế đến chuacuteng ta biecircn dịch goacutei libpri tại thư mục usrsrclibpri bằng lệnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3972
Taacutec Giả Lecirc Quốc Toagraven
39
make config
3 Cagravei đặt TrixBox
1 Giới thiệu
TRIXBOX được phaacutet triển từ nhacircn của ứng dụng Asterisk được tổng hợp từmột số thagravenh phần chiacutenh được phaacutet triển bởi cộng đồng phaacutet triển nguồn mAsterisk dưới bản quyền GPL Trixbox bao gồm những thagravenh phần chiacutenh cho việcấu higravenh ứng dụng thống kecirc tigravenh trạng hoạt động hệ thống lưu trữ dự phograveng v
nhacircn lagrave hệ điều hagravenh CentOS một phiecircn bản khaacutec của Redhat tất cả kết hợp vớnhau tạo thagravenh một goacutei hoagraven chỉnh Khi cagravei goacutei nagravey vagraveo maacutey tiacutenh thigrave coacute thể sử dụngnhư một tổng đagravei PBX
Caacutec thagravenh phần chiacutenh trong goacutei TRIXBOX lagrave
Asterisk PBX Thagravenh phần chiacutenh của hệ thống Trixbox
CentOS Một phiecircn bản Linux khaacutec của Redhat hoagraven toagraven miển phiacute sửdụng Lagrave nhacircn chiacutenh cho Trixbox
SugarCRM Hệ thống quan hệ khaacutech hagraveng CRM
A2Billing ndash Lagrave thagravenh phần dagravenh cho việc xacircy dựng hệ thống điện thoạitrả trước hay cograven gọi lagrave điện thọai thẻ (Calling Card)
Flash Operator Panel Bảng điều khiển giaacutem saacutet tigravenh trạng hoạt độngcủa caacutec maacutey điện thoại trong hệ thống
Web MeetMe Control Quản lyacute triển khai hệ thống điện thoại hội nghị
FreePBX Đacircy lagrave cocircng cụ với giao diện web dagravenh cho việc cấu higravenh hệthống Asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4072
Taacutec Giả Lecirc Quốc Toagraven
40
Hệ thống Lưu trữ dự phograveng vagrave thống kecirc Lagrave thagravenh phần của TRIXBOXcung cấp caacutec cocircng cụ cần thiết cho việc bảo trigrave bảo dưỡng hệ thống
Hệ thống Apache-Php-Mysql dagravenh cho giải phaacutep Webserver của hệthống
2 DOWNLOAD VAgrave LẮP ĐẶT TRIXBOX
Địa chỉ downloadhttpsourceforgenetprojectsasteriskathome
Khi download xong file Trixboxiso Hatildey dugraveng file nagravey Burn vagraveo CD ( xinlưu yacute lagrave dugraveng Nero hoặc chương trigravenh cheacutep đĩa ưa thiacutech rồi burn vagraveo cd_romchứ khocircng phải cheacutep file đoacute vagraveo cd_rom)
Sau khi coacute CD Hatildey boot từ CD nagravey để cagravei đặt trixbox
Chuacute yacute dữ liệu trecircn đĩa cứng sẽ bị xoacutea sạch để cagravei đặt trixbox Nếu trongđĩa cứng cograven dữ liệu hatildey backup tất cả trước khi tiến hagravenh lắp đặt trixbox
Tới đacircy lần lượt caacutec magraven higravenh chỉ dẫn sẽ hiện ra vagrave cứ theo hướng dẫn magrave cagraveđặt Sau khi cagravei đặt xong chuacuteng ta dugraveng Username root vagrave password password đểđăng nhập hệ thống
3 Cấu higravenh địa chỉ IP cho card mạng
Thiết lập địa chỉ IP bằng caacutech gotilde lệnh
netconfig
Chọn OK để thiếp lập
Nếu trong mạng coacute hỗ trợ DHCP thigrave hatildey chọn mục nagravey cograven nếu khocircng hatildeynhập địa chỉ IP tĩnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4172
Taacutec Giả Lecirc Quốc Toagraven
41
IP 19216801
Netmask 2552552550
Gateway 19216893254 ngotilde ra becircn ngoagravei
Primary nameserver 19216893200 thiết lập nếu coacute
Chọn OK để chấp nhận caacutec thiết lập trecircn
Sau khi hoagraven tất hatildey lagravem cho thiết lập coacute hiệu lực bằng caacutech reset lại
maacutey tiacutenh hoặc dugraveng lệnh sau
Service network stop
Service network start
Đến đacircy xem như cagravei đặt hoagraven tất bacircy giờ để cấu higravenh được Asterisk chuacutengta vagraveo một magravey khaacutec vagrave mở Internet Explorer hoặc một trigravenh duyệt web bất kỳ
nhập vagraveohttp19216801đatilde cấu higravenh ở trecircn vagrave tiến hagravenh cấu higravenh hệ thốngvới tagravei khoảng username maint vagrave password password
4 Tổ Chức Thư Mục của Asterisk
Asterisk sử dụng nhiều thư mục trecircn hệ thống linux để quản lyacute caacutec khiacutea cạnkhaacutec nhau của hệ thống như nghi nhận bản tin thoại caacutec bản tin nhắc thoại hoặcaacutec tập tin cấu higravenh Phần nagravey sẽ trigravenh bagravey caacutec thư mục chiacutenh yếu được tạo ra tronquaacute trigravenh lắp đặt vagrave được cấu higravenh trong tập tin Asteriskconf
1 etcasterisk
Thư mục etcasterisk chứa tất cả caacutec tập tin cấu higravenh của hệ thốngAsterisk ngoại trừ tập tin Zaptelconf được đặt tại thư mục etc Phần cứnZaptel đầu tiecircn được phaacutet triển bởi Jim Dixon thuộc nhoacutem Zapata Telephony
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4272
Taacutec Giả Lecirc Quốc Toagraven
42
Group để giao tiếp giữa maacutey tiacutenh với mạng điện thoại magrave Asterisk lại sửdụng phần cứng nagravey với lyacute do đoacute magrave file cấu higravenh zaptelconf khocircng nằmtrong thư mục etcasterisk
2 usrlibasteriskmodules
Thư mục usrlibasteriskmodules chứa tất cả caacutec module cần thiết đểasterisk hoạt động Becircn trong thư mục lagrave caacutec ứng dụng khaacutec nhau caacutec codeccaacutec định dạng acircm thanh(format) vagrave caacutec kecircnh thocircng tin(channel) Theo mặc địnhAsterisk sẽ nạp tất cả caacutec module vagraveo luacutec khởi động Chuacuteng ta coacute thể khocircng cho
nạp một module bất kỳ bằng caacutech khocircng khai baacuteo sử dụng trong tập tinmodulesconf Lưu yacute khi khocircng cho nạp module thigrave phải biết chắc module đoacutekhocircng lagravem ảnh hưởng hoạt động của asterisk nếu khocircng lỗi sẽ xuất hiện
3 varlibasterisk
Thư mục varlibasterisk chứa tập tin astdb vagrave một số thư mục con Tập tinastdb định vị thocircng tin cơ sở dữ liệu của Asterisk giống như Microsoft WindowsRegistry
Caacutec thư mục con của thư mục varlibasterisk bao gồm
agi-bin
Thư mục agi-bin chứa caacutec script của người dugraveng magrave Asterisk coacute thểđịnh vị sử dụng qua caacutec ứng dụng AGI
AGI lagrave phần giao tiếp với ngocircn ngữ lập trigravenh script để thực hiện mộtsố cocircng việc của Asterisk từ becircn ngoagravei
firmware
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4372
Taacutec Giả Lecirc Quốc Toagraven
43
Thư mục firmware chứa một số phần dẻo(firmware) cho caacutec thiết bịkhaacutec nhau tương thiacutech với Asterisk Hiện tại chỉ coacute thư mục con iax chứa
firmware cho thiếy bị IAXy của Digium IAXy lagrave thiết bị ATA sử dụng giaothức IAX
images
Caacutec ứng dụng thocircng tin với caacutec kecircnh hỗ trợ ảnh images thigrave sử dụng thư mụcnagravey Nhưng hiện tại caacutec kecircnh thocircng tin hầu như khocircng hỗ trợ truyền ảnh images necircthư mục nagravey cũng hiếm khi được sử dụng Tuy nhiecircn nếu caacutec thiết bị coacute hỗ trợ ththư mục nagravey trở necircn hiệu dụng
keys
Asterisk coacute thể sử dụng hệ thống khoaacute publicprivate để xaacutec minh caacutec kết nốgiữa caacutec server Asterisk thocircng qua chữ kyacute điện tử RSA Nếu đặt một khoaacute publicvagraveo thư mục keys thigrave kết nối của server đầu becircn kia coacute thể được xaacutec minh bằn
kecircnh thocircng tin coacute hỗ trợ đối với Asterisk thigrave kecircnh giao thức IAX hỗ trợ loại xaacutecminh nagravey Một khoaacute private khocircng bao giờ cocircng bố chuacuteng ta chỉ cocircng bố khoaacute public đến với server cần nối đến sau đoacute sẽ được xaacutec minh với khoaacute private nagravey Chai khoaacute public vagrave private được lưu với đuocirci pub vagrave key đặt tại thư mục keys
mohmp3
Khi cấu higravenh Asterisk sử dụng tiacutenh năng Music on Hold tiacutenh năng hoạt độngsẽ thực hiện lấy caacutec tập tin mp3 tại thư mục mohmp3 Tập tin định dạng theo chucủa Asterisk necircn khi sử dụng caacutec file Mp3 thocircng thường cần coacute sự chuyển đổi thiacutechợp trước khi cheacutep vagraveo thư mục trecircn để sử dụng
sounds
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4472
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4572
Taacutec Giả Lecirc Quốc Toagraven
45
Thư mục tmp sử dụng để lưu trữ những thocircng tin tạm để luocircn bảo đảm khocircnxảy ra tigravenh trạng đọc vagrave viết tập tin cugraveng một luacutec Khi yecircu cầu xử lyacute tập tin chuacuteng thao taacutec trecircn thư mục tmp trước khi lưu vagraveo tập tin điacutech
Tất cả caacutec lời nhắc thoại từ phiacutea người sử dụng vagrave caacutec lời nhắc thoại sử dụ
cho thao taacutec hộp voicemail đều được chứa trong thư mục voicemail Một hộp thưthoại được tạo ra ứng với một maacutey nội bộ trong tập tin voicemailconf sẽ được tra một thư mục con tương ứng cho maacutey nội bộ đoacute tại thư mục voicemail
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4672
Taacutec Giả Lecirc Quốc Toagraven
46
5 varrun
Thư mục varrun chứa thocircng tin process ID(pid) cho tất cả caacutec tiến trigravenh đang
hoạt động trong hệ thống bao gồm cả Asterisk Lưu yacute lagrave ứng với mỗi hệ điều hagravethư mục varrun coacute thể khaacutec
6 varlogasterisk
Thư mục varlogasterisk lagrave nơi Asterisk chứa tất cả caacutec tập tin nhật kyacute haycograven gọi lagrave tập tin log Chuacuteng ta coacute thể tuỳ biến caacutec loại thocircng tin được lưu trong caacutec
tập tin log khaacutec nhau qua tập tin cấu higravenh loggerconf đặt tại thư mục etcasterisk7 varlogasteriskcdr-csv
Thư mục varlogasteriskcdr-csv được sử dụng để lưu chi tiết cuộc gọi CDRThocircng tin mặc định về chi tiết thocircng tin cuộc gọi lưu trữ trong tập tin MasterCVSnhưng thường thigrave ứng với mỗi matilde accountcode sẽ tạo một thư mục riecircng để lưu ctiết cuộc gọi cho maacutey đoacute
5 Một số lệnh thao taacutec trecircn hệ thống asterisk
Asterisk coacute hai thagravenh phần được xacircy dụng tiacutech hợp với nhau vagrave chạy songsong nhau
Asterisk Server bigravenh thường chạy ở chế độ nền(background) giống caacutec sevicestrong window
Asterisk Client ở chế độ dograveng lệnh CLI giao tiếp với Asterisk Server thực thicaacutec lệnh để kiểm tra hay xem caacutec thocircng tin của server
Để Chạy vagrave dừng Asterisk ở chế độ nền chuacuteng ta thực hiện lệnh sau
etcinitdasterisk (start|stop)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4772
Taacutec Giả Lecirc Quốc Toagraven
47
Một khi Asterisk đatilde chạy chuacuteng ta coacute thể chuyển qua chế độ CLI từ dấu nhắlệnh của linux như sau
asterisk ndashr
Khi vagraveo chế độ lệnh nếu muốn thoaacutet về lại dấu nhắc linux chuacuteng ta dugraveng lệnh
CLIgtexit
Caacutec lệnh cơ bản thực hiện tại CLIgt
Bất cứ khi nagraveo chỉnh sửa caacutec tập tin cấu higravenh chuacuteng ta đều cần phải nạp lại đcaacutec thay đổi coacute hiệu lực điều đoacute thực hiện bằng lệnh
CLIgtreload
Bậc chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 debug
CLIgt SIP debug
Tắt chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 no debug
CLIgt SIP no debug
Hiển thị caacutec trạng thaacutei thocircng tin của users peers vagravechannels của SIP hoặc IAX2
CLIgt sip show users
CLIgt sip show peers
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4872
Taacutec Giả Lecirc Quốc Toagraven
48
CLIgt sip show channels
CLIgt iax2 show peers
CLIgt iax2 show users
CLIgt iax2 show channels
Đến thời điểm nagravey coacute thể noacutei chuacuteng ta đatilde hoagraven thagravenh cagravei đặt hệ thốngAsterisk cagravei đặt xong mới lagrave bước mở đầu để cho hệ thống Asterisk hoạt động vtừng ứng dụng cụ thể chuacuteng sẽ tiếp tục thực hiện caacutec giai đoạn được xem lagrave qutrọng nhất trong việc triển khai hệ thống Asterisk đoacute lagrave giai đoạn cấu higravenh hệ thốnlecircn kế hoạch Diaplan chương cograven lại đều nhắm đến mục tiecircu nagravey
4 CẤU HIgraveNH HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Sau khi hoagraven tất phần cagravei đặt hệ thống asterisk một bước quan trọng tiếp thelagrave cấu higravenh hệ thống coacute thể noacutei đacircy lagrave bước quan trọng nhất của việc khiển khai thống đến với từng ứng dụng cụ thể Trong chương nagravey xin giới thiệu caacutei nhigraven đầtiecircn về việc cấu higravenh trước khi đi sacircu hơn ở những chương sau những gigrave giới thiệ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4972
Taacutec Giả Lecirc Quốc Toagraven
49
trong chương nagravey lagrave nền moacuteng cơ bản nhưng đủ để hiểu lagravem thế nagraveo hệ thống coacute thoạt động được nội dung chiacutenh bao gồm
+ Thao taacutec cấu higravenh trecircn hệ thống tập tin của asterisk
+ Caacutech cagravei đặt phần mềm softphone trecircn cocircng nghệ sip
+ Cấu higravenh cho hai maacutey softphone liecircn lạc với nhau
+ Cấu higravenh phaacutet thocircng điệp
+ Quay số qua Sip vagrave mạng PSTN
2 Tập Tin cấu higravenh
Tất cả caacutec file cấu higravenh cho hệ thống asterisk đều nằm tại thư mục etcasterisngoại trừ file zaptelconf cấu higravenh cho phần cứng TDM nằm tại thư mục etc caacutecthức cấu higravenh giống như tập tin ini của window vậy Caacutec nội dung sau dấu chấm phảy lagrave nội dung chuacute thiacutech trong file cấu higravenh giống như chuacute thiacutech trong ngocircn ngữ
lập trigravenh C lagrave dấu Tất cả caacutec khoảng trắng trong tập tin đều được bỏ qua khocircng yacute nghĩa trong file cấu higravenh
Trong file cấu higravenh cograven coacute hai pheacutep gaacuten rất thường xuyecircn được sử dụng pheacutep gaacuten ldquo=rdquo lagrave dugraveng cho việc gaacuten caacutec biến cograven pheacutep gaacuten ldquo=gtrdquo dugraveng cho việc gaacutencaacutec đối tượng sau đacircy lagrave một viacute dụ cho file cấu higravenh
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5072
Taacutec Giả Lecirc Quốc Toagraven
50
Đacircy lagrave caacutec dograveng chuacute thiacutech
[section]
Key=value gaacuten giaacute trị cho biến
[section2]
Key=gtobject Gaacuten giaacute trị cho đối tượng
Cuacute phaacutep thực hiện giống nhau cho tất cả caacutec file cấu higravenh nhưng coacute vagravei kiểukhaacutec nhau cho mỗi file cầu higravenh dựa vagraveo thức caacutech hoạt động của chuacuteng
3 Caacutec kiểu ảnh hưởng trong tập cấu higravenh
Coacute ba kiểu caacutech thức hoạt động của tập tin cấu higravenh như sau
Kiểu Caacutech hoạt động File cầu higravenh Viacute dụ
S i m p l eGroup
Coacute hiệu lực trecircntừng dograveng trongfile
Extensionconf
Exten=gt4001dial(sip400)
O p t i o ninheritance
Dograveng khai baacuteosau thừa kếnhững thocircng sốkhai baacuteo trước
Zapataconf [channels]
Context=From_PSTN
Signalling=fxs_ks
Group=1Channel=gt1
C o m p l e xEntity
Mỗi entity nhậnmột ngữ cảnh
sipconf
iaxconf
[cisco]
Type=friend
Secret=12345
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5172
Taacutec Giả Lecirc Quốc Toagraven
51
Host=192168165
Context=NoiBo
[xten]
Type=friend
Secret=6789
Host=dynamic
Context=NoiBo
1 Simple Group
Đacircy lagrave kiểu cấu higravenh đơn giản nhất thường sử dụng trong caacutec fileextentionconf meetmeconf voicemailconf tương ứng với mỗi dograveng khai baacuteo lagravemột đối tượng coacute yacute nghĩa trecircn dograveng đoacute
Viacute dụ
Extentionconf [section]
object1=gt op1op2op3
object2=gt op1bop2bop3b
Trong viacute dụ trecircn mỗi dograveng tương ứng với caacutec toaacuten tử khaacutec nhau object1 coacute caacutectoaacuten từ op1 op2 op3 trong khi đoacute object2 lại coacute caacutec toaacuten từ op1b op2b op3b
2 Option inheritance
Đacircy lagrave cấu higravenh kiểu thừa kế thường được cấu higravenh trong caacutec file zapataconfagentconf với kiểu cấu higravenh nagravey thigrave caacutec dograveng phiacutea dưới coacute thể thừa kế caacutec thocircng sdograveng phiacutea trecircn tương ứng với mỗi section caacutec dograveng phiacutea dưới coacute thể thay đổi caacutecthocircng số cho tươngứng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5272
Taacutec Giả Lecirc Quốc Toagraven
52
Viacute dụ
Extentionconf
[section]
Op1=bas
Op2=adv
Object1=gt1
Op1=int
Object1=gt2
Với cấu higravenh trecircn coacute thể giải thiacutech như sau object1=gt1 thừa hưởng hai thocircngsố ở phiacutea trecircn đoacute lagrave op1=bas vagrave op2=adv trong khi đoacute đối với object1=gt2 với thocircngsố op1=int được khai baacuteo lại necircn object1=gt2 được thừa kế từ hai thocircng số op1=invagrave op2=adv
3 Complex Entity
Với cấu kiểu nagravey được tổ chức thagravenh nhiều entity ứng với mỗi entity coacute nhiềthocircng số được khai baacuteo mỗi entity ở đacircy chiacutenh lagrave caacutec section để khai baacuteo caacutec kecircnhthocircng tin Cấu higravenh thường được sử dụng trong caacutec file iaxconf sipconf
Viacute dụ
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5372
Taacutec Giả Lecirc Quốc Toagraven
53
[entity1]
Op1=value1
Op2=value2
[entity2]
Op1=value3
Op2=value4
Entity1 coacute caacutec giaacute trị value1 vagrave value2 cho thocircng số op1 vagrave op2 trong khi đoacute
cũng lagrave thocircng số op1 vagrave op 2 nhưng coacute caacutec giaacute trị khaacutec lagrave value3 vagrave value4 choentity2
4 Cấu higravenh giao tiếp với mạng PSTN
1 Ngữ cảnh kết nối
Để kết nối với mạng PSTN chuacuteng ta cần phải coacute một card TDM với Cổng
FXO vagrave một đường dacircy điện thoại hoặc coacute thể lagrave một tổng đagravei nội bộ PBX Cnhiều nhagrave sản xuất phần cứng khaacutec nhau nhưng trong phần cấu higravenh dưới dacircy lagrave cấhigravenh cho card zapata TDM01B của digium (card nagravey hiện nay giaacute baacuten khoảng175$)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3372
Taacutec Giả Lecirc Quốc Toagraven
33
Thoại lagrave dịch vụ mang tiacutenh thời gian thực rất cao vigrave thế trễ lagrave yếu tố ảnhhưởng rất lớn đến chất lượng dịch vụ Trễ được định nghĩa lagrave khoảng thời gian tiacute
từ luacutec tiacuten hiệu thoại đi từ miệng người noacutei tới tai người nghe Trễ lagrave yếu tố khocircnthể traacutenh khỏi độ trễ đối với mạng điện thoại truyền thống (mạng PSTN) khoảng50ms đến 70ms theo khiến nghị của ITU-T để đảm bảo chất lượng cho hệ thốVoIP thigrave độ trễ từ đầu phaacutet tới đầu thu hoặc ngược lại khocircng được vượt quaacute 150mkhi magrave độ trễ vượt quaacute 400ms đến 500ms thigrave khocircng thể chấp nhận được
Caacutec nguyecircn nhacircn gacircy ra trễ bao gồm Trễ trecircn mạng lưới trễ trecircn bộ mả hoacutea
giải matilde trễ trong quaacute trigravenh đoacuteng goacutei trễ bộ đệm trễ xử lyacute tiếng noacuteihellip2 Độ trượt(Jitter)
Nguyecircn nhacircn gacircy ra trượt lagrave goacutei tiacuten hiệu thoại trong quaacute trigravenh truyền từnguồn đến điacutech sẽ gặp phải những điều kiện khaacutec nhau trecircn mạng lưới do đoacute thườđến điacutech với những khoảng trễ khaacutec nhau Đacircy lagrave tiacutenh khocircng đồng nhất của trễ Mnguyecircn nhacircn khaacutec của trượt đối với ứng dụng PC to PC lagrave do việc sử dụng hệ điề
hagravenh phi thời gian thực caacutec goacutei tin thoại phải đợi hệ điều hagravenh xử lyacute trong nhữnkhoảng thời gian khaacutec nhau khi magrave hệ điều hagravenh đang phải xử lyacute đối với caacutec ứndụng khaacutec
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3472
Taacutec Giả Lecirc Quốc Toagraven
34
Higravenh Nguyecircn nhacircn xảy ra trượt
Để loại bỏ tiacutenh khocircng đồng nhất của trễ người ta thiết kế caacutec bộ đệm t(Jitter Buffer) tại nơi đến của caacutec goacutei tin caacutec goacutei tin đến với caacutec khoảng caacutech khaacutecnhau về thời gian được lưu tại bộ đệm rồi phaacutet khỏi bộ đệm với khoảng trễ n
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3572
Taacutec Giả Lecirc Quốc Toagraven
35
nhau Khi bộ đếm coacute kiacutech thước cagraveng lớn thigrave khả năng loại bỏ tiacutenh khocircng đồng nhấcagraveng lớn tuy nhiecircn việc sử dụng bộ đệm sẽ gacircy ra hiện tượng trễ trong ứng dụnthoại do đoacute cần coacute bagravei toaacuten cacircn đối giữa độ trễ vagrave độ trượt
Ngoagravei 2 nguyecircn nhacircn trecircn cograven một số nguyecircn nhacircn nữa ảnh hưởng đến chấtlượng thoại như độ mất goacutei giới hạn băng thocircng tiếng vọng
3 CAgraveI ĐẶT ASTERISK
1 Cagravei đặt Asterisk
1 Download vagrave bung neacuten
Để cagravei đặt Asterisk đầu tiecircn chuacuteng ta cần phải cagravei đặt hệ điều hagravenh linux trecircnmaacutey tiacutenh của migravenh Coacute thể cagravei hệ điều hagravenh Linux Fedora CentOS Redhat hoặcDebian Caacutec goacutei phần mềm phụ thuộc phải coacute trong hệ điều hagravenh Linux trước khcagravei Asterisk bao gồm
bison
gcc
kernel-source
libtermcap-devel
ncurses-devel
openssl096b
openssl-devel
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3672
Taacutec Giả Lecirc Quốc Toagraven
36
Sau khi hoagraven tất caacutec bước trecircn chuacuteng ta tiến hagravenh download phần mềmasterisk với phiecircn bản mới nhất
cd usrsrc
wgetftpftpdigiumcompubasteriskasterisk-140targz
wgetftpftpdigiumcompubasteriskasterisk-addons-140targz
wgetftpftpdigiumcompubasteriskasterisk-sounds-140targz
wgethttpftpdigiumcompubzaptelzaptel-140targz
wgethttpftpdigiumcompublibprilibpri-140targz
Việc download coacute thể nhanh hay chậm tugravey vagraveo tốc độ trecircn đường internet saukhi download hoagraven thagravenh chuacuteng ta tiến hagravenh bung neacuten caacutec goacutei ra thư mục chỉ định
tar ndashxzvf asterisk-140targz
tar ndashxzvf asterisk-addons-140targz
tar ndashxzvf asterisk-sounds-140targz
tar ndashxzvf zaptel-140targz
tar ndashxzvf libpri-140targz
Giải neacuten xong chuacuteng ta nhớ thực hiện lệnh
ln ndashs usrsrcasterisk-140 usrsrcasterisk lệnh nagravey để bảo đảm goacuteildquoaddonsrdquo được biecircn dịch đuacuteng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3772
Taacutec Giả Lecirc Quốc Toagraven
37
Bacircy giờ tới phần chuacuteng ta biecircn dịch caacutec goacutei đatilde giải neacuten ở trecircn trước tiecircn lagrave goacuteizaptel kế đến lagrave libpri sau cugraveng lagrave goacutei Asterisk
2 Cagravei đặt goacutei Zaptel
Goacutei zaptel sẽ chứa tại thư mục usrsrczaptel Đaacutenh lệnh như dưới đacircy để cagraveđặt
cd usrsrczaptel
make clean make install
Lệnh nagravey thực hiện khoảng 2 phuacutet tugravey vagraveo tốc độ maacutey tiacutenh cagravei đặt sau khicagravei đặt xong sẽ trở lại dấu nhắc lệnh vagrave hiển thị một loạt caacutec thocircng baacuteo trong đoacute một số bản tin lỗi magrave chủ yếu lagrave yecircu cầu cagravei đặt caacutec goacutei phụ thuộc đatilde liệt kecirc ở trecircnếu caacutec goacutei trecircn chưa được cagravei đặt
Goacutei zaptel nagravey chứa caacutec driver cho caacutec phần cứng kết giao tiếp với asterisk
do Digium phacircn phối vagrave một số thư viện cho việc coacute thực hiện giao tiếp với phầcứng hay khocircng
Để Asterisk coacute thể chạy cugraveng với khởi động của maacutey tiacutenh chuacuteng ta cần thựchiện lệnh
make config
Lệnh nagravey sẽ tạo ra script chegraven module zaptel vagraveo kernel vagrave chạy ztconfig vagraveoluacutec khởi động maacutey Trong Redhat script nagravey sẽ được cheacutep vagraveo etcinitd chạy ở mức 3
3 Cagravei đặt goacutei libpri
Kế đến chuacuteng ta biecircn dịch goacutei libpri tại thư mục usrsrclibpri bằng lệnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3972
Taacutec Giả Lecirc Quốc Toagraven
39
make config
3 Cagravei đặt TrixBox
1 Giới thiệu
TRIXBOX được phaacutet triển từ nhacircn của ứng dụng Asterisk được tổng hợp từmột số thagravenh phần chiacutenh được phaacutet triển bởi cộng đồng phaacutet triển nguồn mAsterisk dưới bản quyền GPL Trixbox bao gồm những thagravenh phần chiacutenh cho việcấu higravenh ứng dụng thống kecirc tigravenh trạng hoạt động hệ thống lưu trữ dự phograveng v
nhacircn lagrave hệ điều hagravenh CentOS một phiecircn bản khaacutec của Redhat tất cả kết hợp vớnhau tạo thagravenh một goacutei hoagraven chỉnh Khi cagravei goacutei nagravey vagraveo maacutey tiacutenh thigrave coacute thể sử dụngnhư một tổng đagravei PBX
Caacutec thagravenh phần chiacutenh trong goacutei TRIXBOX lagrave
Asterisk PBX Thagravenh phần chiacutenh của hệ thống Trixbox
CentOS Một phiecircn bản Linux khaacutec của Redhat hoagraven toagraven miển phiacute sửdụng Lagrave nhacircn chiacutenh cho Trixbox
SugarCRM Hệ thống quan hệ khaacutech hagraveng CRM
A2Billing ndash Lagrave thagravenh phần dagravenh cho việc xacircy dựng hệ thống điện thoạitrả trước hay cograven gọi lagrave điện thọai thẻ (Calling Card)
Flash Operator Panel Bảng điều khiển giaacutem saacutet tigravenh trạng hoạt độngcủa caacutec maacutey điện thoại trong hệ thống
Web MeetMe Control Quản lyacute triển khai hệ thống điện thoại hội nghị
FreePBX Đacircy lagrave cocircng cụ với giao diện web dagravenh cho việc cấu higravenh hệthống Asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4072
Taacutec Giả Lecirc Quốc Toagraven
40
Hệ thống Lưu trữ dự phograveng vagrave thống kecirc Lagrave thagravenh phần của TRIXBOXcung cấp caacutec cocircng cụ cần thiết cho việc bảo trigrave bảo dưỡng hệ thống
Hệ thống Apache-Php-Mysql dagravenh cho giải phaacutep Webserver của hệthống
2 DOWNLOAD VAgrave LẮP ĐẶT TRIXBOX
Địa chỉ downloadhttpsourceforgenetprojectsasteriskathome
Khi download xong file Trixboxiso Hatildey dugraveng file nagravey Burn vagraveo CD ( xinlưu yacute lagrave dugraveng Nero hoặc chương trigravenh cheacutep đĩa ưa thiacutech rồi burn vagraveo cd_romchứ khocircng phải cheacutep file đoacute vagraveo cd_rom)
Sau khi coacute CD Hatildey boot từ CD nagravey để cagravei đặt trixbox
Chuacute yacute dữ liệu trecircn đĩa cứng sẽ bị xoacutea sạch để cagravei đặt trixbox Nếu trongđĩa cứng cograven dữ liệu hatildey backup tất cả trước khi tiến hagravenh lắp đặt trixbox
Tới đacircy lần lượt caacutec magraven higravenh chỉ dẫn sẽ hiện ra vagrave cứ theo hướng dẫn magrave cagraveđặt Sau khi cagravei đặt xong chuacuteng ta dugraveng Username root vagrave password password đểđăng nhập hệ thống
3 Cấu higravenh địa chỉ IP cho card mạng
Thiết lập địa chỉ IP bằng caacutech gotilde lệnh
netconfig
Chọn OK để thiếp lập
Nếu trong mạng coacute hỗ trợ DHCP thigrave hatildey chọn mục nagravey cograven nếu khocircng hatildeynhập địa chỉ IP tĩnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4172
Taacutec Giả Lecirc Quốc Toagraven
41
IP 19216801
Netmask 2552552550
Gateway 19216893254 ngotilde ra becircn ngoagravei
Primary nameserver 19216893200 thiết lập nếu coacute
Chọn OK để chấp nhận caacutec thiết lập trecircn
Sau khi hoagraven tất hatildey lagravem cho thiết lập coacute hiệu lực bằng caacutech reset lại
maacutey tiacutenh hoặc dugraveng lệnh sau
Service network stop
Service network start
Đến đacircy xem như cagravei đặt hoagraven tất bacircy giờ để cấu higravenh được Asterisk chuacutengta vagraveo một magravey khaacutec vagrave mở Internet Explorer hoặc một trigravenh duyệt web bất kỳ
nhập vagraveohttp19216801đatilde cấu higravenh ở trecircn vagrave tiến hagravenh cấu higravenh hệ thốngvới tagravei khoảng username maint vagrave password password
4 Tổ Chức Thư Mục của Asterisk
Asterisk sử dụng nhiều thư mục trecircn hệ thống linux để quản lyacute caacutec khiacutea cạnkhaacutec nhau của hệ thống như nghi nhận bản tin thoại caacutec bản tin nhắc thoại hoặcaacutec tập tin cấu higravenh Phần nagravey sẽ trigravenh bagravey caacutec thư mục chiacutenh yếu được tạo ra tronquaacute trigravenh lắp đặt vagrave được cấu higravenh trong tập tin Asteriskconf
1 etcasterisk
Thư mục etcasterisk chứa tất cả caacutec tập tin cấu higravenh của hệ thốngAsterisk ngoại trừ tập tin Zaptelconf được đặt tại thư mục etc Phần cứnZaptel đầu tiecircn được phaacutet triển bởi Jim Dixon thuộc nhoacutem Zapata Telephony
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4272
Taacutec Giả Lecirc Quốc Toagraven
42
Group để giao tiếp giữa maacutey tiacutenh với mạng điện thoại magrave Asterisk lại sửdụng phần cứng nagravey với lyacute do đoacute magrave file cấu higravenh zaptelconf khocircng nằmtrong thư mục etcasterisk
2 usrlibasteriskmodules
Thư mục usrlibasteriskmodules chứa tất cả caacutec module cần thiết đểasterisk hoạt động Becircn trong thư mục lagrave caacutec ứng dụng khaacutec nhau caacutec codeccaacutec định dạng acircm thanh(format) vagrave caacutec kecircnh thocircng tin(channel) Theo mặc địnhAsterisk sẽ nạp tất cả caacutec module vagraveo luacutec khởi động Chuacuteng ta coacute thể khocircng cho
nạp một module bất kỳ bằng caacutech khocircng khai baacuteo sử dụng trong tập tinmodulesconf Lưu yacute khi khocircng cho nạp module thigrave phải biết chắc module đoacutekhocircng lagravem ảnh hưởng hoạt động của asterisk nếu khocircng lỗi sẽ xuất hiện
3 varlibasterisk
Thư mục varlibasterisk chứa tập tin astdb vagrave một số thư mục con Tập tinastdb định vị thocircng tin cơ sở dữ liệu của Asterisk giống như Microsoft WindowsRegistry
Caacutec thư mục con của thư mục varlibasterisk bao gồm
agi-bin
Thư mục agi-bin chứa caacutec script của người dugraveng magrave Asterisk coacute thểđịnh vị sử dụng qua caacutec ứng dụng AGI
AGI lagrave phần giao tiếp với ngocircn ngữ lập trigravenh script để thực hiện mộtsố cocircng việc của Asterisk từ becircn ngoagravei
firmware
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4372
Taacutec Giả Lecirc Quốc Toagraven
43
Thư mục firmware chứa một số phần dẻo(firmware) cho caacutec thiết bịkhaacutec nhau tương thiacutech với Asterisk Hiện tại chỉ coacute thư mục con iax chứa
firmware cho thiếy bị IAXy của Digium IAXy lagrave thiết bị ATA sử dụng giaothức IAX
images
Caacutec ứng dụng thocircng tin với caacutec kecircnh hỗ trợ ảnh images thigrave sử dụng thư mụcnagravey Nhưng hiện tại caacutec kecircnh thocircng tin hầu như khocircng hỗ trợ truyền ảnh images necircthư mục nagravey cũng hiếm khi được sử dụng Tuy nhiecircn nếu caacutec thiết bị coacute hỗ trợ ththư mục nagravey trở necircn hiệu dụng
keys
Asterisk coacute thể sử dụng hệ thống khoaacute publicprivate để xaacutec minh caacutec kết nốgiữa caacutec server Asterisk thocircng qua chữ kyacute điện tử RSA Nếu đặt một khoaacute publicvagraveo thư mục keys thigrave kết nối của server đầu becircn kia coacute thể được xaacutec minh bằn
kecircnh thocircng tin coacute hỗ trợ đối với Asterisk thigrave kecircnh giao thức IAX hỗ trợ loại xaacutecminh nagravey Một khoaacute private khocircng bao giờ cocircng bố chuacuteng ta chỉ cocircng bố khoaacute public đến với server cần nối đến sau đoacute sẽ được xaacutec minh với khoaacute private nagravey Chai khoaacute public vagrave private được lưu với đuocirci pub vagrave key đặt tại thư mục keys
mohmp3
Khi cấu higravenh Asterisk sử dụng tiacutenh năng Music on Hold tiacutenh năng hoạt độngsẽ thực hiện lấy caacutec tập tin mp3 tại thư mục mohmp3 Tập tin định dạng theo chucủa Asterisk necircn khi sử dụng caacutec file Mp3 thocircng thường cần coacute sự chuyển đổi thiacutechợp trước khi cheacutep vagraveo thư mục trecircn để sử dụng
sounds
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4472
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4572
Taacutec Giả Lecirc Quốc Toagraven
45
Thư mục tmp sử dụng để lưu trữ những thocircng tin tạm để luocircn bảo đảm khocircnxảy ra tigravenh trạng đọc vagrave viết tập tin cugraveng một luacutec Khi yecircu cầu xử lyacute tập tin chuacuteng thao taacutec trecircn thư mục tmp trước khi lưu vagraveo tập tin điacutech
Tất cả caacutec lời nhắc thoại từ phiacutea người sử dụng vagrave caacutec lời nhắc thoại sử dụ
cho thao taacutec hộp voicemail đều được chứa trong thư mục voicemail Một hộp thưthoại được tạo ra ứng với một maacutey nội bộ trong tập tin voicemailconf sẽ được tra một thư mục con tương ứng cho maacutey nội bộ đoacute tại thư mục voicemail
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4672
Taacutec Giả Lecirc Quốc Toagraven
46
5 varrun
Thư mục varrun chứa thocircng tin process ID(pid) cho tất cả caacutec tiến trigravenh đang
hoạt động trong hệ thống bao gồm cả Asterisk Lưu yacute lagrave ứng với mỗi hệ điều hagravethư mục varrun coacute thể khaacutec
6 varlogasterisk
Thư mục varlogasterisk lagrave nơi Asterisk chứa tất cả caacutec tập tin nhật kyacute haycograven gọi lagrave tập tin log Chuacuteng ta coacute thể tuỳ biến caacutec loại thocircng tin được lưu trong caacutec
tập tin log khaacutec nhau qua tập tin cấu higravenh loggerconf đặt tại thư mục etcasterisk7 varlogasteriskcdr-csv
Thư mục varlogasteriskcdr-csv được sử dụng để lưu chi tiết cuộc gọi CDRThocircng tin mặc định về chi tiết thocircng tin cuộc gọi lưu trữ trong tập tin MasterCVSnhưng thường thigrave ứng với mỗi matilde accountcode sẽ tạo một thư mục riecircng để lưu ctiết cuộc gọi cho maacutey đoacute
5 Một số lệnh thao taacutec trecircn hệ thống asterisk
Asterisk coacute hai thagravenh phần được xacircy dụng tiacutech hợp với nhau vagrave chạy songsong nhau
Asterisk Server bigravenh thường chạy ở chế độ nền(background) giống caacutec sevicestrong window
Asterisk Client ở chế độ dograveng lệnh CLI giao tiếp với Asterisk Server thực thicaacutec lệnh để kiểm tra hay xem caacutec thocircng tin của server
Để Chạy vagrave dừng Asterisk ở chế độ nền chuacuteng ta thực hiện lệnh sau
etcinitdasterisk (start|stop)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4772
Taacutec Giả Lecirc Quốc Toagraven
47
Một khi Asterisk đatilde chạy chuacuteng ta coacute thể chuyển qua chế độ CLI từ dấu nhắlệnh của linux như sau
asterisk ndashr
Khi vagraveo chế độ lệnh nếu muốn thoaacutet về lại dấu nhắc linux chuacuteng ta dugraveng lệnh
CLIgtexit
Caacutec lệnh cơ bản thực hiện tại CLIgt
Bất cứ khi nagraveo chỉnh sửa caacutec tập tin cấu higravenh chuacuteng ta đều cần phải nạp lại đcaacutec thay đổi coacute hiệu lực điều đoacute thực hiện bằng lệnh
CLIgtreload
Bậc chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 debug
CLIgt SIP debug
Tắt chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 no debug
CLIgt SIP no debug
Hiển thị caacutec trạng thaacutei thocircng tin của users peers vagravechannels của SIP hoặc IAX2
CLIgt sip show users
CLIgt sip show peers
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4872
Taacutec Giả Lecirc Quốc Toagraven
48
CLIgt sip show channels
CLIgt iax2 show peers
CLIgt iax2 show users
CLIgt iax2 show channels
Đến thời điểm nagravey coacute thể noacutei chuacuteng ta đatilde hoagraven thagravenh cagravei đặt hệ thốngAsterisk cagravei đặt xong mới lagrave bước mở đầu để cho hệ thống Asterisk hoạt động vtừng ứng dụng cụ thể chuacuteng sẽ tiếp tục thực hiện caacutec giai đoạn được xem lagrave qutrọng nhất trong việc triển khai hệ thống Asterisk đoacute lagrave giai đoạn cấu higravenh hệ thốnlecircn kế hoạch Diaplan chương cograven lại đều nhắm đến mục tiecircu nagravey
4 CẤU HIgraveNH HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Sau khi hoagraven tất phần cagravei đặt hệ thống asterisk một bước quan trọng tiếp thelagrave cấu higravenh hệ thống coacute thể noacutei đacircy lagrave bước quan trọng nhất của việc khiển khai thống đến với từng ứng dụng cụ thể Trong chương nagravey xin giới thiệu caacutei nhigraven đầtiecircn về việc cấu higravenh trước khi đi sacircu hơn ở những chương sau những gigrave giới thiệ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4972
Taacutec Giả Lecirc Quốc Toagraven
49
trong chương nagravey lagrave nền moacuteng cơ bản nhưng đủ để hiểu lagravem thế nagraveo hệ thống coacute thoạt động được nội dung chiacutenh bao gồm
+ Thao taacutec cấu higravenh trecircn hệ thống tập tin của asterisk
+ Caacutech cagravei đặt phần mềm softphone trecircn cocircng nghệ sip
+ Cấu higravenh cho hai maacutey softphone liecircn lạc với nhau
+ Cấu higravenh phaacutet thocircng điệp
+ Quay số qua Sip vagrave mạng PSTN
2 Tập Tin cấu higravenh
Tất cả caacutec file cấu higravenh cho hệ thống asterisk đều nằm tại thư mục etcasterisngoại trừ file zaptelconf cấu higravenh cho phần cứng TDM nằm tại thư mục etc caacutecthức cấu higravenh giống như tập tin ini của window vậy Caacutec nội dung sau dấu chấm phảy lagrave nội dung chuacute thiacutech trong file cấu higravenh giống như chuacute thiacutech trong ngocircn ngữ
lập trigravenh C lagrave dấu Tất cả caacutec khoảng trắng trong tập tin đều được bỏ qua khocircng yacute nghĩa trong file cấu higravenh
Trong file cấu higravenh cograven coacute hai pheacutep gaacuten rất thường xuyecircn được sử dụng pheacutep gaacuten ldquo=rdquo lagrave dugraveng cho việc gaacuten caacutec biến cograven pheacutep gaacuten ldquo=gtrdquo dugraveng cho việc gaacutencaacutec đối tượng sau đacircy lagrave một viacute dụ cho file cấu higravenh
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5072
Taacutec Giả Lecirc Quốc Toagraven
50
Đacircy lagrave caacutec dograveng chuacute thiacutech
[section]
Key=value gaacuten giaacute trị cho biến
[section2]
Key=gtobject Gaacuten giaacute trị cho đối tượng
Cuacute phaacutep thực hiện giống nhau cho tất cả caacutec file cấu higravenh nhưng coacute vagravei kiểukhaacutec nhau cho mỗi file cầu higravenh dựa vagraveo thức caacutech hoạt động của chuacuteng
3 Caacutec kiểu ảnh hưởng trong tập cấu higravenh
Coacute ba kiểu caacutech thức hoạt động của tập tin cấu higravenh như sau
Kiểu Caacutech hoạt động File cầu higravenh Viacute dụ
S i m p l eGroup
Coacute hiệu lực trecircntừng dograveng trongfile
Extensionconf
Exten=gt4001dial(sip400)
O p t i o ninheritance
Dograveng khai baacuteosau thừa kếnhững thocircng sốkhai baacuteo trước
Zapataconf [channels]
Context=From_PSTN
Signalling=fxs_ks
Group=1Channel=gt1
C o m p l e xEntity
Mỗi entity nhậnmột ngữ cảnh
sipconf
iaxconf
[cisco]
Type=friend
Secret=12345
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5172
Taacutec Giả Lecirc Quốc Toagraven
51
Host=192168165
Context=NoiBo
[xten]
Type=friend
Secret=6789
Host=dynamic
Context=NoiBo
1 Simple Group
Đacircy lagrave kiểu cấu higravenh đơn giản nhất thường sử dụng trong caacutec fileextentionconf meetmeconf voicemailconf tương ứng với mỗi dograveng khai baacuteo lagravemột đối tượng coacute yacute nghĩa trecircn dograveng đoacute
Viacute dụ
Extentionconf [section]
object1=gt op1op2op3
object2=gt op1bop2bop3b
Trong viacute dụ trecircn mỗi dograveng tương ứng với caacutec toaacuten tử khaacutec nhau object1 coacute caacutectoaacuten từ op1 op2 op3 trong khi đoacute object2 lại coacute caacutec toaacuten từ op1b op2b op3b
2 Option inheritance
Đacircy lagrave cấu higravenh kiểu thừa kế thường được cấu higravenh trong caacutec file zapataconfagentconf với kiểu cấu higravenh nagravey thigrave caacutec dograveng phiacutea dưới coacute thể thừa kế caacutec thocircng sdograveng phiacutea trecircn tương ứng với mỗi section caacutec dograveng phiacutea dưới coacute thể thay đổi caacutecthocircng số cho tươngứng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5272
Taacutec Giả Lecirc Quốc Toagraven
52
Viacute dụ
Extentionconf
[section]
Op1=bas
Op2=adv
Object1=gt1
Op1=int
Object1=gt2
Với cấu higravenh trecircn coacute thể giải thiacutech như sau object1=gt1 thừa hưởng hai thocircngsố ở phiacutea trecircn đoacute lagrave op1=bas vagrave op2=adv trong khi đoacute đối với object1=gt2 với thocircngsố op1=int được khai baacuteo lại necircn object1=gt2 được thừa kế từ hai thocircng số op1=invagrave op2=adv
3 Complex Entity
Với cấu kiểu nagravey được tổ chức thagravenh nhiều entity ứng với mỗi entity coacute nhiềthocircng số được khai baacuteo mỗi entity ở đacircy chiacutenh lagrave caacutec section để khai baacuteo caacutec kecircnhthocircng tin Cấu higravenh thường được sử dụng trong caacutec file iaxconf sipconf
Viacute dụ
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5372
Taacutec Giả Lecirc Quốc Toagraven
53
[entity1]
Op1=value1
Op2=value2
[entity2]
Op1=value3
Op2=value4
Entity1 coacute caacutec giaacute trị value1 vagrave value2 cho thocircng số op1 vagrave op2 trong khi đoacute
cũng lagrave thocircng số op1 vagrave op 2 nhưng coacute caacutec giaacute trị khaacutec lagrave value3 vagrave value4 choentity2
4 Cấu higravenh giao tiếp với mạng PSTN
1 Ngữ cảnh kết nối
Để kết nối với mạng PSTN chuacuteng ta cần phải coacute một card TDM với Cổng
FXO vagrave một đường dacircy điện thoại hoặc coacute thể lagrave một tổng đagravei nội bộ PBX Cnhiều nhagrave sản xuất phần cứng khaacutec nhau nhưng trong phần cấu higravenh dưới dacircy lagrave cấhigravenh cho card zapata TDM01B của digium (card nagravey hiện nay giaacute baacuten khoảng175$)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3472
Taacutec Giả Lecirc Quốc Toagraven
34
Higravenh Nguyecircn nhacircn xảy ra trượt
Để loại bỏ tiacutenh khocircng đồng nhất của trễ người ta thiết kế caacutec bộ đệm t(Jitter Buffer) tại nơi đến của caacutec goacutei tin caacutec goacutei tin đến với caacutec khoảng caacutech khaacutecnhau về thời gian được lưu tại bộ đệm rồi phaacutet khỏi bộ đệm với khoảng trễ n
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3572
Taacutec Giả Lecirc Quốc Toagraven
35
nhau Khi bộ đếm coacute kiacutech thước cagraveng lớn thigrave khả năng loại bỏ tiacutenh khocircng đồng nhấcagraveng lớn tuy nhiecircn việc sử dụng bộ đệm sẽ gacircy ra hiện tượng trễ trong ứng dụnthoại do đoacute cần coacute bagravei toaacuten cacircn đối giữa độ trễ vagrave độ trượt
Ngoagravei 2 nguyecircn nhacircn trecircn cograven một số nguyecircn nhacircn nữa ảnh hưởng đến chấtlượng thoại như độ mất goacutei giới hạn băng thocircng tiếng vọng
3 CAgraveI ĐẶT ASTERISK
1 Cagravei đặt Asterisk
1 Download vagrave bung neacuten
Để cagravei đặt Asterisk đầu tiecircn chuacuteng ta cần phải cagravei đặt hệ điều hagravenh linux trecircnmaacutey tiacutenh của migravenh Coacute thể cagravei hệ điều hagravenh Linux Fedora CentOS Redhat hoặcDebian Caacutec goacutei phần mềm phụ thuộc phải coacute trong hệ điều hagravenh Linux trước khcagravei Asterisk bao gồm
bison
gcc
kernel-source
libtermcap-devel
ncurses-devel
openssl096b
openssl-devel
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3672
Taacutec Giả Lecirc Quốc Toagraven
36
Sau khi hoagraven tất caacutec bước trecircn chuacuteng ta tiến hagravenh download phần mềmasterisk với phiecircn bản mới nhất
cd usrsrc
wgetftpftpdigiumcompubasteriskasterisk-140targz
wgetftpftpdigiumcompubasteriskasterisk-addons-140targz
wgetftpftpdigiumcompubasteriskasterisk-sounds-140targz
wgethttpftpdigiumcompubzaptelzaptel-140targz
wgethttpftpdigiumcompublibprilibpri-140targz
Việc download coacute thể nhanh hay chậm tugravey vagraveo tốc độ trecircn đường internet saukhi download hoagraven thagravenh chuacuteng ta tiến hagravenh bung neacuten caacutec goacutei ra thư mục chỉ định
tar ndashxzvf asterisk-140targz
tar ndashxzvf asterisk-addons-140targz
tar ndashxzvf asterisk-sounds-140targz
tar ndashxzvf zaptel-140targz
tar ndashxzvf libpri-140targz
Giải neacuten xong chuacuteng ta nhớ thực hiện lệnh
ln ndashs usrsrcasterisk-140 usrsrcasterisk lệnh nagravey để bảo đảm goacuteildquoaddonsrdquo được biecircn dịch đuacuteng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3772
Taacutec Giả Lecirc Quốc Toagraven
37
Bacircy giờ tới phần chuacuteng ta biecircn dịch caacutec goacutei đatilde giải neacuten ở trecircn trước tiecircn lagrave goacuteizaptel kế đến lagrave libpri sau cugraveng lagrave goacutei Asterisk
2 Cagravei đặt goacutei Zaptel
Goacutei zaptel sẽ chứa tại thư mục usrsrczaptel Đaacutenh lệnh như dưới đacircy để cagraveđặt
cd usrsrczaptel
make clean make install
Lệnh nagravey thực hiện khoảng 2 phuacutet tugravey vagraveo tốc độ maacutey tiacutenh cagravei đặt sau khicagravei đặt xong sẽ trở lại dấu nhắc lệnh vagrave hiển thị một loạt caacutec thocircng baacuteo trong đoacute một số bản tin lỗi magrave chủ yếu lagrave yecircu cầu cagravei đặt caacutec goacutei phụ thuộc đatilde liệt kecirc ở trecircnếu caacutec goacutei trecircn chưa được cagravei đặt
Goacutei zaptel nagravey chứa caacutec driver cho caacutec phần cứng kết giao tiếp với asterisk
do Digium phacircn phối vagrave một số thư viện cho việc coacute thực hiện giao tiếp với phầcứng hay khocircng
Để Asterisk coacute thể chạy cugraveng với khởi động của maacutey tiacutenh chuacuteng ta cần thựchiện lệnh
make config
Lệnh nagravey sẽ tạo ra script chegraven module zaptel vagraveo kernel vagrave chạy ztconfig vagraveoluacutec khởi động maacutey Trong Redhat script nagravey sẽ được cheacutep vagraveo etcinitd chạy ở mức 3
3 Cagravei đặt goacutei libpri
Kế đến chuacuteng ta biecircn dịch goacutei libpri tại thư mục usrsrclibpri bằng lệnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3972
Taacutec Giả Lecirc Quốc Toagraven
39
make config
3 Cagravei đặt TrixBox
1 Giới thiệu
TRIXBOX được phaacutet triển từ nhacircn của ứng dụng Asterisk được tổng hợp từmột số thagravenh phần chiacutenh được phaacutet triển bởi cộng đồng phaacutet triển nguồn mAsterisk dưới bản quyền GPL Trixbox bao gồm những thagravenh phần chiacutenh cho việcấu higravenh ứng dụng thống kecirc tigravenh trạng hoạt động hệ thống lưu trữ dự phograveng v
nhacircn lagrave hệ điều hagravenh CentOS một phiecircn bản khaacutec của Redhat tất cả kết hợp vớnhau tạo thagravenh một goacutei hoagraven chỉnh Khi cagravei goacutei nagravey vagraveo maacutey tiacutenh thigrave coacute thể sử dụngnhư một tổng đagravei PBX
Caacutec thagravenh phần chiacutenh trong goacutei TRIXBOX lagrave
Asterisk PBX Thagravenh phần chiacutenh của hệ thống Trixbox
CentOS Một phiecircn bản Linux khaacutec của Redhat hoagraven toagraven miển phiacute sửdụng Lagrave nhacircn chiacutenh cho Trixbox
SugarCRM Hệ thống quan hệ khaacutech hagraveng CRM
A2Billing ndash Lagrave thagravenh phần dagravenh cho việc xacircy dựng hệ thống điện thoạitrả trước hay cograven gọi lagrave điện thọai thẻ (Calling Card)
Flash Operator Panel Bảng điều khiển giaacutem saacutet tigravenh trạng hoạt độngcủa caacutec maacutey điện thoại trong hệ thống
Web MeetMe Control Quản lyacute triển khai hệ thống điện thoại hội nghị
FreePBX Đacircy lagrave cocircng cụ với giao diện web dagravenh cho việc cấu higravenh hệthống Asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4072
Taacutec Giả Lecirc Quốc Toagraven
40
Hệ thống Lưu trữ dự phograveng vagrave thống kecirc Lagrave thagravenh phần của TRIXBOXcung cấp caacutec cocircng cụ cần thiết cho việc bảo trigrave bảo dưỡng hệ thống
Hệ thống Apache-Php-Mysql dagravenh cho giải phaacutep Webserver của hệthống
2 DOWNLOAD VAgrave LẮP ĐẶT TRIXBOX
Địa chỉ downloadhttpsourceforgenetprojectsasteriskathome
Khi download xong file Trixboxiso Hatildey dugraveng file nagravey Burn vagraveo CD ( xinlưu yacute lagrave dugraveng Nero hoặc chương trigravenh cheacutep đĩa ưa thiacutech rồi burn vagraveo cd_romchứ khocircng phải cheacutep file đoacute vagraveo cd_rom)
Sau khi coacute CD Hatildey boot từ CD nagravey để cagravei đặt trixbox
Chuacute yacute dữ liệu trecircn đĩa cứng sẽ bị xoacutea sạch để cagravei đặt trixbox Nếu trongđĩa cứng cograven dữ liệu hatildey backup tất cả trước khi tiến hagravenh lắp đặt trixbox
Tới đacircy lần lượt caacutec magraven higravenh chỉ dẫn sẽ hiện ra vagrave cứ theo hướng dẫn magrave cagraveđặt Sau khi cagravei đặt xong chuacuteng ta dugraveng Username root vagrave password password đểđăng nhập hệ thống
3 Cấu higravenh địa chỉ IP cho card mạng
Thiết lập địa chỉ IP bằng caacutech gotilde lệnh
netconfig
Chọn OK để thiếp lập
Nếu trong mạng coacute hỗ trợ DHCP thigrave hatildey chọn mục nagravey cograven nếu khocircng hatildeynhập địa chỉ IP tĩnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4172
Taacutec Giả Lecirc Quốc Toagraven
41
IP 19216801
Netmask 2552552550
Gateway 19216893254 ngotilde ra becircn ngoagravei
Primary nameserver 19216893200 thiết lập nếu coacute
Chọn OK để chấp nhận caacutec thiết lập trecircn
Sau khi hoagraven tất hatildey lagravem cho thiết lập coacute hiệu lực bằng caacutech reset lại
maacutey tiacutenh hoặc dugraveng lệnh sau
Service network stop
Service network start
Đến đacircy xem như cagravei đặt hoagraven tất bacircy giờ để cấu higravenh được Asterisk chuacutengta vagraveo một magravey khaacutec vagrave mở Internet Explorer hoặc một trigravenh duyệt web bất kỳ
nhập vagraveohttp19216801đatilde cấu higravenh ở trecircn vagrave tiến hagravenh cấu higravenh hệ thốngvới tagravei khoảng username maint vagrave password password
4 Tổ Chức Thư Mục của Asterisk
Asterisk sử dụng nhiều thư mục trecircn hệ thống linux để quản lyacute caacutec khiacutea cạnkhaacutec nhau của hệ thống như nghi nhận bản tin thoại caacutec bản tin nhắc thoại hoặcaacutec tập tin cấu higravenh Phần nagravey sẽ trigravenh bagravey caacutec thư mục chiacutenh yếu được tạo ra tronquaacute trigravenh lắp đặt vagrave được cấu higravenh trong tập tin Asteriskconf
1 etcasterisk
Thư mục etcasterisk chứa tất cả caacutec tập tin cấu higravenh của hệ thốngAsterisk ngoại trừ tập tin Zaptelconf được đặt tại thư mục etc Phần cứnZaptel đầu tiecircn được phaacutet triển bởi Jim Dixon thuộc nhoacutem Zapata Telephony
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4272
Taacutec Giả Lecirc Quốc Toagraven
42
Group để giao tiếp giữa maacutey tiacutenh với mạng điện thoại magrave Asterisk lại sửdụng phần cứng nagravey với lyacute do đoacute magrave file cấu higravenh zaptelconf khocircng nằmtrong thư mục etcasterisk
2 usrlibasteriskmodules
Thư mục usrlibasteriskmodules chứa tất cả caacutec module cần thiết đểasterisk hoạt động Becircn trong thư mục lagrave caacutec ứng dụng khaacutec nhau caacutec codeccaacutec định dạng acircm thanh(format) vagrave caacutec kecircnh thocircng tin(channel) Theo mặc địnhAsterisk sẽ nạp tất cả caacutec module vagraveo luacutec khởi động Chuacuteng ta coacute thể khocircng cho
nạp một module bất kỳ bằng caacutech khocircng khai baacuteo sử dụng trong tập tinmodulesconf Lưu yacute khi khocircng cho nạp module thigrave phải biết chắc module đoacutekhocircng lagravem ảnh hưởng hoạt động của asterisk nếu khocircng lỗi sẽ xuất hiện
3 varlibasterisk
Thư mục varlibasterisk chứa tập tin astdb vagrave một số thư mục con Tập tinastdb định vị thocircng tin cơ sở dữ liệu của Asterisk giống như Microsoft WindowsRegistry
Caacutec thư mục con của thư mục varlibasterisk bao gồm
agi-bin
Thư mục agi-bin chứa caacutec script của người dugraveng magrave Asterisk coacute thểđịnh vị sử dụng qua caacutec ứng dụng AGI
AGI lagrave phần giao tiếp với ngocircn ngữ lập trigravenh script để thực hiện mộtsố cocircng việc của Asterisk từ becircn ngoagravei
firmware
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4372
Taacutec Giả Lecirc Quốc Toagraven
43
Thư mục firmware chứa một số phần dẻo(firmware) cho caacutec thiết bịkhaacutec nhau tương thiacutech với Asterisk Hiện tại chỉ coacute thư mục con iax chứa
firmware cho thiếy bị IAXy của Digium IAXy lagrave thiết bị ATA sử dụng giaothức IAX
images
Caacutec ứng dụng thocircng tin với caacutec kecircnh hỗ trợ ảnh images thigrave sử dụng thư mụcnagravey Nhưng hiện tại caacutec kecircnh thocircng tin hầu như khocircng hỗ trợ truyền ảnh images necircthư mục nagravey cũng hiếm khi được sử dụng Tuy nhiecircn nếu caacutec thiết bị coacute hỗ trợ ththư mục nagravey trở necircn hiệu dụng
keys
Asterisk coacute thể sử dụng hệ thống khoaacute publicprivate để xaacutec minh caacutec kết nốgiữa caacutec server Asterisk thocircng qua chữ kyacute điện tử RSA Nếu đặt một khoaacute publicvagraveo thư mục keys thigrave kết nối của server đầu becircn kia coacute thể được xaacutec minh bằn
kecircnh thocircng tin coacute hỗ trợ đối với Asterisk thigrave kecircnh giao thức IAX hỗ trợ loại xaacutecminh nagravey Một khoaacute private khocircng bao giờ cocircng bố chuacuteng ta chỉ cocircng bố khoaacute public đến với server cần nối đến sau đoacute sẽ được xaacutec minh với khoaacute private nagravey Chai khoaacute public vagrave private được lưu với đuocirci pub vagrave key đặt tại thư mục keys
mohmp3
Khi cấu higravenh Asterisk sử dụng tiacutenh năng Music on Hold tiacutenh năng hoạt độngsẽ thực hiện lấy caacutec tập tin mp3 tại thư mục mohmp3 Tập tin định dạng theo chucủa Asterisk necircn khi sử dụng caacutec file Mp3 thocircng thường cần coacute sự chuyển đổi thiacutechợp trước khi cheacutep vagraveo thư mục trecircn để sử dụng
sounds
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4472
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4572
Taacutec Giả Lecirc Quốc Toagraven
45
Thư mục tmp sử dụng để lưu trữ những thocircng tin tạm để luocircn bảo đảm khocircnxảy ra tigravenh trạng đọc vagrave viết tập tin cugraveng một luacutec Khi yecircu cầu xử lyacute tập tin chuacuteng thao taacutec trecircn thư mục tmp trước khi lưu vagraveo tập tin điacutech
Tất cả caacutec lời nhắc thoại từ phiacutea người sử dụng vagrave caacutec lời nhắc thoại sử dụ
cho thao taacutec hộp voicemail đều được chứa trong thư mục voicemail Một hộp thưthoại được tạo ra ứng với một maacutey nội bộ trong tập tin voicemailconf sẽ được tra một thư mục con tương ứng cho maacutey nội bộ đoacute tại thư mục voicemail
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4672
Taacutec Giả Lecirc Quốc Toagraven
46
5 varrun
Thư mục varrun chứa thocircng tin process ID(pid) cho tất cả caacutec tiến trigravenh đang
hoạt động trong hệ thống bao gồm cả Asterisk Lưu yacute lagrave ứng với mỗi hệ điều hagravethư mục varrun coacute thể khaacutec
6 varlogasterisk
Thư mục varlogasterisk lagrave nơi Asterisk chứa tất cả caacutec tập tin nhật kyacute haycograven gọi lagrave tập tin log Chuacuteng ta coacute thể tuỳ biến caacutec loại thocircng tin được lưu trong caacutec
tập tin log khaacutec nhau qua tập tin cấu higravenh loggerconf đặt tại thư mục etcasterisk7 varlogasteriskcdr-csv
Thư mục varlogasteriskcdr-csv được sử dụng để lưu chi tiết cuộc gọi CDRThocircng tin mặc định về chi tiết thocircng tin cuộc gọi lưu trữ trong tập tin MasterCVSnhưng thường thigrave ứng với mỗi matilde accountcode sẽ tạo một thư mục riecircng để lưu ctiết cuộc gọi cho maacutey đoacute
5 Một số lệnh thao taacutec trecircn hệ thống asterisk
Asterisk coacute hai thagravenh phần được xacircy dụng tiacutech hợp với nhau vagrave chạy songsong nhau
Asterisk Server bigravenh thường chạy ở chế độ nền(background) giống caacutec sevicestrong window
Asterisk Client ở chế độ dograveng lệnh CLI giao tiếp với Asterisk Server thực thicaacutec lệnh để kiểm tra hay xem caacutec thocircng tin của server
Để Chạy vagrave dừng Asterisk ở chế độ nền chuacuteng ta thực hiện lệnh sau
etcinitdasterisk (start|stop)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4772
Taacutec Giả Lecirc Quốc Toagraven
47
Một khi Asterisk đatilde chạy chuacuteng ta coacute thể chuyển qua chế độ CLI từ dấu nhắlệnh của linux như sau
asterisk ndashr
Khi vagraveo chế độ lệnh nếu muốn thoaacutet về lại dấu nhắc linux chuacuteng ta dugraveng lệnh
CLIgtexit
Caacutec lệnh cơ bản thực hiện tại CLIgt
Bất cứ khi nagraveo chỉnh sửa caacutec tập tin cấu higravenh chuacuteng ta đều cần phải nạp lại đcaacutec thay đổi coacute hiệu lực điều đoacute thực hiện bằng lệnh
CLIgtreload
Bậc chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 debug
CLIgt SIP debug
Tắt chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 no debug
CLIgt SIP no debug
Hiển thị caacutec trạng thaacutei thocircng tin của users peers vagravechannels của SIP hoặc IAX2
CLIgt sip show users
CLIgt sip show peers
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4872
Taacutec Giả Lecirc Quốc Toagraven
48
CLIgt sip show channels
CLIgt iax2 show peers
CLIgt iax2 show users
CLIgt iax2 show channels
Đến thời điểm nagravey coacute thể noacutei chuacuteng ta đatilde hoagraven thagravenh cagravei đặt hệ thốngAsterisk cagravei đặt xong mới lagrave bước mở đầu để cho hệ thống Asterisk hoạt động vtừng ứng dụng cụ thể chuacuteng sẽ tiếp tục thực hiện caacutec giai đoạn được xem lagrave qutrọng nhất trong việc triển khai hệ thống Asterisk đoacute lagrave giai đoạn cấu higravenh hệ thốnlecircn kế hoạch Diaplan chương cograven lại đều nhắm đến mục tiecircu nagravey
4 CẤU HIgraveNH HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Sau khi hoagraven tất phần cagravei đặt hệ thống asterisk một bước quan trọng tiếp thelagrave cấu higravenh hệ thống coacute thể noacutei đacircy lagrave bước quan trọng nhất của việc khiển khai thống đến với từng ứng dụng cụ thể Trong chương nagravey xin giới thiệu caacutei nhigraven đầtiecircn về việc cấu higravenh trước khi đi sacircu hơn ở những chương sau những gigrave giới thiệ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4972
Taacutec Giả Lecirc Quốc Toagraven
49
trong chương nagravey lagrave nền moacuteng cơ bản nhưng đủ để hiểu lagravem thế nagraveo hệ thống coacute thoạt động được nội dung chiacutenh bao gồm
+ Thao taacutec cấu higravenh trecircn hệ thống tập tin của asterisk
+ Caacutech cagravei đặt phần mềm softphone trecircn cocircng nghệ sip
+ Cấu higravenh cho hai maacutey softphone liecircn lạc với nhau
+ Cấu higravenh phaacutet thocircng điệp
+ Quay số qua Sip vagrave mạng PSTN
2 Tập Tin cấu higravenh
Tất cả caacutec file cấu higravenh cho hệ thống asterisk đều nằm tại thư mục etcasterisngoại trừ file zaptelconf cấu higravenh cho phần cứng TDM nằm tại thư mục etc caacutecthức cấu higravenh giống như tập tin ini của window vậy Caacutec nội dung sau dấu chấm phảy lagrave nội dung chuacute thiacutech trong file cấu higravenh giống như chuacute thiacutech trong ngocircn ngữ
lập trigravenh C lagrave dấu Tất cả caacutec khoảng trắng trong tập tin đều được bỏ qua khocircng yacute nghĩa trong file cấu higravenh
Trong file cấu higravenh cograven coacute hai pheacutep gaacuten rất thường xuyecircn được sử dụng pheacutep gaacuten ldquo=rdquo lagrave dugraveng cho việc gaacuten caacutec biến cograven pheacutep gaacuten ldquo=gtrdquo dugraveng cho việc gaacutencaacutec đối tượng sau đacircy lagrave một viacute dụ cho file cấu higravenh
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5072
Taacutec Giả Lecirc Quốc Toagraven
50
Đacircy lagrave caacutec dograveng chuacute thiacutech
[section]
Key=value gaacuten giaacute trị cho biến
[section2]
Key=gtobject Gaacuten giaacute trị cho đối tượng
Cuacute phaacutep thực hiện giống nhau cho tất cả caacutec file cấu higravenh nhưng coacute vagravei kiểukhaacutec nhau cho mỗi file cầu higravenh dựa vagraveo thức caacutech hoạt động của chuacuteng
3 Caacutec kiểu ảnh hưởng trong tập cấu higravenh
Coacute ba kiểu caacutech thức hoạt động của tập tin cấu higravenh như sau
Kiểu Caacutech hoạt động File cầu higravenh Viacute dụ
S i m p l eGroup
Coacute hiệu lực trecircntừng dograveng trongfile
Extensionconf
Exten=gt4001dial(sip400)
O p t i o ninheritance
Dograveng khai baacuteosau thừa kếnhững thocircng sốkhai baacuteo trước
Zapataconf [channels]
Context=From_PSTN
Signalling=fxs_ks
Group=1Channel=gt1
C o m p l e xEntity
Mỗi entity nhậnmột ngữ cảnh
sipconf
iaxconf
[cisco]
Type=friend
Secret=12345
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5172
Taacutec Giả Lecirc Quốc Toagraven
51
Host=192168165
Context=NoiBo
[xten]
Type=friend
Secret=6789
Host=dynamic
Context=NoiBo
1 Simple Group
Đacircy lagrave kiểu cấu higravenh đơn giản nhất thường sử dụng trong caacutec fileextentionconf meetmeconf voicemailconf tương ứng với mỗi dograveng khai baacuteo lagravemột đối tượng coacute yacute nghĩa trecircn dograveng đoacute
Viacute dụ
Extentionconf [section]
object1=gt op1op2op3
object2=gt op1bop2bop3b
Trong viacute dụ trecircn mỗi dograveng tương ứng với caacutec toaacuten tử khaacutec nhau object1 coacute caacutectoaacuten từ op1 op2 op3 trong khi đoacute object2 lại coacute caacutec toaacuten từ op1b op2b op3b
2 Option inheritance
Đacircy lagrave cấu higravenh kiểu thừa kế thường được cấu higravenh trong caacutec file zapataconfagentconf với kiểu cấu higravenh nagravey thigrave caacutec dograveng phiacutea dưới coacute thể thừa kế caacutec thocircng sdograveng phiacutea trecircn tương ứng với mỗi section caacutec dograveng phiacutea dưới coacute thể thay đổi caacutecthocircng số cho tươngứng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5272
Taacutec Giả Lecirc Quốc Toagraven
52
Viacute dụ
Extentionconf
[section]
Op1=bas
Op2=adv
Object1=gt1
Op1=int
Object1=gt2
Với cấu higravenh trecircn coacute thể giải thiacutech như sau object1=gt1 thừa hưởng hai thocircngsố ở phiacutea trecircn đoacute lagrave op1=bas vagrave op2=adv trong khi đoacute đối với object1=gt2 với thocircngsố op1=int được khai baacuteo lại necircn object1=gt2 được thừa kế từ hai thocircng số op1=invagrave op2=adv
3 Complex Entity
Với cấu kiểu nagravey được tổ chức thagravenh nhiều entity ứng với mỗi entity coacute nhiềthocircng số được khai baacuteo mỗi entity ở đacircy chiacutenh lagrave caacutec section để khai baacuteo caacutec kecircnhthocircng tin Cấu higravenh thường được sử dụng trong caacutec file iaxconf sipconf
Viacute dụ
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5372
Taacutec Giả Lecirc Quốc Toagraven
53
[entity1]
Op1=value1
Op2=value2
[entity2]
Op1=value3
Op2=value4
Entity1 coacute caacutec giaacute trị value1 vagrave value2 cho thocircng số op1 vagrave op2 trong khi đoacute
cũng lagrave thocircng số op1 vagrave op 2 nhưng coacute caacutec giaacute trị khaacutec lagrave value3 vagrave value4 choentity2
4 Cấu higravenh giao tiếp với mạng PSTN
1 Ngữ cảnh kết nối
Để kết nối với mạng PSTN chuacuteng ta cần phải coacute một card TDM với Cổng
FXO vagrave một đường dacircy điện thoại hoặc coacute thể lagrave một tổng đagravei nội bộ PBX Cnhiều nhagrave sản xuất phần cứng khaacutec nhau nhưng trong phần cấu higravenh dưới dacircy lagrave cấhigravenh cho card zapata TDM01B của digium (card nagravey hiện nay giaacute baacuten khoảng175$)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3572
Taacutec Giả Lecirc Quốc Toagraven
35
nhau Khi bộ đếm coacute kiacutech thước cagraveng lớn thigrave khả năng loại bỏ tiacutenh khocircng đồng nhấcagraveng lớn tuy nhiecircn việc sử dụng bộ đệm sẽ gacircy ra hiện tượng trễ trong ứng dụnthoại do đoacute cần coacute bagravei toaacuten cacircn đối giữa độ trễ vagrave độ trượt
Ngoagravei 2 nguyecircn nhacircn trecircn cograven một số nguyecircn nhacircn nữa ảnh hưởng đến chấtlượng thoại như độ mất goacutei giới hạn băng thocircng tiếng vọng
3 CAgraveI ĐẶT ASTERISK
1 Cagravei đặt Asterisk
1 Download vagrave bung neacuten
Để cagravei đặt Asterisk đầu tiecircn chuacuteng ta cần phải cagravei đặt hệ điều hagravenh linux trecircnmaacutey tiacutenh của migravenh Coacute thể cagravei hệ điều hagravenh Linux Fedora CentOS Redhat hoặcDebian Caacutec goacutei phần mềm phụ thuộc phải coacute trong hệ điều hagravenh Linux trước khcagravei Asterisk bao gồm
bison
gcc
kernel-source
libtermcap-devel
ncurses-devel
openssl096b
openssl-devel
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3672
Taacutec Giả Lecirc Quốc Toagraven
36
Sau khi hoagraven tất caacutec bước trecircn chuacuteng ta tiến hagravenh download phần mềmasterisk với phiecircn bản mới nhất
cd usrsrc
wgetftpftpdigiumcompubasteriskasterisk-140targz
wgetftpftpdigiumcompubasteriskasterisk-addons-140targz
wgetftpftpdigiumcompubasteriskasterisk-sounds-140targz
wgethttpftpdigiumcompubzaptelzaptel-140targz
wgethttpftpdigiumcompublibprilibpri-140targz
Việc download coacute thể nhanh hay chậm tugravey vagraveo tốc độ trecircn đường internet saukhi download hoagraven thagravenh chuacuteng ta tiến hagravenh bung neacuten caacutec goacutei ra thư mục chỉ định
tar ndashxzvf asterisk-140targz
tar ndashxzvf asterisk-addons-140targz
tar ndashxzvf asterisk-sounds-140targz
tar ndashxzvf zaptel-140targz
tar ndashxzvf libpri-140targz
Giải neacuten xong chuacuteng ta nhớ thực hiện lệnh
ln ndashs usrsrcasterisk-140 usrsrcasterisk lệnh nagravey để bảo đảm goacuteildquoaddonsrdquo được biecircn dịch đuacuteng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3772
Taacutec Giả Lecirc Quốc Toagraven
37
Bacircy giờ tới phần chuacuteng ta biecircn dịch caacutec goacutei đatilde giải neacuten ở trecircn trước tiecircn lagrave goacuteizaptel kế đến lagrave libpri sau cugraveng lagrave goacutei Asterisk
2 Cagravei đặt goacutei Zaptel
Goacutei zaptel sẽ chứa tại thư mục usrsrczaptel Đaacutenh lệnh như dưới đacircy để cagraveđặt
cd usrsrczaptel
make clean make install
Lệnh nagravey thực hiện khoảng 2 phuacutet tugravey vagraveo tốc độ maacutey tiacutenh cagravei đặt sau khicagravei đặt xong sẽ trở lại dấu nhắc lệnh vagrave hiển thị một loạt caacutec thocircng baacuteo trong đoacute một số bản tin lỗi magrave chủ yếu lagrave yecircu cầu cagravei đặt caacutec goacutei phụ thuộc đatilde liệt kecirc ở trecircnếu caacutec goacutei trecircn chưa được cagravei đặt
Goacutei zaptel nagravey chứa caacutec driver cho caacutec phần cứng kết giao tiếp với asterisk
do Digium phacircn phối vagrave một số thư viện cho việc coacute thực hiện giao tiếp với phầcứng hay khocircng
Để Asterisk coacute thể chạy cugraveng với khởi động của maacutey tiacutenh chuacuteng ta cần thựchiện lệnh
make config
Lệnh nagravey sẽ tạo ra script chegraven module zaptel vagraveo kernel vagrave chạy ztconfig vagraveoluacutec khởi động maacutey Trong Redhat script nagravey sẽ được cheacutep vagraveo etcinitd chạy ở mức 3
3 Cagravei đặt goacutei libpri
Kế đến chuacuteng ta biecircn dịch goacutei libpri tại thư mục usrsrclibpri bằng lệnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3972
Taacutec Giả Lecirc Quốc Toagraven
39
make config
3 Cagravei đặt TrixBox
1 Giới thiệu
TRIXBOX được phaacutet triển từ nhacircn của ứng dụng Asterisk được tổng hợp từmột số thagravenh phần chiacutenh được phaacutet triển bởi cộng đồng phaacutet triển nguồn mAsterisk dưới bản quyền GPL Trixbox bao gồm những thagravenh phần chiacutenh cho việcấu higravenh ứng dụng thống kecirc tigravenh trạng hoạt động hệ thống lưu trữ dự phograveng v
nhacircn lagrave hệ điều hagravenh CentOS một phiecircn bản khaacutec của Redhat tất cả kết hợp vớnhau tạo thagravenh một goacutei hoagraven chỉnh Khi cagravei goacutei nagravey vagraveo maacutey tiacutenh thigrave coacute thể sử dụngnhư một tổng đagravei PBX
Caacutec thagravenh phần chiacutenh trong goacutei TRIXBOX lagrave
Asterisk PBX Thagravenh phần chiacutenh của hệ thống Trixbox
CentOS Một phiecircn bản Linux khaacutec của Redhat hoagraven toagraven miển phiacute sửdụng Lagrave nhacircn chiacutenh cho Trixbox
SugarCRM Hệ thống quan hệ khaacutech hagraveng CRM
A2Billing ndash Lagrave thagravenh phần dagravenh cho việc xacircy dựng hệ thống điện thoạitrả trước hay cograven gọi lagrave điện thọai thẻ (Calling Card)
Flash Operator Panel Bảng điều khiển giaacutem saacutet tigravenh trạng hoạt độngcủa caacutec maacutey điện thoại trong hệ thống
Web MeetMe Control Quản lyacute triển khai hệ thống điện thoại hội nghị
FreePBX Đacircy lagrave cocircng cụ với giao diện web dagravenh cho việc cấu higravenh hệthống Asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4072
Taacutec Giả Lecirc Quốc Toagraven
40
Hệ thống Lưu trữ dự phograveng vagrave thống kecirc Lagrave thagravenh phần của TRIXBOXcung cấp caacutec cocircng cụ cần thiết cho việc bảo trigrave bảo dưỡng hệ thống
Hệ thống Apache-Php-Mysql dagravenh cho giải phaacutep Webserver của hệthống
2 DOWNLOAD VAgrave LẮP ĐẶT TRIXBOX
Địa chỉ downloadhttpsourceforgenetprojectsasteriskathome
Khi download xong file Trixboxiso Hatildey dugraveng file nagravey Burn vagraveo CD ( xinlưu yacute lagrave dugraveng Nero hoặc chương trigravenh cheacutep đĩa ưa thiacutech rồi burn vagraveo cd_romchứ khocircng phải cheacutep file đoacute vagraveo cd_rom)
Sau khi coacute CD Hatildey boot từ CD nagravey để cagravei đặt trixbox
Chuacute yacute dữ liệu trecircn đĩa cứng sẽ bị xoacutea sạch để cagravei đặt trixbox Nếu trongđĩa cứng cograven dữ liệu hatildey backup tất cả trước khi tiến hagravenh lắp đặt trixbox
Tới đacircy lần lượt caacutec magraven higravenh chỉ dẫn sẽ hiện ra vagrave cứ theo hướng dẫn magrave cagraveđặt Sau khi cagravei đặt xong chuacuteng ta dugraveng Username root vagrave password password đểđăng nhập hệ thống
3 Cấu higravenh địa chỉ IP cho card mạng
Thiết lập địa chỉ IP bằng caacutech gotilde lệnh
netconfig
Chọn OK để thiếp lập
Nếu trong mạng coacute hỗ trợ DHCP thigrave hatildey chọn mục nagravey cograven nếu khocircng hatildeynhập địa chỉ IP tĩnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4172
Taacutec Giả Lecirc Quốc Toagraven
41
IP 19216801
Netmask 2552552550
Gateway 19216893254 ngotilde ra becircn ngoagravei
Primary nameserver 19216893200 thiết lập nếu coacute
Chọn OK để chấp nhận caacutec thiết lập trecircn
Sau khi hoagraven tất hatildey lagravem cho thiết lập coacute hiệu lực bằng caacutech reset lại
maacutey tiacutenh hoặc dugraveng lệnh sau
Service network stop
Service network start
Đến đacircy xem như cagravei đặt hoagraven tất bacircy giờ để cấu higravenh được Asterisk chuacutengta vagraveo một magravey khaacutec vagrave mở Internet Explorer hoặc một trigravenh duyệt web bất kỳ
nhập vagraveohttp19216801đatilde cấu higravenh ở trecircn vagrave tiến hagravenh cấu higravenh hệ thốngvới tagravei khoảng username maint vagrave password password
4 Tổ Chức Thư Mục của Asterisk
Asterisk sử dụng nhiều thư mục trecircn hệ thống linux để quản lyacute caacutec khiacutea cạnkhaacutec nhau của hệ thống như nghi nhận bản tin thoại caacutec bản tin nhắc thoại hoặcaacutec tập tin cấu higravenh Phần nagravey sẽ trigravenh bagravey caacutec thư mục chiacutenh yếu được tạo ra tronquaacute trigravenh lắp đặt vagrave được cấu higravenh trong tập tin Asteriskconf
1 etcasterisk
Thư mục etcasterisk chứa tất cả caacutec tập tin cấu higravenh của hệ thốngAsterisk ngoại trừ tập tin Zaptelconf được đặt tại thư mục etc Phần cứnZaptel đầu tiecircn được phaacutet triển bởi Jim Dixon thuộc nhoacutem Zapata Telephony
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4272
Taacutec Giả Lecirc Quốc Toagraven
42
Group để giao tiếp giữa maacutey tiacutenh với mạng điện thoại magrave Asterisk lại sửdụng phần cứng nagravey với lyacute do đoacute magrave file cấu higravenh zaptelconf khocircng nằmtrong thư mục etcasterisk
2 usrlibasteriskmodules
Thư mục usrlibasteriskmodules chứa tất cả caacutec module cần thiết đểasterisk hoạt động Becircn trong thư mục lagrave caacutec ứng dụng khaacutec nhau caacutec codeccaacutec định dạng acircm thanh(format) vagrave caacutec kecircnh thocircng tin(channel) Theo mặc địnhAsterisk sẽ nạp tất cả caacutec module vagraveo luacutec khởi động Chuacuteng ta coacute thể khocircng cho
nạp một module bất kỳ bằng caacutech khocircng khai baacuteo sử dụng trong tập tinmodulesconf Lưu yacute khi khocircng cho nạp module thigrave phải biết chắc module đoacutekhocircng lagravem ảnh hưởng hoạt động của asterisk nếu khocircng lỗi sẽ xuất hiện
3 varlibasterisk
Thư mục varlibasterisk chứa tập tin astdb vagrave một số thư mục con Tập tinastdb định vị thocircng tin cơ sở dữ liệu của Asterisk giống như Microsoft WindowsRegistry
Caacutec thư mục con của thư mục varlibasterisk bao gồm
agi-bin
Thư mục agi-bin chứa caacutec script của người dugraveng magrave Asterisk coacute thểđịnh vị sử dụng qua caacutec ứng dụng AGI
AGI lagrave phần giao tiếp với ngocircn ngữ lập trigravenh script để thực hiện mộtsố cocircng việc của Asterisk từ becircn ngoagravei
firmware
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4372
Taacutec Giả Lecirc Quốc Toagraven
43
Thư mục firmware chứa một số phần dẻo(firmware) cho caacutec thiết bịkhaacutec nhau tương thiacutech với Asterisk Hiện tại chỉ coacute thư mục con iax chứa
firmware cho thiếy bị IAXy của Digium IAXy lagrave thiết bị ATA sử dụng giaothức IAX
images
Caacutec ứng dụng thocircng tin với caacutec kecircnh hỗ trợ ảnh images thigrave sử dụng thư mụcnagravey Nhưng hiện tại caacutec kecircnh thocircng tin hầu như khocircng hỗ trợ truyền ảnh images necircthư mục nagravey cũng hiếm khi được sử dụng Tuy nhiecircn nếu caacutec thiết bị coacute hỗ trợ ththư mục nagravey trở necircn hiệu dụng
keys
Asterisk coacute thể sử dụng hệ thống khoaacute publicprivate để xaacutec minh caacutec kết nốgiữa caacutec server Asterisk thocircng qua chữ kyacute điện tử RSA Nếu đặt một khoaacute publicvagraveo thư mục keys thigrave kết nối của server đầu becircn kia coacute thể được xaacutec minh bằn
kecircnh thocircng tin coacute hỗ trợ đối với Asterisk thigrave kecircnh giao thức IAX hỗ trợ loại xaacutecminh nagravey Một khoaacute private khocircng bao giờ cocircng bố chuacuteng ta chỉ cocircng bố khoaacute public đến với server cần nối đến sau đoacute sẽ được xaacutec minh với khoaacute private nagravey Chai khoaacute public vagrave private được lưu với đuocirci pub vagrave key đặt tại thư mục keys
mohmp3
Khi cấu higravenh Asterisk sử dụng tiacutenh năng Music on Hold tiacutenh năng hoạt độngsẽ thực hiện lấy caacutec tập tin mp3 tại thư mục mohmp3 Tập tin định dạng theo chucủa Asterisk necircn khi sử dụng caacutec file Mp3 thocircng thường cần coacute sự chuyển đổi thiacutechợp trước khi cheacutep vagraveo thư mục trecircn để sử dụng
sounds
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4472
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4572
Taacutec Giả Lecirc Quốc Toagraven
45
Thư mục tmp sử dụng để lưu trữ những thocircng tin tạm để luocircn bảo đảm khocircnxảy ra tigravenh trạng đọc vagrave viết tập tin cugraveng một luacutec Khi yecircu cầu xử lyacute tập tin chuacuteng thao taacutec trecircn thư mục tmp trước khi lưu vagraveo tập tin điacutech
Tất cả caacutec lời nhắc thoại từ phiacutea người sử dụng vagrave caacutec lời nhắc thoại sử dụ
cho thao taacutec hộp voicemail đều được chứa trong thư mục voicemail Một hộp thưthoại được tạo ra ứng với một maacutey nội bộ trong tập tin voicemailconf sẽ được tra một thư mục con tương ứng cho maacutey nội bộ đoacute tại thư mục voicemail
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4672
Taacutec Giả Lecirc Quốc Toagraven
46
5 varrun
Thư mục varrun chứa thocircng tin process ID(pid) cho tất cả caacutec tiến trigravenh đang
hoạt động trong hệ thống bao gồm cả Asterisk Lưu yacute lagrave ứng với mỗi hệ điều hagravethư mục varrun coacute thể khaacutec
6 varlogasterisk
Thư mục varlogasterisk lagrave nơi Asterisk chứa tất cả caacutec tập tin nhật kyacute haycograven gọi lagrave tập tin log Chuacuteng ta coacute thể tuỳ biến caacutec loại thocircng tin được lưu trong caacutec
tập tin log khaacutec nhau qua tập tin cấu higravenh loggerconf đặt tại thư mục etcasterisk7 varlogasteriskcdr-csv
Thư mục varlogasteriskcdr-csv được sử dụng để lưu chi tiết cuộc gọi CDRThocircng tin mặc định về chi tiết thocircng tin cuộc gọi lưu trữ trong tập tin MasterCVSnhưng thường thigrave ứng với mỗi matilde accountcode sẽ tạo một thư mục riecircng để lưu ctiết cuộc gọi cho maacutey đoacute
5 Một số lệnh thao taacutec trecircn hệ thống asterisk
Asterisk coacute hai thagravenh phần được xacircy dụng tiacutech hợp với nhau vagrave chạy songsong nhau
Asterisk Server bigravenh thường chạy ở chế độ nền(background) giống caacutec sevicestrong window
Asterisk Client ở chế độ dograveng lệnh CLI giao tiếp với Asterisk Server thực thicaacutec lệnh để kiểm tra hay xem caacutec thocircng tin của server
Để Chạy vagrave dừng Asterisk ở chế độ nền chuacuteng ta thực hiện lệnh sau
etcinitdasterisk (start|stop)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4772
Taacutec Giả Lecirc Quốc Toagraven
47
Một khi Asterisk đatilde chạy chuacuteng ta coacute thể chuyển qua chế độ CLI từ dấu nhắlệnh của linux như sau
asterisk ndashr
Khi vagraveo chế độ lệnh nếu muốn thoaacutet về lại dấu nhắc linux chuacuteng ta dugraveng lệnh
CLIgtexit
Caacutec lệnh cơ bản thực hiện tại CLIgt
Bất cứ khi nagraveo chỉnh sửa caacutec tập tin cấu higravenh chuacuteng ta đều cần phải nạp lại đcaacutec thay đổi coacute hiệu lực điều đoacute thực hiện bằng lệnh
CLIgtreload
Bậc chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 debug
CLIgt SIP debug
Tắt chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 no debug
CLIgt SIP no debug
Hiển thị caacutec trạng thaacutei thocircng tin của users peers vagravechannels của SIP hoặc IAX2
CLIgt sip show users
CLIgt sip show peers
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4872
Taacutec Giả Lecirc Quốc Toagraven
48
CLIgt sip show channels
CLIgt iax2 show peers
CLIgt iax2 show users
CLIgt iax2 show channels
Đến thời điểm nagravey coacute thể noacutei chuacuteng ta đatilde hoagraven thagravenh cagravei đặt hệ thốngAsterisk cagravei đặt xong mới lagrave bước mở đầu để cho hệ thống Asterisk hoạt động vtừng ứng dụng cụ thể chuacuteng sẽ tiếp tục thực hiện caacutec giai đoạn được xem lagrave qutrọng nhất trong việc triển khai hệ thống Asterisk đoacute lagrave giai đoạn cấu higravenh hệ thốnlecircn kế hoạch Diaplan chương cograven lại đều nhắm đến mục tiecircu nagravey
4 CẤU HIgraveNH HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Sau khi hoagraven tất phần cagravei đặt hệ thống asterisk một bước quan trọng tiếp thelagrave cấu higravenh hệ thống coacute thể noacutei đacircy lagrave bước quan trọng nhất của việc khiển khai thống đến với từng ứng dụng cụ thể Trong chương nagravey xin giới thiệu caacutei nhigraven đầtiecircn về việc cấu higravenh trước khi đi sacircu hơn ở những chương sau những gigrave giới thiệ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4972
Taacutec Giả Lecirc Quốc Toagraven
49
trong chương nagravey lagrave nền moacuteng cơ bản nhưng đủ để hiểu lagravem thế nagraveo hệ thống coacute thoạt động được nội dung chiacutenh bao gồm
+ Thao taacutec cấu higravenh trecircn hệ thống tập tin của asterisk
+ Caacutech cagravei đặt phần mềm softphone trecircn cocircng nghệ sip
+ Cấu higravenh cho hai maacutey softphone liecircn lạc với nhau
+ Cấu higravenh phaacutet thocircng điệp
+ Quay số qua Sip vagrave mạng PSTN
2 Tập Tin cấu higravenh
Tất cả caacutec file cấu higravenh cho hệ thống asterisk đều nằm tại thư mục etcasterisngoại trừ file zaptelconf cấu higravenh cho phần cứng TDM nằm tại thư mục etc caacutecthức cấu higravenh giống như tập tin ini của window vậy Caacutec nội dung sau dấu chấm phảy lagrave nội dung chuacute thiacutech trong file cấu higravenh giống như chuacute thiacutech trong ngocircn ngữ
lập trigravenh C lagrave dấu Tất cả caacutec khoảng trắng trong tập tin đều được bỏ qua khocircng yacute nghĩa trong file cấu higravenh
Trong file cấu higravenh cograven coacute hai pheacutep gaacuten rất thường xuyecircn được sử dụng pheacutep gaacuten ldquo=rdquo lagrave dugraveng cho việc gaacuten caacutec biến cograven pheacutep gaacuten ldquo=gtrdquo dugraveng cho việc gaacutencaacutec đối tượng sau đacircy lagrave một viacute dụ cho file cấu higravenh
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5072
Taacutec Giả Lecirc Quốc Toagraven
50
Đacircy lagrave caacutec dograveng chuacute thiacutech
[section]
Key=value gaacuten giaacute trị cho biến
[section2]
Key=gtobject Gaacuten giaacute trị cho đối tượng
Cuacute phaacutep thực hiện giống nhau cho tất cả caacutec file cấu higravenh nhưng coacute vagravei kiểukhaacutec nhau cho mỗi file cầu higravenh dựa vagraveo thức caacutech hoạt động của chuacuteng
3 Caacutec kiểu ảnh hưởng trong tập cấu higravenh
Coacute ba kiểu caacutech thức hoạt động của tập tin cấu higravenh như sau
Kiểu Caacutech hoạt động File cầu higravenh Viacute dụ
S i m p l eGroup
Coacute hiệu lực trecircntừng dograveng trongfile
Extensionconf
Exten=gt4001dial(sip400)
O p t i o ninheritance
Dograveng khai baacuteosau thừa kếnhững thocircng sốkhai baacuteo trước
Zapataconf [channels]
Context=From_PSTN
Signalling=fxs_ks
Group=1Channel=gt1
C o m p l e xEntity
Mỗi entity nhậnmột ngữ cảnh
sipconf
iaxconf
[cisco]
Type=friend
Secret=12345
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5172
Taacutec Giả Lecirc Quốc Toagraven
51
Host=192168165
Context=NoiBo
[xten]
Type=friend
Secret=6789
Host=dynamic
Context=NoiBo
1 Simple Group
Đacircy lagrave kiểu cấu higravenh đơn giản nhất thường sử dụng trong caacutec fileextentionconf meetmeconf voicemailconf tương ứng với mỗi dograveng khai baacuteo lagravemột đối tượng coacute yacute nghĩa trecircn dograveng đoacute
Viacute dụ
Extentionconf [section]
object1=gt op1op2op3
object2=gt op1bop2bop3b
Trong viacute dụ trecircn mỗi dograveng tương ứng với caacutec toaacuten tử khaacutec nhau object1 coacute caacutectoaacuten từ op1 op2 op3 trong khi đoacute object2 lại coacute caacutec toaacuten từ op1b op2b op3b
2 Option inheritance
Đacircy lagrave cấu higravenh kiểu thừa kế thường được cấu higravenh trong caacutec file zapataconfagentconf với kiểu cấu higravenh nagravey thigrave caacutec dograveng phiacutea dưới coacute thể thừa kế caacutec thocircng sdograveng phiacutea trecircn tương ứng với mỗi section caacutec dograveng phiacutea dưới coacute thể thay đổi caacutecthocircng số cho tươngứng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5272
Taacutec Giả Lecirc Quốc Toagraven
52
Viacute dụ
Extentionconf
[section]
Op1=bas
Op2=adv
Object1=gt1
Op1=int
Object1=gt2
Với cấu higravenh trecircn coacute thể giải thiacutech như sau object1=gt1 thừa hưởng hai thocircngsố ở phiacutea trecircn đoacute lagrave op1=bas vagrave op2=adv trong khi đoacute đối với object1=gt2 với thocircngsố op1=int được khai baacuteo lại necircn object1=gt2 được thừa kế từ hai thocircng số op1=invagrave op2=adv
3 Complex Entity
Với cấu kiểu nagravey được tổ chức thagravenh nhiều entity ứng với mỗi entity coacute nhiềthocircng số được khai baacuteo mỗi entity ở đacircy chiacutenh lagrave caacutec section để khai baacuteo caacutec kecircnhthocircng tin Cấu higravenh thường được sử dụng trong caacutec file iaxconf sipconf
Viacute dụ
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5372
Taacutec Giả Lecirc Quốc Toagraven
53
[entity1]
Op1=value1
Op2=value2
[entity2]
Op1=value3
Op2=value4
Entity1 coacute caacutec giaacute trị value1 vagrave value2 cho thocircng số op1 vagrave op2 trong khi đoacute
cũng lagrave thocircng số op1 vagrave op 2 nhưng coacute caacutec giaacute trị khaacutec lagrave value3 vagrave value4 choentity2
4 Cấu higravenh giao tiếp với mạng PSTN
1 Ngữ cảnh kết nối
Để kết nối với mạng PSTN chuacuteng ta cần phải coacute một card TDM với Cổng
FXO vagrave một đường dacircy điện thoại hoặc coacute thể lagrave một tổng đagravei nội bộ PBX Cnhiều nhagrave sản xuất phần cứng khaacutec nhau nhưng trong phần cấu higravenh dưới dacircy lagrave cấhigravenh cho card zapata TDM01B của digium (card nagravey hiện nay giaacute baacuten khoảng175$)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3672
Taacutec Giả Lecirc Quốc Toagraven
36
Sau khi hoagraven tất caacutec bước trecircn chuacuteng ta tiến hagravenh download phần mềmasterisk với phiecircn bản mới nhất
cd usrsrc
wgetftpftpdigiumcompubasteriskasterisk-140targz
wgetftpftpdigiumcompubasteriskasterisk-addons-140targz
wgetftpftpdigiumcompubasteriskasterisk-sounds-140targz
wgethttpftpdigiumcompubzaptelzaptel-140targz
wgethttpftpdigiumcompublibprilibpri-140targz
Việc download coacute thể nhanh hay chậm tugravey vagraveo tốc độ trecircn đường internet saukhi download hoagraven thagravenh chuacuteng ta tiến hagravenh bung neacuten caacutec goacutei ra thư mục chỉ định
tar ndashxzvf asterisk-140targz
tar ndashxzvf asterisk-addons-140targz
tar ndashxzvf asterisk-sounds-140targz
tar ndashxzvf zaptel-140targz
tar ndashxzvf libpri-140targz
Giải neacuten xong chuacuteng ta nhớ thực hiện lệnh
ln ndashs usrsrcasterisk-140 usrsrcasterisk lệnh nagravey để bảo đảm goacuteildquoaddonsrdquo được biecircn dịch đuacuteng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3772
Taacutec Giả Lecirc Quốc Toagraven
37
Bacircy giờ tới phần chuacuteng ta biecircn dịch caacutec goacutei đatilde giải neacuten ở trecircn trước tiecircn lagrave goacuteizaptel kế đến lagrave libpri sau cugraveng lagrave goacutei Asterisk
2 Cagravei đặt goacutei Zaptel
Goacutei zaptel sẽ chứa tại thư mục usrsrczaptel Đaacutenh lệnh như dưới đacircy để cagraveđặt
cd usrsrczaptel
make clean make install
Lệnh nagravey thực hiện khoảng 2 phuacutet tugravey vagraveo tốc độ maacutey tiacutenh cagravei đặt sau khicagravei đặt xong sẽ trở lại dấu nhắc lệnh vagrave hiển thị một loạt caacutec thocircng baacuteo trong đoacute một số bản tin lỗi magrave chủ yếu lagrave yecircu cầu cagravei đặt caacutec goacutei phụ thuộc đatilde liệt kecirc ở trecircnếu caacutec goacutei trecircn chưa được cagravei đặt
Goacutei zaptel nagravey chứa caacutec driver cho caacutec phần cứng kết giao tiếp với asterisk
do Digium phacircn phối vagrave một số thư viện cho việc coacute thực hiện giao tiếp với phầcứng hay khocircng
Để Asterisk coacute thể chạy cugraveng với khởi động của maacutey tiacutenh chuacuteng ta cần thựchiện lệnh
make config
Lệnh nagravey sẽ tạo ra script chegraven module zaptel vagraveo kernel vagrave chạy ztconfig vagraveoluacutec khởi động maacutey Trong Redhat script nagravey sẽ được cheacutep vagraveo etcinitd chạy ở mức 3
3 Cagravei đặt goacutei libpri
Kế đến chuacuteng ta biecircn dịch goacutei libpri tại thư mục usrsrclibpri bằng lệnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3972
Taacutec Giả Lecirc Quốc Toagraven
39
make config
3 Cagravei đặt TrixBox
1 Giới thiệu
TRIXBOX được phaacutet triển từ nhacircn của ứng dụng Asterisk được tổng hợp từmột số thagravenh phần chiacutenh được phaacutet triển bởi cộng đồng phaacutet triển nguồn mAsterisk dưới bản quyền GPL Trixbox bao gồm những thagravenh phần chiacutenh cho việcấu higravenh ứng dụng thống kecirc tigravenh trạng hoạt động hệ thống lưu trữ dự phograveng v
nhacircn lagrave hệ điều hagravenh CentOS một phiecircn bản khaacutec của Redhat tất cả kết hợp vớnhau tạo thagravenh một goacutei hoagraven chỉnh Khi cagravei goacutei nagravey vagraveo maacutey tiacutenh thigrave coacute thể sử dụngnhư một tổng đagravei PBX
Caacutec thagravenh phần chiacutenh trong goacutei TRIXBOX lagrave
Asterisk PBX Thagravenh phần chiacutenh của hệ thống Trixbox
CentOS Một phiecircn bản Linux khaacutec của Redhat hoagraven toagraven miển phiacute sửdụng Lagrave nhacircn chiacutenh cho Trixbox
SugarCRM Hệ thống quan hệ khaacutech hagraveng CRM
A2Billing ndash Lagrave thagravenh phần dagravenh cho việc xacircy dựng hệ thống điện thoạitrả trước hay cograven gọi lagrave điện thọai thẻ (Calling Card)
Flash Operator Panel Bảng điều khiển giaacutem saacutet tigravenh trạng hoạt độngcủa caacutec maacutey điện thoại trong hệ thống
Web MeetMe Control Quản lyacute triển khai hệ thống điện thoại hội nghị
FreePBX Đacircy lagrave cocircng cụ với giao diện web dagravenh cho việc cấu higravenh hệthống Asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4072
Taacutec Giả Lecirc Quốc Toagraven
40
Hệ thống Lưu trữ dự phograveng vagrave thống kecirc Lagrave thagravenh phần của TRIXBOXcung cấp caacutec cocircng cụ cần thiết cho việc bảo trigrave bảo dưỡng hệ thống
Hệ thống Apache-Php-Mysql dagravenh cho giải phaacutep Webserver của hệthống
2 DOWNLOAD VAgrave LẮP ĐẶT TRIXBOX
Địa chỉ downloadhttpsourceforgenetprojectsasteriskathome
Khi download xong file Trixboxiso Hatildey dugraveng file nagravey Burn vagraveo CD ( xinlưu yacute lagrave dugraveng Nero hoặc chương trigravenh cheacutep đĩa ưa thiacutech rồi burn vagraveo cd_romchứ khocircng phải cheacutep file đoacute vagraveo cd_rom)
Sau khi coacute CD Hatildey boot từ CD nagravey để cagravei đặt trixbox
Chuacute yacute dữ liệu trecircn đĩa cứng sẽ bị xoacutea sạch để cagravei đặt trixbox Nếu trongđĩa cứng cograven dữ liệu hatildey backup tất cả trước khi tiến hagravenh lắp đặt trixbox
Tới đacircy lần lượt caacutec magraven higravenh chỉ dẫn sẽ hiện ra vagrave cứ theo hướng dẫn magrave cagraveđặt Sau khi cagravei đặt xong chuacuteng ta dugraveng Username root vagrave password password đểđăng nhập hệ thống
3 Cấu higravenh địa chỉ IP cho card mạng
Thiết lập địa chỉ IP bằng caacutech gotilde lệnh
netconfig
Chọn OK để thiếp lập
Nếu trong mạng coacute hỗ trợ DHCP thigrave hatildey chọn mục nagravey cograven nếu khocircng hatildeynhập địa chỉ IP tĩnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4172
Taacutec Giả Lecirc Quốc Toagraven
41
IP 19216801
Netmask 2552552550
Gateway 19216893254 ngotilde ra becircn ngoagravei
Primary nameserver 19216893200 thiết lập nếu coacute
Chọn OK để chấp nhận caacutec thiết lập trecircn
Sau khi hoagraven tất hatildey lagravem cho thiết lập coacute hiệu lực bằng caacutech reset lại
maacutey tiacutenh hoặc dugraveng lệnh sau
Service network stop
Service network start
Đến đacircy xem như cagravei đặt hoagraven tất bacircy giờ để cấu higravenh được Asterisk chuacutengta vagraveo một magravey khaacutec vagrave mở Internet Explorer hoặc một trigravenh duyệt web bất kỳ
nhập vagraveohttp19216801đatilde cấu higravenh ở trecircn vagrave tiến hagravenh cấu higravenh hệ thốngvới tagravei khoảng username maint vagrave password password
4 Tổ Chức Thư Mục của Asterisk
Asterisk sử dụng nhiều thư mục trecircn hệ thống linux để quản lyacute caacutec khiacutea cạnkhaacutec nhau của hệ thống như nghi nhận bản tin thoại caacutec bản tin nhắc thoại hoặcaacutec tập tin cấu higravenh Phần nagravey sẽ trigravenh bagravey caacutec thư mục chiacutenh yếu được tạo ra tronquaacute trigravenh lắp đặt vagrave được cấu higravenh trong tập tin Asteriskconf
1 etcasterisk
Thư mục etcasterisk chứa tất cả caacutec tập tin cấu higravenh của hệ thốngAsterisk ngoại trừ tập tin Zaptelconf được đặt tại thư mục etc Phần cứnZaptel đầu tiecircn được phaacutet triển bởi Jim Dixon thuộc nhoacutem Zapata Telephony
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4272
Taacutec Giả Lecirc Quốc Toagraven
42
Group để giao tiếp giữa maacutey tiacutenh với mạng điện thoại magrave Asterisk lại sửdụng phần cứng nagravey với lyacute do đoacute magrave file cấu higravenh zaptelconf khocircng nằmtrong thư mục etcasterisk
2 usrlibasteriskmodules
Thư mục usrlibasteriskmodules chứa tất cả caacutec module cần thiết đểasterisk hoạt động Becircn trong thư mục lagrave caacutec ứng dụng khaacutec nhau caacutec codeccaacutec định dạng acircm thanh(format) vagrave caacutec kecircnh thocircng tin(channel) Theo mặc địnhAsterisk sẽ nạp tất cả caacutec module vagraveo luacutec khởi động Chuacuteng ta coacute thể khocircng cho
nạp một module bất kỳ bằng caacutech khocircng khai baacuteo sử dụng trong tập tinmodulesconf Lưu yacute khi khocircng cho nạp module thigrave phải biết chắc module đoacutekhocircng lagravem ảnh hưởng hoạt động của asterisk nếu khocircng lỗi sẽ xuất hiện
3 varlibasterisk
Thư mục varlibasterisk chứa tập tin astdb vagrave một số thư mục con Tập tinastdb định vị thocircng tin cơ sở dữ liệu của Asterisk giống như Microsoft WindowsRegistry
Caacutec thư mục con của thư mục varlibasterisk bao gồm
agi-bin
Thư mục agi-bin chứa caacutec script của người dugraveng magrave Asterisk coacute thểđịnh vị sử dụng qua caacutec ứng dụng AGI
AGI lagrave phần giao tiếp với ngocircn ngữ lập trigravenh script để thực hiện mộtsố cocircng việc của Asterisk từ becircn ngoagravei
firmware
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4372
Taacutec Giả Lecirc Quốc Toagraven
43
Thư mục firmware chứa một số phần dẻo(firmware) cho caacutec thiết bịkhaacutec nhau tương thiacutech với Asterisk Hiện tại chỉ coacute thư mục con iax chứa
firmware cho thiếy bị IAXy của Digium IAXy lagrave thiết bị ATA sử dụng giaothức IAX
images
Caacutec ứng dụng thocircng tin với caacutec kecircnh hỗ trợ ảnh images thigrave sử dụng thư mụcnagravey Nhưng hiện tại caacutec kecircnh thocircng tin hầu như khocircng hỗ trợ truyền ảnh images necircthư mục nagravey cũng hiếm khi được sử dụng Tuy nhiecircn nếu caacutec thiết bị coacute hỗ trợ ththư mục nagravey trở necircn hiệu dụng
keys
Asterisk coacute thể sử dụng hệ thống khoaacute publicprivate để xaacutec minh caacutec kết nốgiữa caacutec server Asterisk thocircng qua chữ kyacute điện tử RSA Nếu đặt một khoaacute publicvagraveo thư mục keys thigrave kết nối của server đầu becircn kia coacute thể được xaacutec minh bằn
kecircnh thocircng tin coacute hỗ trợ đối với Asterisk thigrave kecircnh giao thức IAX hỗ trợ loại xaacutecminh nagravey Một khoaacute private khocircng bao giờ cocircng bố chuacuteng ta chỉ cocircng bố khoaacute public đến với server cần nối đến sau đoacute sẽ được xaacutec minh với khoaacute private nagravey Chai khoaacute public vagrave private được lưu với đuocirci pub vagrave key đặt tại thư mục keys
mohmp3
Khi cấu higravenh Asterisk sử dụng tiacutenh năng Music on Hold tiacutenh năng hoạt độngsẽ thực hiện lấy caacutec tập tin mp3 tại thư mục mohmp3 Tập tin định dạng theo chucủa Asterisk necircn khi sử dụng caacutec file Mp3 thocircng thường cần coacute sự chuyển đổi thiacutechợp trước khi cheacutep vagraveo thư mục trecircn để sử dụng
sounds
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4472
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4572
Taacutec Giả Lecirc Quốc Toagraven
45
Thư mục tmp sử dụng để lưu trữ những thocircng tin tạm để luocircn bảo đảm khocircnxảy ra tigravenh trạng đọc vagrave viết tập tin cugraveng một luacutec Khi yecircu cầu xử lyacute tập tin chuacuteng thao taacutec trecircn thư mục tmp trước khi lưu vagraveo tập tin điacutech
Tất cả caacutec lời nhắc thoại từ phiacutea người sử dụng vagrave caacutec lời nhắc thoại sử dụ
cho thao taacutec hộp voicemail đều được chứa trong thư mục voicemail Một hộp thưthoại được tạo ra ứng với một maacutey nội bộ trong tập tin voicemailconf sẽ được tra một thư mục con tương ứng cho maacutey nội bộ đoacute tại thư mục voicemail
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4672
Taacutec Giả Lecirc Quốc Toagraven
46
5 varrun
Thư mục varrun chứa thocircng tin process ID(pid) cho tất cả caacutec tiến trigravenh đang
hoạt động trong hệ thống bao gồm cả Asterisk Lưu yacute lagrave ứng với mỗi hệ điều hagravethư mục varrun coacute thể khaacutec
6 varlogasterisk
Thư mục varlogasterisk lagrave nơi Asterisk chứa tất cả caacutec tập tin nhật kyacute haycograven gọi lagrave tập tin log Chuacuteng ta coacute thể tuỳ biến caacutec loại thocircng tin được lưu trong caacutec
tập tin log khaacutec nhau qua tập tin cấu higravenh loggerconf đặt tại thư mục etcasterisk7 varlogasteriskcdr-csv
Thư mục varlogasteriskcdr-csv được sử dụng để lưu chi tiết cuộc gọi CDRThocircng tin mặc định về chi tiết thocircng tin cuộc gọi lưu trữ trong tập tin MasterCVSnhưng thường thigrave ứng với mỗi matilde accountcode sẽ tạo một thư mục riecircng để lưu ctiết cuộc gọi cho maacutey đoacute
5 Một số lệnh thao taacutec trecircn hệ thống asterisk
Asterisk coacute hai thagravenh phần được xacircy dụng tiacutech hợp với nhau vagrave chạy songsong nhau
Asterisk Server bigravenh thường chạy ở chế độ nền(background) giống caacutec sevicestrong window
Asterisk Client ở chế độ dograveng lệnh CLI giao tiếp với Asterisk Server thực thicaacutec lệnh để kiểm tra hay xem caacutec thocircng tin của server
Để Chạy vagrave dừng Asterisk ở chế độ nền chuacuteng ta thực hiện lệnh sau
etcinitdasterisk (start|stop)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4772
Taacutec Giả Lecirc Quốc Toagraven
47
Một khi Asterisk đatilde chạy chuacuteng ta coacute thể chuyển qua chế độ CLI từ dấu nhắlệnh của linux như sau
asterisk ndashr
Khi vagraveo chế độ lệnh nếu muốn thoaacutet về lại dấu nhắc linux chuacuteng ta dugraveng lệnh
CLIgtexit
Caacutec lệnh cơ bản thực hiện tại CLIgt
Bất cứ khi nagraveo chỉnh sửa caacutec tập tin cấu higravenh chuacuteng ta đều cần phải nạp lại đcaacutec thay đổi coacute hiệu lực điều đoacute thực hiện bằng lệnh
CLIgtreload
Bậc chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 debug
CLIgt SIP debug
Tắt chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 no debug
CLIgt SIP no debug
Hiển thị caacutec trạng thaacutei thocircng tin của users peers vagravechannels của SIP hoặc IAX2
CLIgt sip show users
CLIgt sip show peers
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4872
Taacutec Giả Lecirc Quốc Toagraven
48
CLIgt sip show channels
CLIgt iax2 show peers
CLIgt iax2 show users
CLIgt iax2 show channels
Đến thời điểm nagravey coacute thể noacutei chuacuteng ta đatilde hoagraven thagravenh cagravei đặt hệ thốngAsterisk cagravei đặt xong mới lagrave bước mở đầu để cho hệ thống Asterisk hoạt động vtừng ứng dụng cụ thể chuacuteng sẽ tiếp tục thực hiện caacutec giai đoạn được xem lagrave qutrọng nhất trong việc triển khai hệ thống Asterisk đoacute lagrave giai đoạn cấu higravenh hệ thốnlecircn kế hoạch Diaplan chương cograven lại đều nhắm đến mục tiecircu nagravey
4 CẤU HIgraveNH HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Sau khi hoagraven tất phần cagravei đặt hệ thống asterisk một bước quan trọng tiếp thelagrave cấu higravenh hệ thống coacute thể noacutei đacircy lagrave bước quan trọng nhất của việc khiển khai thống đến với từng ứng dụng cụ thể Trong chương nagravey xin giới thiệu caacutei nhigraven đầtiecircn về việc cấu higravenh trước khi đi sacircu hơn ở những chương sau những gigrave giới thiệ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4972
Taacutec Giả Lecirc Quốc Toagraven
49
trong chương nagravey lagrave nền moacuteng cơ bản nhưng đủ để hiểu lagravem thế nagraveo hệ thống coacute thoạt động được nội dung chiacutenh bao gồm
+ Thao taacutec cấu higravenh trecircn hệ thống tập tin của asterisk
+ Caacutech cagravei đặt phần mềm softphone trecircn cocircng nghệ sip
+ Cấu higravenh cho hai maacutey softphone liecircn lạc với nhau
+ Cấu higravenh phaacutet thocircng điệp
+ Quay số qua Sip vagrave mạng PSTN
2 Tập Tin cấu higravenh
Tất cả caacutec file cấu higravenh cho hệ thống asterisk đều nằm tại thư mục etcasterisngoại trừ file zaptelconf cấu higravenh cho phần cứng TDM nằm tại thư mục etc caacutecthức cấu higravenh giống như tập tin ini của window vậy Caacutec nội dung sau dấu chấm phảy lagrave nội dung chuacute thiacutech trong file cấu higravenh giống như chuacute thiacutech trong ngocircn ngữ
lập trigravenh C lagrave dấu Tất cả caacutec khoảng trắng trong tập tin đều được bỏ qua khocircng yacute nghĩa trong file cấu higravenh
Trong file cấu higravenh cograven coacute hai pheacutep gaacuten rất thường xuyecircn được sử dụng pheacutep gaacuten ldquo=rdquo lagrave dugraveng cho việc gaacuten caacutec biến cograven pheacutep gaacuten ldquo=gtrdquo dugraveng cho việc gaacutencaacutec đối tượng sau đacircy lagrave một viacute dụ cho file cấu higravenh
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5072
Taacutec Giả Lecirc Quốc Toagraven
50
Đacircy lagrave caacutec dograveng chuacute thiacutech
[section]
Key=value gaacuten giaacute trị cho biến
[section2]
Key=gtobject Gaacuten giaacute trị cho đối tượng
Cuacute phaacutep thực hiện giống nhau cho tất cả caacutec file cấu higravenh nhưng coacute vagravei kiểukhaacutec nhau cho mỗi file cầu higravenh dựa vagraveo thức caacutech hoạt động của chuacuteng
3 Caacutec kiểu ảnh hưởng trong tập cấu higravenh
Coacute ba kiểu caacutech thức hoạt động của tập tin cấu higravenh như sau
Kiểu Caacutech hoạt động File cầu higravenh Viacute dụ
S i m p l eGroup
Coacute hiệu lực trecircntừng dograveng trongfile
Extensionconf
Exten=gt4001dial(sip400)
O p t i o ninheritance
Dograveng khai baacuteosau thừa kếnhững thocircng sốkhai baacuteo trước
Zapataconf [channels]
Context=From_PSTN
Signalling=fxs_ks
Group=1Channel=gt1
C o m p l e xEntity
Mỗi entity nhậnmột ngữ cảnh
sipconf
iaxconf
[cisco]
Type=friend
Secret=12345
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5172
Taacutec Giả Lecirc Quốc Toagraven
51
Host=192168165
Context=NoiBo
[xten]
Type=friend
Secret=6789
Host=dynamic
Context=NoiBo
1 Simple Group
Đacircy lagrave kiểu cấu higravenh đơn giản nhất thường sử dụng trong caacutec fileextentionconf meetmeconf voicemailconf tương ứng với mỗi dograveng khai baacuteo lagravemột đối tượng coacute yacute nghĩa trecircn dograveng đoacute
Viacute dụ
Extentionconf [section]
object1=gt op1op2op3
object2=gt op1bop2bop3b
Trong viacute dụ trecircn mỗi dograveng tương ứng với caacutec toaacuten tử khaacutec nhau object1 coacute caacutectoaacuten từ op1 op2 op3 trong khi đoacute object2 lại coacute caacutec toaacuten từ op1b op2b op3b
2 Option inheritance
Đacircy lagrave cấu higravenh kiểu thừa kế thường được cấu higravenh trong caacutec file zapataconfagentconf với kiểu cấu higravenh nagravey thigrave caacutec dograveng phiacutea dưới coacute thể thừa kế caacutec thocircng sdograveng phiacutea trecircn tương ứng với mỗi section caacutec dograveng phiacutea dưới coacute thể thay đổi caacutecthocircng số cho tươngứng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5272
Taacutec Giả Lecirc Quốc Toagraven
52
Viacute dụ
Extentionconf
[section]
Op1=bas
Op2=adv
Object1=gt1
Op1=int
Object1=gt2
Với cấu higravenh trecircn coacute thể giải thiacutech như sau object1=gt1 thừa hưởng hai thocircngsố ở phiacutea trecircn đoacute lagrave op1=bas vagrave op2=adv trong khi đoacute đối với object1=gt2 với thocircngsố op1=int được khai baacuteo lại necircn object1=gt2 được thừa kế từ hai thocircng số op1=invagrave op2=adv
3 Complex Entity
Với cấu kiểu nagravey được tổ chức thagravenh nhiều entity ứng với mỗi entity coacute nhiềthocircng số được khai baacuteo mỗi entity ở đacircy chiacutenh lagrave caacutec section để khai baacuteo caacutec kecircnhthocircng tin Cấu higravenh thường được sử dụng trong caacutec file iaxconf sipconf
Viacute dụ
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5372
Taacutec Giả Lecirc Quốc Toagraven
53
[entity1]
Op1=value1
Op2=value2
[entity2]
Op1=value3
Op2=value4
Entity1 coacute caacutec giaacute trị value1 vagrave value2 cho thocircng số op1 vagrave op2 trong khi đoacute
cũng lagrave thocircng số op1 vagrave op 2 nhưng coacute caacutec giaacute trị khaacutec lagrave value3 vagrave value4 choentity2
4 Cấu higravenh giao tiếp với mạng PSTN
1 Ngữ cảnh kết nối
Để kết nối với mạng PSTN chuacuteng ta cần phải coacute một card TDM với Cổng
FXO vagrave một đường dacircy điện thoại hoặc coacute thể lagrave một tổng đagravei nội bộ PBX Cnhiều nhagrave sản xuất phần cứng khaacutec nhau nhưng trong phần cấu higravenh dưới dacircy lagrave cấhigravenh cho card zapata TDM01B của digium (card nagravey hiện nay giaacute baacuten khoảng175$)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3772
Taacutec Giả Lecirc Quốc Toagraven
37
Bacircy giờ tới phần chuacuteng ta biecircn dịch caacutec goacutei đatilde giải neacuten ở trecircn trước tiecircn lagrave goacuteizaptel kế đến lagrave libpri sau cugraveng lagrave goacutei Asterisk
2 Cagravei đặt goacutei Zaptel
Goacutei zaptel sẽ chứa tại thư mục usrsrczaptel Đaacutenh lệnh như dưới đacircy để cagraveđặt
cd usrsrczaptel
make clean make install
Lệnh nagravey thực hiện khoảng 2 phuacutet tugravey vagraveo tốc độ maacutey tiacutenh cagravei đặt sau khicagravei đặt xong sẽ trở lại dấu nhắc lệnh vagrave hiển thị một loạt caacutec thocircng baacuteo trong đoacute một số bản tin lỗi magrave chủ yếu lagrave yecircu cầu cagravei đặt caacutec goacutei phụ thuộc đatilde liệt kecirc ở trecircnếu caacutec goacutei trecircn chưa được cagravei đặt
Goacutei zaptel nagravey chứa caacutec driver cho caacutec phần cứng kết giao tiếp với asterisk
do Digium phacircn phối vagrave một số thư viện cho việc coacute thực hiện giao tiếp với phầcứng hay khocircng
Để Asterisk coacute thể chạy cugraveng với khởi động của maacutey tiacutenh chuacuteng ta cần thựchiện lệnh
make config
Lệnh nagravey sẽ tạo ra script chegraven module zaptel vagraveo kernel vagrave chạy ztconfig vagraveoluacutec khởi động maacutey Trong Redhat script nagravey sẽ được cheacutep vagraveo etcinitd chạy ở mức 3
3 Cagravei đặt goacutei libpri
Kế đến chuacuteng ta biecircn dịch goacutei libpri tại thư mục usrsrclibpri bằng lệnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3972
Taacutec Giả Lecirc Quốc Toagraven
39
make config
3 Cagravei đặt TrixBox
1 Giới thiệu
TRIXBOX được phaacutet triển từ nhacircn của ứng dụng Asterisk được tổng hợp từmột số thagravenh phần chiacutenh được phaacutet triển bởi cộng đồng phaacutet triển nguồn mAsterisk dưới bản quyền GPL Trixbox bao gồm những thagravenh phần chiacutenh cho việcấu higravenh ứng dụng thống kecirc tigravenh trạng hoạt động hệ thống lưu trữ dự phograveng v
nhacircn lagrave hệ điều hagravenh CentOS một phiecircn bản khaacutec của Redhat tất cả kết hợp vớnhau tạo thagravenh một goacutei hoagraven chỉnh Khi cagravei goacutei nagravey vagraveo maacutey tiacutenh thigrave coacute thể sử dụngnhư một tổng đagravei PBX
Caacutec thagravenh phần chiacutenh trong goacutei TRIXBOX lagrave
Asterisk PBX Thagravenh phần chiacutenh của hệ thống Trixbox
CentOS Một phiecircn bản Linux khaacutec của Redhat hoagraven toagraven miển phiacute sửdụng Lagrave nhacircn chiacutenh cho Trixbox
SugarCRM Hệ thống quan hệ khaacutech hagraveng CRM
A2Billing ndash Lagrave thagravenh phần dagravenh cho việc xacircy dựng hệ thống điện thoạitrả trước hay cograven gọi lagrave điện thọai thẻ (Calling Card)
Flash Operator Panel Bảng điều khiển giaacutem saacutet tigravenh trạng hoạt độngcủa caacutec maacutey điện thoại trong hệ thống
Web MeetMe Control Quản lyacute triển khai hệ thống điện thoại hội nghị
FreePBX Đacircy lagrave cocircng cụ với giao diện web dagravenh cho việc cấu higravenh hệthống Asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4072
Taacutec Giả Lecirc Quốc Toagraven
40
Hệ thống Lưu trữ dự phograveng vagrave thống kecirc Lagrave thagravenh phần của TRIXBOXcung cấp caacutec cocircng cụ cần thiết cho việc bảo trigrave bảo dưỡng hệ thống
Hệ thống Apache-Php-Mysql dagravenh cho giải phaacutep Webserver của hệthống
2 DOWNLOAD VAgrave LẮP ĐẶT TRIXBOX
Địa chỉ downloadhttpsourceforgenetprojectsasteriskathome
Khi download xong file Trixboxiso Hatildey dugraveng file nagravey Burn vagraveo CD ( xinlưu yacute lagrave dugraveng Nero hoặc chương trigravenh cheacutep đĩa ưa thiacutech rồi burn vagraveo cd_romchứ khocircng phải cheacutep file đoacute vagraveo cd_rom)
Sau khi coacute CD Hatildey boot từ CD nagravey để cagravei đặt trixbox
Chuacute yacute dữ liệu trecircn đĩa cứng sẽ bị xoacutea sạch để cagravei đặt trixbox Nếu trongđĩa cứng cograven dữ liệu hatildey backup tất cả trước khi tiến hagravenh lắp đặt trixbox
Tới đacircy lần lượt caacutec magraven higravenh chỉ dẫn sẽ hiện ra vagrave cứ theo hướng dẫn magrave cagraveđặt Sau khi cagravei đặt xong chuacuteng ta dugraveng Username root vagrave password password đểđăng nhập hệ thống
3 Cấu higravenh địa chỉ IP cho card mạng
Thiết lập địa chỉ IP bằng caacutech gotilde lệnh
netconfig
Chọn OK để thiếp lập
Nếu trong mạng coacute hỗ trợ DHCP thigrave hatildey chọn mục nagravey cograven nếu khocircng hatildeynhập địa chỉ IP tĩnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4172
Taacutec Giả Lecirc Quốc Toagraven
41
IP 19216801
Netmask 2552552550
Gateway 19216893254 ngotilde ra becircn ngoagravei
Primary nameserver 19216893200 thiết lập nếu coacute
Chọn OK để chấp nhận caacutec thiết lập trecircn
Sau khi hoagraven tất hatildey lagravem cho thiết lập coacute hiệu lực bằng caacutech reset lại
maacutey tiacutenh hoặc dugraveng lệnh sau
Service network stop
Service network start
Đến đacircy xem như cagravei đặt hoagraven tất bacircy giờ để cấu higravenh được Asterisk chuacutengta vagraveo một magravey khaacutec vagrave mở Internet Explorer hoặc một trigravenh duyệt web bất kỳ
nhập vagraveohttp19216801đatilde cấu higravenh ở trecircn vagrave tiến hagravenh cấu higravenh hệ thốngvới tagravei khoảng username maint vagrave password password
4 Tổ Chức Thư Mục của Asterisk
Asterisk sử dụng nhiều thư mục trecircn hệ thống linux để quản lyacute caacutec khiacutea cạnkhaacutec nhau của hệ thống như nghi nhận bản tin thoại caacutec bản tin nhắc thoại hoặcaacutec tập tin cấu higravenh Phần nagravey sẽ trigravenh bagravey caacutec thư mục chiacutenh yếu được tạo ra tronquaacute trigravenh lắp đặt vagrave được cấu higravenh trong tập tin Asteriskconf
1 etcasterisk
Thư mục etcasterisk chứa tất cả caacutec tập tin cấu higravenh của hệ thốngAsterisk ngoại trừ tập tin Zaptelconf được đặt tại thư mục etc Phần cứnZaptel đầu tiecircn được phaacutet triển bởi Jim Dixon thuộc nhoacutem Zapata Telephony
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4272
Taacutec Giả Lecirc Quốc Toagraven
42
Group để giao tiếp giữa maacutey tiacutenh với mạng điện thoại magrave Asterisk lại sửdụng phần cứng nagravey với lyacute do đoacute magrave file cấu higravenh zaptelconf khocircng nằmtrong thư mục etcasterisk
2 usrlibasteriskmodules
Thư mục usrlibasteriskmodules chứa tất cả caacutec module cần thiết đểasterisk hoạt động Becircn trong thư mục lagrave caacutec ứng dụng khaacutec nhau caacutec codeccaacutec định dạng acircm thanh(format) vagrave caacutec kecircnh thocircng tin(channel) Theo mặc địnhAsterisk sẽ nạp tất cả caacutec module vagraveo luacutec khởi động Chuacuteng ta coacute thể khocircng cho
nạp một module bất kỳ bằng caacutech khocircng khai baacuteo sử dụng trong tập tinmodulesconf Lưu yacute khi khocircng cho nạp module thigrave phải biết chắc module đoacutekhocircng lagravem ảnh hưởng hoạt động của asterisk nếu khocircng lỗi sẽ xuất hiện
3 varlibasterisk
Thư mục varlibasterisk chứa tập tin astdb vagrave một số thư mục con Tập tinastdb định vị thocircng tin cơ sở dữ liệu của Asterisk giống như Microsoft WindowsRegistry
Caacutec thư mục con của thư mục varlibasterisk bao gồm
agi-bin
Thư mục agi-bin chứa caacutec script của người dugraveng magrave Asterisk coacute thểđịnh vị sử dụng qua caacutec ứng dụng AGI
AGI lagrave phần giao tiếp với ngocircn ngữ lập trigravenh script để thực hiện mộtsố cocircng việc của Asterisk từ becircn ngoagravei
firmware
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4372
Taacutec Giả Lecirc Quốc Toagraven
43
Thư mục firmware chứa một số phần dẻo(firmware) cho caacutec thiết bịkhaacutec nhau tương thiacutech với Asterisk Hiện tại chỉ coacute thư mục con iax chứa
firmware cho thiếy bị IAXy của Digium IAXy lagrave thiết bị ATA sử dụng giaothức IAX
images
Caacutec ứng dụng thocircng tin với caacutec kecircnh hỗ trợ ảnh images thigrave sử dụng thư mụcnagravey Nhưng hiện tại caacutec kecircnh thocircng tin hầu như khocircng hỗ trợ truyền ảnh images necircthư mục nagravey cũng hiếm khi được sử dụng Tuy nhiecircn nếu caacutec thiết bị coacute hỗ trợ ththư mục nagravey trở necircn hiệu dụng
keys
Asterisk coacute thể sử dụng hệ thống khoaacute publicprivate để xaacutec minh caacutec kết nốgiữa caacutec server Asterisk thocircng qua chữ kyacute điện tử RSA Nếu đặt một khoaacute publicvagraveo thư mục keys thigrave kết nối của server đầu becircn kia coacute thể được xaacutec minh bằn
kecircnh thocircng tin coacute hỗ trợ đối với Asterisk thigrave kecircnh giao thức IAX hỗ trợ loại xaacutecminh nagravey Một khoaacute private khocircng bao giờ cocircng bố chuacuteng ta chỉ cocircng bố khoaacute public đến với server cần nối đến sau đoacute sẽ được xaacutec minh với khoaacute private nagravey Chai khoaacute public vagrave private được lưu với đuocirci pub vagrave key đặt tại thư mục keys
mohmp3
Khi cấu higravenh Asterisk sử dụng tiacutenh năng Music on Hold tiacutenh năng hoạt độngsẽ thực hiện lấy caacutec tập tin mp3 tại thư mục mohmp3 Tập tin định dạng theo chucủa Asterisk necircn khi sử dụng caacutec file Mp3 thocircng thường cần coacute sự chuyển đổi thiacutechợp trước khi cheacutep vagraveo thư mục trecircn để sử dụng
sounds
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4472
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4572
Taacutec Giả Lecirc Quốc Toagraven
45
Thư mục tmp sử dụng để lưu trữ những thocircng tin tạm để luocircn bảo đảm khocircnxảy ra tigravenh trạng đọc vagrave viết tập tin cugraveng một luacutec Khi yecircu cầu xử lyacute tập tin chuacuteng thao taacutec trecircn thư mục tmp trước khi lưu vagraveo tập tin điacutech
Tất cả caacutec lời nhắc thoại từ phiacutea người sử dụng vagrave caacutec lời nhắc thoại sử dụ
cho thao taacutec hộp voicemail đều được chứa trong thư mục voicemail Một hộp thưthoại được tạo ra ứng với một maacutey nội bộ trong tập tin voicemailconf sẽ được tra một thư mục con tương ứng cho maacutey nội bộ đoacute tại thư mục voicemail
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4672
Taacutec Giả Lecirc Quốc Toagraven
46
5 varrun
Thư mục varrun chứa thocircng tin process ID(pid) cho tất cả caacutec tiến trigravenh đang
hoạt động trong hệ thống bao gồm cả Asterisk Lưu yacute lagrave ứng với mỗi hệ điều hagravethư mục varrun coacute thể khaacutec
6 varlogasterisk
Thư mục varlogasterisk lagrave nơi Asterisk chứa tất cả caacutec tập tin nhật kyacute haycograven gọi lagrave tập tin log Chuacuteng ta coacute thể tuỳ biến caacutec loại thocircng tin được lưu trong caacutec
tập tin log khaacutec nhau qua tập tin cấu higravenh loggerconf đặt tại thư mục etcasterisk7 varlogasteriskcdr-csv
Thư mục varlogasteriskcdr-csv được sử dụng để lưu chi tiết cuộc gọi CDRThocircng tin mặc định về chi tiết thocircng tin cuộc gọi lưu trữ trong tập tin MasterCVSnhưng thường thigrave ứng với mỗi matilde accountcode sẽ tạo một thư mục riecircng để lưu ctiết cuộc gọi cho maacutey đoacute
5 Một số lệnh thao taacutec trecircn hệ thống asterisk
Asterisk coacute hai thagravenh phần được xacircy dụng tiacutech hợp với nhau vagrave chạy songsong nhau
Asterisk Server bigravenh thường chạy ở chế độ nền(background) giống caacutec sevicestrong window
Asterisk Client ở chế độ dograveng lệnh CLI giao tiếp với Asterisk Server thực thicaacutec lệnh để kiểm tra hay xem caacutec thocircng tin của server
Để Chạy vagrave dừng Asterisk ở chế độ nền chuacuteng ta thực hiện lệnh sau
etcinitdasterisk (start|stop)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4772
Taacutec Giả Lecirc Quốc Toagraven
47
Một khi Asterisk đatilde chạy chuacuteng ta coacute thể chuyển qua chế độ CLI từ dấu nhắlệnh của linux như sau
asterisk ndashr
Khi vagraveo chế độ lệnh nếu muốn thoaacutet về lại dấu nhắc linux chuacuteng ta dugraveng lệnh
CLIgtexit
Caacutec lệnh cơ bản thực hiện tại CLIgt
Bất cứ khi nagraveo chỉnh sửa caacutec tập tin cấu higravenh chuacuteng ta đều cần phải nạp lại đcaacutec thay đổi coacute hiệu lực điều đoacute thực hiện bằng lệnh
CLIgtreload
Bậc chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 debug
CLIgt SIP debug
Tắt chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 no debug
CLIgt SIP no debug
Hiển thị caacutec trạng thaacutei thocircng tin của users peers vagravechannels của SIP hoặc IAX2
CLIgt sip show users
CLIgt sip show peers
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4872
Taacutec Giả Lecirc Quốc Toagraven
48
CLIgt sip show channels
CLIgt iax2 show peers
CLIgt iax2 show users
CLIgt iax2 show channels
Đến thời điểm nagravey coacute thể noacutei chuacuteng ta đatilde hoagraven thagravenh cagravei đặt hệ thốngAsterisk cagravei đặt xong mới lagrave bước mở đầu để cho hệ thống Asterisk hoạt động vtừng ứng dụng cụ thể chuacuteng sẽ tiếp tục thực hiện caacutec giai đoạn được xem lagrave qutrọng nhất trong việc triển khai hệ thống Asterisk đoacute lagrave giai đoạn cấu higravenh hệ thốnlecircn kế hoạch Diaplan chương cograven lại đều nhắm đến mục tiecircu nagravey
4 CẤU HIgraveNH HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Sau khi hoagraven tất phần cagravei đặt hệ thống asterisk một bước quan trọng tiếp thelagrave cấu higravenh hệ thống coacute thể noacutei đacircy lagrave bước quan trọng nhất của việc khiển khai thống đến với từng ứng dụng cụ thể Trong chương nagravey xin giới thiệu caacutei nhigraven đầtiecircn về việc cấu higravenh trước khi đi sacircu hơn ở những chương sau những gigrave giới thiệ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4972
Taacutec Giả Lecirc Quốc Toagraven
49
trong chương nagravey lagrave nền moacuteng cơ bản nhưng đủ để hiểu lagravem thế nagraveo hệ thống coacute thoạt động được nội dung chiacutenh bao gồm
+ Thao taacutec cấu higravenh trecircn hệ thống tập tin của asterisk
+ Caacutech cagravei đặt phần mềm softphone trecircn cocircng nghệ sip
+ Cấu higravenh cho hai maacutey softphone liecircn lạc với nhau
+ Cấu higravenh phaacutet thocircng điệp
+ Quay số qua Sip vagrave mạng PSTN
2 Tập Tin cấu higravenh
Tất cả caacutec file cấu higravenh cho hệ thống asterisk đều nằm tại thư mục etcasterisngoại trừ file zaptelconf cấu higravenh cho phần cứng TDM nằm tại thư mục etc caacutecthức cấu higravenh giống như tập tin ini của window vậy Caacutec nội dung sau dấu chấm phảy lagrave nội dung chuacute thiacutech trong file cấu higravenh giống như chuacute thiacutech trong ngocircn ngữ
lập trigravenh C lagrave dấu Tất cả caacutec khoảng trắng trong tập tin đều được bỏ qua khocircng yacute nghĩa trong file cấu higravenh
Trong file cấu higravenh cograven coacute hai pheacutep gaacuten rất thường xuyecircn được sử dụng pheacutep gaacuten ldquo=rdquo lagrave dugraveng cho việc gaacuten caacutec biến cograven pheacutep gaacuten ldquo=gtrdquo dugraveng cho việc gaacutencaacutec đối tượng sau đacircy lagrave một viacute dụ cho file cấu higravenh
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5072
Taacutec Giả Lecirc Quốc Toagraven
50
Đacircy lagrave caacutec dograveng chuacute thiacutech
[section]
Key=value gaacuten giaacute trị cho biến
[section2]
Key=gtobject Gaacuten giaacute trị cho đối tượng
Cuacute phaacutep thực hiện giống nhau cho tất cả caacutec file cấu higravenh nhưng coacute vagravei kiểukhaacutec nhau cho mỗi file cầu higravenh dựa vagraveo thức caacutech hoạt động của chuacuteng
3 Caacutec kiểu ảnh hưởng trong tập cấu higravenh
Coacute ba kiểu caacutech thức hoạt động của tập tin cấu higravenh như sau
Kiểu Caacutech hoạt động File cầu higravenh Viacute dụ
S i m p l eGroup
Coacute hiệu lực trecircntừng dograveng trongfile
Extensionconf
Exten=gt4001dial(sip400)
O p t i o ninheritance
Dograveng khai baacuteosau thừa kếnhững thocircng sốkhai baacuteo trước
Zapataconf [channels]
Context=From_PSTN
Signalling=fxs_ks
Group=1Channel=gt1
C o m p l e xEntity
Mỗi entity nhậnmột ngữ cảnh
sipconf
iaxconf
[cisco]
Type=friend
Secret=12345
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5172
Taacutec Giả Lecirc Quốc Toagraven
51
Host=192168165
Context=NoiBo
[xten]
Type=friend
Secret=6789
Host=dynamic
Context=NoiBo
1 Simple Group
Đacircy lagrave kiểu cấu higravenh đơn giản nhất thường sử dụng trong caacutec fileextentionconf meetmeconf voicemailconf tương ứng với mỗi dograveng khai baacuteo lagravemột đối tượng coacute yacute nghĩa trecircn dograveng đoacute
Viacute dụ
Extentionconf [section]
object1=gt op1op2op3
object2=gt op1bop2bop3b
Trong viacute dụ trecircn mỗi dograveng tương ứng với caacutec toaacuten tử khaacutec nhau object1 coacute caacutectoaacuten từ op1 op2 op3 trong khi đoacute object2 lại coacute caacutec toaacuten từ op1b op2b op3b
2 Option inheritance
Đacircy lagrave cấu higravenh kiểu thừa kế thường được cấu higravenh trong caacutec file zapataconfagentconf với kiểu cấu higravenh nagravey thigrave caacutec dograveng phiacutea dưới coacute thể thừa kế caacutec thocircng sdograveng phiacutea trecircn tương ứng với mỗi section caacutec dograveng phiacutea dưới coacute thể thay đổi caacutecthocircng số cho tươngứng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5272
Taacutec Giả Lecirc Quốc Toagraven
52
Viacute dụ
Extentionconf
[section]
Op1=bas
Op2=adv
Object1=gt1
Op1=int
Object1=gt2
Với cấu higravenh trecircn coacute thể giải thiacutech như sau object1=gt1 thừa hưởng hai thocircngsố ở phiacutea trecircn đoacute lagrave op1=bas vagrave op2=adv trong khi đoacute đối với object1=gt2 với thocircngsố op1=int được khai baacuteo lại necircn object1=gt2 được thừa kế từ hai thocircng số op1=invagrave op2=adv
3 Complex Entity
Với cấu kiểu nagravey được tổ chức thagravenh nhiều entity ứng với mỗi entity coacute nhiềthocircng số được khai baacuteo mỗi entity ở đacircy chiacutenh lagrave caacutec section để khai baacuteo caacutec kecircnhthocircng tin Cấu higravenh thường được sử dụng trong caacutec file iaxconf sipconf
Viacute dụ
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5372
Taacutec Giả Lecirc Quốc Toagraven
53
[entity1]
Op1=value1
Op2=value2
[entity2]
Op1=value3
Op2=value4
Entity1 coacute caacutec giaacute trị value1 vagrave value2 cho thocircng số op1 vagrave op2 trong khi đoacute
cũng lagrave thocircng số op1 vagrave op 2 nhưng coacute caacutec giaacute trị khaacutec lagrave value3 vagrave value4 choentity2
4 Cấu higravenh giao tiếp với mạng PSTN
1 Ngữ cảnh kết nối
Để kết nối với mạng PSTN chuacuteng ta cần phải coacute một card TDM với Cổng
FXO vagrave một đường dacircy điện thoại hoặc coacute thể lagrave một tổng đagravei nội bộ PBX Cnhiều nhagrave sản xuất phần cứng khaacutec nhau nhưng trong phần cấu higravenh dưới dacircy lagrave cấhigravenh cho card zapata TDM01B của digium (card nagravey hiện nay giaacute baacuten khoảng175$)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3972
Taacutec Giả Lecirc Quốc Toagraven
39
make config
3 Cagravei đặt TrixBox
1 Giới thiệu
TRIXBOX được phaacutet triển từ nhacircn của ứng dụng Asterisk được tổng hợp từmột số thagravenh phần chiacutenh được phaacutet triển bởi cộng đồng phaacutet triển nguồn mAsterisk dưới bản quyền GPL Trixbox bao gồm những thagravenh phần chiacutenh cho việcấu higravenh ứng dụng thống kecirc tigravenh trạng hoạt động hệ thống lưu trữ dự phograveng v
nhacircn lagrave hệ điều hagravenh CentOS một phiecircn bản khaacutec của Redhat tất cả kết hợp vớnhau tạo thagravenh một goacutei hoagraven chỉnh Khi cagravei goacutei nagravey vagraveo maacutey tiacutenh thigrave coacute thể sử dụngnhư một tổng đagravei PBX
Caacutec thagravenh phần chiacutenh trong goacutei TRIXBOX lagrave
Asterisk PBX Thagravenh phần chiacutenh của hệ thống Trixbox
CentOS Một phiecircn bản Linux khaacutec của Redhat hoagraven toagraven miển phiacute sửdụng Lagrave nhacircn chiacutenh cho Trixbox
SugarCRM Hệ thống quan hệ khaacutech hagraveng CRM
A2Billing ndash Lagrave thagravenh phần dagravenh cho việc xacircy dựng hệ thống điện thoạitrả trước hay cograven gọi lagrave điện thọai thẻ (Calling Card)
Flash Operator Panel Bảng điều khiển giaacutem saacutet tigravenh trạng hoạt độngcủa caacutec maacutey điện thoại trong hệ thống
Web MeetMe Control Quản lyacute triển khai hệ thống điện thoại hội nghị
FreePBX Đacircy lagrave cocircng cụ với giao diện web dagravenh cho việc cấu higravenh hệthống Asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4072
Taacutec Giả Lecirc Quốc Toagraven
40
Hệ thống Lưu trữ dự phograveng vagrave thống kecirc Lagrave thagravenh phần của TRIXBOXcung cấp caacutec cocircng cụ cần thiết cho việc bảo trigrave bảo dưỡng hệ thống
Hệ thống Apache-Php-Mysql dagravenh cho giải phaacutep Webserver của hệthống
2 DOWNLOAD VAgrave LẮP ĐẶT TRIXBOX
Địa chỉ downloadhttpsourceforgenetprojectsasteriskathome
Khi download xong file Trixboxiso Hatildey dugraveng file nagravey Burn vagraveo CD ( xinlưu yacute lagrave dugraveng Nero hoặc chương trigravenh cheacutep đĩa ưa thiacutech rồi burn vagraveo cd_romchứ khocircng phải cheacutep file đoacute vagraveo cd_rom)
Sau khi coacute CD Hatildey boot từ CD nagravey để cagravei đặt trixbox
Chuacute yacute dữ liệu trecircn đĩa cứng sẽ bị xoacutea sạch để cagravei đặt trixbox Nếu trongđĩa cứng cograven dữ liệu hatildey backup tất cả trước khi tiến hagravenh lắp đặt trixbox
Tới đacircy lần lượt caacutec magraven higravenh chỉ dẫn sẽ hiện ra vagrave cứ theo hướng dẫn magrave cagraveđặt Sau khi cagravei đặt xong chuacuteng ta dugraveng Username root vagrave password password đểđăng nhập hệ thống
3 Cấu higravenh địa chỉ IP cho card mạng
Thiết lập địa chỉ IP bằng caacutech gotilde lệnh
netconfig
Chọn OK để thiếp lập
Nếu trong mạng coacute hỗ trợ DHCP thigrave hatildey chọn mục nagravey cograven nếu khocircng hatildeynhập địa chỉ IP tĩnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4172
Taacutec Giả Lecirc Quốc Toagraven
41
IP 19216801
Netmask 2552552550
Gateway 19216893254 ngotilde ra becircn ngoagravei
Primary nameserver 19216893200 thiết lập nếu coacute
Chọn OK để chấp nhận caacutec thiết lập trecircn
Sau khi hoagraven tất hatildey lagravem cho thiết lập coacute hiệu lực bằng caacutech reset lại
maacutey tiacutenh hoặc dugraveng lệnh sau
Service network stop
Service network start
Đến đacircy xem như cagravei đặt hoagraven tất bacircy giờ để cấu higravenh được Asterisk chuacutengta vagraveo một magravey khaacutec vagrave mở Internet Explorer hoặc một trigravenh duyệt web bất kỳ
nhập vagraveohttp19216801đatilde cấu higravenh ở trecircn vagrave tiến hagravenh cấu higravenh hệ thốngvới tagravei khoảng username maint vagrave password password
4 Tổ Chức Thư Mục của Asterisk
Asterisk sử dụng nhiều thư mục trecircn hệ thống linux để quản lyacute caacutec khiacutea cạnkhaacutec nhau của hệ thống như nghi nhận bản tin thoại caacutec bản tin nhắc thoại hoặcaacutec tập tin cấu higravenh Phần nagravey sẽ trigravenh bagravey caacutec thư mục chiacutenh yếu được tạo ra tronquaacute trigravenh lắp đặt vagrave được cấu higravenh trong tập tin Asteriskconf
1 etcasterisk
Thư mục etcasterisk chứa tất cả caacutec tập tin cấu higravenh của hệ thốngAsterisk ngoại trừ tập tin Zaptelconf được đặt tại thư mục etc Phần cứnZaptel đầu tiecircn được phaacutet triển bởi Jim Dixon thuộc nhoacutem Zapata Telephony
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4272
Taacutec Giả Lecirc Quốc Toagraven
42
Group để giao tiếp giữa maacutey tiacutenh với mạng điện thoại magrave Asterisk lại sửdụng phần cứng nagravey với lyacute do đoacute magrave file cấu higravenh zaptelconf khocircng nằmtrong thư mục etcasterisk
2 usrlibasteriskmodules
Thư mục usrlibasteriskmodules chứa tất cả caacutec module cần thiết đểasterisk hoạt động Becircn trong thư mục lagrave caacutec ứng dụng khaacutec nhau caacutec codeccaacutec định dạng acircm thanh(format) vagrave caacutec kecircnh thocircng tin(channel) Theo mặc địnhAsterisk sẽ nạp tất cả caacutec module vagraveo luacutec khởi động Chuacuteng ta coacute thể khocircng cho
nạp một module bất kỳ bằng caacutech khocircng khai baacuteo sử dụng trong tập tinmodulesconf Lưu yacute khi khocircng cho nạp module thigrave phải biết chắc module đoacutekhocircng lagravem ảnh hưởng hoạt động của asterisk nếu khocircng lỗi sẽ xuất hiện
3 varlibasterisk
Thư mục varlibasterisk chứa tập tin astdb vagrave một số thư mục con Tập tinastdb định vị thocircng tin cơ sở dữ liệu của Asterisk giống như Microsoft WindowsRegistry
Caacutec thư mục con của thư mục varlibasterisk bao gồm
agi-bin
Thư mục agi-bin chứa caacutec script của người dugraveng magrave Asterisk coacute thểđịnh vị sử dụng qua caacutec ứng dụng AGI
AGI lagrave phần giao tiếp với ngocircn ngữ lập trigravenh script để thực hiện mộtsố cocircng việc của Asterisk từ becircn ngoagravei
firmware
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4372
Taacutec Giả Lecirc Quốc Toagraven
43
Thư mục firmware chứa một số phần dẻo(firmware) cho caacutec thiết bịkhaacutec nhau tương thiacutech với Asterisk Hiện tại chỉ coacute thư mục con iax chứa
firmware cho thiếy bị IAXy của Digium IAXy lagrave thiết bị ATA sử dụng giaothức IAX
images
Caacutec ứng dụng thocircng tin với caacutec kecircnh hỗ trợ ảnh images thigrave sử dụng thư mụcnagravey Nhưng hiện tại caacutec kecircnh thocircng tin hầu như khocircng hỗ trợ truyền ảnh images necircthư mục nagravey cũng hiếm khi được sử dụng Tuy nhiecircn nếu caacutec thiết bị coacute hỗ trợ ththư mục nagravey trở necircn hiệu dụng
keys
Asterisk coacute thể sử dụng hệ thống khoaacute publicprivate để xaacutec minh caacutec kết nốgiữa caacutec server Asterisk thocircng qua chữ kyacute điện tử RSA Nếu đặt một khoaacute publicvagraveo thư mục keys thigrave kết nối của server đầu becircn kia coacute thể được xaacutec minh bằn
kecircnh thocircng tin coacute hỗ trợ đối với Asterisk thigrave kecircnh giao thức IAX hỗ trợ loại xaacutecminh nagravey Một khoaacute private khocircng bao giờ cocircng bố chuacuteng ta chỉ cocircng bố khoaacute public đến với server cần nối đến sau đoacute sẽ được xaacutec minh với khoaacute private nagravey Chai khoaacute public vagrave private được lưu với đuocirci pub vagrave key đặt tại thư mục keys
mohmp3
Khi cấu higravenh Asterisk sử dụng tiacutenh năng Music on Hold tiacutenh năng hoạt độngsẽ thực hiện lấy caacutec tập tin mp3 tại thư mục mohmp3 Tập tin định dạng theo chucủa Asterisk necircn khi sử dụng caacutec file Mp3 thocircng thường cần coacute sự chuyển đổi thiacutechợp trước khi cheacutep vagraveo thư mục trecircn để sử dụng
sounds
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4472
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4572
Taacutec Giả Lecirc Quốc Toagraven
45
Thư mục tmp sử dụng để lưu trữ những thocircng tin tạm để luocircn bảo đảm khocircnxảy ra tigravenh trạng đọc vagrave viết tập tin cugraveng một luacutec Khi yecircu cầu xử lyacute tập tin chuacuteng thao taacutec trecircn thư mục tmp trước khi lưu vagraveo tập tin điacutech
Tất cả caacutec lời nhắc thoại từ phiacutea người sử dụng vagrave caacutec lời nhắc thoại sử dụ
cho thao taacutec hộp voicemail đều được chứa trong thư mục voicemail Một hộp thưthoại được tạo ra ứng với một maacutey nội bộ trong tập tin voicemailconf sẽ được tra một thư mục con tương ứng cho maacutey nội bộ đoacute tại thư mục voicemail
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4672
Taacutec Giả Lecirc Quốc Toagraven
46
5 varrun
Thư mục varrun chứa thocircng tin process ID(pid) cho tất cả caacutec tiến trigravenh đang
hoạt động trong hệ thống bao gồm cả Asterisk Lưu yacute lagrave ứng với mỗi hệ điều hagravethư mục varrun coacute thể khaacutec
6 varlogasterisk
Thư mục varlogasterisk lagrave nơi Asterisk chứa tất cả caacutec tập tin nhật kyacute haycograven gọi lagrave tập tin log Chuacuteng ta coacute thể tuỳ biến caacutec loại thocircng tin được lưu trong caacutec
tập tin log khaacutec nhau qua tập tin cấu higravenh loggerconf đặt tại thư mục etcasterisk7 varlogasteriskcdr-csv
Thư mục varlogasteriskcdr-csv được sử dụng để lưu chi tiết cuộc gọi CDRThocircng tin mặc định về chi tiết thocircng tin cuộc gọi lưu trữ trong tập tin MasterCVSnhưng thường thigrave ứng với mỗi matilde accountcode sẽ tạo một thư mục riecircng để lưu ctiết cuộc gọi cho maacutey đoacute
5 Một số lệnh thao taacutec trecircn hệ thống asterisk
Asterisk coacute hai thagravenh phần được xacircy dụng tiacutech hợp với nhau vagrave chạy songsong nhau
Asterisk Server bigravenh thường chạy ở chế độ nền(background) giống caacutec sevicestrong window
Asterisk Client ở chế độ dograveng lệnh CLI giao tiếp với Asterisk Server thực thicaacutec lệnh để kiểm tra hay xem caacutec thocircng tin của server
Để Chạy vagrave dừng Asterisk ở chế độ nền chuacuteng ta thực hiện lệnh sau
etcinitdasterisk (start|stop)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4772
Taacutec Giả Lecirc Quốc Toagraven
47
Một khi Asterisk đatilde chạy chuacuteng ta coacute thể chuyển qua chế độ CLI từ dấu nhắlệnh của linux như sau
asterisk ndashr
Khi vagraveo chế độ lệnh nếu muốn thoaacutet về lại dấu nhắc linux chuacuteng ta dugraveng lệnh
CLIgtexit
Caacutec lệnh cơ bản thực hiện tại CLIgt
Bất cứ khi nagraveo chỉnh sửa caacutec tập tin cấu higravenh chuacuteng ta đều cần phải nạp lại đcaacutec thay đổi coacute hiệu lực điều đoacute thực hiện bằng lệnh
CLIgtreload
Bậc chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 debug
CLIgt SIP debug
Tắt chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 no debug
CLIgt SIP no debug
Hiển thị caacutec trạng thaacutei thocircng tin của users peers vagravechannels của SIP hoặc IAX2
CLIgt sip show users
CLIgt sip show peers
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4872
Taacutec Giả Lecirc Quốc Toagraven
48
CLIgt sip show channels
CLIgt iax2 show peers
CLIgt iax2 show users
CLIgt iax2 show channels
Đến thời điểm nagravey coacute thể noacutei chuacuteng ta đatilde hoagraven thagravenh cagravei đặt hệ thốngAsterisk cagravei đặt xong mới lagrave bước mở đầu để cho hệ thống Asterisk hoạt động vtừng ứng dụng cụ thể chuacuteng sẽ tiếp tục thực hiện caacutec giai đoạn được xem lagrave qutrọng nhất trong việc triển khai hệ thống Asterisk đoacute lagrave giai đoạn cấu higravenh hệ thốnlecircn kế hoạch Diaplan chương cograven lại đều nhắm đến mục tiecircu nagravey
4 CẤU HIgraveNH HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Sau khi hoagraven tất phần cagravei đặt hệ thống asterisk một bước quan trọng tiếp thelagrave cấu higravenh hệ thống coacute thể noacutei đacircy lagrave bước quan trọng nhất của việc khiển khai thống đến với từng ứng dụng cụ thể Trong chương nagravey xin giới thiệu caacutei nhigraven đầtiecircn về việc cấu higravenh trước khi đi sacircu hơn ở những chương sau những gigrave giới thiệ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4972
Taacutec Giả Lecirc Quốc Toagraven
49
trong chương nagravey lagrave nền moacuteng cơ bản nhưng đủ để hiểu lagravem thế nagraveo hệ thống coacute thoạt động được nội dung chiacutenh bao gồm
+ Thao taacutec cấu higravenh trecircn hệ thống tập tin của asterisk
+ Caacutech cagravei đặt phần mềm softphone trecircn cocircng nghệ sip
+ Cấu higravenh cho hai maacutey softphone liecircn lạc với nhau
+ Cấu higravenh phaacutet thocircng điệp
+ Quay số qua Sip vagrave mạng PSTN
2 Tập Tin cấu higravenh
Tất cả caacutec file cấu higravenh cho hệ thống asterisk đều nằm tại thư mục etcasterisngoại trừ file zaptelconf cấu higravenh cho phần cứng TDM nằm tại thư mục etc caacutecthức cấu higravenh giống như tập tin ini của window vậy Caacutec nội dung sau dấu chấm phảy lagrave nội dung chuacute thiacutech trong file cấu higravenh giống như chuacute thiacutech trong ngocircn ngữ
lập trigravenh C lagrave dấu Tất cả caacutec khoảng trắng trong tập tin đều được bỏ qua khocircng yacute nghĩa trong file cấu higravenh
Trong file cấu higravenh cograven coacute hai pheacutep gaacuten rất thường xuyecircn được sử dụng pheacutep gaacuten ldquo=rdquo lagrave dugraveng cho việc gaacuten caacutec biến cograven pheacutep gaacuten ldquo=gtrdquo dugraveng cho việc gaacutencaacutec đối tượng sau đacircy lagrave một viacute dụ cho file cấu higravenh
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5072
Taacutec Giả Lecirc Quốc Toagraven
50
Đacircy lagrave caacutec dograveng chuacute thiacutech
[section]
Key=value gaacuten giaacute trị cho biến
[section2]
Key=gtobject Gaacuten giaacute trị cho đối tượng
Cuacute phaacutep thực hiện giống nhau cho tất cả caacutec file cấu higravenh nhưng coacute vagravei kiểukhaacutec nhau cho mỗi file cầu higravenh dựa vagraveo thức caacutech hoạt động của chuacuteng
3 Caacutec kiểu ảnh hưởng trong tập cấu higravenh
Coacute ba kiểu caacutech thức hoạt động của tập tin cấu higravenh như sau
Kiểu Caacutech hoạt động File cầu higravenh Viacute dụ
S i m p l eGroup
Coacute hiệu lực trecircntừng dograveng trongfile
Extensionconf
Exten=gt4001dial(sip400)
O p t i o ninheritance
Dograveng khai baacuteosau thừa kếnhững thocircng sốkhai baacuteo trước
Zapataconf [channels]
Context=From_PSTN
Signalling=fxs_ks
Group=1Channel=gt1
C o m p l e xEntity
Mỗi entity nhậnmột ngữ cảnh
sipconf
iaxconf
[cisco]
Type=friend
Secret=12345
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5172
Taacutec Giả Lecirc Quốc Toagraven
51
Host=192168165
Context=NoiBo
[xten]
Type=friend
Secret=6789
Host=dynamic
Context=NoiBo
1 Simple Group
Đacircy lagrave kiểu cấu higravenh đơn giản nhất thường sử dụng trong caacutec fileextentionconf meetmeconf voicemailconf tương ứng với mỗi dograveng khai baacuteo lagravemột đối tượng coacute yacute nghĩa trecircn dograveng đoacute
Viacute dụ
Extentionconf [section]
object1=gt op1op2op3
object2=gt op1bop2bop3b
Trong viacute dụ trecircn mỗi dograveng tương ứng với caacutec toaacuten tử khaacutec nhau object1 coacute caacutectoaacuten từ op1 op2 op3 trong khi đoacute object2 lại coacute caacutec toaacuten từ op1b op2b op3b
2 Option inheritance
Đacircy lagrave cấu higravenh kiểu thừa kế thường được cấu higravenh trong caacutec file zapataconfagentconf với kiểu cấu higravenh nagravey thigrave caacutec dograveng phiacutea dưới coacute thể thừa kế caacutec thocircng sdograveng phiacutea trecircn tương ứng với mỗi section caacutec dograveng phiacutea dưới coacute thể thay đổi caacutecthocircng số cho tươngứng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5272
Taacutec Giả Lecirc Quốc Toagraven
52
Viacute dụ
Extentionconf
[section]
Op1=bas
Op2=adv
Object1=gt1
Op1=int
Object1=gt2
Với cấu higravenh trecircn coacute thể giải thiacutech như sau object1=gt1 thừa hưởng hai thocircngsố ở phiacutea trecircn đoacute lagrave op1=bas vagrave op2=adv trong khi đoacute đối với object1=gt2 với thocircngsố op1=int được khai baacuteo lại necircn object1=gt2 được thừa kế từ hai thocircng số op1=invagrave op2=adv
3 Complex Entity
Với cấu kiểu nagravey được tổ chức thagravenh nhiều entity ứng với mỗi entity coacute nhiềthocircng số được khai baacuteo mỗi entity ở đacircy chiacutenh lagrave caacutec section để khai baacuteo caacutec kecircnhthocircng tin Cấu higravenh thường được sử dụng trong caacutec file iaxconf sipconf
Viacute dụ
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5372
Taacutec Giả Lecirc Quốc Toagraven
53
[entity1]
Op1=value1
Op2=value2
[entity2]
Op1=value3
Op2=value4
Entity1 coacute caacutec giaacute trị value1 vagrave value2 cho thocircng số op1 vagrave op2 trong khi đoacute
cũng lagrave thocircng số op1 vagrave op 2 nhưng coacute caacutec giaacute trị khaacutec lagrave value3 vagrave value4 choentity2
4 Cấu higravenh giao tiếp với mạng PSTN
1 Ngữ cảnh kết nối
Để kết nối với mạng PSTN chuacuteng ta cần phải coacute một card TDM với Cổng
FXO vagrave một đường dacircy điện thoại hoặc coacute thể lagrave một tổng đagravei nội bộ PBX Cnhiều nhagrave sản xuất phần cứng khaacutec nhau nhưng trong phần cấu higravenh dưới dacircy lagrave cấhigravenh cho card zapata TDM01B của digium (card nagravey hiện nay giaacute baacuten khoảng175$)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 3972
Taacutec Giả Lecirc Quốc Toagraven
39
make config
3 Cagravei đặt TrixBox
1 Giới thiệu
TRIXBOX được phaacutet triển từ nhacircn của ứng dụng Asterisk được tổng hợp từmột số thagravenh phần chiacutenh được phaacutet triển bởi cộng đồng phaacutet triển nguồn mAsterisk dưới bản quyền GPL Trixbox bao gồm những thagravenh phần chiacutenh cho việcấu higravenh ứng dụng thống kecirc tigravenh trạng hoạt động hệ thống lưu trữ dự phograveng v
nhacircn lagrave hệ điều hagravenh CentOS một phiecircn bản khaacutec của Redhat tất cả kết hợp vớnhau tạo thagravenh một goacutei hoagraven chỉnh Khi cagravei goacutei nagravey vagraveo maacutey tiacutenh thigrave coacute thể sử dụngnhư một tổng đagravei PBX
Caacutec thagravenh phần chiacutenh trong goacutei TRIXBOX lagrave
Asterisk PBX Thagravenh phần chiacutenh của hệ thống Trixbox
CentOS Một phiecircn bản Linux khaacutec của Redhat hoagraven toagraven miển phiacute sửdụng Lagrave nhacircn chiacutenh cho Trixbox
SugarCRM Hệ thống quan hệ khaacutech hagraveng CRM
A2Billing ndash Lagrave thagravenh phần dagravenh cho việc xacircy dựng hệ thống điện thoạitrả trước hay cograven gọi lagrave điện thọai thẻ (Calling Card)
Flash Operator Panel Bảng điều khiển giaacutem saacutet tigravenh trạng hoạt độngcủa caacutec maacutey điện thoại trong hệ thống
Web MeetMe Control Quản lyacute triển khai hệ thống điện thoại hội nghị
FreePBX Đacircy lagrave cocircng cụ với giao diện web dagravenh cho việc cấu higravenh hệthống Asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4072
Taacutec Giả Lecirc Quốc Toagraven
40
Hệ thống Lưu trữ dự phograveng vagrave thống kecirc Lagrave thagravenh phần của TRIXBOXcung cấp caacutec cocircng cụ cần thiết cho việc bảo trigrave bảo dưỡng hệ thống
Hệ thống Apache-Php-Mysql dagravenh cho giải phaacutep Webserver của hệthống
2 DOWNLOAD VAgrave LẮP ĐẶT TRIXBOX
Địa chỉ downloadhttpsourceforgenetprojectsasteriskathome
Khi download xong file Trixboxiso Hatildey dugraveng file nagravey Burn vagraveo CD ( xinlưu yacute lagrave dugraveng Nero hoặc chương trigravenh cheacutep đĩa ưa thiacutech rồi burn vagraveo cd_romchứ khocircng phải cheacutep file đoacute vagraveo cd_rom)
Sau khi coacute CD Hatildey boot từ CD nagravey để cagravei đặt trixbox
Chuacute yacute dữ liệu trecircn đĩa cứng sẽ bị xoacutea sạch để cagravei đặt trixbox Nếu trongđĩa cứng cograven dữ liệu hatildey backup tất cả trước khi tiến hagravenh lắp đặt trixbox
Tới đacircy lần lượt caacutec magraven higravenh chỉ dẫn sẽ hiện ra vagrave cứ theo hướng dẫn magrave cagraveđặt Sau khi cagravei đặt xong chuacuteng ta dugraveng Username root vagrave password password đểđăng nhập hệ thống
3 Cấu higravenh địa chỉ IP cho card mạng
Thiết lập địa chỉ IP bằng caacutech gotilde lệnh
netconfig
Chọn OK để thiếp lập
Nếu trong mạng coacute hỗ trợ DHCP thigrave hatildey chọn mục nagravey cograven nếu khocircng hatildeynhập địa chỉ IP tĩnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4172
Taacutec Giả Lecirc Quốc Toagraven
41
IP 19216801
Netmask 2552552550
Gateway 19216893254 ngotilde ra becircn ngoagravei
Primary nameserver 19216893200 thiết lập nếu coacute
Chọn OK để chấp nhận caacutec thiết lập trecircn
Sau khi hoagraven tất hatildey lagravem cho thiết lập coacute hiệu lực bằng caacutech reset lại
maacutey tiacutenh hoặc dugraveng lệnh sau
Service network stop
Service network start
Đến đacircy xem như cagravei đặt hoagraven tất bacircy giờ để cấu higravenh được Asterisk chuacutengta vagraveo một magravey khaacutec vagrave mở Internet Explorer hoặc một trigravenh duyệt web bất kỳ
nhập vagraveohttp19216801đatilde cấu higravenh ở trecircn vagrave tiến hagravenh cấu higravenh hệ thốngvới tagravei khoảng username maint vagrave password password
4 Tổ Chức Thư Mục của Asterisk
Asterisk sử dụng nhiều thư mục trecircn hệ thống linux để quản lyacute caacutec khiacutea cạnkhaacutec nhau của hệ thống như nghi nhận bản tin thoại caacutec bản tin nhắc thoại hoặcaacutec tập tin cấu higravenh Phần nagravey sẽ trigravenh bagravey caacutec thư mục chiacutenh yếu được tạo ra tronquaacute trigravenh lắp đặt vagrave được cấu higravenh trong tập tin Asteriskconf
1 etcasterisk
Thư mục etcasterisk chứa tất cả caacutec tập tin cấu higravenh của hệ thốngAsterisk ngoại trừ tập tin Zaptelconf được đặt tại thư mục etc Phần cứnZaptel đầu tiecircn được phaacutet triển bởi Jim Dixon thuộc nhoacutem Zapata Telephony
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4272
Taacutec Giả Lecirc Quốc Toagraven
42
Group để giao tiếp giữa maacutey tiacutenh với mạng điện thoại magrave Asterisk lại sửdụng phần cứng nagravey với lyacute do đoacute magrave file cấu higravenh zaptelconf khocircng nằmtrong thư mục etcasterisk
2 usrlibasteriskmodules
Thư mục usrlibasteriskmodules chứa tất cả caacutec module cần thiết đểasterisk hoạt động Becircn trong thư mục lagrave caacutec ứng dụng khaacutec nhau caacutec codeccaacutec định dạng acircm thanh(format) vagrave caacutec kecircnh thocircng tin(channel) Theo mặc địnhAsterisk sẽ nạp tất cả caacutec module vagraveo luacutec khởi động Chuacuteng ta coacute thể khocircng cho
nạp một module bất kỳ bằng caacutech khocircng khai baacuteo sử dụng trong tập tinmodulesconf Lưu yacute khi khocircng cho nạp module thigrave phải biết chắc module đoacutekhocircng lagravem ảnh hưởng hoạt động của asterisk nếu khocircng lỗi sẽ xuất hiện
3 varlibasterisk
Thư mục varlibasterisk chứa tập tin astdb vagrave một số thư mục con Tập tinastdb định vị thocircng tin cơ sở dữ liệu của Asterisk giống như Microsoft WindowsRegistry
Caacutec thư mục con của thư mục varlibasterisk bao gồm
agi-bin
Thư mục agi-bin chứa caacutec script của người dugraveng magrave Asterisk coacute thểđịnh vị sử dụng qua caacutec ứng dụng AGI
AGI lagrave phần giao tiếp với ngocircn ngữ lập trigravenh script để thực hiện mộtsố cocircng việc của Asterisk từ becircn ngoagravei
firmware
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4372
Taacutec Giả Lecirc Quốc Toagraven
43
Thư mục firmware chứa một số phần dẻo(firmware) cho caacutec thiết bịkhaacutec nhau tương thiacutech với Asterisk Hiện tại chỉ coacute thư mục con iax chứa
firmware cho thiếy bị IAXy của Digium IAXy lagrave thiết bị ATA sử dụng giaothức IAX
images
Caacutec ứng dụng thocircng tin với caacutec kecircnh hỗ trợ ảnh images thigrave sử dụng thư mụcnagravey Nhưng hiện tại caacutec kecircnh thocircng tin hầu như khocircng hỗ trợ truyền ảnh images necircthư mục nagravey cũng hiếm khi được sử dụng Tuy nhiecircn nếu caacutec thiết bị coacute hỗ trợ ththư mục nagravey trở necircn hiệu dụng
keys
Asterisk coacute thể sử dụng hệ thống khoaacute publicprivate để xaacutec minh caacutec kết nốgiữa caacutec server Asterisk thocircng qua chữ kyacute điện tử RSA Nếu đặt một khoaacute publicvagraveo thư mục keys thigrave kết nối của server đầu becircn kia coacute thể được xaacutec minh bằn
kecircnh thocircng tin coacute hỗ trợ đối với Asterisk thigrave kecircnh giao thức IAX hỗ trợ loại xaacutecminh nagravey Một khoaacute private khocircng bao giờ cocircng bố chuacuteng ta chỉ cocircng bố khoaacute public đến với server cần nối đến sau đoacute sẽ được xaacutec minh với khoaacute private nagravey Chai khoaacute public vagrave private được lưu với đuocirci pub vagrave key đặt tại thư mục keys
mohmp3
Khi cấu higravenh Asterisk sử dụng tiacutenh năng Music on Hold tiacutenh năng hoạt độngsẽ thực hiện lấy caacutec tập tin mp3 tại thư mục mohmp3 Tập tin định dạng theo chucủa Asterisk necircn khi sử dụng caacutec file Mp3 thocircng thường cần coacute sự chuyển đổi thiacutechợp trước khi cheacutep vagraveo thư mục trecircn để sử dụng
sounds
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4472
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4572
Taacutec Giả Lecirc Quốc Toagraven
45
Thư mục tmp sử dụng để lưu trữ những thocircng tin tạm để luocircn bảo đảm khocircnxảy ra tigravenh trạng đọc vagrave viết tập tin cugraveng một luacutec Khi yecircu cầu xử lyacute tập tin chuacuteng thao taacutec trecircn thư mục tmp trước khi lưu vagraveo tập tin điacutech
Tất cả caacutec lời nhắc thoại từ phiacutea người sử dụng vagrave caacutec lời nhắc thoại sử dụ
cho thao taacutec hộp voicemail đều được chứa trong thư mục voicemail Một hộp thưthoại được tạo ra ứng với một maacutey nội bộ trong tập tin voicemailconf sẽ được tra một thư mục con tương ứng cho maacutey nội bộ đoacute tại thư mục voicemail
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4672
Taacutec Giả Lecirc Quốc Toagraven
46
5 varrun
Thư mục varrun chứa thocircng tin process ID(pid) cho tất cả caacutec tiến trigravenh đang
hoạt động trong hệ thống bao gồm cả Asterisk Lưu yacute lagrave ứng với mỗi hệ điều hagravethư mục varrun coacute thể khaacutec
6 varlogasterisk
Thư mục varlogasterisk lagrave nơi Asterisk chứa tất cả caacutec tập tin nhật kyacute haycograven gọi lagrave tập tin log Chuacuteng ta coacute thể tuỳ biến caacutec loại thocircng tin được lưu trong caacutec
tập tin log khaacutec nhau qua tập tin cấu higravenh loggerconf đặt tại thư mục etcasterisk7 varlogasteriskcdr-csv
Thư mục varlogasteriskcdr-csv được sử dụng để lưu chi tiết cuộc gọi CDRThocircng tin mặc định về chi tiết thocircng tin cuộc gọi lưu trữ trong tập tin MasterCVSnhưng thường thigrave ứng với mỗi matilde accountcode sẽ tạo một thư mục riecircng để lưu ctiết cuộc gọi cho maacutey đoacute
5 Một số lệnh thao taacutec trecircn hệ thống asterisk
Asterisk coacute hai thagravenh phần được xacircy dụng tiacutech hợp với nhau vagrave chạy songsong nhau
Asterisk Server bigravenh thường chạy ở chế độ nền(background) giống caacutec sevicestrong window
Asterisk Client ở chế độ dograveng lệnh CLI giao tiếp với Asterisk Server thực thicaacutec lệnh để kiểm tra hay xem caacutec thocircng tin của server
Để Chạy vagrave dừng Asterisk ở chế độ nền chuacuteng ta thực hiện lệnh sau
etcinitdasterisk (start|stop)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4772
Taacutec Giả Lecirc Quốc Toagraven
47
Một khi Asterisk đatilde chạy chuacuteng ta coacute thể chuyển qua chế độ CLI từ dấu nhắlệnh của linux như sau
asterisk ndashr
Khi vagraveo chế độ lệnh nếu muốn thoaacutet về lại dấu nhắc linux chuacuteng ta dugraveng lệnh
CLIgtexit
Caacutec lệnh cơ bản thực hiện tại CLIgt
Bất cứ khi nagraveo chỉnh sửa caacutec tập tin cấu higravenh chuacuteng ta đều cần phải nạp lại đcaacutec thay đổi coacute hiệu lực điều đoacute thực hiện bằng lệnh
CLIgtreload
Bậc chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 debug
CLIgt SIP debug
Tắt chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 no debug
CLIgt SIP no debug
Hiển thị caacutec trạng thaacutei thocircng tin của users peers vagravechannels của SIP hoặc IAX2
CLIgt sip show users
CLIgt sip show peers
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4872
Taacutec Giả Lecirc Quốc Toagraven
48
CLIgt sip show channels
CLIgt iax2 show peers
CLIgt iax2 show users
CLIgt iax2 show channels
Đến thời điểm nagravey coacute thể noacutei chuacuteng ta đatilde hoagraven thagravenh cagravei đặt hệ thốngAsterisk cagravei đặt xong mới lagrave bước mở đầu để cho hệ thống Asterisk hoạt động vtừng ứng dụng cụ thể chuacuteng sẽ tiếp tục thực hiện caacutec giai đoạn được xem lagrave qutrọng nhất trong việc triển khai hệ thống Asterisk đoacute lagrave giai đoạn cấu higravenh hệ thốnlecircn kế hoạch Diaplan chương cograven lại đều nhắm đến mục tiecircu nagravey
4 CẤU HIgraveNH HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Sau khi hoagraven tất phần cagravei đặt hệ thống asterisk một bước quan trọng tiếp thelagrave cấu higravenh hệ thống coacute thể noacutei đacircy lagrave bước quan trọng nhất của việc khiển khai thống đến với từng ứng dụng cụ thể Trong chương nagravey xin giới thiệu caacutei nhigraven đầtiecircn về việc cấu higravenh trước khi đi sacircu hơn ở những chương sau những gigrave giới thiệ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4972
Taacutec Giả Lecirc Quốc Toagraven
49
trong chương nagravey lagrave nền moacuteng cơ bản nhưng đủ để hiểu lagravem thế nagraveo hệ thống coacute thoạt động được nội dung chiacutenh bao gồm
+ Thao taacutec cấu higravenh trecircn hệ thống tập tin của asterisk
+ Caacutech cagravei đặt phần mềm softphone trecircn cocircng nghệ sip
+ Cấu higravenh cho hai maacutey softphone liecircn lạc với nhau
+ Cấu higravenh phaacutet thocircng điệp
+ Quay số qua Sip vagrave mạng PSTN
2 Tập Tin cấu higravenh
Tất cả caacutec file cấu higravenh cho hệ thống asterisk đều nằm tại thư mục etcasterisngoại trừ file zaptelconf cấu higravenh cho phần cứng TDM nằm tại thư mục etc caacutecthức cấu higravenh giống như tập tin ini của window vậy Caacutec nội dung sau dấu chấm phảy lagrave nội dung chuacute thiacutech trong file cấu higravenh giống như chuacute thiacutech trong ngocircn ngữ
lập trigravenh C lagrave dấu Tất cả caacutec khoảng trắng trong tập tin đều được bỏ qua khocircng yacute nghĩa trong file cấu higravenh
Trong file cấu higravenh cograven coacute hai pheacutep gaacuten rất thường xuyecircn được sử dụng pheacutep gaacuten ldquo=rdquo lagrave dugraveng cho việc gaacuten caacutec biến cograven pheacutep gaacuten ldquo=gtrdquo dugraveng cho việc gaacutencaacutec đối tượng sau đacircy lagrave một viacute dụ cho file cấu higravenh
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5072
Taacutec Giả Lecirc Quốc Toagraven
50
Đacircy lagrave caacutec dograveng chuacute thiacutech
[section]
Key=value gaacuten giaacute trị cho biến
[section2]
Key=gtobject Gaacuten giaacute trị cho đối tượng
Cuacute phaacutep thực hiện giống nhau cho tất cả caacutec file cấu higravenh nhưng coacute vagravei kiểukhaacutec nhau cho mỗi file cầu higravenh dựa vagraveo thức caacutech hoạt động của chuacuteng
3 Caacutec kiểu ảnh hưởng trong tập cấu higravenh
Coacute ba kiểu caacutech thức hoạt động của tập tin cấu higravenh như sau
Kiểu Caacutech hoạt động File cầu higravenh Viacute dụ
S i m p l eGroup
Coacute hiệu lực trecircntừng dograveng trongfile
Extensionconf
Exten=gt4001dial(sip400)
O p t i o ninheritance
Dograveng khai baacuteosau thừa kếnhững thocircng sốkhai baacuteo trước
Zapataconf [channels]
Context=From_PSTN
Signalling=fxs_ks
Group=1Channel=gt1
C o m p l e xEntity
Mỗi entity nhậnmột ngữ cảnh
sipconf
iaxconf
[cisco]
Type=friend
Secret=12345
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5172
Taacutec Giả Lecirc Quốc Toagraven
51
Host=192168165
Context=NoiBo
[xten]
Type=friend
Secret=6789
Host=dynamic
Context=NoiBo
1 Simple Group
Đacircy lagrave kiểu cấu higravenh đơn giản nhất thường sử dụng trong caacutec fileextentionconf meetmeconf voicemailconf tương ứng với mỗi dograveng khai baacuteo lagravemột đối tượng coacute yacute nghĩa trecircn dograveng đoacute
Viacute dụ
Extentionconf [section]
object1=gt op1op2op3
object2=gt op1bop2bop3b
Trong viacute dụ trecircn mỗi dograveng tương ứng với caacutec toaacuten tử khaacutec nhau object1 coacute caacutectoaacuten từ op1 op2 op3 trong khi đoacute object2 lại coacute caacutec toaacuten từ op1b op2b op3b
2 Option inheritance
Đacircy lagrave cấu higravenh kiểu thừa kế thường được cấu higravenh trong caacutec file zapataconfagentconf với kiểu cấu higravenh nagravey thigrave caacutec dograveng phiacutea dưới coacute thể thừa kế caacutec thocircng sdograveng phiacutea trecircn tương ứng với mỗi section caacutec dograveng phiacutea dưới coacute thể thay đổi caacutecthocircng số cho tươngứng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5272
Taacutec Giả Lecirc Quốc Toagraven
52
Viacute dụ
Extentionconf
[section]
Op1=bas
Op2=adv
Object1=gt1
Op1=int
Object1=gt2
Với cấu higravenh trecircn coacute thể giải thiacutech như sau object1=gt1 thừa hưởng hai thocircngsố ở phiacutea trecircn đoacute lagrave op1=bas vagrave op2=adv trong khi đoacute đối với object1=gt2 với thocircngsố op1=int được khai baacuteo lại necircn object1=gt2 được thừa kế từ hai thocircng số op1=invagrave op2=adv
3 Complex Entity
Với cấu kiểu nagravey được tổ chức thagravenh nhiều entity ứng với mỗi entity coacute nhiềthocircng số được khai baacuteo mỗi entity ở đacircy chiacutenh lagrave caacutec section để khai baacuteo caacutec kecircnhthocircng tin Cấu higravenh thường được sử dụng trong caacutec file iaxconf sipconf
Viacute dụ
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5372
Taacutec Giả Lecirc Quốc Toagraven
53
[entity1]
Op1=value1
Op2=value2
[entity2]
Op1=value3
Op2=value4
Entity1 coacute caacutec giaacute trị value1 vagrave value2 cho thocircng số op1 vagrave op2 trong khi đoacute
cũng lagrave thocircng số op1 vagrave op 2 nhưng coacute caacutec giaacute trị khaacutec lagrave value3 vagrave value4 choentity2
4 Cấu higravenh giao tiếp với mạng PSTN
1 Ngữ cảnh kết nối
Để kết nối với mạng PSTN chuacuteng ta cần phải coacute một card TDM với Cổng
FXO vagrave một đường dacircy điện thoại hoặc coacute thể lagrave một tổng đagravei nội bộ PBX Cnhiều nhagrave sản xuất phần cứng khaacutec nhau nhưng trong phần cấu higravenh dưới dacircy lagrave cấhigravenh cho card zapata TDM01B của digium (card nagravey hiện nay giaacute baacuten khoảng175$)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4072
Taacutec Giả Lecirc Quốc Toagraven
40
Hệ thống Lưu trữ dự phograveng vagrave thống kecirc Lagrave thagravenh phần của TRIXBOXcung cấp caacutec cocircng cụ cần thiết cho việc bảo trigrave bảo dưỡng hệ thống
Hệ thống Apache-Php-Mysql dagravenh cho giải phaacutep Webserver của hệthống
2 DOWNLOAD VAgrave LẮP ĐẶT TRIXBOX
Địa chỉ downloadhttpsourceforgenetprojectsasteriskathome
Khi download xong file Trixboxiso Hatildey dugraveng file nagravey Burn vagraveo CD ( xinlưu yacute lagrave dugraveng Nero hoặc chương trigravenh cheacutep đĩa ưa thiacutech rồi burn vagraveo cd_romchứ khocircng phải cheacutep file đoacute vagraveo cd_rom)
Sau khi coacute CD Hatildey boot từ CD nagravey để cagravei đặt trixbox
Chuacute yacute dữ liệu trecircn đĩa cứng sẽ bị xoacutea sạch để cagravei đặt trixbox Nếu trongđĩa cứng cograven dữ liệu hatildey backup tất cả trước khi tiến hagravenh lắp đặt trixbox
Tới đacircy lần lượt caacutec magraven higravenh chỉ dẫn sẽ hiện ra vagrave cứ theo hướng dẫn magrave cagraveđặt Sau khi cagravei đặt xong chuacuteng ta dugraveng Username root vagrave password password đểđăng nhập hệ thống
3 Cấu higravenh địa chỉ IP cho card mạng
Thiết lập địa chỉ IP bằng caacutech gotilde lệnh
netconfig
Chọn OK để thiếp lập
Nếu trong mạng coacute hỗ trợ DHCP thigrave hatildey chọn mục nagravey cograven nếu khocircng hatildeynhập địa chỉ IP tĩnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4172
Taacutec Giả Lecirc Quốc Toagraven
41
IP 19216801
Netmask 2552552550
Gateway 19216893254 ngotilde ra becircn ngoagravei
Primary nameserver 19216893200 thiết lập nếu coacute
Chọn OK để chấp nhận caacutec thiết lập trecircn
Sau khi hoagraven tất hatildey lagravem cho thiết lập coacute hiệu lực bằng caacutech reset lại
maacutey tiacutenh hoặc dugraveng lệnh sau
Service network stop
Service network start
Đến đacircy xem như cagravei đặt hoagraven tất bacircy giờ để cấu higravenh được Asterisk chuacutengta vagraveo một magravey khaacutec vagrave mở Internet Explorer hoặc một trigravenh duyệt web bất kỳ
nhập vagraveohttp19216801đatilde cấu higravenh ở trecircn vagrave tiến hagravenh cấu higravenh hệ thốngvới tagravei khoảng username maint vagrave password password
4 Tổ Chức Thư Mục của Asterisk
Asterisk sử dụng nhiều thư mục trecircn hệ thống linux để quản lyacute caacutec khiacutea cạnkhaacutec nhau của hệ thống như nghi nhận bản tin thoại caacutec bản tin nhắc thoại hoặcaacutec tập tin cấu higravenh Phần nagravey sẽ trigravenh bagravey caacutec thư mục chiacutenh yếu được tạo ra tronquaacute trigravenh lắp đặt vagrave được cấu higravenh trong tập tin Asteriskconf
1 etcasterisk
Thư mục etcasterisk chứa tất cả caacutec tập tin cấu higravenh của hệ thốngAsterisk ngoại trừ tập tin Zaptelconf được đặt tại thư mục etc Phần cứnZaptel đầu tiecircn được phaacutet triển bởi Jim Dixon thuộc nhoacutem Zapata Telephony
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4272
Taacutec Giả Lecirc Quốc Toagraven
42
Group để giao tiếp giữa maacutey tiacutenh với mạng điện thoại magrave Asterisk lại sửdụng phần cứng nagravey với lyacute do đoacute magrave file cấu higravenh zaptelconf khocircng nằmtrong thư mục etcasterisk
2 usrlibasteriskmodules
Thư mục usrlibasteriskmodules chứa tất cả caacutec module cần thiết đểasterisk hoạt động Becircn trong thư mục lagrave caacutec ứng dụng khaacutec nhau caacutec codeccaacutec định dạng acircm thanh(format) vagrave caacutec kecircnh thocircng tin(channel) Theo mặc địnhAsterisk sẽ nạp tất cả caacutec module vagraveo luacutec khởi động Chuacuteng ta coacute thể khocircng cho
nạp một module bất kỳ bằng caacutech khocircng khai baacuteo sử dụng trong tập tinmodulesconf Lưu yacute khi khocircng cho nạp module thigrave phải biết chắc module đoacutekhocircng lagravem ảnh hưởng hoạt động của asterisk nếu khocircng lỗi sẽ xuất hiện
3 varlibasterisk
Thư mục varlibasterisk chứa tập tin astdb vagrave một số thư mục con Tập tinastdb định vị thocircng tin cơ sở dữ liệu của Asterisk giống như Microsoft WindowsRegistry
Caacutec thư mục con của thư mục varlibasterisk bao gồm
agi-bin
Thư mục agi-bin chứa caacutec script của người dugraveng magrave Asterisk coacute thểđịnh vị sử dụng qua caacutec ứng dụng AGI
AGI lagrave phần giao tiếp với ngocircn ngữ lập trigravenh script để thực hiện mộtsố cocircng việc của Asterisk từ becircn ngoagravei
firmware
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4372
Taacutec Giả Lecirc Quốc Toagraven
43
Thư mục firmware chứa một số phần dẻo(firmware) cho caacutec thiết bịkhaacutec nhau tương thiacutech với Asterisk Hiện tại chỉ coacute thư mục con iax chứa
firmware cho thiếy bị IAXy của Digium IAXy lagrave thiết bị ATA sử dụng giaothức IAX
images
Caacutec ứng dụng thocircng tin với caacutec kecircnh hỗ trợ ảnh images thigrave sử dụng thư mụcnagravey Nhưng hiện tại caacutec kecircnh thocircng tin hầu như khocircng hỗ trợ truyền ảnh images necircthư mục nagravey cũng hiếm khi được sử dụng Tuy nhiecircn nếu caacutec thiết bị coacute hỗ trợ ththư mục nagravey trở necircn hiệu dụng
keys
Asterisk coacute thể sử dụng hệ thống khoaacute publicprivate để xaacutec minh caacutec kết nốgiữa caacutec server Asterisk thocircng qua chữ kyacute điện tử RSA Nếu đặt một khoaacute publicvagraveo thư mục keys thigrave kết nối của server đầu becircn kia coacute thể được xaacutec minh bằn
kecircnh thocircng tin coacute hỗ trợ đối với Asterisk thigrave kecircnh giao thức IAX hỗ trợ loại xaacutecminh nagravey Một khoaacute private khocircng bao giờ cocircng bố chuacuteng ta chỉ cocircng bố khoaacute public đến với server cần nối đến sau đoacute sẽ được xaacutec minh với khoaacute private nagravey Chai khoaacute public vagrave private được lưu với đuocirci pub vagrave key đặt tại thư mục keys
mohmp3
Khi cấu higravenh Asterisk sử dụng tiacutenh năng Music on Hold tiacutenh năng hoạt độngsẽ thực hiện lấy caacutec tập tin mp3 tại thư mục mohmp3 Tập tin định dạng theo chucủa Asterisk necircn khi sử dụng caacutec file Mp3 thocircng thường cần coacute sự chuyển đổi thiacutechợp trước khi cheacutep vagraveo thư mục trecircn để sử dụng
sounds
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4472
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4572
Taacutec Giả Lecirc Quốc Toagraven
45
Thư mục tmp sử dụng để lưu trữ những thocircng tin tạm để luocircn bảo đảm khocircnxảy ra tigravenh trạng đọc vagrave viết tập tin cugraveng một luacutec Khi yecircu cầu xử lyacute tập tin chuacuteng thao taacutec trecircn thư mục tmp trước khi lưu vagraveo tập tin điacutech
Tất cả caacutec lời nhắc thoại từ phiacutea người sử dụng vagrave caacutec lời nhắc thoại sử dụ
cho thao taacutec hộp voicemail đều được chứa trong thư mục voicemail Một hộp thưthoại được tạo ra ứng với một maacutey nội bộ trong tập tin voicemailconf sẽ được tra một thư mục con tương ứng cho maacutey nội bộ đoacute tại thư mục voicemail
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4672
Taacutec Giả Lecirc Quốc Toagraven
46
5 varrun
Thư mục varrun chứa thocircng tin process ID(pid) cho tất cả caacutec tiến trigravenh đang
hoạt động trong hệ thống bao gồm cả Asterisk Lưu yacute lagrave ứng với mỗi hệ điều hagravethư mục varrun coacute thể khaacutec
6 varlogasterisk
Thư mục varlogasterisk lagrave nơi Asterisk chứa tất cả caacutec tập tin nhật kyacute haycograven gọi lagrave tập tin log Chuacuteng ta coacute thể tuỳ biến caacutec loại thocircng tin được lưu trong caacutec
tập tin log khaacutec nhau qua tập tin cấu higravenh loggerconf đặt tại thư mục etcasterisk7 varlogasteriskcdr-csv
Thư mục varlogasteriskcdr-csv được sử dụng để lưu chi tiết cuộc gọi CDRThocircng tin mặc định về chi tiết thocircng tin cuộc gọi lưu trữ trong tập tin MasterCVSnhưng thường thigrave ứng với mỗi matilde accountcode sẽ tạo một thư mục riecircng để lưu ctiết cuộc gọi cho maacutey đoacute
5 Một số lệnh thao taacutec trecircn hệ thống asterisk
Asterisk coacute hai thagravenh phần được xacircy dụng tiacutech hợp với nhau vagrave chạy songsong nhau
Asterisk Server bigravenh thường chạy ở chế độ nền(background) giống caacutec sevicestrong window
Asterisk Client ở chế độ dograveng lệnh CLI giao tiếp với Asterisk Server thực thicaacutec lệnh để kiểm tra hay xem caacutec thocircng tin của server
Để Chạy vagrave dừng Asterisk ở chế độ nền chuacuteng ta thực hiện lệnh sau
etcinitdasterisk (start|stop)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4772
Taacutec Giả Lecirc Quốc Toagraven
47
Một khi Asterisk đatilde chạy chuacuteng ta coacute thể chuyển qua chế độ CLI từ dấu nhắlệnh của linux như sau
asterisk ndashr
Khi vagraveo chế độ lệnh nếu muốn thoaacutet về lại dấu nhắc linux chuacuteng ta dugraveng lệnh
CLIgtexit
Caacutec lệnh cơ bản thực hiện tại CLIgt
Bất cứ khi nagraveo chỉnh sửa caacutec tập tin cấu higravenh chuacuteng ta đều cần phải nạp lại đcaacutec thay đổi coacute hiệu lực điều đoacute thực hiện bằng lệnh
CLIgtreload
Bậc chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 debug
CLIgt SIP debug
Tắt chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 no debug
CLIgt SIP no debug
Hiển thị caacutec trạng thaacutei thocircng tin của users peers vagravechannels của SIP hoặc IAX2
CLIgt sip show users
CLIgt sip show peers
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4872
Taacutec Giả Lecirc Quốc Toagraven
48
CLIgt sip show channels
CLIgt iax2 show peers
CLIgt iax2 show users
CLIgt iax2 show channels
Đến thời điểm nagravey coacute thể noacutei chuacuteng ta đatilde hoagraven thagravenh cagravei đặt hệ thốngAsterisk cagravei đặt xong mới lagrave bước mở đầu để cho hệ thống Asterisk hoạt động vtừng ứng dụng cụ thể chuacuteng sẽ tiếp tục thực hiện caacutec giai đoạn được xem lagrave qutrọng nhất trong việc triển khai hệ thống Asterisk đoacute lagrave giai đoạn cấu higravenh hệ thốnlecircn kế hoạch Diaplan chương cograven lại đều nhắm đến mục tiecircu nagravey
4 CẤU HIgraveNH HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Sau khi hoagraven tất phần cagravei đặt hệ thống asterisk một bước quan trọng tiếp thelagrave cấu higravenh hệ thống coacute thể noacutei đacircy lagrave bước quan trọng nhất của việc khiển khai thống đến với từng ứng dụng cụ thể Trong chương nagravey xin giới thiệu caacutei nhigraven đầtiecircn về việc cấu higravenh trước khi đi sacircu hơn ở những chương sau những gigrave giới thiệ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4972
Taacutec Giả Lecirc Quốc Toagraven
49
trong chương nagravey lagrave nền moacuteng cơ bản nhưng đủ để hiểu lagravem thế nagraveo hệ thống coacute thoạt động được nội dung chiacutenh bao gồm
+ Thao taacutec cấu higravenh trecircn hệ thống tập tin của asterisk
+ Caacutech cagravei đặt phần mềm softphone trecircn cocircng nghệ sip
+ Cấu higravenh cho hai maacutey softphone liecircn lạc với nhau
+ Cấu higravenh phaacutet thocircng điệp
+ Quay số qua Sip vagrave mạng PSTN
2 Tập Tin cấu higravenh
Tất cả caacutec file cấu higravenh cho hệ thống asterisk đều nằm tại thư mục etcasterisngoại trừ file zaptelconf cấu higravenh cho phần cứng TDM nằm tại thư mục etc caacutecthức cấu higravenh giống như tập tin ini của window vậy Caacutec nội dung sau dấu chấm phảy lagrave nội dung chuacute thiacutech trong file cấu higravenh giống như chuacute thiacutech trong ngocircn ngữ
lập trigravenh C lagrave dấu Tất cả caacutec khoảng trắng trong tập tin đều được bỏ qua khocircng yacute nghĩa trong file cấu higravenh
Trong file cấu higravenh cograven coacute hai pheacutep gaacuten rất thường xuyecircn được sử dụng pheacutep gaacuten ldquo=rdquo lagrave dugraveng cho việc gaacuten caacutec biến cograven pheacutep gaacuten ldquo=gtrdquo dugraveng cho việc gaacutencaacutec đối tượng sau đacircy lagrave một viacute dụ cho file cấu higravenh
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5072
Taacutec Giả Lecirc Quốc Toagraven
50
Đacircy lagrave caacutec dograveng chuacute thiacutech
[section]
Key=value gaacuten giaacute trị cho biến
[section2]
Key=gtobject Gaacuten giaacute trị cho đối tượng
Cuacute phaacutep thực hiện giống nhau cho tất cả caacutec file cấu higravenh nhưng coacute vagravei kiểukhaacutec nhau cho mỗi file cầu higravenh dựa vagraveo thức caacutech hoạt động của chuacuteng
3 Caacutec kiểu ảnh hưởng trong tập cấu higravenh
Coacute ba kiểu caacutech thức hoạt động của tập tin cấu higravenh như sau
Kiểu Caacutech hoạt động File cầu higravenh Viacute dụ
S i m p l eGroup
Coacute hiệu lực trecircntừng dograveng trongfile
Extensionconf
Exten=gt4001dial(sip400)
O p t i o ninheritance
Dograveng khai baacuteosau thừa kếnhững thocircng sốkhai baacuteo trước
Zapataconf [channels]
Context=From_PSTN
Signalling=fxs_ks
Group=1Channel=gt1
C o m p l e xEntity
Mỗi entity nhậnmột ngữ cảnh
sipconf
iaxconf
[cisco]
Type=friend
Secret=12345
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5172
Taacutec Giả Lecirc Quốc Toagraven
51
Host=192168165
Context=NoiBo
[xten]
Type=friend
Secret=6789
Host=dynamic
Context=NoiBo
1 Simple Group
Đacircy lagrave kiểu cấu higravenh đơn giản nhất thường sử dụng trong caacutec fileextentionconf meetmeconf voicemailconf tương ứng với mỗi dograveng khai baacuteo lagravemột đối tượng coacute yacute nghĩa trecircn dograveng đoacute
Viacute dụ
Extentionconf [section]
object1=gt op1op2op3
object2=gt op1bop2bop3b
Trong viacute dụ trecircn mỗi dograveng tương ứng với caacutec toaacuten tử khaacutec nhau object1 coacute caacutectoaacuten từ op1 op2 op3 trong khi đoacute object2 lại coacute caacutec toaacuten từ op1b op2b op3b
2 Option inheritance
Đacircy lagrave cấu higravenh kiểu thừa kế thường được cấu higravenh trong caacutec file zapataconfagentconf với kiểu cấu higravenh nagravey thigrave caacutec dograveng phiacutea dưới coacute thể thừa kế caacutec thocircng sdograveng phiacutea trecircn tương ứng với mỗi section caacutec dograveng phiacutea dưới coacute thể thay đổi caacutecthocircng số cho tươngứng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5272
Taacutec Giả Lecirc Quốc Toagraven
52
Viacute dụ
Extentionconf
[section]
Op1=bas
Op2=adv
Object1=gt1
Op1=int
Object1=gt2
Với cấu higravenh trecircn coacute thể giải thiacutech như sau object1=gt1 thừa hưởng hai thocircngsố ở phiacutea trecircn đoacute lagrave op1=bas vagrave op2=adv trong khi đoacute đối với object1=gt2 với thocircngsố op1=int được khai baacuteo lại necircn object1=gt2 được thừa kế từ hai thocircng số op1=invagrave op2=adv
3 Complex Entity
Với cấu kiểu nagravey được tổ chức thagravenh nhiều entity ứng với mỗi entity coacute nhiềthocircng số được khai baacuteo mỗi entity ở đacircy chiacutenh lagrave caacutec section để khai baacuteo caacutec kecircnhthocircng tin Cấu higravenh thường được sử dụng trong caacutec file iaxconf sipconf
Viacute dụ
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5372
Taacutec Giả Lecirc Quốc Toagraven
53
[entity1]
Op1=value1
Op2=value2
[entity2]
Op1=value3
Op2=value4
Entity1 coacute caacutec giaacute trị value1 vagrave value2 cho thocircng số op1 vagrave op2 trong khi đoacute
cũng lagrave thocircng số op1 vagrave op 2 nhưng coacute caacutec giaacute trị khaacutec lagrave value3 vagrave value4 choentity2
4 Cấu higravenh giao tiếp với mạng PSTN
1 Ngữ cảnh kết nối
Để kết nối với mạng PSTN chuacuteng ta cần phải coacute một card TDM với Cổng
FXO vagrave một đường dacircy điện thoại hoặc coacute thể lagrave một tổng đagravei nội bộ PBX Cnhiều nhagrave sản xuất phần cứng khaacutec nhau nhưng trong phần cấu higravenh dưới dacircy lagrave cấhigravenh cho card zapata TDM01B của digium (card nagravey hiện nay giaacute baacuten khoảng175$)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4172
Taacutec Giả Lecirc Quốc Toagraven
41
IP 19216801
Netmask 2552552550
Gateway 19216893254 ngotilde ra becircn ngoagravei
Primary nameserver 19216893200 thiết lập nếu coacute
Chọn OK để chấp nhận caacutec thiết lập trecircn
Sau khi hoagraven tất hatildey lagravem cho thiết lập coacute hiệu lực bằng caacutech reset lại
maacutey tiacutenh hoặc dugraveng lệnh sau
Service network stop
Service network start
Đến đacircy xem như cagravei đặt hoagraven tất bacircy giờ để cấu higravenh được Asterisk chuacutengta vagraveo một magravey khaacutec vagrave mở Internet Explorer hoặc một trigravenh duyệt web bất kỳ
nhập vagraveohttp19216801đatilde cấu higravenh ở trecircn vagrave tiến hagravenh cấu higravenh hệ thốngvới tagravei khoảng username maint vagrave password password
4 Tổ Chức Thư Mục của Asterisk
Asterisk sử dụng nhiều thư mục trecircn hệ thống linux để quản lyacute caacutec khiacutea cạnkhaacutec nhau của hệ thống như nghi nhận bản tin thoại caacutec bản tin nhắc thoại hoặcaacutec tập tin cấu higravenh Phần nagravey sẽ trigravenh bagravey caacutec thư mục chiacutenh yếu được tạo ra tronquaacute trigravenh lắp đặt vagrave được cấu higravenh trong tập tin Asteriskconf
1 etcasterisk
Thư mục etcasterisk chứa tất cả caacutec tập tin cấu higravenh của hệ thốngAsterisk ngoại trừ tập tin Zaptelconf được đặt tại thư mục etc Phần cứnZaptel đầu tiecircn được phaacutet triển bởi Jim Dixon thuộc nhoacutem Zapata Telephony
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4272
Taacutec Giả Lecirc Quốc Toagraven
42
Group để giao tiếp giữa maacutey tiacutenh với mạng điện thoại magrave Asterisk lại sửdụng phần cứng nagravey với lyacute do đoacute magrave file cấu higravenh zaptelconf khocircng nằmtrong thư mục etcasterisk
2 usrlibasteriskmodules
Thư mục usrlibasteriskmodules chứa tất cả caacutec module cần thiết đểasterisk hoạt động Becircn trong thư mục lagrave caacutec ứng dụng khaacutec nhau caacutec codeccaacutec định dạng acircm thanh(format) vagrave caacutec kecircnh thocircng tin(channel) Theo mặc địnhAsterisk sẽ nạp tất cả caacutec module vagraveo luacutec khởi động Chuacuteng ta coacute thể khocircng cho
nạp một module bất kỳ bằng caacutech khocircng khai baacuteo sử dụng trong tập tinmodulesconf Lưu yacute khi khocircng cho nạp module thigrave phải biết chắc module đoacutekhocircng lagravem ảnh hưởng hoạt động của asterisk nếu khocircng lỗi sẽ xuất hiện
3 varlibasterisk
Thư mục varlibasterisk chứa tập tin astdb vagrave một số thư mục con Tập tinastdb định vị thocircng tin cơ sở dữ liệu của Asterisk giống như Microsoft WindowsRegistry
Caacutec thư mục con của thư mục varlibasterisk bao gồm
agi-bin
Thư mục agi-bin chứa caacutec script của người dugraveng magrave Asterisk coacute thểđịnh vị sử dụng qua caacutec ứng dụng AGI
AGI lagrave phần giao tiếp với ngocircn ngữ lập trigravenh script để thực hiện mộtsố cocircng việc của Asterisk từ becircn ngoagravei
firmware
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4372
Taacutec Giả Lecirc Quốc Toagraven
43
Thư mục firmware chứa một số phần dẻo(firmware) cho caacutec thiết bịkhaacutec nhau tương thiacutech với Asterisk Hiện tại chỉ coacute thư mục con iax chứa
firmware cho thiếy bị IAXy của Digium IAXy lagrave thiết bị ATA sử dụng giaothức IAX
images
Caacutec ứng dụng thocircng tin với caacutec kecircnh hỗ trợ ảnh images thigrave sử dụng thư mụcnagravey Nhưng hiện tại caacutec kecircnh thocircng tin hầu như khocircng hỗ trợ truyền ảnh images necircthư mục nagravey cũng hiếm khi được sử dụng Tuy nhiecircn nếu caacutec thiết bị coacute hỗ trợ ththư mục nagravey trở necircn hiệu dụng
keys
Asterisk coacute thể sử dụng hệ thống khoaacute publicprivate để xaacutec minh caacutec kết nốgiữa caacutec server Asterisk thocircng qua chữ kyacute điện tử RSA Nếu đặt một khoaacute publicvagraveo thư mục keys thigrave kết nối của server đầu becircn kia coacute thể được xaacutec minh bằn
kecircnh thocircng tin coacute hỗ trợ đối với Asterisk thigrave kecircnh giao thức IAX hỗ trợ loại xaacutecminh nagravey Một khoaacute private khocircng bao giờ cocircng bố chuacuteng ta chỉ cocircng bố khoaacute public đến với server cần nối đến sau đoacute sẽ được xaacutec minh với khoaacute private nagravey Chai khoaacute public vagrave private được lưu với đuocirci pub vagrave key đặt tại thư mục keys
mohmp3
Khi cấu higravenh Asterisk sử dụng tiacutenh năng Music on Hold tiacutenh năng hoạt độngsẽ thực hiện lấy caacutec tập tin mp3 tại thư mục mohmp3 Tập tin định dạng theo chucủa Asterisk necircn khi sử dụng caacutec file Mp3 thocircng thường cần coacute sự chuyển đổi thiacutechợp trước khi cheacutep vagraveo thư mục trecircn để sử dụng
sounds
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4472
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4572
Taacutec Giả Lecirc Quốc Toagraven
45
Thư mục tmp sử dụng để lưu trữ những thocircng tin tạm để luocircn bảo đảm khocircnxảy ra tigravenh trạng đọc vagrave viết tập tin cugraveng một luacutec Khi yecircu cầu xử lyacute tập tin chuacuteng thao taacutec trecircn thư mục tmp trước khi lưu vagraveo tập tin điacutech
Tất cả caacutec lời nhắc thoại từ phiacutea người sử dụng vagrave caacutec lời nhắc thoại sử dụ
cho thao taacutec hộp voicemail đều được chứa trong thư mục voicemail Một hộp thưthoại được tạo ra ứng với một maacutey nội bộ trong tập tin voicemailconf sẽ được tra một thư mục con tương ứng cho maacutey nội bộ đoacute tại thư mục voicemail
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4672
Taacutec Giả Lecirc Quốc Toagraven
46
5 varrun
Thư mục varrun chứa thocircng tin process ID(pid) cho tất cả caacutec tiến trigravenh đang
hoạt động trong hệ thống bao gồm cả Asterisk Lưu yacute lagrave ứng với mỗi hệ điều hagravethư mục varrun coacute thể khaacutec
6 varlogasterisk
Thư mục varlogasterisk lagrave nơi Asterisk chứa tất cả caacutec tập tin nhật kyacute haycograven gọi lagrave tập tin log Chuacuteng ta coacute thể tuỳ biến caacutec loại thocircng tin được lưu trong caacutec
tập tin log khaacutec nhau qua tập tin cấu higravenh loggerconf đặt tại thư mục etcasterisk7 varlogasteriskcdr-csv
Thư mục varlogasteriskcdr-csv được sử dụng để lưu chi tiết cuộc gọi CDRThocircng tin mặc định về chi tiết thocircng tin cuộc gọi lưu trữ trong tập tin MasterCVSnhưng thường thigrave ứng với mỗi matilde accountcode sẽ tạo một thư mục riecircng để lưu ctiết cuộc gọi cho maacutey đoacute
5 Một số lệnh thao taacutec trecircn hệ thống asterisk
Asterisk coacute hai thagravenh phần được xacircy dụng tiacutech hợp với nhau vagrave chạy songsong nhau
Asterisk Server bigravenh thường chạy ở chế độ nền(background) giống caacutec sevicestrong window
Asterisk Client ở chế độ dograveng lệnh CLI giao tiếp với Asterisk Server thực thicaacutec lệnh để kiểm tra hay xem caacutec thocircng tin của server
Để Chạy vagrave dừng Asterisk ở chế độ nền chuacuteng ta thực hiện lệnh sau
etcinitdasterisk (start|stop)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4772
Taacutec Giả Lecirc Quốc Toagraven
47
Một khi Asterisk đatilde chạy chuacuteng ta coacute thể chuyển qua chế độ CLI từ dấu nhắlệnh của linux như sau
asterisk ndashr
Khi vagraveo chế độ lệnh nếu muốn thoaacutet về lại dấu nhắc linux chuacuteng ta dugraveng lệnh
CLIgtexit
Caacutec lệnh cơ bản thực hiện tại CLIgt
Bất cứ khi nagraveo chỉnh sửa caacutec tập tin cấu higravenh chuacuteng ta đều cần phải nạp lại đcaacutec thay đổi coacute hiệu lực điều đoacute thực hiện bằng lệnh
CLIgtreload
Bậc chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 debug
CLIgt SIP debug
Tắt chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 no debug
CLIgt SIP no debug
Hiển thị caacutec trạng thaacutei thocircng tin của users peers vagravechannels của SIP hoặc IAX2
CLIgt sip show users
CLIgt sip show peers
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4872
Taacutec Giả Lecirc Quốc Toagraven
48
CLIgt sip show channels
CLIgt iax2 show peers
CLIgt iax2 show users
CLIgt iax2 show channels
Đến thời điểm nagravey coacute thể noacutei chuacuteng ta đatilde hoagraven thagravenh cagravei đặt hệ thốngAsterisk cagravei đặt xong mới lagrave bước mở đầu để cho hệ thống Asterisk hoạt động vtừng ứng dụng cụ thể chuacuteng sẽ tiếp tục thực hiện caacutec giai đoạn được xem lagrave qutrọng nhất trong việc triển khai hệ thống Asterisk đoacute lagrave giai đoạn cấu higravenh hệ thốnlecircn kế hoạch Diaplan chương cograven lại đều nhắm đến mục tiecircu nagravey
4 CẤU HIgraveNH HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Sau khi hoagraven tất phần cagravei đặt hệ thống asterisk một bước quan trọng tiếp thelagrave cấu higravenh hệ thống coacute thể noacutei đacircy lagrave bước quan trọng nhất của việc khiển khai thống đến với từng ứng dụng cụ thể Trong chương nagravey xin giới thiệu caacutei nhigraven đầtiecircn về việc cấu higravenh trước khi đi sacircu hơn ở những chương sau những gigrave giới thiệ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4972
Taacutec Giả Lecirc Quốc Toagraven
49
trong chương nagravey lagrave nền moacuteng cơ bản nhưng đủ để hiểu lagravem thế nagraveo hệ thống coacute thoạt động được nội dung chiacutenh bao gồm
+ Thao taacutec cấu higravenh trecircn hệ thống tập tin của asterisk
+ Caacutech cagravei đặt phần mềm softphone trecircn cocircng nghệ sip
+ Cấu higravenh cho hai maacutey softphone liecircn lạc với nhau
+ Cấu higravenh phaacutet thocircng điệp
+ Quay số qua Sip vagrave mạng PSTN
2 Tập Tin cấu higravenh
Tất cả caacutec file cấu higravenh cho hệ thống asterisk đều nằm tại thư mục etcasterisngoại trừ file zaptelconf cấu higravenh cho phần cứng TDM nằm tại thư mục etc caacutecthức cấu higravenh giống như tập tin ini của window vậy Caacutec nội dung sau dấu chấm phảy lagrave nội dung chuacute thiacutech trong file cấu higravenh giống như chuacute thiacutech trong ngocircn ngữ
lập trigravenh C lagrave dấu Tất cả caacutec khoảng trắng trong tập tin đều được bỏ qua khocircng yacute nghĩa trong file cấu higravenh
Trong file cấu higravenh cograven coacute hai pheacutep gaacuten rất thường xuyecircn được sử dụng pheacutep gaacuten ldquo=rdquo lagrave dugraveng cho việc gaacuten caacutec biến cograven pheacutep gaacuten ldquo=gtrdquo dugraveng cho việc gaacutencaacutec đối tượng sau đacircy lagrave một viacute dụ cho file cấu higravenh
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5072
Taacutec Giả Lecirc Quốc Toagraven
50
Đacircy lagrave caacutec dograveng chuacute thiacutech
[section]
Key=value gaacuten giaacute trị cho biến
[section2]
Key=gtobject Gaacuten giaacute trị cho đối tượng
Cuacute phaacutep thực hiện giống nhau cho tất cả caacutec file cấu higravenh nhưng coacute vagravei kiểukhaacutec nhau cho mỗi file cầu higravenh dựa vagraveo thức caacutech hoạt động của chuacuteng
3 Caacutec kiểu ảnh hưởng trong tập cấu higravenh
Coacute ba kiểu caacutech thức hoạt động của tập tin cấu higravenh như sau
Kiểu Caacutech hoạt động File cầu higravenh Viacute dụ
S i m p l eGroup
Coacute hiệu lực trecircntừng dograveng trongfile
Extensionconf
Exten=gt4001dial(sip400)
O p t i o ninheritance
Dograveng khai baacuteosau thừa kếnhững thocircng sốkhai baacuteo trước
Zapataconf [channels]
Context=From_PSTN
Signalling=fxs_ks
Group=1Channel=gt1
C o m p l e xEntity
Mỗi entity nhậnmột ngữ cảnh
sipconf
iaxconf
[cisco]
Type=friend
Secret=12345
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5172
Taacutec Giả Lecirc Quốc Toagraven
51
Host=192168165
Context=NoiBo
[xten]
Type=friend
Secret=6789
Host=dynamic
Context=NoiBo
1 Simple Group
Đacircy lagrave kiểu cấu higravenh đơn giản nhất thường sử dụng trong caacutec fileextentionconf meetmeconf voicemailconf tương ứng với mỗi dograveng khai baacuteo lagravemột đối tượng coacute yacute nghĩa trecircn dograveng đoacute
Viacute dụ
Extentionconf [section]
object1=gt op1op2op3
object2=gt op1bop2bop3b
Trong viacute dụ trecircn mỗi dograveng tương ứng với caacutec toaacuten tử khaacutec nhau object1 coacute caacutectoaacuten từ op1 op2 op3 trong khi đoacute object2 lại coacute caacutec toaacuten từ op1b op2b op3b
2 Option inheritance
Đacircy lagrave cấu higravenh kiểu thừa kế thường được cấu higravenh trong caacutec file zapataconfagentconf với kiểu cấu higravenh nagravey thigrave caacutec dograveng phiacutea dưới coacute thể thừa kế caacutec thocircng sdograveng phiacutea trecircn tương ứng với mỗi section caacutec dograveng phiacutea dưới coacute thể thay đổi caacutecthocircng số cho tươngứng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5272
Taacutec Giả Lecirc Quốc Toagraven
52
Viacute dụ
Extentionconf
[section]
Op1=bas
Op2=adv
Object1=gt1
Op1=int
Object1=gt2
Với cấu higravenh trecircn coacute thể giải thiacutech như sau object1=gt1 thừa hưởng hai thocircngsố ở phiacutea trecircn đoacute lagrave op1=bas vagrave op2=adv trong khi đoacute đối với object1=gt2 với thocircngsố op1=int được khai baacuteo lại necircn object1=gt2 được thừa kế từ hai thocircng số op1=invagrave op2=adv
3 Complex Entity
Với cấu kiểu nagravey được tổ chức thagravenh nhiều entity ứng với mỗi entity coacute nhiềthocircng số được khai baacuteo mỗi entity ở đacircy chiacutenh lagrave caacutec section để khai baacuteo caacutec kecircnhthocircng tin Cấu higravenh thường được sử dụng trong caacutec file iaxconf sipconf
Viacute dụ
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5372
Taacutec Giả Lecirc Quốc Toagraven
53
[entity1]
Op1=value1
Op2=value2
[entity2]
Op1=value3
Op2=value4
Entity1 coacute caacutec giaacute trị value1 vagrave value2 cho thocircng số op1 vagrave op2 trong khi đoacute
cũng lagrave thocircng số op1 vagrave op 2 nhưng coacute caacutec giaacute trị khaacutec lagrave value3 vagrave value4 choentity2
4 Cấu higravenh giao tiếp với mạng PSTN
1 Ngữ cảnh kết nối
Để kết nối với mạng PSTN chuacuteng ta cần phải coacute một card TDM với Cổng
FXO vagrave một đường dacircy điện thoại hoặc coacute thể lagrave một tổng đagravei nội bộ PBX Cnhiều nhagrave sản xuất phần cứng khaacutec nhau nhưng trong phần cấu higravenh dưới dacircy lagrave cấhigravenh cho card zapata TDM01B của digium (card nagravey hiện nay giaacute baacuten khoảng175$)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4272
Taacutec Giả Lecirc Quốc Toagraven
42
Group để giao tiếp giữa maacutey tiacutenh với mạng điện thoại magrave Asterisk lại sửdụng phần cứng nagravey với lyacute do đoacute magrave file cấu higravenh zaptelconf khocircng nằmtrong thư mục etcasterisk
2 usrlibasteriskmodules
Thư mục usrlibasteriskmodules chứa tất cả caacutec module cần thiết đểasterisk hoạt động Becircn trong thư mục lagrave caacutec ứng dụng khaacutec nhau caacutec codeccaacutec định dạng acircm thanh(format) vagrave caacutec kecircnh thocircng tin(channel) Theo mặc địnhAsterisk sẽ nạp tất cả caacutec module vagraveo luacutec khởi động Chuacuteng ta coacute thể khocircng cho
nạp một module bất kỳ bằng caacutech khocircng khai baacuteo sử dụng trong tập tinmodulesconf Lưu yacute khi khocircng cho nạp module thigrave phải biết chắc module đoacutekhocircng lagravem ảnh hưởng hoạt động của asterisk nếu khocircng lỗi sẽ xuất hiện
3 varlibasterisk
Thư mục varlibasterisk chứa tập tin astdb vagrave một số thư mục con Tập tinastdb định vị thocircng tin cơ sở dữ liệu của Asterisk giống như Microsoft WindowsRegistry
Caacutec thư mục con của thư mục varlibasterisk bao gồm
agi-bin
Thư mục agi-bin chứa caacutec script của người dugraveng magrave Asterisk coacute thểđịnh vị sử dụng qua caacutec ứng dụng AGI
AGI lagrave phần giao tiếp với ngocircn ngữ lập trigravenh script để thực hiện mộtsố cocircng việc của Asterisk từ becircn ngoagravei
firmware
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4372
Taacutec Giả Lecirc Quốc Toagraven
43
Thư mục firmware chứa một số phần dẻo(firmware) cho caacutec thiết bịkhaacutec nhau tương thiacutech với Asterisk Hiện tại chỉ coacute thư mục con iax chứa
firmware cho thiếy bị IAXy của Digium IAXy lagrave thiết bị ATA sử dụng giaothức IAX
images
Caacutec ứng dụng thocircng tin với caacutec kecircnh hỗ trợ ảnh images thigrave sử dụng thư mụcnagravey Nhưng hiện tại caacutec kecircnh thocircng tin hầu như khocircng hỗ trợ truyền ảnh images necircthư mục nagravey cũng hiếm khi được sử dụng Tuy nhiecircn nếu caacutec thiết bị coacute hỗ trợ ththư mục nagravey trở necircn hiệu dụng
keys
Asterisk coacute thể sử dụng hệ thống khoaacute publicprivate để xaacutec minh caacutec kết nốgiữa caacutec server Asterisk thocircng qua chữ kyacute điện tử RSA Nếu đặt một khoaacute publicvagraveo thư mục keys thigrave kết nối của server đầu becircn kia coacute thể được xaacutec minh bằn
kecircnh thocircng tin coacute hỗ trợ đối với Asterisk thigrave kecircnh giao thức IAX hỗ trợ loại xaacutecminh nagravey Một khoaacute private khocircng bao giờ cocircng bố chuacuteng ta chỉ cocircng bố khoaacute public đến với server cần nối đến sau đoacute sẽ được xaacutec minh với khoaacute private nagravey Chai khoaacute public vagrave private được lưu với đuocirci pub vagrave key đặt tại thư mục keys
mohmp3
Khi cấu higravenh Asterisk sử dụng tiacutenh năng Music on Hold tiacutenh năng hoạt độngsẽ thực hiện lấy caacutec tập tin mp3 tại thư mục mohmp3 Tập tin định dạng theo chucủa Asterisk necircn khi sử dụng caacutec file Mp3 thocircng thường cần coacute sự chuyển đổi thiacutechợp trước khi cheacutep vagraveo thư mục trecircn để sử dụng
sounds
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4472
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4572
Taacutec Giả Lecirc Quốc Toagraven
45
Thư mục tmp sử dụng để lưu trữ những thocircng tin tạm để luocircn bảo đảm khocircnxảy ra tigravenh trạng đọc vagrave viết tập tin cugraveng một luacutec Khi yecircu cầu xử lyacute tập tin chuacuteng thao taacutec trecircn thư mục tmp trước khi lưu vagraveo tập tin điacutech
Tất cả caacutec lời nhắc thoại từ phiacutea người sử dụng vagrave caacutec lời nhắc thoại sử dụ
cho thao taacutec hộp voicemail đều được chứa trong thư mục voicemail Một hộp thưthoại được tạo ra ứng với một maacutey nội bộ trong tập tin voicemailconf sẽ được tra một thư mục con tương ứng cho maacutey nội bộ đoacute tại thư mục voicemail
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4672
Taacutec Giả Lecirc Quốc Toagraven
46
5 varrun
Thư mục varrun chứa thocircng tin process ID(pid) cho tất cả caacutec tiến trigravenh đang
hoạt động trong hệ thống bao gồm cả Asterisk Lưu yacute lagrave ứng với mỗi hệ điều hagravethư mục varrun coacute thể khaacutec
6 varlogasterisk
Thư mục varlogasterisk lagrave nơi Asterisk chứa tất cả caacutec tập tin nhật kyacute haycograven gọi lagrave tập tin log Chuacuteng ta coacute thể tuỳ biến caacutec loại thocircng tin được lưu trong caacutec
tập tin log khaacutec nhau qua tập tin cấu higravenh loggerconf đặt tại thư mục etcasterisk7 varlogasteriskcdr-csv
Thư mục varlogasteriskcdr-csv được sử dụng để lưu chi tiết cuộc gọi CDRThocircng tin mặc định về chi tiết thocircng tin cuộc gọi lưu trữ trong tập tin MasterCVSnhưng thường thigrave ứng với mỗi matilde accountcode sẽ tạo một thư mục riecircng để lưu ctiết cuộc gọi cho maacutey đoacute
5 Một số lệnh thao taacutec trecircn hệ thống asterisk
Asterisk coacute hai thagravenh phần được xacircy dụng tiacutech hợp với nhau vagrave chạy songsong nhau
Asterisk Server bigravenh thường chạy ở chế độ nền(background) giống caacutec sevicestrong window
Asterisk Client ở chế độ dograveng lệnh CLI giao tiếp với Asterisk Server thực thicaacutec lệnh để kiểm tra hay xem caacutec thocircng tin của server
Để Chạy vagrave dừng Asterisk ở chế độ nền chuacuteng ta thực hiện lệnh sau
etcinitdasterisk (start|stop)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4772
Taacutec Giả Lecirc Quốc Toagraven
47
Một khi Asterisk đatilde chạy chuacuteng ta coacute thể chuyển qua chế độ CLI từ dấu nhắlệnh của linux như sau
asterisk ndashr
Khi vagraveo chế độ lệnh nếu muốn thoaacutet về lại dấu nhắc linux chuacuteng ta dugraveng lệnh
CLIgtexit
Caacutec lệnh cơ bản thực hiện tại CLIgt
Bất cứ khi nagraveo chỉnh sửa caacutec tập tin cấu higravenh chuacuteng ta đều cần phải nạp lại đcaacutec thay đổi coacute hiệu lực điều đoacute thực hiện bằng lệnh
CLIgtreload
Bậc chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 debug
CLIgt SIP debug
Tắt chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 no debug
CLIgt SIP no debug
Hiển thị caacutec trạng thaacutei thocircng tin của users peers vagravechannels của SIP hoặc IAX2
CLIgt sip show users
CLIgt sip show peers
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4872
Taacutec Giả Lecirc Quốc Toagraven
48
CLIgt sip show channels
CLIgt iax2 show peers
CLIgt iax2 show users
CLIgt iax2 show channels
Đến thời điểm nagravey coacute thể noacutei chuacuteng ta đatilde hoagraven thagravenh cagravei đặt hệ thốngAsterisk cagravei đặt xong mới lagrave bước mở đầu để cho hệ thống Asterisk hoạt động vtừng ứng dụng cụ thể chuacuteng sẽ tiếp tục thực hiện caacutec giai đoạn được xem lagrave qutrọng nhất trong việc triển khai hệ thống Asterisk đoacute lagrave giai đoạn cấu higravenh hệ thốnlecircn kế hoạch Diaplan chương cograven lại đều nhắm đến mục tiecircu nagravey
4 CẤU HIgraveNH HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Sau khi hoagraven tất phần cagravei đặt hệ thống asterisk một bước quan trọng tiếp thelagrave cấu higravenh hệ thống coacute thể noacutei đacircy lagrave bước quan trọng nhất của việc khiển khai thống đến với từng ứng dụng cụ thể Trong chương nagravey xin giới thiệu caacutei nhigraven đầtiecircn về việc cấu higravenh trước khi đi sacircu hơn ở những chương sau những gigrave giới thiệ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4972
Taacutec Giả Lecirc Quốc Toagraven
49
trong chương nagravey lagrave nền moacuteng cơ bản nhưng đủ để hiểu lagravem thế nagraveo hệ thống coacute thoạt động được nội dung chiacutenh bao gồm
+ Thao taacutec cấu higravenh trecircn hệ thống tập tin của asterisk
+ Caacutech cagravei đặt phần mềm softphone trecircn cocircng nghệ sip
+ Cấu higravenh cho hai maacutey softphone liecircn lạc với nhau
+ Cấu higravenh phaacutet thocircng điệp
+ Quay số qua Sip vagrave mạng PSTN
2 Tập Tin cấu higravenh
Tất cả caacutec file cấu higravenh cho hệ thống asterisk đều nằm tại thư mục etcasterisngoại trừ file zaptelconf cấu higravenh cho phần cứng TDM nằm tại thư mục etc caacutecthức cấu higravenh giống như tập tin ini của window vậy Caacutec nội dung sau dấu chấm phảy lagrave nội dung chuacute thiacutech trong file cấu higravenh giống như chuacute thiacutech trong ngocircn ngữ
lập trigravenh C lagrave dấu Tất cả caacutec khoảng trắng trong tập tin đều được bỏ qua khocircng yacute nghĩa trong file cấu higravenh
Trong file cấu higravenh cograven coacute hai pheacutep gaacuten rất thường xuyecircn được sử dụng pheacutep gaacuten ldquo=rdquo lagrave dugraveng cho việc gaacuten caacutec biến cograven pheacutep gaacuten ldquo=gtrdquo dugraveng cho việc gaacutencaacutec đối tượng sau đacircy lagrave một viacute dụ cho file cấu higravenh
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5072
Taacutec Giả Lecirc Quốc Toagraven
50
Đacircy lagrave caacutec dograveng chuacute thiacutech
[section]
Key=value gaacuten giaacute trị cho biến
[section2]
Key=gtobject Gaacuten giaacute trị cho đối tượng
Cuacute phaacutep thực hiện giống nhau cho tất cả caacutec file cấu higravenh nhưng coacute vagravei kiểukhaacutec nhau cho mỗi file cầu higravenh dựa vagraveo thức caacutech hoạt động của chuacuteng
3 Caacutec kiểu ảnh hưởng trong tập cấu higravenh
Coacute ba kiểu caacutech thức hoạt động của tập tin cấu higravenh như sau
Kiểu Caacutech hoạt động File cầu higravenh Viacute dụ
S i m p l eGroup
Coacute hiệu lực trecircntừng dograveng trongfile
Extensionconf
Exten=gt4001dial(sip400)
O p t i o ninheritance
Dograveng khai baacuteosau thừa kếnhững thocircng sốkhai baacuteo trước
Zapataconf [channels]
Context=From_PSTN
Signalling=fxs_ks
Group=1Channel=gt1
C o m p l e xEntity
Mỗi entity nhậnmột ngữ cảnh
sipconf
iaxconf
[cisco]
Type=friend
Secret=12345
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5172
Taacutec Giả Lecirc Quốc Toagraven
51
Host=192168165
Context=NoiBo
[xten]
Type=friend
Secret=6789
Host=dynamic
Context=NoiBo
1 Simple Group
Đacircy lagrave kiểu cấu higravenh đơn giản nhất thường sử dụng trong caacutec fileextentionconf meetmeconf voicemailconf tương ứng với mỗi dograveng khai baacuteo lagravemột đối tượng coacute yacute nghĩa trecircn dograveng đoacute
Viacute dụ
Extentionconf [section]
object1=gt op1op2op3
object2=gt op1bop2bop3b
Trong viacute dụ trecircn mỗi dograveng tương ứng với caacutec toaacuten tử khaacutec nhau object1 coacute caacutectoaacuten từ op1 op2 op3 trong khi đoacute object2 lại coacute caacutec toaacuten từ op1b op2b op3b
2 Option inheritance
Đacircy lagrave cấu higravenh kiểu thừa kế thường được cấu higravenh trong caacutec file zapataconfagentconf với kiểu cấu higravenh nagravey thigrave caacutec dograveng phiacutea dưới coacute thể thừa kế caacutec thocircng sdograveng phiacutea trecircn tương ứng với mỗi section caacutec dograveng phiacutea dưới coacute thể thay đổi caacutecthocircng số cho tươngứng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5272
Taacutec Giả Lecirc Quốc Toagraven
52
Viacute dụ
Extentionconf
[section]
Op1=bas
Op2=adv
Object1=gt1
Op1=int
Object1=gt2
Với cấu higravenh trecircn coacute thể giải thiacutech như sau object1=gt1 thừa hưởng hai thocircngsố ở phiacutea trecircn đoacute lagrave op1=bas vagrave op2=adv trong khi đoacute đối với object1=gt2 với thocircngsố op1=int được khai baacuteo lại necircn object1=gt2 được thừa kế từ hai thocircng số op1=invagrave op2=adv
3 Complex Entity
Với cấu kiểu nagravey được tổ chức thagravenh nhiều entity ứng với mỗi entity coacute nhiềthocircng số được khai baacuteo mỗi entity ở đacircy chiacutenh lagrave caacutec section để khai baacuteo caacutec kecircnhthocircng tin Cấu higravenh thường được sử dụng trong caacutec file iaxconf sipconf
Viacute dụ
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5372
Taacutec Giả Lecirc Quốc Toagraven
53
[entity1]
Op1=value1
Op2=value2
[entity2]
Op1=value3
Op2=value4
Entity1 coacute caacutec giaacute trị value1 vagrave value2 cho thocircng số op1 vagrave op2 trong khi đoacute
cũng lagrave thocircng số op1 vagrave op 2 nhưng coacute caacutec giaacute trị khaacutec lagrave value3 vagrave value4 choentity2
4 Cấu higravenh giao tiếp với mạng PSTN
1 Ngữ cảnh kết nối
Để kết nối với mạng PSTN chuacuteng ta cần phải coacute một card TDM với Cổng
FXO vagrave một đường dacircy điện thoại hoặc coacute thể lagrave một tổng đagravei nội bộ PBX Cnhiều nhagrave sản xuất phần cứng khaacutec nhau nhưng trong phần cấu higravenh dưới dacircy lagrave cấhigravenh cho card zapata TDM01B của digium (card nagravey hiện nay giaacute baacuten khoảng175$)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4372
Taacutec Giả Lecirc Quốc Toagraven
43
Thư mục firmware chứa một số phần dẻo(firmware) cho caacutec thiết bịkhaacutec nhau tương thiacutech với Asterisk Hiện tại chỉ coacute thư mục con iax chứa
firmware cho thiếy bị IAXy của Digium IAXy lagrave thiết bị ATA sử dụng giaothức IAX
images
Caacutec ứng dụng thocircng tin với caacutec kecircnh hỗ trợ ảnh images thigrave sử dụng thư mụcnagravey Nhưng hiện tại caacutec kecircnh thocircng tin hầu như khocircng hỗ trợ truyền ảnh images necircthư mục nagravey cũng hiếm khi được sử dụng Tuy nhiecircn nếu caacutec thiết bị coacute hỗ trợ ththư mục nagravey trở necircn hiệu dụng
keys
Asterisk coacute thể sử dụng hệ thống khoaacute publicprivate để xaacutec minh caacutec kết nốgiữa caacutec server Asterisk thocircng qua chữ kyacute điện tử RSA Nếu đặt một khoaacute publicvagraveo thư mục keys thigrave kết nối của server đầu becircn kia coacute thể được xaacutec minh bằn
kecircnh thocircng tin coacute hỗ trợ đối với Asterisk thigrave kecircnh giao thức IAX hỗ trợ loại xaacutecminh nagravey Một khoaacute private khocircng bao giờ cocircng bố chuacuteng ta chỉ cocircng bố khoaacute public đến với server cần nối đến sau đoacute sẽ được xaacutec minh với khoaacute private nagravey Chai khoaacute public vagrave private được lưu với đuocirci pub vagrave key đặt tại thư mục keys
mohmp3
Khi cấu higravenh Asterisk sử dụng tiacutenh năng Music on Hold tiacutenh năng hoạt độngsẽ thực hiện lấy caacutec tập tin mp3 tại thư mục mohmp3 Tập tin định dạng theo chucủa Asterisk necircn khi sử dụng caacutec file Mp3 thocircng thường cần coacute sự chuyển đổi thiacutechợp trước khi cheacutep vagraveo thư mục trecircn để sử dụng
sounds
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4472
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4572
Taacutec Giả Lecirc Quốc Toagraven
45
Thư mục tmp sử dụng để lưu trữ những thocircng tin tạm để luocircn bảo đảm khocircnxảy ra tigravenh trạng đọc vagrave viết tập tin cugraveng một luacutec Khi yecircu cầu xử lyacute tập tin chuacuteng thao taacutec trecircn thư mục tmp trước khi lưu vagraveo tập tin điacutech
Tất cả caacutec lời nhắc thoại từ phiacutea người sử dụng vagrave caacutec lời nhắc thoại sử dụ
cho thao taacutec hộp voicemail đều được chứa trong thư mục voicemail Một hộp thưthoại được tạo ra ứng với một maacutey nội bộ trong tập tin voicemailconf sẽ được tra một thư mục con tương ứng cho maacutey nội bộ đoacute tại thư mục voicemail
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4672
Taacutec Giả Lecirc Quốc Toagraven
46
5 varrun
Thư mục varrun chứa thocircng tin process ID(pid) cho tất cả caacutec tiến trigravenh đang
hoạt động trong hệ thống bao gồm cả Asterisk Lưu yacute lagrave ứng với mỗi hệ điều hagravethư mục varrun coacute thể khaacutec
6 varlogasterisk
Thư mục varlogasterisk lagrave nơi Asterisk chứa tất cả caacutec tập tin nhật kyacute haycograven gọi lagrave tập tin log Chuacuteng ta coacute thể tuỳ biến caacutec loại thocircng tin được lưu trong caacutec
tập tin log khaacutec nhau qua tập tin cấu higravenh loggerconf đặt tại thư mục etcasterisk7 varlogasteriskcdr-csv
Thư mục varlogasteriskcdr-csv được sử dụng để lưu chi tiết cuộc gọi CDRThocircng tin mặc định về chi tiết thocircng tin cuộc gọi lưu trữ trong tập tin MasterCVSnhưng thường thigrave ứng với mỗi matilde accountcode sẽ tạo một thư mục riecircng để lưu ctiết cuộc gọi cho maacutey đoacute
5 Một số lệnh thao taacutec trecircn hệ thống asterisk
Asterisk coacute hai thagravenh phần được xacircy dụng tiacutech hợp với nhau vagrave chạy songsong nhau
Asterisk Server bigravenh thường chạy ở chế độ nền(background) giống caacutec sevicestrong window
Asterisk Client ở chế độ dograveng lệnh CLI giao tiếp với Asterisk Server thực thicaacutec lệnh để kiểm tra hay xem caacutec thocircng tin của server
Để Chạy vagrave dừng Asterisk ở chế độ nền chuacuteng ta thực hiện lệnh sau
etcinitdasterisk (start|stop)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4772
Taacutec Giả Lecirc Quốc Toagraven
47
Một khi Asterisk đatilde chạy chuacuteng ta coacute thể chuyển qua chế độ CLI từ dấu nhắlệnh của linux như sau
asterisk ndashr
Khi vagraveo chế độ lệnh nếu muốn thoaacutet về lại dấu nhắc linux chuacuteng ta dugraveng lệnh
CLIgtexit
Caacutec lệnh cơ bản thực hiện tại CLIgt
Bất cứ khi nagraveo chỉnh sửa caacutec tập tin cấu higravenh chuacuteng ta đều cần phải nạp lại đcaacutec thay đổi coacute hiệu lực điều đoacute thực hiện bằng lệnh
CLIgtreload
Bậc chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 debug
CLIgt SIP debug
Tắt chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 no debug
CLIgt SIP no debug
Hiển thị caacutec trạng thaacutei thocircng tin của users peers vagravechannels của SIP hoặc IAX2
CLIgt sip show users
CLIgt sip show peers
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4872
Taacutec Giả Lecirc Quốc Toagraven
48
CLIgt sip show channels
CLIgt iax2 show peers
CLIgt iax2 show users
CLIgt iax2 show channels
Đến thời điểm nagravey coacute thể noacutei chuacuteng ta đatilde hoagraven thagravenh cagravei đặt hệ thốngAsterisk cagravei đặt xong mới lagrave bước mở đầu để cho hệ thống Asterisk hoạt động vtừng ứng dụng cụ thể chuacuteng sẽ tiếp tục thực hiện caacutec giai đoạn được xem lagrave qutrọng nhất trong việc triển khai hệ thống Asterisk đoacute lagrave giai đoạn cấu higravenh hệ thốnlecircn kế hoạch Diaplan chương cograven lại đều nhắm đến mục tiecircu nagravey
4 CẤU HIgraveNH HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Sau khi hoagraven tất phần cagravei đặt hệ thống asterisk một bước quan trọng tiếp thelagrave cấu higravenh hệ thống coacute thể noacutei đacircy lagrave bước quan trọng nhất của việc khiển khai thống đến với từng ứng dụng cụ thể Trong chương nagravey xin giới thiệu caacutei nhigraven đầtiecircn về việc cấu higravenh trước khi đi sacircu hơn ở những chương sau những gigrave giới thiệ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4972
Taacutec Giả Lecirc Quốc Toagraven
49
trong chương nagravey lagrave nền moacuteng cơ bản nhưng đủ để hiểu lagravem thế nagraveo hệ thống coacute thoạt động được nội dung chiacutenh bao gồm
+ Thao taacutec cấu higravenh trecircn hệ thống tập tin của asterisk
+ Caacutech cagravei đặt phần mềm softphone trecircn cocircng nghệ sip
+ Cấu higravenh cho hai maacutey softphone liecircn lạc với nhau
+ Cấu higravenh phaacutet thocircng điệp
+ Quay số qua Sip vagrave mạng PSTN
2 Tập Tin cấu higravenh
Tất cả caacutec file cấu higravenh cho hệ thống asterisk đều nằm tại thư mục etcasterisngoại trừ file zaptelconf cấu higravenh cho phần cứng TDM nằm tại thư mục etc caacutecthức cấu higravenh giống như tập tin ini của window vậy Caacutec nội dung sau dấu chấm phảy lagrave nội dung chuacute thiacutech trong file cấu higravenh giống như chuacute thiacutech trong ngocircn ngữ
lập trigravenh C lagrave dấu Tất cả caacutec khoảng trắng trong tập tin đều được bỏ qua khocircng yacute nghĩa trong file cấu higravenh
Trong file cấu higravenh cograven coacute hai pheacutep gaacuten rất thường xuyecircn được sử dụng pheacutep gaacuten ldquo=rdquo lagrave dugraveng cho việc gaacuten caacutec biến cograven pheacutep gaacuten ldquo=gtrdquo dugraveng cho việc gaacutencaacutec đối tượng sau đacircy lagrave một viacute dụ cho file cấu higravenh
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5072
Taacutec Giả Lecirc Quốc Toagraven
50
Đacircy lagrave caacutec dograveng chuacute thiacutech
[section]
Key=value gaacuten giaacute trị cho biến
[section2]
Key=gtobject Gaacuten giaacute trị cho đối tượng
Cuacute phaacutep thực hiện giống nhau cho tất cả caacutec file cấu higravenh nhưng coacute vagravei kiểukhaacutec nhau cho mỗi file cầu higravenh dựa vagraveo thức caacutech hoạt động của chuacuteng
3 Caacutec kiểu ảnh hưởng trong tập cấu higravenh
Coacute ba kiểu caacutech thức hoạt động của tập tin cấu higravenh như sau
Kiểu Caacutech hoạt động File cầu higravenh Viacute dụ
S i m p l eGroup
Coacute hiệu lực trecircntừng dograveng trongfile
Extensionconf
Exten=gt4001dial(sip400)
O p t i o ninheritance
Dograveng khai baacuteosau thừa kếnhững thocircng sốkhai baacuteo trước
Zapataconf [channels]
Context=From_PSTN
Signalling=fxs_ks
Group=1Channel=gt1
C o m p l e xEntity
Mỗi entity nhậnmột ngữ cảnh
sipconf
iaxconf
[cisco]
Type=friend
Secret=12345
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5172
Taacutec Giả Lecirc Quốc Toagraven
51
Host=192168165
Context=NoiBo
[xten]
Type=friend
Secret=6789
Host=dynamic
Context=NoiBo
1 Simple Group
Đacircy lagrave kiểu cấu higravenh đơn giản nhất thường sử dụng trong caacutec fileextentionconf meetmeconf voicemailconf tương ứng với mỗi dograveng khai baacuteo lagravemột đối tượng coacute yacute nghĩa trecircn dograveng đoacute
Viacute dụ
Extentionconf [section]
object1=gt op1op2op3
object2=gt op1bop2bop3b
Trong viacute dụ trecircn mỗi dograveng tương ứng với caacutec toaacuten tử khaacutec nhau object1 coacute caacutectoaacuten từ op1 op2 op3 trong khi đoacute object2 lại coacute caacutec toaacuten từ op1b op2b op3b
2 Option inheritance
Đacircy lagrave cấu higravenh kiểu thừa kế thường được cấu higravenh trong caacutec file zapataconfagentconf với kiểu cấu higravenh nagravey thigrave caacutec dograveng phiacutea dưới coacute thể thừa kế caacutec thocircng sdograveng phiacutea trecircn tương ứng với mỗi section caacutec dograveng phiacutea dưới coacute thể thay đổi caacutecthocircng số cho tươngứng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5272
Taacutec Giả Lecirc Quốc Toagraven
52
Viacute dụ
Extentionconf
[section]
Op1=bas
Op2=adv
Object1=gt1
Op1=int
Object1=gt2
Với cấu higravenh trecircn coacute thể giải thiacutech như sau object1=gt1 thừa hưởng hai thocircngsố ở phiacutea trecircn đoacute lagrave op1=bas vagrave op2=adv trong khi đoacute đối với object1=gt2 với thocircngsố op1=int được khai baacuteo lại necircn object1=gt2 được thừa kế từ hai thocircng số op1=invagrave op2=adv
3 Complex Entity
Với cấu kiểu nagravey được tổ chức thagravenh nhiều entity ứng với mỗi entity coacute nhiềthocircng số được khai baacuteo mỗi entity ở đacircy chiacutenh lagrave caacutec section để khai baacuteo caacutec kecircnhthocircng tin Cấu higravenh thường được sử dụng trong caacutec file iaxconf sipconf
Viacute dụ
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5372
Taacutec Giả Lecirc Quốc Toagraven
53
[entity1]
Op1=value1
Op2=value2
[entity2]
Op1=value3
Op2=value4
Entity1 coacute caacutec giaacute trị value1 vagrave value2 cho thocircng số op1 vagrave op2 trong khi đoacute
cũng lagrave thocircng số op1 vagrave op 2 nhưng coacute caacutec giaacute trị khaacutec lagrave value3 vagrave value4 choentity2
4 Cấu higravenh giao tiếp với mạng PSTN
1 Ngữ cảnh kết nối
Để kết nối với mạng PSTN chuacuteng ta cần phải coacute một card TDM với Cổng
FXO vagrave một đường dacircy điện thoại hoặc coacute thể lagrave một tổng đagravei nội bộ PBX Cnhiều nhagrave sản xuất phần cứng khaacutec nhau nhưng trong phần cấu higravenh dưới dacircy lagrave cấhigravenh cho card zapata TDM01B của digium (card nagravey hiện nay giaacute baacuten khoảng175$)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4472
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4572
Taacutec Giả Lecirc Quốc Toagraven
45
Thư mục tmp sử dụng để lưu trữ những thocircng tin tạm để luocircn bảo đảm khocircnxảy ra tigravenh trạng đọc vagrave viết tập tin cugraveng một luacutec Khi yecircu cầu xử lyacute tập tin chuacuteng thao taacutec trecircn thư mục tmp trước khi lưu vagraveo tập tin điacutech
Tất cả caacutec lời nhắc thoại từ phiacutea người sử dụng vagrave caacutec lời nhắc thoại sử dụ
cho thao taacutec hộp voicemail đều được chứa trong thư mục voicemail Một hộp thưthoại được tạo ra ứng với một maacutey nội bộ trong tập tin voicemailconf sẽ được tra một thư mục con tương ứng cho maacutey nội bộ đoacute tại thư mục voicemail
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4672
Taacutec Giả Lecirc Quốc Toagraven
46
5 varrun
Thư mục varrun chứa thocircng tin process ID(pid) cho tất cả caacutec tiến trigravenh đang
hoạt động trong hệ thống bao gồm cả Asterisk Lưu yacute lagrave ứng với mỗi hệ điều hagravethư mục varrun coacute thể khaacutec
6 varlogasterisk
Thư mục varlogasterisk lagrave nơi Asterisk chứa tất cả caacutec tập tin nhật kyacute haycograven gọi lagrave tập tin log Chuacuteng ta coacute thể tuỳ biến caacutec loại thocircng tin được lưu trong caacutec
tập tin log khaacutec nhau qua tập tin cấu higravenh loggerconf đặt tại thư mục etcasterisk7 varlogasteriskcdr-csv
Thư mục varlogasteriskcdr-csv được sử dụng để lưu chi tiết cuộc gọi CDRThocircng tin mặc định về chi tiết thocircng tin cuộc gọi lưu trữ trong tập tin MasterCVSnhưng thường thigrave ứng với mỗi matilde accountcode sẽ tạo một thư mục riecircng để lưu ctiết cuộc gọi cho maacutey đoacute
5 Một số lệnh thao taacutec trecircn hệ thống asterisk
Asterisk coacute hai thagravenh phần được xacircy dụng tiacutech hợp với nhau vagrave chạy songsong nhau
Asterisk Server bigravenh thường chạy ở chế độ nền(background) giống caacutec sevicestrong window
Asterisk Client ở chế độ dograveng lệnh CLI giao tiếp với Asterisk Server thực thicaacutec lệnh để kiểm tra hay xem caacutec thocircng tin của server
Để Chạy vagrave dừng Asterisk ở chế độ nền chuacuteng ta thực hiện lệnh sau
etcinitdasterisk (start|stop)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4772
Taacutec Giả Lecirc Quốc Toagraven
47
Một khi Asterisk đatilde chạy chuacuteng ta coacute thể chuyển qua chế độ CLI từ dấu nhắlệnh của linux như sau
asterisk ndashr
Khi vagraveo chế độ lệnh nếu muốn thoaacutet về lại dấu nhắc linux chuacuteng ta dugraveng lệnh
CLIgtexit
Caacutec lệnh cơ bản thực hiện tại CLIgt
Bất cứ khi nagraveo chỉnh sửa caacutec tập tin cấu higravenh chuacuteng ta đều cần phải nạp lại đcaacutec thay đổi coacute hiệu lực điều đoacute thực hiện bằng lệnh
CLIgtreload
Bậc chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 debug
CLIgt SIP debug
Tắt chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 no debug
CLIgt SIP no debug
Hiển thị caacutec trạng thaacutei thocircng tin của users peers vagravechannels của SIP hoặc IAX2
CLIgt sip show users
CLIgt sip show peers
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4872
Taacutec Giả Lecirc Quốc Toagraven
48
CLIgt sip show channels
CLIgt iax2 show peers
CLIgt iax2 show users
CLIgt iax2 show channels
Đến thời điểm nagravey coacute thể noacutei chuacuteng ta đatilde hoagraven thagravenh cagravei đặt hệ thốngAsterisk cagravei đặt xong mới lagrave bước mở đầu để cho hệ thống Asterisk hoạt động vtừng ứng dụng cụ thể chuacuteng sẽ tiếp tục thực hiện caacutec giai đoạn được xem lagrave qutrọng nhất trong việc triển khai hệ thống Asterisk đoacute lagrave giai đoạn cấu higravenh hệ thốnlecircn kế hoạch Diaplan chương cograven lại đều nhắm đến mục tiecircu nagravey
4 CẤU HIgraveNH HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Sau khi hoagraven tất phần cagravei đặt hệ thống asterisk một bước quan trọng tiếp thelagrave cấu higravenh hệ thống coacute thể noacutei đacircy lagrave bước quan trọng nhất của việc khiển khai thống đến với từng ứng dụng cụ thể Trong chương nagravey xin giới thiệu caacutei nhigraven đầtiecircn về việc cấu higravenh trước khi đi sacircu hơn ở những chương sau những gigrave giới thiệ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4972
Taacutec Giả Lecirc Quốc Toagraven
49
trong chương nagravey lagrave nền moacuteng cơ bản nhưng đủ để hiểu lagravem thế nagraveo hệ thống coacute thoạt động được nội dung chiacutenh bao gồm
+ Thao taacutec cấu higravenh trecircn hệ thống tập tin của asterisk
+ Caacutech cagravei đặt phần mềm softphone trecircn cocircng nghệ sip
+ Cấu higravenh cho hai maacutey softphone liecircn lạc với nhau
+ Cấu higravenh phaacutet thocircng điệp
+ Quay số qua Sip vagrave mạng PSTN
2 Tập Tin cấu higravenh
Tất cả caacutec file cấu higravenh cho hệ thống asterisk đều nằm tại thư mục etcasterisngoại trừ file zaptelconf cấu higravenh cho phần cứng TDM nằm tại thư mục etc caacutecthức cấu higravenh giống như tập tin ini của window vậy Caacutec nội dung sau dấu chấm phảy lagrave nội dung chuacute thiacutech trong file cấu higravenh giống như chuacute thiacutech trong ngocircn ngữ
lập trigravenh C lagrave dấu Tất cả caacutec khoảng trắng trong tập tin đều được bỏ qua khocircng yacute nghĩa trong file cấu higravenh
Trong file cấu higravenh cograven coacute hai pheacutep gaacuten rất thường xuyecircn được sử dụng pheacutep gaacuten ldquo=rdquo lagrave dugraveng cho việc gaacuten caacutec biến cograven pheacutep gaacuten ldquo=gtrdquo dugraveng cho việc gaacutencaacutec đối tượng sau đacircy lagrave một viacute dụ cho file cấu higravenh
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5072
Taacutec Giả Lecirc Quốc Toagraven
50
Đacircy lagrave caacutec dograveng chuacute thiacutech
[section]
Key=value gaacuten giaacute trị cho biến
[section2]
Key=gtobject Gaacuten giaacute trị cho đối tượng
Cuacute phaacutep thực hiện giống nhau cho tất cả caacutec file cấu higravenh nhưng coacute vagravei kiểukhaacutec nhau cho mỗi file cầu higravenh dựa vagraveo thức caacutech hoạt động của chuacuteng
3 Caacutec kiểu ảnh hưởng trong tập cấu higravenh
Coacute ba kiểu caacutech thức hoạt động của tập tin cấu higravenh như sau
Kiểu Caacutech hoạt động File cầu higravenh Viacute dụ
S i m p l eGroup
Coacute hiệu lực trecircntừng dograveng trongfile
Extensionconf
Exten=gt4001dial(sip400)
O p t i o ninheritance
Dograveng khai baacuteosau thừa kếnhững thocircng sốkhai baacuteo trước
Zapataconf [channels]
Context=From_PSTN
Signalling=fxs_ks
Group=1Channel=gt1
C o m p l e xEntity
Mỗi entity nhậnmột ngữ cảnh
sipconf
iaxconf
[cisco]
Type=friend
Secret=12345
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5172
Taacutec Giả Lecirc Quốc Toagraven
51
Host=192168165
Context=NoiBo
[xten]
Type=friend
Secret=6789
Host=dynamic
Context=NoiBo
1 Simple Group
Đacircy lagrave kiểu cấu higravenh đơn giản nhất thường sử dụng trong caacutec fileextentionconf meetmeconf voicemailconf tương ứng với mỗi dograveng khai baacuteo lagravemột đối tượng coacute yacute nghĩa trecircn dograveng đoacute
Viacute dụ
Extentionconf [section]
object1=gt op1op2op3
object2=gt op1bop2bop3b
Trong viacute dụ trecircn mỗi dograveng tương ứng với caacutec toaacuten tử khaacutec nhau object1 coacute caacutectoaacuten từ op1 op2 op3 trong khi đoacute object2 lại coacute caacutec toaacuten từ op1b op2b op3b
2 Option inheritance
Đacircy lagrave cấu higravenh kiểu thừa kế thường được cấu higravenh trong caacutec file zapataconfagentconf với kiểu cấu higravenh nagravey thigrave caacutec dograveng phiacutea dưới coacute thể thừa kế caacutec thocircng sdograveng phiacutea trecircn tương ứng với mỗi section caacutec dograveng phiacutea dưới coacute thể thay đổi caacutecthocircng số cho tươngứng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5272
Taacutec Giả Lecirc Quốc Toagraven
52
Viacute dụ
Extentionconf
[section]
Op1=bas
Op2=adv
Object1=gt1
Op1=int
Object1=gt2
Với cấu higravenh trecircn coacute thể giải thiacutech như sau object1=gt1 thừa hưởng hai thocircngsố ở phiacutea trecircn đoacute lagrave op1=bas vagrave op2=adv trong khi đoacute đối với object1=gt2 với thocircngsố op1=int được khai baacuteo lại necircn object1=gt2 được thừa kế từ hai thocircng số op1=invagrave op2=adv
3 Complex Entity
Với cấu kiểu nagravey được tổ chức thagravenh nhiều entity ứng với mỗi entity coacute nhiềthocircng số được khai baacuteo mỗi entity ở đacircy chiacutenh lagrave caacutec section để khai baacuteo caacutec kecircnhthocircng tin Cấu higravenh thường được sử dụng trong caacutec file iaxconf sipconf
Viacute dụ
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5372
Taacutec Giả Lecirc Quốc Toagraven
53
[entity1]
Op1=value1
Op2=value2
[entity2]
Op1=value3
Op2=value4
Entity1 coacute caacutec giaacute trị value1 vagrave value2 cho thocircng số op1 vagrave op2 trong khi đoacute
cũng lagrave thocircng số op1 vagrave op 2 nhưng coacute caacutec giaacute trị khaacutec lagrave value3 vagrave value4 choentity2
4 Cấu higravenh giao tiếp với mạng PSTN
1 Ngữ cảnh kết nối
Để kết nối với mạng PSTN chuacuteng ta cần phải coacute một card TDM với Cổng
FXO vagrave một đường dacircy điện thoại hoặc coacute thể lagrave một tổng đagravei nội bộ PBX Cnhiều nhagrave sản xuất phần cứng khaacutec nhau nhưng trong phần cấu higravenh dưới dacircy lagrave cấhigravenh cho card zapata TDM01B của digium (card nagravey hiện nay giaacute baacuten khoảng175$)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4572
Taacutec Giả Lecirc Quốc Toagraven
45
Thư mục tmp sử dụng để lưu trữ những thocircng tin tạm để luocircn bảo đảm khocircnxảy ra tigravenh trạng đọc vagrave viết tập tin cugraveng một luacutec Khi yecircu cầu xử lyacute tập tin chuacuteng thao taacutec trecircn thư mục tmp trước khi lưu vagraveo tập tin điacutech
Tất cả caacutec lời nhắc thoại từ phiacutea người sử dụng vagrave caacutec lời nhắc thoại sử dụ
cho thao taacutec hộp voicemail đều được chứa trong thư mục voicemail Một hộp thưthoại được tạo ra ứng với một maacutey nội bộ trong tập tin voicemailconf sẽ được tra một thư mục con tương ứng cho maacutey nội bộ đoacute tại thư mục voicemail
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4672
Taacutec Giả Lecirc Quốc Toagraven
46
5 varrun
Thư mục varrun chứa thocircng tin process ID(pid) cho tất cả caacutec tiến trigravenh đang
hoạt động trong hệ thống bao gồm cả Asterisk Lưu yacute lagrave ứng với mỗi hệ điều hagravethư mục varrun coacute thể khaacutec
6 varlogasterisk
Thư mục varlogasterisk lagrave nơi Asterisk chứa tất cả caacutec tập tin nhật kyacute haycograven gọi lagrave tập tin log Chuacuteng ta coacute thể tuỳ biến caacutec loại thocircng tin được lưu trong caacutec
tập tin log khaacutec nhau qua tập tin cấu higravenh loggerconf đặt tại thư mục etcasterisk7 varlogasteriskcdr-csv
Thư mục varlogasteriskcdr-csv được sử dụng để lưu chi tiết cuộc gọi CDRThocircng tin mặc định về chi tiết thocircng tin cuộc gọi lưu trữ trong tập tin MasterCVSnhưng thường thigrave ứng với mỗi matilde accountcode sẽ tạo một thư mục riecircng để lưu ctiết cuộc gọi cho maacutey đoacute
5 Một số lệnh thao taacutec trecircn hệ thống asterisk
Asterisk coacute hai thagravenh phần được xacircy dụng tiacutech hợp với nhau vagrave chạy songsong nhau
Asterisk Server bigravenh thường chạy ở chế độ nền(background) giống caacutec sevicestrong window
Asterisk Client ở chế độ dograveng lệnh CLI giao tiếp với Asterisk Server thực thicaacutec lệnh để kiểm tra hay xem caacutec thocircng tin của server
Để Chạy vagrave dừng Asterisk ở chế độ nền chuacuteng ta thực hiện lệnh sau
etcinitdasterisk (start|stop)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4772
Taacutec Giả Lecirc Quốc Toagraven
47
Một khi Asterisk đatilde chạy chuacuteng ta coacute thể chuyển qua chế độ CLI từ dấu nhắlệnh của linux như sau
asterisk ndashr
Khi vagraveo chế độ lệnh nếu muốn thoaacutet về lại dấu nhắc linux chuacuteng ta dugraveng lệnh
CLIgtexit
Caacutec lệnh cơ bản thực hiện tại CLIgt
Bất cứ khi nagraveo chỉnh sửa caacutec tập tin cấu higravenh chuacuteng ta đều cần phải nạp lại đcaacutec thay đổi coacute hiệu lực điều đoacute thực hiện bằng lệnh
CLIgtreload
Bậc chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 debug
CLIgt SIP debug
Tắt chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 no debug
CLIgt SIP no debug
Hiển thị caacutec trạng thaacutei thocircng tin của users peers vagravechannels của SIP hoặc IAX2
CLIgt sip show users
CLIgt sip show peers
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4872
Taacutec Giả Lecirc Quốc Toagraven
48
CLIgt sip show channels
CLIgt iax2 show peers
CLIgt iax2 show users
CLIgt iax2 show channels
Đến thời điểm nagravey coacute thể noacutei chuacuteng ta đatilde hoagraven thagravenh cagravei đặt hệ thốngAsterisk cagravei đặt xong mới lagrave bước mở đầu để cho hệ thống Asterisk hoạt động vtừng ứng dụng cụ thể chuacuteng sẽ tiếp tục thực hiện caacutec giai đoạn được xem lagrave qutrọng nhất trong việc triển khai hệ thống Asterisk đoacute lagrave giai đoạn cấu higravenh hệ thốnlecircn kế hoạch Diaplan chương cograven lại đều nhắm đến mục tiecircu nagravey
4 CẤU HIgraveNH HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Sau khi hoagraven tất phần cagravei đặt hệ thống asterisk một bước quan trọng tiếp thelagrave cấu higravenh hệ thống coacute thể noacutei đacircy lagrave bước quan trọng nhất của việc khiển khai thống đến với từng ứng dụng cụ thể Trong chương nagravey xin giới thiệu caacutei nhigraven đầtiecircn về việc cấu higravenh trước khi đi sacircu hơn ở những chương sau những gigrave giới thiệ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4972
Taacutec Giả Lecirc Quốc Toagraven
49
trong chương nagravey lagrave nền moacuteng cơ bản nhưng đủ để hiểu lagravem thế nagraveo hệ thống coacute thoạt động được nội dung chiacutenh bao gồm
+ Thao taacutec cấu higravenh trecircn hệ thống tập tin của asterisk
+ Caacutech cagravei đặt phần mềm softphone trecircn cocircng nghệ sip
+ Cấu higravenh cho hai maacutey softphone liecircn lạc với nhau
+ Cấu higravenh phaacutet thocircng điệp
+ Quay số qua Sip vagrave mạng PSTN
2 Tập Tin cấu higravenh
Tất cả caacutec file cấu higravenh cho hệ thống asterisk đều nằm tại thư mục etcasterisngoại trừ file zaptelconf cấu higravenh cho phần cứng TDM nằm tại thư mục etc caacutecthức cấu higravenh giống như tập tin ini của window vậy Caacutec nội dung sau dấu chấm phảy lagrave nội dung chuacute thiacutech trong file cấu higravenh giống như chuacute thiacutech trong ngocircn ngữ
lập trigravenh C lagrave dấu Tất cả caacutec khoảng trắng trong tập tin đều được bỏ qua khocircng yacute nghĩa trong file cấu higravenh
Trong file cấu higravenh cograven coacute hai pheacutep gaacuten rất thường xuyecircn được sử dụng pheacutep gaacuten ldquo=rdquo lagrave dugraveng cho việc gaacuten caacutec biến cograven pheacutep gaacuten ldquo=gtrdquo dugraveng cho việc gaacutencaacutec đối tượng sau đacircy lagrave một viacute dụ cho file cấu higravenh
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5072
Taacutec Giả Lecirc Quốc Toagraven
50
Đacircy lagrave caacutec dograveng chuacute thiacutech
[section]
Key=value gaacuten giaacute trị cho biến
[section2]
Key=gtobject Gaacuten giaacute trị cho đối tượng
Cuacute phaacutep thực hiện giống nhau cho tất cả caacutec file cấu higravenh nhưng coacute vagravei kiểukhaacutec nhau cho mỗi file cầu higravenh dựa vagraveo thức caacutech hoạt động của chuacuteng
3 Caacutec kiểu ảnh hưởng trong tập cấu higravenh
Coacute ba kiểu caacutech thức hoạt động của tập tin cấu higravenh như sau
Kiểu Caacutech hoạt động File cầu higravenh Viacute dụ
S i m p l eGroup
Coacute hiệu lực trecircntừng dograveng trongfile
Extensionconf
Exten=gt4001dial(sip400)
O p t i o ninheritance
Dograveng khai baacuteosau thừa kếnhững thocircng sốkhai baacuteo trước
Zapataconf [channels]
Context=From_PSTN
Signalling=fxs_ks
Group=1Channel=gt1
C o m p l e xEntity
Mỗi entity nhậnmột ngữ cảnh
sipconf
iaxconf
[cisco]
Type=friend
Secret=12345
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5172
Taacutec Giả Lecirc Quốc Toagraven
51
Host=192168165
Context=NoiBo
[xten]
Type=friend
Secret=6789
Host=dynamic
Context=NoiBo
1 Simple Group
Đacircy lagrave kiểu cấu higravenh đơn giản nhất thường sử dụng trong caacutec fileextentionconf meetmeconf voicemailconf tương ứng với mỗi dograveng khai baacuteo lagravemột đối tượng coacute yacute nghĩa trecircn dograveng đoacute
Viacute dụ
Extentionconf [section]
object1=gt op1op2op3
object2=gt op1bop2bop3b
Trong viacute dụ trecircn mỗi dograveng tương ứng với caacutec toaacuten tử khaacutec nhau object1 coacute caacutectoaacuten từ op1 op2 op3 trong khi đoacute object2 lại coacute caacutec toaacuten từ op1b op2b op3b
2 Option inheritance
Đacircy lagrave cấu higravenh kiểu thừa kế thường được cấu higravenh trong caacutec file zapataconfagentconf với kiểu cấu higravenh nagravey thigrave caacutec dograveng phiacutea dưới coacute thể thừa kế caacutec thocircng sdograveng phiacutea trecircn tương ứng với mỗi section caacutec dograveng phiacutea dưới coacute thể thay đổi caacutecthocircng số cho tươngứng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5272
Taacutec Giả Lecirc Quốc Toagraven
52
Viacute dụ
Extentionconf
[section]
Op1=bas
Op2=adv
Object1=gt1
Op1=int
Object1=gt2
Với cấu higravenh trecircn coacute thể giải thiacutech như sau object1=gt1 thừa hưởng hai thocircngsố ở phiacutea trecircn đoacute lagrave op1=bas vagrave op2=adv trong khi đoacute đối với object1=gt2 với thocircngsố op1=int được khai baacuteo lại necircn object1=gt2 được thừa kế từ hai thocircng số op1=invagrave op2=adv
3 Complex Entity
Với cấu kiểu nagravey được tổ chức thagravenh nhiều entity ứng với mỗi entity coacute nhiềthocircng số được khai baacuteo mỗi entity ở đacircy chiacutenh lagrave caacutec section để khai baacuteo caacutec kecircnhthocircng tin Cấu higravenh thường được sử dụng trong caacutec file iaxconf sipconf
Viacute dụ
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5372
Taacutec Giả Lecirc Quốc Toagraven
53
[entity1]
Op1=value1
Op2=value2
[entity2]
Op1=value3
Op2=value4
Entity1 coacute caacutec giaacute trị value1 vagrave value2 cho thocircng số op1 vagrave op2 trong khi đoacute
cũng lagrave thocircng số op1 vagrave op 2 nhưng coacute caacutec giaacute trị khaacutec lagrave value3 vagrave value4 choentity2
4 Cấu higravenh giao tiếp với mạng PSTN
1 Ngữ cảnh kết nối
Để kết nối với mạng PSTN chuacuteng ta cần phải coacute một card TDM với Cổng
FXO vagrave một đường dacircy điện thoại hoặc coacute thể lagrave một tổng đagravei nội bộ PBX Cnhiều nhagrave sản xuất phần cứng khaacutec nhau nhưng trong phần cấu higravenh dưới dacircy lagrave cấhigravenh cho card zapata TDM01B của digium (card nagravey hiện nay giaacute baacuten khoảng175$)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4672
Taacutec Giả Lecirc Quốc Toagraven
46
5 varrun
Thư mục varrun chứa thocircng tin process ID(pid) cho tất cả caacutec tiến trigravenh đang
hoạt động trong hệ thống bao gồm cả Asterisk Lưu yacute lagrave ứng với mỗi hệ điều hagravethư mục varrun coacute thể khaacutec
6 varlogasterisk
Thư mục varlogasterisk lagrave nơi Asterisk chứa tất cả caacutec tập tin nhật kyacute haycograven gọi lagrave tập tin log Chuacuteng ta coacute thể tuỳ biến caacutec loại thocircng tin được lưu trong caacutec
tập tin log khaacutec nhau qua tập tin cấu higravenh loggerconf đặt tại thư mục etcasterisk7 varlogasteriskcdr-csv
Thư mục varlogasteriskcdr-csv được sử dụng để lưu chi tiết cuộc gọi CDRThocircng tin mặc định về chi tiết thocircng tin cuộc gọi lưu trữ trong tập tin MasterCVSnhưng thường thigrave ứng với mỗi matilde accountcode sẽ tạo một thư mục riecircng để lưu ctiết cuộc gọi cho maacutey đoacute
5 Một số lệnh thao taacutec trecircn hệ thống asterisk
Asterisk coacute hai thagravenh phần được xacircy dụng tiacutech hợp với nhau vagrave chạy songsong nhau
Asterisk Server bigravenh thường chạy ở chế độ nền(background) giống caacutec sevicestrong window
Asterisk Client ở chế độ dograveng lệnh CLI giao tiếp với Asterisk Server thực thicaacutec lệnh để kiểm tra hay xem caacutec thocircng tin của server
Để Chạy vagrave dừng Asterisk ở chế độ nền chuacuteng ta thực hiện lệnh sau
etcinitdasterisk (start|stop)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4772
Taacutec Giả Lecirc Quốc Toagraven
47
Một khi Asterisk đatilde chạy chuacuteng ta coacute thể chuyển qua chế độ CLI từ dấu nhắlệnh của linux như sau
asterisk ndashr
Khi vagraveo chế độ lệnh nếu muốn thoaacutet về lại dấu nhắc linux chuacuteng ta dugraveng lệnh
CLIgtexit
Caacutec lệnh cơ bản thực hiện tại CLIgt
Bất cứ khi nagraveo chỉnh sửa caacutec tập tin cấu higravenh chuacuteng ta đều cần phải nạp lại đcaacutec thay đổi coacute hiệu lực điều đoacute thực hiện bằng lệnh
CLIgtreload
Bậc chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 debug
CLIgt SIP debug
Tắt chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 no debug
CLIgt SIP no debug
Hiển thị caacutec trạng thaacutei thocircng tin của users peers vagravechannels của SIP hoặc IAX2
CLIgt sip show users
CLIgt sip show peers
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4872
Taacutec Giả Lecirc Quốc Toagraven
48
CLIgt sip show channels
CLIgt iax2 show peers
CLIgt iax2 show users
CLIgt iax2 show channels
Đến thời điểm nagravey coacute thể noacutei chuacuteng ta đatilde hoagraven thagravenh cagravei đặt hệ thốngAsterisk cagravei đặt xong mới lagrave bước mở đầu để cho hệ thống Asterisk hoạt động vtừng ứng dụng cụ thể chuacuteng sẽ tiếp tục thực hiện caacutec giai đoạn được xem lagrave qutrọng nhất trong việc triển khai hệ thống Asterisk đoacute lagrave giai đoạn cấu higravenh hệ thốnlecircn kế hoạch Diaplan chương cograven lại đều nhắm đến mục tiecircu nagravey
4 CẤU HIgraveNH HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Sau khi hoagraven tất phần cagravei đặt hệ thống asterisk một bước quan trọng tiếp thelagrave cấu higravenh hệ thống coacute thể noacutei đacircy lagrave bước quan trọng nhất của việc khiển khai thống đến với từng ứng dụng cụ thể Trong chương nagravey xin giới thiệu caacutei nhigraven đầtiecircn về việc cấu higravenh trước khi đi sacircu hơn ở những chương sau những gigrave giới thiệ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4972
Taacutec Giả Lecirc Quốc Toagraven
49
trong chương nagravey lagrave nền moacuteng cơ bản nhưng đủ để hiểu lagravem thế nagraveo hệ thống coacute thoạt động được nội dung chiacutenh bao gồm
+ Thao taacutec cấu higravenh trecircn hệ thống tập tin của asterisk
+ Caacutech cagravei đặt phần mềm softphone trecircn cocircng nghệ sip
+ Cấu higravenh cho hai maacutey softphone liecircn lạc với nhau
+ Cấu higravenh phaacutet thocircng điệp
+ Quay số qua Sip vagrave mạng PSTN
2 Tập Tin cấu higravenh
Tất cả caacutec file cấu higravenh cho hệ thống asterisk đều nằm tại thư mục etcasterisngoại trừ file zaptelconf cấu higravenh cho phần cứng TDM nằm tại thư mục etc caacutecthức cấu higravenh giống như tập tin ini của window vậy Caacutec nội dung sau dấu chấm phảy lagrave nội dung chuacute thiacutech trong file cấu higravenh giống như chuacute thiacutech trong ngocircn ngữ
lập trigravenh C lagrave dấu Tất cả caacutec khoảng trắng trong tập tin đều được bỏ qua khocircng yacute nghĩa trong file cấu higravenh
Trong file cấu higravenh cograven coacute hai pheacutep gaacuten rất thường xuyecircn được sử dụng pheacutep gaacuten ldquo=rdquo lagrave dugraveng cho việc gaacuten caacutec biến cograven pheacutep gaacuten ldquo=gtrdquo dugraveng cho việc gaacutencaacutec đối tượng sau đacircy lagrave một viacute dụ cho file cấu higravenh
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5072
Taacutec Giả Lecirc Quốc Toagraven
50
Đacircy lagrave caacutec dograveng chuacute thiacutech
[section]
Key=value gaacuten giaacute trị cho biến
[section2]
Key=gtobject Gaacuten giaacute trị cho đối tượng
Cuacute phaacutep thực hiện giống nhau cho tất cả caacutec file cấu higravenh nhưng coacute vagravei kiểukhaacutec nhau cho mỗi file cầu higravenh dựa vagraveo thức caacutech hoạt động của chuacuteng
3 Caacutec kiểu ảnh hưởng trong tập cấu higravenh
Coacute ba kiểu caacutech thức hoạt động của tập tin cấu higravenh như sau
Kiểu Caacutech hoạt động File cầu higravenh Viacute dụ
S i m p l eGroup
Coacute hiệu lực trecircntừng dograveng trongfile
Extensionconf
Exten=gt4001dial(sip400)
O p t i o ninheritance
Dograveng khai baacuteosau thừa kếnhững thocircng sốkhai baacuteo trước
Zapataconf [channels]
Context=From_PSTN
Signalling=fxs_ks
Group=1Channel=gt1
C o m p l e xEntity
Mỗi entity nhậnmột ngữ cảnh
sipconf
iaxconf
[cisco]
Type=friend
Secret=12345
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5172
Taacutec Giả Lecirc Quốc Toagraven
51
Host=192168165
Context=NoiBo
[xten]
Type=friend
Secret=6789
Host=dynamic
Context=NoiBo
1 Simple Group
Đacircy lagrave kiểu cấu higravenh đơn giản nhất thường sử dụng trong caacutec fileextentionconf meetmeconf voicemailconf tương ứng với mỗi dograveng khai baacuteo lagravemột đối tượng coacute yacute nghĩa trecircn dograveng đoacute
Viacute dụ
Extentionconf [section]
object1=gt op1op2op3
object2=gt op1bop2bop3b
Trong viacute dụ trecircn mỗi dograveng tương ứng với caacutec toaacuten tử khaacutec nhau object1 coacute caacutectoaacuten từ op1 op2 op3 trong khi đoacute object2 lại coacute caacutec toaacuten từ op1b op2b op3b
2 Option inheritance
Đacircy lagrave cấu higravenh kiểu thừa kế thường được cấu higravenh trong caacutec file zapataconfagentconf với kiểu cấu higravenh nagravey thigrave caacutec dograveng phiacutea dưới coacute thể thừa kế caacutec thocircng sdograveng phiacutea trecircn tương ứng với mỗi section caacutec dograveng phiacutea dưới coacute thể thay đổi caacutecthocircng số cho tươngứng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5272
Taacutec Giả Lecirc Quốc Toagraven
52
Viacute dụ
Extentionconf
[section]
Op1=bas
Op2=adv
Object1=gt1
Op1=int
Object1=gt2
Với cấu higravenh trecircn coacute thể giải thiacutech như sau object1=gt1 thừa hưởng hai thocircngsố ở phiacutea trecircn đoacute lagrave op1=bas vagrave op2=adv trong khi đoacute đối với object1=gt2 với thocircngsố op1=int được khai baacuteo lại necircn object1=gt2 được thừa kế từ hai thocircng số op1=invagrave op2=adv
3 Complex Entity
Với cấu kiểu nagravey được tổ chức thagravenh nhiều entity ứng với mỗi entity coacute nhiềthocircng số được khai baacuteo mỗi entity ở đacircy chiacutenh lagrave caacutec section để khai baacuteo caacutec kecircnhthocircng tin Cấu higravenh thường được sử dụng trong caacutec file iaxconf sipconf
Viacute dụ
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5372
Taacutec Giả Lecirc Quốc Toagraven
53
[entity1]
Op1=value1
Op2=value2
[entity2]
Op1=value3
Op2=value4
Entity1 coacute caacutec giaacute trị value1 vagrave value2 cho thocircng số op1 vagrave op2 trong khi đoacute
cũng lagrave thocircng số op1 vagrave op 2 nhưng coacute caacutec giaacute trị khaacutec lagrave value3 vagrave value4 choentity2
4 Cấu higravenh giao tiếp với mạng PSTN
1 Ngữ cảnh kết nối
Để kết nối với mạng PSTN chuacuteng ta cần phải coacute một card TDM với Cổng
FXO vagrave một đường dacircy điện thoại hoặc coacute thể lagrave một tổng đagravei nội bộ PBX Cnhiều nhagrave sản xuất phần cứng khaacutec nhau nhưng trong phần cấu higravenh dưới dacircy lagrave cấhigravenh cho card zapata TDM01B của digium (card nagravey hiện nay giaacute baacuten khoảng175$)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4772
Taacutec Giả Lecirc Quốc Toagraven
47
Một khi Asterisk đatilde chạy chuacuteng ta coacute thể chuyển qua chế độ CLI từ dấu nhắlệnh của linux như sau
asterisk ndashr
Khi vagraveo chế độ lệnh nếu muốn thoaacutet về lại dấu nhắc linux chuacuteng ta dugraveng lệnh
CLIgtexit
Caacutec lệnh cơ bản thực hiện tại CLIgt
Bất cứ khi nagraveo chỉnh sửa caacutec tập tin cấu higravenh chuacuteng ta đều cần phải nạp lại đcaacutec thay đổi coacute hiệu lực điều đoacute thực hiện bằng lệnh
CLIgtreload
Bậc chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 debug
CLIgt SIP debug
Tắt chế độ debug cho kecircnh thocircng tin SIP hoặc IAX2
CLIgt IAX2 no debug
CLIgt SIP no debug
Hiển thị caacutec trạng thaacutei thocircng tin của users peers vagravechannels của SIP hoặc IAX2
CLIgt sip show users
CLIgt sip show peers
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4872
Taacutec Giả Lecirc Quốc Toagraven
48
CLIgt sip show channels
CLIgt iax2 show peers
CLIgt iax2 show users
CLIgt iax2 show channels
Đến thời điểm nagravey coacute thể noacutei chuacuteng ta đatilde hoagraven thagravenh cagravei đặt hệ thốngAsterisk cagravei đặt xong mới lagrave bước mở đầu để cho hệ thống Asterisk hoạt động vtừng ứng dụng cụ thể chuacuteng sẽ tiếp tục thực hiện caacutec giai đoạn được xem lagrave qutrọng nhất trong việc triển khai hệ thống Asterisk đoacute lagrave giai đoạn cấu higravenh hệ thốnlecircn kế hoạch Diaplan chương cograven lại đều nhắm đến mục tiecircu nagravey
4 CẤU HIgraveNH HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Sau khi hoagraven tất phần cagravei đặt hệ thống asterisk một bước quan trọng tiếp thelagrave cấu higravenh hệ thống coacute thể noacutei đacircy lagrave bước quan trọng nhất của việc khiển khai thống đến với từng ứng dụng cụ thể Trong chương nagravey xin giới thiệu caacutei nhigraven đầtiecircn về việc cấu higravenh trước khi đi sacircu hơn ở những chương sau những gigrave giới thiệ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4972
Taacutec Giả Lecirc Quốc Toagraven
49
trong chương nagravey lagrave nền moacuteng cơ bản nhưng đủ để hiểu lagravem thế nagraveo hệ thống coacute thoạt động được nội dung chiacutenh bao gồm
+ Thao taacutec cấu higravenh trecircn hệ thống tập tin của asterisk
+ Caacutech cagravei đặt phần mềm softphone trecircn cocircng nghệ sip
+ Cấu higravenh cho hai maacutey softphone liecircn lạc với nhau
+ Cấu higravenh phaacutet thocircng điệp
+ Quay số qua Sip vagrave mạng PSTN
2 Tập Tin cấu higravenh
Tất cả caacutec file cấu higravenh cho hệ thống asterisk đều nằm tại thư mục etcasterisngoại trừ file zaptelconf cấu higravenh cho phần cứng TDM nằm tại thư mục etc caacutecthức cấu higravenh giống như tập tin ini của window vậy Caacutec nội dung sau dấu chấm phảy lagrave nội dung chuacute thiacutech trong file cấu higravenh giống như chuacute thiacutech trong ngocircn ngữ
lập trigravenh C lagrave dấu Tất cả caacutec khoảng trắng trong tập tin đều được bỏ qua khocircng yacute nghĩa trong file cấu higravenh
Trong file cấu higravenh cograven coacute hai pheacutep gaacuten rất thường xuyecircn được sử dụng pheacutep gaacuten ldquo=rdquo lagrave dugraveng cho việc gaacuten caacutec biến cograven pheacutep gaacuten ldquo=gtrdquo dugraveng cho việc gaacutencaacutec đối tượng sau đacircy lagrave một viacute dụ cho file cấu higravenh
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5072
Taacutec Giả Lecirc Quốc Toagraven
50
Đacircy lagrave caacutec dograveng chuacute thiacutech
[section]
Key=value gaacuten giaacute trị cho biến
[section2]
Key=gtobject Gaacuten giaacute trị cho đối tượng
Cuacute phaacutep thực hiện giống nhau cho tất cả caacutec file cấu higravenh nhưng coacute vagravei kiểukhaacutec nhau cho mỗi file cầu higravenh dựa vagraveo thức caacutech hoạt động của chuacuteng
3 Caacutec kiểu ảnh hưởng trong tập cấu higravenh
Coacute ba kiểu caacutech thức hoạt động của tập tin cấu higravenh như sau
Kiểu Caacutech hoạt động File cầu higravenh Viacute dụ
S i m p l eGroup
Coacute hiệu lực trecircntừng dograveng trongfile
Extensionconf
Exten=gt4001dial(sip400)
O p t i o ninheritance
Dograveng khai baacuteosau thừa kếnhững thocircng sốkhai baacuteo trước
Zapataconf [channels]
Context=From_PSTN
Signalling=fxs_ks
Group=1Channel=gt1
C o m p l e xEntity
Mỗi entity nhậnmột ngữ cảnh
sipconf
iaxconf
[cisco]
Type=friend
Secret=12345
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5172
Taacutec Giả Lecirc Quốc Toagraven
51
Host=192168165
Context=NoiBo
[xten]
Type=friend
Secret=6789
Host=dynamic
Context=NoiBo
1 Simple Group
Đacircy lagrave kiểu cấu higravenh đơn giản nhất thường sử dụng trong caacutec fileextentionconf meetmeconf voicemailconf tương ứng với mỗi dograveng khai baacuteo lagravemột đối tượng coacute yacute nghĩa trecircn dograveng đoacute
Viacute dụ
Extentionconf [section]
object1=gt op1op2op3
object2=gt op1bop2bop3b
Trong viacute dụ trecircn mỗi dograveng tương ứng với caacutec toaacuten tử khaacutec nhau object1 coacute caacutectoaacuten từ op1 op2 op3 trong khi đoacute object2 lại coacute caacutec toaacuten từ op1b op2b op3b
2 Option inheritance
Đacircy lagrave cấu higravenh kiểu thừa kế thường được cấu higravenh trong caacutec file zapataconfagentconf với kiểu cấu higravenh nagravey thigrave caacutec dograveng phiacutea dưới coacute thể thừa kế caacutec thocircng sdograveng phiacutea trecircn tương ứng với mỗi section caacutec dograveng phiacutea dưới coacute thể thay đổi caacutecthocircng số cho tươngứng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5272
Taacutec Giả Lecirc Quốc Toagraven
52
Viacute dụ
Extentionconf
[section]
Op1=bas
Op2=adv
Object1=gt1
Op1=int
Object1=gt2
Với cấu higravenh trecircn coacute thể giải thiacutech như sau object1=gt1 thừa hưởng hai thocircngsố ở phiacutea trecircn đoacute lagrave op1=bas vagrave op2=adv trong khi đoacute đối với object1=gt2 với thocircngsố op1=int được khai baacuteo lại necircn object1=gt2 được thừa kế từ hai thocircng số op1=invagrave op2=adv
3 Complex Entity
Với cấu kiểu nagravey được tổ chức thagravenh nhiều entity ứng với mỗi entity coacute nhiềthocircng số được khai baacuteo mỗi entity ở đacircy chiacutenh lagrave caacutec section để khai baacuteo caacutec kecircnhthocircng tin Cấu higravenh thường được sử dụng trong caacutec file iaxconf sipconf
Viacute dụ
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5372
Taacutec Giả Lecirc Quốc Toagraven
53
[entity1]
Op1=value1
Op2=value2
[entity2]
Op1=value3
Op2=value4
Entity1 coacute caacutec giaacute trị value1 vagrave value2 cho thocircng số op1 vagrave op2 trong khi đoacute
cũng lagrave thocircng số op1 vagrave op 2 nhưng coacute caacutec giaacute trị khaacutec lagrave value3 vagrave value4 choentity2
4 Cấu higravenh giao tiếp với mạng PSTN
1 Ngữ cảnh kết nối
Để kết nối với mạng PSTN chuacuteng ta cần phải coacute một card TDM với Cổng
FXO vagrave một đường dacircy điện thoại hoặc coacute thể lagrave một tổng đagravei nội bộ PBX Cnhiều nhagrave sản xuất phần cứng khaacutec nhau nhưng trong phần cấu higravenh dưới dacircy lagrave cấhigravenh cho card zapata TDM01B của digium (card nagravey hiện nay giaacute baacuten khoảng175$)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4872
Taacutec Giả Lecirc Quốc Toagraven
48
CLIgt sip show channels
CLIgt iax2 show peers
CLIgt iax2 show users
CLIgt iax2 show channels
Đến thời điểm nagravey coacute thể noacutei chuacuteng ta đatilde hoagraven thagravenh cagravei đặt hệ thốngAsterisk cagravei đặt xong mới lagrave bước mở đầu để cho hệ thống Asterisk hoạt động vtừng ứng dụng cụ thể chuacuteng sẽ tiếp tục thực hiện caacutec giai đoạn được xem lagrave qutrọng nhất trong việc triển khai hệ thống Asterisk đoacute lagrave giai đoạn cấu higravenh hệ thốnlecircn kế hoạch Diaplan chương cograven lại đều nhắm đến mục tiecircu nagravey
4 CẤU HIgraveNH HỆ THỐNG ASTERISK
1 GIỚI THIỆU
Sau khi hoagraven tất phần cagravei đặt hệ thống asterisk một bước quan trọng tiếp thelagrave cấu higravenh hệ thống coacute thể noacutei đacircy lagrave bước quan trọng nhất của việc khiển khai thống đến với từng ứng dụng cụ thể Trong chương nagravey xin giới thiệu caacutei nhigraven đầtiecircn về việc cấu higravenh trước khi đi sacircu hơn ở những chương sau những gigrave giới thiệ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4972
Taacutec Giả Lecirc Quốc Toagraven
49
trong chương nagravey lagrave nền moacuteng cơ bản nhưng đủ để hiểu lagravem thế nagraveo hệ thống coacute thoạt động được nội dung chiacutenh bao gồm
+ Thao taacutec cấu higravenh trecircn hệ thống tập tin của asterisk
+ Caacutech cagravei đặt phần mềm softphone trecircn cocircng nghệ sip
+ Cấu higravenh cho hai maacutey softphone liecircn lạc với nhau
+ Cấu higravenh phaacutet thocircng điệp
+ Quay số qua Sip vagrave mạng PSTN
2 Tập Tin cấu higravenh
Tất cả caacutec file cấu higravenh cho hệ thống asterisk đều nằm tại thư mục etcasterisngoại trừ file zaptelconf cấu higravenh cho phần cứng TDM nằm tại thư mục etc caacutecthức cấu higravenh giống như tập tin ini của window vậy Caacutec nội dung sau dấu chấm phảy lagrave nội dung chuacute thiacutech trong file cấu higravenh giống như chuacute thiacutech trong ngocircn ngữ
lập trigravenh C lagrave dấu Tất cả caacutec khoảng trắng trong tập tin đều được bỏ qua khocircng yacute nghĩa trong file cấu higravenh
Trong file cấu higravenh cograven coacute hai pheacutep gaacuten rất thường xuyecircn được sử dụng pheacutep gaacuten ldquo=rdquo lagrave dugraveng cho việc gaacuten caacutec biến cograven pheacutep gaacuten ldquo=gtrdquo dugraveng cho việc gaacutencaacutec đối tượng sau đacircy lagrave một viacute dụ cho file cấu higravenh
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5072
Taacutec Giả Lecirc Quốc Toagraven
50
Đacircy lagrave caacutec dograveng chuacute thiacutech
[section]
Key=value gaacuten giaacute trị cho biến
[section2]
Key=gtobject Gaacuten giaacute trị cho đối tượng
Cuacute phaacutep thực hiện giống nhau cho tất cả caacutec file cấu higravenh nhưng coacute vagravei kiểukhaacutec nhau cho mỗi file cầu higravenh dựa vagraveo thức caacutech hoạt động của chuacuteng
3 Caacutec kiểu ảnh hưởng trong tập cấu higravenh
Coacute ba kiểu caacutech thức hoạt động của tập tin cấu higravenh như sau
Kiểu Caacutech hoạt động File cầu higravenh Viacute dụ
S i m p l eGroup
Coacute hiệu lực trecircntừng dograveng trongfile
Extensionconf
Exten=gt4001dial(sip400)
O p t i o ninheritance
Dograveng khai baacuteosau thừa kếnhững thocircng sốkhai baacuteo trước
Zapataconf [channels]
Context=From_PSTN
Signalling=fxs_ks
Group=1Channel=gt1
C o m p l e xEntity
Mỗi entity nhậnmột ngữ cảnh
sipconf
iaxconf
[cisco]
Type=friend
Secret=12345
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5172
Taacutec Giả Lecirc Quốc Toagraven
51
Host=192168165
Context=NoiBo
[xten]
Type=friend
Secret=6789
Host=dynamic
Context=NoiBo
1 Simple Group
Đacircy lagrave kiểu cấu higravenh đơn giản nhất thường sử dụng trong caacutec fileextentionconf meetmeconf voicemailconf tương ứng với mỗi dograveng khai baacuteo lagravemột đối tượng coacute yacute nghĩa trecircn dograveng đoacute
Viacute dụ
Extentionconf [section]
object1=gt op1op2op3
object2=gt op1bop2bop3b
Trong viacute dụ trecircn mỗi dograveng tương ứng với caacutec toaacuten tử khaacutec nhau object1 coacute caacutectoaacuten từ op1 op2 op3 trong khi đoacute object2 lại coacute caacutec toaacuten từ op1b op2b op3b
2 Option inheritance
Đacircy lagrave cấu higravenh kiểu thừa kế thường được cấu higravenh trong caacutec file zapataconfagentconf với kiểu cấu higravenh nagravey thigrave caacutec dograveng phiacutea dưới coacute thể thừa kế caacutec thocircng sdograveng phiacutea trecircn tương ứng với mỗi section caacutec dograveng phiacutea dưới coacute thể thay đổi caacutecthocircng số cho tươngứng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5272
Taacutec Giả Lecirc Quốc Toagraven
52
Viacute dụ
Extentionconf
[section]
Op1=bas
Op2=adv
Object1=gt1
Op1=int
Object1=gt2
Với cấu higravenh trecircn coacute thể giải thiacutech như sau object1=gt1 thừa hưởng hai thocircngsố ở phiacutea trecircn đoacute lagrave op1=bas vagrave op2=adv trong khi đoacute đối với object1=gt2 với thocircngsố op1=int được khai baacuteo lại necircn object1=gt2 được thừa kế từ hai thocircng số op1=invagrave op2=adv
3 Complex Entity
Với cấu kiểu nagravey được tổ chức thagravenh nhiều entity ứng với mỗi entity coacute nhiềthocircng số được khai baacuteo mỗi entity ở đacircy chiacutenh lagrave caacutec section để khai baacuteo caacutec kecircnhthocircng tin Cấu higravenh thường được sử dụng trong caacutec file iaxconf sipconf
Viacute dụ
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5372
Taacutec Giả Lecirc Quốc Toagraven
53
[entity1]
Op1=value1
Op2=value2
[entity2]
Op1=value3
Op2=value4
Entity1 coacute caacutec giaacute trị value1 vagrave value2 cho thocircng số op1 vagrave op2 trong khi đoacute
cũng lagrave thocircng số op1 vagrave op 2 nhưng coacute caacutec giaacute trị khaacutec lagrave value3 vagrave value4 choentity2
4 Cấu higravenh giao tiếp với mạng PSTN
1 Ngữ cảnh kết nối
Để kết nối với mạng PSTN chuacuteng ta cần phải coacute một card TDM với Cổng
FXO vagrave một đường dacircy điện thoại hoặc coacute thể lagrave một tổng đagravei nội bộ PBX Cnhiều nhagrave sản xuất phần cứng khaacutec nhau nhưng trong phần cấu higravenh dưới dacircy lagrave cấhigravenh cho card zapata TDM01B của digium (card nagravey hiện nay giaacute baacuten khoảng175$)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 4972
Taacutec Giả Lecirc Quốc Toagraven
49
trong chương nagravey lagrave nền moacuteng cơ bản nhưng đủ để hiểu lagravem thế nagraveo hệ thống coacute thoạt động được nội dung chiacutenh bao gồm
+ Thao taacutec cấu higravenh trecircn hệ thống tập tin của asterisk
+ Caacutech cagravei đặt phần mềm softphone trecircn cocircng nghệ sip
+ Cấu higravenh cho hai maacutey softphone liecircn lạc với nhau
+ Cấu higravenh phaacutet thocircng điệp
+ Quay số qua Sip vagrave mạng PSTN
2 Tập Tin cấu higravenh
Tất cả caacutec file cấu higravenh cho hệ thống asterisk đều nằm tại thư mục etcasterisngoại trừ file zaptelconf cấu higravenh cho phần cứng TDM nằm tại thư mục etc caacutecthức cấu higravenh giống như tập tin ini của window vậy Caacutec nội dung sau dấu chấm phảy lagrave nội dung chuacute thiacutech trong file cấu higravenh giống như chuacute thiacutech trong ngocircn ngữ
lập trigravenh C lagrave dấu Tất cả caacutec khoảng trắng trong tập tin đều được bỏ qua khocircng yacute nghĩa trong file cấu higravenh
Trong file cấu higravenh cograven coacute hai pheacutep gaacuten rất thường xuyecircn được sử dụng pheacutep gaacuten ldquo=rdquo lagrave dugraveng cho việc gaacuten caacutec biến cograven pheacutep gaacuten ldquo=gtrdquo dugraveng cho việc gaacutencaacutec đối tượng sau đacircy lagrave một viacute dụ cho file cấu higravenh
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5072
Taacutec Giả Lecirc Quốc Toagraven
50
Đacircy lagrave caacutec dograveng chuacute thiacutech
[section]
Key=value gaacuten giaacute trị cho biến
[section2]
Key=gtobject Gaacuten giaacute trị cho đối tượng
Cuacute phaacutep thực hiện giống nhau cho tất cả caacutec file cấu higravenh nhưng coacute vagravei kiểukhaacutec nhau cho mỗi file cầu higravenh dựa vagraveo thức caacutech hoạt động của chuacuteng
3 Caacutec kiểu ảnh hưởng trong tập cấu higravenh
Coacute ba kiểu caacutech thức hoạt động của tập tin cấu higravenh như sau
Kiểu Caacutech hoạt động File cầu higravenh Viacute dụ
S i m p l eGroup
Coacute hiệu lực trecircntừng dograveng trongfile
Extensionconf
Exten=gt4001dial(sip400)
O p t i o ninheritance
Dograveng khai baacuteosau thừa kếnhững thocircng sốkhai baacuteo trước
Zapataconf [channels]
Context=From_PSTN
Signalling=fxs_ks
Group=1Channel=gt1
C o m p l e xEntity
Mỗi entity nhậnmột ngữ cảnh
sipconf
iaxconf
[cisco]
Type=friend
Secret=12345
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5172
Taacutec Giả Lecirc Quốc Toagraven
51
Host=192168165
Context=NoiBo
[xten]
Type=friend
Secret=6789
Host=dynamic
Context=NoiBo
1 Simple Group
Đacircy lagrave kiểu cấu higravenh đơn giản nhất thường sử dụng trong caacutec fileextentionconf meetmeconf voicemailconf tương ứng với mỗi dograveng khai baacuteo lagravemột đối tượng coacute yacute nghĩa trecircn dograveng đoacute
Viacute dụ
Extentionconf [section]
object1=gt op1op2op3
object2=gt op1bop2bop3b
Trong viacute dụ trecircn mỗi dograveng tương ứng với caacutec toaacuten tử khaacutec nhau object1 coacute caacutectoaacuten từ op1 op2 op3 trong khi đoacute object2 lại coacute caacutec toaacuten từ op1b op2b op3b
2 Option inheritance
Đacircy lagrave cấu higravenh kiểu thừa kế thường được cấu higravenh trong caacutec file zapataconfagentconf với kiểu cấu higravenh nagravey thigrave caacutec dograveng phiacutea dưới coacute thể thừa kế caacutec thocircng sdograveng phiacutea trecircn tương ứng với mỗi section caacutec dograveng phiacutea dưới coacute thể thay đổi caacutecthocircng số cho tươngứng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5272
Taacutec Giả Lecirc Quốc Toagraven
52
Viacute dụ
Extentionconf
[section]
Op1=bas
Op2=adv
Object1=gt1
Op1=int
Object1=gt2
Với cấu higravenh trecircn coacute thể giải thiacutech như sau object1=gt1 thừa hưởng hai thocircngsố ở phiacutea trecircn đoacute lagrave op1=bas vagrave op2=adv trong khi đoacute đối với object1=gt2 với thocircngsố op1=int được khai baacuteo lại necircn object1=gt2 được thừa kế từ hai thocircng số op1=invagrave op2=adv
3 Complex Entity
Với cấu kiểu nagravey được tổ chức thagravenh nhiều entity ứng với mỗi entity coacute nhiềthocircng số được khai baacuteo mỗi entity ở đacircy chiacutenh lagrave caacutec section để khai baacuteo caacutec kecircnhthocircng tin Cấu higravenh thường được sử dụng trong caacutec file iaxconf sipconf
Viacute dụ
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5372
Taacutec Giả Lecirc Quốc Toagraven
53
[entity1]
Op1=value1
Op2=value2
[entity2]
Op1=value3
Op2=value4
Entity1 coacute caacutec giaacute trị value1 vagrave value2 cho thocircng số op1 vagrave op2 trong khi đoacute
cũng lagrave thocircng số op1 vagrave op 2 nhưng coacute caacutec giaacute trị khaacutec lagrave value3 vagrave value4 choentity2
4 Cấu higravenh giao tiếp với mạng PSTN
1 Ngữ cảnh kết nối
Để kết nối với mạng PSTN chuacuteng ta cần phải coacute một card TDM với Cổng
FXO vagrave một đường dacircy điện thoại hoặc coacute thể lagrave một tổng đagravei nội bộ PBX Cnhiều nhagrave sản xuất phần cứng khaacutec nhau nhưng trong phần cấu higravenh dưới dacircy lagrave cấhigravenh cho card zapata TDM01B của digium (card nagravey hiện nay giaacute baacuten khoảng175$)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5072
Taacutec Giả Lecirc Quốc Toagraven
50
Đacircy lagrave caacutec dograveng chuacute thiacutech
[section]
Key=value gaacuten giaacute trị cho biến
[section2]
Key=gtobject Gaacuten giaacute trị cho đối tượng
Cuacute phaacutep thực hiện giống nhau cho tất cả caacutec file cấu higravenh nhưng coacute vagravei kiểukhaacutec nhau cho mỗi file cầu higravenh dựa vagraveo thức caacutech hoạt động của chuacuteng
3 Caacutec kiểu ảnh hưởng trong tập cấu higravenh
Coacute ba kiểu caacutech thức hoạt động của tập tin cấu higravenh như sau
Kiểu Caacutech hoạt động File cầu higravenh Viacute dụ
S i m p l eGroup
Coacute hiệu lực trecircntừng dograveng trongfile
Extensionconf
Exten=gt4001dial(sip400)
O p t i o ninheritance
Dograveng khai baacuteosau thừa kếnhững thocircng sốkhai baacuteo trước
Zapataconf [channels]
Context=From_PSTN
Signalling=fxs_ks
Group=1Channel=gt1
C o m p l e xEntity
Mỗi entity nhậnmột ngữ cảnh
sipconf
iaxconf
[cisco]
Type=friend
Secret=12345
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5172
Taacutec Giả Lecirc Quốc Toagraven
51
Host=192168165
Context=NoiBo
[xten]
Type=friend
Secret=6789
Host=dynamic
Context=NoiBo
1 Simple Group
Đacircy lagrave kiểu cấu higravenh đơn giản nhất thường sử dụng trong caacutec fileextentionconf meetmeconf voicemailconf tương ứng với mỗi dograveng khai baacuteo lagravemột đối tượng coacute yacute nghĩa trecircn dograveng đoacute
Viacute dụ
Extentionconf [section]
object1=gt op1op2op3
object2=gt op1bop2bop3b
Trong viacute dụ trecircn mỗi dograveng tương ứng với caacutec toaacuten tử khaacutec nhau object1 coacute caacutectoaacuten từ op1 op2 op3 trong khi đoacute object2 lại coacute caacutec toaacuten từ op1b op2b op3b
2 Option inheritance
Đacircy lagrave cấu higravenh kiểu thừa kế thường được cấu higravenh trong caacutec file zapataconfagentconf với kiểu cấu higravenh nagravey thigrave caacutec dograveng phiacutea dưới coacute thể thừa kế caacutec thocircng sdograveng phiacutea trecircn tương ứng với mỗi section caacutec dograveng phiacutea dưới coacute thể thay đổi caacutecthocircng số cho tươngứng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5272
Taacutec Giả Lecirc Quốc Toagraven
52
Viacute dụ
Extentionconf
[section]
Op1=bas
Op2=adv
Object1=gt1
Op1=int
Object1=gt2
Với cấu higravenh trecircn coacute thể giải thiacutech như sau object1=gt1 thừa hưởng hai thocircngsố ở phiacutea trecircn đoacute lagrave op1=bas vagrave op2=adv trong khi đoacute đối với object1=gt2 với thocircngsố op1=int được khai baacuteo lại necircn object1=gt2 được thừa kế từ hai thocircng số op1=invagrave op2=adv
3 Complex Entity
Với cấu kiểu nagravey được tổ chức thagravenh nhiều entity ứng với mỗi entity coacute nhiềthocircng số được khai baacuteo mỗi entity ở đacircy chiacutenh lagrave caacutec section để khai baacuteo caacutec kecircnhthocircng tin Cấu higravenh thường được sử dụng trong caacutec file iaxconf sipconf
Viacute dụ
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5372
Taacutec Giả Lecirc Quốc Toagraven
53
[entity1]
Op1=value1
Op2=value2
[entity2]
Op1=value3
Op2=value4
Entity1 coacute caacutec giaacute trị value1 vagrave value2 cho thocircng số op1 vagrave op2 trong khi đoacute
cũng lagrave thocircng số op1 vagrave op 2 nhưng coacute caacutec giaacute trị khaacutec lagrave value3 vagrave value4 choentity2
4 Cấu higravenh giao tiếp với mạng PSTN
1 Ngữ cảnh kết nối
Để kết nối với mạng PSTN chuacuteng ta cần phải coacute một card TDM với Cổng
FXO vagrave một đường dacircy điện thoại hoặc coacute thể lagrave một tổng đagravei nội bộ PBX Cnhiều nhagrave sản xuất phần cứng khaacutec nhau nhưng trong phần cấu higravenh dưới dacircy lagrave cấhigravenh cho card zapata TDM01B của digium (card nagravey hiện nay giaacute baacuten khoảng175$)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5172
Taacutec Giả Lecirc Quốc Toagraven
51
Host=192168165
Context=NoiBo
[xten]
Type=friend
Secret=6789
Host=dynamic
Context=NoiBo
1 Simple Group
Đacircy lagrave kiểu cấu higravenh đơn giản nhất thường sử dụng trong caacutec fileextentionconf meetmeconf voicemailconf tương ứng với mỗi dograveng khai baacuteo lagravemột đối tượng coacute yacute nghĩa trecircn dograveng đoacute
Viacute dụ
Extentionconf [section]
object1=gt op1op2op3
object2=gt op1bop2bop3b
Trong viacute dụ trecircn mỗi dograveng tương ứng với caacutec toaacuten tử khaacutec nhau object1 coacute caacutectoaacuten từ op1 op2 op3 trong khi đoacute object2 lại coacute caacutec toaacuten từ op1b op2b op3b
2 Option inheritance
Đacircy lagrave cấu higravenh kiểu thừa kế thường được cấu higravenh trong caacutec file zapataconfagentconf với kiểu cấu higravenh nagravey thigrave caacutec dograveng phiacutea dưới coacute thể thừa kế caacutec thocircng sdograveng phiacutea trecircn tương ứng với mỗi section caacutec dograveng phiacutea dưới coacute thể thay đổi caacutecthocircng số cho tươngứng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5272
Taacutec Giả Lecirc Quốc Toagraven
52
Viacute dụ
Extentionconf
[section]
Op1=bas
Op2=adv
Object1=gt1
Op1=int
Object1=gt2
Với cấu higravenh trecircn coacute thể giải thiacutech như sau object1=gt1 thừa hưởng hai thocircngsố ở phiacutea trecircn đoacute lagrave op1=bas vagrave op2=adv trong khi đoacute đối với object1=gt2 với thocircngsố op1=int được khai baacuteo lại necircn object1=gt2 được thừa kế từ hai thocircng số op1=invagrave op2=adv
3 Complex Entity
Với cấu kiểu nagravey được tổ chức thagravenh nhiều entity ứng với mỗi entity coacute nhiềthocircng số được khai baacuteo mỗi entity ở đacircy chiacutenh lagrave caacutec section để khai baacuteo caacutec kecircnhthocircng tin Cấu higravenh thường được sử dụng trong caacutec file iaxconf sipconf
Viacute dụ
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5372
Taacutec Giả Lecirc Quốc Toagraven
53
[entity1]
Op1=value1
Op2=value2
[entity2]
Op1=value3
Op2=value4
Entity1 coacute caacutec giaacute trị value1 vagrave value2 cho thocircng số op1 vagrave op2 trong khi đoacute
cũng lagrave thocircng số op1 vagrave op 2 nhưng coacute caacutec giaacute trị khaacutec lagrave value3 vagrave value4 choentity2
4 Cấu higravenh giao tiếp với mạng PSTN
1 Ngữ cảnh kết nối
Để kết nối với mạng PSTN chuacuteng ta cần phải coacute một card TDM với Cổng
FXO vagrave một đường dacircy điện thoại hoặc coacute thể lagrave một tổng đagravei nội bộ PBX Cnhiều nhagrave sản xuất phần cứng khaacutec nhau nhưng trong phần cấu higravenh dưới dacircy lagrave cấhigravenh cho card zapata TDM01B của digium (card nagravey hiện nay giaacute baacuten khoảng175$)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5272
Taacutec Giả Lecirc Quốc Toagraven
52
Viacute dụ
Extentionconf
[section]
Op1=bas
Op2=adv
Object1=gt1
Op1=int
Object1=gt2
Với cấu higravenh trecircn coacute thể giải thiacutech như sau object1=gt1 thừa hưởng hai thocircngsố ở phiacutea trecircn đoacute lagrave op1=bas vagrave op2=adv trong khi đoacute đối với object1=gt2 với thocircngsố op1=int được khai baacuteo lại necircn object1=gt2 được thừa kế từ hai thocircng số op1=invagrave op2=adv
3 Complex Entity
Với cấu kiểu nagravey được tổ chức thagravenh nhiều entity ứng với mỗi entity coacute nhiềthocircng số được khai baacuteo mỗi entity ở đacircy chiacutenh lagrave caacutec section để khai baacuteo caacutec kecircnhthocircng tin Cấu higravenh thường được sử dụng trong caacutec file iaxconf sipconf
Viacute dụ
Extentionconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5372
Taacutec Giả Lecirc Quốc Toagraven
53
[entity1]
Op1=value1
Op2=value2
[entity2]
Op1=value3
Op2=value4
Entity1 coacute caacutec giaacute trị value1 vagrave value2 cho thocircng số op1 vagrave op2 trong khi đoacute
cũng lagrave thocircng số op1 vagrave op 2 nhưng coacute caacutec giaacute trị khaacutec lagrave value3 vagrave value4 choentity2
4 Cấu higravenh giao tiếp với mạng PSTN
1 Ngữ cảnh kết nối
Để kết nối với mạng PSTN chuacuteng ta cần phải coacute một card TDM với Cổng
FXO vagrave một đường dacircy điện thoại hoặc coacute thể lagrave một tổng đagravei nội bộ PBX Cnhiều nhagrave sản xuất phần cứng khaacutec nhau nhưng trong phần cấu higravenh dưới dacircy lagrave cấhigravenh cho card zapata TDM01B của digium (card nagravey hiện nay giaacute baacuten khoảng175$)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5372
Taacutec Giả Lecirc Quốc Toagraven
53
[entity1]
Op1=value1
Op2=value2
[entity2]
Op1=value3
Op2=value4
Entity1 coacute caacutec giaacute trị value1 vagrave value2 cho thocircng số op1 vagrave op2 trong khi đoacute
cũng lagrave thocircng số op1 vagrave op 2 nhưng coacute caacutec giaacute trị khaacutec lagrave value3 vagrave value4 choentity2
4 Cấu higravenh giao tiếp với mạng PSTN
1 Ngữ cảnh kết nối
Để kết nối với mạng PSTN chuacuteng ta cần phải coacute một card TDM với Cổng
FXO vagrave một đường dacircy điện thoại hoặc coacute thể lagrave một tổng đagravei nội bộ PBX Cnhiều nhagrave sản xuất phần cứng khaacutec nhau nhưng trong phần cấu higravenh dưới dacircy lagrave cấhigravenh cho card zapata TDM01B của digium (card nagravey hiện nay giaacute baacuten khoảng175$)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5472
Taacutec Giả Lecirc Quốc Toagraven
54
Higravenh Giao tiếp với FXO vagrave FXS
Ở higravenh trecircn chuacuteng ta đang tiến hagravenh cấu higravenh cho port FXO
2 Lắp đặt card TDM01B vagrave cấu higravenh
Trước khi lắp đặt card TDM01B hatildey tắt nguồn maacutey tiacutenh vagrave kiểm tra cổngPCI coacute tương thiacutech để gắn vagraveo hay khocircng Sau khi hoagraven tất hatildey bật maacutey tiacutenh trở lạvagrave chuẩn bị cấu higravenh cho card hoạt động
Cấu higravenh cho card hoạt động thocircng qua hai file cấu higravenh đoacute lagrave file zaptelconf
nằm trong thư mục etcvagrave file zapataconf tại thư mục etcasterisk cấu higravenh trongfile zapataconf để cho kecircnh FXO hoạt động
Tại thời điểm nagravey chỉ ở mức cơ bản necircn khocircng giải thiacutech kỹ caacutec thocircng số cấhigravenh một caacutech chi tiết nếu muốn tham khảo thecircm kỹ hơn xin mời xem chươngCấu Higravenh Kết Nối Với Mạng PSTN
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5572
Taacutec Giả Lecirc Quốc Toagraven
55
Để giữ lại caacutec cấu higravenh cũ necircn lưu lại để đề phograveng bất trắc cần khocirci phục lvề sau bằng lệnh
cp etczaptelconf etczaptelconfold
cp etcasteriskzapataconf etcasteriskzapataconfold
etczaptelconf
fxsks=1
loadzone=us
defaultzone=uschannels=1
etcasteriskzapataconf
[channels]
Group=1
context=default cuộc gọi vagraveo sẽ đến [default] quafile extensionsconf
signalling=fxs_ks Sử dụng tiacuten hiệu FXS cho kecircnh FXO
channel =gt 1 Đường dacircy điện thoại được gắn với port 1
Sau khi cấu higravenh xong tiến hagravenh nạp driver vagrave nạp lại file cấu higravenh cho cardhoạt động như sau
Modprode zaptel
Modprode wcfxo
Ztcfg ndashvvvvv
Asterisk -vvvvvgc
5 Cấu higravenh Điện thoại IP SIP phone
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5672
Taacutec Giả Lecirc Quốc Toagraven
56
Trong phần nagravey cũng sẽ giới thiệu cấu higravenh khai baacuteo đơn giản điện thoại IPSIP phone để coacute thocircng tin chi tiết hơn xin mời tham khảo chươngCấu Higravenh Giao
Thức SIP vagrave IAX
Thực hiện cấu higravenh trong file etcasterisksipconf Caacutec maacutey điện thoại sẽ cấuhigravenh trong file nagravey trước khi quay số hay nhận cuộc gọi
1 Phần khai baacuteo Chung
Trong file sipconf coacute section [general] dugraveng để khai baacuteo caacutec thocircng số chung
cho tất cả caacutec kecircnh sip trong toagraven bộ tập tin nagravey nhưng caacutec thocircng số đoacute coacute thể manggiaacute trị khaacutec trong phần khai baacuteo trecircn caacutec kecircnh riecircng để phugrave hợp với kecircnh đoacute
Sau đacircy lagrave caacutec thocircng số chiacutenh
AllowdisallowĐịnh nghĩa sử dụng caacutec codec
BindaddrĐịa chỉ IP magrave client kết nối đến kecircnh nagravey nếu thocircng số nagravey được
khai baacuteo lagrave 0000 cho pheacutep tất cả caacutec địa chỉ IP coacute thể kết nối đến kecircnh nagravey
Context Tất cả caacutec cuộc gọi mặc định sẽ được chuyển đến ngữ cảnh nagraveyngoại trừ phần dưới file cấu higravenh coacute khai baacuteo ngữ cảnh khaacutec
BindportCổng SIP UDP magrave client cần kết nối đến
MaxexpireyThời gian tối đa để đăng kyacute đơn vị tiacutenh bằng giacircy
DefaultexpireyThời gian mặc định để đăng kyacute đơn vị tiacutenh bằng giacircy
Register Để kết nối giao tiếp với server khaacutec
Viacute dụ
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5772
Taacutec Giả Lecirc Quốc Toagraven
57
etcasterisksipconf
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
2 Khai baacuteo kecircnh SIP
Trong phần nagravey sẽ khai baacuteo caacutec kecircnh sip riecircng cho từng điện thoại ip sip
phone tất nhiecircn caacutec thocircng số trong phần [general] sẽ coacute hiệu lực trecircn caacutec kecircnh nagraveyngoại trừ tại phần khai baacuteo caacutec kecircnh nagravey khai baacuteo lại thocircng số ở phần trecircn
Sau đacircy lagrave caacutec thocircng số dagravenh khai baacuteo riecircng cho từng kecircnh SIP
[name]đacircy lagrave phần khai baacuteo maacutey điện thoại extention ip sip coacute thể lagrave kyacute tựnhưng thường lagrave caacutec con số quay vigrave trecircn caacutec phiacutem điện thoại thường lagrave caacutec con sốmagrave thocirci
TypeKiểu kết nối thocircng tin user peer hay friend
Host Địa chỉ IP hay tecircn miền magrave client kết nối với kecircnh nagravey thường dugraveng giaacutetrị lagrave ldquodynamicrdquo cho tất cả client kết nối đến
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5872
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 5972
Taacutec Giả Lecirc Quốc Toagraven
59
với caacutec hệ thống điện thoại truyền thống tất cả caacutec cocircng việc cấu higravenh hệ thống đlagrave từ phiacutea người sử dụng
Hệ thống chuacuteng ta coacute hoagraven chỉnh tốt hay khocircng phụ thuộc rất nhiều vagraveo việcchuacuteng ta hiểu rotilde vagraveo dialplan hay khocircng
Trong phần nagravey sẽ tập trung đi vagraveo thực hiện diaplan ở mức nền tảng thực hiệcuộc gọi trước khi đi sacircu tigravem hiểu kỹ ở những chương sau
Dialplan được cấu higravenh qua tập tin extensionconf liecircn quan đến việc cấu higravenhdialplan coacute những khaacutei niệm cần nắm đoacute lagrave
ExtentionsĐiện thoại nội bộ
PrioritiesThứ tự thực hiện
ApplicationsCaacutec ứng dụng
ContextsCaacutec ngữ cảnh
Ở đacircy chỉ đề cập đến những khaacutei niệm cơ bản để hiểu sacircu hơn về dialplan xmời tham khảo hai chương Dialplan Trước khi cấu higravenh hatildey lưu lại tập tinextentionconf gốc vagrave thực hiện trecircn file extentionconf rỗng
1 Extentions
Dialplan lagrave một tập gồm nhiều extention khi một cuộc gọi tương ứng vớ
extention nagraveo thigrave ứng dụng cho cuộc gọi đoacute sẽ được thực hiện extention coacute thể đơgiản với một điacutech danh cụ thể như 8051 letoan hay lagrave một chuỗi so mẫu được thựhiện như _9xxx
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6072
Taacutec Giả Lecirc Quốc Toagraven
60
Caacutec dạng của extention
Viacute dụ
etcasteriskextentionconf
exten=gt80511dial(sip805120)
exten=gt80512hangup()
ldquoexten=gtrdquo giống nhau cho mỗi dograveng thực hiện trong dialplan 8051 lagrave số điệnthoại magrave thuecirc bao quay hay lagrave extention cograven caacutec con số 1 vagrave 2 lagrave caacutec priorites tứclagrave thứ tự thực hiện caacutec lệnh Khi thuecirc bao quay số 8051 thigrave đỗ chuocircng maacutey ip sip8051 nếu trong vograveng 20 giacircy magrave thuecirc bao khocircng nhấc maacutey thigrave kết thuacutec cuộc gọi
Extension lagrave thagravenh phần magrave asterisk thực hiện theo được kiacutech hoạt khi coacutecuộc gọi vagraveo extension chiacutenh lagrave con số magrave thuecirc bao đoacute cần gọi Trong mỗi ngữ cảnh
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6172
Taacutec Giả Lecirc Quốc Toagraven
61
sẽ coacute thể coacute nhiều extension Extenstion chiacutenh lagrave hạt nhacircn để hệ thống xaacutec địnhcuộc gọi cần thực hiện Extenstion hoagraven chỉnh gồm coacute caacutec phần
exten =gt Namepriorityapplication( )
Name (Tecircn kyacute tự hoặc con số) của extension
Priority (Mỗi extension coacute thể bao gồm nhiều bước mỗi bước được gọi lagraveldquopriorityrdquo)
Application (or command) Thực hiện một ứng dụng cụ thể nagraveo đoacute cho cuộc
gọi
Một viacute dụ cụ thể như sau
etcasteriskextentionconf
exten =gt 73250101Dial(Zap120)
exten =gt 73250102Voicemail(u7325010)
exten =gt Tương ứng với mỗi ứng dụng thực hiện
7325010 Con số nhận được khi thuecirc bao chủ gọi quay số
1 2 lagrave caacutec ldquopriorityrdquo thứ tự được thực hiện 1 rồi tới 2hellip
Trong viacute dụ của chuacuteng ta con số 7325010 sẽ được gửi đến kecircnh zap1 rungchuocircng tối đa 20 giacircy Nếu sau 20 giacircy khocircng trả lời thigrave cuộc gọi sẽ được địnhhướng đến hộp thư thoại u7325010 chữ u ở đacircy coacute nghĩa lagrave ldquo unavailablemessagerdquo
2 Priorities ndash Thứ tự thực hiện
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6272
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6372
Taacutec Giả Lecirc Quốc Toagraven
63
CLIgt show Aplications
4 Contexts - Ngữ cảnh
Đầu tiecircn hatildey higravenh dung như thế nagravey khi Cocirc Giaacuteo vagrave Sinh Viecircn trao đổi vềmocircn cơ sở tin học viễn thocircng coacute nghĩa lagrave ngữ cảnh(context) luacutec nagravey chỉ tập trungvagraveo lĩnh vực viễn thocircng magrave thocirci Như vậy ngữ cảnh (context) đatilde được giới hạtrong một tigravenh huống cụ thể đối với Asterisk ở đacircy cũng thế khi noacutei đến ngữ cản(context) thigrave thường quan tacircm đến trường hợp cụ thể nagraveo đoacute điều nagravey rotilde ragraveng rằntrong hệ thống sẽ coacute rất nhiều ngữ cảnh(context) khaacutec nhau
Viacute dụ khi gọi đến tổng đagravei Asterisk coacute một thocircng điệp thocircng baacuteo như sauldquoChagraveo mừng caacutec Bạn gọi đến cocircng ty chuacuteng tocirci hatildey nhấn phiacutem 1 để gặp phograveng kindoanh phiacutem 2 gặp phograveng kỹ thuậthelliprdquo khi người gọi chọn phiacutem 1 thigrave hệ thống schuyển đến một ngữ cảnh (context) lagrave [PhongKinhDoanh] khi người gọi nhấn phiacutem2 thigrave hệ thống sẽ định hướng cuộc gọi qua ngữ cảnh (context) [PhongKyThuat] nhvậy ứng với mỗi trường hợp hệ thống sẽ coacute ngữ cảnh khaacutec nhau ngữ cảnh đượctrong dấu []
etcasteriskextentionconf
[PhongKinhDoanh]
exten =gt 73250101Dial(SIP$EXTEN)20)
exten =gt 73250102Voicemail(u$EXTEN)
[PhongKyThuat]
exten =gt _91Dial(SIP$EXTEN)
Ngoagravei ta đối với việc cấu higravenh cho caacutec kecircnh thoại thigrave ngữ cảnh ở đacircy lagrave việxử lyacute caacutec cuộc gọi tương ứng với kecircnh đoacute qua kế hoạch diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6472
Taacutec Giả Lecirc Quốc Toagraven
64
viacute dụ
etcasterisksipconf
[8051]
Type=friend
Context= Tu_SIP
helliphelliphelliphelliphelliphellip
[8052]
Type=friend
Context= noibo
helliphelliphelliphelliphelliphellip
etcasteriskextentionconf
[ noibo ]
exten=gt80511dial(sip805120)
exten=gt80512hangup()
[ Tu_SIP ]
exten=gt80521dial(sip805220)
exten=gt80522hangup()
Khi thuecirc bao 8052 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[noibo] vagrave chờ nhận con số quay nếu thuecirc bao 8052 quay số 8051 thigrave số maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6572
Taacutec Giả Lecirc Quốc Toagraven
65
sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8051 khocircng nhấcmaacutey thigrave cuộc gọi sẽ kết thuacutec
Khi thuecirc bao 8051 nhấc maacutey thigrave Asterisk chuyển cuộc gọi nagravey đến ngữ cảnh[Tu_SIP] vagrave chờ nhận con số quay nếu thuecirc bao 8051 quay số 8052 thigrave số maacutey8052 sẽ rung chuocircng trong vograveng 20 giacircy nếu qua 20 giacircy magrave thuecirc bao 8052 khocircngnhấc maacutey thigrave cuộc gọi sẽ kết thuacutec
7 Ngữ cảnh thực hagravenh ứng dụng
Higravenh Ngữ cảnh thực hagravenh ứng dụng
Trong phần thực hagravenh nagravey chuacuteng ta cần trang bị những thiết bị sau
+ Maacutey tiacutenh server asterisk
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6672
Taacutec Giả Lecirc Quốc Toagraven
66
+ Hai maacutey tiacutenh client cagravei đặt hai softphone X-lite nối mạng với maacutey tiacutenhserver asterisk
+ Để giao tiếp với PSTN cần trang bị card FXO hoặc nhagrave cung cấp dịch vụVoIP
1 Bước 1 Cấu higravenh cho hai sip phone X-lite 8051 vagrave 8052 bằng caacutech cấu higravenh trecircn file sipconf như sau
etcasterisksipconf
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6772
Taacutec Giả Lecirc Quốc Toagraven
67
[general]
Bindport=5060
Bindaddr=0000
Context=default
Disallow=all
Allow=ulaw
Maxexpirey=120
Defaultexpirey=80
[8051]
Type=friend
Secret=123456
Context=NoiBo
Host=dynamic
Canreinvite=no
[8052]
Type=friend
Secret=2222
Context=NoiBo
Host=dynamic
Canreinvite=no
2 Bước 2 Cấu higravenh softphone x-lite phiacutea client cho maacutey 8051
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6872
Taacutec Giả Lecirc Quốc Toagraven
68
1 Chọn settings trecircn menu
2 Thực hiện khai baacuteo cấu higravenh như sau
3 Chọn apply hoặc ok để xaacutec nhận thocircng tin
4 Tại đacircy softphone coacute thể kết nối với server asterisk
3 Bước 3 Lập lại bước hai để khai baacuteo maacutey điện thoại softphone8052
8 Tạo diaplan
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 6972
Taacutec Giả Lecirc Quốc Toagraven
69
Bacircy giờ tới phần để cho caacutec maacutey điện thoại đatilde khai baacuteo trecircn coacute thể thực hiệncaacutec cuộc gọi với nhau thigrave chuacuteng ta tiến hagravenh thực hiện dialplan việc nagravey được cấ
higravenh trong file extentionconf 1 Thực hiện một viacute dụ cơ bản
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2playback(hello_world)
Exten=gts3hangup()
Thứ tự Priority 1thực hiện ứng dụng trả lời cuộc gọi cho tất cả caacutec cuộc gọiđến sau đoacute chuyển qua thứ tự Priority kế tiếp
Thứ tự Priority 2hệ thống sẽ phaacutet ra thocircng điệp thoại từ file acircm thanh
helloworldgsm
Cuối cugraveng Priority 3kết thuacutec cuộc gọi
Giải thiacutech đoạn lệnh trecircn
Một cuộc gọi nhận từ cổng giao tiếp FXO được gửi đến ngữ cảnh[incoming] ngữ cảnh nagravey được định nghĩa trong file cấu higravenh zapataconf caacutec cuộc
gọi vagraveo được xử lyacute qua extention ldquosrdquo trong viacute dụ trecircn coacute 3 priorities ứng với mỗi priorities lagrave một ứng dụng được gọi thực hiện
Extention ldquosrdquo lagrave một extention đặc biệt thực hiện xử lyacute caacutec cuộc gọi vagraveo khicon số được quay của thuecirc bao đến hệ thống asterisk lagrave khocircng biết trước (viacute dụ ccuộc gọi vagraveo từ giao tiếp FXO)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7072
Taacutec Giả Lecirc Quốc Toagraven
70
Answer() Application thực hiện trả lời cuộc gọi trong trạng thaacutei cuộc gọiđang rung chuocircng hoặc một số ứng dụng trả lời cuộc gọi trước khi xử lyacute cuộc gọi
Playback() Application ứng dụng nagravey để phaacutet một file acircm thanh được thusẵn Khi ứng dụng playback() thực thi thigrave tất cả caacutec con số được gửi đến từ điệthoại ấn phiacutem đều bị loại bỏ cuacute phaacutep playback(Tenfile) Tecircn file coacute thể lagrave dạnggsm hoặc wav file acircm thanh được lấy từ thư mục mặc định lagrave(varlibasterisksounds)
Hangup() application ứng dụng kết thuacutec cuộc gọi
2 Caacutec ứng dụng dial() background() vagrave goto()
Để thực hiện dialplan thecircm phần uyển chuyển hơn xin giới thiệu thecircm 3 ứndụng cơ bản nữa trong thực hiện dialplan
Background() Ứng dụng nagravey thực hiện phaacutet một file acircm thanh vagrave chờ nhậncon số từ phiacutem nhấn của maacutey điện thoại sau khi nhận con số từ phiacutem nhấn maacuteđiện thoại asterisk sẽ ngắt phaacutet thocircng điệp vagrave xử lyacute chuyển đến số thứ tự prioritương ứng với con số nhận được cuacute phaacutep của ứng dụng
exten=gtextentionprioritybackground(TecircnFile)
goto() Lagrave ứng dụng thực hiện nhảy từ context extention priority hiện hagravenhđến context extention priority được chỉ định trong ứng dụng goto()
Cuacute phaacutep của ứng dụng goto()
etcasteriskextentionconf
exten=gtextentionprioritygoto(contextextentionpriority)
exten=gtextentionprioritygoto(extentionpriority)
exten=gtextentionprioritygoto(priority)
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7172
Taacutec Giả Lecirc Quốc Toagraven
71
Sau đacircy lagrave một đoạn lệnh minh họa cho ứng dụng của một cocircng ty gồm 3 phograveng ban đoacute lagrave phograveng kỹ thuật phograveng hagravenh chaacutenh vagrave phograveng tiếp thị baacuten hagraveng Khi
cuộc gọi đến cocircng ty thigrave hệ thống asterisk sẽ phaacutet thocircng điệp mời nhấn số để ch phograveng ban cần liecircn lạc Thocircng điệp ldquoChagraveo mừng gọi đến cocircng ty ABC của chuacuteng tocircmời nhấn phiacutem 1 để chuyển đến phograveng Kỹ thuật phiacutem 2 đến phograveng hagravenh chaacutenh v phiacutem 3 đến phograveng tiếp thị baacuten hagravengrdquo sau khi người gọi nhấn phiacutem tương ứng vớ123 thigrave sẽ được thocircng baacuteo vagrave chuyển đến phograveng ban tươngứng
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12goto(kythuats1)
Exten=gt21playback(HanhChanh)Exten=gt22goto(HanhChanhs1)
Exten=gt31playback(TiepThiBanHang)
Exten=gt32goto(TiepThiBanHangs1)
Dial() Ứng dụng thực hiện quay số điện thoại để minh họa cho ứng dụndial() chuacuteng ta cải thiện đoạn dialplan trecircn thay vigrave chuyển đến ngữ cảnh tương ứnthigrave thực hiện quay trực tiếp đến số điện thoại của phograveng ban đoacute Viacute dụ thực hiệquay số SIP8051 cho phograveng kỹ thuật iax28000 cho phograveng Hagravenh Chaacutenh vagrave gọi đếnzap1 cho phograveng tiếp thị baacuten hagraveng
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
882019 Sach Asterisk Tieng net
httpslidepdfcomreaderfullsach-asterisk-tieng-net 7272
etcasteriskextentionconf
[incoming]
Exten=gts1answer()
Exten=gts2background(LoiChao)
Exten=gts3hangup()
Exten=gt11playback(KyThuat)
Exten=gt12dial(sip8051)
Exten=gt21playback(HanhChanh)
Exten=gt22dial(iax28000)Exten=gt31playback(TiepThiBanHang)
Exten=gt32dial(zap1)
wwwdientuvienthongucoznet
Top Related