Xây dựng hệ thống Web Conference dựa trên nền tảng mã nguồn mở Bigbluebutton
Trang 1TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
Trang 2PHIẾU GIAO NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP
1 Thông tin về sinh viên
Họ và tên sinh viên: Đặng Tiến Lượng
Điện thoại liên lạc 0977748505 Email: luongbk@gmail.com
Lớp: KTMT - k51 Hệ đào tạo: Đại học chính quy
Đồ án tốt nghiệp được thực hiện tại: Công ty an ninh mạng BKAV
Thời gian làm ĐATN: Từ ngày 20/ 2 /2011 đến 27 / 5 /2011
2 Mục đích nội dung của ĐATN
Đồ án được thực hiện với mục đích xây dựng một hệ thống hội họp trực tuyến trênweb dựa trên hệ thống mã nguồn mở để áp dụng vào các cơ quan doanh ngiệp nước ta
3 Các nhiệm vụ cụ thể của ĐATN
Tìm hiểu đánh giá về hội ngị trực tuyến tại Việt Nam để đưa ra hệ thống hội nghị trên web phù hợp cho các DN trong nước
Tiến hành cài đặt mã nguồn mở, tìm hiểu cấu trúc của mã nguồn mở BBB
Tiến hành phát triển hệ thống cho phù hợp với hệ thống hội nghị trên web cho các
DN trong nước
Đưa ra định hướng phát triển cho hệ thống web conference do mình xây dựn
4 Lời cam đoan của sinh viên:
Tôi Đặng Tiến Lượng cam kết ĐATN là công trình nghiên cứu của bản thân tôi dưới sự hướng dẫn của Ths.Nguyễn Tử Quảng
Các kết quả nêu trong ĐATN là trung thực, không phải là sao chép toàn văn của bất kỳcông trình nào khác
Hà Nội, ngày 25 tháng 5 năm 2011
Hà Nội, ngày tháng năm
Giáo viên hướng dẫn
Ths.Nguyễn Tử Quảng
Trang 3LỜI CẢM ƠN
Lời đầu tiên em xin chân thành gửi lời cảm ơn sâu sắc tới các thầy cô giáo trongtrường Đại học Bách Khoa Hà Nội nói chung và các thầy cô giáo trong viện Công nghệthông tin và truyền thông, bộ môn Kỹ thuật máy tính nói riêng đã hết lòng giảng dạy,truyền đạt cho em những kiến thức và kinh nghiệm trong suốt 5 năm học vừa qua
Đặc biệt em xin bày tỏ lòng kính trọng và biết ơn tới thầy giáo Nguyễn Tử Quảng,thầy đã tận tình giúp đỡ, trực tiếp chỉ bảo và hướng dẫn em thực hiện đồ án này.Trong quátrình làm việc với thầy, em không những tiếp thu thêm nhiều kiến thức bổ ích mà còn họcđược tinh thần làm việc, thái độ nghiên cứu khoa học nghiêm túc, say mê, hiệu quả, đây lànhững kinh nghiệm quý báu cho em trong quá trình học tập và công tác sau này
Đồng thời em cũng xin gửi lời cám ơn chân thành tới tập thể các anh, chị và bạn bèđang làm việc tại Công ty An Ninh Mạng BKAV đã nhiệt tình giúp đỡ em trong suốt thờigian thực tập và làm đồ án tại công ty Đặc biệt, với anh Nguyễn Tử Hoàng, người luôn đểtâm chỉ bảo và dẫn dắt em trong suốt thời gian gần một năm thực tập vừa qua
Cuối cùng em xin ngỏ lời cảm ơn tới những người bạn đã gắn bó với em trong suốtthời gian em học tập tại trường đại học Bách Khoa Hà Nội Những người đã luôn ở bên vàsẵn sàng giúp đỡ em bằng tất cả sự nhiệt tình của mình
Em xin chân thành cảm ơn.
Hà Nội, ngày 27/05/2011
Sinh viên
Đặng Tiến Lượng
Trang 4Mục Lục
Contents
PHIẾU GIAO NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP 2
DANH MỤC HÌNH VẼ 6
DANH MỤC BẢNG 7
TÓM TẮT NỘI DUNG ĐỒ ÁN TỐT NGHIỆP 8
ABSTRACT OF THESIS 9
DANH SÁCH VIẾT TẮT VÀ THUẬT NGỮ 10
CHƯƠNG 1 : ĐẶT VẤN ĐỀ 11
1.1 Bối cảnh chung 11
1.2 Nhiệm vụ đề tài 11
1.2.1 Mục đích 11
1.2.2 Nhiệm vụ của đề tài 12
1.3 Kết chương 12
CHƯƠNG 2 NỘI DUNG TÌM HIỂU 13
2 1 Khái niệm về Web Conference và ứng dụng 13
2.2 Phân loại Web Conference 13
2.2.1 Bảng so sánh các hệ thống Web Conference trên thế giới 13
2.2.2 Một số hệ thống mã nguồn mở tiểu biểu 16
2.2.3 Đánh giá một số hệ thống có thể sử dụng và lựa chọn giải pháp 16
2.3 Mã nguồn mở Bigbluebutton 17
2.3.1 Giới thiệu 17
2.3.2 Lịch sử 17
2.3.3 Các chức năng chính của BBB 18
2.3.4 Kiến trúc của BBB 22
2.3.5 Đánh giá cụ thể về BBB 27
2.4 Tìm hiểu về Grails 28
2.4.1 Sơ lược về Grails 28
2.4.2 Vai trò của grails trong đồ án 30
2.5 Kết chương 30
Trang 5CHƯƠNG 3 NỘI DUNG THỰC HIỆN 31
3 1 Phân tích các yêu cầu của hệ thống Emeeting 31
3.1.1 Giới thiệu Emeeting 31
3.2.2 Đối tượng mà hệ thống hướng tới 31
3.1.3 Yêu cầu phần cứng 32
3.1.4 Yêu cầu về chức năng của hệ thống 32
3.1.5 Mô hình thiết kế hệ thống 36
3.2 Phân tích chi tiết thiết kế phần web của hệ thống Emeeting 38
3.2.1 Đặc tả các chức năng phần quản trị hệ thống emeeting 38
3.2.2 Đặc tả chi tiết một số chức năng của phần Web 41
3.2.3 Hiện thực hóa các một số use case phần Web 49
3.2.4 Bảng cơ sở dữ liệu 54
3.3 Cài đặt và phát triển phần Web của hệ thống Emeeting 60
3.3.1 Hệ thống eMeeting được xây dựng trên các công cụ và môi trường sau: 60
3.3.2 Cài đặt BBB 60
3.3.3 Phát triển phần quản lý hệ thống (phần Web) 62
-Xây dựng chức năng quản trị các cuộc họp của người sử dụng 68
3.4 Kết luận chương 68
CHƯƠNG 4 KẾT LUẬN 69
4.1 Kết luận 69
4.2 Hướng phát triển 70
TÀI LIỆU THAM KHẢO 71
Trang 6DANH MỤC HÌNH VẼ
Hình 2-1 : Vào phòng họp 19
Hình 2- 2: Tạo phòng họp 19
Hình 2-3 : Giao diện phòng họp 20
Hình 2-4 : kiến trúc của BBB 23
Hình 2-5 : Kiến trúc Grails 29
Hình 3-1 : eMeeting trong mạng Intranet 37
Hình 3-2 : eMeeting ngoài mạng Internet 37
Hình 3-3 : Use case của hệ thống 39
Hình 3-4 : Giao diện quản lý user 42
Hình 3-5 : Giao diện quản lý phòng họp 43
Hình 3-6 :Giao diện quản lý cuộc họp 44
Hình 3-7 : Giao diện quản lý tìa nguyên 45
Hình 3-8 : Giao diện quản lý các bản ghi 45
Hình 3-9 : Giao diện tạo phòng họp 47
Hình 3-10 : Giao diện quản lý tài nguyên phía người dùng 48
Hình 3-11 : Biểu đồ tuần tự Login 49
Hình 3-12 :Biểu đồ tuần tự thay đổi thông tin tài khoản 49
Hình 3-13 : Biểu đồ tuần tự tạo phòng họp 50
Hình 3-14 :Biểu đồ tuần tự khi được mời vào họp 50
Hình 3-15 :Biểu đồ tuần tự tham gia vào phòng họp mà không được mời 51
Hình 3-16 :Biểu đồ tuần tự khi khách tham gia phòng họp 51
Hình 3-17 :Biểu đồ tuần tự đăng ký tài khoản 52
Hình 3-18 :Biểu đồ tuần tự tìm kiếm 52
Hình 3-19 :Biểu đò tuần tự thêm đối tượng vào cơ sở dữ liệu 53
Hình 3-20 :Biểu đò tuần tự xóa 53
Hình 3-21 :bảng cơ sở dữ liệu của hệ thống 54
Hình 3-22 :Giao diện chính admin 62
Hình 3-23 :Quản trị user 63
Hình 3-24 :Quản trị chức vụ 63
Hình 3-25 :Thông tin chi tiết phòng ban 64
Hình 3-26 :quản trị ngôn ngữ hệ thống 64
Hình 3-27 :Giao diện đăng nhập 65
Hình 3-28 :Đăng ký tài khoản 66
Hình 3-29 :Giao diện chính của user 66
Hình 3-30 :Quản lý tài nguyên 67
Hình 3-31 :Tạo một phòng họp mới 67
Hình 3-32 : Tham gia vào một phòng họp 68
Hình 3-33:Quản lý cuộc họp 68
Trang 7DANH MỤC BẢNG
Bảng 1-1 Bảng so sánh các hệ thống Web Conference trên thế giới 15
Bảng 3-1 : Các module chính 38
Bảng 3-2 :Danh sách các dịch vụ của particiant 40
Bảng 3-3 : Danh sách các actor 40
Bảng 3-4 :Danh sách các usecase cho admin 40
Bảng 3-5 : Danh sách các use case cho người dùng 41
Bảng 3-6 :Bảng chứa thông tin tài khoản 55
Bảng 3-7 :Bảng chứa thông tin phòng ban đơn vị 55
Bảng 3-8 : Bảng chứa thông tin chức vụ 56
Bảng 3-9 : Bảng chứa thông tin về tài nguyên 56
Bảng 3-10 :Bảng mối quan hệ Resource_User 57
Bảng 3-11 : Bảng chứa thông tin các bản ghi cuộc họp 57
Bảng 3-12: Bảng mối quan hệ Meetings_Resource 57
Bảng 3-13 :Bảng chứa thông tin các phòng họp cố định 58
Bảng 3-14 :Bảng mối quan hệ User_Meetings 58
Bảng 3-15:Bảng chứa các module phần quản trị 59
Bảng 3-16 : Bảng chưa thông tin đến cuộc họp 59
Bảng 3- 17 : Bảng chứa thông tin cài đặt cho phòng họp 60
Bảng 3-18 : Bảng ngôn ngữ 60
Trang 8TÓM TẮT NỘI DUNG ĐỒ ÁN TỐT NGHIỆP
Nội dung đồ án tốt nghiệp bao gồm 4 chương :
Chương 1-Đặt vấn đề :
Nêu bối cảnh chung của đề tài
Chỉ ra mục đích và nhiệm vụ của đề tài cần thực hiện
Chương 2- Nội dung tìm hiểu:
Nắm được cái khái niệm và tìm hiểu các hệ thống Web Conference trên thếgiới từ đó đưa ra so sánh đánh giá và quyết định chọn mã nguồn mở BBB để pháttriển
Tổng quan về mã nguồn mở Bigbluebutton, các chức năng, kiến trúc tổngquát cuả Bigbluebutton
Tìm hiểu về Grails , framework sử dụng chính trong đồ án
Chương 3-Nội dung thực hiện:
Phân tích chi tiết các yêu cầu chức năng, và lược đồ triển khai
Các kết quả đã đạt được, tự đánh giá công việc đã làm
Định hướng phát triển cho hệ thống
Trang 9ABSTRACT OF THESIS
The content includes 4 chapters:
Chapter 1- Introduction:
Circumstances of project
Purpose and task of project
Chapter 2- Content studied:
Introducing Video Conference, suggesting Web Conference, studying andevaluating Web conference systems
Overview of Bigbluebutton, its functions, general structure
Learn about Grails, the framework used in the project
Chapter 3- Content implementation:
Introducing WebConference system, the functional requirements, andWebConference deploying diagram
Specifying and designing the system’s new functions, designing database indetails
Implemented works, results (images), development and installation
Chapter 4 – Conclusions
The results have been achieved, self-assessment of work completed
Orientation for system development
Trang 10DANH SÁCH VIẾT TẮT VÀ THUẬT NGỮ
phát triển tạo nội dung HTML, XML hay một số định dạng khác của trang web một cách năng động, trong khi hồi âm yêu cầu của trình khách
EUPS End User Protocol Suite
HTTP Hyper Text Transfering Protocol
WMI Web Meeting Infrastructure: cơ sở hạ tầng hội nghị trên web API Appilcation Program Interface
P2P Point to point
RMTP Reliable Multicast Transport Protocol
Trang 11CHƯƠNG 1 : ĐẶT VẤN ĐỀ
1.1 Bối cảnh chung
Ngày nay, với sức mạnh không ngừng gia tăng và dường như không thể thaythế của Internet các ứng dụng công nghệ thông tin đã có những bước tiến bộ vượtbậc, với những thay đổi tích cực, liên tục về tốc độ đường truyền, khả năng kết nối.Internet là sự lựa chọn thông minh trong việc giải quyết các vấn đề công nghệ Xuhướng kết nối Internet hiện diện khắp mọi nơi với tỷ lệ máy kết nối mạng ngày càngcao đang mang lại một môi trường kết nối không biên giới cho mọi cá nhân và tổchức
Chính vì vậy, hầu hết các ứng dụng công nghệ thông tin ngày nay đều thôngqua sức mạnh Internet nhằm mang lại lợi ích cao nhất cho người sử dụng Từ đó cácphần mềm mới với ý tưởng tự coi mình như những dịch vụ cung cấp trên môitrường Internet ra đời được gọi là dịch vụ phầm mềm trực tuyến (Online Service).Các phần mềm trực tuyến phát huy thế mạnh kết nối mọi nơi của Internet và đặcbiệt không đòi hỏi đầu tư như về cơ sở hạ tầng, máy chủ ngoại trừ việc trang bị máytính cho người dùng cá nhân Để ứng dụng các dịch vụ này doanh nghiệp khôngphải đầu tư hệ thống máy chủ, hạ tầng riêng, dễ dàng mở rộng theo nhu cầu củatừng doanh nghiệp tại từng thời điểm, do đó giảm chi phí duy trì hệ thống, tối ưuquy mô, dễ dàng cập nhật tính năng mới nhất của phầm mềm từ nhà cung cấp dịchvụ
Hội nghị qua Web(Web conference) là một trong những dịch vụ trên Internetthể hiện rõ nhất các ưu điểm của dịch vụ phầm mềm trực tuyến Cùng với sự pháttriển vượt bậc của nền tảng Web hiện nay, Hội nghị qua Web được coi là một trongnhững phương thức liên lạc tiết kiệm chi phí nhất Chỉ thông qua một website hoặcchương trình phần mềm như NetMeeting, người sử dụng có thể trao đổi công việctrực tuyến theo thời gian thực Tiện ích lớn nhất của phương pháp này là có thể chia
sẻ tài liệu và trình bày với một nhóm người ở xa, có thể thảo luận ở mức độ phứctạp hơn
Mặt khác Web Conference còn hấp dẫn bởi ưu thế tiết kiệm chi phí và lắp đặt
dễ dàng Bởi vậy, các nhà khai thác viễn thông sẽ dễ dàng triển khai Hội nghị quaWeb cùng với các dịch vụ doanh nghiệp đang cung cấp hiện thời
Việc nhiên liệu và chi phí đi lại tốn kém của họp thông thường đã làm cho hộinghị qua web trở thành một dịch vụ giá trị gia tăng hấp dẫn, đặc biệt là đối với cácnhà khai thác viễn thông đang gặp khó khăn trong các giải pháp hội nghị truyềnhình và thoại lạc hậu
1.2 Nhiệm vụ đề tài
1.2.1 Mục đích
Mục tiêu của đề tài là tạo ra môt sản phẩm phần mềm trên nền Web cung cấpcho người dùng , doanh nghiệp một hệ thống hội nghị trực tuyến (WebConference)nhằm giảm chi phí đầu tư, phục vụ tốt với một doanh nghiệp lớn và đáp ứng nhucầu đa dạng của các doanh nghiệp cũng như người dùng Với hệ thống này, cácdoanh nghiệp có thể tiến hành các cuộc họp với đối tác ở khắp mọi nơi trên thế giới,với đầy đủ các chức năng cho phép nguời sử dụng có thể chia sẻ hình ảnh các file
Trang 12dữ liệu và màn hình máy tính giữa các bên Chức năng này đặc biệt hữu ích khidoanh nghiệp muốn trình chiếu một chương trình gì đó hoặc mở các file trình diễndạng PowerPoint để giới thiệu sản phẩm, trình bày phương án, kế hoạch và báo cáovới đối tác ở xa.
1.2.2 Nhiệm vụ của đề tài
Nội dung đề tài bao gồm:
Tìm hiểu cấu trúc và các công nghệ của Bigbluebutton
Làm quen với hệ điều hành mã nguồn mở : Ubuntu 8.04 TLS
Làm quen với các ngôn ngữ lập trình : groovy, gsp, javascrip
Làm quen với công cụ lập trình : netbean
Làm quen với các công nghệ : GSP, Grails framework
Xây dựng trang người dùng để có thể tham gia vào cuộc họp, đặt họp, mờihọp và quản lý các thông tin liên quan đên cuộc họp
1.3 Kết chương
Như vậy ở chương một tôi đã chỉ ra nhiệm vụ của đề tài, chỉ ra những gì cầnđạt được trong đồ án Cụ thể nội dung mà em đã thực nhiện được trong đồ án sẽđược đề cập trong những chương tiếp theo
Trang 13CHƯƠNG 2 NỘI DUNG TÌM HIỂU
2 1 Khái niệm về Web Conference và ứng dụng
Web Conference, hay còn gọi là hội nghị trên web là một hình thức trao đổithông tin trực tiếp giữa các thành viên ở xa nhau (có thể là từ phòng này đến phòngkhác trong một tòa nhà, hay là từ quốc gia này đến quốc gia khác) Khi hội nghị trên web diễn ra các thành viên có thể trao đổi thoại, hình ảnh,
và dữ liệu (voice, video, data) Các thành viên có thể nói chuyện với nhau, nhìn thấynhau, sử dụng ngôn ngữ cơ thể, và đặc biệt, có thể chia sẻ dữ liệu, cho phép cùngtrao đổi, thảo luận về một file dữ liệu nào đó (ppt, excel, word, pdf, )
Hội nghị trên web được ứng dụng rộng rãi cho hội nghị, hội thảo, họp giao ban, đào tạo trực tuyến của ngành giáo dục nói riêng và các bộ ngành, đơn vị, cá nhân khác, giúp thúc đẩy sự hợp tác, nghiên cứu phát triển Hiệu quả ứng dụng của hội nghị trên web càng ngày càng đem lại lợi ích hiệu quả kinh tế rõ rệt, bảo đảm bảo nhiều yếu tố lợi ích cho xã hội ,đặc biết là cho các doanh ngiệp trong nươc hiện nay
Hội nghị qua Web là một dịch vụ hấp dẫn nhất, hỗ trợ nhiều tính năng tiên tiến, không chỉ giúp các DN tiết kiệm chi phí hội nghị mà còn nâng cao hiệu quả hoạt động, đặc biệt là trong giai đoạn suy thoái kinh tế hiện nay Các ứng dụng mà hội nghị web có thể mang lại cho các DN là :
Giảm chi phí đi lại, nâng cao hiệu quả hoạt động
Nâng cao tính cơ động cho các cuộc họp Người muốn tham gia các cuộc họp
có thể ngồi ở bất cứ đâu
Việc thêm một điểm họp mới đơn giản thuận tiện
Cho phép nhiều cuộc họp diễn ra cùng một thời điểm
Nâng cao quá trình kinh doanh bằng tối ưu các cuộc họp
Tăng cường các mối quan hệ với khách hàng
Cho phép phối hợp nhanh và hiệu quả đối với các văn phòng được phân bổ theo vùng địa lý
Tăng cường hiệu quả đối với dự án
Chi phí thấp nhưng vẫn đạt hiệu quả cao
2.2 Phân loại Web Conference
2.2.1 Bảng so sánh các hệ thống Web Conference trên thế giới
Sau đây là bảng so sánh của các hệ thống Web Conference phổ biến trên thế giới
Trang 14Program Licen se acity Cap
Li nu
x M ac O S X
Micr osoft Win dows
Aud io Sup port Qualit Video y
Vid eo Sup port
Cha t Sup port
Des kto p Sha ring Sup port
Upl oad PP T
Upl oad PD F
bro wsin g
Co-Mobi le Devi ce Supp ort
Bre ak- Out Sess ions
Sec urit y Acc ess
Encrypt ed commu nication
ICU Live! Proprietary 36 X X ✓ ✓ VGA,HQ ✓ ✓ ✓ ✓ ✓ ✓ X ✓ ✓ ✓
iLinc Proprietary
Up
to 1,00 0
MegaMee
ting.com Proprietary 250+ ✓ ✓ ✓ ✓
VGA, HQ,H D
16 Fee
Comi ng
Trang 15Netviewer Proprietary 1-100 X X ✓ ✓ VGA ✓ ✓ ✓ ? ? ? X ? ✓ X
VenueGen Proprietary 1-500 X X ✓ ✓ [1] VGA ✓ ✓ ✓ [2] ✓ ✓ ✓ [3] X X X X
Program Licen se acity Cap
Li nu x
M ac O S X
Micr osoft Win dows
Aud io Sup port Qualit Video y
Vid eo Sup port
Cha t Sup port
Des kto p Sha ring Sup port
Upl oad PP T
Upl oad PD F
bro wsin g
Co-Mobi le Devi ce Supp ort
Bre ak- Out Sess ions
Sec urit y Acc ess
Encrypt ed commu nication
Bảng 1-1 Bảng so sánh các hệ thống Web Conference trên thế giới
Từ biểu đồ trên ta thấy rằng trên thị trường thế giới có rất nhiều sản phẩmhội họp trên web nhưng đa phần các hệ thống tốt đều là bản thương mại hóa, cácbản này thường đầy đủ các chức năng nhưng giá thành không hề rẻ chút nào, khôngphù hợp với thực tế cho các doanh nghiệp ở Việt Nam
2.2.2 Một số hệ thống mã nguồn mở tiểu biểu
a) Bigbluebutton
BBB là phần mềm ứng dụng mã nguồn mở được xây dựng với mụcđích phục vụ các cuộc hội thảo trực tuyến cung cấp các chức năng sau :
Trang 16 Audio/video: các thành viên có thể nhìn thấy nhau và trò chuyện vớinhau
Computer Screen: cho phép show Desktop
Trình chiếu powerpoint
WhiteBoard: cho phép giảng dạy hiện thị, vẽ lên bảng
Chat group, chat public và private
b) OpenMeeting
OpenMeeting là 1 Open Source viết bằng JSP là một trong những nhàcung cấp dịch vụ hội nghị truyền hình trên thế giới
Các đặc điểm của OpenMeeting:
Share Your Sreen
2.2.3 Đánh giá một số hệ thống có thể sử dụng và lựa chọn giải pháp
- GoToMeeting: Dịch vụ hội nghị cho những nhóm nhỏ với tính năng đơn
giản và giá cả tương đối rẻ, cung cấp chức năng chia sẻ màn hình, công cụ vẽ, kiểmsoát màn hình, chia sẻ ứng dụng
- WebEx MeetMeNow: Một nhánh phần mềm của WebEx, cung cấp dịch vụ
hội nghị cỡ lớn với các chức năng: chia sẻ màn hình, công cụ vẽ, kiểm soát hợpđồng, hội nghị đàm thoại trực tuyến, và tùy chọn chia sẻ webcam Dịch vụ này thuphí theo tháng, và miễn phí 14 ngày dùng thử
- MegaMeeting: cung cấp một loạt những dịch vụ hội nghị trực tuyến, từ mức
độ cá nhân đến doanh nghiệp Khách tham gia hội nghị chỉ cần trình duyệt web vớiFlash trên hệ điều hành Windows, Macintosh, hoặc Linux, người trình bày phải sửdụng Windows
- BBB Open Source: mã nguồn mở, hoàn toàn miễn phí với các chức năng
hội nghị như: VoIP, chia sẻ màn hình, text chat, công cụ vẽ Hệ thống server phục
vụ cho hội nghị có thể cài trên Linux Khách tham gia hội nghị chỉ cần trình duyệtweb với Flash trên hệ điều hành Windows, Macintosh, hoặc Linux, người trình bàysử dụng Windows nếu cần chức năng chia sẻ màn hình
Các hệ thống thương mại có thu phí đòi hỏi chi phí cao, có hệ thống quản lýngười dùng riêng, không phù hợp để xây dựng một hệ thống họp trực tuyến với chiphí thấp
BBB Open Source cho phép cài đặt server với toàn bộ các thư viện mã nguồn
mở sẵn có, đồng thời người dùng chỉ cần trình duyệt cài Flash Player để tham giavào hội nghị (hiện tại có 97% máy tính được cài Flash Player) Như vậy, BBB chỉ
Trang 17yêu cầu một server đủ mạnh để tổ chức các buổi hội nghị trực tuyến, và không đòihỏi nhiều ở phía người dùng.
Trước đây nhắc đến Web conference không thể nhắc đến hệ thống Dimdim
đã quá nổi tiếng với cộng đồng mã nguồn mở, được nhiều người biết đến và pháttriển, nhưng từ khi Dimdim chuyển sang thương mại hóa có thể thấy còn lại BBB là
có nhiều nét tương dồng với Dimdim, đặc biệt là sử dụng Red5 làm server nền tảng
để streaming data
Từ bảng so sánh các hệ thống Web conference và một vài đánh giá so sánh ởtrên em thấy phù hợp với thực tế hiện nay có thể thấy nguồn mở BBB hoàn toàn cóthể đáp ứng được các yêu cầu về một hội nghị truyền hình trực tuyến chất lượng tốt,chi phí thấp và có khả năng phát triển tốt, công cụ có khả năng hỗ trợ hiệu quả choviệc quản lý các kỹ năng công nghệ thông tin Như vậy, trọng tâm của đồ án này đãđược xác định là phát triển một hệ thống hội nghị truyền hình qua web dựa trênnguồn mở BBB Từ những cơ sở trên em chọn BBB để tìm hiểu cụ thể và phát triển,
em sẽ đi tìm hiểu về chức năng , kiến trúc có trong nguồn mở BBB để có cái nhìn rõhơn về BBB
2.3 Mã nguồn mở Bigbluebutton
2.3.1 Giới thiệu
BBB là một Web Conference mã nguồn mở, cho phép các trường học hoặccác công ty tạo một lớp học từ xa cho các sinh viên, nhân viên, hoặc tổ chức nhữngcuộc họp thông qua giao diện web BBB hỗ trợ chia sẽ được nhiều loại tài liệu như:PDF, PPT, DOC, XLS, office 2007, office 2010, *JPG…ngoài ra BBB còn có thểShare desktop, Whiteboard, Chat, truyền Videos thông qua Webcam, camera
BBB sử dụng hơn mười thành phần mã nguồn mở như : asterisk, red5, apache MQ,tomcat 6, pdf2swf, nginx, open office, mysql, grails, ghostscript, xuggler, andimagemagick
2.3.2 Lịch sử
Trong năm 2007 BBB được phát triển tại Trường đại học Carleton bởi khoaTechnology Innovation và Management program, phiên bản đầu tiên được viết bởiRichard Alam với tên gọi ban đầu là dự án “Blindside”
Trong năm 2009 Richard Alam , Denis Zgonjanin và Fred Dixon đã tải lênGoogle Code phần source code của BBB và thành lập Blindside Networks, mộtcông ty theo đuổi mô hình kinh doanh truyền thông mã nguồn mở và dịch vụ chocộng đồng BBB
Trong năm 2010 BBB đã được phát triển thêm phần Whiteboard để chú thíchcho các phiên trình bày Jeremy Thomerson phát triển thêm một giao diện lập trìnhứng dụng (API) cho BBB, sau đó nó được sử dụng để tích hợp với Sakai,
Trang 18WordPress, Moodle, Joomla, Redmine, Drupal, Tiki Wiki CMS Groupware, vàFoswiki.Google chấp nhận BBB và đưa vào chương trình ”The 2010 GoogleSummer of Code program” để khuyến khích sự đóng góp của người khác trên cộngđồng mã nguồn mở.
2.3.3 Các chức năng chính của BBB
Theo phiên bản mới nhất hiện nay là BBB0.71a thì BBB hỗ trợ âm thanhnhiều hơn chia sẻ được video, chia sẻ Chat public hoặc Chat private, chia sẻDesktop, tích hợp VoIP sử dụng Asterisk hoặc FreeSWITH, hỗ trợ office củaMicrosoft sử dụng OpenOffice
Khi tham gia các hội nghị thoại thì người xem có thể phát biểu ý kiến, tròchuyện với người khác Nếu là chủ phòng họp thì có thể bật,tắt một số ứng dụngcủa những người khác , hoặc đẩy bất kỳ người nào ra khỏi phiên thoại, hoặc có thểcho người khác tải lên các trang trình bày và kiểm soát các presention
Mặc dù là mã nguồn mở, khách hàng phụ thuộc vào trình duyệt web cóplugin của Adobe Flash
Sau đây là các chức năng chính của BBB: Khi cài đặt xong giao diện củaBBB rất đơn giản, chưa có các chức năng về người dùng , quản lý người dùng màchỉ có thể tham gia vào một phòng họp
Trang 19b Tạo một phong họp:
Tạo 1 phòng gồm các chức năng đều là mặc định :
Hình 2- 2: Tạo phòng họp
c.Tham gia vào phòng họp, gồm các chức năng
Khi tham gia vào phòng họp giao diện của phòng họp
Hình 2-3 : Giao diện phòng họp
Trình chiếu văn bản (powerpoint, pdf, ppt, pptx)
Trang 20o Cho phép trình chiếu các loại file văn bản khác nhau, bao gồm file ảnh,doc, pdf…
o Có dấu chấm đỏ thể hiện người thuyết trình đang chỉ đến đâu
o Có chức năng cho phép gạch chân, viết ghi chú.,
o Người trình chiếu có thể cho phép hoặc không cho phép người dùngtrong phòng comment vào bài present, xóa tất cả comment của ngườidùng đã viết trước đó
o Người dùng có thể zoomIn, Zoom Out
Chia sẻ màn hình (PC desktops)
o Cho phép người dùng comment chú thích vào giống như trình chiếuvăn bản
o Có thể chia sẻ toàn bộ màn hình hoặc một phần màn hình
Chia sẻ bảng trắng (share Whiteboards)
o Có các công cụ để vẽ, tẩy xóa, phân biệt người dùng thông qua màucủa mỗi người dùng có trong list
o Chủ phòng họp có quyền cấp hay hủy quyền share Whiteboards củangười dùng
Chia sẻ audio
o Xây dụng trên VoIP mics và conferencing
o Cho phép các bên có khả năng nói, nghe thấy tiếng của nhau
o Có các chức năng tắt âm của từng thành viên trong hệ thống
o Chức năng cấp quyền sử dụng audio của chủ phòng họp cho các ngườidùng khác có trong phòng
Chia sẻ video
o Dùng web cam để chia sẻ hình ảnh
o Chức năng xem video của 1 người dùng khác
o Chức năng tạm dừng, minimize cửa sổ video của chủ phòng, hoặcngười trình chiếu present
o Chủ phòng có thể cấp quyền sử dụng video cho các người dùng khác
Public chat, group chat
o Các thành viên được quyền tham gia chát cùng nhau
Private chat
o Chat private giữa 2 người dùng
o Có thể resize cửa sổ chat
o Có chức năng thông báo cho người dùng khác khi có tin nhắnđến
d, Mô tả các chức năng của các thành viên tham dự bên trong phòng họp
Khi vào trong phòng họp của BBB, quyền của người sử dụng được phân theo
3 cấp: Viewer, presenter và moderator
Viewer : Là người dùng, không có quyền chính trong các cuộc họp, với chứcnăng có thể nghe, xem trò chuyện với các thành viên trong cuộc họp, xinquyền presenter trong cuộc họp
Presenter : Có các chức năng như Viewer ,ngoài ra còn có thể trình chiếu vănbản và chia sẻ Desktop
Trang 21 Moderator : Có tất cả chức năng trong phòng họp, và còn thêm quyền điềukhiển các cuộc họp
Cụ thể về các tính năng của các cấp :
Viewer:
Giơ tay xin quyền phát biểu
Trên danh sách các người tham gia
phòng họp, bạn có thể nhìn thấy tất
các thành viên tham,khi thành viên
có dấu hiệu giơ tay để lấy sự chú ý của
nguời dùng khác,và xin quyền trình bày
Xem tất cả các người tham gia
Cửa sổ Voice hiện tất cả người dùnghiện đang kết nối với hội nghị, hoặcđược gọi điện trực tiếp hoặc bằng cáchsử dụng gọi voice qua IP client
Xem bài thuyết trình
Trên bảng thuyết
trình, người sử dụng
có thể phóng to thu
nhỏ bài thuyết trình của presenter thông
qua slide điều hướng ở hình vẽ trên.
Public và Private Chat
Cửa sổ chat cho người dùng
chát nhóm hoặc chát với từng
người trong phòng họp
Xem con trỏ của presenter
Cùng trong với cửa sổ trìnhdiễn người dùng có thể nhìnthấy presenter đang trình bàychỉ vào đâu thông qua chấm đỏ
là di chuột của presenter.
Nhìn các thành viên khác qua webcam
Chia sẻ video qua web bằngcách sử dụng một webcam tíchhợp bên ngoài, nhiều ngườitham gia cùng có thể chia sẻwebcam
Presenter
Một số chức năng của presenter:
Chỉ thị người presenter
Trên bảng user, ai có biểu
tượng như hình vẽ là người có
quyền trình bày
Tắt tiếng hoặc chuyển người khác
Người dùng có thể tắt tiếng trongcuộc họp, hoặc có thể chuyểnquyền nói cho người khác bằng các nhấnvào tên của họ rồi nhấn nút eject
Chia sẻ Desktop
Presenter có khả năng chia sẻ màn
hình với các tài khoản khác trong
Chia sẻ tài liệu PDF hoặc office
Presenter có thể uploadfile PDF hoặc các file
Trang 22cuộc họp, bạn có thể lựa chọn chia sẻ
toàn màn hình hoặc một phần màn hình office lên để chia sẻ, có thể up được nhiềufile để thay đổi các file trình chiếu
Moderator
Một số chức năng thêm của moderator :
Điều khiển presenter
Sơ đồ kiến trúc của BBB:
Hình 2-4 : kiến trúc của BBB
Trang 23Giải thích các thành phần trong kiến trúc :
1 : Nginx : nginx proxies bbb-web and bbb-app s to support to RTMPT (RTMPtunneling) Server out the bbb-client
2 : Grails : là một framework của java có tác dụng tạo ra các cuộc họp và sắp xếpchúng, là nơi để vào hoặc ra khỏi phòng họp
3 : Swftools : Chịu trách nhiệm biến đổi file PDF presentation slides thành flash
4 : Ghostscript- imagemagick : Cũng chuyển PDF sang Flash trong trường hợpSwftools không thể làm được
5: Openoffice : chịu trách nhiệm biến đổi file doc, ppt và xls sang slide pdf đểtrình chiếu
6 : The AGI (Asterisk gateway interface) queries the database to determine if thedialed in voice conference number is valid or not
7 : Activemq : Có nhiệm vụ truyền các thông điệp giữa bbb-web và bbb-client
8 : Red 5 : có tác dụng đồng bộ toàn bộ các thành viên trong cuộc họp
9 : The AMI : (asterisk management interface) listen for user events(left/joined,mute/unmute,talk) and issues commands (mute/unmute, kick user ) toasterisk
10 :Asterisk : voice conference server
11 : Sip : Một ứng dụng về voice kết nối tới asterisk
12 : Deskshare : ứng dụng chia sẻ màn hình
13 : Video : ứng dụng video
- Các thành phần chính trong BBB
bbb-apps: red5 web-apps server side
bbb-client: the flex/flash client
bbb-web: các Grails application cho việc đặt phòng họp và log in/out,quản lýbên ngoài phòng họp
deskshare-app: the desktop sharing server side red5-app
deskshare-applet: applet used to capture the screen on the client
bbb-video: video conference server side red5-app
bbb-voice-conference: voice conference server side app (use asterisk)
Trang 25Image Magick
Tập hợp các tool cho việc xem, chỉnh sửa, xử lý hơn 70 định dạng ảnh khácnhau, cho phép tạo ảnh một cách linh hoạt và tương thích với các web applicationshttp://www.imagemagick.org/script/index.php
Red5
http://osflash.org/red5
Red5 là dự án một mã nguồn mở, là một giải pháp thay thế của Adobe FlashMedia Server – một máy chủ hỗ trợ truyền streaming như tốn phí của Adobe Red5được viết bằng ngôn ngữ Java hỗ trợ các tính năng sau:
- Stream dữ liệu âm thanh (mp3)
- Stream dữ liệu hình ảnh (flv)
- Thu lại dòng dữ liệu từ client
- Shared Objects
- Truyền/phát dữ liệu AV trực tiếp
- Sử dụng giao thức RTMP(Real time messenging protocol)
swf Tools
Là tập hợp các tool làm việc với các swf file, convert các địnhdạng khác sang swf như pdf2swf, png2swf, có khả năng chuyểnmột chuỗi ảnh sang swf
http://www.swftools.org/
Trang 26http://tomcat.apache.org/
Hệ thống quản lý hội thảo của BBB chạy trên server Apache Tomcat
Tomcat là hệ thống server mã nguồn mở miễn phí được phát triển bởi ApacheSoftware Foundation Tomcat cài đặt công nghệ Java Servlet và JavaServer Pages(JSP) và cung cấp môi trường HTTP web server thuần Java để chạy mã lệnh Java
OpenOffice.org là mã nguồn mở hàng đầu về phần mềm văn phòng bao gồm
bộ phần mềm xử lý văn bản, bảng tính, thuyết trình, đồ họa, cơ sở dữ liệu, …
http://www.openoffice.org/
2.3.5 Đánh giá cụ thể về BBB
Về giao diện:
o Giao diện được thiết kế khoa học nhưng còn đơn giản
o Việc bố trí layout không hợp lý: không tận dụng hết diện tích của mànhình dẫn đến có phần thì trống, nhưng những phần cần thiết thì nhỏ
o Bố trí các nút bấm chức năng nhỏ rải rác, lẻ tẻ gây ra khó khăn trong việcsử dụng lần đầu
o Các layout có thể duy chuyển tùy biến theo yêu cầu người dùng, đáp ứngnhu cầu sử dụng của mỗi người dùng khác nhau
Trang 27o Các layout có thẻ minimize làm cho có thể tiết kiệm được nhiều diện tíchcho không gian phòng họp Tuy nhiên lại tạo ra sự không thống nhất, dẫnđến có nhiều thao tác không cần thiết
Về quản lý của BBB
Yêu cầu đối với một hệ thống Web Conference của một DN bao gồm :
o Quản lý các dịch vụ về Web Conference
o Quản lý người sử dụng các dịch vụ
o Quản lý các cuộc họp, các thông tin liên quan đến người sử dụng, cuộchọp phòng họp…
Tất cả những chức năng đó đều chưa có trên BBB
Về cấu trúc
o Thiết kế hệ của BigBlueButton rất sáng sủa, logic, mở thể hiện ở việcphân tách giữa các component và việc thiết kế các API để tích hợp vớicác module của các hệ thống opensource khác
o BigBlueButton sử dụng hầu hết các giải pháp opensource một cách cóchọn lọc và ý kiến của cộng đồng Các developer và cộng đồng hỗ trợ rấttích cực trong việc đề xuất các giải pháp công nghệ cũng như thiết kế
o Dễ dàng tích hợp với các hệ thống opensource khác cũng như các hệthống commercial
Về chức năng:
o Voice conference sử dụng asterisk
o Chat đã có chat private
o Video phụ thuộc vào red5: chậm, delay cao, chất lượng hình ảnh chấpnhận được và có khả năng nâng cao, xử lý tình huống còn đơn giản
o Cơ bản đáp ứng đủ các chức năng của web conference đã phân tích:video & voice conference, chat, whiteboard, record & playback đanghoàn thiện, xử lý document,image tốt, presentation tốt+ multicast,unlimited connect
o Thiếu một số chức năng : vote, chia sẻ file ,web , record các thông tin cầnthiết
o Flash based – không cần bất cứ cài đặt gì thêm ngoài applet sử dụngtrong capturing
Về cài đặt,sử dụng và bảo trì
o Server software đơn giản cho việc cài đặt và bảo trì
o Tích cực phát triển, cứ vài tháng là lại có phiên bản mới cải tiến
o Hỗ trợ các hệ điều hành khác nhau: window, linux, macos
o Cộng đồng hỗ trợ active, free
Qua bản đánh giá trên em thấy chọn BBB để phát triển là hoàn toàn đúng sovới các yêu cầu đề ra, cac chức năng chính của BBB cũng tương đối hoàn thiện, tuy
Trang 28có phần quản lý của hệ thống nhất là hệ thống cho các DN là chưa có gì, nên trươcmắt do thời gian không có nhiều em ưu tiên phát triển phần Web của hệ thốngtrước Do đó em đã xác định được phạm vi cần phát triển của hệ thống trong thờigian làm đồ án là xây dựng phần quản lý bên ngoài phòng họp bên phía web của hệthống Qua tìm hiểu em biết được rằng phần web được viết bằng framework Grailscủa java, do vậy em sẽ trình bày ở mục tiếp theo về lý thuyết của Grails, frameworktheo suốt quá trình phát triển phần Web
2.4 Tìm hiểu về Grails
2.4.1 Sơ lược về Grails
Grails là một framework dùng để phát triển web hiện đại gắn với các côngnghệ quen thuộc của Java như Spring và Hibernate cùng với các kinh nghiệm thựctiễn đương thời như quy ước so với cấu hình Grails tạo là sự tích hợp thông suốtđối với mã Java có sẵn mà vẫn tăng thêm tính linh hoạt và năng động của ngôn ngữviết, khi bạn đã học Grails bạn sẽ không bao giờ nhìn phát triển Web theo cách cũnữa
Sơ đồ kiến trúc của Grails:
Hình 2-5 : Kiến trúc Grails
Từ hình vẽ trên ta thấy Grails cấu tạo dựa trên nền tảng tích hợp của Springframework và Hibernate
Trang 29Ngôn ngữ chính được sử dụng là Groovy, Groovy là một ngôn ngữ độngchạy trên JVM và hòa nhập thông suốt đối với ngôn ngữ Java.
Sức mạnh của Grails có thể tóm gọn lại ở những yếu tố sau:
Tăng năng suất lập trình: Grails giúp tự động hóa những công việc và các
câu truy vấn đơn giản(dynamic finder), hỗ trợ scaffolding, và hệ thống taglibgiúp lập trình viên xử lý html một cách rất dễ dàng
Giản dị hóa những công nghệ lập trình “sừng sỏ khó nhai” như Spring,
Hibernate: Giúp cho việc học và sử dụng dễ dàng với những ứng dụng đơn
giản mà vẫn đảm bảo tính linh hoạt, khả chuyển của những công nghệ gốckhi cần thiết
Quen thuộc với lập trình viên Java: Lập trình viên có thể lập trình bằng hai
ngôn ngữ Groovy và Java, thậm chí trộn chung lẫn nhau chương trình cũngvẫn chạy Điều này giúp rút ngắn thời gian học Grails cho Java-developer
Cộng đồng sử dụng Grails rất tích cực: Mọi vấn đề nảy sinh đều được
nhanh chóng thông báo các phiên bản Grails cũng liên tục được cập nhật đểđáp ứng kịp thời các nhu cầu của môi trường công nghiệp
Thư viện plug-in phát triển phong phú: Cơ chế plug-in của Grails cho
phép người sử dụng có thể dễ dàng mở rộng các tính năng của application, đồng thời cũng có thể public các plugin này để chia sẻ với cộngđồng Ví dụ, cần gửi mail từ server thì chỉ cần cài đặt plugin Mail , cấu hìnhmail server và thêm một dòng code gọi service
web- Groovy: Một ngôn ngữ độc đáo và thú vị được cải tiến từ java.
2.4.2 Vai trò của grails trong đồ án
Trong đồ án tôi sử dụng Grails để phát triển phần web trên BBB, toàn bộ codephần web trong đồ án đều được viết từ framework Grails
2.5 Kết chương
Như vậy, ở chương hai em đã có một cái nhìn tổng quát về hệ thống hộinghị trực tuyến nói chung, cũng như hệ thống hội nghị trực tuyền qua web nóiriêng Trong số các giải pháp dành cho họp trực tuyến, hội nghị qua web là một giảipháp rất tốt và phù hợp với các nhu cầu tất yêu và cần thiết của các doanh nghiệp
Đi sâu hơn vào tìm hiểu hội nghị truyền hình qua web, em thấy sử dụngnguồn mở BBB hoàn toàn có thể đáp ứng được các yêu cầu về một hội nghị truyềnhình trực tuyến chất lượng tốt, chi phí thấp và có khả năng phát triển tốt công cụ cókhả năng hỗ trợ hiệu quả cho việc quản lý các kỹ năng công nghệ thông tin Nhưvậy, trọng tâm của đồ án này đã được xác định là phát triển một hệ thống hội nghịqua web dựa trên nguồn mở BBB
Từ việc chọn opensource BBB để phát triển em đã tìm hiểu sâu hơn vềnguồn mở BBB, các chức năng, kiến trúc, công nghệ được sử dụng trong nguồn mởnày Các chức năng sẵn có trong BBB về cơ bản cũng đáp ứng được các nhu cầutrong một phòng họp cần có Tuy nhiên để triển khai hệ thống cho các doanh nghiệpthì vẫn còn rất nhiều hạn chế, đặc biệt về vấn đề quản lý bên ngoài phòng họp Nhưvậy, em đã xác định được phạm vi phát triển trong thời gian làm đồ án đó là pháttriển phần Web của hệ thống Emeeting
Trang 30CHƯƠNG 3 NỘI DUNG THỰC HIỆN
3 1 Phân tích các yêu cầu của hệ thống Emeeting
3.1.1 Giới thiệu Emeeting
Emeeting là hệ thống cho phép nhiều người ở nhiều địa điểm khác nhau cùngtham gia vào một cuộc họp Mọi người có thể nhìn và nghe thấy nhau nóichuyện
Hiện nay các hệ thống Emeeting được xây dựng dựa trên những thiết bị vàđường truyền riêng Các điểm họp thường được lắp đặt cố định tại một vị trí
Ưu điểm của những hệ thống này cho chất lượng voice và video cao, khảnăng đáp ứng thời gian thực tốt
Nhưng hệ thống này cũng tồn tại nhiều nhược điểm như:
Triển khai hệ thống như vậy có chi phí cao
Hệ thống được thiết lập cố định vị trí cho các phòng họp nên không
cơ động khi muốn tham gia họp thì bắt buộc phải di chuyển đếnphòng họp đó để tham gia
Việc tăng thêm một điểm họp nữa là khó thực hiện vì sẽ phải thiết lậpthiết bị và kênh truyền riêng - > Chi phí cao
Tại một thời điểm hệ thống này chỉ cho phép 1 cuộc họp diễn ra Nhưvậy hệ thống này có chi phí cao nhưng hiệu năng sử dụng không cao
Vì vậy yêu cầu đặt ra là cần xây dựng hệ thống emeeting khắc phục đượcnhững nhược điểm của hệ thống emeeting trên Do đó hệ thống này cần phảiđáp ứng được những yêu cầu sau:
Giảm chi phí triển khai hệ thống
Nâng cao tính cơ động cho hệ thống Emeeting Người muốn thamgia hệ thống có thể ngồi ở bất cứ đâu
Việc thêm một điểm họp mới đơn giản thuận tiện
Cho phép nhiều cuộc họp diễn ra cùng một thời điểm
Để đáp ứng được những yêu cầu trên chúng ta sẽ xây dựng hệ thốngEmeeting chạy trên nền web và sử dụng đường truyền internet
Trang 31 Tuy nhiên hệ thống có nhược điểm là chất lượng cuộc họp phụ thuộc lớn vàobăng thông đường truyền Độ trễ của âm thanh lớn vì dùng giao thứcVOIP…
3.2.2 Đối tượng mà hệ thống hướng tới
Đối tượng người dùng:
Hệ thống được sử dụng cho những doanh nghiệp có nhiều chi nhánh ở những
vị trí khác nhau và thường xuyên phải họp để trao đổi thống nhất công việc.Việc triển khai hệ thống Emeeting này sẽ giúp tiết kiệm thời gian và chi phí
đi lại
Những doanh nghiệp thường xuyên có nhân viên đi công tác xa cần phải họp
để trao đổi công việc cũng có thể sử dụng hệ thống này Những nhân viên đicông tác có thể ngồi bất cứ đâu cũng có thể tham gia buổi họp chỉ cần hệthống của họ có trang bị webcam, voice, loa, đường truyền internet
Hệ thống chăm sóc khách hàng với tính tương tác cao giữa nhân viên vàkhách hàng Thông qua hệ thống này khách hàng có thể dễ dàng nhìn thấyhướng dẫn của nhân viên chăm sóc thông qua hệ thống video hoặc trìnhchiếu, hoặc share desktop
Hệ thống lớp học online có khả năng tương tác cao giữa giáo viên và họcviên
Hệ thống gồm có hai lớp đối tượng chính:
Quản trị hệ thống: Có chức năng quản lý người dùng người dùng, đơn vịphòng ban công ty, quản lý phòng họp, cuộc họp, tài nguyên, bản ghi cuộchọp và cho phép cấu hình hệ thống
Người dùng hệ thống: Được phép sử dụng tất cả các chức năng của chươngtrình với điều kiện đã đăng ký account Trong lớp người dùng hệ thống lạiđược phân lớp đối tượng nhỏ hơn bao gồm:
Chủ phòng họp (Host): Người có toàn quyền điều khiển phònghọp Được gọi là chủ phòng họp
Presenter: Người trình triếu
Một đường truyền băng thông rộng
Phía client: Mỗi client yêu cầu máy tính kết nối internet, có các trình duyệtđược cài đặt web, có cài đặt flash player, webcam, voice, phone
3.1.4 Yêu cầu về chức năng của hệ thống
Hệ thống này cho phép nhiều người ở nhiều địa điểm khác nhau cùng thamgia vào cùng phòng họp Mỗi người có thể chia sẻ video, voice, trình chiếu, chia sẻfile, chat…
Trang 32 Chức năng quản trị của admin hệ thống:
Quản lý user : Admin có quyền thêm, sửa, xóa, tìm kiếm các tài khoản
trong hệ thống một cách dễ dàng.
Quản lý phòng ban đơn vị trong công ty : Admin có thể thêm, sửa, xóa,tìm kiếm các phòng ban trong công ty, các phòng ban được chia nhỏ làm
nhiểu cấp để quản lý các thành viên trong công ty.
Quản lý chức vụ : Admin có thể quản lý chức vụ của các thành viên trong
công ty.
Quản lý các phòng họp : Để tạo ra một cách nhìn quen thuộc đối cácphòng ban trong công ty, admin có thể tạo ra các phòng cứng để chongười sử dụng dễ hình dung và tìm vào phòng họp, admin có thể thêm,sửa, xóa, tìm kiếm và cài đặt các thông tin cần thiết cho mỗi phòng họp
Quản lý cuộc họp : Admin có thể quản lý các cuộc họp trên hệ thống mộtcách dễ dàng, thông tin liên quan cần thiết đến các cuộc họp đã , đang vàchưa diễn ra, admin còn có thể sửa, xóa các cuộc họp đó
Quản lý tài nguyên : Admin có thể quản lý tất cả các tài nguyên được up
lên hệ thống, được can thiệp vào tài nguyên trên hệ thống.
Quản lý các bản ghi : Quản lý các bản ghi lại sau các cuộc họp, có thểxem lại nội dung của các bản ghi , và các thao tác khác đến các bản ghi
Quản lý các cuộc họp hay được dùng : Admin có thể quản lý được các
cuộc họp hay được dùng của những user trong hệ thống.
Quản lý ngôn ngữ : Admin có thể thêm, sửa và xóa các ngôn ngữ có thể
của hệ thống.
Update hệ thống : Khi có yêu cầu từ nhà dịch vụ thì có thể update được
hệ thống.
Các chức năng bên phía người dùng:
Đăng nhập hệ thống : Người dùng cần có tài khoản để đăng nhập vào hệthống để sử dụng các dịch vụ của hệ thống
Đăng ký một tài khoản mới : Người dùng có thể đăng ký tài khoản mớivào hệ thống khi chưa có tài khoản
Chức năng tạo ra một phòng họp mới, và cài đặt các cấu hình cần thiếtcho cuộc họp
Tham gia vào một cuộc họp
Nếu là khách mời thì chỉ cần nhập pass vào là có thể tham gia vàocuộc họp
Nếu không phải là khách mời thì cần gửi yêu cầu tham gia cuộc họptới chủ phòng họp, nếu được chấp nhận thì sẽ được tham gia vàophòng họp
Chức năng quản lý tài nguyên : Mỗi người dùng có thể quản lý các tàinguyên của mình đã up lên hệ thống, có thể up thêm file lên hệ thống đểchuẩn bị cho cuộc họp, có thể xóa các file upload không cân thiết, tìmkiếm các file upload theo nhiều cách khác nhau
Chức năng quản lý các bản ghi : Mỗi người dùng có thể quản lý các bảnghi của các cuộc họp mình đã tham gia, để có thể xem lại nội dung cáccuộc họp đó, có thể xóa các bản ghi đó
Trang 33 Quản lý tài khoản : Người dùng có thể tùy chỉnh tài khoản của mình, nhưthay đổi password , thay đổi họ tên, avatar các thông tin liên quan đếntài khoản.
Chức năng xem lại các cuộc họp hay dùng : Người dùng có thể xem lạicác cuộc họp mà hay dùng đến cho các công việc lâu dài, cần họp nhiểulần, có thể không cần cấu hình lại cuộc họp mà có thể cho họp ngayđược
Chức năng quản lý các cuộc họp : Người dùng có thể quản lý được cáccuộc họp của mình, các cuộc họp mà mình tạo ra và các cuộc họp đượcmời
Chức năng thay đổi ngôn ngữ : Người dùng có thể thay đổi ngôn ngữ củatrang web
Các chức năng khi vào phòng họp:
Chia sẻ audio
Xây dụng trên VoIP mics và conferencing
Cho phép các bên có khả năng nói, nghe thấy tiếng của nhau
Có các chức năng điều khiển chất lượng audio, âm lượng
Tắt voice của một người trong cuộc họp, không muốn nghe ngườidùng nào đó nói
Người dùng có thể nói cho cả phòng nghe thấy, hoặc nói cho mộtgroup nhỏ trong phòng họp
Có chức năng cấp quyền sử dụng audio của chủ phòng họp chocác người dùng khác có trong phòng
Chia sẻ video
Dùng webcam, camera để chia sẻ hình ảnh trong phòng họp
Chức năng xem hình ảnh trực tuyến của các thành viên trongphòng họp
Người dùng có thể dùng để chia sẻ các sự kiện trực tuyến nhưparty, holiday
Tham gia các lớp học trực tuyến, các diễn đàn
Chức năng tạm dừng, minimize cửa sổ video của chủ phòng, hoặcngười trình chiếu presenter
Chức năng điều chỉnh chất lượng hình ảnh: chất lượng thấp, trungbình hay chất lượng cao
Chủ phòng có thể cấp quyền sử dụng video cho các người dùngkhác và thu quyền chia sẻ cửa sổ video
Trình chiếu văn bản (powerpoint, pdf, ppt, pptx)
Cho phép trình chiếu các loại file văn bản khác nhau, bao gồm fileảnh
Có chức năng cho phép gạch chân, viết ghi chú.,
Mỗi phần ghi chú sẽ có màu giống như màu của mỗi nick ngườidùng có trong phòng họp để phân biệt
Người trình chiếu có thể cho phép hoặc không cho phép ngườidùng trong phòng comment vào tài tài liệu trình chiếu, xóa tất cảcomment của người dùng đã viết trước đó
Trang 34 Người dùng có thể zoomIn, Zoom Out, fullscreen
Chia sẻ màn hình màn hình (PC desktops)
Chia sẻ màn hình máy tính của người presenter cho cả phòng họp
Presenter phải cải đặt một tool hỗ trợ việc chia sẻ màn hình tronglần chia sẻ đầu tiên
Yêu cầu đối với chức năng này là giảm độ trễ, độ phân giải tốt
Chia sẻ bảng trắng (Share whiteboards)
Chia sẻ các dòng văn bản, con số, đồ thị, hình vẽ, kết quả tính toán
Có các công cụ để vẽ, tẩy xóa, phân biệt người dùng thông quamàu của mỗi người dùng có trong list
Chủ phòng họp có quyền cấp hay hủy quyền Chia sẻ bảng trắngcủa người dùng
Chia sẻ web page
Chia sẻ các Url, nội dung các trang web, các đoạn video, clip,audio trên web cho cả phòng họp
Các thành viên trong phòng họp có thể điều hướng các trang tùytheo màn hình mỗi người
Các thành viên có thể tắt màn hình chia sẻ web page, thành viênphòng họp muốn chia sẻ web page phải được chủ phòng cấp quyền
Ghi lại hội nghị và phát lại
Có chức năng ghi lại nội dung của hội nghị
Các hình ảnh và âm thanh sẽ được lưu dưới dạng các file video
Các chia sẻ như: whiteboard, share document, share webpage…được lưu dưới dạng file video
Nội dung chat public, chat private sẽ được lưu dạng text
Các file lưu trữ sẽ được lưu trữ tại server của hệ thống, server sẽgửi đường dẫn tới chủ phòng họp
Chủ phòng có thể tải về máy tính và phát lại nội dung của hộinghị đã được ghi lại
Có chức năng thông báo cho người dùng khác khi có tin nhắn đến
Chức năng sendfile, chia sẻ ảnh, biểu tượng, trạng thái
Trang 35 Chủ phòng có thể sử dụng ứng dụng calendar để đặt trước phònghọp Đến giờ họp thì hệ thống tự động tạo phòng họp với các chứcnăng của phòng được để mặc định
Các người dùng có thể xóa, chỉnh sửa và bắt đầu ngay phòng họp
mà mình đã đặt
Email và calendaring
Tài khoản mail chính là tài khoản đăng nhập hệ thống
Cho phép chủ phòng họp và các thành viên phòng họp có thể traođổi email cho nhau
Chức năng calendar cho phép xem ngày giờ, viết ghi chú, nhắcnhở, ghi chép, nhật ký
Hỗ trợ chức năng đặt lịch phòng họp
Vote
Biểu quyết: chức năng phòng họp đưa ra quyết định cuối cùng vềmột lĩnh vực bằng cách tham gia biểu quyêt
Các chức năng của host
Meeting room: Là tên phòng họp, có định dạng, và giới hạn kích thước
o Không chứa ký tự đặc biệt
o Phải nhiều hơn 4 ký tự
Người dùng List: Là chức năng hiện các người dùng và trạng thái của họ
khi tham gia vào phòng họp
Auto accept extendees: Xuất hiện thông báo nếu có thành viên tham gia
vào phòng họp, chủ phòng họp chấp nhận hay không chấp nhận cho phéptham gia phòng họp
Persistent chat: Khi bạn thoát khỏi phòng họp mà không lưu lại nội dung
chat, thì chức năng này cho phép xem lại lịch sử chat từ thời điểm 20 phúttrước
Video option: Có thể điều chỉnh chất lượng, số frame, hight quality
video, on/off video, tùy chỉnh màn hình video, ghi lại video, phát lại video
Audio option: Điều chỉnh âm lượng, on/off/stop, ghi và phát lại audio
Lưu và phát lại cuộc họp: Các cuộc họp sẽ được lưu phát lại cho những
ai không tham gia và cho những người muốn xem lại
Trạng thái người dùng: Chức năng này cho phép các người dùng lựa
chọn để thể hiện trạng thái của mình như: online, muốn phát biểu
Lựa chọn ngôn ngữ: Cho phép tùy chọn ngôn ngữ thể hiện ( tiếng
Việt/tiếng Anh)
Các chức năng khác để thiết lập hệ thống như:
o Thiết lập số người tham gia phòng họp
o Thời gian họp: định thời gian họp và có thể thêm thời gian họp
Trang 36Hình 3-1 : eMeeting trong mạng Intranet
eMeeting ngoài mạng Internet
Hình 3-2 : eMeeting ngoài mạng Internet
Các module chính