API для определения оператора сотовой связи?[закрыто]

StackOverflow https://stackoverflow.com/questions/322440

  •  11-07-2019
  •  | 
  •  

Вопрос

Существует ли бесплатный API или какой-либо другой способ определить, у какого оператора связи зарегистрирован номер мобильного телефона?

Я бы хотел, чтобы мое приложение транслировало текстовые сообщения без того, чтобы они выбирали своего оператора из списка.

Обновить: Интересно, что коллега нашел ответ: http://developer.whitepages.com/

ОБНОВЛЕНИЕ 2: Ну, лицензионное соглашение whitepages настолько ограничено, что вы не можете создать приложение для него.Есть еще какие-нибудь идеи?

ОБНОВЛЕНИЕ 3:
В какой-то момент кто-то удалил мое обновление 2.Это ставит все на место.Что еще более важно, по состоянию на 19.10.2015 г. Условия обслуживания все еще находится в таком состоянии, что легально пользоваться их услугами должно быть невозможно.

Это было полезно?

Решение

Следует отметить, что способ определения того, какому оператору связи принадлежит номер, зависит от конкретной страны (хотя некоторые страны могут использовать одну и ту же схему, но я не уверен - я работал как с норвежской, так и со шведской базами данных переносимости, а они имеют совершенно другой API-интерфейс - и требуют vpn + аутентификации).

Информация, по крайней мере здесь, недоступна для широкой публики - я видел поставщиков услуг, сетевых операторов и поставщиков информации (как в yellow pages), у которых есть доступ.

Но otoh, разве надлежащий сервис sms-шлюза не сделал бы это за вас?

Другие советы

Data24-7 предлагает API для поиска оператора мобильной связи по номерам беспроводных телефонов.Он также возвращает адреса электронной почты для отправки SMS- и MMS-сообщений на телефон.Это не бесплатно, это 12 долларов в месяц и 0,006 доллара за поиск.

Ссылка такова: http://www.data24-7.com

Я знаю, что этому вопросу уже 5 лет, но для тех, кто все еще что-то ищет, PacificEast (на которого я работаю) предлагает Добавление идентификатора строки сервис для номеров в США и Канаде, который обеспечивает переносимость местных номеров.Сервис доступен как SOAP API или как пакетный сервис (вы отправляете PacificEast свой файл, они обрабатывают его и отправляют обратно).Помимо оператора, сервис также определит тип линии (беспроводная, стационарная и т.д.), был ли номер перенесен или нет, и некоторую географическую информацию.

Нойстар это был бы ваш лучший выбор, они обрабатывают поиск, переносимость номеров, список "Не звонить" и т.д...Сервис не бесплатный, но они самые надежные в бизнесе.Другим вариантом может быть Твилио

Если вы ищете то, что я искал (способ легко отправлять электронную почту -> SMS people для программы), я считаю, что лучшим будет отправить номер телефона электронной почты @sms-gateway каждому оператору связи в стране.При этом номер будет работать только с одним оператором, у которого он активен в данный момент.Остальные электронные письма будут возвращены.Если вы попытаетесь посмотреть это, то теперь вы полагаетесь на то, насколько актуальна их база данных.

Ваша самая большая проблема заключается в том, что теперь люди могут забрать свои номера с собой.Таким образом, хотя в прошлом операторы сотовой связи имели блоки телефонных номеров и, вероятно, до сих пор имеют, надежного способа привязать конкретный номер сотовой связи к определенному оператору не существует.

Вы можете попробовать создать screenscrape с такого веб-сайта, как http://www.fonefinder.net это делает 'whois' для номера

Вот пример URL-адреса, который нужно очистить.(Я проверил, что это действительно sprint, так что это правильно)

http://www.fonefinder.net/findome.php?npa=817&nxx=683&thoublock=2926

Недавно я написал один на Ruby, который взаимодействует с вышеупомянутым FoneFinder.net

https://rubygems.org/gems/FoneFinder --> Страница драгоценного камня Ruby
https://github.com/evinugur/FoneFinder.rb/ --> Исходный код на Github

Вы можете использовать его, чтобы получить несколько полей данных, относящихся к номеру мобильного телефона, но чтобы определить оператора, сделайте это.

require 'FoneFinder'
myPhoneNumber = FoneFinder.new("123-456-7890")
puts myPhoneNumber.carrier
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top