Phát triển ứng dụng trên máy tính PC

Một phần của tài liệu Phát triển ứng dụng video conference phía client dựa trên công nghệ realtime communication (Trang 41)

3 Xây dựng ứng dụng Video Conference

3.2Phát triển ứng dụng trên máy tính PC

3.2.1 Thiết kế chương trình.

3.2.1.1 Kiến trúc chương trình.

Hình 14 : Kiến trúc chương trình. Ý nghĩa của các thành phần :

o RTC Client API : tập hợp các hàm API được cung cấp dưới dạng mô hình COM. Các hàm này sẽ được xử lý ở mức hệ thống.

o Public Module : Chứa các hàm, hằng số cần thiết để tham chiếu trong quá trình hoạt động.

RTC Client API

Client Core Public Module

User Interface Form

Dialogs Dialogs Dialogs Application System User

o Client Core : thành phần này sẽ thực hiện tất cả các thao tác liên quan đến RTC Client như : khởi tạo, kết thúc, khai báo các thông số cần thiết về thiết bị…, nhận các thông điệp xử lý sự kiện từ RTC Client và chuyển lên để xử lý ở tầng giao diện như cập nhật các thông số cho người dùng…

o User Interface Form : Cửa sổ chính của chương trình, dùng để tương tác với người dùng. Kích hoạt, kết thúc quá trình sử dụng RTC Client. Nhận các thông điệp được chuyển lên từ Client Core và phân phối tới các thành phần tương ứng bên trên nó ( các hộp thoại ).

o Dialogs : Các hộp thoại dùng để trao đổi thông tin : hộp thoại đăng nhập, hiển thị danh sách bạn bè, hộp thoại nhắn tin ngắn, đối thoại video…

3.2.1.2 Các luồng chức năng chính.

Các luồng chức năng mô tả tiến trình xử lý của ứng dụng tương ứng với từng chức năng. a. Đăng nhập. Hình 15 :Luồng đăng nhập. b. Nhắn tin. Hình 16 : Luồng nhắn tin. Address Form Message Form Main Form Main Form Login Form Trực tiếp Gián tiếp

c. Đối thoại.

Hình 17 : Luồng đối thoại. d. Điều chỉnh thiết bị.

Hình 18 : Luồng điều chỉnh thiết bị. Audio Tuning Video Tuning Tuning Form Main Form Application Sharing Control Video Control Audio Control WhiteBoard Control Address Form Interact Form Main Form Trực tiếp Gián tiếp

e. Danh sách bạn bè. Hình 19 : Luồng danh sách bạn bè. f. Tìm kiếm. Hình 20 : Luồng tìm kiếm. 3.2.2 Các chức năng chủ yếu. 3.2.2.1 Giao diện chính.

Từ giao diện chính, ứng dụng cho phép đăng nhập, rời khỏi mạng, điều chỉnh thiết bị và xem thông số các trạng thái khác.

Hình 21 : Giao diện chính. Status Information Search Form Main Form BuddyList Form Main Form

Hình 22 : Giao diện chính (tiếp).

3.2.2.2 Kết nối ngang hàng.

Ở chế độ này, ứng dụng cho phép người dùng có thể kết nối trực tiếp khi biết địa chỉ IP của thành viên cần trao đổi. Quá trình đăng nhập (Hình 25) chỉ yêu cầu cung cấp tên. Sau khi đăng nhập, từ giao diện chính có thể thực hiện các chức năng như : nhắn tin, thiết lập đàm thoại truyền hình với một thành viên khác. Chức năng tra cứu địa chỉ không hoạt động ở chế độ này.

Hình 24 : Đăng nhập hệ thống ngang hàng.

Để thực hiện nhắn tin (Hình 26) hay trao đổi (Hình 27,29), ta cần cung cấp tên (hiển thị) và địa chỉ của thành viên đó (Hình 25).

Hình 26 : Nhắn tin.

Ở chức năng trao đổi, người dùng có thể chia sẻ ứng dụng (Hình 28) , sử dụng bảng trắng (Hình 31) để cung cấp thêm thông tin trao đổi.

