POST (/serviceconfigs/{scid}/hoppers/{hoppername})
指定されたマッチ チケットを作成します。
重要:
このメソッドは 103 以降のコントラクトで使用するためのもので、すべての要求でヘッダー要素 X-Xbl-Contract-Version: に 103 以降を指定する必要があります。
解説
この HTTP/REST メソッドは、サービス構成 ID (SCID) レベルで、特定の名前を持つホッパーにマッチ チケットを作成します。 このメソッドは、Microsoft.Xbox.Services.Matchmaking.MatchmakingService.CreateMatchTicketAsync メソッドでラップすることができます。
URI パラメーター
パラメーター | 型 | 説明 |
---|---|---|
scid | GUID | セッションのサービス構成 ID (SCID)。 |
hoppername | 文字列 | ホッパーの名前。 |
Authorization
種類 | 必須かどうか | 説明 | 存在しない場合の応答 |
---|---|---|---|
特権およびデバイス タイプ | ○ | ユーザーの deviceType が本体に設定されている場合、要求にマルチプレイヤー権限を持つユーザーだけがマッチメイキング サービスを呼び出せます。 | 403 |
デバイス タイプ | ○ | ユーザーの deviceType が指定されていないか、本体以外に設定されている場合は、マッチ対象にするタイトルとして本体専用のタイトルを指定できません。 | 403 |
タイトル ID/購入証明書/デバイス タイプ | ○ | マッチ対象にするタイトルは、指定されたタイトル クレーム/デバイス タイプの組み合わせのマッチメイキングを許可する必要があります。 | 403 |
HTTP ステータス コード
サービスは、MPSD に適用される HTTP ステータス コードを返します。
リクエストの本文
必須メンバー
メンバー | 型 | 説明 |
---|---|---|
serviceConfig | GUID | セッションの SCID。 |
hopperName | 文字列 | ホッパーの名前。 |
giveUpDuration | 32 ビット符号付き整数 | 最大待機時間 (秒数を表す整数)。 |
preserveSession | 列挙型 | マッチ対象のセッションとしてセッションが再利用されるかどうかを示す値。 指定可能な値は、"always" と "never" です。 |
ticketSessionRef | MultiplayerSessionReference | プレイヤーまたはグループが現在プレイ中のセッションの MultiplayerSessionReference オブジェクト。 |
ticketAttributes | オブジェクトのコレクション | プレイヤーのグループについてユーザーが入力した属性と値。 |
禁止されたメンバー
その他のすべてのメンバーは要求では使用できません。
サンプル要求
ticketSessionRef オブジェクトによって参照されるセッションは、マッチ チケットが作成されるより前に作成されている必要があり、そのセッションにはプレイヤー固有の属性と共にマッチングするプレイヤーが含まれている必要があります。 各プレイヤーは、MPSD に基づいてセッションを作成するかセッションに参加し、関連するマッチ属性をセッションに追加する必要があります。 マッチ属性は、各プレイヤーの matchAttrs という名前のカスタム プロパティ フィールドに配置されます。
作成または参加要求は、https://sessiondirectory.xboxlive.com/serviceconfigs/{scid}/sessiontemplates/{templatename}/sessions/{sessionname} に送信されます。たとえば、次のような内容です。
{
"members": {
"me": {
"constants": {
"system": {
"xuid": 2535285330879750
}
},
"properties": {
"custom": {
"matchAttrs": {
"skill": 5,
"ageRange": "teenager"
}
}
}
}
}
}
セッションが作成された後、タイトルはマッチメイキング サービスを呼び出して、そのセッションのチケットを作成できます。
注意:タイトルはこの呼び出しを再試行することをユーザーに許可できますが、データが失敗した場合は自動的に再試行しないでください。
POST /serviceconfigs/{scid}/hoppers/{hoppername}
{
"giveUpDuration":10,
"preserveSession": "never",
"ticketSessionRef": {
"scid": "ABBACDDC-0000-0000-0000-000000000001",
"templateName": "TestTemplate",
"name": "5E55104-0000-0000-0000-000000000001"
},
"ticketAttributes": {
"desiredMap": "Test Map",
"desiredGameType": "Test GameType"
}
}
応答の本文
メンバー | 型 | 説明 |
---|---|---|
ticketId | GUID | 作成されるチケットの ID。 |
waitTime | 32 ビット符号付き整数 | ホッパーの平均待機時間 (秒数を表す整数値)。 |
{
"ticketId":"0584338f-a2ff-4eb9-b167-c0e8ddecae72",
"waitTime":60
}