Всего за десять минут вы можете научить свою таблицу новым трюкам, даже если никогда не писали ни строчки кода. Мы будем использовать Google Таблицы и API проверки номеров телефонов Twilio, чтобы легко проверять, очищать и форматировать телефонные номера.
API проверки Twilio можно использовать для:
— Определения, является ли номер мобильным или стационарным.
— Проверки, настоящий номер или поддельный.
— Исправления неправильно отформатированных номеров телефонов.
— Корректного форматирования списка телефонных номеров.
Если у вас нет аккаунта Twilio, зарегистрируйтесь здесь. Бесплатная пробная учетная запись дает вам $20 кредита Twilio для экспериментов. При стоимости $0.005 за проверку вы можете проверить 4000 номеров, прежде чем обновить аккаунт.
После регистрации перейдите в панель управления и нажмите *Показать учетные данные API*. Сохраните свои данные под рукой — скоро мы вставим их в код.
Зайдите в Google Диск и создайте новую таблицу. Создайте заголовки столбцов для:
**Номер телефона** — этот столбец вы заполняете.
**Статус** — настоящий ли номер (найден) или поддельный (не найден)?
**Тип телефона** — это мобильный номер? Может ли он принимать SMS? (Если это интересно, ознакомьтесь с этим руководством по отправке SMS через Google Таблицы).
**Оператор** — какой мобильный или стационарный оператор обслуживает этот номер?
**Код страны** — это международный номер? Если да, то из какой страны?
**Национальный формат** — как правильно отформатировать этот номер телефона?
Выделите все ячейки в таблице и отформатируйте их как «Обычный текст».
Добавьте несколько номеров телефонов, которые хотите проверить. Вы можете вводить номера практически в любом формате. Одна из мощных функций API проверки — очистка списка неправильно отформатированных номеров.
В верхнем меню нажмите *Инструменты -> Редактор скриптов*, чтобы открыть редактор кода.
В оставшейся части статьи мы пройдемся по коду для проверки и валидации номеров телефонов. Если вы из тех, кто любит заглядывать в конец детективного романа, можете сразу скопировать этот код для финального продукта (обратите внимание на заполнители для ACCOUNTSID и AUTHTOKEN из вашей панели управления):
Если хотите узнать, как мы пришли к такому результату, продолжайте читать.
Мы напишем этот код в два этапа:
— Напишем функцию lookup для проверки одного номера телефона.
— Напишем функцию lookupAll для проверки всех номеров телефонов в таблице.
Замените две строки кода в вашем скрипте на:
Замените 3123131434 на свой номер мобильного телефона.
Задача функции lookup — отправить HTTP-запрос POST в API проверки номеров Twilio. Вам не обязательно знать, что это значит, чтобы завершить это руководство, но можно представить это как отправку формы «Проверить номер телефона» с одним полем «Номер телефона».
Весь код на этом этапе помещается внутри функции lookup. Определите URL для API проверки номеров телефонов.
Создайте объект параметров, чтобы указать Apps Script, что это GET-запрос:
Наконец, выполните HTTP-запрос и запишите результат:
Сохраните файл и запустите скрипт. При первом запуске вам будет предложено авторизовать приложение. Нажмите *Вид -> Журналы*, чтобы увидеть данные из запроса.
Жестко закодировать номера телефонов в скрипте не очень практично. Давайте добавим функцию для чтения номеров из таблицы, передачи этих данных в lookup и обновления таблицы с полученными результатами.
Замените myFunction на:
Сразу над myFunction (и под lookup) создайте функцию lookupAll. Остальной код помещается здесь.
Получите данные из вашей таблицы:
Затем мы:
— перебираем данные;
— если ячейка не пустая, пытаемся проверить номер телефона;
— если номер не существует, обновляем столбец «Статус проверки» значением «не найден»;
— если номер существует, обновляем остальные столбцы данными, полученными из API проверки;
— если возникает ошибка, записываем её в журнал и обновляем столбец статуса (журналы можно посмотреть в меню Инструменты редактора скриптов).
Запустите приложение снова! Вам нужно будет повторно авторизовать его, так как теперь оно пытается получить доступ к вашей таблице.
Google Таблицы и Apps Script предоставляют удивительно широкий функционал для языка программирования, который не требует установки или настройки. Если это оказалось полезным, возможно, вам будет интересно ознакомиться с нашим руководством по отправке текстовых сообщений из Google Таблиц. С его помощью вы сможете отправить SMS на номер, который только что определили как мобильный.
Если вы хотите узнать больше об API проверки и о том, как отправлять текстовые сообщения, ознакомьтесь с этой документацией:
Если у вас есть вопросы или вы придумали интересные варианты использования проверки номеров телефонов, мне хотелось бы об этом узнать. Свяжитесь со мной по адресу gb@twilio.com или @greggyb.