Personal tools
Namespaces

Variants
Actions

Hosting Quota Notifications 1.X For WHMCS

From ModulesGarden Wiki
(Difference between revisions)
Jump to: navigation, search
(Module Settings)
 
(856 intermediate revisions by 6 users not shown)
Line 1: Line 1:
<meta name="keywords" content="ip manager for whmcs, ip manager configuration, whmcs ip manager management, whmcs ip manager installation, whmcs ip manager common problems, about whmcs ip manager, whmcs ip manager documentation, whmcs ip manager faq, whmcs ip manager help, whmcs ip manager guide, whmcs ip manager wiki, whmcs ip manager tutorial, whmcs ip manager tips, whmcs ip manager wiki"></meta>
+
<meta name="keywords" content="hosting quota notifications for whmcs, hosting quota notifications configuration, whmcs hosting quota notifications management, whmcs hosting quota notifications installation, whmcs hosting quota notifications common problems, about whmcs hosting quota notifications, whmcs hosting quota notifications documentation, whmcs hosting quota notifications faq, whmcs hosting quota notifications help, whmcs hosting quota notifications guide, whmcs hosting quota notifications wiki, whmcs hosting quota notifications tutorial, whmcs hosting quota notifications tips, whmcs hosting quota notifications wiki"></meta>
<meta name="description" content="ModulesGarden Wiki Contains All The Information You Need About The IP Manager For WHMCS Module."></meta>
+
<meta name="description" content="ModulesGarden Wiki Contains All The Information You Need About The Hosting Quota Notifications For WHMCS Module."></meta>
  
