Объект Device/Методы/StartSpeechRecognition

Материал из Call Office Wiki
Перейти к навигации Перейти к поиску
Метод StartSpeechRecognition включает распознавание голосовых команд.

Синтаксис

StartSpeechRecognition (BSTR Words, BSTR StopWords, VARIANT CallbackFunction, LONG DeferredTime)

Параметры

Words строка, содержащая распознаваемые слова, разделенные запятыми. По умолчанию - все. Для распознавания Google этот параметр игнорируется, для распознавания Yandex следует использовать следующие языковые модели: notes — тексты, dates — даты, names — имена, numbers — числа, music — музыка, buying — заказы (по умолчанию - notes).
StopWords строка, содержащая слова, разделенные запятыми, останавливающие процесс распознавания голоса. По умолчанию - отсутствуют.
CallbackFunction пользовательская функция обратного вызова (callback) прерывания процесса распознавания. По умолчанию - отсутствует.

Пользовательская функция может быть двух видов - выражение в виде текста на языке JavaScript возвращающее функцию или стандартный интерфейс IDispath. Пользовательская функция принимает три параметра:

  1. Text - (строка) распознанный текст;
  2. Confidence - (вещественное число) степень достоверности 0 - 1.
  3. Endofutt - (логическое) признак завершения фразы.

Возвращает логическое выражение, при значении true распознавание прерывается.


Пример пользовательской функции в виде выражения JavaScript:

Device.StartSpeechRecognition (Words, StopWords, "0, function (Text, Confidence, Endofutt) {if (Confidence > 0.3 and Endofutt) return true; return false;}");


Пример пользовательской функции в виде обычной функции JavaScript:

function Check (Text, Confidence, Endofutt) 
{
   if (Endofutt) {          // Если фраза распознана полностью
      if (Confidence > 0.3) return true;   // Если степень достоверности распознанного текста больше 0.3 завершаем распознавание
   } 

   return false;
}

Device.StartSpeechRecognition (Words, StopWords, Check);

Описание

Метод позволяет распознать произнесенные пользователем слова, содержащиеся в словаре, подключаемом командой InitSpeechRecognition.

Примеры

Пример на JavaScript
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 ();
Пример на VBScript
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

Назад к методам объекта Device.