API речи Bing не передает длинный текст в чат-бот
Я создал бота для веб-чата с использованием службы Microsoft QnA Maker и бота Azure Web App, размещенного на Azure. Я включил веб-чат и каналы прямой линии в Azure для своего бота. Работает нормально. Сейчас я пытаюсь интегрировать Bing Speech API для распознавания речи. Ниже приведен код
Библиотеки:
<script src="https://cdn.botframework.com/botframework-webchat/latest/botchat.js"></script>
<script src="https://cdn.botframework.com/botframework-webchat/latest/CognitiveServices.js"></script>
Создание бота для веб-приложений на JavaScript:
const speechOptions = {
speechRecognizer: new CognitiveServices.SpeechRecognizer({ subscriptionKey: <key> }),
speechSynthesizer: new CognitiveServices.SpeechSynthesizer({
gender: CognitiveServices.SynthesisGender.Female,
subscriptionKey: <key>,
voiceName: 'Microsoft Server Speech Text to Speech Voice (en-US, JessaRUS)'
})
};
BotChat.App({
bot: bot,
locale: params['locale'],
resize: 'detect',
// sendTyping: true, // defaults to false. set to true to send 'typing' activities to bot (and other users) when user is typing
speechOptions: speechOptions,
user: user,
directLine: {
domain: params['domain'],
secret: params['s'],
token: params['t'],
webSocket: params['webSocket'] && params['webSocket'] === 'true' // defaults to true
}
}, document.getElementById('chatBot'));
Когда я запускаю это в Chrome или Edge, я могу нажать на микрофон и что-то сказать, и я получаю ответ (основанный на сопоставлении клавиш-ответов в QnA maker) как текстовый, так и голосовой. Проблема в том, что если ответ слишком длинный (например, 600 символов), я получаю только текст в качестве ответа, но не голос.
Любая помощь в этом? Пожалуйста, дайте мне знать, если я могу предоставить более подробную информацию.