

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# Erstellen Sie benutzerdefinierte Jobvorlagen mithilfe der AWS CLI
<a name="job-templates-cli"></a>

In diesem Thema wird erklärt, wie Sie Details erstellen und löschen können und wie Sie Details zu Auftragsvorlagen mithilfe von AWS CLI abrufen können.

## Erstellen einer von Grund auf neuen Auftragsvorlage
<a name="job-templates-cli-create-scratch"></a>

Der folgende AWS CLI Befehl zeigt, wie Sie einen Job mithilfe eines in einem S3-Bucket gespeicherten Auftragsdokuments (*job-document.json*) und einer Rolle mit der Berechtigung zum Herunterladen von Dateien von Amazon S3 (*S3DownloadRole*) erstellen.

```
aws iot create-job-template  \
      --job-template-id 010  \
      --description "My custom job template for updating the device firmware"
      --document-source https://s3.amazonaws.com/amzn-s3-demo-bucket/job-document.json  \
      --timeout-config inProgressTimeoutInMinutes=100 \
      --job-executions-rollout-config "{ \"exponentialRate\": { \"baseRatePerMinute\": 50, \"incrementFactor\": 2, \"rateIncreaseCriteria\": { \"numberOfNotifiedThings\": 1000, \"numberOfSucceededThings\": 1000}}, \"maximumPerMinute\": 1000}" \
      --abort-config "{ \"criteriaList\": [ { \"action\": \"CANCEL\", \"failureType\": \"FAILED\", \"minNumberOfExecutedThings\": 100, \"thresholdPercentage\": 20}, { \"action\": \"CANCEL\", \"failureType\": \"TIMED_OUT\", \"minNumberOfExecutedThings\": 200, \"thresholdPercentage\": 50}]}" \          
      --presigned-url-config "{\"roleArn\":\"arn:aws:iam::123456789012:role/S3DownloadRole\", \"expiresInSec\":3600}"
```

Der optionale Parameter `timeout-config` gibt die Dauer an, die jedes Gerät für den Abschluss der Ausführung des Auftrags hat. Der Timer wird gestartet, wenn der Status der Auftragsausführung auf `IN_PROGRESS` gesetzt wird. Wird der Status der Auftragsausführung vor Ablauf der Zeit nicht auf einen anderen abschließenden Status festgelegt, wird er automatisch auf `TIMED_OUT` festgelegt.

Der Timer „In Bearbeitung“ kann nicht aktualisiert werden und gilt für alle Auftragsausführungen für den Auftrag. Immer wenn ein Auftragsstart länger als dieses Intervall im `IN_PROGRESS` Status verbleibt, schlägt der Jobstart fehl und wechselt in den `TIMED_OUT` Terminalstatus. AWS IoT veröffentlicht auch eine MQTT-Benachrichtigung.

Weitere Informationen zum Konfigurieren von Auftragsrollouts und Auftragsabbrüchen finden Sie unter [Auftragsrollout- und Abbruchkonfiguration](job-rollout-abort-scheduling.html).

**Anmerkung**  
Auftragsdokumente, die als Amazon-S3-Dateien angegeben sind, werden zum Zeitpunkt der Erstellung des Auftrags abgerufen. Änderungen der Inhalte der Amazon-S3-Datei, die als Quelle Ihres Auftragsdokuments verwendet werden, nachdem Sie den Auftrag erstellt haben, ändern nicht, was an die Ziele des Auftrags gesendet wird.

## Erstellen einer Auftragsvorlage anhand eines vorhandenen Auftrags
<a name="job-templates-cli-create-from-job"></a>

Der folgende AWS CLI Befehl erstellt eine Jobvorlage, indem der Amazon-Ressourcenname (ARN) eines vorhandenen Jobs angegeben wird. Die neue Auftragsvorlage verwendet alle im Auftrag angegebenen Konfigurationen. Optional können Sie jede der Konfigurationen im vorhandenen Auftrag ändern, indem Sie einen der optionalen Parameter verwenden.

