ym88659208ym87991671
Блок SmartProfile/SmartGeo | Документация для разработчиков

Блок SmartProfile/SmartGeo

Обновлено 13 декабря 2023

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

Перед использованием блока, ознакомьтесь с условиями подключения сервисов SmartProfile и SmartGeo. Блок недоступен в проектах SaluteBot.

Запросить данные пользователя можно на любом этапе сценария. Пример запроса данных пользователя можно посмотреть в демонстрационном приложении.

Проверить работу блока в тестовом виджете нельзя.

Блок содержит раскрывающийся список методов получения данных:

  • Получение данных о пользователе, геоданные (SmartProfile, SmartGeo) — возвращает данные из профиля пользователя: ФИО, адрес, телефон, адрес электронной почты и дату рождения.
  • Изменение данных о доставке — предлагает пользователю изменить адрес доставки, телефон и адрес электронной почты.
  • Уточнение данных адреса — предлагает пользователю уточнить данные адреса. Например указать подъезд или этаж.

В результате работы метода возможны варианты сценария:

  • Данные получены — успешное выполнение метода. После этого можно перейти к подтверждению заказа и поблагодарить пользователя.
  • Не удалось получить данные — ошибка выполнения метода. Нужно сообщить пользователю об ошибке и запросить данные позднее.
  • Отклонено пользователем — пользователь отказался предоставить данные.

Использование данных

Данные, полученные с помощью блока SmartProfile/SmartGeo, сохраняются в системную переменную $session.profileData в поле profile_data.

Примеры данных, которые сохраняются в поле profile_data, можно посмотреть в документации сервисов SmartProfile и SmartGeo. В $session.profileData.profile_data будут сохраняться только те данные, к которым вы получили доступ при подключении этих сервисов.

Из SmartProfile могут приходить следующие переменные с конкретными данными пользователя:

$session.profileData.profile_data.customer_name // Имя
$session.profileData.profile_data.surname // Фамилия
$session.profileData.profile_data.patronymic // Отчество
$session.profileData.profile_data.birthDate // Дата рождения
$session.profileData.profile_data.phone_number // Номер телефона
$session.profileData.profile_data.email // Электронная почта
$session.profileData.profile_data.address // Полный адрес
$session.profileData.profile_data.address.city // Название города

К переменной можно обратиться с помощью кода в блоке JS-код или использовать ее как любую другую переменную.

Из SmartGeo могут приходить следующие переменные с конкретными данными пользователя:

$session.profileData.profile_data.geo.location // Координаты устройства
$session.profileData.profile_data.geo.reverseGeocoding // Декодированные данные о положении устройства
$session.profileData.profile_data.geo.reverseGeocoding.city // Город местоположения устройства

Смартап может получить доступ к данным SmartGeo, только если пользователь дал разрешение на доступ к своим геоданным.

Вы можете самостоятельно прописать адрес переменной с нужными данными клиента, используя шаблоны ниже и информацию со страниц про API SmartProfile и API SmartGeo.

Шаблон для получения данных из SmartProfile:

$session.profileData.profile_data.{название_поля}

Если поле с необходимыми данными находится внутри другого поля, то их нужно прописывать через точку. Например, в этой переменной будут находиться все данные о текущем местоположении устройства: $session.profileData.profile_data.geo.reverseGeocoding. А в этой переменной будет находиться конкретно название страны местоположения устройства $session.profileData.profile_data.geo.reverseGeocoding.country.

ПАО Сбербанк использует cookie для персонализации сервисов и удобства пользователей.
Вы можете запретить сохранение cookie в настройках своего браузера.