本文へスキップ
バージョン: 3.0

index


title: class RoomManagementService toc_max_heading_level: 4


クラス RoomManagementService

(Niantic.Lightship.SharedAR.Rooms.RoomManagementService)

概要

RoomManagementService は、Room Management Service のバックエンドにアクセスするためのインターフェイスを提供し、Room の作成、削除、検索 を行います。 ルームとは、サーバーを中継したネットワークで複数のピア同士を接続するためのエンティティである。

class RoomManagementService {
public

struct GetOrCreateRoomAsyncTaskResult;

// methods

static RoomManagementServiceStatus CreateRoom(
RoomParams roomParams,
out IRoom outRoom
);

static RoomManagementServiceStatus DeleteRoom(string roomId)
static RoomManagementServiceStatus GetRoom(string roomId, out IRoom outRoom);

static RoomManagementServiceStatus QueryRoomsByName(
string name,
out List<IRoom> rooms
);

static RoomManagementServiceStatus GetAllRooms(out List<IRoom> rooms)

static RoomManagementServiceStatus GetOrCreateRoomForName(
RoomParams roomParams,
out IRoom outRoom
);

static void GetOrCreateRoomAsync(
string roomName,
string roomDesc,
uint roomCapacity,
GetOrCreateRoomCallback doneCb
)

static Task<GetOrCreateRoomAsyncTaskResult> GetOrCreateRoomAsync(
string roomName,
string roomDescription,
uint roomCapacity
);

delegate void GetOrCreateRoomCallback(
RoomManagementServiceStatus status,
string room_id
);
}

詳細なドキュメント

RoomManagementService は、Room Management Service のバックエンドにアクセスするためのインターフェイスを提供し、Room の作成、削除、検索 を行います。 ルームとは、サーバーを中継したネットワークで複数のピア同士を接続するためのエンティティである。

メソッド

CreateRoom

static RoomManagementServiceStatus CreateRoom(
RoomParams roomParams,
out IRoom outRoom
)

サーバーに新しいルームを作る。

    パラメーター

    roomParams - ルームのパラメーター

    outRoom - IRoom オブジェクトとしてルームを作成。 作成に失敗した場合は null。

    次の値が返ります。

    オペレーションの状態

DeleteRoom

static RoomManagementServiceStatus DeleteRoom(string roomId)

サーバー上のルームを削除する。

    パラメーター

    roomId - 削除するルームのRoom ID

    次の値が返ります。

    オペレーションの状態

GetRoom

静的 RoomManagementServiceStatus GetRoom(string roomId, out IRoom outRoom)

サーバー上のルームIDで部屋を取得する

    パラメーター

    roomId - 文字列としてのRoom ID

    outRoom - 見つかったルームオブジェクト。 操作に失敗した場合、またはRoom IDが見つからない場合はNULL<//param>

    次の値が返ります。

    オペレーションの状態

QueryRoomsByName

static RoomManagementServiceStatus QueryRoomsByName(
string name,
out List<IRoom> rooms
)

サーバー上の部屋名で問い合わせる

    パラメーター

    name - 探すルームの名前。

    rooms - ルームが一致するルームのリスト

    次の値が返ります。

    オペレーションの状態

GetAllRooms

static RoomManagementServiceStatus GetAllRooms(out List<IRoom> rooms)

このアプリによって作成されたサーバー上のすべてのルームを取得する。

    パラメーター

    rooms - このアプリで利用可能なルームのリスト

    次の値が返ります。

    運行状況

名前のルーム作成

static RoomManagementServiceStatus GetOrCreateRoomForName(
RoomParams roomParams,
out IRoom outRoom
)

サーバー上の指定された名前を持つ IRoom オブジェクトを取得します。 その名前のルームが見つからない場合、与えられたルームパラメーターを使用して新しいルームを作成します。

    パラメーター

    roomParams - 取得または作成するルームのルームパラメーター

    outRoom - IRoom オブジェクト。 サーバー操作に失敗した場合はnull

    次の値が返ります。

    オペレーションの状態

GetOrCreateRoomAsync

static void GetOrCreateRoomAsync(
string roomName,
string roomDesc,
uint roomCapacity,
GetOrCreateRoomCallback doneCb
)

GetOrCreateRoom リクエストの非同期実装。 この関数は、"roomName "という名前のルームが存在するかどうかをチェックし、存在しない場合はルームを作成する。 この関数は、これらの操作のいずれかによって有効なRoomIDを取得すると、"doneCb "を介してそれを返します。 doneCb "には2つのパラメータがある。 1つ目のパラメーターは、サービスに問題があった場合のレスポンスコードで、2つ目のパラメーターは、発見/作成されたルームIDです。

    パラメーター

    roomName - チェックするルーム名

    roomDesc - ルームを作る必要がある場合に使用するルームの説明。

    roomCapacity - ルームを作る必要がある場合に使用するルームの容量

    doneCb - 関数がエラーまたは有効なルーム ID を受け取った後に呼び出されるコールバック。

GetOrCreateRoomAsync

static Task<GetOrCreateRoomAsyncTaskResult> GetOrCreateRoomAsync(
string roomName,
string roomDescription,
uint roomCapacity
)

GetOrCreateRoom リクエストの非同期実装。 この関数は、"roomName "という名前のルームが存在するかどうかをチェックし、存在しない場合はルームを作成する。 C#の async/await 機能で await -edできるように、このバリアントはTaskを返す。 タスクは2つの結果を受け取る。リクエストのステータスと、成功した場合、リクエストのroomIdである。

    パラメーター

    roomName - チェックするルーム名

    roomDesc - ルームを作る必要がある場合に使用するルームの説明。

    roomCapacity - ルームを作る必要がある場合に使用するルームの容量

    次の値が返ります。

    リクエストステータスとリクエスト成功時のroomIdを持つタスク