Skip to content

Commit debbc2e

Browse files
committed
[Media] ZAP template XML sync with spec
[Media] ZAP template XML sync with spec
1 parent 443bb9c commit debbc2e

12 files changed

+235
-138
lines changed

src/app/zap-templates/zcl/data-model/chip/account-login-cluster.xml

+3-2
Original file line numberDiff line numberDiff line change
@@ -45,14 +45,15 @@ limitations under the License.
4545
<arg name="Node" type="node_id" optional="true"/>
4646
</command>
4747

48-
<command source="server" code="0x01" name="GetSetupPINResponse" optional="false" disableDefaultResponse="true">
48+
<command source="server" code="0x01" name="GetSetupPINResponse" optional="false" disableDefaultResponse="true" isFabricScoped="true">
4949
<description>This message is sent in response to the GetSetupPIN Request, and contains the Setup PIN code, or null when the accounts identified in the request does not match the active account of the running Content App.</description>
5050
<arg name="SetupPIN" type="char_string"/>
5151
</command>
5252

53-
<event side="server" code="0x00" priority="critical" name="LoggedOut" optional="false">
53+
<event side="server" code="0x00" priority="critical" name="LoggedOut" optional="true" isFabricSensitive="true">
5454
<description>This event can be used by the Content App to indicate that the current user has logged out. In response to this event, the Fabric Admin SHALL remove access to this Content App by the specified Node. If no Node is provided, then the Fabric Admin SHALL remove access to all non-Admin Nodes.</description>
5555
<field id="0" name="Node" type="node_id" optional="true"/>
56+
<access op="read" privilege="administer"/>
5657
</event>
5758

5859
</cluster>

src/app/zap-templates/zcl/data-model/chip/application-basic-cluster.xml

+1
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ limitations under the License.
2323
<define>APPLICATION_BASIC_CLUSTER</define>
2424
<client init="false" tick="false">true</client>
2525
<server init="false" tick="false">true</server>
26+
<globalAttribute code="0xFFFD" side="either" value="1"/>
2627
<description>This cluster provides information about an application running on a TV or media player device which is represented as an endpoint.</description>
2728
<attribute side="server" code="0x0000" define="APPLICATION_VENDOR_NAME" type="char_string" default="" length="32" writable="false" optional="true">VendorName</attribute>
2829
<attribute side="server" code="0x0001" define="APPLICATION_VENDOR_ID" type="vendor_id" default="0x0" min="0x0000" max="0xFFFF" writable="false" optional="true">VendorID</attribute>

src/app/zap-templates/zcl/data-model/chip/application-launcher-cluster.xml

+2-1
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ limitations under the License.
2323
<define>APPLICATION_LAUNCHER_CLUSTER</define>
2424
<client init="false" tick="false">true</client>
2525
<server init="false" tick="false">true</server>
26+
<globalAttribute code="0xFFFD" side="either" value="1"/>
2627
<description>This cluster provides an interface for launching content on a media player device such as a TV or Speaker.</description>
2728

2829
<features>
@@ -50,7 +51,7 @@ limitations under the License.
5051
<arg name="Application" type="ApplicationStruct" optional="true"/>
5152
</command>
5253

53-
<command source="server" code="0x03" name="LauncherResponse" optional="false">
54+
<command source="server" code="0x03" name="LauncherResponse" optional="false" disableDefaultResponse="true">
5455
<description>This command SHALL be generated in response to LaunchApp commands.</description>
5556
<arg name="Status" type="StatusEnum"/>
5657
<arg name="Data" type="octet_string" optional="true"/>

src/app/zap-templates/zcl/data-model/chip/channel-cluster.xml

+48-48
Original file line numberDiff line numberDiff line change
@@ -69,35 +69,35 @@ limitations under the License.
6969

