Optional
hardwareThe value of this field, if present, shall contain the OTA Requestor’s hardware version, and shall be equal to the HardwareVersion attribute of the Basic Information Cluster.
Optional
locationThe location, if present, shall provide the same value as the Basic Information Cluster Location attribute for the OTA Requestor as configured. This may be used by the OTA Provider logic to allow per-region selection of the Software Image.
Optional
metadataThis optional field, if present, shall consist of a top-level anonymous list; each list element shall have a profile-specific tag encoded in fully-qualified form. Each list element shall contain a manufacturer-specific payload, which the OTA Requestor invoking this command wants to expose to the receiving OTA Provider. This payload may be used for any purpose and SHOULD be as small as practical.
The use of this field SHOULD be restricted to Vendor-specific usage and shall NOT be used as a selector required to match for the selection of a Software Image in production environments, unless absolutely necessary, as the interpretation of this field may be ambiguous to OTA Providers implementing the Cluster in a compliant but divergent way from the sender.
An example of usage for this field is for an OTA Requestor to provide specific data about grouping or authentication in field trial environments, where the OTA Provider is likely to understand it and be able to act upon it, either for special selection of image, or recording of activity.
An OTA Provider shall report the availability of Software Images, if one is found to be applicable using the other provided fields, even if the MetadataForProvider field is deemed to contain invalid or unknown information. That is, the contents of the MetadataForProvider field shall NOT be used to deny a software update to an OTA Requestor, unless both OTA Requestor and OTA Provider have an externally agreed-upon policy whereby strictly correct additional MetadataForProvider is expected to fulfill the OTA Software Update process.
Usage of the QueryImage Command
OTA Requestors shall send a QueryImage command to the OTA Provider to determine the availability of a new Software Image.
See Section 11.20.3.2, “Querying the OTA Provider” for full details about the OTA Software Update Query flow which makes use of this command.
The value shall be the Product ID applying to the OTA Requestor’s Node and shall match the value reported by the Basic Information Cluster ProductID attribute.
This field shall contain a list of all download protocols supported by the OTA Requestor.
This field shall be used by the OTA Provider to generate the correct URI for the location of the Software Image when one is found to be available. The values of BDX Synchronous and BDX Asynchronous shall always be supported by an OTA Provider. Furthermore, OTA Providers with access to external networking SHOULD support the HTTPS protocol. OTA Providers may support other protocols.
The algorithm to select the specific protocol to use in a given Software Image URI is implementation-dependent, provided that the rules in Section 11.20.3.3.1, “Download Protocol selection” are followed.
See Section 11.20.3.2, “Querying the OTA Provider” and Section 11.20.3.5, “Transfer of OTA Software Update images” for more details about usage of this field.
Optional
requestorThis field shall be set to true by an OTA Requestor that is capable of obtaining user consent for OTA application by virtue of built-in user interface capabilities. Otherwise, it shall be false.
See Section 11.20.3.4, “Obtaining user consent for updating software” for application details about usage.
The SoftwareVersion included in the request payload shall provide the value representing the current version running on the OTA Requestor invoking the command. This version shall be equal to the Software Version attribute of the Basic Information Cluster.
The value shall be the Vendor ID applying to the OTA Requestor’s Node and shall match the value reported by the Basic Information Cluster VendorID attribute.
Input to the OtaSoftwareUpdateProvider queryImage command
See
MatterSpecification.v13.Core § 11.20.6.5.1