nl::Weave::Profiles::SoftwareUpdate

इस नेमस्पेस में 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

सर्वर => क्लाइंट विकल्प से यह पता चलता है कि क्लाइंट को छोड़ देना चाहिए, क्योंकि सर्वर के पास विकल्प नहीं होते हैं.

kStatus_DownloadFailed

क्लाइंट => सर्वर से पता चलता है कि किसी डाउनलोड की कोशिश की गई.

kStatus_IntegrityCheckFailed

क्लाइंट => सर्वर से पता चलता है कि कोई इमेज डाउनलोड की गई थी, लेकिन वह पूरी सुरक्षा की जांच में सफल नहीं रही.

kStatus_InvalidInstructions

क्लाइंट => सर्वर से पता चलता है कि क्लाइंट इमेज को डाउनलोड नहीं कर सका, क्योंकि ImageQueryResponse में दिए गए डाउनलोड करने के निर्देश हैं, जैसे कि

यूआरआई, अपडेट स्कीम, अपडेट की स्थिति, खराब तरीके से बनाई गई थी या अलग-अलग थी.

kStatus_NoUpdateAvailable

सर्वर => क्लाइंट से पता चलता है कि एक इमेज क्वेरी मिल गई है और समझ गई है. साथ ही, सर्वर के पास क्लाइंट के लिए इस समय कोई अपडेट नहीं है.

kStatus_Retry

सर्वर => क्लाइंट से पता चलता है कि क्लाइंट को दूसरी इमेज क्वेरी सबमिट करनी चाहिए और अपडेट फिर से शुरू करना चाहिए/जारी रखना चाहिए

kStatus_UpdateFailed

क्लाइंट => सर्वर से पता चलता है कि सर्वर से मिली इमेज को इंस्टॉल करने की कोशिश नाकाम रही.

@311

 @311

ImageQuery फ़्रेम के कंट्रोल फ़ील्ड के लिए फ़्लैग कंट्रोल करें.

प्रॉपर्टी
kFlag_LocaleSpecPresent

ImageQuery में Locale के बारे में खास जानकारी मौजूद है.

kFlag_PackageSpecPresent

पैकेज की खास बातें ImageQuery में मौजूद हैं.

kFlag_TargetNodeIdPresent

टारगेट नोड आईडी, ImageQuery में मौजूद है.

@312

 @312

ImageQueryResponse के वैकल्पिक अपडेट के विकल्पों वाले फ़ील्ड के लिए, बिटमास्क.

@313

 @313

ImageQueryResponse के वैकल्पिक अपडेट के विकल्पों वाले फ़ील्ड के लिए, ऑफ़सेट ऑफ़सेट करें.

@314

 @314

SoftwareUpdate प्रोफ़ाइल के साथ काम करने वाले Integrity किस तरह के हैं.

इमेज क्वेरी फ़्रेम में यह जानकारी होती है कि क्लाइंट किस इंटिग्रिटी की जांच करता है. साथ ही, इमेज क्वेरी के जवाब में इंटिग्रिटी टाइप और उस इमेज के लिए वैल्यू शामिल होती है जिसे डाउनलोड और इंस्टॉल करने के लिए क्लाइंट को निर्देश दिया जा रहा है. काम करने वाले तरीकों में ये शामिल हैं:

प्रॉपर्टी
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

एचटीटीपी का इस्तेमाल, डाउनलोड प्रोटोकॉल के तौर पर किया जाएगा.

kUpdateScheme_HTTPS

एचटीटीपीएस का इस्तेमाल, डाउनलोड प्रोटोकॉल के तौर पर किया जाएगा.

kUpdateScheme_Last

गिनती में मान्य एलिमेंट की संख्या.

kUpdateScheme_SFTP

एसएफ़टीपी का इस्तेमाल डाउनलोड प्रोटोकॉल के तौर पर किया जाएगा.

@317

 @317

SoftwareUpdate प्रोफ़ाइल के लिए डेटा एलिमेंट टैग.

UpdateCondition

 UpdateCondition

अपडेट की नीति को कंट्रोल करने वाली शर्तें.

प्रॉपर्टी
IfLater

अगर रिस्पॉन्स फ़्रेम में मौजूद वर्शन स्पेसिफ़िकेशन, इंस्टॉल किए गए सॉफ़्टवेयर वर्शन के बाद के हैं, तो इमेज को डाउनलोड और इंस्टॉल करें.

IfUnmatched

अगर रिस्पॉन्स फ़्रेम में मौजूद वर्शन स्पेसिफ़िकेशन, इंस्टॉल किए गए सॉफ़्टवेयर वर्शन से मेल नहीं खाते हैं, तो इमेज को डाउनलोड और इंस्टॉल करें.

OnOptIn

ऑन-साइट उपयोगकर्ता से मिले कुछ ट्रिगर में इमेज को डाउनलोड और इंस्टॉल करना.

Unconditionally

वर्तमान में चल रहे सॉफ़्टवेयर वर्शन पर ध्यान दिए बिना चित्र को डाउनलोड और इंस्टॉल करें.

UpdatePriority

 UpdatePriority

प्राथमिकताएं अपडेट करें.

प्रॉपर्टी
Critical

अपडेट तुरंत लागू हो जाना चाहिए.

Normal

अपडेट को क्लाइंट के विवेक के आधार पर लागू किया जा सकता है.

फ़ंक्शन

integrityLength

int integrityLength(
  uint8_t aType
)

IntegrityTypes की वैल्यू को उस टाइप के हैश की लंबाई के साथ मैप करने वाला सहायता का तरीका.

ब्यौरा
पैरामीटर
[in] aType
IntegrityTypes की वैल्यू
लौटाए जाने वाले प्रॉडक्ट
दिए गए हैश टाइप के हैश की लंबाई.