Oh, Afrihost

Afrihost, in my opinion, is the best ISP in South Africa. I have been using them for about 2 years without a single issue, so it was only a natural move when i decided to order a 20mbps line for my new house in Durban North at the beginning of February. Sadly, this turned out to be a mistake, and i have had one of the worst experiences trying to get my internet up and running. Here are three of the things that really frustrated me.

Live Chat

Live chat, when it works, is an awesome addition to the Afrihost support services. It allows you to instantly get help from an Afrihost staff member through an instant messaging type interface. But during the last two months i have found more bugs in that piece of software than i care to keep track of. Here are the two that shocked me the most.

Exposing SQL Errors

Probably the most concerning thing about Live Chat is that it blindly exposes SQL errors. I notified Afrihost on the 28th of February that they ought to fix this, but they have had enough time so i am publicly exposing this information.

While i don't recommend that you start performing SQL injections, nor do i plan on exposing the method i used to get this error, it blows my mind that a company of this size has chosen to do nothing about this.

The Buggy Submit Button

When Live Chat cant connect you to a support agent for whatever reason, a form is displayed. Here, it asks you a bunch of questions about the problem you are experiencing. When you submit the form, it simply sends an email to the Afrihost support teams Live Chat inbox. Except when i clicked submit, i didnt get any visual feedback to notify me that the form had been submitted. I therefore assumed an error had occurred somewhere, and so i tried to click the button again, but once again, nothing happened. Being a developer i opened Chromes Developer Console and tried to select the button using Javascript.

$('button').click()

Success! I got a little pop up to say that my support query had been submitted. But while i was in the console i decided to check if there was any way to emphasize the importance of my query, so i decided to use Javascript to click the button every second.

setInterval(function() { $('button').click() }, 1000)

Within a few seconds i had a constant feed of "Submitted!" alerts flashing on my screen. What was interesting about this, to me at least, is that they disable the button to prevent you clicking it more than once but leave it totally open to abuse via Javascript.

At this point i knew that i had submitted the form a few times, but what didn't really know was if there was a mechanism to stop spamming on the back end. As it turns out, there wasn't, which was confirmed by an Afrihost employee the next time i tried to use Live Chat. What follows is the chat transcript (i have removed the employees name for security purposes).

Hello, Telkom came and fixed my ADSL yesterday, they said it was working, and indeed my router indicated "connected" and syncing. Which is great, but i still cant access the internet, this makes me want to drink for the first time in like 6 years.

Afrihost (09:03:50) : Hi Taylor. How are you today?

Taylor Gibb (09:03:55) : Good thanks and you

Afrihost (09:04:32) : I am well thanks. Are you the same Taylor Gibb who is the developer and sent 250 tickets to our LiveChat inbox?

Taylor Gibb (09:05:01) : sounds like a bug to me

Taylor Gibb (09:05:07) : should get that checked out

Afrihost (09:05:40) : I would appreciate it if you could tell us how you did that sometime. But let's look at your line first. Line number please?

Taylor Gibb (09:05:49) : sure

Taylor Gibb (09:05:51) : i can do that

If they had just left it, i probably would have assumed it didnt work, but they never, and now everyone who reads this blog post will know how to "bump" the priority of their support calls.

The Telkom Disconnect

I understand that Telkom and Afrihost are two separate companies, but for the love of god, if you are going to offer a service that is dependent on another company you ought to make sure that the correct processes are put in place. At the very beginning of this whole saga, the two companies got into a flat out loop. I had Afrihost telling me they couldn't take over my line because Telkom had a work item open on the line, yet every time i called Telkom they said that my line had no work items on it. This went on for about 3 days, why cant Afrihost pick up the phone and speak to their representative at Telkom and sort issues like this out. It would make everyone life easier, and, i am trying to give you my money after all.

The Support Team

It is almost as if each support person operates in their own silo and while i don't want to call out anyone in particular, telling me that you are going to reset my port on the exchange every time i try and communicate with you on live chat is bound to irritate me. I don't think i am asking much by expecting you to check what the other support agents have already tried before getting started with my query.


Thank you for taking the time to read this article. If you have had a similar experience with Afrihost, please dont forget to leave a comment so that other people will think twice about using their service.


Update (29/3/2015) - not even 2 days after this post went viral. Afrihosts "Critical Care" team managed to fix my internet!

Update (30/3/2015) - i just noticied that they have rolled out an update to Live Chat!

Update (31/3/2015) - Afrihost advises me on Twitter that i am not entitled to a refund as 2KB of data was used during the two months my line was not active. I sent a follow up mail to "Critical Care" to see if this is indeed the case.

Update (9/4/2015) - just noticed an email from the "Critical Care" team informing me that i will be receiving my refund. I will consider this a win!


comments powered by Disqus