>
Smartfox server and Actionscript 3.0
Welcome, Guest

by pooja on Tuesday, 09 June 2009
Smartfox server and Actionscript 3.0


Smartfox Server
SmartFoxServer is a comprehensive and powerful platform for rapidly developing multiuser applications and games with Adobe Flash/Flex/Air, Java, .Net, Unity3D, Apple iPhone and more...
It was developed with simplicity in mind, allowing developers to quickly create any type of multiplayer interactions, from basic chat applications to complex real-time games and MMOs.
If you're using the Actionscript 3.0 API component  you'll use this line :
 import it.gotoandplay.smartfoxserver.*
The first line will always be present in all your "SmartFoxServer" applications as it imports the SmartFoxClient class and its relative helper classes.
 private var sfs:SmartFoxClient   
 private var roomListEvent:SFSEvent
 private const serverIp:String = "127.0.0.1"
 private const serverPort:int = 9339
 private const serverZone:String = "simpleChat"

//SmartFoxClient is the main class in the SmartFoxServer API. This class is responsible for connecting to the server and handling all related events.
//Three simple variables are used to connect to the server: ip, port and zone.
//SFSEvent is the class representing all events dispatched by the Smart Fox Client  instance.
//Establish a connection to SmartFoxServer
public function connect():void
     {
  sfs.connect(serverIp, serverPort)
     }
//Dispatched when the login to a SmartFoxServer zone has been attempted.
   public function onLogin(evt:SFSEvent):void
 {
               var ok:Boolean = evt.params.success
if (!ok)
    {
     trace("Logged Not In");
            }
    else
    {
     trace("Logged In");
                                             }
     }
//Dispatched when a user in the current room updates his/her User Variables
  function onUserVariablesUpdat(evt:SFSEvent):void  
  {
   var room:Room = sfs.getActiveRoom()
                    trace(room);
   trace(evt.params.user.getVariable("cards"));  
  }
 //Dispatched when an error occurs while joining a room.
 public function onJoinRoomError(evt:SFSEvent):void
   {
    //var warning:WarningWindow = PopUpManager.createPopUp(this, WarningWindow, true) as WarningWindow
    //warning.setWarning("Room join error:n" + evt.params.error)
    // Set the selection in the room list component
    //setRoomListSelection(sfs.getActiveRoom()
            )
   //Dispatched when an error occurs during the creation of a room.
   public function onCreateRoomError(evt:SFSEvent):void
   {
    //var warning:WarningWindow = PopUpManager.createPopUp(this, WarningWindow, true) as WarningWindow
    //warning.setWarning("Room creation error:n" + evt.params.error)  
   }
  //Dispatched in response to the connect request. 
 public function onConnection(evt:SFSEvent):void
 { 
    var ok:Boolean = evt.params.success
        if (ok)
    {
     trace("Pass");
     joinZone();
    }
    else
    {
     trace("Fail");
    }
 }
 //Dispatched when the list of rooms available in the current zone is received.
   public function onRoomListUpdate(evt:SFSEvent):void
  {
    roomListEvent = evt
    var rList:Array = roomListEvent.params.roomList as Array
    for each(var r:Room in rList)
    {
     var txt:String = r.getName() + " (" + r.getUserCount() + "/" + r.getMaxUsers() +"/"+r.getId()+ ")"
     trace(txt);
     }
 }
 //Dispatched when a new room is created in the zone where the user is currently logged in.
public function onRoomAdded(evt:SFSEvent):void
   {
    var room:Room = evt.params.room
        // Update view
    var label:String = room.getName() + " (" + room.getUserCount() + "/" + room.getMaxUsers() +    
 "/"+room.getId()+")"
    trace(label);
    
   }
//Dispatched when a room is removed from the zone where the user is currently logged in.
   public function onRoomDeleted(evt:SFSEvent):void
   {
    var room:Room = evt.params.room
     var roomId:int = room.getId()
       }
   // Dispatched when a count change in one room of the zone
   public function onUserCountChange(evt:SFSEvent):void
   {
    var r:Room = evt.params.room as Room
    var id:int = r.getId()
    // Cycle through all rooms in the list and find the one that changed
    /*for each (var o:Object in roomList.dataProvider)
    {
     if (o.data == id)
     {
       o.label = r.getName() + " (" + r.getUserCount() + "/" + r.getMaxUsers() + ")"
      break
     }
    }
        roomList.invalidateList()*/
   }
  // Handle a public message
   public function onPublicMessage(evt:SFSEvent):void
   {
    var message:String = evt.params.message
    var sender:User = evt.params.sender
        //ta_chat.htmlText += "<b>[" + sender.getName() + "]:</b> " + message +"<br>"
    //ta_chat.verticalScrollPosition = ta_chat.maxVerticalScrollPosition
   }
 //Handle a private message
  public function onPrivateMessage(evt:SFSEvent):void
   {
    var message:String = evt.params.message
    var sender:User = evt.params.sender
    //ta_chat.htmlText += "<b><font color='#550000'>[PM - " + sender.getName() + "]:</font></b> " + message +"<br>"
   }
  // Dispatched when new user  enters the current room
   public function onUserEnterRoom(evt:SFSEvent):void
   {
    var roomId:int = evt.params.room as int
    var user:User = evt.params.user as User
    //var provider:ArrayCollection = userList.dataProvider as ArrayCollection
           //provider.addItem( {label:user.getName(), data:user.getId()} )
    //provider.refresh()    
        //userList.invalidateList()
   }  
 //Dispatched when a user leaves the current room.
   public function onUserLeaveRoom(evt:SFSEvent):void
   {
    var roomId:int = evt.params.roomId as int
    var userId:int = evt.params.userId as int
                }
   
 // Dispatched when Connection is lost
   public function onConnectionLost(evt:SFSEvent):void
   {
    //viewstack.selectedChild = view_logout
   }
   
     public function invokeExtension(dat:String)
  {
   var o:Object=new Object();
      o.name=dat;
     sfs.sendXtMessage("Game", "GameE", o)
   }
 
 }
}

 



Blogger Image
My Blog Title

Product Engineering, software engineering company, Product Development, Product Migration, Product Re-engineering, Product Maintenance, Product Testing Commercial Application Development, Business Software development, commercial software for startups, Application Support and Maintenance, software testing Product Maintenance, Outsource product maintenance, product support and maintenance Product Migration, Product Re-engineering, product re-engineering services Product Research, Product Engineering, UI Prototyping Services Software Testing Services, Quality Assurance services, professional software testers, Load Testing, Functional Testing, Cross Platform, Browser Testing, Test Automation, Testing Tools, software quality analysis Functional Testing Services, software quality analysis, Software Testing Services, Application Testing Services, Functional Testing Types Automated Testing, Automated Testing Services, automation testing, test script development, Automation Test Tools, outsource automation testing Load Testing, Performance Testing Services, Load Testing Tools Offshore Software Development, Outsource software services, offshore outsourcing services, offshore software development services, IT outsourcing services, software quality assurance services, Offshore IT services, Custom Application Development Services, Offshore Product Engineering Benefits of IT Outsourcing, Offshore Software Development companies, offshore software development firms Outsource planning, IT outsourcing, IT development services, offshore IT companies, offshore software development Offshore Software Development, Outsource software services, offshore outsourcing services, offshore software development services, IT outsourcing services, software quality assurance services, Offshore IT services, Custom Application Development Services, Offshore Product Engineering Offshore Software Development, Outsource software services, offshore outsourcing services, offshore software development services, IT outsourcing services, software quality assurance services, Offshore IT services, Custom Application Development Services, Offshore Product Engineering