Báo cáo thực tập tốt nghiệp 2014 công nghệ VoIP và asterisk

100 846 1
Báo cáo thực tập tốt nghiệp 2014 công nghệ VoIP và asterisk

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Công nghệ VoIP và Asterisk MỤC LỤC MỤC LỤC 1 DANH MỤC HÌNH VẼ 8 LỜI MỞ ĐẦU 10 LỜI CẢM ƠN 11 CHƯƠNG 1 12 TỔNG QUAN VỀ VOIP 12 1.1. Giới thiệu 12 1.2. Cấu trúc mạng VoIP 12 1.3. Đặc điểm dịch vụ VoIP 14 1.4. Chất lượng dịch vụ trong mạng VoIP 15 1.5. Các giao thức truyền thông thời gian thực 18 1.5.1. Giao thức RTP 18 1.5.2. Giao thức RTCP 19 CHƯƠNG 2 21 CÁC GIAO THỨC BÁO HIỆU 21 2.1. Giao thức H323 21 2.1.1. Giới thiệu 21 2.1.2. Các thành phần cơ bản của hệ thống H323 21 Terminal 22 Gateway 23 Gatekeeper 23 MCU 24 2.1.3. Tập giao thức H323 24 1 Công nghệ VoIP và Asterisk 2.1.1. Quá trình thiết lập cuộc gọi H323 26 2.2. Giao thức khởi tạo phiên SIP 27 2.2.1. Giới thiệu 27 2.2.2. Tính năng của SIP 28 2.2.3. Các thành phần trong hệ thống SIP 28 2.2.4. Các bản tin của SIP 30 2.2.5. Quá trình thiết lập cuộc gọi 32 32 33 2.3. So sánh với H.323 35 CHƯƠNG 3 37 MẠNG THẾ HỆ MỚI NGN 37 3.1. Sự hình thành mạng NGN 37 3.2. Các đặc điểm của NGN 38 3.3. Những vấn đề mà mạng thế hệ mới cần giải quyết 38 3.4. Công nghệ chuyển mạch mềm – Softswitch 39 3.4.1. Những hạn chế của tổng đài chuyển mạch kênh 39 3.4.2. Định nghĩa chuyển mạch mềm (Softswitch) 40 3.4.3. Những lợi ích của Softswitch 41 3.5. Kiến trúc của mạng NGN 43 3.5.1. Lớp truyền tải 44 3.5.2. Lớp điều khiển và báo hiệu cuộc gọi 45 3.5.3. Lớp ứng dụng và dịch vụ 45 3.5.4. Lớp quản lý 45 3.6. Các phần tử trong mạng NGN 46 3.7. Các dịch vụ chính trong mạng NGN 47 2 Công nghệ VoIP và Asterisk CHƯƠNG 4 47 TÌM HIỂU ASTERISK 47 4.1. Giới thiệu 47 4.2. Kiến trúc Asterisk 49 4.3. Một số tính năng cơ bản 51 4.4. Các ngữ cảnh ứng dụng 53 4.5. Tổ chức thư mục của Asterisk 57 /etc/asterisk/ 57 /usr/lib/asterisk/modules/ 57 /var/lib/asterisk 57 Các thư mục con của thư mục /var/lib/asterisk/ bao gồm: 57 /var/spool/asterisk/ 58 /var/run/ 59 /var/log/asterisk/ 59 /var/log/asterisk/cdr-csv 59 4.6. Một số lệnh thao tác trên hệ thống asterisk 60 #/etc/init.d/asterisk (start|stop) 60 #CLI>reload 60 #CLI> sip show users 60 4.7. Cách thức cấu hình trên các tập tin cơ bản 61 Tất cả các file cấu hình cho hệ thống Asterisk đều nằm tại thư mục etc/asterisk ngoại trừ 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. Các nội dung sau dấu chấm phảy “;”là nội dung chú thích trong file cấu hình. Tất cả các khoảng trắng trong file cấu hình đều được bỏ qua và không có ý nghĩa.Cú pháp thực hiện giống nhau 61 4.8. Cách thức hoạt động của tập tin cấu hình 61 4.9. Giới thiệu dialplan 63 3 Công nghệ VoIP và Asterisk Một ví dụ cụ thể như sau: 64 exten => 7325010,2,Voicemail(u7325010) 64 exten => Tương ứng với mỗi ứng dụng thực hiện 64 7325010 là con số nhận được khi thuê bao chủ gọi quay số 64 1, 2 là các “priority” thứ tự được thực hiện 1 rồi tới 2… 64 XÂY DỰNG HỆ THỐNG CALLCENTER TRÊN NỀN ASTERISK 67 5.1. Giới thiệu 67 Sự bùng nổ của Internet, việc ứng dụng ngày càng rộng rãi của thương mại điện tử và các ứng dụng đa phương tiện (multimedia) đã làm cho nhu cầu về trao đổi thông tin một cách trong suốt (transparent) giữa khách hàng với các cơ sở dữ liệu (Database) ngày càng tăng 67 Call center là khái niệm chỉ dịch vụ/trung tâm chăm sóc khách hàng (CSKH) qua điện thoại, websites đang hứa hẹn trở thành một lĩnh vực hoạt động kinh doanh đầy tiềm năng tại Việt Nam, trong bối cảnh hội nhập với thế giới 67 Hệ thống Call Center là điểm tiếp nhận mọi thông tin, yêu cầu từ phía khách hàng dưới mọi hình thức: thoại, e-mail, SMS, web, fax và không phụ thuộc vào vị trí xuất phát của nguồn thông tin để phục vụ công tác CSKH, tiếp nhận yêu cầu, giải quyết khiếu nại Ví dụ như một khách hàng muốn truy cập vào tài khoản ngân hàng của mình họ sẽ được hệ thống Call Center kết nối trực tiếp tới cơ sở dữ liệu (CSDL) của ngân hàng đó. Sau đó khách hàng sẽ tương tác trực tiếp với CSDL để thực hiện các yêu cầu của mình 67 5.2. Mục đích Yêu cầu 67 Trong đồ án này sẽ tập trung xây dựng một hệ thống Callcenter với 3 chức năng chính. Khi khách hàng gọi tới tổng đài 1900 sẽ được nghe lời chào và hướng dẫn bấm phím. 67 Bấm phím 1 67 Cho phép khách hàng tra cứu thông tin kết quả xổ số một ngày bất kỳ, ngày tháng năm được nhập từ bàn phím có dạng xxyyzzz. Trong đó xx là ngày, yy là tháng và zzzz là năm. Nếu khách hàng nhập sai ngày tháng năm sẽ được thông báo và yêu cầu nhập lại.Ngày tháng năm được coi là sai khi khách hàng nhập vào chuỗi số có chưa ký tự *,# hoặc là một ngày tháng khống có kết quả trong database. Kết quả trả lời hoàn toàn là âm thanh thoại. 67 4 Công nghệ VoIP và Asterisk Bấm phím 2 67 Sử dụng dịch vụ quà tặng âm nhạc, cho phép khách hàng có thể gửi tặng một bản nhạc tới những người thân của mình cùng với lời nhắn của chính người gửi, thời điểm gửi sẽ do người gửi quyết định.khách hàng sẽ được hướng dẫn để nhập mã quà tặng,số điện thoại người nhận và thời gian gửi quà tặng, nếu khách hàng nhập sai sẽ được thông báo và yêu cầu nhập lại.Mã quà tặng sẽ là một chuỗi số có 4 chữ số, bị coi là không đúng khi chuỗi số chưa ký tự *,# hoặc là không tồn tại quà tặng này.Số điện thoại sẽ là một chuỗi số khách hàng nhập tùy ý cho tới khi nhấn phím #. Khách hàng sẽ được nghe lại số điện thoại vừa nhập và lời hướng dẫn nhấn phím # để đi đến bước tiếp theo, nhấn phím bất kỳ để nhập lại số điện thoại.Thời gian gửi quà tặng sẽ là một chuỗi số có dạng xxyyzztt, trong đó xx là phút, yy là giờ, zz là ngày và tt là tháng gửi quà tặng. Thời gian được coi là không đúng khi chuỗi số khách hàng nhập vào chứa ký tự *, # hoặc là một thời điểm trong quá khứ so với thời gian hiện tại của hệ thống. Cuối cùng khách hàng sẽ ghi âm lại lời nhắn của chính mình để gửi tới người nhận. Sau đó là lời cảm ơn và kết thúc quá trình gửi quà tặng 68 Bấm phím 0 68 Cho phép kết nối trực tiếp khách hàng với nhân viên tư vấn chăm sóc khách hàng. 68 Hệ thống xây dựng đáp ứng được các chức năng đã đề ra, giải quyết tối đa các yêu cầu gọi đến và đảm bảo chất lượng âm thanh thoại 68 5.3. Phân tích thiết kế 68 5.3.1. Kịch bản cho hệ thống 68 72 73 74 Quy trình gặp nhân viên tư vấn 75 5.3.1. Biểu đồ phân rã chức năng 75 75 5.3.2. Biểu đồ ngữ cảnh 75 76 5 Công nghệ VoIP và Asterisk 5.3.1. Biểu đồ luồng dữ liệu mức đỉnh 77 78 5.3.1. Cơ sở dữ liệu 79 Cớ sở dữ liệu phục vụ cho hệ thống cũng khá đơn giản 79 79 79 Trong đó bảng KQXS dùng để lưu kết quả xổ số, trường date dùng dể lưu ngày tháng năm, trường ketqua dùng để lưu kết quả của ngày tháng năm đó. Trường ketqua sẽ có dạng: 79 5.4. Triển khai hệ thống 80 5.4.1. Mô hình hệ thống 80 80 Trong hệ thống thực tế triển khai trong đồ án gồm có: 81 1 Server Linux (CentOS 5) trên đó cài đặt phần mềm Asterisk version 1.6.0 81 1 Server cài Microsoft SQL Server 2005 81 2 Softphone (X-lite) 81 Cấu hình đề nghị đối với PC cài đặt server Asterisk: 81 CPU P4 2.4 Ghz 81 RAM 512 81 HDD 40G 81 5.4.1. Cài đặt các gói phần mềm 81 Hệ Điều Hành CENTOS 5.2 81 Sử dụng đĩa cài đặt CentOS version 5.2 và cài đặt mặc định các gói của hệ thống. Sau khi cài xong thì cần cài thêm các gói nhỏ sau để có thể cài và chạy được phần mềm Asterisk: 81 Cài đặt phần mềm Asterisk 82 Cài đặt Softphone 82 6 Công nghệ VoIP và Asterisk Phần mềm hỗ trợ lập trình giao tiếp với Asterisk 82 5.4.2. Cấu hình hệ thống Asterisk 82 Cấu hình các file .conf như sau: 82 Musiconhold.conf 85 random=yes 85 Agent.conf 85 agent=>2222,2222,hungbd 85 Queue.conf 85 86 5.4.1. Lập trình cho hệ thống 87 Giới thiệu AGI 87 Asterisk Gateway Interface ( AGI ) là một chuẩn giao tiếp với Asterisk . AGI cho phép Astersik gọi thực thi một chương trình ngoài để mở rộng nhiều chức năng của Astersik như điều khiến các kệnh thoại , phát âm thanh , đọc số DTMF , liên kết với cơ sở dữ liệu …. Các chương trình ngoài được gọi là AGI Script , ta có thể lập trình ra các AGI Script bằng nhiều ngôn ngữ lập trình khác nhau như Perl, PHP, C, C#, Java 87 Các file code 88 Các Script được viết bằng ngôn ngữ PHP, sử dụng thư viện PHPAGI để giao tiếp với Asterisk 88 Khi gọi đến số 1900, hệ thống sẽ đưa người gọi đến mainmenu, là ngữ cảnh chính, ở đây người gọi sẽ được nghe một lời chào mừng cùng lời hướng dẫn bấm phím. Hệ thống sẽ chờ người dùng bấm phím trong vòng 30 giây, nếu người dùng không bấm phím trong khoảng thời gian đó thì hệ thống sẽ phát ra lời cảm ơn và kết thúc cuộc gọi, còn ngược lại nếu người dùng bấm phím 1 sẽ được đưa đến ngữ cảnh [kqxs] để tra cứu thông tin về kết quả xổ số, phím 2 sẽ được đưa đến ngữ cảnh [qtan ] để gửi quà tặng âm nhạc, phím 0 sẽ được đưa đến ngữ cảnh [nvtv] để gặp nhân viên tư vấn. Còn phím bất kỳ không phải 3 phím trên sẽ được đưa đến ngữ cảnh [saimenu], ở đây người gọi sẽ được nghe thông báo không tồn tại menu vừa nhập, sau đó được đưa trở lại menu [mainmenu] với priority là 2 để tiếp tục nhập phím khác 88 File ketquaxoso.php 88 7 Công nghệ VoIP và Asterisk 5.5. Kết quả thực nghiệm 94 Vào chế độ dòng lệnh của Asterisk từ terminal của Linux 94 94 94 95 95 96 5.6. Đánh giá hệ thống 96 5.7. Hướng phát triển 97 Hoạt động với mạng PSTN 97 Xây dựng thêm các dịch vụ mới như tra cứu thông tin chứng khoán,Tỷ giá đô la, dự báo thời tiết… 97 DANH MỤC HÌNH VẼ Hình 1 : Cấu trúc mạng VoIP 13 Hình 2 Một số chuẩn mã hóa tín hiệu 16 Hình 3 Gói RTP 17 Hình 4 Cấu trúc gói tin RTP 18 Hình 5 Cấu trúc gói tin RTCP 20 Hình 6: Các thành phần mạng H323 22 Hình 7: Tập giao thức H323 24 Hình 8 Quá trình thiết lập cuộc gọi trong H323 27 Hình 9 :Các thành phần hệ thống SIP 29 Hình 10 Một số trường header đơn giản 31 Hình 11 : Hoạt động của Proxy server 32 Hình 12 : Hoạt động của Redirect Server được trình bày như hình 33 Hình 13 Quá trình thiết lập và hủy một phiên kết nối của SIP 35 8 Công nghệ VoIP và Asterisk Hình 14 : Topo mạng NGN 39 Hình 15 : Cấu trúc mạng và báo hiệu PSTN 40 Hình 16 So sánh chuyển mạch kênh và chuyển mạch mềm 43 Hình 17 : Kiến trúc NGN 44 Hình 18 : Mô hình mạng NGN 47 Hình 19 : Sơ đồ tổng quan Asterisk 49 Hình 20 : Kiến trúc Asterisk 50 Hình 21 : IP PBX 54 Hình 22 : Kết nối IP PBX với PBX 55 Hình 23 : Kết nối giữa các Server Asterisk 55 Hình 24 : Triển khai server IVR, VoiceMail, Hội Thoại 56 Hình 25 : Phân phối cuộc gọi hàng đợi 57 Hình 26 Cấu trúc cây thư mục 59 Hình 27 Kịch bản Menu chính của hệ thống 69 Hình 28 Quy trình tra cứu kết quả xổ số 71 Hình 29 Quy trình gửi quà tặng âm nhạc 74 Hình 30 Gặp nhân viên tư vấn 75 Hình 31 Biểu đồ phân cấp chức năng 75 Hình 32 Biểu đồ ngữ ảnh 76 Hình 33 Biểu đồ luồng dữ liệu mức đỉnh 78 Hình 34 Cơ sở dữ liệu 79 Hình 35 Mô hình logic hệ thống 80 Hình 36 Cấu hình Softphone 86 Hình 37 Màn hình Asterisk CLI 94 Hình 38 Softphone đăng ký vào hệ thống 94 Hình 39 Gọi tới 1900 95 9 Công nghệ VoIP và Asterisk Hình 40 Người gọi chọn tra cứu kết quả xổ số 95 Hình 41 Người gọi chọn Gửi quà tặng âm nhạc 96 LỜI MỞ ĐẦU Sự phát triển của mạng Internet là một bước ngoặt lớn mang đậm tính lịch sử trong lĩnh vực công nghệ thông tin. Nó có những tác động to lớn và tích cực không chỉ riêng trongl lĩnh vực công nghệ thông tin mà còn cả trong mọi lĩnh vực của đời sống xã hội. Nó làm thay đổi tư duy, khả năng nhận thức, tăng cường mở rộng khả năng hiểu biết về thế giới quan, thúc đẩy xã hội phát triển một cách nhanh chóng. Sự bùng nổ của Internet không chỉ là sự gia tăng số lượng các nhà khai thác dịch vụ, số người tham gia mà còn gia tăng về số lượng dịch vụ và chất lượng dịch vụ. Nếu trước đây chúng ta biết đến Internet như là một nguồn để tìm kiếm thông tin, giải trí thì ngày nay, Internet còn đưa thêm rất nhiều dịch vụ mới và đa phần những dịch vụ này rất gần gũi thân thiết với con người như dịch vụ thư điện tử, dịch vụ đa phương tiện, dịch vụ thương mại điện tử…Và gần đây nhất là dịch vụ điện thoại Internet (VoIP). Bắt đầu từ năm 1994, truyền thông Internet đã bắt đầu được thử nghiệm và phát triển mạnh mẽ từ năm 1995. Hiện nay truyền thông qua mạng Internet đã phát triển rất mạng và với rất nhiều ứng dụng như điện thoại, thư thoại, fax, hội nghị video, chia sẻ tài liệu… 10 [...].. .Công nghệ VoIP và Asterisk Điện thoại IP sẽ là một xu thế không thể tránh khỏi, sẽ dần dần thay thế điện thoại truyền thống Việc tìm hiểu và xây dựng các ứng dụng dựa trên công nghệ VoIP là điều cần thiết và sẽ mang lại những lợi ích to lớn Vì những lý do trên mà em đã đi đến thực hiện đồ án tốt nghiệp của mình với đề tài : “Tìm hiểu công nghệ VoIP và xây dựng hệ thống Callcenter trên nền Asterisk ... quá trình làm đồ án tốt nghiệp Tuy nhiên, do thời gian và trình độ có hạn nên đồ án này chắc chắn không tránh khỏi những thiếu sót, chúng em rất mong được sự đóng góp ý kiến của các thầy, các cô và toàn thể các bạn Chúng em xin chân thành cảm ơn Hà Nội,ngày 18 tháng 03 năm 2014 11 Công nghệ VoIP và Asterisk CHƯƠNG 1 TỔNG QUAN VỀ VOIP 1.1 Giới thiệu VoIP ( Voice Over IP ) là công nghệ cho phép truyền... tín hiệu này 2.1.3 Tập giao thức H323 Hình 7: Tập giao thức H323 Báo hiệu RAS 24 Công nghệ VoIP và Asterisk Cung cấp các thủ tục điều khiển tiền cuộc gọi trong mạng H.323 có GK Kênh báo hiệu RAS được thiết lập giữa các đầu cuối và các GK trước các kênh khác Nó độc lập với kênh báo hiệu cuộc gọi và kênh điều khiển H.245 Các bản tin RAS được truyền qua mạng thông qua kết nối UDP, thực hiện việc đăng... cách gửi cùng một gói tin nhiều lần và điểm nhận sẽ loại bỏ các gói tin không cần thiết 17 Công nghệ VoIP và Asterisk 1.5 Các giao thức truyền thông thời gian thực 1.5.1 Giao thức RTP RTP được coi như một giao thứ truyền từ đầu cuối đến đầu cuối (end to end) phục vụ truyền dữ liệu thời gian thực như audio và video RTP thực hiện việc quản lý về thời gian truyền dữ liệu và nhận dạng dữ liệu được truyền... hợp đó là mạng IP và mạng PSTN Có 3 loại gateway là: Gateway truyền tải kênh thoại, Gateway điều khiển truyền tải kênh thoại và Gateway báo hiệu • Gatekeeper: Có thể xem gatekeeper như là bộ não của hệ thống mạng điện thoại IP Nó cung cấp chức năng quản lý cuộc gọi một cách tập trung và một số các dịch vụ quan trọng khác như là: nhận dạng các đầu cuối và gateway, 13 Công nghệ VoIP và Asterisk quản lý... nhận từ những người khác 19 Công nghệ VoIP và Asterisk • Cuối cùng là một chức năng lựa chọn cho phép có thêm thông tin về những người tham gia vào phiên truyền Tuỳ thuộc vào giao thức RTP được sử dụng cho loại dữ liệu nào mà RTCP cung cấp các thông báo điều khiển khác nhau Có 4 loại thông báo điều khiển chính được giao thức RTCP cung cấp là: • Sender report (SR): thông báo này chứa các thông tin thống... 1.2 Cấu trúc mạng VoIP Trên hình 1 là cấu hình cơ bản của một mạng VoIP Ta thấy mạng gồm hai thành phần chính là mạng chuyển mạch kênh và mạng chuyển mạch gói Mạng chuyển mạch kênh chính là mạng điện thoại thông thường mà ta vẫn sử dụng Còn mạng chuyển mạch gói là một mạng IP, trong đó Internet là mạng IP mà ta vẫn quen thuộc 12 Công nghệ VoIP và Asterisk Mạng VoIP phải có khả năng thực hiện các chức... trạng thái và các thủ tục huỷ bỏ cuộc gọi Báo hiệu RAS gồm những quá trình sau: • Tìm GateKeeper • Đăng ký : Đăng ký là một quá trình cho phép GW, các đầu cuối và MCU tham gia vào một vùng và báo cho GK biết địa chỉ truyền vận và địa chỉ bí danh của nó • Định vị đầu cuối • Cho phép, thay đổi băng thông, trạng thái và huỷ quan hệ Báo hiệu điều khiển cuộc gọi H.225 Trong mạng H.323, thủ tục báo hiệu cuộc... SIP các UAC và 35 Công nghệ VoIP và Asterisk UAS phải có sự sắp xếp và khởi tạo các bản tin trước khi gửi đi, đối với H.323 khi nhận được tín hiệu yêu cầu là gần như nó có tín hiệu trả lời ngay lập tức Nói chung hạ tầng H.323 có thể đáp ứng các yêu cầu bảo đảm chất lượng dịch vụ của ứng dụng thời thực tốt hơn so với SIP Tuy nhiên nếu các ứng dụng loại này có những thuật toán tìm đường và mô phỏng lưu... có thể hoàn thành đồ án tốt nghiệp này, Chúng em xin gửi lời cảm ơn chân thành nhất tới tập thể các thầy giáo, cô giáo trường Đại học Thành Đô nói chung, khoa Công nghệ thông tin nói riêng, đã đào tạo cho chúng em những kiến thức, những kinh nghiệm qúy báu trong suốt thời gian học tập và rèn luyện Chúng em xin gửi lời cảm ơn tới Thầy Giáo Hoàng Thanh Tùng- Giảng viên khoa Công nghệ thông tin, trường . 12 Công nghệ VoIP và Asterisk Mạng VoIP phải có khả năng thực hiện các chức năng mà mạng điện thoại công cộng thực hiện, ngoài ra phải thực hiện chức năng của một gateway giữa mạng IP và mạng. thiết lập và hủy một phiên kết nối của SIP 35 8 Công nghệ VoIP và Asterisk Hình 14 : Topo mạng NGN 39 Hình 15 : Cấu trúc mạng và báo hiệu PSTN 40 Hình 16 So sánh chuyển mạch kênh và chuyển. thầy, các cô và toàn thể các bạn . Chúng em xin chân thành cảm ơn. Hà Nội,ngày 18 tháng 03 năm 2014 11 Công nghệ VoIP và Asterisk CHƯƠNG 1 TỔNG QUAN VỀ VOIP 1.1. Giới thiệu VoIP ( Voice

Ngày đăng: 16/10/2014, 21:48

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan