

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.

# Relayer les messages MQTT entre les appareils clients et AWS IoT Core
<a name="relay-client-device-messages"></a>

Vous pouvez relayer des messages MQTT et d'autres données entre les appareils clients et AWS IoT Core. Les appareils clients se connectent au composant du courtier MQTT qui s'exécute sur le périphérique principal. Par défaut, les appareils principaux ne relaient pas les messages ou les données MQTT entre les appareils clients et AWS IoT Core. Par défaut, les appareils clients ne peuvent communiquer qu'entre eux via MQTT.

Pour relayer des messages MQTT entre des appareils clients AWS IoT Core, configurez le [composant du pont MQTT](mqtt-bridge-component.md) pour effectuer les opérations suivantes :
+ Transmettre les messages des appareils clients vers AWS IoT Core.
+ Transmettre les messages depuis AWS IoT Core les appareils clients vers les appareils clients.

**Note**  <a name="mqtt-bridge-component-iotcore-qos-1-note"></a>
Le pont MQTT utilise QoS 1 pour publier et s' AWS IoT Core abonner, même lorsqu'un appareil client utilise QoS 0 pour publier et s'abonner au courtier MQTT local. Par conséquent, vous pouvez observer une latence supplémentaire lorsque vous relayez des messages MQTT depuis des appareils clients sur le broker MQTT local vers. AWS IoT Core Pour plus d'informations sur la configuration MQTT sur les appareils principaux, consultez[Configurer les délais d'expiration et les paramètres de cache du MQTT](configure-greengrass-core-v2.md#configure-mqtt).

**Topics**
+ [Configuration et déploiement du composant de pont MQTT](#deploy-mqtt-bridge-iot-core)
+ [Messages MQTT relayés](#relay-mqtt-messages)

## Configuration et déploiement du composant de pont MQTT
<a name="deploy-mqtt-bridge-iot-core"></a>

Le composant du pont MQTT utilise une liste de mappages de sujets qui spécifient chacun une source et une destination de message. Pour relayer des messages entre les appareils clients AWS IoT Core, déployez le composant du pont MQTT et spécifiez chaque sujet source et destination dans la configuration du composant.

<a name="create-mqtt-bridge-deployment-info"></a>Pour déployer le composant du pont MQTT sur un périphérique principal ou un groupe de périphériques principaux, [créez un déploiement](create-deployments.md) incluant le `aws.greengrass.clientdevices.mqtt.Bridge` composant. Spécifiez les mappages de sujets`mqttTopicMapping`, dans la configuration des composants du pont MQTT lors du déploiement.

L'exemple suivant définit un déploiement qui configure le composant du pont MQTT pour relayer des messages sur des sujets qui correspondent au filtre de `clients/+/hello/world` sujets des appareils clients vers. AWS IoT Core La mise à jour `merge` de configuration nécessite un objet JSON sérialisé. Pour de plus amples informations, veuillez consulter [Mettre à jour les configurations des composants](update-component-configurations.md).

------
#### [ Console ]

```
{
  "mqttTopicMapping": {
    "HelloWorldIotCore": {
      "topic": "clients/+/hello/world",
      "source": "LocalMqtt",
      "target": "IotCore"
    }
  }
}
```

------
#### [ AWS CLI ]

```
{
  "components": {
    "aws.greengrass.clientdevices.mqtt.Bridge": {
      "version": "2.0.0",
      "configurationUpdate": {
        "merge": "{\"mqttTopicMapping\":{\"HelloWorldIotCore\":{\"topic"\:\"clients/+/hello/world\",\"source\":\"LocalMqtt\",\"target\":\"IotCore\"}}}"
      }
    }
    ...
  }
}
```

------

## Messages MQTT relayés
<a name="relay-mqtt-messages"></a>

Pour relayer les messages MQTT entre les appareils clients AWS IoT Core, [configurez et déployez le composant MQTT Bridge](#deploy-mqtt-bridge-iot-core) et spécifiez les sujets à relayer.

**Example Exemple : relayer des messages sur un sujet depuis des appareils clients vers AWS IoT Core**  
La configuration des composants du pont MQTT suivante spécifie le relais des messages sur des sujets qui correspondent au filtre de `clients/+/hello/world/event` sujets, des appareils clients vers. AWS IoT Core  

```
{
  "mqttTopicMapping": {
    "HelloWorldEvent": {
      "topic": "clients/+/hello/world/event",
      "source": "LocalMqtt",
      "target": "IotCore"
    }
  }
}
```

**Example Exemple : relayer des messages sur un sujet depuis AWS IoT Core des appareils clients**  
La configuration des composants du pont MQTT suivante spécifie le relais des messages sur les sujets qui correspondent au filtre de `clients/+/hello/world/event/response` sujets AWS IoT Core vers les appareils clients.  

```
{
  "mqttTopicMapping": {
    "HelloWorldEventConfirmation": {
      "topic": "clients/+/hello/world/event/response",
      "source": "IotCore",
      "target": "LocalMqtt"
    }
  }
}
```