ElectroServer 5 HelloWorld 客户端详细说明

    技术2024-06-25  67

    Log.setLogAdapter(new ES5TraceAdapter());

    可以查看tarce()信息。

     

    private var _es:ElectroServer = new ElectroServer();

    创建一个ElectroServer的实例。

     

    public function Main():void { _es.loadAndConnect("settings.xml"); _es.engine.addEventListener(MessageType.ConnectionResponse.name, onConnectionResponse); _es.engine.addEventListener(MessageType.LoginResponse.name, onLoginResponse); _es.engine.addEventListener(MessageType.JoinRoomEvent.name, onJoinRoomEvent); _es.engine.addEventListener(MessageType.PluginMessageEvent.name, onPluginMessageEvent); }

    根据settings.xml连接服务器,并进行连接、登陆和服务器发送信息的监听。

     

    private function onJoinRoomEvent(e:JoinRoomEvent):void { trace("---room joined---"); } private function onPluginMessageEvent(e:PluginMessageEvent):void { trace("---plugin message received---"); //trace the EsObject payload trace(e.parameters); }

    进入房间后输出"---room joined---"。

    受到信息后输出“plugin message”,然后输出服务器传回来的PluginMessageEvent对象。

    如果想得到对象某个key的value。则

    trace(e.parameters.getString("hwm"));

     

    private function onConnectionResponse(e:ConnectionResponse):void { trace("Connection success: " + e.successful.toString()); if (e.successful) { var lr:LoginRequest = new LoginRequest(); lr.userName = "guest" + Math.round(1000 * Math.random()).toString(); _es.engine.send(lr); } }

    连接服务器成功后,发送一个随机的用户名给服务器。

     

    private function onLoginResponse(e:LoginResponse):void { trace("Login accepted: " + e.successful.toString()); if (e.successful) { joinRoom(); } }

    成功登陆后,执行joinRoom()方法。

     

    private function joinRoom():void{ var crr:CreateRoomRequest = new CreateRoomRequest(); crr.roomName = "HelloWorld"; crr.zoneName = "HelloWorld"; //create the plugin var ple:PluginListEntry = new PluginListEntry(); ple.extensionName = "HelloWorld"; ple.pluginHandle = "HelloWorld"; ple.pluginName = "HelloWorld"; crr.plugins = [ple]; _es.engine.send(crr); }

    设置房间的各种属性,并且加入房间。

    最新回复(0)