

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# GetIceServerConfig
<a name="API_signaling_GetIceServerConfig"></a>

 **Remarque :** Avant d'utiliser cette API, vous devez appeler l'`GetSignalingChannelEndpoint`API pour demander le point de terminaison HTTPS. Vous spécifiez ensuite le point de terminaison et la région dans votre demande d'`GetIceServerConfig`API.

Obtient les informations de configuration du serveur ICE (Interactive Connectivity Establishment) URIs, notamment le nom d'utilisateur et le mot de passe qui peuvent être utilisés pour configurer la connexion WebRTC. Le composant ICE utilise ces informations de configuration pour configurer la connexion WebRTC, notamment pour s'authentifier auprès du serveur relais Traversal Using Relays around NAT (TURN). 

TURN est un protocole utilisé pour améliorer la connectivité des peer-to-peer applications. En fournissant un service de relais basé sur le cloud, TURN garantit qu'une connexion peut être établie même lorsqu'un ou plusieurs pairs sont incapables d'établir une peer-to-peer connexion directe. Pour plus d'informations, consultez [Une API REST pour accéder aux services TURN](https://tools.ietf.org/html/draft-uberti-rtcweb-turn-rest-00).

 Vous pouvez invoquer cette API pour établir un mécanisme de secours au cas où l'un des pairs ne parviendrait pas à établir une peer-to-peer connexion directe via un canal de signalisation. Vous devez spécifier l'Amazon Resource Name (ARN) de votre canal de signalisation afin d'appeler cette API.

## Syntaxe de la demande
<a name="API_signaling_GetIceServerConfig_RequestSyntax"></a>

```
POST /v1/get-ice-server-config HTTP/1.1
Content-type: application/json

{
   "ChannelARN": "{{string}}",
   "ClientId": "{{string}}",
   "Service": "{{string}}",
   "Username": "{{string}}"
}
```

## Paramètres de demande URI
<a name="API_signaling_GetIceServerConfig_RequestParameters"></a>

La demande n’utilise pas de paramètres URI.

## Corps de la demande
<a name="API_signaling_GetIceServerConfig_RequestBody"></a>

Cette demande accepte les données suivantes au format JSON.

 ** [ChannelARN](#API_signaling_GetIceServerConfig_RequestSyntax) **   <a name="KinesisVideo-signaling_GetIceServerConfig-request-ChannelARN"></a>
L'ARN du canal de signalisation à utiliser pour la peer-to-peer connexion entre les homologues configurés.   
Type : Chaîne  
Contraintes de longueur : Longueur minimum de 1. Longueur maximum de 1024.  
Modèle : `arn:[a-z\d-]+:kinesisvideo:[a-z0-9-]+:[0-9]+:[a-z]+/[a-zA-Z0-9_.-]+/[0-9]+`   
Obligatoire : oui

 ** [ClientId](#API_signaling_GetIceServerConfig_RequestSyntax) **   <a name="KinesisVideo-signaling_GetIceServerConfig-request-ClientId"></a>
Identifiant unique pour le spectateur. Doit être unique dans le canal de signalisation.  
Type : Chaîne  
Contraintes de longueur : longueur minimum de 1. Longueur maximum de 256.  
Modèle : `[a-zA-Z0-9_.-]+`   
Obligatoire : non

 ** [Service](#API_signaling_GetIceServerConfig_RequestSyntax) **   <a name="KinesisVideo-signaling_GetIceServerConfig-request-Service"></a>
Spécifie le service souhaité. Actuellement, `TURN` est la seule valeur valide.  
Type : Chaîne  
Valeurs valides : `TURN`   
Obligatoire : non

 ** [Username](#API_signaling_GetIceServerConfig_RequestSyntax) **   <a name="KinesisVideo-signaling_GetIceServerConfig-request-Username"></a>
Un ID utilisateur facultatif à associer aux informations d'identification.  
Type : Chaîne  
Contraintes de longueur : longueur minimum de 1. Longueur maximum de 256.  
Modèle : `[a-zA-Z0-9_.-]+`   
Obligatoire : non

## Syntaxe de la réponse
<a name="API_signaling_GetIceServerConfig_ResponseSyntax"></a>

```
HTTP/1.1 200
Content-type: application/json

{
   "IceServerList": [ 
      { 
         "Password": "string",
         "Ttl": number,
         "Uris": [ "string" ],
         "Username": "string"
      }
   ]
}
```

## Eléments de réponse
<a name="API_signaling_GetIceServerConfig_ResponseElements"></a>

Si l’action aboutit, le service renvoie une réponse HTTP 200.

Les données suivantes sont renvoyées au format JSON par le service.

 ** [IceServerList](#API_signaling_GetIceServerConfig_ResponseSyntax) **   <a name="KinesisVideo-signaling_GetIceServerConfig-response-IceServerList"></a>
Liste des objets d'information du serveur ICE.  
Type : tableau d’objets [IceServer](API_signaling_IceServer.md)

## Erreurs
<a name="API_signaling_GetIceServerConfig_Errors"></a>

Pour plus d'informations sur les erreurs courantes pour toutes les actions, consultez [Types d'erreurs courants](CommonErrors.md).

 ** ClientLimitExceededException **   
Votre demande a été limitée car vous avez dépassé la limite d'appels clients autorisés. Essayez de passer l'appel plus tard.  
Code d’état HTTP : 400

 ** InvalidArgumentException **   
La valeur de ce paramètre d'entrée n'est pas valide.  
Code d’état HTTP : 400

 ** InvalidClientException **   
Le client spécifié n'est pas valide.  
Code d’état HTTP : 400

 ** NotAuthorizedException **   
L'appelant n'est pas autorisé à effectuer cette opération.  
Code d'état HTTP : 401

 ** ResourceNotFoundException **   
La ressource spécifiée est introuvable.  
Code d’état HTTP :404

 ** SessionExpiredException **   
Si la session client est expirée. Une fois le client connecté, la session est valide pendant 45 minutes. Le client doit se reconnecter au canal pour continuer à envoyer/recevoir des messages.  
Code d’état HTTP : 400

## Voir aussi
<a name="API_signaling_GetIceServerConfig_SeeAlso"></a>

Pour plus d'informations sur l'utilisation de cette API dans l'un des langages spécifiques AWS SDKs, consultez ce qui suit :
+  [AWS Interface de ligne de commande V2](https://docs.aws.amazon.com/goto/cli2/kinesis-video-signaling-2019-12-04/GetIceServerConfig) 
+  [AWS SDK pour .NET V4](https://docs.aws.amazon.com/goto/DotNetSDKV4/kinesis-video-signaling-2019-12-04/GetIceServerConfig) 
+  [AWS SDK pour C\+\+](https://docs.aws.amazon.com/goto/SdkForCpp/kinesis-video-signaling-2019-12-04/GetIceServerConfig) 
+  [AWS SDK pour Go v2](https://docs.aws.amazon.com/goto/SdkForGoV2/kinesis-video-signaling-2019-12-04/GetIceServerConfig) 
+  [AWS SDK pour Java V2](https://docs.aws.amazon.com/goto/SdkForJavaV2/kinesis-video-signaling-2019-12-04/GetIceServerConfig) 
+  [AWS SDK pour V3 JavaScript ](https://docs.aws.amazon.com/goto/SdkForJavaScriptV3/kinesis-video-signaling-2019-12-04/GetIceServerConfig) 
+  [AWS SDK pour Kotlin](https://docs.aws.amazon.com/goto/SdkForKotlin/kinesis-video-signaling-2019-12-04/GetIceServerConfig) 
+  [AWS SDK pour PHP V3](https://docs.aws.amazon.com/goto/SdkForPHPV3/kinesis-video-signaling-2019-12-04/GetIceServerConfig) 
+  [AWS SDK pour Python](https://docs.aws.amazon.com/goto/boto3/kinesis-video-signaling-2019-12-04/GetIceServerConfig) 
+  [AWS SDK pour Ruby V3](https://docs.aws.amazon.com/goto/SdkForRubyV3/kinesis-video-signaling-2019-12-04/GetIceServerConfig) 