CN1623152A - 基于上下文的信息处理 - Google Patents

基于上下文的信息处理 Download PDF

Info

Publication number
CN1623152A
CN1623152A CN03802681.3A CN03802681A CN1623152A CN 1623152 A CN1623152 A CN 1623152A CN 03802681 A CN03802681 A CN 03802681A CN 1623152 A CN1623152 A CN 1623152A
Authority
CN
China
Prior art keywords
information
information project
project
user
context
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
CN03802681.3A
Other languages
English (en)
Other versions
CN100416557C (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.)
Intel Corp
Original Assignee
Intel Corp
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 Intel Corp filed Critical Intel Corp
Publication of CN1623152A publication Critical patent/CN1623152A/zh
Application granted granted Critical
Publication of CN100416557C publication Critical patent/CN100416557C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/61Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources taking into account QoS or priority requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Transfer Between Computers (AREA)
  • User Interface Of Digital Computer (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Calculators And Similar Devices (AREA)

Abstract

提供了用于处理信息项目的方法与装置。所述处理包括上下文过滤、上下文优先级区分或者上下文过滤与上下文优先级区分三者中的一个。在一些实施例中,从其得到处理标准的信息项目集合包括用户日程表或预约、安排改变、异常等。

Description

基于上下文的信息处理
技术领域
本发明涉及信息聚集、处理、分配和传送。
背景技术
诸如信息存储仓库、服务器、计算机、固定计算设备、便携式计算设备以及/或者个人数字助理、监视器、蜂窝电话和膝上型计算机之类的显示设备(所有前述的在这里总体称为“多个设备”;每个还可以称为一个“设备”)的多个设备可操作用来获取信息。这些设备可以从一个或多个服务器、计算机、因特网源、传感器/测量源、传感器网络、或其它信息源和信息存储仓库获取信息,这些信息源可能位于不同物理位置或相同物理位置。信息通常在信息的单个不间断传送过程中从信息源向设备传送,直至传送完成。信息通过一种或多种传送介质来传送,例如有线、无线、光、感应式线圈或其它网络连接。需要对所传送的信息进行处理以提供与设备用户更为相关的信息。
附图说明
本发明以示例的方式而非限制性的方式在附图中进行了说明,附图中类似的标号指示类似的元件,其中:
图1是根据一个实施例的含有上下文过滤器和基于上下文的优先级区分器的基于上下文的处理系统的框式流程图;
图2是根据一个实施例的基于上下文传送过程的框式流程图;
图3是根据一个实施例的分阶段传送过程的框式流程图;
图4是根据一个实施例的分阶段传送过程的单个阶段的框式流程图;
图5是根据本发明的系统的实施例;
图6是根据本发明的系统的另一个实施例。
具体实施方式
这里描述了用于处理、分配、同步和呈现对上下文敏感的信息的方法与装置。
用户被淹没在来自一系列信息源的信息中,例如电子邮件、新闻、因特网/万维网、计算机网络等。此外,用户具有多种由他们支配的计算与通信设备:大型机、服务器、工作站、台式PC、电子游戏和机顶盒、蜂窝电话、寻呼机、个人信息管理器(PIM)/个人数字助理(PDA)、膝上型计算机等等。这些设备中的一些位于固定位置(例如台式PC),而有一些随着用户移动(例如蜂窝电话)。这些设备可以访问来自一大批信息源的信息。由于包括货币成本、显示限制(例如尺寸)、功率容量和消耗率(例如电池容量)、高成本和/或低带宽通信信道、计算能力、本地存储装置大小等的因素,设备在其完成计算任务、呈现信息以及与其它设备通信的能力方面可能受到限制。例如,电池供电的蜂窝电话具有由有限的电池储量而造成的有限待机与通话时间,并且通常以在任一给定时刻只能够呈现少量字符或小图像的小显示器为特征。诸如无线连接失败之类的系统局限或故障,会中断或过早地终止信息传送。这可能导致在必要时重要信息对用户不可用。
协调并自动操作在多个设备之间的信息交换,以及及时选择呈现给用户的或用于确定对用户的呈现形式的相关个性化信息,这是有益的。此外,确定在设备之间将传送什么信息以及对将要传送的信息进行优先级区分,并且基于所建立的优先级区分来确定信息传送的顺序,这也是有益的。随着环境改变,对将要再次传送的信息进行过滤和优先级区分是有益的。最后,过滤将要传送的信息并对将要输出到用户的信息的排序进行优先级区分,以及随着环境改变反复对排序进行过滤和优先级区分,这是有益的。
计算机实现的管理服务(这里称为“服务”)可以例如从包括一个或多个服务器、计算机、因特网源、传感器/测量源、传感器网络或其它信息源与信息存储仓库的一个或多个信息源获取可能与一个或多个用户有关的信息。参与此服务的用户和设备(包括本地设备)可以是信息源;对呈现给用户的信息进行过滤和/或优先级区分,以呈现高度相关的信息,并减少或消除被认为几乎不直接相关或不直接相关的信息的显示;通过根据信息来自动决定和/或执行否则需要由用户执行的任务,而减少由用户执行的任务;积极地搜索、获取和分发被认为在将来某个时间与用户相关或可能相关的信息。
所述服务通过减少用户的认知负载可以简化用户的生活,进而允许用户集中精力于具有较高优先级的其它任务。所述服务可以减少用户为得到相关信息所耗费的努力(例如时间与精力),从而提高对变化的环境作出反应的能力。举例来说,所述服务通过“预取”,即在请求相关或有关材料之前搜索并获取它们,可以减少或消除用户为在超链接访问环境(例如万维网)中获取信息所必须经过的超链接的数量。例如,所述服务可以通知用户,他们的飞行航线已被取消,并且还提供一组重新预定的替代对象以从中进行选择。所述服务对用户的需要来说可以是预期的、提示的、自适应的、积极的、个性化的;举例来说,其可以通过跟踪用户的活动(例如浏览选择、位置等)来随时间调整用户的特征描述和偏好。
下面的术语如这里所使用的那样进行定义。
用户:用户这里指的是一个或多个有生命或无生命实体。有生命实体的示例包括个体和个体群,所述个体群例如是家庭、网络、商业单元等。无生命实体的示例包括机器、计算设备、信息存储仓库、软件代理、机械控制系统和制动器等。
智能代理:这些实体代表用户积极地监视多种本地和基干网络的信息源(例如万维网),通知用户感兴趣的项目,其可能含有包括活动、事件和异常的信息。异常包括非预期的、非标准的、非典型的或错误的活动、事件或改变。飞行航线的取消是用户异常的事件示例。
上下文:关于用户和世界的信息,其被用来处理用户可能感兴趣的信息。
规则:考虑上下文来处理(例如评价、过滤和优先级区分)信息的一组或多组逻辑规则。
信息项目:可以包括新闻、天气、电子邮件、活动、事件和异常等用户可能感兴趣的数据。信息项目还可以包括向一个或多个用户提出的查询以及有关用户使用服务的信息(即浏览了什么信息、浏览信息的顺序等)。
传送介质:设备之间的通信路径(以及相关联的通信设备)。其可以包括设备之间的有线、无线、光、感应式线圈或其它网络或直接连接,以及相关联的协议。
存储装置:通常是硬件,用来存储所需的信息项目、上下文和其它有关软件、规则和状态。其可以包括但不限于RAM、ROM、闪存、旋转盘或任何其它基于生物、化学、电、光、机械或量子的存储机构。
设备:设备是与服务相关联的任何计算或呈现设备。设备可以操作来通过传送介质来传送信息。设备可以包括单个单元或多个单元,其中的一些可以进行积极的通信以及/或者积极执行与决定有关的活动和/或行动。设备可以包括呈现设备,该呈现设备可操作来呈现信息,例如通过视觉、听觉、触觉、嗅觉等等。例如,设备可以包括但不限于液晶显示(LCD)屏、扬声器或电话,或者布莱叶盲文(Braille)输出设备。
诸如膝上型计算机、PDA或蜂窝电话的其它设备可以包括进行更实质性的处理(存储、呈现等)能力。在这种情况下,信息可以被传送至设备,设备可以对所接收的信息执行额外的处理。设备可以用于实现本发明的实施例。通过包括例如键盘、麦克风、触觉机构等的多种机构,设备可以接受输入。设备可以包括传感器和变换器,例如诸如GPS(全球定位系统)接收器或基于网络的位置确定机构之类的位置传感器、温度传感器、加速度计等。设备可以:保持在用户的附近(例如在旅行期间、远离办公室的时候等);随用户移动(例如膝上型计算机、PDA、寻呼机、蜂窝电话等);或保持在固定位置(例如台式个人计算机(PC)、信息亭、电话等)。
作为示例而非限制,设备有时指的是可以在公知的客户—服务器计算系统中见到的“服务器”或“客户”,其中服务器可以具有充足的计算资源(存储器、存储装置、计算能力)和对大量信息源的访问能力。其它服务系统组织也是可能的;例如,可以在对等系统中见到的包括这样的设备的系统,该设备具有同等的计算能力并具有对相似信息源的访问能力。使用术语“服务器”和“客户”是为了说明的清楚而不是作为限制。
为了以示例方式而非限制方式进行描述和说明的清楚起见,这里的讨论还提到了“源设备”和“接收设备”。由于这里的机构可能涉及设备之间的双向信息流,所以这些术语通常用来指代给定点处的净信息流,但是也可以指单向信息流。对于单向信息流来说,一个设备发送信息,而另一个设备接收信息。对于净流量来说,两个设备都发送和接收信息,但是在任意的一个时刻,发送信息的设备被认为是“源设备”。无论是单向的还是双向的信息传送,在这里都称为“传送”。
一旦接收到信息项目,设备就可以例如通过格式化并向用户呈现信息的某个部分来行动。接收设备还可以处理信息项目,产生给用户的修改后的呈现或向另一个设备的传送。为了限制对所接收信息的访问和/或基于所接收信息的呈现,可能需要验证;可以通过例如密码、加密密钥、生物测定(例如虹膜扫描、语音确认或指纹分析)或其它验证方法来完成这种验证。设备还可以通过处理来对所接收的信息起作用,并且例如经由机器人的、变换的、或者其它的机构来执行任务,所述机构从信息操作设备接受命令,并且还可以执行物理功能,例如家庭控制、家庭安全、车辆控制、物理目标的操纵等。
逻辑规则(这里称为“规则”)可以包括商业过程规则、社会/文化过程规则和法律(例如宗教食物惯例)、自然定律(例如物理定律)和策略,上述规则可以与上下文结合使用来执行下述任务,所述任务包括选择感兴趣的信息、过滤信息、对信息区分优先级、以及产生新的信息。逻辑规则还可以用来规定个人或组的分类和优先级区分的标准、过程与策略。例如,服务可以具有诸如下列策略:A)在正在向其传送信息的设备上一直保持10%的自由空间(盘或存储器);或者B)由于价格较低而允许下午7:00之后无线传送大文件。另一个示例是逻辑规则的集合,用于协助对电子邮件消息的重要性分类。例如,一个给定的规则可以指示来自个人配偶的紧急消息应当被分类为非常重要,而含有短语“快速发财”会被分类为较低的重要度。为了实现更好地执行服务功能,可以按服务认为合适的那样来增加或减少逻辑规则的集合。逻辑规则可以是推理机、贝叶斯分析机、神经网络等组件,或者可以被直接编码至服务中。逻辑规则可以由例如系统设计者或管理员、用户或其代理来提供。
规则评价与分析允许处理和/或解决上下文、信息和规则中的不一致性。上下文或信息中的不一致性可能是由于这样的原因而产生的,例如用户错误、不正确的信息、来自不一致的多个独立源的信息、书写错误的规则、用于不同情况的冲突的规则集合等等。
信息项目包括一个或多个用户可能感兴趣的数据。将被监视的信息项目(这里称为“信息”或“信息项目”)一般包括来自针对用户(例如个人)和不针对用户的信息源的数据,所述信息源可能与一个或多个用户有关。不针对用户的信息源包括下述项目,例如电影、音乐、照片、小说和非小说类文学作品、天气状况、交通状况、可能影响用户安排的其他人的日程表预约的改变(例如旅行与住宿服务的改变)、紧急情况、无法预料的政治危机、股票市场情况等。针对用户的信息源可以包括用户接收到的电子邮件、用户日程表中的条目、个人特征描述信息、旅行历史等。因而,信息项目还包括活动、事件和那些活动或事件的异常,例如旅行计划取消。
这里的信息项目不同于通常用来传输信息有效载荷的原始数据分组,因为信息项目拥有独立于嵌有该信息项目的数据流的语义意义。信息项目可以被定址到特定用户,例如直接发送到特定用户的电子邮件,或者它们可以是更为通用的,例如新闻项目。信息项目可以是机器产生的,例如基于特定用户的浏览或购买习惯的书籍推荐,或者可以由有生命的用户创建,例如电子邮件消息。信息项目可以由参与服务的设备产生或生成,所述设备包括正在其上进行处理的本地设备。例如,服务在观察用户日程表上的日程预约并发现用户还有没有旅行过的地方之后,可以为用户产生驾驶指导。
上下文是用来处理信息的有关用户和世界的信息。上下文一般包括用户上下文、计算机上下文和通信网络上下文。这里,上下文可以称为“上下文项目”。这些不同的上下文组成部分将在下文详细讨论。通常,任何信息集合都可以被叫做上下文,进而可以由基于上下文的处理系统使用,这在下文进行讨论。
上下文可以是静态的、半静态的或随状况而变的。假定静态上下文为了分析信息项目的目的而在时间变化时保持不变,如在下文所讨论的那样。静态信息的示例是用户的身份、生日或血型。静态信息通常独立于用户状况并且不随其变化。半静态信息包括例如用户偏好(新闻、音乐、体育、股票)、家庭地址、工作电话等信息,这些信息可能随时间改变,但并不频繁改变。通常,由于半静态信息改变不频繁,所以服务可以认为半静态上下文是静态的,因此这里的讨论可以不区分这两类。随状况而变的信息被假定为频繁改变。随状况而变的上下文的示例为:用户的当前活动与位置(例如一般存储于日程表或旅行计划表中);通过传输介质传送数据的等待时间;设备上的自由存储量等。随状况而变的信息可以从设备机构(例如GPS接收机)直接提取,或者可以从其它来源来推断(例如日程表指示会议在芝加哥,这就意味着用户在芝加哥,该城市在可以从绘图软件得到的经度和维度处)。
服务可以在服务中的设备之间传送信息项目和/或上下文。这里,所传送的上下文可以被称为“上下文”或“上下文项目”。如后面所要讨论的那样,由于信息项目可以被服务用作上下文,所以这里提及产生(创建)和/或传送信息项目就意味着产生和/或传送上下文。
上下文通常在服务中的多个设备之间进行分配。设备试图与服务中的其它设备同步(即为了相符合即一致而传送)上下文信息。如下文所述,例如由于不良的连接性,上下文在设备之间可能并不总是完全同步的。基于在服务内部所建立的策略规则(即逻辑规则),可以在认为需要的情况下更新上下文。一般因为用户状态改变而发生上下文更新,所述用户状态改变例如是用户位置的改变、日程表预约的更新、传输模式的改变、多任务负载的改变等。
对服务中的设备分配和更新信息项目与上下文是有益的。理想情况下,在设备之间具有信息项目与上下文的一致性(这里称为“一致性”),也就是说,在任意给定的时刻,所有设备之间的所有信息项目与上下文的完全一致的符合或同步。有时,诸如无线网络覆盖、设备存储容量、货币成本、时间延迟等的限制可能使得一致性无法实现或不是所期望的。考虑到这些约束和限制,提供在未来较短时间周期内服务操作所需的上下文与信息的部分及时传送的能力,这是有益的。这里讨论的用于传送信息项目与上下文的机制包括信息与上下文的完全一致和部分一致分配两者。
基于上下文的处理一般包括评价信息以确定正处理的任务与决定在短期、中期和长期的将来与用户或用户群的相关度。该处理还可以包括确定传送什么信息项目,并确定使用设备用于与物理和虚拟世界交互的能力的方法和/或呈现的最佳模式。该处理可以包括对将要传送到其它设备和/或输出到用户的信息项目区分优先级,并确定要发生的传送的特性。该处理可以考虑多个因素,包括但不限于设备特性(例如存储器大小、存储限制等)、用于执行传送的时间窗、网络特性(例如带宽限制、信道可用性等)、用户活动与兴趣、用户注意的范围、和可能动态影响信息的处理(例如过滤与优先级区分)与传送的其它因素。
通过接合上下文使用逻辑规则,来完成基于上下文的处理,这个过程当被应用于信息项目时,导致决定是否从一个设备向另一个设备传送该信息项目,并且可以相对于将要被传送或输出到用户的其它信息项目来对该信息项目进行额外的优先级区分。图1示出了采用基于上下文处理的实施例。上下文过滤器106确定是否应当将信息项目传送或输出到用户(这里称为“上下文过滤”)。上下文过滤器的输出是多个经过上下文过滤的信息项目。基于上下文的优先级区分器112执行优先级区分过程(这里称为“上下文优先级区分”)。基于上下文的优先级区分器的输出是多个经过上下文优先级区分的信息项目。在一个实施例中,可以有上下文过滤器和上下文优先级区分器两者,而在另一个实施例中可以只有一个。基于上下文的处理的输出是多个经过上下文处理的信息项目。如上所述,所述多个经过上下文处理的信息项目可以含有上下文项目。
过滤和/或优先级区分过程可以是迭代的。在该迭代过程中,可以对正处理的信息项目重复进行过滤和/或优先级区分。在每次连续迭代过程中,可以使用不同的规则和上下文。此外,尽管服务作为整体可以执行过滤与优先级区分两者,但是给定的迭代过程可以只执行过滤或优先级区分,或者其可执行两者。服务可以在其评价了效用函数之后确定不用执行进一步的处理的时候,终止该迭代过程。例如,如果进一步的迭代可能有以下情况则服务可以停止迭代:消耗过多的计算资源;妨碍执行其它有用的工作(例如为了另一个用户);不太可能对产生的信息项目或其优先级有实质的改变等等。
迭代过程有众多重要的益处,例如,它影响上下文处理对改变的环境(信息与上下文)的适应,包括服务质量问题。首先,通过利用越来越复杂(同时在计算上代价高昂)的规则和上下文,它允许服务以越来越精细的粒度来改进将被显示或传送的信息项目。其次,它允许服务限制所传送或显示的信息项目的数量,而不会不必要地限制在处理的早期对分析的选择。第三,迭代过程允许服务提供多种粒度的有用结果,进而允许总的服务“合度的降级”,也就是说不是全功能操作,但同时仍提供某些有用的服务。例如,如果设备上的处理负载由于非同步信息请求或新信息馈送的频率增加而增加,则服务可以分配较少的时间来处理用于特定用户的信息。或者,例如恶化的无线通信信道(例如更高的错误率或低带宽)可能需要服务通过减少将被传送的信息项目的数量来作出反应。
在整个基于上下文的处理过程中,一般通过使用根据上下文的逻辑规则来评价信息对用户的优先级。优先级可以被指定为单个数值属性,或者可以包括多个组成部分,例如相关度、重要度、紧急度等。在一个实施例中,数值优先级等级是基于诸如重要度、相关度、紧急度等属性计算出来的。作为示例,信息项目一般被确定为:1)与用户相关,2)与用户不相关(可以建立子级别,例如较低相关度、较高相关度、编号子级别等),3)在未来某个时候相关,或者4)在未来某个时候可能相关。其它相关度级别可以类似地建立。同样,在整个基于上下文的处理过程中,一般通过使用根据上下文的逻辑规则来确定信息项目的其它属性。这些属性可以被粗略地进行“装箱”,即根据更精细的粒度或子级别来分类。
相关度与重要度是一般被分配给信息项目的度量(metrics)。在一个实施例中,可以通过用于评价的逻辑规则而将所分配的这些值直接关联起来。在这种情况下,例如为了将信息项目定级为“高度重要的”,它必须还被认为是“高度相关的”。在另一个实施例中,所述度量可以是完全独立的。例如,逻辑规则可以确定信息项目对特定用户来说是“高度相关的”,但是“不重要”(例如直接向用户发送的海外娱乐场业务的电子邮件广告)。类似地,例如逻辑规则可以确定信息项目对用户来说“几乎不相关”,但是“高度重要”(例如向一个大公司中所有雇员发送的有关违反安全性的电子邮件,该邮件由于消息的内容或发送者而被视为高度重要,但并非高度相关,因为该电子邮件被定址到数以千计的其它雇员,而且相关度与接收者的数量成反比)。用来确定相关度和重要度的逻辑规则可以以多种方式来实现;本发明对它们的形式未作出任何限制。
可以周期地或连续地查看将被传送的信息项目与上下文的优先级(及其组成部分的度量)。诸如相关度、重要度等属性中的改变一般会影响基于上下文的处理。包含或排除用于传送或显示的信息的改变以及项目的优先级的改变,一般通过可以在包括传送期间的任何时候发生的基于上下文的处理过程来实现。该过程被称为动态处理并且在下文详细讨论。
在本说明书的各个示例中,描述了下述情况,其中重要度或相关度的改变影响了基于上下文的处理的结果以及所产生的内容和将要传送的信息项目与上下文的排序。这些示例举例说明了影响优先级的组成部分属性的改变会怎样影响基于上下文的处理。对于对优先级属性的任何修改,可能会发生类似的影响。提供这些示例作为说明而非限制。
尽管基于上下文的处理的讨论集中于从一个设备向另一个设备传送经过上下文处理的信息项目与上下文的情况,但是基于上下文的处理的使用不限于这些情况。基于上下文的处理还适用于下述情况,其中信息项目没有被传送到另一个设备,而是使用对执行基于上下文的处理的设备可用的用户接口(例如显示器、扬声器等)将其输出到用户。基于上下文的处理还适用于下述情况,其中服务产生不直接输出到用户的信息项目,例如产生由诸如万维网浏览器的其它应用程序或设备使用的信息项目,或者产生为以后获取而存储的信息项目。此外,基于上下文的处理适用于设备内部的情况,其中信息项目没有被传送到另一个设备,而是在设备中的实体或元件之间传送(这里称为“设备内部传送”),例如两个应用程序之间,或者应用程序与显示器之间。
用户上下文是关于用户的信息,包括静态信息(例如名字、生日等)、半静态信息(地址、食物偏好等)和随状况而变的信息(例如当前位置、当前任务、下次预约时间、今天接收的电子邮件等)。用户上下文包括用户身份、伴随用户的其它人或设备、特征化活动的性质、特征化活动的位置、开始时间和持续时间,以及个人可以从日程表找到或推断的信息,并且可以由其它信息源或元数据补充。这里的“元数据”指的是进一步注释、特征化、组织或关联到所讨论信息的辅助因素或信息,这些辅助因素或信息补充或超出了所讨论的信息。用户上下文可以包括形成决定的事实,例如最终用户个人特征描述/偏好信息、用户历史、由内部或外部定位装置确定的用户地理位置、从可由设备访问的日程表预约中推断的位置、用户建立的偏好。用户上下文可以包括世界上下文,世界上下文依次可以包括其它形成决定的因素,所述其它因素包括得自世界条件的形成特征描述的因素。用户上下文经常被用作得到用户表现的基础。这种表现的特征可以包括用户的当前任务、安排等。可以计算未来表现的特征。这些特征值可以是基于绝对、预测或推断值。可以通过很多种机制来得到或更新用户上下文,包括例如检查用户日程表、直接用户输入、位置传感器等。信息项目可以用作用户上下文的组成部分,并且同样地被基于上下文的处理系统使用来对用于显示或传送的其它信息项目进行过滤和优先级区分。
在另一个实施例中,在基于上下文的处理中使用用户上下文的子集,该子集称为“聚焦日程表的上下文”。聚焦日程表的上下文包括用户的任务和位置信息。该上下文可以对当前或过去或将来的时间确定。任务、位置和其它属性可以由用户明确输入、由设备机构(通过传感器、旅行计划等)提供、或者从其它来源(例如日程表、电子邮件、万维网服务等)推断出来。
在一个实施例中,在基于上下文的处理中使用被称为“聚焦任务的上下文”的用户上下文的子集。聚焦任务的上下文包括用户的当前任务、任务开始与结束的时间(任务的持续时间)、以及有关在任务中涉及的其它有生命或无生命实体(例如与会者等)的信息。该信息可以由用户明确输入,或者从多种来源(例如传感器、日程表等)中推断出来。
在一个实施例中,在基于上下文的处理中使用被称为“通信资源上下文”的用户、设备与通信网络上下文的子集。通信资源上下文包括关于这样的设备的信息,通过所述设备可以在给定时间和/或位置联系用户。例如,通信资源上下文可以包括用户可能使用他的工作位置处的台式计算机、蜂窝电话和办公室电话的信息。该信息可以由用户明确输入,或者由服务(例如基于网络的呼叫者ID、用户特征描述信息等)推断出来。
计算机上下文是关于服务中的设备的信息。计算机上下文可以包括硬件、软件和操作系统特征描述的属性,其可以包括但不限于CPU类型、磁盘大小和速度、存储器、显示器、可用软件、操作系统类型和版本、输入/输出硬件、可用的安全/加密机制、验证方法等。此外,计算机上下文一般包括设备使用策略和策略实施机制的信息。一般在计算机上下文中还包括随状况而变的信息,例如:功率储备(例如电池寿命)和消耗速率、存储器中和磁盘上的自由空间量、当前安全信息、当前和被调度的任务等。
通信网络上下文是关于对服务可用的通信介质的信息。通信网络上下文包括网络特征描述属性,这些属性包括声音网络类型、数据网络类型、数据传送速率、网关类型、数据分组大小、成本、安全、验证方法、传送介质特性,对于传送介质来说,其可以包括例如有线、无线、光纤等。此外,网络上下文可以含有随状况而变的信息,包括网络稳定性、带宽/数据传送速率、连接质量、传送等待时间、错误率、网络负载、信号强度、成本、服务质量、网络协议(例如,Ipv4、Ipv6和相关联的协议栈层(传输层、中间件层和应用层等))等。通信网络可以包括但不限于公用或私人计算机网络(例如因特网、LAN、WAN等)、电信基础设施、或者链接两个设备的简单专用(多条)私人电缆或导线。通信网络上下文还可以包括关于网络网关和路由与传输设备(例如路由器、桥接器、集线器等)的信息。通信网络上下文还可以包括关于通常被称为中间箱通信设备(例如网络地址翻译器(NAT)、防火墙、入侵检测系统、缓存管理系统、代理服务器、集中服务器(rendezvous server)、中继服务器等)的传输策略实施设备的信息,以及关于影响网络操作和行为的任何其它协议透明与不透明机制的信息。
下面的内容是基于上下文的处理的示例:
1)用户被安排一个小时内在陌生的地点开会,但是会议被取消了。当服务检测到会议取消事件,它取消对到开会地点的驾驶指导的传达。这是上下文过滤的示例。
2)用户在一周时间内要过25周年纪念日,为此事输入高优先级的“待完成”项目,即购买某种古董银饰。此时,服务检测到距离用户100码内有一个以珠宝知名的古董店。待完成项目连同古董店的名字和方向一起被升高到将要传送到并呈现给用户的项目的优先级队列的顶部。这种类型的基于上下文的处理是过滤与优先级区分的示例。
信息项目组可以是同类的也可以是异类的。同类的多个信息项目是这样的多个信息项目,其中所有项目是相同语义类型,即使它们在句法上不同。例如,一组电子邮件消息是同类的,即使一些电子邮件消息是简单文本编码文件而一些是HTML编码。异类的多个信息项目是这样的多个信息项目,其中项目具有多种语义类型,尽管它们可能以类似句法编码。例如,电子邮件消息和新闻消息可以都被编码为文本文件、简单句法。但是,由于它们在语义上不同,所以它们在一起形成了异类的多个信息项目。
可以将信息项目从一个设备异类地传送到另一个设备,这意味着信息项目传送的顺序不依赖于信息项目的语义类别(例如电子邮件、日程表、待完成列表等)。在异类传送中,所传送的信息项目的类别可以相互交叉,从而例如可以将与日程列表有关系的信息项目从源设备传送到接收设备,随后将待完成列表的信息项目从源设备传送到接收设备,随后传送电子邮件信息项目等。
动态处理是服务改变包含或不包含将要传送或正在传送的信息项目以及如果需要改变相关联优先级顺序分配的能力。动态处理一般作为下述动作的结果而发生:上下文的改变(例如取消安排好的会议)、接收到新信息、用户输入、网络连接的改变(例如无线信号变差、或者从蜂窝电话数据分组网络转换到本地无线以太网连接)、时间过去、或者促使服务重新评价已建立的用于传送的信息项目集合的其它因素(例如包含与优先级区分的重新评价)。在随后的讨论中,任何前述的上下文的变化可以产生由基于上下文的处理系统利用的新的上下文。动态处理可以在传送信息项目期间的任何时间发生。信息项目的包含和优先级区分可以由外部代理或实体确定,该外部处理的结果被传送回来以由服务使用。尽管可能发生反复的重新处理,但是该过程还是被称为动态处理。
如上文所讨论的,一般通过对可用信息项目进行基于上下文的处理来执行过滤与优先级区分,尽管该机制自身并不依赖于基于上下文处理的存在或其使用。在另一个实施例中,过滤与优先级区分机制可以是相当简单的,例如不是基于上下文的机制。由于例如设备所接收的信息或用户输入,动态处理的输出可能快速地改变。
尽管动态处理的讨论集中于经动态处理的信息项目与上下文从一个设备被传送到另一个设备的情况,但是动态处理的使用不限于这些情况。动态处理还适用于下述情况,其中信息项目没有被传送到另一个设备,而是使用对执行动态处理的设备可用的用户接口(例如显示器、扬声器等)被输出到用户。此外,动态处理可以由不直接将信息呈现给用户的服务使用,该服务例如产生由诸如万维网浏览器的其它应用程序或设备使用的信息,或者产生为以后获取而存储的信息项目。动态处理适用于设备内部情况,其中信息项目没有传送到另一个设备,而是在设备中的实体或元件之间传送(这里称为“设备内部传送”),例如两个应用程序之间,或者应用程序与显示器之间。
动态处理可以在服务有机会评价新的上下文的任何时候发生。具体地说,已经确定将传送一组信息项目的服务,可以在已传送了项目的仅仅一部分后(信息项目的合适子集)评价上下文。例如,这可以发生在从另一个设备接收信息项目之后,发生在向另一个设备传送信息项目的一部分之后,或者发生在过去一段时间之后。该过程是高度动态的,并且本发明没有对可能触发该过程的执行的时间或动作进行限制。注意动态处理可以在向另一个设备传送信息项目期间的任何时间(即在已经传送了计划传送的信息项目的合适子集之后)发生。例如,如果一个实施例确定了网络上下文已经相对于在上轮处理期间所见的状态发生了改变,则该实施例可以在已传送了大信息项目的仅仅一部分之后执行动态处理。这里,信息项目集合的一部分被称为信息项目的合适子集。该动态处理在传送了信息项目的一个子集之后发生,该子集包括服务想要传送的项目的一部分。
作为动态处理的示例,假定源设备正在通过无线传送介质向用户的个人数字助理(这里称为PDA)传送信息项目。在将要传送的项目中有含大文档文件的电子邮件,其中服务确定用户可能对该文档文件感兴趣,尽管不是非常感兴趣。在最初处理的时候,源设备确定与PDA连接性良好,因而该大电子邮件消息被包含在要传送的项目中。然而在传送期间,在已经传送了服务想要发送的信息项目的合适子集之后,无线链路上的可用带宽显著降低。在认识到通信网络上下文中的这种改变后,源设备动态处理传送到用户的信息,确定该大电子邮件不应被传送。这种确定不是永久的,例如如果通信网络上下文改变,则随后的动态处理可以确定该大电子邮件应当被传送。也可以发生对其它项目的动态处理。
在一个实施例中,一般通过从一个或多个源设备向(多个)接收设备传送更新信息来更新被认为与用户相关的信息,并且该信息随后可以在认为对用户合适的时候进行显示。例如,使全球天气信息对服务可用。通过上下文过滤,服务中的设备确定天气信息是相关的,例如与用户的计划旅行路线有关的天气预报,并且该信息应当被发送到用户所拥有的的设备(例如PDA)并可对用户呈现。如果天气预报指示改变路线是可取的,则天气信息还可以用于路线更新。例如如果天气预报指示需要改变路线或安排,则服务一般可以动态处理呈现给用户的信息项目。该路线更新和动态处理可以发生在源设备上、发生在接收设备上或者两者之上。一般在周期性基础上为设备更新上下文与信息项目两者;按响应于变化的条件所需要的那样,也可以非周期性地发生更新,所述变化的条件例如是紧急相关信息、新的上下文、用户输入等。
图1是基于上下文的处理系统100的一个实施例的框图。如果将执行过滤和优先级区分两者,则过程开始于101。通过输入端口104输入信息项目102。上下文过滤器106包括上下文和规则,用于确定信息项目是否要被传送到另一个设备和/或可能输出到用户。如果信息项目将被传送到另一个设备,则它被添加到一组经过上下文过滤的信息项目中。如果不发送到另一个设备,则它要么被本地存储(可能由其它用户使用,或者稍后使用),要么从设备上的存储装置中删除。框108确定是否还有信息项目要经过上下文过滤器106。如果没有,则经过上下文过滤的信息项目被传给优先级区分器112的输入端口110。在优先级区分器112中包括规则和上下文,每个经过上下文过滤的信息项目相对于其它经过上下文过滤的信息项目进行优先级区分,并且作为优先级区分后的经过上下文过滤的信息项目进行输出,该信息项目被放置在队列114中其经优先级区分的位置处,并且将通过传送介质(未示出)传送到接收设备或输出到用户。图1示出了例如具有三个优先级区分后的经过上下文过滤的项目(I1、I2和I3)的队列114。
通过在框115处开始并随后在框116处对信息项目进行优先级区分,还可以在不先经过上下文过滤器106的情况下对信息项目的集合进行优先级区分。例如如果信息项目集合之前经过了上下文过滤,或者如果所考虑的信息项目集合被认为不需要过滤,则在没有过滤的情况下进行优先级区分是更好的。同样,服务的一些实施例可以对信息项目进行上下文过滤而不进行优先级区分。如上所讨论的,一些实施例可以通过迭代来增强图1的过程。该迭代过程可以在一些迭代中使用过滤,在一些迭代中使用优先级区分,并在一些迭代中使用过滤和优先级区分两者。
图2是根据实施例的基于上下文的传送过程的框式流程图。在框202中,驻留在设备中的调度器周期性“醒来”,并进行检查来看是否到了从其它设备拉信息的时间。醒来的时间可以在预定的时间间隔或调度处,其由各种内部或外部事件触发,或者用户可以请求从另一个设备拉信息,或者另一个设备可以启动信息传送。醒来的调度可以由服务的任何组件修改。如果没有信息将被传送,则调度器继续处于休眠状态,等待下一次醒来呼叫。如果到了从其它设备拉信息的时间,则在框204内,调度器进行检查来看是否可以与其它设备建立连接。为了示例和说明的目的而非作为限制,假定过程200位于接收设备上。然而应当注意,过程200也可以在发送设备上。
如果在设备之间进行了连接,则在判定框206中确定是否有要传送的信息项目和/或上下文。使用基于上下文的处理来进行该判定。传送的顺序可以根据已传送的或将要传送的信息项目和/或上下文而变化或改变。如果有将要传送的信息项目和/或上下文,则在框208中,准备好在设备之间传送信息项目和/或上下文。在判定框210中,服务确定哪种连接速率(一般以字节/秒或等同的度量进行测量)是可用的和/或更好的,例如高速或低速;具有变动属性(成本、安全、可靠性等)的多个连接速率也是可能的。如果在设备之间有多个连接路径或类型可用,则服务可以评价设备和通信网络上下文以及其它因素,例如信息的优先级区分、要传送的信息量或者每个可用通信类型的成本(例如在时间、费用、功率等方面)等,来确定在传送中采用那种连接。在另一个实施例中,服务可以在传送中采用不只一个连接以优化例如时间、带宽、成本等。作为一个示例,图2示出了具有两个连接速率的服务以及用于确定将在设备之间传送什么的简单模型。如果连接是低速的,则在框212中传送信息项目和/或上下文的精简集合;如果是高速,则在框214中传送信息项目和/或上下文的完全集合。应当注意,其它实施例可以实现对连接状态更为复杂的操作。图2中示出的示例只是为了说明的目的而不是限制本发明。
在框216中,已传送的信息被存储在接收设备中,以由接收设备用来按需要呈现给用户,或者用于在服务或接收设备认为合适的时候进行呈现,或者用于传送到另一个设备。在存储信息之后,过程返回到框201并等待下一次启动或醒来呼叫。
在另一个实施例中,在设备之间经由包括N个阶段的多阶段传送过程来传送信息项目与上下文,其中N是正整数。作为示例,多阶段传送过程可以包括四个阶段:
阶段1  通信信道和设备特性确定
阶段2  关键的信息项目/上下文传送:最高优先级传送
阶段3  完全信息项目与上下文传送
阶段4  预取和/或点滴式传送(trickle transfer)
现在将进一步描述这些阶段的每个。根据诸如接收设备的能力之类的因素,对用户的呈现可以与信息的传送同时发生。
在阶段1中,服务确定通信设备之间的通信信道的属性和所涉及的设备的特性。上文将通信网络特性作为通信网络上下文的一部分进行了讨论。两个设备都可以评价通信网络上下文。通信网络上下文可以由单个特性(定量、半定量或定性)值(这里称为“属性”)来表示,或者由表征通信网络的一组值来表示。服务使用通信网络上下文来确定将要在设备之间传送信息项目和/或上下文的定时和优先级区分。例如,如果服务确定通信网络属性有利于传送,则进行优先级区分以及即时传送高优先级的信息项目和/或上下文的需要降低;相反,可以以最大传送速率进行完全传送。然而,如果属性是不利的,则进行优先级区分以及传送高优先级的信息项目和/或上下文的需要升高,因而信息项目和/或上下文被排序以首先传送。例如如果使用了不安全的通信信道,则服务可以防止敏感或机密的信息项目与上下文的传送,例如在敌对地区中旅行的重要人物(VIP)的位置或安排。如果动态处理在传送之前或者在传送期间发生,则可以改变要传送的信息项目和/或上下文的顺序。此外,在阶段1期间,服务确定设备属性,包括例如电池状态、显示能力、存储器空间等。该信息包含在设备上下文中,并且在基于上下文的处理中使用。
在阶段2,完成高优先级的信息项目和/或上下文的传送。该步骤确保接收设备将具有对用户高重要度的或即时的信息项目和/或上下文,这在连接变得断断续续的情况下尤为重要。如果动态处理在传送之前或者在传送期间发生,可以改变要传送的信息项目和/或上下文以及它们的排序。
在阶段3,传送被认为在未来的很短时间帧内对设备的用户重要的所有信息项目和/或上下文。如果动态处理在传送之前或者在传送期间发生,可以改变要传送的信息项目和/或上下文以及它们的排序。
在阶段4,传送可能相关但短期来说不十分重要或者将来可能有用处的信息项目和/或上下文集合。阶段1、2和3传送预计在近期有用的信息。术语“预取”指的是在需要信息之前传送信息;也就是说,预先取出将来需要的信息。因此阶段1、2和3针对短期预取。阶段4的目的是执行长期预取;也就是说,取出预计在未来较远的时候需要的信息。动机是避免或减轻下述有害影响,即不得不在稍后的时候进行某些传送,或者在稍后的时间根本不能进行传送。例如,如果高带宽、低成本的通信网络在已知的时间间隔内可用,则传送大信息项目和/或上下文在用户的成本与时间两个方面可能是有利的,例如在去外国的旅途中需要外语翻译词典之前就传送外语翻译词典。类似地,例如,如果预计网络连接在某段时间期间(例如用户将移动进入已知没有任何无线网络覆盖的区域)不可用,则可能只有一种方法来传送所需要的信息。阶段4的长期预取可以利用通信网络上的空闲时间和带宽,并且可以用来改善服务。例如,假定用户正去芝加哥旅行。在用户还在家里时,服务就使用有线连接将含有城市指南的大文件传送给用户的PDA。该传送在用户动身之前就发生,并且没有直接的用户交互。预取避免了通过无线通信信道进行传送的成本与时间。
对于大信息传送,阶段4可以采用“点滴”传送模式来通过多个连接“会话”完成预取操作,其中会话指的是在两个或多个设备之间一段时间的连续连接。这样,单个信息项目或上下文在发送设备处被分为若干个较小的块,随后被传送到接收设备并在接收设备处重新组装,在任何一个给定的会话期间可能只发送几个块。例如,服务可以将大的城市指南点滴式传送到无线设备,传送发生在几个会话上,从而不会对任何一个会话产生有害影响。点滴模式传送可以在呈现信息项目的同时由接收设备在后台继续执行。将要以点滴模式传送的信息项目的集合一般早于系统确定用户需要它的时候被传送,并且利用未用时间和通信网络带宽。在某些情况下,可能点滴传送没有及时传送所需的所有块。在这种情况下,其余的信息可以按要求被发送(或者通过阶段2或3),并且随后重新组装。或者,只有传送到设备的信息被重新组装并用于进一步使用,而不获取其余的信息。如果动态处理在传送之前或者在传送期间发生,可以改变要传送的信息项目和/或上下文以及它们的排序。
多阶段传送使得信息能够被处理(并且如果需要,可以被过滤和进行优先级区分)并在设备之间传送,从而确保在对接收设备和用户可能并不马上有用但在将来可能有用的那些信息项目和/或上下文(例如阶段4中传送的信息项目和/或上下文)之前,传送关键的信息项目和/或上下文。通过对信息项目进行过滤和优先级区分,服务将传送关键的信息项目和/或上下文,并且如果处于断开状态,则接收设备更可能可以访问必要的信息项目和/或上下文,使得它能够用作服务内的决定和/或分发机构。
在整个动态处理过程中,该多阶段传送过程在结构上可以改变,这一般是通过创建和排序子阶段或通过减少要传送的信息量来增加阶段的数量。例如,一部分信息的优先级的改变可能引起阶段3中优先级的改变。从而,要在阶段3传送的信息通过由基于上下文的处理建立的包含和优先级区分,可以被分配特定的排序,并且随后以所建立的顺序传送。
下面是动态处理的示例:用户在很远的地点有一个安排的会议。该会议记录在用户的主日程表上,该日程表存储在服务器中。服务器已经为用户创建了驾驶指导,以使得他能从他的当前位置到达开会地点。然而,用户通过用户PDA上的日程表程序取消了该会议。在多阶段传送过程期间,在将驾驶指导从服务器传送到PDA之前,PDA将会议取消信息项目传送到服务器。在接收到取消信息项目之后,服务器通过动态处理去掉到PDA的驾驶指导传送。
图3是多阶段传送过程的控制流的框图。在传送过程中涉及的发送与接收设备两者可以使用相同的基本控制流;信息项目和上下文可以在设备之间沿任何一个方向传送。在302,或者通过用户启动或者更经常地通过自动启动例程来开始传送。在框304中,初始阶段X=1开始。如果阶段X之前被中断,则可以在框305中重新开始。在框306中,通过在设备之间传送信息项目和/或上下文,完成阶段X传送。在308,所传送的信息项目被呈现在接收设备上,例如通过视觉显示器;或者可以发生另一种呈现模式,例如音频呈现,或者可以由接收设备执行动作,或者项目可以被存储在设备上用于将来显示或执行。在框310中,控制流前进到下一个阶段X+1。
在判定框312,调用连续效用函数。效用函数确定进行到下一个同步阶段X+1是否是所希望的。效用函数参数可以包括传输信道质量、存在要传送的其它信息、时间与字节计数的限制、货币成本、用于给设备供电的可用能量以及其它因素。效用函数允许在阶段中间的评价与自适应,包括动态处理。如果效用函数评价的答案为“是”(即继续迭代),则控制循环返回到框306,在那里启动阶段X+1。如果效用函数评价产生“否”,则控制流进行到框314。(单个或多个)发送或接收设备可以确定过程应当终止。例如,假定在阶段X过程中涉及因特网上的服务器和用户的PDA。例如,因为例如PDA用完了存储装置(例如闪存空间)或者电池供电不足,PDA可以在框314终止阶段X。例如,在用户已经超出某个带宽限制或者服务器已变得过载的情况下,服务器可以终止过程。
图4是多阶段传送过程的单个阶段(图3中的项目306)的框图。如图3所讨论的,在传送过程中涉及的每个设备都可以使用这里描述的相同基本控制流。在该描述以及图4中,根据实施例,X是在N阶段传送的N个阶段中的任何一个。在402,阶段X开始。在判定框404中,关于源设备和接收设备是否被连接进行评价。如果答案为“否”,则在框406对连接是新的还是被中断的进行第二次评价。如果连接是新的,则在框408中进行连接,并且过程流在经过判定框404之后继续。如果判定框406中的评价结果为连接是被中断的,则通过使用另一个效用函数在框410进行另一个判定。判定框410中的效用函数评价最好是恢复、重新开始还是退出。如果效用函数指示恢复,则过程流进行到框408,在那里再次尝试连接。如果指示重新开始,则过程流进行到框401,在那里再次开始阶段1。如果效用函数指示退出是最合适的,例如由于连接或传送故障的原因,则过程控制流进行到框412。在框412中完成连接故障清除之后,过程流在426从阶段X退出。
如果如在判定框404中所确定的那样,设备被连接,则在框414中评价上下文,因为即使在给定的传送阶段中,网络连接属性和其它上下文也可能随时间改变。此外,用户输入是上下文的一部分,其可以改变在设备之间的传送中包含的那些信息项目和它们的动态处理结果。用户输入、信息项目或上下文的改变,可以引起在信息项目的包含或不包含(以及所需要的其它相关联的元数据,例如优先级等)方面的改变;即在一个阶段内对将要传送的信息项目和/或上下文进行动态处理。用户输入结果可以从一个设备传送到另一个设备。
在框416中,为当前阶段并可能为将来阶段对信息项目和/或上下文进行分割和处理。这里服务同样可以对将要传送的信息项目和/或上下文进行动态处理。
在框418中,信息项目和/或上下文被封装以用于传送。在框420中,为了与接收设备的能力和格式预期(例如用于膝上型计算机的万维网浏览器,或者用于电话/声音接口的文转声等)相匹配,对信息项目和/或上下文进行格式化。在框422中,传送信息项目和/或上下文。传送可以是双向的,两个设备都可以发送信息项目和/或上下文。在判定框424中,确定是否有其它的信息项目和/或上下文要被传送:如果“是”,则过程从判定框404再次开始。如果没有要传送的信息项目和/或上下文,则传送过程的这个阶段完成,并且过程流在框426处结束(在图3中的框308处恢复控制流)。
单个阶段或多个阶段传送过程的一些特征可以包括:
所传送的信息项目和/或上下文可以被分割为集合。这些集合可以包括异类(语义不同)的信息项目和/或上下文以及不同的项目大小。
动态处理使得传送过程在本质上是自适应的。给定的阶段可以包括主循环的零次或多次迭代,所述主循环包括:
第一步,连接检查和/或重新建立/重新开始/恢复。
第二步,上下文的评价,包括当前设备到设备的网络连接和任何近来的用户输入。上下文可以影响将要传送的信息项目和/或上下文的处理(例如包含和优先级)。可以传送或不传送用户输入结果,并且可以根据上下文来按照用户输入结果动作。例如,对娱乐新闻项目的用户请求可以由较高优先级的飞行取消信息和重新预定选择所代替。
第三步,为当前阶段以及后续阶段处理(例如分割、过滤和优先级区分)信息项目和/或上下文。在简单的简并实现中,所有传送在阶段1中静态计算。优先级区分一般是根据基于上下文的处理的。
第四步,转换代码,即以和接收设备的能力相匹配的方式,来格式化信息项目和/或上下文。
第五步,执行信息项目和/或上下文传送。
第六步,迭代。
存在这样的层次体系,算法、迭代和传输围绕该层次体系而建立。该层次体系包括:多个信息项目、信息项目和信息分组。
可以从一个或多个信息分组来构建信息项目。上下文也可以被分成一个或多个信息分组。信息分组并不一定如信息项目那样具有语义意义。在一个实施例中信息分组通常可以等同于网络协议数据分组,在另一个实施例中也可以不同。例如,在一个实施例中,可以由单个信息分组表示日程表条目,而由信息分组的集合表示城市旅游指南。信息分组可以包括排序信息,这样它们可以正确的顺序组装在一起,还可以包括错误检测与纠错、加密信息等。
迭代可以围绕更精细的粒度或者信息项目和/或上下文的传送/接收来组织。信息分组一般是信息传送的最小单元;一些信息项目可以包括多个分组。信息项目的通用形式,例如基本日程表条目信息,可以形成单个分组。过程中的迭代只能在信息项目边界、信息分组边界或任何其它点发生。如上文所讨论的,动态处理可以由任何事件触发。
信息项目和/或上下文可以差异形式或非差异形式发送。差异形式指的是只有驻留于源设备和接收设备上的信息项目和/或上下文之间的差异即更新被传送。允许在信息项目和/或上下文水平或者所传输的分组水平上进行循环迭代,这提供了高水平的灵活性和自适应性。可以以很少的等待时间来快速地适应诸如变化的连接条件、用户上下文和用户输入之类的因素。
使用效用函数来以精细粒度评价连续处理。
图5示出了根据本发明实施例的系统500。设备502包括处理器和存储器。在设备502处可以处理一个或多个信息项目。处理可以包括上下文过滤、优先级区分、或者上下文过滤与优先级区分两者。一个或多个经处理的信息项目可以被提供给用户、存储或者传送。经处理的信息项目可以在设备502内部传送,例如从一个软件应用程序到另一个软件应用程序;或者,经处理的信息项目可以传送到设备502之外。
图6示出了根据本发明的系统的另一个实施例。设备602包括处理器和存储器。在设备602处可以处理一个或多个信息项目。处理可以包括上下文过滤、优先级区分、或者上下文过滤与优先级区分两者。一个或多个经处理的信息项目可以被提供给用户、存储或者传送。例如,可以通过附装的显示器将信息项目提供给用户。包括处理器和存储器的第二设备604可以接收一个或多个经处理的信息项目。第二设备604可以向用户提供一个或多个经处理的信息项目;存储一个或多个经处理的信息项目;或者传送一个或多个经处理的信息项目。
上面描述的操作可以作为将要被执行的指令集合而被存储在计算机系统的存储器中。此外,执行上述操作的指令还可以存储在其它形式的机器可读介质上,包括磁盘和光盘。例如,一个实施例的操作可以存储在诸如磁盘或光盘的机器可读介质上,其通过盘驱动器(或者机器可读介质驱动器)可访问。而且,可以通过数据网络以编译或链接版本的形式将指令下载到计算设备中。
或者,执行上面讨论的操作的逻辑可以在其它计算机和/或机器可读介质中实现,例如离散硬件组件中,所述离散硬件组件例如是大规模集成电路(LSI)、专用集成电路(ASIC)、诸如电可擦除可编程只读存储器(EEPROM)的固件;以及电、光、声和其它形式的传播信号(例如载波、红外信号、数字信号等)等。
在前述的说明书中,已经参考本发明的具体实施例对本发明进行了描述。然而,很明显在不偏离本发明较宽的精神和范围的条件下,可以对其进行各种修改和改变。因此,说明书和附图被认为是示例性的而非限制意义的。

