Groups: Difference between revisions

From VoIPmonitor.org
(Review: přidány info boxy (Note, Warning), optimalizace diagramu)
(Rewrite: condensed structure, consolidated checkbox options into table, added See Also section)
 
(One intermediate revision by the same user not shown)
Line 2: Line 2:
{{DISPLAYTITLE:Groups: IP, Telephone Numbers & Emails}}
{{DISPLAYTITLE:Groups: IP, Telephone Numbers & Emails}}


Groups define sets of IP addresses/networks, telephone numbers/prefixes, and emails. These can be used across the WEB GUI for filtering CDRs, configuring alerts, and other features. Groups allow you to manage large collections of identifiers efficiently and reuse them across multiple configurations.
Groups define reusable sets of IP addresses, telephone numbers, and emails for filtering CDRs, configuring alerts, and reports.


== Overview ==
{{Note|1=After creating a new group, '''log out and log back in''' for it to appear in dropdown lists (CDR filters, alerts, charts).}}


VoIPmonitor supports three types of groups:
== Group Types ==


{| class="wikitable"
{| class="wikitable"
|-
|-
! Group Type !! Use Cases !! Access Path
! Type !! Path !! Use Cases
|-
|-
| '''IP Groups''' || Define SIP trunks, filter by source/destination IP, distinguish internal/external calls || GUI → Groups → IPs
| '''IP''' || Groups → IPs || SIP trunks, call direction classification, CDR filtering by IP
|-
|-
| '''Telephone Number Groups''' || Filter CDRs by caller/called numbers, alert on specific number ranges || GUI → Groups → Tel. numbers
| '''Tel. Numbers''' || Groups → Tel. numbers || Filter CDRs by caller/called, alert on number ranges
|-
|-
| '''Email Groups''' || Define recipients for alerts and reports || GUI → Groups → Emails
| '''Emails''' || Groups → Emails || Recipients for alerts and reports
|}
|}
[[File:groups.png|center|600px|Groups management interface]]
=== Important: GUI Refresh Required ===
After creating a new group (IP, telephone number, or email), the group may not immediately appear in dropdown lists used throughout the GUI (such as CDR filter templates, alert configurations, or charts). This is because the GUI loads available groups at login time.
{{Note|1='''Solution:''' Log out of the GUI and log back in. The newly created group will then appear in all relevant dropdowns.}}
This applies to all group types when used in:
* CDR filter templates (Caller Groups, Called Groups dropdowns)
* Alert configurations
* Charts filters
* Any other GUI component that uses groups


== IP Groups ==
== IP Groups ==


IP Groups allow you to define sets of IP addresses or network ranges that can be used in CDR filters and alerts.
Define sets of IP addresses or CIDR ranges for filtering and classification.


=== Creating IP Groups ===
=== Creating IP Groups ===


# Navigate to GUI → Groups → IPs
# Navigate to '''Groups → IPs'''
# Click "New group"
# Click "New group", enter name
# Enter a descriptive group name (e.g., "Provider A SIP Trunk" or "Internal PBX Servers")
# Add IPs or CIDR ranges (one per line):
# Add IP addresses or CIDR ranges, one per line
# Configure the '''Trunk''', '''Server''', or '''SIP history group''' checkboxes as applicable (see below)
# Save the group
 
=== Example IP Group Entries ===
 
<syntaxhighlight lang="text">
<syntaxhighlight lang="text">
192.168.1.100
192.168.1.100
10.0.0.0/24
10.0.0.0/24
172.16.0.0/16
2001:db8::1/128
2001:db8::1/128
</syntaxhighlight>
</syntaxhighlight>
# Configure checkboxes (see below)
# Save


=== Trunk Checkbox ===
=== Checkbox Options ===


The '''Trunk''' checkbox marks the IPs in this group as belonging to an external SIP trunk (e.g., your VoIP provider or carrier).
{| class="wikitable"
 
|-
=== Server Checkbox ===
! Checkbox !! Purpose !! When to Use
 
|-
The '''Server''' checkbox marks IPs in this group as belonging to your internal PBX servers or VoIP infrastructure. This is used in conjunction with the Trunk checkbox to accurately classify call direction.
| '''Trunk''' || Marks IPs as external carrier/provider || SIP trunk IPs from your VoIP provider
 
|-
=== SIP History Group Checkbox ===
| '''Server''' || Marks IPs as internal infrastructure || Your PBX, SBC, or media servers
 
|-
The '''SIP history group''' checkbox merges private and public IP addresses into a single column in the SIP ladder/history view. This is particularly useful for devices behind NAT (Network Address Translation) where the SIP signaling shows public IP addresses while RTP media uses private IP addresses.
| '''SIP history group''' || Merges private/public IPs in SIP ladder view || NAT devices where signaling uses public IP but RTP uses private IP
 
|}
When enabled:
* The GUI treats all IPs in this group as belonging to the same logical endpoint
* Duplicate flows showing both private and public IPs are consolidated into a single display
* Call flows in the SIP History tab become easier to read and analyze
 
