License: Difference between revisions
(Add information about transferring GUI licenses to new systems, concurrent operation trial licenses, and OS compatibility notes) |
(Rewrite: consolidated structure, removed redundancy, added tables for clarity) |
||
| (25 intermediate revisions by the same user not shown) | |||
| Line 1: | Line 1: | ||
[[Category:Administration]] | [[Category:Administration]] | ||
This page explains | This page explains VoIPmonitor channel licensing: what counts as a channel, what happens when limits are exceeded, and how to resolve license issues. | ||
== | == Understanding Channel Licensing == | ||
=== What is a Channel License? === | |||
A channel license limits concurrent calls processed by the VoIPmonitor GUI. Commercial licenses specify a channel cap (e.g., 100, 500, 1000 channels). | |||
A | {{Note|1='''Key distinction:''' A ''channel'' is a single, un-mergeable CDR leg—not necessarily one logical call. Complex scenarios (transfers, forking, re-invites) can create multiple CDR legs from one conversation.}} | ||
=== What Counts as a Channel? === | |||
=== | |||
{| class="wikitable" | |||
|- | |||
! Scenario !! Channels !! Explanation | |||
|- | |||
| Simple call: A → B || 1 || One CDR leg | |||
|- | |||
| Call ending with 487 (Request Terminated) || 0 || Excluded from counting | |||
|- | |||
| Call transfer: A → B → C (creates 2 legs) || 2 || Each un-mergeable leg counts | |||
|- | |||
| Forking/parallel ring || Multiple || One per destination leg | |||
|- | |||
| Same call captured by 2 sensors || 1 || Deduplicated if last 6 digits match (±10s window) | |||
|} | |||
'''Deduplication logic:''' The GUI deduplicates CDRs across sensors if the last 6 digits of caller and called numbers match within a ±10-second window. This means geo-redundant captures count as one channel. | |||
=== | === Distributed Deployments === | ||
For multi-sensor architectures: | |||
* '''One license covers all sensors''' connecting to a single central GUI+DB | |||
* Channels are aggregated across all sensors, not multiplied per sensor | |||
* ''' | * Same call captured by multiple sensors is deduplicated automatically | ||
* | |||
* | |||
'''Example:''' Sensors in New York, London, and Tokyo connecting to Frankfurt GUI = ONE license sized for total concurrent calls across all sites. | |||
For deployment details, see [[Sniffer_distributed_architecture|Client-Server Mode]]. | |||
== License Limit Exceeded == | |||
== | === Timeline === | ||
<kroki lang="mermaid"> | |||
%%{init: {'flowchart': {'nodeSpacing': 15, 'rankSpacing': 30}}}%% | |||
flowchart LR | |||
A[Limit<br/>Exceeded] --> B[Days 1-3:<br/>Grace Period] | |||
B --> C[Days 4-13:<br/>Lockdown] | |||
C --> D[Day 14+:<br/>GUI Locked] | |||
style A fill:#ffcc00 | |||
style B fill:#90EE90 | |||
style C fill:#FFA500 | |||
style D fill:#FF6B6B | |||
</kroki> | |||
=== Effects When Locked === | |||
= | {| class="wikitable" | ||
|- | |||
! Blocked !! Still Working | |||
|- | |||
| GUI access, Alerts, Reports, CSV exports || '''Sniffer continues recording all CDRs''' (data is NOT lost) | |||
|} | |||
== Resolving License Issues == | |||
=== Option 1: Upgrade License (Recommended) === | |||
# Log in to [https://www.voipmonitor.org voipmonitor.org] → '''Services''' → '''My services''' | |||
# Click '''UPGRADE''' on your license → select new tier → complete checkout | |||
# Download new <code>key.php</code> and install (see [[#License Key Location|License Key Location]]) | |||
=== Option 2: Self-Service Temporary Increase === | |||
For immediate relief without contacting support: | |||
# GUI → '''Settings > License''' | |||
# Click '''"Get License Key"''' button | |||
# Receive '''14-day temporary increase''' | |||
{{Tip|The license check considers only the last 3 weeks of call data. After clicking "Get License Key", daily over-limit alerts stop for 14 days.}} | |||
=== Option 3: Contact Support === | |||
=== Option | |||
Support can: | Support can: | ||
* | * Provide temporary channel limit increase | ||
* Investigate | * Investigate incorrect CDR counting | ||
* | * Issue emergency 30-day trial license (for expired licenses due to billing issues) | ||
=== Option 4: Delete CDRs (Destructive) === | |||
= | {{Warning|1=This deletes all existing CDRs. Only use as last resort.}} | ||
<syntaxhighlight lang="bash"> | |||
systemctl stop voipmonitor | |||
mysql -u root -p voipmonitor -e "TRUNCATE TABLE cdr; TRUNCATE TABLE cdr_next_partition;" | |||
systemctl start voipmonitor | |||
</syntaxhighlight> | |||
To re-process from PCAP files afterward: | |||
<syntaxhighlight lang="bash"> | |||
voipmonitor --config-file /etc/voipmonitor.conf --readpcapdir /var/spool/voipmonitor | |||
</syntaxhighlight> | |||
=== | === Trial Expiration === | ||
Before purchasing after trial expiration: | |||
# Check if license already purchased: voipmonitor.org → '''Services''' → '''My services''' | |||
# | # If purchased but not applied: Get <code>key.php</code> from order email and install it | ||
# | # Only if no purchase exists: Buy via GUI (About > Buy License) or portal | ||
=== HWID Mismatch Error === | |||
'''"license file key.php is for another hwid"''' occurs when hardware ID changed (migration, cloud instance recreation). | |||
'''Solution:''' GUI → '''Settings > License''' → '''"Get License"''' button (auto-syncs with current HWID) | |||
- | |||
'''For frequent cloud instance recreation:''' Request '''domain-based licensing''' from support (binds to domain name instead of hardware ID). | |||
After | === After License Renewal === | ||
''' | # GUI → '''Settings > License''' | ||
# Click '''"Change license key"''' to expand options | |||
# Click '''"Get license key"''' to fetch updated license | |||
'''Manual method:''' Paste full license key (all lines: Expires, easycallerid, hwid, id, maxcalls, upgradeexpire) into the license text field. | |||
== Monitoring Usage == | |||
=== Current Status === | |||
Check GUI footer or '''About/License''' page for active channels vs. license limit. | |||
=== Historical Data === | |||
'''Tools > Concurrent Calls Stats''' shows maximum concurrent calls for last 14 days (averaged over 60-minute windows). | |||
== | === Notification Emails === | ||
To disable license notification emails: | |||
# GUI → '''Settings > License''' | |||
# Clear the email address field for license notifications | |||
# Save changes | |||
{{Note|This only disables license-related emails (warnings, overage, expiration, lock). Other alerts continue normally.}} | |||
== License Key | == License Key Management == | ||
=== License Key Location === | |||
<code>/var/www/html/voipmonitor/key.php</code> | <code>/var/www/html/voipmonitor/key.php</code> | ||
=== Transferring to New System === | |||
# Copy <code>key.php</code> from old system to new system | |||
# Restart GUI service | |||
'''For concurrent operation''' (old + new during migration, or test/dev environments): | |||
* Contact support to configure license for simultaneous multi-server use (preferred) | |||
* Or obtain 30-day trial license for temporary system | |||
{{Tip|For test/dev servers, contact support to reconfigure your existing license for multiple servers at no extra cost.}} | |||
=== AWS/Cloud Considerations === | |||
{| class="wikitable" | |||
|- | |||
! Operation !! HWID Changes? !! Action Required | |||
|- | |||
| Stop & Start || Usually No || None | |||
|- | |||
| Reboot || No || None | |||
|- | |||
| Terminate & Launch New || Yes || New license key (use "Get License" button or contact support) | |||
|- | |||
| Auto-scaling Group || Yes per instance || Request domain-based licensing | |||
|} | |||
= | '''AWS permission fix''' (for "Invalid or corrupted hwid" errors): | ||
<syntaxhighlight lang="bash"> | |||
chmod 644 /dev/root | |||
</syntaxhighlight> | |||
== Subscription Terms == | |||
{| class="wikitable" | |||
|- | |||
! Term !! Meaning | |||
|- | |||
| '''Formal End Date''' || When your paid service period ends | |||
|- | |||
| '''Grace Period''' (20 days after) || For automatic renewal processing only—NOT extended access after cancellation | |||
|} | |||
= | {{Warning|1=If you cancel, access ends on the Formal End Date, not the grace period end.}} | ||
'''Emergency access:''' Contact support for 30-day emergency trial license while resolving billing issues. | |||
== Known Issue: Incorrect Channel Counting == | |||
{{Warning|1=Known bug: Some calls are incorrectly counted as two channels. Confirmed and escalated to development team.}} | |||
'''Symptoms:''' | |||
* License exceeded more frequently than expected | |||
* Tools > Concurrent Calls Stats shows higher peaks than actual call patterns | |||
'''Workaround:''' Contact support for manual channel limit increase (no upgrade required). | |||
== | == See Also == | ||
* [[Billing]] - | * [[Billing]] - Call cost calculation | ||
* [[ | * [[Reports]] - Report configuration | ||
* [[ | * [[GUI_Installation]] - Installation and upgrade procedures | ||
* [[ | * [[Sniffer_distributed_architecture|Client-Server Mode]] - Multi-sensor deployments | ||
== AI Summary for RAG == | == AI Summary for RAG == | ||
'''Summary:''' VoIPmonitor channel licensing | '''Summary:''' VoIPmonitor uses channel licensing to limit concurrent calls processed by the GUI. Key concepts: (1) A channel = one un-mergeable CDR leg (transfers, forking, re-invites can create multiple legs from one call). Calls ending with 487 (Request Terminated) are excluded. (2) Distributed deployments: ONE license covers ALL sensors connecting to a single central GUI+DB. Deduplication occurs if last 6 digits of caller/called numbers match within ±10s window. (3) Exceeding limits: 3-day grace period, then lockdown process, GUI locks at day 14. Sniffer continues recording during lock. (4) Resolution options: Upgrade license, self-service 14-day temporary increase via "Get License Key" button (Settings > License), contact support for temporary increase or emergency trial, or delete CDRs (destructive). (5) Monitor usage via GUI footer or Tools > Concurrent Calls Stats (14-day history). (6) License transfer: Copy key.php to new system; contact support for concurrent multi-server use. (7) HWID mismatch: Use "Get License" button to re-sync; request domain-based licensing for frequent cloud instance recreation. (8) AWS: Stop/Start preserves HWID; Terminate/Launch changes it. Use chmod 644 /dev/root for permission issues. (9) Subscription terms: Formal End Date = service ends; Grace Period = renewal processing only. (10) Known bug: Some calls incorrectly counted as two channels—contact support for temporary limit increase. | ||
'''Keywords:''' channel license, concurrent calls, license limit, GUI lock | '''Keywords:''' channel license, concurrent calls, license limit, GUI lock, grace period, 14 days lock, 3 consecutive days, unlock GUI, upgrade license, CDR leg, un-mergeable CDR, call transfer, forking, re-invite, distributed licensing, multi-server, multiple sensors, channel aggregation, deduplication, last 6 digits, license transfer, HWID mismatch, domain-based licensing, license renewal, formal end date, grace period end date, emergency trial license, Get License button, Get License Key button, key.php, Tools Concurrent Calls Stats, temporary license increase, 14-day temporary license, self-service license increase, incorrect channel counting, known bug, test server, dev server, AWS, EC2, cloud instances, hardware ID, chmod 644 /dev/root, license notification emails, disable license emails, 487 Request Terminated | ||
'''Key Questions:''' | '''Key Questions:''' | ||
* What is a channel in VoIPmonitor licensing? | * What is a channel in VoIPmonitor licensing? | ||
* | * Can one call consume multiple license channels? | ||
* What happens when I exceed the channel license limit? | |||
* | * How do I unlock my VoIPmonitor GUI after license lock? | ||
* | * How do I get a temporary license increase without contacting support? | ||
* How does licensing work for distributed/multi-server deployments? | |||
* How do I get a temporary | * Do I need a separate license for each sensor? | ||
* | * How do I check my channel usage vs license limit? | ||
* Do I need | * How do I transfer a license to a new system? | ||
* How | * Can I use my existing license on a test or development server? | ||
* | * How do I fix "license file key.php is for another hwid" error? | ||
* What is domain-based licensing? | |||
* Can | * How do I refresh my license after renewal? | ||
* What happens to my VoIPmonitor license when I terminate an AWS EC2 instance? | |||
* How do I disable license notification emails? | |||
* Why is my license showing higher channel usage than expected? | |||
* Does the sniffer stop recording when the GUI is locked? | |||
* What is the difference between formal end date and grace period? | |||
* How do | |||
* | |||
* How do I | |||
* What happens to | |||
* How do I | |||
* | |||
* Does the sniffer stop | |||
* | |||
Revision as of 16:48, 8 January 2026
This page explains VoIPmonitor channel licensing: what counts as a channel, what happens when limits are exceeded, and how to resolve license issues.
Understanding Channel Licensing
What is a Channel License?
A channel license limits concurrent calls processed by the VoIPmonitor GUI. Commercial licenses specify a channel cap (e.g., 100, 500, 1000 channels).
ℹ️ Note: Key distinction: A channel is a single, un-mergeable CDR leg—not necessarily one logical call. Complex scenarios (transfers, forking, re-invites) can create multiple CDR legs from one conversation.
What Counts as a Channel?
| Scenario | Channels | Explanation |
|---|---|---|
| Simple call: A → B | 1 | One CDR leg |
| Call ending with 487 (Request Terminated) | 0 | Excluded from counting |
| Call transfer: A → B → C (creates 2 legs) | 2 | Each un-mergeable leg counts |
| Forking/parallel ring | Multiple | One per destination leg |
| Same call captured by 2 sensors | 1 | Deduplicated if last 6 digits match (±10s window) |
Deduplication logic: The GUI deduplicates CDRs across sensors if the last 6 digits of caller and called numbers match within a ±10-second window. This means geo-redundant captures count as one channel.
Distributed Deployments
For multi-sensor architectures:
- One license covers all sensors connecting to a single central GUI+DB
- Channels are aggregated across all sensors, not multiplied per sensor
- Same call captured by multiple sensors is deduplicated automatically
Example: Sensors in New York, London, and Tokyo connecting to Frankfurt GUI = ONE license sized for total concurrent calls across all sites.
For deployment details, see Client-Server Mode.
License Limit Exceeded
Timeline
Effects When Locked
| Blocked | Still Working |
|---|---|
| GUI access, Alerts, Reports, CSV exports | Sniffer continues recording all CDRs (data is NOT lost) |
Resolving License Issues
Option 1: Upgrade License (Recommended)
- Log in to voipmonitor.org → Services → My services
- Click UPGRADE on your license → select new tier → complete checkout
- Download new
key.phpand install (see License Key Location)
Option 2: Self-Service Temporary Increase
For immediate relief without contacting support:
- GUI → Settings > License
- Click "Get License Key" button
- Receive 14-day temporary increase
💡 Tip: The license check considers only the last 3 weeks of call data. After clicking "Get License Key", daily over-limit alerts stop for 14 days.
Option 3: Contact Support
Support can:
- Provide temporary channel limit increase
- Investigate incorrect CDR counting
- Issue emergency 30-day trial license (for expired licenses due to billing issues)
Option 4: Delete CDRs (Destructive)
⚠️ Warning: This deletes all existing CDRs. Only use as last resort.
systemctl stop voipmonitor
mysql -u root -p voipmonitor -e "TRUNCATE TABLE cdr; TRUNCATE TABLE cdr_next_partition;"
systemctl start voipmonitor
To re-process from PCAP files afterward:
voipmonitor --config-file /etc/voipmonitor.conf --readpcapdir /var/spool/voipmonitor
Trial Expiration
Before purchasing after trial expiration:
- Check if license already purchased: voipmonitor.org → Services → My services
- If purchased but not applied: Get
key.phpfrom order email and install it - Only if no purchase exists: Buy via GUI (About > Buy License) or portal
HWID Mismatch Error
"license file key.php is for another hwid" occurs when hardware ID changed (migration, cloud instance recreation).
Solution: GUI → Settings > License → "Get License" button (auto-syncs with current HWID)
For frequent cloud instance recreation: Request domain-based licensing from support (binds to domain name instead of hardware ID).
After License Renewal
- GUI → Settings > License
- Click "Change license key" to expand options
- Click "Get license key" to fetch updated license
Manual method: Paste full license key (all lines: Expires, easycallerid, hwid, id, maxcalls, upgradeexpire) into the license text field.
Monitoring Usage
Current Status
Check GUI footer or About/License page for active channels vs. license limit.
Historical Data
Tools > Concurrent Calls Stats shows maximum concurrent calls for last 14 days (averaged over 60-minute windows).
Notification Emails
To disable license notification emails:
- GUI → Settings > License
- Clear the email address field for license notifications
- Save changes
ℹ️ Note: This only disables license-related emails (warnings, overage, expiration, lock). Other alerts continue normally.
License Key Management
License Key Location
/var/www/html/voipmonitor/key.php
Transferring to New System
- Copy
key.phpfrom old system to new system - Restart GUI service
For concurrent operation (old + new during migration, or test/dev environments):
- Contact support to configure license for simultaneous multi-server use (preferred)
- Or obtain 30-day trial license for temporary system
💡 Tip: For test/dev servers, contact support to reconfigure your existing license for multiple servers at no extra cost.
AWS/Cloud Considerations
| Operation | HWID Changes? | Action Required |
|---|---|---|
| Stop & Start | Usually No | None |
| Reboot | No | None |
| Terminate & Launch New | Yes | New license key (use "Get License" button or contact support) |
| Auto-scaling Group | Yes per instance | Request domain-based licensing |
AWS permission fix (for "Invalid or corrupted hwid" errors):
chmod 644 /dev/root
Subscription Terms
| Term | Meaning |
|---|---|
| Formal End Date | When your paid service period ends |
| Grace Period (20 days after) | For automatic renewal processing only—NOT extended access after cancellation |
⚠️ Warning: If you cancel, access ends on the Formal End Date, not the grace period end.
Emergency access: Contact support for 30-day emergency trial license while resolving billing issues.
Known Issue: Incorrect Channel Counting
⚠️ Warning: Known bug: Some calls are incorrectly counted as two channels. Confirmed and escalated to development team.
Symptoms:
- License exceeded more frequently than expected
- Tools > Concurrent Calls Stats shows higher peaks than actual call patterns
Workaround: Contact support for manual channel limit increase (no upgrade required).
See Also
- Billing - Call cost calculation
- Reports - Report configuration
- GUI_Installation - Installation and upgrade procedures
- Client-Server Mode - Multi-sensor deployments
AI Summary for RAG
Summary: VoIPmonitor uses channel licensing to limit concurrent calls processed by the GUI. Key concepts: (1) A channel = one un-mergeable CDR leg (transfers, forking, re-invites can create multiple legs from one call). Calls ending with 487 (Request Terminated) are excluded. (2) Distributed deployments: ONE license covers ALL sensors connecting to a single central GUI+DB. Deduplication occurs if last 6 digits of caller/called numbers match within ±10s window. (3) Exceeding limits: 3-day grace period, then lockdown process, GUI locks at day 14. Sniffer continues recording during lock. (4) Resolution options: Upgrade license, self-service 14-day temporary increase via "Get License Key" button (Settings > License), contact support for temporary increase or emergency trial, or delete CDRs (destructive). (5) Monitor usage via GUI footer or Tools > Concurrent Calls Stats (14-day history). (6) License transfer: Copy key.php to new system; contact support for concurrent multi-server use. (7) HWID mismatch: Use "Get License" button to re-sync; request domain-based licensing for frequent cloud instance recreation. (8) AWS: Stop/Start preserves HWID; Terminate/Launch changes it. Use chmod 644 /dev/root for permission issues. (9) Subscription terms: Formal End Date = service ends; Grace Period = renewal processing only. (10) Known bug: Some calls incorrectly counted as two channels—contact support for temporary limit increase.
Keywords: channel license, concurrent calls, license limit, GUI lock, grace period, 14 days lock, 3 consecutive days, unlock GUI, upgrade license, CDR leg, un-mergeable CDR, call transfer, forking, re-invite, distributed licensing, multi-server, multiple sensors, channel aggregation, deduplication, last 6 digits, license transfer, HWID mismatch, domain-based licensing, license renewal, formal end date, grace period end date, emergency trial license, Get License button, Get License Key button, key.php, Tools Concurrent Calls Stats, temporary license increase, 14-day temporary license, self-service license increase, incorrect channel counting, known bug, test server, dev server, AWS, EC2, cloud instances, hardware ID, chmod 644 /dev/root, license notification emails, disable license emails, 487 Request Terminated
Key Questions:
- What is a channel in VoIPmonitor licensing?
- Can one call consume multiple license channels?
- What happens when I exceed the channel license limit?
- How do I unlock my VoIPmonitor GUI after license lock?
- How do I get a temporary license increase without contacting support?
- How does licensing work for distributed/multi-server deployments?
- Do I need a separate license for each sensor?
- How do I check my channel usage vs license limit?
- How do I transfer a license to a new system?
- Can I use my existing license on a test or development server?
- How do I fix "license file key.php is for another hwid" error?
- What is domain-based licensing?
- How do I refresh my license after renewal?
- What happens to my VoIPmonitor license when I terminate an AWS EC2 instance?
- How do I disable license notification emails?
- Why is my license showing higher channel usage than expected?
- Does the sniffer stop recording when the GUI is locked?
- What is the difference between formal end date and grace period?