Skip to main content

Lobby Matchmaking Events 0.1.0 documentation

Published Messages (matchmaking)

The service publishes one of these messages below.

matchmakingRequested

Contains fields from event and the following payload.

Example value
{
"payload": {
"matchmakingRequest": {
"priority": "string",
"createdAt": "string",
"channel": "string",
"partyId": "string",
"ticketId": "string",
"partyMembers": [
{
"userId": "string",
"extraAttributes": {}
}
],
"timestamp": "2019-08-24T14:15:22Z",
"event": "string"
}
},
"id": "string",
"version": 0,
"name": "string",
"namespace": "string",
"parentNamespace": "string",
"timestamp": "2019-08-24T14:15:22Z",
"clientId": "string",
"userId": "string",
"sessionId": "string",
"spanContext": "string"
}

payload

NameTypeDescription
matchmakingRequestobject-
payload.matchmakingRequest
NameTypeDescription
prioritystring-
createdAtstring-
channelstring-
partyIdstring-
ticketIdstring-
partyMembersarray<object>-
timestampstring (date-time)-
eventstring-
payload.matchmakingRequest.partyMembers[number]
NameTypeDescription
userIdstring-
extraAttributesobject-
payload.matchmakingRequest.partyMembers[number].extraAttributes

This is a free-form object.

matchmakingCanceled

Contains fields from event and the following payload.

Example value
{
"payload": {
"matchmaking": {
"status": "string",
"matchId": "string",
"channel": "string",
"namespace": "string",
"gameMode": "string",
"matchingParties": [
{
"userId": "string",
"extraAttributes": {}
}
],
"ticketId": "string",
"ticketIds": [
"string"
]
}
},
"id": "string",
"version": 0,
"name": "string",
"namespace": "string",
"parentNamespace": "string",
"timestamp": "2019-08-24T14:15:22Z",
"clientId": "string",
"userId": "string",
"sessionId": "string",
"spanContext": "string"
}

payload

NameTypeDescription
matchmakinglobbyMatchmaking-

matchmakingStarted

Contains fields from event and the following payload.

Example value
{
"payload": {
"matchmaking": {
"status": "string",
"matchId": "string",
"channel": "string",
"namespace": "string",
"gameMode": "string",
"matchingParties": [
{
"ticket_id": "string",
"party_id": "string",
"party_members": [
{
"user_id": "string",
"extra_attributes": {}
}
],
"party_attributes": {},
"ticket_created_at": 0,
"first_ticket_created_at": 0
}
]
}
},
"id": "string",
"version": 0,
"name": "string",
"namespace": "string",
"parentNamespace": "string",
"timestamp": "2019-08-24T14:15:22Z",
"clientId": "string",
"userId": "string",
"sessionId": "string",
"spanContext": "string"
}

payload

NameTypeDescription
matchmakingobject-
payload.matchmaking
NameTypeDescription
statusstring-
matchIdstring-
channelstring-
namespacestring-
gameModestring-
matchingPartiesarray<object>-
payload.matchmaking.matchingParties[number]
NameTypeDescription
ticket_idstring-
party_idstring-
party_membersarray<object>-
party_attributesobject-
ticket_created_atinteger-
first_ticket_created_atinteger-
payload.matchmaking.matchingParties[number].party_members[number]
NameTypeDescription
user_idstring-
extra_attributesobject-
payload.matchmaking.matchingParties[number].party_members[number].extra_attributes

This is a free-form object.

payload.matchmaking.matchingParties[number].party_attributes

This is a free-form object.

matchmakingTimeout

Contains fields from event and the following payload.

Example value
{
"payload": {
"matchmaking": {
"status": "string",
"matchId": "string",
"channel": "string",
"namespace": "string",
"gameMode": "string",
"matchingParties": [
{
"userId": "string",
"extraAttributes": {}
}
],
"ticketId": "string",
"ticketIds": [
"string"
]
}
},
"id": "string",
"version": 0,
"name": "string",
"namespace": "string",
"parentNamespace": "string",
"timestamp": "2019-08-24T14:15:22Z",
"clientId": "string",
"userId": "string",
"sessionId": "string",
"spanContext": "string"
}

payload

NameTypeDescription
matchmakinglobbyMatchmaking-

matchmakingRejected

Contains fields from event and the following payload.

