FMS新手入门级教程

更新时间:2023-09-28 23:35:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

分类: FMS路上

Flash Media Server 入门教程

[ 2007-08-29 14:56:31 | 发布: N神 ]

字体大小: 大 | 中 | 小

FMS 入门教程

我把我以前的那些FMS学习笔记整理了一下,做了下修改,成了一页的FMS教程,方便想学FMS的新手来看,如果还有错误或者看不懂的地方欢迎留言,或email偶,偶会进行更改

什么是Flash Media Server ?

Flash大家庭里的一员,这个东东以前叫Flash Communication Server,传说中的FCS就是这个,现在改叫FMS了...

不见不知道哦,一见真可怕,adobe还有这么cool的东东,自从见了她,让我做些小东东的兴趣全没了,一心想研究这个

这东东能做什么?

视频录制啊,flash聊天室啊,在线视频会议啊啊, 网络游戏?

不管怎样先安个试试吧

先到这里下载免费的开发者版本吧

http://www.macromedia.com/software/flashmediaserver/

然后安装,安装时记得用户名和密码不要瞎填自己要记住,如果你已经瞎填了那就到 安装目录下\\conf\\fms.ini 里找吧

偶装到了c盘,找到目录

C:\\Program Files\\Macromedia\\Flash Media Server 2

先要打开服务器哦

你在本机装的fms,本机就是服务器了哦!记得现在你的机器既是客户端又是服务端哦 开始===程序===Macromedia===Flash Media Server 2

有两个start****,都要打开,关时候两个都要关,如果你怕麻烦直接找tool文件夹里的批处理文件StartServerService.bat吧,双击他,他会帮你搞定地,想关就找StopServerService.bat。~

applications文件夹

你可以在里边建一个文件夹例如叫 FirstApp,这就建了一个Application,以后所有此项目服务器端的flv文件啊,共享文件啊都会在这里边,有时服务器端需要写程序的时候里边会有个main.asc 文件,这个就是服务器端程序,服务器端程序目前只支持as1写,是在服务器上执行的,你也可以用trace调试,怎么trace管理服务器时候你会看到,你可能会建若干个app,在一台服务器上同时运行,比如录象的app,聊天室的app。。。这些所有的app都通过fms自带的fms2_console.swf管理,现在就去看看如何管理服务器吧!

管理服务器~

服务器打开后就要管理了哦,点开fms2_console.swf,别看他只是个swf,后台管理就靠他了,输入你安装时候的密码和用户,服务器地址写 localhost 就好看到了吧,熟悉熟悉他吧

以后我们写程序最常用的就是这个View Applications ,每当有客户端连接服务器时,左边就会列出连接的是哪个app,有多少连接 下图为连接applications文件夹下的bs文件夹(bs文件夹,因为每个文件夹对应一个app,就是bs app),连接数为1,458是实例名(实例名默认为 _definst_ ,每个文件夹可以有若干实例,互相不影响,这个特性可以用来做聊天是的房间,以后再说)

选中某个app后,或者客户端有连接,会看到当前打开的app的状态,这个

Live Log 服务器端的trace就这里看了 ,右边依次是客户端情况 , 共享对象,流,执行的情况(占内存,cpu等),后边两个小按钮,调试时候常用哦,reload和unload!

每当服务器端main.asc修改后一定记得reload或者unload一下,否则不会生效,unload会把窗口关闭,有客户端连的时候还会自动打开

总有人告诉我,他的fms经常会出现诡异现象,比如连接不上,代码已经删了还会执行,一生气连文件夹都删了,还会执行,怀疑是自己的rp有问题。。

那不是rp问题,记住出现问题就reload !实在不行就去tools文件夹点StopServerService.bat

conf文件夹

还有重要的是conf文件夹了,里边是一些服务器端的配置文件,以后可能会用,先不用动。。。。

自此,安装部分结束,go on...

有一种协议叫rtmp

客户端和服务器端通信是使用协议rtmp的

现在在服务器端applications文件夹(当然偶的客户端和服务器端是一台机器了)里建个test1文件夹,你的地址就为

rtmp:/test1 或者 rtmp://localhost/test1

注意两个地址中的 \符号

打开flash

与服务器通信首先要建个NetConnection() nc = new NetConnection(); 连接

nc.connect(\

怎么知道连没连上呢?顺利连接服务器后会触发一个onStatus事件,自己trace一下info.code

nc.onStatus = function(info) { //trace(info) //trace(info.code) for (i in info) { trace(i+\} };

完整代码:

nc = new NetConnection(); nc.onStatus = function(info) { trace(info.code);

if (info.code == \ trace(\接通\ } };

nc.connect(\

注意:默认情况下服务器是允许你连接的,但只是默认,如果服务器拒绝你连接的话,上述代码就不好用了。怎么回事?我们看看连接的过程吧

连接过程

每当客户端试图连接服务器,一个NetConnection.connect(),服务器将会调用application.onConnect 来鉴定是不是允许客户端连接,onConnect()方法返回null 或不返回则将进入未决状态,直到onConnect方法中返回true或执行acceptConnection(client)则允许,返回false或执行rejectConnection(client)则拒绝,如图(从左往右看)

本文来源:https://www.bwwdw.com/article/eujd.html

Top