=About [http://www.modulesgarden.com/products/whmcs/ip_manager/features IP Manager For WHMCS]=
+
=About [https://www.modulesgarden.com/products/whmcs/hosting-quota-notifications Hosting Quota Notifications For WHMCS]=
 
{|
 
{|
|style="padding: 10px 0px 5px 0px;"|'''IP Manager For WHMCS''' allows you to conveniently add and manage IP subnet, and automatically assign IP addresses to your servers, products, addons or configurable options.<br />
+
|style="padding: 10px 0px 10px 0px;"|'''Hosting Quota Notifications For WHMCS''' allows you to send automatic notifications to your clients whenever they exceed previously set bandwidth or disk usage.
With our module you will be also able to assign an IP subnet to a specified client, integrate with 3rd party applications like cPanel, export IP subnets or view clear graphs.<br />
+
Notifications can be sent in two ways: upon exceeding given resource tier or after exceeding given resource limit in a specified time period.<br />
You will also be able to synchronize IP addresses used by products in your WHMCS system with the module's IP subnets.<br />
+
You can also define email templates and view details of each sent notification owing to logs.
What is more, IP Manager For WHMCS will allow your customers to easily manage their IP addresses from the WHMCS client area.
+
 
|}
 
|}
 
<!--a comment maybe? -->
 
<!--a comment maybe? -->
 
*'''Admin Area Features:'''
 
*'''Admin Area Features:'''
 
{|
 
{|
|style="padding: 10px 0px 0px 30px;"|✔ Create Multiple Configurations For Multiple Scenarios Of IP Addresses Assignment
+
|style="padding: 10px 0px 0px 30px;"|✔ Automatically Notify Your Clients Upon Exceeding Defined Limits Of Bandwidth And Disk Usage
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 30px;"|✔ Create Multiple Relations In One Configuration For Products, Addons, Configurable Options & Servers
+
|style="padding: 0px 0px 0px 30px;"|✔ Configure Notification Groups
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 30px;"|✔ Add IP Pools:
+
|style="padding: 0px 0px 0px 30px;"|✔ Choose Between Two Types Of Group Counting:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 45px;"|✔ CIDR Notation
+
|style="padding: 0px 0px 0px 45px;"|✔ Tiered - Define Tiers Of Usage
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 45px;"|✔ IP Addresses Range (IPv4 Only)
+
|style="padding: 0px 0px 0px 45px;"|✔ Fixed - Define Usage Grow Over Time
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 45px;"|✔ IP Addresses List (IPv4 Only)
+
|style="padding: 0px 0px 0px 30px;"|✔ Assign Multiple Products To Single Notification Group
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 30px;"|✔ Add IPv6 Block In CIDR Notation
+
|style="padding: 0px 0px 0px 30px;"|✔ Assign Email Templates Per Notification Group
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 30px;"|✔ Export IP Pools To XML And CSV Format
+
|style="padding: 0px 0px 0px 30px;"|✔ Enable/Disable Notification Groups
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 30px;"|✔ Import IP Pools From XML And CSV Files 
+
|style="padding: 0px 0px 10px 30px;"|✔ View Logs Of Sent Notifications
|}
+
{|
+
|style="padding: 0px 0px 0px 30px;"|✔ Synchronize IP Addresses Used By Products In WHMCS With IP Manager
+
|}
+
{|
+
|style="padding: 0px 0px 0px 30px;"|✔ Exclude Selected IP Addresses From IP Pool During Its Creation
+
|}
+
{|
+
|style="padding: 0px 0px 0px 30px;"|✔ Integrate With 3rd Party Applications:
+
|}
+
{|
+
|style="padding: 0px 0px 0px 45px;"|✔ cPanel
+
|}
+
{|
+
|style="padding: 0px 0px 0px 45px;"|✔ [http://www.modulesgarden.com/products/whmcs/cpanel_extended/features cPanel Extended]
+
|}
+
{|
+
|style="padding: 0px 0px 0px 45px;"|✔ Plesk
+
|}
+
{|
+
|style="padding: 0px 0px 0px 45px;"|✔ Parallels Cloud Server
+
|}
+
{|
+
|style="padding: 0px 0px 0px 45px;"|✔ [http://www.modulesgarden.com/products/whmcs/solusvm_extended_vps/features SolusVM Extended VPS]
+
|}
+
{|
+
|style="padding: 0px 0px 0px 45px;"|✔ [http://www.modulesgarden.com/products/whmcs/proxmox_vps/features Proxmox VPS]
+
|}
+
{|
+
|style="padding: 0px 0px 0px 30px;"|✔ Create New Integration Modules
+
|}
+
{|
+
|style="padding: 0px 0px 0px 30px;"|✔ Assign/Unassign IP Addresses From IP Pool For Specified Client Service
+
|}
+
{|
+
|style="padding: 0px 0px 0px 30px;"|✔ Omit Dedicated IP Address Fields For Specific Configuration
+
|}
+
{|
+
|style="padding: 0px 0px 0px 30px;"|✔ Define Custom Field Usage
+
|}
+
{|
+
|style="padding: 0px 0px 0px 30px;"|✔ Receive Automatic Email Reminder Sent When Specified Usage Percentage Of Any IP Pool Has Been Exceeded
+
|}
+
{|
+
|style="padding: 0px 0px 0px 30px;"|✔ Define Configuration Of Integration Method (cPanel & cPanel Extended)
+
|}
+
{|
+
|style="padding: 0px 0px 0px 30px;"|✔ Set Up IP Addresses Cleaner - Ensures That All Assigned IP Addresses Are In Use
+
|}
+
{|
+
|style="padding: 0px 0px 0px 30px;"|✔ View IP Pool Usage Statistics And Graphs
+
|}
+
{|
+
|style="padding: 0px 0px 10px 30px;"|✔ View Logs
+
|}
+
*'''IP Pool Features:'''
+
{|
+
|style="padding: 10px 0px 0px 30px;"|✔ Lock IP Pool To Client
+
|}
+
{|
+
|style="padding: 0px 0px 0px 30px;"|✔ Filter Data In IP Addresses List
+
|}
+
{|
+
|style="padding: 0px 0px 0px 30px;"|✔ View IP Addresses Of IP Pool
+
|}
+
{|
+
|style="padding: 0px 0px 0px 30px;"|✔ Delete Single IP Address From Pool
+
|}
+
{|
+
|style="padding: 0px 0px 0px 30px;"|✔ Bulk Actions - Assign/Unassign/Delete IP Addresses
+
|}
+
{|
+
|style="padding: 0px 0px 0px 30px;"|✔ Create Custom Fields For IP Pool Or IP Address
+
|}
+
{|
+
|style="padding: 0px 0px 10px 30px;"|✔ Generate Free IP Addresses
+
|}
+
*'''IP Block Features:'''
+
{|
+
|style="padding: 10px 0px 0px 30px;"|✔ View IP Pools Of Block
+
|}
+
{|
+
|style="padding: 0px 0px 0px 30px;"|✔ View IP Addresses Of IP Pool
+
|}
+
{|
+
|style="padding: 0px 0px 0px 30px;"|✔ Assign/Unassign/Delete Any IP Pool
+
|}
+
{|
+
|style="padding: 0px 0px 0px 30px;"|✔ Create Custom Fields For IP Pools
+
|}
+
{|
+
|style="padding: 0px 0px 10px 30px;"|✔ Generate Free IP Pools
+
|}
+
*'''Client Area Features:'''
+
{|
+
|style="padding: 10px 0px 0px 30px;"|✔ View Assigned IP Addresses
+
|}
+
{|
+
|style="padding: 0px 0px 0px 30px;"|✔ Unassign IP Addresses
+
|}
+
{|
+
|style="padding: 0px 0px 10px 30px;"|✔ Order Additional IP Addresses
+
 
|}
 
|}
 
*'''General Info:'''
 
*'''General Info:'''
 
{|
 
{|
|style="padding: 10px 0px 0px 30px;"|✔ Supports IPv4 and IPv6
+
|style="padding: 10px 0px 0px 30px;"|✔ Multi-Language Support
|}
+
{|
+
|style="padding: 0px 0px 0px 30px;"|✔ Supported All Types Of Configurable Options
+
|}
+
{|
+
|style="padding: 0px 0px 0px 30px;"|✔ IPv6 Pools Relying On IP Addresses Range And Assigned IP Addresses (Free IPv6 Addresses Are Not Stored In Database)
+
|}
+
{|
+
|style="padding: 0px 0px 0px 30px;"|✔ Block Assignment Of IP Addresses For IPv6
+
|}
+
{|
+
|style="padding: 0px 0px 0px 30px;"|✔ Multi-Language Support
+
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 30px;"|✔ Supports WHMCS Templates Five and Six
+
|style="padding: 0px 0px 0px 30px;"|✔ Supports PHP 5.6 Up To PHP 7.2
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 30px 30px;"|✔ Supports WHMCS V5 and V6
+
|style="padding: 0px 0px 30px 30px;"|✔ Supports WHMCS V7
 
|}
 
|}
  
 
=Installation=
 
=Installation=
 
{|
 
{|
|style="padding: 10px 0px 15px 15px;"|'''This tutorial will show you how to successfully install and configure IP Manager For WHMCS.''' <br />
+
|style="padding: 10px 0px 30px 15px;"|'''This tutorial will show you how to successfully install and configure Hosting Quota Notifications For WHMCS.''' <br />
 
We will guide you step by step through the whole installation and configuration process.
 
We will guide you step by step through the whole installation and configuration process.
 
|}
 
|}
 +
==Installation==
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|'''1. Log in to your client area and download IP Manager For WHMCS.'''
+
|style="padding: 10px 0px 20px 15px;"|'''1. Log in to our client area and download the module.'''
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:IPM2_1.png]]
+
|style="padding: 0px 0px 20px 25px;"|[[File:HQN_1.png]]
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|'''2. Upload and extract the module into the main WHMCS directory.'''<br />
+
|style="padding: 0px 0px 10px 15px;"|'''2. In the downloaded file you will find two packages that support different PHP versions.'''<br/>As presented on the screen below, the first one is dedicated to PHP 5.6 up to PHP 7.0, while the second one is aimed at PHP 7.1 up to PHP 7.2.<br/>It does not apply to open source versions.<br/>
Files in your WHMCS directory should look like this.
+
'' '''Note''': You can check the current PHP version in your WHMCS. To do so, proceed to ''' 'Utilities' › 'System' › 'PHP Info'.'''
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:IPM2.png]]
+
|style="padding: 0px 0px 20px 25px;"|[[File:PHP56_72.png]]
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|'''3. When you install IP Manager for the first time, you have to rename '' 'license_RENAME.php' '' file.'''<br />
+
|style="padding: 0px 0px 15px 15px;"|'''3. Extract the downloaded file and choose the one with the right PHP version. Upload and extract the PHP file into the main WHMCS directory.'''<br />
File is located in '' 'modules/addons/IPM2_anager2/license_RENAME.php'. '' Rename it from '' 'license_RENAME.php' '' to '' 'license.php'. ''
+
The content of PHP version files should look like this.  
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:IPM3.png]]
+
|style="padding: 0px 0px 20px 25px;"|[[File:drfere.png]]
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|'''4. In order to configure your license key, you have to edit a previously renamed '' 'license.php' '' file.'''<br />
+
|style="padding: 0px 0px 15px 15px;"|'''4. When you install Hosting Quota Notifications For WHMCS for the first time you have to rename '' 'license_RENAME.php' '' file.'''<br />
Enter your license key between quotation marks as presented on the following screen. You can find your license key in your client area'' 'My Products'. ''
+
File is located in '' 'modules/addons/hosting_quota_notifications/license_RENAME.php' '' . Rename it from '' 'license_RENAME.php' '' to '' 'license.php' '' .
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:IPM2_4.png]]
+
|style="padding: 0px 0px 20px 25px;"|[[File:HQN_3.png]]
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|'''5. Remove all files from '' 'tempates_c' '' folder located in your WHMCS root directory.'''
+
|style="padding: 0px 0px 15px 15px;"|'''5. In order to configure your license key, you have to edit a previously renamed '' 'license.php' '' file.'''<br />
 +
Enter your license key between quotation marks as presented on the following screen. You can find your license key in our client area'' 'My Products' ''.
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|'''6. Now, you have to activate the module in your WHMCS system.'''<br />
+
|style="padding: 0px 0px 30px 25px;"|[[File:HQN_4.png]]
Log in to your WHMCS admin area and go to '' 'Setup' '' → '' 'Addon Modules'. ''<br />
+
Afterwards, find '' 'IP Manager' '' and press '' 'Activate' '' button.
+
|}
+
{|
+
|style="padding: 0px 0px 20px 25px;"|[[File:IPM2_5.png]]
+
|}
+
{|
+
|style="padding: 0px 0px 15px 15px;"|'''7. In the next step you need to permit the access to the module.'''<br />
+
Click on '' 'Configure' '' button, tick desired admin roles and press '' 'Save Changes'. ''
+
|}
+
{|
+
|style="padding: 0px 0px 20px 25px;"|[[File:IPM2_6.png]]
+
|}
+
{|
+
|style="padding: 0px 0px 15px 15px;"|'''8. The last step is setting chmod 755 to '' 'storage' '' folder.'''<br />
+
Folder is located in '' 'you_whmcs/modules/addons/IPM2_anager2'. ''
+
|}
+
{|
+
|style="padding: 0px 0px 20px 25px;"|[[File:IPM6.1.png]]
+
|}
+
{|
+
|style="padding: 0px 0px 15px 15px;"|'''9. You have just successfully installed IP Manager!'''<br />
+
You can access your module in '' 'Addons' '' → '' 'IP Manager'. ''
+
|}
+
{|
+
|style="padding: 0px 0px 30px 25px;"|[[File:IPM2_7.png]]
+
 
|}
 
