Объект Device/Методы/StartSpeechRecognition: различия между версиями
Перейти к навигации
Перейти к поиску
Jugin (обсуждение | вклад) |
Jugin (обсуждение | вклад) |
||
Строка 68: | Строка 68: | ||
==Описание== | ==Описание== | ||
:Метод позволяет распознать произнесенные пользователем слова, содержащиеся в словаре, подключаемом командой '''[[Объект_Device/Методы/InitSpeechRecognition|InitSpeechRecognition]]'''. | :Метод позволяет распознать произнесенные пользователем слова, содержащиеся в словаре, подключаемом командой '''[[Объект_Device/Методы/InitSpeechRecognition|InitSpeechRecognition]]'''. Если не используется пользовательская функция прерывания процесса распознавания, в случае распознавания законченной фразы (Endofutt = 1) будет выполнено прерывание текущей команды [[Объект_Device/Методы/Say|Say]] или [[Объект_Device/Методы/Listen|Listen]]. | ||
==Примеры== | ==Примеры== |
Текущая версия на 12:11, 17 сентября 2021
Метод StartSpeechRecognition включает распознавание голосовых команд.
Синтаксис
Параметры
Пользовательская функция может быть двух видов - выражение в виде текста на языке JavaScript возвращающее функцию или стандартный интерфейс IDispath. Пользовательская функция принимает три параметра:
Возвращает логическое выражение, при значении true распознавание прерывается.
Device.StartSpeechRecognition (Words, StopWords, "0, function (Text, Confidence, Endofutt) {if (Confidence > 0.3 and Endofutt) return true; return false;}");
function Check (Text, Confidence, Endofutt)
{
if (Endofutt) { // Если фраза распознана полностью
if (Confidence > 0.3) return true; // Если степень достоверности распознанного текста больше 0.3 завершаем распознавание
}
return false;
}
Device.StartSpeechRecognition (Words, StopWords, Check);
// Вариант I
Device.StartSpeechRecognition (Words, StopWords, Check, -2000);
Device.Say ("CallOffice.wav"); // Распознавание будет включено за 2 секунды до окончания произнесения сообщения CallOffice.wav
// Вариант II
Device.StartSpeechRecognition (Words, StopWords, Check, 2000);
Device.Say ("CallOffice.wav"); // Распознавание будет включено через 2 секунды после начала произнесения сообщения CallOffice.wav
Описание
Примеры
var Device = new ActiveXObject ("CallOffice.Device");
Device.Open ();
Device.InitSpeechRecognition ();
Device.LogFile = 'CallOffice.log';
Device.LogLevel = 255;
var Words = 'да, нет, выход, ноль, один, два, три, четыре, пять, шесть, семь, восемь, девять, десять';
var StopWords = 'выход';
Device.StartSpeechRecognition (Words, StopWords);
Device.Listen (30);
Device.StopSpeechRecognition ();
if (Device.VoiceCommand) alert ('Вы сказали слово ' + Device.VoiceCommand);
else alert ('Ничего не произнесено');
Device.Close ();
Dim Device
Set Device = CreateObject ("CallOffice.Device")
Device.Open
Device.LogFile = "CallOffice.log"
Device.LogLevel = 255
Device.InitSpeechRecognition
Words = "да, нет, выход, ноль, один, два, три, четыре, пять, шесть, семь, восемь, девять, десять"
StopWords = "выход"
Device.StartSpeechRecognition Words, StopWords
Device.Listen 30
Device.StopSpeechRecognition
If Device.VoiceCommand Then
MsgBox "Вы сказали слово ", Device.VoiceCommand
Else
MsgBox "Ничего не произнесено."
End If
Device.Close
|