CN1258137C - 控制用户和设备之间通信的装置、方法及其所用于的系统 - Google Patents

控制用户和设备之间通信的装置、方法及其所用于的系统 Download PDF

Info

Publication number
CN1258137C
CN1258137C CNB018168906A CN01816890A CN1258137C CN 1258137 C CN1258137 C CN 1258137C CN B018168906 A CNB018168906 A CN B018168906A CN 01816890 A CN01816890 A CN 01816890A CN 1258137 C CN1258137 C CN 1258137C
Authority
CN
China
Prior art keywords
user
incident
task
dialogue
event
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CNB018168906A
Other languages
English (en)
Other versions
CN1484789A (zh
Inventor
尤威·H·约斯特
邵远
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Publication of CN1484789A publication Critical patent/CN1484789A/zh
Application granted granted Critical
Publication of CN1258137C publication Critical patent/CN1258137C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1204Improving or facilitating administration, e.g. print management resulting in reduced user or operator actions, e.g. presetting, automatic actions, using hardware token storing data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1207Improving or facilitating administration, e.g. print management resulting in the user being informed about print result after a job submission
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/121Facilitating exception or error detection and recovery, e.g. fault, media or consumables depleted
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1253Configuration of print job parameters, e.g. using UI at the client
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1259Print job monitoring, e.g. job status
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1253Configuration of print job parameters, e.g. using UI at the client
    • G06F3/1255Settings incompatibility, e.g. constraints, user requirements vs. device capabilities

Abstract

一种控制装置,用于控制用户和至少一个处理器控制的设备之间的通信,该设备能执行至少一个任务,该控制装置包括:对话执行装置,用于执行与用户的对话以确定用户希望设备执行的任务;设备指示装置,用于指示设备执行所确定的任务;事件接收装置,用于接收涉及针对设备而出现的事件的事件信息;任务确定装置,用于在事件接收装置接收到事件信息时确定用户是否涉入另一个任务;中断确定装置,用于识别与接收到其事件信息的事件和所述另一个任务中的至少一个相关的中断状态信息;中断控制装置,用于根据识别的中断状态信息确定是否可以中断用户;和通知装置,用于当中断控制装置确定可以中断与用户的对话时,通知用户所接收的事件信息。

Description

控制用户和设备之间通信的装置、方法及其所用于的系统
技术领域
本发明涉及控制装置,尤其涉及这样的控制装置,该装置允许与用户进行通信,使得用户能够控制若干不同处理或任务的执行。
背景技术
人们对这样的系统的兴趣越来越大,即允许用户通过与控制装置进行口语对话从而控制任务或处理的执行的系统。这种系统的例子包括预订例如飞机票的电话或在线订票系统,以及诸如EP-A-0911808和EP-A-0854418中所描述的办公或家用设备系统,该系统允许用户通过语音命令控制诸如打印机或VCR的办公用品或家用设备的操作。
在这种系统中,需要通知用户发生了影响由用户指示的任务或处理的执行的事件,例如有打印任务的情况下,出现阻止打印机执行打印任务的纸张堵塞。尤其当用户正在指示其它任务的执行时,通知用户出现这种事件的结果将是破坏性的。
发明内容
在一个方面,本发明提供控制装置,该控制装置用于控制是否用涉及用户指示的任务的信息中断该用户。
在一个方面,本发明提供控制装置,该控制装置允许用户通过与控制装置进行对话来控制处理或任务的执行,其中控制装置被构造成根据当前具体的处理或任务,决定是否可以用针对用户的、涉及另一个处理或任务的信息来中断与控制当前具体处理或任务的用户的当前对话。
在实施例中,控制装置可以被构造成控制各件设备(例如各件办公或家用设备),并且可以被构造成根据由用户指示的当前任务,控制是否从一件设备向用户通知消息,该消息指示该设备不能执行先前指示的任务。例如,控制装置可以被构造成确定用户的当前活动是否可以被来自打印机(涉及先前指示的打印任务)的消息中断,该消息通知用户该打印机例如离线、缺纸或纸张堵塞。
实施本发明的控制装置允许事件(例如差错消息)处理的定时具有灵活性,使得用户在某些条件下仅在指示或执行当前任务时被中断。这使得控制装置的使用对用户更加友好,并且还应当使得对用户活动的中断保持最少。
本发明在用于下述情况时尤其有利,其中在用户和控制装置之间控制任务或处理的执行的对话是口语对话,因为口语对话必须是定时顺序事件,并且通常不能同时进行2个口语对话。在下述情况中本发明也是有利的,其中用户和控制装置之间的对话例如部分是口语的、部分是可视的,其中用户发出口头指令并且控制装置向用户显示可视消息,并且其中用户可以在与用户的口语对话中把口头和手动(例如键盘或鼠标点击)命令组合起来。在下述情况下本发明也是有用的,其中控制装置和用户之间的对话是非口头的,也就是说,用户使用可手动操作的用户接口(例如鼠标或键盘)输入命令,并且在显示屏幕上向用户显示消息,尤其是对于这样的情况,其中显示屏幕已经限定为固定内容(real estate),而不受控制地向用户显示差错消息会不适当地扰乱显示屏幕。
控制装置可以被设计成能够由应用开发者使用标记语言来配置。这种方式特别有利,因为标记语言被专门设计成利于向用户呈现信息。尽管标记是过程性的,然而提供给用户的数据始终与标记相互混杂,并且应用开发者不必考虑怎样存储、读取记录,也不必考虑怎样寻址各个字段。向应用开发者提供所有数据,并且应用开发者根据需要把标记语言合并到数据中。这使得标记语言非常易于学习和应用。标记文档也易于理解和修改,并且具有极低的出错风险。
在一个方面,本发明提供具有增加功能的标记语言,所述功能允许或不允许用户执行的任务被涉及事件的信息所中断,从而使任务受特定事件和执行的特定任务的控制或限定。
在实施例中,本发明对标记语言提供扩展,这种扩展能够允许利用这种增加的功能与用户进行口语对话。标记语言可以是VoiceXML,其中VoiceXML是基于环球网联盟行业标准的可扩展标记语言(XML),并且向语音和电话资源提供高级编程接口。VoiceXML得到由AT&T、IBM、Lucent Technologies和Motorola资助的VoiceXML论坛和W3C的VoiceXML工作组的支持。VoiceXML 1.0版本的规范可以在http://www.voicexml.org和http://www.w3.org/TR/2000/NOTE-voicexml-20000505上找到。
本发明的实施例提供了控制装置,所述控制装置被构造成与用户进行对话(例如口头对话),从而允许用户控制处理或操作,其中控制装置被构造成向用户提供与用户指示的处理或任务相关的事件的详细信息。例如,如果控制装置被构造成允许用户控制一或多件办公设备的操作,控制装置可以被构造成不仅向用户提供已经出现的事件(例如对于打印机而言的纸张堵塞、缺纸或离线事件)的详细信息,而且向用户提供具体打印机和出现事件的打印任务的详细信息,使得用户能够确切知道哪个方面产生了该事件。
本发明提供了一种控制装置,用于控制用户和至少一个处理器控制的设备之间的通信,其中该设备能执行至少一个任务,该控制装置包括:对话执行装置,用于执行与用户的对话以确定用户希望设备执行的任务;设备指示装置,用于指示设备执行所确定的任务;事件接收装置,用于接收涉及针对设备而出现的事件的事件信息;任务确定装置,用于在事件接收装置接收到事件信息时确定用户是否涉入另一个任务;中断确定装置,用于识别与接收到其事件信息的事件和所述另一个任务中的至少一个相关的中断状态信息;中断控制装置,用于根据识别的中断状态信息确定是否可以中断用户;和通知装置,用于当中断控制装置确定可以中断与用户的对话时,通知用户所接收的事件信息。
本发明还提供一种控制装置,用于控制与涉及至少一个任务的执行的用户的通信,控制装置包括:对话文件存储器,对话文件存储器包含对话文件或文档,对话文件包含涉及用户可以指示的任务的任务单元,涉及被提供给用户的提示的提示单元,定义事件的事件单元,和定义任务单元的中断状态信息的中断状态单元;用于使用对话存储器中的对话文件控制与用户的对话的对话控制装置;用于接收来自用户的、响应提示单元的信息的信息接收装置;用于根据接收的信息处理任务单元的任务单元处理装置;用于接收对话文件中事件单元限定的事件的事件信息的事件信息接收装置;用于根据任务单元的中断状态单元确定接收的事件是否可以中断用户的确定装置;以及用于当任务单元的中断状态单元指示事件可以中断用户时,使用户得到该事件的通知的通知装置。
本发明还提供一种控制装置,用于控制用户和至少一个处理器控制的设备之间的通信,其中该设备能执行至少一个任务,该控制装置包括:对话执行装置,用于执行与用户的对话以确定用户希望设备执行的任务;设备指示装置,用于指示设备执行所确定的任务;事件接收装置,用于接收涉及设备上已经出现的事件的事件数据;事件详细信息提取装置,用于提取事件的事件数据详细信息以便提供给用户;和通知装置,用于向用户通知所提取的事件详细信息。
本发明还提供一种控制装置,用于控制与涉及至少一个任务的执行的用户的通信,该控制装置包括:对话文件存储器,对话文件存储器包含对话文件或文档,对话文件包含涉及用户可以指示的任务的任务单元,涉及被提供给用户的提示的提示单元,和定义事件的事件单元;用于使用对话存储器中的对话文件控制与用户的对话的对话控制装置;用于接收来自用户的、响应提示单元的信息的信息接收装置;用于根据接收的信息处理任务单元的任务单元处理装置;用于接收对话文件中事件单元限定的事件的事件对象的事件对象接收装置;用于从事件对象提取事件的详细信息的详细信息提取装置;以及用于为用户提供所提取的事件详细信息的提供装置。
本发明还提供一种控制装置,用于控制用户和至少一个处理器控制的设备之间的通信,其中该设备能执行至少一个任务,该控制装置包括:对话执行装置,用于执行与用户的对话以确定用户希望设备执行的任务;设备指示装置,用于指示设备执行所确定的任务;事件接收装置,用于接收涉及针对设备发生的事件的事件信息;事件状态确定装置,用于确定接收事件的状态;和中断装置,如果接收事件具有预定状态,中断装置中断或终止与用户的对话。
本发明还提供一种系统,包括如上所述的控制装置,和多个处理器控制的设备,所述处理器控制的设备适于根据从控制装置接收的设备可实现指令执行任务,并且为控制装置提供涉及任务的执行的事件信息。
本发明还提供一种在包括处理器的计算机系统中控制用户和至少一个处理器控制的设备之间的通信的方法,所述设备能够执行至少一个任务,该方法包括的步骤有:执行与用户的对话以确定用户希望设备执行的任务;指示设备执行所确定的任务;接收涉及针对设备而出现的事件的事件信息;在事件接收装置接收到事件信息时确定用户是否涉入另一个任务;识别与事件和所述另一个任务中的至少一个相关的中断状态信息;根据识别的中断状态信息确定是否可以中断用户;和当确定可以中断与用户的对话时,通知用户所接收的事件信息。
本发明还提供一种操作控制装置以控制与涉及至少一个任务的执行的用户的通信的方法,控制装置包括处理器和对话文件存储器,对话文件存储器包含VoiceXML对话文件或文档,对话文件包含涉及用户可以指示的任务的任务单元,涉及被提供给用户的提示的提示单元,定义事件的事件单元,和定义任务单元的中断状态信息的中断状态单元,该方法包括的步骤有:使用对话存储器中的对话文件控制与用户的对话;接收来自用户的、响应提示单元的信息;根据接收的信息处理任务单元;接收对话文件中事件单元限定的事件的事件信息;根据任务单元的中断状态单元确定接收的事件是否可以中断用户;和当任务单元的中断状态单元指示事件可以中断用户时,使用户得到该事件的通知。
本发明还提供一种操作处理器以控制用户和至少一个处理器控制的设备之间的通信的方法,所述设备能够执行至少一个任务,该方法包括使处理器执行以下步骤:执行与用户的对话以确定用户希望设备执行的任务;指示设备执行所确定的任务;接收涉及设备上已经出现的事件的事件数据;提取事件的事件数据详细信息以便提供给用户;和向用户通知所提取的事件详细信息。
本发明还提供一种操作处理器以控制与涉及至少一个任务的执行的用户的通信的方法,该方法包括使处理器执行以下步骤:访问包含VoiceXML对话文件或文档的对话文件存储器,对话文件包含涉及用户可以指示的任务的任务单元,涉及提供给用户的提示的提示单元,和定义事件的事件单元;使用对话存储器中的对话文件控制与用户的对话;接收来自用户的、响应提示单元的信息;根据接收的信息处理任务单元;接收对话文件中事件单元限定的事件的事件对象;从事件对象提取事件的详细信息;和为用户提供所提取的事件详细信息。
本发明还提供一种操作处理器以控制用户和至少一个处理器控制的设备之间的通信的方法,所述设备能够执行至少一个任务,该方法包括使处理器执行以下步骤:执行与用户的对话以确定用户希望设备执行的任务;指示设备执行所确定的任务;接收涉及针对设备发生的事件的事件信息;确定接收事件的状态;和如果接收事件具有预定状态,中断或终止与用户的对话。
附图说明
现在参照附图举例说明本发明的实施例,其中:
图1示出实施本发明的系统的模块示意图;
图2示出适于形成图1示出的系统的对话控制设备的计算机系统的模块图;
图3的模块图图解了图1示出的系统的设备的功能部件;
图4示出了图1的对话控制设备的功能模块图;
图5的流程图图解了与用户对话期间对话控制设备执行的步骤;
图6的流程图图解了对话控制设备响应从图1示出的一个设备接收的事件而执行的步骤;
图7的流程图更详细地图解了与用户的部分对话期间对话控制设备执行的步骤;
图8的流程图图解了对话控制设备在确定哪个表项可中断并且哪个表项不可中断时执行的步骤;
图9的流程图图解了事件侦听器的建立;
图10的流程图图解了对话控制设备在接收事件时执行的步骤;
图11的流程图图解了表项的中断权限的设置;
图12的流程图图解了对话控制设备在确定表项是否可被事件中断时执行的步骤;
图13的流程图图解了事件处理;而
图14的流程图图解了在处理事件期间为允许向用户提供涉及该事件的详细信息而执行的步骤。
具体实施方式
现在参照附图,图1通过模块图示出了系统100,系统100包括通过网络N连接到若干处理器控制的机器或设备D1-DN的对话控制设备1。
在这个实施例中,设备D1到DN具有出现在办公和/或家用环境中的电气设备的形式,并且能够适于在网络N上进行通信和/或控制。办公设备的例子是例如影印机、打印机、传真机、数字摄像机和能够复印、打印和传真的多功能机,而家用设备的例子是录像机、电视、微波炉、数字摄像机、照明设备和加热系统等等。
设备D1到DN可以全部位于相同的建筑物中或位于不同建筑物中。网络N可以是局域网(LAN)、广域网(WAN)、内部网或互联网。应当理解,这里使用的术语″网络″不必暗示任何已知或标准网络系统或协议的使用,并且网络N可以是任何允许与位于同一建筑物的不同部分或不同建筑物中的设备或机器通信的结构。
图2示出了可以用于提供对话控制设备的计算机系统1a的模块图。计算机系统可以是例如个人计算机或工作站,并且如图所示,包括具有相关存储器(ROM和/或RAM)3的中央处理单元(CPU)2,硬盘驱动器5,用于接收可移动存储介质或盘片(RD)7的移动盘驱动器(RDD)6,用于向用户显示信息的显示器4,手动用户接口8(比如键盘和/或诸如鼠标的点击设备),允许通过网络N与设备D1到DN通信的通信接口10,以及接收用户语音和向用户发送音频声的音频用户接口11。
图3示出设备D1到DN的模块示意图。处理器控制的设备包括设备操作系统模块20,该模块通常包含CPU和诸如ROM和/或RAM的存储器。操作系统模块20通过接口21与对话控制设备通信,以便允许设备根据从用户接收的指令从对话控制设备1接收设备可执行的指令,并且向对话控制设备发送涉及出现在设备上的事件的信息。设备操作系统模块20还被连接到设备控制电路22,其中在操作系统模块20控制下,设备控制电路22导致用户所需的功能被执行。设备控制电路22对应于同类型传统设备中能够执行相同功能(例如打印机的打印功能或影印机的影印功能)的部分,并且在这里不详细描述。
如图所示,设备操作系统模块20还与控制面板22通信,其中控制面板22可以包含向用户显示消息和/或信息的显示器,和允许用户手工输入指令的控制按钮。
通常,用于控制设备操作系统模块20操作的程序指令和/或数据被预先存储在其存储器中。处理器的指令和/或数据也可以作为信号通过接口21提供给设备操作系统模块。
通过程序指令和/或数据配置图2中的计算机系统1a以提供对话控制设备1。用于配置计算机系统1a的程序指令和数据以下述至少一或两种方式被提供给处理器单元2:
1.作为通过网络N提供的信号S;和
2.由活动数据存储介质RD携带。
程序指令和数据将以已知方式存储在硬盘驱动器5和/或存储器3中。
图4的模块图图解了计算机系统1a在被编程以提供对话控制设备1时所提供的功能部件。
如图所示,对话控制设备包括对话管理器30,其中对话管理器30提供总体控制功能,并且协调对话控制设备的其它功能部件的操作。对话管理器30通过其相应接口21和设备接口31与设备D1到DN的设备操作系统20通信,其中对于各个设备D1到DN,设备接口31包含设备对象,设备对象允许发送指令给对应设备并且从该设备接收事件的详细信息。设备对象可以预存在对话控制设备1中,或者当设备D1到DN通过网络N被连接到对话控制设备1时,可以从设备D1到DN的设备操作系统模块20下载。
对话管理器30与自动语音识别引擎32和存储自动语音识别引擎32使用的语法文件的语法文件存储器33通信。可以使用任何已知形式的自动语音识别引擎32。例子是由Nuance,Lernout和Hauspie生产的语音识别引擎,IBM的商标为“ViaVoice”的语音识别引擎,和Dragon Systems Inc的商标为“Dragon Naturally Speaking”的语音识别引擎。本领域的技术人员可以理解,与自动语音识别引擎32的通信是通过诸如微软公司SAPI的标准语音应用程序接口(SAPI)实现的。通常,存储在语法文件存储器33中的语法具有SAPI语法格式。
对话管理器30包含对话解释器34,对话解释器34与提供文档或对话文件的文档服务器35通信,并且解释和执行对话文件以允许与用户进行对话。对话管理器30和对话解释器34均直接地并且通过文本-语音合成器37连接到用户接口36,以允许通过用户接口与用户进行口头通信。用户接口36可以构成适于语音通信的WEB型浏览器接口。
如下所述,当对话控制设备1指示设备D1到DN执行用户指定功能任务或处理时,对话管理器30可以注册事件侦听器38,事件侦听器38与对应的设备对象相关,并且侦听从设备D1到DN接收的事件,例如指示设备由于某些原因不能执行请求的任务或功能的出错消息。如下所述,对话管理器30建立各个事件的catchthread对象。因而,如果存在i个事件,则建立i个catchthread对象。为了简单,图4只示出3个catchthread对象39a、39b和39。
在这个实施例中,对话文件或文档用VoiceXML编写,其中VoiceXML基于环球网联盟行业标准的可扩展标记语言(XML),并且向语音和电话资源提供高级编程接口。VoiceXML得到VoiceXML论坛和W3C的VoiceXML工作组的支持。VoiceXML的1.0版本规范可以在下面的网址找到,http://www.voicexml.org和http://www.w3.org/TR/2000/NOTE-voicexml-20000505。
在VoiceXML规范的术语中,用户接口36构成平台实现,对话管理器30构成VoiceXML解释器上下文,对话解释器34构成VoiceXML解释器,并且文档服务器35自然构成文档服务器。
文档服务器35通过VoiceXML解释器上下文处理来自VoiceXML解释器的请求,并且作为应答,提供由VoiceXML解释器处理的VoiceXML文档(对话文件)。VoiceXML解释器上下文可以与VoiceXML解释器34并行地监视来自用户接口36的用户输入。例如,一个VoiceXML解释器上下文可以始终侦听专家转义短语(escapephrase),这些短语把用户指引到高级个人助理那里,并且另一个VoiceXML解释器上下文可以侦听改变类似音量或文本-语音特征的用户偏好的转义短语。
用户接口36或实现平台与VoiceXML解释器上下文和VoiceXML解释器通信。因而,例如VoiceXML解释器上下文或对话管理器30会负责检测从用户传入的语音,获得初始VoiceXML文档并确认用户的输入,而VoiceXML解释器或对话解释器34会在确认之后进行对话。
由文档服务器35提供的VoiceXML文档主要由被称作对话的顶层单元组成。VoiceXML中存在两种对话,即表格和菜单。
VoiceXML解释器34被安排成缺省在第一对话上开始文档的执行。当执行各个对话时,该对话确定下一个对话。
VoiceXML文档包括含有表项组的表格。表项被分成字段项和控制项,其中字段项定义表格的字段项变量,而控制项帮助控制表格的字段的收集。VoiceXML解释器使用表格解释算法(FIA)解释表格,表格解释算法具有选择和访问表项的主循环,其中在VoiceXML规范中详细描述了表格解释算法。
图5的流程图从顶层图解了与用户对话时由对话控制设备执行的步骤。如上所述,一旦对话管理器30确认了用户输入(该输入表明用户希望输入口语命令以控制连接到网络N的设备D1到DN的功能),则对话管理器30使用字段解释算法访问第一文档或对话文件的第一字段项,以便通过文本-语音合成器37向用户提供提示用户输入语音命令的欢迎消息(图5中的步骤S1)。例如,欢迎消息可以是“欢迎来到xxxx系统。你希望做什么,打印、传真还是复印?”。
对话管理器32则等待用户的响应。当在步骤S2通过用户接口36接收到语音数据时,对话管理器30访问ASR引擎32和与字段项相关的语法文件,并且使ASR引擎32对接收的语音文件执行语音识别处理。对话管理器30接着接收语音识别处理的结果,并且根据结果确定用户希望做什么。
如果用户根据提示说出词语“打印”,则对话管理器30使对话解释器34在步骤S3访问与词语“打印”相关的对话文件或文档,并且根据接收的其它对话文件,对话解释器34会向用户提供请求用户提供进一步信息的提示,例如提示可以请求用户指明所需的打印机(步骤S4)。重复步骤S3和S4,直到在步骤S5对话文件没有指定后续对话文件,这表明对话管理器30已经检索到必要的信息以便通过设备接口31提供设备可解释的指令,使得用户请求的任务或处理被执行。例如,如果用户希望打印具体文档,则对话文件可以使得一旦用户响应对话解释器34提供的提示指明所需的打印机、所需的文档和打印数量,但终止对话的执行。一旦获得必要的信息,则对话管理器会通过设备接口31向指明的设备传送设备可解释的指令,使得所需的任务被执行。这可以通过下述方式实现,即通过把设备任务表示成ECMAscript解释器的脚本环境中的ECMA对象,以允许通过使用VoiceXML脚本单元来控制设备。ECMA是指欧洲计算机制造者协会,而ECMAscript是NetScape的JavaScript和Microsoft的JScript的非专有标准化版本。
在这个例子中,当对话管理器30通过设备接口31指示设备执行任务或处理时,对话管理器30为该设备注册事件侦听器38,以允许检测设备上的事件,该设备影响所请求的任务或处理的执行,例如对于打印机,检测诸如纸张堵塞、缺纸或打印机脱机的事件。事件侦听器是否被注册取决于具体任务和所涉及的设备。
图6的流程图图解了由对话控制设备1执行的处理从设备D1到DN接收的事件的步骤。
因而,在图6的步骤S6中,由事件侦听器38检测事件,其中事件侦听器38随后提醒对话管理器30接收到事件。在步骤S7,对话管理器30识别事件,并且接着在步骤S8确定事件可以中断用户当前执行的哪些任务。
如果对话管理器30在步骤S9确定用户正在执行可中断任务,那么在步骤S10,对话管理器30可以使语音合成器37在步骤S10向用户传递事件消息,通知他或她已经出现的事件。因而例如,如果用户正在运行打印任务,并且打印机已经报告出现纸张堵塞,则对话管理器30会使用户的当前任务被报告打印机出现纸张堵塞的消息中断。可选或另外地,当任务可中断时,对话管理器30可以开始子对话。
然而,如果在步骤S9对话管理器30确定用户正在执行不可中断的任务,则在步骤S11,对话管理器30延迟向用户传递事件消息,直到确定用户可以被中断,例如,当用户完成其当前任务时。这意味着由于并且当接收到事件或出错消息时,用户不是自动被事件或出错消息中断,而是在某些条件下才被中断。
VoiceXML的规范包含捕捉单元,该单元通过将捕捉与文档、对话或表项相关以允许处理事件。然而,为了允许对话管理器30确定用户是否可以被中断,附加功能部件被加到当前的VoiceXML规范中。这些部件允许把任务或字段项定义成可中断或不可中断的。在本实施例中,通过把单元“锁”和“中断”加到当前VoiceXML单元来实现。
在本实施例中,有关任务被锁定或可中断的定义被包含在相应事件的捕捉语句中。
以下图解了部分VoiceXML文档,以说明这种附加单元的加入。应当理解,该VoiceXML文档不是完整的(如省略符所示),并且可以有不止一个捕捉事件。
<vxml version=″1.0″>
<catch event=″error.com.xyz.printer.paperjammed″>
<prompt>
printer paper jam</prompt>
lock=″tasks.fax″
interrupt=″tasks.email,tasks.....
</catch>
<form ID=″tasks″>
<field>
<prompt>What do you want to do print,fax,email...?
</prompt>
.
.
.
<filled>
.
.
.
</filled>
.
.
.
</field>
.
.
.
>field name=″Print″>
.
.
.
</field>
.
.
.
<fiield name=″fax″>
.
.
.
</field>
.
.
.
<field name=″email″>
.
.
.
</field>
.
.
.
</form>
上述从样本VoiceXML文档中提取的例子包括单个捕捉单元,该捕捉单元用于捕捉指示来自打印机“xyz”、指示纸张堵塞的出错消息的事件。如图所示,该捕捉单元包括锁单元,该锁单元指定被称作“fax”的任务不能被该事件中断,但是被称作“email”的任务(和省略的其它任务)可以被该事件中断。具有ID“task”的表格跟在捕捉事件后面,该表格包含用于诸如打印、传真、电子邮件的不同任务的若干字段项。并且,省略符表明字段项是不完整的,但是如本领域技术人员能理解的,通常会包含例如提示和填充单元。
就上面提供的VoiceXML文档来说,当事件侦听器38检测到具有来自打印机xyz、指示纸张堵塞的出错消息的形式的事件时,对话管理器30确定用户任务是否正在进行中,并且如果是这样的话,根据捕捉单元确定特定任务是否能够被中断或不能被中断。在这种情况下,如果对话管理器30确定当前正处理“fax”任务,则对话管理器不会用事件消息中断任务。然而,如果对话管理器确定当前正进行“email”任务,则对话管理器确定任务可以被中断,并且使语音合成器37向用户发出消息以通知打印机纸张已经堵塞。
现在参照图7到13的流程图描述使用Java的表格解释算法的实现,其中包括上述的中断控制。
图7的流程图在顶层图解了表格解释算法的实现。因而,在步骤S11,在进入表格时,按照1.0版本的VoiceXML规范中设置的文档顺序初始化表格,其中内部提示计数器变量被复位成1,并且初始化各个变量。接着,对话管理器30在步骤S12初始化任何捕捉单元。接着在步骤S13,对话管理器进行检查以确定是否存在任何被表格解释算法选择访问的表项。通常,只访问一次表项,并且按照其在文档内出现的顺序。如下所述,在步骤S14,对话管理器30选择下一个被访问的表项,并且作为对1.0版本VoiceXML规范的补充,在步骤S15为表项设置中断权限。接着,在步骤S17,当访问下一个未填充表项时,进入标准表格解释算法的收集阶段,该表项提示用户进行输入,允许适当语法并且等待和收集输入(例如来自用户的口语短语)或事件(例如帮助请求),或直到发生无输入超时。根据1.0版本的VoiceXML规范,通过填充表项并且处理填充的单元来处理输入。接着在步骤S18,如果表项是子表项,则对话管理器为父表项设置中断权限,并且返回到步骤S13。重复步骤S13到S18,直到在步骤S13的回答是否,也就是说,已经选择了全部表项。
图8的流程图详细图解了附图7中的步骤S12。因而,在步骤S121,对话管理器30根据表格确定<catch>和</catch>对的数量以确定捕捉单元或“catch”的数量,并在步骤S122设置变量i=0。在步骤S123,对话管理器30确定是否变量i=N,并且如果是这样的话,退出过程。然而如果结果为否,即i小于N,那么在步骤S124,对话管理器第i次开始捕捉线程,该线程运行catchthread类的对象并且包含第i次捕捉的事件处理器。接着,在步骤S125,建立列表La,其中列表La包含第i次捕捉的中断属性内的全部表项,并且在步骤S126建立列表Lb,其中列表Lb包含第i次捕捉的锁属性内的全部表项。在步骤S128,i递增1,并且重复步骤123到128,直到在步骤S123的结果为否。在这个阶段,已经为各个捕捉初始化了线程,其中线程运行catchthread类的对象,并为捕捉提供事件处理器,已经建立用于各个捕捉的列表La,其中列表La包含中断属性内的全部表项,已经建立用于各个捕捉的列表Lb,其中列表Lb包含锁属性内的全部表项。
如图9中的步骤S130所示,在不同的线程中建立事件侦听器类的对象。
可以理解,事件侦听器类与其它事件侦听器类并行地运行在另一个线程中,并且其唯一目的是接收全部事件的通知并通知主线程。这得到图10的图解。因而,在步骤S134线程接收对应的事件,并且通知主线程,使得对话管理器在步骤S135识别事件,接着在步骤S136初始化事件的处理。
图11详细说明了图8中为表项设置中断权限的步骤S16。因而,在步骤S151,设置变量i等于0,在步骤S152进行检查以确定i是否小于N,并且若结果是否,则退出过程。接着,在步骤S153,检查是否允许用事件类型(i)的事件中断当前表项,并且在步骤S154,设置第i个事件处理器的中断权限,变量i在步骤S155递增,并且重复步骤S152到155,直到在步骤S152的结果为否,此时已经为各个捕捉的当前表项,即针对要捕捉的各个事件设置了中断权限。
图12详细说明了图11的步骤S153。因而,在步骤550,当前表项被设置为“本地表项”,并且在步骤S51,进行检查以确定当前表项是否被包含在列表La中。如果结果为是,则返回“真”值。如果结果为否,那么在步骤S52检查列表Lb中是否包含当前表项。如果结果为是,则在步骤S52a返回“假”值。如果步骤S52的结果为否,那么在步骤S53检查本地表项是否为顶层表项,如果是这样的话,在步骤S53a返回缺省值。在当前的例子中,默认值为允许中断,并且因此返回假值。如果步骤S53的结果为否,那么把当前的父表项设置为本地表项,并且重复步骤S51到S53。图12中示出的过程允许检查从最低层开始的各个表项以确定是否其可以被中断。子表项的状态会覆盖父表项的状态,使得即使父表项可中断,父表项内的子表项也不可以被中断。
图13示出通过第i次捕捉的catchthread对象的事件处理器处理事件的过程。因而,当在步骤S60事件处理器线程接收到事件通知时,在步骤S61进行检查,以便通过检查在图11中步骤S154设置的中断权限来确定是否允许中断。如果为事件处理器设置的中断权限指示不允许中断,那么在步骤S62事件处理器等待权限被授权。可以当例如完成用户的当前任务,并且不用处理其它事件时可以进行授权。当在步骤S61事件处理器确定为事件设置的中断权限允许中断时,则在步骤S63事件处理器使得执行由捕捉语句指定的动作,并且通过语音合成器37向用户提供涉及事件的消息,例如,在打印机纸张堵塞事件的情况下的消息“打印机纸张堵塞”。
在上述方法中,提供给用户的事件消息简单指示事件已经出现(即例如纸张堵塞),并且不向用户提供确切事件的详细信息。
如果事件被提供成事件对象,例如设备的设备操作系统模块20被构造成JAVA虚拟机,则可以向用户提供涉及实际事件的进一步信息。
图14的流程图详细图解了图13的步骤S63,其中事件被提供成事件对象,例如,Java事件对象具有以下形式:
public class paperjammed{
public String printer;
public String des;
}
针对事件为打印机堵塞事件的情况。因而,当事件被事件侦听器38检测时,事件处理器执行如上所述图13中的步骤S60到S62。然而,在步骤S63,不是简单报告打印机堵塞,事件处理器根据Java事件对象确定在步骤S57指明打印机的信息,接着在步骤S71根据Java事件对象确定描述事件的信息,并且在步骤S72向用户提供含有打印机信息和事件描述信息的消息。
在VoiceXML文档内通过修改提供给用户的事件提示来实现,如下所示。
<vxml version=1.0″>
<catch event=″error.com.xyz.printer.paperjammed″>
<prompt>
Printer                                            <valueexpr_″error.com.xyz.printer.paperjammed.printer″/>
suffered paper jam<value expr_″error.com.xyz.printer.paperjammed.des″/>
</prompt>
</catch>
.
.
.
VoiceXML文档的其余部分如上所述。当对话解释器34执行该提示时,Java事件对象中标识打印机中的字符串作为表达式“error.com.xyz.printer.paperjam.printer”的数值被插入,而表示错误描述的字符串作为表达式“error.com.xyz.printer.paperjam.des”的数值被插入,使得提供给用户的提示读作:“打印机x遇到纸张堵塞”,之后是纸张堵塞事件的描述,取决于Java事件对象中提供的信息。例如,事件描述可以指明在文档x打印期间的时间y出现纸张堵塞。这允许向用户提供关于已出现事件的精确详细信息,从而允许用户识别所使用的具体打印机,使得用户可以选择不同(如果可用)打印机打印文档,或如果另一个打印机不可用,则等待直到打印机可以工作。
在上面描述的实施例中,锁和中断单元被包括在VoiceXML文档的捕捉单元部分内。然而,本领域的技术人员可以理解,锁和中断单元可以被包括在单个表项内,使得各个表项指定可以中断其自身的事件。例如,对于在上面提供的例子中描述的任务“fax”,接着字段项指示其不被纸张堵塞事件中断(即被锁定)。
将指定特定是否可以中断特定任务的单元放入文档的捕捉单元内,允许应用开发者保证在不必检查整个文档的情况下正确指定全部捕捉事件和适当的中断权限。然而,当文档特别复杂,即较长或涉及若干嵌套字段项时,如果中断权限状态在字段项内被指定,则会更加可读。
作为另一可能性,根据VoiceXML规范的规定分割表格,并且为各个分割部分指定中断状态。对于其它可能性,通过插入块单元把表格分成块,并且各个特定的块可以和特定的中断状态相关。
在上面描述的实施例中,中断状态指明任务可以被特定事件中断或者不能被特定事件中断。默认值可以是允许中断,使得如果针对具体事件省略中断和锁单元,则会允许事件中断该任务。如果这样,则不必包含中断和锁单元,只需提供锁单元。然而这样的灵活性较小,因为该表项的中断状态会设置子表项的中断状态。提供“中断”和“锁”单元允许独立设置子表项和父表项的中断状态。
中断状态单元还可以包含另一个单元,即优先权单元,该单元指定事件为必要或非必要事件,并且配置对话管理器以提供任何必要事件优先权,使得在任何其他同时出现的事件之前,针对那些必要事件采取行动。例如,如果用户中断连接或终止对话,使得对话管理器30不必处理有关用户挂断导致离线的用户会话的任何其他事件,则允许立即通知对话控制设备1。
在上述实施例中,在表格解释算法中初始化catchthread。对于另一种可能性,各个catchthread可以递归地调用表格解释算法。
应当理解,这是中断单元的重要功能,并且可以使用不同的识别名(即除“Interrupt”、“fock”和“priority”之外的命名)。
在上面提到的实施例中,可以控制一或多个特定事件是否能够中断特定任务。对于另一个可能性,中断状态可以指示一或多个特定事件可以或不可以中断任何和全部任务,或者特定任务可以或不可以被任何和全部事件中断。
在上述实施例中,用户接口36形成对话控制设备的一部分。不是必须如此,例如,可以由具有类似图2示出结构的单独的个人计算机提供用户接口36,该个人计算机直接通过无线或电信链路与对话控制设备1通信,或者通过网络N与对话控制设备1通信。如果对话控制设备和用户设备之间的连接允许音频文件的传输,则语音合成器37可以位于对话控制设备1上。否则,语音合成器37可以位于用户设备上,使得由对话控制设备提供的文本文件被用户设备的语音合成器转换成语音。对于另一个可能性,用户的设备可以是WAP电话。
在上述实施例中,在对话控制设备1上提供自动语音识别引擎32和语法文件33。不是必须如此,例如对话控制设备1可以被构造以通过网络N访问自动语音识别引擎32和语法文件33。
在上述实施例中,对话控制设备1通过网络N连接到受其控制的设备D1到DN。不是必须如此,例如,图1中示出的系统100可以构成独立的计算机系统,其中对话控制设备1包括例如直接通过物理或无线链路连接到诸如打印机、调制解调器等等的设备D1到DN的个人计算机。本发明也可以适用于这些部件被集成在单个设备内的情况。
本发明在下述情况尤其有利,其中对话控制设备和用户之间的对话为口头或口语对话,因为这必须是时间顺序或线性的动作序列,并且由涉及较早任务的事件中断口头或对话将中断和干扰涉及当前任务的对话。然而,本发明在以下情况是有用的,其中对话只是部分口头的,例如,对话控制设备可以通过在象掌上电脑或WAP电话那样相对较小的显示屏上显示的文本消息来应答用户。本发明在下述情况也是有利的,其中对话是完全可视或基于文本的对话,其中用户显示设备上可得到的实际显示结果(real estate)是受限制的或不可控制的,涉及较早任务的事件对用户任务的中断对用户非常有破坏性。因此应当理解,术语“对话”包含处理器和用户之间的通信,其中正使用基于文本和/或图形的浏览器,而不是语音浏览器。
上述实施例用VoiceXML实现。还可以使用其它基于语音的标记语言,例如VOXML来应用本发明。当然,其中对话是无言的对话,则可以使用诸如XML或HTML的非语音标记语言。
虽然可以使用诸如JAVAscript的脚本语言实现本发明,但是标记语言的使用(而不是脚本语言)特别适于执行与用户的对话,因为对话涉及向用户呈现(口头或可视)信息。在这种情况下,向数据增加标记比编写处理数据的程序更容易,例如,因为应用开发者不必考虑如何构造、读取和存储记录,或者如何寻址各个字段。每个部分放置在它们之前,并且可以根据需要把标记插入到数据中。并且,标记语言易于学习,并且几乎可以立即使用,并且标记文档易于理解和修改。

Claims (72)

1.一种控制装置,用于控制用户和至少一个处理器控制的设备之间的通信,其中该设备能执行至少一个任务,该控制装置包括:
对话执行装置,用于执行与用户的对话以确定用户希望设备执行的任务;
设备指示装置,用于指示设备执行所确定的任务;
事件接收装置,用于接收涉及针对设备而出现的事件的事件信息;
任务确定装置,用于在事件接收装置接收到事件信息时确定用户是否涉入另一个任务;
中断确定装置,用于识别与接收到其事件信息的事件和所述另一个任务中的至少一个相关的中断状态信息;
中断控制装置,用于根据识别的中断状态信息确定是否可以中断用户;和
通知装置,用于当中断控制装置确定可以中断与用户的对话时,通知用户所接收的事件信息。
2.如权利要求1所述的控制装置,其中对话执行装置包括与用户执行口头对话的装置。
3.如权利要求1所述的控制装置,其中对话执行装置包括存储对话文件的对话文件存储器和对话解释器,对话文件包括引入标记语言的文档,该文档包含涉及用户可以指示的任务的任务单元,涉及提供给用户的提示的提示单元,和涉及根据从用户接收的信息所采取的行动的动作单元,其中对话解释器被构造成使用对话文件执行与用户的对话。
4.如权利要求3所述的控制装置,其中对话文件包含针对事件的事件单元,其中所述事件的事件信息可被事件接收装置接收。
5.如权利要求3所述的控制装置,其中对于至少一个定义的任务,对话文件包含中断单元,中断单元提供该任务的针对特定事件的中断状态信息。
6.如权利要求3所述的控制装置,其中对话文件包含针对各个事件的事件单元,所述各个事件的事件信息可被事件接收装置接收,并且各个事件单元包含提供中断状态信息的至少一个中断单元,所述中断状态信息指明在用户涉入另一个任务时该事件是否可以中断用户。
7.如权利要求3所述的控制装置,其中至少一个任务单元包含提供中断状态信息的中断单元,所述中断状态信息指明在用户涉入所述至少一个任务时,是否可以根据事件中断用户。
8.如权利要求5所述的控制装置,其中中断单元包括用于标识一或多个不能被中断的任务的锁单元。
9.如权利要求5所述的控制装置,其中中断单元包括用于标识一或多个可以被中断的任务的中断单元。
10.如权利要求5所述的控制装置,其中中断单元包括用于识别事件的优先权单元,其中针对该事件,在不考虑用户对另一个任务的任何涉入的情况下,与用户的对话应当被中断或终止。
11.如权利要求3所述的控制装置,其中对话文件包括VoiceXML文件。
12.如权利要求1所述的控制装置,其中中断控制装置被构造成如果没有与一个任务相关的中断状态信息,确定事件可以中断涉入该任务的用户。
13.如权利要求1所述的控制装置,还包括信息提取装置,用于从事件接收装置接收的事件信息中提取事件的详细信息,其中通知装置被构造成向用户提供所提取的事件详细信息。
14.如权利要求1所述的控制装置,其中中断控制装置被构造成识别作为必要事件的某些事件,并且无论用户是否涉入另一个任务,均根据这种事件的接收中断或终止与用户的对话。
15.如权利要求1所述的控制装置,其中任务确定装置被构造成当涉及任务的对话正与用户进行时,确定用户涉入该任务。
16.如权利要求1所述的控制装置,其中中断控制装置被构造成根据所识别的涉及具体接收事件的中断状态信息,确定是否可以中断用户。
17.一种控制装置,用于控制与涉及至少一个任务的执行的用户的通信,控制装置包括:
对话文件存储器,对话文件存储器包含对话文件或文档,对话文件包含涉及用户可以指示的任务的任务单元,涉及被提供给用户的提示的提示单元,定义事件的事件单元,和定义任务单元的中断状态信息的中断状态单元;
用于使用对话存储器中的对话文件控制与用户的对话的对话控制装置;
用于接收来自用户的、响应提示单元的信息的信息接收装置;
用于根据接收的信息处理任务单元的任务单元处理装置;
用于接收对话文件中事件单元限定的事件的事件信息的事件信息接收装置;
用于根据任务单元的中断状态单元确定接收的事件是否可以中断用户的确定装置;以及
用于当任务单元的中断状态单元指示事件可以中断用户时,使用户得到该事件的通知的通知装置。
18.如权利要求17所述的控制装置,其中至少一个事件单元包含提供中断状态信息的中断单元,所述中断状态信息指明在用户涉入另一个任务时,该事件是否可以中断用户。
19.如权利要求17或18所述的控制装置,其中至少一个任务单元包含提供中断状态信息的中断单元,所述中断状态信息指明是否可以根据特定事件中断用户。
20.如权利要求17或18所述的控制装置,其中中断单元包括用于标识一或多个不能被中断的任务的锁单元。
21.如权利要求17或18所述的控制装置,其中中断单元包括用于标识一或多个可以被中断的任务的中断单元。
22.如权利要求17或18所述的控制装置,其中中断单元包括用于识别事件的优先权单元,其中针对该事件,在不考虑用户对另一个任务的任何涉入的情况下,与用户的对话应当被中断或终止。
23.如权利要求17所述的控制装置,其中确定装置被设置成如果没有针对与任务相关的事件的中断状态信息,则确定该事件可以中断涉入该任务的用户。
24.如权利要求17所述的控制装置,还包括用于从事件对象提取事件的详细信息,并且为用户提供所提取的事件详细信息的提取装置。
25.一种控制装置,用于控制用户和至少一个处理器控制的设备之间的通信,其中该设备能执行至少一个任务,该控制装置包括:
对话执行装置,用于执行与用户的对话以确定用户希望设备执行的任务;
设备指示装置,用于指示设备执行所确定的任务;
事件接收装置,用于接收涉及设备上已经出现的事件的事件数据;
事件详细信息提取装置,用于提取事件的事件数据详细信息以便提供给用户;和
通知装置,用于向用户通知所提取的事件详细信息。
26.如权利要求25所述的控制装置,其中对话执行装置包括与用户执行口头对话的装置。
27.如权利要求25所述的控制装置,其中对话执行装置包括存储对话文件的对话文件存储器和对话解释器,对话文件包括引入标记语言的文档,该文档包含涉及用户可以指示的任务的任务单元,涉及提供给用户的提示的提示单元,和涉及根据从用户接收的信息所采取的行动的动作单元,其中对话解释器被构造成使用对话文件执行与用户的对话。
28.如权利要求27所述的控制装置,其中对话文件包含针对事件的事件单元,其中所述事件可被事件接收装置接收。
29.如权利要求25所述的控制装置,其中对话文件包括VoiceXML文件。
30.一种控制装置,用于控制与涉及至少一个任务的执行的用户的通信,该控制装置包括:
对话文件存储器,对话文件存储器包含对话文件或文档,对话文件包含涉及用户可以指示的任务的任务单元,涉及被提供给用户的提示的提示单元,和定义事件的事件单元;
用于使用对话存储器中的对话文件控制与用户的对话的对话控制装置;
用于接收来自用户的、响应提示单元的信息的信息接收装置;
用于根据接收的信息处理任务单元的任务单元处理装置;
用于接收对话文件中事件单元限定的事件的事件对象的事件对象接收装置;
用于从事件对象提取事件的详细信息的详细信息提取装置;以及
用于为用户提供所提取的事件详细信息的提供装置。
31.一种控制装置,用于控制用户和至少一个处理器控制的设备之间的通信,其中该设备能执行至少一个任务,该控制装置包括:
对话执行装置,用于执行与用户的对话以确定用户希望设备执行的任务;
设备指示装置,用于指示设备执行所确定的任务;
事件接收装置,用于接收涉及针对设备发生的事件的事件信息;
事件状态确定装置,用于确定接收事件的状态;和
中断装置,如果接收事件具有预定状态,中断装置中断或终止与用户的对话。
32.如权利要求31所述的控制装置,其中对话执行装置包括与用户执行口头对话的装置。
33.如权利要求31所述的控制装置,其中对话执行装置包括存储对话文件的对话文件存储器和对话解释器,对话文件包括引入标记语言的文档,该文档包含涉及用户可以指示的任务的任务单元,涉及提供给用户的提示的提示单元,和涉及响应从用户接收到信息所采取的行动的动作单元,其中对话解释器被构造成使用对话文件执行与用户的对话。
34.如权利要求33所述的控制装置,其中对话文件包含针对事件接收装置可接收的各个事件的事件单元,各个事件单元包含中断单元,中断单元识别事件是否具有预定状态。
35.如权利要求31所述的控制装置,其中对话文件包括VoiceXML文件。
36.一种系统,包括如权利要求1所述的控制装置,和多个处理器控制的设备,所述处理器控制的设备适于根据从控制装置接收的设备可实现指令执行任务,并且为控制装置提供涉及任务的执行的事件信息。
37.如权利要求36所述的系统,其中设备包含一或多个以下装置:打印机、影印机、传真机。
38.一种在包括处理器的计算机系统中控制用户和至少一个处理器控制的设备之间的通信的方法,所述设备能够执行至少一个任务,该方法包括的步骤有:
执行与用户的对话以确定用户希望设备执行的任务;
指示设备执行所确定的任务;
接收涉及针对设备而出现的事件的事件信息;
在事件接收装置接收到事件信息时确定用户是否涉入另一个任务;
识别与事件和所述另一个任务中的至少一个相关的中断状态信息;
根据识别的中断状态信息确定是否可以中断用户;和
当确定可以中断与用户的对话时,通知用户所接收的事件信息。
39.如权利要求38所述的方法,其中对话执行步骤包括与用户执行口头对话。
40.如权利要求38所述的方法,其中对话执行步骤包括使用对话文件和对话解释器执行对话,对话文件包括引入标记语言的文档,该文档包含涉及用户可以指示的任务的任务单元,涉及提供给用户的提示的提示单元,和涉及根据从用户接收的信息所采取的行动的动作单元。
41.如权利要求40所述的方法,其中对话文件包含针对事件的事件单元,其中所述事件的事件信息可被事件接收装置接收。
42.如权利要求40所述的方法,其中对于至少一个定义的任务,对话文件包含中断单元,中断单元提供该任务的针对特定事件的中断状态信息。
43.如权利要求40所述的方法,其中对话文件包含针对各个事件的事件单元,所述各个事件的事件信息可被事件接收装置接收,并且各个事件单元包含提供中断状态信息的至少一个中断单元,所述中断状态信息指明在用户涉入另一个任务时该事件是否可以中断用户。
44.如权利要求40所述的方法,其中至少一个任务单元包含提供中断状态信息的中断单元,所述中断状态信息指明在用户涉入所述至少一个任务时,是否可以根据事件中断用户。
45.如权利要求42所述的方法,其中中断单元包括用于标识一或多个不能被中断的任务的锁单元。
46.如权利要求42所述的方法,其中中断单元包括用于标识一或多个可以被中断的任务的中断单元。
47.如权利要求42所述的方法,其中中断单元包括用于识别事件的优先权单元,其中针对该事件,在不考虑用户对另一个任务的任何涉入的情况下,与用户的对话应当被中断或终止。
48.如权利要求40所述的方法,其中对话文件包括VoiceXML文件。
49.如权利要求38所述的方法,其中如果没有与任务相关的中断状态信息,确定是否可以中断用户的步骤确定事件可以中断用户。
50.如权利要求38所述的方法,还包括从接收的事件信息中提取事件的详细信息的步骤,和向用户提供所提取的事件详细信息的步骤。
51.如权利要求38所述的方法,其中中断控制步骤识别作为必要事件的某些事件,并且无论用户是否涉入另一个任务,均根据这种事件的事件信息的接收中断或终止与用户的对话。
52.如权利要求38所述的方法,其中当涉及任务的对话正与用户进行时,任务确定步骤确定用户涉入该任务。
53.如权利要求38所述的方法,其中中断控制步骤根据所识别的中断状态信息确定是否可以中断用户,所述中断状态信息涉及其事件信息被接收的具体接收事件。
54.一种操作控制装置以控制与涉及至少一个任务的执行的用户的通信的方法,控制装置包括处理器和对话文件存储器,对话文件存储器包含VoiceXML对话文件或文档,对话文件包含涉及用户可以指示的任务的任务单元,涉及被提供给用户的提示的提示单元,定义事件的事件单元,和定义任务单元的中断状态信息的中断状态单元,该方法包括的步骤有:
使用对话存储器中的对话文件控制与用户的对话;
接收来自用户的、响应提示单元的信息;
根据接收的信息处理任务单元;
接收对话文件中事件单元限定的事件的事件信息;
根据任务单元的中断状态单元确定接收的事件是否可以中断用户;和
当任务单元的中断状态单元指示事件可以中断用户时,使用户得到该事件的通知。
55.如权利要求54所述的方法,其中至少一个事件单元包含提供中断状态信息的中断单元,所述中断状态信息指明在用户涉入另一个任务时,该事件是否可以中断用户。
56.如权利要求54所述的方法,其中至少一个任务单元包含提供中断状态信息的中断单元,所述中断状态信息指明是否可以根据特定事件中断用户。
57.如权利要求54所述的方法,其中中断单元包括用于标识不能被中断或不能被一或多个特定事件中断的一或多个任务的锁单元。
58.如权利要求54所述的方法,其中中断单元包括用于标识可以被中断或可以被一或多个特定事件中断的一或多个任务的中断单元。
59.如权利要求54所述的方法,其中中断单元包括用于识别事件的优先权单元,其中针对该事件,在不考虑用户对另一个任务的任何涉入的情况下,与用户的对话应当被中断或终止。
60.如权利要求54所述的方法,其中确定是否可以中断用户的步骤包括如果没有针对与任务相关的事件的中断状态单元,确定该事件可以中断涉入该任务的用户。
61.如权利要求54所述的方法,还包括从接收的事件对象中提取事件的详细信息的步骤,和向用户提供所提取的事件详细信息的步骤。
62.一种操作处理器以控制用户和至少一个处理器控制的设备之间的通信的方法,所述设备能够执行至少一个任务,该方法包括使处理器执行以下步骤:
执行与用户的对话以确定用户希望设备执行的任务;
指示设备执行所确定的任务;
接收涉及设备上已经出现的事件的事件数据;
提取事件的事件数据详细信息以便提供给用户;和
向用户通知所提取的事件详细信息。
63.如权利要求62所述的方法,其中对话执行步骤包括与用户执行口头对话。
64.如权利要求62所述的方法,其中对话执行步骤包括使用存储对话文件的对话文件存储器执行对话,对话文件包括引入标记语言的文档,该文档包含涉及用户可以指示的任务的任务单元,涉及提供给用户的提示的提示单元,和涉及响应从用户接收到信息所采取的行动的动作单元。
65.如权利要求64所述的方法,其中对话文件包含针对事件的事件单元,其中所述事件可被事件接收装置接收。
66.如权利要求64所述的方法,其中对话文件包括VoiceXML文件。
67.一种操作处理器以控制与涉及至少一个任务的执行的用户的通信的方法,该方法包括使处理器执行以下步骤:
访问包含VoiceXML对话文件或文档的对话文件存储器,对话文件包含涉及用户可以指示的任务的任务单元,涉及提供给用户的提示的提示单元,和定义事件的事件单元;
使用对话存储器中的对话文件控制与用户的对话;
接收来自用户的、响应提示单元的信息;
根据接收的信息处理任务单元;
接收对话文件中事件单元限定的事件的事件对象;
从事件对象提取事件的详细信息;和
为用户提供所提取的事件详细信息。
68.一种操作处理器以控制用户和至少一个处理器控制的设备之间的通信的方法,所述设备能够执行至少一个任务,该方法包括使处理器执行以下步骤:
执行与用户的对话以确定用户希望设备执行的任务;
指示设备执行所确定的任务;
接收涉及针对设备发生的事件的事件信息;
确定接收事件的状态;和
如果接收事件具有预定状态,中断或终止与用户的对话。
69.如权利要求68所述的方法,其中对话执行步骤包括与用户执行口头对话。
70.如权利要求68所述的方法,其中对话执行步骤包括使用存储对话文件的对话文件存储器执行对话,对话文件包括引入标记语言的文档,该文档包含涉及用户可以指示的任务的任务单元,涉及提供给用户的提示的提示单元,和涉及根据从用户接收的信息所采取的行动的动作单元。
71.如权利要求70所述的方法,其中对话文件包含针对事件接收装置可接收的各个事件的事件单元,各个事件单元包含中断单元,中断单元识别事件是否具有预定状态。
72.如权利要求68所述的方法,其中对话文件包括VoiceXML文件。
CNB018168906A 2000-10-16 2001-09-25 控制用户和设备之间通信的装置、方法及其所用于的系统 Expired - Fee Related CN1258137C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GB0025331.0 2000-10-16
GBGB0025331.0A GB0025331D0 (en) 2000-10-16 2000-10-16 Control apparatus

Publications (2)

Publication Number Publication Date
CN1484789A CN1484789A (zh) 2004-03-24
CN1258137C true CN1258137C (zh) 2006-05-31

Family

ID=9901379

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB018168906A Expired - Fee Related CN1258137C (zh) 2000-10-16 2001-09-25 控制用户和设备之间通信的装置、方法及其所用于的系统

Country Status (8)

Country Link
US (1) US7240009B2 (zh)
EP (1) EP1327188A2 (zh)
JP (1) JP4416398B2 (zh)
KR (1) KR100520019B1 (zh)
CN (1) CN1258137C (zh)
AU (1) AU2001290102A1 (zh)
GB (1) GB0025331D0 (zh)
WO (1) WO2002033536A2 (zh)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002062889A (ja) * 2000-08-14 2002-02-28 Pioneer Electronic Corp 音声合成方法
US7380218B2 (en) * 2003-03-27 2008-05-27 International Business Machines Corporation Method and apparatus for managing windows
US7421393B1 (en) 2004-03-01 2008-09-02 At&T Corp. System for developing a dialog manager using modular spoken-dialog components
US7430510B1 (en) 2004-03-01 2008-09-30 At&T Corp. System and method of using modular spoken-dialog components
US7412393B1 (en) * 2004-03-01 2008-08-12 At&T Corp. Method for developing a dialog manager using modular spoken-dialog components
JP4383941B2 (ja) * 2004-03-30 2009-12-16 キヤノン株式会社 ジョブ管理装置及び方法、ジョブ管理プログラム及び記憶媒体、並びにジョブ管理システム
KR100643294B1 (ko) * 2005-05-04 2006-11-10 삼성전자주식회사 홈 네트워크 시뮬레이션 시스템 및 방법
US7366672B2 (en) * 2005-05-13 2008-04-29 Nokia Corporation Method and device for recovering interrupted voice input
JP4702936B2 (ja) * 2005-06-28 2011-06-15 キヤノン株式会社 情報処理装置及び制御方法、プログラム
US7848928B2 (en) * 2005-08-10 2010-12-07 Nuance Communications, Inc. Overriding default speech processing behavior using a default focus receiver
US20070038946A1 (en) * 2005-08-15 2007-02-15 Grieshaber Charles E Systems, methods and devices for controlling a multifunctional product using a scriptable user interface
US8639515B2 (en) * 2005-11-10 2014-01-28 International Business Machines Corporation Extending voice-based markup using a plug-in framework
JP4984898B2 (ja) * 2007-01-11 2012-07-25 株式会社日立製作所 機器管理装置
US8527278B2 (en) * 2009-06-29 2013-09-03 Abraham Ben David Intelligent home automation
US8902454B2 (en) 2009-10-14 2014-12-02 Ricoh Co., Ltd. Methods for printing from mobile devices
JP5488622B2 (ja) * 2012-01-16 2014-05-14 コニカミノルタ株式会社 画像形成装置
CN104380374A (zh) * 2012-06-19 2015-02-25 株式会社Ntt都科摩 功能执行指示系统、功能执行指示方法及功能执行指示程序
JP6690152B2 (ja) * 2015-08-04 2020-04-28 富士ゼロックス株式会社 処理装置
US10679608B2 (en) 2016-12-30 2020-06-09 Google Llc Conversation-aware proactive notifications for a voice interface device
JP6929168B2 (ja) * 2017-08-31 2021-09-01 キヤノン株式会社 音声制御デバイス、印刷装置、それらの制御方法およびプログラム
US11657800B2 (en) 2019-04-26 2023-05-23 Lg Electronics Inc. Electronic device with wakeup word determined multi-mode operation
CN112130982A (zh) * 2020-10-22 2020-12-25 哲库科技(北京)有限公司 中断控制装置、方法及系统

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6453219A (en) 1987-08-24 1989-03-01 Honda Motor Co Ltd Information processing system
EP0426909A1 (en) 1989-11-06 1991-05-15 Heikki Marttila Oy A method of loading and/or replacing files in a computer software
JPH04287145A (ja) 1991-03-15 1992-10-12 Nec Corp 計算機システム
US5138377A (en) * 1991-05-23 1992-08-11 Xerox Corporation Internal expert system to aid in servicing
JPH0772767A (ja) * 1993-06-15 1995-03-17 Xerox Corp 対話型ユーザ支援システム
KR0126062B1 (ko) 1994-05-02 1997-12-26 김주용 음성인식을 통한 자동화 시스템 제어장치
US5644737A (en) * 1995-06-06 1997-07-01 Microsoft Corporation Method and system for stacking toolbars in a computer display
JP2973906B2 (ja) 1995-12-19 1999-11-08 日本電気株式会社 キャラクタ・ユーザ・インタフェース装置
US6456974B1 (en) 1997-01-06 2002-09-24 Texas Instruments Incorporated System and method for adding speech recognition capabilities to java
DE69712485T2 (de) 1997-10-23 2002-12-12 Sony Int Europe Gmbh Sprachschnittstelle für ein Hausnetzwerk

Also Published As

Publication number Publication date
US20040021899A1 (en) 2004-02-05
WO2002033536A3 (en) 2003-03-20
AU2001290102A1 (en) 2002-04-29
KR100520019B1 (ko) 2005-10-11
EP1327188A2 (en) 2003-07-16
CN1484789A (zh) 2004-03-24
JP4416398B2 (ja) 2010-02-17
US7240009B2 (en) 2007-07-03
WO2002033536A2 (en) 2002-04-25
KR20040007404A (ko) 2004-01-24
JP2004512590A (ja) 2004-04-22
GB0025331D0 (en) 2000-11-29

Similar Documents

Publication Publication Date Title
CN1258137C (zh) 控制用户和设备之间通信的装置、方法及其所用于的系统
CN1224894C (zh) 应用程序对话管理方法与对话管理器和仲裁器接口装置
EP3660661A1 (en) Information processing system, method of processing information and carrier means
CN1158645C (zh) 到服务应用程序上的用户接口的声音控制
US11355106B2 (en) Information processing apparatus, method of processing information and storage medium comprising dot per inch resolution for scan or copy
CN100351835C (zh) 信息处理设备及用于信息处理设备的方法
CN1299224C (zh) Url检索系统、服务器及url检索方法
US11172082B2 (en) Information processing apparatus, information processing system, and information processing method
US8645522B2 (en) Service registering system
CN1969272A (zh) 自动生成内容的导入
CN1059978A (zh) 在计算机系统服务网络中自动插入一个计算机系统
CN1816092A (zh) 用于提供服务的系统、装置和服务器
CN1752897A (zh) 把图形数据输入图形输入区的系统和方法
CN1150488A (zh) 可训练的用户接口翻译器
CN1749960A (zh) 具有改进的醒目性的活动内容向导执行
US6978307B2 (en) Apparatus and method for providing customer service
CN1573928A (zh) 用语音应用语言标记执行的语义对象同步理解
WO2010032617A1 (ja) 画像処理装置
US20050027536A1 (en) System and method for enabling automated dialogs
US20200175982A1 (en) Information processing system, information processing method, and non-transitory recording medium
CN1866221A (zh) 一种软件接口测试方法和装置
US20200177745A1 (en) Information processing apparatus, information processing system, and information processing method
US20030139932A1 (en) Control apparatus
CN1532734A (zh) 图像处理系统
US20030004727A1 (en) Control apparatus

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20060531

Termination date: 20180925

CF01 Termination of patent right due to non-payment of annual fee