nl::Weave::Profiles::SoftwareUpdate

この名前空間には、Weave ソフトウェア アップデート プロファイル用の Weave 内のすべてのインターフェースが含まれ、これには、対応する同じ名前のプロトコルが含まれます。

概要

列挙型

@309{
  kMsgType_ImageAnnounce = 0,
  kMsgType_ImageQuery = 1,
  kMsgType_ImageQueryResponse = 2,
  kMsgType_DownloadNotify = 3,
  kMsgType_NotifyResponse = 4,
  kMsgType_UpdateNotify = 5,
  kMsgType_ImageQueryStatus = 6
}
enum
SoftwareUpdate メッセージのタイプ。
@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
ImageQuery フレームのコントロール フィールドの制御フラグ。
@312 enum
ImageQueryResponse のオプションの更新オプション フィールドのビットマスク。
@313 enum
ImageQueryResponse のオプションの更新オプション フィールドのシフト オフセット。
@314{
  kIntegrityType_SHA160 = 0,
  kIntegrityType_SHA256 = 1,
  kIntegrityType_SHA512 = 2,
  kIntegrityType_Last = 3
}
enum
@315 enum
整合性仕様のバイト文字列の長さ(バイト単位)。
@316{
  kUpdateScheme_HTTP = 0,
  kUpdateScheme_HTTPS = 1,
  kUpdateScheme_SFTP = 2,
  kUpdateScheme_BDX = 3,
  kUpdateScheme_Last = 4
}
enum
@317 enum
SoftwareUpdate プロファイルのデータ要素タグ。
UpdateCondition{
  IfUnmatched,
  IfLater,
  Unconditionally,
  OnOptIn
}
enum
更新ポリシーに適用される条件。
UpdatePriority{
  Normal,
  Critical
}
enum
優先度を更新する。

関数

integrityLength(uint8_t aType)
int
IntegrityTypes の値をその型のハッシュの長さにマッピングするサポート メソッド。

クラス

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

WeaveImageAnnounceServer デリゲートのインターフェース。

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

ImageAnnounce メッセージを記述するクラス。

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

画像クエリ メッセージの作成とデコードをサポートするクラス。

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

画像クエリ レスポンス メッセージの作成とデコードをサポートするクラス。

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

ソフトウェア アップデート イメージの整合性タイプと実際のハッシュを保持する補助クラス。

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

画像クエリの一部として完全性タイプのリストを保持するための補助クラス。

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

商品データ仕様を表す補助クラス。

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

画像クエリの一部として更新スキームのリストを保持する補助クラス。

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

Weave イメージの通知をリッスンするサーバー。

列挙型

@309

 @309

SoftwareUpdate メッセージのタイプ。

プロパティ
kMsgType_DownloadNotify

クライアントからサーバーに送信されるメッセージ(省略可)。ダウンロード ステータスをサーバーに通知するために使用されます。

ペイロードは nl::Weave::Profiles::StatusReporting::StatusReport であり、SoftwareUpdateStatusCodes から取得した追加のステータス情報が含まれています。

kMsgType_ImageAnnounce

ソフトウェア アップデートが利用可能になったことをサーバーが通知するために使用される、任意の未承諾メッセージ。

メッセージにペイロードは含まれません。

kMsgType_ImageQuery

クライアントからサーバーに送信されるクエリ メッセージ。

その形式は ImageQuery クラスで定義します。

kMsgType_ImageQueryResponse

成功した画像クエリ メッセージに応答して生成されたメッセージ。

その形式は ImageQueryResponse クラスで定義されます。

kMsgType_ImageQueryStatus

失敗した画像クエリ メッセージに対応して生成されたメッセージ。

ペイロードは nl::Weave::Profiles::StatusReporting::StatusReport であり、SoftwareUpdateStatusCodes から取得した追加のステータス情報が含まれています。

kMsgType_NotifyResponse

ダウンロード通知メッセージに応答して生成されたメッセージ。

ペイロードは nl::Weave::Profiles::StatusReporting::StatusReport であり、SoftwareUpdateStatusCodes から取得した追加のステータス情報が含まれています。

kMsgType_UpdateNotify

クライアントからサーバーへのメッセージ(省略可)。更新の最終ステータスを伝えるために使用します。

ペイロードは nl::Weave::Profiles::StatusReporting::StatusReport であり、SoftwareUpdateStatusCodes から取得した追加のステータス情報が含まれています。このメッセージは実際の更新後に生成されるため、新しい ExchangeContext で送信され、サーバー上では未承諾のメッセージとして扱われます。

@310

 @310

