76431256-407170129-ntt

78
 Đồ án tt nghip Đại hc Mđầu SVTH: Nguyn Thanh Tâm - Lp:D07THPM MĐẦU - -- - o o0 0o o- - - -  Công nghthoi qua nn Internet dùng giao thc IP (Voice Over IP –  VoIP), là mt công nghmà cho phép ta to cuc gi bng cách kết ni băng thông rng thay vì dùng đường dây đin thoi sdng tín hiu tương t(analog). Công nghVoip da trên chuyn mch gói (thay thế công nghchuyn mch kênh). Nó có thnén và ghép nhiu kênh thoi trên mt đường truyn tín hiu. Các tín hiu này được truyn qua  mng Internet, vì thế có thgim giá thành đáng k. Để thc hin vic truyn ti này, đin thoi IP phi tích hp sn các giao thc báo hiu chun như SIP hay H.323 để kết ni ti mt tng đài IP ca doanh nghip hay nhà cung cp. Để đáp ng nhu cu trên,đã có mt  phn mm ra đời trên skết hp gia chuyn mch VoIP và chuyn mch TDM. Sn phm này là mt hthng chuyn mch mm –  mã ngun m. Nó được viết bng ngôn ngC,tích hp chy trên nn Linux. Đó chính là phn mm Asterisk. Sn phm này thc hin đầy đủ các tính năng ca mt tng đài cùng mt stin ích mi rt hp dn.  Asterisk ra đời vào năm 1999 bi mt sinh viên sinh năm 1977 tên là Mark Spencer. Anh ta viết phn mm này ban đầu vi mc đích htrcho công ty ca mình trong vic liên lc đàm thoi.  Asterisk htrnhiu giao thc truyn thông khác nhau do skết hp công nghhin đại VoIP và công nghPSTN . Điu này làm cho nó mt công cmnh cho vic xây dng các gateway và vic chuyn đổi giao thc.  Để tìm hiu thêm vhthng phn mm Asterisk , chúng ta phi hiu công nghVoip và các tin ích ca công nghnày.  

Upload: hiep-trinh

Post on 20-Jul-2015

690 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 1/78

Đồ án tốt nghiệp Đại học Mở đầu 

SVTH: Nguyễn Thanh Tâm - Lớp:D07THPM

MỞ ĐẦU 

----oo00oo---- 

Công nghệ thoại qua nền Internet dùng giao thức IP (Voice Over IP –  VoIP), là một công nghệ mà cho phép ta tạo cuộc gọi bằng cách kết nối băngthông rộng thay vì dùng đường dây điện thoại sử dụng tín hiệu tương tự (analog).

Công nghệ Voip dựa trên chuyển mạch gói (thay thế công nghệ chuyểnmạch kênh). Nó có thể nén và ghép nhiều kênh thoại trên một đường truyền tínhiệu. Các tín hiệu này được truyền qua mạng Internet, vì thế có thể giảm giá thành

đáng kể. Để thực hiện việc truyền tải này, điện thoại IP phải tích hợp sẵn các giaothức báo hiệu chuẩn như SIP hay H.323 để kết nối tới một tổng đài IP của doanh

nghiệp hay nhà cung cấp. 

Để đáp ứng nhu cầu trên,đã có một  phần mềm ra đời trên sự kết hợp giữachuyển mạch VoIP và chuyển mạch TDM. Sản phẩm này là một hệ thống chuyểnmạch mềm –  mã nguồn mở. Nó được viết bằng ngôn ngữ C,tích hợp chạy trên nền

Linux. Đó chính là phần mềm Asterisk. Sản phẩm này thực hiện đầy đủ các tínhnăng của một tổng đài cùng một số tiện ích mới rất hấp dẫn. 

Asterisk ra đời vào năm 1999 bởi một sinh viên sinh năm 1977 tên là Mark Spencer. Anh ta viết phần mềm này ban đầu với mục đích hỗ trợ cho công ty của

mình trong việc liên lạc đàm thoại. 

Asterisk hỗ trợ nhiều giao thức truyền thông khác nhau do sự kết hợp côngnghệ hiện đại VoIP và công nghệ PSTN . Điều này làm cho nó một công cụ mạnhcho việc xây dựng các gateway và việc chuyển đổi giao thức. 

Để tìm hiểu thêm về hệ thống phần mềm Asterisk , chúng ta phải hiểucông nghệ Voip và các tiện ích của công nghệ này. 

Page 2: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 2/78

Đồ án tốt nghiệp Đại học  Lời cám ơn 

SVTH: Nguyễn Thanh Tâm - Lớp:D07THPM

LỜI CẢM ƠN ----oo00oo---- 

Trong kì thực tập tốt nghiệp và làm luận văn  tốt nghiệp vừa qua,em đã có

cơ hội để áp dụng những kiến thức mà mình đã học vào thực tế. Đồng thời, em

đã có thêm những kiến thức cơ bản về kỹ thuật viễn thông, kiến thức về ngôn ngữlập trình C#.

Sau một thời gian làm việc ,với sự hướng dẫn và trợ giúp tận tình của thầy

Trần Minh Nhật, em đã hoàn thành đề tài này một cách thuận lợi và gặt hái đượ c

một số kết quả khả quan. 

Em xin chân thành cảm ơn khoa Công nghệ Thông tin II, đã tạo điều kiện

thuận lợi và giúp đỡ chúng em hoàn thành tốt khóa luận tốt nghiệp này. 

Em xin chân thành cảm ơn thầy Trần Minh Nhật –  giáo viên hướng dẫn đề tài

này, đã chỉ dạy tận tình, giúp đỡ em rất nhiều trong quá trình làm đề tài. 

Em xin chân thành cám ơn các thầy cô trong khoa Công nghệ thông tin II đã

tạo điều kiện tốt cho em hoàn thành đề tài. 

Em xin chân thành cảm ơn đến các anh chị ở công ty quốc tế Sông Hồng, đ ã

tạo điều kiện và hỗ trợ cho em hoàn thành tốt đề tài trong kì thực tập và luận văn

vừa qua.Trên nền tảng những gì đã thực hiện, em sẽ tiếp tục phát triển đề tài này để 

 phần mềm này có thể áp dụng trong thực tế.

Tuy em đã cố gắng hoàn thành thật tốt đồ án tốt nghiệp nhưng chắc chắn sẽ

không tránh khỏi những thiếu sót.

Kính mong quí Thầy Cô và các bạn góp ý để đề tài hoàn thiện hơn. 

Xin chân thành cảm ơn! 

Sinh viên thực hiện 

 Nguyễn Thanh Tâm 

Page 3: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 3/78

Đồ án tốt nghiệp Đại học  Mục lục 

SVTH: Nguyễn Thanh Tâm - Lớp:D07THPM

MỤC LỤC MỞ ĐẦU ......................................................................................................................................... 0

CHƢƠNG 1: TỔNG QUAN VỀ VOIP ........................................................................................ 1

1.1  Giới thiệu VoIP ................................................................................................................... 1

1.1.1  Khái niệm: .............................................................................................................. 1

1.1.2  Ƣu và Khyết của VoIP:.......................................................................................... 2

1.2  Các thiết bị dùng trong VoIP: ........................................................................................... 2

1.2.1  VoIP phone ............................................................................................................. 2

1.2.2  Softphone ................................................................................................................ 2

1.2.3  Card giao tiếp vớ i PSTN........................................................................................ 2

1.2.4  ATA (Analog Telephone Adaptors)...................................................................... 3

1.3  Ƣu điểm sử dụng tổng đài IP-PBX so với PBX truyền thống......................................... 4

CHƢƠNG 2: TÌM HIỂU TỔNG ĐÀI ASTERISK .................................................................... 62.1  Lí do chọn tổng đài IP ........................................................................................................ 6

2.1.1  Tích hợp dễ dàng.................................................................................................... 6

2.1.2  Giảm chi phí cuộc gọi ............................................................................................ 6

2.1.3  Không cần dây điện thoại riêng ............................................................................ 6

2.1.4  Không bị khoá bởi nhà sản xuất và mở rộng đƣợc ............................................. 6

2.1.5  Dịch vụ khách hàng và hiệu năng tốt ................................................................... 7

2.1.6  Tính năng mới cập nhật liên tục ........................................................................... 7

2.1.7  Kiểm soát tốt hơn nhờ báo cáo đầy đủ ................................................................. 7

2.1.8  Xem tổng quan tình trạng hệ thống hiện tại ........................................................ 7

2.1.9  Di chuyển dễ dàng .................................................................................................. 7

2.2  Tìm hiểu hệ thống mã nguồn mở Asterisk ....................................................................... 7

2.2.1  Vì sao chọn phần mềm Asterisk ............................................................................ 7

2.2.2  Giới thiệu Asterisk ................................................................................................. 8

2.3  Kiến trúc hệ thống ............................................................................................................ 10

2.3.1  Asterisk là thiết bị trung gian ............................................................................. 10

2.3.2  Asterisk hỗ trợ nhiều loại điện thoại .................................................................. 10

2.3.3  Hệ thống Asterisk PBX Switching Core............................................................... 10

2.3.4  Chức năng các API(Application Program Interface) ....................................... 11

2.4  Tính năng cơ bản .............................................................................................................. 11

2.4.1  Một số chức năng trong tổng đài Asterisk ......................................................... 11

Page 4: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 4/78

Đồ án tốt nghiệp Đại học  Mục lục 

SVTH: Nguyễn Thanh Tâm - Lớp:D07THPM

2.4.2  Một số định dạng file ........................................................................................... 13

2.5  Các giao thức VoIP trong hệ thống Asterisk ................................................................. 13

2.5.1  IAX(Inter-Asterisk Exchange)............................................................................ 13

2.5.2  SIP ......................................................................................................................... 14

2.5.3  H.323 ..................................................................................................................... 162.5.4  MGCP(Media Gateway Control Protocol) ........................................................ 18

2.5.5  Skinny/SCCP ........................................................................................................ 18

2.5.6  UNISTIM .............................................................................................................. 19

2.6  Ngữ cảnh ứng dụng trong tổng đài IP ............................................................................ 19

2.6.1  Kết nối IP PBX với PBX...................................................................................... 19

2.6.2  Kết nối giữa Server Asterisk ............................................................................... 20

2.6.3  Các ứng dụng IVR,Conference Call ................................................................... 20

2.6.4  Phân phối cuộc gọi tự động ACD........................................................................ 21

2.7  Tổ chức thƣ mục trong hệ thống Asterisk ...................................................................... 22

2.7.1  Các thƣ mục trong hệ thống................................................................................ 22

2.7.2  Các tập tin cấu hình trong hệ thống ................................................................... 24

2.8  Cơ chế FastAGI ................................................................................................................ 24

2.8.1  FastAGI là gì? ...................................................................................................... 24

2.8.2  Hoạt động.............................................................................................................. 25

3.1  Khái niệm:......................................................................................................................... 26

3.1.1  Sơ lƣợc về tiếng nói trong VoIP: ......................................................................... 26

3.1.2  Khái niệm về Text To Speech: ............................................................................ 26

3.1.3  Lí do chọn Text To Speech .................................................................................. 26

3.1.4  Hạn chế của Text To Speech (TTS) .................................................................... 27

3.2  Cấu trúc file âm thanh ..................................................................................................... 27

3.2.1  Khái niệm: ............................................................................................................ 27

3.2.2  Định dạng dữ liệu:................................................................................................ 27

3.2.3  Xử lí tập tin wave ................................................................................................. 28

CHƢƠNG 4: TÌM HIỂU DỊCH VỤ TRA CỨU ĐIỂM TUYỂN SINH .................................. 39

4.1  Tổng quan về hệ thống tuyển sinh: ................................................................................. 39

4.1.1  Hoạt động: ............................................................................................................ 39

4.1.2  Các thành phần và quá trình hoạt động: .......................................................... 39

4.2  Chức năng của hệ thống: ................................................................................................. 40

Page 5: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 5/78

Đồ án tốt nghiệp Đại học  Mục lục 

SVTH: Nguyễn Thanh Tâm - Lớp:D07THPM

4.2.1  Tổng quát chức năng ................................................................................................... 40

4.2.2  Sơ đồ xử lí chức năng................................................................................................... 41

4.3  Thiết kế lƣợc đồ dữ liệu quan hệ ERD ........................................................................... 42

4.3.1  Các tập thực thể ................................................................................................... 42

4.3.2  Diagram ................................................................................................................ 424.4  Các bảng dữ liệu ............................................................................................................... 43

4.4.1  Danh sách bảng dữ liệu: ...................................................................................... 43

4.4.2  Mô tả các bảng: .................................................................................................... 43

4.4.3  Các mối liên hệ ..................................................................................................... 45

4.5  Những thuận lợi và khó khăn của ứng dụng: ................................................................ 46

4.5.1  Thuận lợi............................................................................................................... 46

4.5.2  Khó khăn............................................................................................................... 46

CHƢƠNG 5: CÀI ĐẶT VÀ CẤU HÌNH HỆ THỐNG SERVER .......................................... 47

5.1  Cài đặt các tính năng cơ bản của tổng đài Asterisk ...................................................... 47

5.1.1  Yêu cầu thiết bị: ................................................................................................... 47

5.1.2  Các bƣớc cài đặt các gói Asterisk phiên bản 1.6.2.20 ....................................... 47

5.1.3  Tải chƣơng trình Asterisk.NET:......................................................................... 48

5.1.4  Cấu hình SIP cho softphone ................................................................................ 48

5.2  Cài đặt Sql Server 2005 và tạo các bảng dữ liệu............................................................ 50

5.2.1  Tại sao chọn Sql Server 2005 .............................................................................. 50

5.2.2  Bảng dữ liệu.......................................................................................................... 50

5.3  Kêt quả đạt đƣợc của việc thực thi tổng đài tự động .................................................... 53

5.3.1  Cài đặt Server....................................................................................................... 53

5.3.2  Hoạt động của tổng đài:....................................................................................... 53

5.3.3  Quá trình tổng hợp tiếng nói: ............................................................................. 62

5.4  Kết luận ............................................................................................................................. 63

5.5  Những hạn chế:................................................................................................................. 64

ĐÁNH GIÁ CHUNG VÀ XU HƢỚNG PHÁT TRIỂN ĐỂ TÀI ............................................. 65

PHỤ LỤC...................................................................................................................................... 67

TÀI LIỆU THAM KHẢO ........................................................................................................... 68

Page 6: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 6/78

Đồ án tốt nghiệp Đại học Danh mục hình ảnh 

SVTH: Nguyễn Thanh Tâm - Lớp:D07THPM

DANH MỤC HÌNH ẢNH Chƣơng 1 

Hình 1.1 : Thiết bị card phần cứng giao tiếp với PSTN .................................... 3Hình 1.2 : Mô hình các thiết bị kết nối với Adapter .......................................... 4Hình 1.3 : Hệ thống tổng đài IP-PBX ................................................................ 5

Chƣơng 2 Hình 2.1 : Mô hình VoIP to PSTN sử dụng tổng đài Asterisk .......................... 8Hình 2.2 : Kiến trúc của Aster ik ....................................................................... 9Hình 2.3 : Sơ đồ kết nối giữa tổng đài với các thiết bị ..................................... 10Hình 2.4 : Hoạt động của SIP ........................................................................... 15Hình 2.5 : Mô hình điều khiển cuộc gọi H.323 ................................................. 17Hình 2.6 : Hoạt động của giao thức MCGP ....................................................... 18Hình 2.7 : Sơ đồ kết nối IP PBX với PBX........................................................ 19Hình 2.8 : Sơ đồ kết nối các server Asterisk ...................................................... 20Hình 2.9 : Các ứng dụng của tổng đài .............................................................. 21Hình 2.10 : Phân phối cuộc gọi ACD ................................................................ 23

