Crossposted from https://lemmy.blahaj.zone/post/48779421
I’m writing a program that can find info about a phone number. One problem appears to be that Google’s phone number library doesn’t provide enough info. For instance, take this number: +1 (613) 745-1576. My iPhone correctly says “Ottawa, Ontario, Canada”, while Google’s library doesn’t return the city? How does my iPhone pick this up but not Google’s own library? Is this provided by cell carriers? Is it something with the 745 block? If so, where can I find this info?


The first 3 digits, i.e. the ones between the parentheses in your example, is called the area code.
Area codes in North America were divvied up by US and Canada, and they share the same phone number structure.
Older area codes tend to have a “1” or “0” in the middle, but that convention went away, as devices like fax machines(!) and mobile phones proliferated, and more numbers were needed to handle the load.
The various telephone companies coordinate through the North American Numbering Plan (NANP)
A list of area codes and where they’re supposed to be assigned to: https://en.wikipedia.org/wiki/List_of_North_American_Numbering_Plan_area_codes
I say “supposed” because you can take a mobile phone number anywhere these days.
The 2nd 3 digits, e.g. “745” in your example, traditionally meant a certain area within the area code. So for example, phone numbers in the 613 area code having 2nd 3 digits of “743”, “744” and “745” would typically be to addresses near each other.
That might designate a specific city, or a group of towns.
Once again, mobile phones have taken some of that meaning away as landlines are disappearing.
Fun fact: the three-digit set after the area code is called the “exchnage” code and the final, four-digit set is called the “transfer” code or subscriber code.
I understood that, just how does my iPhone specifically find “Ottawa” specifically when 613 only identifies Eastern Ontario?
There are some charts that list prefixes by area code and what areas they traditionally mean
For example for area code 613 https://wetmore.ca/TelephonePrefixes.pl?A=613
I edited a little onto my original reply about the 2nd 3 digits of a North American phone number.
The second group of three identifies the city (kind of)