If you bought a previous version and like what you see here, your upgrade is, as always, free. Just drop me a mail.
There are resellers of the module. Contact me for a list. You’ll get it cheaper through them :) They have SLA’s, development contracts and all that other stuff…
So lets get too it… what’s exactly change. Well, pretty much everything.
The product config has been striped of everything that could easily be set in a radius group.
The usage checking/capping scripts are back. Redone to keep your WHMCS as safe as possible, no remote database access required, or no need to mess with your Freeradius dictionary files.
Mainly, your users can pretty much choose thier own product limits on signup and change them at any point in time and get billed accordingly. Like so:
I know, pretty cool and not that difficult to do either. Also, uncase you not so keen on that idea, you don’t have to configure your products like this at all.
You can set package defaults that will only be overridden IF the config options are present and not set to 0
Note the little red circle there, matches the usage limit in the clients product screen, also a new feature by the way. Yes, you can leave this setting blank or 0 for unlimited accounts. Same with the Rate Limit setting.
See, the config option is 0 so the package default, 1 GB, is used. If a config option is set though, it will be used
These details are also in the fully customizable client area template
Oh yes…
Just incase you’re wondering how the example product’s config options in the screenshots were done:
So here we’ll hook up mail to WHMCS on PHPFog using MailGun. After seeing the MailGun interface, if you haven’t before, you’ll be like Grate Monkey what? I was.
So if you know what PHPFog is I assume you know your way around the interface. So once you’ve enabled the MailGun Addon you’ll get some pretty convenient Environment Variables. This is the quickest way to your SMTP details:
So I took these…
… and put them here (in WHMCS)…

Yes that’s right. I blurred some stuff out of the email address. Just because my little testing WHMCS can’t afford to send money to Nigerian Princes, doesn’t mean they’re going to stop emailing and asking.
In PHPFog, under Addons, click manage MailGun and you’ll get to the MailGun admin interface.
Here you can add mailboxes for all your WHMCS departments…

… and then create your WHMCS departments with those settings…
You’ll also notice this…

You will have to add that second line to a cronjob like in the “WHMCS on PHPFog II” article
Donations accepted in beer ONLY! :)
Again, I fall short of even be classified a Python noob. This is fully working though with just one little annoying issue. When the status server is queried, the query is added to the results. So if you have a completely idle server you will still see activity on the graphs for every time the status server is checked.
I’m no Python anything, so excuse the hacking to get this into a online script. I am going to be using it on Mikrotik to split traffic over a normal DSL account and a cheaper, local traffic only, DSL account.
I completely forgot to mention how to sort out the cron job required by WHMCS.
As per the PHPFrog documentation cron jobs can be done using two providers:
The latter didn’t load for me, probably just my fantastic internet connection.
So I went and got an account at mywebcron-com.loopiasecure.com. Fantastically simple signup, just linked it to my Google account (but they have other linking options too).
The system is really everything you need. Nothing flashy, it works and it’s free.
So…
WHMCS’s “cron.php” is located at “WHMCSROOT/admin/cron.php”. So the URL would be like “http://app.phpfrog.com/admin/cron.php” and set it to run once a day.

The custom WHMCS Freeradius Server module always starts from a template and the features you need are added.
I’ve got a new template with updated code and this:

-
Drop me a line if you’re curious. steven@secondimpression.net or on skype: “steven_eksteen_si3”
PHPFog makes me almost like PHP again or rather like working with PHP. Managing infrastructure is, for me at least, like sitting in a room full of Man United fans after they have just won a game, painful. Maybe PaaS has just made me lazy.
With WHMCS & PHPFog you can get going for about $16 for WHMCS & $30 for PHPFog Per Month. You could use PHPFog’s free shared cloud for testing.
-
Before cloning your assigned git repo and while you’re still on the PHPFog interface, just add the WHMCS permissions quick. Like so…

You can now clone your repo.
Once you have a local copy delete the “index.php” and copy the WHMCS files in.
Rename the “configuration.php.new” file to “configuration.php”. Yes, it’s supposed to be a blank file.
You can now go ahead and send the files to your app…
$ git .
$ git commit -am “Fresh WHMCS install files”
$ git push origin master
You will now need your MySQL settings that PHPFog created for you with your app

You can now just goto your app URL and install WHMCS like normal.
Once installed you will be prompted to delete the install directory. You can delete or rename it, it doesn’t matter.
Done? Then you will need to make sure your blank “configuration.php” file does not overwrite your configured on on the server.
$ touch .gitignore
$ vi .gitignore
You can then add configuration.php to the file and save. My file looks like this…
You will then have to tell git to stop tracking the configuration.php file, and the others
$ git rm —cached configuration.php
You can now push again to remove/rename the install directory on the server
$ git add .
$ git commit -am “Rename install directory”
$ git push origin master
-
The following is not at all a requirement. I just find it most helpful.
Since the “configuration.php” in you local copy is still blank. You could rename the install directory back to install, or copy it in again and run a local WHMCS install. Just don’t push your changes until you’re done and removed/renamed the install directory again.
With a working local copy of WHMCS you can create your templates and modules and just push your repo to send then to the server having tested them first instead of doing it blind. Remember, there is no FTP access to your files so you will have to use git to push and pull files.