Hinzufügen von Bewertungen zu Ihren Inhalten
Wichtig
Economy v2 ist jetzt allgemein verfügbar. Unterstützung und Feedback erhalten Sie im PlayFab-Forum.
In diesem Leitfaden werden die API-Aufrufe erläutert, mit denen Sie Ihrem Spiel ein Bewertungs- und Überprüfungssystem hinzufügen können.
Überprüfen eines Elements
Eine Bewertung oder Überprüfung kann an ein Element angefügt werden, indem die ReviewItem
API von einem Client aufgerufen wird. Damit ein Element überprüft werden kann, muss es im öffentlichen Katalog für alle Spieler sichtbar sein. Bewertungen und Rezensionen werden an den Spieler angefügt, der die API aufruft, und nur eine einzelne Rezension pro Spieler kann einem Element zugeordnet werden. Der Ersteller eines Elements kann keine Überprüfung für sein eigenes Element übermitteln. Die Überprüfung wird bei jedem Aufruf ReviewItem
aktualisiert. Für den Aufruf sind die folgenden Daten erforderlich :
-
Id
: Die eindeutige ID des zu überprüfenden Elements. -
Rating
: Eine numerische Bewertung der Form einer1
, die skaliert werden soll5
.
Darüber hinaus können auch optionale Parameter hinzugefügt werden:
-
Title
: Der Titel für die Überprüfung. -
ReviewText
: Ein Freitextfeld für Rezensionen. -
IsInstalled
: Ein Flag, das angibt, ob der Prüfer über das Element verfügt. -
ItemVersion
: Die Versionsnummer für das zu überprüfende Element.
{
"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"
}
Ein Submitted
Zeitstempel wird automatisch aufgefüllt und aktualisiert, wenn eine Überprüfung übermittelt wird.
Abrufen der Bewertung eines Spielers für ein Element
Sie können die Rezension eines Spielers für ein Element erhalten, indem Sie die GetEntityItemReview
API von einem Client aufrufen. Ein Element Id
oder AlternateId
muss bereitgestellt werden. Eine bestimmte ReviewId
, der Überprüfung zugeordnete wird zurückgegeben.
{
"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"
}
}
}
Der Aufruf GetEntityItemReview
von einem Spieler, der keine Überprüfung vorgenommen hat, gibt ein Review-Objekt mit nullen Werten zurück:
{
"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"
}
}
}
Abrufen von Rezensionen für ein Element
Sie können auf alle Überprüfungen zugreifen, die Text für ein Element enthalten , indem Sie die GetItemReviews
API aufrufen. Ein Element Id
oder AlternateId
muss bereitgestellt werden.
Optionale Parameter können hinzugefügt werden:
-
ContinuationToken
: Ein nicht transparentes Token, das zum Abrufen der nächsten Seite von Elementen verwendet wird, sofern verfügbar. -
Count
: Anzahl der abzurufenden Elemente. Die maximale Seitengröße beträgt 200. Wenn nicht angegeben, ist der Standardwert 10. -
OrderBy
: Ein OData orderBy-Wert, der verwendet wird, um die Ergebnisse der Abfrage zu sortieren. Mögliche Werte sindHelpfulness
,Rating
undSubmitted
.
{
"Count": 2,
"Id": "3f5dd8d4-4ee1-4748-8855-56a8a0277bf9",
"OrderBy": "Submitted desc"
}
Übermitteln einer Hilfreichkeitsabstimmung für eine Überprüfung
Spieler können eine Hilfreichkeitsabstimmung für eine Überprüfung übermitteln, indem sie die SubmitItemReviewVote
API aufrufen. Das Übermitteln einer neuen Hilfreichkeitsstimme erhöht sich HelpfulPositive
oder HelpfulNegative
hängt vom booleschen Wert für den Vote
Parameter ab.
{
"ReviewId": "730de69c-d6af-f313-4653-09fb14bedeef",
"Vote": "Helpful/UnHelpful"
}
Melden einer Überprüfung
Spieler können eine Überprüfung melden, indem sie die ReportItemReview
API von einem Client aufrufen. Ein ReviewId
muss bereitgestellt werden. Ein optionalerConcernCategory
Parameter kann hinzugefügt werden.
{
"ReviewId": "730de69c-d6af-f313-4653-09fb14bedeef",
"ConcernCategory": "OffensiveContent"
}
Wenn nicht angegeben, ConcernCategory
wird standardmäßig verwendet None
. Die gültigen ConcernCategory
Werte sind wie folgt:
None
OffensiveContent
ChildExploitation
MalwareOrVirus
PrivacyConcerns
MisleadingApp
PoorPerformance
ReviewResponse
SpamAdvertising
Profanity
Beim Aufrufen von ReportItemReview
wird nur ein PlayStream-Ereignis unter dem Ereignisnamen ausgelöst item_reported
. Abfragen mithilfe des Daten-Explorers im Game Manager. Beispielabfragen finden Sie unten:
Die folgende Abfrage gibt die Gesamtanzahl der Berichte nach ConcernCategory pro ItemId in den letzten 3 Tagen zurück.
['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
Takedown a review
Sie können mithilfe der TakedownItemReviews
API eine Anforderung zum Takedown einer oder mehrerer Überprüfungen übermitteln. Diese API kann nur von der Titelentität aufgerufen werden. Der Aufruf enthält eine Reihe von Überprüfungen, die abgenommen werden sollen.
{
"Reviews": [
{
"ItemId": "3f5dd8d4-4ee1-4748-8855-56a8a0277bf9",
"ReviewId": "730de69c-d6af-f313-4653-09fb14bedeef"
}
]
}
Notiz
Es kann zu einer Verzögerung von bis zu 24 Stunden kommen, bis eine Überprüfung aufgrund der Anforderungsverarbeitung abgebrochen wird.
Bewertungsentwurf und Zwischenspeicherung
Wir haben zwei Methoden zum Abrufen von Bewertungen. Der Unterschied zwischen den beiden Pfaden besteht darin, ob Sie direkt mit der Überprüfung oder dem Katalogelement interagieren.
- Wir stellen Bewertungen direkt bereit (über
GetItemReviews
, etc.) - Wir stellen Bewertungsaggregate in den Katalogelementen (über
SearchItems
usw.) bereit.
Beide Routen sind asynchron und weisen Zeitliche Verzögerungen auf, die zu verstehen sind.
Direkte Bewertungen (GetItemReviews usw.)
Alle diese Bewertungen und Bewertungen werden direkt bereitgestellt. Hier gibt es zwei Latenzkategorien.
- Individuelle Bewertungen - nahezu in Echtzeit
Einzelne Bewertungen sind nicht sofort verfügbar, sollten aber innerhalb weniger Sekunden angezeigt werden. Wir gehen davon aus, dass ein Wiederholungsversuch mit einem Backoff ausreicht, um eine brandneue Rezension zu lesen. - Aggregatbewertungen : Unter 15 Minuten Es gibt einen Cache für Aggregate.
Katalogelementbewertungen (SearchItems usw.)
Alle diese Bewertungen werden als Teil des Katalogelements aus unserem veröffentlichten Katalog bereitgestellt.
- Aggregierte Bewertungen – Unter 8 Stunden
Das System aggregiert die Bewertungen und pusht Updates in den Katalog. Updates können 4 bis 8 Stunden dauern.