Claims (31)

1.一种方法,包括:
传送第一多个信息项目的合适子集;
接收与所述第一多个信息项目分离的至少一个信息项目;
形成包含所述第一多个信息项目和所述至少一个信息项目的第二多个信息项目;以及
处理所述第二多个信息项目,提供至少一个经过动态处理的信息项目。
2.如权利要求1所述的方法,其中所述处理包括过滤、优先级区分、以及过滤与优先级区分三者中的一个。
3.如权利要求2所述的方法,其中当所述处理包括优先级区分时,所述方法还包括:
以优先级顺序传送至少两个经过动态处理的信息项目。
4.如权利要求1所述的方法,其中所述第二多个信息项目包括所述第一多个信息项目的所述合适子集的补集,所述补集包括在所述第一多个信息项目中而未在所述第一多个信息项目的所述合适子集中的信息项目。
5.如权利要求1所述的方法,其中所述第一多个信息项目是异类的。
6.如权利要求1所述的方法,其中所述第二多个信息项目是异类的。
7.如权利要求1所述的方法,其中所述第一多个信息项目中的至少一个是从用户输入接收的。
8.如权利要求1所述的方法,其中所述第二多个信息项目中的至少一个是从用户输入接收的。
9.如权利要求1所述的方法,其中所述第一多个信息项目中的至少一个是从分离的第二设备接收的。
10.如权利要求1所述的方法,其中所述第二多个信息项目中的至少一个是从第二设备接收的。
11.如权利要求1所述的方法,还包括将经过动态处理的信息项目提升到用户可访问的状态。
12.如权利要求1所述的方法,其中当所述处理包括优先级区分时,所述提供包括以优先级顺序呈现。
13.如权利要求1所述的方法,还包括将经过动态处理的信息项目传送到分离的第二设备。
14.如权利要求1所述的方法,还包括在设备内部传送经过动态处理的信息项目。
15.一种机器可读介质,其上存储有指令集合,当所述指令集合被执行时使得机器执行包括以下步骤的方法:
传送第一多个信息项目的合适子集;
接收与所述第一多个信息项目分离的至少一个信息项目;
形成包含所述第一多个信息项目和所述至少一个信息项目的第二多个信息项目;以及
处理所述第二多个信息项目,提供至少一个经过动态处理的信息项目。
16.如权利要求15所述的机器可读介质,其中所述处理包括过滤、优先级区分、以及过滤与优先级区分三者中的一个。
17.如权利要求16所述的机器可读介质,其中当所述处理包括优先级区分时,所述方法还包括:
以优先级顺序传送至少两个经过动态处理的信息项目。
18.如权利要求15所述的机器可读介质,其中所述第二多个信息项目包括所述第一多个信息项目的所述合适子集的补集,所述补集包括在所述第一多个信息项目中而未在所述第一多个信息项目的所述合适子集中的信息项目。
19.如权利要求15所述的机器可读介质,其中所述第一多个信息项目是异类的。
20.如权利要求15所述的机器可读介质,其中所述第二多个信息项目是异类的。
21.如权利要求15所述的机器可读介质,其中所述第一多个信息项目中的至少一个是从用户输入接收的。
22.如权利要求15所述的机器可读介质,其中所述第二多个信息项目中的至少一个是从用户输入接收的。
23.如权利要求15所述的机器可读介质,其中所述第一多个信息项目中的至少一个是从分离的第二设备接收的。
24.如权利要求15所述的机器可读介质,其中所述第二多个信息项目中的至少一个是从分离的第二设备接收的。
25.如权利要求15所述的机器可读介质,还包括将经过动态处理的信息项目提升到用户可访问的状态。
26.如权利要求15所述的机器可读介质,其中当所述处理包括优先级区分时,所述提供步骤包括以优先级顺序呈现。
27.如权利要求15所述的机器可读介质,还包括将经过动态处理的信息项目传送到分离的第二设备。
28.如权利要求15所述的机器可读介质,还包括在设备内部传送经过动态处理的信息项目。
29.一种装置,包括:
第一单元,用于传送第一多个信息项目的合适子集;
第二单元,连接到所述第一单元,用于接收与所述第一多个信息项目分离的至少一个信息项目;
第三单元,连接到所述第二单元,用于形成包含所述第一多个信息项目和所述至少一个信息项目的第二多个信息项目;以及
第四单元,连接到所述第三单元,用于处理所述第二多个信息项目,提供至少一个经过动态处理的信息项目。
30.如权利要求29所述的装置,其中所述第四单元的所述处理包括过滤、优先级区分、以及过滤与优先级区分三者中的一个。
31.如权利要求30所述的装置,其中当所述第四单元的所述处理包括优先级区分时,所述第四单元还以优先级顺序传送至少两个经过动态处理的信息项目。
CNB038026813A 2002-01-24 2003-01-23 基于上下文的信息处理 Expired - Fee Related CN100416557C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/057,163 2002-01-24
US10/057,163 US20050060365A1 (en) 2002-01-24 2002-01-24 Context-based information processing