Hình 27 : Màn hình trao đổi phía người gọi.

Hình 29 : Màn hình trao đổi phía người được gọi.

Hình 31 : Bảng trắng.

3.2.2.3 Kết nối Client – Server.

Ở chế độ Client – Server, ứng dụng cho phép thực hiện các chức năng bổ sung như xem danh sách các mối quan hệ, bạn bè, tìm kiếm, xem trạng thái online…Những thông tin này được lưu trên Server, do đó cần phải kết nối vào Server mới lấy được thông tin. SIP Server là một dịch vụ, do đó nó có thể tính phí dịch vụ hoặc miễn phí. Để truy cập được vào Server, người dùng cần đăng ký một tài khoản (gồm tên, mật khẩu) và sử dụng các thông số này trong các lần truy cập. Sau khi đăng nhập thành công, các chức năng khác như nhắn tin, trao đổi có thể thực hiện bình thường như chế độ kết nối ngang hàng.

Hình 32 : Đăng nhập hệ thống Client – Server.

3.3 Phát triển ứng dụng trên thiết bị cầm tay (Pocket PC). 3.3.1 Kiến trúc chương trình. 3.3.1 Kiến trúc chương trình.

Về kiến trúc của ứng dụng trên Pocket PC cũng tương tự với kiến trúc của ứng dụng trên PC (Hình 14), nhưng do tài nguyên hạn chế của Pocket PC ( bộ nhớ trong ít, các thiết bị ngoại vi chưa đầy đủ …) nên ứng dụng chỉ thực hiện được một phần các chức năng so với ứng dụng trên PC. Nó cũng cho phép truy cập theo hai chế độ : ngang hàng và client – server, nhắn tin. Chức năng trao đổi bị hạn chế, chỉ sử dụng được luồng audio, các thành phần còn lại như : hình ảnh, chia sẻ ứng dụng, bảng trắng sẽ được bổ sung dần trong quá trình phát triển tương ứng của Pocket PC.

3.3.2 Các luồng chức năng chính. a. Đăng nhập. a. Đăng nhập.

Hình 35 : Luồng đăng nhập trên Pocket PC. b. Nhắn tin.

Hình 36 : Luồng nhắn tin trên Pocket PC. Address Form Message Form Main Form Main Form Login Form Trực tiếp Gián tiếp

c. Đối thoại.

Hình 37 : Luồng trao đổi trên Pocket PC.

Việc triển khai ứng dụng trên Pocket PC có thể chuyển đổi dễ dàng từ ứng dụng trên PC vì tuy được sử dụng trên hai nền tảng phần cứng khác nhau nhưng chúng cùng sử dụng ngôn ngữ lập trình bậc cao trong một bộ công cụ phát triển ( Visual Studio ). Nhưng hiện nay do Microsoft chưa công bố rộng rãi thành phần phát triển RTC Client trên nền tảng Pocket PC, do đó trong giới hạn của đồ án, em chỉ xin nêu ra thiết kế cho ứng dụng trên nền tảng Pocket PC, việc thực thi sẽ là định hướng trong tương lai.

Audio Control Address Form Interact Form Main Form Trực tiếp Gián tiếp

4 Kết luận và hướng phát triển.

Phát triển hệ thống Video Conference toàn diện là một khối lượng công việc vô cùng lớn, đòi hỏi thời gian và công sức không nhỏ. Từ việc phát triển lý thuyết đến việc thực thi là cả một chặng đường dài. Trong khoảng thời gian thực hiện là 15 tuần, từ việc tìm hiểu cơ sở lý thuyết của hệ thống đến việc triển khai một thành phần trong hệ thống đó, chắc chắn công việc em đã thực hiện sẽ không tránh khỏi những thiếu sót.

Với mục tiêu phát triển một ứng dụng Video Conference phía Client dựa trên công nghệ Realtime Communication, kết quả của đề tài là một sản phẩm hoàn thiện, tuy nhiên nó cũng chứa các mặt mạnh và mặt yếu sau :

o Đã đáp ứng được các yêu cầu đề ra.

