Caller ID FAQ
Caller ID FAQ v2.25 January 2001
1. About this
Caller Line Identification, CLI, Caller ID, Caller Display.
All are different names for the service provided by many telephone companies
that allows one to see the number of the person who is ringing you. This
FAQ aims to help anyone who wants to use Caller ID, in particular those
who want to pass this information to their computer. Inevitably,
I concentrate on what I know best - the UK phone system and Caller ID under
Windows, but I also cover other countries and operating systems; the principles
are much the same. This revision updates the UK modem situation, and should
fix most of the bad links that have crept in over the last year or so.
This FAQ is available from http://www.ainslie.org.uk/callerid.htm
and is Copyright 1998-2001 Alastair Ainslie, with due acknowledgement of
any trademarks. Thanks to all in uk.telecom
who have posted anything useful that I've nicked. I don't pretend to be
an expert on this, but I've learnt a lot from posts on uk.telecom
in the last year or so in the course of my research for my own system,
and thought I might as well put it together for other people - it seems
to be a pretty popular subject on the group. I've put a lot of these posts
together in a ZIP
2. Caller ID jargon
CLI Caller Line Identity, data sent from
the exchange that identifies the calling party's number. This isn't
much good without...
CLID Caller Line Identity Display or
CLIP Caller Line Identity Presentation or
CND Caller Number Display, but in practice
most people just refer to CLI, Caller ID or
Caller Display which is what BT calls its version
of the service. I will try to use the non-technical term Caller ID.
Caller Return a.k.a. 1471. Tells you the
last number to call and gives you the option to return the call if the
number is known. Completely independent of Caller
CNAM Caller Name Display - see below.
CWID Call Waiting ID, shows the number of a waiting
caller while you are already on the phone. See below
Presentation Number allows the caller to send
a number other than the one belonging to the line they are using. The presented
number must belong to the caller; a typical use would be sending the main
switchboard number from a direct line extension. BT don't offer PNs
yet but are working on it.
ANI Automatic Number Identification, a "super"
Caller ID that is used by the emergency services, freephone providers,
and by telcos for billing purposes. It cannot be blocked, but is
not usually made available to consumers except by accident. Seems
to be more of an American term, but BT have something similar.
ACR Anonymous Call Rejection,
the automatic rejection of calls made by people who withhold their number,
who are often telemarketers - see below
DNIS Dialled Number Information Service, tells
the called party which number was dialled by the caller. Typically
used by call centres with different numbers for different services.
Office of Telecommunications, a non-ministerial government department set
up under the 1984 Telecommunications Act to regulate the telecoms industry
in the UK. They publish a CLI Code of Practice for Network Operators
and a version of this for consumers (http://www.oftel.gov.uk/tech/clic698.htm).
Both are pretty turgid but useful to wave at phone companies who are giving
you the run-around.
A good glossary of telecom abbreviations can be found
has a good history of Caller ID.
3. What do
I need to see Caller ID ?
In order to see the Caller ID information you will need
I'll start by going though the basics setting up Caller ID
on a phone or box, then go on to some of the commonly asked questions about
the service, and then deal with computer Caller ID after that.
* The Caller ID service from your telecoms provider
* Wiring that doesn't muck up the service
* Caller ID data sent in the format supported by your
* A suitable Caller ID phone
* OR a suitable Caller ID box
* OR a dedicated Caller ID card in your computer with
* OR a modem/ISDN that recognises the Caller ID data
with suitable software
4. The Caller
In the days of analogue exchanges, Automatic Number Identification
(ANI) was developed for call billing purposes. The information never went
beyond the caller's local exchange, except to those with privileged connections
to the network such as the 999/112/911 service, the police, and, later
on, freephone providers. These groups continue to use ANI which is
completely separate from Caller ID and cannot be blocked.
It was thought that the first patent for a method of
providing consumers with the Caller ID was filed by Carolyn A. Doughty
of AT&T Bell Laboratories (now
known as Lucent Technologies) on 12th July 1983 and granted on 15th April
1986 as US
Patent No. 4,582,956, "Method and apparatus for displaying at a selected
station special service information during a silent interval between ringing".
(it's also quite interesting looking at the
list of patents that reference this one.) In fact, Kazuo Hashimoto,
the man who invented the answerphone, got
there 10 years earlier, and has since claimed royalties from AT&T.
Implementation of Caller ID was only possible wiith the
widespread adoption of digital exchanges with a separate call data circuit.
Standards for this circuit were adopted internationally with the development
of Signalling System 7 (SS7), which is now the standard for connecting
phone companies world-wide. SS7 allows the caller's exchange to send a
Calling Party Number Message (CPNM or CPN), which includes the number of
the caller and whether or not the caller wants their number to be blocked.
I guess that this is why people in the phreaking groups try to disable
a mythical 'privacy bit' in the data that comes to their houses. But it's
not there!! You can only access the number with the privacy bit if
you have an SS7 connection to the network. The CPNM is passed all
the way to the called party's exchange, where the CPNM is translated into
the local form of Caller ID, and blocking is applied if necessary.
Caller ID is sent from the exchange to the subscriber in many different
ways - see below for more details.
So, for Caller ID to work, the two parties must be on
digital exchanges, that are linked by SS7. Many calling card companies
are not SS7 connected, and different routing can mean that calls between
the same two numbers may or may not show the Caller ID. Caller ID is not
possible from most analogue mobile phones, although I have heard that one
or two companies have found a way round this - some kind of DTMF implementation
You will need to sign up for the Caller ID service before
you can use it. This is NOT the same as the 1471 ringback service. Many
cable companies offer Caller ID for free, but you may need to ask them
to switch it on. BT charge an extortionate £4/qtr for Select Services
such as "Caller
Display". It used to be cheaper when bundled with free call time or
other services as a "ValuePlan", but now it seems you are expected to pick
as many services as you want and be grateful when BT reduce the price a
little. This is detailed on http://www.shop-athome.bt.com/home/pricing/discount.htm#Select
(and down a bit), but if you want the same information delivered 10 times
more slowly in a sugar coating, see their new Select Services Java
In the past, BT have offered basic no-memory Caller ID
boxes free with Valueplans in August - we'll have to see if this continues
in 2000. You have to get in quickly as they are usually overwhelmed with
the demand for the boxes.
BT lines configured for auxiliary
working can be set up to use Caller ID, but only the engineers seem
to know about this.
Caller ID is not available on BT Home Highway digital
lines, and you have to request it (and pay for it!) separately on the analogue
5. The wiring
of your phone line
Caller ID is a temperamental beast and can be quite fussy
about phone lines. Often this is because the devices that implement it
do not fully comply with various standards for telecom devices, even if
they have the green BABT sticker saying that they are safe to use on the
public telephone network. That's "safe to use", not "deliver the features
they promise". In particular, some devices, such as early BT CD50 boxes
and Hayes modems (more on these later), are sensitive
to the polarity of the line and will barely work unless the polarity is
reversed. You can do this yourself, but if you don't know what I'm talking
about - get an engineer to do it for you or read the uk.telecomFAQ.
The polarity should make no difference, but with these devices in particular,
it has been demonstrated to dramatically affect the likelihood of successfully
returning the Caller ID info. It is also worth disconnecting the
bellwire - Ken Williams
found that his Hayes modem wouldn't detect Caller ID unless this was done,
whereas his CD50 needed the wire connected. Some boxes are susceptible
to local radiation - BT CD30s may not work at all in close proximity to
DECT phones or mobile phones. A common suggestion is to ask BT to increase
the line gain, but while this may help, it is probably not tackling the
real cause of the problem. Some people have solved their problems with
wireless land lines (Ionica etc.) by using line 1 as their modem line and
line 2 as their voice line - it's a simple task for an engineer to reassign
the numbers to the lines.
A lot of people have had problems with the BT Caller
ID signal being killed by the C&W Linewise smart box; it seems that
C&W may have sorted this out by now. Similarly, BT DACS 1 units (a
cheap way for BT to provide two 'lines' on one piece of wire that drastically
reduce your modem connection speeds) don't like Caller ID - you should
be OK with DACS-2 boxes.
Unfortunately this means that you can no longer avoid being DACSed simply
by requesting Caller Display.
If you're having problems, try seeing if the Caller ID
device will work with all other extensions etc. removed or on a friend's
line. If not, the device itself is probably faulty - try another one on
your line using Argos' two week return policy ;-).
6. Caller ID standards
This is where it gets tricky as there are several ways of
sending the Caller ID data down the line, of which three are in use in
the UK. As a result, the residents of uk.telecom
can get very upset when people ask about "UK" Caller ID. I will soon be
adding a page devoted to the technicalities of these standards, but to
keep it simple :
The Bellcore standard is used in the USA, Canada (but see
Australia, China, Hong Kong and Singapore (who have their own standard?)
The European Telecommunications Standards Institute's (ETSI)
300 659-1 & -2,
and ETS 300 778-1
and -2) allows
3 physical transport layers (Bellcore, BT and CCA) combined with 2 data
formats (MDMF & SDMF), plus the DTMF system and a no-ring mode for
meter-reading and the like. It's more of a recognition that the different
types exist than an attempt to define a single "standard". Eire,
France, Germany, Norway, Spain, South Africa and Turkey use an ETSI format
similar to the CCA standard. http://ourworld.compuserve.com/homepages/jbenoit1/cidfr.htm
is the only site I know devoted to French Caller ID, and http://home.t-online.de/home/stefan.frank/clip.htm
has a useful list (in German) of equipment that will work with ETSI Caller
It sends the data after the first ring tone and uses
the 1200 baud Bell 202 tone modulation. The data may be sent in Single
Data Message Format (SDMF) which includes the date, time and number or
in Multiple Data Message Format (MDMF) which adds a NAME field.http://testmark.com/callerid.html
has more details.
British Telecom developed their own standard, which wakes
up the display with a line reversal, then sends the data as CCITT V23 modem
tones in a format similar to MDMF. It is used by BT, wireless networks
like the late Ionica, and some cable companies (Nynex?). Details are to
be found in Supplier Information
Notes (SINs) 227 and
another useful document is "Designing
Caller Identification Delivery Using XR-2211 for B.T." from the EXAR
The Cable Communications Association in the UK developed
their own standard which sends the data after a short first ring, as either
Bell 202 or V23 tones. This was a result of the variety of switches used
in the UK cable industry (most are Nortel DMS-100's, some are System X).
The data format is similar to BT's, but the transport layer is more like
Bellcore, so North American or European kit is more likely to detect it.
An esoteric DTMF
system is used in Finland, Denmark, Iceland, the Netherlands,India
(?), Belgium, Sweden, Brazil, Saudi Arabia and Uruguay. I would have thought
that it should be possible to detect this using a normal modem, but I'm
not aware of anyone succeeding in doing this. The Dutch and Danish version
is a little different to the Finnish one - Jacob Blichfeldt has a
good explanation of this on his site, as well as plans for a device
to decode it. I've read that there are in fact 5 varieties of DTMF
system, with the Brazilian version being particularly weird.
NTT in Japan have developed their own V23 FSK simplex system,
transmitted after a short first ring.
The former USSR does not have a Caller ID standard as such,
but their version of ANI is widely hacked. http://www.cnt.ru/users/radio/phone/doc/index.htm
has info in Russian, and I have a English summary here.
follows ETSI in permitting DTMF and FSK signals.
The system used in Australia and New Zealand seems to
be based on Bellcore, but it seems sufficiently different that not all
US equipment will work. Dick
Smith Electronics seems to have a good selection - type 'caller'
into their search engine. See my modem section below
More details (like the code numbers of official standards
documents) can be found at http://www.adventinst.com/resources/rsrchome.htm,
whilst broader overviews can be found at http://www.epl.co.uk/info12.htm
Following the consolidation of the UK cable industry,
most cable companies seem to be standardising on CCA, although different
exchanges within a company may use different standards. The only way of
finding out which one you have is to ask them, buy hardware from somewhere
that takes returns (Argos etc.), or use a multi-standard device. Cable
& Wireless have been promising Caller ID on some of their exchanges
since the mid-90's and never delivered. Apparently the problem is
not at the exchanges, but at the street level multiplexors ('muxes') which
it is not worth their
while upgrading. As far as I know, only Telewest
exchanges in Merseyside/Lancashire and ex-Nynex areas have the System
X exchanges that use BT Caller ID - other cable customers will almost certainly
need Bellcore-compatible equipment. I have had a report that in order for
some North American equipment to work, the cable company must turn on Caller
Name support on the switch, even though this will only ever send 'UNKNOWN'
in the UK.
BT devices seem to send the data after the first ring
like Bellcore ones for compatibility purposes, so you can use American
software with a modem on a BT line. Most of them cope with our dialling
codes being 5 digits not 3, but not all of them. BT's use of spaces and
hyphens to punctuate the number also causes problems; Bellcore sends the
number as an uninterrupted stream eg 2125551234.
The good news is that there are chips available that
can cope with different standards, but they are not widely used. Some that
have been mentioned are the EXAR XR-2211
(see above), the CWID-capable CMX602B
from Consumer Microcircuits Limited and Mitel's MT8843AE,
found in their CNIC2 modem. http://www.adventinst.com/resources/semi.htm
has a list of mostly Bellcore Caller ID chips.
Remember, there is no such thing as "UK" Caller ID!!
7. I'm in Canada,
why doesn't my Caller ID work?
Yes, there is a country where things
are more complicated than the UK. Most people think that Canada uses
Bellcore, just like the USA. It does - almost. For some reason, the
former Stentor member companies use a non-standard implementation of MDMF.
Bellcore uses DN (Directory Number), usually the 10 digit number that includes
the area code found in the phone book. Stentor uses DDN (Dialable
Directory Number), a variable length number that is the number that must
be dialed to call the other person
back (ie local calls don't include
area code, long distance includes the preceding "1"). Normal Bellcore
MDMF identifies each part of a message with a Message Type Word parameter,
and the DN is assigned Parameter Type 02. The Canadian Stentor switches
assign DDN to 03.
This is incredibly confusing for
anything that only looks for the DN in 02, and this includes Unimodem (see
below). Some modem drivers (and Canadian phones and caller ID boxes) check
for both DN and DDN and will display either - 3Com ones for instance (and
is there a general patch, perhaps for Unimodem?). Otherwise, you
just have to avoid TAPI and use software that specifically knows about
this quirk - Identafone is one, but
most Canadian authors seem to have found out about this the hard way ;-).
The relevant document was called Stentor document ID-0001 "CALL MANAGEMENT
SERVICE (CMS) CALLING NUMBER DELIVERY (CND) (Single and Multiple Message
Format) Terminal-to-Network Interface". Following the upheavals in the
Canadian telecom market it is now Bell
Interface Document BID-0001 and will cost you CAN$50 to download. Incidentally,
Stentor's standard also allows for a Parameter Type 06, which includes
a flag that indicates that the call is long distance and CallerID is not
available, but it may no longer be in use.
I've now made a separate list of
some of the Caller ID phones available in the UK, and now a
separate list of the cordless Caller ID phones.
Most of them support both BT and Bellcore standards -
a good website is that of Phoneshop.uk.com.
There are adequate ones from £20, but most of BT's corded ones are
around the £60 mark - you'd be better off getting a digital cordless
or the Easicom 1000 for a similar price.
That said, if you're going for a digital cordless phone,
it's worth spending that bit more for phones such as the Ascom Avena, BT/Siemens
Diverse series, Panasonics and the Phillips Onis series.
9. Dedicated standalone
I've now made a separate list of
Caller ID boxes. However, the ones to go for are :
uk.telecomers are keen on
boxes, which allow calls to be diverted to a different phone socket using
the caller's number
or Distinctive Ring
(=BT CallSign). They're high quality but around £100. David Husband
promised great things with his Interceptor
device, but it's been at the prototype stage for years now. PDA
Technology used to do an ACR box, but it is no
longer on their website..
For the gizmo freaks, the partially sighted or the idle rich
- the £60 BT CD2000 with its 6" screen
For features, including Call Waiting ID - the £35 BT
For cable customers or those wanting a decent, no frills
box - the £15-25 Betacom Preview 2
For cheapskates - the free box BT offer when you sign up
for Select Services in the summer; or the £10 Audioline CLD50
Americans have been able to display Caller ID on their
televisions for some time now. Such devices have now come to the
UK, but BT's Easicom TV1 unit is pretty hard to find these days - it wasn't
well marketed, and appears to have been discontinued. The TV3 had
an IR keyboard for email on TV as well. http://www.trinexus.com/mess.html
has units for America and Europe. I find a cordless phone with Caller ID
a better answer, as you don't need to get up to answer it!!!
10. What's the code to.....?
The 234# codes don't work on all BT
exchanges (see Technical
Interface Guide 7v7 for more details), but *#234#
is more reliable than the more comprehensive *#001# report. UK cable companies
generally use the US codes or a mixture (C&W's website used to have
a list, but NTL's site is useless)
|Withhold sending of Caller ID
(some US telcos charge for this)
|| *67, 1167
|| *31*, 3651
|Release number if normally withheld
|Turn Caller ID on
|Turn Caller ID off
|Find out Caller ID status
|Turn ACR on
|Turn ACR off
|Find out ACR
11. Can you get Caller ID with
The original specs for Caller ID allow for the name of the
caller to be sent as well as the number. This service is widespread
in North America, whereas BT got as far as a small trial, in Edinburgh
I think, and then quietly dropped the whole idea citing "privacy problems".
Urban legend has it that the 15 letter limit was a particular problem for
the GIRL GUIDES ASSociation <g>. BT may change their mind following
the implementation of the Telecoms Data Protection Directive (see below),
but I wouldn't bet on it. The best you can do is take the incoming number
and match it against your address book or even one of the CDs of phone
numbers - the standalone devices have limited memories for doing this kind
of thing, computer solutions can obviously do more (see below).
12. Can you get
Caller ID from overseas?
This is something that is becoming more and more common,
but is still rather unpredictable. Different routing can mean that the
number is passed or not, and this is more apparent on international calls,
especially from the US. In the UK, Oftel will allow European Caller ID
if the other country has implemented the Telecoms Privacy Directive (see
- some hypocrisy here, I feel <g>), and there have been reports of Caller
ID appearing from Australia and even some US lines. This seems to happen
more often on digital mobiles than on land lines. You may be surprised
to see that some calls from inside Britain show up as "International".
This is normally due to the fact that it is cheaper for companies such
as First Telecom to route some calls (such as mobiles) via another country
(usually the USA) than to pay national rates. Crazy but true.
Holland was quicker off the mark in this area, as can
be seen at http://www.icepick.com/callerid2www.shtml
, where Alex van Es has effectively attached a Caller ID unit to his webserver,
so you can ring his number and see your number appear on his site - he's
got numbers from all over the world. He's one of those slightly scary
people who has online stats for things like openings of his fridge....say
13. Can you get
Caller ID for Call Waiting?
This is also known as "off-hook" Caller ID or Type 2 Caller
ID. A standard for Call Waiting ID (CWID) was added to SIN
227 Issue 2 ages ago, but BT quietly introduced it on some exchanges
in summer 1998 after an announcement in SIN
274. Unfortunately, very few devices support it. I know that the Relate
1500 and CD60 do, and no doubt there will be many more coming, but it's
a very good reason to consider one of these if you are getting a Caller
ID phone/box in the near future - I try to highlight CWID capability
on my phones and boxes
pages. Some Nortel Powertouchs and Maestros support it outside the UK.
I think the same holds for another extension of Caller ID, Analogue Display
Services Interface (ADSI), which allows data to be sent to the screen while
you are on the phone - I think this is how the BT Easicom phones tell you
that you have email waiting..
The one disadvantage of Call Waiting ID is that it is
much more vulnerable to hacking.
14. How do I
know if someone's calling me when I'm online?
This is an increasingly common question, and the V92 modem
standard should provide the answer in theory. At the moment, the only modems
to support Call Waiting are the American Actiontec
ones and the Call Waiting tones often force modems to drop the line.
Some people want this, but it is possible to get modems and Call Waiting
ID boxes to coexist, or you could try the US$50 Webs
Call Waiting Detector, Norm
Tanner's box (US$79) which uses his nice Talking
Caller ID software, or the US$100 Command
Communications' HotCallPlus, devices designed to do just this.
Recently, several schemes have sprung up that send the number of a waiting
caller to your computer. They rely on the 'Divert When Busy' service to
forward callers to a central computer, which takes their Caller ID and
sends it to you over the Net. Most of these services are confined
to N. America - Internet
Call Manager and Pagoo
are the best known (see here
for a comparison), but look at Busybuster
and the free-but-with-adverts Callwave
too. OnLine Call Manager
now provides a similar service in the UK and BT have started trials.
have a similar service with a free voice mailbox and email notification,
and apparently they note down the ANI of the caller, so you can see who's
calling you even if they withhold their number! Call
Wait offers an interesting solution - it routes your modem via you
sound card, and then tries to pick up the Call Waiting tones. I've
no idea if it works, or how badly it affects your connection, but it might
be worth a go.
There are alternatives to these services - you can try
to get your modem to tolerate a CWID box on the line, or go for a second
line with auxiliary workingor
some kind of digital link - this question doesn't arise for ISDN and ADSL
users! Another option is to organise a divert to a mobile phone. On most
exchanges, 1471 will give you the number of the last person to ring you
whilst the line was busy.
If you want more details on this subject, I strongly
recommend that you read http://modemfaq.home.att.net/faq_a.htm#CallWaiting
and the less comprehensive but more detailed http://www.56k.com/reports/callwait.shtml
15. How do I
fake the number that I send?
Since the Caller ID signal is only generated at the called
party's exchange, and the caller's line is only connected after the called
party has answered the line, it should be impossible to fake the Caller
ID data without access to the called party's line or exchange. Certain
older Bellcore Caller ID boxes contain chips (such as the Motorola M145447)
that can be tricked into receiving extra Caller ID tones during a call.
I guess this is the loophole exploited by the $300 box advertised here
(#107) or the "Presto Chango" box. The other case where extra Caller ID
tones can be sent during a call is Call Waiting ID, and this is inherently
far more vulnerable to hacking, a fact exploited by the 'orange box'.
But unless your victim happens to have the right sort
of box, there is no way of faking your number from your own line.
Without an SS7 connection, you don't have a hope. In any case, if
you do anything too naughty, the authorities will still be able to track
you down using the billing data. All you can do is make the data unavailable.
Examples of this are using 141/*67 or placing a call via the operator,
a non-SS7 calling card, a payphone, or an analogue mobile phone.
16. How do I
get the number of people that withhold their number?
Again, you can't really do this without an SS7 connection
- if the number is withheld, "WITHHELD" is sent down customer lines, not
the real number in some code form. If the caller is hassling you,
you will have to bring in BT's Malicious Calls Bureaux (sic) or your phone
company's equivalent to trace the number. This is easy for them as they
have access to the ANI billing data. If you don't want to do that, all
I can really suggest is to use ACR (see below) - that
way either you don't hear them, or they have to reveal their number.
If they switch to using one of the anonymous methods above,
then you might have to use a system that allows you to reject UNAVAILABLE
calls as well, perhaps within certain times like at night - this would
be easy to implement on a computer system. Apparently the voice mailboxes
identify callers using ANI, so you get a record of their number even if
they withhold their number.
17. How do I
reject calls from people that withhold their number?
The main reason people want to do this is to avoid telemarketeers,
who typically withhold their number. British phone users have some protection
as they can opt
out from receiving such calls using the Telephone
Preference Service. Under The
Telecommunications (Data Protection and Privacy) (Direct Marketing) Regulations
1998 it is now an offence punishable by £5000 fines to cold call
anyone registered with the TPS, so before you do anything more complicated,
register with the TPS on 0845 070 0707, or the
fax equivalent on 0845 070 0702. This was brought in as
a result of Brussels' Telecoms Protection Directive (see below), so most
EU countries should have something similar - even if you haven't registered
yet, pretending that you have should get the cold callers sweating <g>.
You can check your TPS status at http://www.numbercheck.co.uk/.
Americans have had Anonymous Call Rejection (ACR, also
known as "block blocking") for several years. Bell Atlantic have a sophisticated
exchange-based ACR that includes a PIN that you can give out to friends
who would otherwise be rejected.
With ACR, any call that has a Caller ID of "WITHHELD"
is automatically ignored. Calls that present as "UNAVAILABLE", "INTERNATIONAL",
"PAYPHONE" or whatever are allowed through. This is great for those suffering
from nuisance calls of all kinds, less good for telesalesmen and other
phone pests. However, "UNAVAILABLE" is presented by calls from the
0.5% of people on old UXD5 exchanges and (notoriously) on BT's FeatureNet
service. This is BT's name for Centrex (delivered by a separate network
of Nortel DMS100's - the small-business version, FeatureLine, uses the
main network), which allows organisations to set up a virtual switchboard
covering several sites within a town or further afield - it's often used
by local government and universities. "UNAVAILABLE" also seems to
be the default for some switchboards; companies are now finding that they
have to configure their switchboards correctly if they are to communicate
with all their customers. (I'm no expert on switchboards, but the
impression I get from uk.telecom is that
there is always a way round the "UNAVAILABLE" problem even if it has to
be some kind of Presentation number like the main switchboard number rather
than an extension.) However, recent reports that telcos can easily
alter ISDN lines to present "UNAVAILABLE" are worrying....
ACR has prompted a great
deal of discussion on uk.telecom recently,
mostly along the lines of "When are BT bringing it in?". Brussels
has come to the rescue with Article 8.3 of the Telecoms
Data Protection Directive (97/66/EC), which states :
"Where presentation of calling line identification is
offered and where the calling line identification is presented prior to
the call being established, the called subscriber must have the possibility
via a simple means to reject incoming calls where the presentation of the
calling line identification has been eliminated by the calling user or
In effect this means ACR, and Article 15.1 requires :
"Member States shall bring into force the laws, regulations
and administrative provisions necessary for them to comply with this Directive
not later than 24 October 1998."
The DTI finally brought in the Telecommunications
(Data Protection and Privacy) Regulations 1999 (formerly 1998 ;-) )
under the Data
Protection Act 1998 on 1 March 2000. If your telco is dragging
its feet, try quoting the Regulations at them, or inviting them to talk
to Oftel. In fact, most companies introduced ACR back in 1998, although
BT left it until, yes, 1 March 2000. The announcement is at http://www.bt.com/World/news/newsroom/index.htm
(in the Archive, "New choice and control for customers" (29/Feb/00). Details
of BT's ACR service are in Service
Provider Industry Notification (SPIN) 027 - the main catch is that
it's available neither on multiline installations nor digital lines (analogue
ports of Home Highway are OK though). At the same time, BT introduced a
10 number killfile ("Choose to Refuse" a.k.a. Last Incoming Call Barring
- details in SPIN 021),
which is £8.01/qtr inc. VAT (£9.40 for businesses). It's free
if you are the victim of malicious calls, and works regardless of whether
the person witholds their number. It seems BT are trying to keep quiet
about both of these services (they want the business of telemarketeers
and stalkers ? ;-)), but you can get them.
However, there is no obligation for ACR to be free -
BT charge an extortionate £9.99/qtr inc. VAT (£11.74 for businesses),
whereas Telewest charge £3/qtr
(this doubled about the time that BT announced their prices!). Apparently
NTL Midlands (ex Diamond Cable) are not officially offering it to customers
as "it is a chargeable service which their software is unable to charge
for" !!! However, *227# will switch it on for you on NTL and you won't
have to pay... at the moment. Other companies use *227#, *65 or 1478 to
turn on ACR, although Kingston require you to ask an operator to do it.
To Choose To Refuse a number, dial 14258 after the person has rung you.
So, you may find that it is still economical to do ACR
at your end, using hardware (eg the Lineplex CLI-200 mentioned in the boxes
section above) or software that treats "WITHHELD" as just another special
case (eg PhoneFilter or WaveCaller).
The Bellcore Nortel Meridian 9516 can divert callers to a mailbox or tell
them to ring again with the number unblocked, but it's US$260. Apparently,
Nortel Powertouches can ring differently on WITHHELD calls, and most Siemens
phones have a 'Secretary' feature that diverts all calls that are
not in your phone memory to another number, usually a voicemail.
This sounds useful - anyone know more? Is this just their mobiles? US West
operate a similar
system on their exchanges between 8am and 9pm for £50p.a. !!
18. What modems
support Caller ID ?
Very few modems can understand more than one standard - the
Mitel CNIC2 is the only one I know of, and I don't know much about it.
If your phone company uses the Bellcore system, you can
use pretty much any Rockwell chipped voice modem; however use of
Bell tone modulation may bar them from BABT approval in the UK. See here
for an incomplete list. Caller ID won't work on some Compaq Presarios until
software, or even their modem ROM have been upgraded. 3Com/USRobotics
modems have good hardware support for Caller ID, even managing to accomodate
the Stentor quirk (see above), but their drivers often
do not include Caller ID support. Arash Ramin provides some modified drivers
The system used in Australia and New Zealand seems to
be slightly different to normal Bellcore, so that several modems that claim
to be Caller ID capable, aren't. Lindsay Wright has suggested that that
in New Zealand, the Caller ID data is sent 340ms after the first ring,
rather than 500ms as specified for true Bellcore. Cecam Consultants have
tested several modems for Caller ID in New Zealand. In general, those
modems that claim Caller ID capability work well, and some 3Com/USR models
will as well.
If you are somewhere like Finland and your phone company
uses the DTMF system, then you are restricted to Intertex
modems (also sold as Powerbit and Telia). The Tornado
SFM560 is the only modem I know of that works with the DTMF system
in the Netherlands (T11-12?). It comes in serial ('E') and USB ('USB')
external versions. The same company makes the Tron
DF56.0, which is also compatible, but I suspect it's a lot more expensive
- it appears to be aimed at callcentres or similar.
In the UK, most people will need a modem that supports
BT Caller ID. Some ordinary modems work with the cable companies' standard,
but it's a bit hit and miss as to whether they can compensate for the slight
differences between that and true Bellcore. Further info welcomed. The
only manufacturers that have ever supported BT Caller ID are Pace,
(Europe), and 3Com.
Sadly, PMC, the company that made Pace modems, withdrew
from the market in August 1999. The 56K Voice (available in internal,
and PC Card versions)
worked well - I had one myself and can thoroughly recommend them. My only
problem was with Logitech products grabbing too many IRQ's and COM ports;
I got round this by running PACECARD.EXE, but now know that you need to
follow the instructions in the Logitech README, to stop Windows looking
for Logitech devices on every port at start-up. You may still find Pace
modems marketed under the PMC brand or from end-of-line specialists such
Computers or Sterling, but
these days you are most likely to find them second hand. Some of the Pace
Microlin modems could grab BT Caller ID as well. The Pace
Solo was good, although it passes the data in a non-standard format
("012340123456" not "01234-123456"). This confuses some TAPI programs,
so try a Solo-aware one such as Wavecaller
if you have problems. There were also odd problems with Solo drivers and
firmware - you want firmware
2.04 and the mdmsolo.inf
Early Hayes modems
(28.8k to early 56k) were plagued by all sorts of problems. Different
versions of the same model had different Caller ID capabilities, and those
that did were fraught with hardware problems such as polarity sensitivity
and insufficient sensitivity to the Caller ID signal. Although it seems
that these problems have now been solved, I still get some criticisms of
the quality of the voice components used by Hayes. I've gathered together
all the information I have on a Hayes modem page.
This page might be useful for users of older modems by other manufacturers.
Since Hayes were taken over by Zoom, the only modem which still claims
to get Caller ID is the Accura
56K external no #08-02990.
Early US Robotics modems supported the Bellcore standard,
then their UK-spec modems had the circuitry disabled totally. As a result,
you will never get a US Robotics modem to grab Caller ID data on a BT line.
However, some of the latest 3Com
models do. I'm not sure when they started (early 1999?), but 3Com themselves
are not exactly sure which modems have it! From what I can work out, you
need the CTR21 versions, which come with a model number ending in -01.
Recent data/fax 56k
Professional Message Modem model 245625-01 definitely works. More recently
Message Modem (245668-01) has gained the capability, and some of the
recent 56K Faxmodems may work too, but not the Voice ones as I understand
it - strange.There are also -00 versions of all models in circulation which
won't work - be careful to specify this to your supplier. As you can tell,
it's a bit of a nightmare, but news of any other 3Com modems that work
on BT (with model numbers!) would be appreciated.
I have seen a review that suggested that Aztech 56K modems
support 'CLI', but this was refuted by their head office.
claim that their D-Link DFM560E modem supports "Caller ID", but the only
reference I could find was on D-Link's
Australian website, which makes me suspect that it doesn't work with
BT Caller ID. Netshop sent Lea Keable a DFM560EL, which doesn't work.
Find a Modem program might be useful in listing your modem's capabilities;
I've not tried it.
19. Caller ID
Caller ID is written into the ISDN standards (see here
for an introduction to ISDN), but only a handful of TAs send it to their
POTS ports, allowing you to plug in a box directly. Network
Alchemy products are the only ones I've heard of that support the BT
standard. The Zyxel TAs and the ADAK
220 and 221 pass it as well, but I think they use the Bellcore
standard and the Zyxel data appears in a slightly weird format (programs
like Identafone know about this,
though). I've just heard that the Zyxel
Omni.net LCD can send the data to the analogue ports in any format
you like, including BT's. Apparently several ISDN routers support Caller
ID on the POTS ports (e.g. the 3Com OCLM & Cisco 776, but I guess they
are Bellcore only too). If you want to access the data on the digital
channels, you can either poll the registers directly or using CAPI,
the Common ISDN API. This is a European standard ( ETS 300 838 "Integrated
Service Digital Network (ISDN); Harmonized Programmable Communication Interface
(HPCI) for ISDN") that has now been incorporated into the ITU's T.200 "Programmable
communication interface for terminal equipment connected to ISDN". In general,
all EuroISDN equipment is CAPI-compatible (see here
for a list), but North America is some way behind. I list ISDN programs
- almost all use CAPI, although some are hardware-specific.
Ltd. make a range of TAPI compliant ISDN TA's, which should work with
any software that needs a voice modem. I think they do some ISDN software
has details of lots of ISDN hardware, as well as a good whinge about the
nightmare that is BT's implementation of ISDN. For instance, it seems that
BT's interpretation of ISDN-2e can't distinguish between WITHHELD and UNAVAILABLE,
which makes quite a difference for ACR fans. Dan Kegel
has a great page full of useful
ISDN-related links and ISDN
Caller ID is passed to the analogue ports of the Home
Highway box, and if you want it on both analogue lines you will have to
pay for it twice! The same is true of ACR. Some people have had problems
with early versions of the HH box - BT are happy to supply a 'Release 2'
box on request. Caller ID is available on the digital lines of Business
Highway for an extortionate £10/qtr, but not on Home Highway.
However, there have been reports of people getting a BT engineer to add
it to Home Highway unofficially.
I'll be making a page devoted to these soon, as I've got
a big list of Bellcore-only devices, but for the moment here are the BT
100 box, as seen on TV, works pretty well hooked up to a serial port.
But the software's not great and it's
130 quid + VAT.
uk.telecom is keen on
kit but a modem would not cost much more; on the other hand dedicated hardware
should be more reliable.
in York have a more varied range of similar devices. The Meteor unit can
handle both BT and Bellcore standards.
UK are bringing out a board 'soon' with talking software - further
details as and when. Their site tends to crash Netscape.
I can't cover all the more sophisticated (for which read
expensive ;-) ) telephony boards on the market, but a few of the better
ones are :
PhoneRider board, 'only' US$300, works with most Caller ID standards
including BT's and has an NT TSP for TAPI work. The Dialogic
(now part of Intel) product
line includes the Proline/V2
which is reasonably cheap, but their TSPs are allegedly somewhat flaky,
and it ends up easier to use their native API or something like Envox'
(formerly Lucent CTP, formerly Rhetorex) have boards such as the RDSP/232
but they don't mention Caller ID..
Rochelle are best
known for their telecoms testing equipment, but they have their fingers
in this pie too.
have developed a Callscape-style solution for Acorn machines using Solwise
It is also possible to build your own devices such as
has a good selection of circuit diagrams, and http://www.novia.net/~tim/thesis.htm
has a step-by-step description of a Bellcore device.
has a variety of Bellcore devices, including ones that will put the Caller
ID on your TV.
21. What are
TAPI and TSAPI?
Normally, your software retrieves the Caller ID data by opening
up the COM port and waiting for the telephony hardware to send the data
when a call comes in. The trouble with this is that no other program
can access the COM port whilst the Caller ID program is running. This is
very inconvenient if you want to use your modem for connecting to the Net,
For this reason, Microsoft introduced TAPI, the Telephony
API. This acts as a middleman, brokering access to the modem by all
the program that want to use it. This allows you to use Dial Up Networking
without closing down your Caller ID program first, if your Caller ID program
is TAPI-compatible. So it's a good idea to make sure that your Caller ID
program is TAPI compliant. I'll come back to the subject of TAPI in the
section on writing your own programs, but for the moment here's a run down
on all the different versions :
TAPI 1.3/1.4 was the 16bit/32bit hybrid version that
came with Windows 95; NT 4.0 introduced the fully 32 bit TAPI 2.0 &
(the la is also available in a patch to Win95); and Windows 2000 should
bring us TAPI
3.0. Microsoft keep mucking about with the relevant pages, so I suggest
you start here
or enter TAPI into their search
Novell's Telephony Server API, TSAPI, is similar, but
only runs on Netware - see http://www.connecttel.com/research/tsapi/.
It appears Novell have now dropped TSAPI, but it can be downloaded from
22. Caller ID
on Windows 95
For TAPI to work, it needs a special type of modem driver
known as a "telephony service provider", or TSP. Windows 95 and 98
have a generic TSP called Unimodem/V which appeared in OSR2. This adds
voice features not present in the earlier Unimodem. You can list the TSPs
on your system by enabling the Telephony applet in Control Panel - rename
the TELEPHON.CP$ file in C:\WINDOWS\SYSTEM\ to TELEPHON.CPL, and open up
Control Panel. The applet is already enabled in Win98 and NT 4.0.
If you want Unimodem/V to cope with phone numbers of
more than 10 digits (i.e. British or Canadian ones) without clipping them
you need to apply the under publicised patch v4.10.1343. The version number
can be found by right clicking on UNIMDM.TSP in C:\WINDOWS\SYSTEM\ and
going to Properties | Version. I got my patch from http://www.mtnsys.com/pages/techspt.htm#Misc
but Microsoft now have the original,
on their site. Note these are for Windows 95 only - the updates are
built into Windows 98.
23. Caller ID
on Windows 98
Although Unimodem/V is built into it, quite a few people
have had problems with Caller ID on Windows 98. The main reason is
that the default Win 98 Plug'n'Play drivers (especially for 3Com/USRs)
did not support a lot of functions, so you had to install the manufacturer's
latest drivers manually. There's now been reports of exactly the same thing
happening in Windows 2000 - come on 3Com, pull your socks up!
Apparently the default drivers in Windows 98 Second Edition
(released 5/May/99) have Caller ID support. I have heard of people's Windows
98 problems being solved by installing Windows 95 Unimodem/V, but it's
not something I recommend except as an I'm-prepared- to-reinstall-Windows
last resort. It's possible that some problems are associated with the version
of Unimodem that comes with Internet Explorer 5 - I'd welcome further reports
on this, one theory is that TAPI is trying to read ASCII codes as Unicode
- maybe this is only in the International version?
24. Caller ID
on Windows NT
Windows NT does not have a universal TSP such as Unimodem/V;
NOT INSTALL THE WINDOWS 95/8 UNIMODEM/V ON NT, unless
you want to reinstall NT from scratch. As I understand it, the telephony
applet and non-voice Unimodem came in with SP5. Microsoft have been promising
a TSP for a long time, but it only finally appeared in the Windows 2000
beta. JulMar have
apparently developed a 'general' TSP ('Sample TAPI Service Providers' on
page) that should work on NT, but it doesn't work very well?
All this means that it is impossible to run TAPI programs
on a 'normal' modem under Windows NT. So, if you want
to use your modem for other purposes, your options are :
Use software that accesses the COM port directly. I
have tried to highlight these in my software pages,
but obviously you can't use your modem for anything else while such programs
are running. This is a major pain - maybe you could write a little script
that closes the Caller ID program when you dial up, then opens it again
when you log off. AON does something like
Switch to Windows 95/98/2000 if you can.
Buy a 'cheap' telephony board that has an NT TSP such as
the US$300 Mediaphonics
PhoneRider board (see PC boards above)
I wonder if sticking another Caller ID modem/board in
and using it with COM port mode software might work as an alternative?
If you're doing that, you should consider going digital -
I know nothing about ISDN/ADSL and NT TAPI, but the price must be
25. Caller ID
on other operating systems
To be honest, I don't know much about this but what I have
been able to discover is all on my Non-Windows software
page - there I have programs for Acorns, Amigas, Macs, OS/2 and Linux,
as well as one or two cross-platform languages. If you can talk to a COM
port and can fit a suitable voice modem, it should be possible to do something.
More information is welcomed.
26. Caller ID
This can be as simple or as complicated as you like. I review
some of the packages I've tried elsewhere
on this site, but I would recommend you test your system with Symantec's
freebie Caller ID utility, and then maybe go on to something like the shareware
or WaveCaller. Alternatively, you
might want to go for a full voicemail/fax handling
solution, or incorporate Caller ID into your own programs. Some Caller
ID programs can respond to an incoming call by bringing up a customer's
details, but if you are serious about this kind of thing, you're better
off getting a Caller ID-enabled personal information manager (PIM) - most
of them can do this, with the notable exception of Microsoft Outlook. I
have made a list of some of the main ones here.
Hopefully you now have a system that is capable of supplying
the Caller ID data, but how do you test it? Rather than going to the phonebox
round the corner, might I suggest you use BT's 17070 ringback service?
This has apparently superseded the old 174; 01223 369 997 also provides
this service, but also works for some non-BT lines - the same may
be true for 0800 373 983.
I would start with the Symantec
program, but if that doesn't work and you want to check that the Caller
ID info is emerging correctly from your modem, fire up Terminal (Windows
3.x) or Hyperterminal (one of the Windows 95 Accessories, or search your
disk for HYPERTRM.EXE). The following instructions are for Hyperterminal
users, but it's pretty much the same for Win 3.1 users :
When the Connection Description dialogue box appears,
type something to fill the Connection Name box, then press OK.
Next type something to satisfy the need for a Phone Number.
Now you have two options, TAPI mode or COM port mode.
It's best to start off with the more sophisticated TAPI mode, then give
COM port mode a try if TAPI doesn't work - Win3.1 users only get COM port
mode. If you are using TAPI, choose your modem from the 'Connect Using'
drop-down list. The Connect dialogue will appear - press Cancel.
Then type AT#CID=1 and press Enter to enable Caller ID in formatted
mode. For some reason, Hayes Optimas use AT%CCID=1 and
I've seen AT+VCID=1 (recent Cirrus etc), AT#CC1 (older Cirrus,
VoiceSurfr) & AT*ID1 suggested for other modems; IBM has
a good page of modem strings.
Sometimes you may need to switch to Voice mode with AT#CLS=8 or
similar. If you want to poke around with your modem settings, look in the
.inf file or in the Registry under HKEY_LOCAL_MACHINE\System\ CurrentControlSet\Services\Class\Modem
(I take no responsibility for any fiddling with the Registry
whatsoever, if you don't know what you're doing, don't do it!!) Don't forget
that the modem sends the data after the first ring, regardless of when
it arrives at the modem, so don't let it answer on the first ring!! (i.e.
Then ring the number from another line, or use 17070.
The following fields should appear :
NAME will be blank or "WITHHELD" unless your telco supports
Caller Name Display, which is unlikely in the UK (see above).
The procedure is the same for COM port mode, but you
select your modem's COM port from the list, and it's best to go for AT#CID=2,
Caller ID in Unformatted mode. AT#CID=0 switches off Caller ID.
AT#CID? gives the Caller ID status of the device (0=off i.e. something's
not working, 1=on) but some devices fake this for compatibility purposes.
28. How do I
convert area codes into place names?
There are many ways to translate phone numbers into something
more meaningful. If you want a printed reference, BT will sell you the
"Phone Book Companion" for £2.50. Otherwise, the first place you
should go is the excellent http://www.warwick.ac.uk/search/Phones/phone.html
where there is all sorts of information and lists using recent Oftel
For a more international perspective, try The
Phone Booth - their UK
coverage gives a good overview of all Oftel's mucking about. http://massis.lcs.mit.edu/telecom-archives/archives/country.codes/
has similar data but in list form.
An alternative is to download a program that can translate
STD codes to names and vice versa, such as ftp://ftp.demon.co.uk/pub/ibmpc/win3/apps/utilities/phone11.zip
(Windows 3.x) or http://www.geocities.com/SiliconValley/Park/7045/prs_download.htm#PhoneDecoder
LocateSTD ( from Software Solutions, Northallerton was
place codes on a map of the UK.
However, if you want to develop your own software to
search a database of STD codes down to sub-area codes, try http://www.rdg.ac.uk/Directs/DIR/std.list.w.html
It hasn't heard of the latest round of code changes (0113 for Leeds etc.)
but those would be fairly easy to add.
29. How do I
use Caller ID in my own applications?
OK, Computer-Telephony Integration (CTI) is a buzzword, but
the possibilities are endless once you start combining things like Caller
ID data with your other business systems. Aside from the obvious Caller
ID PIM, you can give existing customers a different
set of voicemail options or allow staff to ring in and listen to their
emails. Off-the-shelf software is advancing rapidly in this area, but if
you want to write your own in Windows 95, then you need to find some suitable
development tools or learn to write directly to TAPI (see above).
I list suitable Visual Basic/
Delphi controls elsewhere, but if you want to learn more about TAPI
go to Microsoft
(includes an explanation of the different versions). This is really beyond
the scope of this FAQ, so I strongly recommend you start reading microsoft.public.win32.programmer.tapi.
Grant Schenk has an introduction
to TAPI in Powerpoint, and Bruce
Pennypacker's excellent TAPI FAQ should get you on your way; Mike
Dunn's site has a good selection of links to get you started (and is
more likely to keep up with where Microsoft have moved their TAPI pages
this month - grrr. ;-) )
The best book on the subject is "Windows Telephony Programming"
by Chris Sells (Addison Wesley 1998, ISBN-0-201-63450-3).
"The MAPI, SAPI & TAPI Developers Guide" by Michael
C. Amundsen (Sams 1997, ISBN-0-672-30928-9) is helpful and is available
online for free. Searching on TAPI at ITKnowledge.com
can also turn up useful books.
By way of a brief introduction, there are two ways of
using TAPI. In Assisted TAPI, a registered call recipient program handles
all the fiddly TAPI bits, allowing you to dial a number from another
program with a single line of code, tapiRequestMakeCall(xxxxxxx) (see this
example from Microsoft, doing this in Access 95). The raw TAPI equivalent
would involve :
lineInitialize(), lineOpen(), lineMakeCall(), lineDrop(),
lineDeallocateCall(), lineClose() and lineShutdown()
In general, an incoming call will make the TSP generate
a LINE_CALLINFO message, then lineGetCallInfo() will lead you to the Caller
ID fields. I've saved some sample Caller ID code
(and another sample) that were posted on the
TAPI newsgroup. I suggest you read the Microsoft introduction mentioned
above, their TAPI
overview, maybe track down the old MSJ article "TAP Into The Future"
(which has gone?) and try the CTapiConnection
tutorial. Then work through the TAPIComm sample that comes with the TAPI
SDK. The SDK is 'free' to subscribers
to MSDN Professional.
You will need to use CAPI
(Common ISDN API) to talk to ISDN hardware - see the ISDN section and my
page for more details.
Once you have your program up and running, you may want
to make screen shots, using dummy numbers. Oftel
have issued a list
of 'official' UK dummy numbers, or you can just use any that
are marked as "Unusable" in their list of area codes such as 0151
692 xxxx, 0151 269 xxxx and 0151 359 xxxx or almost any 01xxx 999 xxx.
In the US, all (xxx) 555-01xx numbers are reserved for fictional use. In
the past, people have used anything in the 555-xxxx range, but most of
these have now been
allocated (555Kb!!) for future services. http://www.nanpa.com/number_resource_info/555_numbers.html
has more on this. You should also be safe using the 311 area code.
Here are some more links that might prove useful, although
they tend to be USA-oriented :
ID software Telephony
The entire AOH site is optimized to look best in Firefox® 3 on a widescreen monitor (1440x900 or better).
Site design & layout copyright © 1986-2014 AOH
We do not send spam. If you have received spam bearing an artofhacking.com email address, please forward it with full headers to firstname.lastname@example.org.