Skip to main content
Stai visualizzando la documentazione per sviluppatori
Questa documentazione è per sviluppatori che lavorano con la piattaforma per sviluppatori di Base44.
Crea un actor per eseguire logica di backend per una sessione live condivisa da più client, come una chat room o un gioco multiplayer. Un actor gestisce dal tuo backend le connessioni, i messaggi e le disconnessioni dei client.

File degli actor

Crea gli actor come file TypeScript nella directory degli actor del tuo progetto. Ogni actor si trova in una propria sottodirectory sotto base44/actors/ con un file entry.ts:
base44
actors
chatRoom
entry.ts
Il nome della cartella diventa il nome dell’actor nell’SDK e determina come i client chiamano l’actor, ad esempio base44.actors.chatRoom. Esporta la classe dell’actor come export predefinito del file entry.ts. Puoi includere altri file .ts, .js, .json e .jsonc nella directory dell’actor e importarli da entry.ts.

entry.ts

Il file di codice contiene la classe del tuo actor. Importa Actor da base44:runtime/actors ed esporta come export predefinito una classe che estende Actor. Passa i generici Incoming e Outgoing per tipizzare i messaggi che l’actor riceve e invia. Implementa i seguenti metodi della classe. Il metodo handleStart() è facoltativo:
  • handleStart(): Carica nei campi della classe i dati di sessione salvati nello storage. Base44 chiama questo handler ogni volta che la sessione si attiva. Così lo stato ripristinato è pronto prima che Base44 gestisca qualsiasi connessione. Per un esempio completo di storage, consulta rendere persistenti i dati di sessione.
  • handleConnect(): Invia lo stato attuale della sessione al client che si connette. Per rifiutare connessioni o identificare i client, consulta gestire le connessioni dei client.
  • handleMessage(): Aggiorna lo stato della sessione, rendilo persistente e trasmetti la modifica.
  • handleClose(): Rimuovi qualsiasi stato legato a quella connessione. Se non c’è stato di connessione da eliminare, scrivi un corpo vuoto.
  • handleTick(): Esegui codice a ogni intervallo di tick. Se l’actor non usa i tick, scrivi un corpo vuoto. Per configurare i tick, consulta eseguire i tick. Per pianificare un risveglio singolo, consulta pianificare i wake.
L’esempio seguente mostra un actor ChatRoom semplificato:

Vedi anche

Questa pagina è stata tradotta con l’AI. Per le informazioni più accurate e aggiornate, consulta la versione inglese.