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
Bitmasks สำหรับช่องตัวเลือกการอัปเดตที่ไม่บังคับของ 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

เซิร์ฟเวอร์ => แสดงว่าไคลเอนต์ควรยกเลิก เนื่องจากเซิร์ฟเวอร์ไม่สามารถใช้งานได้

kStatus_DownloadFailed

ลูกค้า => เซิร์ฟเวอร์ จะแสดงว่าการพยายามดาวน์โหลดล้มเหลว

kStatus_IntegrityCheckFailed

ลูกค้า => จะแสดงว่ามีการดาวน์โหลดรูปภาพแล้ว แต่ผ่านการตรวจสอบความสมบูรณ์ในครั้งต่อๆ ไป

kStatus_InvalidInstructions

ลูกค้า => แสดงว่าไคลเอ็นต์ไม่สามารถดาวน์โหลดรูปภาพได้ เนื่องจากคำแนะนำในการดาวน์โหลดที่มีอยู่ใน ImageQueryResponse คือ

URI, รูปแบบการอัปเดต, เงื่อนไขการอัปเดต มีรูปแบบไม่ถูกต้องหรือไม่สอดคล้องกัน

kStatus_NoUpdateAvailable

เซิร์ฟเวอร์ => แสดงว่าได้รับและทำความเข้าใจข้อความค้นหารูปภาพแล้ว และเซิร์ฟเวอร์ไม่มีการอัปเดตสำหรับไคลเอ็นต์ในขณะนี้

kStatus_Retry

เซิร์ฟเวอร์ => ระบุว่าไคลเอ็นต์ควรส่งการค้นหารูปภาพอีกรายการหนึ่ง แล้วรีสตาร์ท/ดำเนินการอัปเดตต่อ

kStatus_UpdateFailed

ลูกค้า => แสดงว่าการพยายามติดตั้งอิมเมจที่เซิร์ฟเวอร์ระบุล้มเหลว

@311

 @311

แฟล็กควบคุมสำหรับช่องควบคุมของเฟรม ImageQuery

พร็อพเพอร์ตี้
kFlag_LocaleSpecPresent

มีข้อกำหนด Locale ใน ImageQuery

kFlag_PackageSpecPresent

ข้อกำหนดแพ็กเกจมีอยู่ใน ImageQuery

kFlag_TargetNodeIdPresent

รหัสโหนดเป้าหมายจะแสดงอยู่ใน ImageQuery

@312

 @312

Bitmasks สำหรับช่องตัวเลือกการอัปเดตที่ไม่บังคับของ ImageQueryResponse

@313

 @313

การเปลี่ยนออฟเซ็ตสำหรับช่องตัวเลือกการอัปเดตที่ไม่บังคับของ ImageQueryResponse

@314

 @314

ประเภทความสมบูรณ์ที่โปรไฟล์ SoftwareUpdate รองรับ

เฟรมการค้นหารูปภาพมีข้อมูลเกี่ยวกับการตรวจสอบความสมบูรณ์ที่ไคลเอ็นต์รองรับ และการตอบกลับการค้นหารูปภาพจะมีประเภทและค่าความสมบูรณ์สำหรับอิมเมจที่ไคลเอ็นต์ได้รับคำสั่งให้ดาวน์โหลดและติดตั้ง ประเภทที่รองรับมีดังนี้

พร็อพเพอร์ตี้
kIntegrityType_Last

จำนวนขององค์ประกอบที่ถูกต้องในการแจงนับ

kIntegrityType_SHA160

ต้องระบุ Secure Hash 160 บิต (SHA-1)

kIntegrityType_SHA256

Secure Hash 256 บิต (SHA-2)

kIntegrityType_SHA512

512 บิต, Secure Hash (SHA-2)

@315

 @315

ความยาวเป็นไบต์สำหรับไบต์สตริงของข้อกำหนดความสมบูรณ์

@316

 @316

อัปเดตรูปแบบที่โปรไฟล์ SofwareUpdate รองรับ

เช่นเดียวกับประเภทความสมบูรณ์ที่รองรับ การค้นหารูปภาพจะมีข้อมูลเกี่ยวกับรูปแบบการอัปเดต เช่น โปรโตคอลการดาวน์โหลด ไคลเอ็นต์รองรับ และการตอบกลับมีค่าสำหรับระบุรูปแบบการอัปเดตที่จะใช้ในการดาวน์โหลดรูปภาพ สคีมที่รองรับมีดังนี้

พร็อพเพอร์ตี้
kUpdateScheme_BDX

จะต้องใช้การโอนข้อมูล Weave Bulk เป็นโปรโตคอลการดาวน์โหลด

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
ค่า IntegrityTypes
การคืนสินค้า
ความยาวของแฮชของประเภทแฮชที่ระบุ