'''Use Case Example:'''
 
For a SIP trunk behind NAT where:
* Public IP: 1.2.3.4 (appears in SIP signaling)
* Private IP: 10.0.0.3 (actual device IP)
 
Create a group and add both IP addresses, then enable the '''SIP history group''' checkbox. The GUI will merge these into a single column in the SIP ladder view instead of showing duplicate flows.


=== Call Direction Classification ===
=== Call Direction Classification ===


Using both '''Trunk''' and '''Server''' checkboxes, you can create precise CDR filter templates for differentiating inbound and outbound traffic:
Using '''Trunk''' and '''Server''' checkboxes enables precise filtering:


* '''Outbound calls''' – Caller IP is in a '''Server''' group AND Called IP is in a '''Trunk''' group
{| class="wikitable"
* '''Inbound calls''' – Caller IP is in a '''Trunk''' group AND Called IP is in a '''Server''' group
|-
* '''Internal calls''' Both caller and called IPs are in the same group (or not in any group)
! Direction !! Filter Logic
|-
| '''Outbound''' || callerIP in '''Server''' group AND calledIP in '''Trunk''' group
|-
| '''Inbound''' || callerIP in '''Trunk''' group AND calledIP in '''Server''' group
|-
| '''Internal''' || Both IPs in same group (or neither in any group)
|}


<kroki lang="mermaid">
<kroki lang="mermaid">
Line 97: Line 73:
         Carrier[Carrier/Provider]
         Carrier[Carrier/Provider]
     end
     end
     PBX -->|"Outbound<br/>(callerIP=Server, calledIP=Trunk)"| Carrier
     PBX -->|"Outbound"| Carrier
     Carrier -->|"Inbound<br/>(callerIP=Trunk, calledIP=Server)"| PBX
     Carrier -->|"Inbound"| PBX
</kroki>
</kroki>


==== Usage Example for Capacity Planning ====
=== SIP History Group for NAT ===


For generating reports showing inbound vs outbound call counts and peak concurrent calls:
When a device behind NAT shows different IPs in signaling vs media:
* Public IP: 1.2.3.4 (in SIP headers)
* Private IP: 10.0.0.3 (actual device)


# Create a '''Server''' group containing your internal PBX/server IP ranges (enable the '''Server''' checkbox)
Create a group with both IPs and enable '''SIP history group''' checkbox. The GUI will consolidate duplicate flows into a single column in SIP ladder view.
# Create a '''Trunk''' group containing your carrier/provider IP ranges (enable the '''Trunk''' checkbox)
# Create CDR filter templates:
#* For '''Outbound''': Select <code>callerIP</code> in your Server group AND <code>calledIP</code> in your Trunk group
#* For '''Inbound''': Select <code>callerIP</code> in your Trunk group AND <code>calledIP</code> in your Server group
# Generate reports using these filter templates with the "count of calls" report type


== Telephone Number Groups ==
== Telephone Number Groups ==


Telephone number groups allow you to define sets of phone numbers or prefixes that can be used in CDR filters, alerts, and other parts of the GUI.
Define sets of phone numbers or patterns for CDR filtering and alerts.


=== Creating and Managing Phone Number Groups ===
=== Creating Groups ===


You can create phone number groups manually one at a time, or use the import/export functionality for large lists. Telephone number groups support both explicit numbers and regular expression patterns.
'''Manual entry:'''
 
# Navigate to '''Groups → Tel. numbers'''
==== Manual Entry ====
# Click "New group"
 
# Add numbers one per line
# Navigate to GUI → Groups → Tel. numbers
# Save
# Click the "New group" button
# Enter a Group name
# Add phone numbers or regex patterns one per line
# Save the group
 
==== Import/Export (Recommended for Large Lists) ====
 
The import/export feature allows you to create and manage large lists of phone numbers efficiently.


'''To import phone numbers:'''
'''Import/Export (for large lists):'''
# Click "import/export" button
# Upload text file with one number per line


# Navigate to GUI → Groups → Tel. numbers
=== Regex Patterns ===
# Click the "import/export" button
# Prepare a text file with one phone number per line (or use the exported file as a template)
# Upload the file
# The list will be imported into a new or existing group