|}
  
=Configuration and Management=
+
==Configuration of Addon==
 
{|
 
{|
|style="padding: 10px 0px 30px 15px;"|'''IP Manager For WHMCS allows you to manage dedicated IP addresses' pools, automatically assign them to clients/products/servers/addons/configurable options.<br />
+
|style="padding: 10px 0px 15px 15px;"|'''6. Now you have to activate the module in your WHMCS system.'''<br />
IP Manager supports both IPv4 and IPv6. '''<br />
+
Log in to your WHMCS admin area. Go to '' 'Setup' '' → '' 'Addon Modules' ''. Afterwards, find '' 'Hosting Quota Notifications' '' and press '' 'Activate' '' button.
Module enables clients to manage and order dedicated IP addresses.<br />
+
In this short guide we will present you the possibilities of our module.  
+
 
|}
 
|}
==Subnets==
 
 
{|
 
{|
|style="padding: 10px 0px 30px 15px;"|To manage any Subnet via IP Manager you have to add it first.<br />
+
|style="padding: 0px 0px 20px 25px;"|[[File:HQN_5.png]]
Remember that it is very important to configure any IP reservation rules before you create any subnets. If you add rules later on, they may not work properly!<br/>
+
Read about rules reservation [LINK DO RUKLI here.]
+
 
+
To add a new subnet press '' 'Create New Subnet' '' and follow further instructions.
+
 
|}
 
|}
===Create Subnet===
 
 
{|
 
{|
|style="padding: 10px 0px 20px 15px;"|To begin, add a new IP addresses subnet, press'' 'Create New Subnet' '' button.
+
|style="padding: 0px 0px 15px 15px;"|'''7. In the next step you need to permit access to this module.'''<br />
 +
To do so click on '' 'Configure' '' button, tick '' 'Access Control' '' near required admin role groups and press '' 'Save Changes' ''.
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 30px 25px;"|[[File:IPM2_8.png]]
+
|style="padding: 0px 0px 30px 25px;"|[[File:HQN_6.png]]
|}
+
{|
+
|style="padding: 0px 0px 15px 15px;"|'' 'Classless Inter-Domain Routing (CIDR)' '' can be used to add subnets.<br/>
+
First of all, select IP version: IPv4 or IPv6, type the first IP address from the subnet and a correct bitmask.<br/>
+
Correct ranges:<br/>
+
*IPv4 - 1 to 32
+
*IPv6 - 1 to 128
+
''Note: The first IP from the subnet should be compatible with [http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing CIDR notation].''
+
|}
+
{|
+
|style="padding: 0px 0px 20px 25px;"|[[File:IPM2_9.png]]
+
|}
+
{|
+
|style="padding: 0px 0px 15px 15px;"|You can exclude any number of IP addresses from the pool.<br />
+
To do so, enter them into '' 'Excluded IP Addresses:' '' textarea, one IP address or IP range per line.<br />
+
|}
+
{|
+
|style="padding: 0px 0px 20px 25px;"|[[File:IPM2_10.png]]
+
|}
+
{|
+
|style="padding: 0px 0px 15px 15px;"|If you want to set nameservers and gateway click on '' 'Toggle Advanced Settings'. ''
+
|}
+
{|
+
|style="padding: 0px 0px 20px 25px;"|[[File:IPM2_11.png]]
+
|}
+
{|
+
|style="padding: 0px 0px 15px 15px;"|Enter nameservers and gateway address into textboxes as shown on the screen below ''(This step is optional)''.<br />
+
Afterwards, confirm the creation of an IP pool through pressing '' 'Add Subnet' '' button.
+
|}
+
{|
+
|style="padding: 0px 0px 30px 25px;"|[[File:IPM2_12.png]]
+
 
|}
 
|}
  
===Available IP Subnets and Child-Subnets===
 
 
{|
 
{|
|style="padding: 10px 0px 15px 15px;"|Once you have added some IP pools you can preview some details on them and manage the IP addresses.
+
|style="padding: 0px 0px 15px 15px;"|'''8. You have just successfully installed Hosting Quota Notifications For WHMCS!'''<br />
As you can see on the following screen, you can find here a list of Subnets in a tree view. Press any of added IP Pools to see its details.
+
You can access your module in '' 'Addons' '' → '' 'Hosting Quota Notifications' ''.
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 30px 25px;"|[[File:IPM2_13.png]]
+
|style="padding: 0px 0px 30px 25px;"|[[File:HQN_7.png]]
|}
+
====Subnet====
+
{|
+
|style="padding: 10px 0px 20px 15px;"|To view subnet's details press on its address as shown on the following screen.
+
|}
+
{|
+
|style="padding: 0px 0px 20px 25px;"|[[File:IPM2_14.png]]
+
|}
+
{|
+
|style="padding: 0px 0px 15px 15px;"|In '' 'Subnet'' ' field, you can find information about teh address, mask, size, nameservers, gateway and many others.
+
|}
+
{|
+
|style="padding: 0px 0px 20px 25px;"|[[File:IPM2_15.png]]
+
|}
+
'''Bulk Actions'''
+
{|
+
|style="padding: 0px 0px 15px 15px;"|The most important functions of your IP Manager For WHMCS include some actions that can done on subnets.<br />
+
|}
+
{|
+
|style="padding: 0px 0px 20px 25px;"|[[File:IPM2_16.png]]
+
|}
+
{|
+
|style="padding: 0px 0px 20px 15px;"|
+
*'''Delete''' - use it to remove the subnet together with any IP address in it (if there are such already).
+
*'''Split''' - select split to divide the subnet into two equal subnets. Keep in mind that the subnet may already include some assigned IP addresses.<br/> If you split such a subnet, the assigned IPs might be transferred to another subnet.
+
*'''Merge''' - use this option if you want to join previously split subnet. Note that you can merge only parallel subnets.<br/>
+
Additionally, you must remember that merge action removes IP addresses from external servers.
+
*'''Create Child Subnet''' - this option allows to create subnet within a  '' 'parent' '' subnet.
+
*:Such child subnet may again be slit/merged, have its own child subnets.
+
|}
+
{|
+
|style="padding: 0px 0px 30px 25px;"|[[File:IPM2_17.png]]
+
 
|}
 
|}
  
====Excluded IP Addresses====
+
=Configuration and Management=
 
{|
 
{|
|style="padding: 10px 0px 15px 15px;"|List of excluded IP addresses. You can remove some addresses from the list or add new ones. <br/>
+
|style="padding: 10px 0px 30px 15px;"|'''In this section we will show you how to properly set up and use Hosting Quota Notifications For WHMCS.'''
Important! If you have any IP reservation rules set up, then do not include singe IP addresses here. This option should be used as an addition if you do not use rules.
+
 
|}
 
|}
 +
==Configuration==
 
