CN102222002A - 用于通用移动数据的系统 - Google Patents

用于通用移动数据的系统 Download PDF

Info

Publication number
CN102222002A
CN102222002A CN2011101790329A CN201110179032A CN102222002A CN 102222002 A CN102222002 A CN 102222002A CN 2011101790329 A CN2011101790329 A CN 2011101790329A CN 201110179032 A CN201110179032 A CN 201110179032A CN 102222002 A CN102222002 A CN 102222002A
Authority
CN
China
Prior art keywords
data
user
computing
storage
computer
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.)
Pending
Application number
CN2011101790329A
Other languages
English (en)
Inventor
S·楚帕拉
K·盖斯那
J·克莱维恩
K·A·洛布
B·奥斯特格伦
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.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft 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 Microsoft Corp filed Critical Microsoft Corp
Publication of CN102222002A publication Critical patent/CN102222002A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/01Social networking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • H04L67/306User profiles
    • 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/535Tracking the activity of the user

Abstract

本文描述了用于通用移动数据的系统。公开了聚集与组织位于包覆系统中的用户云数据,以及然后经由通用API将该云数据的总和展现给应用程序的系统与方法。这样的系统提供了丰富在场信息,允许用户跨他们所有的计算设备映射并统一他们的全部体验,以及发现其他用户及其体验。由此,用户能增强他们对其自己的环境知识及增强与该环境的交互,以及打开与其他人之间的新的社交体验。

Description

