Microsoft Azure 网络聊天,从其他功能触发麦克风
Microsoft Azure Web Chat, trigger mic from other function
我已经使用 Microsoft Bot Framework 为客户端创建了一个机器人。即称为 WebChat。我还添加了语音 SpeechRecognizer。但是,我正在尝试在朗诵一个短语时触发麦克风。
我在 Microsoft 中找不到执行此操作的功能。所以我添加了我自己的语音识别器,每秒调用一次,一旦调用了短语,我想从认知服务调用麦克风功能。
我怎样才能做到这一点?
我从 here
得到了语音识别器
我写的用来识别短语的是这样的:
function startDictation() {
if (window.hasOwnProperty('webkitSpeechRecognition')) {
var recognition = new webkitSpeechRecognition();
recognition.continuous = false;
recognition.interimResults = false;
recognition.lang = "en-US";
recognition.start();
recognition.onresult = function (e) {
var foundText = e.results[0][0].transcript;
console.log(foundText);
if (foundText == "hello hello") {
console.log("found text");
//call cognitive service mic function
recognition.stop();
}
else {
console.log("text not found");
recognition.stop();
startDictation();
}
};
recognition.onerror = function (e) {
console.log("found error", e);
recognition.stop();
}
}
}
如果有任何信息遗漏或误导,请告诉我。
更多:
我试图利用 SpeechRecognizer
class 和 https://github.com/Microsoft/BotFramework-WebChat/blob/master/src/CognitiveServices/SpeechRecognition.ts#L72 中的 startRecognizing()
函数来触发识别功能。但是,我发现只有点击麦克风项,我才能使用startRecognizing()
功能来识别语音。
目前您可以尝试使用一个变通技巧:
我检查了麦克风项目,并尝试在 js 中触发它的 click
事件,它完全可以识别我的语音。
您可以尝试将以下 js 代码片段与 jQuery 一起使用:
$('.wc-mic').trigger("click")
希望对您有所帮助。
我已经使用 Microsoft Bot Framework 为客户端创建了一个机器人。即称为 WebChat。我还添加了语音 SpeechRecognizer。但是,我正在尝试在朗诵一个短语时触发麦克风。
我在 Microsoft 中找不到执行此操作的功能。所以我添加了我自己的语音识别器,每秒调用一次,一旦调用了短语,我想从认知服务调用麦克风功能。
我怎样才能做到这一点?
我从 here
得到了语音识别器我写的用来识别短语的是这样的:
function startDictation() {
if (window.hasOwnProperty('webkitSpeechRecognition')) {
var recognition = new webkitSpeechRecognition();
recognition.continuous = false;
recognition.interimResults = false;
recognition.lang = "en-US";
recognition.start();
recognition.onresult = function (e) {
var foundText = e.results[0][0].transcript;
console.log(foundText);
if (foundText == "hello hello") {
console.log("found text");
//call cognitive service mic function
recognition.stop();
}
else {
console.log("text not found");
recognition.stop();
startDictation();
}
};
recognition.onerror = function (e) {
console.log("found error", e);
recognition.stop();
}
}
}
如果有任何信息遗漏或误导,请告诉我。
更多:
我试图利用 SpeechRecognizer
class 和 https://github.com/Microsoft/BotFramework-WebChat/blob/master/src/CognitiveServices/SpeechRecognition.ts#L72 中的 startRecognizing()
函数来触发识别功能。但是,我发现只有点击麦克风项,我才能使用startRecognizing()
功能来识别语音。
目前您可以尝试使用一个变通技巧:
我检查了麦克风项目,并尝试在 js 中触发它的 click
事件,它完全可以识别我的语音。
您可以尝试将以下 js 代码片段与 jQuery 一起使用:
$('.wc-mic').trigger("click")
希望对您有所帮助。