Интеграция бота с проблемой службы речи Azure - PullRequest
0 голосов
/ 26 января 2019

Speech Service исключение при попытке использовать службы Azure Speech на боте через браузер

Получение следующего исключения при запуске распознавания голоса на моем боте с использованием IE, Chrome и Firefox: SCRIPT12008: SCRIPT12008: Ошибка WebSocket: неправильный ответ HTTP. Код состояния 401, не авторизован Бот работает нормально для печатных сообщений, но не работает, когда пользователь нажимает на значок микрофона. Я использую Directline для общения с ботом. Можете ли вы посоветовать? Спасибо заранее

<!DOCTYPE html>
<html>
  <head>
      <meta charset="utf-8">
    <link href="https://cdn.botframework.com/botframework-webchat/latest/botchat.css" rel="stylesheet" />
    <link href="chat-assets/css/botchat-override.css" rel="stylesheet" />
      <style> 
          html,body{height: 100%}
      </style>
  </head>
  <body style="background-color: #fff; background-image: url('aila-msbot.jpg'); background-repeat: no-repeat; background-position: center center; background-size: 100%; ">

    <div id="bot-holder">   
        <div id="bot-container">
            <div class="bot-header">
                <div class="icon-holder">
                    <div class="icon"></div>
                </div>
                <div class="bot-title">Aila</div>
                <a href="javascript:closeChat()">X</a>
            </div>
            <div id="bot"></div>
        </div>
        <a id="bot-minimize" class="hide" href="javascript:startChat();">
            <div class="comment"></div>
        </a>
    </div>


    <script src="https://cdn.botframework.com/botframework-webchat/latest/botchat.js"></script>
    <script src="https://cdn.botframework.com/botframework-webchat/latest/CognitiveServices.js"></script>
        <script>
            var user = {
                id: 'User',
                name: 'You'
            };
            var botConnection = new BotChat.DirectLine({
                token: 'XXXXXXXXXXXX',
                user: user
            });

var speechOptions = {
    speechRecognizer: new CognitiveServices.SpeechRecognizer( { subscriptionKey: 'XXXXXXXXXXXX'} ),

    speechSynthesizer: new CognitiveServices.SpeechSynthesizer(
        {
            subscriptionKey: 'XXXXXXXXXXXX',
            gender: CognitiveServices.SynthesisGender.Female,
            voiceName: 'Microsoft Server Speech Text to Speech Voice (en-US, JessaRUS)'
        })
};

            BotChat.App({
                user: user,
                botConnection: botConnection,
    speechOptions: speechOptions,
                bot: { id: 'XXXXXXXXXXXX', name: 'Bella' },
                resize: 'detect'
            }, document.getElementById("bot"));
            botConnection
                .postActivity({
                    from: user,
                    name: 'requestWelcomeDialog',
                    type: 'event',
                    value: ''
                })
                .subscribe(function (id) {
                    console.log('"trigger requestWelcomeDialog" sent');
                });

      function closeChat(){
        var chatWin = document.getElementById('bot-container');
        var closeIcon = document.getElementById('bot-minimize');
        chatWin.classList.add('hide');
        closeIcon.classList.remove('hide');
      }
      function startChat(){
        var chatWin = document.getElementById('bot-container');
        var closeIcon = document.getElementById('bot-minimize');
        chatWin.classList.remove('hide');
        closeIcon.classList.add('hide');
      }
      onload = function(){
        //closeChat();
      }
    </script>
  </body>
</html>

1 Ответ

0 голосов
/ 04 февраля 2019

Поиск Bing устарел. Использование поиска Azure - рекомендуемый подход, но он не поддерживается botchat.js. Так что переход на webchat.cs необходим. Больше информации на https://www.npmjs.com/package/botframework-webchat

...