New ISP, and playing with callerid

Back at the start of last month (the 1st of March) Sky announced that they were going to acquire the UK fixed line businesses of Telefonica. This amounted to about 500,000 O2 and BE Unlimited broadband and telephone customers, including me.

On the surface, this looked like a really good deal for almost everyone – O2 and BE Unlimited had been steadily losing customers for a long time, because Telefonica wasn’t making the investments to allow them to keep up with technologies such as FTTC. Sky was already offering some of those technologies (particularly FTTC) and has a history of investing to create premium solutions for their customers. And Sky would gain the additional customers to jump them past Virgin, moving from the third largest ISP in the UK to the second largest, just behind BT.

However, there was a fly in the ointment; BE Unlimited in particular started life as the niche-market provider-of-choice for the demanding techie. As such they offered some less common features – static IP addresses (either individually or in blocks), full Reverse DNS resolution, Annex M ADSL2+ with user-configurable noise margin, multiple bonded connections … the types of features that are usually reserved for very expensive business class connections. And Sky, as a mass-market ISP, did not (and to my knowledge still do not) offer any of those kinds of features.

What the announcement did was galvanise many of the BE Unlimited customers to start looking for alternatives, in case the features that they depended on would go away when their service was transferred to Sky. In my case my requirements were fairly simple; at least 1 static IP address with configurable Reverse DNS, no port-blocking, no usage limits, and the ability to get at least 12Mb down and 2Mb up. And ideally I didn’t want to pay any more than I already was.

Frankly, I was expecting it to be a real challenge, but to my surprise the second ISP I called was able to meet all my needs. Admittedly the nice lady in the call-centre had never heard of Reverse DNS before, but she took down all my requirements, and put me on hold while she talked to their technical support team. Several long minutes later, and we were in business; their offer was 60Mbps down, 20Mbps up on an unlimited FTTC connection, with one static IP address with reverse-DNS, and no ports blocked. Even better, it was £2 a month less than I currently paid, provided I also transferred my phone service to them.

And so I became one of what appears to be the many who have left BE Unlimited rather than be moved to Sky. Which is rather sad really – they were an exceptional ISP who got bought by a large organisation (Telefonica) and then starved of the cash they needed to continue to grow. The end result is that they won’t exist soon.

The one thing that I have “lost” in this process of changing ISP’s is the “anonymous caller rejection” feature on my phone line. BE provided that for £2 a month, whereas Plusnet wanted £4. Which is a lot for a feature that in practice, I found rather limited anyway.

Which brings me to the point of this post. Rather than paying for the Anonymous Call Reject, I’m going to use a modem to monitor the callerid of inbound phone calls, and then decide on a call by call basis what to do with the call. I can either let the call continue (and ring the phones) or I can pick-up & immediately hang-up the line (using the modem) before the phones even ring. That should enable me to cut off all the callers with witheld numbers, just as the £4 a month ISP option would. However, I can also reject calls from “unavailable” numbers, which are usually cold callers using VoIP systems. And I can also easily implement a system that will reject all calls outside of certain hours (say 8am to 6pm), unless the caller is on a whitelist of known contacts. Which is a lot better than the ISP anonymous caller rejection can achieve.

To do this I’m using an old USR 5668B serial-attached modem that correctly understands the UK’s completely proprietary callerid system. However, this modem is no longer available, and getting a clear answer on what modems can actually cope with UK callerid is, er, troublesome. However, I have discovered reports that the currently available USR 5637 USB fax modem works well with UK callerid. See here for ordering information (no affiliation).

To access the modem I’m using a simple self-written script, written in Perl, using an external library called Device::Modem, which gives me a nice high level abstracted interface to the modem, making the programming much easier. My code is based on some example code provided with Device::Modem for reading the callerid, but in my case, is now logging the inbound calls into a file so I can better investigage who to put on a future whitelist.

Update: code attached for interest.

# Capture Callerid information for incoming calls, using the modem attached to /dev/ttyS0
use Device::Modem;

# Init modem
my $port = '/dev/ttyS0';
my $baud = 57600;
my $modem = new Device::Modem ( port => $port );
die " Can't connect to port $port : $!\n" unless $modem->connect( baudrate => $baud );

