nl::Weave::Profiles::SoftwareUpdate

Cet espace de noms inclut toutes les interfaces dans Weave pour le profil de mise à jour logicielle Weave, y compris le protocole correspondant du même nom.

Résumé

Énumérations

@309{
  kMsgType_ImageAnnounce = 0,
  kMsgType_ImageQuery = 1,
  kMsgType_ImageQueryResponse = 2,
  kMsgType_DownloadNotify = 3,
  kMsgType_NotifyResponse = 4,
  kMsgType_UpdateNotify = 5,
  kMsgType_ImageQueryStatus = 6
}
enum
@310{
  kStatus_NoUpdateAvailable = 0x0001,
  kStatus_UpdateFailed = 0x0010,
  kStatus_InvalidInstructions = 0x0050,
  kStatus_DownloadFailed = 0x0051,
  kStatus_IntegrityCheckFailed = 0x0052,
  kStatus_Abort = 0x0053,
  kStatus_Retry = 0x0091
}
enum
@311{
  kFlag_PackageSpecPresent = 1,
  kFlag_LocaleSpecPresent = 2,
  kFlag_TargetNodeIdPresent = 4
}
enum
Indicateurs de contrôle pour le champ de commande du frame ImageQuery.
@312 enum
Masques de bits pour le champ facultatif des options de mise à jour de ImageQueryResponse.
@313 enum
Décalages de décalage pour le champ facultatif des options de mise à jour de ImageQueryResponse.
@314{
  kIntegrityType_SHA160 = 0,
  kIntegrityType_SHA256 = 1,
  kIntegrityType_SHA512 = 2,
  kIntegrityType_Last = 3
}
enum
@315 enum
Longueurs, en octets, des chaînes d'octets de la spécification d'intégrité.
@316{
  kUpdateScheme_HTTP = 0,
  kUpdateScheme_HTTPS = 1,
  kUpdateScheme_SFTP = 2,
  kUpdateScheme_BDX = 3,
  kUpdateScheme_Last = 4
}
enum
@317 enum
Balises d'élément de données pour le profil SoftwareUpdate
UpdateCondition{
  IfUnmatched,
  IfLater,
  Unconditionally,
  OnOptIn
}
enum
Conditions régissant les règles de mise à jour.
UpdatePriority{
  Normal,
  Critical
}
enum
Priorités de mise à jour.

distantes

integrityLength(uint8_t aType)
int
Méthode d'assistance qui mappe les valeurs IntegrityTypes avec la longueur des hachages de ce type.

Classes

nl::Weave::Profiles::SoftwareUpdate::IWeaveImageAnnounceServerDelegate

Interface du délégué WeaveImageAnnounceServer.

nl::Weave::Profiles::SoftwareUpdate::ImageAnnounce

Classe décrivant le message ImageAnnounce.

nl::Weave::Profiles::SoftwareUpdate::ImageQuery

Classe permettant de créer et de décoder des messages de requête d'image.

nl::Weave::Profiles::SoftwareUpdate::ImageQueryResponse

Classe permettant de créer et de décoder les messages de réponse à la requête d'image.

nl::Weave::Profiles::SoftwareUpdate::IntegritySpec

Une classe auxiliaire contenant le type d'intégrité et le hachage réel de l'image de mise à jour logicielle.

nl::Weave::Profiles::SoftwareUpdate::IntegrityTypeList

Classe auxiliaire destinée à contenir une liste de types d'intégrité dans le cadre de la requête d'image.

nl::Weave::Profiles::SoftwareUpdate::ProductSpec

Classe auxiliaire représentant une spécification de produit.

nl::Weave::Profiles::SoftwareUpdate::UpdateSchemeList

Une classe auxiliaire contenant une liste de schémas de mise à jour dans le cadre de la requête d'image.

nl::Weave::Profiles::SoftwareUpdate::WeaveImageAnnounceServer

Serveur qui écoute les annonces d'images Weave.

Énumérations

@309

 @309

SoftwareUpdate.

Propriétés
kMsgType_DownloadNotify

Message facultatif du client au serveur, utilisé pour informer le serveur de l'état du téléchargement.

Sa charge utile est nl::Weave::Profiles::StatusReporting::StatusReport, avec les informations d'état supplémentaires extraites de SoftwareUpdateStatusCodes.

kMsgType_ImageAnnounce

Message facultatif non sollicité, utilisé par le serveur pour annoncer la disponibilité d'une mise à jour logicielle.

Le message ne contient aucune charge utile.

kMsgType_ImageQuery

Un message de requête envoyé par le client au serveur.

Son format est défini à l'aide de la classe ImageQuery.

kMsgType_ImageQueryResponse

Message généré en réponse à un message de requête d'image réussi.

Son format est défini par la classe ImageQueryResponse.

kMsgType_ImageQueryStatus

Message généré en réponse à un message de requête d'image ayant échoué.

Sa charge utile est nl::Weave::Profiles::StatusReporting::StatusReport, avec les informations d'état supplémentaires extraites de SoftwareUpdateStatusCodes.

kMsgType_NotifyResponse

Message généré en réponse au message de notification de téléchargement.