Hình 2.11 : Cấu trúc thư mục trong var ............................................................. 23Hình 2.12 : Mô hình kết nối của chương trình Asterisk.NET ........................... 27

Chƣơng 3 Hình 3.1 : Định dạng chuỗi sóng ....................................................................... 28Hình 3.2 : Cấu trúc tập tin âm thanh .................................................................. 29Hình 3.3 : Làn song dạng RIFF ......................................................................... 30Hình 3.4 : Định dạng dữ liệu Chunk .................................................................. 33Hình 3.5 : Làn sóng mẫu Interkind Stereo ......................................................... 34Hình 3.6 : Định dạng thực tế Chunk .................................................................. 35

Chƣơng 4 Hình 4.1 : Chức năng của ứng dụng tuyển sinh ................................................. 40Hình 4.2 : Mô hình tập thực thể ......................................................................... 42Hình 4.3 : Sơ đồ Diagram .................................................................................. 42

Chƣơng 5 Hình 5.1 : Cấu hình SoftPhone .......................................................................... 51Hình 5.2 : Cấu hình gọi dịch vụ từ xa ................................................................ 52Hình 5.3 : Mà hình sau khi đã kết nối Asterisk ................................................. 53Hình 5.4 : Cấu hình file Sip ............................................................................... 54Hình 5.5 : Cấu hình file extensions.................................................................... 55

Hình 5.6 : Cấu hình tập tin chia sẻ ..................................................................... 55Hình 5.7 : Khởi động samba .............................................................................. 56Hình 5.8 : Khai báo user chia sẻ ........................................................................ 56Hình 5.9 : Đường dẫn vào server ....................................................................... 56Hình 5.10 : Địa chỉ share tập tin âm thanh ........................................................ 57Hình 5.11: Kết nối giữa máy server và máy client ............................................ 58Hình 5.12 : Script kết nối với server .................................................................. 59Hình 5.13 : Màn hình đã kết nối dịch vụ ........................................................... 60

Page 7: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 7/78

Đồ án tốt nghiệp Đại học Danh mục hình ảnh 

SVTH: Nguyễn Thanh Tâm - Lớp:D07THPM

Hình 5.14 : Xử lí phím số 1 ............................................................................... 60Hình 5.15 : Xử lí phím số 2 ............................................................................... 61Hình 5.16 :Trường hợp sai phím bấm................................................................ 62Hình 5.17: Xử lí ghép âm thanh......................................................................... 62Hình 5.18: Thư mục đọc file âm thanh từ Text ................................................. 63

Đánh giá chungHình1 : Mô hình dịch vụ IVR ............................................................................ 65

Page 8: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 8/78

Đồ án tốt nghiệp Đại học  Kí hiệu các cụm từ viết tắt 

SVTH: Nguyễn Thanh Tâm - Lớp:D07THPM

KÍ HIỆU CÁC CỤM TỪ VIẾT TẮT 

AATA : Analog Telephone Adaptors Bộ chuyển đổi điện thoại số 

API : Application Programming Interface Giao diện ứng dụng 

AGI : Asterisk Gateway Interface Giao diện cổng Asterisk  

ACD : Automatic Call Distribution Phân phối cuộc gọi tự động 

C

CGI : Computer Graphics International Đồ họa máy tính quốc tế 

CSDL : Cơ sở dữ liệu 

D

DoS : Denial of Service Từ chối dịch vụ 

F

FXO : Foreign Exchange Office Cổng tiếp nhận đường tín hiệu tương tự 

FXS : Foreign Exchange Station Cổng cung cấp đường tín hiệu tương tự 

H

HTTP : Hypertext Transfer Protocol Giao thức truyền siêu văn bản 

IIP : Internet Protocol Giao thức Internet 

IP-PBX : Internet Protocol- Tổng đài IP

Private Branch Exchange

IAX : Inter-Asterisk eXchange Giao thức chuyển đổi IAX 

IVR : Interactive Voice Response Tương tác thoại 

ITSP : Internet Telephony Service Provider  Nhà cung cấp dịch vụ điện thoại Internet 

IETF : Internet Engineering Task Force Cộng đồng quốc tế mở về mạng 

ITU : International Telecommunication Union Liên minh Viễn thông quốc tế ISDN : Interated Services Digital Network  Mạng số tích hợp dịch vụ 

Page 9: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 9/78

Đồ án tốt nghiệp Đại học  Kí hiệu các cụm từ viết tắt 

SVTH: Nguyễn Thanh Tâm - Lớp:D07THPM

M

MGCP : Media Gateway Control Protocol Giao thức điều khiển cổng truyền thông 

MD5 : Message-Digest algorithm 5 Là hàm băm mật mã 

N

NAT : Network Address Translators Biên dịch địa chỉ mạng 

P

PBX : Private Branch Exchange Tổng đài Nhánh Riêng 

PSTN : Public Switched Telephone Network  Mạng điện thoại chuyển mạch công cộng 

R

RJ-11 : Registered Jack 11 Kết nối các thiết bị điện thoại 

RJ-45 : Registered Jack 45 Kết nối các thiết bị trong mạng Ethernet 

RTP : Real-Time Transport Protocol Giao thức truyền thời gian thực 

RSA : Resgister Admission Status Báo hiệu đăng kí, cấp phép, thông tintrạng thái 

RFC : Request for Comment Yêu cầu cho ý kiến 

RTCP : Real Time Control Protocol Giao thức điều khiển thời gian thực 

S

SIP : Session Initiation Protocol Giao thức khởi tạo phiên 

SCCP : Signaling connection Control Part Phần điều khiển kết nối tín hiệu 

SMTP : Simple Mail Transfer Protocol Giao thức truyền thông tin đơn giản 

T

TDM : Time Division Multiplexing Ghép kênh phân chia thời gian 

TĐĐTS :  Tổng đài điện tử số 

TLS : Transport Layer Securit Giao thức bảo mật lớp truyền tải 

TCP : Transport Control Protocol Giao thức điều khiển truyền TCP 

TTS: Text To Speech Chuyển văn bản thành tiếng nói 

Page 10: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 10/78

Đồ án tốt nghiệp Đại học  Kí hiệu các cụm từ viết tắt 

SVTH: Nguyễn Thanh Tâm - Lớp:D07THPM

U

UDP : User Datagram Protocol Giao thức gói người sử dụng 

V

VoIP : Voice over Internet Protocol Tiếng nói qua giao thức Internet VPN : Virtual Private NetWork  Mạng riêng ảo 

WAN : Wide Area Network  Mạng diện rộng 

Page 11: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 11/78

Đồ án tốt nghiệp Đại học  Chương 1:Tổng quan về VOIP 

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 1

CHƢƠNG 1: TỔNG QUAN VỀ VOIP 

1.1  Giới thiệu VoIP 1.1.1  Khái niệm: 

  VoIP (Voice Over Internet Protocol) là một công nghệ cho phép truyền

thoại sử dụng giao thức mạng IP trên cơ sở  hạ tầng sẵn có của mạngInternet.

  VoIP có thể vừa thực hiện mọi cuộc gọi trên mạng điện thoại thông

thườ ng vừa có thể truyền dữ liệu trên mạng truyền số liệu. Do các ưu

điểm về giá thành dịch vụ và sự tích hợ p nhiều loại hình dịch vụ nên

VoIP hiện nay đã đượ c triển khai rộng rãi.

  Dịch vụ điện thoại VoIP bao gồm việc số hóa tín hiệu tiếng nói, thực

hiện nén tín hiệu số, chia nhỏ các gói nếu cần và truyền gói tin này qua

mạng. Tại nơi nhận, các gói tin này đượ c ráp lại theo đúng trình tự bản

tin và giải mã để phục hồi lại tiếng nói ban đầu.

  Các cuộc gọi trong VoIP dựa trên cơ sở sử dụng k ết hợ p chuyển mạch

kênh và chuyển mạch gói. Trong mỗi loại chuyển mạch đều có ưu và

nhược điểm.

  Vớ i chuyển mạch kênh dành riêng một kênh có tốc độ truyền

dẫn cố định (trong mạng PSTN, tốc độ này là 64Kbit/s) do đó

có độ trễ nhỏ và độ chính xác cao nên không thể xảy ra tắc

nghẽn.

  Vớ i chuyển mạch gói, các bản tin đượ c chia thành các góinhỏ, sử dụng hệ thống lưu trữ và chuyển tiếp các gói thông

tin trong nút mạng. Đối vớ i loại chuyển mạch gói này không

tồn tại khái niệm kênh riêng và băng thông hoàn toàn có thể 

thay đổi đượ c. Tuy nhiên, k ỹ thuật này lại cho độ trễ lớ n vì

trong chuyển mạch này không quy định thờ i gian mỗi gói tớ iđích do đó không đáp ứng đượ c tính thờ i gian thực như trong

thoại.

  Như vậy để truyền dẫn thoại trong môi trườ ng mạng chuyển mạch gói,VoIP phải k ết hợ p cả ưu điểm của hai loại chuyển mạch kênh và gói.

Page 12: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 12/78

Đồ án tốt nghiệp Đại học  Chương 1:Tổng quan về VOIP 

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 2

1.1.2  Ƣu và Khyết của VoIP: Ưu điểm:

  Đối với điện thoại Internet có các cơ chế  để phát hiện khoảng lặng

(khoảng thờ i gian không có tiếng nói) nên sẽ làm tăng hiệu suất mạng.

  Điện thoại IP là bước đột phá về công nghệ và dịch vụ, mang lại khả 

năng gọi đườ ng dài và quốc tế vớ i giá rẻ.

  Điện thoại IP còn mang lại lợ i ích trong việc phát triển tích hợ p các dịch

vụ viễn thông và mở rộng dịch vụ .

Khuyết điểm của VoIP:

  Không thể thực hiện mọi cuộc gọi qua Internet nếu như ngườ i gọi không

có trực tuyến trên mạng.

  Không đảm bảo tính bảo mật.

1.2  Các thiết bị dùng trong VoIP: 

1.2.1  VoIP phone  Là thiết bị phần cứng k ết nối vớ i VoIP giống như máy điện thoại cố định

thông thường. Tuy nhiên để sử dụng cho VoIP cần phải cấu hình trướ c

khi sử dụng.

  Một số tính năng khi mua thiết bị điện thoại VoIP:

  Low Bandwidth: hỗ trợ  cho loại Codec nào, thườ ng hiện nay

ngườ i ta sử dụng G729.

  Web Interface: phải có giao tiếp thiết lập cấu hình thân thiện , dễ 

sử dụng.  Audio Interface: xét xem có speaker phone hay không.

1.2.2  Softphone

  Là một phần mềm đượ c cài trên máy tính, thực hiện tất cả các chức nănggiống như thiết bị điện thoại VoIP.

  Khi sử dụng softphone, ta phải có card âm thanh để giao tiếp máy tính,

headphone và firewall không bị khóa(hoặc tắt firewall).

  Đối vớ i hệ thống Asterisk, nên dùng softphone vớ i công nghệ giao thức

mớ i dành cho Asterisk là IAX.

1.2.3  Card giao tiếp vớ i PSTN

  Để  các máy điện thoại nội bộ trong hệ thống Asterisk k ết nối và thực

hiện cuộc gọi vớ i mạng PSTN, chúng ta cần phải có thiết bị phần cứng

tương thích. Đó chính là thiết bị của công ty Digium.

Page 13: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 13/78

Đồ án tốt nghiệp Đại học  Chương 1:Tổng quan về VOIP 

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 3

  Thiết bị phần cứng sử dụng cho hệ thống Asterisk do chính tác giả lập

công ty Digium phân phối, xuất phát từ ý tưở ng phân phối phần mềm

Asterisk và hệ thống nguồn mở miễn phí.

Hình 1.1: Thiết bị card phần cứng.

  Thiết bị phần cứng thườ ng ký hiệu bắt đầu bằng cụm từ TDMxyB,

trong đó :

 x là số lượ ng port FXS.

  y là số lượ ng port FXO

 Giá trị tối đa của cả x và y là 4.

1.2.4  ATA (Analog Telephone Adaptors)

  ATA là thiết bị k ết nối với điện thoại Analog thông thường đến mạng

VoIP, một thiết bị ATA gồm có hai loại port:

 RJ-11 để k ết nối với máy analog thông thườ ng.

 RJ-45 để k ết nối vớ i mạng VoIP.

  ATA là thiết bị FXS chuyển đổi tín hiệu Analog sang tín hiệu số, nó sử 

dụng cho mạng VoIP để tận dụng thiết bị Analog k ết nối VoIP.

  Thiết bị ATA sử dụng vớ i giao thức IAX đượ c Digium phân phối và

thiết bị ATA này đượ c sử dụng rộng rãi vớ i Asterisk có tên gọi là IAXy.

Page 14: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 14/78

Đồ án tốt nghiệp Đại học  Chương 1:Tổng quan về VOIP 

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 4

Hình 1.2: Mô hình các thiết bị k ết nối vớ i Adapter

1.3  Ƣu điểm sử dụng tổng đài IP-PBX so với PBX truyền thống. 

  Tận dụng được toàn bộ hạ tầng mạng của đơn vị để truyền thông tin

thoại, đơn giản hơn nhiều với PBX truyền thống, phải thực hiện việc đấunối vật lý đường trung kế giữa hai tổng đài. 

  Quản lý tập trung, thông qua giao diện web. quản trị viên có thể giámsát, vận hành, cấu hình từ bất kỳ đâu và bất cứ khi nào.

  Khả năng nâng cấp hệ thống cao nhất và không giới hạn số lượng người

dùng.

  Tích hợp  phần mềm Softphone cài trên máy tính, chỉ cần thêm tai nghe

và mic là biến thành điện thoại IP. 

  Điện thoại IP có thể kết nối về tổng đài tại bất cứ vị trí nào(có mạng làcó thể sử dụng được ngay) trong khi số điện thoại không hề thay đổi,

thậm chí qua cả môi trường Internet. 

  Cắt giảm chi phí cuộc gọi đến mức thấp nhất giữa các chi nhánh, văn phòng và cuộc gọi quốc tế khi kết hợp với các nhà cung cấp dịch vụ điệnthoại quốc tế (ITSP).

Page 15: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 15/78

Đồ án tốt nghiệp Đại học  Chương 1:Tổng quan về VOIP 

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 5

Hình 1.3: Hệ thống một tổng đài IP-PBX

Page 16: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 16/78

Đồ án tốt nghiệp Đại học  Chương 2: Tìm hiểu tổng đài Asterisk  

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 6

CHƢƠNG 2: TÌM HIỂU TỔNG ĐÀI ASTERISK  

2.1  Lí do chọn tổng đài IP 2.1.1  Tích hợp dễ dàng 

  Tổng đài dễ cài đặt hơn so với hệ thống điện thoại thông thường.

  Thiết lập các thông số thông qua giao diện web, không cần cài đặt bất kì phần mềm phức tạp nào để vận hành nó. Do đó, bất kì ai có hiểu biết vềmáy tính đều có thể cài đặt hệ thống PBX.So với hệ thống điện thoạitruyền thống thì nhân viên cài đặt phải được huấn luyện về cách vận

hành hệ thống đó. 

2.1.2  Giảm chi phí cuộc gọi 

  Bạn sẽ tiết kiệm được rất nhiều chi phí nếu sử dụng dịch vụ VoIP đối