7070
<command source="client" code="0x04" name="GetProgramGuide" response="ProgramGuideResponse" optional="true">
7171
<description>This command retrieves the program guide. It accepts several filter parameters to return specific schedule and program information from a content app. The command shall receive in response a ProgramGuideResponse.</description>
72-
<arg name="StartTime" type="epoch_s" optional="true"/>
73-
<arg name="EndTime" type="epoch_s" optional="true"/>
74-
<arg name="ChannelList" type="ChannelInfoStruct" array="true" optional="true"/>
75-
<arg name="PageToken" type="PageTokenStruct" optional="true"/>
76-
<arg name="RecordingFlag" type="RecordingFlagBitmap" optional="true"/>
77-
<arg name="ExternalIDList" type="AdditionalInfoStruct" array="true" optional="true"/>
78-
<arg name="Data" type="octet_string" optional="true"/>
72+
<arg id="0" name="StartTime" type="epoch_s"/>
73+
<arg id="1" name="EndTime" type="epoch_s"/>
74+
<arg id="2" name="ChannelList" type="ChannelInfoStruct" array="true" optional="true" length="255"/>
75+
<arg id="3" name="PageToken" type="PageTokenStruct" optional="true" isNullable="true"/>
76+
<arg id="5" name="RecordingFlag" type="RecordingFlagBitmap" optional="true" isNullable="true" min="0x00" max="0x07"/>
77+
<arg id="6" name="ExternalIDList" type="AdditionalInfoStruct" array="true" optional="true" length="255"/>
78+
<arg id="7" name="Data" type="octet_string" optional="true" length="8092"/>
7979
</command>
8080

81-
<command source="server" code="0x05" name="ProgramGuideResponse" optional="true" apiMaturity="provisional">
81+
<command source="server" code="0x05" name="ProgramGuideResponse" optional="true" apiMaturity="provisional" disableDefaultResponse="true">
8282
<description>This command is a response to the GetProgramGuide command.</description>
83-
<arg name="Paging" type="ChannelPagingStruct"/>
84-
<arg name="ProgramList" type="ProgramStruct" array="true"/>
83+
<arg id="0" name="Paging" type="ChannelPagingStruct"/>
84+
<arg id="1" name="ProgramList" type="ProgramStruct" array="true"/>
8585
</command>
8686

8787
<command source="client" code="0x06" name="RecordProgram" optional="true">
8888
<description>Record a specific program or series when it goes live. This functionality enables DVR recording features.</description>
89-
<arg name="ProgramIdentifier" type="char_string"/>
90-
<arg name="ShouldRecordSeries" type="boolean"/>
91-
<arg name="ExternalIDList" type="AdditionalInfoStruct" array="true"/>
92-
<arg name="Data" type="octet_string"/>
89+
<arg id="0" name="ProgramIdentifier" type="char_string" length="255"/>
90+
<arg id="1" name="ShouldRecordSeries" type="boolean"/>
91+
<arg id="2" name="ExternalIDList" type="AdditionalInfoStruct" array="true" optional="true" length="255"/>
92+
<arg id="3" name="Data" type="octet_string" optional="true" length="8092"/>
9393
</command>
9494

9595
<command source="client" code="0x07" name="CancelRecordProgram" optional="true">
9696
<description>Cancel recording for a specific program or series.</description>
97-
<arg name="ProgramIdentifier" type="char_string"/>
98-
<arg name="ShouldRecordSeries" type="boolean"/>
99-
<arg name="ExternalIDList" type="AdditionalInfoStruct" array="true"/>
100-
<arg name="Data" type="octet_string"/>
97+
<arg id="0" name="ProgramIdentifier" type="char_string" length="255"/>
98+
<arg id="1" name="ShouldRecordSeries" type="boolean"/>
99+
<arg id="2" name="ExternalIDList" type="AdditionalInfoStruct" array="true" optional="true" length="255"/>
100+
<arg id="3" name="Data" type="octet_string" optional="true" length="8092"/>
101101
</command>
102102

103103
</cluster>
@@ -123,50 +123,50 @@ limitations under the License.
123123

