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át triển • Tổng quan về mã nguồn mở Bigbluebutton, các chức năng, kiến trúc tổng quát cuả Bigbluebutton. • Tìm hiểu về Grails , framework sử dụng chính trong đồ án Chương 3Nộ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 webconference • Phân tích thiết kế phần quản trị hệ thống và thiết kế cơ sở dữ liệu cho hệ thống • Cài đặt và phát triển hệ thống Chương 4 Kết luận • 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 1LỜ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 trong trườ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ời gian 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
Trang 2Cuố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ốt thờ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.
Trang 3TÓ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át triển
• Tổng quan về mã nguồn mở Bigbluebutton, các chức năng, kiến trúc
tổng quá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
Trang 4• Định hướng phát triển cho hệ thống
Trang 5ABSTRACT 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 and evaluating 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, and WebConference deploying diagram
• Specifying and designing the system’s new functions, designing database in details
• 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 6Chính vì vậy, hầu hết các ứng dụng công nghệ thông tin ngày nay đều thông qua sức mạnh Internet nhằm mang lại lợi ích cao nhất cho người sử dụng
Từ đó các phầ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ôi trườ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à đặc biệ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áy tính cho người dùng cá nhân Để ứng dụng các dịch
vụ này doanh nghiệp không phả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ủa từng doanh nghiệp tại từng thời điểm, do đó giảm chi phí duy trì hệ thống, tối ưu quy 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ịch vụ
Trang 7Hội nghị qua Web(Web conference) là một trong những dịch vụ trên Internet thể 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át triể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 trong nhữ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ặc chương trình phần mềm như NetMeeting, người sử dụng
có thể trao đổi công việc trự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ức tạ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ị qua Web 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ội nghị 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ác nhà khai thác viễn thông đang gặp khó khăn trong các giải pháp hội nghị truyền hì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ấp cho 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
Trang 8lớn và đáp ứng nhu cầ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ác doanh 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 dữ 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 khi doanh nghiệp muốn trình chiếu một chương trình
gì đó hoặc mở các file trình diễn dạng PowerPoint để giới thiệu sản phẩm, trình bày phương án, kế hoạch và báo cáo với đối tác ở xa
1.2.2 Nhiệm vụ của đề tài
Nội dung đề tài bao gồm:
Về lý thuyết :
• Nắm được các khái niệm về hội nghị trực tuyến qua web và các kiến thức
có liên quan tới Web Conference
• Đưa ra bản so sánh giữa hệ thống Bigbluebutton với các hệ thống Web
Conference hiện có
• 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
Về sản phẩm:
Xây dựng lại các công việc cần thiết bên ngoài phòng họp cho các doanh nghiệp bao gồm :
Trang 9• Xây dựng trang quản trị cho admin có các chức năng quản trị về người dùng, chức vụ, phòng ban trong công ty, về phòng họp, cuộc họp, tài nguyên, các bản ghi của các cuộc họp, và các chức năng cần thiết cơ bản
cho người quản trị của một hệ thống doanh nghiệp
• Xây dựng trang người dùng để có thể tham gia vào cuộc họp, đặt họp, mời họp và quản lý các thông tin liên quan đên cuộc họp
Trang 10CHƯƠ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 đổi thô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òng khá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ấy nhau, sử dụng ngôn ngữ cơ thể, và đặc biệt, có thể chia sẻ dữ liệu, cho phép cùng trao đổ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
Trang 11Hộ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 12Li nu x
M a
c O
S X
Mic ros oft Wi ndo ws
Au dio Su pp ort
Vide
o Qual ity
Vi de
o Su pp ort
Ch
at Su pp ort
De skt
op Sh ari
ng Su pp ort
Up loa
d PP T
Up loa
d PD F
bro wsi ng
Co-Mo bile Dev ice Sup por t
Br ea k- Ou
t Ses sio ns
Sec uri
ty Ac ces s
Encry pted comm unica tion
Trang 13Fuze Prop 100 ✓ ✓ ✓ ✓ QVG ✓ ✓ ✓ ✓ ✓ X ✓ [7] X X X
Trang 15ry
to 1,000
16 Feeds
✓ ✓ ✓ ✓ ✓
Comin
g Soon
Trang 161-X ✓ ✓ ✓
VGA
announced
Trang 171-X ✓ ✓ ✓
VGA,HQ,HD
Li nu x
M a
c O
S X
Mic ros oft Wi ndo ws
Au dio Su pp ort
Vide
o Qual ity
Vi de
o Su pp ort
Ch
at Su pp ort
De skt
op Sh ari
ng
Up loa
d PP T
Up loa
d PD F
bro wsi ng
Co-Mo bile Dev ice Sup por
Br ea k- Ou
t Ses
Sec uri
ty Ac ces s
Encry pted comm unica tion
Trang 18Su pp ort
t
sio ns
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ẩm hộ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ác bả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ông phù 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
• 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
Trang 19Cá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ểm soá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 thu phí 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ới Flash trên hệ điều hành Windows, Macintosh, hoặc Linux, người trình bày phải sử dụng Windows
Trang 20- 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ệt web với Flash trên hệ điều hành Windows, Macintosh, hoặc Linux, người trình bày sử 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 chi phí 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 gia vào hội nghị (hiện tại có 97% máy tính được cài Flash Player) Như vậy, BBB chỉ yê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 đòi hỏ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át triể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
Trang 21tuyế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ị truyền hình qua web dựa trên nguồ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ặc cá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ững cuộ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, and imagemagick
Trang 222.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 khoa Technology Innovation và Management program, phiên bản đầu tiên được viết bởi Richard 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ên Google Code phần source code của BBB và thành lập Blindside Networks, một công ty theo đuổi mô hình kinh doanh truyền thông mã nguồn mở và dịch
vụ cho cộng đồng BBB
Trong năm 2010 BBB đã được phát triển thêm phần Whiteboard để chú thích cho 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, WordPress, 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 Google Summer 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 thanh nhiề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ủa Microsoft sử dụng OpenOffice
Trang 23Khi 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ụng củ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ủa BBB 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
a Tham gia phòng họp
Ta có thể tham gia join vào phòng họp ngay hoặc điền tên của mình trước khi vào phòng họp
Trang 25Hì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
Trang 26Hình 2-3 : Giao diện phòng họp
• Trình chiếu văn bản (powerpoint, pdf, ppt, pptx)
o 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ùng trong phòng comment vào bài present, xóa tất cả comment của người dù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ếu vă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àu củ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ủa người dùng
Trang 27• 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ười dù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ặc ngườ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
Trang 28d, 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ức năng có thể nghe, xem trò chuyện với các thành viên trong cuộc họp,
xin quyề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ăn bản và chia sẻ Desktop
• Moderator : Có tất cả chức năng trong phòng họp, và còn thêm quyền điều khiể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ùng hiệ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ách sử dụng gọi voice qua IP client
Xem bài thuyết trình Xem con trỏ của presenter
Trang 29Trê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
Cùng trong với cửa sổ trình diễn người dùng có thể nhìn thấy presenter đang trình bày chỉ 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ằng cách sử dụng một webcam tích hợp bên ngoài, nhiều người tham 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 trong cuộc họp, hoặc có thể chuyển quyền nói cho người khác bằng các nhấn vào tên của họ rồi nhấn nút eject
Trang 30
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 cuộ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
Chia sẻ tài liệu PDF hoặc office
Presenter có thể upload file PDF hoặc các file office lên để chia
sẻ, có thể up được nhiều file để 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
Trang 312.3.4 Kiến trúc của BBB
BBB sử dụng Red5, một triển khai mã nguồn mở của Adobe Flash Media Server Các máy chủ BBB có thể chạy trong một môi trường đám mây như Amazon EC2, trong phiên bản 0.70 có vấn đề về sự đồng bộ âm thanh, Hiện tại các nhà phát triển đang cải tiến cho VoIP trong thời gian tới của BBB 0.8.Còn hiện tại đang là phiên bản 0.71a cải tiến về chất lượng âm thanh hơn so với bản 0.70 :
Sơ đồ kiến trúc của BBB:
Hình 2-4 : kiến trúc của BBB
Giải thích các thành phần trong kiến trúc :
Trang 321 : Nginx : nginx proxies bbb-web and bbb-app s to support to RTMPT (RTMP tunneling) 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ếp chú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ợp Swftools 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 the dialed 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 )
to asterisk
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
Trang 33
- 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 34Flex là open source framework để xây dựng và duy trì các ứng dụng web trên tất cả các trình duyệt browser , được ứng dụng viết trong client của BBB.
Grails là opensource web application framework hỗ trợ ngôn ngữ Groovy
và phát triển java web
ActiveMQ
http://activemq.apache.org/
Apache ActiveMQ is an open source enterprise messaging and integration patterns provider
Trang 35MySQL
MySQL is an open source database
http://www.mysql.com/
Trang 36http://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 Flash Media 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)
Trang 37swf Tools
Là tập hợp các tool làm việc với các swf file, convert các định dạng khác sang swf như pdf2swf, png2swf, có khả năng chuyển một chuỗi ảnh sang swf http://www.swftools.org/
Tomcat
http://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 Apache Software 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
Asterisk Java
Các gói Asterisk-Java bao gồm một tập các lớp Java cho phép dễ dàng xây dựng các ứng dụng Java tương tác với máy chủ Asterisk PBX
Trang 38o 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àn
hì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ệc sử dụng lần đầu
Trang 39o Các layout có thể duy chuyển tùy biến theo yêu cầu người dùng, đáp
ứng nhu cầu sử dụng của mỗi người dùng khác nhau
o Các layout có thẻ minimize làm cho có thể tiết kiệm được nhiều diện tích cho 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
cá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ất tí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ấp nhận được và có khả năng nâng cao, xử lý tình huống còn đơn giản
Trang 40o 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 đang hoàn thiện, xử lý document,image tốt, presentation tốt+ multicast,
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
so vớ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 có 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ươc mắ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ống trước Do đó em đã xác định được phạm vi cần phát triển của hệ thống trong thời gian 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 Grails của java, do vậy em sẽ trình bày ở mục tiếp theo về lý thuyết của Grails, framework theo suốt quá trình phát triển phần Web