Skip to main content
Vous consultez la documentation pour développeurs
Cette documentation est destinée aux développeurs travaillant avec la plateforme développeur Base44.
Créez un acteur pour exécuter une logique backend dans une session en direct partagée par plusieurs clients, comme un salon de discussion ou un jeu multijoueur. Un acteur gère depuis votre backend les connexions, les messages et les déconnexions des clients.

Fichiers d’acteur

Créez les acteurs sous forme de fichiers TypeScript dans le répertoire des acteurs de votre projet. Chaque acteur se trouve dans son propre sous-répertoire sous base44/actors/, avec un fichier entry.ts :
base44
actors
chatRoom
entry.ts
Le nom du dossier devient le nom de l’acteur dans le SDK. Il détermine comment les clients appellent l’acteur, par exemple base44.actors.chatRoom. Exportez la classe de l’acteur comme export par défaut du fichier entry.ts. Vous pouvez inclure d’autres fichiers .ts, .js, .json et .jsonc dans le répertoire de l’acteur et les importer depuis entry.ts.

entry.ts

Le fichier de code contient la classe de votre acteur. Importez Actor depuis base44:runtime/actors et exportez par défaut une classe qui étend Actor. Passez les génériques Incoming et Outgoing pour typer les messages que l’acteur reçoit et envoie. Implémentez les méthodes de classe suivantes. La méthode handleStart() est facultative :
  • handleStart() : chargez les données de session enregistrées depuis le stockage dans les champs de la classe. Base44 appelle ce gestionnaire à chaque activation de la session. Votre état restauré est ainsi prêt avant que Base44 ne traite une connexion. Pour un exemple complet de stockage, consultez persister les données de session.
  • handleConnect() : envoyez l’état actuel de la session au client qui se connecte. Pour refuser des connexions ou identifier des clients, consultez gérer les connexions des clients.
  • handleMessage() : mettez à jour l’état de la session, persistez-le et diffusez le changement.
  • handleClose() : supprimez tout état lié à cette connexion. S’il n’y a aucun état de connexion à effacer, écrivez un corps vide.
  • handleTick() : exécutez du code à chaque intervalle de tick. Si l’acteur n’utilise pas de ticks, écrivez un corps vide. Pour configurer des ticks, consultez exécuter des ticks. Pour planifier un réveil unique, consultez planifier des réveils.
L’exemple suivant montre un acteur ChatRoom simplifié :

Voir aussi

Cette page a été traduite par IA. Pour les informations les plus précises et à jour, consultez la version anglaise.