o Tầm hoạt động không hạn chế, có thể sử dụng được trong cả mạng LAN và Internet.

o Có thể kết nối tới bất kỳ hệ thống mở nào tuân theo chuẩn SIP.

o Cho phép tích hợp với các ứng dụng phần mềm lớn hơn ngay từ giai đoạn thiết kế, tránh được các lỗi tiềm ẩn.

o Các chức năng của ứng dụng chưa nhiều, mới chỉ cung cấp ở mức độ cơ sở.

o Chất lượng dịch vụ chưa đa dạng ( chỉ sử dụng một chuẩn nén âm thanh và hình ảnh ).

o Giao diện tương tác còn đơn điệu …

Việc phát triển các ứng dụng dựa trên công nghệ Realtime Communication cho ta nhiều lợi thế bởi đây là thành phần được tích hợp kèm với môi trường Windows, được triển khai ở cấp độ hệ thống trên tất cả các nền tảng Windows khác nhau (Windows dùng cho PC và Windows dùng cho Pocket PC), do đó dễ dàng tương thích được với nhiều loại thiết bị đa dạng. Điều này đồng nghĩa với việc các ứng dụng đó sẽ sớm được phổ biến.

Thế giới đang trong xu thế tiến tới một môi trường di động, do đó, việc chuyển các ứng dụng lên các thiết bị di dộng là một tất yếu. Với việc triển khai thành công ứng dụng trên PC, hướng phát triển tiếp theo của đề tài trong tương lai là triển khai hoàn thiện trên các thiết bị cầm tay Pocket PC và các máy tính bảng (Tablet PC), phát triển thành một hệ thống tích hợp bằng cách bổ xung thêm các dịch vụ gia tăng hấp dẫn cho ứng dụng….

Vì thời gian thực hiện đề tài là không nhiều, do đó các nội dung được trình bày trong báo cáo có thể chưa đầy đủ, em rất mong nhận được sự góp ý bổ sung của thầy cô và các bạn để đề tài được hoàn thiện hơn nữa.Em cũng xin chân thành cám ơn thầy hướng dẫn Bùi Thanh Phong đã giúp em hoàn thành đồ án này./.

Tài liệu tham khảo Tiếng Anh [1] Đặc tả giao thức SIP – RFC 2543 (1999), http://www.ietf.org/rfc/rfc2543.txt?number=2543. [2] Đặc tả giao thức SIP – RFC 3261 (2002), http://www.ietf.org/rfc/rfc3261.txt?number=3261. [3] Đặc tả giao thức SDP – RFC 2327 (1998), http://www.ietf.org/rfc/rfc2327.txt?number=2327.

[4] Mô hình Offer/Answer sử dụng giao thức SDP – RFC 3264 (2002), http://www.ietf.org/rfc/rfc3264.txt?number=3264.

[5] Đặc tả giao thức RTP – RFC 3550 (2003),

http://www.ietf.org/rfc/rfc3550.txt?number=3550.

[6] Đặc tả cấu trúc video và audio trong giao thức RTP – RFC 3551 (2003), http://www.ietf.org/rfc/rfc3551.txt?number=3551.

[7] IETF RFC Page, http://www.ietf.org/rfc.html.

[8] So sánh SIP và H.323, http://www.iptel.org/info/trends/sip.html.

[9] So sánh SIP và H.323, http://www.sipcenter.com/sip.nsf/html/SIP+and+H.323. [10] Microsoft Real„Time Communications: Protocols and Technologies (2003),

http://www.microsoft.com/technet/prodtechnol/winxppro/plan/rtcprot.mspx. [11] RTC Client API, http://msdn.microsoft.com/library/default.asp?url=/library/en„

us/rtcclnt/rtc/real_time_communications_rtc_client_start_page.asp. [12] Real„time Communications Architecture,

http://msdn.microsoft.com/library/default.asp?url=/library/en„ us/wcertc/html/cerefrtc_client_event_type.asp.

Một phần của tài liệu Phát triển ứng dụng video conference phía client dựa trên công nghệ realtime communication (Trang 41)