

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<!--
 Generated by Apache Maven Doxia at 2018-09-16
 Rendered using Reflow Maven Skin 1.3.10 (http://devacfr.github.io/reflow-maven-skin)
-->
<html  xml:lang="en" lang="en">

        <head>
    <meta charset="UTF-8" />
    <title>Apache OpenMeetings Project &#x2013; Project Summary</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/bootstrap.min.css" rel="stylesheet" />
    <link href="../css/bootstrap-responsive.min.css" rel="stylesheet" />
    <link href="../css/docs.css" rel="stylesheet" />
    <link href="../css/reflow-skin.css" rel="stylesheet" />
      
    <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-summary project-openmeetings-screenshare">

    <div id="m-top-navbar" class="navbar  navbar-default navbar-fixed-top">
      <div class="container">
        <!-- Brand and toggle get grouped for better mobile display -->
                <div class="navbar-header">
                    <button type="button" class="navbar-toggle collapsed" data-toggle="collapse"
                        data-target="#top-navbar-collapse-1" aria-expanded="false" aria-controls="navbar">
                    <span class="sr-only">Toggle navigation</span>
                    <span class="icon-bar"></span>
                    <span class="icon-bar"></span>
                    <span class="icon-bar"></span>
                    </button>
                        <a class="navbar-brand" href="../index.html"><span class="color-highlight">Apache</span> OpenMeetings</a>
        </div> <!-- .navbar-header -->
        <div class="collapse navbar-collapse" id="top-navbar-collapse-1">
            <ul class="nav navbar-nav navbar-right">
<li ><a  href="../demo.html"  title="Demo" >Demo</a></li>
<li ><a  href="../downloads.html"  title="Download" >Download</a></li>
<li ><a  href="https://cwiki.apache.org/confluence/display/OPENMEETINGS"  title="Wiki"  class="externalLink" >Wiki</a></li>
            <li class="dropdown">
                <a href="#" class="dropdown-toggle" data-toggle="dropdown">Parent Project <b class="caret"></b></a>
                <ul class="dropdown-menu">
                    <li ><a  href="../index.html"  title="Openmeetings" >Openmeetings</a></li>
            </ul>
        </li>
                            <li class="dropdown active">
                <a href="#" class="dropdown-toggle" data-toggle="dropdown">Project <b class="caret"></b></a>
                <ul class="dropdown-menu">
                    <li ><a  href="index.html"  title="About" >About</a></li>
                    <li ><a  href="project-info.html"  title="Info" >Info</a></li>
                                    <li  class="active" ><a  href=""  title="Summary" >Summary</a></li>
                    <li ><a  href="http://www.apache.org/licenses/"  title="License"  class="externalLink" >License</a></li>
                    <li ><a  href="dependencies.html"  title="Dependencies" >Dependencies</a></li>
                    <li ><a  href="dependency-convergence.html"  title="Dependency Convergence" >Dependency Convergence</a></li>
                    <li ><a  href="rat-report.html"  title="RAT Report" >RAT Report</a></li>
            </ul>
        </li>
            </ul>
        </div><!--/.nav-collapse -->
      </div> <!--/.container -->
    </div> <!--/.navbar -->
  <div class="container">
  <!-- Masthead -->
  <!-- ================================================== -->  <div class="header container-fluid">
  <div class="jumbotron subhead">
    <div class="row" id="banner">
      <div class="col-md-12">
        <div class="pull-left">
                                      <a href="../index.html" id="bannerLeft">
                    <img src="../images/logo.png"
                 alt='"'Apache OpenMeetings'"'
 />            </a>
        </div>
        <div class="pull-right">
                                      <a href="https://apache.org" id="bannerRight">
                    <img src="https://apache.org/img/asf_logo.png"
                 alt='"'Apache'"'
 />            </a>
        </div>
      </div>
    </div>
  </div>
    <div>
      <ol class="breadcrumb">
      <li class="publishDate version-date">
    Last Published: 2018-09-16
</li>
      </ol>
    </div>
  </div> <!-- end : header -->
  <div class="main-body">

  <div class="row">
    <div class="col-md-8">
      <div class="body-content">
<div class="section"> 
 <div class="page-header">
  <h2 id="_toc_project_summary">Project Summary</h2>
 </div> 
 <a name="Project_Summary"></a> 
 <div class="section"> 
  <h3 id="_toc_project_information">Project Information</h3> 
  <a name="Project_Information"></a> 
  <table border="0" class="bodyTable table table-striped table-hover"> 
   <thead> 
    <tr class="a"> 
     <th>Field</th> 
     <th>Value</th> 
    </tr> 
   </thead> 
   <tbody> 
    <tr class="b"> 
     <td>Name</td> 
     <td>Openmeetings Screen Sharing applet</td> 
    </tr> 
    <tr class="a"> 
     <td>Description</td> 
     <td>Module to build OpenMeetings web application to grab a screen and send it to a Server</td> 
    </tr> 
    <tr class="b"> 
     <td>Homepage</td> 
     <td><a class="externalLink" href="https://openmeetings.apache.org/openmeetings-screenshare">https://openmeetings.apache.org/openmeetings-screenshare</a></td> 
    </tr> 
   </tbody> 
  </table> 
 </div> 
 <div class="section"> 
  <h3 id="_toc_project_organization">Project Organization</h3> 
  <a name="Project_Organization"></a> 
  <table border="0" class="bodyTable table table-striped table-hover"> 
   <thead> 
    <tr class="a"> 
     <th>Field</th> 
     <th>Value</th> 
    </tr> 
   </thead> 
   <tbody> 
    <tr class="b"> 
     <td>Name</td> 
     <td>Apache Software Foundation</td> 
    </tr> 
    <tr class="a"> 
     <td>URL</td> 
     <td><a class="externalLink" href="https://apache.org">https://apache.org</a></td> 
    </tr> 
   </tbody> 
  </table> 
 </div> 
 <div class="section"> 
  <h3 id="_toc_build_information">Build Information</h3> 
  <a name="Build_Information"></a> 
  <table border="0" class="bodyTable table table-striped table-hover"> 
   <thead> 
    <tr class="a"> 
     <th>Field</th> 
     <th>Value</th> 
    </tr> 
   </thead> 
   <tbody> 
    <tr class="b"> 
     <td>GroupId</td> 
     <td>org.apache.openmeetings</td> 
    </tr> 
    <tr class="a"> 
     <td>ArtifactId</td> 
     <td>openmeetings-screenshare</td> 
    </tr> 
    <tr class="b"> 
     <td>Version</td> 
     <td>4.0.5</td> 
    </tr> 
    <tr class="a"> 
     <td>Type</td> 
     <td>jar</td> 
    </tr> 
    <tr class="b"> 
     <td>Java Version</td> 
     <td>1.8</td> 
    </tr> 
   </tbody> 
  </table> 
 </div> 
</div>      </div>
    </div>
        <div class="col-md-4">
            <div id="toc-sidebar" class="hidden-print hidden-xs hidden-sm"  data-spy="affix" >

                <div id="toc-scroll-target">
                <div class="well">
                                                    <ul class="nav m-nav--sidebar m-aside-toc">
                    <li class="nav-header">Table of Contents</li>
            <li>
        <a href="#_toc_project_summary" title="Project Summary">
        Project Summary
        </a>
        <ul class="nav m-nav--sidebar">
                <li>
        <a href="#_toc_project_information" title="Project Information">
<span class="fa fa-angle-double-right"></span>        Project Information
        </a>
</li>
                <li>
        <a href="#_toc_project_organization" title="Project Organization">
<span class="fa fa-angle-double-right"></span>        Project Organization
        </a>
</li>
                <li>
        <a href="#_toc_build_information" title="Build Information">
<span class="fa fa-angle-double-right"></span>        Build Information
        </a>
</li>

        </ul>
</li>
                    </ul>
                                </div>
            </div>

        </div>
  </div> <!-- /row -->
  </div>
    </div> <!-- end : row -->
</div> <!-- /container -->
  <!-- Footer
  ================================================== -->
  <footer class="well">
    <div class="container">
      <div class="row">
            <div class="col-md-4 bottom-nav">

                <ul class="nav nav-list">
                    <li class="nav-header">Parent Project</li>
                    <li ><a  href="../index.html"  title="Openmeetings" >Openmeetings</a></li>
                </ul>

            </div>
            <div class="col-md-8 bottom-nav">

                <ul class="nav nav-list">
                    <li class="nav-header">Project</li>
                    <li ><a  href="index.html"  title="About" >About</a></li>
                    <li ><a  href="project-info.html"  title="Info" >Info</a></li>
                                    <li  class="active" ><a  href="#"  title="Summary" >Summary</a></li>
                    <li ><a  href="http://www.apache.org/licenses/"  title="License"  class="externalLink" >License</a></li>
                    <li ><a  href="dependencies.html"  title="Dependencies" >Dependencies</a></li>
                    <li ><a  href="dependency-convergence.html"  title="Dependency Convergence" >Dependency Convergence</a></li>
                    <li ><a  href="rat-report.html"  title="RAT Report" >RAT Report</a></li>
                </ul>

            </div>
      </div>
    </div>
  </footer>
  <div class="container subfooter">
    <div class="row">
      <div class="col-md-12">
        <p class="pull-right"><a id="m-scroll-top" href="#">Back to top</a></p>
        <p class="copyright">Copyright &copy;2012-2018                 <a href="https://apache.org">Apache Software Foundation</a>
. All Rights Reserved.</p>
<p>Apache OpenMeetings, OpenMeetings, Apache, the Apache feather, and the Apache OpenMeetings project logo</p>
			<p>are trademarks of the Apache Software Foundation.</p>
      </div>
    </div>
  </div>
  <!-- Le javascript
  ================================================== -->
  <!-- Placed at the end of the document so the pages load faster -->
    <script src="../js/jquery.min.js"></script>
  <script src="../js/bootstrap.min.js"></script>

  <script src="../js/lightbox.min.js"></script>

  <script src="../js/reflow-scroll.js"></script>

<script src="../js/site.js" type="text/javascript"></script>  <script src="../js/reflow-skin.js"></script>
    <script src="../js/anchor.min.js"></script>
    <script>
        document.addEventListener("DOMContentLoaded", function(event) {
            anchors.options = {
              placement: 'left',
            };
            anchors.add('h1,h2, h3, h4, h5, h6');
        });
    </script>

  </body>
</html>
