Nota
O acceso a esta páxina require autorización. Pode tentar iniciar sesión ou modificar os directorios.
O acceso a esta páxina require autorización. Pode tentar modificar os directorios.
Si quiere importar una actualización en Device Update para IoT Hub, asegúrese de haber revisado primero los conceptos y la guía paso a paso . Si está interesado en los detalles del esquema de manifiesto de importación o información sobre los permisos de API, consulte a continuación.
El esquema JSON del manifiesto de importación se hospeda en SchemaStore.org.
Esquema
| Propiedad | Tipo | Descripción | Obligatorio |
|---|---|---|---|
| $schema | string |
Referencia de esquema JSON. | No |
| identificación de actualización | updateId |
Identificador de actualización único. | Sí |
| descripción | string |
Descripción de actualización opcional. Longitud máxima: 512 caracteres |
No |
| compatibilidad | compatibility |
Lista de conjuntos de propiedades de dispositivo con la que esta actualización es compatible. | Sí |
| instrucciones | instructions |
Actualice las instrucciones de instalación. | Sí |
| Archivos |
file
[0-10]
|
Lista de archivos de carga de actualización. Es posible que la suma de todos los tamaños de archivo no supere los 2 GB. Puede estar vacío o null si todos los pasos de instrucción son pasos de referencia. | No |
| manifestVersion | string |
Importe la versión del esquema del manifiesto. Debe ser 4.0. | Sí |
| fechaHoraDeCreación | string |
El manifiesto de importación de fecha & hora se creó en formato ISO 8601. Ejemplo: "2020-10-02T22:18:04.9446744Z" |
Sí |
No se permiten propiedades adicionales.
updateId(objeto)
El updateID objeto es un identificador único para cada actualización.
| Propiedad | Tipo | Descripción | Obligatorio |
|---|---|---|---|
| proveedor | string |
Entidad que está creando o responsable directamente de la actualización. Puede ser un nombre de empresa. Patrón: ^[a-zA-Z0-9.-]+$Longitud máxima: 64 caracteres |
Sí |
| nombre | string |
Identificador de una clase de actualización. Puede ser una clase de dispositivo o un nombre de modelo. Patrón: ^[a-zA-Z0-9.-]+$Longitud máxima: 64 caracteres |
Sí |
| versión | string |
Versiones numéricas de dos a cuatro partes separadas por puntos. Cada parte debe ser un número comprendido entre 0 y 2147483647 y se quitarán los ceros iniciales. Patrón: ^\d+(?:\.\d+)+$Ejemplos: "1.0", "2021.11.8" |
Sí |
No se permiten propiedades adicionales.
Por ejemplo:
{
"updateId": {
"provider": "Contoso",
"name": "Toaster",
"version": "1.0"
}
}
objeto de compatibilidad
El objeto compatibilidad describe las propiedades de un dispositivo con el que esta actualización es compatible.
-
Tipo:
object -
propiedades mínimas:
1 -
propiedades máximas:
5
Cada propiedad es un par nombre-valor de tipo cadena.
-
longitud mínima del nombre de propiedad:
1 -
longitud máxima del nombre de propiedad:
32 -
Longitud mínima del valor de la propiedad:
1 -
Longitud máxima permitida para el valor de la propiedad:
64
No se puede usar el mismo conjunto exacto de propiedades de compatibilidad con más de una combinación de nombre y proveedor de actualizaciones.
Por ejemplo:
{
"compatibility": [
{
"deviceManufacturer": "Contoso",
"deviceModel": "Toaster"
}
]
}
objeto de instrucciones
El objeto de instrucciones proporciona las instrucciones de instalación de actualizaciones. El objeto de instrucciones contiene una lista de pasos que se van a realizar. Los pasos pueden ser código para ejecutar o un puntero a otra actualización.
| Propiedad | Tipo | Descripción | Obligatorio |
|---|---|---|---|
| pasos | array[1-10] |
Cada elemento del array debe ser un objeto inlineStep o un objeto referenceStep de . | Sí |
No se permiten propiedades adicionales.
Por ejemplo:
{
"instructions": {
"steps": [
{
"type": "inline",
...
},
{
"type": "reference",
...
}
]
}
}
inlineStep objeto
Un paso en línea del objeto es un paso de instrucción de instalación que ejecuta código.
| Propiedad | Tipo | Descripción | Obligatorio |
|---|---|---|---|
| tipo | string |
Tipo de paso de instrucción que realiza la ejecución de código. Debe ser inline.El valor predeterminado es inline si no se proporciona ningún valor. |
No |
| descripción | string |
Descripción opcional del paso de instrucción. Longitud máxima: 64 caracteres |
No |
| manejador de | string |
Identidad del controlador en el dispositivo que puede ejecutar este paso. Patrón: ^\S+/\S+:\d{1,5}$Longitud mínima: 5 caracteres Longitud máxima: 32 caracteres Ejemplos: microsoft/script:1, microsoft/swupdate:1, microsoft/apt:1 |
Sí |
| Archivos |
string
[1-10]
|
Nombres de archivos de actualización definidos como objetos de archivo que el agente pasará al gestor. Cada elemento de la matriz debe tener una longitud entre 1 y 255 caracteres. | Sí |
| propiedades del manejador | inlineStepHandlerProperties |
Objeto JSON que el agente pasará al controlador como argumentos. | No |
No se permiten propiedades adicionales.
Por ejemplo:
{
"steps": [
{
"description": "pre-install script",
"handler": "microsoft/script:1",
"handlerProperties": {
"arguments": "--pre-install"
},
"files": [
"configure.sh"
]
}
]
}
objeto referenceStep
Un objeto de paso de referencia es un paso de instrucción de instalación que instala otra actualización.
| Propiedad | Tipo | Descripción | Obligatorio |
|---|---|---|---|
| tipo | referenceStepType |
Tipo de paso de instrucciones que instala otra actualización. Debe ser reference. |
Sí |
| descripción | stepDescription |
Descripción opcional del paso de instrucción. Longitud máxima: 64 caracteres |
No |
| identificación de actualización | updateId |
Identificador de actualización único. | Sí |
No se permiten propiedades adicionales.
Por ejemplo:
{
"steps": [
{
"type": "reference",
"updateId": {
"provider": "Contoso",
"name": "Toaster.HeatingElement",
"version": "1.0"
}
}
]
}
objeto de archivo
Un archivo objeto es un archivo de carga de actualización, por ejemplo, binario, firmware, script, etc. Cada objeto de archivo debe ser único dentro de una actualización.
| Propiedad | Tipo | Descripción | Obligatorio |
|---|---|---|---|
| Nombre del archivo | string |
Actualice el nombre del archivo de carga útil. Longitud máxima: 255 caracteres |
Sí |
| tamañoEnBytes | number |
Tamaño del archivo en número de bytes. Tamaño máximo: 2147483648 bytes |
Sí |
| hashes | fileHashes |
Hashes de archivo codificados en Base64 con el nombre del algoritmo como clave. Se debe especificar al menos el algoritmo SHA-256 y se puede especificar un algoritmo adicional si es compatible con el agente. Consulte a continuación para obtener más información sobre cómo calcular el hash. | Sí |
No se permiten propiedades adicionales.
Por ejemplo:
{
"files": [
{
"filename": "configure.sh",
"sizeInBytes": 7558,
"hashes": {...}
}
]
}
fileHashes (objeto)
Hashes de archivo codificados en Base64 con el nombre del algoritmo como clave. Se debe especificar al menos el algoritmo SHA-256 y se pueden especificar otros algoritmos si el agente lo admite. Para obtener un ejemplo de cómo calcular el hash correctamente, consulte la función Get-AduFileHashes en script AduUpdate.psm1.
| Propiedad | Tipo | Descripción | Obligatorio |
|---|---|---|---|
| sha256 | string |
Valor hash de archivo codificado en Base64 mediante el algoritmo SHA-256. | Sí |
Se permiten propiedades adicionales.
Por ejemplo:
{
"hashes": {
"sha256": "/CD7Sn6fiknWa3NgcFjGlJ+ccA81s1QAXX4oo5GHiFA="
}
}
Pasos siguientes
Obtenga más información sobre conceptos de importación .
Si estás listo, prueba la Guía de Importación How-To, que te guiará por el proceso de importación paso a paso.