Sa charge utile est nl::Weave::Profiles::StatusReporting::StatusReport, avec les informations d'état supplémentaires extraites de SoftwareUpdateStatusCodes.

kMsgType_UpdateNotify

Message facultatif du client au serveur, utilisé pour communiquer l'état final de la mise à jour.

Sa charge utile est nl::Weave::Profiles::StatusReporting::StatusReport, avec les informations d'état supplémentaires extraites de SoftwareUpdateStatusCodes. Comme le message est censé être généré après une mise à jour réelle, il est envoyé sur un nouveau contexte ExchangeContext et est traité comme un message non sollicité sur le serveur.

@310

 @310

Codes d'état spécifiques au profil SoftwareUpdate.

Propriétés
kStatus_Abort

server => client, indique que le client doit abandonner car le serveur n'a plus d'options.

kStatus_DownloadFailed

client => serveur, indique qu'une tentative de téléchargement a échoué.

kStatus_IntegrityCheckFailed

client => server, indique qu'une image a été téléchargée, mais qu'elle a échoué à la vérification d'intégrité ultérieure.

kStatus_InvalidInstructions

client => server, indique que le client n'a pas pu télécharger d'image à cause des instructions de téléchargement contenues dans la réponse ImageQueryResponse, à savoir

L'URI, le schéma et l'état de la mise à jour sont mal formés ou incohérents.

kStatus_NoUpdateAvailable

server => client, indique qu'une requête d'image a été reçue et comprise, et que le serveur n'a aucune mise à jour pour le client pour le moment.

kStatus_Retry

server => client, indique que le client doit soumettre une autre requête d'image et redémarrer/continuer la mise à jour

kStatus_UpdateFailed

client => server, indique qu'une tentative d'installation d'une image spécifiée par le serveur a échoué.

@311

 @311

Indicateurs de contrôle pour le champ de commande du frame ImageQuery.

Propriétés
kFlag_LocaleSpecPresent

La spécification Locale est présente dans ImageQuery.

kFlag_PackageSpecPresent

La spécification du package est présente dans ImageQuery.

kFlag_TargetNodeIdPresent

L'ID du nœud cible est présent dans ImageQuery.

@312

 @312

Masques de bits pour le champ facultatif des options de mise à jour de ImageQueryResponse.

@313

 @313

Décalages de décalage pour le champ facultatif des options de mise à jour de ImageQueryResponse.

@314

 @314

Types d'intégrité compatibles avec le profil SoftwareUpdate.

Le frame de requête d'image contient des informations sur la vérification d'intégrité prise en charge par le client, et la réponse à la requête d'image contient un type et une valeur d'intégrité pour l'image que le client est invité à télécharger et à installer. Voici les types pris en charge :

Propriétés
kIntegrityType_Last

Nombre d'éléments valides dans l'énumération.

kIntegrityType_SHA160

Hachage sécurisé 160 bits (SHA-1), obligatoire.

kIntegrityType_SHA256

Hachage sécurisé (SHA-2) 256 bits

kIntegrityType_SHA512

Hachage sécurisé (SHA-2) 512 bits.

@315

 @315

Longueurs, en octets, des chaînes d'octets de la spécification d'intégrité.

@316

 @316

Schémas de mise à jour compatibles avec le profil SofwareUpdate.

Comme pour les types d'intégrité compatibles, la requête d'image contient des informations sur les schémas de mise à jour (c'est-à-dire les protocoles de téléchargement acceptés par le client), et la réponse contient une valeur indiquant le schéma de mise à jour à utiliser pour le téléchargement des images. Les schémas pris en charge sont les suivants:

Propriétés
kUpdateScheme_BDX

Le transfert de données Weave Bulk doit être utilisé comme protocole de téléchargement.

kUpdateScheme_HTTP

HTTP doit être utilisé comme protocole de téléchargement.

kUpdateScheme_HTTPS

HTTPS doit être utilisé comme protocole de téléchargement.

kUpdateScheme_Last

Nombre d'éléments valides dans l'énumération.

kUpdateScheme_SFTP

SFTP est utilisé comme protocole de téléchargement.

@317

 @317

Balises d'élément de données pour le profil SoftwareUpdate

UpdateCondition

 UpdateCondition

Conditions régissant les règles de mise à jour.

Propriétés
IfLater

Téléchargez et installez l'image si la spécification de version dans le frame de réponse est postérieure à la version logicielle actuellement installée.

IfUnmatched

Téléchargez et installez l'image si la spécification de version dans le frame de réponse ne correspond pas à la version logicielle actuellement installée.

OnOptIn

télécharger et installer l'image sur un déclencheur fourni par un utilisateur sur site.

Unconditionally

Téléchargez et installez l'image quelle que soit la version logicielle en cours d'exécution.

UpdatePriority

 UpdatePriority

Priorités de mise à jour.

Propriétés
Critical

La mise à jour doit être exécutée immédiatement.

Normal

La mise à jour peut être exécutée à la discrétion du client.

distantes

integrityLength

int integrityLength(
  uint8_t aType
)

Méthode d'assistance qui mappe les valeurs IntegrityTypes avec la longueur des hachages de ce type.

Détails
Paramètres
[in] aType
Une valeur IntegrityTypes.
Renvoie
Longueur du hachage du type de hachage fourni.