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.
Implementieren Sie den OTA Agent
Wenn Sie das Jobdokument von Managed Integrations erhalten, benötigen Sie eine Implementierung Ihres eigenen OTA-Agenten, der das Jobdokument verarbeitet, Updates herunterlädt und alle Installationsvorgänge durchführt. Der OTA-Agent muss die folgenden Schritte ausführen:
-
Analysieren Sie Jobdokumente für die Firmware Amazon S3 URLs.
-
Laden Sie Firmware-Updates über HTTP herunter.
-
Überprüfen Sie die digitalen Signaturen.
-
Installieren Sie validierte Updates.
-
Rufen Sie
iotmi\_JobsHandler\_updateJobStatusmitSUCCESSoderFAILEDStatus an.
Wenn Ihr Gerät den OTA-Vorgang erfolgreich abgeschlossen hat, muss es die iotmi\_JobsHandler\_updateJobStatus API mit dem Status „Einen JobSucceeded erfolgreichen Job melden“ aufrufen.
/** * @brief Enumeration of possible job statuses. */ typedef enum{ JobQueued, /** The job is in the queue, waiting to be processed. */ JobInProgress, /** The job is currently being processed. */ JobFailed, /** The job processing failed. */ JobSucceeded, /** The job processing succeeded. */ JobRejected /** The job was rejected, possibly due to an error or invalid request. */ } iotmi_JobCurrentStatus_t; /** * @brief Update the status of a job with optional status details. * * @param[in] pJobId Pointer to the job ID string. * @param[in] jobIdLength Length of the job ID string. * @param[in] status The new status of the job. * @param[in] statusDetails Pointer to a string containing additional details about the job status. * This can be a JSON-formatted string or NULL if no details are needed. * @param[in] statusDetailsLength Length of the status details string. Set to 0 if `statusDetails` is NULL. * * @return 0 on success, non-zero on failure. */ int iotmi_JobsHandler_updateJobStatus( const char * pJobId, size_t jobIdLength, iotmi_JobCurrentStatus_t status, const char * statusDetails, size_t statusDetailsLength );