124124
<struct name="ProgramStruct">
125125
<cluster code="0x0504"/>
126-
<item name="Identifier" type="char_string" max="255" optional="false"/>
127-
<item name="Channel" type="ChannelInfoStruct" optional="false"/>
128-
<item name="StartTime" type="epoch_s" optional="false"/>
129-
<item name="EndTime" type="epoch_s" optional="false"/>
130-
<item name="Title" type="char_string" max="255" optional="false"/>
131-
<item name="Subtitle" type="char_string" max="255" default="" optional="true"/>
132-
<item name="Description" type="char_string" max="8192" default="" optional="true"/>
133-
<item name="AudioLanguages" type="char_string" array="true" max="10" default="" optional="true"/>
134-
<item name="Ratings" type="char_string" array="true" max="255" default="" optional="true"/>
135-
<item name="ThumbnailUrl" type="char_string" max="8192" default="" optional="true"/>
136-
<item name="PosterArtUrl" type="char_string" max="8192" default="" optional="true"/>
137-
<item name="DvbiUrl" type="char_string" max="8192" default="" optional="true"/>
138-
<item name="ReleaseDate" type="char_string" max="30" default="" optional="true"/>
139-
<item name="ParentalGuidanceText" type="char_string" max="255" default="" optional="true"/>
140-
<item name="RecordingFlag" type="RecordingFlagBitmap" optional="true"/>
141-
<item name="SeriesInfo" type="SeriesInfoStruct" default="0x0" isNullable="true" optional="true"/>
142-
<item name="CategoryList" type="ProgramCategoryStruct" array="true" max="255" default="" optional="true"/>
143-
<item name="CastList" type="ProgramCastStruct" array="true" max="255" default="" optional="true"/>
144-
<item name="ExternalIDList" type="ProgramCastStruct" array="true" max="255" default="" optional="true"/>
126+
<item fieldId="0" name="Identifier" type="char_string" length="255"/>
127+
<item fieldId="1" name="Channel" type="ChannelInfoStruct"/>
128+
<item fieldId="2" name="StartTime" type="epoch_s"/>
129+
<item fieldId="3" name="EndTime" type="epoch_s"/>
130+
<item fieldId="4" name="Title" type="char_string" length="255"/>
131+
<item fieldId="5" name="Subtitle" type="char_string" optional="true" length="255"/>
132+
<item fieldId="6" name="Description" type="long_char_string" optional="true" length="8192"/>
133+
<item fieldId="7" name="AudioLanguages" type="char_string" array="true" optional="true" length="10"/>
134+
<item fieldId="8" name="Ratings" type="char_string" array="true" optional="true" length="255"/>
135+
<item fieldId="9" name="ThumbnailUrl" type="long_char_string" optional="true" length="8192"/>
136+
<item fieldId="10" name="PosterArtUrl" type="long_char_string" optional="true" length="8192"/>
137+
<item fieldId="11" name="DvbiUrl" type="long_char_string" optional="true" length="8192"/>
138+
<item fieldId="12" name="ReleaseDate" type="char_string" optional="true" length="30"/>
139+
<item fieldId="13" name="ParentalGuidanceText" type="char_string" optional="true" length="255"/>
140+
<item fieldId="14" name="RecordingFlag" type="RecordingFlagBitmap" optional="true" min="0x00" max="0x07"/>
141+
<item fieldId="15" name="SeriesInfo" type="SeriesInfoStruct" isNullable="true" optional="true"/>
142+
<item fieldId="16" name="CategoryList" type="ProgramCategoryStruct" array="true" optional="true" length="255"/>
143+
<item fieldId="17" name="CastList" type="ProgramCastStruct" array="true" optional="true" length="255"/>
144+
<item fieldId="18" name="ExternalIDList" type="AdditionalInfoStruct" array="true" optional="true" length="255"/>
145145
</struct>
146146

147147
<struct name="SeriesInfoStruct">
148148
<cluster code="0x0504"/>
149-
<item name="Season" type="char_string" max="256" optional="false"/>
150-
<item name="Episode" type="char_string" max="256" optional="false"/>
149+
<item fieldId="0" name="Season" type="long_char_string" length="256"/>
150+
<item fieldId="1" name="Episode" type="long_char_string" length="256"/>
151151
</struct>
152152

153153
<struct name="ProgramCategoryStruct">
154154
<cluster code="0x0504"/>
155-
<item name="Category" type="char_string" max="256" optional="false"/>
156-
<item name="SubCategory" type="char_string" max="256" default="" optional="true"/>
155+
<item fieldId="0" name="Category" type="long_char_string" length="256"/>
156+
<item fieldId="1" name="SubCategory" type="long_char_string" optional="true" length="256"/>
157157
</struct>
158158

