nl::Weave::Profiles::SoftwareUpdate

Dieser Namespace umfasst alle Weave-Schnittstellen für das Weave-Software-Update-Profil, einschließlich des entsprechenden Protokolls desselben Namens.

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
Steuer-Flags für das Steuerfeld des Frames ImageQuery.
@312 enum
Bitmasken für das optionale Feld für Aktualisierungsoptionen von ImageQueryResponse.
@313 enum
Verschiebt Offsets für das optionale Feld für 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 Supportmethode, die die IntegrityTypes-Werte den Längen der Hashes dieses Typs zuordnet.

Kurse

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

Schnittstelle für den WeaveImageAnnounceServer-Delegat.

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

Klasse, die die ImageAnnounce-Nachricht beschreibt.

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

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

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

Eine Klasse, die das Erstellen und Decodieren der Antwortnachrichten auf Bildanfragen unterstützt.

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

Eine Hilfsklasse, die den Integritätstyp und den tatsächlichen Hash des Software-Update-Images enthält.

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-Bildankündigungen wartet.

Aufzählungen

@309

 @309

SoftwareUpdate-Nachrichtentypen

Attribute
kMsgType_DownloadNotify

Eine optionale Nachricht vom Client an den Server, die verwendet wird, um den Server über den Downloadstatus zu informieren.

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

kMsgType_ImageAnnounce

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

Die Nachricht enthält keine Nutzlast.

kMsgType_ImageQuery

Eine vom Client an den Server gesendete Anfragenachricht.

Das Format wird mit der Klasse ImageQuery definiert.

kMsgType_ImageQueryResponse

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

Das Format wird von der Klasse ImageQueryResponse definiert.

kMsgType_ImageQueryStatus

Eine Nachricht, die als Antwort auf eine fehlgeschlagene Bildanfrage generiert wird.

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

kMsgType_NotifyResponse

Eine als Reaktion auf die Downloadbenachrichtigungsnachricht generierte Nachricht.

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

kMsgType_UpdateNotify

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

Die Nutzlast ist ein nl::Weave::Profiles::StatusReporting::StatusReport mit zusätzlichen Statusinformationen aus SoftwareUpdateStatusCodes. Da die Nachricht voraussichtlich nach einer tatsächlichen Aktualisierung generiert wird, wird sie in einem neuen ExchangeContext gesendet und auf dem Server als unerwünschte Nachricht behandelt.

@310

 @310

SoftwareUpdate-Profilspezifische Statuscodes.

Attribute
kStatus_Abort

server => client: Gibt an, dass der Client aufgeben soll, da der Server keine Optionen hat.

kStatus_DownloadFailed

client => server gibt an, dass ein versuchter Download fehlgeschlagen ist.

kStatus_IntegrityCheckFailed

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

kStatus_InvalidInstructions

client => server gibt an, dass der Client kein Image herunterladen konnte, da die Downloadanleitung in der ImageQueryResponse enthalten war, d.h.

URI, Aktualisierungsschema, Aktualisierungsbedingung, schlecht formatiert oder inkonsistent.

kStatus_NoUpdateAvailable

server => client: Gibt an, dass eine Bildanfrage empfangen und gelesen wurde und dass der Server zu diesem Zeitpunkt kein Update für den Client hat.

kStatus_Retry

server => client, gibt an, dass der Client eine weitere Image-Abfrage senden und das Update neu starten/fortsetzen soll

kStatus_UpdateFailed

client => server gibt an, dass der Versuch, ein vom Server angegebenes Image zu installieren, fehlgeschlagen ist.

@311

 @311

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

Attribute
kFlag_LocaleSpecPresent

Die Locale-Spezifikation ist in der ImageQuery vorhanden.

kFlag_PackageSpecPresent

Paketspezifikation ist in ImageQuery vorhanden.

kFlag_TargetNodeIdPresent

Die Zielknoten-ID ist in der ImageQuery vorhanden.

@312

 @312

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

@313

 @313

Verschiebt Offsets für das optionale Feld für Aktualisierungsoptionen von ImageQueryResponse.

@314

 @314

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

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

Attribute
kIntegrityType_Last

Anzahl der gültigen 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

Vom SofwareUpdate-Profil unterstützte Update-Schemas

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

Attribute
kUpdateScheme_BDX

Als Downloadprotokoll wird die Weave-Bulk-Datenübertragung verwendet.

kUpdateScheme_HTTP

HTTP wird als Download-Protokoll verwendet.

kUpdateScheme_HTTPS

HTTPS wird als Downloadprotokoll verwendet.

kUpdateScheme_Last

Anzahl der gültigen 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 Antwort-Frame höher ist als die aktuell installierte Softwareversion.

IfUnmatched

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

OnOptIn

das Bild über einen Trigger, der von einem Nutzer vor Ort bereitgestellt wird, herunterladen und installieren.

Unconditionally

Laden Sie das Image herunter und installieren Sie es unabhängig von der aktuell ausgeführten Softwareversion.

UpdatePriority

 UpdatePriority

Prioritäten aktualisieren.

Attribute
Critical

Das Update muss sofort ausgeführt werden.

Normal

Die Aktualisierung kann nach Ermessen des Kunden durchgeführt werden.

Funktionen

integrityLength

int integrityLength(
  uint8_t aType
)

Eine Supportmethode, die die IntegrityTypes-Werte den Längen der Hashes dieses Typs zuordnet.

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