Passer au contenu principal
Ce tutoriel vous explique comment utiliser la fonctionnalité de modèles d’e-mail de PlayFab pour envoyer un e-mail de récupération de compte à l’adresse e-mail de contact d’un joueur, afin de lui permettre de réinitialiser son mot de passe.

Configuration requise

Il s’agit d’un tutoriel avancé. Assurez-vous que toutes les conditions requises sont remplies, sans quoi vous ne pourrez pas terminer ce tutoriel.
Vous pouvez utiliser Gmail pour vos tests, mais Gmail vous limite à 2 000 e-mails par jour.
  • Des connaissances de base sur la création d’un joueur sont nécessaires, car des joueurs dotés de noms d’utilisateur et de mots de passe doivent exister avant d’appeler la logique de récupération de compte.
  • Lisez le démarrage rapide de Game Manager si vous ne connaissez pas Game Manager, car c’est là que les modèles d’e-mail sont créés.
  • Vous devez savoir utiliser les profils de joueurs afin de vérifier qu’une adresse e-mail de contact a bien été ajoutée au profil d’un joueur. Découvrez comment obtenir un profil de joueur dans le tutoriel Obtention des profils de joueurs et assurez-vous d’autoriser les Contact email addresses dans les Client Profile Options de votre Title.

Étape 1 : créer un modèle d’e-mail

Nous allons d’abord créer un modèle d’e-mail de récupération de compte.
  • Accédez à Content.
  • Sélectionnez l’onglet Email Templates.
  • Sélectionnez le bouton NEW EMAIL TEMPLATE.
Game Manager : contenu, modèles d'e-mail Ajoutez maintenant un New Email Template en remplissant les champs comme suit et en laissant l’Error callback URL vide :
  • Template name : PasswordRecoveryTemplate
  • Template type : Account Recovery
  • Email subject : Password reset requested
  • Email body : (saisissez le contenu ci-dessous)
  • From Name : le nom que vous souhaitez afficher dans le champ From de l’e-mail.
  • From Email Address : l’adresse e-mail que vous souhaitez afficher dans le champ From de l’e-mail. Il doit s’agir d’un domaine de messagerie à partir duquel le serveur SMTP vous permet d’envoyer des e-mails.
Certains serveurs de messagerie, comme Gmail, ignorent ce champ et envoient l’e-mail depuis le compte configuré avec le serveur SMTP.
  • Callback URL : une URL de rappel vers un formulaire de récupération de mot de passe. Le formulaire doit au minimum contenir un champ Password permettant au joueur de saisir un nouveau mot de passe.

Quelques remarques

  • Le $ConfirmationUrl$ du corps de l’e-mail génère une URL personnalisée qui, lorsqu’elle est sélectionnée, enregistre que l’utilisateur a choisi l’URL, puis effectue une redirection vers la Callback URL. Dans ce cas, elle est injectée dans une balise d’ancrage.
  • La Callback URL est l’URL vers laquelle PlayFab redirige le joueur après qu’il a sélectionné le lien de l’URL de confirmation. Il doit s’agir d’un formulaire web hébergé contenant au minimum un champ Password, afin de pouvoir effectuer un appel d’API ResetPassword plus loin dans ce tutoriel.
Game Manager : contenu, modèles d'e-mail, nouveau modèle d'e-mail Après avoir rempli le formulaire, sélectionnez le bouton SAVE EMAIL TEMPLATE : vous êtes redirigé vers la page affichant la liste de vos Email Templates. Notez l’ID de l’Email Template, car il sera utilisé à l’étape 4. Game Manager : contenu, ID du modèle d'e-mail

Étape 2 : ajouter un nom d’utilisateur, un mot de passe, une adresse e-mail de connexion et une adresse e-mail de contact à un joueur

Pour cette étape, vous aurez besoin d’un compte de joueur existant. Nous allons ajouter un nom d’utilisateur, un mot de passe et une adresse e-mail de connexion à l’aide de AddUsernamePassword. En outre, nous ajoutons une adresse e-mail de contact au joueur à l’aide de AddOrUpdateContactEmail.
Le champ d’adresse e-mail de contact d’un profil de joueur est différent du champ d’adresse e-mail de connexion, même s’ils peuvent tous deux contenir la même adresse e-mail. Chaque fois que vous envoyez un e-mail au joueur, il est envoyé à l’adresse e-mail de contact.

Exemple de code C#

