改造OpenMeetings成为Flash视频会议室

版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明
http://fallenlord.blogbus.com/logs/15808503.html

首先,像那些找美女视频聊天点进来的兄弟说声Sorry。。。。显然这里没有美女。。当然,视频也没有。

好了,开始吧。首先我们需要用到以下东东:

1. JDK 1.5或以上版本  -  这个就不说了,以下所有东西都是基于它的。
2. Red5  -  开源Flash服务器,用来替代FCS/FMS,毕竟License还是有些贵的,呵呵。这里有信息和下载 http://www.osflash.org/red5
3. OpenMeetings  -  开源视频会议系统,基于OpenLaszlo开发。这里有信息和下载 http://code.google.com/p/openmeetings/
4. OpenLaszlo  -  开源的富客户端应用开发平台(有点长,呵呵,用它的话来说是the premier open-source platform for rich internet applications)。这里有信息和下载: http://www.openlaszlo.org/
5. MySQL或者其他数据库  -  必须是Hibernate支持的数据库
6. SVN - 著名的版本管理工具Subversion,用来下载OpenMeetings的源代码的。Windows下推荐TortoiseSVN,这里下载: http://tortoisesvn.tigris.org/。Liunx就直接命令行吧,呵呵。喜欢用Eclipse的兄弟也可以用Subclipse插件 http://subclipse.tigris.org/
7. 没有第7个东西要下载了

好了上面是需要用到的项目,我们先来部署一次看看效果。下面是部署过程,我们暂时不需要用到Laszlo和SVN

