基于另一用户提供情境的内容的制作方法

文档序号:6364638阅读:222来源:国知局
专利名称:基于另一用户提供情境的内容的制作方法
技术领域
本发明涉及基于另一用户提供情境的内容。
背景技术
随着因特网的广泛采用,更多人能够比以前访问更多的信息。例如,人们能通过导航像社交网络站点、网站、在线社区、web博客、诸如RSS或ATOM等聚合格式的馈源、电子邮件、以及因特网搜索引擎等各种在线资源来跟踪感兴趣的主题。一般而言,用户单独地管理对每个在线资源的访问,并且用户主动搜索从不同在线资源接收的内容以获取与用户的当前环境相关的信息。尽管用户能够触及关于他们感兴趣的主题的信息,然而用户仍然会错失关于事件的信息,以及他或她可能想要知道的其他人的体验。

发明内容
呈现了用于将与一用户有关的内容基于另一用户的情境提供给该另一用户的技术。为了便于表述,此后将所述用户称为“广播者”或“广播用户”,而此后将所述其他用户称为“订阅者”或“订阅用户”。广播用户的示例是名人。其他示例包括组织、品牌、工作项目、乐队或在不同情境中具有相关性的其他实体。在一个实施例中,广播者和订阅者各具有情境相关内容聚合和分发服务系统的帐户,该系统可以在云计算系统或环境中实现。自动地且连续地收集关于广播用户感兴趣的主题的内容。感兴趣主题的一些示例是人、地方、事情、活动、想法、研究领域、研究课题以及每个主题的一个或多个类别或与每个主题有关的一个或多个类别。内容的一些示例是推荐、广告、搜索结果、搜索项、照片、视频、音频剪辑、以及社交网络站点或web博客中输入的评论、文本消息或电子邮件。内容可以基于不同格式的内容得出或创建。例如,可以基于数据来制定消息,该数据是从商家系统的购买交易应用或提供关于广播者在一位置或一种类型的商店购买的信息的设备所接收的。订阅者的情境是在连续基础上由系统基于从与该订阅者相关联的一个或多个计算机设备接收的情境信息来确定的。广播者的内容的分发基于订阅者的情境。在许多实施例中,分发基于订阅者的情境并且是独立于广播用户的当前情境而执行的。可用于确定用户的情境的情境信息的一些示例是实际的物理位置,该物理位置可由以下各项提供GPS,WiFi连接点,或蜂窝传输点半径,用户已经登录的计算机的IP地址,图像识别技术所应用的照片,照片元数据,一天中的时间和一年中的时间,与计算机设备相关联的计算机网络连接模式(例如工作、家庭、公共等),与订阅者在一起的人,订阅者正在执行的活动,基于调度软件应用所存储的信息的订阅者的可用性,或者订阅者正在向通信地耦合到聚集和分发系统的相关联计算机设备的用户输入设备中输入什么。广播者和订阅者可以基于订阅设置控制内容的分发和接收。在一个实施例中,本技术提供一种用于将与一用户有关的内容基于另一用户的情境提供给该另一用户的方法。所述方法包括将订阅用户的用户帐户订阅到广播用户的用户帐户,并且自动地从在线资源收集关于该广播用户感兴趣的一个或多个主题的内容。从在与该订阅用户相关联的一个或多个计算机设备上执行的一个或多个客户端模块接收情境信息。基于与订阅用户的情境的相关性,过滤为广播用户收集的内容,并且将所过滤的内容报告给在与该订阅用户相关联的一个或多个设备上执行的一个或多个客户端模块。在另一实施例中,本技术提供一种用于基于订阅者的情境向订阅者用户提供与广播用户有关的内容的系统。该系统包括第一组一个或多个包括雷达服务的计算机以及第二组一个或多个包括智能系统的计算机,该雷达服务与在与广播用户和订阅者用户相关联的计算机设备上执行的一个或多个客户端模块进行通信,该智能系统与包括该雷达服务的该第一组一个或多个计算机进行通信。该第一组一个或多个计算机从与广播用户相关联的第一客户端模块以及从与第二用户相关联的第二客户端模块接收感兴趣的主题的指示和情境信息。该第二组一个或多个计算机存储一个或多个资源索引以搜索可用于聚集的信息。该第一组一个或多个计算机使用来自第一客户端模块的感兴趣的主题的指示和该一个或多个索引,来自动地并且连续地从可用于聚集的信息收集关于该广播用户感兴趣的主题的内容。此外,该第一组一个或多个计算机基于该广播用户的感兴趣的主题和由该订阅用户的第二客户端模块提供的情境信息过滤所收集的内容。该第一组一个或多个计算机将所过滤的内容推送到在与该订阅者相关联的计算机设备上执行的一个或多个客户端模块。本技术还提供具有处理器可读代码嵌入其上的一个或多个处理器可读存储设备,所述处理器可读代码在被一个或多个处理器执行时致使该一个或多个处理器执行一种用于将与一用户有关的内容基于另一用户的情境提供给该另一用户的方法。该方法包括将订阅者用户的用户帐户订阅到广播用户的用户帐户。从在线资源自动地收集关于该广播用户感兴趣的一个或多个主题的内容,并且基于从在与订阅者用户相关联的一个或多个计算机设备上执行的一个或多个客户端模块接收的情境信息确定情境。基于与该订阅用户的情境的相关性过滤为该广播用户收集的内容,并且根据由订阅者用户指示的用于接收所过滤的内容的设备限制将所过滤的内容报告给在一个或多个用户计算机设备上执行的一个或多个客户端模块。提供本发明内容以便以简化形式介绍将在以下具体实施方式
中进一步描述的一些概念。本发明内容不旨在标识出所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。此外,所要求保护的主题不限于解决在本公开的任一部分中所提及的任何或所有缺点的实现。


