Tab label: Users — Default time range: Last 7 days
The Users page provides per-user analytics for every MS Teams user who made or received calls. Each row represents a user with aggregated data from all their calls in the selected time window.
Default sort: Calls (Poor count descending) — users with the most poor-quality calls appear first.
Chip-based filters (key/operator/value) synced to the URL (?filter=...), allowing complex queries.
| Key | Type | Operators | Description |
|---|
name | String | =, !=, ~ (contains), starts with, ends with, in (), not in () | User display name |
email | String | Same as above | User email address |
ip | String | =, !=, ~, starts with, ends with | Any IP address observed for this user |
platform | Enum | =, !=, in (), not in () | Platform used (see valid values below) |
protocol | Enum | =, !=, in (), not in () | Transport protocol (see valid values below) |
Valid values for platform: Windows, macOS, iOS, Android, Web, Unknown
Valid values for protocol: UDP, TCP, SRTP
A sortable, paginated table with expandable rows. Click any row to see the full detail panel.
| Column | Sortable | Description |
|---|
| User | No | Display name (clickable — navigates to Calls pre-filtered for that user) and email address (shown below the name) |
| Calls | By poor count descending (default) | Total calls, Good (green), Poor (red if > 0), and Poor % (tone: good < 5%, warning > 0, bad ≥ 5%) |
| Network | By first protocol | Protocol badges (UDP = green, TCP = red, SRTP = blue), first IP address, first subnet |
| Activity | By last seen descending (default) | Last seen (Xm ago / Xh ago / Xd ago), Avg duration, Platforms |
Hover the info-circle icon on any column header for a brief description of what the column represents.
Click any row to expand it and see the full detail panel, organized into sections:
| Field | Description |
|---|
| ID | User’s AAD object ID (with copy button) |
| Name | User display name (link to Calls filtered for this user) |
| Mail | Email address |
| Last seen | Date/time of most recent activity |
| Field | Tone |
|---|
| Total / Good / Poor / Unclassified call counts | Poor count: red if > 0, green otherwise |
| Poor % | Color-coded: < 5% = good, 0-5% = warning, ≥ 5% = bad |
| Field | Description |
|---|
| Average | Mean call duration (Xh Ym / Xm Ys) |
| Maximum | Longest call duration |
| Minimum | Shortest call duration |
| Field | Description |
|---|
| IPs | All IP addresses observed (copyable list) |
| Subnets | Network subnets as badges |
| Connection | Connection type (wired, wifi, cellular, etc.) |
| Protocols | Transport protocols with color mapping (UDP = green, TCP = red, SRTP = blue) |
| Protocol stats | Per-protocol count breakdown |
| Field | Description |
|---|
| Platforms | Platform badges (Windows, macOS, iOS, Android, Web) |
| Products | Microsoft Teams product badges (Teams, Skype, etc.) |
| Teams versions | Client version badges |
| Hosts | Host/device names |
| Input devices | Audio input devices (microphones) |
| Output devices | Audio output devices (speakers/headphones) |
Each entry shows:
| Element | Description |
|---|
| Call ID | First 8 characters + link to Call Overview with time range preserved |
| Health | Good (green) / Poor (red) / Unclassified (grey) |
| Time | Start → End timestamps |
| Duration | Call duration |
| Parameter | Description | Example |
|---|
filter | Chip-based filter expression (JSON-encoded) | [{"key":"platform","operator":"=","value":"Windows"}] |
from | Timeframe start | now()-7d |
to | Timeframe end | now() |
| Action | Destination |
|---|
| Click a user name | Calls page, pre-filtered for that user, same time range |
| Click a Call ID in Recent Calls | Call Overview for that call |
| Browser back | Returns to the previous page with the same time range |
| Situation | What you see |
|---|
| Loading | ”Loading users data…” message |
| No users match filters | ”No users match the current filters.” |
| No data at all | Empty table |
| Network error | Error alert |