Перейти к основному содержимому

Прочие каналы

Каналы вне образа Veriqa: адаптеры из репозитория и собственный канал по HTTP.

Базовые claims есть у каждого канала: channel_type channel_user_id name

В карточке канала — что он добавляет сверх базовых.

— номер телефона: приходит, только если приложение его запросило, и каждый канал возвращает его по-своему. Подробнее о номере телефона

Адаптеры в репозитории

Адаптеры вне ядра, каждый подключается одним из двух способов: как .NET-сборка, скомпилированная в хост со встроенной Veriqa, или как HTTP-сервис, подключаемый конфигурацией без компиляции.

VK

Claims сверх базовых
  • given_name
  • family_name
  • preferred_username
  • picture
  • locale
Подключение
Сборка .NET или HTTP-сервис

Если ссылка не донесла код входа до бота, экран показывает код, который пользователь отправляет в чат.

Бот сообщества VK: его сообщения видны и на vk.com, и в приложении VK, и в «VK Мессенджере».

WhatsApp через Baileys на Node

Claims сверх базовых
Подтверждение в канале
Да — опрос с двумя вариантами
Подключение
HTTP-сервис

Привязывает номер как связанное устройство, как WhatsApp Web, — без бизнес-аккаунта Meta и без провайдера. Для отладки и небольших команд: клиент неофициальный, и WhatsApp может заблокировать номер.

Slack

Claims сверх базовых Нет — только базовые
Секретное сообщение
Есть — вводится вручную
Подключение
.NET-сборка

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

Discord

Claims сверх базовых
  • preferred_username
  • picture
  • locale
Секретное сообщение
Есть — вводится вручную
Подключение
.NET-сборка

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

WhatsApp через Twilio на Node

Claims сверх базовых
Подтверждение в канале
Да — две кнопки быстрого ответа
Подключение
HTTP-сервис

Референсный адаптер: он же сообщает Veriqa, когда WhatsApp не доставляет запрос вне 24-часового окна обслуживания.

Zalo

Claims сверх базовых Нет — только базовые
Секретное сообщение
Есть — вводится вручную
Подключение
.NET-сборка

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

KakaoTalk

Claims сверх базовых
  • locale
Подтверждение в канале
Да — две кнопки быстрого ответа
Секретное сообщение
Есть — вводится вручную
Подключение
.NET-сборка

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

HTTP-канал

Доступно

Канал, которого нет в поставке Veriqa, подключается внешним сервисом на любом языке: Veriqa общается с ним по HTTP, ключи платформы остаются у вашего сервиса, а компилировать ничего не нужно — сервис подключается конфигурацией. Основные сценарии: корпоративный мессенджер или собственный бот, региональная платформа и бот, который у вас уже работает, — его можно встроить в поток Veriqa без публикации нового.

Как написать адаптер

Термины

В карточках каналов указано, нужно ли секретное сообщение, есть ли подтверждение в канале и как приходит номер телефона. Вот что это значит.

Секретное сообщение

Сообщение с кодом входа, которое пользователь сам отправляет в канал после перехода по ссылке или сканирования QR-кода. Veriqa заполняет его, мессенджер показывает готовым, пользователю остаётся нажать «Отправить». Нужно не каждому каналу.

Telegram, MAX
Не нужно — мессенджер сам открывает бота и передаёт ему код.
WhatsApp
Нужно для большей безопасности — готовое сообщение уходит одним касанием.
Почта
То же с заполненным письмом — письмо в одно касание.

Подтверждение в канале

Бот спрашивает прямо в чате, пропустить ли вход — в какое приложение и с какого устройства, — с кнопками «Подтвердить» и «Отклонить». Можно включить автоматический режим, тогда вход проходит без дополнительного запроса.

MAX, Telegram
Вопрос приходит сразу, как только пользователь открыл ссылку.
WhatsApp
Вопрос приходит в ответ на секретное сообщение.
Почта
В канале вопроса нет — по желанию он задаётся на странице в браузере.

Номер телефона

Veriqa берёт номер только из канала — его передаёт мессенджер, пользователь ничего не вводит. Номер приходит, когда приложение запрашивает scope phone, и каждый канал возвращает его по-своему; phone_number_verified показывает, подтверждает ли канал, что номер принадлежит пользователю.

WhatsApp
Проще всего: номер приходит с каждым сообщением, ничего не спрашивается.
Telegram, MAX
Бот спрашивает после подтверждения входа: пользователь делится своим контактом одной кнопкой. В MAX — только в режиме webhook.
Остальные
Кнопка или профиль без подтверждения владельца, только ваша собственная интеграция с платформой или номера нет вовсе.

Секретное сообщение — примеры

WhatsApp: секретное сообщение заполнено Veriqa и готово к отправке
WhatsApp
Email: письмо для входа заполнено Veriqa и готово к отправке
Почта

Подтверждение в канале — примеры

Telegram: бот просит подтвердить вход, кнопки «Подтвердить» и «Отклонить»
Telegram
WhatsApp: пользователь отправил секретное сообщение, бот просит подтвердить вход
WhatsApp