FluorineFx+Flex视频聊天室案例开发----应用部署篇2011-04-10 博客园 Bēniaǒ这段时间的随笔一直都是关于及时通信应用方面的,其中有许多的朋友对于开发都没什么 问题,但是在程序部署上就出问题了。本篇将简单的介绍FluorineFx + Flex视频聊天室的部 署方面的相关内容。首先需要需要注意一点就是Flex的配置文件service-config.xml,后面的flash将通过 service-config.xml里配置的RTMP通信信道与FluorineFx的RTMP服务器连接连接,详细配置 如下:
<channel-definition id="my-rtmp" class="mx.messaging.channels.RTMPChannel"><endpoint uri="rtmp://{server.name}:2777" class="flex.messaging.endpoints.RTMPEndpoint"/><properties><idle-timeout-minutes>20</idle-timeout-minutes></properties></channel-definition>
在网站中添件一新Web页面(FluorineChatRoom.aspx)来承载flash(.swf)的运行,将新 发布的.swf负载到该页面。
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"id="VideoChat" width="520" height="520"codebase="http://fpdownload.macromedia.com/get/flashplayer/current/swflash.cab"><param name="movie" value="flash/VideoChat.swf" /><param name="quality" value="high" /><param name="bgcolor" value="#869ca7" /><param name="allowScriptAccess" value="sameDomain" /><embed src="flash/VideoChat.swf" quality="high" bgcolor="#869ca7"width="520" height="520" name="VideoChat" align="middle"play="true"loop="false"quality="high"allowScriptAccess="sameDomain"type="application/x-shockwave-flash"pluginspage="http://www.adobe.com/go/getflashplayer"></embed></object>
然后将宿主FluorineFx提供的RemotingService和ApplicationAdapter的网站发布出来部 署到IIS上。

部署过程中我单独分配了一个Web端口88,OK,现在运行Geteway.aspx就会得到一个地址 :http://localhost:88/Gateway.aspx 这个地址就是flash中需要用来作为RPC通信的通信网 关地址,简单的理解就是通过这个地址来访问FluorineFx提供的远程服务(RemotingService )。现在回到客户端开发代码中去,修改通信网关的地址,将原来在VS下调试的地址修改为 部署到IIS后的访问地址:remoteConn = new RemotingConnection ("http://localhost:2020/ChatRoom.FluorineFxWeb/Gateway.aspx",ObjectEnco ding.AMF3);修改为如下:remoteConn = new RemotingConnection ("http://localhost:88/Gateway.aspx",ObjectEncoding.AMF3);现在重新发布flash,将新发布的.swf复制到IIS中部署的站点对应的目录下,到这里在本 地测试基本就完成了。但是这样做只能做到本地单机访问,如果要在局域网内访问则需要在 IIS中为该应用站点分配IP,然后通过IP访问就OK了。服务器主机上又怎么部署呢?通过上面这些步骤或许已经体会到,Flash客户端需要的只 是两个地址,一个Gateway.aspx网关地址,一个是RTMP服务器访问地址,其实随便你将这个 Web应用这么部署,只要保证这两个地址有效就行了。比如你的服务器IP是:61.128.128.68 ,在此服务器上部署了FluorineFx网站(绑定的域名为www.mydomain.com);那么客户端访 问RemotingService的地址则为:"http://www.mydomain.com/Gateway.aspx ",RTMP服务器的连地址则为:"rtmp://61.128.128.68:2777/VideoChat"。 通过这两地址修改flash端然后重新发布一个.swf覆盖以前的flash文件,这样就可以通过域 名在公网上使用本篇所介绍的视频聊天室案例项目了。