CRÉEZ VOTRE MONDE
Social
Envoyer un message direct API
14 min
vous pouvez envoyer des messages directs à d'autres utilisateurs dans le monde zepeto en utilisant l'api d'envoi de messages directs (dm) lors de l'utilisation de l'api d'envoi de messages directs (dm) dans un monde lancé, un lien pour entrer dans le monde est automatiquement fourni en bas du message, ce qui est bon pour promouvoir le monde veuillez vous assurer de suivre les précautions lors de l'utilisation installer fenêtre → gestionnaire de paquets → paquet zepeto world veuillez d'abord installer la version 1 21 14 ou supérieure ensuite, veuillez installer le paquet ‘zepeto module’ avec une version de 1 0 7 ou supérieure assurez vous que l'application zepeto fonctionne avec la version 3 46 000 ou supérieure api d'envoi de messages directs pour utiliser l'api d'envoi de dm, ajoutez l'instruction d'importation ci dessous import { socialservice } from 'zepeto module social'; fonction principale d'envoi de dm déclaration public static openpopupdirectmessage($sendmessage string, $userids? string\[], $oncomplete? system action$1)\ void; paramètres paramètre description sendmessage ceci est un paramètre requis c'est le corps du message que vous souhaitez envoyer s'il est vide ou nul, la transmission sera considérée comme un échec userids ceci est un paramètre optionnel si vous passez userids l'interface de sélection est configurée avec la liste d'id utilisateur correspondante lorsque userids ne sont pas passés ou qu'une liste vide est passée l'interface de sélection est construite avec la liste de suivre/suivis de l'utilisateur envoyant le message oncomplete ceci est un rappel à appeler lorsque l'envoi du message est terminé ou échoue étatdumessagedirect réponse description annuler lorsque la fenêtre contextuelle est fermée manuellement ou si l'envoi échoue envoicomplet lorsque la demande d'envoi est terminée et qu'elle se ferme situation par code d'erreur réponse description 31002 cela se produit si au moins un userid incorrect (un userid qui n'existe pas) est inclus lors de la saisie de la liste des id utilisateurs dans le paramètre userids 37011 cela se produit lorsque vous essayez d'envoyer un message sous un compte invité 8001 cela se produit lorsque vous envoyez continuellement le même message à plusieurs reprises il peut être envoyé une fois toutes les 10 secondes 2001 cela se produit lorsque le contenu du message dans le champ ‘envoyer’ est soit vide, contient uniquement un espace, ou dépasse 1000 caractères 0 cas d'erreur de connexion réseau tels que déconnexion réseau, instabilité de connexion, et autres situations d'erreur générales 1 erreur non identifiable exemple d'utilisation entrez directement l'expéditeur et envoyez 1\) veuillez ajouter le bouton envoyer dm au canvas 2\) veuillez écrire le code d'exemple comme ci dessous import { zepetoscriptbehaviour } from 'zepeto script'; import { socialservice, directmessagepopupstate } from 'zepeto module social'; import { button } from "unityengine ui"; import { worldservice } from 'zepeto world'; export default class senddirectmessage extends zepetoscriptbehaviour { // variable pour stocker le message direct public message string; // tableau d'ids d'utilisateur pour envoyer le message direct public userids string\[]; // référence au composant ui du bouton public senddmbutton button; start() { this senddmbutton onclick addlistener(() => { // vérifiez si mon id est inclus dans le tableau userids et retournez si c'est le cas if (this userids includes(worldservice userid)) { console log("userids contient mon userid"); return; } // ouvrez une fenêtre contextuelle pour envoyer un message direct en utilisant le socialservice socialservice openpopupdirectmessage(this message, this userids, (popupstate directmessagepopupstate) => { // vérifiez l'état de la fenêtre contextuelle du message direct if (popupstate === directmessagepopupstate cancel) { console log("vous avez fermé la fenêtre contextuelle ou échoué à envoyer le message"); } else if (popupstate === directmessagepopupstate sendcomplete) { console log("le message dm a été envoyé avec succès, et la fenêtre contextuelle est fermée "); } }); }); } } 3\) après avoir écrit le script, retournez à l'éditeur unity et faites glisser le bouton dans l'inspecteur pour le définir entrez le corps du message et l'userid de l'utilisateur cible pour le message jusqu'à 20 personnes seront affichées dans l'interface utilisateur, alors entrez jusqu'à 20 personnes 4\) lorsque vous appuyez sur le bouton envoyer dm, l'interface de la liste d'amis apparaît sélectionnez l'utilisateur cible et cliquez sur envoyer 5\) si l'envoi du dm est réussi, une interface toast apparaîtra indiquant le succès, et un journal sera généré par le script d'exemple 6\) de plus, un dm est arrivé pour targetuser si une erreur se produit, comme l'envoi de messages en continu ou si le contenu du message est vide, la transmission du dm sera traitée comme un échec envoyer en utilisant l'interface de liste de suivi/suiveurs 1\) veuillez ajouter un bouton au canevas 2\) veuillez écrire le code d'exemple comme ci dessous si vous passez une liste vide au paramètre targetuserid, l'interface de liste de suivi/suiveurs apparaîtra import { zepetoscriptbehaviour } from 'zepeto script'; import { socialservice, directmessagepopupstate } from 'zepeto module social'; import { button } from "unityengine ui"; export default class senddirectmessage extends zepetoscriptbehaviour { // variable pour stocker le message direct public message string; // référence au composant ui du bouton public senddmbutton button; // variable privée pour stocker un tableau d'ids d'utilisateurs, initialisé à null private emptyids string\[]; start() { this senddmbutton onclick addlistener(() => { // ouvrir une fenêtre contextuelle pour envoyer un message direct en utilisant le socialservice // utilisez le contenu du message de la classe et un tableau vide d'ids d'utilisateurs socialservice openpopupdirectmessage(this message, this emptyids, (popupstate directmessagepopupstate) => { // vérifiez l'état retourné de la fenêtre contextuelle de message direct if (popupstate === directmessagepopupstate cancel) { console log("vous avez fermé la fenêtre contextuelle ou échoué à envoyer le message"); } else if (popupstate === directmessagepopupstate sendcomplete) { console log("le message dm a été envoyé avec succès, et la fenêtre contextuelle est fermée "); } }); }); } } 3\) après avoir écrit le script, retournez à l'éditeur unity et faites glisser le bouton dans l'inspecteur pour le définir ensuite, veuillez entrer le corps du message 4\) lorsque vous appuyez sur le bouton envoyer dm, l'interface suivant/abonné apparaît sélectionnez l'utilisateur cible et cliquez sur envoyer (jusqu'à 5 personnes peuvent être sélectionnées) vous pouvez envoyer des dm à un maximum de 5 personnes à la fois vous ne pouvez pas vous envoyer un dm le nombre réel d'utilisateurs suivis/suivants peut différer du nombre d'utilisateurs affichés dans la fenêtre contextuelle envoyer dm c'est parce que les utilisateurs qui peuvent être sélectionnés sont filtrés et affichés si vous sélectionnez un utilisateur qui a bloqué la réception de dms, cela sera considéré comme un échec et les dms ne seront pas envoyés si vous appelez l'api envoyer dm fréquemment, elle sera restreinte et la transmission échouera vous pouvez envoyer une fois toutes les 10 secondes veuillez faire attention à ne pas envoyer des dms indifféremment si le message que vous envoyez contient une url, il ne fonctionnera pas correctement, donc l'envoi de messages contenant des url est interdit si le message envoyé est vide ou nul, il sera considéré comme un échec veuillez vous assurer d'écrire le contenu du message