159159
<struct name="ProgramCastStruct">
160160
<cluster code="0x0504"/>
161-
<item name="Name" type="char_string" max="256" optional="false"/>
162-
<item name="Role" type="char_string" max="256" optional="false"/>
161+
<item fieldId="0" name="Name" type="long_char_string" length="256"/>
162+
<item fieldId="1" name="Role" type="long_char_string" length="256"/>
163163
</struct>
164164

165165
<struct name="PageTokenStruct">
166166
<cluster code="0x0504"/>
167-
<item name="Limit" type="int16u" default="0" optional="true"/>
168-
<item name="After" type="char_string" max="8192" default="" optional="true"/>
169-
<item name="Before" type="char_string" max="8192" default="" optional="true"/>
167+
<item fieldId="0" name="Limit" type="int16u" default="0" optional="true"/>
168+
<item fieldId="1" name="After" type="long_char_string" optional="true" length="8192"/>
169+
<item fieldId="2" name="Before" type="long_char_string" optional="true" length="8192"/>
170170
</struct>
171171

172172
<struct name="ChannelPagingStruct">
@@ -201,10 +201,10 @@ limitations under the License.
201201
<item name="OTT" value="0x03"/>
202202
</enum>
203203

204-
<bitmap name="RecordingFlagBitmap" type="bitmap32">
204+
<bitmap name="RecordingFlagBitmap" type="bitmap8">
205205
<cluster code="0x0504"/>
206206
<field name="Scheduled" mask="0x1"/>
207-
<field name="RecordSeries" mask="0x2"/>
207+
<field name="RecordSeries" mask="0x2"/>
208208
<field name="Recorded" mask="0x4"/>
209209
</bitmap>
210210

src/app/zap-templates/zcl/data-model/chip/content-app-observer-cluster.xml

+7-6
Original file line numberDiff line numberDiff line change
@@ -23,19 +23,20 @@ limitations under the License.
2323
<define>CONTENT_APP_OBSERVER_CLUSTER</define>
2424
<client init="false" tick="false">true</client>
2525
<server init="false" tick="false">true</server>
26+
<globalAttribute code="0xFFFD" side="either" value="1"/>
2627
<description>This cluster provides an interface for sending targeted commands to an Observer of a Content App on a Video Player device such as a Streaming Media Player, Smart TV or Smart Screen. The cluster server for Content App Observer is implemented by an endpoint that communicates with a Content App, such as a Casting Video Client. The cluster client for Content App Observer is implemented by a Content App endpoint. A Content App is informed of the NodeId of an Observer when a binding is set on the Content App. The Content App can then send the ContentAppMessage to the Observer (server cluster), and the Observer responds with a ContentAppMessageResponse.</description>
2728

2829
<command source="client" code="0x00" name="ContentAppMessage" response="ContentAppMessageResponse" optional="false">
2930
<description>Upon receipt, the data field MAY be parsed and interpreted. Message encoding is specific to the Content App. A Content App MAY when possible read attributes from the Basic Information Cluster on the Observer and use this to determine the Message encoding.</description>
30-
<arg name="Data" type="char_string" optional="true"/>
31-
<arg name="EncodingHint" type="char_string" optional="false"/>
31+
<arg id="0" name="Data" type="long_char_string" length="500"/>
32+
<arg id="1" name="EncodingHint" type="char_string" optional="true" length="100"/>
3233
</command>
3334

34-
<command source="server" code="0x01" name="ContentAppMessageResponse" optional="false" apiMaturity="provisional">
35+
<command source="server" code="0x01" name="ContentAppMessageResponse" optional="false" apiMaturity="provisional" disableDefaultResponse="true">
3536
<description>This command SHALL be generated in response to ContentAppMessage command.</description>
36-
<arg name="Status" type="StatusEnum" optional="false"/>
37-
<arg name="Data" type="char_string" optional="true"/>
38-
<arg name="EncodingHint" type="char_string" optional="true"/>
37+
<arg id="0" name="Status" type="StatusEnum" min="0x00" max="0x01"/>
38+
<arg id="1" name="Data" type="long_char_string" optional="true" length="500"/>
39+
<arg id="2" name="EncodingHint" type="char_string" optional="true" length="100"/>
3940
</command>
4041

4142
</cluster>

0 commit comments

Comments
 (0)