# Set up signal catcher to ensure modem is disconnected in event of kill signal
$SIG{INT} = \&tsktsk;

sub tsktsk {
die " SIGINT received.";

# Enable modem to return Caller ID info
my $response = $modem->answer(undef, 2); # 2 seconds timeout

# Poll state of modem
my $call_number = '';
my $call_date = '';
my $call_time = '';

# Do forever
while( 1 ) {

# Listen for any data coming from modem
my $cid_info = $modem->answer();

$cid_info =~ s/\R//g; # Get rid of any line break wierdness

# If something received, take a look at it
if( $cid_info =~ /^RINGDATE\s=\s(\d{4})TIME\s=\s(\d{4})NMBR\s=\s(.*)/ ) {
# It matches our (previously observed) callerid string

# Date (mmdd) in $1
$call_date = $1;
# Time (hhmm) in 24hr format in $2
$call_time = $2;
# Phone number (string) in $3
$call_number = $3;

# Write out the date, time and number to a log file

# Assuming we dont want the file open all the time, so open, append and close the log
open (FH, ">>/home/richard/callerid/phone.log") || die " Couldn't open file: $!\n";
print FH "$call_date $call_time $call_number\n";
close FH ;
# Repeat forever

12 thoughts on “New ISP, and playing with callerid

  1. Great idea Richard. Now why there aren’t decent (and reasonably priced) consumer versions of this built into modern home phone base stations I don’t know… I’d buy one tomorrow!

  2. That made me do a search. It seems BT have literally just launched the BT6500 with “nuisance call blocker”. Mixed reviews on Amazon.

    • The two I found were TrueCall and CPR CallBlocker; both look interesting, but don’t do exactly what I want, and especially in the case of TrueCall, seem rather pricey for what they are. Certainly nothing that I can’t knock together with an old modem and a bit of Perl – but then I happen to have a spare home server to run that perl on too 😉

  3. I don’t have your list of additional requirements but the impending move to Sky prompted me to start looking around and comparing alternatives.

    I was paying a little more than I wanted to for an unlimited download contract which was however delivering a very reliable 16Mbs. Not bad for copper and certainly quite adequate for what we needed.

    But I wasn’t sure whether I’d reached the end of my contract period having upgraded early last year to the unlimited download…

    A quick call to O2 to check and it became obvious that customers were probably leaving them in droves.

    Without even asking they offered me my broadband for free for 12 months and gave my O2 mobile contract (my wife’s actually but it gives us a £5 credit on the home phone/broadband bundle) a credit of £100.

    So I’m stuck with O2 (soon to become Sky) for another 12 months but paying only for the line rental and a boost to get free calls 24/7 – which we find useful.

    This time next year I’m probably going to move to PlusNet too… unless someone gives me a stupid offer again.

    • I think if you can get a good deal, and you don’t need any of the esoteric options, then there is probably nothing to fear from moving to Sky, and possibly a lot of benefits to be gained both in the short term deal, and in the longer term future of the service.

      I’m also hearing unconfirmed rumours that Sky intend to maintain static IP addresses for BE Un Limited customers who already have them, which would probably mitigate the concerns of a fair proportion of those customers too. That only leaves the people with more extreme requirements to worry about, and to be fair to Sky, they would probably cost more to keep happy than they will ever generate in revenue, so Sky will probably prefer for them to choose to move elsewhere. C’est la vie 😉

      Meanwhile I’m very happy with PlusNet’s Unlimited FTTC service; everything seems to be working well so far, and getting my static IP and reverse DNS set up was essentially painless. Their customer service/support isn’t as slick as BE’s was, nor as personal (no IRC, no telephone technical support etc) but so far it’s been effective, which is what ultimately matters.

      • I’ve been with Plusnet nearly 10 years now. No problems, always reliable and UK based staff and call centres for when you need them (mostly when I’ve moved house for me).

        It’s probably worth mentioning their referral system as well. If/when you sign up quote an existing user name as having referred you and they get a few tens of pence off each month. Since this is Richard’s blog I would suggest using his if he puts it down in a comment. Otherwise happy to give out mine – saves me roughly 3 quid a month right now.

        • Thanks Graham … being a relatively tight Northerner, I’d be delighted for anyone that wants to quote me as a referrer to do so … my user name is “rmappleby” 🙂

  4. Thanks Richard. Interesting post. As previously discussed, I am with O2 for broadband, BT for phone and Sky for TV. I’ve been feeling trapped on 3mbs which is unlimited download. I haven’t been able to move to a truly unlimited downloads provider without losing the ability to use a prefix on my BT phone line to have my employer pay for work calls. I’m hoping things will get better with the acquisition as Sky surely can’t make me move from BT for calls if O2 didn’t.
    The modem thing looks interesting. I’ve installed and uninstalled truecaller on my iPhone. I used to have a mobile 10 years ago that let me block specific numbers. Modern mobiles don’t seem to have this. 10 years ago there was a device called The Pig From telecomplus which routed calls through different providers. It looked programmable and I wondered whether it could be used for call blocking etc but I didn’t get far enough to try it. The bt6500 looks interesting. But I’m not sure whether I have to replace all my extension lines etc. The truecaller seems an unnecessary expense with an annual subscription. Maybe CPR call locker is good.
    Lots of people said plusnet was good when I chose O2. I thought they let you stay with BT. In fact aren’t they just a wholesale version of BT?

    • It’s possibly worth revisiting your use cases. I had Homeconnect too, but found that it was easy to make alternative arrangements for business calls from home; company mobile phone and SUT (a VoIP solution) are the obvious choices. I switched to the “single number” option when it was offered to me, so my only IBM phone number is my IBM mobile phone. As such I just use my mobile phone in combination with a Vodafone Sure Signal simply because it’s the easy (and expected) option for me. However, call quality over SUT when you’re on a decent network connection is fine too, and it’s by far the cheapest option available to us. Certainly cheaper than Homeconnect for anything internal or international. The only downside is that you need your laptop running to be able to use it. Both of those options also free up your home phone line for your family to use; for me that was an important consideration.

      However, if you really wanted to stay with Homeconnect then I think you would be able to switch to Plusnet; they’re a subsiduary of BT, and their telephony service is (AFAIK) plain old BT, which should support Homeconnect. Pair that to one of their unlimited broadband offerings, and you should be good to go. Whether you can get more than 3Mb/s or not will depend on the usual games of how far you are from the exchange, and whether you have FTTC deployed in your area.

      With regard to Sky not being able to force you to move phone providers, I wouldn’t be too sure of that. Sky make money on their networking products by running a completely LLU offering – both phone and broadband – which allows them to cut out the middle man and offer rock bottom pricing. I think there will be huge pressure to move you to that – apart from anything else, I suspect that they will want to optimise use of their circuits, and to decommission much of the surplus infrastructure that they acquire from O2/BE. Nothing wrong with waiting to see of course, but I’d have a plan in place if I were you…

      I’ve no experience of iPhones, but on Android it’s trivial to set up phone numbers that you don’t wish to receive calls or text messages from. On my Samsung Galaxy S3 it’s part of the base install – no APP required. I’d expect iPhones to have similar facilities, probably via an APP. However, I personally find I never get cold-callers on my mobile phone – it’s a landline problem for me. That means solutions like your ISP’s anonymous caller reject service, or additional hardware like the TrueCaller or CallBlocker (that depend on CallerId) are the obvious choices.

      However, none have the flexibility that I’m looking for, hence the desire to roll my own solution… 🙂

  5. I’d be interested to hear if anyone is using home connect with Plusnet. I’ve always stuck with BT for calls because of home connect and bought separate ADSL from Plusnet with plain old Freeview for TV.

    • I know BT have to allow access to these overlay services (by law) to encourage competition, and that no-one else in the industry needs to. Whether PlusNet qualifies as BT or not in this respect, I really don’t know. I guess I just assumed that they would, but probably the only way to be sure is to call them up and ask.

      I’ll let you or Sam pursue that one 😉

  6. Pingback: Playing with callerid again | Richard's Blog

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s