với cuộc gọi đường dài hay gọi ra quốc tế.  Kết nối điện thoại dễ dàng giữa các văn  phòng hay chi nhánh và được

gọi nội mạng miễn phí. 

2.1.3  Không cần dây điện thoại riêng 

  Cho phép bạn kết nối điện thoại phần cứng trực tiếp vào cổng mạng tiêu

chuẩn của máy tính –  có thể chia sẻ với máy tính bên cạnh. 

  Điện thoại này dạng phần mềm nên được cài trực tiếp lên máy tính ,không cần lắp đặt và duy trì một dây riêng cho hệ thống điện thoại. 

  Linh động trong việc mở rộng hệ thống và thêm người dùng. Nhất làtrong trường hợp bạn chuyển đến văn phòng mới và chưa kéo dây điện

thoại thì bạn có thể tiết kiệm bằng cách lắp đặt một mạng máy tính.

2.1.4  Không bị khoá bởi nhà sản xuất và mở rộng đƣợc 

  Hệ thống VOIP là hệ thống tiêu chuẩn mở, nó sử dụng giao thức SIP.Bạn có thể dùng bất kì điện thoại VOIP chuẩn SIP hay phần cứng VOIPgateway nào.

  So với hệ thống điện thoại thông thường, để phát triển lớn hơn (nhưthêm đường dây,thêm số máy nhánh), ta phải mở rộng thêm các mô đun,

nâng cấp những phần cứng đắt tiền hay có khi là làm mới hệ thống hoàntoàn.

  Với một máy tính bình thường, ta có thể quản lí một lượng lớn cácđường dây điện thoại và các số máy nhánh con.Nếu muốn mở rộng tachỉ cần thêm các điện thoại mới vào trong mạng của bạn . 

Page 17: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 17/78

Đồ án tốt nghiệp Đại học  Chương 2: Tìm hiểu tổng đài Asterisk  

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 7

2.1.5  Dịch vụ khách hàng và hiệu năng tốt 

  Dễ tích hợp với các ứng dụng thương mại do các cuộc gọi dựa trên máytính

  Các cuộc gọi đi có thể thực hiện trực tiếp từ Outlook , không cần phải gõ

số điện thoại vào. 

  Tất cả tính năng đều được thực hiện dễ dàng từ một giao diện ngườidùng với các cửa sổ thân thiện(nhất là dùng trong hội đàm)  

2.1.6  Tính năng mới cập nhật liên tục 

  Hệ thống VOIP dựa trên phần mềm nên các nhà phát triển có thể

thêm,cải thiện các tính năng một cách dễ dàng. 

  Các chức năng cập nhật liên tục như trả lời tự động,thư thoại,cuộc gọichờ,danh sách đen… 

2.1.7  Kiểm soát tốt hơn nhờ báo cáo đầy đủ 

  Các thiết lập VOIP lưu trữ thông tin cuộc gọi đến và cuộc gọi đi trongmột cơ sở dữ liệu trên máy chủ của bạn. Vì thế, bạn sẽ cập nhật đầy đủvề chi phí gọi và lưu lượng gọi. 

2.1.8  Xem tổng quan tình trạng hệ thống hiện tại 

  Thông qua trình duyệt web, bạn có thể chỉ định người dùng nào có thểxem tình trạng của hệ thống ở dạng đồ hoạ.

   Nếu với hệ thống thông thường thì bạn phải cung cấp các máy điện thoạivới hệ thống đắt tiền để biết những gì đang diễn ra trong máy điện thoại. 

2.1.9  Di chuyển dễ dàng    Người dùng chỉ cần lấy điện thoại và cắm nó vào cổng Ethernet gần nhất

.Đặc biệt, họ vẫn giữ được số điện thoại hiện có. 

  Các cuộc gọi có thể được chuyển hướng đến bất kì đâu trên thế giới nhờ vào các đặc điểm của giao thức SIP. 

2.2  Tìm hiểu hệ thống mã nguồn mở Asterisk  2.2.1  Vì sao chọn phần mềm Asterisk  

  Tiết kiệm chi phí ( chi phí thấp hơn so với các tổng đài khác).

  Asterisk được xem như là một tổng đài PBX (Private BrancheXchange) và tích hợp nhiều tính năng mới. 

   Ngoài những tính năng của một tổng đài PBX thông thường, Asterisk còn được tích hợp cả chuyển mạch TDM và chuyển mạch VoIP, có khảnăng mở rộng đáp ứng nhu cầu cho từng ứng dụng như mở rộng giao

tiếp với mạng PSTN (Public Switched Telephone Network). 

Page 18: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 18/78

Đồ án tốt nghiệp Đại học  Chương 2: Tìm hiểu tổng đài Asterisk  

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 8

  Asterisk có thể chạy trên các hệ điều hành khác như: Mac OS X,Linux,FreeBSD, OpenBSD và Microsoft Windown… 

  Với một máy  tính đã cài hệ điều hành (một trong các hệ điều hành nóitrên, ở đây ta xét hệ điều hành Linux) và có thêm phần mềm Asterisk đã

cấu hình, khi đó máy tính này sẽ có đầy đủ tính năng của một tổng đàiđiện thoại và có thể hơn thế. 

2.2.2  Giới thiệu Asterisk  

  Asterisk là phần mềm nguồn mở,một hệ thống chuyển mạch mềm, đượcviết bằng ngôn ngữ C, ra đời năm 1999 bởi Mark Spencer, 

  Phần mềm đầu tiên được thiết kế và triển khai trên GNU/Linux nền x86

(của Intel).

  Asterisk là một bộ công cụ mã nguồn mở cho các ứng dụng thoại. Làserver xử lí đầy đủ các chức năng cuộc gọi, thực hiện tất cả các tính

năng của tổng đài PBX.   Tích hợp giao tiếp với mạng PSTN và mạng VOIP cho phép gọi ra bất

cứ số điện thoại nào trên mạng PSTN. 

Hình 2.1: Mô hình VoIP-to-PSTN sử dụng tổng đài Asterisk 

 Ứ ng dụng cho điện thoại: chuyển mạch cuộc gọi, cuộc gọi hội nghị,voicemail, chuyển hướ ng cuộc gọi, … 

  Một Asterisk server đượ c k ết nối tớ i một mạng vùng nội hạt sẽ  điều

khiển các điện thoại trong mạng k ết nối đến mạng khác, các điện thoại

trong mạng có thể thực hiện cuộc gọi và k ết nối Internet thông qua

Asterisk server.

Page 19: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 19/78

Đồ án tốt nghiệp Đại học  Chương 2: Tìm hiểu tổng đài Asterisk  

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 9

  Cổng FXS dùng để Asterisk server điều khiển các điện thoại tương tự 

trong nội hạt. Cổng FXO và kênh T được dùng để k ết nối giữa Asterisk 

server vớ i mạng PSTN. Thuê bao trong mạng PSTN thực hiện cuộc gọi

đến các thuê bao đượ c quản lý bở i Asterisk server, các thuê bao của

Asterisk cũng có thể thực hiện cuộc gọi đến thuê bao trong mạng PSTN.

Hình 2.2: Kiến trúc của Asterisk  

  Khi khở i động hệ thống Asterisk thì Dynamic Module Loader thực

hiện nạp driver của thiết bị và bắt đầu nạp các giao thức.

  Hiện nay hệ thống Asterisk đang được phát triển mạnh, nhiều doanhnghiệp, công ty đã và đang triển khai hệ thống tạo.Họ tạo  liên lạc bêntrong và ra cả mạng ngoài thông qua mạng máy tính, gọi điện thoại. 

Page 20: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 20/78

Đồ án tốt nghiệp Đại học  Chương 2: Tìm hiểu tổng đài Asterisk  

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 10

Hình 2.3: Sơ đồ k ết nối giữa tổng đài và các thiết bị.

  Asterisk không chỉ giao tiếp, k ết nối giữa các điện thoại vớ i nhau mà

còn có thể mở rộng k ết nối đến các tổng đài khác, vớ i IP Phone và nhiều

dịch vụ như: Softswitch, Media Gateway, Voicemail Services,

Conference Server, Music on hold… 

  Asterisk là một phần mềm nguồn mở, miễn phí, có độ tin cậy cao. 

2.3  Kiến trúc hệ thống 2.3.1  Asterisk là thiết bị trung gian 

  Thiết bị liên kết công nghệ thoại và Internet.  

  Được ứng dụng để kết nối điện thoại ,gói thoại đến một dịch vụ khác. 

  Asterisk có độ tin vậy cao và dễ dàng triển khai cho các hệ thống (từ hệ

thống nhỏ đến hệ thống lớn). 

2.3.2  Asterisk hỗ trợ nhiều loại điện thoại 

  Hỗ trợ các công nghệ thoại như VoIP,SIP,H.323,IAX. 

  Kết nối với hầu hết loại điện thoại truyền thống mạng ISDN qua luồngT1 và E1 cùng các API được nạp vào hệ thống. 

2.3.3  Hệ thống Asterisk PBX Switching Core  Các cuộc gọi được thực hiện tuỳ vào kế hoạch quay số. 

  Chức năng Application Launchar để rung chuông thuê bao, k ết nối vớ i

hộp thư thoại hoặc gọi ra đườ ng trung k ế… 

Page 21: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 21/78

Đồ án tốt nghiệp Đại học  Chương 2: Tìm hiểu tổng đài Asterisk  

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 11

  Scheduler and I/O Manager đảm nhiệm các ứng dụng nâng cao như: lập

thờ i biểu và quản lý các cuộc gọi đến – gọi ra ngoài. Đây là các chức

năng đượ c phát triển bở i cộng đồng phát triển Asterisk.

  Codec Translator xác nhận các kênh nén dữ liệu ứng vớ i các chuẩn khác

nhau có thể k ết hợ p liên lạc đượ c vớ i nhau.

  Tất cả các cuộc gọi định hướ ng qua hệ thống Asterisk đều thông qua các

giao tiếp như: SIP, Zaptel or IAX. Mọi cuộc gọi vào và ra ngoài đều

đượ c thực hiện thông qua các giao tiếp trên. Vì thế hệ thống Asterisk 

phải đảm trách nhiệm vụ liên k ết các giao tiếp khác nhau đó để xử lý

cuộc gọi.

2.3.4  Chức năng các API(Application Program Interface) 

  Codec translator API: các hàm đảm nhiệm thực thi và giải nén các chuẩn

khác nhau như: GMS, G723, Mu-Law…   Asterisk Channel API : giao tiếp vớ i các kênh liên lạc khác nhau, đây là

đầu mối cho việc k ết nối các cuộc gọi tương thích vớ i nhiều chuần khác

nhau như SIP, ISDN, H323, Zaptel… 

  Asterisk file format API : Asterisk tương thích vớ i việc xử lý các loại

file có định dạng khác nhau như: Mp3, WAV, GSM, AU… 

  Asterisk Aplication API : bao gồm tất cả các ứng dụng đượ c thực thi

trong hệ thống Asterisk như: cuộc gọi hội nghị, VoiceMail, CallerID… 

Ngoài ra, Asterisk còn có thư viện Asterisk Gateway Interface (AGI, tương tự như CGI) cơ chế kích hoạt ứng dụng bên ngoài, cho phép viết k ịch bản phức

tạp vớ i một số ngôn ngữ như PHP hay Perl.

2.4  Tính năng cơ bản 2.4.1  Một số chức năng trong tổng đài Asterisk  

2.4.1.a Voice mail - hộp thƣ thoại 

  Cho phép hệ thống nhận các thông điệp tin nhắn thoại. 

  Mỗi máy điện thoại được khai báo trong hệ thống cho phép khai báo

thêm chứa năng hộp thư thoại.   Khi số điện thoại bận hay ngoài vùng phủ sóng thì hệ thống định hướng

trực tiếp đến các cuộc gọi đến hộp thư thoại tương ứng đã khai báotrước. 

  Voice mail cung cấp cho người sử dụng nhiều lựa chọn như: xác nhận password khi truy cập vào,gửi mail báo có thông điệp mới đến.

Page 22: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 22/78

Đồ án tốt nghiệp Đại học  Chương 2: Tìm hiểu tổng đài Asterisk  

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 12

2.4.1.b Call Forwarding –  chuyển cuộc gọi 

  Cho phép chuyển một cuộc gọi đến một hay nhiều số máy điện thoạiđược định trước. 

  Một số trường hợp cần chuyển cuộc gọi như: chuyển cuộc gọi khi

 bận ,chuyển khi không trả lời, chuyển cuộc gọi tức thời, chuyển cuộcgọi với thời gian định trước. 

2.4.1.c  Caller ID –  hiển thị số gọi đến 

  Cho phép ta xác nhận số thuê bao gọi đến,dựa vào đó ta có thể biết màtiếp nhận hay không tiếp nhận cuộc gọi đến từ phía hệ thống. 

  Chức năng này rất hữu dụng cho việc ta muốn biết chính xác cuộc gọiđến từ ai và ngăn được một số cuộc gọi ngoài ý muốn. 

2.4.1.d Automated attendant –  tƣơng tác thoại 

  Chức năng này ứng dụng trong thực tế rất nhiều và thân thiện với người

dùng.

  Một số trường hợp như khi gọi đến đường dây nóng một công ty,cơ quan…ta sẽ nghe thông điệp:”Chào mừng bạn đến với công ty A, bạn

vui lòng  bấm phím 1 để gặp phòng nhân sự,bấm phím 2 để gặp phòngkinh doanh…” 

  Các dịch vụ xem điểm thi,xem tỉ số trận bóng đá,xem kết quả sổsố…đều thực hiện nhờ chức năng tương tác thoại IVR.

  Với chức năng này, hệ thống sẽ định hướng cuộc gọi theo mong muốn. 

2.4.1.e  Time and Date  Cuộc gọi được định hướng đến một số điện thoại hay một chức năng nào

đó vào từng thời điểm mà ta qui định trong tổng đài.

  Chức năng rất hữu dụng trong các công ty muốn kiểm soát nhân viên.Chẳng hạn,trong công ty A giám đốc chỉ cho phép nhân viên dùng điệnthoại trong giờ hành chính còn ngoài giờ thì sẽ hạn chế hoặc không chogọi ra ngoài. 

2.4.1.f   Call Parking

  Chức năng cho phép chuyển cuộc gọi có quản lí.

  Với chức năng này ta phải có một số điện thoại trung gian và hai thuê bao có thể gặp nhau khi thuê bao được gọi nhấn vào số điện thoại màthuê bao chủ đang chờ trên đó và từ đây có thể đàm thoại với nhau.

  Chẳng hạn như, khách hàng muốn gặp giám đốc nhưng khi gọi vào

công ty, khách hàng sẽ gặp thư kí trước và sau đó thư kí sẽ nối đườngdây vào cho giám đốc. 

Page 23: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 23/78

Đồ án tốt nghiệp Đại học  Chương 2: Tìm hiểu tổng đài Asterisk  

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 13

2.4.1.g Remote call pickup

  Chức năng cho phép ta có thể nhận cuộc gọi từ máy điện thoại khácđang rung chuông. 

2.4.1.h Privacy Manager

  Tính năng này qui định điện thoại của ta chỉ được gọi đến những số cốđịnh nào đó (được lập trình sẵn trong hệ thống), những số ngoài danhsách định sẵn sẽ không thực hiện được. 

  Chẳng hạn, khi một chủ  doanh nghiệp xây dựng hệ thống điện thoạinhưng không muốn nhân viên mình gọi ra ngoài trò chuyện với bạn bè

hay dùng trong việc riêng. 

2.4.1.i  Backlist

  Giống chức năng của Privacy Manager nhưng cung cấp thêm một tínhnăng nữa.Đó là những máy điện thoại nằm trong danh sách này sẽ không

