Настройка клиента VPS
Обновлено 15 января 2024
Для работы чата необходим клиент VPS. Ниже пример создания клиента для передачи в чат:
import { createAssistantClient } from '@salutejs/client';
const client = createAssistantClient({
url: 'wss://nlp2vps.online.sberbank.ru:443/vps/',
userId:
Math.random().toString(36).substring(2, 15) + Math.random().toString(36).substring(2, 15),
getToken: () =>
Promise.resolve(
Math.random().toString(36).substring(2, 15) + Math.random().toString(36).substring(2, 15),
),
userChannel: 'FEBRUARY',
locale: 'ru',
device: {
platformType: 'web',
platformVersion: '1',
surface: 'DEMO_APP',
surfaceVersion: '1',
features: '',
capabilities: '',
deviceId: 'deviceid_rgbohdnn3jr78q03y9duq6',
deviceManufacturer: '',
deviceModel: '',
additionalInfo: '',
},
settings: {
dubbing: 1,
echo: -1,
ttsEngine: '',
asrEngine: '',
asrAutoStop: 1,
authConnector: '',
},
version: 5,
});
Документация пакета @salutejs/client
описана на официальной странице в GitHub.
Ниже перечислены основные параметры и их описание.
url
– стенд. Обязательный параметр.userId
— идентификатор пользователя. Не более 36 символов. Обязательный параметр.getToken
— токен авторизации. Запросить его можно у аккаунт-менеджера. Необязательный параметр.userChannel
— тип площадки. Для тестирования сервисов ASR и TTS можно использовать каналDEMO_ASR_TTS
. Для целевого решения канал нужно запросить у аккаунт-менеджера. Пример: SBOL, B2C и т. д. Обязательный параметр.locale
— региональные настройки пользователя, чтобы транслировать понятные тексты ошибок вstatus.description
. Необязательный параметр.device
— настройки устройства. Содержит следующие параметры:platformType
— тип платформы. Пример:ANDROID
. Необязательный параметр.platformVersion
— версия платформы. Пример:8.0
. Необязательный параметр.surface
— поверхность. Узнать ее можно у аккаунт-менеджера. Пример:SBERBOX
. Обязательный параметр.surfaceVersion
— версия приложения. Пример: 10.13.0. Необязательный параметр.features
— описание функциональности устройства в формате JSON. Пример:{"appTypes":["DIALOG", "WEB_APP"]}
. Необязательный параметр.capabilities
— возможности устройства в формате JSON (признак наличия экрана, микрофона, динамиков). Пример:{"screen": {"available": True}, "speak": {"available": True}, "micro": {"available": True}}
. Необязательный параметр.deviceId
— идентификатор устройства — например, его серийный номер. Необязательный параметр.deviceManufacturer
— производитель устройства. Пример:SAMSUNG
. Необязательный параметр.deviceModel
— модель устройства. Пример:SM-N9700
. Необязательный параметр.additionalInfo
— дополнительная информация об устройстве в формате JSON, которая будет добавлена в блокadditionalInfo > device
. Необязательный параметр.
settings
– общие настройки.dubbing
— определяет необходимость отправки в NLP-движок. Может принимать значения:-1 = false
– ответ будет передан только в текстовом виде;0 = undefined
; *1 = true
— ответ будет передан в виде текста и звука. Значение по умолчанию —true
. Необязательный параметр.echo
— определяет необходимость озвучивания ответа. Может принимать значения:-1 = false
— сообщения будут отправляться;0 = undefined
; *1 = true
— все сообщения в рамках сессии не будут отправляться в NLP, включен эхо-режим. Значение по умолчанию —true
. Необязательный параметр.ttsEngine
— алиас TTS-движка. Голос синтеза. Значения: Che_HQ: диктор Чернобровина (персонаж Афина); Che*LQ: диктор Чернобровина (персонаж Афина) с битрейтом 8 кГц;- She*HQ: диктор Щебланов (персонаж Сбер);
- Erm_HQ: диктор Ермилова (персонаж Джой). Необязательный параметр.
asrEngine
— алиас ASR-движка. Модель распознавания. Значения:general_asr
— используется в ассистенте «Сбербанк Онлайн», это модель общего назначения. Используется битрейт 16/24 кГц.ivr_asr
— модель используется в телефонии, например, в голосовом меню на номере 900. Это модель специально разработана для использования в телефонии. Используется битрейт 8 кГц. Вы можете сменить модель распознавания прямо во время сессии, отправив наименование другой модели в параметреasr_engine
. Необязательный параметр.asrAutoStop
— параметр выбора стороны, которая определяет окончание фразы в голосовом сообщении. Значения: 1 — конец фразы определяется сервисом ASR; -1 — конец фразы определяется клиентом через параметрlast=1
. Необязательный параметр.authConnector
— алиас коннектора для аутентификации. Должен совпадать с ключом в настройкахauth:auth-config:КЛЮЧ
. Необязательный параметр.
version
— версия контракта. Равна 5. Обязательный параметр.
Обновление токена
Процесс обновления токена в случае его устаревания описан на странице Обновление токена.