{|
 
{|
|style="padding: 0px 0px 30px 25px;"|[[File:IPM2_18.png]]
+
|style="padding: 10px 0px 15px 15px;"|In '' 'Configuration' '' page you can find the list of configured notification groups.<br />
 +
You can enable/disable any of them, as well as alter or completely remove them.<br />
 +
Press '' 'Create New Group' '' to proceed.
 
|}
 
|}
====Custom Fields====
 
 
{|
 
{|
|style="padding: 10px 0px 15px 15px;"|IP Manager allows you to add custom fields per subnet.<br />
+
|style="padding: 0px 0px 20px 25px;"|[[File:HQN_9.png]]
To add a new custom field, press '' 'Create New Custom Field'. '' Afterwards, fill out the form with custom field name and value. <br/>
+
Again, this option should be used if you do not specify default custom fields or if you want to add some additional ones. Be careful and do not double custom fields here.  
+
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 30px 25px;"|[[File:IPM2_19.png]]
+
|style="padding: 0px 0px 15px 15px;"|Now, you can define all products related to this configuration and email template which will be used to notify your clients.<br />
 +
You can choose between two types of resource usage counting:<br />
 +
*Fixed - define amount of resources over specific time period. If client usage growth has exceeded the given limit in specified time, a notification will be sent.
 +
*Tiered - defines amount of resources. If client exceeds given limit, a notification will be sent.
 
|}
 
|}
 
====Assigned Client/Service====
 
 
{|
 
{|
|style="padding: 10px 0px 15px 15px;"|If you wish to assign an IP pool to a client or specific service, our module makes it available to you.<br />
+
|style="padding: 0px 0px 20px 25px;"|[[File:HQN_10.png]]
You can achieve that through using auto-complete textbox to choose the client and/or service.
+
Again, remember to '' 'Save Changes'. ''<br />
+
''Notes:<br/>
+
IP addresses will be added to all products ordered by client.<br/>
+
IP addresses will be added to all addons included in products.''
+
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 30px 25px;"|[[File:IPM2_20.png]]
+
|style="padding: 0px 0px 15px 15px;"|For example, shown below module uses fixed counting type.<br />
 +
As you can see, we have defined limits for both bandwidth and disk.<br />
 +
Settings shown below result in sending notification to client upon:
 +
*bandwidth usage growth by 5GB during 21 days.
 +
*disk usage growth by 100GB over period of 14 days.
 
|}
 
|}
 
===IP Addresses List===
 
 
{|
 
{|
|style="padding: 10px 0px 15px 15px;"|The easiest possible way of creating IP addresses within the created subnet.<br/>
+
|style="padding: 0px 0px 30px 25px;"|[[File:HQN_11.png]]
Simply press '' 'Create IP Address' '' and a new address in the subnet will be generated.  
+
 
|}
 
|}
 +
==Logs==
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:IPM2_21.png]]
+
|style="padding: 10px 0px 15px 15px;"|Under '' 'Logs' '' page you can view information about sent notifications.
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|Once the address is generated, you can proceed to its assignment.<br/>
+
|style="padding: 0px 0px 30px 25px;"|[[File:HQN_12.png]]
Use action buttons to do do so.
+
 
|}
 
|}
 +
==Notifications==
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:IPM2_22.png]]
+
|style="padding: 10px 0px 15px 15px;"|You can create as many notifications as you wish.<br />
 +
The only requirement is their type being set to '' 'Product/Service' ''.<br />
 +
Additionally, you can use {if} statement, as shown below:
 +
{if $bw_over} Your bandwidth usage is over {$bw_over}MB{if $bw_current} (current: {$bw_current}MB){/if}.{/if}
 +
{if $disk_over}Your disks usage is over {$disk_over}MB{if $disk_current} (current: {$disk_current}MB){/if}.{/if}
 +
It will allow you to use this email template for bandwidth and disk notifications at the same time.
 
|}
 
|}
====Assign Single IP Address====
 
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|You are now redirected to a page where you can assign this specific IP address to a service by entering a domain or a username,<br/> using 3rd party integration module or custom assignment.
+
|style="padding: 0px 0px 30px 25px;"|[[File:HQN_13.png]]
|}
+
{|
+
|style="padding: 0px 0px 20px 25px;"|[[File:IPM2_23.png]]
+
|}
+
{|
+
|style="padding: 0px 0px 20px 15px;"|Choose the method you wish to use and save the changes.
+
|}
+
{|
+
|style="padding: 0px 0px 20px 25px;"|[[File:IPM2_24.png]]
+
|}
+
{|
+
|style="padding: 0px 0px 20px 15px;"|As you can see, IP address is assigned to selected previously service (related to chosen domain).<br> You may always unassign this IP from this service and again assign it to another one, delete the IP address, create custom field for this single address.
+
|}
+
{|
+
|style="padding: 0px 0px 20px 25px;"|[[File:IPM2_25.png]]
+
 
|}
 
|}
  
===Tree View===
+
=Tips=
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|To clarify, a comfortable tree view of your created subnets and child-subnets is available. Let's take a look at it to summarize the divisions.
+
|style="padding: 10px 0px 30px 15px;"|
|}
+
{|
+
|style="padding: 0px 0px 20px 25px;"|[[File:IPM2_26.png]]
+
|}
+
{|
+
|style="padding: 0px 0px 20px 15px;"| You can see here a list of all subnets and child subnets in your IP Manager. Subnets marked with red already have some child subnets created, press any to show the list of child subnets.<br/> Accordingly available actions change.
+
|}
+
{|
+
|style="padding: 0px 0px 20px 25px;"|[[File:IPM2_27.png]]
+
|}
+
{|
+
|style="padding: 0px 0px 20px 15px;"| Any subnet can have child subnets created (with IP reservation rules taken into consideration) and custom fields assigned.
+
|}
+
{|
+
|style="padding: 0px 0px 20px 25px;"|[[File:IPM2_28.png]]
+
|}
+
{|
+
|style="padding: 0px 0px 20px 15px;"| Child subnets, however, can again have their child subnets created, can be split, merged or deleted. 
+
You may also manually exclude some IP addresses from a child subnet, assign clients and services directly to it and finally manage single IP addresses in such subnet.
+
|}
+
{|
+
|style="padding: 0px 0px 20px 25px;"|[[File:IPM2_29.png]]
+
 
|}
 
|}
  
==Settings==
+
=Update Instructions=
 
{|
 
{|
|style="padding: 10px 0px 15px 15px;"|'''Along with great power comes great responsibility.'''<br />
+
|style="padding: 10px 0px 30px 15px;"|Essential guidance through the process of updating the module is offered '''[https://www.docs.modulesgarden.com/How_To_Update_WHMCS_Module here]'''.<br/><br/>
IP Manager For WHMCS allows you to define its behavior, therefore make sure you configure settings that suit you needs.
+
Keep in mind there is a quick and easy option in our client area that will let you upgrade the license of your module to an open source version at any time - and at a lower price!<br/>
 +
To take advantage of it, simply use the '''License Upgrade''' button located on the product's page and a discounted invoice will be generated automatically.<br/>
 
|}
 
|}
===Show Settings===
 
====Module Settings====
 
{|
 
|style="padding: 10px 0px 20px 15px;"|Below, you can find description of each option.
 
*'''Assignment Process Settings'''
 
*#For any configuration you provide into this field, '' 'Dedicated IP' '' field will be omitted.
 
*#If checked, additional IP addresses will be stored in a custom field or '' 'Assigned IPs' '' field.
 
*#If checked, in case of a server provisioning failure, relation will be saved.
 
*#Automatically process the IP address when downgrading the configurable option.
 
*#Module ignores error message from an external server and continues the action.
 
*'''IP Logs Settings'''
 
*#IP addresses without product or user will not be displayed in '' 'IP Logs' '' page.
 
*'''Email Reminder Settings'''
 
*#If you check this checkbox, you will receive an email with notification about IP subnets running out of IP addresses.
 
*#Enables you to define percentage value which, when exceeded by any subnet, results in a notification being sent.
 
|}
 
{|
 
|style="padding: 0px 0px 30px 25px;"|[[File:IPM2_31.png]]
 
|}
 
 
====IP Addresses Cleaner====
 