用于通用移动数据的系统
技术领域
本发明设计移动通信技术,尤其涉及用于通用移动数据的系统。
背景技术
计算的当前趋势是远离主机系统而转向云计算。云计算是基于因特网的计算,藉此诸如软件和其他信息的共享资源可以经由因特网按需提供给各计算设备。它代表了IT服务的新消费与递送模型,其中资源可用于所有具有网络能力的设备,这与其中资源跨设备被本地存储的较旧的模型相反。云计算一般涉及作为因特网上的服务的动态可缩放且常常虚拟化的资源的预设。走朝向云计算迈进打开了移动设备和其他网络设备彼此结合来工作以就第三方和用户自身资源提供更大的交互和更丰富的体验的潜力。
随着推向云计算,需要一种用于数据聚集与传播的新模型。目前的模型采用多个杂乱的应用编程接口(API)来允许访问用户云数据的总和。没有相关的或联合的系统来组织与提供对用户所有的云数据的访问。其结果是关于多个计算设备与其他人的计算设备之间的脱节的交互和被忽视的用户体验。
发明内容
简要描述的本技术包括用于聚集和组织位于包覆系统(encompassing system)中的用户的云数据,然后经由通用API将该云数据的总和展现给应用程序的系统与方法。这样的系统提供了丰富在场信息,从而允许用户跨他们所有的计算设备映射(map)并统一他们的全部体验,以及发现其他用户及他们的体验。由此,用户能增强他们对其自己的环境的知识(knowledge)及增强与该环境的交互,以及打开与其他人的新的社交体验。
在实施例中,与用户生活的宽范围的方面相关的用户数据可能被他们的计算设备检测到,并被聚集到数据存储中。可在随后例如通过将数据分类到数据类别、概括每个类别内的数据、以及通过从特定数据项得到推论来合成数据以产生新的数据项来处理该数据。然后,通用API可被用于跨所有数据类型以及对于所有设备类型将数据存储中的全范围用户数据展现给应用程序。
在一个示例中,本技术涉及组织并允许访问云数据的方法。该方法包括以下步骤:a)经由一个或多个计算设备检测用户数据,所检测的数据包括用户的位置和用户的活动两者中的至少一个;b)将在所述步骤a)中检测到的数据聚集到数据存储中;以及c)经由通用应用程序编程接口将在所述步骤b)中聚集到数据存储中的数据展现给应用程序。
在进一步的的示例中,本技术涉及用于编程处理器以执行组织和允许访问云数据的方法的计算机可读存储介质。该方法包括以下步骤:a)经由一个或多个计算设备检测用户数据,所检测的数据包括以下中的至少一个:a1)用户的位置,a2)用户的活动,a3)用户的简档,以及a4)用户所拥有的设备;b)将在所述步骤a)中检测到的数据聚集到数据存储中,位置数据被存储在第一数据类别中,活动数据被存储在第二数据类别中,简档数据被存储在第三数据类别中,而设备数据被存储在第四数据类别中;c)概括第一、第二、第三和第四数据类别的每一个中的数据,以对于第一、第二、第三和第四数据类别的每一个得到至少一个代表性数据项;以及d)经由公共应用程序编程接口将在所述步骤b)中聚集到数据存储中的数据展现给应用程序。
在另一个示例中,本技术涉及一种组织和允许访问云数据的方法,该方法包括:a)经由一个或多个计算设备检测用户数据,该用户数据至少与用户在哪里以及用户在干什么有关;b)将在所述步骤a)中检测到的数据聚集到数据存储中;c)定义触发事件,该触发事件与由一个或多个计算设备测量的条件的发生有关;d)确定指示触发事件已发生的数据是否被聚集到数据存储中;以及e)基于所述步骤d)中确定指示触发事件已经发生的数据被聚集到数据存储,经由单个应用程序编程接口将所述步骤b)中被聚集到数据存储中的数据展现给应用程序。
提供本发明内容以便以简化形式介绍在以下的具体实施方式中进一步描述的一些概念。本发明内容并非旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。
附图说明
图1示出可能使用了此处讨论的技术的第一种系统。
图2示出可能使用了此处讨论的技术的第二种系统。
图3示出根据本技术的数据存储的框图。
图4是说明将数据加载到数据存储的第一方法的流程图。
图5是说明将数据加载到数据存储的第二方法的流程图。
图6是说明组织数据并将其存储在数据存储中的方法的流程图。
图7是访问数据存储中的数据的第一方法的流程图。
图8是访问数据存储中的数据的第二方法的流程图。
图9是带有由此处讨论的技术所提供的警告的移动设备的图。
图10示出用此处讨论的技术所选择出的显示设备。
图11是示例性计算环境的框图。
图12是示例性游戏控制台的框图。
图13是示例性移动设备的框图。
具体实施方式
本技术的实施例将会参看图1到图13而描述,其大体上涉及聚集与组织位于包覆系统中的所有的用户的云数据的系统,然后将该云数据的总和经由公共API展现给应用程序。这样的系统提供了丰富在场信息,从而允许用户在他们所有的计算设备上映射并统一他们的全部体验,以及发现其他用户与他们的体验。在这个方法中,用户能增强他们对其自己的环境的知识及增强与该环境的交互,以及打开与其他人的新的社交体验。
根据本技术,来自用户生活与体验的各个方面的数据,包括过去的和现在的,可以被上传在数据存储。数据可能被存储在不同类别中,其中相关类型的数据可以被存储在同一类别中。所述数据可以经由各种方法来处理,包括比如概括给定类的数据,按不同类别对数据进行标记,以帮助其跨多个计算设备和应用的使用。附加地,数据可能被合成并对其他数据进行交叉引用(cross-reference),以推断随后可能被存储在一个或多个类中的附加数据。
与传统系统不同,本技术(也就是,本申请的发明性技术)提供了展现并允许访问用户的存储数据的总和以及其他用户的存储数据的通用API。因此,用户能够访问丰富在场数据,从而跨所有用户设备提供关于用户他们在哪里以及他们以前、现在(实时)以及将来时间段在做什么的全面视图。由于相同的数据对于用户的朋友和其他人可用,因此用户还可以实时地获取他们的朋友们的体验,以打开新的社交机会和发现。个人隐私设定使用户能设定选择(opt-in)准许和不同的访问设定。本技术的这些原理及其他将在下面更详细地解释。
图1示出实现本技术的样本网络拓扑60的框图。网络拓扑60包括属于单个用户80的多个计算设备82、84、86。在一个示例中,计算设备82可以是移动电话网络的移动电话,计算设备84可以是诸如台式计算机、笔记本计算机或平板计算机之类的个人计算机,而计算设备86可以是带有相关联显示器88的机顶盒或游戏控制台。计算设备82、84、86还可以经由网络50与服务90相连接。这些计算设备的示例实现经由相关附图11、12、13而在下面列出。
各种类型计算设备中的每一个可以本地地存储数据或将其存储“在云中”,比如存储在如下所述的服务90中的丰富在场(rich presence)存储位置200上。每个设备可能具有相同数据、不同数据或相同数据的不同版本。作为示例,移动设备82可含有具有数据的信息83,诸如联系信息、日程信息、地理位置信息、应用使用数据、应用专用数据、以及用户的消息接发和呼叫历史。个人计算设备84可含有具有数据的信息85,诸如相关用户80的联系信息、日程信息、地理位置信息、应用使用、应用数据和消息历史。游戏控制台86可以包括信息87,比如玩过的游戏的历史、购买的游戏的历史、用户80最经常玩哪些应用的历史、以及诸如成绩、奖励和所记录会话之类的应用数据。
除了真实世界的社交,用户能参与虚拟社交。比如,用户80可以参与与其他用户(诸如在图2中示出的那些)的在线游戏。在该游戏中,用户可以不仅通过玩游戏,还可以通过他们之间的口头或消息通信来进行交互。
图1所示计算设备82、84、86仅为示例方式,且在进一步实施例中可能省略它们的一个或多个。另外,在进一步实施例中,用户80可能还有各种其他计算设备或计算设备82、84、86的额外副本。这样的计算设备大体上可能包括,但不限于,桌面计算机、膝上型计算机、平板计算机、蜂窝电话、电视机/机顶盒、视频游戏控制台、汽车、照相机和智能设备。其他计算设备也被考虑。
服务90可能比如是大规模因特网服务提供商,就像比如MSN
Figure BSA00000528041000051
服务和Xbox LIVE,尽管进一步实施例中不一定是这些服务。服务90可能具有一个或多个服务器92,其可能是比如包括在下文所述的数据库管理服务218。服务器92可能进一步包括web服务器、支持游戏应用的游戏服务器、组织并分发所选媒体的媒体服务器,和/或支持文件转移的ftp服务器和/或其他类型的服务器。其他服务器也可被考虑。
在实施例中,图1中所示的计算设备的每一个可以经由一个或多个公共或专用网50来彼此耦合。网络50可以包括因特网、蜂窝网或其他类型的已知公共或私人数据和/或语音传输网络。在进一步的实施例中,作为他们连接至网络50的补充和替代,计算设备82、84、86可通过对等连接来彼此连接。
服务90还提供服务集合,在计算设备82、84、86上运行的应用可以调用或利用服务集合。比如,计算设备82、84、86可以调用用户登录服务94,其被用于认证寻求从服务90访问他或她的安全资源的用户80。用户80可以通过各种认证协议,包括比如用诸如用户名和密码之类的ID,来向服务90认证他或她自己。
当认证由服务90来实行的时候,ID和密码可被存储在数据结构96内的用户账户记录98中。数据结构96可以进一步包括丰富在场存储位置200,用以存储如下所述的多种数据。在进一步实施例中,用户账户记录98可以被合并作为丰富在场存储位置200的一部分。尽管服务器92、登录服务94和数据结构96被图示为单个服务90的一部分,在进一步实施例中,这些组件的一些或全部可以跨不同的服务分布。
图2是根据本发明技术的包括多个用户及其计算设备的替换性网络拓扑60的概览。图2示出多个用户102、106、114、118、122、126和132,其中的任一个或多个可参与彼此之间的社交或商业关系。图2所示用户可能与他们的一个或多个计算设备相关,这些计算设备可以是上述计算设备中的一个或多个。比如,用户102与他笔记本计算机104相关,用户106与她的游戏控制台108相关,用户118与她的移动设备116相关,而用户122与他的电视机124相关。图2所示的每一个设备可能如上所述经由一个或多个公共或专用网50来与彼此耦合以及耦合至云服务。
除了服务90,图2进一步示出基于云的信息170,其包括关于图2中所示的个体中的任一个的公共和/或私人信息,且被存储在经由网络50可用的网络可访问数据存储中。公共信息170可以比如包括Facebook简档172、个人网络日志174、My Space简档176、地理位置在场178和/或游戏历史180。云信息可以进一步包括经由云可访问的私人数据190,其中所述私人数据190可以包括诸如购买记录、银行历史和经由任何其他已知厂商的购买交易历史之类的东西。在一个实施例中,私人数据190仅能基于经由私人数据的所有者的授权才能访问。云数据170和/或私人数据190被用在本系统中,此信息可以分别地从丰富在场数据存储200访问到,或云数据170的至少部分和/或私人数据190可被并入作为丰富在场数据存储器200的一部分。
图2所示的各种类型的计算设备的每一个可能具有上面关于不同计算设备82、84、86所述的数据类型。这样的计算设备的数据可以被本地地存储并存储在丰富在场数据存储200上。
图3示出丰富在场数据存储200的一个示例的框图。该数据存储200可以比如是或包括关系数据库,诸如比如建立在SQL Server
Figure BSA00000528041000061
技术上的SQL AzureTM数据库。其他类型的数据库也被考虑。数据存储200可能包括多个类别,在该示例中为类别202、204、206、208、210、212、214、216,每个类别含有不同的数据分类。每个用户可以拥有他们自己的类别集合202到216,用于存储从他或她的计算设备,诸如计算设备82、84、86中收集来的数据。在进一步实施例中,数据存储器200中的用户数据可以从其他源处得到。
本系统进一步包括API 240,如下所述的,其允许数据被上传并可作为整体被访问。这提供了跨用户的所有计算设备上集成的用户及其体验的增强型视图,此处被称为丰富在场数据。
可被存储在类别202到类别216之中的数据类型可以是关于用户的任何数据类型。此处的术语“用户”被宽泛地定义为用户及与用户交互的对象和/或实体。在本上下文中,用户包括人,但也可以包括车、房子、公司等。其可以是从用户的一个、一个以上或所有的计算设备中收集的,不过在进一步实施例中,其还可以从用户设备之外的源处得到。仅为示例而非限制,在图3中用户数据被拆分到其中的类别202到216包括位置数据、简档数据、用户活动、用户可用性、用户环境、用户具有的设备、用户访问过的媒体及用户的历史记录。
位置数据类别202大体上可包括关于用户当前位置的数据,且可以通过从用户的一个或多个计算设备提取的多种数据中的任何一种来给定。这个数据可由计算设备中的全球定位系统(GPS)接收器来供给,该计算设备诸如是用户携带的移动电话82。位置数据可以进一步由在已知位置的计算设备处登录的用户帐号或通过已知IP地址来给出。位置数据可以进一步来自拾取移动电话的蜂窝站点或其可来自用户所连接的WiFi连接点,其中WiFi连接点的位置是已知的。在实施例中,用户所拍的照片可包括关于拍摄照片的时间和地点的元数据。这个信息还可以被用于实时标识拍摄照片的用户位置。其他类型的位置数据也被考虑。
类别204可能包括由此包含用户隐私设定的简档数据。本系统将关于用户的大量信息推送给其他用户。每个用户都具有关于他们的数据和个人信息中的多少被共享而建立隐私设定的能力。用户可以选择不与他人完全共享他们的数据;用户施行仅与特定用户(诸如他们的朋友列表上的那些用户)共享他们的数据点隐私设定;且用户可以设置他们的隐私设置,从而仅他们的数据中具有低于特定隐私率阈值的部分才可以共享。这些设定可以由用户通过服务90提供的隐私界面来设定。
个人信息类别204可以进一步包括各种其他的用户简档数据,诸如他们的游戏统计数据(玩家简档统计数据,所玩和购买的游戏、成绩、奖励和所记录的会话等);他们的人口统计(demographics),诸如用户年龄、家庭成员和联系信息;他们的朋友列表;浏览和搜索的记录;和他们的职业信息。其他类型的简档数据也可以被考虑。
活动数据类别206通常包括用户实时正在做什么的数据。这个数据可以经由各种直接或间接的方法产生。收集这样的数据的直接方法例如是由用以示出用户正在玩的游戏和看电视的控制台或机顶盒来提供的。类似地,用户的PC或移动设备可以示出用户正在执行什么浏览和web搜索。用户设备可能示出用户购买了事件的门票,或者已进行与旅游、餐饮、购物和其他休闲活动相关的特定购买(这些购买可以是实时发生的,或者是在将来的某个时间发生的)。
活动数据类别206可以包括各种其他活动,这些活动可以被他们的计算设备之间感测且被实时地上传到数据存储器200中。在进一步的实施例中,类别206的活动数据可以间接地得到,诸如比如经由合成引擎230得到。合成引擎230在下面会详细描述,但是该引擎230通常可以检查数据存储200中的各类别内的数据以推测进一步数据,该进一步数据随后可被添加到数据存储200。比如,如果用户正在拍照片,则这些照片被识别出为旅游胜地,合成引擎320可以为活动数据类被203推断数据认为用户正在旅行和/或观光。各种其他类型的活动数据可被提供在活动数据类别206中。
可用性数据类别208可实时示出用户的可用性。这个信息的良好源可以是用户的日程,因为其可从他或她的计算设备的任一个处更新并被维护在中央数据存储中(或者作为服务90的部分或其他地方)。然而,其他指示符也可以被用于建立用户的可用性。比如,可以通过由用户的计算设备检测到的她的活动与购买从关于工作日与周末的日常惯例中推断出用户的可用性。可用性可以是由用户正在执行的什么样活动(被存储于活动类别206中)来指示。比如,如果用户正在游戏会话中,可以假定用户当时不可用。类别208的可用性数据可以进一步间接地从合成引擎230根据其他数据中推断出来。比如,如果用户的车(或其他设备)指示用户开始在高速行驶的车中行进,而用户日程显示用户有异地会议,则合成引擎可以推断出用户正在驾驶,且在一段时间内不可用。其他类型的可用性数据也可考虑。
类别210中的环境数据可以包括用户的周围环境的经验测量,比如诸如当前GPS位置、温度、湿度、海拔、环境光等。在上述示例中,GPS数据被包括在位置和环境数据类别202和210中。这显示至少特定类型的数据可以被包含在多于一个的类别中。
设备数据类别212可能包括用户具有的计算设备的类型和这些设备的位置。数据类别212可以进一步包括在这些设备上加载的应用,使用这些设备有多频繁和这些设备什么时候被使用、以及应用数据。其他类型的数据也可以被包括在设备数据类别212中。
媒体数据类别214可也包括用户当时看到或听到或者以前访问过的的任何媒体。这个媒体可能包括诸如音乐、图片、游戏、视频和电视之类的信息。媒体数据类别214可能包括所存储的这个媒体的副本,或仅仅是用户访问或已访问的什么样的媒体的元数据列表,且如果存储在用户设备或存储位置处,则媒体被存储在哪里。
历史数据类别216可能包括用户过去做了什么的历史视图。本系统的一个特征是实时上传用户数据并使该数据能用于消费的能力,如接下来详细描述的那样。然而,历史数据也可以被存储。这样的历史数据可能包括过去的活动(也就是,存储于活动类别206中但是一旦用户完成了该活动就被移动到历史数据类别216中的数据)。历史数据类别216可包括电话和/或消息历史(SMS、即时消息接发、电子邮件等),以及计算设备的使用和web-浏览/搜索的历史。可能进一步包括用户住过、工作过、访问过的历史记录等。类别216中的历史数据可能仅仅是过时几秒钟或几分钟,或者其可能过时了几年。
类别202到216中的上述信息仅为示例方式。除了上述的数据之外,数据存储器200可以进一步包括,而不限于:来自云信息170(图2)和诸如Facebook、Four Square和My Space之类的其他社交网站的数据;服务数据,诸如可从诸如Xbox LIVE得到的游戏服务;社会图数据,包括朋友、朋友的朋友、家庭或其他社交定义的关系,以及从用户的朋友和社交图的其他层所曝露的数据。各种其他数据和其他数据类别可以被提供在数据存储器200中。
上述数据可以用多种方法从用户的计算设备中上传到数据存储器200中。此处参看图4和图5来描述两种这样的方法。在步骤300中,管理员可以在数据库管理服务(DBMS)218的帮助下设置数据存储200,并提供丰富在场存储器200中的类别的定义。这样的类别定义可以附加地或替换地由数据分类引擎220产生,其操作将在下文描述。
在步骤304中,每个计算设备检查设备中是否已本地地创建新数据记录。如果已创建,则计算设备在步骤308中检查是否具有到数据存储200的连接。如果有的话,则在步骤312中,将新数据记录推送到数据存储中。由此,新数据可被实时地上传到数据存储。这容许如下所述地处理数据,以使得其也能被实时地访问。然而,如果在步骤308中没有网络连接可用,则在步骤316中,当连接变得可用时,数据被上传到数据存储200。
被上传到数据存储器200的数据可能已经具有来自已位于数据存储200上的先前测量的相同数据的版本。在步骤320中,DBMS 218可检查所接收到的数据是否正在试图修改已存储于数据存储200中的现有记录。如果在数据存储上没有找到已接收数据的先前版本,则在步骤324中,存储新的数据。如果数据的版本已经存在,那么在步骤328中,DBMS 218可执行已知版本检查以及关于现有与较早版本数据之间的冲突解决。在步骤332中,如果新数据被发现是最新的版本,且任何冲突被解决以后,数据可以被存储。如果发现基于应用已存储的冲突规则还是无法解决冲突,则可向用户提示如所知地来解决冲突。
上面描述了其中新数据从用户的不同计算设备中被推送到存储200的方法。图5示出替换性实施例,其中服务90从用户的计算设备中的每一个拉取数据。图5所示带有与图4类似附图标记的每个步骤在操作上相同,且上述描述可合并在此。一个不同之处在于,在图5的示例中,在步骤302中,服务90周期性地轮询属于用户的计算设备。如果在步骤304中发现了新数据,则该数据如前所述地被上传。如果没有发现新数据,则服务90在下一轮询区间再次执行轮询。轮询区间可以被设置为短的,比如几秒钟,以允许实时或接近实时的数据上传。在进一步实施例中,轮询区间可以比几秒钟更长或更短。
对于用户的计算设备的每一个,以及对于与服务90相关联的每个用户,可发生如图4和图5所上述的从用户的计算设备上传数据。因此,数据存储器200具有关于用户、以及用户的朋友和如下所述用户可能发现的其他人的丰富在场数据。可以进一步理解,作为以上参看图4和图5所述的补充和替代,来自用户计算设备的数据可以用各种方法、以及使用各种步骤来上传到云中。
一旦数据被上传到数据存储200中,可以在如图3所示的DBMS 218的控制下对数据执行各种处理操作。DBMS 218仅作为示例公开。可以理解的是,在进一步的实施例中,下述处理操作可以由DBMS之外的控制算法来执行。不管是由DBMS 218还是一些其他控制来执行,这些处理步骤可能包括以下的一个或多个:将数据分类到类别、概括数据、对数据进行标记、以及检查新的数据是否会是从被检测到的数据合成的。这些操作将会在下文再次参看图3以及图6的流程图来解释。
步骤340中,接收来自用户计算设备的新数据。在步骤344中,数据分类引擎220检查接收到的数据是否可被分类到现有数据类别中。数据分类引擎220可以是DMBS 218的已知组件,用于设置字段、关于每个字段的关系集合、以及可被用于访问与不同的字段和关系集合的数据的查询的定义。给定一组预定义约束,数据分类引擎220能将接收到的数据整理到不同类别中,以及检测对于新数据何时需要新的类别。分类引擎220可以使用已知的方法将数据整理到类别中和/或创建新的类别。数据库管理员还可以监视数据存储200并促进数据分类引擎220的操作以分类数据并确定何时需要新的数据类别。
如果数据分类引擎220确定新的数据适于所定义的类别中,则在步骤348中,将该数据添加在该类别。如果引擎220确定新的数据确实需要新的数据类别,引擎可以在步骤346中产生新的类别,且新数据可以在步骤348中被添加到新的数据类别。
在步骤352中,给定数据类别的数据可由数据概括引擎224来概括。具体地,当新数据被接收到时,其可具有该数据的可靠性的一些指示符,比如置信值。该可靠性指示符例如是基于源的已知准确度、以及该数据是由计算设备直接测量还是从如下所述的合成引擎推断出的。其他各种因素可能加入到确定可靠性指示符的置信值中。可靠性指示符可能是保持作为常数,或者随时间衰退。比如,位置数据最好是实时的,但是随着位置数据变旧其可靠性就减少了。
在一个实施例中,概括引擎224合成类别中每个数据记录的可靠性指示符,并确定具有表示数据值的类别的最佳数据值的概括236。这可能是基于确定可靠性指示符显示一个数据值比其他数据值更可靠。比如,对于给出用户位置,GPS数据可能比IP地址更可靠。在这样的实施例中,概括引擎224可返回具有与最高可靠性指示符相关联的数据的概括236。在进一步实施例中,概括引擎224可返回具有基于数个可靠性指示符的复合值的概括236。该概括引擎224可能返回各种其他因素,包括数据的整体可靠性、中值和标准差。
作为概括引擎224的操作的示例,数据存储可具有多个位置数据输入(GPS纬度/经度、WiFi节点等)。这些数据值的可靠性指示符可包括诸如GPS信号的信号强度、WiFi网络范围等信息。使用可靠性指示符,概括引擎224可以确定使用一个数据点而丢弃其他的。替换地,概括引擎可以使用多于一个的数据点来创建带有复合位置的概括236,该复合位置具有单个概括值(比如纬度/经度)或多个数据点(比如纬度/经度加上整体可靠性分数)。
在步骤354中,数据标签引擎228可被用于在至少一个特定数据项上提供元数据标签。具体地,可用描述符来对类别中的数据项进行标记以便以各种方式来用于帮助该数据跨各种计算设备、应用程序和情景上的使用。一些计算设备可能需要以特定方法格式化的数据,这些信息可能在元数据标签中提供。一些应用程序可能以一种方式使用该数据,而另外程序以另一种方式使用该数据,这些信息可在元数据标签中提供。
元数据标签可由数据标签引擎228产生,且与特定数据项相关联。数据标签引擎228可能基于关于如何以及何时对数据进行标记的预定义规则来生成标签,其信息可由DBMS 218来提供。可选地或附加地,数据标签引擎228可利用就数据项目上传的元数据。
接下来在步骤358中合成引擎320检查数据存储200中的数据项目是否可被单独地使用,或者对其它数据项进行交叉引用,从而合成新的数据。具体地,管理员可创建存储在DBMS 218中的规则,该规则定义何时可从特定数据类型中得出逻辑推论以创建新的数据项。上述已经阐述了一些示例:车速数据连同日程安排数据一起使用能被用于推断关于用户可用性的数据;识别用户照片(比如通过已知的照片识别技术)的主题可被用于推断出用户正在旅游和/或观光的新数据。可提供各种广泛的其它预定义规则拉定义何时可由合成引擎230关于数据存储200中的数据作出逻辑推论以推导出新数据。
存储200中的数据可如上所述地由引擎220、224、228和230的一个或多个来处理。可以理解的是,这些处理步骤中的一个或多个可以在可替代的实施例中被忽略。
在上述处理步骤之前或之后,该系统可以在步骤360中由用户或由DBMS218检查接收到的数据中是否具有与其相关的一些隐私方面。每个用户有关于数据项建立隐私设置的能力,具体地,是否可以以及谁可以看到这个数据。用户可以将一组特定隐私规则和每一个数据项联系起来,详细而言,隐私设定将与该数据项相关联。可选地,用户可以仅为数据项简单地指派通用隐私等级。然后,这个通用等级可以由DBMS 218用来设定数据的隐私分层结构。有了这个分层结构,用户可以设定阈值隐私设置,比如在他们的简档数据中。这样做,用户同意允许访问具有位于指定阈值设定之下(或之上)的隐私等级的所有数据。这容许用户又快又简单地将隐私设定应用到广范围的数据上。该用户还可容易地以这种方式改变广范围数据上的隐私设定。
在步骤360中,DBMS 218可以检查新数据片是否具有相关联的隐私设定,诸如例如详细的规则和/或通用等级。如果是有的话,在步骤364中,所述隐私设定可如上所述地被存储在简档类别204中。
一旦数据已经被上传、处理和组织,它就能被一个或多个应用程序所访问。这个过程的实施例现在参看图3和图7所示流程图而描述。在步骤370中,用户可能从他们的计算设备中的一个中执行应用程序,诸如例如应用程序234-1,234-2,…,234-n中的一个或多个。这些应用程序之中的任一个可以使计算设备周期性地调用API来访问数据存储200。
根据本技术,单个的、通用API 240可被用于跨所有数据类别以及对于所有设备类型将存储200中全范围的用户数据展示给访问方应用程序。具体地,API能基于访问方应用程序的目的而制定查询,以在所有满足该查询的字段中搜索用户数据和数据类别的总和。
如上所述,传统系统可能提供多个API,该允许看到用户数据的不连续的片段。然而,传统API不会提供对存储在数据存储200中的丰富在场数据的全范围的访问。对比于通过传统的和/或不同API所能访问的,API 240用于展示全范围数据和数据类别的操作允许产生更清晰的图片和增强的体验。比如,本系统容许用户与他的各种计算设备进行无缝地交互,从而使它们动作一致而不是作为离散的处理设备。另外,本系统用传统系统不知晓的方式来容许用户发现其他用户并与他们交互。下面会示出一些更详细的示例。
再次参看图7所示流程图,步骤370中,一旦应用程序234作出API调用,则在步骤378,API 240接收到该调用并在步骤388制定基于目的的查询来在所有类别上搜索满足该调用的数据。在步骤384,DBMS 218可以响应于查询检索数据字段。在步骤388,所检索的数据字段可被制定为响应以便转发给计算设备。不同的设备具有不同的能力,且在步骤392响应数据可以针对特定可访问设备而被格式化(或格式化指令可连同响应被转发)。然后,在步骤396,该响应被送给计算设备,并在步骤398被接收到设备中。
如上所述,合成引擎230可以合成存储在存储200中的数据。应用程序234可能在数据存储200中查询不同的数据片,然后实行合成步骤,这个合成步骤与由合成引擎230执行的操作不同。如果这样的话,关于返回数据的分开的合成步骤可以被应用程序234在步骤400中处理。步骤400用虚线示出,因为这是可选择的,且可以被省略。在步骤402,所制定的响应可以在接收方计算设备上被呈现。值得注意的是,此处“呈现”响应可以指在接收方计算设备上的视觉或听觉的响应。其也可以指在计算设备上执行程序,或者在计算设备上执行一些其他动作。
图8示出经由API240访问数据的替换性实施例。图8与图7相类似,其改动在于,步骤374中作出对API 240的调用以查找在所上传数据中已发生的一些触发事件。触发事件可以由应用程序324、在计算设备和/或用户的设备处运行的另外一个应用程序来定义。触发事件可以是各种条件事件中的任一个,这条件事件由一个或多个计算设备检测到并被上传到数据存储器200。触发事件可以接近度相关的,比如:
如果计算设备x距离计算设备z在y英尺范围内,则制定在应用程序234中指定的响应。
触发事件可选择地或可附加地,是时间的:
如果在日程事件w的v小时内[且计算设备x在计算设备z的y码内],则制定响应。
可构想各种其他实施例。尽管接近度和时间触发事件是很好的示例,但是在进一步的实施例中,触发事件并不一定与接近度或时间事件相关。作出API调用的计算设备可以是或可以不是感测到触发事件的一个或多个计算设备。
触发事件还能在云中被确定,而不仅是在计算设备上确定。比如单个设备可能不知道由所有设备上传的图片的总数,但是一旦云中的图片的总数达到阈值,事件就被触发。比如,图8示出步骤386,在那里服务90确定了存储于数据存储中的数据是否满足了API调用中的触发事件。如果是的话,步骤388到步骤402如上参看图7的流程图所述地来进行。
上述的API 240被用于跨所有数据类别的总和将数据展现给运行于计算设备上的多个应用程序中的任一个。可以理解的是,相同或相似的API可能被用于将数据上传到数据存储200以及将数据呈现给DBMS 218以进行如上所述的处理和存储。
如所述,本技术可被用于增强用户关于他们自己的计算设备和/或其他用户的体验以及与其的交互。以下是增强用户(例如,如图1中的用户80)与他们自己的计算设备82、84、86交互性的示例。在这示例中,使得经由API 240从丰富在场数据可得到的知识和交互性的程度可以允许应用在计算机设备之间无缝切换,操作也被称为用户与他们的设备之间的分解/演化模型。具体地,用户可在他们的移动设备82上运行应用。应用程序234可在提供用户位置的实时知识、以及与用户的其他设备(诸如控制台)的接近度的后台中运行。应用程序234、在移动设备82上运行的前台应用或者用户可能设置触发事件,其为:
当移动计算设备w运行应用x且位于控制台计算设备z的y英尺内时,开始控制台计算设备、运行应用x、链接到计算设备z上运行的游戏的特定实例,以及获得运行在计算设备z上的游戏的特定实例的状态数据。
因此,比如当用户在回家路上时,运行游戏应用x,当他快到家时,他的控制台将启动并加入他正在玩的游戏中,从而他可以从在其计算设备的玩耍切换到他的控制台。
另一个示例接下来参看图9来描述。在这示例中,用户能够跨数据存储200中的各种数据类别访问实时数据,从而增强他与他人的社交。此处,用户已设置触发事件(或者他已经运行了含有这个触发事件的应用程序234),其为:
当用户x的移动计算设备距咖啡馆在2英里以内时,检查是咖啡馆内否有任何检测到的设备在用户x的朋友列表上;如果找到的话,则发出警告,显示检测到的朋友的联系信息、消息y并呈现呼叫按钮。
注意,在这个示例中,API调用的特定功能并不仅仅执行特定结果,还可以检查数据存储200中的其他数据的状态。也就是,基于触发事件,检查数据存储以查找位于特定位置处的朋友。此处,当用户x行至咖啡馆的2英里范围内时,API调用实现对Joe Smith的设备的检测,他是用户x的朋友。Joe的活动类别数据指示Joe刚点了双份拿铁(比如来自销售收据的指示)。这个信息将会被上传到数据存储200上的Joe的数据中。Joe已设定允许他的朋友发现这个数据的准许。这样,当用户行至咖啡馆的2英里范围内时,用户设备触发API调用,其标识Joe在那儿、Joe在干什么以及向用户提供加入Joe的选项。用户的移动设备可能发出警告,呈现Joe的联系信息410、呈现包括API调用中标识的信息的消息412、以及给予用户用来与他们的朋友取得联系的按钮414。
图10是另一个示例,其中本技术增强了用户与他自己设备、以及与朋友的交互。在这个示例中,用户已设定触发事件(或者已经运行了设置触发事件的应用程序234),其为:
如果在用户x的朋友列表上的朋友行至用户x的平板计算设备的10英尺范围内时,标识关于所找到的朋友、以及所找到的朋友的朋友的所有图片,并显示关于所标识图片的隐私设置是否低于z。
在这个示例中,平板计算设备420检测到Jessie的计算设备,她在用户朋友列表上。平板计算机420搜索Jessie和她朋友的所有可用图片422,并显示具有低于某一任意定义值z的隐私级别(由Jessie或用户设置)的那些图片。
值得注意的是,一旦已通过网络50向服务90作出API调用,使得发起这些动作,这个动作可以用直接通信方式发生,比如蓝牙、RF、IR和近场通信。因此,在图10所示示例中,平板计算机420可以从平板计算机的存储位置、从数据存储200、或者从平板计算机可与之建立直接通信链路的其它计算设备处检索图片。
图11图解了可例如包括台式或膝上型计算设备84的合适的通用计算系统环境500的示例。计算系统环境500只是一个合适的计算环境的示例,而并非旨在对本发明系统的使用范围或功能提出任何限制。也不应将计算系统环境500解释为对在示例性计算系统环境500中示出的组件中的任何一个或其组合有任何依赖或要求。
本发明系统可运行于各种其他通用或专用计算系统、环境或配置。适合在本发明系统中使用的公知的计算系统、环境和/或配置的示例包括,但不限于,个人计算机、服务器计算机、多处理器系统、基于微处理器的系统、机顶盒、可编程消费电子产品、网络PC、小型机、大型计算机、膝上型和掌上计算机、手持式设备、包含上述系统或设备中的任一个的分布式计算机环境等。
参考图11,用于实现本技术的示例性系统包括计算机510形式的通用计算设备。计算机510的组件可包括,但不限于,处理单元520、系统存储器530和将包括系统存储器在内的各种系统组件耦合至处理单元520的系统总线521。系统总线521可以是若干类型的总线结构中的任一种,包括使用各种总线体系结构中的任一种的存储器总线或存储器控制器、外围总线,以及局部总线。作为示例而非限制,这样的架构包括工业标准架构(ISA)总线、微通道架构(MCA)总线、增强型ISA(EISA)总线、视频电子标准协会(VESA)局部总线、以及也称为夹层(Mezzanine)总线的外围组件互连(PCI)总线。
计算机510可以包括各种计算机可读介质。计算机可读介质可以是能由计算机510访问的任何可用介质,而且包含易失性和非易失性介质、可移动和不可移动介质。作为示例而非限制,计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括但不局限于:随机存取存储器(RAM)、只读存储器(ROM)、EEPROM、闪存或其它存储术、CD-ROM、数字多功能盘(DVD)或其它光盘存储、盒式磁带、磁带、磁盘存储或其它磁性存储设备、或可用于存储所需信息并可由计算机510访问的任何其它介质。通信介质通常以诸如载波或其他传输机制等已调制数据信号来体现计算机可读指令、数据结构、程序模块或其他数据,并包括任意信息传送介质。术语“已调制数据信号”指的是一个或多个特征以在信号中编码信息的方式被设定或更改的信号。作为示例而非限制,通信介质包括有线介质,如有线网络或直接线连接,以及如声学、RF、红外及其他无线介质之类的无线介质。上面各项中的任何组合也包括在计算机可读介质的范围内。
系统存储器530包括以诸如ROM 531和RAM 532之类的易失性和/或非易失性存储器的形式存在的计算机存储介质。基本输入/输出系统(BIOS)533通常存储在ROM 531中,包含了诸如在启动过程中帮助在计算机510内的元件之间传输信息的基本例程。RAM 532通常包含处理单元520可以立即访问和/或目前正在操作的数据和/或程序模块。作为示例而非限制,图11示出了操作系统534、应用程序535,其他程序模块536和程序数据537。
计算机510还可以包括其他可移动/不可移动、易失性/非易失性计算机存储介质。只作为示例,图11示出了读写不可移动、非易失性磁性介质的硬盘驱动器541和读写可移动、非易失性磁盘552的磁盘驱动器551。计算机510还可以包括读和/写光学介质的光学介质读取设备555。
可以用于示例性操作环境中的其他可移动/不可移动,易失性/非易失性的计算机存储介质包括,但不仅限于,盒式磁带、闪存卡、DVD、数字视频磁带、固态RAM、固态ROM等等。硬盘驱动器541通常由不可移动存储器接口,诸如接口540连接至系统总线521,磁盘驱动器551和光盘驱动器555通常由可移动存储器接口,诸如接口550连接至系统总线521。
上文所讨论的并且在图11中所示出的驱动器以及它们的相关联的计算机存储介质为计算机510提供了计算机可读指令、数据结构、程序模块及其他数据的存储。例如,在图11中,硬盘驱动器541被示为存储操作系统544,应用程序545,其他程序模块546,以及程序数据547。这些组件可以与操作系统534、应用程序535、其他程序模块536,以及程序数据537相同,也可以不同。此处给操作系统544、应用程序545、其他程序模块546以及程序数据547提供了不同的编号,以说明至少它们是不同的副本。用户可以通过诸如键盘562和指示设备561(通常被称为鼠标、轨迹球或触摸板)之类的输入设备向计算机510中输入命令和信息。其他输入设备(未示出)可以包括话筒、操纵杆、游戏手柄、圆盘式卫星天线、扫描仪等等。这些及其他输入设备常常通过耦合到系统总线521的用户输入接口560连接到处理单元521,但是,也可以通过其他接口和总线结构,如并行端口、游戏端口、通用串行总线(USB)端口来进行连接。监视器591或其他类型的显示设备也通过接口,例如视频接口590,连接至系统总线521。除监视器之外,计算机还可以包括可以通过输出外围接口595连接的诸如扬声器597和打印机596之类的其他外围输出设备。
计算机510可以使用到一个或多个远程计算机(如远程计算机580)的逻辑连接在联网环境中操作。远程计算机580可以是个人计算机、服务器、路由器、网络PC、对等设备或其他公共网络节点,且通常包括上文参考计算机510所描述的许多或全部元件,虽然图11中只示出了存储器存储设备581。图11中所示逻辑连接包括局域网(LAN)571和广域网(WAN)573,但也可以包括其他网络。这样的联网环境在办公室、企业范围计算机网络、内联网和因特网中是常见的。
当在LAN联网环境中使用时,计算机510通过网络接口或适配器570连接至LAN 571。当用于WAN联网环境中时,计算机510通常包括调制解调器572,或用于通过WAN 573(如因特网)建立通信的其他装置。调制解调器572可以是内置或外置的,它可以经由用户输入接口560或其他适当的机制连接至系统总线521。在联网环境中,相对于计算机510所描述的程序模块或其部分可被存储在远程存储器存储设备中。作为示例而非限制,图11示出了驻留在存储器设备581上的远程应用程序585。可以理解,所示出的网络连接只是示例性的,也可以使用用于在计算机之间建立通信链路的其他装置。
图12是游戏和媒体系统600的功能框图并且更详细地示出游戏和媒体系统600的各功能组件。系统600可与如上所述的计算设备86相同。控制台602具有中央处理单元(CPU)700,以及便于对包括闪存只读存储器(ROM)704、随机存取存储器(RAM)706、硬盘驱动器708、以及便携式媒体驱动器606在内的各种类型的存储器进行处理器访问的存储器控制器702。在一个实施例中,CPU 700包括一级高速缓存710和二级高速缓存712,以用于临时地存储数据并且因此减少了对硬盘驱动器708进行的存储器访问周期数,从而提高处理速度和吞吐量。
CPU 700、存储器控制器702、以及各种存储器设备通过一个或多个总线(未示出)互连。在此实现中使用的总线的细节并不特别地与理解此处所讨论的感兴趣的主题相关。然而,将理解,这样的总线可能包括使用各种总线架构中的任何一种的串行和并行总线、存储器总线、外围总线、处理器或局部总线中的一个或多个。作为示例,这样的架构可以包括工业标准架构(ISA)总线、微通道架构(MCA)总线、增强型ISA(EISA)总线、视频电子技术标准协会(VESA)局部总线和外围部件互连(PCI)总线(也被称为夹层(Mezzanine)总线)。
在一个实现中,CPU 700、存储器控制器702、ROM 704、以及RAM 706被集成到公共模块714上。在该实现中,ROM 704被配置为通过PCI总线和ROM总线(两者都未示出)连接到存储器控制器702的闪存ROM。RAM 706被配置为由存储器控制器702通过单独的总线(未示出)被独立控制的多个双倍数据率同步动态RAM(DDR SDRAM)模块。硬盘驱动器708和便携式媒体驱动器606被示为通过PCI总线和AT附加设备(ATA)总线716连接到存储器控制器702。然而,在其他实现中,还可以在替代方案中应用不同类型的专用数据总线结构。
三维图形处理单元720和视频编码器722形成用于进行高速和高分辨率(例如,高清晰度)图形处理的视频处理流水线。数据通过数字视频总线(未示出)从图形处理单元720输送到视频编码器722。音频处理单元724和音频编解码器(编码器/解码器)726形成用于对各种数字音频格式进行多通道音频处理的相应音频处理流水线。音频数据通过通信链路(未示出)在音频处理单元724与音频编解码器726之间输送。视频和音频处理流水线将数据输出到A/V(音频/视频)端口728以传输到电视机或其他显示器。在示出的是实现中,视频和音频处理组件720-728被安装在模块714上。
图12示出包括USB主控制器730和网络接口732的模块714。USB主控制器730被示为通过总线(例如PCI总线)与CPU 700和存储器控制器702通信,并用作外围控制器604(1)-604(4)的主机。网络接口732提供对网络(例如因特网、家庭网络等)的访问并且可以是各种有线或无线接口组件中的任一种,包括以太网卡、调制解调器、无线接入卡、蓝牙模块、电缆调制解调器等等。
在图12中示出的实现中,控制台602包括用于支持四个控制器604(1)-604(4)的控制器支持子部件740。控制器支持子部件740包括为支持对诸如媒体与游戏控制器等外部控制设备进行有线和无线操作所需的任何硬件和软件组件。前面板I/O子部件742支持暴露在控制台602的外表面上的电源按钮612、弹出按钮614、以及任何LED(发光二极管)或其他指示器的多个功能。子部件740和742通过一个或多个电缆部件744与模块714进行通信。在其他实现中,控制台602可包括附加的控制器子部件。示出的实现还示出了被配置为发送和接收可被传送到模块714的信号的光学I/O接口735。
MU 640(1)和640(2)被示为可以分别连接到MU端口“A”630(1)和“B”630(2)。附加MU(例如MU 640(3)-640(6))被示为可以连接到控制器604(1)和604(3),即每一控制器两个MU。控制器604(2)和604(4)也可以被配置为容纳MU(未示出)。每个MU 640提供上面可以存储游戏、游戏参数、以及其他数据的附加存储设备。在某些实现中,其他数据可以包括数字游戏组件、可执行游戏应用、用于扩展游戏应用的指令集、以及媒体文件中的任何一个。在被插入到控制台602或控制器中时,MU 640可以由存储器控制器702来访问。
系统供电模块750向游戏和媒体系统600的组件供电。风扇752冷却控制台602内的电路。
包括机器指令的应用760被存储在硬盘驱动器708上。在控制台602通电时,应用760的各部分被加载到RAM 706、和/或高速缓存710和712中,以供在CPU 700上执行,其中应用760是一个这样的示例。可以将各种应用存储在硬盘驱动器708上以供在CPU 700上执行。
可通过简单地将系统连接到监视器88(图1)、电视机、视频投影仪、或其他显示设备来将游戏和媒体系统600用作独立系统。在该独立模式中,游戏与媒体系统600允许一个或多个玩家玩游戏、或例如通过看电影或听音乐来享受数字媒体。然而,随着通过网络接口732宽带连接的集成变为可用,游戏和媒体系统600还可用作较大的网络游戏社区中的参与者。
图13描绘移动设备的示例框图。描绘了典型的蜂窝电话的示例性电子电路。该电话800包括一个或多个微处理器,以及存储由控制处理器812的一个或多个处理器执行来实现此处所述的功能的处理器可读代码的存储器810(例如,诸如ROM等非易失性存储器和诸如RAM等易失性存储器)。
移动设备800可包括例如处理器812、包括应用和非易失性存储的存储器810。处理器812可实现通信以及任何数目的应用,包括本文中所描述的交互应用。存储器810可以是任何种类的存储器存储介质类型,包括非易失性和易失性存储器。设备操作系统处理移动800的不同操作,并可包含用于操作的用户界面,如拨打和接听电话呼叫、文本消息收发、检查语音邮件等。应用程序830可以是任何种类的程序,如用于照片和/或视频的照相机应用程序、地址簿应用程序、日历应用程序、媒体播放器、因特网浏览器、游戏、闹钟应用程序、其他第三方应用程序、本文中讨论的交互应用程序等。存储器810中的非易失性存储组件840包含诸如web高速缓存、音乐、照片、联系人数据、时间安排数据、以及其他文件等数据。
处理器812还与进而耦合至天线的RF传输/接收电路806通信,该电路带有红外传输/接收器808,以及带有移动/定向传感器814,比如加速度计。加速度计已被集成在移动设备中以将实现这样的应用,诸如能使用户经由姿势来输入命令的智能用户界面、在与GPS卫星断开连接之后计算设备的移动和方向的室内GPS功能,以及当旋转设备时检测设备的定向和将显示从纵向改变为横向。加速度计还能由,比如,微电磁系统(MEMS)提供,该微电磁系统是置于半导体芯片上的微小机械设备(毫米级别)。加速方向和定向、振动和冲击可以被传感。处理器812进一步与响铃器/振动器816、用户界面键盘/屏幕818、扬声器820、麦克风822、相机824、光传感器826和温度传感器828通信。
处理器812控制无线信号的发射和接收。在发射模式期间,处理器812向发射/接收电路806提供来自话筒822的语音信号或其它数据信号。发射/接收电路806将该信号发射到远程站(例如固定站、运营商、其他蜂窝电话等)来通过天线802进行通信。响铃器/振动器816被用于向用户发传入呼叫、文本消息、日历提醒、闹钟提醒或其他通知等信号。在接收模式期间,发射/接收电路806通过天线802接收来自远程站的语音或其它数据信号。所接收到的语音信号被提供给扬声器820,同时所接收到的其它数据信号也被适当地处理。
另外,物理连接器888可被用来将移动设备800连接到外部电源,如AC适配器或加电对接底座。物理连接器888还可被用作到计算设备的数据连接。该数据连接允许诸如将移动数据与另一设备上的计算数据进行同步等操作。
对此类服务启用使用基于卫星的无线电导航来中继用户应用的位置的GPS接收器865。
尽管用结构特征和/或方法动作专用的语言描述了本主题,但可以理解,所附权利要求书中定义的主题不必限于上述具体特征或动作。更确切而言,上述具体特征和动作是作为实现权利要求的示例形式公开的。

