nl::Weave::Profiles::SoftwareUpdate

Dieser Namespace umfasst alle Schnittstellen in Weave für das Weave-Software-Update-Profil, einschließlich des entsprechenden Protokolls mit demselben Namen.

Zusammenfassung

Aufzählungen

@309{
  kMsgType_ImageAnnounce = 0,
  kMsgType_ImageQuery = 1,
  kMsgType_ImageQueryResponse = 2,
  kMsgType_DownloadNotify = 3,
  kMsgType_NotifyResponse = 4,
  kMsgType_UpdateNotify = 5,
  kMsgType_ImageQueryStatus = 6
}
enum
SoftwareUpdate-Nachrichtentypen.
@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
Steuerungs-Flags für das Steuerfeld des Frames ImageQuery.
@312 enum
Bitmasken für das optionale Feld mit den Aktualisierungsoptionen von ImageQueryResponse.
@313 enum
Verschiebungs-Offsets für das optionale Feld mit den Aktualisierungsoptionen von ImageQueryResponse.
@314{
  kIntegrityType_SHA160 = 0,
  kIntegrityType_SHA256 = 1,
  kIntegrityType_SHA512 = 2,
  kIntegrityType_Last = 3
}
enum
@315 enum
Längen in Byte für die Bytestrings der Integritätsspezifikation.
@316{
  kUpdateScheme_HTTP = 0,
  kUpdateScheme_HTTPS = 1,
  kUpdateScheme_SFTP = 2,
  kUpdateScheme_BDX = 3,
  kUpdateScheme_Last = 4
}
enum
@317 enum
Datenelement-Tags für das Profil SoftwareUpdate.
UpdateCondition{
  IfUnmatched,
  IfLater,
  Unconditionally,
  OnOptIn
}
enum
Bedingungen für die Aktualisierungsrichtlinie.
UpdatePriority{
  Normal,
  Critical
}
enum
Prioritäten aktualisieren

Funktionen

integrityLength(uint8_t aType)
int
Eine unterstützte Methode, die die IntegrityTypes-Werte den Längen der Hashes dieses Typs zuordnet.

Klassen

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

Schnittstelle für den Delegaten WeaveImageAnnounceServer.

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

Klasse, die die ImageAnnounce-Nachricht beschreibt.

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

Eine Klasse, die das Erstellen und Decodieren von Bildabfragenachrichten unterstützt.

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

Eine Klasse, die das Erstellen und Decodieren von Bildabfrageantwortnachrichten unterstützt.

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

Eine Hilfsklasse mit dem Integritätstyp und dem tatsächlichen Hash des Images für die Softwareaktualisierung.

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

Eine Hilfsklasse, die eine Liste von Integritätstypen als Teil der Bildabfrage enthält.

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

Eine Hilfsklasse, die eine Produktspezifikation darstellt.

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

Eine Hilfsklasse, die eine Liste von Aktualisierungsschemata als Teil der Bildabfrage enthält.

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

Server, der auf Weave-Image-Ankündigungen wartet.

Aufzählungen

@309

 @309

SoftwareUpdate-Nachrichtentypen.

Attribute
kMsgType_DownloadNotify

Eine optionale Nachricht vom Client an den Server, mit der der Server über den Downloadstatus informiert wird.

Seine Nutzlast ist nl::Weave::Profiles::StatusReporting::StatusReport mit den zusätzlichen Statusinformationen aus SoftwareUpdateStatusCodes.

kMsgType_ImageAnnounce

Eine optionale unerwünschte Nachricht, die vom Server verwendet wird, um die Verfügbarkeit eines Software-Updates anzukündigen.

Die Nachricht trägt keine Nutzlast.

kMsgType_ImageQuery

Eine Anfragenachricht, die vom Client an den Server gesendet wird.

Das Format wird mit der ImageQuery-Klasse definiert.

kMsgType_ImageQueryResponse

Eine Nachricht, die als Antwort auf eine erfolgreiche Bildanfragenachricht generiert wird.

Das Format wird durch die Klasse ImageQueryResponse festgelegt.

kMsgType_ImageQueryStatus

Eine Nachricht, die als Antwort auf eine fehlgeschlagene Nachricht für eine Bildabfrage generiert wurde.

Seine Nutzlast ist nl::Weave::Profiles::StatusReporting::StatusReport mit den zusätzlichen Statusinformationen aus SoftwareUpdateStatusCodes.

kMsgType_NotifyResponse

Eine als Antwort auf die Downloadbenachrichtigung generierte Nachricht.

Seine Nutzlast ist nl::Weave::Profiles::StatusReporting::StatusReport mit den zusätzlichen Statusinformationen aus SoftwareUpdateStatusCodes.

kMsgType_UpdateNotify

Eine optionale Nachricht vom Client an den Server, über die der endgültige Status des Updates kommuniziert wird.

Seine Nutzlast ist nl::Weave::Profiles::StatusReporting::StatusReport mit den zusätzlichen Statusinformationen aus SoftwareUpdateStatusCodes. Da die Nachricht voraussichtlich nach der eigentlichen Aktualisierung generiert werden soll, wird sie in einem neuen ExchangeContext gesendet und auf dem Server als unerwünschte Nachricht behandelt.

@310

 @310

