javascript

Как и зачем скрывать телефонные номера

  • вторник, 25 июля 2017 г. в 03:12:14
https://habrahabr.ru/company/Voximplant/blog/333972/
  • Разработка мобильных приложений
  • Разработка веб-сайтов
  • Программирование
  • JavaScript
  • Блог компании Voximplant



Мало известный за пределами телеком-тусовки факт: когда вы звоните куда-нибудь со своего телефона, ваш номер, который отображается для входящего звонка – это просто произвольная текстовая строка, которую подставил ваш оператор сотовой связи. И если между двумя устройствами есть что-нибудь интересное, к примеру, машина с Asterisk или облако с Voximplant, то эту строку можно поменять на любую другую. Ситуация, когда при звонке вместо номера звонящего человека «рисуется» совсем другой номер называется маскировка телеком-данных (Phone Number Masking). И этот прием широко используется для решения ряда интересных задач. Читайте о них под катом.

Такси и другие Uber-like решения


Давать водителю настоящий номер клиента – не самая лучшая идея. Потом водитель может позвонить не по делу, – вот это всё. Подмена номера работает так: как только водитель принял заказ, это становится известно backend'у сервиса такси. И если водителю нужно позвонить клиенту, то вместо этого он звонит на специальный сервисный номер. Звонок приходит в облако Voximplant, где из JavaScript делается HTTP-запрос к backend и получает информацию о заказе. После чего облако звонит клиенту, и, как только он берет трубку, соединяет его со входящим звонком от водителя. Если вам интересны подробности, почитайте, как это реализовано у Wheely.

Такой способ позволяет водителю и клиенту не знать номера друг друга: все звонки идут через облако. В исходящем звонке до клиента Caller ID устанавливается в номер контакт-центра. Благодаря этому, если клиент после поездки позвонит на “номер водителя”, его встретит голосовое меню и предложит связаться либо с водителем, либо с оператором контакт-центра. И если водитель не работает, то клиенту можно предложить что сервис сам ему перезвонит когда водитель выйдет на работу. Также все разговоры можно записать, запись распознать – для более быстрого контроля качества. Все эти функции можно реализовать в несколько строчек JavaScript-кода: