Openmeetings4.0.0二次开发日志(一)

时间:2024-03-16 13:34:37

由于公司业务要求,需要寻找一款开源的视频会议项目加入到我们公司的业务中。网上此类的开源项目虽然很多,但是坑也很多,要么有的已经停止更新维护多年,要么有的bug成灾,要么有的连着硬件软件一起卖。。。。。为了找个强大好用的开源把我折腾得够呛,一番寻找之后,发现了Openmeetings这款开源软件,感觉还不错,功能很强大,到现在依然在被官方维护,是一个视频会议项目的不错选择。从网上查找了许多和Openmeetings的相关资料,发现这些资料用的版本都比较旧,一般都是2.x或者3.x版本的,并且研究的方向大多集中在安装部署,对Openmeetings的源代码,和具体的二次开发的问题讲得相对较少,且没有细节问题的描述。于是决定把我自己开发过程中的成果和遇到的问题做成日志分享出来,以供后面的同学们参考。
首先先介绍一下Openmeetings:
Openmeetings是Apache的一个开源项目,以前相关信息会发布到googlecode这个网站上,现在googlecode已经不再接受Openmeetings的更新,Apache网站是目前唯一接受更新的地方。在这里给出网址http://openmeetings.apache.org/
Openmeetings提供视频会议,即时通讯,白板,协作文档编辑和其他组件工具,使用Red5流媒体服务器的API函数进行远程处理和流处理。在这里简单罗列一下Openmeetings的功能。
1 音频,视频功能。
Openmeetings4.0.0二次开发日志(一)
2 会议录制和屏幕共享功能
Openmeetings4.0.0二次开发日志(一)
屏幕共享功能需要装java运行环境,且最好装版本高一点的,这个功能以后我会详细讲。
3 文件管理功能
Openmeetings4.0.0二次开发日志(一)
4 权限功能
5 白板和聊天功能
Openmeetings4.0.0二次开发日志(一)
6 用户和房间管理
7 私人信息中心功能
8 集成日历计划会议功能
Openmeetings4.0.0二次开发日志(一)
9 民意调查和投票
Openmeetings4.0.0二次开发日志(一)
10 备份功能,可以将所有用户数据备份到zip文件中。
总体来说,功能还是挺多挺强大的。对了,以上截图都是最新的Openmeetings4.0.0版本的截图,以后的相关源码和编写的demo也是基于这个版本。这个版本于2017年10月30日更新,新版本有这么几个改进:
- 房间白板功能被用html5重写。以前用的flash
- 所有音频/视频组件都使用Apache Flex重写
- 编写了一堆自动测试,代码被清理和简化
- 过时的SMSlib已被中删除
- 室内RTL得到改善
- 不再需要swftool第三方工具
- 性能提高

既然是开源项目,那么源代码肯定是少不了的了。openmeetings4.0.0源码下载地址
或者你也可以直接从git上导出源代码:$ git clone https://github.com/apache/openmeetings.git
另外再附一个最新版github的地址:https://github.com/apache/openmeetings/tree/4.0.3 建议用最新版,bug要少很多
最后导出完的源代码目录:
Openmeetings4.0.0二次开发日志(一)
一共有10个子模块,其中比较重要的是web和webservice模块。webservice模块结构如下:Openmeetings4.0.0二次开发日志(一)
webservice里面主要是openmeetings对外发布的webservice接口,开发者可以调用这些接口实现越过登录页面创建房间等操作。
好了,这篇日志就写到这,下一篇我会将讲一讲如何调用这些接口越过登录页面并实现一些小的demo,有兴趣的同学可以关注一下。