Skip to content

Commit fa22323

Browse files
committed
XML changes to WebRTC cluster based on Spec fixes in Spec PR#11309
1 parent 1612d52 commit fa22323

File tree

2 files changed

+23
-18
lines changed

2 files changed

+23
-18
lines changed

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

+16-14
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ limitations under the License.
1818
XML generated by Alchemy; DO NOT EDIT.
1919
Source: src/app_clusters/WebRTC_Provider.adoc
2020
Parameters: in-progress
21-
Git: 0.7-summer-2025-5-g06c4d5596
21+
Git: 0.7-summer-2025-285-g2a2bd1961
2222
-->
2323
<configurator xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../zcl.xsd">
2424
<domain name="Cameras"/>
@@ -54,29 +54,31 @@ Git: 0.7-summer-2025-5-g06c4d5596
5454
<item fieldId="4" name="CAID" type="int16u" optional="true"/>
5555
</struct>
5656

57-
<struct name="WebRTCSessionStruct" apiMaturity="provisional">
57+
<struct name="WebRTCSessionStruct" apiMaturity="provisional" isFabricScoped="true">
5858
<cluster code="0x0553"/>
5959
<cluster code="0x0554"/>
6060
<item fieldId="1" name="ID" type="int16u"/>
6161
<item fieldId="2" name="PeerNodeID" type="node_id"/>
62-
<item fieldId="3" name="PeerFabricIndex" type="fabric_idx"/>
63-
<item fieldId="4" name="StreamUsage" type="StreamUsageEnum" min="0x00" max="0x03"/>
64-
<item fieldId="5" name="VideoStreamID" type="int16u" isNullable="true"/>
65-
<item fieldId="6" name="AudioStreamID" type="int16u" isNullable="true"/>
66-
<item fieldId="7" name="MetadataOptions" type="WebRTCMetadataOptionsBitmap" default="0x00" min="0x00" max="0x01"/>
62+
<item fieldId="3" name="StreamUsage" type="StreamUsageEnum" min="0x00" max="0x03"/>
63+
<item fieldId="4" name="VideoStreamID" type="int16u" isNullable="true"/>
64+
<item fieldId="5" name="AudioStreamID" type="int16u" isNullable="true"/>
65+
<item fieldId="6" name="MetadataOptions" type="WebRTCMetadataOptionsBitmap" default="0x00" min="0x00" max="0x01"/>
6766
</struct>
6867

6968
<cluster apiMaturity="provisional">
7069
<domain>Cameras</domain>
7170
<name>WebRTC Transport Provider</name>
7271
<code>0x0553</code>
7372
<define>WEB_RTC_TRANSPORT_PROVIDER_CLUSTER</define>
74-
<description>The WebRTC transport provider cluster provides a way for stream providers (e.g. Cameras) to stream or receive their data through WebRTC.</description>
73+
<description/>
7574
<client init="false" tick="false">true</client>
7675
<server init="false" tick="false">true</server>
7776
<globalAttribute code="0xFFFD" side="either" value="1"/>
78-
<attribute code="0x0000" side="server" define="CURRENT_SESSIONS" type="array" entryType="WebRTCSessionStruct">CurrentSessions</attribute>
79-
<command code="0x01" source="client" name="SolicitOffer" optional="false" response="SolicitOfferResponse">
77+
<attribute code="0x0000" side="server" define="CURRENT_SESSIONS" type="array" entryType="WebRTCSessionStruct">
78+
<description>CurrentSessions</description>
79+
<access op="read" privilege="manage"/>
80+
</attribute>
81+
<command code="0x01" source="client" name="SolicitOffer" isFabricScoped="true" optional="false" response="SolicitOfferResponse">
8082
<description>Requests that the Provider initiates a new session with the Offer / Answer flow in a way that allows for options to be passed and work with devices needing the standby flow.</description>
8183
<quality largeMessage="true"/>
8284
<arg id="1" name="StreamUsage" type="StreamUsageEnum" min="0x00" max="0x03"/>
@@ -96,7 +98,7 @@ Git: 0.7-summer-2025-5-g06c4d5596
9698
<arg id="4" name="AudioStreamID" type="int16u" optional="true" isNullable="true"/>
9799
</command>
98100

99-
<command code="0x03" source="client" name="ProvideOffer" optional="false" response="ProvideOfferResponse">
101+
<command code="0x03" source="client" name="ProvideOffer" isFabricScoped="true" optional="false" response="ProvideOfferResponse">
100102
<description>This command allows an SDP Offer to be set and start a new session.</description>
101103
<quality largeMessage="true"/>
102104
<arg id="1" name="WebRTCSessionID" type="int16u" isNullable="true"/>
@@ -117,21 +119,21 @@ Git: 0.7-summer-2025-5-g06c4d5596
117119
<arg id="3" name="AudioStreamID" type="int16u" optional="true" isNullable="true"/>
118120
</command>
119121

120-
<command code="0x05" source="client" name="ProvideAnswer" optional="false">
122+
<command code="0x05" source="client" name="ProvideAnswer" isFabricScoped="true" optional="false">
121123
<description>This command SHALL be initiated from a Node in response to an Offer that was previously received from a remote peer.</description>
122124
<quality largeMessage="true"/>
123125
<arg id="1" name="WebRTCSessionID" type="int16u"/>
124126
<arg id="2" name="SDP" type="char_string"/>
125127
</command>
126128

127-
<command code="0x06" source="client" name="ProvideICECandidates" optional="false">
129+
<command code="0x06" source="client" name="ProvideICECandidates" isFabricScoped="true" optional="false">
128130
<description>This command allows for string based https://rfc-editor.org/rfc/rfc8839#section-5.1 generated after the initial Offer / Answer exchange, via a JSEP https://datatracker.ietf.org/doc/html/rfc9429#section-4.1.20 event, a DOM https://www.w3.org/TR/webrtc/#dom-rtcpeerconnectioniceevent event, or other WebRTC compliant implementations, to be added to a session during the gathering phase.</description>
129131
<quality largeMessage="true"/>
130132
<arg id="1" name="WebRTCSessionID" type="int16u"/>
131133
<arg id="2" name="ICECandidates" array="true" type="char_string" minLength="1"/>
132134
</command>
133135

134-
<command code="0x07" source="client" name="EndSession" optional="false">
136+
<command code="0x07" source="client" name="EndSession" isFabricScoped="true" optional="false">
135137
<description>This command instructs the stream provider to end the WebRTC session.</description>
136138
<quality largeMessage="true"/>
137139
<arg id="1" name="WebRTCSessionID" type="int16u"/>

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

+7-4
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ limitations under the License.
1818
XML generated by Alchemy; DO NOT EDIT.
1919
Source: src/app_clusters/WebRTC_Requestor.adoc
2020
Parameters: in-progress
21-
Git: 0.7-summer-2025-5-g06c4d5596
21+
Git: 0.7-summer-2025-285-g2a2bd1961
2222
-->
2323
<configurator xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../zcl.xsd">
2424
<domain name="Cameras"/>
@@ -27,11 +27,14 @@ Git: 0.7-summer-2025-5-g06c4d5596
2727
<name>WebRTC Transport Requestor</name>
2828
<code>0x0554</code>
2929
<define>WEB_RTC_TRANSPORT_REQUESTOR_CLUSTER</define>
30-
<description>The WebRTC transport requestor cluster provides a way for stream consumers (e.g. Matter Stream Viewer) to establish a WebRTC connection with a stream provider.</description>
30+
<description/>
3131
<client init="false" tick="false">true</client>
3232
<server init="false" tick="false">true</server>
3333
<globalAttribute code="0xFFFD" side="either" value="1"/>
34-
<attribute code="0x0000" side="server" define="CURRENT_SESSIONS" type="array" entryType="WebRTCSessionStruct" default="0">CurrentSessions</attribute>
34+
<attribute code="0x0000" side="server" define="CURRENT_SESSIONS" type="array" entryType="WebRTCSessionStruct" default="0">
35+
<description>CurrentSessions</description>
36+
<access op="read" privilege="administer"/>
37+
</attribute>
3538
<command code="0x01" source="client" name="Offer" optional="false">
3639
<description>This command provides the stream requestor with WebRTC session details.</description>
3740
<quality largeMessage="true"/>
@@ -59,7 +62,7 @@ Git: 0.7-summer-2025-5-g06c4d5596
5962
<description>This command notifies the stream requestor that the provider has ended the WebRTC session.</description>
6063
<quality largeMessage="true"/>
6164
<arg id="1" name="WebRTCSessionID" type="int16u"/>
62-
<arg id="2" name="Reason" type="WebRTCEndReasonEnum" min="0x00" max="0x0B"/>
65+
<arg id="2" name="Reason" type="WebRTCEndReasonEnum" default="0x0B" min="0x00" max="0x0B"/>
6366
</command>
6467

6568
</cluster>

0 commit comments

Comments
 (0)