Skip to main content
Estás viendo la documentación para desarrolladores
Esta documentación es para desarrolladores que trabajan con la plataforma para desarrolladores de Base44.
Crea un actor para ejecutar lógica de backend en una sesión en vivo que comparten varios clientes, como una sala de chat o un juego multijugador. Un actor gestiona desde tu backend las conexiones, los mensajes y las desconexiones de los clientes.

Archivos del actor

Crea los actores como archivos TypeScript en el directorio de actores de tu proyecto. Cada actor vive en su propio subdirectorio dentro de base44/actors/ con un archivo entry.ts:
base44
actors
chatRoom
entry.ts
El nombre de la carpeta se convierte en el nombre del actor en el SDK y determina cómo llaman los clientes al actor, por ejemplo base44.actors.chatRoom. Exporta la clase del actor como exportación predeterminada desde el archivo entry.ts. Puedes incluir archivos .ts, .js, .json y .jsonc adicionales en el directorio del actor e importarlos desde entry.ts.

entry.ts

El archivo de código contiene la clase de tu actor. Importa Actor desde base44:runtime/actors y exporta como exportación predeterminada una clase que extienda Actor. Pasa los genéricos Incoming y Outgoing para tipar los mensajes que el actor recibe y envía. Implementa los siguientes métodos de clase. El método handleStart() es opcional:
  • handleStart(): Carga los datos de sesión guardados desde el almacenamiento en los campos de la clase. Base44 llama a este manejador cada vez que se activa la sesión, así tu estado restaurado está listo antes de que Base44 gestione cualquier conexión. Para ver un ejemplo completo de almacenamiento, consulta conservar los datos de sesión.
  • handleConnect(): Envía el estado actual de la sesión al cliente que se conecta. Para rechazar conexiones o identificar clientes, consulta gestionar las conexiones de clientes.
  • handleMessage(): Actualiza el estado de la sesión, lo conserva y difunde el cambio.
  • handleClose(): Elimina cualquier estado vinculado a esa conexión. Si no hay estado de conexión que borrar, escribe un cuerpo vacío.
  • handleTick(): Ejecuta código en cada intervalo de tick. Si el actor no usa ticks, escribe un cuerpo vacío. Para configurar ticks, consulta ejecutar ticks. Para programar un despertar único, consulta programar despertares.
El siguiente ejemplo muestra un actor ChatRoom simplificado:

Ver también

Esta página fue traducida con IA. Para obtener la información más precisa y actualizada, consulta la versión en inglés.