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

클라이언트에서 서버로 보내는 선택적 메시지입니다 . 다운로드 상태를 서버에 알리는 데 사용됩니다.

페이로드는 SoftwareUpdateStatusCodes에서 가져온 추가 상태 정보가 있는 nl::Weave::Profiles::StatusReporting::StatusReport입니다.

kMsgType_ImageAnnounce

서버에서 소프트웨어 업데이트 가능 여부를 알리는 데 사용하는 원치 않는 메시지(선택사항)입니다.

메시지는 페이로드를 전달하지 않습니다.

kMsgType_ImageQuery

클라이언트가 서버로 보낸 쿼리 메시지입니다.

형식은 ImageQuery 클래스로 정의됩니다.

kMsgType_ImageQueryResponse

성공적인 이미지 쿼리 메시지에 대한 응답으로 생성되는 메시지입니다.

형식은 ImageQueryResponse 클래스에 의해 정의됩니다.

kMsgType_ImageQueryStatus

실패한 이미지 쿼리 메시지에 대한 응답으로 생성된 메시지입니다.

페이로드는 SoftwareUpdateStatusCodes에서 가져온 추가 상태 정보가 있는 nl::Weave::Profiles::StatusReporting::StatusReport입니다.

kMsgType_NotifyResponse

다운로드 알림 메시지에 대한 응답으로 생성된 메시지입니다.

페이로드는 SoftwareUpdateStatusCodes에서 가져온 추가 상태 정보가 있는 nl::Weave::Profiles::StatusReporting::StatusReport입니다.

kMsgType_UpdateNotify

업데이트의 최종 상태를 전달하는 데 사용되는 클라이언트에서 서버로 보내는 선택적 메시지입니다.

페이로드는 SoftwareUpdateStatusCodes에서 가져온 추가 상태 정보가 있는 nl::Weave::Profiles::StatusReporting::StatusReport입니다. 메시지는 실제 업데이트 후에 생성될 것으로 예상되므로 새 ExchangeContext로 전송되고 서버에서 요청하지 않은 메시지로 처리됩니다.

@310

 @310

SoftwareUpdate 프로필별 상태 코드입니다.

속성
kStatus_Abort

서버 => client는 서버가 옵션을 사용할 수 없기 때문에 클라이언트가 포기해야 함을 나타냅니다.

kStatus_DownloadFailed

고객 => 이는 다운로드 시도가 실패했음을 나타냅니다.

kStatus_IntegrityCheckFailed

고객 => 이는 이미지가 다운로드되었지만 이후의 무결성 검사에 실패했음을 나타냅니다.

kStatus_InvalidInstructions

고객 => 이는 클라이언트가 ImageQueryResponse에 포함된 다운로드 안내, 즉

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

kStatus_NoUpdateAvailable

서버 => 클라이언트는 이미지 쿼리를 수신하여 이해했으며 서버에 현재 클라이언트에 대한 업데이트가 없음을 나타냅니다.

kStatus_Retry

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

kStatus_UpdateFailed

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

@311

 @311

ImageQuery 프레임의 제어 필드에 대한 제어 플래그입니다.

속성
kFlag_LocaleSpecPresent

ImageQueryLocale 사양이 있습니다.

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 대량 데이터 전송이 다운로드 프로토콜로 사용되어야 합니다.

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
반환
제공된 해시 유형의 해시 길이입니다.