Supported features
Create, delete and edit DNS Records | Manage SOA Records | Import DNS Recods |
Yes | Yes | Yes |
DNS Request statistics | DNS servers update status overview and update requesting | |
Yes | Yes |
Installation
To install the ClouDNS DNS Manager module you need to place the module folder in the servers directory of your WHMCS installation. Example:
/path/to/whmcs/modules/servers/
and to create a new table in your WHMCS database.
You can use the following command:
CREATE TABLE IF NOT EXISTS `mod_cloudns_zones` (
`id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT,
`serviceid` int(11) NOT NULL,
`name` varchar(255) NOT NULL,
`fo_checks` int(11) UNSIGNED NOT NULL DEFAULT 0,
PRIMARY KEY (`id`),
UNIQUE KEY `zone_name` (`name`)
) ENGINE=InnoDB;
Configuration
To configure the ClouDNS DNS Manager module you just need to open the file /path/to/whmcs/modules/servers/cloudns/cloudns_core/configuration.php and enter your ClouDNS API auth-id and auth-password on lines 9 and 10.
public static $_apiAuthId = 0; // your ClouDNS API ID
public static $_apiAuthPassword = 'XXXXXX'; // your ClouDNS API password
If you want all the products to use the same server names for NS records of zones by default you can add them in the below block in the same configuration file and uncomment it removing the "/*" and "*/" surrounding the server names.
public static $_DnsServers = array(
/* uncomment the below block if you have server names other
* than the default ClouDNS servers and want your customers
* to use them instead
*/
/*
'ns1.your-domain.com',
'ns2.your-domain.com',
*/
);
Note: If you want to set different server names per product you need to leave this block commented and add the server names from the module configuration in the admin panel of the particular Product/Service.
Product configuration
If you don't already have a Product to use the module with you can create one from Setup > Products/Services > Products/Services and click on the Create a new product link.
After the product is created go to the Module Settings tab and choose ClouDNS DNS Manager as Module name.
Suspension and termination of products
1. A product will be suspended automatically (if you enabled the WHMCS cron) if the product is not free e.g. the Recurring Amount is higher than 0, the Billing Cycle is not Free or One Time and the Next Due Date is at least 5 days ago.
2. When a product is suspended the DNS zones of the customer will be inactive and the DNS servers will return only NS records for them.
3. If a product is terminated the DNS zones of the customer will be deleted from the ClouDNS system and the DNS servers will return empty responses for them.
4. If you manually unsuspend (read below) a product the zones of the customer will begin working again if the product was suspended. If the product was terminated the zones will remain deleted.
5. Manual suspend/unsuspend/termination can be done via the corresponding buttons in the Module Commands section of the Product/Service's control panel. Manually doing one of this things will result in the same way as the automatic action.
Version differences
The module is tested with WHMCS versions 5, 6, 7, 7.5, 8.0.4, 8.6.1, and PHP 7.4 and 8.1 and should work with them without any problems. However some differences in the design are possible.