Thiết kế và xây dựng chương trình

Một phần của tài liệu nghiên cứu và xây dựng hệ thống voice server ứng dụng cho các dịch vụ cung cấp thông tin qua mạng điện thoại (Trang 64 - 80)

1.12.1 Xây dựng Mô đun IVR

1.12.1.1 Các yêu cầu chức năng và phi chức năng

Các yêu cầu chức năng: Trả lời thông tin tỷ giá và thị trường của chứng khoán mà người sử dùng nhập từ điện thoại.

Các yêu cầu phi chức năng:

o Cơ sở dữ liệu SQL Express 2005.

o Công cụ lập trình .NET và môi trường phát triển. o Công cụ phân tích, thiết kế: Rational Rose 2000. o Môi trường cài đặt ứng dụng Windows XP SP2.

o Modem.

o Đường dây điện thoại và một số máy cố định.

o Công cụ thiết kế giao diện cho form: Dxperience 8.2.4 1.12.1.2 Thiết kế cơ sở dữ liệu

Hình 4.20 Mô hình cơ sở dữ liệu

1.12.1.3 Mô hình use case

Chương 4. Phân tích thiết kế và triển khai hệ thống qua ứng dụng minh họa

Hình 4.3 Mô hình use case

Danh sách các người dùng S T T Tên người dùng Ý nghĩa / Ghi chú

1 Khách hàng Đại điện cho nhóm người sử dụng gọi

điện trực tiếp đến hệ thống, có thể thực hiện các chức năng sau:

• Quay số đến hệ thống • Nhấn phím điện thoại

2 Nhân viên Đại diện cho nhóm người sử dụng trực

tiếp giao diện hệ thống, có thể thực hiện các chức năng sau:

Xem thông tin nhật ký cuộc gọi Xem thông tin dữ liệu

Xem thông tin thiết bị

Bảng 1. Danh sách các người dùng

Danh sách các Use Case

Chương 4. Phân tích thiết kế và triển khai hệ thống qua ứng dụng minh họa T T 1 Quay số đến hệ thống Người sử dụng quay số đến hệ thống 2 Nhấn phím điện thoại

Nhấn phím gởi yêu cầu tra cứu thông tin theo hướng dẫn

3 Xem thông tin

nhật ký cuộc gọi

Xem thông tin tất cả các cuộc gọi như thời gian bắt đầu, thời gian kết thúc, tổng thời gian gọi

4 Xem thông tin

dữ liệu

Xem thông tin đầy đủ của tất cả tỷ giá cổ phiếu và thông tin thị trường chứng khoán (adsbygoogle = window.adsbygoogle || []).push({});

5 Xem thông tin

thiết bị

Chọn thiết bị cần xem đang có trong hệ thống để xác định đó có phải là voice modem

Bảng 2. Danh sách các Use Case

Đặc tả Use Case

1. Use Case “Quay số đến hệ thống”

Tóm tắt: Use Case này mô tả cách một người sử dụng thực hiện chức năng gọi điện đến hệ thống. Nếu thành công thì người sử dụng đã kết nối thành công đến hệ thống.

Dòng sự kiện:

+ Dòng sự kiện chính: Use Case này bắt đầu khi người sử dụng gọi điện đến hệ thống

1. Hệ thống nhận tín hiệu OnOffering.2. Hệ thống phát tín hiệu đã kết nối 2. Hệ thống phát tín hiệu đã kết nối

+ Các dòng sự kiện khác: Nếu Use Case này thực hiện khi hệ thống đang bận thì Use Case này sẽ kết thúc. + Các yêu cầu đặc biệt: Không có.

+ Trạng thái hệ thống khi bắt đầu thực hiện Use Case:

Hệ thống đang rãnh, nghĩa là không có cuộc gọi nào trên đường truyền.

Chương 4. Phân tích thiết kế và triển khai hệ thống qua ứng dụng minh họa

+ Trạng thái hệ thống sau khi thực hiện Use Case: Nếu Use Case thành công thì người sử dụng có thể nghe được lời chào và hướng dẫn sử dụng chương trình. Nếu không thì trạng thái hệ thống đang bận.

+ Điểm mở rộng: Use Case này vẫn có thể thực hiện khi hệ thống đang bận nếu ta tăng số lượng đường truyền.

