Pular para o conteúdo principal

Proxy Module e Handshake

Última atualização: 16 de julho de 2026

O Proxy Module é o ponto de entrada físico do cliente no PlayServ. Ele conduz o fluxo de handshake, valida os pré-requisitos da conexão, aplica a política de conexão e só então permite que o cliente fique logicamente pronto para a lógica de gameplay do lado do servidor.

O handshake oferece um único ponto controlado onde o PlayServ pode validar identidade e restrições de Session antes de o cliente ser considerado pronto. É aqui que as decisões de política de conexão são aplicadas.

informação

Use este fluxo sempre que um cliente precisar estabelecer uma Session com o PlayServ e chegar a um estado em que os sistemas de gameplay possam começar a funcionar com segurança — chamadas RPC, Events, Groups e Subscriptions de dados.


Fluxo do handshake​

válidofalharetorna as Sessions a manter:todas · só a nova · nenhumaCliente chama Ready()Valida token & GameIdautorizaçãoConexão rejeitadaPolítica de conexãoTooManyConnections RPCRegistra a conexãopor GameIdLogicamente conectadoao Game ServerClientReady emitidoservidor libera ou nega o jogo
1

Autorização e validação básica

Durante o handshake, o Proxy faz a autorização:

  • valida os tokens do cliente
  • valida o GameId

Se a validação falha, a conexão é rejeitada.

2

Política de conexão: várias conexões por dispositivo

Se o Proxy detecta várias conexões ativas para o mesmo UserDeviceToken, ele invoca o método RPC TooManyConnections, caso esteja declarado no código do servidor.

O método recebe:

  • Current — a nova Session
  • All — todas as Sessions, incluindo a nova

O método retorna a lista de Sessions que devem permanecer ativas.

[Server]
public class ClientConnection
{
// Connection policy validation
public Session[] TooManyConnections(Session Current, Session[] All)
{
// Current - new session
// All - all sessions including the new one

return All; // keep all sessions, allow the new connection
return [Current]; // close all sessions except the new one
return []; // close all sessions for the user
}
}
aviso

A política de conexão é aplicada antes de o cliente ser considerado pronto. Trate TooManyConnections como o portão que decide se a nova conexão pode coexistir com as anteriores.

3

Registrar a conexão

Se todas as verificações passam, o Proxy registra a conexão do cliente por GameId.

4

Conexão lógica e ClientReady

Depois que o cliente está logicamente conectado ao Game Server — o código do jogo que roda no RPC Module — o Event ClientReady é emitido.

É neste ponto que o Game Server pode tomar a decisão final sobre permitir ou não que o cliente participe do jogo.


Próximos passos​