Lobby Server 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://lobby-server
- Protobuf File Spec: lobby.proto
Table of Contents
Operations
PUB lobby
Operation
Accepts one of the following messages:
Message userConnected
Payload
Name | Type | Description | Value | Constraints | Notes |
---|---|---|---|---|---|
(root) | allOf | - | - | - | additional properties are allowed |
payload | - | - | - | - | additional properties are allowed |
payload.userConnected | object | - | - | - | additional properties are allowed |
payload.userConnected.lobbySessionId | string | - | - | - | - |
payload.userConnected.lobbyLoginType | string | NewRegister Fresh connect, no active connection. MultipleSessionLogin An active connection exists, a new connection with different token, old connection will be closed. FastReconnect An active connection exists, a new connection with same token and same lobbySessionId, old connection will be closed. WrongSessionID An active connection exists, a new connection with same token and different lobbySessionId, new connection is rejected, event is not published. | - | - | - |
payload.userConnected.reconnectFrom | integer | 5000 Fresh connect, this wasn't a reconnect. 5001 The user is still connected. | - | - | - |
payload.userConnected.connectionId | string | - | - | - | - |
0 (allOf item) | object | - | - | - | additional properties are allowed |
id | string | - | - | - | - |
version | integer | - | - | - | - |
name | string | - | - | - | - |
namespace | string | - | - | - | - |
parentNamespace | string | - | - | - | - |
timestamp | string | - | - | format (date-time ) | - |
clientId | string | - | - | - | - |
userId | string | UserId of the operator for this event (optional) | - | - | - |
traceId | string | - | - | - | - |
sessionId | string | - | - | - | - |
spanContext | string | - | - | - | - |
Examples of payload (generated)
{
"payload": {
"userConnected": {
"lobbySessionId": "string",
"lobbyLoginType": "string",
"reconnectFrom": 0,
"connectionId": "string"
}
},
"id": "string",
"version": 0,
"name": "string",
"namespace": "string",
"parentNamespace": "string",
"timestamp": "2019-08-24T14:15:22Z",
"clientId": "string",
"userId": "string",
"traceId": "string",
"sessionId": "string",
"spanContext": "string"
}
Message userDisconnected
Payload
Name | Type | Description | Value | Constraints | Notes |
---|---|---|---|---|---|
(root) | allOf | - | - | - | additional properties are allowed |
payload | - | - | - | - | additional properties are allowed |
payload.userDisconnected | object | - | - | - | additional properties are allowed |
payload.userDisconnected.reason | string | - | - | - | - |
payload.userDisconnected.code | integer | - | - | - | - |
payload.userDisconnected.platform | string | - | - | - | - |
payload.userDisconnected.lobbySessionId | string | - | - | - | - |
payload.userDisconnected.isReconnecting | boolean | - | - | - | - |
payload.userDisconnected.connectionId | string | - | - | - | - |
0 (allOf item) | object | - | - | - | additional properties are allowed |
id | string | - | - | - | - |
version | integer | - | - | - | - |
name | string | - | - | - | - |
namespace | string | - | - | - | - |
parentNamespace | string | - | - | - | - |
timestamp | string | - | - | format (date-time ) | - |
clientId | string | - | - | - | - |
userId | string | UserId of the operator for this event (optional) | - | - | - |
traceId | string | - | - | - | - |
sessionId | string | - | - | - | - |
spanContext | string | - | - | - | - |
Examples of payload (generated)
{
"payload": {
"userDisconnected": {
"reason": "string",
"code": 0,
"platform": "string",
"lobbySessionId": "string",
"isReconnecting": true,
"connectionId": "string"
}
},
"id": "string",
"version": 0,
"name": "string",
"namespace": "string",
"parentNamespace": "string",
"timestamp": "2019-08-24T14:15:22Z",
"clientId": "string",
"userId": "string",
"traceId": "string",
"sessionId": "string",
"spanContext": "string"
}
Message userChatRateLimited
Payload
Name | Type | Description | Value | Constraints | Notes |
---|---|---|---|---|---|
(root) | object | - | - | - | additional properties are allowed |
id | string | - | - | - | - |
version | integer | - | - | - | - |
name | string | - | - | - | - |
namespace | string | - | - | - | - |
parentNamespace | string | - | - | - | - |
timestamp | string | - | - | format (date-time ) | - |
clientId | string | - | - | - | - |
userId | string | UserId of the operator for this event (optional) | - | - | - |
traceId | string | - | - | - | - |
sessionId | string | - | - | - | - |
spanContext | string | - | - | - | - |
Examples of payload (generated)
{
"id": "string",
"version": 0,
"name": "string",
"namespace": "string",
"parentNamespace": "string",
"timestamp": "2019-08-24T14:15:22Z",
"clientId": "string",
"userId": "string",
"traceId": "string",
"sessionId": "string",
"spanContext": "string"
}
Message userRateLimited
Payload
Name | Type | Description | Value | Constraints | Notes |
---|---|---|---|---|---|
(root) | object | - | - | - | additional properties are allowed |
id | string | - | - | - | - |
version | integer | - | - | - | - |
name | string | - | - | - | - |
namespace | string | - | - | - | - |
parentNamespace | string | - | - | - | - |
timestamp | string | - | - | format (date-time ) | - |
clientId | string | - | - | - | - |
userId | string | UserId of the operator for this event (optional) | - | - | - |
traceId | string | - | - | - | - |
sessionId | string | - | - | - | - |
spanContext | string | - | - | - | - |
Examples of payload (generated)
{
"id": "string",
"version": 0,
"name": "string",
"namespace": "string",
"parentNamespace": "string",
"timestamp": "2019-08-24T14:15:22Z",
"clientId": "string",
"userId": "string",
"traceId": "string",
"sessionId": "string",
"spanContext": "string"
}
Message userBlockAdded
Payload
Name | Type | Description | Value | Constraints | Notes |
---|---|---|---|---|---|
(root) | object allOf | - | - | - | additional properties are allowed |
payload | object | - | - | - | additional properties are allowed |
payload.blocked | object | - | - | - | additional properties are allowed |
payload.blocked.blockedByUserId | string | - | - | - | - |
payload.blocked.blockedUserId | string | - | - | - | - |
0 (allOf item) | object | - | - | - | additional properties are allowed |
id | string | - | - | - | - |
version | integer | - | - | - | - |
name | string | - | - | - | - |
namespace | string | - | - | - | - |
parentNamespace | string | - | - | - | - |
timestamp | string | - | - | format (date-time ) | - |
clientId | string | - | - | - | - |
userId | string | UserId of the operator for this event (optional) | - | - | - |
traceId | string | - | - | - | - |
sessionId | string | - | - | - | - |
spanContext | string | - | - | - | - |
Examples of payload (generated)
{
"payload": {
"blocked": {
"blockedByUserId": "string",
"blockedUserId": "string"
}
},
"id": "string",
"version": 0,
"name": "string",
"namespace": "string",
"parentNamespace": "string",
"timestamp": "2019-08-24T14:15:22Z",
"clientId": "string",
"userId": "string",
"traceId": "string",
"sessionId": "string",
"spanContext": "string"
}
Message userBlockRemoved
Payload
Name | Type | Description | Value | Constraints | Notes |
---|---|---|---|---|---|
(root) | object allOf | - | - | - | additional properties are allowed |
payload | object | - | - | - | additional properties are allowed |
payload.blocked | object | - | - | - | additional properties are allowed |
payload.blocked.blockedByUserId | string | - | - | - | - |
payload.blocked.blockedUserId | string | - | - | - | - |
0 (allOf item) | object | - | - | - | additional properties are allowed |
id | string | - | - | - | - |
version | integer | - | - | - | - |
name | string | - | - | - | - |
namespace | string | - | - | - | - |
parentNamespace | string | - | - | - | - |
timestamp | string | - | - | format (date-time ) | - |
clientId | string | - | - | - | - |
userId | string | UserId of the operator for this event (optional) | - | - | - |
traceId | string | - | - | - | - |
sessionId | string | - | - | - | - |
spanContext | string | - | - | - | - |
Examples of payload (generated)
{
"payload": {
"blocked": {
"blockedByUserId": "string",
"blockedUserId": "string"
}
},
"id": "string",
"version": 0,
"name": "string",
"namespace": "string",
"parentNamespace": "string",
"timestamp": "2019-08-24T14:15:22Z",
"clientId": "string",
"userId": "string",
"traceId": "string",
"sessionId": "string",
"spanContext": "string"
}
PUB lobbyMatchmakingTickets
Operation
Message matchmakingTicketsPublished
Payload
Name | Type | Description | Value | Constraints | Notes |
---|---|---|---|---|---|
(root) | allOf | - | - | - | additional properties are allowed |
payload | - | - | - | - | additional properties are allowed |
payload.totalMatchmakingRequest | integer | - | - | - | - |
payload.averageMatchmakingExecutionTime | integer | - | - | - | - |
0 (allOf item) | object | - | - | - | additional properties are allowed |
id | string | - | - | - | - |
version | integer | - | - | - | - |
name | string | - | - | - | - |
namespace | string | - | - | - | - |
parentNamespace | string | - | - | - | - |
timestamp | string | - | - | format (date-time ) | - |
clientId | string | - | - | - | - |
userId | string | UserId of the operator for this event (optional) | - | - | - |
traceId | string | - | - | - | - |
sessionId | string | - | - | - | - |
spanContext | string | - | - | - | - |
Examples of payload (generated)
{
"payload": {
"totalMatchmakingRequest": 0,
"averageMatchmakingExecutionTime": 0
},
"id": "string",
"version": 0,
"name": "string",
"namespace": "string",
"parentNamespace": "string",
"timestamp": "2019-08-24T14:15:22Z",
"clientId": "string",
"userId": "string",
"traceId": "string",
"sessionId": "string",
"spanContext": "string"
}
PUB lobbyTotalUsersOnline
Operation
Message totalUsersOnlinePublished
Payload
Name | Type | Description | Value | Constraints | Notes |
---|---|---|---|---|---|
(root) | allOf | - | - | - | additional properties are allowed |
payload | - | - | - | - | additional properties are allowed |
payload.totalUsersOnline | integer | - | - | - | - |
payload.totalUsersOnlineSteam | integer | - | - | - | - |
payload.totalUsersOnlineXbox | integer | - | - | - | - |
payload.totalUsersOnlinePlaystation | integer | - | - | - | - |
0 (allOf item) | object | - | - | - | additional properties are allowed |
id | string | - | - | - | - |
version | integer | - | - | - | - |
name | string | - | - | - | - |
namespace | string | - | - | - | - |
parentNamespace | string | - | - | - | - |
timestamp | string | - | - | format (date-time ) | - |
clientId | string | - | - | - | - |
userId | string | UserId of the operator for this event (optional) | - | - | - |
traceId | string | - | - | - | - |
sessionId | string | - | - | - | - |
spanContext | string | - | - | - | - |
Examples of payload (generated)
{
"payload": {
"totalUsersOnline": 0,
"totalUsersOnlineSteam": 0,
"totalUsersOnlineXbox": 0,
"totalUsersOnlinePlaystation": 0
},
"id": "string",
"version": 0,
"name": "string",
"namespace": "string",
"parentNamespace": "string",
"timestamp": "2019-08-24T14:15:22Z",
"clientId": "string",
"userId": "string",
"traceId": "string",
"sessionId": "string",
"spanContext": "string"
}