 


  <!doctype html>
<!--
 Generated by Apache Maven Doxia  at $dateFormat.format( $currentDate )  Rendered using Reflow Maven Skin 2.3.0 (http://devacfr.github.io/reflow-maven-skin)
-->
<html  xml:lang="en" lang="en">
        <head>
    <meta charset="UTF-8" />
    <title>Apache OpenMeetings Project &#x2013; Project Information</title>
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <meta name="description" content="" />
      <meta http-equiv="content-language" content="en" />
                                                        <link href="../css/themes/cerulean/bootstrap.min.css" rel="stylesheet" />
    <link href="../css/fontawesome/all.min.css" rel="stylesheet" />
    <link href="../css/reflow-skin.css" rel="stylesheet" />
    
    <link rel="stylesheet" href="../js/styles/github.min.css" />

    <link href="../css/lightbox.css" rel="stylesheet" />
    <link href="../css/site.css" rel="stylesheet" />
    <link href="../css/print.css" rel="stylesheet" media="print" />
<link rel="stylesheet" href="../css/site.css"/>
        </head> <!-- end : head -->
<body class="page-project-info project-openmeetings-screenshare anchorjs-enabled scrolltop-smooth-enabled m-toc-sidebar-enabled m-toc-sidebar-expanded m-toc-sidebar-autoexpandable toc-sidebar-fixed">
    <nav id="m-top-navbar" class="navbar navbar-expand-lg fixed-top navbar-dark bg-primary">
<div class="container">            <a class="navbar-brand mb-0 h1" href="../index.html">
            <span class="color-highlight">Apache</span> OpenMeetings
            </a>
            <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#top-navbar-collapse-1" aria-controls="top-navbar-collapse-1" aria-expanded="false" aria-label="Toggle navigation">
                <span class="navbar-toggler-icon"></span>
            </button>
            <div class="collapse navbar-collapse" id="top-navbar-collapse-1">
                <ul class="nav navbar-nav ml-auto">
                    <li class="nav-item " ><a  href="../demo.html"  title="Demo"  class="nav-link" >Demo</a></li>
                    <li class="nav-item " ><a  href="../downloads.html"  title="Download"  class="nav-link" >Download</a></li>
                    <li class="nav-item " ><a  href="https://cwiki.apache.org/confluence/display/OPENMEETINGS"  title="Wiki"   class="externalLink nav-link" >Wiki</a></li>
                    <li class="nav-item dropdown">
                <a href="#" class="nav-link dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Parent Project <b class="caret"></b></a>
                        <div class="dropdown-menu">
                            <a href="../index.html" title="Openmeetings"  class="dropdown-item ">Openmeetings</a>
                        </div>
                    </li>
                    <li class="nav-item dropdown active">
                <a href="#" class="nav-link dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Project <b class="caret"></b></a>
                        <div class="dropdown-menu">
                            <a href="index.html" title="About"  class="dropdown-item ">About</a>
                            <a href="" title="Info"  class="dropdown-item active">Info</a>
                            <a href="summary.html" title="Summary"  class="dropdown-item ">Summary</a>
                            <a href="https://www.apache.org/licenses/" title="License"  class="dropdown-item ">License</a>
                            <a href="dependencies.html" title="Dependencies"  class="dropdown-item ">Dependencies</a>
                            <a href="dependency-convergence.html" title="Dependency Convergence"  class="dropdown-item ">Dependency Convergence</a>
                            <a href="rat-report.html" title="RAT Report"  class="dropdown-item ">RAT Report</a>
                        </div>
                    </li>
                </ul><!--/ul.navbar-nav -->
            </div><!--/.nav-collapse -->
</div> <!--/.container -->    </nav> <!--/.navbar -->
    <div class="main-body">
    <div class="header text-light bg-secondary" role="main">
        <div class="container container-fluid">
    <div id="banner" class="header--banner">
        <div class="row m-1">
          <div class="col-md-12">
            <div class="float-left header--banner--left bannerLeft">
                    <a href="../index.html">
            <img class="float-left m-2 img-fluid" src="../images/logo.png" alt="Apache OpenMeetings" />
            </a>
            </div>
            <div class="float-right header--banner--right bannerRight">
                    <a href="https://apache.org">
            <img class="float-left m-2 img-fluid" src="https://apache.org/img/asf_logo.png" alt="Apache" />
            </a>
            </div>
          </div>
        </div>
    </div>
        </div>
    </div> <!-- end : header -->
    <div class="row mt-5">
        <div class="d-xs-none d-sm-none d-md-none d-lg-block col-lg-2">
        </div>
        <main class="col-xs-12 col-sm-12 col-md-12 col-lg-12 col-xl-8" role="main">
    <nav aria-label="breadcrumb">
        <ol class="breadcrumb">
            <li class="publishDate version-date">$dateFormat.applyPattern( $format )    $i18n.getString( "site-renderer", $locale, "template.lastpublished" ): $dateValue</li>
        </ol>
    </nav>
                    <section> 
 <div class="page-header">
  <h2 id="project-information">Project Information</h2>
 </div> 
 <p>This document provides an overview of the various documents and links that are part of this project's general information. All of this content is automatically generated by <a class="externalLink" href="http://maven.apache.org">Maven</a> on behalf of the project.</p> 
 <section> 
  <h3 id="overview1">Overview</h3> 
  <table border="0" class="bodyTable table table-striped table-hover"> 
   <thead> 
    <tr class="a"> 
     <th>Document</th> 
     <th>Description</th> 
    </tr> 
   </thead> 
   <tbody> 
    <tr class="b"> 
     <td align="left"><a href="index.html">About</a></td> 
     <td align="left">Module to build OpenMeetings web application to grab a screen and send it to a Server</td> 
    </tr> 
    <tr class="a"> 
     <td align="left"><a href="ci-management.html">CI Management</a></td> 
     <td align="left">This document lists the continuous integration management system of this project for building and testing code on a frequent, regular basis.</td> 
    </tr> 
    <tr class="b"> 
     <td align="left"><a href="dependencies.html">Dependencies</a></td> 
     <td align="left">This document lists the project's dependencies and provides information on each dependency.</td> 
    </tr> 
    <tr class="a"> 
     <td align="left"><a href="dependency-convergence.html">Dependency Convergence</a></td> 
     <td align="left">This document presents the convergence of dependency versions across the entire project, and its sub modules.</td> 
    </tr> 
    <tr class="b"> 
     <td align="left"><a href="dependency-management.html">Dependency Management</a></td> 
     <td align="left">This document lists the dependencies that are defined through dependencyManagement.</td> 
    </tr> 
    <tr class="a"> 
     <td align="left"><a href="distribution-management.html">Distribution Management</a></td> 
     <td align="left">This document provides informations on the distribution management of this project.</td> 
    </tr> 
    <tr class="b"> 
     <td align="left"><a href="issue-management.html">Issue Management</a></td> 
     <td align="left">This document provides information on the issue management system used in this project.</td> 
    </tr> 
    <tr class="a"> 
     <td align="left"><a href="licenses.html">Licenses</a></td> 
     <td align="left">This document lists the project license(s).</td> 
    </tr> 
    <tr class="b"> 
     <td align="left"><a href="mailing-lists.html">Mailing Lists</a></td> 
     <td align="left">This document provides subscription and archive information for this project's mailing lists.</td> 
    </tr> 
    <tr class="a"> 
     <td align="left"><a href="plugin-management.html">Plugin Management</a></td> 
     <td align="left">This document lists the plugins that are defined through pluginManagement.</td> 
    </tr> 
    <tr class="b"> 
     <td align="left"><a href="plugins.html">Plugins</a></td> 
     <td align="left">This document lists the build plugins and the report plugins used by this project.</td> 
    </tr> 
    <tr class="a"> 
     <td align="left"><a href="team.html">Team</a></td> 
     <td align="left">This document provides information on the members of this project. These are the individuals who have contributed to the project in one form or another.</td> 
    </tr> 
    <tr class="b"> 
     <td align="left"><a href="scm.html">Source Code Management</a></td> 
     <td align="left">This document lists ways to access the online source repository.</td> 
    </tr> 
    <tr class="a"> 
     <td align="left"><a href="summary.html">Summary</a></td> 
     <td align="left">This document lists other related information of this project</td> 
    </tr> 
   </tbody> 
  </table> 
 </section> 
</section>        </main>
        <div class="d-none d-sm-none d-md-none d-lg-none d-xl-block col-xl-2">
            <div id="m-toc-sidebar" class="d-print-none m-toc-sidebar-enabled m-toc-sidebar-expanded m-toc-sidebar-autoexpandable toc-sidebar-fixed">
                <nav id="m-toc-sidebar-nav flex-column">
                <ul class="m-nav--sidebar nav flex-column flex-nowrap">
    <li class="h2">
        <a class="nav-link" href="#project-information" title="Project Information">Project Information</a>
    </li>
    <ul class="nav flex-column flex-nowrap nav-collapsible">
            <li class="h3">
        <a class="nav-link" href="#overview1" title="Overview">Overview</a>
    </li>
    </ul>
                    </ul>
                </nav>
           </div>
        </div>
    </div> <!-- row: end -->
</div> <!-- .main-body: end -->
    <div id="m_scrolltop" class="m-scrolltop">
		<i class="fa fa-arrow-up"></i>
    </div>
  <!-- Footer -->
<footer class="footer-light bg-light">
    <div class="container">
        <div class="row">
                        <div class="col bottom-nav">
                <ul class="nav flex-column nav-list">
                    <li class="nav-header">
Parent Project
                    </li>
                    <li class="nav-item "><a  href="../index.html"  title="Openmeetings"  class="nav-link" >Openmeetings</a></li>
                </ul>
            </div>
            <div class="col bottom-nav">
                <ul class="nav flex-column nav-list">
                    <li class="nav-header">
Project
                    </li>
                    <li class="nav-item "><a  href="index.html"  title="About"  class="nav-link" >About</a></li>
                    <li class="nav-item active"><a  href=""  title="Info"  class="nav-link" >Info</a></li>
                    <li class="nav-item "><a  href="summary.html"  title="Summary"  class="nav-link" >Summary</a></li>
                    <li class="nav-item "><a  href="https://www.apache.org/licenses/"  title="License"   class="externalLink nav-link" >License</a></li>
                    <li class="nav-item "><a  href="dependencies.html"  title="Dependencies"  class="nav-link" >Dependencies</a></li>
                    <li class="nav-item "><a  href="dependency-convergence.html"  title="Dependency Convergence"  class="nav-link" >Dependency Convergence</a></li>
                    <li class="nav-item "><a  href="rat-report.html"  title="RAT Report"  class="nav-link" >RAT Report</a></li>
                </ul>
            </div>
        </div> <!-- END: .row -->
    </div> <!-- END: .container -->
</footer>
  <div class="container subfooter text-center">
    <div class="row">
      <div class="col-md-12">
        <p class="copyright">Copyright &copy;2012-${currentYear}
                 <a href="https://apache.org">Apache Software Foundation</a>
. All Rights Reserved.</p>
      </div>
    </div>
  </div>

  <!-- Le javascript
  ================================================== -->
  <!-- Placed at the end of the document so the pages load faster -->
    <script src="../js/jquery.min.js" crossorigin="anonymous"></script>
    <script src="../js/popper.min.js" crossorigin="anonymous"></script>
    <script src="../js/bootstrap.min.js" crossorigin="anonymous"></script>

  <script src="../js/lightbox.min.js" crossorigin="anonymous"></script>
            	<script src="../js/highlight.min.js" crossorigin="anonymous"></script>
                    
<script src="https://www.apachecon.com/event-images/snippet.js"></script>        
<script src="../js/site.js" type="text/javascript"></script>        
<div class="text-center">Apache OpenMeetings, OpenMeetings, Apache, the Apache feather, and the Apache OpenMeetings project logo</div>        
<div class="text-center">are trademarks of the Apache Software Foundation.</div>        
<div class="text-center">
  <a href="https://privacy.apache.org/policies/privacy-policy-public.html">Privacy policy</a>
</div>  <script src="../js/reflow-skin.js" crossorigin="anonymous"></script>
    <script src="../js/anchor.min.js" crossorigin="anonymous"></script>
    </body>
</html>
