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

smartGeo в Code

Обновлено 22 апреля 2024

Сервис для получения данных о местоположении пользователей с их согласия.

Перед использованием сервиса, ознакомьтесь с условиями подключения сервиса SmartGeo. С принципом работы, типами сообщений и кодами ошибок можно ознакомиться в разделе API SmartGeo.

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

Методы

getProfileData

Возвращает данные из профиля пользователя.

Пример вызова:

script: $smartProfile.getProfileData();

Пример ответа

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

При успешном выполнении методов возвращается сообщение TAKE_PROFILE_DATA.

messageId
string

Идентификатор сообщения

sessionId
string

Идентификатор сессии

object
messageName
string

Название сообщения

Value: "TAKE_PROFILE_DATA"
object

Тело сообщения

{
  • "messageId": 1605196199186625000,
  • "sessionId": "0062530b-5521-42cc-90b0-a9d65dea4e98",
  • "uuid": {
    },
  • "messageName": "TAKE_PROFILE_DATA",
  • "payload": {
    }
}

После получения сообщения TAKE_PROFILE_DATA необходимо его обработать с помощью тега event:. Затем данные о местоположении сохранятся в поле {{data.eventData.profile_data.geo }} системной переменной {{$request }}.

Теперь можно вывести, например, страну местонахождения пользователя:

state:
event!: TAKE_PROFILE_DATA
a: Вы находитесь в:
{{$request.data.eventData.profile_data.geo.reverseGeocoding.country}}

Также необходимую информацию можно получить с помощью выражения:

$request.rawRequest.payload.profile_data.geo.reverseGeocoding.country

Оно выведет данные напрямую из поля rawRequest.payload.profile_data.geo системной переменной $request. Значительной разницы между вариантами доступа к данным нет.

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