LoadBalancingPeerは、Photon Cloudでも使用されるLoadBalancingサーバーアプリケーションを使用するために必要な操作と列挙型定義を提供します。 More...
Inherits PhotonPeer.
Public Member Functions | |
LoadBalancingPeer (ConnectionProtocol protocolType) | |
指定された接続プロトコルでピアを作成します。 ピアを使用する前にリスナーを設定する必要があります。 More... | |
LoadBalancingPeer (IPhotonPeerListener listener, ConnectionProtocol protocolType) | |
指定された接続プロトコルとコールバックのリスナーを使用してピアを作成します。 More... | |
virtual bool | OpGetRegions (string appId) |
virtual bool | OpJoinLobby (TypedLobby lobby=null) |
Master Serverのロビーに参加し、現在開いているルームのRoomInfoのリストを取得します。 これは、OnOperationResponse()呼び出しをトリガーする非同期要求です。 More... | |
virtual bool | OpLeaveLobby () |
マスターサーバーのロビーを離れます。 これは、OnOperationResponse()呼び出しをトリガーする非同期要求です。 More... | |
virtual bool | OpCreateRoom (EnterRoomParams opParams) |
ルームを作成します(マスターサーバーまたはゲームサーバーのいずれか)。 OperationResponseは、ピアが接続されているサーバーによって異なります。 マスターは、接続するゲームサーバーを返します。 ゲームサーバーは、参加したルームのデータを返します。 これは、OnOperationResponse()呼び出しをトリガーする非同期要求です。 More... | |
virtual bool | OpJoinRoom (EnterRoomParams opParams) |
指定された名前のルームが存在しない場合、名前でルームに参加するか、新しいルームを作成します。 OperationResponseは、ピアが接続されているサーバーによって異なります。 マスターは、接続するゲームサーバーを返します。 ゲームサーバーは、参加したルームのデータを返します。 これは、OnOperationResponse()呼び出しをトリガーする非同期要求です。 More... | |
virtual bool | OpJoinRandomRoom (OpJoinRandomRoomParams opJoinRandomRoomParams) |
ランダムで利用可能なルームに参加する操作。オーバーロードは、追加のプレーヤープロパティを取得します。 これは、OnOperationResponse()呼び出しをトリガーする非同期要求です。 すべてのルームが閉じているか満室の場合、OperationResponseのreturnCodeはErrorCode.NoRandomMatchFoundになります。 成功した場合、OperationResponseにはゲームサーバーのアドレスとルーム名が含まれます。 More... | |
virtual bool | OpJoinRandomOrCreateRoom (OpJoinRandomRoomParams opJoinRandomRoomParams, EnterRoomParams createRoomParams) |
マスターサーバーでのみ使用されます。参加または作成するゲームサーバーとルームを割り当てます。 ゲームサーバーでは、OpJoinが「存在しない場合に作成」オプションとともに使用されます。 More... | |
virtual bool | OpLeaveRoom (bool becomeInactive, bool sendAuthCookie=false) |
後で戻るか、完全に退室するオプションを使用してルームを離れます。 More... | |
virtual bool | OpGetGameList (TypedLobby lobby, string queryData) |
SQLのようなwhere clauseに一致するゲームのリストを取得します。 More... | |
virtual bool | OpFindFriends (string[] friendsToFind, FindFriendsOptions options=null) |
友達のリストのルームとオンラインステータスを要求します(各クライアントはOpAuthenticateを使用して一意のユーザー名を設定する必要があります)。 More... | |
bool | OpSetCustomPropertiesOfActor (int actorNr, Hashtable actorProperties) |
bool | OpSetCustomPropertiesOfRoom (Hashtable gameProperties) |
virtual bool | OpAuthenticate (string appId, string appVersion, AuthenticationValues authValues, string regionCode, bool getLobbyStatistics) |
このアプリケーションのappIdとappVersionを送信して、このアプリケーションサーバー側を識別します。 これは、OnOperationResponse()呼び出しをトリガーする非同期要求です。 More... | |
virtual bool | OpAuthenticateOnce (string appId, string appVersion, AuthenticationValues authValues, string regionCode, EncryptionMode encryptionMode, ConnectionProtocol expectedProtocol) |
このアプリケーションのappIdとappVersionを送信して、このアプリケーションサーバー側を識別します。 これは、OnOperationResponse()呼び出しをトリガーする非同期要求です。 More... | |
virtual bool | OpChangeGroups (byte[] groupsToRemove, byte[] groupsToAdd) |
このクライアントのインタレストグループを処理する操作(ルームのイベント用)。 More... | |
virtual bool | OpRaiseEvent (byte eventCode, object customEventContent, RaiseEventOptions raiseEventOptions, SendOptions sendOptions) |
同じルームの他のプレイヤーに、カスタムコード/タイプとコンテンツを含むイベントを送信します。 More... | |
virtual bool | OpSettings (bool receiveLobbyStats) |
「サーバーごと」の設定を設定するために内部的に使用される操作。これはマスターサーバー用です。 More... | |
Protected Member Functions | |
bool | OpSetPropertyOfRoom (byte propCode, object value) |
LoadBalancingPeerは、Photon Cloudでも使用されるLoadBalancingサーバーアプリケーションを使用するために必要な操作と列挙型定義を提供します。
このクラスは内部的に使用されます。 LoadBalancingPeerは状態を保持しませんが、代わりにこれはLoadBalancingClientによって行われます。
LoadBalancingPeer | ( | ConnectionProtocol | protocolType | ) |
指定された接続プロトコルでピアを作成します。 ピアを使用する前にリスナーを設定する必要があります。
各接続プロトコルには、Photon用の独自のデフォルトネットワークポートがあります。
protocolType | 推奨されるオプションはUDPです。 |
LoadBalancingPeer | ( | IPhotonPeerListener | listener, |
ConnectionProtocol | protocolType | ||
) |
指定された接続プロトコルとコールバックのリスナーを使用してピアを作成します。
|
virtual |
このアプリケーションのappIdとappVersionを送信して、このアプリケーションサーバー側を識別します。 これは、OnOperationResponse()呼び出しをトリガーする非同期要求です。
以前に確立されている場合、この操作は暗号化を使用します。 参照: EstablishEncryption()。IsEncryptionAvailableで暗号化を確認します。 この操作は、接続ごとに1回のみ許可されます(複数の呼び出しにはErrorCode != Okが付きます)。
appId | 認証するアプリケーションの名前またはID。 これはPhoton Cloud(ウェブページ)によって割り当てられます。 |
appVersion | クライアントのバージョン(異なるクライアントappVersionsを持つクライアントは分離され、プレイヤー同士は会わない)。 |
authValues | 認証に関連するすべての値が含まれます。アカウントシステム(外部カスタム認証)がなくても、クライアントは自身を識別することができます。 |
regionCode | クライアントが特定のPhoton Cloud Regionに接続する必要がある場合のオプションのリージョンコード。 |
getLobbyStatistics | マスターサーバーでtrueに設定して、「ロビー統計」イベントを受信します。 |
|
virtual |
このアプリケーションのappIdとappVersionを送信して、このアプリケーションサーバー側を識別します。 これは、OnOperationResponse()呼び出しをトリガーする非同期要求です。
以前に確立されている場合、この操作は暗号化を使用します。 参照: EstablishEncryption().IsEncryptionAvailableで暗号化を確認します。 この操作は、接続ごとに1回のみ許可されます(複数の呼び出しにはErrorCode != Okが付きます)。
appId | 認証するアプリケーションの名前またはID。これはPhoton Cloud(ウェブページ)によって割り当てられます。 |
appVersion | クライアントのバージョン(異なるクライアントappVersionsを持つクライアントは分離され、プレイヤー同士は会わない)。 |
authValues | 任意の認証値。クライアントは、サーバーによるカスタム認証の値またはUserIdまたは一部のパラメーターを設定できません。 |
regionCode | クライアントが特定のPhoton Cloud Regionに接続する必要がある場合の任意のリージョンコード。 |
encryptionMode | |
expectedProtocol |
|
virtual |
このクライアントのインタレストグループを処理する操作(ルームのイベント用)。
nullとbyte [0]を渡すことの違いに注意してください。 nullはグループを追加/削除しません。 byte [0]は、すべての(既存の)グループを追加/削除します。 最初に、グループの削除が実行されます。この方法では、すべてのグループを離れ、提供されたグループのみに参加できます。
変更はすぐにアクティブになるのではなく、サーバーがこの操作を実行するとアクティブになります(約RTT/2)。
groupsToRemove | インタレストから削除するグループ。 Nullは削除しません。byte [0]はすべてを削除します。 |
groupsToAdd | インタレストに追加するグループ。 Nullは追加しません。 byte [0]は現在のすべてを追加します。 |
|
virtual |
ルームを作成します(マスターサーバーまたはゲームサーバーのいずれか)。 OperationResponseは、ピアが接続されているサーバーによって異なります。 マスターは、接続するゲームサーバーを返します。 ゲームサーバーは、参加したルームのデータを返します。 これは、OnOperationResponse()呼び出しをトリガーする非同期要求です。
ルームが既に存在する場合、OperationResponseのreturnCodeはErrorCode.GameAlreadyExistsになります。
|
virtual |
友達のリストのルームとオンラインステータスを要求します(各クライアントはOpAuthenticateを使用して一意のユーザー名を設定する必要があります)。
Master Serverで使用され、選択されたユーザーのリストがプレイしているルームを見つけます。 ユーザーは、一意のユーザーIDでOpAuthenticateを使用して自分自身を識別します。 ユーザーIDのリストは、他のソース(Photonによって提供されない)から取得する必要があります。
サーバーの応答には、情報の2つの配列が含まれます(各インデックスは、リクエストの友人に一致します)。
オンライン状態のParameterCode.FindFriendsResponseOnlineList = bool[]
ルーム名(ルームにない場合は空の文字列)のParameterCode.FindFriendsResponseRoomIdList = string[]
これらのオプションを使用して、ルームに戻るために一致させる必要がある状態を定義できます。
friendsToFind | 友達の名前の配列(一意であることを確認してください)。 |
options | FindFriends操作の結果に影響するオプション。 |
|
virtual |
SQLのようなwhere clauseに一致するゲームのリストを取得します。
操作は、タイプSqlLobbyのロビーでのみ使用できます。 これは、OnOperationResponse()呼び出しをトリガーする非同期要求です。 返されたゲームリストはRoomInfoListに保存されます。
https://doc.photonengine.com/en-us/realtime/current/reference/matchmaking-and-lobby::sql_lobby_type
lobby | 照会するロビー。SqlLobby型である必要があります。 |
queryData | SQLクエリステートメント。 |
|
virtual |
Master Serverのロビーに参加し、現在開いているルームのRoomInfoのリストを取得します。 これは、OnOperationResponse()呼び出しをトリガーする非同期要求です。
lobby | 参加するロビー |
|
virtual |
マスターサーバーでのみ使用されます。参加または作成するゲームサーバーとルームを割り当てます。 ゲームサーバーでは、OpJoinが「存在しない場合に作成」オプションとともに使用されます。
|
virtual |
ランダムで利用可能なルームに参加する操作。オーバーロードは、追加のプレーヤープロパティを取得します。 これは、OnOperationResponse()呼び出しをトリガーする非同期要求です。 すべてのルームが閉じているか満室の場合、OperationResponseのreturnCodeはErrorCode.NoRandomMatchFoundになります。 成功した場合、OperationResponseにはゲームサーバーのアドレスとルーム名が含まれます。
|
virtual |
指定された名前のルームが存在しない場合、名前でルームに参加するか、新しいルームを作成します。 OperationResponseは、ピアが接続されているサーバーによって異なります。 マスターは、接続するゲームサーバーを返します。 ゲームサーバーは、参加したルームのデータを返します。 これは、OnOperationResponse()呼び出しをトリガーする非同期要求です。
ルームが(もう)存在しない場合、OperationResponseのreturnCodeはErrorCode.GameDoesNotExistになります。 その他のエラーコードは、GameClosed、GameFullです。
|
virtual |
マスターサーバーのロビーを離れます。 これは、OnOperationResponse()呼び出しをトリガーする非同期要求です。
|
virtual |
後で戻るか、完全に退室するオプションを使用してルームを離れます。
becomeInactive | 非同期ゲームは後で再参加(読み込み)できます。ゲームを完全に放棄する場合は、falseに設定します。 |
sendAuthCookie | WebFlag: 暗号化されたオブジェクトAuthCookieを、利用可能な場合はPathLeave webhookのWebサービスに安全に送信します |
|
virtual |
同じルームの他のプレイヤーに、カスタムコード/タイプとコンテンツを含むイベントを送信します。
このオーバーライドは、別のパラメーターの順序を明示的に使用して、Hashtableのみの実装と混同しないようにします。
eventCode | このタイプのイベント(およびコンテンツ)を識別します。ゲームのイベントコードは0から開始できます。 |
customEventContent | シリアル化可能なデータ型(他のOpRaiseEventオーバーロードのようなHashtableを含む)。 |
raiseEventOptions | あまり使用されないオプションが(わずかに)含まれています。nullを渡すと、デフォルトのオプションが使用されます。 |
sendOptions | 信頼性の高い暗号化などの送信オプション |
|
virtual |
「サーバーごと」の設定を設定するために内部的に使用される操作。これはマスターサーバー用です。
receiveLobbyStats | trueに設定すると、ロビー統計(既存のロビーのリスト)が取得されます。 |