> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Démarrage rapide des actions et règles

> Créez votre première règle PlayStream avec des déclencheurs, des conditions et des actions pour réagir aux événements des joueurs en temps réel et automatiser vos réponses LiveOps.

# Démarrage rapide des actions et règles

Une règle PlayStream vous permet de réagir en temps réel à un sous-ensemble d'un type d'événements PlayStream.

## Configuration requise

* [Démarrage rapide de Game Manager](/fr/services/playfab/live-service-management/gamemanager/quickstart)
* [Utilisation des statistiques des joueurs](/fr/services/playfab/community/leaderboards/tournaments-leaderboards/using-player-statistics) (contient des informations qui peuvent vous aider avec l'exemple de ce didacticiel).

Petit glossaire des termes pertinents :

* **PlayStream** : ensemble des fonctionnalités qui composent le pipeline d'événements PlayFab.
  * Un **événement PlayStream** est une chaîne au format JSON décrivant un événement concernant un joueur ou un titre.
  * Les **événements PlayStream** ont une taille maximale qui dépend de votre niveau de fonctionnalité Automation.

* **Règle** : exécute une logique supplémentaire en réponse à un type d'événement PlayStream en temps réel.
  * La somme de : un **déclencheur d'événement**, une liste facultative de **conditions** et une liste facultative d'**actions**.

* **Déclencheur** : nom de l'événement qui active cette règle.

* **Condition** : filtre de contenu pour les règles et d'autres fonctionnalités PlayStream.
  * Effectue une évaluation très légère de l'objet JSON de l'événement PlayStream et ignore les événements qui ne répondent pas aux exigences.

* **Action** : travail contextuel à effectuer sur l'entité appropriée.

Une règle se compose d'exactement un déclencheur, d'une liste facultative de conditions et généralement d'au moins une action (non obligatoire, mais une règle est assez inutile sans action).

Les déclencheurs, conditions et actions font également partie d'autres systèmes : les [actions en bloc](/fr/services/playfab/data-analytics/acting-data/action-rules-bulk-actions-for-an-entire-player-segment) et les [classements de tournoi (déconseillé)](/fr/services/playfab/community/leaderboards/tournaments-leaderboards/using-resettable-statistics-and-leaderboards).

## Exemple : compter les événements personnalisés provenant du client

Dans l'exemple présenté ci-dessous, nous publions l'événement personnalisé suivant depuis le client.

```csharp theme={null}
public void WriteEvent() {
    PlayFabClientAPI.WritePlayerEvent(new WriteClientPlayerEventRequest {
        EventName = "ForumPostEvent",
        Body = new Dictionary<string, object> {
            { "Subject", "My First Post" },
            { "Body", "My awesome Post." }
        }
    }, LogSuccess, LogFailure);
}
```

Dans ce cas, le client signale manuellement un événement personnalisé `ForumPostEvent` (qui ne correspond actuellement à aucun événement automatique de PlayFab ou des partenaires pris en charge).

Nous utiliserons une règle PlayStream pour compter le nombre de fois qu'un joueur signale une publication sur le forum de cette manière.

**Exigence** : votre jeu doit *déjà* publier des événements de ce type pour que l'interface graphique de Game Manager vous permette de créer une règle déclenchée par ceux-ci.

Accédez à votre **Game Manager** :

* Accédez à votre **titre**.
* Sélectionnez **Automation**.
* Accédez à **Rules**.
* Sélectionnez **New Rule**.

<img src="https://mintcdn.com/microsoft-4404708b/IwSYTY5BEqd_x-HK/images/playfab/data-analytics/acting-data/tutorials/game-manager-automation-new-rule.png?fit=max&auto=format&n=IwSYTY5BEqd_x-HK&q=85&s=bd467d6b0caea0e4a258bf1c6b2a7cd8" alt="Game Manager - automation - new rule" width="897" height="1036" data-path="images/playfab/data-analytics/acting-data/tutorials/game-manager-automation-new-rule.png" />

Examinons point par point la **nouvelle règle** de cet exemple :

* **`title.6195.ForumPostEvent`**
  * `6195` est le titre utilisé dans ce didacticiel. Votre titleId correspondra à votre propre titre.
  * `ForumPostEvent` est le nom de l'événement utilisé dans le code de cet exemple.
  * Cette ligne ne sera disponible que si vous avez récemment publié au moins un `ForumPostEvent` dans votre titre.
* Les **conditions** utilisées spécifiquement dans cet exemple ont une utilité minime.
  * Toutefois, elles *montrent* bien comment filtrer notre événement personnalisé si la clé **Body** est associée à **Invalid string** dans notre dictionnaire **Body**.
  * Les filtres sont facultatifs et doivent exclure de votre règle les joueurs non pertinents.
* Les **actions** choisies dans ce cas incrémentent un compteur de statistique de un.
  * **Exigence** : la statistique **Forum Posts** doit être définie sous Leaderboards dans Game Manager.

Dans le **débogueur PlayStream** de Game Manager (illustré ci-dessous), vous pouvez observer l'effet du déclencheur.

<img src="https://mintcdn.com/microsoft-4404708b/IwSYTY5BEqd_x-HK/images/playfab/data-analytics/acting-data/tutorials/game-manager-playstream-debugger-event-trigger.png?fit=max&auto=format&n=IwSYTY5BEqd_x-HK&q=85&s=7fbbc21d4c1f53db11e54c647d9610fa" alt="Game Manager - PlayStream - debugger - event trigger" width="452" height="213" data-path="images/playfab/data-analytics/acting-data/tutorials/game-manager-playstream-debugger-event-trigger.png" />

Comme vous pouvez le voir, l'événement personnalisé `ForumPostEvent` déclenche automatiquement la statistique que nous avons définie sous **Actions** pour notre nouvelle règle.

## Avancé : actions CloudScript

De nombreuses actions intégrées de **PlayFab** sont relativement simples et peuvent ne pas vous offrir toute la puissance dont vous avez besoin. C'est pourquoi nous vous permettons de personnaliser entièrement la logique des actions avec CloudScript.

Modifions la **règle**.

* Supprimez la **condition**.
* Définissez l'**action** sur **Execute CloudScript**.
* Sélectionnez le bouton **Save Action**.

<img src="https://mintcdn.com/microsoft-4404708b/IwSYTY5BEqd_x-HK/images/playfab/data-analytics/acting-data/tutorials/game-manager-automation-edit-rule.png?fit=max&auto=format&n=IwSYTY5BEqd_x-HK&q=85&s=b69ba07416a1d485dc29b4e69637dfe0" alt="Game Manager - automation - edit rule" width="914" height="802" data-path="images/playfab/data-analytics/acting-data/tutorials/game-manager-automation-edit-rule.png" />

Désormais, si nous publions un nouvel événement **ForumPostEvent**, nous verrons une exécution de CloudScript.

<img src="https://mintcdn.com/microsoft-4404708b/IwSYTY5BEqd_x-HK/images/playfab/data-analytics/acting-data/tutorials/game-manager-playstream-debugger-cloudscript-execution.png?fit=max&auto=format&n=IwSYTY5BEqd_x-HK&q=85&s=f0cdab71d528049e20c131b846a84eb5" alt="Game Manager - PlayStream - debugger - CloudScript execution" width="462" height="167" data-path="images/playfab/data-analytics/acting-data/tutorials/game-manager-playstream-debugger-cloudscript-execution.png" />

L'écriture de votre CloudScript pour réagir aux règles PlayStream est un sujet avancé traité dans notre didacticiel : [Utilisation des actions CloudScript avec PlayStream](/fr/services/playfab/data-analytics/acting-data/action-rules-using-cloudscript-actions-with-playstream).


## Related topics

- [PFPlatformSpecificRegisterForIOSPushNotificationRequest](/fr/services/playfab/api-references/c/pfplatformspecifictypes/structs/pfplatformspecificregisterforiospushnotificationrequest.md)
- [Notes de version du SDK C++ PlayFab Multiplayer](/fr/services/playfab/multiplayer/lobby/lobby-matchmaking-sdks/lobby-and-matchmaking-release-notes.md)
- [XR-074 Perte de connectivité aux services XBOX et des partenaires](/fr-CA/publishing/certification/xr/xr-074.md)
- [Vue d'ensemble de l'API C Services - PFPlatformSpecificTypes.h](/fr/services/playfab/api-references/c/pfplatformspecifictypes/pfplatformspecifictypes_members.md)
- [Compiler et exécuter votre premier titre console GDKX](/fr-CA/home/build-first-title/first-console-title-walkthrough.md)