Profilspezifische Statuscodes für SoftwareUpdate.

Attribute
kStatus_Abort

Server => client, gibt an, dass der Client aufgeben soll, da dem Server keine Optionen mehr zur Verfügung stehen.

kStatus_DownloadFailed

Kunde => Server gibt an, dass ein versuchter Download fehlgeschlagen ist.

kStatus_IntegrityCheckFailed

Kunde => Server gibt an, dass ein Image heruntergeladen wurde, aber die nachfolgende Integritätsprüfung nicht bestanden hat.

kStatus_InvalidInstructions

Kunde => Server gibt an, dass der Client ein Bild nicht herunterladen konnte, da die Downloadanleitung in ImageQueryResponse enthalten ist, d.h.

URI, Aktualisierungsschema oder Aktualisierungsbedingung, falsch formatiert oder inkonsistent waren.

kStatus_NoUpdateAvailable

Server => client, zeigt an, dass eine Bildanfrage empfangen und verstanden wurde und dass der Server derzeit keine Aktualisierung für den Client hat.

kStatus_Retry

Server => client, gibt an, dass der Client eine weitere Image-Anfrage senden und das Update neu starten bzw. fortsetzen soll.

kStatus_UpdateFailed

Kunde => server gibt an, dass die Installation eines vom Server angegebenen Images fehlgeschlagen ist.

@311

 @311

Steuerungs-Flags für das Steuerfeld des Frames ImageQuery.

Attribute
kFlag_LocaleSpecPresent

Die Locale-Spezifikation ist in der ImageQuery enthalten.

kFlag_PackageSpecPresent

Eine Paketspezifikation ist in der ImageQuery vorhanden.

kFlag_TargetNodeIdPresent

Die Zielknoten-ID ist in ImageQuery vorhanden.

@312

 @312

Bitmasken für das optionale Feld mit den Aktualisierungsoptionen von ImageQueryResponse.

@313

 @313

Verschiebungs-Offsets für das optionale Feld mit den Aktualisierungsoptionen von ImageQueryResponse.

@314

 @314

Integritätstypen, die vom Profil SoftwareUpdate unterstützt werden.

Der Bildabfrage-Frame enthält Informationen darüber, welche Integritätsprüfung der Client unterstützt, und die Antwort auf die Bildabfrage enthält einen Integritätstyp und einen Wert für das Image, das der Client herunterladen und installieren soll. Folgende Typen werden unterstützt:

Attribute
kIntegrityType_Last

Anzahl gültiger Elemente in der Aufzählung.

kIntegrityType_SHA160

Sicherer 160-Bit-Hash (SHA-1) erforderlich.

kIntegrityType_SHA256

Sicherer 256-Bit-Hash (SHA-2).

kIntegrityType_SHA512

Sicherer 512-Bit-Hash (SHA-2).

@315

 @315

Längen in Byte für die Bytestrings der Integritätsspezifikation.

@316

 @316

Aktualisieren Sie die vom SofwareUpdate-Profil unterstützten Schemas.

Ähnlich wie bei den unterstützten Integritätstypen enthält die Image-Abfrage Informationen darüber, welche Aktualisierungsschemas, d.h. Download-Protokolle, vom Client unterstützt werden, und die Antwort enthält einen Wert zur Angabe des Aktualisierungsschemas, das beim Herunterladen der Images verwendet werden soll. Folgende Schemas werden unterstützt:

Attribute
kUpdateScheme_BDX

Die Datenübertragung von Weave-Massen-Daten soll als Download-Protokoll verwendet werden.

kUpdateScheme_HTTP

HTTP soll als Download-Protokoll verwendet werden.

kUpdateScheme_HTTPS

Als Downloadprotokoll soll HTTPS verwendet werden.

kUpdateScheme_Last

Anzahl gültiger Elemente in der Aufzählung.

kUpdateScheme_SFTP

SFTP wird als Download-Protokoll verwendet.

@317

 @317

Datenelement-Tags für das Profil SoftwareUpdate.

UpdateCondition

 UpdateCondition

Bedingungen für die Aktualisierungsrichtlinie.

Attribute
IfLater

Laden Sie das Image herunter und installieren Sie es, wenn die Versionsspezifikation im Antwortframe nach der aktuell installierten Softwareversion liegt.

IfUnmatched

Laden Sie das Image herunter und installieren Sie es, wenn die Versionsspezifikation im Antwortframe nicht mit der aktuell installierten Softwareversion übereinstimmt.

OnOptIn

das Image auf einen Auslöser herunterladen und installieren, der von einem Nutzer vor Ort bereitgestellt wird.

Unconditionally

Das Image herunterladen und installieren, unabhängig von der aktuell ausgeführten Softwareversion.

UpdatePriority

 UpdatePriority

Prioritäten aktualisieren

Attribute
Critical

Die Aktualisierung muss sofort ausgeführt werden.

Normal

Aktualisierungen können nach Ermessen des Kunden ausgeführt werden.

Funktionen

integrityLength

int integrityLength(
  uint8_t aType
)

Eine unterstützte Methode, die die IntegrityTypes-Werte den Längen der Hashes dieses Typs zuordnet.

Details
Parameter
[in] aType
Einen IntegrityTypes-Wert
Rückgabe
Länge des Hash des angegebenen Hash-Typs.