Example value
{
"payload": {
"matchmaking": {
"status": "string",
"matchId": "string",
"channel": "string",
"namespace": "string",
"gameMode": "string",
"matchingParties": [
{
"userId": "string",
"extraAttributes": {}
}
],
"ticketId": "string",
"ticketIds": [
"string"
]
}
},
"id": "string",
"version": 0,
"name": "string",
"namespace": "string",
"parentNamespace": "string",
"timestamp": "2019-08-24T14:15:22Z",
"clientId": "string",
"userId": "string",
"sessionId": "string",
"spanContext": "string"
}

payload

NameTypeDescription
matchmakinglobbyMatchmaking-

matchmakingChannelCreated

Contains fields from event and the following payload.

Example value
{
"payload": {
"ruleset": {
"alliance": {
"min_number": 0,
"max_number": 0,
"player_min_number": 0,
"player_max_number": 0,
"combination": {
"role_flexing_enable": true,
"role_flexing_second": 0,
"role_flexing_player": 0,
"has_combination": true,
"alliances": [
[
{
"name": "string",
"min": 0,
"max": 0
}
]
]
}
},
"matching_rule": [
{
"attribute": "string",
"criteria": "string",
"reference": 0
}
],
"flexing_rule": [
{
"duration": 0,
"matching_rule": {
"attribute": "string",
"criteria": "string",
"reference": 0
}
}
],
"alliance_flexing_rule": [
{
"duration": 0,
"AllianceRule": {
"min_number": 0,
"max_number": 0,
"player_min_number": 0,
"player_max_number": 0,
"combination": {
"role_flexing_enable": true,
"role_flexing_second": 0,
"role_flexing_player": 0,
"has_combination": true,
"alliances": [
[
{
"name": "string",
"min": 0,
"max": 0
}
]
]
}
}
}
],
"match_options": [
{
"options": {
"name": "string",
"type": "string"
}
}
],
"sub_game_modes": [
{
"name": "string",
"alliance": {
"min_number": 0,
"max_number": 0,
"player_min_number": 0,
"player_max_number": 0,
"combination": {
"role_flexing_enable": true,
"role_flexing_second": 0,
"role_flexing_player": 0,
"has_combination": true,
"alliances": [
[
{
"name": "string",
"min": 0,
"max": 0
}
]
]
}
},
"alliance_flexing_rule": [
{
"duration": 0,
"AllianceRule": {
"min_number": 0,
"max_number": 0,
"player_min_number": 0,
"player_max_number": 0,
"combination": {
"role_flexing_enable": true,
"role_flexing_second": 0,
"role_flexing_player": 0,
"has_combination": true,
"alliances": [
[
{
"name": "string",
"min": 0,
"max": 0
}
]
]
}
}
}
]
}
],
"rebalance_enable": true
},
"description": "string",
"gameMode": "string",
"findMatchTimeoutSeconds": 0
},
"id": "string",
"version": 0,
"name": "string",
"namespace": "string",
"parentNamespace": "string",
"timestamp": "2019-08-24T14:15:22Z",
"clientId": "string",
"userId": "string",
"sessionId": "string",
"spanContext": "string"
}

payload

NameTypeDescription
rulesetruleset-
descriptionstring-
gameModestring-
findMatchTimeoutSecondsinteger-

matchmakingChannelDeleted

Contains fields from event and the following payload.

Example value
{
"payload": {
"ruleset": {
"alliance": {
"min_number": 0,
"max_number": 0,
"player_min_number": 0,
"player_max_number": 0,
"combination": {
"role_flexing_enable": true,
"role_flexing_second": 0,
"role_flexing_player": 0,
"has_combination": true,
"alliances": [
[
{
"name": "string",
"min": 0,
"max": 0
}
]
]
}
},
"matching_rule": [
{
"attribute": "string",
"criteria": "string",
"reference": 0
}
],
"flexing_rule": [
{
"duration": 0,
"matching_rule": {
"attribute": "string",
"criteria": "string",
"reference": 0
}
}
],
"alliance_flexing_rule": [
{
"duration": 0,
"AllianceRule": {
"min_number": 0,
"max_number": 0,
"player_min_number": 0,
"player_max_number": 0,
"combination": {
"role_flexing_enable": true,
"role_flexing_second": 0,
"role_flexing_player": 0,
"has_combination": true,
"alliances": [
[
{
"name": "string",
"min": 0,
"max": 0
}
]
]
}
}
}
],
"match_options": [
{
"options": {
"name": "string",
"type": "string"
}
}
],
"sub_game_modes": [
{
"name": "string",
"alliance": {
"min_number": 0,
"max_number": 0,
"player_min_number": 0,
"player_max_number": 0,
"combination": {
"role_flexing_enable": true,
"role_flexing_second": 0,
"role_flexing_player": 0,
"has_combination": true,
"alliances": [
[
{
"name": "string",
"min": 0,
"max": 0
}
]
]
}
},
"alliance_flexing_rule": [
{
"duration": 0,
"AllianceRule": {
"min_number": 0,
"max_number": 0,
"player_min_number": 0,
"player_max_number": 0,
"combination": {
"role_flexing_enable": true,
"role_flexing_second": 0,
"role_flexing_player": 0,
"has_combination": true,
"alliances": [
[
{
"name": "string",
"min": 0,
"max": 0
}
]
]
}
}
}
]
}
],
"rebalance_enable": true
},
"description": "string",
"gameMode": "string",
"findMatchTimeoutSeconds": 0
},
"id": "string",
"version": 0,
"name": "string",
"namespace": "string",
"parentNamespace": "string",
"timestamp": "2019-08-24T14:15:22Z",
"clientId": "string",
"userId": "string",
"sessionId": "string",
"spanContext": "string"
}