Claims (15)

1.一种组织并允许访问云数据(96)的方法,包括:
a)经由一个或多个计算设备(82、84、86)检测(步骤312)用户数据,所检测的数据包括以下中的至少一个:
a1)用户的位置(202),
a2)用户的活动(206),
a3)用户的简档(204),
a4)用户的设备(212),
a5)用户的环境(210),
a6)用户的可用性(208);
b)将在所述步骤a)中检测的数据聚集(步骤324,332)到数据存储(96)中;以及
c)经由供多个应用访问的单个应用程序编程接口(240)将在所述步骤b)中聚集到数据存储中的数据展现给应用程序(234)。
2.如权利要求1所述的方法,其特征在于,进一步包括通过将在所述步骤a)中检测到的数据分类到各类别以及概括不同类别中的数据来处理聚集在存储中的数据的步骤d)。
3.如权利要求2所述的方法,其特征在于,所述概括数据的步骤包括分析与在所述步骤b)中聚集的数据相关联的可靠性指示符,以及确定类别的概括的步骤,所述概括包括基于对所述可靠性指示符的分析的最佳数据值。
4.如权利要求2所述的方法,其特征在于,所述处理数据的步骤d)进一步包括合成第一数据项以获得从关于第一数据项的逻辑推论得到的第二数据项的步骤。
5.如权利要求1所述的方法,其特征在于,所述将聚集在数据存储中的数据展现给应用程序的步骤c)包括经由单个应用程序编程接口将数据展现给多个计算设备的步骤,所述多个计算设备至少包括移动电话、个人计算机和游戏控制台的步骤。
6.如权利要求1所述的方法,其特征在于,进一步包括在条件触发事件发生之际,经由单个应用程序编程接口来将数据展现给应用程序的步骤h)。
7.一种用于编程处理器(520、700)以执行一种组合并允许访问云数据(96)的计算机可读存储介质(541、555、708),所述方法包括:
a)经由一个或多个计算设备(82、84、86)检测(步骤312)用户数据,所检测的数据包括以下中的至少两个:
a1)用户的位置(202),
a2)用户的活动(206),
a3)用户的简档(204),
a4)用户的设备(212),
a5)用户的环境(210),
a6)用户的可用性(208);
b)将在所述步骤a)中检测到的数据聚集(步骤324,332)到数据存储(96)中,所述位置数据被存储在第一数据类别中,所述活动数据被存储在第二数据类别中,简档数据被存储在第三数据类别中,而所述设备数据被存储在第四数据类别中;以及
c)概括(步骤352)第一、第二、第三和第四数据类别的每一个中的数据以对于第一、第二、第三和第四数据类别的每一个得出至少一个代表性数据项;以及
d)经由单个应用程序编程接口(240)将在所述步骤b)中聚集在数据存储中的数据展现(步骤384,388)给应用程序(234)。
8.如权利要求7所述的计算机可读介质,其特征在于,进一步包括接收隐私设定的步骤e),所述隐私设定指示用户是否以及在什么条件下同意与其它用户共享在所述步骤b)中聚集的数据。
9.如权利要求8所述的计算机可读介质,其特征在于,所述步骤e)包括用户将隐私排序与在所述步骤b)中聚集的数据的数据项进行关联以及用户设置将被应用于具有隐私排序的数据的隐私阈值的步骤。
10.如权利要求7所述的计算机可读介质,其特征在于,进一步包括合成第一数据项以获得从关于所述第一数据项的逻辑推论得到的第二数据项的步骤f)。
11.如权利要求7所述的计算机可读介质,其特征在于,进一步包括第一用户实时发现第二用户的活动以及所述第一用户在所述活动中加入所述第二的步骤。
12.一种组织和允许访问云数据(96)的方法,所述方法包括:
a)经由一个或多个计算设备(82,84,86)检测至少与用户在哪里以及用户在干什么相关(步骤312)的用户数据;
b)将在所述步骤a)中检测到的数据聚集(步骤324,332)到数据存储(96)中;
c)定义触发事件,所述触发事件与由一个或多个计算设备测量的条件的发生有关;
d)确定(步骤374)指示触发事件已经发生的数据是否被聚集到数据存储器;以及
e)基于在所述步骤d)中确定指示触发事件已经发生的数据被聚集到数据存储,经由单个应用程序编程接口(240)向应用程序(234)展现(步骤386、388)在所述步骤b)中聚集到数据存储中的数据。
13.如权利要求12所述的方法,其特征在于,所述定义触发事件的步骤c)包括定义所述触发事件与以下各项中的至少一个有关的步骤:一个或多个计算设备与另一个位置的接近度、以及时间事件。
14.如权利要求12所述的方法,其特征在于,进一步包括检测来自用户与其计算设备的所有交互的数据的总和的步骤f),以及将此数据的总和聚集到数据存储中的步骤g)。
15.如权利要求14所述的方法,其特征在于,进一步包括经由单个应用程序编程接口将在所述步骤g)中聚集到数据存储中的数据展现给应用程序。
CN2011101790329A 2010-06-18 2011-06-20 用于通用移动数据的系统 Pending CN102222002A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/819,115 US20110314482A1 (en) 2010-06-18 2010-06-18 System for universal mobile data
US12/819,115 2010-06-18

