콘텐츠에 평점 추가
Important
이제 Economy v2가 일반 공급됩니다. 지원 및 피드백을 받으려면 PlayFab 포럼으로 이동하세요.
이 가이드에서는 평점 및 리뷰 시스템을 게임에 추가하는 데 사용할 수 있는 API 호출을 살펴봅니다.
항목 리뷰
평점 또는 리뷰는 클라이언트에서 ReviewItem
API를 호출하여 항목에 연결할 수 있습니다. 아이템을 검토하려면 모든 플레이어의 공개 카탈로그에 아이템이 표시되어야 합니다. 평점 및 리뷰는 API를 호출하는 플레이어에 연결되어 있으며, 플레이어당 단일 리뷰만 항목에 연결될 수 있습니다. 항목 작성자는 자신의 항목에 대한 검토를 제출할 수 없습니다.
ReviewItem
을(를) 호출할 때마다 리뷰가 업데이트됩니다. 호출에는 다음 데이터가 필요합니다.
-
Id
: 검토할 항목의 고유 ID입니다. -
Rating
:1
에서5
척도 형식의 숫자 등급입니다.
또한 선택적 매개 변수도 추가할 수 있습니다.
-
Title
: 리뷰 제목입니다. -
ReviewText
: 리뷰를 제공하는 사용자를 위한 자유 텍스트 필드입니다. -
IsInstalled
: 리뷰를 제공하는 사람에게 해당 항목이 있는 경우를 나타내는 플래그입니다. -
ItemVersion
: 리뷰되는 항목의 버전 숫자입니다.
{
"Review": {
"ItemVersion": "2.4.1",
"Rating": 5,
"Title": "Best Game Ever",
"ReviewText": "I play this game every day. It's my favorite game yet.",
"IsInstalled": true
},
"Id": "3f5dd8d4-4ee1-4748-8855-56a8a0277bf9"
}
리뷰가 제출되면 Submitted
타임스탬프가 자동으로 채워지고 업데이트됩니다.
항목에 대한 플레이어의 리뷰 가져오기
클라이언트에서 GetEntityItemReview
API를 호출하여 항목에 대한 플레이어의 리뷰를 가져올 수 있습니다.
Id
또는 AlternateId
항목을 제공해야 합니다. 리뷰와 연결된 특정 ReviewId
이(가) 반환됩니다.
{
"code": 200,
"status": "OK",
"data": {
"Review": {
"ReviewId": "730de69c-d6af-f313-4653-09fb14bedeef",
"ItemId": "3f5dd8d4-4ee1-4748-8855-56a8a0277bf9",
"ReviewerId": "title_player_account!218870DE55036998",
"ItemVersion": "2.4.1",
"Title": "Best Game Ever",
"ReviewText": "I play this game every day. It's my favorite game yet.",
"Rating": 5,
"IsInstalled": true,
"Locale": "NEUTRAL",
"HelpfulnessVotes": 0,
"HelpfulPositive": 0,
"HelpfulNegative": 0,
"Submitted": "2021-08-09T06:44:22.569Z"
}
}
}
리뷰를 하지 않은 플레이어의 GetEntityItemReview
을(를) 호출하면 값이 0인 리뷰 개체가 반환됩니다.
{
"code": 200,
"status": "OK",
"data": {
"Review": {
"ReviewId": "00000000-0000-0000-0000-000000000000",
"Rating": 0,
"IsInstalled": false,
"HelpfulnessVotes": 0,
"HelpfulPositive": 0,
"HelpfulNegative": 0,
"Submitted": "0001-01-01T00:00:00Z"
}
}
}
항목에 대한 리뷰 가져오기
GetItemReviews
API를 호출하여 항목의 텍스트를 포함하는 모든 리뷰에 액세스할 수 있습니다.
Id
또는 AlternateId
항목을 제공해야 합니다.
선택적 매개 변수를 추가할 수 있습니다.
-
ContinuationToken
: 사용 가능한 경우 항목의 다음 페이지를 검색하는 데 사용되는 불투명 토큰입니다. -
Count
: 검색할 항목의 수입니다. 최대 페이지 크기는 200입니다. 지정하지 않으면 기본값 10을 사용합니다. -
OrderBy
: 쿼리 결과를 정렬하는 데 사용되는 OData orderBy입니다. 가능한 값은Helpfulness
,Rating
및Submitted
입니다.
{
"Count": 2,
"Id": "3f5dd8d4-4ee1-4748-8855-56a8a0277bf9",
"OrderBy": "Submitted desc"
}
리뷰에 유용성 투표 제출
플레이어는 SubmitItemReviewVote
API를 호출하여 리뷰에 유용성 투표를 제출할 수 있습니다. 새로운 유용성 투표를 제출하면 Vote
매개 변수의 부울 값에 따라 HelpfulPositive
또는 HelpfulNegative
이(가) 증가합니다.
{
"ReviewId": "730de69c-d6af-f313-4653-09fb14bedeef",
"Vote": "Helpful/UnHelpful"
}
리뷰 보고
플레이어는 클라이언트에서 ReportItemReview
API를 호출하여 리뷰를 보고할 수 있습니다.
ReviewId
을(를) 제공해야 합니다.
선택적ConcernCategory
매개 변수를 추가할 수 있습니다.
{
"ReviewId": "730de69c-d6af-f313-4653-09fb14bedeef",
"ConcernCategory": "OffensiveContent"
}
지정하지 않으면 ConcernCategory
에서 None
을(를) 기본값으로 지정합니다. 유효한 ConcernCategory
값은 다음과 같습니다.
None
OffensiveContent
ChildExploitation
MalwareOrVirus
PrivacyConcerns
MisleadingApp
PoorPerformance
ReviewResponse
SpamAdvertising
Profanity
ReportItemReview
(을)를 호출하면 이벤트 이름 item_reported
아래 PlayStream 이벤트만 발생합니다. 게임 관리자에서 데이터 탐색기를 사용하여 쿼리합니다. 예제 쿼리는 아래에서 볼 수 있습니다.
다음 쿼리는 지난 3일 동안 ItemId당 ConcernCategory의 총 보고 수를 반환합니다.
['events.all']
| where Timestamp > ago (3d)
| where FullName_Name == "review_reported"
| project ReviewId = tostring(EventData.Payload.ReviewId), ConcernCategory = tostring(EventData.Payload.ConcernCategory)
| summarize TotalReportCount = count() by ReviewId, ConcernCategory
| sort by TotalReportCount desc
| render columnchart kind=stacked
리뷰 내리기
TakedownItemReviews
API를 사용하여 하나 이상의 리뷰 내리기 요청을 제출할 수 있습니다. 이 API는 타이틀 엔터티에서만 호출할 수 있습니다. 호출이 내려야 하는 리뷰 집합을 내립니다.
{
"Reviews": [
{
"ItemId": "3f5dd8d4-4ee1-4748-8855-56a8a0277bf9",
"ReviewId": "730de69c-d6af-f313-4653-09fb14bedeef"
}
]
}
참고 항목
요청 처리로 인해 리뷰가 내려질 때까지 최대 24시간이 지연될 수 있습니다.
평가 디자인 및 캐싱
평가를 받는 두 가지 방법이 있습니다. 두 경로의 차이점은 검토와 직접 상호 작용하는지 또는 카탈로그 항목과 상호 작용하는지 여부입니다.
- 평가를 직접 제공합니다(
GetItemReviews
등을 통해). - 카탈로그 항목에서 평가 집계를 제공합니다(
SearchItems
등을 통해).
두 경로 모두 비동기식이며 이해해야 할 중요한 타이밍 지연이 있습니다.
직접 평가(GetItemReviews 등)
이 모든 평가와 리뷰는 직접 제공됩니다. 여기에는 두 가지 범주의 대기 시간이 있습니다.
- 개별 리뷰 - 거의 실시간
개별 검토는 즉시 사용할 수 없지만 몇 초 내에 표시됩니다. 새로운 검토를 읽기 위해서는 백오프를 사용하여 다시 시도하는 것으로 충분할 것으로 예상됩니다. - 집계 등급 - 15분 미만 집계를 위한 캐시가 있습니다.
카탈로그 항목 등급(SearchItems 등)
이러한 모든 등급은 게시된 카탈로그의 카탈로그 항목의 일부로 제공됩니다.
- 종합 평가 - 8시간 미만
시스템은 등급을 집계하고 업데이트를 카탈로그에 푸시합니다. 업데이트에는 4~8시간이 소요될 수 있습니다.