được gọi đến máy của bạn.   Tính năng này hữu dụng trong trường hợp bạn thường xuyên bị quấy rối

điện thoại. Với những tính năng trên cho thấy sự đa dạng về dịch vụ của hệ thống tổngđài Asterisk. Tuy nhiên, đó chỉ là các tính năng cơ   bản,bạn có thể nâng cấpcác tính năng cao cấp hơn bằng việc tích hợp thêm một số sản phẩm phầncứng của nhà cung cấp dịch vụ thoại IP. 

2.4.2  Một số định dạng file 

 Raw : dữ liệu 16 bit tuyến tính 

  Pcm: dữ liệu 8 bit.

  Vox : dữ liệu 4 bit IMA-ADPCM

  Wav : file wav tuyến tính 16 bit ở 8 KHz 

  Wav : file wav nén GSM ở 8 KHz 

  Gsm: dữ liệu nén GSM 

  G723 : định dạng g723 đơn giản với nhãn thời gian. 

2.5  Các giao thức VoIP trong hệ thống Asterisk  2.5.1  IAX(Inter-Asterisk Exchange)

  IAX là một giao thức mở , ta có thể download và phát triển nó hoàn toàn

miễn phí.Phiên bản hiện tại của nó là IAX 2.

  Tất cả các hỗ trợ cho IAX 1 không còn tồn tại nữa. Vì vậy khi nói đến

IAX có nghĩa là IAX2. Trong Asterisk, IAX đượ c hỗ trợ  bở i module

chan_iax2.

Page 24: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 24/78

Đồ án tốt nghiệp Đại học  Chương 2: Tìm hiểu tổng đài Asterisk  

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 14

  IAX đượ c phát triển bở i Digium vớ i mục đích giao tiếp vớ i các server

Asterisk khác, vì thế  nó đượ c gọi là Inter-Asterisk eXchange. IAX là

giao thức truyền tải (giống như SIP), sử dụng port UDP 4569 cho cả 

kênh tín hiệu lẫn dòng dữ liệu RTP.

  IAX có khả năng kết hợ p lại nhiều phiên k ết nối thành một dòng dữ liệu

duy nhất. Việc k ết hợp này làm tăng khả  năng sử dụng băng thông.Thêm vào đó việc sử dụng một header chung duy nhất làm giảm thờ igian overhead cho mỗi kênh riêng lẽ. Giao thức này thích hợ p khi có

nhiều kênh k ết nối giữa hai đầu cuối.

  Vì IAX được tối ưu hóa cho thoại, nên trên thực tế nó không ưu việt khitruyền tín hiệu video. Tuy nhiên, vì nó là một giao thức mở, nên việc mở rộng dành cho các loại dữ liệu khác ngoài thoại là điều hoàn toàn có thể. 

  Về khía cạnh bảo mật, IAX có khả năng nhận thức bằng ba cách khác

nhau như sau: 

  Plain text 

  Mã hóa MD5 

  Mã hóa trao đổi khóa RSA. 

  Không mã hóa phần header giữa hai đầu cuối. Có nhiều giải pháp sử

dụng mạng riêng ảo (VPN) và các phần mềm mã hóa khác đã được sửdụng, đòi hỏi đầu cuối phải thiết lập trước các   phương pháp tunnel vàhoạt động.

  Trong tương lai, IAX có thể mã hóa dòng dữ liệu giữa hai đầu cuối sửdụng việc trao đổi khóa RSA hoặc trao đổi hóa động tại thời điểm thiết

lập cuộc gọi. Điều này rất hấp dẫn vì nó có tính bảo mật khá cao, đặc biệt trong các lĩnh vực đòi hỏi tính bảo mật như ngân hàng. 

  IAX2 được thiết kế để tương thích với các thiết bị sử dụng giao thức NAT. Việc sử dụng duy nhất một port UDP cho cả tín hiệu báo hiệu và

truyền dẫn dẫn đến tăng cườg tính năng bảo mật của firewall. Điều nàylàm cho IAX là một trong các giao thức bảo mật tốt nhất cho mạng. 

2.5.2  SIP

  Sự ra đời của SIP đã giúp phát triển mạnh VoIP. SIP có ưu điểm là giaothức đơn giản, có cấu trúc syntax khá giống với các giao thức HTTP hay

SMTP. 

  SIP được hỗ trợ bởi module trong Asterisk là chan_sip.so module. 

Page 25: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 25/78

Đồ án tốt nghiệp Đại học  Chương 2: Tìm hiểu tổng đài Asterisk  

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 15

  SIP được phát triển bởi IETF vào tháng 2-1996. Ban đầu SIP chỉ cóchức năng yêu cầu thiết lập cuộc gọi. Vào tháng 3 -1999, phiên bản thứ11 có tên gọi là SIP RFC 2543 ra đời. 

  SIP được coi như là giao thức thông dụng của VoIP. Tất cả các user và

doanh nghiệp đều có xu hướng hỗ trợ SIP.   Ngày nay,SIP hỗ trợ thêm cả những chức năng không có trong VoIP như

video, âm nhạc và các dịch vụ multimedia thời gian thực khác. 

Hình 2.4: Mô hình hoạt động SIP. 

  Yêu cầu SIP có 6 loại:

  INVITE : thiết lập phiên 

  ACK: xác nhận yêu cầu invite 

  BYE : kết thúc phiên 

  CANCEL: huỷ bỏ việc thiết lập phiên 

  REGISTER: trao đổi thông tin địa điểm người dùng (bao gồm

tên máy,IP)  OPTIONS : trao đổi các thông tin về khả năng của các điện

thoại SIP để gọi và nghe trong phiên.

  Phản hồi SIP : các yêu cầu SIP được trả lời bằng các phản hồi SIP và có6 loại phản hồi:

Page 26: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 26/78

Đồ án tốt nghiệp Đại học  Chương 2: Tìm hiểu tổng đài Asterisk  

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 16

  1xx = phản hồi thông tin. 

  2xx = phản hồi thành công 

  3xx = phản hồi chuyển hướng 

  4xx = yêu cầu bị thất bại   5xx = lỗi máy chủ 

  6xx = thất bại toàn cục 

  DoS (Denial of Service) được xem như phương thức tấn công thôngdụng nhất trên mạng VoIP. Một phiên tấn công DoS sẽ diễn ra khi cómột số lượng lớn các lời mời INVITE không hợp lệ đến proxy server để

làm quá tải hệ thống. SIP có một vài phương thức để giảm thiểu tácđộng của DoS nhưng không thể hoàn toàn phòng ngừa nó.  

  Một lược đồ hỗ trợ tính bảo mật được cài đặt thêm bởi SIP là mật mã

 phương thức truyền tải (TLS- Transport Layer Security). Nó được sửdụng để thiết lập kết nối giữa người gọi và domain. Yêu cầu được gởimột cách  bí mật đến đầu cuối, dựa trên các chính sách bảo mật của

mạng. Lưu ý rằng phương thức mật mã không nằm trong khả năng củaSIP và phải được kết hợp một cách độc lập. 

  SIP và NAT: Một trong những vấn đề lớn nhất khi triển khai SIP làtruyền tải thông qua lớp NAT. Bởi vì SIP mật mã thông tin địa chỉ trongcấu trúc khung của nó. NAT ở lớp mạng sẽ không nhận đúng địa chỉ

này.Vì thế dòng dữ liệu sẽ không được truyền tải đúng như mong muốn. Như vậy, các firewall được tích hợp chức năng NAT sẽ loại bỏ các kết

nối SIP này. 

2.5.3  H.323

  H323 được phát triển bởi ITU từ tháng 5-1996, để hỗ trợ truyền thoại,video, dữ liệu ,fax… trong khi mạng IP vẫn duy trì kết nối với mạng

PSTN truyền thống. Từ thời điểm đó, H323 đã có một vài phiên bản vớicác tính năng bổ  sung cho phép nó hoạt động trong một mạng thuầnVoIP và các mạng phân bố khác. 

  Dù có nhiều tranh cãi xung quanh việc sử dụng H323 hay là SIP.Nhưng

trên thực tế mạng VoIP, H323 có vài trò cao nhất còn   trên hệ thống

Asterisk, SIP vẫn là sự lựa chọn số một.

  Hai phiên bản của H323 được hỗ trợ trong Asterisk được hỗ trợ bởi 2module chan_h323.so và chan_oh323.so.

Page 27: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 27/78

Đồ án tốt nghiệp Đại học  Chương 2: Tìm hiểu tổng đài Asterisk  

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 17

  Về khía cạnh bảo mật, H323 là một giao thức có tính bảo mật tương đốicao.Vì H323 sử dụng RTP để kết nối media, nó không hỗ trợ mật mã.Việc sử dụng VPN hay các phương pháp tunnel khác giữa đầu cuối làcách thức thông dụng nhất để đảm bảo tính bảo mật. Tất nhiên là nó

cũng gây ra một vài vấn đề. Khi VoIP được sử dụng cho các lĩnh vực đòihỏi tính bảo mật cao như ngân hàng, đòi hỏi giao thức VoIP phải hỗ trợ một phương pháp mật mã mạnh. 

  H323 cũng gặp những vấn đề tương tự như SIP khi triển khai với NAT.

Phương pháp đơn giản nhất là cho forward những port nhất định quathiết bị tích hợp NAT đối với các client nội bộ. Để tiếp nhận cuộc gọi,TCP port 1720 phải luôn được forward. Thêm vào đó, port UDP cho cácdữ liệu RTP và RTCP cũng phải được forward. Những client cũ như MS

 Netmeeting cũng yêu cầu forward port TCP cho việc tunnel của giao

thức H245.   Nếu có một số lượng các client đằng sau thiết bị có tích hợp NAT,

chúng ta phải sử dụng gatekeeper chạy proxy mode. Gatekeeper sẽ cầnmột Interface liên lạc với một mạng IP subnet và mạng Internet. H323client trên mạng riêng sẽ đăng ký đến gatekeeper, sau đó gatekeeper sẽgọi cuộc gọi thay mặt cho client. Các client bên ngoài muốn gọi bên

trong cũng phải thực hiện thủ tục đăng ký đến proxy server. 

Hình 2.5: Mô hình điều khiển cuộc gọi H.323 

Page 28: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 28/78

Đồ án tốt nghiệp Đại học  Chương 2: Tìm hiểu tổng đài Asterisk  

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 18

  Vào thời điểm hiện tại, Asterisk không thể đóng vai trò gatekeeper,chúng ta phải sử dụng các ứng dụng độc lập như Open H323

Gatekeeper.

2.5.4  MGCP(Media Gateway Control Protocol)

  MGCP được thiết kế để đơn giản hóa thiết bị đầu cuối .Nó được địnhnghĩa bởi IETF. 

  MGCP được tiến hành khá nhanh nhưng không có tính khả dụng bằngSIP và IAX.

  Việc thực hiện xử lý đều được tiến hành tại media gateway và call agent.

  Không giống như SIP, MGCP sử dụng cấu trúc tập trung. Cuộc gọiMGCP không thể được tiến hành trực tiếp mà phải đi qua controller. 

Hình 2.6 : Giao thức MGCP 

  Asterisk hỗ trợ MGCP qua module chan_mgcp.so và đầu cuối được định

nghĩa thông qua file cấu hình mgcp.conf. Bởi vì Asterisk cung cấp các

cuộc gọi cơ bản nên nó không thể giả lập MGCP phone.  

   Nếu có một MGCP phone, chúng ta có thể sử dụng chúng với Asterisk.Tuy nhiên không thể xem MGCP phone như một sản phẩm của hệ thống

Asterisk vì nó đã có những chuẩn riêng.  

2.5.5  Skinny/SCCP

  Là giao thức mặc định cho các đầu cuối của Cisco Call Manager PBX. 

  Skinny được hỗ trợ bởi Asterisk .Nếu chúng ta kết nối Cisco phone đếnAsterisk, thông thường chúng ta mặc định sử dụng giao thức SIP. 

Page 29: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 29/78

Đồ án tốt nghiệp Đại học  Chương 2: Tìm hiểu tổng đài Asterisk  

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 19

2.5.6  UNISTIM

  Là giao thức hỗ trợ của Nortel cho VoIP, cũng đã được bổ sung vàoAsterisk.

  Điều đáng nói ở đây là Asterisk là tổng đài PBX đầu tiên hỗ trợ đầu

cuối IP cho cả hai nhà sản xuất lớn nhất trên lĩnh vực VoIP là Nortel vàCisco.

2.6  Ngữ cảnh ứng dụng trong tổng đài IP 2.6.1  Kết nối IP PBX với PBX 

  Một ngữ cảnh đặt ra ở   đây như sau :”Hiện tại công ty đã trang bị hệ 

thống PBX bây giờ cần trang bị thêm để đáp ứng nhu cầu liên lạc trong

công ty sao cho vớ i chi phí thấp nhất”.

  Giải pháp để thực hiện việc đó là trang bị hệ thống Asterisk và k ết nối

vớ i hệ thống PBX đang tồn tại qua luồng E1.

Hình 2.7: Sơ đồ k ết nối IP PBX vớ i PBX

  Ngoài ra để tăng khả năng liên lạc vớ i mạng PSTN và VoIP khác, Công

Ty sẽ đăng ký k ết nối d ịch vụ vớ i nhà cung cấp dịch vụ VoIP.

Page 30: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 30/78

Đồ án tốt nghiệp Đại học  Chương 2: Tìm hiểu tổng đài Asterisk  

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 20

2.6.2  Kết nối giữa Server Asterisk

  Phương pháp trên ứng dụng rất hiệu quả cho các công ty nằm rãi rác ở  các vị trị địa lý khác nhau nhằm giảm chi phí đườ ng dài.

Hình 2.8 : Sơ đồ k ết nối các server Asterisk 

  Ví dụ công ty Mẹ có trụ sở  đặt tại nướ c Mỹ và có các Chi nhánh đặt tại

Việt Nam vớ i hai địa điểm là Hà Nội và thành phố Hồ Chí Minh. Thông

qua mạng WAN của công ty, các cuộc gọi nội bộ giữa các vị trí khác

nhau đượ c k ết nối, và sẽ giảm chi phí đáng k ể.

2.6.3  Các ứng dụng IVR,Conference Call 

  Ứ ng dụng thực hiện các server k ết nối vớ i hệ thống PSTN hay tổng đài

PBX để triển khai các ứng dụng như tương tác thoại IVR.

  Một ví dụ cho ứng dụng tương tác thoại đó là cho biết k ết quả xổ số,

kiểm tra cướ c cuộc, dịch vụ giải trí  –  tra cứu thông tin thông qua số 

19001260. Ứ ng dụng VoiceMail thu nhận những tin nhắn thoại từ phía

thuê bao giống như chức năng hộp thư thoại của Bưu Điện.

  Chức năng cuộc gọi hội nghị đượ c thiết lập cho nhiều máy điện thoạicùng nói chuyện vớ i nhau.

Page 31: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 31/78

Đồ án tốt nghiệp Đại học  Chương 2: Tìm hiểu tổng đài Asterisk  

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 21

Hình 2.9 : Các ứng dụng của tổng đài IP 2.6.4  Phân phối cuộc gọi tự động ACD 

  ACD (Automatic Call Distribution): Phân phối cuộc gọi tự động.

  Chức năng đượ c ứng dụng cho nhu cầu chăm sóc khách hàng hay nhận

phản hổi từ phía khách hàng.

  Vớ i chức năng này, hệ thống tổng đài sẽ bớ t tình trạng tắt nghẽn khi có