'''Example import file:'''
{{Warning|1=Entries are literal strings by default. Wrap patterns with <code>R(...)</code> to enable regex.}}
 
<syntaxhighlight lang="text">
+12025551234
+12025551235
+12025551236
+447911123456
</syntaxhighlight>
 
=== Regex Patterns in Phone Number Groups ===
 
Telephone number groups support regular expressions for pattern matching. Examples:


{| class="wikitable"
{| class="wikitable"
Line 157: Line 109:
! Pattern !! Description
! Pattern !! Description
|-
|-
| <code>[a-zA-Z]</code> || Find numbers containing letters (malformed caller IDs)
| <code>R(^500[0-9]{4}$)</code> || Match 7-digit numbers starting with 500
|-
|-
| <code>^500[0-9]{4}$</code> || Match specific number patterns (e.g., 5001234)
| <code>R(^(\+|00))</code> || International numbers (+ or 00 prefix)
|-
|-
| <code>^(\+|00)</code> || Find international numbers (starting with + or 00)
| <code>R([a-zA-Z])</code> || Numbers containing letters (malformed IDs)
|}
|}


=== Using Phone Number Groups in CDR Filters ===
=== Using in CDR Filters ===
 
After creating a phone number group:
 
# Go to the CDR view
# Click the "Filter Form" button
# In the Common tab, locate the "Group Filters" section
# Select your group from the "Caller Groups" or "Called Groups" dropdown
# Click "Search"


'''Benefits of using groups:'''
# Go to CDR view → Filter Form
* Any changes made to the group are automatically propagated to all filters where the group is used
# In '''Group Filters''' section, select your group from '''Caller Groups''' or '''Called Groups'''
* Ideal for managing large lists of phone numbers
# Click Search
* Groups can be reused across multiple filters and alerts


=== Maximum Limits ===
{{Tip|Changes to the group automatically apply to all filters using it.}}
 
The Caller/Called manual entry fields in the CDR filter form are designed for small lists. For large lists of phone numbers, using groups with the import/export functionality is the recommended approach to ensure stability and maintainability.


== Email Groups ==
== Email Groups ==


Email groups define sets of email addresses for use in alerts and reports.
Define recipient lists for [[Alerts|alerts]] and [[Reports|reports]].


=== Creating Email Groups ===
# Navigate to '''Groups → Emails'''
 
# Navigate to GUI → Groups → Emails
# Click "New group"
# Click "New group"
# Enter a group name (e.g., "NOC Team", "Management")
# Add email addresses (one per line)
# Add email addresses, one per line
# Save
# Save the group
 
=== Using Email Groups ===
 
Email groups can be used in:
* [[Alerts]] – Send notifications to a group of recipients
* [[Reports]] – Distribute scheduled reports to multiple addresses


== IP Anonymize Rewrite Rules ==
== IP Anonymize Rewrite Rules ==


This feature replaces original IP addresses in the database with anonymized values. It is useful for privacy compliance (GDPR) or hiding internal network topology.
Replace original IPs with anonymized values in the database (GDPR compliance).


[[File:New_IP_anonymize_rewrite_rule.png|thumb|right|400px|IP anonymization settings]]
{{Warning|1=Rules apply only to '''new data''' after saving. Existing records are not modified.}}


=== Configuration Fields ===
=== Configuration ===


{| class="wikitable"
{| class="wikitable"
Line 213: Line 145:
! Field !! Description
! Field !! Description
|-
|-
| '''Description''' || Name of the rule.
| '''IP to anonymize''' || Original IP or network to hide
|-
|-
| '''IP to anonymize''' || The original IP or network range you want to hide.
| '''Mask [0-32]''' || Source CIDR mask (32 = single IP, 24 = subnet)
|-
|-
| '''Mask [0-32]''' || Source CIDR mask (e.g., 32 for a single IP, 24 for a whole subnet).
| '''Anonymous IP''' || Replacement IP stored in database
|-
|-
| '''Anonymous IP''' || The new IP address that will be stored in the database.
| '''Mask [0-32]''' || Target mask (same as source = preserves host part)
|-
| '''Mask [0-32]''' || Target mask. If this matches the source mask, the host part of the IP is preserved (1:1 mapping).
|}
|}


=== Example: Network Prefix Anonymization ===
'''Example:''' Map 192.168.1.x → 10.0.0.x (preserve host address):
 
To hide the real network prefix (e.g., 192.168.1.x) but keep the host addresses unique (mapping 192.168.1.55 → 10.0.0.55):


