flex代码:
private var nc:NetConnection;
private var shareObject:SharedObject;
private var monthDay:Date;
private var isConnectSuccess:Boolean;
private static const RTMP_URL:String="rtmp://localhost/chat";
private function BasicPracticeSO():void{
nc=new NetConnection;
nc.connect(RTMP_URL);
nc.addEventListener(NetStatusEvent.NET_STATUS,operateShareObject);
}
private function operateShareObject(evt:NetStatusEvent):void{
isConnectSuccess=(evt.info.code=="NetConnection.Connect.Success");
if(isConnectSuccess){
shareObject=SharedObject.getRemote("userInfo",nc.uri,false);
monthDay=new Date();
shareObject.connect(nc);
shareObject.addEventListener(SyncEvent.SYNC,detectSO);
}
}
private function detectSO(e:SyncEvent):void{
for(var chng:uint;chng
switch(e.changeList[chng].code){
case "change":
updateAllClientMsg();
break;
case "clear":
break;
case "success":
break;
default:
break;
}
}
}
private function updateAllClientMsg():void{
soList.text+=shareObject.data.msg+"n";
}
private function addDataToShareObject():void{
shareObject.setProperty("msg",msgText.text);
soList.text+=msgText.text+"n";
msgText.text="";
}
]]>
FMS 代码:
Client.prototype.echo = function(msg){
trace("client.echo: " + msg);
return msg;
}
|