nhiều cuộc gọi cùng lúc.

Hình 2.10: Phân phối cuộc gọi ACD

Page 32: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 32/78

Đồ án tốt nghiệp Đại học  Chương 2: Tìm hiểu tổng đài Asterisk  

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 22

  Giả sử một Công ty hệ thống điện thoại có khả năng tiếp nhận cùng một

lúc 10 cuộc gọi,nếu có thêm cuộc gọi thứ 11 gọi đến thì hệ thống giải

quyết như thế nào? Bình thườ ng thì sẽ nghe tín hiệu bận nhưng vớ i

chức năng phân phối cuộc gọi sẽ đưa thuê bao đó vào hàng đợ i để chờ  trả lờ i, trong khi chờ trả lờ i cuộc gọi thuê bao có thể nghe những bài hát

hay do asterisk cung cấp và khi nào một trong mườ i số điện thoại đang

gọi trở  về trạng thái rỗi thì cuộc gọi đang chờ  sẽ  đượ c trả lờ i. Giống

như chức năng của dịch vụ: dịch vụ hỗ trợ  thông tin 1080, dịch vụ 

hẹn giờ 116 của Bưu Điện, dịch vụ hỗ trợ khách hàng của các tổng đàiđiện thoại.

2.7  Tổ chức thƣ mục trong hệ thống Asterisk  

2.7.1  Các thƣ mục trong hệ thống  Cd /etc/asterisk/ 

 Chứa các tập tin cấu hình ASTERISK. Tuy nhiên tập tin zaptel.conf lại nằm trong thư mục /etc/. zaptel.conf được dùng để cấu hình thực

hiện liên lạc giữa máy tính và môi trường điện thoại truyền thống.

 Cd /usr/lib/asterisk/modules/ 

 Chứa tất cả các module được khởi động bởi ASTERISK. Các ứng

dụng chương trình, codecs, formats, và các kênh thoại. Mặc địnhASTERISK sẽ khởi động tất cả các modules lúc khởi động. 

 Cd /var/lib/asterisk

 Chứa đựng tập tin astdb và các thư mục con khác. Tập tin astdbchứa thông tin về cơ sở dữ liệu của ASTERISK bao gồm các thưmục chính:

  agi-bin/ : Chứa các custom scripts, như là các ứng dụng

AGI. 

  Firmware : Chứa các thông tin về các thiết bị gắn kết với

ASTERISK.

  mohmp3 : Chứa tập tin mp3 cho chức năng Music on Hold 

Page 33: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 33/78

Đồ án tốt nghiệp Đại học  Chương 2: Tìm hiểu tổng đài Asterisk  

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 23

  sounds : Tất cả các thông báo từ hệ thống ASTERISK đềunằm trong thư mục sounds. 

 Cd /var/spool/asterisk/ 

 Chứa một số thư mục con như outgoing/, qcall/, tmp/, và voicemail/ 

Hình 2.11: Cấu trúc thư mục var  

 Thư mục tmp/ được dùng để lưu trữ các thông tin tạm thời cho cácquá trình như sao chép, hoặc ngăn cản hai quá trình ghi và đọc tập tincùng một lúc. 

 Tất cả các voicemail và các lời chào đều chứa trong thư mụcvoicemail.

 Cd /var/run/ 

  Chứa tất cả thông tin về các tiến trình đang hoạt động trong hệ

thống, bao gồm ASTERISK (đặt biệt là trong tập tin asterisk.conf). 

 Cd /var/log/asterisk/ 

 Chứa các thông tin logs của ASTERISK. Các thông tin này có thểđược hiệu chỉnh trong logger.conf trong thư mục /etc/asterisk/.

Page 34: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 34/78

Đồ án tốt nghiệp Đại học  Chương 2: Tìm hiểu tổng đài Asterisk  

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 24

2.7.2  Các tập tin cấu hình trong hệ thống  

  Các f ile cấu hình cho hệ thống asterisk đều nằm tại thư mục

 /etc/asterisk

  Ví dụ như: 

  extensions.conf 

  sip.conf 

  voicemail.conf 

  asterisk.conf……. 

  Tuy nhiên,  file zaptel.conf cấu hình cho phần cứng TDM nằm tại thưmục /etc, cách thức cấu hình giống như tập tin .ini của window. 

  Một số file .conf quan trọng 

  Extensions.conf  : file chứa dial plan 

  Sip.conf : dùng để cấu hình giao thức SIP. 

  Iax.conf  : dùng cấu hình các kênh truyền của giaothức IAX. 

2.8  Cơ chế FastAGI2.8.1  FastAGI là gì?

  FastAGI có thể được sử dụng như một khuôn mẫu để thiết kế quá trìnhlập trình AGI từ xa của bạn.

  Cơ chế này giúp giảm tải trên CPU của bạn. Nó sẽ gọi dịch vụ từ mộtmáy tính khác trong mạng và trả về kết quả cho server xử lí.Nó giúp cho

server bớt công đoạn xử lí các công việc,giảm quá trình tắt nghẽn tổngđài. 

  FastAGI vẫn là một trong những lựa chọn thay thế tốt nhất để xây dựngcác ứng dụng Asterisk, tách các ứng dụng riêng của mình, nhân rộng 

trên nhiều ứng dụng máy chủ FastAGI.

  Để kết nối với một giao diện AGI /API interfaces,ta phải có một số thưviện để kết nối. Chúng bao gồm: 

  Asterisk  – Java

  Asterisk.NET

  PHPAGI

  Asterisk-Perl

  Asterisk-PyThon

  Để chạy được dịch vụ thì máy chủ FastAgi , ta chọn dùng Asterisk.NET. 

Page 35: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 35/78

Đồ án tốt nghiệp Đại học  Chương 2: Tìm hiểu tổng đài Asterisk  

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 25

2.8.2  Hoạt động 

  Đầu tiên,trên tổng đài ta chỉ khai báo địa chỉ của máy cục bộ(nơi  xử lícông việc dùm server) 

 AGI:\\192.168.1.123\script_cong_viec

  Down về thư viện Asterisk.NET để chạy các script trên máy cục  bộ và

trả về kết quả cho server. Thư viện này bao gồm một tập hợp các lớp C#

cho phép  bạn dễ dàng xây dựng các ứng dụng  tương tác với một máy

chủ PBX Asterisk. Cả FastAGI và API đều  được  hỗ  trợ  trong .NET / 

Mono tương thích.

  Asterisk NET hỗ trợ  cả hai giao diện đó Asterisk cung cấp cho kịch bảnnày:Các giao thức FastAGI và quản lý API. Việc thựchiện FastAGI hỗ trợ  tất cả các lệnh có sẵn từ Asterisk.

  Link down : http://sourceforge.net/projects/asterisk-dotnet/ 

Hình 2.12: Mô hình kết nối của chương trình Asterisk.NET

Page 36: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 36/78

Đồ án tốt nghiệp Đại học  Chương 3: Tìm hiểu chức năng Text to speech 

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 26

CHƢƠNG 3: TÌM HIỂU CHỨC NĂNG TEXT TO SPEECH3.1  Khái niệm: 

3.1.1  Sơ lƣợc về tiếng nói trong VoIP: 

  Là công cụ để diễn đạt ý nghĩ và giao tiếp giữa người với người.Tiếngnói là một sự kết hợp của rất nhiều âm thanh khác nhau. 

  Trong lĩnh vực viễn thông , ta có cụm từ “voice over IP”. Đó là “tiếng

nói qua giao thức Internet”. Nói đến công nghệ tiếng nói qua IP là nóiđến việc truyền dẫn tiếng nói qua các mạng lưới hoạt động dựa trên

mạng internet. Ban đầu giao thức Internet (Internet Protocol - IP) đượcthiết kế để nối mạng dữ liệu và sau khi vận hành thành công, giao thứcđã được áp dụng vào việc nối mạng tiếng nói.  

  Công nghệ tiếng nói qua IP (VoIP) có thể dễ dàng hỗ trợ các nhiệm vụvà đáp ứng các dịch vụ mà khi sử dụng hệ thống PSTN truyền thống có

thể sẽ phức tạp hay tốn kém.3.1.2  Khái niệm về Text To Speech:

  Text To Speech (kí hiệu TTS) là quá trình chuyển dạng văn bản dạngtext sang tiếng nói. 

  TTS được phân loại như sau: 

   Nối từ (Concatenated Word):   Là hệ thống chứa những từ đã được ghi âm sẵn . Khi nhận được

một chuỗi văn bản cần đọc, hệ thống tách các từ trong chuỗi này

ra. Sau đó, tìm các từ này trong hệ thống từ ghi âm sẵn. Cuốicùng, ta kết hợp các từ tương ứng trong chuỗi lại và phát âm

thành câu.

  Hai âm tố(Diphone Concatenation): 

  Là phương pháp nối lại những đoạn âm thanh ngắn đã được số hoá

và tạo ra âm thanh liên tục. Mỗi diphone bao gồm hai âm vị : một

âm vị bắt đầu và một âm vị kết thúc. 

  Tổng hợp:   Là phương pháp tạo âm giống giọng con người với sự mô phỏng

về chiều dài,cổ họng,khoang miệng…Với kĩ thuật này, ta có thểthay đổi chất lượng giọng ,tạo ra âm trầm bổng khác nhau. 

3.1.3  Lí do chọn Text To Speech 

  Thuận tiện cho việc đọc văn bản động, nhất là các cụm từ ngữ ngắn vàluôn thay đổi liên tục mà ta không thể ghi âm hết tất cả. 

Page 37: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 37/78

Đồ án tốt nghiệp Đại học  Chương 3: Tìm hiểu chức năng Text to speech 

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 27

  Khi đọc lên văn bản hay số liệu sẽ giúp người sử dụng có thể nghe  lạivăn bản của mình và phát hiện lỗi khi gõ bàn phím. 

  Cung cấp những phản hồi rõ ràng và thông báo cho người dùng bằng âmthanh phát ra. Người dùng có thể nghe và đáp ứng lại thông báo. 

  Ứng dụng này rất thiết thực và hữu ích trong cuộc sống như: hộp thưthoại, các tổng đài trả lời tự động,các đường dây nóng 1900xxx…

3.1.4  Hạn chế của Text To Speech (TTS) 

  Chất lượng giọng chưa tốt đôi khi khó nghe nếu đọc cụm từ dài . Vì TTSthực chất là ta phải nối từng từ lại với nhau để tạo thành 1 câu dài. Nó là

giọng đọc tổng hợp các từ ngữ với các dấu nhấn,nhịp ngắt,trọng âm,thờigian đọc…. 

  Biểu cảm cảm xúc như chấm than,chấm hỏi lên xuống giọng sẽ khôngđáp ứng thật như con người. 

  Có thể bị lỗi phát âm từ sai do đặc điểm phát âm của từng vùng trongnước. 

3.2  Cấu trúc file âm thanh3.2.1  Khái niệm: 

  Tâ    p tin âm thanh la  mô   t da  ng tâ    p tin du  ng đê  lưu trư   dư   liê  u âm thanh số(dạng sóng ) và nó là một trong những định dạng phổ biến nhất của hệđiều ha nh Windows.

  Tâ    p tin wave thuô  c chuâ n RIFF ( Resource Interchange File Format -

dạng tập tin tài nguyên co  thê  trao đô  i).  Đặc điểm của những tập tin thuộc chuẩn RIFF đó là nó sẽ nhóm nội

dung cu  a tâ    p tin   thành các khối riêng biệt .Mỗi một khối sẽ gồm mộtheader (dùng để qui định kiểu và kích thước của khối ) và các byte dữliê  u.

  Tập tin wave có hai dạng là dạng nén và dạng không nén (dạngchuẩn).Vì thế trong đề tài này tôi chỉ đề cập đến dạng chuẩn của tập tinwave tức là dạng không nén. 

3.2.2  Định dạng dữ liệu: 

  Tất cả các giá trị dữ liệu được lưu trữ trong thứ tự nhỏ  dần  về cuối

(byte ít quan trọng đầu tiên). 

  File sóng có thể chứa các chuỗi văn bản quy định cụ thể các nhãn điểmnhấn, ghi chú,… Strings được lưu trữ trong một định dạng mà các byte

đầu tiên xác định số lượng theo byte văn  bản ASCII trong chuỗi. 

Page 38: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 38/78

Đồ án tốt nghiệp Đại học  Chương 3: Tìm hiểu chức năng Text to speech 

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 28

  Các byte sau đây là các byte ký tự ASCII tạo nên các chuỗi văn bản.Đây là định dạng được sử dụng cho các chuỗi Pascal.

7 'E' 'X' 'A' 'M' 'P' 'L' 'E'

Hình 3.1: Định dạng chuỗi sóng

3.2.3  Xử lí tập tin wave 

  Là một dạng tập tin dùng để lưu trữ dữ liệu âm thanh số(dạng sóng) vànó là một trong những định dạng phổ biến nhất của hệ điều hành

Windows.

  Một file RIFF chứa một hay nhiều loại chunks.Mỗi chunk gồm có loại

chunk và dữ liệu theo sau loại chunk đó,đồng thời chứa con trỏ để   trỏđến chunk kế tiếp. 

  Cấu trúc file âm thanh gồm ba khối: khối mô tả dạng RIFF,khối thuộctính “fmt “ và khối dữ liệu “data” trong đó khối thuộc tính “fmt” và khốidữ liệu “data” là 2 khối con của khối mô tả dạng RIFF. 

Page 39: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 39/78

Đồ án tốt nghiệp Đại học  Chương 3: Tìm hiểu chức năng Text to speech 

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 29

Hình 3.2: Cấu trúc tập tin âm thanh

Khối mô tả dạng RIFF:

  Khôi na y xác định dạng RIFF và co  k ch thươ   c la  12 byte gôm ca ctrươ   ng.

Page 40: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 40/78

Đồ án tốt nghiệp Đại học  Chương 3: Tìm hiểu chức năng Text to speech 

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 30

Hình 3.3 : Làn sóng dạng RIFF 

Khôi thuô  c t nh “fmt ”:

  Khối này xác định các thuộc tính của dữ liệu âm thanh và có kíchthước là 24 byte. 

  Cấu trúc khối fmt như sau: 

class WavFormatChunk : WavChunk  

{

 / / kiểu mã hoá dữ liệu âm thanh 

public ushort wFormatTag;

 // có hai giá trị: bằng 1 cho âm thanh mono, bằng 2 cho âm thanh

stereo 

public ushort wChannels;

 //  cho biết tốc độ lấy mẫu (11025-11,025kHz,22050-22,05

kHz…) 

public ulong dwSamplesPerSec; // số byte trung bình yêu cầu trong 1 giây để phát lại mẫu dữ liệu

của sóng âm 

public ulong dwAvgBytesPerSec;

 // cho biết số byte dùng để chứa một mẫu âm thanh 

Page 41: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 41/78

Đồ án tốt nghiệp Đại học  Chương 3: Tìm hiểu chức năng Text to speech 

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 31

// mẫu <= 8 bit sẽ yêu cầu 1 byte, mẫu 9-16 bit sẽ yêu cầu 2

bytes

public ushort wBlockAlign;

// cho biết số bit trong một mẫu dữ liệu(dạng byte hay word) 

public ushort wBitsPerSample;

  Khối này xác định các thuộc tính của dữ liệu âm thanh và có kích thước

là 24 byte gồm các trường: • Subchunk1ID:

- Kích thước: 4 byte

- Chư  c năng: chư  a chuô  i “fmt ”.

• Subchunk1Size: 

- Kích thước: 4 byte- Chức năng :cho biết tổng kích thước của các trường thuộc khối

