Server Side ActionScript(SSAS) é a liguagem de programação utilizada pelo Flash Media Server, muito poderosa e com muitos recursos para trabalhar com dados síncronos ou até mesmo a manipulação de arquivos.

Sendo uma linguagem server-side, não é preciso que esta seja compilado junto com o SWF, ou seja, você usa como se estivesse usando outra linguagem de servidor como PHP, Ruby on Rails ou ColdFusion.

Quando criamos uma aplicação com o Flash Media Server, estas são criadas no seguinte diretório.

C:\Program Files\Adobe\Flash Media Server 3\applications

Ou seja, se criarmos uma aplicação no Flash Media Server com o nome de “teste”, ficará da seguinte forma: caso queira mudar esse diretorio padrão, basta encontrar o seguinte arquivo

C:\Program Files\Adobe\Flash Media Server 3\conf\fms.ini

e mudar na seguinte linha para o diretorio de sua preferência

              # Application directory for the virtual host
              # For example:
              #    VHOST.APPSDIR = C:\myapps
              #
              VHOST.APPSDIR = C:\minhasApps
              

Partindo do princípio que estamos usando a configuração padrão do Flash Media Server, salveremos os arquivo .asc no seguinte diretório: C:\Program Files\Adobe\Flash Media Server 3\applications\teste

Então logo teremos o seguinte endereço rtmp “rtmp://localhost/teste” ou “rtmp://seu_servidor_fms/teste” para ser acessado pela aplicação cliente.

Quando criamos aplicações que vão realizar comunicações bilaterais ou seja, server <-> cliente, por padrão deve-se criar sempre um arquivo chamado “main.asc” que será chamado automaticamente quando a aplicação for carregada.

Uma dica é acompanhar o andamento do server, aplicações, streams etc. pelo console do Flash Media Server, localizado seguinte endereço.

C:\Program Files\Adobe\Flash Media Server 3\fms_adminConsole.swf

É no console que você vai acompanhar seu debug no Flash Media Server, como por exemplo:

Arquivo main.asc

// ActionScript Communications Document trace(“init app…”);

E no console teremos o seguinte resultado:

Agora a integraçao com o Flex é bem simples, vejamos o seguinte exemplo:
              <?xml version="1.0" encoding="utf-8"?>
              <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" 
                                       layout="absolute" 
                                       creationComplete="init();">
                <mx:Script>
                  <![CDATA[
                  import flash.net.NetConnection;
                  import flash.net.ObjectEncoding;
              
                  [Bindable]
                  public var nc:NetConnection = new NetConnection();
                  [Bindable]
                  public var rtmp:String = "rtmp://localhost/flexfms";
              
                  public function init():void{
                   trace("init app...");
                   nc = new NetConnection();
                   //Opa!!! Com o Flash Media Server 3, 
                   //nao é mais necessario setar qual AVM usar.
                   //nc.objectEncoding = ObjectEncoding.AMF0;
                   nc.connect(rtmp);
                   nc.addEventListener(NetStatusEvent.NET_STATUS,handler);
                   nc.addEventListener(AsyncErrorEvent.ASYNC_ERROR,asyncErrorHandler);
                  }
              
                  public function handler(e:NetStatusEvent):void{
                    trace(e.info.code);
                  }
              
                  public function asyncErrorHandler(e:AsyncErrorEvent):void{
                   trace(e);
                  }
              
                  public function onBWDone():void{
                   //
                  }
                  ]]>
                </mx:Script>
              </mx:Application>
              

Compilando o mxml, deveremos ter o seguinte resultado:

Essa foi a primeira parte de uma série de artigos, no próximo nos aprofundaremos mais na linguagem de servidor do Flash Media Server