Предшествующий уровень техники
Настоящее изобретение относится к программированию речевых приложений. Конкретнее, настоящее изобретение относится к совместному использованию пошагового речевого языка разметки и объектно ориентированных расширений для речевых приложений.
Успехи в компьютерных пользовательских интерфейсах позволили пользователям взаимодействовать с компьютером через речевые команды. Развиты речевые порталы, такие как через использование языка VoiceXML (расширяемый язык разметки для речи), чтобы позволить контенту (информационно значимому содержимому) интернета быть доступным с помощью речевого ввода. В этой архитектуре сервер документов (например, сетевой сервер) обрабатывает запросы от клиента через интерпретатор VoiceXML. Web-сервер может создавать документы VoiceXML и ответы, которые обрабатываются интерпретатором VoiceXML и воспроизводятся в слышимой форме пользователю. С помощью заданных речевых команд при распознавании речи пользователь может перемещаться (осуществлять навигацию) во Всемирной паутине (Web) и прослушивать воспроизводимые в слышимой форме данные.
Язык разработки VoiceXML спроектирован для того, чтобы позволить авторам контролировать диалог между пользователем и речевым приложением. VoiceXML следует пошаговому способу, в котором приложение управляет диалоговым потоком и спрашивает пользователя для того, чтобы заполнить форму или сделать выбор из меню. Приложение VoiceXML выполняет несколько шагов для того, чтобы предоставить данные пользователю или заполнить данные в форме. Конкретнее, VoiceXML следует алгоритму интерпретации формы, который управляет взаимодействием между пользователем и формой или меню VoiceXML. Этот алгоритм продолжается в цикле по форме или меню до тех пор, пока не заполнятся значения, пока не будет сделан выбор или пока не встретится исключение.
Речевые приложения могут также разрабатываться через использование расширения языка разметки, такого как спецификация языковых тэгов (неотображаемых элементов разметки) для речевых приложений (SALT). ДЯРП обеспечивает возможность многорежимного и телефонного доступа к информации, приложениям и Web-услугам от персональных компьютеров, телефонов, персональных цифровых информационных устройств (РДА) и других вычислительных устройств. ДЯРП расширяет существующие языки разметки, такие как HTML, X-HTML и XML. Многорежимный доступ с помощью ДЯРП обеспечивает пользователям возможность взаимодействия с приложением множеством различных путей, например с помощью клавиатуры, речи, мыши и/или пера или их сочетания.
В отличие от VoiceXML, ДЯРП основывается на подходе объектно ориентированного программирования, в котором приложения скомпонованы из различных объектов, автоматически запускаемых процедур или программ (триггеров). Объектно ориентированный подход обеспечивает авторам приложения возможность конфигурировать диалоговые потоки между пользователем и приложением на индивидуальной основе. Когда событие встречается в SALT, основанное на SALT приложение выполняет различные команды на основании этого события. Таким образом, пользователь может управлять диалоговым потоком, что может быть более эффективной и/или естественной формой взаимодействия c компьютером.
Приложения, использующие пошаговый подход VoiceXML, не используют в настоящее время гибкость, обеспечиваемую подходом на основе объектно ориентированного программирования, используемым инструментальными средствами речевых приложений, такими как SALT. В результате приложения VoiceXML сталкивается с трудностями при взаимодействии с ситуациями с перемежающейся инициативой системы и пользователя (в которых пользователь может запросить данные из нескольких различных категорий), внешними сообщениями и усовершенствованным управлением вызовом. Следовательно, были бы полезны система и способ, обеспечивающие программную гибкость SALT в VoiceXML.
Сущность изобретения
Настоящее изобретение обеспечивает систему и способ для комбинирования алгоритма пошагового исполнения команд и объектно ориентированного модуля. В одном аспекте настоящего изобретения программа, выполняемая компьютером, включает в себя пошаговый модуль, имеющий команды, исполняемые в определенном порядке на основании алгоритма выполнения. Объектно ориентированный модуль включает в себя объекты, имеющие временные триггеры для операций инициализации, ассоциированных с командами.
В другом аспекте настоящего изобретения модуль VoiceXML включает в себя исполняемые команды VoiceXML. Модуль SALT включает в себя языковые тэги речевого приложения для исполнения команд, ассоциированных с модулем VoiceXML. В еще одном варианте выполнения модуль VoiceXML может быть использован для объявления первого и второго полей VoiceXML, а модуль SALT инициализирует событие распознавания для получения речевого входного сигнала от пользователя. Модуль SALT заполняет первое поле VoiceXML первой частью речевого входного сигнала и второе поле VoiceXML второй частью речевого входного сигнала. Дополнительно модуль SALT может включать в себя множество грамматик, которые распознают речевой входной сигнал и ассоциируют входной сигнал с конкретной грамматикой и/или полем.
Еще одним аспектом настоящего изобретения является способ обеспечения интерактивного пользовательского интерфейса. Способ основывается на пошаговом диалоге, исполняющем команды в определенном порядке. Эти команды включают в себя объекты для обработки событий, ассоциированных с по меньшей мере одним из распознавания, приглашения и сообщения. Объектно ориентированная операция выполняется, когда встречается объект, ассоциированный с этими командами. Операция обеспечивает по меньшей мере одно, но не все из событий в диалоге, ассоциированном с распознаванием, приглашением и сообщением.
Перечень чертежей
Фиг.1 - блок-схема системы, использующей пошаговый модуль и объектно ориентированный модуль.
Фиг.2 - вид сверху рабочей среды вычислительного устройства.
Фиг.3 - блок-схема вычислительного устройства по фиг.2.
Фиг.4 - вид сверху телефона.
Фиг.5 - блок-схема универсального компьютера.
Фиг.6 - блок-схема архитектуры для системы “клиент/сервер”.
Фиг.7 - блок-схема способа согласно варианту выполнения настоящего изобретения.
Фиг.8 - блок-схема результата распознавания и множества грамматик.
Фиг.9 - блок-схема способа согласно варианту выполнения настоящего изобретения.
Фиг.10 - блок-схема результата распознавания и множества полей.
Фиг.11 - блок-схема способа согласно варианту выполнения настоящего изобретения.
Фиг.12 - блок-схема способа согласно варианту выполнения настоящего изобретения.
Фиг.13 - блок-схема способа согласно варианту выполнения настоящего изобретения.
Фиг.14 - примерная страница разметки согласно варианту выполнения настоящего изобретения.
Подробное описание предпочтительных вариантов выполнения
Фиг.1 иллюстрирует систему 10 для комбинирования использования пошагового языка, такого как VoiceXML, и инструментального средства разработки объектно ориентированного речевого приложения, такого как SALT. Система 10 включает в себя пошаговый модуль 12, например, модуль VoiceXML, и модуль 14 инструментального средства разработки объектно ориентированного речевого приложения, например, модуль SALT. Пошаговый модуль включает в себя команды, которые исполняются в определенном порядке, установленном алгоритмом выполнения. Модуль инструментального средства разработки объектно ориентированного речевого приложения включает в себя программные объекты, которые выполняют различные операции. В настоящем описании термином “VoiceXML” именуется расширяемый язык разметки для речи, который является возможной рекомендацией (Candidate Recommendation) W3C (консорциума по Всемирной Паутине). Копию описания Версии 2.0 VoiceXML можно найти по адресу www.w3.org/TR/voicexml20. Дополнительно, термином “SALT” именуются языковые тэги для речевых приложений, разработанные Форумом SALT. Копия описания 1.0 “SALT” доступна по адресу www.SALTforum.org. VoiceXML исполняет пошаговые команды на основании алгоритма интерпретации формы.
Один аспект настоящего изобретения включает в себя включение одного или более объектно ориентированных модулей 14 в исполняемые команды пошагового модуля 12. Объектно ориентированные модули 14 включают в себя временные триггеры, которые инициируют операции, когда триггер встречается в алгоритме выполнения пошагового модуля 12. Триггеры могут включать в себя различные события, такие как ошибка, исключение, прием сообщения, распознавание и/или нераспознавание или вышеперечисленного сочетания. Операции, которые выполняются, включают в себя такие операции, как распознавание речи, распознавание DTMF (двухтонального многочастотного набора телефонного номера), сбор аудиоданных, воспроизведение аудиоданных и т.п.
Когда при работе пошагового модуля 12 (например, модуля VoiceXML) встречается объектно ориентированный модуль 14 (например, тэг SALT), взаимодействие между тэгом SALT и модулем 12 VoiceXML определяется таким образом, чтобы разрешить использование SALT в VoiceXML. Например, при инициировании распознавание речи на основании множества грамматик с помощью тэга SALT команды, относящиеся к размещению каждого из блоков в отдельные поля, позволяют модулю SALT встраиваться в модуль VoiceXML. При использовании возможностей посылки сообщений SALT, команды посылки сообщений встраиваются в циклы алгоритма интерпретации формы. Путем встраивания объектно ориентированного модуля 14 в пошаговый модуль 12, функции и гибкость результирующего приложения могут быть расширены по сравнению с теми, которые доступны с помощью простого пошагового языка, такого как VoiceXML.
Способ обеспечения интерактивного пользовательского интерфейса является другим аспектом настоящего изобретения, который может воплощаться в системе 10. Пошаговый модуль 12 может устанавливать пошаговый диалог с пользователем, который выполняет команды в определенной последовательности, например, через форму или меню VoiceXML. Эти команды обрабатывают диалоговые события, ассоциированные с приглашением к распознаванию и/или сообщением распознавания. Объектно ориентированный модуль 14 выполняет объектно ориентированные операции (например, посредством выполнения тэгов SALT), когда они встречаются в диалоге для по меньшей мере одного, но не всех, из распознавания, приглашения или сообщения. В одном варианте выполнения пошаговый диалог включает в себя VoiceXML, который выполняет команды и тэги, которые выполняют объектно ориентированные операции.
Принимая во внимание полное описание системы для разработки речевых приложений, может быть полезно описать в общем виде вычислительные устройства, которые могут функционировать в системе 10, описанной выше. Специалистам в данной области техники должно быть понятно, что компоненты системы 10 могут быть расположены в отдельном компьютере или распределены по распределенной вычислительной среде с помощью соединений и протоколов.
На Фиг.2 примерная форма мобильного устройства, такого как устройство управления данными (электронная записная книжка (PIM, РДА и другие), показана позицией 30. Однако предполагается, что настоящее изобретение может быть осуществлено с помощью других вычислительных устройств, описанных ниже. Например, телефоны и/или устройства управления данными также получат выгоду от настоящего изобретения. Такие устройства будут иметь расширенную применимость по сравнению с существующими портативными персональными устройствами управления информацией и другими портативными электронными устройствами.
Примерная форма мобильного устройства 30 управления данными показана на Фиг.2. Мобильное устройство 30 включает в себя корпус 32 и имеет пользовательский интерфейс, включающий в себя дисплей 34, который использует сенсорный экран в сочетании с пишущим элементом 33. Пишущий элемент 33 используется для нажатия или контакта с дисплеем 34 в определенных координатах для выбора поля, для выборочного передвижения начальной позиции курсора или для иного обеспечения командной информации, такой как через жесты или письмо от руки. В качестве альтернативы или дополнения одна или более кнопок 35 могут быть включены в устройство 30 для управления перемещением. Кроме этого, могут также быть предусмотрены другие средства ввода данных, такие как вращающиеся колеса, роллеры и тому подобное. Однако следует отметить, что не подразумевается ограничение изобретения этими формами средств ввода данных. Например, другие формы ввода данных могут включать в себя визуальный ввод данных, например, посредством компьютерного зрения.
На Фиг.3 блок-схема иллюстрирует функциональные компоненты, составляющие мобильное устройство 30. Центральный процессор 50 (ЦПУ, CPU) реализует функции программного управления. ЦПУ 50 связан с дисплеем 34 таким образом, что текст и графические пиктограммы (иконки), сгенерированные в соответствии с программой управления, появляются на дисплее 34. Динамик 43 может быть связан с ЦПУ 50 обычно с помощью цифроаналогового преобразователя 59, чтобы обеспечить звуковой вывод. Данные, которые загружаются или вводятся пользователем в мобильное устройство 30, хранятся в энергонезависимом запоминающем устройстве 54 с произвольным доступом для считывания/записи, связанном в двух направлениях с ЦПУ 50. Оперативное запоминающее устройство 54 (ОЗУ, RAM) обеспечивает энергозависимое хранение для команд, которые исполняются процессором 50, и хранение для временных данных, таких как значения регистров. Значения по умолчанию для опций конфигурации и другие переменные хранятся в постоянном запоминающем устройстве 58 (ПЗУ, ROM). ПЗУ 58 может также использоваться для хранения программного обеспечения операционной системы для устройства, которое управляет основными функциями мобильного устройства 30, и других функций ядра операционной системы (например, обеспечивающих загрузку программных компонентов в ОЗУ 54).
ОЗУ 54 также работает как хранилище для кода аналогично функциям накопителя на жестких магнитных дисках в персональном компьютере (ПК, PC), который используется для хранения прикладных программ. Следует отметить, что хотя энергонезависимая память используется для хранения кода, он альтернативно может быть сохранен в энергозависимой памяти, которая не используется для исполнения этого кода.
Беспроводные сигналы могут передаваться/приниматься мобильным устройством через беспроводной приемопередатчик 52, который связан с ЦПУ 50. Необязательный интерфейс 50 связи может также быть предусмотрен для загрузки данных прямо из компьютера (например, персонального компьютера) или из проводной сети, если это необходимо. Соответственно, интерфейс 60 может содержать различные формы устройств связи, например, инфракрасную линию связи, модем, сетевую карту или тому подобное.
Мобильное устройство 30 включает в себя микрофон 29 и аналого-цифровой преобразователь 37 (АЦП) и в необязательном порядке, программу распознавания (речи, DTMF, рукописного текста, жестов или компьютерного зрения), хранимую в хранилище 54. К примеру, в ответ на звуковую информацию или команды от пользователя устройства 30 микрофон 29 обеспечивает речевые сигналы, которые оцифровываются в АЦП 37. Программа распознавания речи может выполнять функции нормализации и/или извлечения признаков в отношении оцифрованных речевых сигналов для получения промежуточных результатов распознавания речи. С помощью беспроводного приемопередатчика 52 или интерфейса 60 связи речевые данные могут быть переданы к удаленному серверу 204 распознавания, описанному ниже и показанному в архитектуре по Фиг.6. Результаты распознавания затем возвращаются в мобильное устройство 30 для их воспроизведения (например, визуального или звукового) на нем и возможной передачи к сетевому серверу 202 (Фиг.6), причем сетевой сервер 202 и мобильное устройство 30 работают во взаимоотношении “клиент/сервер”. Аналогичная обработка может быть использована для других форм ввода данных. Например, рукописный ввод может быть оцифрован с предварительной обработкой или без нее в устройстве 30. Как и речевые данные, эта форма ввода данных может быть передана к серверу 204 распознавания для распознавания, причем результаты распознавания возвращаются по меньшей мере к одному из устройства 30 и/или сетевого сервера 202. Таким же образом данные DTMF, данные жестов и визуальные данные могут быть обработаны аналогично. В зависимости от формы ввода данных устройство 30 (и другие формы клиентов, описанные ниже) может включать в себя необходимое аппаратное обеспечение, такое, как камера для визуального ввода.
Фиг.4 является видом сверху примерного варианта выполнения портативного телефона 80. Телефон 80 включает в себя дисплей 82 и клавиатуру 84. В общем случае блок-схема по Фиг.3 применима к телефону Фиг.4, хотя может потребоваться дополнительная схема, необходимая для выполнения других функций. Например, приемопередатчик, необходимый для работы в качестве телефона, потребуется для варианта выполнения Фиг.3; однако такая схема не относится к настоящему изобретению.
В дополнение к переносному или мобильному вычислительным устройствам, описанным выше, следует также понимать, что настоящее изобретение может быть использовано со множеством других вычислительных устройств, таких как универсальный настольный компьютер. Например, настоящее изобретение позволит пользователю с ограниченными физическими способностями вводить текст в компьютер или в другое вычислительное устройство, когда другие традиционные устройства ввода, такие как полная алфавитно-цифровая клавиатура, слишком сложны для работы.
Изобретение работает также со множеством других вычислительных систем, сред или конфигураций общего или специального назначения. Примеры общеизвестных вычислительных систем, сред и/или конфигураций, которые могут подходить для использования с изобретением, включают в себя, но не в ограничительном смысле обычные телефоны (без каких либо экранов), персональные компьютеры, серверные компьютеры, карманные или переносные устройства, планшетные компьютеры, многопроцессорные системы, системы, основанные на микропроцессорах, телевизионные приставки, программируемую бытовую электронику, сетевые ПК, мини-компьютеры, универсальные компьютеры, распределенные вычислительные среды, которые включают в себя любые из описанных выше системы или устройства и тому подобное.
Нижеследующее является кратким описанием универсального компьютера 120, показанного на Фиг.5. Однако компьютер 120 опять-таки является только одним примером соответствующей вычислительной среды и не предназначен для наложения каких-либо ограничений как на объем использования, так и на функции изобретения. Не следует и интерпретировать компьютер 120 как имеющий какую-либо зависимость либо требование, относящееся к любому или к комбинации компонентов, показанных здесь.
Изобретение может быть описано в общем контексте машиноисполняемых команд, таких как программные модули, выполняемые компьютером. В общем случае программные модули включают в себя процедуры, программы, объекты, компоненты, структуры данных и т.д., которые выполняют конкретные задания или реализуют определенные абстрактные типы данных. Изобретение может также применяться в распределенных вычислительных средах, где задания выполняются удаленными устройствами обработки, которые связаны через сеть связи. В описанной вычислительной среде программные модули могут быть расположены как на локальных, так и на удаленных компьютерных носителях данных, включающих в себя запоминающие устройства. Задания, выполняемые программами и модулями, описаны ниже с помощью чертежей. Специалисты в данной области техники могут реализовать описание и чертежи как исполняемые процессором команды, которые могут быть записаны на любом виде машиночитаемого носителя.
На Фиг.5 компоненты компьютера 120 могут включать в себя, но не в ограничительном смысле, блок 140 обработки данных, системную память 150 и системную шину 141, которая связывает различные системные компоненты, в числе и системную память, с блоком 140 обработки данных. Системная шина 141 может относиться к любому из нескольких видов шинных структур, включая шину памяти или контроллер памяти, периферийную шину и локальную шину, использующие любые из множества шинных архитектур. В качестве примера, а не ограничения, такие архитектуры включают в себя шину архитектуры промышленного стандарта (шину ISA), универсальную последовательную шину (шину USB), шину микроканальной архитектуры (шину MCA), шину расширенной архитектуры промышленного стандарта (шину EISA), локальную шину ассоциации стандартов видеоэлектроники (шину VESA) и шину межсоединения периферийных компонентов (шину PCI), также известную как мезонинная шина. Компьютер 120 обычно включает в себя разнообразные машиночитаемые носители. Машиночитаемые носители могут быть любыми из доступных носителей, к которым компьютер 120 может осуществить доступ, и включают в себя энергозависимые или энергонезависимые носители, сменные или несменные носители. В качестве примера, а не ограничения, машиночитаемые носители могут содержать компьютерный носитель данных и среды передачи. Компьютерные носители данных включают в себя как энергозависимые, так и энергонезависимые, как сменные, так и несменные носители, реализованные любым способом или технологией для хранения информации, такой как машиночитаемые команды, структуры данных, программные модули или другие данные. Компьютерный носитель данных включает в себя, но не в ограничительном смысле, ОЗУ, ПЗУ, электрически стираемое программируемое ПЗУ (EEPROM), флэш-память или память другой технологии, компакт-диск, цифровой универсальный диск (DVD) или другие оптические дисковые носители, магнитные кассеты, магнитную ленту, магнитные дисковые носители или другие магнитные запоминающие устройства, или любые другие носители, которые могут быть использованы для хранения требуемой информации и к которым компьютер 120 может осуществить доступ.
Среды передачи обычно воплощают машиночитаемые команды, структуры данных, программные модули или другие данные в сигнале, модулированном данными, таком как сигнал несущей или иной механизм переноса, и включают в себя любые среды доставки информации. Термин "сигнал, модулированный данными" означает сигнал, который имеет одну или более своих характеристик, установленных и измененных таким образом, чтобы обеспечить кодирование информации в этом сигнале. В качестве примера, а не ограничения, среды передачи включают в себя проводные среды, такие как проводная сеть или прямое проводное соединение, и беспроводные среды, такие как акустическая, радиочастотная (RF), инфракрасная и другие беспроводные среды. Сочетания любых описанных выше сред также охватываются понятием “машиночитаемый носитель”.
Системная память 150 включает в себя компьютерный носитель данных в форме энергозависимой или энергонезависимой памяти, такой как ПЗУ 151 и ОЗУ 152. Базовая система ввода/вывода (BIOS), содержащая основные процедуры, которые помогают передавать информацию между элементами в компьютере 120, например при запуске, обычно хранится в ПЗУ 151. ОЗУ 152 обычно содержит информацию и/или программные модули, которые оперативно доступны для блока 140 обработки данных и/или выполняются в настоящее время блоком 140 обработки данных. В качестве примера, а не ограничения, Фиг.5 иллюстрирует вычислительную систему 154, прикладные программы 155, другие программные модули 156 и данные 157 программ.
Компьютер 120 может также включать в себя другие сменные/несменные энергозависимые/энергонезависимые компьютерные носители информации. Только в качестве примера Фиг.5 показывает накопитель 161 на жестких магнитных дисках, который считывает с несменных энергонезависимых магнитных носителей или записывает на них, дисковод 171 магнитного диска, который считывает со сменного энергонезависимого магнитного диска 172 или записывает на него, и дисковод 175 оптического диска, который считывает со сменного энергонезависимого оптического диска 176, такого как компакт-диск или другой оптический носитель, и записывает на него. Другие сменные/несменные энергозависимые/энергонезависимые компьютерные носители данных, которые могут быть использованы в примерной операционной среде, включает в себя, и но не в ограничительном смысле, кассеты магнитной ленты, карточки флэш-памяти, цифровые универсальные диски, цифровую видеоленту, твердотельное ОЗУ, твердотельное ПЗУ и тому подобное. Накопитель 161 на жестких магнитных дисках обычно соединен с системной шиной 141 через интерфейс несменной памяти, такой как интерфейс 160, а дисковод 171 магнитного диска и дисковод 175 оптического диска обычно соединены с системной шиной 141 интерфейсом сменной памяти, таким как интерфейс 170.
Дисководы и накопители и связанные с ними компьютерные носители данных, описанные выше и показанные на Фиг.5, обеспечивают хранение машиночитаемых команд, структур данных, программных модулей и других данных для компьютера 120. На Фиг.5, например, накопитель 161 на жестких магнитных дисках показан как хранящий операционную систему 164, прикладные программы 165, другие программные модули 166 и данные 167 программ. Отметим, что эти компоненты могут либо быть теми же самыми, либо отличаться от операционной системы 154, прикладных программ 155, других программных модулей 156 и программных данных 157. Операционной системе 164, прикладным программам 165, другим программным модулям 166 и данным 167 программ присвоены здесь другие номера, чтобы показать, что, как минимум, они являются другими копиями.
Пользователь может вводить команды или информацию в компьютер 120 через устройства ввода, такие как клавиатура 182, микрофон 183 и координатное устройство 181, такое как мышь, трекбол или сенсорный планшет. Другие устройства ввода (не показаны) могут включать в себя джойстик, игровой планшет, спутниковую антенну, сканнер и тому подобное. Эти и другие устройства ввода часто соединены с блоком 140 обработки данных через интерфейс 180 пользовательского ввода, который связан с системной шиной, но могут быть соединены с другими структурами интерфейсов и шин, такими как параллельный порт, игровой порт или универсальная последовательная шина USB. Монитор 184 или другие типы устройств отображения также соединены с системной шиной 141 через интерфейс, такой как видеоинтерфейс 185. В дополнение к монитору, компьютеры могут также включать в себя другие периферийные устройства вывода, такие как громкоговорители 187 и принтер 186, которые могут быть подсоединены через выходной периферийный интерфейс 188.
Компьютер 120 может работать в сетевой среде с помощью логических соединений с одним или более удаленными компьютерами, такими как удаленный компьютер 194. Удаленный компьютер 194 может быть персональным компьютером, карманным устройством, сервером, маршрутизатором, сетевым ПК, одноранговым устройством или другим общим сетевым узлом и обычно включает в себя многие или все элементы, описанные выше в отношении компьютера 120. Логические соединения, изображенные на Фиг.5, включают в себя локальную сеть 191 (ЛС, LAN) и глобальную сеть 193 (ГВС, WAN), но могут также включать в себя и другие сети. Такие сетевые среды распространены в офисах, компьютерных сетях масштаба предприятия, интрасетях и Интернете.
При использовании в сетевой среде ЛС компьютер 120 соединяется с ЛВС 191 через сетевой интерфейс или адаптер 190. При использовании в сетевой среде ГС компьютер 120 обычно включает в себя модем 192 или другое средство для установления соединений через ГС 193, такую как Интернет. Модем 192, который может быть внутренним и внешним, может быть соединен с системной шиной 141 через интерфейс 180 пользовательского ввода или другой соответствующий механизм. В сетевой среде программные модули, изображенные относящимися к компьютеру 120, или их части могут храниться в удаленном запоминающем устройстве. В качестве примера, а не ограничения, Фиг.5 иллюстрирует удаленные прикладные программы 195 как находящиеся на удаленном компьютере 194. Ясно, что показанные сетевые соединения являются примерными, и могут быть использованы другие средства установления связи между компьютерами.
Фиг.6 иллюстрирует архитектуру 200 для распознавания и воспроизведения данных на основе Web, которая является одной примерной средой для настоящего изобретения. Обычно к информации, хранящейся в Web-сервере 202, можно осуществить доступ через клиента 100, такого как мобильное устройство 30 или компьютер 120 (который здесь представляет другие формы вычислительных устройств, имеющих экран дисплея, микрофон, камеру, сенсорную панель и т.д., в соответствии с требованиями формы ввода данных), или через телефон 80, в котором информация запрашивается в слышимой форме, или тональным сигналом, генерируемым телефоном 80 в ответ на нажатие клавиш, и при этом информация от Web-сервера 202 предоставляется пользователю только в слышимой форме.
В этом варианте выполнения архитектура 200 унифицирована в том, что независимо от того, получена ли информация через клиента 100 или телефон 80 с помощью распознавания речи, единственный сервер 204 распознавания может поддерживать любой режим работы. В дополнение к этому, архитектура 200 работает с помощью расширения общеизвестных языков разметки (например, HTML, XHTML, cHTML, XML, WML и другие). Таким образом, к информации, хранящейся на Web-сервере 202, можно осуществить доступ с помощью общеизвестных методов графического пользовательского интерфейса (GUI), имеющихся в этих языках разметки. С помощью расширения общеизвестных языков разметки облегчается авторская разработка на Web-сервере 202, а уже существующие приложения можно также легко модифицировать для включения распознавания речи.
Обычно клиент 100 исполняет страницы HTML, скрипты (программы на макроязыке) и др., что обозначено в общем позицией 206, предоставляемые Web-сервером 202 с помощью браузера. Когда требуется распознавание речи, в виде примера, речевые данные, которые могут быть оцифрованными аудиосигналами или речевыми признаками, в которых аудиосигналы предварительно обработаны клиентом 100, как описано выше, подаются на сервер 204 распознавания с индикацией грамматики или языковой модели 220 для использования во время распознавания речи, которое может быть обеспечено клиентом 100. Альтернативно, речевой сервер 204 может включать в себя языковую модель 220. Реализация сервера 204 распознавания может принимать много форм, одна из которых показана, но в общем случае включает в себя средство распознавания или распознаватель 211. Результаты распознавания возвращаются к клиенту 100 для локального воспроизведения, если это необходимо или уместно. Если необходимо, то модуль 222 преобразования текста в речь может быть использован для обеспечения озвученного текста для клиента 100. После компиляции информации через распознавание и любой графический пользовательский интерфейс, если он используется, клиент 100 посылает эту информацию к Web-серверу 202 для дальнейшей обработки и приема дальнейших страниц/скриптов HTML, если это необходимо.
Как показано на Фиг.6, клиент 100, Web-сервер 202 и сервер 204 распознавания обычно соединены и имеют раздельную адресацию через сеть 205, в рассматриваемом случае здесь через глобальную сеть, такую как Интернет. По этой причине нет необходимости в том, чтобы любое из этих устройств физически располагалось рядом друг с другом. В частности, нет необходимости, чтобы Web-сервер 202 включал в себя сервер 204 распознавания. В этом случае авторская разработка на Web-сервере 202 может быть сфокусирована на приложении, на которое она направлена, без необходимости для авторов знать сложную структуру сервера 204 распознавания. Вместо этого сервер 204 распознавания может быть независимо разработан и соединен с сетью 205, и, тем самым, может быть обновлен и усовершенствован без дальнейших изменений, требуемых на Web-сервере 202. Web-сервер 202 может также включать в себя авторскую разработку средства, которое может динамически генерировать разметку и скрипты на стороне клиента. В дальнейшем варианте выполнения Web-сервер 202, сервер 204 распознавания и клиент 100 могут быть объединены в зависимости от функциональных возможностей реализующих их машин. Например, если клиент 100 содержит компьютер общего назначения, например персональный компьютер, то клиент может включать в себя сервер 204 распознавания. Таким же образом, если необходимо, Web-сервер 202 и сервер 204 распознавания могут быть включены в состав одной машины.
Доступ к сетевому серверу 202 через телефон 80 включает в себя соединение телефона 80 с проводной или беспроводной телефонной сетью 208, которое, в свою очередь, соединяет телефон 80 со шлюзом 210 третьей стороны. Шлюз 210 соединяет телефон 80 с телефонным речевым браузером 212. Телефонный речевой браузер 212 включает в себя медиа-сервер 214, который обеспечивает телефонный интерфейс и речевой браузер 216. Как и клиент 100, телефонный речевой браузер 212 принимает страницы/скрипты HTML или тому подобное от Web-сервера 202. В одном варианте выполнения, страницы/скрипты HTML имеют форму, аналогичную страницам/скриптам HTML, предоставленным клиенту 100. Таким образом, сетевому серверу 202 нет необходимости раздельно поддерживать клиента 100 и телефон 80, или даже раздельно поддерживать клиентов стандартного GUI. Вместо этого может использоваться общий язык разметки. В дополнение, как и в случае клиента 100, при распознавании речи из звуковых сигналов, передаваемых телефоном 80, эти сигналы передаются из речевого браузера 216 в сервер 204 распознавания либо через сеть 205, либо через выделенную линию 207, например, с помощью TCP/IP (протокола управления передачей/Интернет-протокола). Сетевой сервер 202, сервер 204 распознавания и телефонный речевой браузер 212 могут быть воплощены в любой соответствующей вычислительной среде, такой как настольный компьютер общего назначения, показанный на Фиг.5.
При использовании инструментальных средств разработки речевых приложений, включенных в VoiceXML, можно расширить функциональные возможности страницы разметки VoiceXML. Хотя алгоритм интерпретации формы VoiceXML разработан для взаимодействующих приложений с речевым ответом, использование других инструментальных средств в VoiceXML обеспечивает более дружественное к пользователю и устойчивое к сбоям приложение. Для того чтобы встроить инструментальные средства разработки речевого приложения в VoiceXML, обеспечивается взаимодействие между командами VoiceXML и командами инструментального средства разработки.
Фиг.7 иллюстрирует способ 300 согласно варианту выполнения настоящего изобретения. Способ начинается с этапа 302, в котором инициализируют пошаговый алгоритм VoiceXML. Например, алгоритм может быть инициализирован при объявлении показа формы или меню в странице разметки VoiceXML с помощью тэга <форма> (<forma>) или тэга <меню> (<menu>), соответственно. После того, как алгоритм инициализирован, этапы на странице VoiceXML будут непрерывно повторяться в цикле, пока не будут удовлетворены определенные условия. После этапа 302 способ переходит к этапу 304, на котором инициализируют событие распознавания SALT, имеющее множество ассоциированных грамматик. Это событие распознавания может быть инициировано с помощью тэга прослушивания. Вместе со множеством грамматик используется множество грамматических тэгов для инициирования использования каждой из этих грамматик. Например, одна грамматика может быть использована для распознавания города, а другая грамматика может быть использована для распознания штата в приложении, запрашивающем адрес у пользователя. Альтернативно, одна грамматика может распознавать категории классы, а последующие грамматики могу распознавать подкатегории, ассоциированные с этими категориями.
Когда произнесение речи и/или входной сигнал DTMF подан пользователем, способ переходит к этапу 306, на котором результат распознавания ассоциируют по меньшей мере с одной из множества грамматик. Например, наличие страницы приглашения, которая распознает несколько категорий (например, спорт, погода, биржевые сводки, фильмы, трафик) и несколько подкатегорий (например, баскетбол, бейсбол, футбол, хоккей для категории “спорт”), позволяет пользователю ввести любую из этих категорий либо одну из подкатегорий, подлежащих распознаванию и ассоциированию с конкретной грамматикой. После ассоциирования с конкретной грамматикой введенные пользователем данные могут быть проанализированы и использованы речевым приложением. Например, если пользователь произносит "хоккей", то результаты игр и основные моменты из событий хоккейного дня могут быть воспроизведены пользователю.
VoiceXML только обеспечивает единую грамматику при распознавании. Тем самым пользователь должен перемещаться по множеству категорий и подкатегорий для получения релевантной информации или должна использоваться относительно большая грамматика. С помощью тэга <прослушивание> (<disten>) “SALT”, встроенного в команды VoiceXML, речевые входные сигналы могут быть ассоциированы с конкретной грамматикой и/или ассоциированы с конкретным полем, например, с помощью элемента <связывание> (<bind>).
Фиг.8 иллюстрирует блок-схему результата 320 распознавания и множество грамматик 321-324. Когда используется способ 300, результат 320 распознавания может быть ассоциирован с каждой из грамматик 321-324 и/или конкретным вариантом выбора или заголовком в каждой из грамматик 321 и 324.
Фиг.9 иллюстрирует способ 340 согласно другому варианту выполнения настоящего изобретения. На этапе 342 объявляют первое поле VoiceXML и второе поле VoiceXML. Когда объявляют поле VoiceXML, создается экземпляр класса алгоритма интерпретации формы, который будет продолжаться в цикле по выполняемым командам VoiceXML в форме до тех пор, пока не заполнятся первое и второе поля VoiceXML. После объявления полей на этапе 344 инициализируется событие распознавания SALT для получения речевого сигнала от пользователя. Это событие распознавания может быть инициировано, например, с помощью тэга прослушивания, который включает в себя один или более грамматических элементов. Речевой входной сигнал от пользователя может включать в себя множество частей из одного высказывания. На этапе 346 первое поле VoiceXML заполняется первой частью речевого входного сигнала, а второе поле VoiceXML заполняется второй частью речевого входного сигнала. Например, пользователь может пожелать ввести город отправления и город прибытия для информации о полете или может ввести в тип кухни и местоположение для информации о ресторанах.
Фиг.10 иллюстрирует блок-схему полей и речевых входных данных. Поле 350 и поле 352 объявляются модулем VoiceXML, а результат распознавания 360 распознается на основании речевых входных данных от пользователя. Этот результат 360 включает в себя первую часть 362 и вторую часть 364. С помощью результата 360 первая часть заполняется в поле 350, тогда как вторая часть 364 заполняется в поле 352. В результате автор способен программировать речевое приложение для распознавания множества входных данных от пользователя и располагать их в соответствующих полях на основании результата распознавания.
Фиг.11 иллюстрирует другой способ 380 согласно варианту выполнения настоящего изобретения. Способ 380 начинается с этапа 382, в котором создаются страница разметки с исполняемыми командами VoiceXML. На этапе 384 объявляют первое поле и второе поле. После объявления первого поля и второго поля от пользователя принимается ввод как речи, так и входных данных DTMF. Например, пользователь может произнести: «Пожалуйста, переведите [входные данные DTMF] сумму в долларах с моего чекового счета на мой сберегательный счет». В этом случае вместо устного произнесения суммы перевода, пользователь набирает сумму с помощью клавишной панели. На этапе 388 речевые входные данные распознают с помощью “SALT” и затем ассоциируют с первым полем, а входные данные DTMF распознают с помощью “SALT” и затем ассоциируют со вторым полем. Например, сумма, введенная в качестве входных данных DTMF, может быть введена в поле суммы, а речевые входные данные могут быть ассоциированы с переводом с чекового счета на сберегательный.
Фиг.12 иллюстрирует другой способ 400 согласно варианту выполнения настоящего изобретения. С помощью способа 400 переменная времени выполнения может использоваться для предоставления данных пользователю без необходимости представления формы удаленному серверу или иного доступа к последующей странице разметки. На этапе 402 создают страницу разметки с исполняемыми командами VoiceXML. На этапе 404 результат распознавания речи получают из речевых входных данных пользователя. На этапе 406 по меньшей мере часть результата располагают в поле. Как только результат расположен в поле, способ переходит к этапу 408, на котором страницу разметки используют для предоставления поля пользователю. Например, этап 408 может быть использован для подтверждения одного или более полей, введенных пользователем. Более того, поле может быть использовано как часть приглашения, которая воспроизводится пользователю. При использовании тэга SALT <приглашение> (<promt>) переменная времени выполнения может быть предоставлена без пути к удаленному серверу и от него. В этой ситуации вычислительная мощность клиента используется без необходимости в соединении с удаленным сервером.
Фиг.13 иллюстрирует способ 420 согласно другому варианту выполнения настоящего изобретения. Способ начинается с этапа 422, на котором создают страницу разметки с исполняемыми командами VoiceXML. Далее на этапе 424 от пользователя получают речевые входные данные. На этапе 426 с помощью речевого входного сигнала выполняется соединение с Web-сервером и выполняется событие передачи сообщения. Например, Web-сервер может содержать значения, воспроизведение которых было бы желательно для пользователя. На этапе 428 пользователю воспроизводят результат, который основан на информации, принятой из события передачи сообщения.
Фиг.14 иллюстрирует страницу разметки, которая воспроизводит пользователю почтовый индекс на основании города ввода. Страница 450 разметки включает в себя исполняемые команды VoiceXML, а также тэги SALT, описанные ниже. Заголовок 452 включает в себя схемы, которые относятся к VoiceXML и SALT и дополнительно устанавливают "v:" в качестве ограничителя для тэга VoiceXML и "s:" в качестве тэга SALT. Команда 454 объявляет форму в VoiceXML, которая начинает выполнять алгоритм интерпретации формы. Таким образом, алгоритм интерпретации формы будет исполнять команды в форме (которая включает в себя команды между тэгом <v:form> и тэгом </v:form>), пока не заполнятся значения в форме. Команда 456 объявляет переменную «ответ» (“answer”) и присваивает нулевое значения этой переменной. Алгоритм интерпретации формы затем работает по шагам для того, чтобы выдать пользователю приглашение ввести город и штат, чтобы можно было найти почтовый индекс.
Команда 458 объявляет поле, названное «город» (“city”). В VoiceXML обработчик по умолчанию для этого поля будет заполнять данное поле при событии распознавания. Тэг 460 приглашения (который может быть SALT или VoiceXML) предлагает пользователю назвать город, для которого ищется почтовый индекс. Тэг 462 прослушивания SALT инициирует событие распознавания, имеющее ассоциированную грамматику 464, которая распознает названия городов. Другая ассоциированная грамматика 465 распознает названия штатов в случае, если пользователь желает ввести название штата во время произнесения. Если пользователь вводит речевые входные данные, которые распознаются как город, то событие распознавания заполняет поле «город». Если пользователь вводит речевые входные данные, которые распознаются как штат, то событие распознавания заполняет поле «штат».
Алгоритм интерпретации формы переходит к команде 466, если поле города заполнено. Команда 466 объявляет поле, названное «штат» (“state”), которое будет заполняться событием распознавания, которое ассоциировано с грамматикой штата, что происходит во время события распознавания, инициализированного тэгом 462 прослушивания. Приглашение 468 предлагает пользователю произнести штат, а тэг 470 прослушивания инициализирует событие распознавания грамматиками 472 и 474. Грамматика 472 распознает города, тогда как грамматика 474 распознает штаты. С помощью грамматики 472 пользователь может выбрать другой город, который будет распознан и помещен в поле города. Альтернативно, пользователь может ввести штат, который ассоциирован с грамматикой 474 штата и помещается в поле штата.
Команда 476 является условной командой, которая исполняет команды между тэгами <v:filled> и </v:filled>, если переменные «город» и «штат» действительно заполнены. Тэг 478 прослушивания SALT инициализирует событие отправки сообщения, которое возвратит почтовый индекс на основании города, введенного пользователем. Тэг 478 использовал объект "smex", который сообщается с внешними компонентами. Тэг 480 параметра SALT идентифицирует удаленный сервер, к которому будет осуществлен доступ для извлечения почтового индекса на основании города. Тэг 481 параметра посылает поля города и штата удаленному серверу. Тэг 482 связывания SALT связывает почтовый индекс, принятый от удаленного сервера, с переменной “ответ”, которая была объявлена командой 456. Тэг 484 приглашения SALT обеспечивает выходные данные, которые включают в себя как город, введенный пользователем, так и ответ, определенный из события передачи сообщения.
Хотя настоящее изобретение описано со ссылками на частные варианты его выполнения, специалисты данной области техники поймут, что изменения могут быть сделаны в форме и деталях без отклонения от сущности и объема изобретения.
Изобретение относится к системе и способу для комбинирования VoiceXML с инструментальным средством разработки речевого приложения, такого как SALT. Техническим результатом является расширение функциональных возможностей за счет обеспечения возможности управления диалоговым потоком. Машиночитаемый носитель содержит модуль VoiceXML, который включает в себя команды VoiceXML и модуль SALT, который включает в себя языковые тэги речевых приложений для исполнения команд, ассоциированных с модулем VoiceXML. Способ обеспечивает интерактивный пользовательский интерфейс. 3 н. и 32 з.п. ф-лы, 14 ил.
1. Машиночитаемый носитель, имеющий команды, которые при их исполнении на компьютере предписывают компьютеру обрабатывать информацию, причем команды содержат:
модуль расширенного языка разметки для речи (VoiceXML), выполняющий алгоритм интерпретации формы, при этом модуль VoiceXML включает в себя команды, исполняемые в определенном порядке на основании алгоритма выполнения, чтобы предписать компьютеру установить интерактивный диалог для взаимодействия с пользователем, причем эти команды обрабатывают диалоговые события, ассоциированные с по меньшей мере одним из событий распознавания, приглашения и отправки сообщения; и модуль спецификации языковых тэгов для речевых приложений (SALT), имеющий языковые тэги речевых приложений, встроенные в модуль VoiceXML, при этом модуль SALT включает в себя по меньшей мере один объект, имеющий временной триггер для инициализации операции, ассоциированной с упомянутыми командами модуля VoiceXML, во время упомянутого взаимодействия, причем данная операция, инициализируемая модулем SALT, содержит по меньшей мере одно, но не все из событий распознавания, приглашения и отправки сообщения, при этом упомянутый алгоритм выполнения автоматически вызывает упомянутый временной триггер для инициализации упомянутой операции, когда встречается упомянутый по меньшей мере один объект.
2. Машиночитаемый носитель по п.1, в котором временной триггер инициализирует событие распознавания речи.
3. Машиночитаемый носитель по п.1, в котором временной триггер инициализирует событие распознавания двухтонального многочастотного набора телефонного номера (DTMF).
4. Машиночитаемый носитель по п.1, в котором временной триггер инициализирует событие отправки сообщения.
5. Машиночитаемый носитель по п.1, в котором модуль VoiceXML объявляет первое поле и второе поле, при этом модуль SALT инициализирует событие распознавания для получения речевых входных данных от пользователя и заполняет первое поле первой частью речевых входных данных и заполняет второе поле второй частью речевых входных данных.
6. Машиночитаемый носитель по п.5, в котором с первым полем ассоциирована первая грамматика, а со вторым полем ассоциирована вторая грамматика.
7. Машиночитаемый носитель по п.1, в котором модуль SALT инициализирует событие распознавания, имеющее множество грамматик, для получения результата распознавания и ассоциирует результат распознавания с по меньшей мере одной из упомянутого множества грамматик.
8. Машиночитаемый носитель по п.1, в котором модуль VoiceXML объявляет первое поле и второе поле, при этом модуль SALT инициализирует событие распознавания для получения входных данных, имеющих речевые входные данные и входные данные DTMF от пользователя, и ассоциирует речевые входные данные с первым полем, а входные данные DTMF - со вторым полем.
9. Машиночитаемый носитель по п.1, в котором модуль VoiceXML объявляет поле, при этом модуль SALT инициализирует событие распознавания для получения результата распознавания от пользователя для заполнения этого поля и выполняет приглашение для воспроизведения данного поля пользователю.
10. Машиночитаемый носитель по п.1, в котором модуль SALT выполняет событие отправки сообщения для соединения с удаленным приложением.
11. Машиночитаемый носитель по п.10, в котором модуль SALT принимает результат на основании события отправки сообщения и воспроизводит этот результат пользователю.
12. Машиночитаемый носитель по п.1, в котором алгоритм выполнения автоматически переходит к последующей команде после завершения упомянутой операции.
13. Машиночитаемый носитель по п.1, в котором триггер представляет собой одно из индикации ошибки, исключения, распознавания и нераспознавания.
14. Машиночитаемый носитель по п.1, в котором триггер представляет собой завершение команды воспроизведения.
15. Машиночитаемый носитель по п.1, в котором триггер представляет собой прием сообщения.
16. Машиночитаемый носитель, имеющий исполняемую компьютером страницу разметки, которая при исполнении предписывает компьютеру обрабатывать информацию, причем страница разметки содержит:
модуль расширяемого языка для речи (VoiceXML), имеющий исполняемые команды VoiceXML, которые устанавливают интерактивный диалог для взаимодействия между компьютером и пользователем, при этом модулем VoiceXML объявляются первое поле VoiceXML и второе поле VoiceXML и обеспечивается реализация алгоритма интерпретации формы для заполнения первого и второго полей VoiceXML, причем данный алгоритм интерпретации формы управляет ходом диалога с пользователем; и модуль спецификации языковых тэгов для речевых приложений (SALT), имеющий языковые тэги речевых приложений для исполнения команд, ассоциированных с модулем VoiceXML, во время упомянутого взаимодействия, при этом модуль SALT инициализирует событие распознавания для получения речевых входных данных от пользователя и заполняет первое поле VoiceXML первой частью речевых входных данных и заполняет второе поле VoiceXML второй частью речевых входных данных.
17. Машиночитаемый носитель по п.16, в котором алгоритм интерпретации формы постоянно выполняется в цикле по упомянутым исполняемым командам VoiceXML до тех пор, пока не заполнятся первое и второе поля VoiceXML.
18. Машиночитаемый носитель по п.17, в котором с первым полем VoiceXML ассоциирована первая грамматика, а со вторым полем VoiceXML ассоциирована вторая грамматика.
19. Машиночитаемый носитель по п.16, в котором модуль SALT инициализирует событие распознавания, имеющее множество грамматик, для получения результата распознавания и ассоциирует результат распознавания с по меньшей мере одной из упомянутого множества грамматик.
20. Машиночитаемый носитель по п.16, в котором модуль SALT инициализирует событие распознавания для получения входных данных, имеющих речевые входные данные и входные данные двухтонального многочастотного набора телефонного номера (DTMF) от пользователя, и ассоциирует речевые входные данные с первым полем, а входные данные DTMF - со вторым полем.
21. Машиночитаемый носитель по п.16, в котором модуль VoiceXML объявляет поле, при этом модуль SALT инициализирует событие распознавания для получения результата распознавания от пользователя для заполнения этого поля и выполняет приглашение в странице разметки для воспроизведения данного поля пользователю.
22. Машиночитаемый носитель по п.16, в котором модуль SALT выполняет событие отправки сообщения для соединения с удаленным приложением.
23. Машиночитаемый носитель по п.22, в котором модуль SALT принимает результат на основании события отправки сообщения и воспроизводит этот результат пользователю.
24. Способ обеспечения интерактивного пользовательского интерфейса, содержащий этапы, на которых
создают пошаговый диалог, исполняющий команды в определенном порядке, причем упомянутые команды включают в себя объекты для обработки событий, ассоциированных с по меньшей мере одним из распознавания, приглашения и отправки сообщения; и
выполняют объектно-ориентированную операцию, когда встречается объект, ассоциированный с упомянутыми командами, для обеспечения по меньшей мере одного, но не всех из событий в диалоге, ассоциированных с распознаванием, приглашением и отправкой сообщения.
25. Способ по п.24, в котором объектно-ориентированная операция является событием распознавания речи.
26. Способ по п.24, в котором объектно-ориентированная операция является событием распознавания двухтонального многочастотного набора телефонного номера (DTMF).
27. Способ по п.24, в котором пошаговый диалог воплощают в модуле расширяемого языка разметки для речи (VoiceXML).
28. Способ по п.24, в котором объектно-ориентированную операцию воплощают в модуле спецификации языковых тэгов речевых приложений (SALT).
29. Способ по п.24, в котором при создании пошагового диалога объявляют первое поле и второе поле, а выполнение объектно-ориентированной операции включает в себя событие распознавания, при котором получают речевые входные данные от пользователя и заполняют первое поле первой частью речевых входных данных и заполняют второе поле второй частью речевых входных данных.
30. Способ по п.29, в котором выполнение упомянутой операции дополнительно инициирует первую грамматику, ассоциированную с первым полем, и вторую грамматику, ассоциированную со вторым полем.
31. Способ по п.24, в котором упомянутая операция инициализирует событие распознавания, имеющее множество грамматик, для получения результата распознавания и ассоциирует результат распознавания с по меньшей мере одной из упомянутого множества грамматик.
32. Способ по п.24, в котором при создании пошагового диалога объявляют первое поле и второе поле, при этом выполнение объектно-ориентированной операции включает в себя инициализацию события распознавания для получения входных данных, имеющих речевые входные данные и входные данные DTMF от пользователя, и ассоциирует речевые входные данные с первым полем, а входные данные DTMF - со вторым полем.
33. Способ по п.24, в котором при создании пошагового диалога объявляют поле, при этом выполнение объектно-ориентированной операции включает в себя инициализацию события распознавания для получения результата распознавания от пользователя для заполнения этого поля и выполнения приглашения для воспроизведения данного поля пользователю.
34. Способ по п.24, в котором упомянутая операция является событием отправки сообщения для соединения с удаленным приложением.
35. Способ по п.34, в котором при упомянутой операции дополнительно принимают результат на основании события отправки сообщения и воспроизводят этот результат пользователю.
НОСИТЕЛЬ ЗАПИСИ, СПОСОБ И УСТРОЙСТВО ДЛЯ ЗАПИСИ ИНФОРМАЦИОННЫХ ФАЙЛОВ И УСТРОЙСТВО ДЛЯ ВОСПРОИЗВЕДЕНИЯ ИНФОРМАЦИИ С ТАКОГО НОСИТЕЛЯ ЗАПИСИ | 1991 |
|
RU2073913C1 |
СИСТЕМА И СПОСОБ ЭФФЕКТИВНОГО ИСПОЛЬЗОВАНИЯ КЭШ-ПАМЯТИ В РАСПРЕДЕЛЕННОЙ ФАЙЛОВОЙ СИСТЕМЕ | 1994 |
|
RU2170454C2 |
Топчак-трактор для канатной вспашки | 1923 |
|
SU2002A1 |
EP 0757313 A1, 05.02.1997. |
Авторы
Даты
2010-01-20—Публикация
2004-07-02—Подача