

AWS L'IoT ne FleetWise sera plus ouvert aux nouveaux clients à compter du 30 avril 2026. FleetWise Les clients AWS IoT existants peuvent continuer à utiliser le service. Le [guide pour la mobilité connectée AWS fournit des conseils sur](https://aws.amazon.com/solutions/guidance/connected-mobility-on-aws/) la manière de développer et de déployer des services modulaires pour les solutions de mobilité connectée qui peuvent être utilisées pour atteindre des capacités équivalentes à celles de AWS l'IoT FleetWise.

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.

# Cas d'utilisation du code de diagnostic
<a name="dtc-use-cases"></a>

**Important**  
L'accès à certaines FleetWise fonctionnalités de AWS l'IoT est actuellement restreint. Pour de plus amples informations, veuillez consulter [AWS Disponibilité des régions et des fonctionnalités dans AWS l'IoT FleetWise](fleetwise-regions.md).

Les cas d'utilisation suivants supposent que la `DTC_QUERY` fonction a été définie dans le [script de démonstration](https://github.com/aws/aws-iot-fleetwise-edge/blob/main/docs/dev-guide/edge-agent-uds-dtc-dev-guide.md).

## Récupération périodique
<a name="dtc-periodic-fetch"></a>

Récupérez une collection DTC à des intervalles configurés.

L'exemple suivant est une campagne qui consiste à récupérer périodiquement des signaux `Vehicle.DTC_INFO` pour tous DTCs avec un masque de statut pour tous ECUs. Il existe une condition pour laquelle les données sont collectées pour`Vehicle.DTC_INFO`.

```
{
  "compression": "SNAPPY",
  "spoolingMode": "TO_DISK",
  "signalsToFetch": [
    {
      "fullyQualifiedName": "Vehicle.ECU1.DTC_INFO",
      "signalFetchConfig": {
        "timeBased": {
        // The FleetWise Edge Agent will query the UDS module for all DTCs every five seconds.
          "executionFrequencyMs": 5000
        }
      },
      "actions": [
      // Every five seconds, this action is called and its output is stored in the
      // signal history buffer of Vehicle.DTC_INFO
        "custom_function(\"DTC_QUERY\", -1, 2, -1)"
      ]
    }
  ],
  "signalsToCollect": [
    {
      "name": "Vehicle.ECU1.DTC_INFO"
    }
  ],
  "collectionScheme": {
    "conditionBasedCollectionScheme": {
      "conditionLanguageVersion": 1,
      // Whenever a new DTC is filled into the signal, the data is ingested.
      "expression": "!isNull($variable.`Vehicle.ECU1.DTC_INFO`)",
      "minimumTriggerIntervalMs": 1000,
      // Make sure that data is ingested only when there are new DTCs.
      "triggerMode": "RISING_EDGE"
    }
  },
  "dataDestinationConfigs": [
    {
      "s3Config": 
        {
          "bucketArn": "bucket-arn",
          "dataFormat": "PARQUET",
          "prefix": "campaign-name",
          "storageCompressionFormat": "GZIP"
        }
    }
  ]
}
```

## Récupération basée sur les conditions
<a name="dtc-condition-fetch"></a>

Récupère une collection DTC lorsqu'une condition est remplie. Par exemple, lorsque le signal CAN est émis`Vehicle.Ignition == 1`, récupérez et téléchargez les données DTC.

L'exemple de campagne suivant comporte une récupération de signal basée sur les conditions `Vehicle.ECU1.DTC_INFO` pour vérifier si le DTC (» AAA123 «) est en attente avec RecordNumber 1 pour ECU-1. Cette campagne comprend une collecte et un téléchargement de données basés sur le temps.

```
{
  "compression": "SNAPPY",
  "spoolingMode": "TO_DISK",
  "signalsToFetch": [
    {
      "fullyQualifiedName": "Vehicle.ECU1.DTC_INFO",
      "signalFetchConfig": {
        "conditionBased": {
        // The action will only run when the ignition is on.
          "conditionExpression": "$variable.`Vehicle.Ignition` == 1",
          "triggerMode": "ALWAYS"
        }
      },
      // The UDS module is only requested for the specific ECU address and the specific DTC Number/Status.
      "actions": ["custom_function(\"DTC_QUERY\", 1, 2, 8, \"0xAAA123\")"]
    }
  ],
  "signalsToCollect": [
    {
      "name": "Vehicle.ECU1.DTC_INFO"
    },
    {
      "name": "Vehicle.Ignition"
    }
  ],
  "collectionScheme": {
    "timeBasedCollectionScheme": {
      "periodMs": 10000
    }
  },
  "dataDestinationConfigs": [
    {
      "s3Config": 
        {
          "bucketArn": "bucket-arn",
          "dataFormat": "PARQUET",
          "prefix": "campaign-name",
          "storageCompressionFormat": "GZIP"
        }
    }
  ]
}
```

## Récupération à la demande
<a name="fetch-dtc-for-fleet"></a>

Récupérez un DTC spécifique pour une flotte.

Pour un cas d'utilisation à la demande, vous pouvez utiliser la même campagne que celle définie dans la récupération périodique. L'effet à la demande est obtenu en suspendant la campagne peu après son déploiement à l'aide de la FleetWise console AWS IoT ou en exécutant la commande CLI suivante.
+ Remplacez {{command-name}} par le nom de la commande.

```
aws iotfleetwise update-campaign \
    --name {{campaign-name}} \
    --action APPROVE
```

Ensuite, suspendez la campagne après l'arrivée des données DTC.

```
aws iotfleetwise update-campaign \
    --name {{campaign-name}} \
    --action SUSPEND
```

Vous pouvez reprendre la campagne pour récupérer les données DTC.

```
aws iotfleetwise update-campaign \
    --name {{campaign-name}} \
    --action RESUME
```