payload

NameTypeDescription
rulesetruleset-
descriptionstring-
gameModestring-
findMatchTimeoutSecondsinteger-

matchmakingChannelUpdated

Contains fields from event and the following payload.

Example value
{
"payload": {
"ruleset": {
"alliance": {
"min_number": 0,
"max_number": 0,
"player_min_number": 0,
"player_max_number": 0,
"combination": {
"role_flexing_enable": true,
"role_flexing_second": 0,
"role_flexing_player": 0,
"has_combination": true,
"alliances": [
[
{
"name": "string",
"min": 0,
"max": 0
}
]
]
}
},
"matching_rule": [
{
"attribute": "string",
"criteria": "string",
"reference": 0
}
],
"flexing_rule": [
{
"duration": 0,
"matching_rule": {
"attribute": "string",
"criteria": "string",
"reference": 0
}
}
],
"alliance_flexing_rule": [
{
"duration": 0,
"AllianceRule": {
"min_number": 0,
"max_number": 0,
"player_min_number": 0,
"player_max_number": 0,
"combination": {
"role_flexing_enable": true,
"role_flexing_second": 0,
"role_flexing_player": 0,
"has_combination": true,
"alliances": [
[
{
"name": "string",
"min": 0,
"max": 0
}
]
]
}
}
}
],
"match_options": [
{
"options": {
"name": "string",
"type": "string"
}
}
],
"sub_game_modes": [
{
"name": "string",
"alliance": {
"min_number": 0,
"max_number": 0,
"player_min_number": 0,
"player_max_number": 0,
"combination": {
"role_flexing_enable": true,
"role_flexing_second": 0,
"role_flexing_player": 0,
"has_combination": true,
"alliances": [
[
{
"name": "string",
"min": 0,
"max": 0
}
]
]
}
},
"alliance_flexing_rule": [
{
"duration": 0,
"AllianceRule": {
"min_number": 0,
"max_number": 0,
"player_min_number": 0,
"player_max_number": 0,
"combination": {
"role_flexing_enable": true,
"role_flexing_second": 0,
"role_flexing_player": 0,
"has_combination": true,
"alliances": [
[
{
"name": "string",
"min": 0,
"max": 0
}
]
]
}
}
}
]
}
],
"rebalance_enable": true
},
"description": "string",
"gameMode": "string",
"findMatchTimeoutSeconds": 0
},
"id": "string",
"version": 0,
"name": "string",
"namespace": "string",
"parentNamespace": "string",
"timestamp": "2019-08-24T14:15:22Z",
"clientId": "string",
"userId": "string",
"sessionId": "string",
"spanContext": "string"
}

payload

NameTypeDescription
rulesetruleset-
descriptionstring-
gameModestring-
findMatchTimeoutSecondsinteger-

matchmakingSessionStatusChanged

Contains fields from event and the following payload.

Example value
{
"payload": {
"session": {
"status": "string",
"event": "string",
"party_id": "string",
"ticket_id": "string",
"match_id": "string",
"channel": "string",
"namespace": "string",
"game_mode": "string",
"server_name": "string",
"client_version": "string",
"region": "string",
"joinable": true,
"matching_allies": [
{
"matching_parties": [
{
"ticket_id": "string",
"party_id": "string",
"party_members": [
{
"user_id": "string",
"extra_attributes": {}
}
],
"party_attributes": {},
"ticket_created_at": 0,
"first_ticket_created_at": 0
}
],
"playerCount": 0
}
],
"deployment": "string",
"updatedAt": "2019-08-24T14:15:22Z",
"queueAt": 0,
"partyAttributes": "string",
"errorCode": 0,
"errorMessage": "string",
"timestamp": "2019-08-24T14:15:22Z"
}
},
"id": "string",
"version": 0,
"name": "string",
"namespace": "string",
"parentNamespace": "string",
"timestamp": "2019-08-24T14:15:22Z",
"clientId": "string",
"userId": "string",
"sessionId": "string",
"spanContext": "string"
}