2. Use Case “Nhấn phím điện thoại”:

Tóm tắt: Use-case này mô tả cách một người sử dụng tương tác với hệ thống bằng việc nhấn phím điện thoại theo hướng dẫn. Nếu thành công thì người sử dụng có thể nghe được những thông tin đã yêu cầu.

Dòng sự kiện :

+ Dòng sự kiện chính: Use-case này bắt đầu khi một người sử dụng nhấn phím trên điện thoại.

 Hệ thống nhận tín hiệu DTMF

 Hệ thống kiểm tra tín hiệu nhận được, rồi truy xuất cơ sở dữ liệu với nội dung tương ứng

 Hệ thống chuyển nội dung truy xuất được thành dạng âm thanh tương ứng

 Hệ thống trả kết quả cho người dùng

+ Các dòng sự kiện khác: Hệ thống kiểm tra thời gian từ khi kết thúc một tập tin âm thanh đến lúc bắt được sự kiện nhấn phím. Nếu không thấy sự kiện nhấn phím xảy ra thì hệ thống sẽ tự động ngắt kết nối.

+ Các yêu cầu đặc biệt: Không có.

+ Trạng thái hệ thống trước khi thực hiện Use Case:

Người dùng đã kết nối thành công với hệ thống.

+ Trạng thái hệ thống sau khi thực hiện Use Case: Nếu Use Case thành công thì người sử dụng có thể nghe

Chương 4. Phân tích thiết kế và triển khai hệ thống qua ứng dụng minh họa (adsbygoogle = window.adsbygoogle || []).push({});

thông tin đã yêu cầu hoặc lời hướng dẫn và có thể tiếp tục thực hiện các thao tác khác.

+ Điểm mở rộng: Không có.

1.12.1.4 Tổ chức kịch bản dịch vụ

Hình 4.21 Sơ đồ tổ chức kịch bản ứng dụng

Chương 4. Phân tích thiết kế và triển khai hệ thống qua ứng dụng minh họa

Câu chào ban đầu: Xin chào mừng quý khách đến với dịch vụ cung cấp thông tin tỷ giá cổ phiếu và tin tức thị trường chứng khoán. Để nghe thông tin hiện tại của sàn giao dịch chứng khoán thành phố Hồ Chí Minh(HOSE) bấm phím 1. Để nghe thông tin hiện tại của sàn giao dịch chứng khoán Hà Nội(HASTC) bấm phím 2. Để nghe thông tin giá chứng khoán bấm phím 3.

 “Tính đến thời điểm hiện tại chỉ số VN-Index là 567.34 điểm, tăng (giảm) 25.41, điểm tương ứng 4.33%. Tổng khối lượng giao dịch toàn thị trường là 59,148,470. Tổng giá trị giao dịch toàn thị trường là 2,457.08 tỷ đồng”

 “Tính đến thời điểm hiện tại chỉ số HASTC-Index là 188.02 điểm, tăng (giảm) 11.36, điểm tương ứng 5.70%. Tổng khối lượng giao dịch toàn thị trường là 32,780,800. Tổng giá trị giao dịch toàn thị trường là 1,329.58 tỷ đồng”

 “Nhập mã chứng khoán cần tra cứu và kết thúc bằng phím #.”

 “Mã chứng khoán ACB có giá tham chiếu là 62000 đồng, giá trần là 48400 đồng, giá sàn là 42200 đồng, giá cao nhất là 45900 đồng, giá thấp nhất là 42100 đồng, giá khớp gần nhất là 43000 đồng, khối lượng 100 cổ phiếu.”

Ghi chú: chữ gạch dưới sẽ thay đổi giá trị

1.12.1.5 Giao diện

Chương 4. Phân tích thiết kế và triển khai hệ thống qua ứng dụng minh họa

Hình 4.22 Màn hình giao diện chính

Giải thích:

STT Loại control Diễn giải Ghi chú

1 SimpleButton Thoát khỏi ứng dụng thuộc component Control này

Devepress

2 SimpleButton Dừng cuộc gọi, ngắt kết nối -nt-

3 LabelControl Đồng hồ tính thời gian cuộc gọi

4 PictureBox Trạng thái cuộc gọi. Khi có cuộc gọi hình sẽ thay đổi (xem hình 4.7)