{|
 
|style="padding: 10px 0px 20px 15px;"|IP Addresses Cleaner allows you to restore/remove IP addresses form WHMCS/IP Manager/both depending on chosen settings.
 
*'''IP Addresses Cleaner Settings'''
 
*#IP address are added to hosting if relation exists.
 
*#IP address' relation are removed if IP address is not assigned to any hosting.
 
*#If IP address does not exist in any IP pool, it is removed from hosting.
 
*#Create IP address' relation if it does not exist.
 
*#If IP address does not exist in any IP pool, it is removed from relations.
 
*#Set IP address as unassigned if its relation does not exist.
 
'''Important:''' After making any changes in those settings, press '' 'Update Settings'. ''<br />
 
Otherwise, settings will not be saved and the Cleaner will run using old ones.
 
|}
 
{|
 
|style="padding: 0px 0px 20px 25px;"|[[File:IPM2_32.png]]
 
|}
 
{|
 
|style="padding: 0px 0px 15px 15px;"|IP Addresses Cleaner allows you to automatically find and fix broken IP addresses assignment.<br />
 
For example, when you manually remove a product with IP addresses assigned or remove an IP pool.<br />
 
To start IP Addresses Cleaner, press '' 'Perform Cron Cleanup' ''.<br />
 
Actions issued by the cleaner are listed in a popup as shown on the following screen.
 
|}
 
{|
 
|style="padding: 0px 0px 30px 25px;"|[[File:IPM2_33.png]]
 
|}
 
===IP Reservation===
 
{|
 
|style="padding: 10px 0px 20px 15px;"|You can automate the process of IP assignment by adding some rules that will be then executed while assigning IP addresses from a subnet to clients or services.<br/>
 
'' 'IP Reservation' '' rules can be configured under '' 'Settings' '' section.
 
|}
 
{|
 
|style="padding: 0px 0px 20px 25px;"|[[File:IPM2_34.png]]
 
|}
 
{|
 
|style="padding: 0px 0px 15px 15px;"|Use the rules consciously because they will be then taken into consideration while assigning any IP from any subnet in your IP manager.<br/>
 
Like it is stated in the guide visible on the screen you must stick to some standards while personalizing your assignment process.
 
|}
 
{|
 
|style="padding: 0px 0px 30px 25px;"|[[File:IPM2_35.png]]
 
|}
 
====New Rules====
 
{|
 
|style="padding: 10px 0px 20px 15px;"|To add a new rule, type in the required value in the '' 'Rule' '' field and describe it in the text box nearby.
 
|}
 
{|
 
|style="padding: 0px 0px 20px 25px;"|[[File:IPM2_36.png]]
 
|}
 
{|
 
|style="padding: 0px 0px 15px 15px;"|To illustrate:<br/>
 
Enter '''n''' in the '' 'Rule' '' textarea. Then the first IP address from a subnet will be always excluded. It will be reserved and it will not be assigned to any client or service.
 
|}
 
{|
 
|style="padding: 0px 0px 20px 25px;"|[[File:IPM2_37.png]]
 
|}
 
{|
 
|style="padding: 0px 0px 15px 15px;"|You can add more that one rule. If you do it thoughtfully, you will have much less work later on while creating new subnets because <br/>customized rules will substitute the need to fill out the '' 'Excluded IP Addresses' '' area.
 
|}
 
{|
 
|style="padding: 0px 0px 30px 25px;"|[[File:IPM2_38.png]]
 
|}
 
====Rules In Practice====
 
{|
 
|style="padding: 10px 0px 20px 15px;"|Let's create a new subnet of IP addresses.
 
|}
 
{|
 
|style="padding: 0px 0px 20px 25px;"|[[File:IPM2_39.png]]
 
|}
 
{|
 
|style="padding: 0px 0px 15px 15px;"|As stated before choose IP version and enter subnet. Now you can skip the '' 'Exclude IP addresses' '' section because configured rule will be toggled.
 
|}
 
{|
 
|style="padding: 0px 0px 20px 25px;"|[[File:IPM2_40.png]]
 
|}
 
{|
 
|style="padding: 0px 0px 15px 15px;"|I tutaj nie wiem co!
 
|}
 
{|
 
|style="padding: 0px 0px 30px 25px;"|[[File:IPM2_41.png]]
 
|}
 
 
===Default Custom Fields===
 
{|
 
|style="padding: 10px 0px 20px 15px;"|In this section ''('Settings' → 'Default Custom Fields')'' you are allowed to add and configure some custom fields that will be assigned to subnets by default.
 
|}
 
{|
 
|style="padding: 0px 0px 20px 25px;"|[[File:IPM2_42.png]]
 
|}
 
{|
 
|style="padding: 0px 0px 15px 15px;"|All you need to do is enter the name of your custom field, its value and save changes.
 
|}
 
{|
 
|style="padding: 0px 0px 20px 25px;"|[[File:IPM2_43.png]]
 
|}
 
{|
 
|style="padding: 0px 0px 15px 15px;"|Surely, you can create plenty of such custom fields and remove any if you no longer wish to use them.
 
|}
 
{|
 
|style="padding: 0px 0px 30px 25px;"|[[File:IPM2_44.png]]
 
|}
 
 
==IP Assignment Mechanism==
 
{|
 
|style="padding: 10px 0px 30px 15px;"|It is crucial to understand mechanism of automatic IP addresses assignment. In this section we will clarify it to you.<br />
 
'' 'IP Quantity' '' field defines the quantity of IP addresses added to the ordered product by triggering a specific relation.<br />
 
Two and more relations from one configuration can be triggered for the same product (therefore, multiple quantity of IP addresses can be assigned).<br />
 
Additionally, if you set up two configurations with the same relation, IP addresses from both configurations will be added.<br />
 
Therefore, if you set up these two configurations in IP Manager:
 
*'''Configuration 1''':  Addon A (IP Quantity = 2), Product C (IP Quantity = 1)
 
*'''Configuration 2''':  Addon A (IP Quantity = 2), Addon B (IP Quantity = 2), Product D (IP Quantity = 3)
 
Orders listed below will trigger different relations:
 
*'''Order 1''': Product C with addon A: 5 IP addresses assigned
 
*'''Order 2''': Product C with addon B: 3 IP addresses assigned
 
*'''Order 3''': Product D with addon A: 7 IP addresses assigned
 
*'''Order 4''': Product F with addon A: 4 IP addresses assigned
 
|}
 
===Automatic IP Assignment===
 
{|
 
|style="padding: 10px 0px 15px 15px;"|The main reason, why this module has been created, was to automate IP addresses assignment.<br />
 
Here we will show you how to set up its configuration. In order to start, go to '' 'Configuration' '' → '' 'Create Configuration'. ''<br />
 
Type your configuration name, press textboxes corresponding to options you wish to add and select them from dropdown menus:
 
*Products
 
*Addons
 
*Servers
 
*Config Options<br/>
 
Afterwards, press '' 'Create New Configuration' '' button. On the screen below you can see sample configuration with two products selected.
 
|}
 
{|
 
|style="padding: 0px 0px 20px 25px;"|[[File:IPM2_45.png]]
 
|}
 
{|
 
|style="padding: 0px 0px 20px 15px;"|Now you have to assign at least one subnet to configuration. Use '' 'Assigned Subnets' '' button.<br/>
 
|}
 
{|
 
|style="padding: 0px 0px 20px 25px;"|[[File:IPM2_46.png]]
 
|}
 
{|
 
|style="padding: 0px 0px 15px 15px;"|Choose a subnet from a dropdown menu and press '' 'Assign Subnet' '' button.<br />
 
Keep in mind that you can assign multiple subnets to a single configuration.
 
|}
 
