14.17. Invoking Client-Side Functions from the Server


You want to invoke a client-side function from Server-Side ActionScript.


Define the client-side function as a method of the client-side net connection object, and then, on the server, invoke the call( ) method on the client object.


To invoke client-side functionality from the FlashCom server, you must first define the client-side functionality within a method of the net connection object. Then you can invoke that method from the FlashCom server using the call( ) method of the corresponding client object.

For example, here is a snippet of client-side code (meaning it should be in your Flash movie) that defines a custom method for a net connection object:

myConnection.myCsFunction = function (  ) {
  trace("Method called from server!");

Then, in the Server-Side ActionScript (in the main.asc file or other .asc included in main.asc), you can invoke the server-side function, in this case myCsFunction( ), using the call( ) method. You should invoke the call( ) method on the client object that corresponds to the client on which you want to invoke the function. For example, you can invoke the same method in all connected clients using a for statement, as shown here:

for (var i = 0; i < application.clients.length; i++) {

See Also

Recipe 14.16 and Recipe 17.6. This chapter has barely scratched the surface of what can be done with FlashCom server and Server-Side ActionScript. ...

Get Actionscript Cookbook now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.