thuộc tính đứng phía sau trường này. (đối với tập tin wave không nén thì Subchunk1Size bằng 16)  

• AudioFormat: 

- Kích thước: 2 byte 

- Chức năng: cho ta biết dạng nén của dữ liệu trong tập tin wave.  

  Giá trị mô tả 

- 0 :Không xác định 

- 1: Không nén (PCM-Pulse Code Modulation)

  Một số giá trị thông dụng 

• NumChannels: Kích thước: 2 byte 

Chức năng: cho biết số kênh của tập tin wave. (Mono=1,Stereo=2,v.v)

• SampleRate: - Kích thước: 4 byte 

- Chức năng: cho biết số mẫu trên 1s và đây chính là tần số lấy mẫucủa tập tin wave. • ByteRate: 

- Kích thước: 4 byte 

- Chức năng:cho biết số byte trên 1 s ứng với tần số lấy mẫu trên. (ByteRate=SampleRate*NumChannels*(BitsperSample/8))

Page 42: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 42/78

Đồ án tốt nghiệp Đại học  Chương 3: Tìm hiểu chức năng Text to speech 

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 32

• BlockAlign: 

- Kích thước:2 byte 

- Chức năng: cho biết số byte của 1 mẫu gồm tất cả các kênh. • BitsPerSample: cho biết số bit trên 1 mẫu chỉ tính cho 1 kênh. ( 8 bit=8,16 bit=16,v.v)

Data Chunk - "dữ liệu"  Chunk sóng dữ liệu chứa dữ liệu mẫu âm thanh kỹ thuật số có thể được

giải mã bằng cách sử dụng định dạng và phương pháp nén quy định tạiChunk Định dạng Wave.

  Đối với mẫu âm thanh 8 bit,dữ liệu của “data” bao gồm các giá trị 1 byte(từ 0-255) của các mẫu âm thanh. Với mẫu âm thanh 16 bits,mỗi

mẫu dữ liệu gồm 2 bytes (-32768 đến 32767).

  Cấu trúc : 

typedef struct{ 

ID chunkID; Long chunkSize; unsigned char waveformData []; 

} DataChunk; 

  ChunkSize là số lượng byte trong đoạn.

  Độ phân giải bit và các thông tin khác nhận được từ các đoạn địnhdạng(Format).

  Các mảng waveformData chứa dữ liệu dạng sóng thực tế. Dữ liệu được

sắp xếp thành các khung mẫu. 

  Số lượng các khung mẫu trong waveformData được xác định bằng cáchchia này chunkSize wBlockAlign đoạn định dạng.

  Chunk dữ liệu là cần thiết vì chỉ có một  Chunk dữ liệu có thể xuất hiệntrong một WAVE.

Page 43: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 43/78

Đồ án tốt nghiệp Đại học  Chương 3: Tìm hiểu chức năng Text to speech 

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 33

  Làn sóng các tập tin thường chứa chỉ có một đoạn dữ liệu, nhưng chúngcó thể chứa nhiều hơn một nếu họ được chứa trong một Chunk Danh  

sách Wave ("wavl").

Hình 3.4: Định dạng dữ liệu Chunk  

  Mẫu kĩ  thuật số đa kênh âm thanh được lưu trữ như các dữ liệu sóng xen

kẽ (như âm thanh stereo và surround).

  Sóng tập tin được lưu trữ bằng cách lướt qua các mẫu âm thanh cho mỗikênh trước khi tiến tới mẫu tiếp theo. Điều này được thực hiện để các

tập tin âm thanh có thể được phát hoặc xem trực tiếp trước khi toàn bộ

tập tin có thể được đọc. Đây là tiện dụng khi phát một file lớn từ đĩa (cóthể không hoàn toàn phù hợp với bộ nhớ) hoặc trình chiếu một tập tinqua Internet.

  Các giá trị trong sơ đồ dưới đây sẽ được lưu trữ trong một file Wavetheo thứ tự được liệt kê trong cột giá trị (trên xuống dưới).

Page 44: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 44/78

Đồ án tốt nghiệp Đại học  Chương 3: Tìm hiểu chức năng Text to speech 

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 34

Hình 3.5: Làn sóng mẫu Interlaced Stereo

  Một điểm về dữ liệu mẫu mà có thể gây ra một số nhầm lẫn khi mẫu

được biểu diễn với 8- bit, được quy định như giá trị unsigned. Tất cả cácmẫu khác - bit kích thước được quy định cụ thể như các giá trị đã kí kết.

  Ví dụ một mẫu 16- bit có thể là -32.768-32767 với một điểm giữa (imlặng) ở 0.

   Như đã đề cập trước đó, tất cả các khối RIFF (bao gồm cả WAVE "dữliệu" khối) phải được liên kết từ. Nếu dữ liệu mẫu sử dụng một số lẻ của

byte, một byte padding với một giá trị không phải được đặt ở phần cuốicủa dữ liệu mẫu. Các đoạn "dữ liệu" tiêu đề của kích thước không nên bao gồm byte này.

Fact Chunk - "thực tế"

  Một đoạn thông tin thực tế nén phụ thuộc mã về nội dung của tập tin

sóng. Đó là yêu cầu tất cả các định dạng WAVE nén và khi các dữ liệudạng sóng được chứa bên trong một đoạn "wavl DANH SÁCH", nhưng

không cần thiết cho các tập tin định dạng không nén PCM WAVE (nén

mã 1) có chứa các dữ liệu dạng sóng bên trong một đoạn "dữ liệu" .

Page 45: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 45/78

Đồ án tốt nghiệp Đại học  Chương 3: Tìm hiểu chức năng Text to speech 

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 35

Hình 3.6: Định dạng thực tế Chunk  

  Định dạng Phụ thuộc dữ liệu :

  Hiện tại chỉ có một lĩnh vực quy định cho các dữ liệu phụ thuộc vào địnhdạng. Đó là một giá trị duy nhất 4- byte quy định cụ thể số lượng mẫutrong đoạn dữ liệu dạng sóng. Giá trị này có thể được sử dụng với các

mẫu ,mỗi giá trị thứ hai quy định trong định dạng đoạn để tính toánchiều dài dạng sóng trong vài giây.

  Khi định dạng WAVE mới được giới thiệu, các đoạn thực tế sẽ được mở rộng, lĩnh vực phụ được thêm vào sau khi số lượng quy định của mẫu

nghiên cứu lấy.

  Các ứng dụng có thể sử dụng kích thước đoạn thực tế để xác định cáclĩnh vực có mặt trong đoạn.

3.2.4  Đọc file RIFF: 

  Làn sóng tập tin header theo cấu trúc tập tin định dạng RIFF chuẩn.

  8 byte đầu tiên trong tập tin tiêu đề trong đó có một ID đoạn "RIFF" và

một đoạn kích thước  bằng kích thước tập tin trừ đi 8 byte được sử dụng 

 bởi tiêu đề.

  Vì vậy, chúng ta cần phải  biết tổng chiều dài của tất cả các tập tin để xác

định ChunkSize và đọc NumChannels SampleRate và BitsPerSample.

Page 46: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 46/78

Đồ án tốt nghiệp Đại học  Chương 3: Tìm hiểu chức năng Text to speech 

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 36

private void WaveHeaderIN( string spath)

{

FileStream fs = new FileStream(spath, FileMode.Open,

FileAccess.Read);

BinaryReader br = new BinaryReader(fs);

length = ( int )fs.Length - 8 ;

fs.Position = 22 ;

channels = br.ReadInt16();

fs.Position = 24 ;

samplerate = br.ReadInt32();

fs.Position = 34 ;

BitsPerSample = br.ReadInt16();

DataLength = ( int )fs.Length - 44 ;

br.Close ();fs.Close();

}

   Như chúng ta biết, các kênh được lưu trữ  trong tiêu đề WAV trong số 

byte 22, chúng tôi di chuyển vị trí hiện tại của tập tin đến vị trí này và

kích thước của nó là 2 byte, do đó chúng tôi sử dụng br.ReadInt16 () đểđọc chỉ có 2 byte.

private void WaveHeaderOUT( string sPath)

{FileStream fs = new FileStream(sPath, FileMode.Create,

FileAccess.Write );

BinaryWriter bw = new BinaryWriter(fs);

fs.Position = 0;

bw.Write(new char[4] { 'R', 'I', 'F', 'F' });

bw.Write(length);

bw.Write(new char[8] {'W','A','V','E','f','m','t',' '});

bw.Write((int)16);

bw.Write((short)1);

bw.Write(channels);

bw.Write(samplerate );

bw.Write((int)(samplerate * ((BitsPerSample * channels) / 8)));

bw.Write((short )((BitsPerSample * channels) / 8));

bw.Write(BitsPerSample);

Page 47: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 47/78

Đồ án tốt nghiệp Đại học  Chương 3: Tìm hiểu chức năng Text to speech 

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 37

bw.Write(new char[4] {'d','a','t','a'});

bw.Write(DataLength);

bw.Close();

fs.Close();

}

  Khai báo "RIFF" như là một mảng của char, không phải là chuỗi và

sử dụng loại int để lưu trữ 4 byte và loại ngắn để lưu trữ 2 byte.

public void Merge( string [] files, string outfile)