{|
 
|style="padding: 0px 0px 20px 25px;"|[[File:IPM2_47.png]]
 
|}
 
 
===Advanced Configuration===
 
{|
 
|style="padding: 10px 0px 15px 15px;"|Let's say, that you want to set multiple IP assignment to specific product, it is available with our module!<br />
 
Here we will show you how to set up multiple IP addresses assignment to configurable option '' 'Extra IP Addresses'. ''<br />
 
Create a new configuration as while setting up a standard configuration.<br />
 
Once it is  done press '' 'Configurable Options' '' as shown on the screen below.
 
|}
 
{|
 
|style="padding: 0px 0px 20px 25px;"|[[File:IPM2_48.png]]
 
|}
 
{|
 
|style="padding: 0px 0px 15px 15px;"|Afterwards, mark checkboxes next to configurable options you want to assign IP addresses to.<br />
 
Enter quantity of IP addresses which will be assigned to each configurable option and press '' 'Save Changes'. ''
 
|}
 
{|
 
|style="padding: 0px 0px 30px 25px;"|[[File:IPM2_49.png]]
 
|}
 
 
====Usage Statistics====
 
{|
 
|style="padding: 10px 0px 20px 15px;"|In each configuration you can find a graph, which shows the statistics of IP addresses assignment.
 
|}
 
{|
 
|style="padding: 0px 0px 30px 25px;"|[[File:IPM2_50.png]]
 
|}
 
 
==3rd Party Integration==
 
{|
 
|style="padding: 10px 0px 30px 15px;"|In this tab you can set up 3rd party integration which allows you to manage IP through our module in your WHMCS and synchronize changes on 3rd party servers.<br />
 
''Note 1: Some of these integration submodules require free IP subnets (cPanel) or IP addresses (Plesk) on servers to be set up.''<br />
 
''Note 2: IP Manager can integrate multiple IP addresses with a single product.''
 
|}
 
===Enabling 3rd Party Integration===
 
{|
 
|style="padding: 10px 0px 15px 15px;"| Activation of all integration modules looks similar, there is only a difference in cPanel and cPanel Extended integration submodules.<br />
 
Start by pressing '' 'Activate' '' button next to a module you want to activate.
 
|}
 
{|
 
|style="padding: 0px 0px 20px 25px;"|[[File:IPM2_51.png]]
 
|}
 
{|
 
|style="padding: 0px 0px 15px 15px;"| Press '' 'Configure' '' button and assign configurations to it.<br />
 
Confirm through clicking '' 'Save Changes'. ''
 
|}
 
{|
 
|style="padding: 0px 0px 20px 25px;"|[[File:IPM2_52.png]]
 
|}
 
{|
 
|style="padding: 0px 0px 15px 15px;"| cPanel and cPanel Extended additionally allow you to choose the method of the integration.<br />
 
1. Creates a DNS zone for each IP address assigned to a product.<br />
 
2. The first IP address assigned to a product is set up as a site dedicated IP address.
 
|}
 
{|
 
|style="padding: 0px 0px 20px 25px;"|[[File:IPM2_53.png]]
 
|}
 
{|
 
|style="padding: 0px 0px 20px 15px;"| As you can see on the following screen, you can easily check the quantity of configurations assigned to each 3rd party integration.
 
|}
 
{|
 
|style="padding: 0px 0px 30px 25px;"|[[File:IPM2_54.png]]
 
|}
 
===Integration With Proxmox VPS/Cloud For WHMCS===
 
{|
 
|style="padding: 10px 0px 30px 15px;"|Integration with Proxmox VPS For WHMCS & Proxmox Cloud For WHMCS are the only integrations which are set up on both IP Manager For WHMCS and integrated module sides.<br />
 
Due to that, setting up the integration consists of 3 steps:<br />
 
1. Create IP addresses subnet which will be used for product.<br />
 
2. Create configuration and assign a previously created subnet to it. '''No additional action is required in this step.'''<br />
 
'''Important: Assigning anything beyond the Subnet to the configuration in IP Manager For WHMCS may cause unexpected effect in your WHMCS environment.'''
 
|}
 
===Integration With SolusVM Extended VPS For WHMCS===
 
{|
 
|style="padding: 10px 0px 30px 15px;"|Integration with SolusVM Extended VPS For WHMCS is tricky.<br />
 
IP Manager For WHMCS cannot inject the first IP address to VPS, due to the way SolusVM API works.<br />
 
After creation of VPS, IP Manager is able to add additional IP addresses.<br />
 
Therefore, if you are using this integration, we advise setting up IP Manager synchronization as a cron job.
 
|}
 
===Test Integration Module===
 
{|
 
|style="padding: 10px 0px 15px 15px;"|This module logs information about IP processing for '' 'Autorelease' '' type products.<br />
 
Your order should look similar to the one on the screen below.<br />
 
''Note: You need to set up '' 'Autorelease' '' type server, otherwise logs will not show up.''
 
|}
 
{|
 
|style="padding: 0px 0px 30px 25px;"|[[File:IPM2_55.png]]
 
|}
 
===Creation of Integration Submodule===
 
{|
 
|style="padding: 10px 0px 15px 15px;"|You can create your own integration, all you need is knowledge of PHP programming language.<br />
 
You can do it through using '' 'Autorelease' '' submodule file.<br />
 
1. To begin, make copy of '' 'AutorelaseIntegration.php' '' located in '' 'your_whmcs/modules/addons/IPM2_anager2/app/modules'. ''
 
|}
 
{|
 
|style="padding: 0px 0px 20px 25px;"|[[File:IPM2_56.png]]
 
|}
 
{|
 
|style="padding: 0px 0px 15px 15px;"|2. Rename copy to your new submodule name.<br />
 
''Note: File name has to end with 'Integration', for example 'NewSubmoduleIntegration.php'.''
 
|}
 
{|
 
|style="padding: 0px 0px 20px 25px;"|[[File:IPM2_57.png]]
 
|}
 
{|
 
|style="padding: 0px 0px 20px 15px;"|3. Edit the file, start by entering basic settings.
 
1. Class name should be the same as the file name.
 
2. Submodule name visible in IP Manager.
 
3. Submodule description displayed in IP Manager.
 
4. Place here an integrating module name ( the best way is to copy a folder name of the module ).
 
|}
 
{|
 
|style="padding: 0px 0px 20px 25px;"|[[File:IPM2_58.png]]
 
|}
 
{|
 
|style="padding: 0px 0px 20px 15px;"|4. Now, it is time to implement integration part, you will need integrated module documentation to do that.
 
1. Configuration of 3rd party integration submodule.
 
2. Code assigning IP address to module product goes here.
 
3. You can add a code to unassign IP address here.
 
|}
 
{|
 
|style="padding: 0px 0px 20px 25px;"|[[File:IPM2_60.png]]
 
|}
 
{|
 
|style="padding: 0px 0px 20px 15px;"|4. In order to view a submodule you have just created, log in to your WHMCS and go to '' 'Addons' '' → '' 'IP Manager' '' → '' '3rd Party Integration'. ''
 
|}
 
{|
 
|style="padding: 0px 0px 30px 25px;"|[[File:IPM2_61.png]]
 
|}
 
 
==Export==
 