payload

NameTypeDescription
sessionobject-
payload.session
NameTypeDescription
statusstring-
eventstring-
party_idstring-
ticket_idstring-
match_idstring-
channelstring-
namespacestring-
game_modestring-
server_namestring-
client_versionstring-
regionstring-
joinableboolean-
matching_alliesarray<object>-
deploymentstring-
updatedAtstring (date-time)-
queueAtinteger-
partyAttributesstring-
errorCodeinteger-
errorMessagestring-
timestampstring (date-time)-
payload.session.matching_allies[number]
NameTypeDescription
matching_partiesarray<object>-
playerCountinteger-
payload.session.matching_allies[number].matching_parties[number]
NameTypeDescription
ticket_idstring-
party_idstring-
party_membersarray<object>-
party_attributesobject-
ticket_created_atinteger-
first_ticket_created_atinteger-
payload.session.matching_allies[number].matching_parties[number].party_members[number]
NameTypeDescription
user_idstring-
extra_attributesobject-
payload.session.matching_allies[number].matching_parties[number].party_members[number].extra_attributes

This is a free-form object.

payload.session.matching_allies[number].matching_parties[number].party_attributes

This is a free-form object.

matchmakingTicketStatusChanged

Contains fields from event and the following payload.

Example value
{
"payload": {
"ticket": {
"priority": 0,
"created_at": 0,
"channel": "string",
"namespace": "string",
"ticket_id": "string",
"party_id": "string",
"party_leader_id": "string",
"party_attributes": {},
"party_members": [
{
"user_id": "string",
"extra_attributes": {}
}
],
"additional_criteria": {},
"latency_map": {
"property1": 0,
"property2": 0
},
"sorted_latency": [
{
"region": "string",
"latency": 0
}
],
"first_ticket_created_at": 0
}
},
"id": "string",
"version": 0,
"name": "string",
"namespace": "string",
"parentNamespace": "string",
"timestamp": "2019-08-24T14:15:22Z",
"clientId": "string",
"userId": "string",
"sessionId": "string",
"spanContext": "string"
}

payload

NameTypeDescription
ticketobject-
payload.ticket
NameTypeDescription
priorityinteger-
created_atinteger-
channelstring-
namespacestring-
ticket_idstring-
party_idstring-
party_leader_idstring-
party_attributesobject-
party_membersarray<partyMember>-
additional_criteriaobject-
latency_mapobject-
sorted_latencyarray<object>-
first_ticket_created_atinteger-
payload.ticket.party_attributes

This is a free-form object.

payload.ticket.additional_criteria

This is a free-form object.

payload.ticket.latency_map

This is a free-form object.

payload.ticket.sorted_latency[number]
NameTypeDescription
regionstring-
latencyinteger-

Published Messages (matchmakingTotalPlayersInQueue)

The service publishes one of these messages below.

matchmakingTotalPlayersInQueue

Contains fields from event and the following payload.

Example value
{
"payload": {
"totalPlayersInQueue": 0
},
"id": "string",
"version": 0,
"name": "string",
"namespace": "string",
"parentNamespace": "string",
"timestamp": "2019-08-24T14:15:22Z",
"clientId": "string",
"userId": "string",
"sessionId": "string",
"spanContext": "string"
}

payload

NameTypeDescription
totalPlayersInQueueinteger-

Published Messages (readyConsent)

The service publishes one of these messages below.

readyConsentSuccess

Contains fields from event and the following payload.

Example value
{
"payload": {
"successTickets": {
"partyId": "string",
"memberIds": [
"string"
],
"ticketCreatedAt": 0
}
},
"id": "string",
"version": 0,
"name": "string",
"namespace": "string",
"parentNamespace": "string",
"timestamp": "2019-08-24T14:15:22Z",
"clientId": "string",
"userId": "string",
"sessionId": "string",
"spanContext": "string"
}

payload

NameTypeDescription
successTicketssuccessTickets-

readyConsentFailed

Contains fields from event and the following payload.

