| パッケージ | net.user1.reactor |
| クラス | public class Server |
| 継承 | Server flash.events.EventDispatcher |
| バージョン : | Reactor 1.0.0 |
関連項目
| メソッド | 定義元 | ||
|---|---|---|---|
| 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 | ||
| Event | Summary | 定義元 | ||
|---|---|---|---|---|
| 現クライアントによって先に行われたServerのsyncTime()メソッド呼び出しの応答としてサーバーの現在時刻をサーバーが送信するときに送出されます。 | Server | |||
| Server | () | コンストラクタ |
| 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!");
connection.getMessageManager().addMessageListener("HELLO", 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 Server's modules documentationを参照してください。
パラメータ
moduleID:String — メッセージが送られるモジュールのIDです。 モジュールはサーバーのunion.xml設定ファイル内で、各モジュールの<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 | イベント |
ServerEventnet.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());
}
関連項目