连接并更新room的步骤:
1) 发起一个socket连接
smartfoxserver对象.connect(ip,port);
2) 发送login到某个zone的请求,并处理onLogin和onRoomListUpdate事件
smartfoxserver.onConnection事件={
smartfoxserver.login(zone, login_txt.text);//登陆zone
//在服务器端您可以定义任意多的zone,您的用户也可以与任意一个zone交互
//smartfox.debug = true,打开smartfoxserver的debug模式,在改模式下flash发送和接收的信息都会在output版面输出,方便调试
//login_txt.text为用户名,服务器不允许有相同的用户名,如果有他会报错。另外用户名为空,服务器会自动生成一个用户名 如:guest_n ,n是一个累加数字.
}
//处理smartfoxserver的onLogin,onRoomListUpdate,onConnectionLost三个事件,其中第二个为连接成功时,客服端会自动的发送一个getRoomList请求到服务器端,服务器会返回一个roomlist并触发onRoomListUpdate 事件
3) 发送autojoin请求,叫服务器将用户加入到默认room,处理加入到默认room的事件
this.autoJoin();//提示: 如果您在config.xml设置了一个属性为autoJoin的room,才可以这么用
//还有一般的登陆房间函数 server.joinRoom(roomId)
//处理登陆房间后的事件
// onJoinRoom事件,onUserEnterRoom事件,onUserLeaveRoom事件,onPublicMessage事件
smartfoxserver.onJoinRoom = function(roomObj){} //roomObj为room对象
// 同一room的用户可以互相交互, 并且可以进入同一个zone里的任何room,并且您还可以同时进入不同的room
4)发送聊天信息
smartfoxserver.sendPublicMessage();
服务器 (在表的根部) 包含一系列的zone,每个zone就是一个独立的应用,一个zone包含了一系列的room,room中包含各个用户.
本文介绍通过socket连接SmartFoxServer,并实现登录Zone、自动加入默认Room及发送聊天信息等功能的详细步骤。
678

被折叠的 条评论
为什么被折叠?



