Notions de base de CloudScript
La clé pour tirer le meilleur parti de CloudScript est de savoir comment travailler avec les entrées dont vous disposez, à savoir les arguments (args) et le contexte de votre gestionnaire. Par exemple, voici l’exemplehelloWorld du CloudScript de démarrage, chargé comme révision 1 dans tous les titres nouvellement créés (également disponible dans notre GitHub, illustré ci-dessous).
inputValue et utilise la valeur de cette clé dans le texte renvoyé dans les renseignements du journal de débogage de l’exécution.
Le paramètre d’entrée context
Cependant, il est également possible d’appeler un CloudScript à la suite d’un événement dans PlayStream, au moyen d’une règle (Automation->Rules), d’une action d’entrée ou de sortie de segment (Players->Segments) ou du service de tâches (Automation->Tasks). Dans ce cas, le contexte transmis à la fonction fournit tous les renseignements dont vous aurez besoin pour effectuer l’action appropriée. Pour en savoir plus sur le fonctionnement de base des événements PlayStream, consultez notre billet de blogue Introducing PlayStream, et pour obtenir la liste des types d’événements PlayStream et de leurs propriétés, consultez notre référence de l’API PlayFab. Pour voir cette action, examinez le gestionnairehandlePlayStreamEventAndProfile du même exemple de CloudScript.
-
Il y a d’abord
playStreamEvent, que vous pouvez voir dans l’exemple de code ci-dessus.playStreamEventcontient l’événement complet qui a déclenché le gestionnaire sous forme d’objet JSON, avec tous les paramètres présentés dans la documentation des événements PlayStream. Ainsi, par exemple, si vous configurez dans votre titre une règle qui appellehandlePlayStreamEventAndProfilesur toutplayer_logged_in event,playStreamEvent.EventNameseraitplayer_logged_in, etc. (voici l’ensemble complet des paramètres de cet événement). -
Ensuite, il y a
playerProfile, également illustré dans l’exemple précédent. Il contient des renseignements sur le joueur qui a déclenché l’événement. Vous trouverez tous les détails des paramètres du profil ici, mais entre autres, il contient l’ensemble complet des statistiques du joueur dans votre titre ainsi que toutes les balises personnalisées que vous avez attribuées au joueur, afin que vous puissiez utiliser ces données pour prendre des décisions éclairées. -
Le dernier élément du contexte est
triggeredByTask. Contrairement aux deux premiers, qui sont définis lors de l’utilisation de règles et de déclencheurs d’entrée ou de sortie de segment,triggeredByTaskne s’applique que lorsque le gestionnaire s’exécute à la suite d’une tâche, qu’elle soit manuelle ou planifiée. Il ne contient que deux paramètres :
- Name : le nom unique que vous avez donné à votre tâche lors de sa création.
- ID : l’identificateur unique généré automatiquement par PlayFab pour votre tâche.
playerProfile, mais vous n’aurez pas de playStreamEvent.
Et pour une tâche simplement exécutée sur votre jeu, mais sans segment, il n’y aura pas de playerProfile, puisque l’objectif est d’exécuter quelque chose de plus général, comme définir des données de titre pour un événement.
Ainsi, name est l’élément que vous voudrez utiliser dans le flux de code de votre gestionnaire pour déterminer l’action appropriée à effectuer.
PlayStream et CloudScript
À bien des égards, les gestionnaires CloudScript déclenchés par des actions PlayStream offrent encore plus de fonctionnalités potentielles que ceux déclenchés directement par des appels àExecuteCloudScript, puisqu’un riche ensemble de données est mis à disposition au moyen du contexte.
Cela vous permet de mettre à jour vos gestionnaires après le lancement avec davantage de logique utilisant des éléments de l’événement ou du profil du joueur que vous n’aviez pas prévus au départ, sans avoir à mettre à jour votre code client de quelque façon que ce soit.
De plus, nous continuerons d’enrichir le profil du joueur dans les futures mises à jour du service PlayFab, ce qui offrira encore plus d’options pour la logique côté serveur.