Truths about telephones

Inspired by a list of falsehoods that programmers believe about telephone numbers, that inspired a list of truths that programmers should know about telephone numbers, here is a list of corrections to falsehoods that people believe about telephones.

The caller does not need to be on the line for a call to be traced.

It's a plot device of numerous television and film dramas going back decades, but it's a falsehood that a call needs to be in progress in order to be traced. Telephone companies keep records; it's how they bill you, for starters. In modern computerized telephony systems, the call routing information for a call is still available after the call has cleared, and can be looked up by the telephone company after a call has cleared, for a period whose length depends from how long the company keeps call routing logs for. It could be hours, or even days.

Call tracing is instant.

It's one or more database lookups. They happen immediately and produce a full result (end-to-end or to a gateway to another carrier); there is no growing list of partial numbers that grows across a screen. The only delays are human ones, getting each carrier (if there are multiple carriers) to trace across its own network.

When you hear the ringing tone, the other end may not even be ringing yet.

The ringing tone does not come from the recipient's end of the call. Ringing is usually a locally generated call progress tone that is generated from the caller's end of the call. In SIP telephony, for example, it is generated by the initiator's user agent when there is a 18x response with no SDP. Sometimes, it is generated by the recipient's network, which will be a 18x response with SDP. But even that may be rather the result of a local back-to-back user agent generating its own tones.

In both cases, this will be ahead of the target telephone actually starting to ring, as the call may still be progressing towards it. An easy test of this is to call a mobile telephone from a mobile telephone on another network, side by side, and see how long it takes from hearing a ringing tone on the calling telephone to the called telephone actually starting to ring. People are often surprised to discover that it can be several seconds.

Note that not every network generates remote call progress tones, i.e. a 18x response with SDP in SIP terms. Some rely upon the aforementioned local call progress tone generation. Some will send so-called "early media" (audio before the call has connected, used for call progress tones and messages) but there will be no sound in the media. These latter are particularly annoying, but some countries' mobile networks do exactly this.

It should go without saying that the ringing cadence of a locally generated tone has no bearing at all on the cadence that the recipient actually hears. You cannot "count the number of rings" and then hang up, and be guaranteed that the recipient has heard that number, or even heard a ring at all. A ringing tone is not a ring tone.

The callee can sometimes clear a call.

With old loop disconnect signalling, it used to be the case that only the caller can clear a call, which was a common trick used by scam artists. But this is now only sometimes still the case. With modern signalling, especially SIP telephony, the recipient can just as easily clear a call, as a BYE can quite easily come from the recipient.

Caller ID is spoofable and does not necessarily work across networks and across countries.

Some networks, and some countries' telephone networks, are notoriously bad at providing calling number information, or preserving it in transit.

TPC does not track mobile telephones through a "GPS chip".

This is more television/film drama-inspired drivel. TPC knows where a mobile telephone is because it knows which cellular transceiver station it is talking to. And it knows where its cell stations are.

TPC needs to know the correct physical location of your non-mobile telephone.

There are rules imposed upon telephone companies by emergency services, which mandate that correct subscriber location information be available for non-mobile telephones. There are stringent disciplinary procedures for telephone companies that do not obey these rules, and lord help them if they route an emergency call where the subscriber's location is not in the emergency services' database.

Callees can reject calls that appear to have been connected.

On mobile telephones this is most apparent, as (on some brands) it is the difference between a "reject" menu option and the "hang up" button. But it is also true of, for example, SIP telephony. One can reject a call by outright refusing an INVITE, to use SIP terminology. But on some kinds of telephone using the "hang up" button accepts the incoming call and then immediately hangs up.

Telephony systems sometimes have special billing and reporting rules for 0 second calls, because of this very thing. A 0 second call could have been "hang up" rejected, connected as far as the computer systems were concerned, but not connected as far as any participating humans were concerned.

FAX over G.729 is just dumb.

The compression used by G.729 is tuned for human vocal sounds, and modelled on humans. It does not handle FAX tones very well at all, and G.729 will seriously distort FAX transmission. (It distorts music, too.) Of course, if you have a telephone that does G.729 in the first place, you more likely than not have a packet-switched network capable of the sort of network protocols that can send textual messages and files without encoding them as FAX and then using a G.729 codec on that.

DTMF is not universally supported and not necessarily in-band or out-of-band.

In some telephony protocols, DTMF is out of band, transmitted on signalling channels rather than with the audio and not even synchronous to audio. In others, it is in-band in the audio.

In any case, some gateways between protocols attempt to strip in-band DTMF and turn it into out-of-band DTMF. And others do not pass along out-of-band DTMF. Sometimes this is a technological limitation, and other times it is simply a carrier not supporting this for mysterious reasons of its own.


© Copyright 2019,2020 Jonathan de Boyne Pollard. "Moral" rights asserted.
Permission is hereby granted to copy and to distribute this web page in its original, unmodified form as long as its last modification datestamp is preserved.