SoftwareUpdate プロファイル固有のステータス コード。

プロパティ
kStatus_Abort

サーバー =>client は、サーバーにオプションがないため、クライアントが断念する必要があることを示します。

kStatus_DownloadFailed

クライアント =>ダウンロードに失敗したことを示します。

kStatus_IntegrityCheckFailed

クライアント =>イメージがダウンロードされたものの、その後の整合性チェックに失敗したことを示します。

kStatus_InvalidInstructions

クライアント =>server は、ImageQueryResponse に含まれるダウンロード手順が原因でクライアントが画像をダウンロードできなかったことを示します。つまり、

URI、更新スキーム、更新条件、形式が正しくないか一貫性がありません。

kStatus_NoUpdateAvailable

サーバー =>client は、画像クエリが受信され、認識されたこと、およびサーバーが現時点ではクライアントの更新を行っていないことを示します。

kStatus_Retry

サーバー =>クライアントが別の画像クエリを送信し、更新を再開/続行する必要があることを示します。

kStatus_UpdateFailed

クライアント =>server は、サーバーで指定されたイメージのインストールが失敗したことを示します。

@311

 @311

ImageQuery フレームのコントロール フィールドの制御フラグ。

プロパティ
kFlag_LocaleSpecPresent

Locale の仕様は ImageQuery 内にあります。

kFlag_PackageSpecPresent

パッケージの仕様は ImageQuery に存在します。

kFlag_TargetNodeIdPresent

ターゲット ノード ID が ImageQuery に存在する。

@312

 @312

ImageQueryResponse のオプションの更新オプション フィールドのビットマスク。

@313

 @313

ImageQueryResponse のオプションの更新オプション フィールドのシフト オフセット。

@314

 @314

SoftwareUpdate プロファイルでサポートされている整合性タイプ。

画像クエリ フレームには、クライアントがサポートする整合性チェックに関する情報が含まれ、画像クエリのレスポンスには、クライアントにダウンロードしてインストールするように指示されている画像の整合性タイプと値が含まれます。指定できるタイプは次のとおりです:

プロパティ
kIntegrityType_Last

列挙型内の有効な要素の数。

kIntegrityType_SHA160

160 ビットのセキュア ハッシュ(SHA-1)が必須。

kIntegrityType_SHA256

256 ビットのセキュア ハッシュ(SHA-2)。

kIntegrityType_SHA512

512 ビットのセキュア ハッシュ(SHA-2)。

@315

 @315

整合性仕様のバイト文字列の長さ(バイト単位)。

@316

 @316

SofwareUpdate プロファイルでサポートされているアップデート スキーム。

サポートされている完全性タイプと同様に、画像クエリにはどの更新スキーム(クライアントがサポートするダウンロード プロトコル)に関する情報が含まれ、レスポンスにはイメージのダウンロードに使用する更新スキームを示す値が含まれます。サポートされているスキームは次のとおりです。

プロパティ
kUpdateScheme_BDX

ダウンロード プロトコルとして Weave Bulk Data Transfer を使用します。

kUpdateScheme_HTTP

ダウンロード プロトコルには HTTP を使用します。

kUpdateScheme_HTTPS

ダウンロード プロトコルには HTTPS を使用します。

kUpdateScheme_Last

列挙型内の有効な要素の数。

kUpdateScheme_SFTP

ダウンロード プロトコルには SFTP を使用します。

@317

 @317

SoftwareUpdate プロファイルのデータ要素タグ。

UpdateCondition

 UpdateCondition

更新ポリシーに適用される条件。

プロパティ
IfLater

レスポンス フレームのバージョン仕様が、現在インストールされているソフトウェア バージョンより新しい場合は、イメージをダウンロードしてインストールします。

IfUnmatched

レスポンス フレームのバージョン仕様が現在インストールされているソフトウェア バージョンと一致しない場合は、イメージをダウンロードしてインストールします。

OnOptIn

オンサイトのユーザーが用意したトリガーで イメージをダウンロードしてインストールします

Unconditionally

現在実行中のソフトウェア バージョンに関係なく、イメージをダウンロードしてインストールします。

UpdatePriority

 UpdatePriority

優先度を更新する。

プロパティ
Critical

更新は直ちに実行する必要があります。

Normal

更新はクライアントの裁量で実施される場合があります。

関数

integrityLength

int integrityLength(
  uint8_t aType
)

IntegrityTypes の値をその型のハッシュの長さにマッピングするサポート メソッド。

詳細
パラメータ
[in] aType
戻り値
指定されたハッシュタイプのハッシュの長さ。