Publications (2)

Publication Number Publication Date
CN1623152A true CN1623152A (zh) 2005-06-01
CN100416557C CN100416557C (zh) 2008-09-03

Family

ID=27609388

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB038026813A Expired - Fee Related CN100416557C (zh) 2002-01-24 2003-01-23 基于上下文的信息处理

Country Status (5)

Country Link
US (1) US20050060365A1 (zh)
EP (1) EP1470500A2 (zh)
CN (1) CN100416557C (zh)
AU (1) AU2003209367A1 (zh)
WO (1) WO2003062984A2 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103282957A (zh) * 2010-08-06 2013-09-04 谷歌公司 基于上下文自动监测话音输入
CN104272709A (zh) * 2012-05-07 2015-01-07 高通股份有限公司 推断的上下文的日程表匹配和标签传播

Families Citing this family (112)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8352400B2 (en) 1991-12-23 2013-01-08 Hoffberg Steven M Adaptive pattern recognition based controller apparatus and method and human-factored interface therefore
US8606851B2 (en) 1995-06-06 2013-12-10 Wayport, Inc. Method and apparatus for geographic-based communications service
US5835061A (en) * 1995-06-06 1998-11-10 Wayport, Inc. Method and apparatus for geographic-based communications service
US7904187B2 (en) 1999-02-01 2011-03-08 Hoffberg Steven M Internet appliance system and method
AU773884B2 (en) 1999-11-03 2004-06-10 Cisco Technology, Inc. Distributed network communication system which enables multiple network providers to use a common distributed network infrastructure
US20030158917A1 (en) * 2002-02-04 2003-08-21 Andrew Felix G.T.I. Modifying system configuration based on parameters received from an infrastructure
US8516114B2 (en) * 2002-03-29 2013-08-20 International Business Machines Corporation Method and apparatus for content pre-fetching and preparation
US20040088375A1 (en) * 2002-11-01 2004-05-06 Sethi Bhupinder S. Method for prefetching Web pages to improve response time networking
US7386279B2 (en) * 2003-04-02 2008-06-10 Sun Microsystems, Inc. Context based main screen for mobile device
US7477892B2 (en) * 2003-04-02 2009-01-13 Sun Microsystems, Inc. System and method for advanced service interaction
US7577636B2 (en) 2003-05-28 2009-08-18 Fernandez Dennis S Network-extensible reconfigurable media appliance
US8645471B2 (en) * 2003-07-21 2014-02-04 Synchronoss Technologies, Inc. Device message management system
US7398327B2 (en) * 2003-11-25 2008-07-08 Robert Bosch Gmbh Apparatus, method and system for providing automated services to heterogenous devices across multiple platforms
US20050119927A1 (en) * 2003-12-02 2005-06-02 International Business Machines Corporation Accounting for traveling time within scheduling software
JP4348227B2 (ja) * 2004-03-31 2009-10-21 富士通株式会社 階層型パケット処理システム、中継装置、サーバ、その方法、及びそのプログラム
KR100809585B1 (ko) * 2004-12-21 2008-03-07 삼성전자주식회사 휴대단말기의 일정 관련 이벤트 처리 장치 및 방법
US7764641B2 (en) 2005-02-05 2010-07-27 Cisco Technology, Inc. Techniques for determining communication state using accelerometer data
US8819569B2 (en) 2005-02-18 2014-08-26 Zumobi, Inc Single-handed approach for navigation of application tiles using panning and zooming
US20060253807A1 (en) * 2005-04-05 2006-11-09 Hirokazu So Recording medium and data processing device
US7584499B2 (en) * 2005-04-08 2009-09-01 Microsoft Corporation Policy algebra and compatibility model
US8548963B2 (en) * 2005-08-09 2013-10-01 International Business Machines Corporation Context sensitive media and information
WO2007043001A2 (en) * 2005-10-14 2007-04-19 Koninklijke Philips Electronics N.V. Method and apparatus for optimizing a network
US7860968B2 (en) * 2005-11-21 2010-12-28 Sap Ag Hierarchical, multi-tiered mapping and monitoring architecture for smart items
US8156208B2 (en) * 2005-11-21 2012-04-10 Sap Ag Hierarchical, multi-tiered mapping and monitoring architecture for service-to-device re-mapping for smart items
US8005879B2 (en) * 2005-11-21 2011-08-23 Sap Ag Service-to-device re-mapping for smart items
US20070118496A1 (en) * 2005-11-21 2007-05-24 Christof Bornhoevd Service-to-device mapping for smart items
US20070168430A1 (en) * 2005-11-23 2007-07-19 Xerox Corporation Content-based dynamic email prioritizer
US8522341B2 (en) 2006-03-31 2013-08-27 Sap Ag Active intervention in service-to-device mapping for smart items
JP4929803B2 (ja) * 2006-04-10 2012-05-09 富士通株式会社 認証方法、認証装置、および、認証プログラム
US20070250257A1 (en) * 2006-04-20 2007-10-25 Sbc Knowledge Ventures, L.P. Geopositional reminder updating
US7890568B2 (en) * 2006-04-28 2011-02-15 Sap Ag Service-to-device mapping for smart items using a genetic algorithm
US8296408B2 (en) * 2006-05-12 2012-10-23 Sap Ag Distributing relocatable services in middleware for smart items
US8296413B2 (en) * 2006-05-31 2012-10-23 Sap Ag Device registration in a hierarchical monitor service
US8065411B2 (en) * 2006-05-31 2011-11-22 Sap Ag System monitor for networks of nodes
US8131838B2 (en) * 2006-05-31 2012-03-06 Sap Ag Modular monitor service for smart item monitoring
US7912187B1 (en) 2006-06-01 2011-03-22 At&T Mobility Ii Llc Transcoding voice to/from text based on location of a communication device
EP2027536B1 (en) * 2006-06-13 2012-07-11 BRITISH TELECOMMUNICATIONS public limited company Quality based service selection in a peer to peer network
WO2007144568A1 (en) * 2006-06-13 2007-12-21 British Telecommunications Public Limited Company Peer to peer reporting system on reputation of quality for service
US8396788B2 (en) * 2006-07-31 2013-03-12 Sap Ag Cost-based deployment of components in smart item environments
US8072902B2 (en) 2006-08-07 2011-12-06 Cisco Technology, Inc. Techniques for distributing data among mobile nodes based on dynamically generated data objects in a distributed object-oriented database
US20080082490A1 (en) * 2006-09-28 2008-04-03 Microsoft Corporation Rich index to cloud-based resources
US7941133B2 (en) * 2007-02-14 2011-05-10 At&T Intellectual Property I, L.P. Methods, systems, and computer program products for schedule management based on locations of wireless devices
US9444898B1 (en) * 2007-03-19 2016-09-13 Aol Inc. Annotated communication
US8914786B2 (en) 2007-03-23 2014-12-16 Zumobi, Inc. Systems and methods for controlling application updates across a wireless interface
US20120207098A1 (en) * 2007-03-23 2012-08-16 Zenzui, Inc. Systems and methods for controlling application updates across a wireless interface
US20080244417A1 (en) * 2007-03-30 2008-10-02 Simpson Nigel D Presence-enhanced calendaring
US20080306798A1 (en) * 2007-06-05 2008-12-11 Juergen Anke Deployment planning of components in heterogeneous environments
US20080305876A1 (en) * 2007-06-07 2008-12-11 Koplar Interactive Systems International, L.L.C. Method and system for response authorization
US8527622B2 (en) * 2007-10-12 2013-09-03 Sap Ag Fault tolerance framework for networks of nodes
US8838817B1 (en) 2007-11-07 2014-09-16 Netapp, Inc. Application-controlled network packet classification
US8468440B2 (en) * 2007-12-21 2013-06-18 The Invention Science Fund I, Llc Look ahead of links/alter links
US8949977B2 (en) * 2007-12-21 2015-02-03 The Invention Science Fund I, Llc Look ahead of links/alter links
US8473836B2 (en) * 2007-12-21 2013-06-25 The Invention Science Fund I, Llc Look ahead of links/alter links
US20090165134A1 (en) * 2007-12-21 2009-06-25 Searete Llc, A Limited Liability Corporation Of The State Of Delaware Look ahead of links/alter links
US8489981B2 (en) * 2007-12-21 2013-07-16 The Invention Science Fund I, Llc Look ahead of links/alter links
US8793616B2 (en) 2007-12-21 2014-07-29 The Invention Science Fund I, Llc Look ahead of links/alter links
US8495486B2 (en) * 2007-12-21 2013-07-23 The Invention Science Fund I, Llc Look ahead of links/alter links
US20090177601A1 (en) * 2008-01-08 2009-07-09 Microsoft Corporation Status-aware personal information management
US8566833B1 (en) * 2008-03-11 2013-10-22 Netapp, Inc. Combined network and application processing in a multiprocessing environment
US8634796B2 (en) 2008-03-14 2014-01-21 William J. Johnson System and method for location based exchanges of data facilitating distributed location applications
US8897742B2 (en) 2009-11-13 2014-11-25 William J. Johnson System and method for sudden proximal user interface
US8639267B2 (en) 2008-03-14 2014-01-28 William J. Johnson System and method for location based exchanges of data facilitating distributed locational applications
US8761751B2 (en) 2008-03-14 2014-06-24 William J. Johnson System and method for targeting data processing system(s) with data
US8600341B2 (en) 2008-03-14 2013-12-03 William J. Johnson System and method for location based exchanges of data facilitating distributed locational applications
US8566839B2 (en) 2008-03-14 2013-10-22 William J. Johnson System and method for automated content presentation objects
US8250629B2 (en) * 2008-04-01 2012-08-21 Bridgewater Systems Corp. Systems and methods for flexible service delivery network services
US8185962B2 (en) * 2008-11-21 2012-05-22 Xerox Corporation Apparatus, system, and method for enforcing policy requirements associated with a service
US20100332496A1 (en) * 2009-06-26 2010-12-30 Microsoft Corporation Implicit product placement leveraging identified user ambitions
US20110029670A1 (en) * 2009-07-31 2011-02-03 Microsoft Corporation Adapting pushed content delivery based on predictiveness
US8713027B2 (en) * 2009-11-18 2014-04-29 Qualcomm Incorporated Methods and systems for managing electronic messages
US20110296430A1 (en) * 2010-05-27 2011-12-01 International Business Machines Corporation Context aware data protection
US9002924B2 (en) 2010-06-17 2015-04-07 Microsoft Technology Licensing, Llc Contextual based information aggregation system
US8494931B2 (en) * 2010-07-08 2013-07-23 International Business Machines Corporation Management of actions based on priority levels and calendar entries
US20120209907A1 (en) * 2011-02-14 2012-08-16 Andrews Anton O A Providing contextual content based on another user
US8965827B2 (en) 2011-03-30 2015-02-24 Computer Sciences Corporation Rules execution platform system and method
US9501531B2 (en) 2011-05-18 2016-11-22 Microsoft Technology Licensing, Llc Contextual relevance engine for activity feeds
US8923147B2 (en) * 2011-10-03 2014-12-30 Qualcomm Incorporated Method and apparatus for filtering and processing received vehicle peer transmissions based on reliability information
EP3373560B1 (en) 2011-11-15 2022-08-10 Nicira Inc. Network control system for configuring middleboxes
US9712530B2 (en) 2012-01-06 2017-07-18 Optio Labs, Inc. Systems and methods for enforcing security in mobile computing
US9609020B2 (en) 2012-01-06 2017-03-28 Optio Labs, Inc. Systems and methods to enforce security policies on the loading, linking, and execution of native code by mobile applications running inside of virtual machines
US9787681B2 (en) 2012-01-06 2017-10-10 Optio Labs, Inc. Systems and methods for enforcing access control policies on privileged accesses for mobile devices
US9390403B2 (en) * 2012-02-09 2016-07-12 International Business Machines Corporation Augmented screen sharing in an electronic meeting
WO2013133870A2 (en) 2012-03-07 2013-09-12 Snap Trends, Inc. Methods and systems of aggregating information of social networks based on geographical locations via a network
US9519640B2 (en) * 2012-05-04 2016-12-13 Microsoft Technology Licensing, Llc Intelligent translations in personal see through display
US9530120B2 (en) * 2012-05-31 2016-12-27 Apple Inc. Automatically updating a display of text based on context
US9019174B2 (en) 2012-10-31 2015-04-28 Microsoft Technology Licensing, Llc Wearable emotion detection and feedback system
US9265458B2 (en) 2012-12-04 2016-02-23 Sync-Think, Inc. Application of smooth pursuit cognitive testing paradigms to clinical drug development
US9773107B2 (en) 2013-01-07 2017-09-26 Optio Labs, Inc. Systems and methods for enforcing security in mobile computing
US9380976B2 (en) 2013-03-11 2016-07-05 Sync-Think, Inc. Optical neuroinformatics
US20140282992A1 (en) * 2013-03-13 2014-09-18 Optio Labs, Inc. Systems and methods for securing the boot process of a device using credentials stored on an authentication token
US9906608B2 (en) * 2013-04-30 2018-02-27 International Business Machines Corporation Intelligent adaptation of mobile applications based on constraints and contexts
WO2014209900A1 (en) 2013-06-23 2014-12-31 Intel Corporation Selective sharing of user information based on contextual relationship information, such as to crowd-source gifts of interest to a recipient
US9477991B2 (en) 2013-08-27 2016-10-25 Snap Trends, Inc. Methods and systems of aggregating information of geographic context regions of social networks based on geographical locations via a network
US9953079B2 (en) * 2013-09-17 2018-04-24 International Business Machines Corporation Preference based system and method for multiple feed aggregation and presentation
US9894489B2 (en) 2013-09-30 2018-02-13 William J. Johnson System and method for situational proximity observation alerting privileged recipients
USRE49652E1 (en) 2013-12-16 2023-09-12 Qualcomm Incorporated Power saving techniques in computing devices
US9912775B2 (en) 2013-12-19 2018-03-06 Intel Corporation Method and apparatus for communicating between companion devices
US9756091B1 (en) 2014-03-21 2017-09-05 Google Inc. Providing selectable content items in communications
EP3127118A4 (en) * 2014-03-31 2017-12-06 GoPro, Inc. Distributed video processing and selective video upload in a cloud environment
US9984293B2 (en) 2014-07-23 2018-05-29 Gopro, Inc. Video scene classification by activity
US9685194B2 (en) 2014-07-23 2017-06-20 Gopro, Inc. Voice-based video tagging
US9497148B2 (en) * 2014-09-27 2016-11-15 Intel Corporation Context-based automated/intelligent content management
US9734870B2 (en) 2015-01-05 2017-08-15 Gopro, Inc. Media identifier generation for camera-captured media
US20170041262A1 (en) * 2015-08-04 2017-02-09 International Business Machines Corporation Prioritizing and handling of messages across multiple communication systems
CN105072591A (zh) * 2015-08-11 2015-11-18 中山大学 一种基于移动终端的个性化信息推送方法及系统
US9894393B2 (en) 2015-08-31 2018-02-13 Gopro, Inc. Video encoding for reduced streaming latency
US10095696B1 (en) 2016-01-04 2018-10-09 Gopro, Inc. Systems and methods for generating recommendations of post-capture users to edit digital media content field
US9749386B1 (en) * 2016-02-08 2017-08-29 Ringcentral, Inc Behavior-driven service quality manager
US10250894B1 (en) 2016-06-15 2019-04-02 Gopro, Inc. Systems and methods for providing transcoded portions of a video
US9998769B1 (en) 2016-06-15 2018-06-12 Gopro, Inc. Systems and methods for transcoding media files
US10469909B1 (en) 2016-07-14 2019-11-05 Gopro, Inc. Systems and methods for providing access to still images derived from a video
US10402656B1 (en) 2017-07-13 2019-09-03 Gopro, Inc. Systems and methods for accelerating video analysis

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5481312A (en) * 1994-09-12 1996-01-02 At&T Corp. Method of and apparatus for the transmission of high and low priority segments of a video bitstream over packet networks
JPH08272863A (ja) * 1995-03-30 1996-10-18 Ekushingu:Kk 情報提供システム
US6151598A (en) * 1995-08-14 2000-11-21 Shaw; Venson M. Digital dictionary with a communication system for the creating, updating, editing, storing, maintaining, referencing, and managing the digital dictionary
US6578077B1 (en) * 1997-05-27 2003-06-10 Novell, Inc. Traffic monitoring tool for bandwidth management
JP3725424B2 (ja) * 1998-08-31 2005-12-14 富士通株式会社 サービス割り当て装置
US6697842B1 (en) * 1998-10-07 2004-02-24 Northern Telecom Dynamic context filters for communication and information management
US6167445A (en) * 1998-10-26 2000-12-26 Cisco Technology, Inc. Method and apparatus for defining and implementing high-level quality of service policies in computer networks
JP2000207326A (ja) * 1999-01-08 2000-07-28 Matsushita Electric Ind Co Ltd モバイル・エ―ジェント方法
JP3674377B2 (ja) * 1999-03-26 2005-07-20 富士通株式会社 情報検索処理装置および方法。
US6633315B1 (en) * 1999-05-20 2003-10-14 Microsoft Corporation Context-based dynamic user interface elements
WO2001065354A1 (en) * 2000-03-01 2001-09-07 Celltrex Ltd. System and method for document division
US6665746B1 (en) * 2000-03-31 2003-12-16 International Business Machine Corporation System and method for prioritized context switching for streaming data memory transfers
US6633868B1 (en) * 2000-07-28 2003-10-14 Shermann Loyall Min System and method for context-based document retrieval
US6748195B1 (en) * 2000-09-29 2004-06-08 Motorola, Inc. Wireless device having context-based operational behavior
US20020143759A1 (en) * 2001-03-27 2002-10-03 Yu Allen Kai-Lang Computer searches with results prioritized using histories restricted by query context and user community
US20020143914A1 (en) * 2001-03-29 2002-10-03 Cihula Joseph F. Network-aware policy deployment
US6950988B1 (en) * 2001-06-11 2005-09-27 Handspring, Inc. Multi-context iterative directory filter
US6959294B2 (en) * 2001-07-10 2005-10-25 Microsoft Corporation Context-based help engine and dynamic help
US7043719B2 (en) * 2001-07-23 2006-05-09 Intel Corporation Method and system for automatically prioritizing and analyzing performance data for one or more, system configurations
US20030028390A1 (en) * 2001-07-31 2003-02-06 Stern Edith H. System to provide context-based services

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103282957A (zh) * 2010-08-06 2013-09-04 谷歌公司 基于上下文自动监测话音输入
CN103282957B (zh) * 2010-08-06 2016-07-13 谷歌公司 基于上下文自动监测话音输入
CN104272709A (zh) * 2012-05-07 2015-01-07 高通股份有限公司 推断的上下文的日程表匹配和标签传播
CN104272709B (zh) * 2012-05-07 2017-10-31 高通股份有限公司 确定推断的上下文的方法和装置