{| class="wikitable"
{| class="wikitable"
Line 241: Line 169:
|}
|}


{{Warning|1=These rules apply only to '''new data''' processed after saving the configuration. Existing records in the database are '''not retroactively anonymized'''.}}
== See Also ==
 
* [[Alerts]] - Using email groups for notifications
* [[Reports]] - Using groups in scheduled reports
* [[Call_Detail_Record_-_CDR]] - CDR filtering with groups


== AI Summary for RAG ==
== AI Summary for RAG ==


'''Summary:''' This page explains how to configure Groups (IP addresses, telephone numbers, and emails) in VoIPmonitor. IP groups support Trunk, Server, and SIP history group checkboxes: Trunk and Server checkboxes classify call direction (Outbound: callerIP in Server group and calledIP in Trunk group; Inbound: callerIP in Trunk group and calledIP in Server group); The SIP history group checkbox merges private and public IPs in the SIP ladder/history view for devices behind NAT, consolidating duplicate flows into a single display. Telephone number groups support manual entry, import/export, and regular expression patterns for matching number ranges or specific patterns. Email groups are used for alert and report distribution. IP Anonymize Rewrite Rules allow GDPR-compliant anonymization of IP addresses in new CDR records.
'''Summary:''' VoIPmonitor Groups feature for defining reusable sets of IP addresses, telephone numbers, and emails. IP groups support Trunk, Server, and SIP history group checkboxes for call direction classification (Outbound = callerIP in Server + calledIP in Trunk; Inbound = reverse) and NAT device consolidation in SIP ladder view. Telephone number groups support manual entry, import/export for large lists, and regex patterns with R(...) wrapper syntax. Email groups define recipients for alerts and reports. IP Anonymize Rewrite Rules enable GDPR-compliant IP masking for new data only. Important: log out and back in after creating groups for them to appear in dropdown lists.


'''Keywords:''' groups, IP groups, telephone numbers, tel numbers, email groups, SIP trunks, alerts, filters, import, export, CDR filter, Caller Groups, Called Groups, Trunk checkbox, Server checkbox, SIP history group, inbound calls, outbound calls, internal calls, capacity planning, callerIP, calledIP, CDR filter templates, IP anonymize, rewrite rules, GDPR, privacy, IP masking, network anonymization, NAT, network address translation, SIP ladder, SIP history view, duplicate flows, private IP, public IP, regex patterns, regular expressions, number filtering, GUI refresh, login refresh
'''Keywords:''' groups, IP groups, telephone numbers, email groups, SIP trunks, Trunk checkbox, Server checkbox, SIP history group, call direction, inbound, outbound, CDR filter, Caller Groups, Called Groups, regex patterns, R() wrapper, import export, IP anonymize, GDPR, NAT, SIP ladder, GUI refresh, login refresh


'''Key Questions:'''
'''Key Questions:'''
* What types of groups are available in VoIPmonitor?
* What types of groups are available in VoIPmonitor?
* How do I create an IP group for a SIP trunk?
* How do I create an IP group for a SIP trunk?
* What is the Trunk checkbox and how does it affect call classification?
* What is the Trunk checkbox and Server checkbox used for?
* What is the Server checkbox and when should I use it?
* How do I differentiate inbound and outbound calls?
* What is the SIP history group checkbox used for?
* What is the SIP history group checkbox for NAT devices?
* How do I merge private and public IPs in the SIP ladder view for NAT devices?
* How do I use regex patterns in telephone number groups?
* How do I differentiate inbound and outbound calls for capacity planning?
* How do I import a large list of phone numbers?
* How do I create CDR filter templates using IP groups?
* Why is my new group not visible in dropdown lists?
* How do I import a large list of phone numbers into a group?
* How do I configure IP anonymization for GDPR?
* How do I filter CDRs by a group of phone numbers?
* Can I use regular expressions in telephone number groups?
* How do I configure IP anonymize rewrite rules for GDPR compliance?
* Why is my new group not visible in dropdown lists after creating it?
* Do I need to refresh the GUI after creating a new group?

Latest revision as of 16:48, 8 January 2026


Groups define reusable sets of IP addresses, telephone numbers, and emails for filtering CDRs, configuring alerts, and reports.

ℹ️ Note: After creating a new group, log out and log back in for it to appear in dropdown lists (CDR filters, alerts, charts).

Group Types

Type Path Use Cases
IP Groups → IPs SIP trunks, call direction classification, CDR filtering by IP
Tel. Numbers Groups → Tel. numbers Filter CDRs by caller/called, alert on number ranges
Emails Groups → Emails Recipients for alerts and reports

