Skip to content

Commit fa603f7

Browse files
authored
update 2
1 parent f788039 commit fa603f7

File tree

1 file changed

+88
-40
lines changed

1 file changed

+88
-40
lines changed

articles/communication-services/concepts/voice-video-calling/includes/user-facing-diagnostics-web.md

Lines changed: 88 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -79,47 +79,95 @@ The following user-facing diagnostics are available:
7979

8080
User-facing diagnostics is an extended feature of the core [`Call`](/javascript/api/azure-communication-services/@azure/communication-calling/call?view=azure-communication-services-js&preserve-view=true) API. You can understand more about the `UserFacingDiagnosticsFeature` interface [here](/javascript/api/azure-communication-services/@azure/communication-calling/userfacingdiagnosticsfeature?view=azure-communication-services-js&preserve-view=true).
8181

82-
UserFacingDiagnosticsFeature (extends CallFeature)
83-
├── network: NetworkDiagnostics
84-
│ ├── getLatest(): LatestNetworkDiagnostics
85-
│ ├── on('diagnosticChanged', listener)
86-
│ ├── off('diagnosticChanged', listener)
87-
│ └── LatestNetworkDiagnostics
88-
│ ├── networkReconnect?: LatestDiagnosticValue
89-
│ ├── networkReceiveQuality?: LatestDiagnosticValue
90-
│ ├── networkSendQuality?: LatestDiagnosticValue
91-
│ ├── noNetwork?: LatestDiagnosticValue
92-
│ └── networkRelaysNotReachable?: LatestDiagnosticValue
93-
94-
├── media: MediaDiagnostics
95-
│ ├── getLatest(): LatestMediaDiagnostics
96-
│ ├── on('diagnosticChanged', listener)
97-
│ ├── off('diagnosticChanged', listener)
98-
│ └── LatestMediaDiagnostics
99-
│ ├── speakingWhileMicrophoneIsMuted?: LatestDiagnosticValue
100-
│ ├── noSpeakerDevicesEnumerated?: LatestDiagnosticValue
101-
│ ├── noMicrophoneDevicesEnumerated?: LatestDiagnosticValue
102-
│ ├── cameraFreeze?: LatestDiagnosticValue
103-
│ ├── cameraStartFailed?: LatestDiagnosticValue
104-
│ ├── cameraStartTimedOut?: LatestDiagnosticValue
105-
│ ├── capturerStartFailed?: LatestDiagnosticValue
106-
│ ├── microphoneNotFunctioning?: LatestDiagnosticValue
107-
│ ├── microphoneMuteUnexpectedly?: LatestDiagnosticValue
108-
│ ├── cameraStoppedUnexpectedly?: LatestDiagnosticValue
109-
│ ├── capturerStoppedUnexpectedly?: LatestDiagnosticValue
110-
│ ├── screenshareRecordingDisabled?: LatestDiagnosticValue
111-
│ ├── microphonePermissionDenied?: LatestDiagnosticValue
112-
│ └── cameraPermissionDenied?: LatestDiagnosticValue
82+
Here’s a comprehensive tree structure that maps out the `UserFacingDiagnosticsFeature` interface along with its related dependencies, properties, and methods. Each diagnostic module (Network, Media, Remote) has event listeners for changes and provides the latest diagnostic snapshot.
83+
84+
```
85+
UserFacingDiagnosticsFeature (Interface)
86+
├── Inherits: CallFeature
87+
├── Properties
88+
│ ├── network: NetworkDiagnostics
89+
│ ├── media: MediaDiagnostics
90+
│ └── remote: RemoteDiagnostics
11391
114-
└── remote: RemoteDiagnostics
115-
├── isSendingDiagnosticsEnabled: boolean
116-
├── startSendingDiagnostics()
117-
├── stopSendingDiagnostics()
118-
├── getLatest(): RemoteParticipantDiagnosticsData
119-
├── on('diagnosticChanged', listener)
120-
├── off('diagnosticChanged', listener)
121-
└── RemoteParticipantDiagnosticsData
122-
└── diagnostics: RemoteDiagnostic
92+
├── Dependencies
93+
│ ├── NetworkDiagnostics
94+
│ │ ├── Methods
95+
│ │ │ ├── getLatest(): LatestNetworkDiagnostics
96+
│ │ │ ├── on('diagnosticChanged', listener): void
97+
│ │ │ └── off('diagnosticChanged', listener): void
98+
│ │ └── Types
99+
│ │ ├── NetworkDiagnosticChangedEventArgs
100+
│ │ │ ├── value: DiagnosticQuality | DiagnosticFlag
101+
│ │ │ ├── valueType: DiagnosticValueType
102+
│ │ │ └── diagnostic: NetworkDiagnosticType
103+
│ │ ├── NetworkDiagnosticType = keyof LatestNetworkDiagnostics
104+
│ │ └── LatestNetworkDiagnostics
105+
│ │ ├── networkReconnect?: LatestDiagnosticValue
106+
│ │ ├── networkReceiveQuality?: LatestDiagnosticValue
107+
│ │ ├── networkSendQuality?: LatestDiagnosticValue
108+
│ │ ├── noNetwork?: LatestDiagnosticValue
109+
│ │ └── networkRelaysNotReachable?: LatestDiagnosticValue
110+
│ │
111+
│ ├── MediaDiagnostics
112+
│ │ ├── Methods
113+
│ │ │ ├── getLatest(): LatestMediaDiagnostics
114+
│ │ │ ├── on('diagnosticChanged', listener): void
115+
│ │ │ └── off('diagnosticChanged', listener): void
116+
│ │ └── Types
117+
│ │ ├── MediaDiagnosticChangedEventArgs
118+
│ │ │ ├── value: DiagnosticQuality | DiagnosticFlag
119+
│ │ │ ├── valueType: DiagnosticValueType
120+
│ │ │ └── diagnostic: MediaDiagnosticType
121+
│ │ ├── MediaDiagnosticType = keyof LatestMediaDiagnostics
122+
│ │ └── LatestMediaDiagnostics
123+
│ │ ├── speakingWhileMicrophoneIsMuted?: LatestDiagnosticValue
124+
│ │ ├── noSpeakerDevicesEnumerated?: LatestDiagnosticValue
125+
│ │ ├── noMicrophoneDevicesEnumerated?: LatestDiagnosticValue
126+
│ │ ├── cameraFreeze?: LatestDiagnosticValue
127+
│ │ ├── cameraStartFailed?: LatestDiagnosticValue
128+
│ │ ├── cameraStartTimedOut?: LatestDiagnosticValue
129+
│ │ ├── capturerStartFailed?: LatestDiagnosticValue
130+
│ │ ├── microphoneNotFunctioning?: LatestDiagnosticValue
131+
│ │ ├── microphoneMuteUnexpectedly?: LatestDiagnosticValue
132+
│ │ ├── cameraStoppedUnexpectedly?: LatestDiagnosticValue
133+
│ │ ├── capturerStoppedUnexpectedly?: LatestDiagnosticValue
134+
│ │ ├── screenshareRecordingDisabled?: LatestDiagnosticValue
135+
│ │ ├── microphonePermissionDenied?: LatestDiagnosticValue
136+
│ │ └── cameraPermissionDenied?: LatestDiagnosticValue
137+
│ │
138+
│ └── RemoteDiagnostics
139+
│ ├── Properties
140+
│ │ └── isSendingDiagnosticsEnabled: boolean
141+
│ ├── Methods
142+
│ │ ├── startSendingDiagnostics(): void
143+
│ │ ├── stopSendingDiagnostics(): void
144+
│ │ ├── getLatest(): RemoteParticipantDiagnosticsData
145+
│ │ ├── on('diagnosticChanged', listener): void
146+
│ │ └── off('diagnosticChanged', listener): void
147+
│ └── Types
148+
│ ├── RemoteParticipantDiagnosticsData
149+
│ │ └── diagnostics: RemoteDiagnostic[]
150+
├── networkReconnect?: LatestDiagnosticValue
151+
├── networkReceiveQuality?: LatestDiagnosticValue
152+
├── networkSendQuality?: LatestDiagnosticValue
153+
├── noNetwork?: LatestDiagnosticValue
154+
├── networkRelaysNotReachable?: LatestDiagnosticValue
155+
├── microphoneNotFunctioning?: LatestDiagnosticValue
156+
├── microphoneMuteUnexpectedly?: LatestDiagnosticValue
157+
├── cameraStoppedUnexpectedly?: LatestDiagnosticValue
158+
├── cameraFreeze?: LatestDiagnosticValue
159+
├── capturerStartFailed?: LatestDiagnosticValue
160+
└── cameraStartTimedOut?: LatestDiagnosticValue
161+
│ └── RemoteDiagnostic
162+
│ ├── participantId: string
163+
│ ├── rawId: string
164+
│ ├── remoteParticipant?: RemoteParticipant
165+
│ ├── diagnostic: NetworkDiagnosticType | MediaDiagnosticType | ServerDiagnosticType
166+
│ ├── value: DiagnosticQuality | DiagnosticFlag
167+
│ └── valueType: DiagnosticValueType
168+
│ └── ServerDiagnosticType = 'serverConnection'
169+
```
170+
123171

124172
To utilize user facing diagnostics, first thing you must do is instantiate the user facing diagnostics feature from the call.
125173
```js

0 commit comments

Comments
 (0)