Documentation Index
Fetch the complete documentation index at: https://developers.telnyx.com/llms.txt
Use this file to discover all available pages before exploring further.
WebRTC Call Reports
The Telnyx Android SDK automatically collects detailed call statistics during WebRTC calls and sends them to Telnyx for troubleshooting and monitoring purposes. This feature helps diagnose call quality issues, connection problems, and provides insights into call performance.Overview
When enabled, the SDK collects:- Call summary: Call identifiers, timestamps, duration, and device information
- Connection metrics: ICE states, DTLS states, signaling transitions
- Media statistics: Packet loss, jitter, round-trip time, audio levels
- Network information: Selected ICE candidates, transport details
Enabling Call Reports
Call reports are automatically enabled when you connect to the Telnyx WebRTC service. The SDK handles data collection and upload transparently.Call reports are sent automatically when a call ends. No additional configuration is required.
Accessing Local Call Reports
For debugging purposes, you can access the call report JSON file that is saved locally after each call:<cache_dir>/call_stats/call_stats_<callId>.json
Call Report JSON Structure
The call report JSON contains the following sections:Top-Level Identifiers
Summary Section
Contains high-level call information:Stats Array
Contains interval-based statistics captured during the call. Each interval (typically 5 seconds) includes:Android Extra Section
Contains Android-specific debugging information:Metrics Reference
Audio Inbound Metrics
| Metric | Description |
|---|---|
bytesReceived | Total bytes received |
packetsReceived | Total packets received |
packetsLost | Number of lost packets |
packetsDiscarded | Packets discarded by jitter buffer |
jitterAvg | Average jitter in milliseconds |
jitterBufferDelay | Jitter buffer delay in milliseconds |
concealedSamples | Number of concealed audio samples |
concealmentEvents | Number of concealment events |
audioLevelAvg | Average audio level (0.0 to 1.0) |
Audio Outbound Metrics
| Metric | Description |
|---|---|
bytesSent | Total bytes sent |
packetsSent | Total packets sent |
audioLevelAvg | Average outgoing audio level (0.0 to 1.0) |
Connection Metrics
| Metric | Description |
|---|---|
roundTripTimeAvg | Average round-trip time in milliseconds |
bytesReceived | Total transport bytes received |
bytesSent | Total transport bytes sent |
Troubleshooting with Call Reports
Call reports can help diagnose common issues:High Packet Loss
Look atpacketsLost in the audio inbound stats. Values above 1-2% may indicate network issues.
Audio Quality Issues
CheckjitterAvg and concealmentEvents. High jitter (>30ms) or frequent concealment events indicate audio quality degradation.
Connection Failures
Review theconnectionTimeline in android_extra. Look for:
ICE_FAILED- Network connectivity issuesDTLS_FAILED- TLS/security handshake failures- Long gaps between
ICE_CONNECTEDandDTLS_CONNECTED(>5 seconds)
One-Way Audio
Check if:packetsReceivedis 0 (not receiving audio)audioLevelAvgis 0 (microphone not capturing)- Review microphone permissions in
deviceInfo.permissions
Privacy & Data Handling
Call reports are sent securely to Telnyx and are used solely for:- Troubleshooting call quality issues
- Monitoring service health
- Improving SDK performance
See Also
- WebRTC Stats - Real-time call quality metrics
- Error Handling - SDK error codes and handling
- Troubleshooting Guide - Common issues and solutions