```
aws iot create-job-template  \
      --job-arn arn:aws:iot:region:123456789012:job/job-name  \      
      --timeout-config inProgressTimeoutInMinutes=100
```

## Abrufen von Details einer Aufgabenvorlage
<a name="job-templates-cli-describe"></a>

Mit dem folgenden AWS CLI Befehl werden Details zu einer angegebenen Jobvorlage abgerufen.

```
aws iot describe-job-template \
      --job-template-id template-id
```

Die Ausgabe des Befehls sieht wie folgt aus:

```
{
   "abortConfig": { 
      "criteriaList": [ 
         { 
            "action": "string",
            "failureType": "string",
            "minNumberOfExecutedThings": number,
            "thresholdPercentage": number
         }
      ]
   },
   "createdAt": number,
   "description": "string",
   "document": "string",
   "documentSource": "string",
   "jobExecutionsRolloutConfig": { 
      "exponentialRate": { 
         "baseRatePerMinute": number,
         "incrementFactor": number,
         "rateIncreaseCriteria": { 
            "numberOfNotifiedThings": number,
            "numberOfSucceededThings": number
         }
      },
      "maximumPerMinute": number
   },
   "jobTemplateArn": "string",
   "jobTemplateId": "string",
   "presignedUrlConfig": { 
      "expiresInSec": number,
      "roleArn": "string"
   },
   "timeoutConfig": { 
      "inProgressTimeoutInMinutes": number
   }
}
```

## Auflisten der Auftragsvorlagen
<a name="job-templates-cli-list"></a>

Der folgende AWS CLI Befehl listet alle Jobvorlagen in Ihrer auf AWS-Konto.

```
 aws iot list-job-templates
```

Die Ausgabe des Befehls sieht wie folgt aus:

```
{
   "jobTemplates": [ 
      { 
         "createdAt": number,
         "description": "string",
         "jobTemplateArn": "string",
         "jobTemplateId": "string"
      }
   ],
   "nextToken": "string"
}
```

Verwenden Sie den Wert des Feldes `nextToken`, um weitere Ergebnisseiten abzurufen.

## Löschen einer Auftragsvorlage
<a name="job-templates-cli-delete"></a>

Der folgende AWS CLI Befehl löscht eine angegebene Jobvorlage.

```
aws iot delete-job-template \
      --job-template-id template-id
```

Der Befehl zeigt keine Ausgabe an.

## Erstellen eines Auftrags anhand einer benutzerdefinierten Auftragsvorlage
<a name="job-templates-cli-create-job"></a>

Der folgende AWS CLI Befehl erstellt einen Job aus einer benutzerdefinierten Jobvorlage. Es zielt auf ein Gerät mit dem Namen `thingOne` und gibt den Amazon-Ressourcennamen (ARN) der Aufgabenvorlage an, die als Grundlage für den Auftrag verwendet werden soll. Sie können erweiterte Konfigurationen wie Timeout- und Abbruchkonfigurationen überschreiben, indem Sie die zugehörigen Parameter des Befehls `create-job` übergeben.

**Warnung**  
Das Objekt `document-parameters` darf nur zusammen mit dem Befehl `create-job` verwendet werden, wenn Aufträge aus AWS -verwalteten Vorlagen erstellt werden. Dieses Objekt darf nicht mit benutzerdefinierten Auftragsvorlagen verwendet werden. Ein Beispiel, das zeigt, wie Aufträge mit diesem Parameter erstellt werden, finden Sie unter [Erstellen eines Auftrags mithilfe verwalteter Vorlagen](job-template-manage-cli-create.md#job-template-manage-cli-create-job).

```
aws iot create-job \ 
      --targets arn:aws:iot:region:123456789012:thing/thingOne  \
      --job-template-arn arn:aws:iot:region:123456789012:jobtemplate/template-id
```