CN1375162A - 事件预订机制 - Google Patents

事件预订机制 Download PDF

Info

Publication number
CN1375162A
CN1375162A CN99816965A CN99816965A CN1375162A CN 1375162 A CN1375162 A CN 1375162A CN 99816965 A CN99816965 A CN 99816965A CN 99816965 A CN99816965 A CN 99816965A CN 1375162 A CN1375162 A CN 1375162A
Authority
CN
China
Prior art keywords
event
action
incident
booking
processor
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.)
Granted
Application number
CN99816965A
Other languages
English (en)
Other versions
CN1187957C (zh
Inventor
卢多维克·皮埃尔
蒂里·戈丁
拉马·卡卢里
吉诺·古延
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.)
OpenTV Inc
Original Assignee
OpenTV 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 OpenTV Inc filed Critical OpenTV Inc
Publication of CN1375162A publication Critical patent/CN1375162A/zh
Application granted granted Critical
Publication of CN1187957C publication Critical patent/CN1187957C/zh
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25808Management of client data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25866Management of end-user data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/435Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/443OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
    • H04N21/4431OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB characterized by the use of Application Program Interface [API] libraries
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/8545Content authoring for generating interactive applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Computer Graphics (AREA)
  • Software Systems (AREA)
  • Library & Information Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Computer And Data Communications (AREA)
  • Television Signal Processing For Recording (AREA)
  • Information Transfer Between Computers (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

一种用于预订事件的机制,包括事件代理器,一个或多个事件管理器和一个或多个动作处理器。在一个实施例中,事件代理器被配置为登记多个事件预订,其中每个识别事件和相应动作。对每个事件预订,事件代理器通知被配置为检测在事件预订中识别的事件类型的事件管理器。当事件管理器检测到识别的事件时,它通知事件代理器。然后代理器通知被配置为初始化在事件预订中识别的动作类型的动作处理器。然后动作处理器初始化动作。如果事件预订是非叠代的并且动作已完成,事件预订被事件代理器取消记录。事件代理器被配置为与多个能检测不同类型事件的事件管理器以及多个能初始化不同动作的动作处理器协同工作;解决在与已被检测到的事件对应的动作之间的资源冲突;通过一个安全系统控制对事件预订的访问,此安全系统能使用特权或资格来识别被授权读取、修改、删除或访问包含在事件预订中的信息的客户。

Description

事件预订机制
                         技术领域
本发明一般地涉及广播电视系统,特别涉及一种响应于在广播电视接收器中对这些事件的检测来预订(booking)事件(event)和初始化动作(action)的系统和方法。
                         背景技术
在计算机系统中,能够检测到特别的事件并对此作出具体的动作是有用的。例如:在桌面计算机系统中,当收到电子邮件消息时,最好显示一个电子邮件的图标。计算机系统还可以被配置为在一具体的时间起动一特定的应用程序。相似的机制还可以在VCR(录象机)中找到,该VCR被一般地配置为当内部时钟到达预订时间时,能够安排录制特定的频道。录象机也可以被配置为当接收到在广播信号的VBI(vertical  blanking interval,垂直空闲间隔)中发送的指定信息(例如,指示具体的电视节目开始的信息)时,开始录制一个频道。在ATVEF(Advanced Television Enhancement Forum,高级电视增进论坛)所建议的电视系统中,电视广播信号中的触发器,可使得电视接收器显示具体的HTML(超文本标识语言)页。
然而,上述系统具有局限性,阻止了其扩展成为在广播电视接收器中的普遍事件预订机制(mechanism)。例如,像桌面计算机的邮件提示和日程服务这种情况,被检测到的事件以及对此而作出的动作,是对特别的应用程序专门定义的(例如,电子邮件应用程序响应于收到新的电子邮件消息而显示图标)。这些应用程序提供不能被其它应用程序使用的内部机制。如果不同的应用程序需要检测附加类型的事件以及要初始化附加类型的动作,则那个应用程序必须提供它自己的机制,来检测事件中的那种类型以及初始化各自的动作。因为这种类型的机制已经静态地定义了事件和动作,并需要附加的应用程序代码(以及储存代码的附加存储器),所以,它并不适用于广播电视接收器中有限的资源。使用在广播信号中传送的触发器(例如VBI或ATVEF触发)的机制受到同样的限制。这些触发器检测静态定义的事件、初始化静态定义的动作。而且,如果该动作包括启动应用程序,这个应用程序必须是现有的。也就是,它不能在检测到事件时被下载、然后被启动。由此,这些机制不适于广播电视接收器中的普遍事件预订系统。
                        发明内容
上述一个或多个问题,可被本发明的各种实施例解决。这些实施例包括方法、结构(frameworks)和设备,用于预订与广播电视系统有关的事件,以及响应于预订事件的发生初始化动作。
一个实施例包含一种方法,其中客户端通过登记事件的描述以及发生此事件时要采取的动作的描述来预订事件。被用于检测事件的代理(agent)(或“事件管理器”),以及将要初始化动作的动作处理器也可以被指定。描述事件和动作的信息(事件预订)由事件代理器(broker)存储。信息被事件代理器传送到适当的事件管理器和动作处理器。一旦检测到事件,事件管理器就将事件的发生通知给事件代理器。事件代理器随后通知动作处理器。然后动作处理器作出动作。当动作完成时,事件代理器取消事件预订(例如,将它从事件预订列表中删除)。
一个实施例包含具体实施上述方法的计算机可读存储介质,此存储介质包括软盘、磁带、光盘、RAM(random access memory,随机存取存储器)、ROM(read only memory,只读存储器)、闪速(flash)存储器等。存储介质以及记录于其中的程序指令用于控制处理器的操作。这些程序指令可被处理器执行来完成上述的方法。
在一个实施例中,事件预订机制包含一个交互电视接收器中的软件结构。此结构在程序库中实现,此程序库是接收器操作系统核心的一个扩展。此程序库包括事件代理器、一个或多个事件管理器和动作处理器。事件代理器被配置为登记和跟踪事件项目,每一项目描述事件以及相应的动作。事件代理器被配置为当预订了事件时通知适当的事件管理器,当事件发生时通知适当的动作处理器。事件代理器提供事件管理器和动作处理器的集中管理,其中每个事件管理器被配置为检测不同类型的事件,每个动作处理器被配置为初始化不同类型的动作。这种结构的模块性使得它易于被新的事件管理器和动作处理器更新。
在一个实施例中,事件预订机制在广播电视系统的接收器中实现。当检测到对应事件的发生时,一个或多个客户端(例如,正在接收器中执行的应用程序)需要作出一定的动作。这些动作可以包含启动应用程序、打开弹出对话框、提供数据给运行的应用程序、或其它动作。这些事件可以包含电视节目的开始、下载模块的接收、特定信号或数据的接收、到达预订时间、或其它事件。接收器被配置为允许客户端利用在接收器中的处理器上运行的事件代理器,来预订事件以及相应的动作。事件代理器登记事件和动作,将它们存于接收器的存储器中。对每一个事件,事件代理器通知事件管理器去监视事件的接收器环境。当检测到事件时,事件管理器通知事件代理器,事件代理器随后通知初始化相应动作的动作处理器。
                         附图说明
通过结合附图阅读下面的详细描述,本发明的其他目的和优点将会变得更加清楚,其中:
图1是一个方框图,举例说明了在一个实施例中从一个广播站到多个接收站的交互电视信号的分配。
图2是接收器的功能方框图,该接收器用于一实施例中的交互电视系统中。
图3是一个方框图,举例说明了事件代理器、事件管理器和动作处理器之间的相互作用。
图4是一个方框图,举例说明了在一个实施例中的接收器中运行的软件的各层。
图5是在一个实施例中由事件预订机制实现的高级流程图。
图6是举例说明在一个实施例中的事件预订的流程图。
图7是举例说明在一个实施例中检测到事件后触发动作的流程图。
图8是举例说明在一个实施例中动作的正常完成的流程图。
图9是举例说明在一个实施例中动作的终止的流程图。
由于本发明允许各种修改和替换形式,因此在附图中用举例的方法显示它的特定的实施例,并将在此详细地描述。然而应当理解,附图和另外的详细描述并不是要把本发明限于所公开的具体形式,相反,而是要覆盖如后附的权利要求书所定义的、在本发明的精神和范围内的所有修改、相当和替换的形式。
                        具体实施方式
以下说明本发明的一个实施例。这个实施例包含用于交互电视系统接收器的机制。此机制允许客户应用程序指定事件及相应的动作,以便当事件发生时,初始化动作。此机制一般包含一个事件代理器、一个或多个事件管理器和一个或多个动作处理器。事件通过事件代理器预订(或登记)。(在这里,“预订的事件”可包括相应的动作,和可能包括当事件被预订时事件代理器记录的其它相关信息。)事件代理器通知一个事件管理器,事件已被预订,然后,事件管理器监视此预订事件的接收器的数据和行动。当检测到预订的事件时,事件管理器通知事件代理器,事件代理器随后通知一个动作处理器。然后,该动作处理器初始化对应于检测到的事件的动作。
事件代理器用来对关于预订事件的信息提供集中控制和信息存储,而每个事件管理器用来检测具体的事件类型。例如,一个事件管理器被配置为检测电子邮件的接收,而另一个被配置为检测广播信号中的程序模块。由每个事件管理器检测的各类型事件被任意地确定,和事件管理器可被配置为检测单一类型的事件或几种类型的事件。同样地,每个动作处理器用来初始化具体类型的动作,例如启动应用程序或打开弹出窗口。因为事件预订机制支持多个事件管理器和动作处理器,它可以用模块的方式来实现,该方式允许三方开发它们自己的、可以被集成进该机制中的事件管理器和动作处理器。(应注意,尽管公开的事件预订机制能够利用模块化的事件管理器和动作处理器,它同样可以使用包括在现存应用程序中的事件管理器和动作处理器。例如,客户端应用程序可以登记事件预订,该事件预订使用电子邮件应用程序的事件管理器来检测收到的电子邮件。)
因此,对需要检测的每一类事件,有一个相应的事件管理器。对需要初始化的每一类动作,有一个相应的动作处理器。每个事件管理器与事件代理器相互作用,来监视及检测对应于该具体事件管理器的类型的事件。同样,每个动作处理器可以初始化对应于该具体动作处理器的类型的动作。因此,事件预订机制提供了事件预订的集中管理,但却是足够灵活,以适应许多不同类型的事件和相应的动作。这提供了一个通用然而简洁的事件预订机制,适合于如资源有限的交互电视系统。
如上所述,一个实施例实现于交互电视系统中。参照图1,显示了说明从一个广播站11到多个接收站12-14的交互电视信号的分配的方框图。交互电视信号通过传输介质15被分送到每个接收站。传输介质可包含任何适合的广播介质,包括:卫星、电缆、电信(telco)、MMDS(微波)或地面传输系统。无论采用哪种传输介质,假定广播站和接收站分别配置有适当的发送器和接收器。
参照图2,显示了可以用于接收站的接收器20。在这个实施例中,接收器20被实现为电视的机顶盒。在其它实施例中,接收器可以被合并于接收站的其它部件的电路中,如与接收器相连的电视机。广播给接收站的交互电视信号被信号接收器21接收。包括在广播信号中的电视节目可以由处理电路22处理,并由显示电路23格式化用于显示。被格式化的信号接着被送给电视,可以在电视上为用户显示。
交互电视信号除了电视节目还包括信息。例如,交互应用程序模块或控制信号可以嵌入在广播信号中。这些附加信息可被接收器20的一个部件,如处理单元22或甚至是信号接收器21从信号中分离出来。这些被认为是信号的交互内容的附加信息被典型地提供给处理器24和/或存储器25。包含应用程序的交互内容可以由处理器24执行。其它交互内容可以通过处理器24进行解释,然后可以产生交互式视频或音频,以输出给用户的电视。用户可通过连接到I/O(输入/输出)接口的I/O设备,与应用程序或其它交互式内容互动。(应注意,前述对交互电视系统功能的描述,仅是这样的系统的一个举例,并不限于此。)
输入到接收器20中的广播信号组成了接收器的部分环境。接收器环境还包括从在接收器中执行的应用程序的信号、输入接收器的用户I/O信号、外部(例如调制解调器)信号、时钟信号、日程信号以及其它的接收器内部(换句话说可以到接收器)的信号和条件。事件预订机制监视接收器环境的信号和条件,来检测事件并然后触发相关的动作。
事件预订机制在接收器的处理器中执行。事件预订机制允许客户端指定事件和当事件发生时需要触发的动作。参照图3,举例说明了有关单独事件预订的这些部分之间的交互作用。在图3中,事件预订机制的功能在事件代理器30、具体的事件管理器31以及具体的动作处理器32之间分配,事件代理器从客户端33接收事件预订。事件代理器登记事件和相应的动作,然后通知事件管理器在接收器环境中监视该指定的事件。当事件发生时,事件管理器通知事件代理器。事件代理器然后通知动作处理器已检测到事件。动作处理器随后初始化开始已被客户端指定的动作。
事件代理器负责登记或预订事件。事件代理器通过在中心位置存储与每个预订事件有关的信息来完成其功能。这个中心位置不必是一个单独的存储器件,可包含一列或一些其它类型的数据结构,在其中事件预订被加固(consolidated)。(注意,事件预订最好储存于非易失性存储器中,这样,当接收器重启时它们不会被丢失。)事件代理器可对预订事件的访问进行控制,包括查询、修改或终止预订的事件。
由事件代理器存储的信息定义了要检测的事件,以及响应于检测到事件所采取的动作。(多种动作可以与一个单独的事件相关联,但在此具体的实施例中,检测到事件后,必须紧接着执行动作。)在一个实施例中,事件由将用来检测事件的事件管理器的名称以及描述事件的字符串来定义。此字符串是用事件管理器的句法来识别事件的字符串。事件代理器可以读不懂此字符串。然而,事件代理器也不必理解此事件,它只须通知事件管理器此事件已被预订,传递此字符串即可。类似地,在此实施例中,动作通过动作处理器的名称以及用动作处理器的句法识别事件的字符串来定义。此字符串不须被事件代理器理解。
在一些实施例中,当事件被预订时存储的信息可包括其它信息。例如,可以包括:动作使用的一系列资源,以便事件代理器可管理接收器的资源;字符串,包含用户可读的事件和/或动作的描述;对事件的一个时限或终止日期;与事件相关的特权,其定义被允许访问、修改或终止预订的事件的应用程序或客户端。(其它实施例可包括不同的信息,在管理事件预订中同样有用。)应注意,特权可以以预订义方式分配(如,授予特别的客户或客户群,)或者,它们可以使用其它机制定义(如,需要访问预订事件时显示给事件代理器的、和客户所持的凭证。)
当可以触发两个或多个需要相同的资源的动作时,事件代理器负责解决资源冲突。换句话说,如果两个动作需要相同的资源,只能初始化一个动作,所以,事件代理器必须决定先初始化哪个动作,延迟哪个动作。作为事件代理器须解决这些冲突的结果,事件代理器在一个实施例中被配置为确定预订事件的级别。一旦较高级别的动作完成,即可以触发次高级别的动作。事件代理器可以被配置为对预订的事件赋予级别。在一个实施例中,被事件代理器赋予的级别基于事件被预订的顺序。此级别也可由具有适当特权的控制应用程序明确设定。此控制应用程序能够打开级别会话,设置预订事件的级别,随后调用事件代理器验证并存储新的级别。
每个事件管理器被配置为检测一个或多个具体类型的事件。事件管理器监视接收器环境的各种信号和条件,以确定事件发生的时间。事件可为一个单独的信号和条件,或一组这样的信号和条件。该事件可由事件预订时事件代理器存储的信息来定义。多个事件管理器可同时监视接收器环境,以检测它们相应的事件。还应注意,多个动作可与一个单独的事件相关。在一个实施例中,一个单独的事件管理器会检测所描述的事件,一个或多个动作处理器执行相关的动作。在这个实施例中,动作应被顺序执行,但在其它实施例中,动作可被同时执行。类似地,多个事件预订可以将多个事件与一个单独动作相互关联。
每个动作处理器被配置为初始化一个或多个具体类型的动作。在一些情况下,动作的类型可被相对较宽地定义。例如,动作可包含启动应用程序。显然,这个动作可适用于一个宽的范围,如可用于检测许多不同的事件,每个事件都是启动相关应用程序的触发器。当多个动作可被同时触发运行时,在这种实施例中,事件代理器有责任来确定在各动作间是否有资源冲突,以及解决这些冲突(通过触发最高级别的动作,并允许它在触发冲突动作前完成。)
如上所述,事件预订机制不限于只处理一定类型的事件或动作。可适合于许多不同类型的事件和动作。这通过使用可与多个事件管理器和多个动作处理器共同操作的单独事件代理器来实现。每个事件管理器被配置为检测具体类型的事件。当事件被预订时,即通知被配置为检测该具体类型事件的事件管理器。同样地,当事件被检测时,即通知被配置为初始化与检测事件相对应的具体类型的动作的动作处理器。若需要,事件代理器可为预订的若干事件中的每一个调用不同的事件管理器和不同的动作处理器。相反,几个事件可使用相同的事件管理器或相同的动作处理器。(因此应注意,事件管理器和动作处理器可以是唯一的,它们可被配置为处理独特类型或组的事件或动作,但这并不意味着每个事件管理器或动作处理器只能被使用或例示一次。)
应注意,以上描述意在举例说明。在其它实施例中,上述的一些与事件预订机制中的具体部件相关的功能可被重新分配。例如,当检测到事件时,事件管理器可配置为直接通知相关的动作处理器,而不是通知事件代理器,然后由事件代理器通知动作处理器。这种变化被认为是在此公开的范围内。
参照图4,举例说明了在接收器中执行的软件的各层。接收器软件包含几层软件。核心(kernel)层和驱动层直接与硬件接口。在这里下一层被称作中间层。中间层基于核心层和驱动层之上,其本身包含对每个硬件平台可重新编译的一组程序库。应用层包含利用通过中间层的程序库提供的业务的应用程序。在图4描述的实施例中,事件预订机制是中间层的一部分。因此,应用层与事件预订机制及其它中间层程序库接口。
因为应用程序基于中间层提供的业务之上,所以应用程序的生命周期在某种程度上被中间层控制。例如,应用程序有时用硬件独立的形式来编写,其必须利用解释程序或在中间层执行。类似地,事件预订在某种程度上依赖于事件预订程序库。如果可用的事件管理器或动作处理器被更新,或系统重启动和它们被移除,则依赖于此不可用的事件管理器或动作处理器的事件预订,也许必须被从预订列表中删除。可替换地,兼容的事件管理器或动作处理器可替换那些不可用的事件管理器或动作处理器。
如上所述,事件预订机制在一个实施例中实现为中间层程序库。此程序库是操作系统核心的扩展。预期此程序库最初可以只包括有限的事件管理器和动作处理器组。例如,最初,一个日程管理器和一个或两个更多的事件管理器即足够。类似地,弹出对话框和启动应用程序的动作处理器在基本的实现中已经足够。附加的事件管理器和动作处理器可根据需要添加。当须适应新的事件类型和动作类型时,可以编写新的事件管理器和动作处理器。附加的事件管理器和动作处理器可添加到库中,不必修改整个预订机制。应当注意,尽管在这个具体的实施例中事件预订机制实现于一个程序库中,但预期此机制在其它实施例中可在应用程序层上实现。
参照图5,显示了由事件预订机制实现的基本方法的高级流程图。客户应用程序用事件代理器预订事件,指定事件和相应的动作。事件代理器将该事件和相应的动作通知给适合的事件管理器和动作处理器,然后储存此预订的事件。(应当注意,在这个实施例中,通知事件管理器和动作处理器该事件和动作,以确认此事件应被预订--这种确认在其它实施例中可以不采用。)然后事件管理器在接收器环境中监视该事件。(虚箭头表示在该事件被检测前,也许会有许多干涉的发生。)当事件被检测到时,事件管理器通知事件代理器。当事件代理器被事件管理器通知事件已被检测到时,事件代理器通知动作处理器应执行对应于此事件的动作。
参照图6-9,更详细显示了在一个实施例中事件预订机制的操作。应当注意,在图中,事件代理器(EB)、事件管理器(EM)和动作处理器(AH)分别用它们的缩写标明。还应注意,这些部分之间的通信被用一个从发送方到接收方的箭头来标明。
在图6的流程图中,举例说明了在一个实施例中事件的预订。客户应用程序首先将预订事件所须信息发送给事件代理器。事件代理器确定应通知哪个事件管理器,并向那个事件管理器发送预订事件的请求。如果该事件管理器可预订事件,即向事件代理器发送确认。如果该事件管理器不能预订事件,即向事件代理器发送不确认,然后事件代理器发送错误通知给客户端。如果该事件管理器接受了预订请求,它向请求中识别的动作处理器发送相似的请求。如果动作处理器不接受此请求,即向事件管理器、然后向事件代理器发送不确认,该事件代理器再发送错误通知给客户端。如果该动作处理器接受了请求,则向事件管理器发送确认。然后,事件代理器通知控制任务,新的事件已被预订。
如上所述,事件代理器在通知控制任务新的事件已被预订前,向事件管理器和动作处理器发送请求(或通知)。事件代理器这样做是为了从事件管理器和动作处理器得到证实,此事件和动作被充分描述。在这个实施例中这是必须的,因为,如上述解释,事件和动作是分别用事件管理器和动作处理器可懂的句法定义的。因此没有事件管理器和动作处理器的帮助,事件代理器也许不能验证事件预订信息。
在图7的流程图中举例说明了检测到事件后动作的触发。当事件管理器检测到事件时,它通知事件代理器。事件代理器确定执行相关动作所需的资源是否与此资源的其它用户发生冲突(例如,正在响应于其它事件而正在运行的动作。)。如果没有资源冲突,事件代理器向事件管理器发送开始动作的请求。如果有资源冲突,事件代理器确定与检测事件相关的动作是否在冲突的动作间有最高的优先权。如果该动作有最高的优先权,事件代理器向动作处理器发送请求,取代出现冲突的当前正在运行的动作。动作处理器可接受或拒绝这个请求。如果请求被接受,事件代理器向事件管理器发送开始动作的请求。如果动作处理器不接受事件代理器的取代正在运行的动作的请求,动作仍为空闲。即,事件预订机制等待未决的动作终止,再从资源冲突检测开始重复上述的步骤。
在事件代理器向事件管理器发送开始动作的请求后,事件管理器可接受或拒绝该请求。如果请求被拒绝,动作是空闲的。在这个例子中,动作并不是简单地保持空闲直到未决的动作终止。该动作保持空闲直到事件管理器或事件代理器重新激活或终止动作。如果事件管理器接受了开始动作的请求,则从事件代理器向动作处理器发送一个相似的请求。如果动作处理器拒绝了此请求,事件代理器通知事件管理器该动作已经被异常终止。如果动作处理器接受了此请求,则动作处理器即开始动作。动作处理器还向事件代理器发送确认。
应当注意,在上述实施例中,当检测到与动作对应的事件时,事件代理器并不立刻开始该动作。相反,事件代理器检查资源冲突并可能请求取代其它动作。这样就会有时延,期间定义事件的某些情况可能变化。因此,与事件相关的动作可能会过时。因此事件代理器在检查资源后以及开始动作前,会询问事件管理器。
一旦动作开始,它可以完成,也可以终止。参照图8,显示了动作正常完成的流程图。如果动作被正常完成,动作处理器在动作完成时向事件代理器发送通知。事件代理器随后向事件管理器发送完成的通知。然后,该事件被事件代理器从预订的事件列表中删除。应注意,如果该事件是一次性的事件,它才被删除--如果该事件是预订用于多次发生的事件(例如,每周的同一时间录制电视节目,),事件则不会被删除。
参照图9,显示了动作终止的流程图。在此图中,客户端请求动作的终止。请求被送往事件代理器。事件代理器向动作处理器发送终止请求。动作处理器终止该动作并向事件代理器发送确认。然后,事件代理器向事件管理器发送终止通知。通知事件管理器后,事件代理器将相应的事件从预订的事件列表中删除(除非事件预订用于多次发生。)
应注意,前面的例子指在一个单独实施例中使用的方法。此例只限于举例说明并不限于此。上述方法的各种修改可用于本发明的其它实施例中。
上述发明的预订机制可被用于许多情况。例如:
一种情况,事件管理器可以是日程代理,其被配置为检测一个电视节目开始的时间和日期。在指定时间,日程代理将通知事件代理器。事件代理器将通知被配置为开始录象机录制一定时段节目的动作处理器。或者,动作处理器弹出一个对话框,提示用户同意要录制电视节目或仅通知用户电视节目正在开始。
另一种情况,事件管理器可以是书签(bookmark)代理,其被配置为监视在广播信号中的特定类型的服务信息(例如,以16/9格式识别电视节目是足球或电影的元数据(metadata))当检测到指定的服务信息时,即通知事件代理器。然后,事件代理器通知动作处理器,动作处理器可能将此信息呈现给用户或开始录制节目或电影。
再一种情况,事件管理器可以是电文代理,其被配置为监视电文流中的特定信息(例如,股票信息)。当检测到此信息时,即通知事件代理器,并随即通知动作处理器捕获此信息并将它呈现给用户。
再一种情况,事件管理器可以是一个业务列表代理,其被配置为在一个指定的网络或特殊的一组频道(有时称为花束(bouquet))中检测电视频道。当事件管理器检测到频道时,它通知事件代理器,事件代理器通知动作处理器。动作处理器被配置为识别电视频道并将此频道添加到频道列表中。在这种方式下,可动态建立一个频道列表。预订的事件可被定义,以便当完成频道列表时即可启动应用,以允许用户浏览此列表。
再一种情况,事件管理器可以被配置为检测具体实施在广播信号中的电子邮件。当检测到电子邮件时,通知事件代理器和动作处理器。该动作处理器被配置为启动一个小应用程序,该小应用程序使得接收器在用户处鸣叫或在电视屏幕上显示图标,以通知用户电子邮件已经到达。
再一种情况,事件管理器可被配置为监视指定的杂乱(carousel)文件或模块的广播信号。相应的动作处理器可以被配置为当收到此文件或模块时,或是收到被修改或更新的复制件时,通知或启动应用程序(例如,证券报价机应用程序)。
再一种情况,事件管理器可被配置为检测广播提供商准备的、必须存储在机顶盒(接收器)中的用户简档。动作处理器被配置为获取用户简档并将它存储在机顶盒中。
尽管本发明已经参照具体实施例进行了描述,但应理解这些实施例只是举例说明,本发明的范围并不限于这些实施例。许多对描述的实施例的变化、修改、添加和改进都是可能的。这些变化、修改、添加和改进在后面详细描述本发明的权利要求书的范围以内。

Claims (21)

1.一种用于预订事件和初始化相应动作的结构,包括:
事件代理器,其中所述事件代理器被配置为响应于来自一个或多个客户端的请求,登记多个事件预订,其中,每个所述事件预订识别相应事件和相应动作;
一个或多个事件管理器,其中所述一个或多个事件管理器中的每个被配置为检测具体类型的事件;和
一个或多个动作处理器,其中所述一个或多个动作处理器中的每个被配置为初始化具体类型的动作;
其中对每个所述事件预订,
所述事件代理器被配置为通知所述事件管理器中的一个,所述事件管理器被配置为检测在每个所述事件预订中识别的所述事件,
所述事件管理器中所述的一个被配置为当检测到在所述每个事件预订中识别的所述事件时,将在所述每个事件预订中识别的所述事件通知给所述事件代理器,
所述事件代理器被配置为通知所述动作处理器中的一个,所述动作处理器被配置为响应于正在被检测事件,初始化在所述每个事件预订中识别的所述动作,
所述动作处理器中所述的一个被配置为响应于所述事件代理器通知所述动作处理器中的一个,初始化所述相应的动作。
2.如权利要求1所述的结构,其中所述结构实现为应用层和驱动层之间的软件层。
3.如权利要求1所述的结构,其中所述结构实现在广播系统的接收器中。
4.如权利要求3所述的结构,其中所述事件的至少一部分与所述接收器收到的广播信号相关。
5.如权利要求3所述的结构,其中所述事件代理器、所述一个或多个事件管理器以及所述一个或多个动作处理器包含可被在所述接收器中运行的操作系统访问的扩展程序库。
6.如权利要求1所述的结构,其中所述事件代理器被配置为从多个不同的客户应用程序中维护所述事件预订。
7.如权利要求1所述的结构,其中相应于所述事件预订的所述事件包含多个不同的事件类型。
8.如权利要求1所述的结构,其中相应于所述事件预订的所述动作包含多个不同的动作类型。
9.如权利要求1所述的结构,其中每个所述事件预订识别被配置为检测所述相应事件的事件管理器,和被配置为初始化所述相应动作的动作处理器。
10.如权利要求1所述的结构,其中所述事件代理器被配置为确定由所述动作需要的资源,并解决各所述动作之间的资源冲突。
11.如权利要求1所述的结构,其中所述事件代理器被配置为维护对应于所述事件预订的级别,以及如果检测到多个所述事件,以所述级别确定的顺序初始化所述相应的动作。
12.如权利要求1所述的结构,其中所述事件代理器被配置为根据与所述访问和所述事件预订相关的许可,控制对所述事件预订的访问。
13.如权利要求1所述的结构,其中每个所述事件预订都有相应的到期时间,和其中所述事件代理器被配置为将所述事件预订中超过所述到期时间的事件预订删除。
14.一种方法,包括:
在中心位置登记多个事件预订,其中所述多个事件预订被多个客户端请求,和其中每个所述事件预订描述相应的事件和相应的动作,
检测所述事件中的一个,
响应于对所述事件中所述检测的事件的检测,初始化与所述事件中的所述检测的事件相对应的所述动作中的一个。
15.如权利要求14所述的方法,其中对应于所述多个事件预订的所述事件包括多个事件类型,其中所述事件类型被多个事件管理器检测。
16.如权利要求15所述的方法,其中登记所述预订事件中的一个包括:存储识别被配置为检测所述相应事件的所述多个事件管理器中的一个的信息。
17.如权利要求14所述的方法,其中对应于所述多个事件预订的所述动作包括多个动作类型,其中所述动作类型被多个动作处理器初始化。
18.如权利要求17所述的方法,其中登记所述预订事件中的一个包括:存储识别被配置为初始化所述相应动作的所述多个动作处理器中的一个的信息。
19.如权利要求18所述的方法,其中所述动作被从包含下列各项的组中选择,该组包括:下载应用程序;启动应用程序;启动弹出;将所述事件中的所述一个通知给运行的程序。
20.一种设备,包括:
被配置为接收广播信号的信号接收器;
连接于所述信号接收器的处理器;
连接于所述处理器并被配置为存储事件预订的存储器;
其中所述事件预订中的每个识别相应的事件以及相应的动作;
其中所述处理器被配置为执行事件代理器、一个或多个事件管理器以及一个或多个动作处理器;和
其中所述事件代理器被配置为登记所述事件预订,其中所述事件管理器被配置为检测相应于所述事件预订的所述事件,和其中所述动作处理器被配置为初始化相应于所述事件预订的所述动作。
21.如权利要求20所述的设备,其中所述设备包括互动电视系统接收器,用于从广播站接收所述广播信号,并向电视机提供输出信号。
CNB99816965XA 1999-11-09 1999-11-09 事件预订方法和设备 Expired - Lifetime CN1187957C (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/IB1999/001903 WO2001035634A1 (en) 1999-11-09 1999-11-09 Event booking mechanism

Publications (2)

Publication Number Publication Date
CN1375162A true CN1375162A (zh) 2002-10-16
CN1187957C CN1187957C (zh) 2005-02-02

Family

ID=11004933

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB99816965XA Expired - Lifetime CN1187957C (zh) 1999-11-09 1999-11-09 事件预订方法和设备

Country Status (12)

Country Link
US (3) US8032913B1 (zh)
EP (1) EP1228635B1 (zh)
JP (1) JP4455799B2 (zh)
CN (1) CN1187957C (zh)
AU (1) AU767700B2 (zh)
BR (1) BR9917552A (zh)
CA (1) CA2388768A1 (zh)
DE (1) DE69934829T2 (zh)
DK (1) DK1228635T3 (zh)
ES (1) ES2281211T3 (zh)
HK (1) HK1050286B (zh)
WO (1) WO2001035634A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101189866B (zh) * 2005-05-31 2011-01-26 松下电器产业株式会社 广播接收终端
CN102780913A (zh) * 2012-08-21 2012-11-14 广东威创视讯科技股份有限公司 一种多通道信号检测的方法和装置
CN103597846A (zh) * 2011-08-04 2014-02-19 索尼公司 提供提醒服务的接收设备、方法、计算机程序和信息提供设备
US9038118B2 (en) 1999-11-09 2015-05-19 Opentv, Inc. Event booking mechanism

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002037365A1 (en) * 2000-10-31 2002-05-10 Netscape Communications Corporation Click-to-add, jot-it-down, and add banner
US8734254B2 (en) 2006-04-25 2014-05-27 International Business Machines Corporation Virtual world event notifications from within a persistent world game

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5063523A (en) * 1989-11-16 1991-11-05 Racal Data Communications Inc. Network management system with event rule handling
US5329619A (en) * 1992-10-30 1994-07-12 Software Ag Cooperative processing interface and communication broker for heterogeneous computing environments
US5794207A (en) * 1996-09-04 1998-08-11 Walker Asset Management Limited Partnership Method and apparatus for a cryptographically assisted commercial network system designed to facilitate buyer-driven conditional purchase offers
US5589892A (en) * 1993-09-09 1996-12-31 Knee; Robert A. Electronic television program guide schedule system and method with data feed access
US5818438A (en) * 1995-04-25 1998-10-06 Bellsouth Corporation System and method for providing television services
US5699107A (en) * 1995-05-05 1997-12-16 Microsoft Corporation Program reminder system
US6477585B1 (en) * 1995-08-18 2002-11-05 International Business Machines Corporation Filter mechanism for an event management service
US5754858A (en) * 1996-05-01 1998-05-19 Microsoft Corporation Customizable application project generation process and system
WO1998011724A1 (en) * 1996-09-13 1998-03-19 Sarnoff Corporation Command and control architecture for a digital studio
US6094688A (en) * 1997-01-08 2000-07-25 Crossworlds Software, Inc. Modular application collaboration including filtering at the source and proxy execution of compensating transactions to conserve server resources
US5918020A (en) * 1997-02-28 1999-06-29 International Business Machines Corporation Data processing system and method for pacing information transfers in a communications network
JPH10261251A (ja) * 1997-03-18 1998-09-29 Sony Corp 受信装置、受信方法、送信装置、送信方法、送受信装置、および、送受信方法
US5958010A (en) * 1997-03-20 1999-09-28 Firstsense Software, Inc. Systems and methods for monitoring distributed applications including an interface running in an operating system kernel
ZA973614B (en) * 1997-03-21 1998-03-23 Canal Plus Sa Broadcast and reception system, and receiver/decoder and remote controller thereof.
US6108695A (en) * 1997-06-24 2000-08-22 Sun Microsystems, Inc. Method and apparatus for providing analog output and managing channels on a multiple channel digital media server
US7251617B1 (en) * 1998-12-28 2007-07-31 Walker Digital, Llc Method and apparatus for managing subscriptions
US6175871B1 (en) * 1997-10-01 2001-01-16 3Com Corporation Method and apparatus for real time communication over packet networks
US6636901B2 (en) * 1998-01-30 2003-10-21 Object Technology Licensing Corp. Object-oriented resource lock and entry register
US6275471B1 (en) * 1998-05-12 2001-08-14 Panasonic Technologies, Inc. Method for reliable real-time multimedia streaming
US6611877B2 (en) * 1998-06-30 2003-08-26 Sun Microsystems, Inc. System and method for aggregating registration of entities for notifications of events
US6813776B2 (en) * 1998-10-06 2004-11-02 International Business Machines Corporation Method for automatic and semi-automatic event scheduling based on information embedded in multimedia content
US6446136B1 (en) * 1998-12-31 2002-09-03 Computer Associates Think, Inc. System and method for dynamic correlation of events
US6829770B1 (en) * 1999-02-23 2004-12-07 Microsoft Corporation Object connectivity through loosely coupled publish and subscribe events
US6611654B1 (en) * 1999-04-01 2003-08-26 Koninklijke Philips Electronics Nv Time- and location-driven personalized TV
US6782541B1 (en) * 1999-05-28 2004-08-24 Avaya Technology Corp. System and method of exchanging information between software modules
US6598169B1 (en) * 1999-07-26 2003-07-22 Microsoft Corporation System and method for accessing information made available by a kernel mode driver
WO2001035634A1 (en) 1999-11-09 2001-05-17 Open Tv, Inc. Event booking mechanism
US6453294B1 (en) * 2000-05-31 2002-09-17 International Business Machines Corporation Dynamic destination-determined multimedia avatars for interactive on-line communications
US7412501B2 (en) * 2000-06-07 2008-08-12 Microsoft Corporation Event consumers for an event management system
US6970935B1 (en) * 2000-11-01 2005-11-29 International Business Machines Corporation Conversational networking via transport, coding and control conversational protocols
US7155475B2 (en) * 2002-02-15 2006-12-26 Sony Corporation System, method, and computer program product for media publishing request processing
US7260265B2 (en) * 2002-10-04 2007-08-21 International Business Machines Corporation Enhancing compression while transcoding JPEG images

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9038118B2 (en) 1999-11-09 2015-05-19 Opentv, Inc. Event booking mechanism
CN101189866B (zh) * 2005-05-31 2011-01-26 松下电器产业株式会社 广播接收终端
CN103597846A (zh) * 2011-08-04 2014-02-19 索尼公司 提供提醒服务的接收设备、方法、计算机程序和信息提供设备
CN103597846B (zh) * 2011-08-04 2017-04-26 索尼公司 提供提醒服务的接收设备、方法和信息提供设备
US10491966B2 (en) 2011-08-04 2019-11-26 Saturn Licensing Llc Reception apparatus, method, computer program, and information providing apparatus for providing an alert service
CN102780913A (zh) * 2012-08-21 2012-11-14 广东威创视讯科技股份有限公司 一种多通道信号检测的方法和装置
CN102780913B (zh) * 2012-08-21 2015-09-09 广东威创视讯科技股份有限公司 一种多通道信号检测的方法和装置

Also Published As

Publication number Publication date
HK1050286B (zh) 2007-10-26
DK1228635T3 (da) 2007-03-12
BR9917552A (pt) 2002-06-25
US20120090012A1 (en) 2012-04-12
AU767700B2 (en) 2003-11-20
CN1187957C (zh) 2005-02-02
CA2388768A1 (en) 2001-05-17
US20150326897A1 (en) 2015-11-12
JP4455799B2 (ja) 2010-04-21
HK1050286A1 (en) 2003-06-13
WO2001035634A1 (en) 2001-05-17
US8032913B1 (en) 2011-10-04
AU1173900A (en) 2001-06-06
JP2003514452A (ja) 2003-04-15
US9038118B2 (en) 2015-05-19
DE69934829T2 (de) 2007-06-28
EP1228635B1 (en) 2007-01-10
ES2281211T3 (es) 2007-09-16
DE69934829D1 (de) 2007-02-22
EP1228635A1 (en) 2002-08-07

Similar Documents

Publication Publication Date Title
CN1302409C (zh) 爪哇小服务程序和http客户机间异步消息接发的系统和方法
CN1272707C (zh) 用于进行远程软件分发和安装的方法和系统
US5925108A (en) Event notification in a computer system
CN1227588C (zh) 用于根据应用生存周期管理该应用的方法和设备
CN1117333C (zh) 在一个计算机网络中提供通信链路的数据通信系统和方法
US20150326897A1 (en) Event booking mechanism
US10306022B2 (en) Facilitating the operation of a client/server application while a client is offline or online
EP1382173B1 (en) Data distribution system
US20060179465A1 (en) Handling feature availability in a broadcast
CN101978624B (zh) 用于更新交互文档的方法和系统
CN102541552A (zh) 条件延迟排队
US20110321011A1 (en) Application server with a protocol-neutral programming model for developing telecommunications-based applications
CN102667751A (zh) 实现基于网络的通信终端的用户界面的装置及其方法
CN1823521A (zh) 内容记录技术
CN1728699A (zh) 数据广播的差分更新
CN111741110B (zh) 一种消息推送系统及方法
CN101699436A (zh) 资源管理的方法、装置和系统
EP1753204B1 (en) System with executing nodes for executing schedules
US8788546B2 (en) Preloading resources from data carousel of broadcast file system
CN115562744A (zh) 一种应用程序加载方法及电子设备
WO2007073056A1 (en) Real-time dialog and guidance service system provided to visitors by website operator in order to secure customers
JP4590062B2 (ja) 放送受信機システム及び放送受信機システムの動作方法
KR20050056164A (ko) 키 이벤트 제어 장치
CN1572074A (zh) 控制被分成各组的多个节点来只执行消息一次,或者使用snmp或其组合
US20040260719A1 (en) Method with management of an opaque user identifier for checking complete delivery of a service using a set of servers

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
CX01 Expiry of patent term
CX01 Expiry of patent term

Granted publication date: 20050202