flash聊天室,fms聊天室源码
一,首先我们要准备软件
1.Flash Media Server 2 (就是大家常说的FMS,以前的版本叫FCM)
2.Macromedia Flash
二,安装FMS(一般默认安装就可以了)
我们要制作聊天室 除了制作软件和运行环境外,还需要一个服务器端文件,来接受和处理客户端(swf),发出的请求.一般运行的服务器端脚本放在 C:\Program Files\Macromedia\Flash Media Server 2\applications 目录下.
三.编写服务器端脚本
首先,我们先在 C:\Program Files\Macromedia\Flash Media Server 2\applications 建立一个文件夹
chat 然后在这个文件夹内 创建一个文本文件 然后改名为 main.asc (注意后缀名也要改哦!)
用flash打开 main.asc 我们开始编写代码
application.onAppStart = function() {
trace("onAppStart");
};
application.onConnect = function(client, uName) {
trace("onConnect = "+uName);
client.UserName = uName;
application.acceptConnection(client);
//有人登陆
hellomsg="系统信息:<font color=\"#ff0000\"><b>"+client.UserName+": </b></font>进入聊天室<br>";
application.broadcastMsg("showmsg",hellomsg)
//接收客户端传来的数据 (跟客户端的 client_nc.call 相对应)
client.sendmsg = function(msg) {
mesg = "<font color=\"#ff0000\"><b>"+client.UserName+": </b></font>"+msg+"<br>";
//发送给客户端数据 (跟客户端的 chat_so.showmsg 相对应)
application.broadcastMsg("showmsg",mesg)
};
};
application.onDisconnect = function(client) {
trace("onDisconnect ="+client.UserName);
//有人离开
hellomsg="系统信息:<font color=\"#ff0000\"><b>"+client.UserName+": </b></font>离开聊天室<br>";
application.broadcastMsg("showmsg",hellomsg)
};
application.onAppStop = function() {
trace("onAppStop");
};
四.制作客户端文件
用flash新建立一个文件,然后编写代码如下 (只有主要代码,其它的代码请看源文件)
client_nc = new NetConnection();
client_nc.onStatus = function(info) {
if (info.code == "NetConnection.Connect.Success") {
//trace("连接成功"+info.level);
} else if (info.code == "NetConnection.Connect.Closed") {
//trace("已经离开"+info.level);
} else if (info.code == "NetConnection.Connect.Failed") {
//trace("连接失败"+info.level);
}
trace("info.code="+info.code);
trace("info.level="+info.level);
};
//我们在 服务器端 applications 建立的文件夹 为 chat 所以连接服务器地址为 rtmp:/chat
//如果是远程服务器 写法为 rtmp://www.stonemx.com/chat
client_nc.connect("rtmp:/chat", _global.ChatUserName);
//接收服务器端传来的数据 (跟服务器端的 aapplication.broadcastMsg 相对应)
client_nc.showmsg = function(msg) {
txtChat.text += msg;
};
btSend.onRelease = function() {
if (txtInput.text != "") {
//把要说的话发送给服务器 (跟服务器端的 client.sendmsg 相对应)
client_nc.call("sendmsg", null, txtInput.text);
txtInput.text = "";
}
};
好了到这里已经制作完成,你可以打开两个swf 然后看看效果 :)
源文件下载:
fms聊天室源码UploadFiles/2007-5/515538378.rar