Groups: Difference between revisions

From VoIPmonitor.org
(Restructure page: add Overview section, expand IP Groups with Trunk checkbox explanation, add Email Groups section, fix formatting (numbered lists, syntax highlighting), improve AI RAG section)
(Rewrite: condensed structure, consolidated checkbox options into table, added See Also section)
 
(7 intermediate revisions 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]]


== 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")
# Add IPs or CIDR ranges (one per line):
# Add IP addresses or CIDR ranges, one per line
<syntaxhighlight lang="text">
# Configure the '''Trunk''' checkbox if applicable
# Save the group
 
=== Trunk Checkbox ===
 
The '''Trunk''' checkbox is an important feature for IP groups. When enabled, it marks the IPs in this group as belonging to an external SIP trunk (e.g., your VoIP provider).
 
This allows the CDR filter to distinguish:
* '''Internal calls''' – Both caller and called IPs are NOT in any trunk group
* '''Incoming calls''' – Caller IP is in a trunk group, called IP is not
* '''Outgoing calls''' – Called IP is in a trunk group, caller IP is not
 
=== Example IP Group Entries ===
 
<pre>
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
</pre>
</syntaxhighlight>
# Configure checkboxes (see below)
# Save
 
=== Checkbox Options ===
 
{| class="wikitable"
|-
! 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
|}


== Telephone Number Groups ==
=== Call Direction Classification ===


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.
Using '''Trunk''' and '''Server''' checkboxes enables precise filtering:


=== Creating and Managing Phone Number Groups ===
{| class="wikitable"
|-
! 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)
|}


You can create phone number groups manually one at a time, or use the import/export functionality for large lists.
<kroki lang="mermaid">
%%{init: {'flowchart': {'nodeSpacing': 20, 'rankSpacing': 50}}}%%
flowchart LR
    subgraph Server["Server Group (Internal)"]
        PBX[PBX/SBC]
    end
    subgraph Trunk["Trunk Group (External)"]
        Carrier[Carrier/Provider]
    end
    PBX -->|"Outbound"| Carrier
    Carrier -->|"Inbound"| PBX
</kroki>


==== Manual Entry ====
=== SIP History Group for NAT ===


# Navigate to GUI → Groups → Tel. numbers
When a device behind NAT shows different IPs in signaling vs media:
# Click the "New group" button
* Public IP: 1.2.3.4 (in SIP headers)
# Enter a Group name
* Private IP: 10.0.0.3 (actual device)
# Add phone numbers one per line
# Save the group


==== Import/Export (Recommended for Large Lists) ====
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.


The import/export feature allows you to create and manage large lists of phone numbers efficiently.
== Telephone Number Groups ==


'''To import phone numbers:'''
Define sets of phone numbers or patterns for CDR filtering and alerts.


# Navigate to GUI → Groups → Tel. numbers
=== Creating Groups ===
# 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:'''
'''Manual entry:'''
# Navigate to '''Groups → Tel. numbers'''
# Click "New group"
# Add numbers one per line
# Save


<syntaxhighlight lang="text">
'''Import/Export (for large lists):'''
+12025551234
# Click "import/export" button
+12025551235
# Upload text file with one number per line
+12025551236
+447911123456
</syntaxhighlight>


=== Using Phone Number Groups in CDR Filters ===
=== Regex Patterns ===


After creating a phone number group:
{{Warning|1=Entries are literal strings by default. Wrap patterns with <code>R(...)</code> to enable regex.}}


# Go to the CDR view
{| class="wikitable"
# Click the "Filter Form" button
|-
# In the Common tab, locate the "Group Filters" section
! Pattern !! Description
# Select your group from the "Caller Groups" or "Called Groups" dropdown
|-
# Click "Search"
| <code>R(^500[0-9]{4}$)</code> || Match 7-digit numbers starting with 500
|-
| <code>R(^(\+|00))</code> || International numbers (+ or 00 prefix)
|-
| <code>R([a-zA-Z])</code> || Numbers containing letters (malformed IDs)
|}


'''Benefits of using groups:'''
=== Using in CDR Filters ===
* Any changes made to the group are automatically propagated to all filters where the group is used
* Ideal for managing large lists of phone numbers
* Groups can be reused across multiple filters and alerts


=== Maximum Limits ===
# Go to CDR view → Filter Form
# In '''Group Filters''' section, select your group from '''Caller Groups''' or '''Called Groups'''
# Click Search


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.
{{Tip|Changes to the group automatically apply to all filters using it.}}


== 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 GUI → Groups → Emails
# Navigate to '''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 138: 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 166: Line 169:
|}
|}


'''Note:''' 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) and IP anonymize rewrite rules in VoIPmonitor. IP groups support the Trunk checkbox to distinguish internal/incoming/outgoing calls. Telephone number groups support manual entry and import/export for large lists. Email groups are used for alert and report distribution. IP anonymize rewrite rules replace original IP addresses in the database with masked values for privacy compliance (GDPR).
'''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, internal calls, incoming calls, outgoing calls, IP anonymize, rewrite rules, GDPR, privacy, IP masking, network anonymization
'''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?
* How do I import a large list of phone numbers into a group?
* How do I differentiate inbound and outbound calls?
* How do I filter CDRs by a group of phone numbers?
* What is the SIP history group checkbox for NAT devices?
* How do I configure IP anonymize rewrite rules for GDPR compliance?
* How do I use regex patterns in telephone number groups?
* How to anonymize a network prefix while preserving host addresses?
* How do I import a large list of phone numbers?
* How do I set up email groups for alerts?
* Why is my new group not visible in dropdown lists?
* How do I configure IP anonymization for GDPR?

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?