

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Redescoberta de capacidades
<a name="managedintegrations-sdk-v2-onboarding-capability-rediscovery"></a>

Esta seção descreve as etapas para reaprender as informações de capacidade do dispositivo para dispositivos conectados ao hub usando a redescoberta de recursos.

## Pré-requisitos
<a name="capability-rediscovery-prereq"></a>

Conclua estas etapas antes de tentar a redescoberta da capacidade:
+ Integre um dispositivo de hub ao hub de integrações gerenciadas.
+ Integre um ou mais dispositivos finais ao hub.
+ Instale a versão mais recente do a AWS CLI partir da Referência de [AWS CLI Comandos de Integrações Gerenciadas](https://docs.aws.amazon.com/cli/latest/reference/iot-managed-integrations/)
+ (Opcional) Inscreva-se para receber notificações de [eventos DEVICE\_DISCOVERY\_STATUS](managedintegrations-notifications.md#managedintegrations-notification-setup).

## Quando usar a redescoberta de capacidades
<a name="capability-rediscovery-use-cases"></a>

Use a redescoberta de capacidades nos seguintes cenários:
+ Depois de uma atualização de firmware em um dispositivo final que adiciona ou modifica os recursos do dispositivo
+ Depois de uma atualização do software do hub que permite o suporte para novos recursos do dispositivo
+ Quando os recursos do dispositivo não são refletidos com precisão nas integrações gerenciadas
+ Para atualizar as informações de capacidade de um único dispositivo ou de todos os dispositivos conectados a um hub

## Inicie a redescoberta de capacidades
<a name="capability-rediscovery-start-discovery"></a>

Inicie a redescoberta de recursos em seu hub para atualizar os recursos do dispositivo.

**Para iniciar a redescoberta de capacidades**
+ Use o comando [start-device-discovery com o tipo de descoberta](https://docs.aws.amazon.com/cli/latest/reference/iot-managed-integrations/start-device-discovery.html). `CONTROLLER_CAPABILITY_REDISCOVERY`

  **start-device-discovery exemplo**

  ```
  # 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}}
  ```

  **Resposta:**

  ```
  {
      "Id": "a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6",
      "StartedAt": "2026-01-12T23:07:49.275Z"
  }
  ```
**nota**  
O `--protocol` parâmetro aceita`ZIGBEE`,`ZWAVE`, ou`CUSTOM`.  
Se o `--end-device-identifier` parâmetro opcional não for fornecido, todos os dispositivos associados ao hub do protocolo selecionado serão redescobertos.

  *Para obter mais informações, consulte o comando [start-device-discovery na Referência de comandos de integrações](https://docs.aws.amazon.com/cli/latest/reference/iot-managed-integrations/start-device-discovery.html) gerenciadas. AWS CLI *

Para verificar se os recursos do dispositivo foram atualizados, consulte os [recursos de Get managed thing](managedintegrations-sdk-v2-cookbook-ugs.md#managedintegrations-sdk-v2-cookbook-check-device-capabilties).

## Solução de problemas
<a name="capability-rediscovery-troubleshooting"></a>

Use as diretrizes a seguir para solucionar problemas comuns com a redescoberta de recursos. Quando a redescoberta de recursos está em andamento, as Integrações Gerenciadas enviam notificações por meio do Kinesis ou EventBridge como mensagens JSON.

### Notificações de sucesso
<a name="capability-rediscovery-notifications-success"></a>

**Por dispositivo que está sendo processado:**

```
{
    "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
    }
}
```

**Conclusão:**

```
{
    "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
    }
}
```

### Notificações de falha
<a name="capability-rediscovery-notifications-failure"></a>

**Falha no dispositivo:**

```
{
    "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"
        }
    }
}
```

**Falha completa:**

```
{
    "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"
        }
    }
}
```

### Nenhuma notificação recebida
<a name="capability-rediscovery-no-notifications"></a>

Se você não receber notificações sobre o status da descoberta, verifique se você se inscreveu para receber notificações de `DEVICE_DISCOVERY_STATUS` eventos. Para obter mais informações sobre a configuração de notificações, consulte [Configurar notificações de integrações gerenciadas](managedintegrations-notifications.md#managedintegrations-notification-setup).

### Alguns dispositivos não atualizados
<a name="capability-rediscovery-partial-failure"></a>

Se alguns dispositivos falharem na atualização durante a redescoberta da capacidade, verifique as mensagens de erro nas `DEVICE_DISCOVERY_STATUS` notificações. As mensagens de erro mais comuns incluem:
+ `Device unreachable`- O dispositivo está off-line ou não está respondendo
+ `Timeout querying device`- O dispositivo não está respondendo dentro do prazo esperado
+ `Invalid capability report`- O firmware do dispositivo pode ter um problema

Para resolver esses problemas, certifique-se de que os dispositivos afetados estejam ligados e acessíveis e, em seguida, tente redescobrir a capacidade dos dispositivos com falha individualmente usando o parâmetro. `--end-device-identifier`

### A descoberta nunca termina
<a name="capability-rediscovery-stuck"></a>

Se o processo de redescoberta da capacidade não for concluído, verifique o status da descoberta usando o ID do trabalho de descoberta retornado pelo `start-device-discovery` comando:

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

Se a descoberta travar:
+ Verifique se o hub está on-line e conectado às integrações gerenciadas
+ Aguarde até 15 minutos para que a descoberta atinja o tempo limite automaticamente
+ Tente novamente a redescoberta da capacidade depois de confirmar que o hub e os dispositivos estão operacionais