Объект Device/Методы/StartSpeechRecognition: различия между версиями
Перейти к навигации
Перейти к поиску
Jugin (обсуждение | вклад) |
Jugin (обсуждение | вклад) |
||
Строка 12: | Строка 12: | ||
|- | |- | ||
|'''Words''' | |'''Words''' | ||
|параметры распознавания. Для распознавания '''Sphinx''' в этом параметре можно задавать слова, которые необходимо распознавать, как в виде отдельных слов разделенных запятыми (по умолчанию '''да,нет,выход,ноль,один,два,три,четыре,пять,шесть,семь,восемь,девять,десять'''), так и в виде [ | |параметры распознавания. Для распознавания '''Sphinx''' в этом параметре можно задавать слова, которые необходимо распознавать, как в виде отдельных слов разделенных запятыми (по умолчанию '''да,нет,выход,ноль,один,два,три,четыре,пять,шесть,семь,восемь,девять,десять'''), так и в виде [[JSGF| JSGF грамматики]]. Для распознавания '''Google''' этот параметр игнорируется, для распознавания '''Yandex''' следует использовать следующие языковые модели: notes — тексты, dates — даты, names — имена, numbers — числа, music — музыка, buying — заказы (по умолчанию - notes). | ||
|- | |- | ||
|'''StopWords''' | |'''StopWords''' |
Версия 10:10, 20 декабря 2018
Метод 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
|