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

Получить 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-код, идентичный тому, что можно получить с помощью метода QR.
Данный метод допускает создание только 1-сессии, а метод QR можно вызывать с множества устройств.
Ошибки для данного метода и метода QR идентичны.

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

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

Ответ#

Поля ответа#

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

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

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

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

Поле Тип Описание
type string error - возникла ошибка
message string Описание ошибки
connect closed - соединение с сервером отсуствует
not ready - инстанс не готов к отправке QR-кода
Instance starting - инстанс запускается
socket not open - откройте сокет для получения QR-кода
is in the logout process - На инстансе происходит очистка кеша, дождитесь окончания очистки кеша

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

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

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

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