Перейти к содержанию

Получить QR-код через websocket#

Наравне с получением QR-кода методом QR существует возможность получить QR-код через websocket-соединение. Таймаут ожидания сканирования QR-кода составляет 100 секунд. За это время QR-код должен быть отсканирован. Для получения QR-кода инстанс должен быть в неавторизованном состоянии. Если инстанс авторизован, то предварительно требуется разлогинить инстанс методом Logout.

После успешного сканирования QR-кода и авторизации инстанса формируется входящее уведомление с видом Статус инстанса.

Для получения QR-кода требуется установить websocket-соединение по адресу:

WSS:
{{apiUrl}}/waInstance{{idInstance}}/scanqrcode/{{apiTokenInstance}}

Для получения параметров websocket-соединения apiUrl, idInstance и apiTokenInstance обратитесь к разделу Перед началом работы.

Пример получения QR-кода через websocket#

Пример получения QR-кода через websocket можно посмотреть в файле websocketExampleQRcode

Ответ#

Поля ответа#

Поле Тип Описание
type string Тип сообщения, возможные значения qrCode, error, accountData, alreadyLogged, timeoutExpired
message string Содержание сообщения. Принимает различные значения в зависимости от значения поля type

Получено изображение QR-кода#

Поле Тип Описание
type string qrCode - получено изображение QR-кода
message string Изображение QR-кода в кодировке base64. Для вывода в браузере нужно добавить строку data:image/png;base64, {message}

Возникла ошибка#

Поле Тип Описание
type string error - возникла ошибка
message string Описание ошибки

Инстанс уже авторизован#

Поле Тип Описание
type string alreadyLogged - инстанс уже авторизован. Для получения QR-кода требуется предварительно разлогинить инстанс методом Logout
message string Принимает значение instance account already authorized

Истек таймаут ожидания сканирования QR-кода#

Поле Тип Описание
type string timeoutExpired - истекло время, в течение которого QR-код должен быть отсканирован. Таймаут ожидания сканирования QR-кода составляет 100 секунд.
message string Принимает значение timeoutExpired