IP Groups

Define sets of IP addresses or CIDR ranges for filtering and classification.

Creating IP Groups

  1. Navigate to Groups → IPs
  2. Click "New group", enter name
  3. Add IPs or CIDR ranges (one per line):
192.168.1.100
10.0.0.0/24
2001:db8::1/128
  1. Configure checkboxes (see below)
  2. Save

Checkbox Options

Checkbox Purpose When to Use
Trunk Marks IPs as external carrier/provider SIP trunk IPs from your VoIP provider
Server Marks IPs as internal infrastructure Your PBX, SBC, or media servers
SIP history group Merges private/public IPs in SIP ladder view NAT devices where signaling uses public IP but RTP uses private IP

Call Direction Classification

Using Trunk and Server checkboxes enables precise filtering:

Direction Filter Logic
Outbound callerIP in Server group AND calledIP in Trunk group
Inbound callerIP in Trunk group AND calledIP in Server group
Internal Both IPs in same group (or neither in any group)

SIP History Group for NAT

When a device behind NAT shows different IPs in signaling vs media:

  • Public IP: 1.2.3.4 (in SIP headers)
  • Private IP: 10.0.0.3 (actual device)

Create a group with both IPs and enable SIP history group checkbox. The GUI will consolidate duplicate flows into a single column in SIP ladder view.

Telephone Number Groups

Define sets of phone numbers or patterns for CDR filtering and alerts.

Creating Groups

Manual entry:

  1. Navigate to Groups → Tel. numbers
  2. Click "New group"
  3. Add numbers one per line
  4. Save

Import/Export (for large lists):

  1. Click "import/export" button
  2. Upload text file with one number per line

Regex Patterns

⚠️ Warning: Entries are literal strings by default. Wrap patterns with R(...) to enable regex.

Pattern Description
R(^500[0-9]{4}$) Match 7-digit numbers starting with 500
00)) International numbers (+ or 00 prefix)
R([a-zA-Z]) Numbers containing letters (malformed IDs)

Using in CDR Filters

  1. Go to CDR view → Filter Form
  2. In Group Filters section, select your group from Caller Groups or Called Groups
  3. Click Search

💡 Tip: Changes to the group automatically apply to all filters using it.

Email Groups

Define recipient lists for alerts and reports.

  1. Navigate to Groups → Emails
  2. Click "New group"
  3. Add email addresses (one per line)
  4. Save

IP Anonymize Rewrite Rules

Replace original IPs with anonymized values in the database (GDPR compliance).

⚠️ Warning: Rules apply only to new data after saving. Existing records are not modified.

Configuration

Field Description
IP to anonymize Original IP or network to hide
Mask [0-32] Source CIDR mask (32 = single IP, 24 = subnet)
Anonymous IP Replacement IP stored in database
Mask [0-32] Target mask (same as source = preserves host part)

Example: Map 192.168.1.x → 10.0.0.x (preserve host address):

Setting Value
IP to anonymize 192.168.1.0
Mask 24
Anonymous IP 10.0.0.0
Mask 24

See Also

AI Summary for RAG

Summary: VoIPmonitor Groups feature for defining reusable sets of IP addresses, telephone numbers, and emails. IP groups support Trunk, Server, and SIP history group checkboxes for call direction classification (Outbound = callerIP in Server + calledIP in Trunk; Inbound = reverse) and NAT device consolidation in SIP ladder view. Telephone number groups support manual entry, import/export for large lists, and regex patterns with R(...) wrapper syntax. Email groups define recipients for alerts and reports. IP Anonymize Rewrite Rules enable GDPR-compliant IP masking for new data only. Important: log out and back in after creating groups for them to appear in dropdown lists.

Keywords: groups, IP groups, telephone numbers, email groups, SIP trunks, Trunk checkbox, Server checkbox, SIP history group, call direction, inbound, outbound, CDR filter, Caller Groups, Called Groups, regex patterns, R() wrapper, import export, IP anonymize, GDPR, NAT, SIP ladder, GUI refresh, login refresh

Key Questions:

  • What types of groups are available in VoIPmonitor?
  • How do I create an IP group for a SIP trunk?
  • What is the Trunk checkbox and Server checkbox used for?
  • How do I differentiate inbound and outbound calls?
  • What is the SIP history group checkbox for NAT devices?
  • How do I use regex patterns in telephone number groups?
  • How do I import a large list of phone numbers?
  • Why is my new group not visible in dropdown lists?
  • How do I configure IP anonymization for GDPR?