Dans l’exemple suivant, nous connectons un joueur, puis ajoutons un nom d’utilisateur, un mot de passe et une adresse e-mail de connexion à l’aide de AddUsernamePassword. Nous ajoutons ensuite une adresse e-mail de contact à l’aide de AddOrUpdateContactEmail. Assurez-vous que l’adresse e-mail associée au joueur est une adresse à laquelle vous avez accès.

Étape 3 : vérifier que l’adresse e-mail de contact a été ajoutée au profil du joueur

Vérifiez ensuite que l’adresse e-mail de contact a été ajoutée au profil du joueur. Connectez-vous à Game Manager et accédez à la page Player’s Profile. Vous devriez voir une Contact email répertoriée pour ce joueur. Game Manager : profil du joueur, adresse e-mail de contact Vous pouvez également appeler GetPlayerProfile avec ShowContactEmailAddresses défini sur true dans les PlayerProfileViewConstraints pour vérifier que le joueur dispose désormais de l’adresse e-mail de contact que nous venons d’ajouter.

Étape 4 : envoyer un e-mail de récupération de compte basé sur un modèle

Nous allons maintenant envoyer l’e-mail de vérification à l’aide de SendEmailFromTemplate, avec l’ID du modèle d’e-mail de l’étape 1, au joueur que nous avons créé à l’étape 2.

Exemple de code C#

Dans l’exemple suivant, nous envoyons un e-mail de récupération de compte à l’aide de SendCustomAccountRecoveryEmail.

Étape 5 : vérifier que l’e-mail a été envoyé

Enfin, nous pouvons vérifier que l’e-mail de récupération de compte a été envoyé. Vous pouvez commencer par accéder à la zone PlayStream du joueur. Dans Game Manager :
  • Sélectionnez Player dans le menu de gauche.
  • Accédez à la zone PlayStream de l’écran.
  • Un Sent Email Event doit s’afficher.
Game Manager : joueurs, PlayStream, événement d'e-mail envoyé La sélection de l’icône Info de l’événement doit afficher un JSON similaire à celui présenté ci-dessous.
Pour vérifier que vous avez bien reçu l’e-mail, accédez à la messagerie du joueur que vous avez créé à l’étape 2. Vous devriez y trouver un e-mail similaire à celui présenté ci-dessous. E-mail Password reset requested Si vous examinez l’URL de cet e-mail, vous constaterez qu’elle ressemble à cet exemple.
Lorsque le joueur sélectionne cette URL, trois choses se produisent :
  1. PlayFab génère un nouvel événement PlayStream appelé auth_token_validated. C’est ainsi que vous savez que le joueur a sélectionné cette URL dans l’e-mail. Vous pouvez utiliser cet événement pour déclencher des actions, comme l’octroi de pièces ou d’articles au joueur.
  2. PlayFab renvoie une URL de redirection qui envoie le joueur vers l’URL de rappel. Dans ce cas, il doit s’agir d’un site web du jeu proposant un formulaire permettant au joueur de saisir un nouveau mot de passe.
  3. L’URL de redirection contient un jeton dans la chaîne de requête et ressemble à ce qui suit.
https://www.example.com/?token=2346241B7C277796.

Étape 6 : réinitialiser le mot de passe du joueur

Une fois que le joueur est redirigé vers l’URL de rappel et qu’il a rempli le formulaire avec un nouveau mot de passe, vous pouvez utiliser ces informations, ainsi que le jeton de la chaîne de requête, pour effectuer un appel ResetPassword.

Exemple de code C#

Dans l’exemple suivant, nous réinitialisons le mot de passe d’un joueur à l’aide de ResetPassword, à partir d’un jeton et du nouveau mot de passe que le joueur indique dans un formulaire.

Étape 7 : vérifier que le mot de passe a été réinitialisé

Enfin, vérifiez que le joueur a bien réinitialisé son mot de passe en vous connectant avec LoginWithPlayFab.

Exemple de code C#

Dans l’exemple C# suivant, nous nous connectons à l’aide de LoginWithPlayFab et du nouveau mot de passe défini par le joueur à l’étape 6.

Conclusion

Ce tutoriel est terminé ! Vous avez vu comment configurer votre serveur SMTP, créer un modèle d’e-mail, envoyer un e-mail de récupération de compte et réinitialiser le mot de passe d’un joueur. Si vous avez des questions ou des commentaires sur ce tutoriel, faites-le-nous savoir sur nos forums communautaires.
Dernière modification le 8 octobre 2026