nl::매서::프로필::소프트웨어 업데이트

이 네임스페이스는 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
우선순위를 업데이트합니다.

Functions

integrityLength(uint8_t aType)
int
IntegrityTypes 값을 유형의 해시 길이에 매핑하는 지원 메서드

클래스

nl::Weave::프로필:소프트웨어 업데이트:IWeaveImageAnnounceServerDelegate

WeaveImageAnnounceServer 위임을 위한 인터페이스입니다.

nl::Weave::Profiles::소프트웨어 업데이트::ImageAnnounce

ImageAnnounce 메시지를 설명하는 클래스입니다.

nl::Weave::Profiles::소프트웨어 업데이트:이미지 쿼리

이미지 쿼리 메시지의 생성 및 디코딩을 지원하는 클래스입니다.

nl::Weave::Profiles::소프트웨어 업데이트::ImageQueryResponse

이미지 쿼리 응답 메시지의 생성 및 디코딩을 지원하는 클래스입니다.

nl::Weave::Profiles::소프트웨어 업데이트:무결성 사양

소프트웨어 유형 이미지의 무결성 유형과 실제 해시가 포함된 보조 클래스입니다.

nl::Weave::프로필::소프트웨어 업데이트::무결성 유형 목록

무결성 유형의 목록을 이미지 쿼리의 일부로 보유하는 보조 클래스입니다.

nl::Weave::Profiles::소프트웨어 업데이트::제품 사양

제품 사양을 나타내는 보조 클래스입니다.

nl::Weave::Profiles::소프트웨어 업데이트:UpdateSchemeList

업데이트 쿼리 목록을 이미지 쿼리의 일부로 보유하는 보조 클래스입니다.

nl::Weave::프로필::소프트웨어 업데이트::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

server => client, 서버에 서버가 없음으로 표시되어 클라이언트가 포기해야 함을 나타냅니다.

kStatus_DownloadFailed

client ▢gt, server: 서버에서 다운로드를 시도하지 못했음을 나타냅니다.

kStatus_IntegrityCheckFailed

client => server: 이미지가 다운로드되었지만 후속 무결성 검사에 실패했음을 나타냅니다.

kStatus_InvalidInstructions

client => server: 클라이언트가 ImageQueryResponse에 포함된 다운로드 안내(예:

URI, 업데이트 스키마, 업데이트 조건의 형식이 잘못되었거나 일관성이 없습니다.

kStatus_NoUpdateAvailable

server => client, 는 이미지 쿼리가 수신되고 이해되었으며 현재 클라이언트에 대한 업데이트가 없음을 나타냅니다.

kStatus_Retry

server => client: 클라이언트가 다른 이미지 쿼리를 제출하고 업데이트를 다시 시작/계속해야 함을 나타냅니다.

kStatus_UpdateFailed

client => server: 서버에 지정된 이미지를 설치하려는 시도가 실패했음을 나타냅니다.

@311

 @311

ImageQuery 프레임의 컨트롤 필드에 대한 컨트롤 플래그입니다.

속성
kFlag_LocaleSpecPresent

언어 사양은 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

우선순위를 업데이트합니다.

속성
Critical

업데이트는 즉시 실행되어야 합니다.

Normal

업데이트는 고객의 재량에 따라 실행될 수 있습니다.

Functions

무결성 길이

int integrityLength(
  uint8_t aType
)

IntegrityTypes 값을 유형의 해시 길이에 매핑하는 지원 메서드

세부정보
매개변수
[in] aType
반환
제공된 해시 유형의 해시 길이입니다.