{|
 
|style="padding: 10px 0px 15px 15px;"|You can export your subnets with IP addresses to CSV and XML files.<br />
 
To export, go to '' 'Export' '' tab, choose subnet to export and output format.<br />
 
Now you can ''' 'Generate' '' the file. Download of the file will start shortly.<br />
 
''Note: Your '' 'storage' '' folder located in 'your_whmcs/modules/addons/IPM2_anager2' should have chmod set to '''755'''.''
 
|}
 
{|
 
|style="padding: 0px 0px 30px 25px;"|[[File:IPM2_62.png]]
 
|}
 
 
==Import==
 
{|
 
|style="padding: 10px 0px 15px 15px;"|In '' 'Import' '' tab you can find tools to synchronize IP addresses from your WHMCS as well as import them from a file.<br />
 
'''Synchronization'''<br />
 
Synchronization will confirm relations in your system with relations in IP Manager subnets.
 
*IP address is used by a product, but inside of IP Manager subnet it is marked as unassigned - record inside of a subnet will be updated.
 
*IP address is used by a product, but does not exist in any IP Manager subnet - a new subnet will be created.
 
There are three available cron commands:<br />
 
1. This cron command synchronizes all products (it will require confirmation).<br />
 
2. This cron command synchronizes all products (it will not require any confirmation).<br />
 
3. This cron command synchronizes only products which IDs have been provided as arguments separated by comma.<br />
 
'''Import'''<br />
 
To import IP addresses from a file, select it, choose its format and press '' 'Import'.''
 
|}
 
{|
 
|style="padding: 0px 0px 30px 25px;"|[[File:IPM2_63.png]]
 
|}
 
 
==IP Logs==
 
{|
 
|style="padding: 10px 0px 20px 15px;"|'' 'Logs' '' page stores the history of actions ordered on each IP address.
 
|}
 
{|
 
|style="padding: 0px 0px 30px 25px;"|[[File:IPM2_64.png]]
 
|}
 
 
 
==Integration Code==
 
{|
 
|style="padding: 10px 0px 15px 15px;"|'''Integration described below is not obligatory.'''<br />
 
Module allows your customers to view IP addresses assigned to their product and order additional ones.<br />
 
To enable it, follow these simple steps:
 
|}
 
====Integration in WHMCS V6====
 
{|
 
|style="padding: 10px 0px 20px 25px;"|[[File:IPM2_65.png]]
 
|}
 
{|
 
|style="padding: 0px 0px 20px 15px;"|Correctly placed code is presented on the following screen.
 
|}
 
{|
 
|style="padding: 0px 0px 20px 25px;"|[[File:IPM2_66.png]]
 
|}
 
{|
 
|style="padding: 0px 0px 20px 15px;"|In the client area it should look like on the screen below.
 
|}
 
{|
 
|style="padding: 0px 0px 20px 25px;"|[[File:IPM2_67.png]]
 
|}
 
====Integration in WHMCS V5====
 
{|
 
|style="padding: 10px 0px 20px 25px;"|[[File:IPM2_68.png]]
 
|}
 
{|
 
|style="padding: 0px 0px 20px 15px;"|Correctly placed code is presented on the following screen.
 
|}
 
{|
 
|style="padding: 0px 0px 20px 25px;"|[[File:IPM2_69.png]]
 
|}
 
{|
 
|style="padding: 0px 0px 20px 15px;"|In the client area it should look like on the screen below.
 
|}
 
{|
 
|style="padding: 0px 0px 20px 25px;"|[[File:IPM2_70.png]]
 
|}
 
{|
 
|style="padding: 10px 0px 20px 15px;"|To allow your customers to buy a new IP address you need to set up a product addon for product and assign the addon to a configuration in IP Manager.
 
|}
 
{|
 
|style="padding: 0px 0px 15px 15px;"|The above described integration works for all products without exception.<br/> However, in case you wish to restrict the integration to limited number of products, please insert the below codes instead of the one suggested in the addon. <br/><br />
 
<code>
 
{if $moduleclientarea}
 
  &lt;div class="moduleoutput"&gt;;{$moduleclientarea|replace:'modulebutton':'btn'}
 
  {if $pid == 26 || $module ==  'proxmoxCloud' || $module == 'proxmoxVPS'}
 
        {$IPM2_anager_integration}
 
  {/if}
 
  &lt;/div&gt;
 
{/if}
 
</code>
 
|}
 
{|
 
|style="padding: 0px 0px 30px 15px;"|Once such code is inserted in the template, IP Manager will be displayed for product with ID that equals 26 or if the product is based on '' 'proxmoxCloud/proxmoxVPS' '' modules.<br/> Extend the IP Manager integration according to your needs. The above code is just an example which can undergo modifications.
 
|}
 
 
==Client Area==
 
{|
 
|style="padding: 10px 0px 15px 15px;"|Your clients can view and manage their IP addresses and subnets thanks to installed IP Manager For WHMCS module.<br />
 
To remove any IP address or subnet from a product, simply press '' 'Unassign' '' button.
 
|}
 
{|
 
|style="padding: 0px 0px 20px 25px;"|[[File:IPM2_71.png]]
 
|}
 
{|
 
|style="padding: 0px 0px 15px 15px;"|Your client can also order a new IP address.<br />
 
Press '' 'Order Additional IP Addresses' '' as shown below.<br />
 
Your client will be moved to order form containing previously configured addons.
 
|}
 
{|
 
|style="padding: 0px 0px 20px 25px;"|[[File:IPM2_72.png]]
 
|}
 
{|
 
|style="padding: 0px 0px 20px 15px;"|As soon as the addon is active, new IP address is granted.
 
|}
 
{|
 
|style="padding: 0px 0px 30px 25px;"|[[File:IPM2_73.png]]
 
|}
 
 
==Add IP via Addon==
 
{|
 
|style="padding: 10px 0px 15px 15px;"|Setting up an addon allows your client to add an IP address to their product using integration.<br />
 
Go to '' 'Setup' '' → '' 'Products/Services' '' → '' 'Product Addons' '' and press '' 'Add New Addon' ''.
 
|}
 
{|
 
|style="padding: 0px 0px 20px 25px;"|[[File:IPM2_74.png]]
 
|}
 
{|
 
|style="padding: 0px 0px 15px 15px;"|Afterwards, enter addon name, addon description and select applicable products.<br />
 
Set pricing for addon by choosing '' 'Billing Cycle' '' and typing price.<br />
 
Confirm through pressing '' 'Save Changes' '' button.
 
|}
 
{|
 
|style="padding: 0px 0px 20px 25px;"|[[File:IPM2_75.png]]
 
|}
 
{|
 
|style="padding: 0px 0px 15px 15px;"|Now, go to '' 'Addons' '' → '' 'IP Manager' '' and use configuration created before or [http://www.docs.modulesgarden.com/IP_Manager_For_WHMCS#Automatic_IP_Assignment create a new one].<br />
 
Remember to add a previously created addon as a configuration relation.<br />
 
You can do it by pressing '' 'Addon' '' button as shown on the following screen.
 
|}
 
{|
 
|style="padding: 0px 0px 20px 25px;"|[[File:IPM2_76.png]]
 
|}
 
{|
 
|style="padding: 0px 0px 15px 15px;"|Tick checkbox next to addon and enter the quantity of IP addresses to be added.<br />
 
Afterwards, click '' 'Save Changes' '' button.
 
|}
 
{|
 
|style="padding: 0px 0px 20px 25px;"|[[File:IPM2_77.png]]
 
|}
 
{|
 
|style="padding: 0px 0px 30px 15px;"|If you enabled integration for the client area, your client should be able to order new IP addresses.
 
|}
 
==Management of Custom Hooks==
 
{|
 
|style="padding: 10px 0px 15px 15px;"|Our module allows you to use custom hooks. All you have to do is create some functions using PHP programming language.<br />
 
Here you can see possible hooks:
 
before_ip_assign_hook($ip, $serviceid, $relation, $configid)
 
after_ip_assign_hook($ip, $serviceid, $relation, $configid)
 
before_ip_integrating_hook($ip, $service, $server)
 
after_ip_integrating_hook($ip, $service, $server)
 
before_ip_disintegrating_hook($ip, $service, $server)
 
after_ip_disintegrating_hook($ip, $service, $server)
 
|}
 
{|
 
|style="padding: 0px 0px 15px 15px;"|To find details about hooks read '' 'custom_hooks.php' '' file.<br />
 
You can find there all hooks, information about their time of run, returned values and parameters.<br />
 
For example, if you want to throw message to activity log after IP address assignment find hook '' 'after_ip_assign_hook($ip, $serviceid, $relation, $configid)' '' and type:
 
Logger::factory()->log('Custom hook was triggered');
 
It should look like on the screen below:
 
|}
 
{|
 
|style="padding: 0px 0px 30px 25px;"|[[File:IPM_59.png]]
 
|}
 
 
==How To Update==
 
{|
 
|style="padding: 10px 0px 30px 15px;"|In order to upgrade your module, follow [[Modules_Update|Modules Update]] article.
 
|}
 
 
=Tips=
 
{|
 
|style="padding: 10px 0px 15px 15px;"|1. If your client orders a product that is combined with two configurations (e.g. by product type and configurable option), IP Manager will add IP addresses from both configurations.
 
|}
 
{|
 
|style="padding: 0px 0px 30px 15px;"|2. If you have used IPv6 block before the update to IP Manager 2.2.0, all of them will be migrated to corresponding subnets. Note that migration is done automatically for you.
 
|}
 
 
 
=Common Problems=
 
=Common Problems=
 
{|
 
{|
|style="padding: 10px 0px 10px 15px;"|'''1. When you have problems with connection, check whether your SELinux or firewall does not block ports.'''
+
|style="padding: 10px 0px 30px 15px;"|'''1. When you have problems with connection, check whether your SELinux or firewall does not block ports.'''
|}
+
{|
+
|style="padding: 0px 0px 10px 15px;"|2. If you see something like this when moving to '' 'Addon' '' → '' 'IP Manager', '' remove content of '' 'template_c' '' folder.
+
|}
+
{|
+
|style="padding: 0px 0px 10px 25px;"|[[File:IPM_60.png]]
+
|}
+
{|
+
|style="padding: 0px 0px 30px 15px;"|3. If you export file and it is empty, check your '' 'Storage' '' folder chmod, it should be set to '''755'''. Folder is located in '' 'your_whmcs/modules/addons/IPM2_anager2' ''.<br />
+
If you still have that problem, set chmod '''777'''.
+
 
|}
 
|}

Latest revision as of 12:02, 13 September 2018

Contents

[edit] About Hosting Quota Notifications For WHMCS

Hosting Quota Notifications For WHMCS allows you to send automatic notifications to your clients whenever they exceed previously set bandwidth or disk usage.

Notifications can be sent in two ways: upon exceeding given resource tier or after exceeding given resource limit in a specified time period.
You can also define email templates and view details of each sent notification owing to logs.

  • Admin Area Features:
✔ Automatically Notify Your Clients Upon Exceeding Defined Limits Of Bandwidth And Disk Usage
✔ Configure Notification Groups
✔ Choose Between Two Types Of Group Counting:
✔ Tiered - Define Tiers Of Usage
✔ Fixed - Define Usage Grow Over Time
✔ Assign Multiple Products To Single Notification Group
✔ Assign Email Templates Per Notification Group
✔ Enable/Disable Notification Groups
✔ View Logs Of Sent Notifications
  • General Info:
✔ Multi-Language Support
✔ Supports PHP 5.6 Up To PHP 7.2
✔ Supports WHMCS V7

[edit] Installation

This tutorial will show you how to successfully install and configure Hosting Quota Notifications For WHMCS.

We will guide you step by step through the whole installation and configuration process.

[edit] Installation

1. Log in to our client area and download the module.
HQN 1.png
2. In the downloaded file you will find two packages that support different PHP versions.
As presented on the screen below, the first one is dedicated to PHP 5.6 up to PHP 7.0, while the second one is aimed at PHP 7.1 up to PHP 7.2.
It does not apply to open source versions.

Note: You can check the current PHP version in your WHMCS. To do so, proceed to 'Utilities' › 'System' › 'PHP Info'.

PHP56 72.png
3. Extract the downloaded file and choose the one with the right PHP version. Upload and extract the PHP file into the main WHMCS directory.

The content of PHP version files should look like this.

Drfere.png
4. When you install Hosting Quota Notifications For WHMCS for the first time you have to rename 'license_RENAME.php' file.

File is located in 'modules/addons/hosting_quota_notifications/license_RENAME.php' . Rename it from 'license_RENAME.php' to 'license.php' .

HQN 3.png
5. In order to configure your license key, you have to edit a previously renamed 'license.php' file.

Enter your license key between quotation marks as presented on the following screen. You can find your license key in our client area → 'My Products' .

HQN 4.png

[edit] Configuration of Addon

6. Now you have to activate the module in your WHMCS system.

Log in to your WHMCS admin area. Go to 'Setup' 'Addon Modules' . Afterwards, find 'Hosting Quota Notifications' and press 'Activate' button.

HQN 5.png
7. In the next step you need to permit access to this module.

To do so click on 'Configure' button, tick 'Access Control' near required admin role groups and press 'Save Changes' .

HQN 6.png
8. You have just successfully installed Hosting Quota Notifications For WHMCS!

You can access your module in 'Addons' 'Hosting Quota Notifications' .

HQN 7.png

[edit] Configuration and Management

In this section we will show you how to properly set up and use Hosting Quota Notifications For WHMCS.

[edit] Configuration

In 'Configuration' page you can find the list of configured notification groups.

You can enable/disable any of them, as well as alter or completely remove them.
Press 'Create New Group' to proceed.

HQN 9.png
Now, you can define all products related to this configuration and email template which will be used to notify your clients.

You can choose between two types of resource usage counting:

  • Fixed - define amount of resources over specific time period. If client usage growth has exceeded the given limit in specified time, a notification will be sent.
  • Tiered - defines amount of resources. If client exceeds given limit, a notification will be sent.
HQN 10.png
For example, shown below module uses fixed counting type.

As you can see, we have defined limits for both bandwidth and disk.
Settings shown below result in sending notification to client upon:

  • bandwidth usage growth by 5GB during 21 days.
  • disk usage growth by 100GB over period of 14 days.
HQN 11.png

[edit] Logs

Under 'Logs' page you can view information about sent notifications.
HQN 12.png

[edit] Notifications

You can create as many notifications as you wish.

The only requirement is their type being set to 'Product/Service' .
Additionally, you can use {if} statement, as shown below:

{if $bw_over} Your bandwidth usage is over {$bw_over}MB{if $bw_current} (current: {$bw_current}MB){/if}.{/if}
{if $disk_over}Your disks usage is over {$disk_over}MB{if $disk_current} (current: {$disk_current}MB){/if}.{/if}

It will allow you to use this email template for bandwidth and disk notifications at the same time.

HQN 13.png

[edit] Tips

[edit] Update Instructions

Essential guidance through the process of updating the module is offered here.

Keep in mind there is a quick and easy option in our client area that will let you upgrade the license of your module to an open source version at any time - and at a lower price!
To take advantage of it, simply use the License Upgrade button located on the product's page and a discounted invoice will be generated automatically.

[edit] Common Problems

1. When you have problems with connection, check whether your SELinux or firewall does not block ports.
Navigation
WHMCS Modules
WHMCS Widgets
Translations
cPanel Modules
General
FAQ
Community