Publications (1)

Publication Number Publication Date
CN102222002A true CN102222002A (zh) 2011-10-19

Family

ID=44778563

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2011101790329A Pending CN102222002A (zh) 2010-06-18 2011-06-20 用于通用移动数据的系统

Country Status (2)

Country Link
US (1) US20110314482A1 (zh)
CN (1) CN102222002A (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103096181A (zh) * 2011-11-07 2013-05-08 华为终端有限公司 一种提供交互应用业务的方法、设备
CN103220617A (zh) * 2012-01-19 2013-07-24 北京千橡网景科技发展有限公司 一种用于提供定位服务的方法和设备
CN105103573A (zh) * 2013-02-06 2015-11-25 脸谱公司 图案标记
CN106095853A (zh) * 2012-01-19 2016-11-09 微软技术许可有限责任公司 识别云内容
CN109561331A (zh) * 2018-12-12 2019-04-02 湖南国科微电子股份有限公司 一种机顶盒与智能终端的交互方法及系统
CN109684566A (zh) * 2018-11-08 2019-04-26 百度在线网络技术(北京)有限公司 标签引擎实现方法、装置、计算机设备及存储介质
CN110168589A (zh) * 2016-08-31 2019-08-23 支点全球技术公司 用于跟踪、捕获和跨多个设备同步活动数据的方法和装置

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9002924B2 (en) 2010-06-17 2015-04-07 Microsoft Technology Licensing, Llc Contextual based information aggregation system
US9715789B1 (en) * 2010-12-20 2017-07-25 Zynga Inc. Method and system of incorporating team challenges into a social game
US8473371B2 (en) 2011-03-28 2013-06-25 Ebay Inc. Transactions via a user device in the proximity of a seller
US9037653B2 (en) * 2011-12-09 2015-05-19 Facebook, Inc. Mobile ad hoc networking
US20140298358A1 (en) * 2011-12-14 2014-10-02 Nokia Corporation Method and Apparatus for Providing Optimization Framework for task-Oriented Event Execution
US20130227026A1 (en) * 2012-02-29 2013-08-29 Daemonic Labs Location profiles
US9264504B2 (en) * 2012-02-29 2016-02-16 Blackberry Limited System and method for providing access to presence status for mobile devices
US9270772B2 (en) * 2012-02-29 2016-02-23 Blackberry Limited System and method for providing access to presence status for mobile devices
US9595015B2 (en) 2012-04-05 2017-03-14 Nokia Technologies Oy Electronic journal link comprising time-stamped user event image content
US20130268848A1 (en) * 2012-04-05 2013-10-10 Nokia Corporation User event content, associated apparatus and methods
CN103428174A (zh) * 2012-05-17 2013-12-04 云联(北京)信息技术有限公司 一种基于云计算的互动体感游戏的实现方法
JP5977586B2 (ja) * 2012-05-31 2016-08-24 任天堂株式会社 情報処理システム、情報処理装置、情報処理方法およびプログラム
US8855931B2 (en) * 2012-06-25 2014-10-07 Google Inc. Location history filtering
EP2704039A3 (en) * 2012-08-31 2014-08-27 LG Electronics, Inc. Mobile terminal
US20140136451A1 (en) * 2012-11-09 2014-05-15 Apple Inc. Determining Preferential Device Behavior
US9268860B2 (en) 2012-12-02 2016-02-23 At&T Intellectual Property I, L.P. Methods, systems, and products for personalized monitoring of data
US9696874B2 (en) * 2013-05-14 2017-07-04 Google Inc. Providing media to a user based on a triggering event
US9367806B1 (en) 2013-08-08 2016-06-14 Jasmin Cosic Systems and methods of using an artificially intelligent database management system and interfaces for mobile, embedded, and other computing devices
US9438687B2 (en) * 2013-12-17 2016-09-06 Microsoft Technology Licensing, Llc Employing presence information in notebook application
US9571595B2 (en) * 2013-12-17 2017-02-14 Microsoft Technology Licensing, Llc Employment of presence-based history information in notebook application
US9380128B2 (en) * 2013-12-20 2016-06-28 Facebook, Inc. Combining user profile information maintained by various social networking systems
EP2887279A1 (en) * 2013-12-20 2015-06-24 Facebook, Inc. Combining user profile information maintained by various social networking systems
US9326205B2 (en) * 2014-03-04 2016-04-26 Google Technology Holdings LLC Handover method based on seamless mobility conditions
CN106105315B (zh) * 2014-03-04 2020-01-21 谷歌技术控股有限责任公司 基于无缝移动性条件的切换方法
KR20150132800A (ko) * 2014-05-15 2015-11-26 삼성전자주식회사 단말장치, 클라우드 장치, 단말장치의 구동방법, 클라우드 서비스 제공 방법 및 컴퓨터 판독가능 기록매체
WO2015174777A1 (ko) * 2014-05-15 2015-11-19 삼성전자 주식회사 단말 장치, 클라우드 장치, 단말 장치의 구동방법, 데이터 협업처리 방법 및 컴퓨터 판독가능 기록매체
US9641222B2 (en) * 2014-05-29 2017-05-02 Symbol Technologies, Llc Apparatus and method for managing device operation using near field communication
US10380486B2 (en) * 2015-01-20 2019-08-13 International Business Machines Corporation Classifying entities by behavior
US10255302B1 (en) 2015-02-27 2019-04-09 Jasmin Cosic Systems, methods, apparatuses, and/or interfaces for associative management of data and inference of electronic resources
JP2018084462A (ja) 2016-11-22 2018-05-31 株式会社ミツトヨ エンコーダ及び信号処理回路
WO2020180615A1 (en) * 2019-03-01 2020-09-10 Graphite Systems Inc. Social graph database with compound connections
US11863673B1 (en) 2019-12-17 2024-01-02 APPDIRECT, Inc. White-labeled data connections for multi-tenant cloud platforms
US11671419B2 (en) * 2020-09-30 2023-06-06 APPDIRECT, Inc. Multi-cloud data connections for white-labeled platforms

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101162393A (zh) * 2007-11-13 2008-04-16 南京邮电大学 基于通用即插即用的自适应通用控制点系统结构和控制方法
US20090094627A1 (en) * 2007-10-02 2009-04-09 Lee Hans C Providing Remote Access to Media, and Reaction and Survey Data From Viewers of the Media
CN101662403A (zh) * 2008-08-29 2010-03-03 国际商业机器公司 动态人群的人群标记方法及其移动通信设备

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6175831B1 (en) * 1997-01-17 2001-01-16 Six Degrees, Inc. Method and apparatus for constructing a networking database and system
ATE273538T1 (de) * 1998-10-28 2004-08-15 Verticalone Corp Gerät und verfahren für automatische aggregation und abgabe von elektronischer persönlicher information oder daten
EP1543690B1 (en) * 2002-09-19 2007-08-15 Research In Motion Limited Apparatus and method of wireless instant messaging
US7356332B2 (en) * 2003-06-09 2008-04-08 Microsoft Corporation Mobile information system for presenting information to mobile devices
US7668873B2 (en) * 2005-02-25 2010-02-23 Microsoft Corporation Data store for software application documents
US8200688B2 (en) * 2006-03-07 2012-06-12 Samsung Electronics Co., Ltd. Method and system for facilitating information searching on electronic devices
US10803468B2 (en) * 2006-04-18 2020-10-13 At&T Intellectual Property I, L.P. Method and apparatus for selecting advertising
EP2232898A4 (en) * 2007-12-17 2012-08-08 Smooth Productions Inc COMMUNICATIONS NETWORK SYSTEM
US8606897B2 (en) * 2010-05-28 2013-12-10 Red Hat, Inc. Systems and methods for exporting usage history data as input to a management platform of a target cloud-based network

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090094627A1 (en) * 2007-10-02 2009-04-09 Lee Hans C Providing Remote Access to Media, and Reaction and Survey Data From Viewers of the Media
CN101162393A (zh) * 2007-11-13 2008-04-16 南京邮电大学 基于通用即插即用的自适应通用控制点系统结构和控制方法
CN101662403A (zh) * 2008-08-29 2010-03-03 国际商业机器公司 动态人群的人群标记方法及其移动通信设备

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103096181A (zh) * 2011-11-07 2013-05-08 华为终端有限公司 一种提供交互应用业务的方法、设备
CN103220617A (zh) * 2012-01-19 2013-07-24 北京千橡网景科技发展有限公司 一种用于提供定位服务的方法和设备
CN106095853A (zh) * 2012-01-19 2016-11-09 微软技术许可有限责任公司 识别云内容
CN106095853B (zh) * 2012-01-19 2019-11-05 微软技术许可有限责任公司 用于识别云内容的系统和方法
CN105103573A (zh) * 2013-02-06 2015-11-25 脸谱公司 图案标记
CN105103573B (zh) * 2013-02-06 2019-01-11 脸谱公司 一种位置追踪方法及设备
US10585961B2 (en) 2013-02-06 2020-03-10 Facebook, Inc. Pattern labeling
CN110168589A (zh) * 2016-08-31 2019-08-23 支点全球技术公司 用于跟踪、捕获和跨多个设备同步活动数据的方法和装置
CN110168589B (zh) * 2016-08-31 2024-04-02 支点全球技术公司 用于跟踪、捕获和跨多个设备同步活动数据的方法和装置
CN109684566A (zh) * 2018-11-08 2019-04-26 百度在线网络技术(北京)有限公司 标签引擎实现方法、装置、计算机设备及存储介质
CN109561331A (zh) * 2018-12-12 2019-04-02 湖南国科微电子股份有限公司 一种机顶盒与智能终端的交互方法及系统

Also Published As

Publication number Publication date
US20110314482A1 (en) 2011-12-22

Similar Documents

Publication Publication Date Title
CN102222002A (zh) 用于通用移动数据的系统
US20120209839A1 (en) Providing applications with personalized and contextually relevant content
CN101960795B (zh) 用于递送扩充消息的系统和方法
US20180300379A1 (en) Method of recommending friends, and server and terminal therefor
CN102947826B (zh) 基于情境的信息聚合系统
US8813107B2 (en) System and method for location based media delivery
CN106462595B (zh) 内容管理方法及用于其的云服务器
US11720640B2 (en) Searching social media content
CN112313688A (zh) 内容共享平台简档生成
CN108268130A (zh) 组推荐的虚拟助理生成
KR20110084413A (ko) 콘텍스트 강화 광고를 생성하는 시스템 및 방법
WO2009158168A2 (en) System and method for determination and display of personalized distance
US11663261B2 (en) Defining a collection of media content items for a relevant interest
WO2019183593A1 (en) Design and generation of augmented reality experiences for structured distribution of content based on location-based triggers
AU2013306549B2 (en) Method of recommending friends, and server and terminal therefor
US20210043105A1 (en) Interactive service platform and operating method thereof
CN105103105A (zh) 社交封面信息流界面
US8180827B2 (en) Method and apparatus for associating graphic icon in internet virtual world with user's experience in real world
CN108351884A (zh) 用于用户相关活动的语义位置层
CN112328911B (zh) 地点推荐方法、装置、设备及存储介质
US20190068522A1 (en) Packet sharing based on identified needs of disparate users
CN115997206A (zh) 一种界面显示方法、装置、设备及可读存储介质
CN114707075B (zh) 一种冷启动推荐方法和设备
KR20170047966A (ko) 인문학 정보를 자동으로 구성하는 방법

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150730

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20150730

Address after: Washington State

Applicant after: Micro soft technique license Co., Ltd

Address before: Washington State

Applicant before: Microsoft Corp.

RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20111019