← К списку статей

Авторизация пользователя по номеру телефона

Время чтения ~4 минуты
24.08.2023
35k
Novofon

В этой статье

Современный метод регистрации пользователя по e-mail и паролю становится вчерашним днем. Теперь компаниям все чаще нужно верифицировать своего клиента еще и по номеру телефона.

Чаще всего это нужно для того, чтобы идентифицировать личность пользователя. Классическая авторизация по СМС имеет две проблемы - она очень дорогая для компании и обходится хитрыми пользователями с помощью временного виртуального номера.

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

Реализовать это в телефонии Novofon можно с помощью нового метода API. И делается это следующим образом:

В открытом API есть метод request_checknumber.

Его параметры:

  • caller_id — номер, с которого совершается звонок, должен быть номером, подключенным в Novofon;
  • to — номер телефона клиента, которому звонит робот;
  • code — код, который будет воспроизводиться. Набор цифр, который задаете вы и воспроизводит голосовой робот, максимальная длина - 20 символов;
  • lang — язык начитки кода. Доступные варианты: ru-RU (русский), de-DE (немецкий), en-US (английский), es-ES (испанский), fi-FI (финский), fr-FR (французский), it-IT (итальянский), kk-KZ (казахский), nl-NL (голландский), pl-PL (польский), pt-PT (португальский), pt-BR (бразильский-португальский), sv-SE (шведский), tr-TR (турецкий). При отсутствии - ваш язык личного кабинета.

Что потребуется для начала работы?

  1. Первое, что необходимо сделать - зарегистрироваться в Novofon.
  2. Подключить виртуальный номер. Это обязательный пункт - с этого номера будут совершаться звонки на номера ваших пользователей.
  3. Создать ключ авторизации API и начать работу с методом.

Мы рекомендуем вам использовать официальную библиотеку (php, Python, C#). После установки нужно задать в подключаемых файлах ваши ключи API.

Пример на PHP (номер А - ваш виртуальный номер, номер Б - тот на который звоните)

<?php

use Zadarma_API\Api;

require_once __DIR__.DIRECTORY_SEPARATOR.'include.php';

define('USE_SANDBOX', false);

$api = new Api(KEY, SECRET, USE_SANDBOX);

$api->call('/v1/request/checknumber/', [

"caller_id" => "номер А",

"to" => "номер Б",

"code" => "1234567890",

"lang" => "ru"

]);

В случае успеха, вы получите типовой ответ:

{

"status":"success",

"From":номер А,

"To":номер Б,

"lang":"ru",

"time":1612779278

}


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

Читайте также