Skip to content

Commit

Permalink
Generated using ./scripts/tools/zap_regen_all.py
Browse files Browse the repository at this point in the history
  • Loading branch information
andyg-apple committed Oct 4, 2024
1 parent 76d8248 commit 9edf582
Show file tree
Hide file tree
Showing 49 changed files with 24,814 additions and 18,467 deletions.
1 change: 1 addition & 0 deletions docs/zap_clusters.md
Original file line number Diff line number Diff line change
Expand Up @@ -130,6 +130,7 @@ Generally regenerate using one of:
| 1295 | 0x50F | ContentControl |
| 1296 | 0x510 | ContentAppObserver |
| 1363 | 0x553 | WebRTCTransportProvider |
| 1364 | 0x554 | WebRTCTransportRequestor |
| 1366 | 0x556 | Chime |
| 1872 | 0x750 | EcosystemInformation |
| 1873 | 0x751 | CommissionerControl |
Expand Down
4,029 changes: 1,877 additions & 2,152 deletions scripts/tools/zap/tests/outputs/all-clusters-app/app-templates/endpoint_config.h

Large diffs are not rendered by default.

Large diffs are not rendered by default.

87 changes: 87 additions & 0 deletions src/controller/data_model/controller-clusters.matter
Original file line number Diff line number Diff line change
Expand Up @@ -9530,6 +9530,93 @@ provisional cluster WebRTCTransportProvider = 1363 {
command EndSession(EndSessionRequest): DefaultSuccess = 7;
}

/** 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. */
cluster WebRTCTransportRequestor = 1364 {
revision 1;

enum StreamTypeEnum : enum8 {
kInternal = 0;
kRecording = 1;
kAnalysis = 2;
kLiveView = 3;
}

enum WebRTCEndReasonEnum : enum8 {
kIceFailed = 0;
kIceTimeout = 1;
kUserHangup = 2;
kUserBusy = 3;
kReplaced = 4;
kNoUserMedia = 5;
kInviteTimeout = 6;
kAnsweredElsewhere = 7;
kOutOfResources = 8;
kMediaTimeout = 9;
kLowPower = 10;
kUnknownReason = 11;
}

bitmap WebRTCMetadataOptions : bitmap8 {
kDataTLV = 0x1;
}

struct ICEServerStruct {
char_string urls[] = 1;
optional char_string username = 2;
optional char_string credential = 3;
optional int16u caid = 4;
}

struct WebRTCSessionStruct {
int16u id = 1;
node_id peerNodeID = 2;
fabric_idx peerFabricIndex = 3;
StreamTypeEnum streamType = 4;
nullable int16u videoStreamID = 5;
nullable int16u audioStreamID = 6;
WebRTCMetadataOptions metadataOptions = 7;
}

readonly attribute WebRTCSessionStruct currentSessions[] = 0;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
readonly attribute attrib_id attributeList[] = 65531;
readonly attribute bitmap32 featureMap = 65532;
readonly attribute int16u clusterRevision = 65533;

request struct OfferRequest {
int16u webRTCSessionID = 0;
char_string sdp = 1;
optional ICEServerStruct ICEServers[] = 2;
optional char_string ICETransportPolicy = 3;
}

request struct AnswerRequest {
int16u webRTCSessionID = 0;
char_string sdp = 1;
}

request struct ICECandidateRequest {
int16u webRTCSessionID = 0;
char_string ICECandidate = 1;
}

request struct EndRequest {
int16u webRTCSessionID = 0;
WebRTCEndReasonEnum reason = 1;
}

/** This command provides the stream requestor with WebRTC session details. */
command Offer(OfferRequest): DefaultSuccess = 1;
/** This command provides the stream requestor with the WebRTC session details (i.e. */
command Answer(AnswerRequest): DefaultSuccess = 2;
/** This command provides an ICE candidate to the stream requestor in a WebRTC session. */
command ICECandidate(ICECandidateRequest): DefaultSuccess = 3;
/** This command notifies the stream requestor that the provider has ended the WebRTC session. */
command End(EndRequest): DefaultSuccess = 4;
}

/** This cluster provides facilities to configure and play Chime sounds, such as those used in a doorbell. */
provisional cluster Chime = 1366 {
revision 1;
Expand Down
Loading

0 comments on commit 9edf582

Please sign in to comment.