Skip to main content

Analytics Game Telemetry Events 0.1.0 documentation

info

In this document, PUB means "publish" and SUB means "subscribe". This refers to the "publish/subscribe" (pub/sub) messaging framework, where "publish" means that the service sends data to Kafka topics, and "subscribe" means the service acts as a consumer that subscribes to specific Kafka topics to receive data.

  • Specification ID: http://analytics-game-telemetry

Table of Contents

Operations

PUB telemetry Operation

Accepts one of the following messages:

Message analyticsHeartbeat

This event serves as a heartbeat for monitoring analytics service. This event is part of game-telemetry, not event

Payload
NameTypeDescriptionValueConstraintsNotes
(root)object allOf---additional properties are allowed
Payloadobject---additional properties are allowed
0 (allOf item)object---additional properties are allowed
EventIdstringUnique ID (UUID) of the telemetry event---
EventNamespacestringNamespace of the telemetry event. Not strictly checked against AGS namespace.---
EventTimestampstringTimestamp of the event which is added in the server side, has a possibility that this is not the true timestamp because the event usually is batched in the SDK side before being sent to the server-format (date-time)-
EventNamestringThe name of the event.---
UserIdstringAGS User ID of the user who sent the telemetry. Null if telemetry is sent by a server using OAuth Client Credential---
UserNamespacestringAGS Namespace of the user who sent the telemetry. Null if telemetry is sent by a server using OAuth Client Credential---
ClientIdstringIf the event is sent by a user, this field is the ID of the OAuth Client which is used to authenticate this user. If the event is a server using an OAuth Client Credential, this field is the ID of that OAuth Client.---
ClientTimestampstringTimestamp of the event, which is added by the game SDK. This is the true timestamp of the event.-format (date-time)-

Examples of payload (generated)

{
"Payload": {},
"EventId": "string",
"EventNamespace": "string",
"EventTimestamp": "2019-08-24T14:15:22Z",
"EventName": "string",
"UserId": "string",
"UserNamespace": "string",
"ClientId": "string",
"ClientTimestamp": "2019-08-24T14:15:22Z"
}

Message realmoneyTransaction

This event is triggered when the user sends a real-money transaction via game-telemetry API.

Payload
NameTypeDescriptionValueConstraintsNotes
(root)object allOf---additional properties are allowed
Payloadobject---additional properties are allowed
Payload.userIdstring----
Payload.timestampstring--format (date-time)-
Payload.platformobject---additional properties are allowed
Payload.platform.namestring-allowed ("PlayStation", "Xbox", "Steam", "Epic", "Apple", "Google Play", "Nintendo", "Oculus", "Other")--
Payload.platform.userIdstring----
Payload.typestring----
Payload.amountnumber----
Payload.currencyCodestring----
Payload.itemsarray<object>----
Payload.items (single item)object---additional properties are allowed
0 (allOf item)object---additional properties are allowed
EventIdstringUnique ID (UUID) of the telemetry event---
EventNamespacestringNamespace of the telemetry event. Not strictly checked against AGS namespace.---
EventTimestampstringTimestamp of the event which is added in the server side, has a possibility that this is not the true timestamp because the event usually is batched in the SDK side before being sent to the server-format (date-time)-
EventNamestringThe name of the event.---
UserIdstringAGS User ID of the user who sent the telemetry. Null if telemetry is sent by a server using OAuth Client Credential---
UserNamespacestringAGS Namespace of the user who sent the telemetry. Null if telemetry is sent by a server using OAuth Client Credential---
ClientIdstringIf the event is sent by a user, this field is the ID of the OAuth Client which is used to authenticate this user. If the event is a server using an OAuth Client Credential, this field is the ID of that OAuth Client.---
ClientTimestampstringTimestamp of the event, which is added by the game SDK. This is the true timestamp of the event.-format (date-time)-

Examples of payload (generated)

{
"Payload": {
"userId": "string",
"timestamp": "2019-08-24T14:15:22Z",
"platform": {
"name": "PlayStation",
"userId": "string"
},
"type": "string",
"amount": 0,
"currencyCode": "string",
"items": [
{}
]
},
"EventId": "string",
"EventNamespace": "string",
"EventTimestamp": "2019-08-24T14:15:22Z",
"EventName": "string",
"UserId": "string",
"UserNamespace": "string",
"ClientId": "string",
"ClientTimestamp": "2019-08-24T14:15:22Z"
}

Message enhancedPresence

Presence event sent through telemetry

Payload
NameTypeDescriptionValueConstraintsNotes
(root)object allOf---additional properties are allowed
Payloadobject---additional properties are allowed
Payload.flight_idstring----
Payload.platform_namestring----
Payload.game_statestring----
Payload.game_contextstring----
0 (allOf item)object---additional properties are allowed
EventIdstringUnique ID (UUID) of the telemetry event---
EventNamespacestringNamespace of the telemetry event. Not strictly checked against AGS namespace.---
EventTimestampstringTimestamp of the event which is added in the server side, has a possibility that this is not the true timestamp because the event usually is batched in the SDK side before being sent to the server-format (date-time)-
EventNamestringThe name of the event.---
UserIdstringAGS User ID of the user who sent the telemetry. Null if telemetry is sent by a server using OAuth Client Credential---
UserNamespacestringAGS Namespace of the user who sent the telemetry. Null if telemetry is sent by a server using OAuth Client Credential---
ClientIdstringIf the event is sent by a user, this field is the ID of the OAuth Client which is used to authenticate this user. If the event is a server using an OAuth Client Credential, this field is the ID of that OAuth Client.---
ClientTimestampstringTimestamp of the event, which is added by the game SDK. This is the true timestamp of the event.-format (date-time)-

Examples of payload (generated)

{
"Payload": {
"flight_id": "string",
"platform_name": "string",
"game_state": "string",
"game_context": "string"
},
"EventId": "string",
"EventNamespace": "string",
"EventTimestamp": "2019-08-24T14:15:22Z",
"EventName": "string",
"UserId": "string",
"UserNamespace": "string",
"ClientId": "string",
"ClientTimestamp": "2019-08-24T14:15:22Z"
}