Связка аккаунтов на разных поверхностях

Связка аккаунтов доступна не на всех поверхностях. На данный момент поддерживаются:
  • Поисковое приложение Яндекса (iOS/Android).

  • Яндекс.Станция.
  • Яндекс.Модуль.
  • Колонки с Алисой (Irbis, DEXP, и др.).
  • Яндекс.Браузер для Windows, iOS и Android.

Перед тем как запускать связку аккаунтов, проверьте, поддерживается ли она на текущей поверхности.

Проверка доступности связки аккаунтов

Проверить доступность связки аккаунтов можно по запросу от Диалогов. Если тело запроса содержит свойство account_linking, поверхность поддерживает связку аккаунтов. Если свойство отсутствует — связка аккаунтов не поддерживается.

{
  "meta": {
    "client_id": "ru.yandex.example-id/1.1 (none none; android 4.4.2)",
    "interfaces": {
      "account_linking": {},
      "payments": {},
      "screen": {}
    },
    "locale": "ru-RU",
    "timezone": "UTC"
  },
  "request": {
    "command": "баланс",
    "nlu": {
      "entities": [],
      "tokens": [
        "баланс"
      ]
    },
    "original_utterance": "баланс",
    "type": "SimpleUtterance"
  },

  "session": {
    "message_id": 1,
    "session_id": "2eac4854-fce721f3-b845abba-20d60",
    "skill_id": "3ad36498-f5rd-4079-a14b-788652932056",
    "user_id": "47C73714B580ED2469056E71081159529FFC676A4E5B059D629A819E857DC2F8",
    "user": {
      "user_id": "6C91DA5198D1758C6A9F63A7C5CDDF09359F683B13A18A151FBF4C8B092BB0C2",
      "access_token": "AgAAAAAB4vpbAAApoR1oaCd5yR6eiXSHqOGT8dT"
    },
    "application": {
      "application_id": "47C73714B580ED2469056E71081159529FFC676A4E5B059D629A819E857DC2F8"
    },
  },
  "version": "1.0"
}

Если связка аккаунтов не поддерживается, навык не должен отвечать командой start_account_linking (командой для запуска связки аккаунтов). Если навык ответит этой командой, ответ будет считаться некорректным — Алиса сообщит пользователю, что навык не отвечает. Обратите внимание, Яндекс.Диалоги фиксируют число некорректных ответов, и при достижении определенного порога навык может быть заблокирован.

Если пользователь спросил конфиденциальную информацию, а связка аккаунтов не поддерживается на поверхности, можно ответить сообщением: «Извините, эта поверхность не поддерживает связку аккаунтов.».

Связка аккаунтов на Станции и колонках

На Станции и колонках авторизация происходит следующим образом:
  1. Пользователь произносит команду, для которой требуется авторизация — например, запрашивает баланс.
  2. На телефон пользователя приходит push-уведомление от поискового приложения Яндекса, что необходима авторизация.
  3. При открытии push-уведомления на телефоне, пользователь будет перенаправлен на страницу авторизации. Подробнее о процессе авторизации в поисковом приложении.
  4. После того как пользователь авторизовался через поисковое приложение, Алиса сообщит в Станции баланс пользователя.