1. 先装JDK(注意要是1.5.0以上),这个到处都有教程,就不说了。注意装完以后要设置JAVA_HOME到JDK路径。
2. 根据你的系统下载red5的安装包,然后傻瓜式安装
3. 从OpenMeetings下载一个已经打包好的应用(http://code.google.com/p/openmeetings/downloads/list),解压到Red5的webapps里面,解压后目录应该是xmlcrm(最新版本可能为openmeetings)
4. 到解压后的OpenMeetings项目下Install目录中(新版本可能为conf)按照你自己的数据库来修改目录中的任意一个xxx_hibernate.cfg.xml文件并另存为hibernate.cfg.xml,我的是MySQL所以就直接把mysql_hibernate.cfg.xml文件改名然后把数据库地址用户名密码写上去就OK了。
5. 打开config.xml文件,看看端口啊,地址啊,有没有什么要修改的。
6. 启动Red5服务器。如果是在Windows下Red5设成了服务的,在Windows的服务中重启。
7. 开浏览器输入地址http://localhost:5080/xmlcrm/Install(注意大小写;Install根据版本也有可能为conf;另外5080是默认端口,如果修改了就按照你自己的弄)先进入安装界面,东西随便填。注意邮件服务器,如果你像我一样没有邮件服务器的话,就不填,只是暂时只能由管理员来添加帐号而无法直接注册,呵呵。然后其中要填入两个工具地址,就在页面上已经提供了下载了。
8. 配置完了点击Send按钮,然后去喝杯咖啡或者茶什么的,因为要5-10分钟。。。=。=#
9. 全部搞定访问 http://localhost:5080/xmlcrm就可以登陆了,你登陆的时候会是管理员,可以在顶上选择Manage来进行管理。同时提供白板可以画画,还可以共享桌面,呵呵。

看了效果后如果有兴趣,我们就可以开始着手修改OpenMeetings了。

要修改当然先是要拿到源代码了。我们先大致了解一下OpenMeetings的源代码结构。OpenMeetings分为两部分:一部分是客户端,由OpenLaszlo和一些Flash文件组成,负责生成最终的客户端swf文件;另一部分是服务器端,由Java代码编写而成。我们必须分别下载并编译这两个部分,注意这两个部分版本必须一样。下面分别说明这两个部分的部署过程。

 

服务器端

1. 用SVN从这个地址Check out出代码http://openmeetings.googlecode.com/svn/branches/dev/xmlcrm/java/
2. 到install目录中(新版本可能为conf)按照你自己的数据库来修改目录中的任意一个 xxx_hibernate.cfg.xml文件并另存为hibernate.cfg.xml,我的是MySQL所以就直接把 mysql_hibernate.cfg.xml文件改名然后把数据库地址用户名密码写上去就OK了。
3. 代码可以用eclipse直接import,不过编译OpenMeetings推荐使用ant,项目已经提供了一个build.xml文件,直接在eclipse里面Run as Ant就可以编译整个项目,编译结果将在项目下的dist目录下。(这里有个小问题,本人下载的r980版本中的build.xml文件居然编译的时候没有包含编译java文件,导致部署一直失败,解决方法只需要在最后一行的depends="clean, prepare, compile, hibernate"最后加一个jar就可以了,改为 depends="clean, prepare, compile, hibernate, jar")
4. 将编译完成的dist中的openmeetings文件夹复制到red5的webapps下,重启red5服务器,服务器端部署完成。

(如果嫌部署太麻烦,可以将build.xml文件中<property name="dist.dir" value="dist"/>这一行value的值改为你的red5的webapps如:<property name="dist.dir" value="C:\Program Files\Red5\webapps" />,并将<delete dir="${dist.dir}"/>这一行删掉或注释掉。这样每次运行build.xml文件的时候就可以直接部署到red5下了)

 

客户端

1. 下载并安装OpenLaszlo,http://www.openlaszlo.org
2. 用SVN从这个地址Check out 出代码http://openmeetings.googlecode.com/svn/branches/dev/laszlo/client/
3. 代码也可以用eclipse直接import,但编译需要使用OpenLaszlo,这个以后再说。
4. 复制刚才代码下xmlcrm下的videoconference文件夹到OpenLaszlo下,{OpenLaszlo目录}/Server/lps-4.0.9/(4.0.9为我的版本号,根据服务器版本不同而不同)Windows默认安装是这个地址:C:/Program Files/Openlaszlo Server 4.0.9/Server/lps-4.0.9/videoconference/(其中4.0.9同上解)
5. 修改videoconference/config.xml文件,端口啊、地址啊都改成你自己的。rtmphostlocal标签中的内容是你的red5服务器安装位置。

 

数据库配置与测试

本来在上一篇里面写过一点点数据库配置,有兄弟在问,这里就再说下

1. 安装一种数据库,数据库的类型随便,只需要保证hibernate支持类型就行了,这里可以看哪些支持http://www.hibernate.org/80.html,不需要建立任何数据库或库表,等下程序会帮你建立
2. 完成上面两步,注意服务器端的第2步,那里必须保证正确
3. 启动red5服务器
4. 服务器端安装
    访问 http://localhost:5080/openmeetings/Install,程序会自动进入Step 1安装,上面框填入你的信息,中间框邮件服务器那一项如果没有可以留空,下面框填入SWFTool和MagicImage两个必须的工具的安装后的路径,如果没有安装这两个软件的话可以点击输入框下面的连接去下载,安装完成后再填入。然后选择Senden,之后进展会很慢不要关闭页面也不要以为死机了,可以做些别的事情例如和身边的美女同事聊聊天什么的,大约5-10分钟后安装完成,此时数据库中已经多了一个库了。直接访问http://localhost:5080/openmeetings应该可以看见输出结果,但由于其中的swf是事先编译好的,不是我们编译出来的,所以我们还需要学习下面的客户端安装
5. 客户端安装
(1) Proxied方法
现在保证red5服务器中刚才部署的服务器端在运行,然后启动OpenLaszlo服务器,并在浏览器中输入:http://localhost:8080/lps-4.0.9/videoconference/maindebug.lzx?lzr=swf8 和 http://localhost:8080/lps-4.0.9/videoconference/main.lzx?lzr=swf8 即可看到结果(4.0.9根据具体版本号变更,如果OpenLaszlo不在本机,请修改localhost为OpenLaszlo服务器地址
(2) SOLO方法
还可以使用SOLO模式编译(如何SOLO模式编译可以参看我另外一篇文章 OpenLaszlo下的Proxied和SOLO两种编译方法)在客户端目录中生成swf文件,然后将客户端目录中的main.lzx.lzr=swf8.swf 复制到服务器端部署好的目录中覆盖原来的同名swf文件(即{red5路径}/webapps/openmeetings),然后仅启动red5服务器,访问http://localhost:5080/openmeetings同样可以看见结果

 

关于Laszlo开发工具

Laszlo的开发工具网上大多数都是介绍使用Eclipse插件IDE for Laszlo作为开发工具,但此工具在2006年12月的时候就因为太不活跃而被eclipse留档停止了。现在比较推荐的是Spket,http://www.spket.com/,它是免费软件,如果要用于商业目的则需要付费。当然你也可以选择直接使用文本编辑器开发。

好了,差不多了,现在代码也有了,部署也通过了,想改什么都行了,嘿嘿。俺先去摆弄两下iTouch,下次再来说修改和编译^_^。

=======================================

prothes:

源码下载:
http://openmeetings.googlecode.com/svn/trunk/singlewebapp/
 
部署教程:
http://code.google.com/p/openmeetings/wiki/BuildSourceNew

你可能感兴趣的:(改造OpenMeetings成为Flash视频会议室)