Определение номера и страны абонента?

Когда я звоню по международному номеру, как оператор определяет страну и номер абонента?


Допустим у нас есть номер 1234567890.


Код страны 1 или 12? А может 123? А как определить defCode?
  • Вопрос задан
  • 3192 просмотра
Пригласить эксперта
Ответы на вопрос 4
Shersh
@Shersh
Хм. У вас есть список всех ABC. Если присмотретиесь то не существует таких +1 и +12, так же как и +27 и +271.

Возьмем пример. звонит вам человек с номером +2263182536

вы берете первую цифру после "+", смотрите не существует таких номеров с +2 в принципе, идете дальше, +22 таких тоже не существует, +226 — та дам, это Буркина Фасо.
Ответ написан
Комментировать
Wott
@Wott
международная нумерация открытая, в том смысле что нет строгого деления по количеству цифр, в отличии от национальных.
роутинг номера идет по отдельным цифрам по одной и как только определиться направление ( читай страна ) — соединение уходить на транк.

для определения кода страны надо строить дерево из существующих кодов и на листе будет страна.
Ответ написан
Комментировать
Napseg
@Napseg
О чём то похожем я писал habrahabr.ru/blogs/voip/124211/
Ответ написан
@MikhailEdoshin
Кстати, у Google есть библиотека libphonenumber.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы