You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Bot Framework Composer创建的Node回声机器人Web Chat无语音输入问题

解决Web Chat无语音输入选项的问题

核心原因

Bot Framework Emulator会自动集成语音能力,但Web Chat需要显式配置语音服务参数才能启用语音输入——即使Composer端已开启语音功能,Web Chat端仍需单独配置。

具体解决步骤

1. 准备语音服务凭证

从Azure门户的语音服务资源中,获取你的语音服务密钥和区域(例如eastus)。

2. 修改Web Chat嵌入代码

默认嵌入代码不包含语音配置,需添加语音相关参数到Web Chat初始化逻辑中:

const directLine = window.WebChat.createDirectLine({
  token: '你的Direct Line令牌'
});

const webChatConfig = {
  directLine: directLine,
  speechOptions: {
    speechRecognitionEndpoint: 'wss://你的语音服务区域.stt.speech.microsoft.com/speech/universal/v2',
    speechSynthesisEndpoint: 'https://你的语音服务区域.tts.speech.microsoft.com/cognitiveservices/v1',
    speechRecognitionKey: '你的语音服务密钥',
    speechSynthesisKey: '你的语音服务密钥'
  }
};

window.WebChat.renderWebChat(webChatConfig, document.getElementById('webchat'));

注意:将代码中的占位符替换为实际的语音服务区域、密钥和Direct Line令牌。

3. 确认Composer端配置正确性

再次检查Composer的以下配置:

  • 进入项目设置 > 发布 > 语音,确认已勾选启用语音,并填入正确的语音服务密钥和区域
  • 查看机器人的appsettings.json,确保包含以下配置项:
    "SpeechServices": {
      "SpeechSubscriptionKey": "你的语音服务密钥",
      "SpeechRegion": "你的语音服务区域"
    }
    

4. 检查浏览器麦克风权限

确保Web页面已获取麦克风权限,浏览器首次调用语音输入时会弹出权限请求,需选择允许。

额外排查点

  • 确认Direct Line已与机器人正确关联
  • 打开浏览器控制台,查看是否有语音服务相关的错误日志(如密钥无效、区域不匹配等)

内容的提问来源于stack exchange,提问作者Amit

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.31 00:21:26