còn không trở về hình 4.4 -nt-

5 ApplicationMenu Chứa hai BarButtonItem(ngắt kết nối và thoát ứng dụng), xem hình

4.6 -nt-

6 BarButtonItem Tùy chọn người dùng tương tác với hệ thống bằng nhấn phím trên điện

thoại -nt-

7 BarButtonItem Tùy chọn người dùng tương tác với hệ thống bằng giọng nói -nt-

8 BarButtonItem Xem thông tin thiết bị được chọn có

phải là voice modem hay không

Chương 4. Phân tích thiết kế và triển khai hệ thống qua ứng dụng minh họa (adsbygoogle = window.adsbygoogle || []).push({});

(hình 4.8)

9 BarButtonItem Xem nhật ký cuộc gọi (hình 4.9) -nt-

10 BarButtonItem Xem thông tin đầy đủ về chỉ số chứng khoán và tỷ giá tất cả cổ phiếu

-nt-

11 BarStaticItem Xem hướng dẫn sử dụng hệ thống -nt-

12 BarStaticItem Xem thông tin nhóm (hình 4.11) -nt-

13 ListBoxControl Thể hiện các sự kiện mà người dùng tương tác với hệ thống từ khi kết nối được đến khi ngắt kết nối.

-nt-

14 BarStaticItem Thể hiện trạng thái đang cập nhật dữ liệu. -nt-

Bảng 3 Giải thích các điều khiển trên màn hình chính

Khi người sử dụng rê chuột vào các control 6, 7, 8, 9, 10 đều có các ghi chú hướng dẫn bên dưới. Ví dụ xem hình 4.5

Một số màn hình phụ:

Hình 4.23 Màn hình ghi chú trên giao diện chính

Hình 4.24 Màn hình khi nhấn chuột vào icon của màn hình chính

Chương 4. Phân tích thiết kế và triển khai hệ thống qua ứng dụng minh họa

Hình 4.25 Màn hình khi có cuộc gọi đến

Màn hình xem thông tin thiết bị:

Hình 4.26 Màn hình xem thông tin thiết bị

Chương 4. Phân tích thiết kế và triển khai hệ thống qua ứng dụng minh họa

Hình 4.27 Màn hình xem nhật ký cuộc gọi

Màn hình xem thông tin chứng khoán:

Chương 4. Phân tích thiết kế và triển khai hệ thống qua ứng dụng minh họa

Màn hình thông tin nhóm

Hình 4.29 Màn hình thông tin nhóm

1.12.2 Mô đun TTS

Mô đun TTS được kế thừa từ phiên bản cũ của nhóm “tiếng nói Phương Nam”. Ở phiên bản cũ, để đọc 1 câu hoặc nhiều hơn thì mất khoảng 10 giây. Sau đó, chúng tôi đã tìm hiểu và cải tiến. Hiện tại thì mất khoảng dưới 1 giây để đọc 1 câu hoặc nhiều hơn.

Kho dữ liệu âm thanh được kế thừa có định dạng tập tin âm thanh là 256Mb nhưng ứng dụng chúng tôi cần là tập tin âm thanh 128 Mb. Do đó, chúng tôi đã chuyển đổi tất cả các tập tin trong kho dữ liệu về dạng 128 Mb. Sau đó chúng tôi cũng đã hiệu chỉnh code cho phù hợp với định dạng âm thanh mới.

1.13 Cài đặt

Bước 1: Chạy tập tin cài đặt sẽ xuất hiện màn hình bên dưới, sau đó chọn nút next để tiếp tục

Chương 4. Phân tích thiết kế và triển khai hệ thống qua ứng dụng minh họa (adsbygoogle = window.adsbygoogle || []).push({});

Hình 4.30 Cài đặt bước 1

Bước 2: Tiếp theo là cửa sổ để cung cấp thông tin về bản quyền, chọn mục: “I accept the terms in the license agreement” sau đó chọn nút “Next”

Hình 4.31 Cài đặt bước2

Chương 4. Phân tích thiết kế và triển khai hệ thống qua ứng dụng minh họa

Hình 4.32 Cài đặt bước 3

Bước 4: Sau khi đã cung cấp đầy đủ thông tin, chọn nút “Next” sẽ xuất hiện mànhình bên dưới

