Personnaliser l'envoi et la réception des messages de chat
11 min
Vous pouvez personnaliser les messages de chat que vous envoyez et recevez en important le package ZEPETO.Chat.
❗️ Avertissement
- Cette fonctionnalité est disponible dans un monde où des éléments multijoueurs sont implémentés.
👍 Points de référence
- Vous pouvez envoyer/recevoir des chats même dans un environnement d'édition.
- Seuls les messages de chat créés par les utilisateurs via des gestionnaires peuvent être envoyés/reçus (les chats rapides, les messages système ne peuvent pas être reçus)
Définition de fonction
class ZepetoChat extends System.Object {
public static get Instance(): ZepetoChatImplementation;
public static get OnReceivedMessage(): UnityEngine_Events.UnityEvent$1<IMessage>;
public constructor();
public static Send($message: string): void;
}- ZepetoChat. Vous pouvez utiliser Send() pour envoyer des messages spécifiques à la fenêtre de chat.
- Vous pouvez utiliser ZepetoChat.OnReceivedMessage.AddListener() pour déterminer quel événement recevoir le message.
Exemple d'utilisation
Appuyez sur les boutons 1 et 2 pour envoyer un message spécifié. Créez un message personnalisé dans inputField pour envoyer le message.

Exemple de paramétrage
import { ZepetoScriptBehaviour } from 'ZEPETO.Script';
import { Button, InputField, Text } from 'UnityEngine.UI';
import { ZepetoChat, MessageType, UserMessage } from 'ZEPETO.Chat';
import { Color } from 'UnityEngine';
export default class CustomChat extends ZepetoScriptBehaviour {
public custom1ChatBtn: Button;
public custom2ChatBtn: Button;
public sendChatBtn: Button;
public resultText: Text;
public inputChatbox: InputField;
Start() {
// Lorsque le bouton est cliqué
this.custom1ChatBtn.onClick.AddListener(() => {
// Changer la couleur du texte
this.resultText.color = Color.magenta;
// Envoyer le message
ZepetoChat.Send("1");
});
this.custom2ChatBtn.onClick.AddListener(() => {
this.resultText.color = Color.blue;
ZepetoChat.Send("2");
});
this.sendChatBtn.onClick.AddListener(() => {
this.resultText.color = Color.black;
const inputMsg = this.inputChatbox.text;
ZepetoChat.Send(inputMsg);
});
// Recevoir le message
ZepetoChat.OnReceivedMessage.AddListener(msg => {
const userMsg = msg as UserMessage;
this.resultText.text = `[USER - ${userMsg.userName}] - ${userMsg.message}`;
});
}
}
Exemple de résultats d'exécution
Activation/désactivation du bouton de chat
- Fonction disponible dans un monde où des éléments multijoueurs sont implémentés.
- Vous pouvez vérifier sur le test mobile.
- Déclarations
public static SetActiveChatUI($value: boolean): void;- Exemple de code
- Appuyez sur un bouton spécifique pour activer/désactiver le bouton de chat
import { ZepetoScriptBehaviour } from 'ZEPETO.Script';
import { Button } from 'UnityEngine.UI';
import { ZepetoChat, MessageType, UserMessage } from 'ZEPETO.Chat';
export default class ChatController extends ZepetoScriptBehaviour {
public chatUIBtn: Button;
private isChatUIActive : boolean = true;
Start() {
// Lorsque le bouton est cliqué
this.chatUIBtn.onClick.AddListener(() => {
// Envoyer un message
if (this.isChatUIActive) {
ZepetoChat.SetActiveChatUI(false);
this.isChatUIActive = false;
console.log("Chat UI désactivé");
}
else {
ZepetoChat.SetActiveChatUI(true);
this.isChatUIActive = true;
console.log("Chat UI activé");
}
});
}
}
Détermination des messages filtrés
- Fonction disponible dans un monde où des éléments multijoueurs sont implémentés.
- Vous pouvez vérifier sur le test mobile.
- Déclarations
public isFiltered: boolean;- Exemple de code
- Déterminez si le message de chat reçu est un message filtré et affichez-le à l'écran.
import { ZepetoScriptBehaviour } from 'ZEPETO.Script';
import { Text } from 'UnityEngine.UI';
import { ZepetoChat, MessageType, UserMessage } from 'ZEPETO.Chat';
export default class ChatController extends ZepetoScriptBehaviour {
public filterResultText: Text;
Start() {
// Recevoir le message
ZepetoChat.OnReceivedMessage.AddListener(msg => {
const userMsg = msg as UserMessage;
if (userMsg.isFiltered) {
this.filterResultText.text = `Ce message a été filtré : ${userMsg.message}`;
} else {
this.filterResultText.text = `Ce message n'est pas filtré : ${userMsg.message}`;
}
});
}
}
