パッケージnet.user1.reactor
クラスpublic class Server
継承Server Inheritance flash.events.EventDispatcher

バージョン : Reactor 1.0.0

グローバルなサーバーのデータと関数へのアクセスを提供します。 接続に対するServerオブジェクトへアクセスするには、ReactorのgetServer()メソッドを使用してください。

関連項目

Reactor.getServer()


パブリック メソッド
 メソッド定義元
  
Server(reactor:Reactor)
Server
  
getServerTime():Number
"1970年1月1日を基点としたミリ秒"フォーマットを使用して、サーバーのおおよその現在時間をUTCで返します。
Server
  
Unionサーバーによって使用中のUPCプロトコルのバージョンを返します。
Server
  
getVersion():String
Reactorが現在接続したUnionサーバーのバージョンを返します。
Server
  
sendMessage(messageName:String, includeSelf:Boolean = false, filters:IFilter = null, ... rest):void
サーバー全体にメッセージを送信します。
Server
  
sendModuleMessage(moduleID:String, messageName:String, messageArguments:Object = null):void
指定したサーバーモジュールに指定したメッセージを送信します。
Server
  
syncTime():void
サーバーに現在の時間の送信を要求します。
Server
Events
 Event Summary 定義元
   現クライアントによって先に行われたServerのsyncTime()メソッド呼び出しの応答としてサーバーの現在時刻をサーバーが送信するときに送出されます。Server
コンストラクタの詳細
Server()コンストラクタ
public function Server(reactor:Reactor)



パラメータ
reactor:Reactor
メソッドの詳細
getServerTime()メソッド
public function getServerTime():Number

バージョン : Reactor 1.0.0

"1970年1月1日を基点としたミリ秒"フォーマットを使用して、サーバーのおおよその現在時間をUTCで返します。 この時間は次の二つの値を加えることによって近似されます。

最も正確な可能性のある近似値を読み出すには、初めにsyncTime()を呼び出し、それからServerEvent.TIME_SYNCのコールバック関数内でgetServerTime()を呼び出します。

戻り値
Number

関連項目

getUPCVersion()メソッド 
public function getUPCVersion():VersionNumber

バージョン : Reactor 1.0.0

Unionサーバーによって使用中のUPCプロトコルのバージョンを返します。 プロトコル情報については、UPC仕様を参照してください。

戻り値
VersionNumber
getVersion()メソッド 
public function getVersion():String

バージョン : Reactor 1.0.0

Reactorが現在接続したUnionサーバーのバージョンを返します。

戻り値
String
sendMessage()メソッド 
public function sendMessage(messageName:String, includeSelf:Boolean = false, filters:IFilter = null, ... rest):void

バージョン : Reactor 1.0.0

サーバー全体にメッセージを送信します。

メッセージを受信するには、受信するクライアントはMessageManagerのaddMessageListener()メソッドを通してメッセージリスナーを登録する必要があります。

次のコードは"HELLO"と命名されたメッセージをサーバー上の全クライアントに送信します。
    connection.getServer().sendMessage("HELLO", 
                                       true,
                                       null, 
                                       "Hi everyone!");
    
次のコードは"HELLO"メッセージを受信するためにあるメソッド、helloListener()を登録します。
    connection.getMessageManager().addMessageListener("HELLO", helloListener);
    
次のコードはhelloListener()メソッドを示します。これはデバッグコンソールに受信メッセージを表示します:
    public function helloListener (fromClient:IClient, message:String):void {
      trace("Received message: " + message);
    }
    

パラメータ

messageName:String — 実行するメッセージ名です。
 
includeSelf:Boolean (default = false) — 現クライアント(つまり、sendMessage()を起動したクライアント)にメッセージを送信するかどうかを指定します。 デフォルトはfalseです(送信者にはエコーしません)。
 
filters:IFilter (default = null) — メッセージに適用する一つ以上のフィルターを指定します。 フィルターは各クライアントがメッセージを受信するために満たさなければいけない条件を指定します。 たとえば、メッセージを受信するのは属性"team"が"red"に設定されたクライアントだけといった指示ができます。 完全な詳細については、Filterクラスを参照してください。 フィルターがnullの場合、サーバー上の全クライアントがメッセージを受信します。
 
... rest — オプションです。引数のストリング値をカンマで区切ったリストとしてこのメッセージに付与します。 これらのメッセージはメッセージの受信を登録している全てのリスナーに渡されることになります。 MessageManagerのaddMessageListener()メソッドを参照してください。

関連項目

sendModuleMessage()メソッド 
public function sendModuleMessage(moduleID:String, messageName:String, messageArguments:Object = null):void

バージョン : Reactor 1.0.0

指定したサーバーモジュールに指定したメッセージを送信します。

サーバーモジュールの情報については、Unionサーバーモジュールドキュメントを参照してください。

パラメータ

moduleID:String — メッセージが送られるモジュールのIDです。 モジュールはサーバーのunion.xml設定ファイル内でmoduleの<id>タグを通してIDを割り当てられます。 例えば、次の union.xml の抜粋はserverStatsServerModuleというIDをもつモジュールの設置を示します。
    <modules>
      <module>
        <id>serverStatsServerModule</id>
        <source type="class">net.user1.union.servermodule.ServerStatsServerModule</source>
        <attributes>
          <attribute name="interval">300</attribute>
        </attributes>
      </module>   
    </modules>
    
 
messageName:String — 送信するメッセージ名です。
 
messageArguments:Object (default = null) — ジェネリックなオブジェクトの動的なインスタンス変数として指定されるメッセージ引数です。

関連項目



    // "setRefreshRate"メッセージを"rate"を"2000"にセットした引数と共に送信します。
    var messageArguments:Object = new Object();
    messageArguments.rate = "2000";
    connection.getServer().sendModuleMessage("setRefreshRate", messageArguments);
    
    // 上と同じですが、オブジェクトリテラルなシンテックスを使用しています。
    connection.getServer().sendModuleMessage("setRefreshRate", {rate:"2000"});
    
syncTime()メソッド 
public function syncTime():void

バージョン : Reactor 1.0.0

サーバーに現在の時間の送信を要求します。 時間を受信したとき、ServerEvent.TIME_SYNCが発生します。 サーバー上の現在の時間の近似値を取り出すにはgetServerTime()を使用します(つまり、最後の同期時間とクライアント上の経過時間の差)。 syncTime()が呼び出されなかった場合、getServerTime()はクライアントの接続開始時間とクライアント上の経過時間との和を返します。

関連項目

イベントの詳細
TIME_SYNC イベント
Event Object Type: ServerEvent
ServerEvent.type variable = net.user1.reactor.ServerEvent.TIME_SYNC

現クライアントによって先に行われたServerのsyncTime()メソッド呼び出しの応答としてサーバーの現在時刻をサーバーが送信するときに送出されます。 ServerEvent.TIME_SYNCのリスナーは次のように、ServerのgetServerTime()メソッドを通してサーバー時間の近似値を取得できます。
     protected function timeSyncListener (e:ServerEvent):void {
       trace("Time is: " + Server(e.target).getServerTime());
     }
     
1970年を基準にしたミリ秒フォーマットの時間を人間が読める形式の日付と時刻に変換できるユーティリティについては、NumericFormatterクラスを参照してください。

関連項目