Найти оператора по номеру телефона, заглянув в план нумерации
Главный российский документ, согласно которому операторы получают телефонные номера, — это план нумерации Россвязи. В нем ясно прописали все расклады: какие коды и номера каким операторам в каких регионах принадлежат. Что приятно, справочник Россвязи свободно лежит на странице rossvyaz.ru/deyatelnost/resurs-numeracii/vypiska-iz-reestra-sistemy-i-plana-numeracii.Справочник выложили сразу в двух форматах, что очень мило со стороны Россвязи. Обновляют раз в месяц Внутри плана нумерации четыре файла: три для стационарных номеров и один — для мобильных. Разница между содержимым файлов заметна, если посмотреть на префиксы в названиях:
- «ABC-» означает, что в файле лежат стационарные номера. Собственно, «ABC» — обозначение зон нумерации, определенных по географическому принципу;
- «DEF-» — это файл с мобильными номерами. Префикс означает зоны нумерации, определенные не географически.
Уже здесь ясно: справочник подскажет не только оператора, но и тип телефона:
- у стационарных код начинается с 3, 4 или 8;
- у мобильных — с 9.
Есть еще прямые мобильные — внешне их не отличить от стационарных. Знаю только один способ раскрыть прямой мобильный: найти его оператора и сравнить со списком мобильных операторов России. Но даже так без гарантии, потому что некоторые операторы мобильной связи в то же время — и операторы фиксированной.
Номер +7 495 999-99-34 может быть прямым мобильным. А может быть, это офис покупает у сотового оператора фиксированную связь — знает только сам оператор.
Но я отвлекся, вернемся к плану нумерации. Внутри файлов все очень просто — таблица на шесть полей.Порядок полей таков: ABC- или DEF-код зоны, начало диапазона, конец диапазона, емкость, оператор, регион. Емкость — просто количество номеров, входящих в диапазон Искать по плану нумерации регион и оператора — одно удовольствие.
- Вытаскиваем код зоны нумерации из нужного номера.
- По коду выбираем из справочника подходящие диапазоны.
- Оставляем от телефона только то, что следует после кода зоны — собственно номер.
- Ищем, в какой диапазон попадает номер.
- Успех! Мы нашли для телефона регион, оператора и тип.
Номер +7 301 220-22-47 принадлежит ООО «Мобилон Телекоммуникации». Регион — Республика Бурятия Порой телефон не укладывается ни в один диапазон. Это значит, что номер неправильный. Исключений нет. На этом, надо сказать, прокалывается упомянутая библиотека Google — она одобряет внешне верный телефон, не сопоставляя с планом нумерации. Раньше на этом шаге изыскания заканчивались. Но в 2013 году власти приняли закон об отмене «мобильного рабства». С тех пор номера телефонов прибиты к операторам не так уж крепко. Теперь закон разрешает: меняйте оператора, сохранив номер. Но, внимание, только внутри региона. Нельзя вытащить телефон из региона, предусмотренного Россвязью. Как нельзя и «сломать» диапазоны распределения номеров. Поэтому, если интересен лишь регион телефонного номера, дальше можно не читать. А я продолжу и расскажу, как найти сменившие операторов номера.