Suppression d'un utilisateur spécifique de la salle
4 min
Vous pouvez expulser certains utilisateurs de la salle à l'exécution.
- Veuillez créer le code serveur index.ts Sandbox.
Définition de fonction
kick(client: SandboxPlayer, reason?: string): Promise; | C'est une fonction pour expulser le SandboxPlayer après avoir reçu le SandboxPlayer avec SessionID. - Si vous êtes expulsé, un pop-up apparaîtra vous informant que vous êtes expulsé, mais le pop-up est l'interface utilisateur de l'application ZEPETO et ne peut pas être vérifié par l'éditeur. |
|---|
📘 Veuillez vous référer au guide suivant. [API ZEPETO.Multiplay(Server)]
Tout d'abord, pour obtenir des informations sur l'utilisateur, définissez les types de schéma et l'état de la salle comme suit :

Exemple d'utilisation
- Utilisez les données dans UserInfos pour obtenir l'ID de session de l'utilisateur qui sera expulsé de l'userId.
- Après avoir importé le joueur sandbox avec l'ID de session, appelez la fonction kick.
- Je peux vous dire qui a été expulsé par le biais de la diffusion.
import { Sandbox, SandboxOptions, SandboxPlayer } from 'ZEPETO.Multiplay';
import { DataStorage, loadDataStorage } from 'ZEPETO.Multiplay.DataStorage';
import { UserInfo } from 'ZEPETO.Multiplay.Schema';
export default class extends Sandbox {
onCreate(options: SandboxOptions) {
this.onMessage("Kick", (client: SandboxPlayer, message: string) => {
this.tryKick(client, message);
});
}
onJoin(client: SandboxPlayer) {
const user = new UserInfo();
user.sessionId = client.sessionId;
user.userId = client.userId;
this.state.UserInfos.set(client.userId, user);
}
async tryKick(client: SandboxPlayer, userId: string) {
let player: SandboxPlayer;
if (userId == null) {
player = client;
} else {
const kickPlayerSessionId: string = this.state.UserInfos.get(userId).sessionId;
player = this.loadPlayer(kickPlayerSessionId);
}
console.log(`try kick : ${player.userId}`);
await this.kick(player);
this.broadcast("Log", `kick : ${player.userId}`);
}
}👍 Par défaut, les utilisateurs qui ont été expulsés peuvent entrer à nouveau dans la salle
- Pour éviter cela, utilisez la fonction de gestion de DataStorage basée sur l'UserId pour stocker les informations de la salle qui ont été expulsées par l'utilisateur.
- Vous pouvez l'implémenter en appelant un kick lorsque vous essayez d'entrer dans la salle.