Chương 4. Phân tích thiết kế và triển khai hệ thống qua ứng dụng minh họa

Bước 5: Chọn nút “Install” để tiến hành cài đặt, sau quá trình cài đặt, màn hình bên dưới cho biết là chương trình đã cài đặt thành công. Chọn “Finish” để hoàn tất việc cài đặt.

Chương 5. Tổng kết

Chương 4. TỔNG KẾT

1.14 Một số kết quả đạt được

Hệ thống trả lời tự động thông tin chứng khoán và tỷ giá cổ phiếu cho người dùng.

Hệ thống hoạt động tốt trong môi trường ít nhiễu âm (người dùng gọi từ nơi có ít tiếng ồn).

Tỷ lệ nhận dạng chính xác xấp xỉ 90%.

1.15 Khả năng phát triển của hệ thống

Hệ thống có thể được xem như là giao diện cho tương tác Người – Máy từ xa qua tiếng nói. Dễ dàng tích hợp, ghép nối với các cơ sở dữ liệu bất kỳ. Cơ sở dữ liệu được tự động cập nhật liên tục sử dụng ADO.NET.

Hệ thống có thể ứng dụng rộng rãi và dễ dàng phát triển thành các ứng dụng như:

 Tổng đài dịch vụ điện thoại.  Tổng đài chăm sóc khách hàng.

 Trung tâm chăm sóc, trợ giúp, tiếp nhận ý kiến, yêu cầu qua điện thoại.  Hệ thống giao dịch tự động qua điện thoại cho các Công ty Chứng khoán

 Hộp thư thoại.

 Hệ thống tra cứu tự động qua điện thoại như tra cứu tuyến xe buýt, giá vàng, tỷ số bóng đá, điểm thi đại học…

Hiện nay, chương trình chỉ mới đáp ứng được một đường truyền, tức là chỉ phục vụ được một người một lúc. Trong tương lai, chương trình có thể hỗ trợ thêm một số đường truyền nữa để đáp ứng nhu cầu người sử dụng trong các giờ cao điểm.

Nếu có kinh phí, có thể đăng ký dịch vụ cấp số điện thoại gọi tới với tổng đài, lúc đó có thể nhận được số điện thoại gọi tới giúp tăng thêm thông tin cho việc quản lý.

Phát triển ứng dụng trên với khả năng tương tác bằng giọng nói tự nhiên cho tất cả mọi người có thể sử dụng thay cho việc bấm phím trên điện thoại.

Chương 5. Tổng kết

1.16 Phạm vi và giới hạn

Do giới hạn về kinh phí và thời gian nên:

 Hệ thống chưa thu được số điện thoại của cuộc gọi tới.

 Hệ thống hiện chỉ đáp ứng được một đường truyền trong một khoảng thời gian(vì thiết bị sử dụng trong ứng dụng không phải là thiết bị chuyên dụng cho loại hệ thống, nó chỉ là một Modem quay số 56K có hỗ trợ âm thanh). Để xây dựng ứng dụng thực tế đòi hỏi mật độ truy cập cao phải sử dụng thiết bị chuyên dụng là card CTI mà có thể hổ trợ tối thiểu ba mươi cuộc gọi vào hệ thống cùng một lúc.

 Hệ thống nhận tín hiệu từ điện thoại di động không tốt. Do đường truyền tín hiệu không ổn định. (adsbygoogle = window.adsbygoogle || []).push({});

Tài liệu tham khảo

Tài liệu tham khảo

[1]. PaulTaylor, “Text-to-SpeechSynthesis”,University of Cambridge, 2006

[2]. Minghui Dong, Kim-Teng Lua, Haizhou Li, “A Unit Selection-based Speech Synthesis Approach for Mandarin Chinese”

[3]. http://www.microsoft.com/msj/1198/tapi3/tapi3.aspx

[4]. http://www.ibm.com/developerworks/websphere/zones/voice/proddoc.htm [5]. Bài báo cáo khóa luận năm 2009 do nhóm sinh viên Võ Quang Diệu Hà –

Nguyễn Minh Thuận thực hiện. [6]. Microsoft Platform SDK

Một phần của tài liệu nghiên cứu và xây dựng hệ thống voice server ứng dụng cho các dịch vụ cung cấp thông tin qua mạng điện thoại (Trang 64 - 80)