Manifiesto de actualización de Azure Device Update para IoT Hub
En este artículo se describen los datos del manifiesto de actualización que Azure Device Update para IoT Hub envía a los dispositivos durante la implementación de actualizaciones. El manifiesto de actualización es un objeto de cadena JSON serializado que contiene metadatos sobre la actualización que se va a instalar.
Device Update usa IoT Plug and Play para enviar el manifiesto de actualización y lo firma criptográficamente para que el agente de Device Update pueda comprobar su autenticidad. Para obtener más información sobre cómo se usa el manifiesto de actualización para instalar contenido de forma segura, consulte seguridad de Device Update.
Diferencias entre los manifiestos de importación y los de actualización
El manifiesto de actualización es diferente del manifiesto de importación de Device Update.
- El manifiesto de importación es un archivo JSON que describe la actualización que se va a importar en Device Update. Quien cree la actualización de Device Update crea el archivo de manifiesto de importación correspondiente.
- El manifiesto de actualización es un objeto de cadena JSON que comunica información al agente de Device Update durante una actualización. El servicio Device Update genera automáticamente el manifiesto de actualización mediante la inclusión de algunas de las mismas propiedades definidas en el manifiesto de importación.
Cada tipo de manifiesto tiene su propio esquema y versión de esquema. Para obtener más información sobre el esquema de manifiesto de importación, consulte Esquema de manifiesto de importación de Device Update.
Esquema del manifiesto de actualización
La versión 4 del esquema JSON del manifiesto de actualización se hospeda en SchemaStore.org.
Manifiesto de actualización de ejemplo
{
"manifestVersion": "4",
"updateId": {
"provider": "Contoso",
"name": "Toaster",
"version": "1.0"
},
"compatibility": [
{
"manufacturer": "Contoso",
"model": "Toaster"
}
],
"instructions": {
"steps": [
{
"handler": "microsoft/swupdate:2",
"handlerProperties": {
"installedCriteria": "1.0"
},
"files": [
"fileId0"
]
}
]
},
"files": {
"fileId0": {
"filename": "contoso.toaster.1.0.swu",
"sizeInBytes": 718,
"hashes": {
"sha256": "mcB5SexMU4JOOzqmlJqKbue9qMskWY3EI/iVjJxCtAs="
}
}
},
"createdDateTime": "2021-09-28T18:32:01.8404544Z"
}
Manifiesto de actualización completo frente a mini
Si un manifiesto de actualización es demasiado grande para comunicarse de forma eficaz, Device Update lo envía al dispositivo en formato desasociado, también denominado manifiesto de mini actualización. Un mini manifiesto contiene metadatos sobre el manifiesto de actualización que el agente de Device Update puede usar para descargar el manifiesto de actualización completa y comprobar su autenticidad.
En el ejemplo siguiente se muestra un manifiesto de mini actualización:
{
"manifestVersion": "4",
"updateId": {
"provider": "Contoso",
"name": "Toaster",
"version": "1.0"
},
"detachedManifestFileId": "fileId1",
"files": {
"fileId1": {
"filename": "contoso.toaster.1.0.updatemanifest.json",
"sizeInBytes": 2048,
"hashes": {
"sha256": "789s9PDfX4uA9wFUubyC30BWkLFbgmpkpmz1fEdqo2U="
}
}
}
}