图I是一系统的一个实施例的从硬件角度的框图,用于将与一用户有关的内容基于另一用户的情境提供给该另一用户的技术的一个或多个实施例可以在该系统中操作。图2是用于将与一用户有关的内容基于另一用户的情境提供给该另一用户的系统的软件组件的一个实施例的框图。图3是用于将与一用户有关的内容基于另一用户的情境提供给该另一用户的方法的一个实施例的流程图。 图4是用于基于订阅者情境和订阅设置向该订阅者用户提供与广播用户有关的内容的方法的一个实施例的流程图。图5A是用于为对广播用户帐户的订阅者从广播用户获得设置的方法的一个实施例的流程图。图5B是用于为了接收广播者帐户的内容从订阅者获得设置的方法的一个实施例的流程图。图6A是基于设备限制订阅设置向订阅者报告内容的方法的一个实施例的流程图。图6B是基于设备限制订阅设置向订阅者报告内容的方法的另一个实施例的流程图。图7A是示出系统的软件架构的一个实施例的逻辑框图,用于将与一用户有关的内容基于另一用户的情境提供给该另一用户的技术的一个或多个实施例可以在该系统中 操作。图7B是示出系统的软件架构的另一个实施例的逻辑框图,用于将与一用户有关的内容基于另一用户的情境提供给该另一用户的技术的一个或多个实施例可以在该系统中操作。图8A-F示出了客户端设备上的用户界面的各种实施例。图9是描述使用磁体(magnet)来自动地且连续地寻找并聚集和与订阅者在情境上相关的广播用户有关的内容的过程的一个实施例的流程图。图10是描述客户端模块以交互方式获得数据的过程的一个实施例的流程图。图11是描述客户端模块以主动方式获得数据的过程的一个实施例的流程图。图12A是描述客户端模块以被动方式获得情境数据的过程的一个实施例的流程图。图12B提供了图12A的过程的实施方式的一个示例。图13是描述客户端模块向订阅者用户报告的过程的一个实施例的流程图。图14是描述磁体的操作的一个实施例的流程图。图15是描述用于响应于事件并且标识订阅者用户的内容的过程的一个实施例的流程图。图16是描述能用于实现计算机系统组件(例如图I的那些组件)并包含软件和逻辑组件示例并执行此处描述的过程的示例计算系统的组件的框图。图17是由用于将与一用户有关的内容基于另一用户的情境提供给该另一用户的技术所使用的与移动设备联网的头戴式显示单元的一个实施例的一部分的俯视图。图18是头戴式显示单元的组件的一个实施例的框图。图19A是覆盖订阅者的环境的订阅者视图呈现的类似雷达的通知虚拟覆盖层的
覆盖层的图示。图19B是覆盖用户的环境的用户视图呈现的来自用户订阅的示例性广播用户帐户的情境地相关的内容的虚拟覆盖层的图示。图20是头戴式显示单元的组件的一个实施例的框图。图21是与头戴式显示单元相关联的处理单元的组件的一个实施例的框图。图22是可用于实现客户端设备的一个或多个实施例的示例移动设备的框图。
具体实施例方式此处描述的技术基于订阅者的情境向订阅者提供基于广播用户的兴趣(例如,名人的兴趣)的内容。如同上面提到的,其他人订阅其帐户的广播用户可以不是人类。例如,广播用户帐户可以是组织、名人、品牌、工作项目、乐队或在不同情境中有相关性的其他实体的。例如,人类频繁地通过旅行、执行不同的活动以及与不同的人群相关联而改变其情境。组织可具有在许多不同情境中的办公室、项目和业务。工作项目可以由具有不同的情境以及改变的情境的工人、在线资源和材料支持。
可从通常存储在用户简档中的诸如用户的人口统计数据(例如年龄、性别、和居住地以及所标识的感兴趣的主题)等信息中确定内容与广播用户感兴趣的主题的相关性。感兴趣的主题可由用户明确地标识,而内容聚集和分发服务系统可通过例如监控用户的浏览历史和社交联网历史来被动地标识主题。内容是计算机系统能够访问的形式的信息。例如,在用户准许时,对智能电话的对话的记录和流传输导致可由计算机处理的经流传输的音频数据。其他示例包括以计算机可读格式存储的视频、摄影和音频数据,以及表示物理传感(例如,振动的智能电话)和移动的文本数据和计算机可读数据。还可以生成从其他内容项得出的内容。该技术提供情境相关的、内容聚集和分发服务的实施例,该服务频繁地从各种在线资源收集与广播用户相关的内容,过滤与订阅者的情境相关的内容并将所过滤的内容报告给订阅者。该服务基于订阅者的情境向订阅者提供关于广播用户的内容从而订阅者能够对该内容中的信息进行动作。访问可被实现为利用云计算系统的能力。云计算系统或系统环境能够使用不同的协议来通过通信网络通信。例如,云计算系统可由以下计算机来实现,该计算机可与不同类型的通信系统接口并使信息以其他计算机可访问的格式可用。不同类型的通信系统的某些示例是各种无线电信系统,该无线电信系统接收并转发电话呼叫和短消息服务(SMS)消息、普通老式电话业务(POTS)和ISDN线以及计算机联网标准,诸如TCP/IP、以太网和无线802. 11系列连接协议。该服务提供优于其他数据发现系统的以下优点在用户准许时,从很多不同类型的在线资源收集内容,诸如电子邮件、社交联网站点、网站和经由在线通信网络可以访问的其他数据。此外,可跨用户的许多不同类型的计算设备提供该内容。图I是一种系统的一个实施例从硬件角度的框图,用于基于其他用户的情境向该其他用户提供与用户有关的内容的技术的一个或多个实施例可以在该系统中操作。图I的框图示出了通信网络云10,云10可包括因特网、另一全球网络、以及其他类型的网络或通信手段。与示例性用户A和B相关联的示例性计算设备组经由云10与情境相关的内容聚集和分发系统30通信。系统30可能与许多用户(例如,数千或数百万用户)的设备通信。示例性用户A的示例性计算设备包括蜂窝电话2、电视机或机顶盒4、台式计算设备6、诸如膝上型计算机8等移动计算设备、游戏控制台12和基于汽车的计算机设备14。示例性用户B的计算设备的一些示例还被示出为包括智能电话16、TV/STB 18、台式计算机22、平板计算机24以及游戏控制台26和基于汽车的计算设备28。计算设备2_28是能由特定用户操作的多个计算设备的示例。其他计算设备也可与此处描述的技术一起使用。用户能够使用设备2-28中的任何一个经由云10与各个实体交互。
情境相关的聚集和分发服务系统30基于用户A和用户B的当前相应情境自动地且连续地寻找并聚集关于相应的感兴趣主题的相关和当前信息。该信息被报告给相应用户,通常普遍存在地在相应用户的设备2-28中的一个或多个的用户界面上。在一个实施例中,系统30包括一个或多个服务器210、202、……、20N。用于实现系统30的服务器的数量不是一个要求,而是基于带宽、需要、服务器的性能以及针对具体实现的其他因素的。在一个示例中,系统30由多个服务器场实现。在操作中,用户将(在不同时间或并发地)使用设备2-14、16-28中的任一个以便执行各种任务(例如,工作、娱乐、社交等)。这些设备具有在处理器可读存储介质(像是存储器)上实现或存储的软件(例如,如在图2中讨论的用于该服务的客户端模块),该软件可以是各种形式中的任一种,并且在这些设备的一个或多个中的处理器上执行。在操作这些设备时,用户经由她的动作来指示感兴趣的主题,她的动作被在一个或多个设备上执行软件的客户端模块跟踪并被传递给基于云的服务系统30。这样的动作的一些示例是在因特网浏览期间所访问的站点的类型以及在一段时间内的频率和时间(用户访问超出阈值的各种棒球网站能触发该服务将棒球添加为感兴趣的主题)、检查电子邮件、电话呼叫、文本消息、所下载的视频和照片、所存储的数据、搜索项、以及所审阅的搜索结果、未审阅的搜索结果、发到社交网络站点的帖子、以及明确地将主题添加到主题列表中或订阅另一用户的帐户。另外,通过从源(诸如,IP地址、计算机网络连接模式指定(例如,工作、家庭、公共)、全球定位系统(GPS)模块、WiFi连接节点、用户登录进的计算机、一天中的时间、日历、日程、移动电话的订阅者标识模块(SIM)、在用户计算机设备(例如,文档处理应用或游戏)上执行的应用等)收集信息,在设备上执行的客户端模块软件可确定用户的情境的信息并将该情境的信息传递给云中的服务。基于云的服务系统30可以基于从来自各种设备和在线资源的信息得出的情境的信息确定用户的情境。接收信息和情境信息的主题以进一步搜索、聚集和/或过滤数据以便经由设备2-28中的任何一个向相应用户(例如,用户A或用户B)标识该数据。发送到系统30的信息还被用于创建该用户的数字历史。此外,该信息被用于使得系统更智能,从而该系统能够更了解该用户并且提高所推送的信息的相关性。用户A和B可以各为彼此的订阅者和对彼此的广播者。图2是其中用于基于其他用户的情境向该其他用户提供与用户有关的内容的系统能够操作的系统的软件组件的一个实施例的框图。图2示出了一组软件组件的实施例,这些软件组件在运行时交互以提供基于云的聚集和分发服务,该服务自动地并且连续地发现、聚集和过滤与用户和他或她的情境相关的内容。此外,这些软件组件交互以基于第二用户(订阅者)的情境过滤与第一用户(广播者)相关的内容。基于情境的聚集和分发系统30经由通信网络云10与用户A的示例性用户计算机设备38和用户B的示例性用户计算机设备36通信,每个计算机设备执行软件应用,客户端设备32,的实例,该实例与服务30的组件进行交互。图I中示出了用户计算机设备2-28的一些示例。用户计算机设备38示出了可具体化在客户端模块32A中的软件组件的一些示例。通知控制软件单元31与服务30的通信接口 42 (例如,应用编程接口(API))交互,以将情境单元39收集的情境信息发送到服务30并接收可用的情境地相关的内容的通知。如图2所示,用户计算机设备38可以访问不同类型的内容输出设备,像是用户A的输出设备37。输出设备37可以是视听输出设备,耦合有输出设备(像是MP3播放器)或更大的显示屏的另一计算机系统,具有处理器、软件和用于与其他计算机设备通信的通信接口的立体声系统(例如,汽车,家庭)、电视机或其他通信地耦合的显示系统。通信地耦合的显示系统的一示例是手表或其他可穿戴物品(像是珠宝)上的显示器。另一示例是显示器系统,像头戴式显示器(HMD)或其他透视、混合现实显示器,该系统在显示虚拟内容的同时还允许用户查看现实世界物体。输出设备37以一定格式输出通知或内容以供用户在感官上感知(例如,智能电话的震动模式、屏幕上视觉显示的内容或扬声器输出的音频)。在用户设置他或她的帐户期间用户可以注册通信地耦合的输出设备,或者可由客户端模块38标识该输出设备。例如,当设备的操作系统更新设备连接时,客户端模块32可以接收该更新并周期性地检查并向输出设备当前耦合的服务30发送通知。在该示例中,服务30不与所选择的输出设备直接通信,但是能够经由通信地耦合到所选择的设备的不同设备间接地与所选择的设备(例如,可穿戴混合现实设备)通信。输出选择软件单元33标识哪个输出设备要向用户提供输出。这种选择可以从内容的通知标识,例如在该通知的消息或元数据中。如在通信地耦合的输出设备37的所示示例中,经由本示例中的无线连接(例如,蓝牙),输出选择单元33将通知或内容导向被选择为接收该内容的输出设备37。设备的选择可以基于该内容的主题和/或该用户的情境。输出接口单元35将该通知或内容格式化为一定格式,该格式可由所选择的输出设备处理。在其他示例中,集成在用户计算机设备38中的显示器或其他视听输出设备可能已经是所选择的输出设备。在本实施例中,提供内容并确定用于供应到客户端模块32的情境的服务30的示例性软件组件包括磁体44、控制器46、一个或多个推荐引擎48、以及一个或多个搜索引擎50。此外,所述软件组件包括用于经由各种不同通信协议与在线资源的计算机通信以及与在一个或多个用户计算机设备36、38上执行的一个或多个客户端模块32通信的通信接口42。服务30的软件组件进一步包括订阅管理器52,订阅管理器52基于与订阅广播用户帐户的订阅者第二用户的情境的相关性来过滤该广播用户的内容。管理器52致使所过滤的内容被报告给与该订阅用户相关联的用户设备的客户端模块32。在一些示例中,订阅管理器52还可以使过滤基于第一和第二用户的共同感兴趣主题以及第二用户的情境。共同主题可以通过监视每个用户的动作的在线历史来被动地标识,或者经由每个用户的主动选择来标识。磁体44是自动地并持续地收集关于感兴趣主题(例如,人、地点或事情)的内容的软件进程。例如,磁体(经由云10)寻找与种子(例如,主题或特定内容)相关的内容。例如,如果向磁体提供种子主题(例如,一种类型的鞋子、音乐团体、主题等),则该磁体将搜索因特网(或其他源)以发现与该种子相关的可用的内容。磁体与典型的因特网搜索引擎的区别之处在于磁体是持久存储的、基于信息和其他用户信息来个性化的,该信息是磁体关于用户来检索的并可存储在用户简档中,该其他用户信息由其他服务和数据库来存 储,系统42能经由接口 42访问该服务和数据库。例如,另一个服务可以是社交联网站点或存储用户的游戏统计数据和偏好的在线游戏服务,诸如XBOX Live。磁体还可在其搜索中使用情境,并且可与其他磁体交互,可以示出来自公共和私有索引的很多类型的内容,并且被返回的内容具有情境(诸如返回一个地点并说明那里还有谁)。一个或多个磁体可被定义为搜索与订阅者用户情境相关的广播帐户的内容。此夕卜,一个或多个磁体可被定义为搜索广播者和订阅者均感兴趣的并且是与订阅者情境相关的主题的交集。磁体的用户界面表示允许用户与它们交互(例如,以获得关于特定主题的信息)。例如,用户可经由用户界面(例如,触摸屏)与磁体交互以建立、配置和查看磁体的结果。如果用户(例如,在用户界面上)将两个磁体表示彼此拉近,则它们将彼此影响。例如,一个人在触摸屏显示器上将其餐厅磁体拉至纽约磁体附近,则作为响应,两个磁体进行交互并输出被搜索的主题的交集(例如,纽约的餐厅)。客户端模块32报告将磁体拖动到服务30的用户输入,该用户输入对搜索参数进行更新以将餐厅结果限制到纽约的餐厅。磁体还可被“修剪”。例如,用户可对关于歌手的磁体进行个性化以示出时尚、音乐和绯闻,但绝没有任何与监狱相关的。在一个实施例中,磁体是吸弓丨相似粒子的虚拟对象,为广播用户和订阅者用户的情境定制。磁体通常集中于感兴趣的主题并吸引与该主题相关的粒子集合,并基于拥有该磁体的用户简档和订阅者用户的当前情境(例如,时间、位置、设备、活动以及像宠物和与订阅者用户在一起的人的生物)来被过滤和区分优先级。粒子是可被显示或输出的声明或建议。声明粒子具有少量的文本信息,诸如“股票现在下跌”或“妈妈的生日是明天”。建议粒子可具有到诸如“Karma Club DJ Night”或“Halo 2”的某些数字内容的链接。可对建议粒子(即,找出全部Karma事件细节,或去玩这个游戏)行动。例如,粒子可包括用户可选择以发现在Karma Club的事件细节或在线登录到Halo 2游戏的统一资源定位符(URL)或磁体链接。用户可磁化粒子,给出对粒子的反馈,隐藏或保存粒子。粒子可具有值和动作。值的示例包括对实际内容的指针、元数据(类型、格式、缩略图)、活力(通过超过相关性阈值,粒子得到吸引其注意力的活力)、和相关性(系统30计算出相关性并应用这些值)。动作的某些示例包括“到内容那里”,“磁化这个(使其吸引相似的粒子,基本将其转为临时磁体)”,“给出关于这个的反馈(赞成、反对)”,“隐藏这个(使其离开)”和“记住这个,以便我可以回到这里”。也可包括其他值和动作。磁体吸引与特定主题或兴趣相关的粒子。数字历史可包括一个人所采取动作的或过去在某个点查看的粒子轨迹。聚集系统30基于当前情境示出最相关粒子。使用一个或多个搜索引擎50来经由云10搜索各种可用资源。在一个实施例中,磁体44使用一个或多个搜索引擎50来搜索。在其他实施例中,磁体44和搜索引擎50将独立地搜索信息。推荐引擎48将基于来自磁体44和搜索引擎50的结果来为用户提供信息的推荐。控制器46充当协调接口 42、磁体44、推荐引擎48、搜索引擎50和订阅管理器52的操作的中央大脑。在操作中,感兴趣的主题和情境信息在接口 42处被接收并被提供给控制器46。在一个实施例中,控制器46向磁体44、推荐引擎48、搜索引擎50和订阅管理器52提供主题和/或情境信息以获得更多数据和/或以过滤已经找到的数据。在一些实施例中,磁体44、推荐引擎48、搜索引擎50、以及订阅管理器52将所有数据提供给控制器44,、控制器44基于情境信息过滤该数据并经由接口 42将过滤的结果提供给适当的客户端模块(36或38)。在一些情况下,该信息被报告给向系统30提供情境信息的同一设备/客户端上的订阅者用户。在其他情况下,情境信息被从与订阅者相关联的第一设备(例如,用户A的设备2)提供给系统30,并且来自系统30的该信息被推送到与该订阅者相关联的第二设备(例如,用户A的设备4),因为订阅者已经改变了用于工作的设备或第二设备是报告该信息的更适当的平台。订阅管理器52经由接口 42与用户计算机系统交互以设置要订阅的用户帐户,或者以将一用户帐户作为订阅者与另一用户帐户相关联。在更新了帐户订阅设置之后,在一个示例中,订阅管理器52的实例可以执行以基于订阅者帐户的一个或多个情境来过滤广播用户帐户的内容。当内容对不同用户可用时控制器46可以发送消息,或者订阅管理器可以执行对一个或多个数据库(例如,21)的周期性检查以标识广播帐户的新内容。监视与广播用户帐户相关联的订阅者用户的情境。此外,订阅管理器52可以使用一个或多个磁体来跟踪相互感兴趣主题以用于过滤要被转发到订阅者的广播内容。此外,广播者、订阅者或两者可以具有所选择的设置,所述设置也是用于过滤广播内容的准则。订阅管理器52可以将要发送的所过滤的内容通知控制器46、接口 42或两者。在一些示例中,控制器46指示更新广播用户和订阅者的用户简档数据以反映发送给订阅者的内容。在其他实施例中,服务30的软件组件的一些功能可以由客户端模块32或在服务器上操作的一个或多个组件(例如,42、46、44、50、48和52)的软件实例和客户端模块32两者来处理。仅仅为了说明目的和便于描述,下面在讨论附图中的方法实施例时参考了图2的软件组件。所讨论的过程不限于特定系统实施方式;换言之,它们可以在其他系统实施例内操作。图3是用于基于其他用户的情境向该其他用户提供与用户有关的内容的方法的一个实施例的流程图。用户经由用户计算机设备38之一处的用户输入来指示他或她希望准许基于云的内容聚集和分发服务30的其他用户订阅他或她的帐户。服务30将该用户帐户设置修改为广播帐户。在步骤62中,订阅管理器52将订阅者的用户帐户订阅到广播者的用户帐户。在步骤63中,服务30从在线资源自动地收集关于广播者感兴趣的一个或多个主题的内容,并在步骤64中从订阅者用户的一个或多个客户端模块收集情境信息。在步骤65中,订阅管理器52基于与订阅者的情境的相关性来过滤为广播者收集的内容并且与服务30的组件一起工作,以在步骤66中将所过滤的内容报告给与订阅者相关联的一个或多个计算机设备。在一些实施例中,过滤是基于订阅者的当前情境并且是独立于广播用户的当前情境的。图4是用于基于订阅者情境和订阅设置向该订阅者用户提供与广播者有关的内容的方法的一个实施例的流程图。向订阅者提供内容的用户和订阅者两者均可能期望更新订阅设置以设置与内容分发和接收有关的限制。在没有用户选择的情况下,订阅管理器52 可以使用默认设置。在步骤67中订阅管理器52可以从广播用户获得与分发到订阅者的内容有关的一个或多个订阅设置。在步骤68中订阅管理器52还可以从订阅者获得用于从广播用户帐户接收内容的一个或多个订阅设置。在一些示例中,订阅者可以具有指示不等待用户对通知进行响应即显示内容的设置。在步骤69中,服务30报告来自广播帐户的基于订阅者的情境以及广播用户和订阅者的订阅设置过滤后的内容图5A是用于为对广播用户的帐户的订阅者从广播用户获得设置的示例的方法的一个实施例的流程图。对于广播者和订阅者两者(参见图5B),管理器52可以经由接口 42向用户计算机设备输出设置选择,其中客户端模块32将该设置选择格式化为用户界面,例如,所显示的菜单或语音激活的菜单,用户能够通过该界面提供关于设置的用户输入。用户在用户计算机设备(例如,2-28中的任一个)的用户界面上做出他或她的选择并且将这些选择传输回界面42,界面42将这些选择导向订阅管理器52。在步骤72中,订阅管理器52接收可用于与订阅者内容共享的广播用户感兴趣的一个或多个主题的选择,并且在步骤74中将广播者的该一个或多个主题的选择存储在广播者的订阅设置中。服务30可标识或推荐或既标识又推荐可选择的感兴趣主题以用于该用户选择与订阅者共享。例如,著名的名人厨师可能只想要共享与烹饪和厨房设计有关的内容,而不是与他的个人生活或经济交易有关的内容。以此方式,广播用户可以独立于该内容的在线资源地指示他或她想要与服务的订阅者共享哪些主题。该厨师可以具有Facebook 页和Twitter 页并且可以在这些社交网络站点中的任何一个上输入信息,例如,菜谱或餐厅评论,并且知道它将被分发给具有服务30的服务的帐户的他的订阅者,不论他的订阅者是否有Facebook或Twitter帐户。在步骤76中,订阅管理器52接收对于要与订阅者共享的内容的一个或多个授权准则的选择。广播用户可以设置他或她批准要将内容的每个选择或项目发送给订阅者的授权准则。在另一示例中,广播用户可以指定仅由广播用户发起的项目是被准许与订阅者共享的。在著名的厨师的示例中,该厨师可能不想要将批评家对他的菜谱或电视节目的评论的内容发送到所有的订阅者,但是准许他输入的评论或菜谱被自动共享。在另一示例中,该厨师可以通过授权准则限制要共享的内容的类型。例如,他可能不希望将他对上等肋骨(prime rib)菜谱的搜索项与订阅者共享,而仅共享他指定为推荐的项(像是来自他的社交网络站点之一的他的“喜欢”或“不喜欢”)以及他发起的评论。订阅者可被分组成类别并且将不同的授权准则应用到不同的类别。例如,可以使用来自用户简档的人口统计数据和其他标识性特征(例如,适当的重量级、或与用户的关系)来将订阅者分组。在步骤78中,订阅者管理器52将所选择的授权准则存储在该广播用户帐户的订阅设置数据存储中(例如,在由该服务控制的数据库21中)。该广播用户帐户设置也可以作为该广播用户的用户简档数据的一部分而被存储或链接。此外,在步骤79中,订阅管理器52从该广播用户接收关于要与订阅者共享的一个或多个情境限制的选择。名人或组织成员可能不想要儿童在上学时间期间或者当订阅者在开车或工作时接收内容。例如,通过GPS和设备设置,订阅者的用户计算机设备能够提供此情境信息从而控制器46和/或磁体44和订阅管理器52确定订阅者的情境相应地包括“学校”、“开车”或“工作”。在另一示例中,广播用户能够指定内容分发上的时间延迟。例如,可以出于隐私考虑而设置情境限制,以使得关于广播者的位置的情境信息或者他或她在一位置执行的活动不被公开给订阅者,直到广播用户已经离开该位置后的设置时间段(例如,一天、一周、两个小时)。在步骤80中,订阅管理器52将广播用户对一个或多个情境限制选择的选择存储在该用户的订阅设置中。与用户相关联的每个广播用户帐户的订阅设置还可以作为该用户的简档数据的一部分而被存储或链接。图5B是用于为了接收订阅账号的内容从订阅者获得设置的示例的方法的一个实施例的流程图。用户可能已经在用户计算机设备的用户界面上选择了订阅指示符,用于一般性地订阅或者响应于询问该用户他或她是否想要订阅与内容项相关联的用户帐户的粒子(例如,具有在当该厨师的电视节目正在她的电视机上播放时该用户已被标识为在家之后询问她是否想要订阅该厨师的帐户的可显示声明的链接)而进行订阅。在步骤82中,订阅管理器52从每个广播用户帐户接收要针对其接收内容的一个或多个感兴趣的主题的选择,并在步骤84中,将指示每个广播用户帐户的每个所选择的感兴趣的主题的数据存储在该订阅者的订阅设置中。类似于用户将内容提供给订阅者,订阅者可以指示他或她想要独立于内容的在线资源针对哪些主题从广播帐户接收内容。在上面的厨师示例中,厨师可以在他的Facebook或Twitter页上输入评论,而订阅者不需要具有这些社交网络实体中的任何一个的帐户而仍然在他或她的服务帐户中接收到评论。如果厨师在Facebook上说一件事情而在Twitter上说另一件事情,具有订阅这些的帐户的订阅者不需要登录来查看评论;两者都经由服务30被推送给订阅者。订阅管理器52还向订阅者呈现限制他或她接收广播内容的情境的机会。对于要被广播的每个帐户,在步骤86中,订阅管理器从订阅者接收来自每个广播用户帐户的内容的一个或多个情境限制的选择,并且在步骤87中将指示该一个或多个情境限制选择的数据存储在该订阅者的订阅设置中。情境限制的一示例是当订阅者在身体上在工作、或者连接到他或她的工作计算机网络(例如,工作模式),或者在开车或者当订阅者在体育馆或冥想课上时,不接收内容的限制。此外,情境限制可以根据主题限制内容。另一组限制(可以被认为是情境限制的子集)是设备限制。例如,工作项目帐户或该工程项目的订阅者可以将订阅设置设置为使得订阅者(在该项目上工作的那些人)仅可以在经由安全连接登录到指定工作计算机网络中的任何订阅者设备上访问工作项目的内容。然而,订阅者可以将订阅设置设定为使得关于名人的社交生活的内容限于一个或多个特定用户计算机设备,并且还可以限于设备连接到的哪个网络(例如,家庭、学校或工作)。对于要被订阅的每个广播帐户,在步骤88中,订阅管理器从订阅者接收来自每个广播用户帐户的内容的一个或多个设备限制的选择,并且在步骤89中将指示该一个或多个设备限制选择的数据存储在该订阅者的订阅设置中。广播用户和订阅者两者的订阅设置可以被链接到相应的用户简档数据。下面是内容可以如何被产生、捕捉并由订阅服务分发,以将与一用户有关的内容基于另一用户的情境提供给该另一用户。对于本示例,回到名人厨师,该名人在情境相关的内容聚合和分发服务(例如,30)中设置他的用户帐户。作为此操作的一部分,该名人厨师可以输入关于他自己的人口统计数据、选择感兴趣的主题、链接外部帐户(例如,Facebook、Twitter、Mint, com)、根据需要提供对服务30的访问特权、并且为订阅他的帐户的订阅者以及为他自己针对他订阅的任何帐户设置他的订阅设置。
该名人厨师在温哥华的一家新餐厅用午餐。通过他的移动电话中的GPS,或者通过他上传到他的服务帐户或链接到他的服务帐户的外部帐户的信息,可以将他定位到那里。例如,该厨师启动他的客户端模块32并且为该餐厅输入“喜欢”推荐并且添加评论“尝试一下有威尔士兔的饼干吧! ”。该云服务可以为该餐厅创建“地点卡片”显示,该卡片具有像是其名字、地址、小时、电话和名人的评论等信息。订阅管理器52监视为该名人接收的内容,例如通过用API注册以接收该名人的帐户的更新或者连续检查该帐户记录的新内容。订阅管理器52在数据库20中标识该推荐和地点卡片存储位置。订阅管理器52查看当前用订阅该名人厨师的帐户的订阅者标识的情境。订阅该名人厨师帐户的用户在他的智能电话(例如,16)上启动他的客户端模块32。该用户可以主动地指示他已准备好从该名人厨师的帐户接收更新。智能电话16将情境信息(例如,SIM卡位置或GPS状态)提供给订阅管理器52访问的服务30。该用户走进该名人厨师提供了推荐的温哥华餐厅的当前距离内。订阅管理器52还可以使用他的用户简档数据中的该订阅者的偏好来确定是否使内容对该用户可用。例如,当订阅者的简档指示他对贝类过敏或者不想要关于这种类型的餐馆的信息时,订阅管理器52可以确定不共享该名人厨师对螃蟹房屋餐厅的评论。假定餐厅的类型不是对共享内容的限制,订阅管理器16向智能电话的通知控制器31发送通知,通知控制器31经由输出接口 35显示通知以向用户指示他位于该名人最近访问过的餐厅附近。该用户轻击他的智能电话的用户界面上的通知并且能够查看该餐厅的地点卡片,该地点卡片包括该名人关于该饼干的评论,该评论也已从该基于云的服务下载。然后该用户可以决定走到该餐厅来检验其内部和菜单。图6A是基于设备限制订阅设置向订阅者报告内容的方法的一个实施例的流程图。在步骤90中,服务30确定订阅者所选择的用于从广播用户帐户接收所过滤的内容的用户设备是否可用。在一个示例中,订阅管理器52可以检查该设备的最新情境信息以确定它是否可用于接收该内容。如果该设备在该用户附近,诸如在预设距离或位置(诸如在用户的家里或办公楼),则可以认为该设备可用。设备上的用户活动可以是该设备在用户附近的指示符,特别是如果用户已提供了该会话的登入凭证的话。基于网络连接模式类型(例如工作模式),可以确定该设备不可用。此外,如果该用户设备关机(如可以由SIM卡所指示,或由没有对状态信息进行响应所指示的),则可以认为该设备不可用。如果该设备可用,则在步骤92中订阅管理器52向所选择的用户设备发送所过滤的内容或致使所过滤的内容被发送。如果确定该设备不可用,则在步骤92中不向所选择的设备发送所过滤的内容。在该过程的其他示例中,如果所选择的设备变得可用并且满足了其他情境限制则可以在一时间段内发送所过滤的内容,或者所过滤的内容可被发送到订阅者的存档以供以后检索,或者可以根据设备限制被发送到另选的设备以供输出。图6B是基于设备限制订阅设置向订阅者报告内容的方法的另一个实施例的流程图。在本实施例中,所选择的设备是服务30不能直接访问以进行通信的输出设备,服务30必须从另一计算机设备获得关于该设备状态的信息。在步骤93中,订阅管理器52确定是否存在通信地耦合到可用于接收所过滤的内容的所选择的设备的用户设备。如果不存在,则在步骤96中订阅管理器52不为所选择的设备发送所过滤的内容,并且可以采用步骤92的讨论后面的选项中的一个。
如果这种居间通信设备可用,则在步骤94中订阅管理器52确定所选择的用户设备是否可用于接收内容。例如,订阅管理器52可以检查来自居间设备的情境信息,除了它可包含的像是网络连接模式、IP地址和物理位置(例如,基于GPS、蜂窝塔连接、WiFi热点连接)等事项以外,该情境信息还可包括有线地或无线地连接到它或通信地耦合到它的其他设备。此外,订阅管理器52可以向居间设备上的客户端模块发送消息以获得所选择的设备的连接状态。同样,如果确定所选择的设备不可用,例如,该设备没有连接到居间设备,则在步骤96中,订阅管理器不发送为所选择的设备过滤的内容。然而,如果所选择的设备可用,则在步骤95中,订阅管理器52向通信地耦合到所选择的用户设备的居间用户设备发送或已经发送所过滤的内容连同经由所选择的用户设备输出所过滤的内容的指示图7A是示出系统的软件架构的一个实施例的逻辑框图,用于将与用户有关的内容基于另一用户的情境提供给该另一用户的技术的一个或多个实施例可以在该系统中操作。所示出的软件组件自动地并且连续地为用户发现、聚集并过滤相关和当前信息。系统150是可以由一个或多个计算机实现的聚集系统30的另一个实施例。系统150从诸如数据库152、传感器154 (例如,相机、温度传感器、GPS传感器、其他位置传感器等)、网站156、事件存储158、新闻源160、以及web服务器162等许多不同输入源获取数据。还可以使用其他源(例如,社交网络系统、通信系统、数据仓储系统等)。将来自这些源的数据提供到一个或多个输入适配器164,输入适配器164获得数据、擦除数据、重新格式化数据并将其提供到一个或多个适当的常设查询166、168、170……。在一个实施例中,常设查询166、168、170……对应于磁体144。当常设查询标识与该查询相关的信息时,将生成数据库记录,该记录具有关于从该输入源中找到了什么的信息。所生成的此数据库记录是图7A的系统的事件,而该数据库记录被存储在数据库172中。响应于事件,智能处理模块174将在数据存储172、用户简档数据176和情境数据178中获得适当的数据。用户简档数据可以是关于用户的信息,诸如人口统计信息、行为信息、web浏览历史、搜索主题、朋友、用户帐户订阅等。情境数据可被收集以标识订阅者用户的当前情境或所定义的时间段内的情境,并且还可以为广播用户收集以存储为确定订阅者的情境相关性的数据。情境数据的示例包括用户的位置、用户在做什么、用户在与什么设备交互、用户在与谁交互、用户在说什么、用户在一天中的事件、用户的当前角色(例如,父母、雇员、配偶、教练、通勤者等)。只能处理模块174评估上面描述的信息并基于该评估标识订阅者感兴趣的信息。此外,智能处理174可利用一个或多个推荐引擎和/或搜索引擎。在一个示例中,图3-6B的过程实施例可由智能处理模块174执行。在一个实施例中,存在智能处理的次要形式,其采用广播者和订阅者的用户简档数据、历史、行为(和所知道的关于用户的可能的一切,像是电子邮件、信使(messenger)、因特网搜索),并将该数据组合起来以做出智能推断。例如,推断引擎可以确定两者都是经济权威,但是订阅者对体育不那么感兴趣。即使广播者已经选择了体育作为可共享的主题,智能处理引擎可以实现规则以仅在订阅者在体育赛事处或在电视或因特网上查看体育赛事时共享体育信息。对于经济信息,该系统可以遵循一规则来在订阅者所允许的、被该服务认为相关的多得多的情境中转发来自广播者的经济信息内容。基于用户的动作,一些推断具有更高的置信度值。例如,作为感兴趣的主题,经济可以具有高置信度值并且可以为经济创建磁体。针对该主题中存在多少相互的兴趣,这些关于广播者和订阅者的推断中的每一个均被赋予一置信度值。
智能处理模块174向输出适配器180发送被标识为订阅者的情境地相关的内容的信息,输出适配器180使该数据适应特定的目标用户计算设备。图7A中示出的目标设备的一些示例(像是与示例性用户B相关联的186、188、190以及与示例性用户A相关联的那些设备192、194、196)可以是图I中示出的那些设备,像是蜂窝电话2、电视机(或机顶盒)4、18、台式计算设备6、22、移动计算设备(膝上型计算机8、平板24、智能电话16)、游戏控制台12、26以及汽车计算机接口设备14、28。还可以利用其他目标用户设备。输出适配器180将会为适当的目标将该数据打包并且使用适当的协议来传递。在一个实施例中,输入适配器164和输出适配器180可用于实现图2的接口 42。可以用面向对象的方式创建图7A的任一个或多个组件以便该系统可以并行处理许多不同的用户。在这样的实施例中,该系统将为多个用户中的每一个创建自身的实例。在一个示例中,单个实例与一个或多个马赛克身份方面(mosaic identity facet)以 及用作流处理中的中心点或焦点的其他情境的数据相关联。作为一示例,一个实例可以以Facebook身份为中心,另一个实例以公司身份为中心,而第三个实例以它们的组合为中心。实例还可以被配置为具有一组不同的方面作为其焦点。图7B是示出系统的软件架构的另一个实施例的逻辑框图,用于将与一用户有关的内容基于另一用户的情境通过给该另一用户的技术的一个或多个实施例可以在该系统中操作。该软件组件还为订阅另一用户帐户的订阅者自动地并且连续地发现、聚集并过滤情境地相关的内容。在该实施例中,标识为雷达客户端250的客户端模块32的一个示例是在用户的物理计算设备的任一个上运行的软件,该软件经由诸如示例应用编程接口(API)254的软件接口与基于云的情境地相关的内容聚集和分发服务(此处称为“雷达”服务252)的一个或多个应用进行通信。像雷达一样,服务252和客户端模块250搜索信息并跟踪它。雷达客户端250向雷达服务252提供情境信息(以及可选地,关于用户兴趣的信息),并且接收回内容,诸如来自广播用户帐户的推荐。如同下面讨论的,所接收的内容(例如,推荐)可以被报告给订阅者(参见例如图8A-8F)。基于云的雷达服务252包括一组推荐引擎254、256、258和260的API,每个推荐引擎为不同类型的内容进行不同类型的推荐。例如,一个推荐引擎可以针对音乐进行推荐,另一个针对购物,另一个针对聚会,另一个针对餐厅等。一个系统可具有四个以上的推荐引擎。雷达服务252包括上面讨论的磁体265和相关性引擎264。磁体利用推荐引擎来标识用户的内容。另外,推荐引擎可在不涉及磁体的情况下进行推荐。磁体使用到智能系统270的API 272来挖掘知识世界,以获取与广播用户感兴趣的或者广播者和订阅者相互感兴趣的一个或多个主题有关的信息。磁体使用推荐引擎来基于订阅者的当前情境为订阅者做出关于一个或多个主题的有趣推荐。然后相关性引擎264对所有信息以及磁体和推荐引擎两者所做出的推荐排序并将其提供给雷达客户端250。在一个实施例中,磁体利用推荐引擎来为用户标识内容,并且相关性引擎的一个或多个实例基于其所感知的与订阅者的当前情境的相关性来对每个内容项打分。在一个实施例中,相关性引擎264基于内容项与订阅者的当前情境的相关程度来提供数字相关性分数。例如,餐厅推荐在下午3-5点可得到更高的相关性分数,随后是在午夜。类似地,关于足球队的信息在足球赛季期间比在赛季间可接收更高的相关性分数。关于订阅者当前正在收听的乐队的信息相比另一个乐队或与工作相关的其他内容,将得到更高的分数。此外,在本实施例中,相关性引擎264评估所收集的内容与广播者和订阅者的订阅设置的相关性。相关性引擎264标识用于由系统中的其他组件(诸如雷达服务252及其API 254)向订阅者输出处理的内容。如上所述,雷达服务252经由API 272与智能系统270通信。智能系统270创建、获得并存储关于雷达服务252可用的数据的信息。在一个实施例中,雷达服务252由一组一个或多个计算机(例如,服务器场)来实现,并且智能系统270由一组不同的一个或多个计算机(例如,服务器场)来实现。在其他实施例中,一个或多个相同的计算机可实现雷达服务252和智能系统270两者。在一个示例中,数据库管理软件216可由雷达服务经由API 272来联系以访问来自智能系统270的数据,该智能系统270包括公共索引274、广告和优惠278的数据存储或索引、私有索引280和用户简档数据282。公共索引274可以是万维网上网站的因特网搜索索引。专用索引280为每个用户包括专用站点的单独索引。例如,每个用户将具有提供关于他们的社交联网页、电子邮件、联系人等的信息的专用索引。在某些实施例中,用户经由单个登陆过程登录到雷达服务,该登陆过程允许雷达服务维护与用户的专用账户的会话。广告和优惠数据存储278向顾客提供可用的广告和优惠的列表(例如,具有指向实际内容的指针,或者实际的内容)。用户简档数据282存储已知的(例如,知识库)和推断的(例如,对每个用户的推断以及包括各个用户的数字历史的情境数据和历史数据)信息。在一个实施例中,智能系统270包括推断引擎283,该推断引擎是基于用户的行为来猜测关于该用户的信息的软件。推断引擎可提供订阅者的情境信息,该情境信息包括从基于订阅者的动作的推断得出的订阅者的意图或状态。例如,如果订阅者正在阅读有关餐厅的内容,则推断引擎可以假设用户想要进食(例如,用户饿了)。响应可以是向用户示出来自附近餐厅的名人广播者的评论,该餐厅提供用户被观察在过去吃过的食物。基于在万维网、社交联网系统、协作服务、多玩家游戏服务、搜索引擎、电影和音乐分发服务、购买系统、文本消息、呼叫历史、电子邮件帐户上的爬寻或搜索来创建公共索引274、广告和优惠存储(或索引)278和专用索引280,其示例被示为馈源284和/或其他网络或资源。 在操作中,磁体265将利用推荐引擎254、256、258、260,公共索引274,广告和优惠存储(或索引)278,专用索引280和用户简档数据282来标识用户感兴趣的内容。相关性引擎264基于订阅者的当前情境提供所发现的条目的相关性分数。与订阅者的当前情境最接近的内容项将被赋予更高的分数。具有更高分数的条目将由基于云的雷达服务252推送至订阅者设备上的雷达客户端模块250。他们提供的进程、软件组件或功能可以作为处理器可读存储介质上的代码、软件、指令、固件等来实现或存储,并且可由处理器来执行。处理器可读存储介质的一个示例是诸如存储器的计算机可读存储介质,无论是易失性或非易失性形式,可移动或不可移动。此夕卜,对模块、应用、软件组件的特定命名和划分以及其他方面不是强制性的,而是用于说明性目的。实现技术或其特征的机制可具有不同的名称、划分和/或格式。存在许多方式用于警告订阅者情境相关的聚集和分发服务(例如,30、150、254)有信息要报告。图8A-8F示出了能够向订阅者报告该信息的客户端设备上的用户界面的各种实施例。例如,图8A示出了移动计算设备100,其具有示出了两个窗口 102和104的显、示器。用户正在观看窗口 102中的视频。在窗口 104中显示了一组指示符(例如,图标)。每个图标标识各种类型的内容。例如,指示符S代表与购物有关的内容,指示符E代表与娱乐有关的内容,指不符F代表与家庭和/或朋友有关的内容,指不符W代表与工作有关的内容,指示符N代表与新闻有关的内容,而指示符O代表其他类型的内容。当系统30向设备100推送内容时,适当的指示符(例如,S、E、F、W、N或0)将被突出显示以指示已推送了该类别的新内容。例如,图8A通过将F加粗和加下划线而示出F被突出显示。用户能够轻击“F”以调出示出新推送的内容的窗口。图8B示出了移动计算设备110,其具有示出视频的窗口 112。当示出视频时,基于云的情境地相关的聚集和分发服务系统(例如,30、150、252)将来自与设备100相关联的用户所订阅的另一用户帐户(在此情况下是名人“厨师鲍勃”)的新的情境地相关的内容推送到设备100。新的内容被自动显示在窗口 114中从而覆盖该视频,而不是如图8A所示示出一组指示符。该内容是来自上面的示例的地点卡片(“新威尔士酒馆、0. 5英里、Richmond大街135号(在第一和第二之间)。厨师鲍勃“尝试一下有威尔士兔的饼干吧! ”)的一示例。 图8C示出了另一实施例,该实施例包括移动计算设备116,其具有示出视频的窗口 118。当服务系统(例如,30、150、252)将内容推送到移动计算设备116时,在显示屏的一部分中将显示指示符120。用户能够轻击指示符120而显示指示新内容的窗口(类似于窗口 114)将被显示。图8D示出了另一实施例,其包括移动计算设备122,移动计算设备122将小块示为可被选择以供启动相关联应用的应用图标的示例。例如,存在应用的小块1261、1262和1263,对于这些应用,用户还没有查看的情境地相关的内容当前不可用。对于新情境地相关的内容对其可用的、可用于显示或访问内容的应用,显示通知覆盖层,该通知覆盖层具有描述性声明124或一些实施例中的粒子。对客户端模块(例如,32、250)的小块的覆盖层向用户通知她所感兴趣的鞋在附近可获得,如由“品牌X的鞋在离你当前位置三个街区的商店Y有售。”所指示的。当用户点击该通知时,在一个示例中,完整的街道地址和鞋的图片出现。Internet Explorer 或图标上面是由于用户订阅厨师鲍勃的帐户而发送的通知1243,而该通知告知用户“厨师鲍勃的网站张贴了上等肋骨菜谱”。服务30、150、252已从用户的数字电视捕捉到用户今天观看了厨师鲍勃的关于如何制作上等肋骨的电视节目。另外,为用户的电子邮件帐户中最近已经通信超过触发级别的联系人Sally在Flickr 小块上提供指示“Sally' s Yosemite pictures posted(张贴了 Sally 在约塞米蒂的照片)”的通知 1242。图8E示出了移动计算设备130,其具有示出了两个窗口 132和134的显示器。用户正在观看窗口 132中的视频。在窗口 134中显示了一组图标。每个图标代表当前活动的人、地点或事情(兴趣)。图8E将图标示出为方块;然而,图标可以是它们所代表的人、地点或事情的图像。例如,代表朋友的图标可以是该朋友的缩略图照片。代表乐队的图标可以是该乐队的标志。图8F示出了具有显示器142的移动计算设备140,显示器142可以是触摸屏或其他类型的显示器。如图8F所示,显示器142示出了类似雷达的屏幕。雷达上绘制了代表内容聚集和分发服务系统30、150、252已经对其推导得出了新信息的人、地点和事情的圆圈和文本。“U”代表订阅者用户。项目离U越近,系统30认为该项目越相关。
图8A-8F提供了警告订阅者从服务系统30、150、252推送到移动计算设备的新内容的六个示例。这些仅是可能的用户界面的一小组示例。此处描述的技术不要求特定的用户界面。许多不同类型的用户界面可以与此处描述的技术一起使用。例如,其他实施例包括发送文本消息警告,或者在“滚动条(ticker)”上弹出东西,滚动条(ticker)是在后台运行的不受察觉的UI,示出了所找到的若干有趣项目。此外,可能存在被推送到移动计算设备的信息的多个视图时间线视图、地图视图、列表视图、拼贴视图等。图9是描述自动地且连续地寻找并聚集和与订阅者在情境上相关的广播用户有关的内容的流程图。在步骤200中,客户端模块32获得广播用户感兴趣的主题。该客户端模块可以并行地或在分开的时间,交互式地、被动地或主动地、或上述的组合地,获得此信息。下面将提供关于获得感兴趣的主题的更多信息。在步骤202中,响应于与该用户的交互或观察该用户,客户端模块将生成主题数据并将该主题数据传递到服务器20或其他计算机系统,该其他计算机系统是情境相关内容聚集和分发服务系统(例如,30、150、252)的一部分。响应于在步骤202中接收主题,在步骤204中系统30、150、252将创建新磁体或更新现有磁体以自动地并连续地搜索并过滤感兴趣的主题的内容而无需广播用户请求收集该内容。如果感兴趣的主题是新东西,则通过创建新准则并开始新的过程以搜索因特网或其他空间来寻找与该新准则有关的内容来创建新磁体。如果在步骤202中接收的主题类似于现有磁体的焦点,则可以改变现有磁体以及与新主题修改其焦点。在步骤206中,磁体自动地且重复地搜索并收集与每个磁体的种子(seed)有关的内容。例如,磁体可以标识与所述主题中的一个或多个相关的事件或新闻。尽管图9按特定次序示出各步骤,然而这些步骤可以按其他次序执行。在一个实施例中,步骤206被连续执行,因此,它在图9的许多其他步骤之前、之后和期间执行。在步骤208中,一个或多个客户端模块将获得与那些客户端模块相关联的订阅者的情境信息。该情境信息可以交互式地、被动地或主动地(并行地或在分开的时间)获得。在步骤210中,将在步骤208中获得的情境信息提供给内容聚集和分发服务系统30、150、252。例如,将该信息传送到作为服务系统30、150、252的一部分的服务器。在步骤212中,系统30、150、252将基于在步骤210中提供的当前情境信息来过滤来自一个或多个磁体的内容。构想出,与广播用户相关联的各个磁体将搜索并标识大量信息。可以使用当前情境信息来将该信息过滤到较小的子集。例如,如果磁体正在搜索关于名人穿的鞋的信息,并且当前情境信息指示订阅者的位置,则可过滤关于鞋的信息以仅提供关于在地理位置靠近订阅者的商店中出售的鞋的信息。在步骤214中,使用在步骤212中标识的信息来创建输出信息,并且将该输出信息发送到订阅者用户的客户端。将内容发送到对于该用户是活动的的客户端。在一些实例中,发送情境信息的客户端是当前活动的客户端,并且因此结果数据将被发送到同一客户端。在其他实施例中,当情境信息被发送到情境地相关的内容聚集和分发服务系统30、150、252时订阅者会正在与第一客户端设备交互,而当结果被报告回来时订阅者正在与第二设备交互。因此,该结果被报告给可能是完全不同类型的设备的不同客户端设备。例如,当情境信息被发送到服务系 统30、150、252时订阅者可能正在玩在控制台上执行的游戏,而当仍情境地相关的内容被发送回来时订阅者可能正在使用蜂窝电话。因此,将会针对用户的蜂窝电话而不是游戏控制台来封装该信息。在步骤218中,接收数据的客户端设备将在步骤218中如上所述地或者以任何其他适当方式报告新内容。下面将参考图10-16提供关于图9的各步骤中的许多步骤的更多信息。图10是描述客户端模块从用户交互式地获得数据并且将该数据提供给情境地相关的内容聚集和分发服务系统的过程的一个实施例的流程图。图10的过程可用于在步骤200中获得用户感兴趣的主题并且将它们发送到系统30、150、252,或者用于在步骤208中获得情境信息以传递到该服务系统。在图10的步骤302中,用户明确指示感兴趣的内容。例如,用户可以拍摄照片并且请求关于该照片的信息、从用户的计算设备上的现有照片中选择照片、说出关键词、键入关键词、突出 显示文档中的关键词、在该计算设备上选择内容等。在这些情况中的任何情况下,用户有意地选择标识用户想要更多信息的内容。此信息可以是感兴趣的主题。在一些实施例中,该信息还能提供情境。在步骤304中,将情境或情境的指示从客户端模块(例如,32、250)发送到服务系统(例如,30、150、252)(例如,到实现该系统的一个或多个服务器)。图11是描述客户端模块主动地获得数据(例如,情境数据或感兴趣的主题)的过程的一个实施例的流程图。该过程可用作步骤200或步骤208的一部分。在图11的步骤340,客户端设备将执行用户所请求的功能。例如,客户端设备将加载网页、进行电话呼叫、实现文本消息、发送电子邮件、玩游戏、聊天、与社交网络站点交互、或执行某种其他功能。在步骤342,客户端模块将被执行的功能报告给系统30。在步骤344,客户端模块还会将该功能的结果报告给服务系统。例如,如果用户正在玩游戏,则游戏的结果将被报告。如果用户正在进行电话呼叫,则电话呼叫的结果(用户呼叫了谁以及用户是否曾经进行接触)将被报告给服务系统,并且服务系统使用该信息来创建该用户的数字历史并且来细化所存储的关于该用户的知识,并最终给出更相关的结果。图12A是描述被动地获得数据(例如,情境数据或感兴趣的主题)的一个实施例的流程图。图12A的过程可作为图9的步骤200或208的一部分被执行。例如,蜂窝电话知晓用户是谁以及用户位于何处。智能电话将知晓用户是否正在开会以及该会议关于什么。智能电话还可能正在收听,从话音模式找到关键词,并且将那些关键词提供给情境地相关的内容聚集和分发服务系统以基于那些关键词执行因特网搜索。因此当用户和该用户的朋友在谈论最喜爱的运动队时,关于该运动队的统计数据可被自动显示在蜂窝电话上。客户端设备能够访问该客户端设备上的应用以获得数据。可另选地,客户端模块能够直接访问该客户端设备中的各个传感器。在步骤360中,客户端模块将访问客户端设备上的应用以获得当前状态信息。例如,如果存在正在客户端设备上运行的GPS或地图软件,则客户端模块可以访问该位置软件以获得该移动计算设备的当前位置。类似地,可以访问电子邮件应用以标识当前接收的电子邮件。在步骤362中,客户端模块将访问客户端设备上的传感器以获得当前情况。例如,客户端模块可以访问该客户端设备上的定向传感器、话筒、光传感器、温度传感器等以获得用户当前所处的环境的各种情况。在步骤364中,将来自步骤360的状态信息和来自步骤362的当前情况与该客户端设备的标识信息一起传送到服务系统。在许多实施例中,当数据被传送时,该数据通常首先被用于创建消息,然后该消息被传送。注意,图10的过程是与用户交互式地执行的。然而,图11和图12A的过程是自动地执行的,无需用户请求发送该数据。
图12B提供了图12A的过程的实施方式的一个示例。在步骤380中,客户端模块将访问智能电话中的日历应用。例如,客户端模块将从该日历应用确定用户正在与人A和人B开会。然而,在本示例中,日历应用中的会议信息不标识位置。在步骤382中,客户端模块将访问GPS位置应用来确定用户的位置。注意,步骤380和382是图12A的步骤360的示例。步骤384-388是图12A的步骤362的示例。在步骤384中,客户端模块将访问智能电话中的运动传感器来确定用户是否正在移动。在步骤386中,客户端模块将利用智能电话中的话筒来听取用户位置处的对话。该设备将执行文本到话音(text to speech)应用以创建可搜索文本。从可搜索文本,该设备将尝试标识关键词。在步骤386中的关键词,和运动的指示、客户端设备的位置以及从日历获得的会议的指示一起,将都会被封装到消息中,该消息被创建并传送到服务系统。此信息对于参与会议的那些人可能是适当的,但是会议参加者可能将她的帐户中的订阅设置设置为不将诸如来自对话的关键词或关于此会议的报告等信息转发给她的订阅者。图13是描述当客户端模块从情境地相关的内容聚集和分发服务系统30、150、252接收结果信息时该客户端模块的操作的一个实施例的流程图。即,使用图10、图11和图12A的过程来将感兴趣的主题和情境信息从客户端模块发送到服务系统。基于所接收的信息,该服务系统将标识用户感兴趣的信息并且将该信息推送回客户端。图13的过程描述了当客户端模块接收被服务系统推送回它的信息时该客户端模块所执行的动作。在图13的步骤400中,客户端模块将从服务系统接收内容而无需用户请求该内容。在步骤402中,客户端模块将警告用户关于新内容。同样,步骤402被执行而无需用户请求该内容。上面参考图8A-8F讨论了提供警告的示例。在步骤404中,客户端可以(可任选地)从用户接收警告的选择。如果如此,则在步骤406中显示与该警告相关联的内容(该内容是在步骤400中接收的)。例如,步骤402可以包括显示图8C的警告120,而步骤406可以包括显示图8B或图8D的窗口 114或窗口 124lt)在步骤408中,该系统可以从用户接收对附加信息的请求。例如,在一个实施例中,将该内容与用于用户请求附加信息的链接一起显示。如果用户选择该链接,则在步骤410中该系统将获得或报告该附加信息。例如,如果用户想要关于图8D的窗口 124:的更多信息,则响应于用户选择该窗口,客户端模块可以通知服务系统更多信息被请求。响应于对更多信息的请求,服务系统可以为用户提供导航到具有该出售的商店的明确细节;例如,提供采用公共交通的指示,提供驾驶指示等。可另选地,步骤408可以包括用户选择在图8F的用户界面中示出的圆圈中的一个。如上所述,磁体是搜索与种子相关的内容的软件进程。当发现内容时,磁体将创建数据库条目并生成与该数据库条目相关联的事件。数据库条目被存储而该事件将触发上面描述的过滤。图14是描述由磁体执行以生成这些事件的过程的一个实施例的流程图。在图14的步骤450中,一个或多个磁体将基于诸如用户感兴趣的主题的种子主题来搜索内容,如同上面描述的。在步骤452中,磁体将标识内容。在步骤454中生成事件,所标识的内容将用于创建数据库条目而在步骤456中该数据库条目将被存储。如同上面描述的,然后该数据将被用作过滤过程的一部分以潜在地标识要推送到用户的数据。图15是描述响应于事件的生成、由图7A的实施例中的系统执行的过程的一个实 施例的流程图。在一个实施例中,图15的过程可由图7A的智能处理模块174、图2中的控制器46或图7B的雷达服务252执行。在步骤600中,将接收广播用户的事件(为示例之目的,该用户将被称为用户A)。在步骤602,访问事件的内容。如上所述,当事件被生成时,数据库记录被生成并存储在数据存储(例如,172)中。在步骤602中访问该数据库记录。在步骤604中,从情境数据(例如,178,282)访问订阅者用户B的情境数据。在步骤606中,访问用户A的磁体数据。代表用户A收集数据的磁体中的任何一个将把该数据存储在数据存储中。在步骤606中访问该数据的全部或其子集。在步骤608中,将使用推荐引擎(例如,48、254、260)来基于用户A的事件数据、用户B的情境数据以及上面访问的用户A的磁体数据来标识用户B的推荐。如果生成了推荐(步骤610),则在步骤612中通过将该内容推送到客户端设备来将该推荐发送到用户B。如果没有标识推荐(步骤610),则不向用户B的客户端设备推送内容(步骤614)。推荐的示例可包括将用户A所代表的组织的商店的销售、用户A所代表的乐队的演出、或者用户A乐队的音乐会等通知用户。图16描绘了用于实现图I的各设备中的任一个的示例性计算系统710。图16的计算系统710可被用于执行在各图中描述的功能和过程。计算机710的各组件可包括但不限于处理单元720 (可执行此处描述的各过程的一个或多个处理器)、系统存储器730 (可存储对该一个或多个处理器编程以执行此处描述的各过程的代码)、以及将包括该系统存储器的各种系统组件耦合至该处理单元720的系统总线721。系统总线721可以是若干类 型的总线结构中的任一种,包括使用各种总线体系结构中的任一种的存储器总线或存储器控制器、外围总线、以及局部总线。作为示例,而非限制,这样的体系结构包括工业标准体系结构(ISA)总线、微通道体系结构(MCA)总线、增强型ISA(EISA)总线、视频电子技术标准协会(VESA)局部总线、外围部件互连(PCI)总线(也称为小背板(Mezzanine)总线)以及PCI Express。计算系统710通常包括各种计算机可读介质。计算机可读介质可以是可由计算系统710访问的任何可用介质并包括,易失性和非易失性介质、可移动和不可移动介质两者,包括RAM、ROM、EEPR0M、闪存或其它存储器技术、CD-ROM、数字多功能盘(DVD)或其它光存储、盒式磁带、磁带、磁盘存储或其它磁存储设备,或者可用于存储所需信息并且可由计算系统710访问的任何其它介质。系统存储器730包括易失性和/或非易失性存储器形式的计算机存储介质,如只读存储器(ROM) 731和随机存取存储器(RAM) 732。包含诸如在启动期间帮助在计算机710内的元件之间传输信息的基本例程的基本输入/输出系统733 (BIOS)通常储存储在ROM 731中。RAM 732通常包含处理单元720可立即访问和/或当前正在操作的数据和/或程序模块。作为示例而非限制,图16示出了操作系统734、应用程序735、其它程序模块736和程序数据737。计算机710也可以包括其他可移动/不可移动、易失性/非易失性计算机存储介质。仅作为示例,图16示出了从不可移动、非易失性磁介质中读取或向其写入的硬盘驱动器740,从可移动、非易失性磁盘752中读取或向其写入的磁盘驱动器751,以及从诸如⑶ROM或其它光学介质等可移动、非易失性光盘756中读取或向其写入的光盘驱动器755。可在示例性操作环境中使用的其他可移动/不可移动、易失性/非易失性计算机存储介质包括但不限于,磁带盒、闪存卡、数字多功能盘、数字录像带、固态RAM、固态ROM等。硬盘驱动器741通常由例如接口 740等不可移动存储器接口连接至系统总线721,而磁盘驱动器751和光盘驱动器755通常由例如接口 750等可移动存储器接口连接至系统总线721。
上文讨论并在图16中示出的驱动器及其相关联的计算机存储介质为计算机710提供了对计算机可读指令、数据结构、程序模块和其他数据的存储。例如,在图16中,硬盘驱动器741被示为存储操作系统344、应用程序745、其它程序模块746和程序数据747。注意,这些组件可与操作系统734、应用程序735、其他程序模块736和程序数据737相同,也可与它们不同。在此操作系统744、应用程序745、其他程序模块746以及程序数据747被给予了不同的编号,以说明至少它们是不同的副本。用户可以通过输入设备,如键盘762和定点设备761 (通常称为鼠标、跟踪球或触摸垫)向计算机输入命令和信息。其他输入设备(未示出)可包括话筒、操纵杆、游戏手柄、圆盘式卫星天线、扫描仪等。这些以及其他输入设备通常通过耦合到系统总线的用户输入接口 760连接到处理单元720,但也可通过诸如并行端口、游戏端口或通用串行总线(USB)之类的其他接口和总线结构来连接。监视器791或其他类型的显示设备也通过诸如视频接口 790之类的接口连接至系统总线721。除监视器之外,计算机还可以包括可以通过输出外围接口 790连接的诸如扬声器797和打印机796之类的其他外围输出设备。 计算机710可使用到一个或多个远程计算机(诸如,远程计算机780)的逻辑连接而在联网环境中操作。远程计算机780可以是个人计算机、服务器、路由器、网络PC、对等设备或其它常见的网络节点,且通常包括上文相对于计算设备710描述的许多或所有元件,尽管在图16中只示出存储器存储设备781。图16中所示的逻辑连接包括局域网(LAN) 771和广域网(WAN) 773,但也可以包括其它网络。此类联网环境在办公室、企业范围的计算机网络、内联网和因特网中是常见的。当在LAN联网环境中使用时,计算机710通过网络接口或适配器771连接到LAN770。当在WAN联网环境中使用时,计算机710通常包括调制解调器772或用于通过诸如因特网等WAN 773建立通信的其他手段。调制解调器772可以是内置的或外置的,可经由用户输入接口 760或其他适当的机制连接到系统总线721。在联网环境中,相对于计算机710所示的程序模块或其部分可被存储在远程存储器存储设备中。作为示例而非限制,图16示出了远程应用程序785驻留在存储器设备781上。应当理解,所示的网络连接是示例性的,并且可使用在计算机之间建立通信链路的其他手段。图17是由用于基于订阅者的情境向订阅者用户提供与广播用户有关的内容的技术使用的,与移动设备联网的头戴式显示单元的一个实施例的一部分的俯视图。图17示出了作为通过线806与处理单元804进行通信的近眼头戴式显示设备802的透视显示设备。在其他实施例中,头戴式显示设备802通过无线通信来与处理单元804进行通信。头戴式显示设备802被示出为眼镜的形状,其中镜框815为该系统的保持元件在原地提供支撑并且作为电气连接的管道。镜框包括支撑控制电路836的镜腿812,控制电路836提供支持头戴式显示设备802的其他组件的各个电子设备。在鼻桥814中置入了话筒810以用于记录声音以及将该音频数据传送给处理单元804。眼镜包括一对透视透镜816。在一个实施例中为眼镜形状的头戴式显示设备802被佩戴在用户的头上,使得用户可以透过显示器进行查看,并且从而具有该用户前方的空间的实际直接视图。使用术语“实际和直接视图”来指直接用人眼查看现实世界物体的能力,而不是查看物体的所创建的图像表示。例如,在房间中透过眼镜进行查看将允许用户具有该房间的实际直接视图,而在电视上查看房间的视频不是房间的实际直接视图。下面提供头戴式显示设备802的更多细节。尽管图18和图19中所示的设备为眼镜形式,但是头戴式显示设备802可以采取其他形式,比如具有护目镜的头盔在一个实施例中,处理单元804被佩戴在用户的手腕上,并且包括用于操作头戴式显示设备802的计算能力的一部分。处理单元804可以与一个或多个计算机设备(诸如本示例中的智能电话850的移动设备)无线地(例如WiFi、蓝牙、红外、或其他无线通信手段)通信。客户端模块32 (诸如雷达服务客户端模块250)在智能电话850上执行,显示设备802无线耦合到智能电话850。客户端模块32将显示设备802上的连接信息和操作状态信息提供给服务30。智能电话显示器852显示应用小块,包括Facebook应用实例8563的小块。其他小块856:和8562被来自情境地相关的内容聚集和分发服务系统的粒子或消息851覆盖。在本示例中,用户正在午餐时间在旧金山城区的Market街上散步,并接收“在Sal’ s处(前方0. I英里处Market街左侧)有$5. 99的午餐套餐”的情境地相关内容消息。此外,用户的智能电话没有登入她的工作网络,但是雷达服务252向她发送一条消息,该消息被显示为覆盖层8542,内容为“来自鲍勃的电子邮件,主题合并失败”,指示她在她的工作电子邮件帐户中接收到了电子邮件。该用户不需要在她的午餐时间期间登入或检查她的工作电子邮件来跟踪她的电子邮件;改为服务应用(例如,252)通知她。该用户已在她的设备限制中指示从她丈夫以及名人厨师“厨师鲍勃”的用户帐户接收的内容要在工作时间期间显示到她的混合现实显示系统802。图18是头戴式显示单元的组件的一个实施例的框图。图18示出了头戴式显示设备802的一部分的俯视图。仅仅描绘了头戴式显示设备802的右侧。头戴式显示设备802前方是朝前的视频相机813,视频相机813能够捕捉用户眼睛前方的视频和静止图像。这些图像被传送给处理单元804,这将在下面予以描述。头戴式显不设备802的镜架的一部分将围绕显不器(其包括一个或多个透镜)。为了示出头戴式显示设备802的组件,未描绘围绕显示器的镜架部分。该显示器包括光导光学元件825、不透明度滤光器829、透视透镜816和透视透镜818。在一个实施例中,不透明度滤光器829处于透视透镜816之后并与其对齐,光导光学元件825处于不透明度滤光器829之后并与其对齐,并且透视透镜818处于光导光学元件825之后并与其对齐。透视透镜816和818是眼镜中使用的标准透镜,并且可根据任何处方(包括无处方)来制作。在一个实施例中,透视透镜816和818可由可变处方透镜取代。在一些实施例中,头戴式显示设备802将仅仅包括一个透视透镜或者不包括透视透镜。在另一替代方案中,处方透镜可以进入光导光学元件825内。不透明度滤光器829滤除自然光(要么以每像素为基础,要么均匀地)以增强虚拟图像的对比度。光导光学元件825将人造光引导至眼睛。在镜腿812处或镜腿812内安装有图像源,该图像源(在一个实施例中)包括用于对虚拟图像进行投影的微显示器装配件820、以及用于将图像从微显示器820定向到光导光学元件825中的透镜822。在一个实施例中,透镜822是准直透镜。控制电路836的更多细节在下文参照图20提供。处于镜腿812内部或安装在镜腿812处的有耳机830、惯性和/或磁传感器832以及温度传感器838。在一个实施例中,惯性和磁传感器832包括三轴磁力计832A、三轴陀螺仪832B、以及三轴加速度计832C。惯性传感器和/或磁传感器用于感测头戴式显示设备802的位置、定向、以及突然加速。微显示器820通过透镜822来投影图像。存在着可用于实现微显示器820的不同的图像生成技术。例如,微显示器820可以使用透射投影技术来实现,其中光源由光学有源材料来调制,用白光从背后照亮。这些技术通常是使用具有强大背光和高光能量密度的LCD类型的显示器来实现的。微显示器820还可使用反射技术来实现,其中外部光被光学活性材料反射并调制。根据该技术,由白光源或RGB源向前点亮照明。数字光处理(DLP)、硅上液晶(LCOS)、以及来自Qualcomm有限公司的Mirasol 显示技术都是高效的反射技术的示例,因为大多数能量从已调制结构反射离开并且可用在本文描述的系统中。附加地,微显示器820可以使用发射技术来实现,其中光由该显示器生成。例如,来自MiCTovision有限公司的PicoP 显示引擎使用微型镜面舵来将激光信号发射到充当透射元件的小型屏幕上或直接照射到眼睛(例如激光)。光导光学元件825将来自微显示器820的光传送到佩戴头戴式显示设备802的用户的眼睛840。光导光学元件825还允许如箭头842所示那样将光从头戴式显示设备802的前方透过光导光学元件825透射到眼睛840,从而除接收来自微显示器820的虚拟图像之外还允许用户具有头戴式显示设备802的前方的空间的实际直接视图。因此,光导 光学元件825的壁是透视的。光导光学元件825包括第一反射面824 (例如镜面或其他表面)。来自微显示器820的光穿过透镜822并入射在反射面824上。反射面824反射来自微显不器820的入射光,使得光通过内反射而被捕获在包括光导光学兀件825的平面衬底内。在离开衬底的表面的若干反射之后,所捕获的光波到达选择性反射面826的阵列。注意,五个表面中只有一个表面被标记为826以防止附图太过拥挤。反射面826将从衬底出射并入射在这些反射面上的光波耦合到用户的眼睛840。由于不同光线将以不同角度传播并弹离衬底的内部,因此这些不同的光线将以不同角度击中各个反射面826。因此,不同光线将被所述反射面中的不同反射面从衬底中反射出。关于哪些光线将被哪个表面826从衬底反射出的选择是通过选择表面826的合适角度来设计的。光导光学元件的更多细节可以在于2008年11月20日公开的美国专利申请公开号2008/0285140、序列号12/214,366的“Substrate-Guided Optical Devices (衬底导向的光学设备)”中找到,该申请的全部内容通过引用结合于此。在另一实施例中,可以存在将光反射到两只眼睛中的一个光导光学元件。与光导光学元件825对齐的不透明度滤光器829要么均匀地,要么以每像素为基础来选择性地阻挡自然光,以免其穿过光导光学元件825。在一个实施例中,不透明度滤光器可以是透视LCD面板、电致变色膜(electrochromic film)、PDLC(聚合物分散液晶)或能够充当不透明度滤光器的类似设备。头戴式显示设备802还包括用于跟踪用户的眼睛的位置的系统,因为用户的眼睛将要朝向环境的子集。头戴式显示设备802包括眼睛跟踪部件134,该眼睛跟踪装配件134包括眼睛跟踪照明设备134A(参见图20)和眼睛跟踪相机134B(参见图20)。在一个实施例中,眼睛跟踪照明源134A包括一个或多个红外(IR)发射器,这些红外发射器向眼睛发射IR光。眼睛跟踪相机134B包括一个或多个感测所反射的IR光的相机。通过检测角膜的反射的已知成像技术,可以标识出瞳孔的位置。例如,参见2008年7月22日颁发给Kranz等人的、名称为“Head mounted eye tracking and display system(头戴式眼睛跟踪和显示系统)”的美国专利7,401,920,该专利通过引用结合于此。这样的技术可以定位眼睛的中心相对于跟踪相机的位置。一般而言,眼睛跟踪涉及获得眼睛的图像以及使用计算机视觉技术来确定瞳孔在眼眶内的位置。在一个实施例中,跟踪一只眼睛的位置就足够了,因为眼睛通常一致地移动。然而,单独地跟踪每只眼睛是可能的。图19A是覆盖订阅者的环境的订阅者视图呈现的类似雷达的通知虚拟覆盖层840的覆盖层的图示。根据图8F,与工作内容(例如,关于合并失败8542的电子邮件)相比,与用户的丈夫麦克和名人(她所订阅的帐户)有关的内容与代表该用户的“U”更接近。最接近的可以是所订阅的帐户内容的情境相关性的指示,当用户像她非常规律地做的那样正在午餐时间在旧金山城区散步时,如由服务(例如,30、150、252)从跟踪其情境信息(诸如来自她的智能电话的GPS数据)和她或者商家准许服务系统见到的对她的电子钱包的交易或者她使用的预算软件应用所确定的。经由透视显示器802的用户输入机制,例如诸如与处理单元804接口的腕带上的按钮或跟踪球等输入设备,用户能够选择麦克和该名人的内容。图19B是覆盖订阅者的环境的订阅者视图呈现的来自用户订阅的示例性广播用户账号的情境地相关的内容的虚拟覆盖层的图示。显示情境地相关的虚拟覆盖层854以及消息形式的内容和来自她所订阅的用户帐户的信息“名人在你右侧的Sutter街上2个街区下处的hike & bike处购买了品牌X的登山靴”以及“麦克今天早上在hick & bike站点上在他的愿望清单上标记了它们”。这两条消息会具有高置信度的相关性分数,因为用户非常靠近hike & bike商店。在一些实施例中,广播者可以允许订阅者实时链接到该房间或者朝前的相机813 (当广播者正穿戴着它们时)捕捉的(有声音或没有声音的)视频或图像馈源。例如,音乐家正在运动场处演出音乐会并且正在穿戴着近眼或头戴式显示器802。在音乐会之前或期间,该音乐家已更新了他的广播帐户中的他的订阅设置,以允许被标识为具有物理上在该体育场中的情境的订阅者能够在该服务可访问的显示器上查看他在音乐会期间正在看的东西。体育场计算机系统可以是订阅者并且可以能够在该体育场中的大屏幕上显示。订阅者还可以在他们的移动设备显示器上或近眼显示器上查看该馈源。在其他实施例中,广播者可以允许为他的广播帐户捕捉并存储朝前的相机813所捕捉的视频或图像。当订阅者在相同情境中(例如,在城市中的相同街道上行走,或者仅在相同城市中)时,可用馈源的通知被客户端模块从该服务接收并且在订阅者可用的客户端设备上显示。然后订阅者可以在他或她的移动设备或近眼显示器上查看该馈源。如果该移动设备或近眼显示器能够访问GPS或能够提供到一两个街区内的位置信息的其他位置寻找技术,该视频或图像可以跟踪其输出到该用户沿着该视频或图像的路径的前进。除了名人之外,这还允许许多与用户通信的机会,其中所述用户准许他们的视图被广播给另一用户以在不同地域用他们自己的语言解释其周围环境。可以利用这样的能力的服务的一些示例是旅游服务、紧急服务、以及方向服务。图20是头戴式显示单元的组件的一个实施例的框图。图20的组件中的一些(例如朝前的相机813、眼睛跟踪相机834B、微显示器820、不透明度滤光器829、眼睛跟踪照明834A、和耳机830)是以阴影示出的,以指示这些的设备中的每个都存在两个,其中一个用于头戴式显示设备802的左侧,并且一个用于头戴式显示设备802的右侧。图20示出与电 力管理电路902通信的控制电路900。控制电路900包括处理器910、与存储器914 (例如D-RAM)进行通信的存储器控制器912、相机接口 916、相机缓冲区918、显示器驱动器920、显示格式化器922、定时生成器926、显示输出接口 928、以及显示输入接口 930。在一个实施例中,控制电路900的所有组件都通过专用线路或一个或多个总线彼此进行通信。在另一实施例中,控制电路900的每个组件都与处理器910通信。相机接口 916提供到两个朝前的相机813的接口,并且将从该朝前的相机所接收到的图像存储在相机缓冲器918中。显不器驱动器920将驱动微显不器820。显不格式化器922向控制不透明度滤光器829的不透明度控制电路924提供关于微显示器820上所显示的虚拟图像的信息。定时生成器926被用于向该系统提供定时数据。显示输出接口 928是用于将图像从朝前的相机813提供给处理单元804的缓冲器。显示输入930是用于接收诸如要在微显示器820上显示的虚拟图像之类的图像的缓冲区。显示输出928和显示输入930与作为到处理单元804的接口的带接口 932进行通信。电力管理电路902包括电压调节器934、眼睛跟踪照明驱动器936、音频DAC和放 大器938、话筒前置放大器音频ADC 940、温度传感器接口 942、以及时钟生成器944。电压调节器934通过带接口 932从处理单元804接收电能,并将该电能提供给头戴式显示设备802的其他组件。每个眼睛跟踪照明驱动器936都如上面所述的那样为眼睛跟踪照明834A提供IR光源。音频DAC和放大器238从耳机830接收音频信息。话筒前置放大器和音频ADC 940提供用于话筒810的接口。温度传感器接口 942是用于温度传感器838的接口。电力管理单元902还向三轴磁力计832A、三轴陀螺仪832B以及三轴加速度计832C提供电能并从其接收回数据。图21是与头戴式显示单元相关联的处理单元的组件的一个实施例的框图。图21示出与电力管理电路1006通信的控制电路1004。控制电路1004包括通信地耦合到用于接收用户输入的用户输入设备1024的中央处理单元(CPU) 1020 ;图形处理单元(GPU) 1022 ;高速缓存1023 ;RAM 1026 ;与存储器1030(例如D-RAM)进行通信的存储器控制器1028 ;与闪存1034(或其他类型的非易失性存储)进行通信的闪存控制器1032;经由带接口 1002和带接口 932与头戴式显示设备802进行通信的显示输出缓冲区1036 ;经由带接口 1002和带接口 932与头戴式显示设备802进行通信的显示输入缓冲区1038 ;与用于连接到话筒的外部话筒连接器1042进行通信的话筒接口 1040,用于连接到无线通信设备1046的PCIexpress接口 ;以及USB端口 1048。在一个实施例中,无线通信设备1046可以包括启用Wi-Fi的通信设备、蓝牙通信设备、红外通信设备等。USB端口可以用于将处理单元804对接到用户计算机设备(像是智能电话850),以便将数据或软件加载到处理单元804上以及对处理单元804进行充电。在一个实施例中,CPU 1020和GPU 1022是用于确定在何处、何时以及如何向用户的视野内插入虚拟图像的主负荷设备。电源管理电路1006包括时钟生成器1060、模数转换器1062、电池充电器1064、电压调节器1066、头戴式显示器电源1076、以及与温度传感器1074(其位于处理单元804的腕带(wrist band)上)进行通信的温度传感器接口 1072。模数转换器1062连接到充电插座1070以用于接收AC供电并为该系统产生DC供电。电压调节器1066与用于向该系统提供电能的电池1068进行通信。电池充电器1064被用来在从充电插座1070接收到电能后对电池1068进行充电(经由电压调节器1066)。HMD电源1076向头戴式显示设备802提供电能。图22是可用于实现客户端设备的一个或多个实施例的示例移动设备的框图。描绘了典型移动电话的示例性电子电路。电话1100包括一个或多个微处理器1112,以及存储由控制处理器1112的一个或多个处理器执行来实现此处所述的功能的处理器可读代码的存储器1110 (例如,诸如ROM等非易失性存储器和诸如RAM等易失性存储器)。移动设备1100可包括例如处理器1112、包括应用和非易失性存储的存储器1110。处理器1112可实现通信以及任何数量的应用程序,包括本文中所描述的交互应用程序。存储器1110可以是任何种类的存储器存储介质类型,包括非易失性和易失性存储器。设备操作系统处理移动设备1100的不同操作,并可包含用于操作的用户界面,如拨打和接听电话呼叫、文本消息收发、检查语音邮件等。应用1130可以是任何种类的程序,如用于照片和/或视频的照相机应用、地址簿应用、日历应用、媒体播放器、因特网浏览器、游戏、闹钟应用、其他第三方应用、本文中讨论的交互应用等。存储器1110中的非易失性存储组件1140包含诸如web高速缓存、音乐、照片、联系人数据、时间安排数据、以及其他文件等数据。处理器1112还与RF发射/接收电路1106进行通信(电路1106又耦合到天线1102),与红外线发射器/接收器1108进行通信,与像Wi-Fi或蓝牙等任何附加通信信道1160进行通信,并与像加速度计等移动/定向传感器1114进行通信。加速度计被包括到移 动设备中,以启用诸如让用户通过姿势输入命令的智能用户界面之类的应用程序,在与GPS卫星断开联系之后计算设备的移动和方向的室内GPS功能,并检测设备的定向,并且,当旋转电话时自动地将显示从纵向变为横向。可以,例如,通过微机电系统(MEMS)来提供加速度计,该微机电系统是构建在半导体芯片上的微小机械设备(微米尺寸)。可以感应加速方向、以及定向、振动和震动。处理器1112进一步与响铃器/振动器1116、用户界面键区/屏幕1118、扬声器1120、话筒1122、相机1124、光传感器1126和温度传感器1128进行通信。处理器1112控制无线信号的发射和接收。在发射模式期间,处理器1112向发射/接收电路1106提供来自话筒1122的语音信号或其它数据信号。发射/接收电路1106将该信号发射到远程站(例如固定站、运营商、其他蜂窝电话等)来通过天线1102进行通信。响铃器/振动器1116被用于向用户发传入呼叫、文本消息、日历提醒、闹钟提醒或其他通知等信号。在接收模式期间,发射/接收电路1106通过天线1102接收来自远程站的语音或其他数据信号。所接收到的语音信号被提供给扬声器1120,同时所接收到的其它数据信号也被适当地处理。另外,物理连接器1188可被用来将移动设备800连接到外部电源,如AC适配器或加电对接底座。物理连接器1188还可被用作到计算设备的数据连接。该数据连接允许诸如将移动数据与另一设备上的计算数据进行同步等操作。为这种服务启用使用基于卫星的无线电导航来中继用户应用的位置的GPS接收机 1165。本技术可具体化为其他具体形式而不背离其精神或本质特征。类似地,对于模块、例程、特征、属性、方法和其他方面的具体命名和划分并非是强制性的,实现本技术或其特征的机制可具有不同的名称、划分和/或格式。此外,如本领域技术人员将显而易见的,所公开的实施例的模块、例程、特征、属性、方法和其他方面可被实现为软件、硬件、固件或三者的任意组合。当然,在组件(其示例是模块)被实现为软件的情况下,该组件可被实现为独立的程序、更大程序的一部分、多个单独的程序、静态或动态链接库、内核可加载模块、设备驱动程序、和/或编程技术领域中的技术人员现在已知或将来知晓的每一个和任何其他方式。尽管用结构特征和/或方法动作专用的语言描述了本主题,但可以理解,所附权利要求书中定义的主题不必限于上述具体特征或动作。相反,上述具体特征和动作是作为 实现权利要求的示例形式公开的。本发明的范围由所附的权利要求进行定义。
权利要求
1.一种用于将与一用户有关的内容基于另一用户的情境提供给所述另一用户的方法,包括 将第二用户的用户帐户订阅(62)到第一用户的用户帐户; 自动地从在线资源收集¢3)关于所述第一用户感兴趣的一个或多个主题的内容;从在与所述第二用户相关联的一个或多个计算机设备上执行的一个或多个客户端模块接收(64)情境信息; 针对与所述第二用户的情境的相关性,过滤¢5)为所述第一用户收集的内容;以及将所过滤的内容报告¢6)给在与所述第二用户相关联的所述一个或多个设备上执行的一个或多个客户端模块。
2.如权利要求I所述的方法,其特征在于 所述针对与所述第二用户的情境的相关性,过滤为所述第一用户收集的内容,进一步包括独立于所述第一用户的当前情境来过滤为所述第一用户收集的内容。
3.如权利要求I所述的方法,其特征在于 所述第二用户的情境信息包括物理位置。
4.如权利要求I所述的方法,其特征在于 所述第二用户的情境信息包括与与所述第二用户相关联的一个或多个计算机设备相关联的模式,客户端模块正在所述一个或多个计算机设备上执行。
5.如权利要求4所述的方法,其特征在于,所述模式是工作模式。
6.如权利要求I所述的方法,其特征在于,还包括 从所述第一用户获得(67)与到订阅者的内容分发有关的一个或多个订阅设置;从所述订阅者第二用户获得¢8) —个或多个订阅设置用于接收为所述第一用户帐户收集的内容;以及其中 将所过滤的内容报告给在与所述第二用户相关联的所述一个或多个设备上执行的一个或多个客户端模块,是基于所述第一用户帐户的一个或多个订阅设置以及所述订阅者第二单元帐户的一个或多个订阅设置而执行的。
7.如权利要求6所述的方法,其特征在于 从所述第一用户获得与到订阅者的内容分发有关的一个或多个订阅设置进一步包括 独立于内容的在线资源,接收(72)对于与订阅者的内容共享可用的、所述第一用户感兴趣的一个或多个主题的选择,以及 将对用于共享的一个或多个主题的选择存储(74)在所述第一用户帐户的订阅设置中;以及 从所述订阅者第二用户获得一个或多个订阅设置用于接收为所述第一用户帐户收集的内容进一步包括 独立于内容的在线资源,接收(82)对于所述订阅者想要从所述第一用户接收内容的、所述第一用户感兴趣的一个或多个主题的选择;以及 将对要为其接收内容的一个或多个主题的选择存储(84)在所述第二用户帐户的订阅设置中。
8.如权利要求6所述的方法,其特征在于从所述第一用户获得与到订阅者的内容分发有关的一个或多个订阅设置进一步包括 接收(79)对于要与订阅者共享的内容的一个或多个情境限制的选择,以及将对用于共享的一个或多个情境的选择存储(80)在所述第一用户帐户的订阅设置中;以及 从所述订阅者第二用户获得一个或多个订阅设置用于接收为所述第一用户帐户收集的内容进一步包括 接收(86)所述第二用户对于从所述第一用户帐户接收的内容的一个或多个情境限制的选择,以及 将对于从所述第一用户帐户接收的内容的一个或多个情境限制的选择存储(87)在所述第二用户帐户的订阅设置中。
9.如权利要求I所述的方法,其特征在于 将所过滤的内容报告给在与所述第二用户相关联的所述一个或多个设备上执行的一个或多个客户端模块进一步包括 根据由所述第二用户指示的对于接收所过滤的内容的设备限制,将所过滤的内容报告(图6A,90、91、92)给在一个或多个用户计算机设备上执行的一个或多个客户端模块。
10.一种用于将与一用户有关的内容基于另一用户的情境提供给该另一用户的系统,包括 与关联于第一用户和第二用户的计算机设备(36、38、186、188、190、192、194、196)上执行的一个或多个客户端模块(32A、32B、250)进行通信的一组一个或多个软件控制的计算机(710),所述组一个或多个计算机从与所述第一用户相关联的第一客户端模块(32A)以及从与所述第二用户相关联的第二客户端模块(32B)接收感兴趣的主题的指示和情境信息; 所述组一个或多个软件控制的计算机能够访问存储器(737、741、752、756)以存储一个或多个资源索引(274、280)以搜索能够用于聚集的信息; 所述组一个或多个软件控制的计算机基于来自所述第一客户端模块的感兴趣的主题的所述指示和所述一个或多个索引,自动地并且连续地收集关于所述第一用户感兴趣的主题的内容;以及 所述组一个或多个软件控制的计算机基于所述第一用户的感兴趣的主题和由所述第二客户端模块提供的所述第二用户的情境信息来过滤所收集的内容,并将所过滤的内容推送到在与所述第二用户相关联的计算机设备(36、186、188、190)上执行的一个或多个客户端模块。
全文摘要
本发明涉及基于另一用户提供情境内容。能够在云计算环境上执行的内容聚集和分发服务,基于订阅者的情境向订阅者用户提供基于广播用户的感兴趣的主题的内容。广播用户的示例是名人。从在线资源自动地收集关于广播用户的感兴趣的指定主题的内容,并且基于订阅者的情境对该内容进行过滤和分发。在线资源的一些示例是网站、社交网络站点,和购买交易系统。广播内容的示例是可能已经被直接输入服务的或者由名人在他或她的社交网络帐号中张贴的推荐。广播用户和订阅者两者均能够用订阅设置来分别控制内容的分发和接收。例如,所述设置可以设置关于主题、情境,和订阅者简档数据的限制。
文档编号G06F17/30GK102646109SQ20121003156
公开日2012年8月22日 申请日期2012年2月13日 优先权日2011年2月14日
发明者A·O·A·安德鲁斯, A·O·M·莫尔, J·P·帕克, R·鲍威尔 申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1