Active calls: Difference between revisions

From VoIPmonitor.org
No edit summary
(Rewrite: consolidated structure, added troubleshooting table, more compact)
 
(9 intermediate revisions by the same user not shown)
Line 1: Line 1:
Active calls shows current calls in real time and you can listen to G.711 calls in realtime (sniffer version >= 7). It refreshes according to the refresh interval (default 2 seconds). Calls can be filtered by national or international by clicking on combo box. The filter is also used to filter by sensor, IP, IP prefix or number. Depending on input the filter box adapts to correct the search. For example 192.168.% will filter all calls with source or destination IP addresses starting with 192.168.0.0/16. Providing a number, for example 00, will filter all calls starting with 00. The filter searches for callid too.
{{DISPLAYTITLE:Active Calls (Real-time Monitoring)}}
It searches for full callid (not a callid's substring). The search for callid's substring is possible too if you add % character to the start/end of the searched string.
[[Category:GUI manual]]


= Active Calls =


Bottom graphs shows top most calls by caller IP or called IP.  
Real-time monitoring of ongoing VoIP calls with live listening capability (G.711 codec, sniffer v7+).


Live calls are fetched from voipmonitor instance through manager TCP port 5029. If calls are not shown please check whether the web server has access to that port (for example by telnet localhost 5029).
== Overview ==


You can open active calls with direct URL
{| class="wikitable"
|-
! 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 || <code>admin.php?activecalls=1</code>
|}


http://localhost/admin.php?activecalls=1
<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"
|-
! Filter Input !! Matches
|-
| <code>192.168.%</code> || Source/destination IP starting with 192.168.x.x
|-
| <code>00</code> || Numbers starting with 00
|-
| <code>abc123</code> || Exact Call-ID match
|-
| <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 ==
 
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&params={"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 ==
'''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?

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&params={"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_config table

See Also

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?