Example value
{
"payload": {
"successTickets": {
"partyId": "string",
"memberIds": [
"string"
],
"ticketCreatedAt": 0
},
"failedTickets": {
"partyId": "string",
"succeedMemberIds": [
"string"
],
"failedMemberIds": [
"string"
],
"ticketCreatedAt": 0
}
},
"id": "string",
"version": 0,
"name": "string",
"namespace": "string",
"parentNamespace": "string",
"timestamp": "2019-08-24T14:15:22Z",
"clientId": "string",
"userId": "string",
"sessionId": "string",
"spanContext": "string"
}

payload

NameTypeDescription
successTicketssuccessTickets-
failedTicketsobject-
payload.failedTickets
NameTypeDescription
partyIdstring-
succeedMemberIdsarray-
failedMemberIdsarray-
ticketCreatedAtinteger-

Schemas

matching_rule

NameTypeDescription
attributestring-
criteriastring-
referencenumber (float)-

alliance

NameTypeDescription
min_numberinteger-
max_numberinteger-
player_min_numberinteger-
player_max_numberinteger-
combinationobject-

combination

NameTypeDescription
role_flexing_enableboolean-
role_flexing_secondinteger-
role_flexing_playerinteger-
has_combinationboolean-
alliancesarray-

rulesetAllianceFlexingRule

NameTypeDescription
durationinteger-
AllianceRuleobject-

AllianceRule

NameTypeDescription
min_numberinteger-
max_numberinteger-
player_min_numberinteger-
player_max_numberinteger-
combinationobject-

AllianceRule.combination

NameTypeDescription
role_flexing_enableboolean-
role_flexing_secondinteger-
role_flexing_playerinteger-
has_combinationboolean-
alliancesarray-

partyMember

NameTypeDescription
user_idstring-
extra_attributesobject-

extra_attributes

This is a free-form object.

matchingParty

NameTypeDescription
ticket_idstring-
party_idstring-
party_membersarray<object>-
party_attributesobject-
ticket_created_atinteger-
first_ticket_created_atinteger-

party_members[number]

NameTypeDescription
user_idstring-
extra_attributesobject-

party_members[number].extra_attributes

This is a free-form object.

party_attributes

This is a free-form object.

partyMemberV1

NameTypeDescription
userIdstring-
extraAttributesobject-

extraAttributes

This is a free-form object.

ruleset

NameTypeDescription
allianceobject-
matching_rulearray<object>-
flexing_rulearray<object>-
alliance_flexing_rulearray<rulesetAllianceFlexingRule>-
match_optionsarray<object>-
sub_game_modesarray<object>-
rebalance_enableboolean-

alliance

NameTypeDescription
min_numberinteger-
max_numberinteger-
player_min_numberinteger-
player_max_numberinteger-
combinationobject-

alliance.combination

NameTypeDescription
role_flexing_enableboolean-
role_flexing_secondinteger-
role_flexing_playerinteger-
has_combinationboolean-
alliancesarray-

matching_rule[number]

NameTypeDescription
attributestring-
criteriastring-
referencenumber (float)-

flexing_rule[number]

NameTypeDescription
durationinteger-
matching_ruleobject-

flexing_rule[number].matching_rule

NameTypeDescription
attributestring-
criteriastring-
referencenumber (float)-

match_options[number]

NameTypeDescription
optionsobject-

match_options[number].options

NameTypeDescription
namestring-
typestring-

sub_game_modes[number]

NameTypeDescription
namestring-
allianceobject-
alliance_flexing_rulearray<rulesetAllianceFlexingRule>-

sub_game_modes[number].alliance

NameTypeDescription
min_numberinteger-
max_numberinteger-
player_min_numberinteger-
player_max_numberinteger-
combinationobject-

sub_game_modes[number].alliance.combination

NameTypeDescription
role_flexing_enableboolean-
role_flexing_secondinteger-
role_flexing_playerinteger-
has_combinationboolean-
alliancesarray-

lobbyMatchmaking

NameTypeDescription
statusstring-
matchIdstring-
channelstring-
namespacestring-
gameModestring-
matchingPartiesarray<object>-
ticketIdstring-
ticketIdsarray-

matchingParties[number]

NameTypeDescription
userIdstring-
extraAttributesobject-

matchingParties[number].extraAttributes

This is a free-form object.

successTickets

NameTypeDescription
partyIdstring-
memberIdsarray-
ticketCreatedAtinteger-

event

NameTypeDescription
idstring-
versioninteger-
namestring-
namespacestring-
parentNamespacestring-
timestampstring (date-time)-
clientIdstring-
userIdstringas operator id
sessionIdstring-
spanContextstring-