У меня есть реализация речи в тексте для моего приложения, и я хотел бы вызвать событие при появлении определенного ключевого слова.Приложение представляет собой чат, который фактически работает с обычным вводом текста через клавиатуру, и при нажатии введите его, он включил этот текст в чат следующим образом (onkeydown = "ConversationPanel.inputKeyDown (event, this)") ...
Но теперь я хотел бы добавить свои разговорные слова в этот чат, используя ключевое слово, например, отправить, или даже лучше после перерыва.
(я использую Chrome WebKit)
</label> -->
<label for="textInput" class="inputOutline">
<div id="textInput" class="input responsive-column" type="text" onkeydown="/*globals CanvasJS */
ConversationPanel.inputKeyDown(event, this)"></div></label>
<button onclick="startConverting();"><i class="fa fa-microphone"></button>
<script type="text/javascript">
var r = document.getElementById('textInput');
function startConverting (){
if('webkitSpeechRecognition' in window){
var speechRecognizer = new webkitSpeechRecognition();
speechRecognizer.continuous = true;
speechRecognizer.interimResults = true;
speechRecognizer.lang = 'en-IN';
speechRecognizer.start();
var finalTranscripts = '';
speechRecognizer.onresult = function(event){
var interimTranscripts = '';
for(var i = event.resultIndex; i < event.results.length; i++){
var transcript = event.results[i][0].transcript;
transcript.replace("\n", "<br>");
if(event.results[i].isFinal){
finalTranscripts += transcript;
}else{
interimTranscripts += transcript;
}}
if(finalTranscripts.includes('?')){
window.alert('It works');
}
r.innerHTML = finalTranscripts + '<span style="color#999' +interimTranscripts + '</span>';
};
speechRecognizer.onerror = function (event) {
};
}else {
r.innerHTML = 'please update google chrome ';
}
}
</script>
Я предполагаю, что мне нужно реализовать что-то вроде этого ... Но я понятия не имею, как.
if(finalTranscripts.includes('send')){
XXXXXXXX
}
Любая помощь высоко ценится!:)