{

WaveIO wa_IN = new WaveIO();

WaveIO wa_out = new WaveIO();

wa_out.DataLength = 0;

wa_out.length = 0;

 //Gather header data

foreach (string path in files)

{

wa_IN.WaveHeaderIN(@path);

wa_out.DataLength += wa_IN.DataLength;

wa_out.length += wa_IN.length;

}

 //Recontruct new header

wa_out.BitsPerSample = wa_IN.BitsPerSample;wa_out.channels = wa_IN.channels;

wa_out.samplerate = wa_IN.samplerate;

wa_out.WaveHeaderOUT(@outfile);

foreach (string path in files)

{

FileStream fs = new FileStream(@path, FileMode.Open,

FileAccess.Read);

byte[] arrfile = new byte[fs.Length - 44];

fs.Position = 44;

fs.Read(arrfile, 0, arrfile.Length);

fs.Close();

FileStream fo = new FileStream(@outfile, FileMode.Append,

FileAccess.Write);

Page 48: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 48/78

Đồ án tốt nghiệp Đại học  Chương 3: Tìm hiểu chức năng Text to speech 

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 38

BinaryWriter bw = new BinaryWriter(fo);

bw.Write(arrfile);

bw.Close();

fo.Close();

}

  Chúng ta cần để tính toán tổng chiều dài và chiều dài dữ liệu của tất cảcác tập tin và sau đó xác định các kênh, SampleRate và BitsPerSample

của file.

  Tất cả chúng ta cần làm là gọi phương thức kết và quy định cụ thể các

tập tin đầu vào và tập tin đầu ra.

string [] files = new string [ 2 ] { @" ..\ đường dẫn \file.wav" ,

@"C:\WINDOWS\Media\Windows\XP Shutdown.wav" };

WaveIO wa = new WaveIO();

wa.Merge(files, @" c:\oou.wav" );

Page 49: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 49/78

Đồ án tốt nghiệp Đại học  Chương 4: Tìm hiểu dịch vụ tra cứu điểm tuyển sinh 

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 39

CHƢƠNG 4: TÌM HIỂU DỊCH VỤ TRA CỨU ĐIỂM TUYỂN SINH 4.1  Tổng quan về hệ thống tuyển sinh: 

4.1.1  Hoạt động: 

  Khi khách hàng gọi đến tổng đài , khách hàng có thể biết được mãtrường , điểm thi của một thí sinh nào đó ứng với số báo danh.

  Theo lí thuyết, tuỳ theo chương trình mà ta chuyển xử lí đến điện thoạiviên hay để máy xử lí tự động.Và nếu chuyển đến điện thoại viên thì ta

 phải quản lí thêm kênh kết nối giữa người và máy.Điều này sẽ làm ta

khó quản lí hơn. 

  Và trong thực tế, tổng đài thường được xử lí một cách tự động. Nó tạohiệu quả xử lí nhanh và dễ quản lí. Chính điều đó, trong ứng dụng này,ta sẽ tạo một ứng dụng hoàn toàn tự động.

4.1.2  Các thành phần và quá trình hoạt động: 

  Các thành phần   Database server –  sql server : chứa dữ liệu của dịch vụ.   Hub –  router : kết nối mạng và các máy tính cục bộ. 

  Máy tính : dùng để truy xuất cơ sở dữ liệu cà cài đặt softphone.

  Softphone -3CX: điện thoại giao tiếp với người dùng. 

  Khi bạn gọi tới hệ thống ,ứng dụng sẽ xuất hiện ngay câu chào :“Chào mừng bạn đến với dịch vụ tra điểm tuyển sinh”. 

  Xử lý của ứng dụng 

 Giao tiếp trong mạng Lan  Trong phần demo này, ta cho các máy tính giao tiếp trog mạng

Lan cục bộ chứ không giao tiếp với mạng điện thoại bên ngoài

mạng được. Muốn kết nối được ta phải một thiết bị trung gian

nào đó để có thể kết nối máy tính với máy điện thoại bên

ngoài.

 Trong thực tế,ứng dụng sẽ được giao tiếp trực tiếp với mạngđiện thoại thông qua một số Card do công ty Digium sản 

xuất.Nó giúp việc giao tiếp thuận lợi hơn. 

  Truy vấn dữ liệu 

 Toàn bộ thông tin điểm ,số báo danh,danh sách thí sinh đềuđược lưu trữ trong chương trinh SQL Server 2005. 

 Chương trình xử lý dựa vào thông tin mà người dùng cung cấpnhư mã thí sinh mà đáp ứng yêu cầu người dùng. 

Page 50: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 50/78

Đồ án tốt nghiệp Đại học  Chương 4: Tìm hiểu dịch vụ tra cứu điểm tuyển sinh 

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 40

 Chương trình đóng vai trò như client giao tiếp với SQL để gởi

và nhận dữ liệu cần thiết.  Thông tin lấy được ở đây là dạng Text.

  Phát ra âm thanh

 Đây là quá trình giao tiếp giữa người và máy nên ta phải xử lísao cho người dùng có thế nghe được âm thanh. 

 Khi thông tin được trả về, nó có dạng text nên ta phải chuyểnsang dạng âm thanh tương ứng để người sử  dụng hiểu được. 

  Tóm lại, chức năng chính của hệ thống là làm sao chuyển từ dạng textsang dạng văn nói (tiếng nói) tương ứng với chữ đó. Và chức năng đógọi là Text to Speech. 

  Hoạt động 

 Khi gọi vào, hệ thống sẽ yêu cầu bạn nhập mã số dự thi để bắt

đầu tra  cứu.Khi nhập xong,dựa vào mã số dự thi này,chươngtrình sẽ tìm kiếm trong cơ sở dữ liệu và thông báo kết quả cho

 bạn.

4.2  Chức năng của hệ thống: 4.2.1  Tổng quát chức năng 

Hình 4.1: Chức năng của ứng dụng 

Page 51: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 51/78

Đồ án tốt nghiệp Đại học  Chương 4: Tìm hiểu dịch vụ tra cứu điểm tuyển sinh 

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 41

4.2.2  Sơ đồ xử lí chức năng 

Lựa chọnphím bấm 

Ngheđiểm thi

Đọc kết quảtheo SBD

Nghe mãmôn thi

Không cósinh viên

Gọi vàosố 200 

Nhập SBD Kết thúccuộc gọi 

Truy vấnCSDL

Trả lời tự động 

Phím 1

Phím 2

hết thời gian thao tác 

hếtthờigianthaotác

khôngcó

cóđiểm 

hết thời gian xử lí  

Phím 2

Page 52: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 52/78

Đồ án tốt nghiệp Đại học  Chương 4: Tìm hiểu dịch vụ tra cứu điểm tuyển sinh 

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 42

4.3  Thiết kế lƣợc đồ dữ liệu quan hệ ERD  4.3.1  Các tập thực thể 

Hình 4.2: Mô hình tập thực thể 

4.3.2  Diagram

Hình 4.3 : Mô hình diagram

Page 53: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 53/78

Đồ án tốt nghiệp Đại học  Chương 4: Tìm hiểu dịch vụ tra cứu điểm tuyển sinh 

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 43

4.4  Các bảng dữ liệu 4.4.1  Danh sách bảng dữ liệu: 

  Trương 

-  Chứa các thông tin về trường 

-  Thuộc tính: matruong,tentruong,status

  MonHoc

-  Chứa thông tin về các môn thi -  Thuộc tính: mamh,tenmh,status

  SinhVien

-  Chứa thông tin chi tiết về thí sinh. 

-  Thuộc tính: masv ,tensv,ngaysinh,status,matruong 

  Diem

-  Chứa kết quả điểm thi của thí sinh 

-  Thuộc tính: masv,mamh,diem,status.  TuDien

-  Chứa tập hợp các từ ngữ trong tiếng việt. 

-  Thuộc tính : matu, tu

4.4.2  Mô tả các bảng: 

  Truong

Page 54: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 54/78

Đồ án tốt nghiệp Đại học  Chương 4: Tìm hiểu dịch vụ tra cứu điểm tuyển sinh 

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 44

  MonHoc

  SinhVien

Page 55: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 55/78

Đồ án tốt nghiệp Đại học  Chương 4: Tìm hiểu dịch vụ tra cứu điểm tuyển sinh 

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 45

  Diem

  TuDien

4.4.3  Các mối liên hệ   Mối liên hệ bảng Truong-SinhVien

-  Mỗi sinh viên thi vào 1 trường và mỗi trường thì có nhiều sinh

viên dự thi. Vì vậy,mối quan hệ là một-nhiều.   Mối liên hệ bảng SinhVien- bảng Diem 

Page 56: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 56/78

Đồ án tốt nghiệp Đại học  Chương 4: Tìm hiểu dịch vụ tra cứu điểm tuyển sinh 

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 46

-  Mỗi thí sinh thi vào 1 trường sẽ có 1 điểm tương ứng với môn

thi

  Mối liên hệ bảng Monhọc- bảng Diem 

-  Mỗi môn học thì có 1 điểm số và mỗi điểm số được chấm chonhiều môn học. Vì vậy, quan hệ là nhiều-một.

4.5  Những thuận lợi và khó khăn của ứng dụng:4.5.1  Thuận lợi 

  Chương trình server tổng đài nhẹ,tốn ít dung lượng bộ nhớ và dễ cài đặt. 

   Người dùng dễ dàng sử dụng dịch vụ thông qua các phím nhấn trên

softphone.

4.5.2  Khó khăn 

  Chưa triển khai với cuộc gọi ngoài mạng do không có hỗ trợ phần cứng

là card digium.

  Kết quả điểm trả về nhanh hay chậm tuỳ thuộc vào tốc độ đường truyềnnhanh hay chậm. 

  Việc dùng hàm text to speech để ghép từng từ làm cho chuỗi âm thanhcòn rời rạc nên âm thanh không hay lắm. 

Page 57: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 57/78

Đồ án tốt nghiệp Đại học  Chương 5: Cài đặt và cấu hình hệ thống Server  

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 47

CHƢƠNG 5: CÀI ĐẶT VÀ CẤU HÌNH HỆ THỐNG SERVER  5.1 Cài đặt các tính năng cơ bản của tổng đài Asterisk  

5.1.1  Yêu cầu thiết bị: 

  Cài đặt hệ điều hành Linux trên máy tính , có thể cài hệ điều hành LinuxFedora, CentOS, Redhat, hoặc Debian ,ở đây ta cài bản Centos server 

5.6.

  Máy server cài hệ điều hành Linux để xây dựng hệ thống Server 

Asterisk. Ở đây, ta dùng hệ điều hành linux centos 5.6 

  Máy client cài hai softphone là X-Lite và 3CX nối mạng với máy tínhServer asterisk.(Ở đây server asterisk được chạy trên máy ảo Virtual

Box- link download:

https://www.virtualbox.org/wiki/Linux_Downloads.)

5.1.2  Các bƣớc cài đặt các gói Asterisk phiên bản 1.6.2.20 

Tải các gói sau và để trong thư mục : usr/src/asterisk  Asterisk 1.6.2.20

http://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk-

1.6.2.20.tar.gz 

  Dahdi-2.4.1.2

http://downloads.asterisk.org/pub/telephony/dahdi- linux/releases/dahdi-

linux-2.4.1.2.tar.gz 

  Dahdi-tool-2.4.1.2

http://downloads.asterisk.org/pub/telephony/dahdi-tools/releases/dahdi- tools-2.4.1.2.tar.gz 

  Libpri 1.4.12

http://downloads.asterisk.org/pub/telephony/libpri/releases/libpri-1.4.12.tar.gz 

Sau khi tải thành công, ta giải nén các gói và cài đặt theo trình tự sau:  

(lệnh giải nén: tar –  xzvf file nén)

  cd /usr/src/asterisk/libpri-1.4.12

make

make install  cd /usr/src/asterisk/dahdi-linux-2.4.1.2

make all

make install

  cd /usr/src/asterisk/dahdi-tool-2.4.1.2

make

Page 58: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 58/78

Đồ án tốt nghiệp Đại học  Chương 5: Cài đặt và cấu hình hệ thống Server  

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 48

make config

  cd /usr/src/asterisk/asterisk-1.6.2.20

./configure

make

make install

make config

make samples

Ta có thể cài thêm gói Asterisk -Addon để hổ trợ các file âm thanh mp3…. 

Khởi động Asterisk bằng lệnh sau: 

  service dahdi start

  asterisk  – cvvvv

  asterisk  – rThoát khỏi Asterisk: 

  Exit

  Shut down

5.1.3  Tải chƣơng trình Asterisk.NET:

  Chương trình Asterisk .NET giúp ta thực hiện cơ chế gọi từ xa FastAGI.

Nó bao gồm chức năng quản lí API.

 Khi máy tổng đài muốn lấy một ứng dụng nào từ xa thì trên máy đó,tachạy chương trình ứng dụng Asterisk.NET này lên và trả về kết quả cho

máy server thông qua các Script.

  Link down: http://sourceforge.net/projects/asterisk-dotnet/  

5.1.4  Cấu hình SIP cho softphone 

  Link down: http://www.3cx.vn/dien-thoai-voip/index.html 

  Với điện thoại phần mềm 3CX, bạn có thể gọi điện trực tiếp từ PC hoặclaptop tới mọi điện thoại phần mềm, di động hoặc cố định bằng cách sửdụng công nghệ thoại qua giao thức IP (VOIP) để truyền giọng nói qua

mạng Internet. 

  Để cấu hình cho SIP softphone dùng với 3CX hoặc X-Lite ta chỉ cần cấuhình một số thông số chính trong file sip.conf hoặc file đã được includetrong file sip.conf như sau: 

Page 59: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 59/78

Đồ án tốt nghiệp Đại học  Chương 5: Cài đặt và cấu hình hệ thống Server  

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 49

  Khi cấu hình phần mềm điện thoại, ta cần điền tên-kênh vào mụcusername, mật  khẩu vào password và domain là địa chỉ IP của máy

Asterisk.

  Các tham số khác không đặt tên thì hệ thống sẽ lấy tham số theo mặcđịnh. Giá trị mặc định có thể theo giá trị mặc định của hệ thống hoặc

theo giá trị được đặt chung trong mục [general] trong file sip.conf  

Hình 5.1: Cấu hình Softphone 

[tên-kênh]

- type : tên kiểu;friend|user|peer .- context : tên context ;dùng cho việc điều khiển cuộc

gọi trong dialplan và để phân biệt một user theo quyền(user, admin) hay phân biệt theo phòng ban.

- secret : mật-khẩu 

- callerid : "tên-user" <số-điện-thoại> ;sẽ được hiện thị

trên máy người được gọi - accountcode : tên-accountcode ;dùng phân biệt trong

các file ghi cước CDR(tuỳ mà khai báo hay không)

- host : dynamic

- mailbox : tên-hòm-thư@tên-context ;dùng cho mục

đích voice mail 

Page 60: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 60/78

Đồ án tốt nghiệp Đại học  Chương 5: Cài đặt và cấu hình hệ thống Server  

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 50

5.2 Cài đặt Sql Server 2005 và tạo các bảng dữ liệu  5.2.1  Tại sao chọn Sql Server 2005

  So với phiên bản củ SQL 7.0, SQL 2000 thì SQL 2005 chú trọng đếncông tác bảo mật nhiều hơn phần mềm quản trị CSDL mã nguồn mở .

 Mở rộng một số chức năng so với phiên bản trước ví dụ như Report,SQL Server Profiler , Schema, thêm một số kiểu data mới, sao lưu dữ 

liệu nhanh chóng, an toàn hơn... nhằm đem lại cho người sử dụng thuậntiện, nhanh chóng. 

  Chức năng SSL được tự động hóa hơn, thay vì lúc trước trên MS SQL

2000 khai báo tùm lum, thì trên SQL 2005 nó khai báo cho mình mộtcách tự động. 

  Đối với người dùng doanh nghiệp, SQL Server Express dễ dàng cắm vàocho doanh nghiệp nhất quản lý môi trường SQL Server Express cũng

cung cấp hỗ trợ cho cả hai cài đặt hoặc thiết lập dựa trên giao diện và càiđặt. Điều này cho phép các nhà phát triển phần mềm kiểm soát cuốicùng và tính linh hoạt trong việc cài đặt và thiết lập của nhúng vào cơ sở 

dữ liệu.

5.2.2  Bảng dữ liệu

  TuDien

CREATE  TABLE [dbo].[TuDien](

[matu] [int] IDENTITY (1 ,1)  NOT   NULL,[tu] [nvarchar](50) COLLATE SQL_Latin1_General_CP1_CI_AS

 NULL,

CONSTRAINT [PK_TuDien] PRIMARY  KEY  CLUSTERED 

(

[matu] ASC 

)WITH  (PAD_INDEX  = OFF  , IGNORE_DUP_KEY = OFF ) ON  

[PRIMARY]

) ON [PRIMARY] 

  Truong

CREATE  TABLE [dbo].[Truong](

[matruong] [nvarchar](50) COLLATE  

SQL_Latin1_General_CP1_CI_AS NOT   NULL,

[tentruong] [nvarchar](50) COLLATE  

SQL_Latin1_General_CP1_CI_AS NULL,

[ghinho] [nvarchar](50) COLLATE  

SQL_Latin1_General_CP1_CI_AS NULL,

CONSTRAINT [PK_Truong] PRIMARY  KEY  CLUSTERED 

(

Page 61: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 61/78

Đồ án tốt nghiệp Đại học  Chương 5: Cài đặt và cấu hình hệ thống Server  

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 51

[matruong] ASC 

)WITH  (PAD_INDEX  = OFF  , IGNORE_DUP_KEY = OFF ) ON  

[PRIMARY]

) ON [PRIMARY] 

  SinhVien

CREATE  TABLE [dbo].[SinhVien](

[masv] [nvarchar](50) COLLATE  

SQL_Latin1_General_CP1_CI_AS NOT   NULL,

[tensv] [nvarchar](50) COLLATE  

SQL_Latin1_General_CP1_CI_AS NULL,

[ngaysinh] [datetime] NULL,

[matruong] [nvarchar](50) COLLATE  

SQL_Latin1_General_CP1_CI_AS NOT   NULL,

[ghinhho] [nvarchar](50) COLLATE  

SQL_Latin1_General_CP1_CI_AS NULL,

CONSTRAINT [PK_SinhVien] PRIMARY  KEY  CLUSTERED (

[masv] ASC 

)WITH  (PAD_INDEX  = OFF  , IGNORE_DUP_KEY = OFF ) ON  

[PRIMARY]

) ON [PRIMARY]

GO

 ALTER TABLE [dbo].[SinhVien] WITH  CHECK   ADD  CONSTRAINT  

[FK_SinhVien_Truong] FOREIGN  KEY ([matruong])

 REFERENCES [dbo].[Truong] ([matruong])

GO ALTER TABLE [dbo].[SinhVien] CHECK  CONSTRAINT  

[FK_SinhVien_Truong] 

  MonHoc

CREATE  TABLE [dbo].[MonHoc](

[mamh] [nvarchar](50) COLLATE  

SQL_Latin1_General_CP1_CI_AS NOT   NULL,

[tenmh] [nvarchar](50) COLLATE  

SQL_Latin1_General_CP1_CI_AS NULL,

[ghinho] [nvarchar](50) COLLATE  

SQL_Latin1_General_CP1_CI_AS NULL,

CONSTRAINT [PK_MonHoc] PRIMARY  KEY  CLUSTERED 

(

[mamh] ASC 

)WITH  (PAD_INDEX  = OFF  , IGNORE_DUP_KEY = OFF ) ON  

[PRIMARY]

) ON [PRIMARY] 

Page 62: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 62/78

Đồ án tốt nghiệp Đại học  Chương 5: Cài đặt và cấu hình hệ thống Server  

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 52

  Diem

CREATE  TABLE [dbo].[Diem](

[masv] [nvarchar](50) COLLATE  

SQL_Latin1_General_CP1_CI_AS NOT   NULL,

[mamh] [nvarchar](50) COLLATE  

SQL_Latin1_General_CP1_CI_AS NOT   NULL,

[diem] [float] NULL,

[ghinho] [nvarchar](50) COLLATE  

SQL_Latin1_General_CP1_CI_AS NULL,

CONSTRAINT [PK_Diem] PRIMARY  KEY  CLUSTERED 

(

[masv] ASC  ,

[mamh] ASC 

)WITH  (PAD_INDEX  = OFF  , IGNORE_DUP_KEY = OFF ) ON  

[PRIMARY]

) ON [PRIMARY]

GO

 ALTER TABLE [dbo].[Diem] WITH  CHECK   ADD  CONSTRAINT  

[FK_Diem_MonHoc] FOREIGN  KEY ([mamh])

 REFERENCES [dbo].[MonHoc] ([mamh])

GO

 ALTER TABLE [dbo].[Diem] CHECK  CONSTRAINT  

[FK_Diem_MonHoc]

GO

 ALTER TABLE [dbo].[Diem] WITH  CHECK   ADD  CONSTRAINT  

[FK_Diem_SinhVien] FOREIGN  KEY ([masv])

 REFERENCES [dbo].[SinhVien] ([masv])

GO

 ALTER  TABLE  [dbo].[Diem] CHECK   CONSTRAINT  

[FK_Diem_SinhVien] 

Page 63: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 63/78

Đồ án tốt nghiệp Đại học  Chương 5: Cài đặt và cấu hình hệ thống Server  

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 53

5.3  Kết quả đạt đƣợc của việc thực thi tổng đài tự động 5.3.1  Cài đặt Server 

 Đã xây dựng cài đặt phần mềm  tổng đài  Asterisk trên nền Linux Server Centos 5.6.

 Tìm hiểu cơ chế FASTAGI để gọi các ứng dụng từ xa trên các máy cục bộ.

Hình 5.2: Câu lệnh gọi dịch vụ từ xa. 

5.3.2  Hoạt động của tổng đài: 

  Khởi động tổng đài Asterisk trên server HĐH Linux Centos 5.6. bẳng

lệnh : Asterisk – r

Hình 5.3 :Màn hình đã kết nối Asterisk  

Page 64: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 64/78

Đồ án tốt nghiệp Đại học  Chương 5: Cài đặt và cấu hình hệ thống Server  

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 54

  Trong tổng đài, ta cấu hình trên 3 file chính trong thư mục etc/asterisk,đó là: sip.cof,extensions.conf,smb.conf 

o Vào sip.conf (etc/asterisk), ta đăng kí địa chỉ cho softphone có chứcnăng gọi và nghe. Đầu tiên, ta đăng kí 2 phone là 101 và 102. 

Hình 5.4: Cấu hình file Sip 

o  Vào extensions.conf, ta ghi kế hoạch gọi cho tổng đài.

  Khai báo chức năng gọi điện thoại lẫn nhau cho 2 số điệnthoại 101 và 102

  Khai báo số 200 để khi gọi vào sô 200 này, server sẽ gọidịch vụ từ máy có địa chỉ 192.168.1.123 thông quascript mang tên “ivr”. 

  Khai báo số 205 với tính năng ghi âm, khi gọi vào số

205,sau khi nghe tiếng bíp thì bạn có thể ghi âm,kết thúcghi âm bấm phím # và sau 2 giây nó sẽ phát lại đoạn ghi

âm trên.

Page 65: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 65/78

Đồ án tốt nghiệp Đại học  Chương 5: Cài đặt và cấu hình hệ thống Server  

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 55

Hình 5.5:Cấu hình file extensions 

  Cài đặt gói samba để chia sẻ dữ liệu:

o  Kiểm tra gói samba đã cài chưa:

rpm -qa | grep samba

o  Gõ lệnh cài đặt 

yum install samba 

o  Tạo một thư mục để thực hiện share dữ liệu. Ví dụ tạo thư mục có

tên là “share”:

mkdir/share 

o  Phân quyền thư mục share:

chmod 777 – R /share/  

o  Ta cấu hình file smb.conf . Gõ lệnh: vi /etc/samba/smb.conf. Xuốngdòng cuối cùng và thêm đoạn sau: 

Hình 5.6: Cấu hình tập tin chia sẻ 

Page 66: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 66/78

Đồ án tốt nghiệp Đại học  Chương 5: Cài đặt và cấu hình hệ thống Server  

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 56

  Gõ lệnh : service smb start để khởi động samba 

Hình 5.7: Khởi động samba   Thiết lập tài khoản mật khẩu cho người dùng samba:

Gõ lệnh: smbpasswd  – a root 

  Tiến hành nhập mật khẩu. Mật khẩu này dùng để truy cập vào máy chứathư mục chia sẽ.

Hình 5.8: Khai báo user chia sẻ 

  Trên Client, vào RUN gõ đường máy chủ chia sẽ dữ liệu: 

Hình 5.9:Đường dẫn vào server  

Page 67: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 67/78

Đồ án tốt nghiệp Đại học  Chương 5: Cài đặt và cấu hình hệ thống Server  

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 57

  Truy cập thành công, vào “Thƣ mục chia sẻ” có tệp tin chia sẻ 

Hình 5.10:Địa chỉ chia sẻ tập tin âm thanh 

Page 68: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 68/78

Đồ án tốt nghiệp Đại học  Chương 5: Cài đặt và cấu hình hệ thống Server  

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 58

  Chạy chương trình thực thi bẳng visual 2010 trên máy win 7 để nó tạo ra port 4573 và máy server thông qua port đó để thực thi chương trình.

Hình 5.11:Cổng kết nối giữa máy client và máy server  

Page 69: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 69/78

Đồ án tốt nghiệp Đại học  Chương 5: Cài đặt và cấu hình hệ thống Server  

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 59

  Dịch vụ được gọi thông qua các Script trong chương trình như sau:

Hình 5.12: Script kết nối với server  

  Bật softphone 3CX lên với số điện thoại đã đăng kí.Ở đây là máy có sốphone là 101.

  Bấm số 200 để gọi vào dịch vụ. 

  Khi kết nối vào được hệ thống, thì sẽ xuất hiện câu chào mừng bạn đếnvới hệ thống.Câu chào như sau : ” Chào mừng bạn đến với tổng đài

thông tin tra cứu điểm tuyển sinh. Mời bạn chọn số 1 để nghe thông tinvề mã môn thi, chọn số 2 để nghe về kết quả điểm thi tuyển sinh.” 

  Sau khi nghe câu chào xong, bạn có 2 lựa chọn:

Page 70: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 70/78

Đồ án tốt nghiệp Đại học  Chương 5: Cài đặt và cấu hình hệ thống Server  

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 60

Hình 5.13: Màn hình đã kết nối vào dịch vụ 

o  Bấm phím 1 để nghe thông tin tổng quát 

Hình5.14: Xử lí phím số 1 

Page 71: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 71/78

Đồ án tốt nghiệp Đại học  Chương 5: Cài đặt và cấu hình hệ thống Server  

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 61

o  Bấm phím 2 để bạn nhập vào mã thí sinh.

  Softphone nhận được chuỗi phím nhập vào bằng hàm GetData() 

  Sau đó,lấy giá trị nhận vào rồi tìm kiếm giá trị đó trong cơ sở dữliệu.

   Nếu tìm thấy sẽ đọc lên âm thanh kết quả điểm cho thí sinhđó,nếu không tìm thấy thì đọc lên kết quả không tìm thấy cho thí

sinh.

Hình 5.15: Xử lí phím số 2 

Page 72: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 72/78

Đồ án tốt nghiệp Đại học  Chương 5: Cài đặt và cấu hình hệ thống Server  

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 62

o  Một số trƣờng hợp xử lí lỗi:   Khi bạn gọi đến số 200, nghe lời chào xong, không thao tác

hay chọn bất kì phím nào, thì sau khoảng thời gian nhât định,hệ thống sẽ tự kết thúc cuộc gọi. 

  Khi gọi vào tổng đài, ta có hai lựa chọn là số 1 và số 2, nếu bấm ngoài hai số trên, hệ thống sẽ đưa ra thông báo yêu cầunhập lại số báo danh hoặc kết thúc cuộc gọi 

Hình 5.16: trường hợp sai phím bấm 

  Khi bấm số 2 để nghe điểm thi, nếu sinh viên đó chưa có điểmhay nhập số báo danh không có trong cơ sở dữ liệu thì thông

 báo lỗi “không có thí sinh” 

5.3.3  Quá trình tổng hợp tiếng nói: 

  Tổng hợp các từ ngữ thành một chuỗi   Dùng hàm MergeFile để ghép các từng từ trong bộ từ điển tiếng việt

thành một chuỗi kí tự.   Chép các tất file .wav của từng từ ngữ vào trong đường dẫn bin của

 project để chương trình có thể tìm thấy từ đó và đọc lên. 

Hình 5.17: Xử lí ghép âm thanh 

Page 73: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 73/78

Đồ án tốt nghiệp Đại học  Chương 5: Cài đặt và cấu hình hệ thống Server  

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 63

  Ví dụ ta có project để trong ổ D:\ và ta phải chép filewave có sẵn vàođường dẫn bin : 

Hình 5.18 : Thư mục để đọc các âm thanh từ file Text 

  Tạo các file âm thanh của từng thí sinh và để lên server    Thuộc tính OutPath dùng để chứa chuỗi âm thanh xuất ra. 

  Để xuất ra server thì ta trỏ đường dẫn đến thư mục share giữa máy

win và máy server.

  Ứng với mỗi từ được ghi ở dạng Text sẽ có một file âm thanh của nó

trong thu mục đường dẫn bin phía trên. Ta dùng hàm mergerfile đểghép các từ ngữ đơn lại thành chuỗi và đọc ra kết quả tương ứng. 

5.4  Kết luận 

  Thử nghiệm được các chức năng thực tế của tổng đài như:

  Dial giữa các phone nội bộ. 

  Record and Playback (ứng dụng cho việc ghi danh,điền thông tin).   Chức năng lấy dữ liệu, đọc file âm thanh trên các máy local.

  Xây ứng dịch vụ điểm tuyển sinh đối với mạng nội bộ, giữa các hệ thốngchi nhánh của trường hoạt động như sau: 

  Bấm số 200 để gọi vào tổng đài Asterisk    Tổng đài Asterisk đã được cài đặt trên hệ điều hành Linux 

Page 74: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 74/78

Đồ án tốt nghiệp Đại học  Chương 5: Cài đặt và cấu hình hệ thống Server  

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 64

  Khi đã kết nối vào tổng đài và ta có 2 lựa chọn cho khách hàng 

o  Bấm số 1 để bạn nghe thông tin về tuyển sinh cũng như mã các

môn thi

o  Bấm số 2 để bạn nghe kết quả điểm thi tuyển sinh. 

5.5  Những hạn chế:

 Chỉ dừng ở mức độ gọi điện cục bộ trong một môi trường cụ thể. 

 Các file âm thanh được nhập cố định trong cơ sở dữ liệu, chưa linh độngtrong trường hợp có từ ngữ mới phát sinh. 

 Do thời gian có hạn nên ứng dụng tự động chưa được hoàn thiện và đầy đủ

như thực tế ,chất lượng âm thanh giọng đọc chưa chuẩn. 

Page 75: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 75/78

Đồ án tốt nghiệp Đại học  Đánh giá chung và hướng phát triển 

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 65

ĐÁNH GIÁ CHUNG VÀ XU HƢỚNG PHÁT TRIỂN ĐỀ TÀI

  Qua quá trình tìm hiểu, em đã có những kiến thức cơ bản về các kỹ thuậtviễn thông, các kiến thức về lập trình trên phần cứng.  

  Với công nghệ VOIP, việc xây dựng một tổng đài thực tế Asterisk này sẽ

rất hữu ích cho các doanh nghiệp muốn có một tổng đài với chi phí vừa phải. 

  Dựa vào nền tảng là các ứng dụng nhỏ trong quá trình làm đề tài, em sẽ cốgắng phát triển lên thành một hệ thống cuộc gọi hoàn chỉnh hơn như cácứng dụng về các IVR. 

Hình 6.1: Mô hình một hệ thống IVR  

  Asterisk hỗ trợ rất nhiều công nghệ khác nhau và có cấu trúc nguồn mở,cho phép các nhóm phát triển lẫn người sử dụng có thể tùy biến ứngdụng Asterisk của mình đáng kể. 

  Đặc biệt, phải kể đến giao tiếp Asterisk AGI&FASTAGI hay

AsteriskRealtime cho phép Asterisk kết hợp với các ngôn ngữ lập trình

thông dụng như : C, C++,C#, VB, PHP, Shell-script, Python cùng với hệ

Page 76: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 76/78

Đồ án tốt nghiệp Đại học  Đánh giá chung và hướng phát triển 

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 66

cơ sở dữ liệu MySQL,Oracle,SQL Server để phát triển những ứng dụng

Voice-Application khác nhau.

  Asterisk là một IP-PBX đã được triển khai cũng khá nhiều ở các công tynhằm giảm chi phí liên lạc, tuy nhiên nó cũng còn khá mới nên việc cài

đặt, cấu hình chủ yếu từ các chuyên viên trong lĩnh vực viễn thông.

  Mục tiêu của đồ án và hướng phát triển tiếp theo là xây dựng hệ thống

Asterisk  với các tiện ích thực tế, thân thiện để những nhân viên bìnhthường cũng có thể xây dựng và quản lí hệ thống IP-PBX cho công ty

mình.

Kết luận, em đã hoàn tất việc cài đặt một hệ thống PBX với các tính năng củamột server tổng đài. Và đã hoàn thành cơ bản nội dung đề cương đặt ra trong 

kì đồ án tốt nghiệp.Trên cơ sở đó có thể phát triển ứng dụng khai thác hệ thống

Asterisk theo hướng hoàn thiện các chức năng nêu ở phần hạn chế và để  có thểứng dụng được chương trình trong thực tế. Trong quá trình làm bài luận văn tốt nghiệp này, em vẫn còn nhiều thiếu sót và

mong nhận được sự góp ý kiến của quý thầy cô. 

Page 77: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 77/78

Đồ án tốt nghiệp Đại học  Phụ lục 

SVTH: Nguyễn Thanh Tâm –  Lớp: D07THPM Trang 67

PHỤ LỤC 1.  Các gói phần mềm phụ thuộc phải có trong hệ điều hành Linux 

yum -y update

yum -y upgrade

yum -y install dahdi-tools kernel-devel kernel-headers

yum -y install make bison bison-devel ncurses ncurses-devel zlib zlib-developenssl openssl-devel gnutls-devel gcc gcc-c++ kernel-devel flex libxml2-devel

which

yum -y install httpd httpd-devel

 /etc/init.d/httpd start

yum -y install php php-mysql php-common php-gd php-mbstring php-mcrypt

php-devel php-xml php-imap php-ldap php-odbc php-pear php-xmlrpc

ImageMagick ImageMagick-devel

yum -y install linux-headers-$(uname -r) bison openssl libssl-dev libeditline0

libeditline-dev libedit-dev gcc make g++ mc php5-cli gt libgtk2.0-dev 

2.  Các gói cần thiết của phần mềm Asterisk    Asterisk Communications Engine –   bản mới nhất là Asterisk 10.0.0

Source Tarball .  DAHDI Linux / DAHDI Tools  LibPRI  LibSS7

3.  Khắc phục lỗi khi cài Dahdi   Bước 1: 

o  cd /usr/srco  wget http://mirror.anl.gov/pub/linux/kernel/v2.6/linux-2.6.18.tar. o  tar zxvf lilnux-2.6.18.tar.gz

  Bước 2: o  ln -s linux-2.6.18 linuxo  cd linuxo  make oldconfigo  makeo  make modules_install install

  Bước 3:o  uname – ro  2.6.18-92.1.13.el5

  Bước 4: o  cd /lib/modules/2.6.18-92.1.13.el5/ o  mv build build.bak o  mv source source.bak 

 

Page 78: 76431256-407170129-NTT

5/17/2018 76431256-407170129-NTT - slidepdf.com

http://slidepdf.com/reader/full/76431256-407170129-ntt 78/78

Đồ án tốt nghiệp Đại học  Tài liệu tham khảo 

SVTH ễ D07THPM T 68

TÀI LIỆU THAM KHẢOTiếng Việt 

[1]. Asterisk Tiếng Việt –  Lê Quốc Toàn 

[2]. Các dịch vụ tổng đài link: http://www.tongdai.com.vn 

[3]. Cấu trúc tập tin wavefile

link :http://my.opera.com/f0ng_vn/blog/show.dml/671686 

[4]. Diễn đàn giải pháp VoIP 

Tiếng Anh 

[1]. Asterisk™The Future of Telephony- Publisher: O'Reilly Media-2005

[2]. Configuration Guide For Asterisk PBX – By Flavio E.Goncalves

Copyright © 2006 V.Office Networks Ltda., All rights reserved.

[3]. How to setup Asterisk 1.6.2 on Centos 5.4

http://www.selbytech.com/2010/01/how-to-setup-asterisk-1-6-2-on-centos-5-4/  

[4]. The Open Source Telephony Projects

link: http://www.asterisk.org/  [5]. The VOIP Wiki - a reference guide to all things VOIP

link: http://www.voip-info.org/  [6]. VoIP Telephony with Asterisk  – Paul Mahler.

[7]. ,  Building Telephony Systems with Asterisk - Barrie Dempster - David

Gomillion Packt Publishing Ltd , 2005.