POST(/serviceconfigs/{scid}/sessiontemplates/{sessionTemplateName}/batch)
여러 Xbox 사용자 ID에 대해 배치 쿼리를 만듭니다.
중요:
이 메서드는 2015 멀티 플레이어에서 사용되며 해당 멀티 플레이어 버전 및 그 이상에서만 적용됩니다. 이는 템플릿 계약 104/105 이상에서 사용하기 위한 것이며 모든 요청마다 X-Xbl-Contract-Version: 104/105 이상의 헤더 요소가 필요합니다.
설명
이 HTTP/REST 메서드는 세션 템플릿 수준에서 여러 Xbox 사용자 ID에 대한 배치 쿼리를 만듭니다. 이 메서드는 Microsoft.Xbox.Services.Multiplayer.MultiplayerService.GetSessionsForUsersFilterAsync로 래핑될 수 있습니다.
2015 멀티 플레이어의 경우 xuid 쿼리 문자열 매개 변수에 표시된 것처럼 모든 쿼리가 동일하지만 다른 Xbox 사용자 ID(XUID)를 처리하는 경우 많은 쿼리를 단일 호출로 결합할 수 있습니다. 쿼리 문자열 매개 변수와 응답은 일반 쿼리와 배치 쿼리에서 동일합니다.
배치 쿼리의 경우 각 XUID에 속한 세션은 xuid 매개 변수가 요청에 표시되는 순서와 동일한 순서로 응답에 기록됩니다. 동일한 세션이 일치하는 xuid마다 한 번씩 응답에 여러 번 나타날 수 있습니다.
URI 매개 변수
매개 변수 | 형식 | 설명 |
---|---|---|
scid | GUID | 서비스 구성 식별자(SCID). 세션 식별자의 파트 1. |
sessionTemplateName | 문자열 | 세션 템플릿의 현재 인스턴스 이름. 세션 식별자의 파트 2. |
쿼리 문자열 매개 변수
다음 표의 쿼리 문자열 매개 변수를 사용하여 쿼리를 수정할 수 있습니다.
매개 변수 | Type | Description |
---|---|---|
keyword | 문자열 | 키워드(예: "foo")는 세션 또는 템플릿에서 검색되는 경우 검색되어야 합니다. |
xuid | 64비트 부호 없는 정수 | 세션에 대한 Xbox 사용자 ID(예: "123")입니다. 기본적으로 사용자는 세션에 포함될 때 활성화되어 있어야 합니다. |
reservations | 부울 값 | 사용자가 예약된 플레이어로 설정되었지만 활성 플레이어로 참가하지 않은 세션을 포함하려면 True입니다. 이 매개 변수는 고유한 세션을 조회하거나 특정 사용자의 세션을 서버 간에 조회할 때만 사용됩니다. |
inactive | 부울 값 | 사용자가 수락했지만 현재 플레이하지 않는 세션을 포함하려면 True입니다. 사용자가 "준비"되었지만 "활성화"되지 않은 세션을 비활성으로 할 수 있습니다. |
private | 부울 값 | 개인 세션을 포함하려면 True입니다. 이 매개 변수는 고유한 세션을 조회하거나 특정 사용자의 세션을 서버 간에 조회할 때만 사용됩니다. |
visibility | 문자열 | 세션의 가시성 상태입니다. 가능한 값은 MultiplayerSessionVisibility로 정의됩니다. 이 매개 변수가 "open"으로 설정된 경우 쿼리는 공개된 세션만 포함해야 합니다. "private"으로 설정된 경우 private 매개 변수를 true로 설정해야 합니다. |
version | 32비트 부호 있는 정수 | 포함되어야 하는 최대 세션 버전입니다. 예를 들어 값 2는 주요 세션 버전이 2 이하인 세션만 포함되도록 지정합니다. 버전 번호는 요청의 계약 버전인 mod 100 이하여야 합니다. |
take | 32비트 부호 있는 정수 | 검색할 세션의 최대 수입니다. 이 수는 0~100 사이여야 합니다. |
private 또는 reservations를 true로 설정하려면 세션에 서버 수준 액세스가 필요합니다. 또는 이러한 설정을 사용하려면 호출자의 XUID 클레임이 URI의 XUID 필터와 일치해야 합니다. 그렇지 않으면 이러한 세션이 실제로 존재하는지 여부에 관계없이 HTTP/403 상태 코드가 반환됩니다.
HTTP 상태 코드
이 서비스는 MPSD에 적용할 때 HTTP 상태 코드를 반환합니다.
요청 본문
{ "xuids": [ "1234", "5678" ] }
응답 본문
이 메서드의 반환 값은 세션 참조의 JSON 배열이며 일부 세션 데이터는 인라인에 포함됩니다.
{
"results": [ {
"xuid": "9876", // If the session was found from a xuid, that xuid.
"startTime": "2009-06-15T13:45:30.0900000Z",
"sessionRef": {
"scid": "foo",
"templateName": "bar",
"name": "session-seven"
},
"accepted": 4, // Approximate number of non-reserved members.
"status": "active", // or "reserved" or "inactive". This is the state of the user in the session, not the session itself. Only present if the session was found using a xuid.
"visibility": "open", // or "private", "visible", or "full"
"joinRestriction": "local", // or "followed". Only present if 'visibility' is "open" or "full" and the session has a join restriction.
"myTurn": true, // Not present is the same as 'false'. Only present if the session was found using a xuid.
"keywords": [ "one", "two" ]
}
]
}
참고 항목
부모
/serviceconfigs/{scid}/sessiontemplates/{sessionTemplateName}/batch