Active calls: Difference between revisions
(Improved structure: added proper sections, filter syntax table, syntax highlighting, MediaWiki formatting, category, and AI Summary for RAG) |
(Rewrite: consolidated structure, added troubleshooting table, more compact) |
||
| (7 intermediate revisions by the same user not shown) | |||
| Line 1: | Line 1: | ||
{{DISPLAYTITLE:Active Calls (Real-time Monitoring)}} | {{DISPLAYTITLE:Active Calls (Real-time Monitoring)}} | ||
Category:GUI manual | [[Category:GUI manual]] | ||
= Active Calls = | |||
Real-time monitoring of ongoing VoIP calls with live listening capability (G.711 codec, sniffer v7+). | |||
== Overview == | == Overview == | ||
{| class="wikitable" | |||
|- | |||
! Feature !! Details | |||
|- | |||
Live | | Auto-refresh || Default: 2 seconds | ||
|- | |||
< | | Communication || TCP port '''5029''' (Manager API) | ||
|- | |||
</ | | Live listening || G.711 codec only (requires sniffer version 7+) | ||
|- | |||
| Direct URL || <code>admin.php?activecalls=1</code> | |||
|} | |||
< | <kroki lang="mermaid"> | ||
%%{init: {'flowchart': {'nodeSpacing': 15, 'rankSpacing': 40}}}%% | |||
</ | flowchart LR | ||
subgraph GUI["Web GUI"] | |||
Browser["Browser"] | |||
PHP["PHP Backend"] | |||
end | |||
subgraph Sniffer["VoIPmonitor Sniffer"] | |||
Manager["Manager API\nPort 5029"] | |||
Capture["Packet Capture"] | |||
end | |||
Browser -->|HTTP/HTTPS| PHP | |||
PHP -->|TCP 5029| Manager | |||
Manager -->|Active Call Data| PHP | |||
Capture -->|Live Data| Manager | |||
</kroki> | |||
= | {{Note|1=If calls are not displayed, verify that the web server can reach the sniffer's manager port 5029: <code>telnet localhost 5029</code>}} | ||
== Filtering == | |||
The filter box adapts to the input type. Available filters: | |||
* '''Sensor''' - dropdown selection | |||
* '''IP address/prefix''' - e.g., <code>192.168.%</code> | |||
* '''Phone number/prefix''' - e.g., <code>00</code> (international) | |||
* '''Call-ID''' - exact or substring match | |||
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
! Input !! | ! Filter Input !! Matches | ||
|- | |- | ||
| <code>192.168.%</code> || | | <code>192.168.%</code> || Source/destination IP starting with 192.168.x.x | ||
|- | |- | ||
| <code>00</code> || | | <code>00</code> || Numbers starting with 00 | ||
|- | |- | ||
| <code>abc123</code> || | | <code>abc123</code> || Exact Call-ID match | ||
|- | |- | ||
| <code>%abc123%</code> || | | <code>%abc123%</code> || Call-ID containing "abc123" | ||
|} | |} | ||
{{Tip|1=Use <code>%</code> wildcard for substring matching in Call-ID searches.}} | |||
=== Duplicate Entries === | |||
Duplicates often appear when calls traverse multiple SIP gateways/carriers. | |||
'''Solutions:''' | |||
* '''Filter by carrier IP''' - Enter the specific carrier IP to show only one leg per call | |||
* '''Filter by sensor''' - If multiple sensors capture the same mirrored traffic | |||
* '''SIP forking''' - Simultaneous ringing to multiple destinations are separate legs (expected behavior) | |||
For distributed sensor architectures, see [[Sniffer_distributed_architecture]]. | |||
== Show Call Info == | |||
Displays detailed SIP packet information for active calls when clicking on a call entry. | |||
{{Warning|1=Requires VoIPmonitor '''version 2024.09.1+''' and can significantly increase CPU load.}} | |||
'''Enable via config file:''' | |||
<syntaxhighlight lang="ini"> | |||
# /etc/voipmonitor.conf | |||
active_call_info = yes | |||
</syntaxhighlight> | |||
<syntaxhighlight lang="bash"> | |||
systemctl restart voipmonitor | |||
</syntaxhighlight> | |||
'''Enable via GUI:''' Settings > Sensors > wrench icon > enable <code>active_call_info</code> | |||
== Column Visibility == | |||
Customize visible columns via the column header menu ("Show columns"). Settings persist in the <code>custom_config</code> database table. | |||
{{Tip|Hiding problematic columns (e.g., "Proxy") can resolve performance issues caused by parsing errors.}} | |||
== Bottom Graphs == | == Bottom Graphs == | ||
The bottom section | The bottom section displays top callers/called grouped by IP address. | ||
[[File:activecalls.png]] | [[File:activecalls.png]] | ||
== | == Programmatic Access (API) == | ||
=== GUI API (Centralized) === | |||
Query active calls from all connected sensors via <code>listActiveCalls</code>: | |||
<syntaxhighlight lang="bash"> | |||
curl -X POST 'http://yourserver/php/api.php?task=listActiveCalls&user=USER&password=PASSWORD¶ms={"sensorId":"1"}' | |||
</syntaxhighlight> | |||
# | See [[WEB_API#listActiveCalls]] for details. | ||
=== Sniffer Manager API (Direct) === | |||
Query a single sensor directly via port 5029: | |||
<syntaxhighlight lang="bash"> | |||
echo 'listcalls' | nc localhost 5029 | |||
</syntaxhighlight> | |||
{| class="wikitable" | |||
|- | |||
! Method !! Use Case | |||
|- | |||
| GUI <code>listActiveCalls</code> || Multiple sensors, centralized monitoring, external integrations | |||
|- | |||
| Manager API <code>listcalls</code> || Single sensor, local scripts, low-latency queries | |||
|} | |||
== Troubleshooting == | |||
{| class="wikitable" | |||
|- | |||
! Problem !! Solution | |||
|- | |||
| No calls displayed || Verify port 5029 connectivity: <code>telnet localhost 5029</code> | |||
|- | |||
| Duplicate entries || Filter by carrier IP or sensor ID | |||
|- | |||
| Slow/unresponsive view || Hide problematic columns (e.g., "Proxy") | |||
|- | |||
| GUI completely frozen || Connect to DB, clear entries in <code>custom_config</code> table | |||
|} | |||
'''For support tickets, provide:''' | |||
* SIP PCAP dump of problematic calls | |||
* mysqldump of <code>voipmonitor.custom_config</code> table | |||
== See Also == | |||
* [[Sniffer_distributed_architecture]] - Multi-sensor deployments | |||
* [[WEB_API]] - Full API documentation | |||
* [[Settings]] - Sensor configuration | |||
== AI Summary for RAG == | == AI Summary for RAG == | ||
'''Keywords:''' active calls, real-time monitoring, live | '''Summary:''' Active Calls provides real-time monitoring of ongoing VoIP calls via TCP port 5029. Features include: live listening (G.711 only, sniffer v7+), filtering by IP/number/Call-ID/sensor, and column customization. Duplicate entries occur when calls traverse multiple carriers - filter by carrier IP to consolidate. "Show Call Info" feature (v2024.09.1+) displays SIP packet details but increases CPU load. Programmatic access available via GUI API (listActiveCalls for multi-sensor) or Manager API (listcalls for single sensor). Settings stored in custom_config table. | ||
'''Keywords:''' active calls, real-time monitoring, live listening, G.711, port 5029, manager API, listActiveCalls, listcalls, call filter, duplicate entries, carrier IP, active_call_info, column visibility, custom_config | |||
'''Key Questions:''' | '''Key Questions:''' | ||
| Line 102: | Line 168: | ||
* Why are active calls not showing in the GUI? | * Why are active calls not showing in the GUI? | ||
* How do I filter calls by IP address or phone number? | * How do I filter calls by IP address or phone number? | ||
* How do I | * Why do I see duplicate entries for the same call? | ||
* What port is used for | * How do I enable "Show Call Info" feature? | ||
* What port is used for active call data? | |||
* How do I programmatically query active calls? | |||
* What is the difference between listActiveCalls and listcalls? | |||
* How do I customize column visibility? | |||
* What version is required for SIP packet view in active calls? | |||
Latest revision as of 16:48, 8 January 2026
Active Calls
Real-time monitoring of ongoing VoIP calls with live listening capability (G.711 codec, sniffer v7+).
Overview
| Feature | Details |
|---|---|
| Auto-refresh | Default: 2 seconds |
| Communication | TCP port 5029 (Manager API) |
| Live listening | G.711 codec only (requires sniffer version 7+) |
| Direct URL | admin.php?activecalls=1
|
ℹ️ Note: If calls are not displayed, verify that the web server can reach the sniffer's manager port 5029: telnet localhost 5029
Filtering
The filter box adapts to the input type. Available filters:
- Sensor - dropdown selection
- IP address/prefix - e.g.,
192.168.% - Phone number/prefix - e.g.,
00(international) - Call-ID - exact or substring match
| Filter Input | Matches |
|---|---|
192.168.% |
Source/destination IP starting with 192.168.x.x |
00 |
Numbers starting with 00 |
abc123 |
Exact Call-ID match |
%abc123% |
Call-ID containing "abc123" |
💡 Tip: Use % wildcard for substring matching in Call-ID searches.
Duplicate Entries
Duplicates often appear when calls traverse multiple SIP gateways/carriers.
Solutions:
- Filter by carrier IP - Enter the specific carrier IP to show only one leg per call
- Filter by sensor - If multiple sensors capture the same mirrored traffic
- SIP forking - Simultaneous ringing to multiple destinations are separate legs (expected behavior)
For distributed sensor architectures, see Sniffer_distributed_architecture.
Show Call Info
Displays detailed SIP packet information for active calls when clicking on a call entry.
⚠️ Warning: Requires VoIPmonitor version 2024.09.1+ and can significantly increase CPU load.
Enable via config file:
# /etc/voipmonitor.conf
active_call_info = yes
systemctl restart voipmonitor
Enable via GUI: Settings > Sensors > wrench icon > enable active_call_info
Column Visibility
Customize visible columns via the column header menu ("Show columns"). Settings persist in the custom_config database table.
💡 Tip: Hiding problematic columns (e.g., "Proxy") can resolve performance issues caused by parsing errors.
Bottom Graphs
The bottom section displays top callers/called grouped by IP address.
Programmatic Access (API)
GUI API (Centralized)
Query active calls from all connected sensors via listActiveCalls:
curl -X POST 'http://yourserver/php/api.php?task=listActiveCalls&user=USER&password=PASSWORD¶ms={"sensorId":"1"}'
See WEB_API#listActiveCalls for details.
Sniffer Manager API (Direct)
Query a single sensor directly via port 5029:
echo 'listcalls' | nc localhost 5029
| Method | Use Case |
|---|---|
GUI listActiveCalls |
Multiple sensors, centralized monitoring, external integrations |
Manager API listcalls |
Single sensor, local scripts, low-latency queries |
Troubleshooting
| Problem | Solution |
|---|---|
| No calls displayed | Verify port 5029 connectivity: telnet localhost 5029
|
| Duplicate entries | Filter by carrier IP or sensor ID |
| Slow/unresponsive view | Hide problematic columns (e.g., "Proxy") |
| GUI completely frozen | Connect to DB, clear entries in custom_config table
|
For support tickets, provide:
- SIP PCAP dump of problematic calls
- mysqldump of
voipmonitor.custom_configtable
See Also
- Sniffer_distributed_architecture - Multi-sensor deployments
- WEB_API - Full API documentation
- Settings - Sensor configuration
AI Summary for RAG
Summary: Active Calls provides real-time monitoring of ongoing VoIP calls via TCP port 5029. Features include: live listening (G.711 only, sniffer v7+), filtering by IP/number/Call-ID/sensor, and column customization. Duplicate entries occur when calls traverse multiple carriers - filter by carrier IP to consolidate. "Show Call Info" feature (v2024.09.1+) displays SIP packet details but increases CPU load. Programmatic access available via GUI API (listActiveCalls for multi-sensor) or Manager API (listcalls for single sensor). Settings stored in custom_config table.
Keywords: active calls, real-time monitoring, live listening, G.711, port 5029, manager API, listActiveCalls, listcalls, call filter, duplicate entries, carrier IP, active_call_info, column visibility, custom_config
Key Questions:
- How do I view active/live calls in VoIPmonitor?
- Why are active calls not showing in the GUI?
- How do I filter calls by IP address or phone number?
- Why do I see duplicate entries for the same call?
- How do I enable "Show Call Info" feature?
- What port is used for active call data?
- How do I programmatically query active calls?
- What is the difference between listActiveCalls and listcalls?
- How do I customize column visibility?
- What version is required for SIP packet view in active calls?
