Skip to main content
Você está vendo a documentação para desenvolvedores
Esta documentação é para desenvolvedores que trabalham com a plataforma para desenvolvedores Base44.
Crie um actor para executar lógica de backend em uma sessão ao vivo compartilhada por vários clientes, como uma sala de chat ou um jogo multiplayer. Um actor gerencia conexões de clientes, mensagens e desconexões a partir do seu backend.

Arquivos do actor

Crie actors como arquivos TypeScript no diretório de actors do seu projeto. Cada actor fica em seu próprio subdiretório em base44/actors/, com um arquivo entry.ts:
base44
actors
chatRoom
entry.ts
O nome da pasta se torna o nome do actor no SDK e determina como os clientes chamam o actor, por exemplo base44.actors.chatRoom. Exporte a classe do actor como exportação padrão do arquivo entry.ts. Você pode incluir arquivos .ts, .js, .json e .jsonc adicionais no diretório do actor e importá-los a partir do entry.ts.

entry.ts

O arquivo de código contém a classe do seu actor. Importe Actor de base44:runtime/actors e exporte uma classe que estende Actor como exportação padrão. Passe os genéricos Incoming e Outgoing para tipar as mensagens que o actor recebe e envia. Implemente os seguintes métodos da classe. O método handleStart() é opcional:
  • handleStart(): Carrega os dados salvos da sessão do armazenamento para os campos da classe. A Base44 chama esse handler sempre que a sessão é ativada, para que seu estado restaurado esteja pronto antes que a Base44 processe qualquer conexão. Para um exemplo completo de armazenamento, veja persistir dados da sessão.
  • handleConnect(): Envia o estado atual da sessão para o cliente que está se conectando. Para rejeitar conexões ou identificar clientes, veja gerenciar conexões de clientes.
  • handleMessage(): Atualiza o estado da sessão, persiste o estado e transmite a mudança.
  • handleClose(): Remove qualquer estado vinculado àquela conexão. Se não houver estado de conexão para limpar, escreva um corpo vazio.
  • handleTick(): Executa código a cada intervalo de tick. Se o actor não usa ticks, escreva um corpo vazio. Para configurar ticks, veja executar ticks. Para agendar um wake único, veja agendar wakes.
O exemplo a seguir mostra um actor ChatRoom simplificado:

Veja também

Esta página foi traduzida usando IA. Para as informações mais precisas e atualizadas, consulte a versão em inglês.