> For the complete documentation index, see [llms.txt](https://docs.edgegap.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.edgegap.com/fr/docs/tools-and-integrations/unreal-eos-lobby-integration.md).

# Intégration du lobby EOS

Intégrez Edgegap avec les lobbies Epic Online Services dans un projet Unreal Engine afin de placer les joueurs regroupés sur des serveurs de jeu.

Ce guide vous montrera comment intégrer Edgegap pour fonctionner avec les lobbies EOS dans votre projet de jeu Unreal. Certaines étapes nécessiteront que vous envoyiez des requêtes à notre API à l'aide d'un jeton, et le `curl` commandes fournies ci-dessous vous permettront de prévisualiser chacune de leurs réponses afin que vous puissiez déterminer comment les gérer dans votre code. Lorsque vous utilisez le jeton dans vos requêtes, assurez-vous de conserver le `jeton` mot-clé.

{% hint style="success" %}
**Nous vous recommandons de commencer par** [Unreal Engine](/fr/unreal-engine.md) **le guide pour créer vos serveurs de jeu avant de continuer.**
{% endhint %}

{% hint style="warning" %}
Par mesure de sécurité, il n'est pas recommandé que le propriétaire du lobby EOS envoie directement des requêtes à l'API Edgegap dans un environnement de production, car le client obtiendrait ainsi accès au jeton d'API. Vous devriez plutôt utiliser un service distinct pour gérer ces requêtes.
{% endhint %}

### 1. Obtenir et stocker l'adresse IP publique des joueurs

Pour commencer, chaque joueur qui rejoint un lobby - y compris le propriétaire du lobby - doit obtenir son adresse IP publique et la stocker en tant que [propriété du membre du lobby](https://dev.epicgames.com/docs/game-services/lobbies#lobby-and-lobby-member-properties).

```
curl --location --request GET 'https://api.edgegap.com/v1/ip' \
--header 'Authorization: [EDGEGAP_API_TOKEN]'
```

### 2. Créer un déploiement

Une fois que le propriétaire du lobby décide que la partie est prête à commencer, une requête doit être envoyée pour créer un nouveau déploiement sur Edgegap, à l'aide des adresses IP publiques stockées.

```
curl --location --request POST 'https://api.edgegap.com/v1/deploy' \
--header 'Content-Type: application/json' \
--header 'Authorization: [EDGEGAP_API_TOKEN]' \
--data-raw '{
    "app_name": "[EDGEGAP_APP_NAME]",
    "version_name": "[EDGEGAP_APP_VERSION]",
    "ip_list": [
        "[LOBBY_MEMBER_IP]"
    ]
}'
```

Ensuite, le propriétaire du lobby devra continuer à interroger le déploiement en utilisant le request\_id fourni dans la réponse de la demande de création du déploiement. Une fois que la réponse indique que le `current_status` défini sur `READY`, le propriétaire du lobby devra définir les valeurs IP et port du déploiement comme [Propriétés du lobby EOS](https://dev.epicgames.com/docs/game-services/lobbies#lobby-and-lobby-member-properties).

```
curl --location --request GET 'https://api.edgegap.com/v1/status/[REQUEST_ID]' \
--header 'Authorization: [EDGEGAP_API_TOKEN]'
```

### 3. Se connecter au déploiement

Lorsque les joueurs reçoivent la notification indiquant que les valeurs IP et port ont été attribuées, ils peuvent les comparer au cache du client, puis les utiliser pour se connecter au serveur afin de jouer la partie.

### 4. Mettre fin à la partie et au déploiement

Une fois la partie terminée, le propriétaire du lobby supprimera les valeurs IP et port des Propriétés du lobby EOS, ce qui notifiera tous les autres afin qu'ils se déconnectent proprement du serveur. Si l'application est configurée pour injecter des variables d'environnement, elles peuvent alors être utilisées pour mettre fin au déploiement depuis l'intérieur à ce moment-là.

Pour terminer le déploiement depuis l'extérieur du serveur, une requête comme `curl` la commande ci-dessous peut être utilisée à la place.

```
curl --location --request DELETE 'https://api.edgegap.com/v1/stop/[REQUEST_ID]' \
--header 'Authorization: [EDGEGAP_API_TOKEN]'
```

Si les joueurs restent dans le lobby, le propriétaire du lobby peut alors répéter les étapes à partir de la demande d'un nouveau déploiement afin de lancer une revanche avec les mêmes personnes.