Also Published As

Publication number Publication date
WO2003062984A3 (en) 2004-07-01
US20050060365A1 (en) 2005-03-17
WO2003062984A2 (en) 2003-07-31
CN100416557C (zh) 2008-09-03
EP1470500A2 (en) 2004-10-27
AU2003209367A1 (en) 2003-09-02

Similar Documents

Publication Publication Date Title
CN100416557C (zh) 基于上下文的信息处理
KR102242267B1 (ko) 터치 감응형 디바이스 상의 관련 콘텐츠를 사전행동적으로 식별 및 표면화하기 위한 시스템 및 방법
US9923855B2 (en) Systems and methods for electronic message prioritization
US20030140088A1 (en) Context-based information processing
US8566330B1 (en) Prioritizing feed content
CN106845644B (zh) 一种通过相互关系学习用户及移动应用的联系的异构网络
US20070299795A1 (en) Creating and managing activity-centric workflow
US20030182394A1 (en) Method and system for providing context awareness
US20070043687A1 (en) Virtual assistant
EP3423956A1 (en) Interpreting and resolving conditional natural language queries
CN1551011A (zh) 用于指导警告定时的有限延迟策略,使用本地传感器信息的交互和通信
US8554776B1 (en) Prioritizing tasks
US10749767B2 (en) Routing actions to user devices based on a user graph
Fernandez-Rojas et al. Contextual awareness in human-advanced-vehicle systems: a survey
US20170091713A1 (en) Privacy aware sharing implicit and explicit personal preferences for group planning
US20220300353A1 (en) Context-based generation of activity feed notifications
US20200334641A1 (en) Smart event suggestions based on current location, calendar and time preferences
KR20140112445A (ko) 리소스 관리 매커니즘을 구현한 컴퓨팅 시스템 및 그 작동 방법
US11665244B2 (en) Selecting user profiles on platforms based on optimal persona of a user in a given context
US10929485B1 (en) Bot search and dispatch engine
US11164575B2 (en) Methods and systems for managing voice response systems to optimize responses
US10887267B2 (en) Intelligent notification routing and delivery
CN111353674A (zh) 企业智能体系统
Harish et al. VFF–A framework for linking virtual assistants with IoT
JP7312296B1 (ja) 判定装置及び判定方法

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
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20080903

Termination date: 20180123