

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.

# Redécouverte des capacités
<a name="managedintegrations-sdk-v2-onboarding-capability-rediscovery"></a>

Cette section décrit les étapes à suivre pour réapprendre les informations de capacité des appareils connectés au hub à l'aide de la redécouverte des capacités.

## Conditions préalables
<a name="capability-rediscovery-prereq"></a>

Effectuez les étapes suivantes avant de tenter de redécouvrir les fonctionnalités :
+ Intégrez un appareil central au hub Managed Integrations.
+ Intégrez un ou plusieurs terminaux au hub.
+ Installez la dernière version de AWS CLI depuis le manuel [Managed Integrations AWS CLI Command Reference](https://docs.aws.amazon.com/cli/latest/reference/iot-managed-integrations/)
+ (Facultatif) Abonnez-vous aux notifications d'événements [DEVICE\_DISCOVERY\_STATUS](managedintegrations-notifications.md#managedintegrations-notification-setup).

## Quand utiliser la redécouverte des capacités
<a name="capability-rediscovery-use-cases"></a>

Utilisez la redécouverte des capacités dans les scénarios suivants :
+ Après une mise à jour du microprogramme d'un appareil final qui ajoute ou modifie les fonctionnalités de l'appareil
+ Après une mise à jour logicielle du hub permettant la prise en charge des nouvelles fonctionnalités de l'appareil
+ Lorsque les capacités de l'appareil ne sont pas reflétées avec précision dans les intégrations gérées
+ Pour actualiser les informations de capacité d'un seul appareil ou de tous les appareils connectés à un hub

## Lancer la redécouverte des capacités
<a name="capability-rediscovery-start-discovery"></a>

Lancez la redécouverte des fonctionnalités de votre hub afin de mettre à jour les fonctionnalités de l'appareil.

**Pour démarrer la redécouverte des capacités**
+ Utilisez la commande [start-device-discovery](https://docs.aws.amazon.com/cli/latest/reference/iot-managed-integrations/start-device-discovery.html) avec le `CONTROLLER_CAPABILITY_REDISCOVERY` type de découverte.

  **Exemple start-device-discovery**

  ```
  # For a single device
  aws iot-managed-integrations start-device-discovery \
    --discovery-type CONTROLLER_CAPABILITY_REDISCOVERY \
    --controller-identifier {{HUB_MANAGED_THING_ID}} \
    --protocol {{PROTOCOL}} \
    --end-device-identifier {{DEVICE_MANAGED_THING_ID}}
  
  # For all devices on a protocol
  aws iot-managed-integrations start-device-discovery \
    --discovery-type CONTROLLER_CAPABILITY_REDISCOVERY \
    --controller-identifier {{HUB_MANAGED_THING_ID}} \
    --protocol {{PROTOCOL}}
  ```

  **Réponse :**

  ```
  {
      "Id": "a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6",
      "StartedAt": "2026-01-12T23:07:49.275Z"
  }
  ```
**Note**  
Le `--protocol` paramètre accepte `ZIGBEE``ZWAVE`, ou`CUSTOM`.  
Si le `--end-device-identifier` paramètre facultatif n'est pas fourni, tous les appareils associés au hub pour le protocole sélectionné sont redécouverts.

  *Pour plus d'informations, consultez la commande [start-device-discovery](https://docs.aws.amazon.com/cli/latest/reference/iot-managed-integrations/start-device-discovery.html) dans le manuel Managed Integrations AWS CLI Command Reference.*

Pour vérifier que les fonctionnalités de l'appareil ont été mises à jour, voir [Fonctionnalités relatives à la gestion des objets](managedintegrations-sdk-v2-cookbook-ugs.md#managedintegrations-sdk-v2-cookbook-check-device-capabilties).

## Résolution des problèmes
<a name="capability-rediscovery-troubleshooting"></a>

Suivez les instructions suivantes pour résoudre les problèmes courants liés à la redécouverte des capacités. Lorsque la redécouverte des capacités est en cours, Managed Integrations envoie des notifications via Kinesis ou EventBridge sous forme de messages JSON.

### Notifications de réussite
<a name="capability-rediscovery-notifications-success"></a>

**Par appareil en cours de traitement :**

```
{
    "messageType": "DEVICE_DISCOVERY_STATUS",
    // Capability rediscovery with controller and end device
    "resources": ["arn:aws:iotmanagedintegrations:us-east-1:123456789012:managed-thing/abc123def456", "arn:aws:iotmanagedintegrations:us-east-1:123456789012:managed-thing/xyz789uvw012"],
    "payload": {
        "deviceDiscoveryId": "a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6",
        "status": "RUNNING",
        "deviceCount": 1
    }
}
```

**Achèvement :**

```
{
    "messageType": "DEVICE_DISCOVERY_STATUS",
    // Capability rediscovery with controller only
    "resources": ["arn:aws:iotmanagedintegrations:us-east-1:123456789012:managed-thing/abc123def456"],
    "payload": {
        "deviceDiscoveryId": "a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6",
        "status": "SUCCEEDED",
        "deviceCount": 0
    }
}
```

### Notifications d'échec
<a name="capability-rediscovery-notifications-failure"></a>

**Défaillance de l'appareil :**

```
{
    "messageType": "DEVICE_DISCOVERY_STATUS",
    // Capability rediscovery with controller and end device
    "resources": ["arn:aws:iotmanagedintegrations:us-east-1:123456789012:managed-thing/abc123def456", "arn:aws:iotmanagedintegrations:us-east-1:123456789012:managed-thing/ghi345jkl678"],
    "payload": {
        "deviceDiscoveryId": "a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6",
        "status": "RUNNING",
        "deviceCount": 1,
        "error": {
            "code": "500",
            "message": "Device unreachable",
            "managedThingId": "ghi345jkl678"
        }
    }
}
```

**Défaillance complète :**

```
{
    "messageType": "DEVICE_DISCOVERY_STATUS",
    // Capability rediscovery with controller only
    "resources": ["arn:aws:iotmanagedintegrations:us-east-1:123456789012:managed-thing/abc123def456"],
    "payload": {
        "deviceDiscoveryId": "a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6",
        "status": "FAILED",
        "deviceCount": 0,
        "error": {
            "code": "404",
            "message": "Specified controller does not exist"
        }
    }
}
```

### Aucune notification reçue
<a name="capability-rediscovery-no-notifications"></a>

Si vous ne recevez aucune notification concernant l'état de la découverte, vérifiez que vous êtes abonné aux notifications d'`DEVICE_DISCOVERY_STATUS`événements. Pour plus d'informations sur la configuration des notifications, consultez [Configurer les notifications d'intégrations gérées](managedintegrations-notifications.md#managedintegrations-notification-setup).

### Certains appareils ne sont pas mis à jour
<a name="capability-rediscovery-partial-failure"></a>

Si certains appareils ne parviennent pas à se mettre à jour lors de la redécouverte des fonctionnalités, vérifiez les messages d'erreur contenus dans les `DEVICE_DISCOVERY_STATUS` notifications. Les messages d'erreur courants sont les suivants :
+ `Device unreachable`- L'appareil est hors ligne ou ne répond pas
+ `Timeout querying device`- L'appareil ne répond pas dans le délai prévu
+ `Invalid capability report`- Le microprogramme de l'appareil présente peut-être un problème

Pour résoudre ces problèmes, assurez-vous que les appareils concernés sont sous tension et accessibles, puis réessayez de redécouvrir les capacités des périphériques défaillants individuellement à l'aide du `--end-device-identifier` paramètre.

### La découverte ne s'achève jamais
<a name="capability-rediscovery-stuck"></a>

Si le processus de redécouverte des capacités ne s'achève pas, vérifiez l'état de la découverte à l'aide de l'ID de tâche de découverte renvoyé par la `start-device-discovery` commande :

```
aws iot-managed-integrations get-device-discovery \
  --identifier {{DISCOVERY_JOB_ID}}
```

Si la découverte est bloquée :
+ Vérifiez que le hub est en ligne et connecté à Managed Integrations
+ Attendez jusqu'à 15 minutes pour que la découverte expire automatiquement
+ Réessayez de redécouvrir les capacités après avoir confirmé que le hub et les appareils sont opérationnels