CN102939600A - 接近度网络 - Google Patents

接近度网络 Download PDF

Info

Publication number
CN102939600A
CN102939600A CN2011800288653A CN201180028865A CN102939600A CN 102939600 A CN102939600 A CN 102939600A CN 2011800288653 A CN2011800288653 A CN 2011800288653A CN 201180028865 A CN201180028865 A CN 201180028865A CN 102939600 A CN102939600 A CN 102939600A
Authority
CN
China
Prior art keywords
experience
equipment
computing
server
computing equipment
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
CN2011800288653A
Other languages
English (en)
Other versions
CN102939600B (zh
Inventor
C·J·萨雷托
K·欣克利
J·A·迈斯特里希
S·巴斯彻
S·A·怀亚特
H·H·索迈
E·D·M·玛伊亚
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 CN102939600A publication Critical patent/CN102939600A/zh
Application granted granted Critical
Publication of CN102939600B publication Critical patent/CN102939600B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5072Grid computing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • 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/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • 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/52Network services specially adapted for the location of the user terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/023Services making use of location information using mutual or relative location information between multiple location based services [LBS] targets or of distance thresholds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/50Service provisioning or reconfiguring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W64/00Locating users or terminals or network equipment for network management purposes, e.g. mobility management
    • H04W64/006Locating users or terminals or network equipment for network management purposes, e.g. mobility management with additional information processing, e.g. for direction or speed determination
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/005Discovery of network devices, e.g. terminals

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Mathematical Physics (AREA)
  • Information Transfer Between Computers (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本发明提出了接近度网络体系结构,该接近度网络体系结构使设备能够检测与其接近的其他设备并且自动地与其他设备交互以共享用户体验。在一个示例实现中,用于该体验的数据和代码被存储在云中,从而使用户能够从多个以及不同类型的设备参与该体验。

Description

接近度网络
背景技术
云计算是基于因特网的计算,由此可通过因特网按需地向计算机和其他设备提供共享的资源、软件和/或信息。它是按照从大型机到客户机-服务器结构的转移的范例转移。云计算为基于因特网的IT服务描述了新的消耗和传输模型,它通常涉及将动态可伸缩的并且通常是虚拟化的资源作为跨因特网的服务来供应。它是由因特网提供的便于访问远程计算站点的副产品和结果。
基于在计算机网络图示中用云绘制将因特网描绘为对其所表示的底层基础结构的抽象,用术语“云”作为因特网的隐喻。一些云计算的提供者通过web服务以及web浏览器在线传送商业(或其他类型的)应用。
云计算还可以包括在云中存储数据,以由运行安装在他们本地机器上的应用或者基于web的应用的一个或多个用户使用。数据可以为了仅由一个用户消耗而被锁定,也可以由许多用户共享。在任一情况下,几乎从用户可连接至云的任何位置都可以获得数据。以此方式,可基于身份或其他准则,而不是通过对其上存储数据的计算机的并发拥有,来获得数据。
尽管云已使共享数据变得简单,但是大多数用户并不共享体验。例如,当两个计算设备相互接近时,他们通常不自动地互相通信也不共享共同的体验。随着更多的内容被存储在云中以使得可从多个计算设备访问用户的内容,将期望互相接近的计算设备通信和/或协作以跨多个设备提供体验。
发明内容
提出了接近度网络体系结构,该接近度网络体系结构使设备能够检测与其接近的其他设备并且自动地与其他设备交互以共享用户体验。在一个示例实现中,用于该体验的数据和代码被存储在云中,从而使用户能够从多个以及不同类型的设备参与该体验。
在一个示例实施例中,计算设备自动地发现与其接近的一个或多个设备,自动地确定所发现的设备中的哪一个或哪几个是可加入的一个或多个体验的一部分,并且标识(手动地或自动地)与之连接的这些设备中的至少一个以使得所述设备可参与同该设备相关联的体验。一旦选择加入的体验,则设备自动地确定是否需要额外的代码以加入该体验并且如有必要获取该额外的代码。执行所获得的额外的代码以参与该体验。
使得能够共享这一体验的接近度网络体系结构的一个实施例包括区域网络服务器以及与该区域网络服务器通信的体验服务器。体验服务器维护用于多个体验的状态信息,并且关于这些体验与一个或多个计算设备以及区域网络服务器通信。区域网络服务器从一个或多个计算设备接收位置信息。基于该位置信息,区域网络与体验服务器通信以确定相应接近度的其他计算设备、朋友和体验,并且向一个或多个计算设备通知相应接近度的其他计算设备、朋友(身份)和体验。该一个或多个计算设备可加入一个或多个该体验,并且与体验服务器交互以读取和更新用于该体验的状态数据。
一个实施例包括具有存储在其上的处理器可读代码的一个或多个处理器可读存储设备。处理器可读代码用于编程一个或多个处理器。编程该处理器来从第一计算设备的一个或多个传感器接收在第一计算设备的传感器数据,并且使用该传感器数据以发现接近第一计算设备的第二计算设备。在第一计算设备和第二设备之间共享传感器信息,并且基于共享的传感器信息来确定第二计算设备的位置信息。使用该位置信息在第一计算设备和第二计算设备上执行应用。
一个实施例包括自动发现一个或多个接近的体验,标识可被加入的一个或多个体验中的至少一个体验,自动地确定需要额外的代码来加入这一个体验,获得额外的代码,加入这一个体验,并运行所获得的额外代码以用所标识的一个设备来参与这个体验。在一个实施例中,自动发现一个或多个接近的体验包括自动发现一个或多个接近的设备,并自动确定一个或多个被发现的设备是可被加入的一个或多个体验的一部分,其中标识可被加入的一个或多个体验中的至少一个体验包括标识一个或多个被发现的设备中的至少一个设备以及可被加入的一个或多个体验中相关联的一个体验。
提供本发明内容以便以简化形式介绍将在以下的具体实施方式中进一步描述的一些概念。本发明内容并不旨在标识出所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。此外,所要求保护的主题不限于解决在本发明的任一部分中提及的任何或所有缺点的实现。
附图说明
图1是描述了接近度网络的操作的一个实施例的流程图。
图2是描述了接近度网络的一个示例体系结构的框图。
图3是描述了接近度网络的操作的一个实施例的流程图。
图4是描述了用于获得额外代码的过程的一个实施例的流程图。
图5是描述了用于加入和参与体验的过程的一个实施例的流程图。
图6是描述了接近度网络的示例体系结构的框图。
图7描述了主计算设备的示例。
图8是描述了接近度网络的操作的一个实施例的流程图。
图9是描述了用于提供传感器数据到主计算设备的一个实施例的流程图。
图10是描述了可用于实现本文所描述的各组件的计算机系统的一个示例的框图。
具体实施方式
提出了接近度网络体系结构,该接近度网络体系结构使设备能够检测与其接近的其他设备并且自动地与其他设备交互以共享用户体验。在一个示例实现中,用于该体验的数据和代码被存储在云中,从而使用户能够从多个以及不同类型的设备参与该体验。
如果计算设备确实发现与其接近的其他设备,则该计算设备可自动地获得其所需的适当的软件应用。该软件应用与其他参与体验的设备同步。在一些实施例中,即使在范围内当前没有其他设备参与体验,该体验也可以在一个位置被发现。例如,纸海报的提供者要为海报(poster)附近的用户创建体验。海报仅仅是纸。但云知道海报的位置,并在它附近的任何人可以发现的位置创建了体验。
软件应用的开发者可以编程软件应用来以无限多的方式与包括多用户环境的接近度网络进行交互。此外,许多不同类型的应用可以使用接近度网络体系结构来提供许多不同类型的体验。接近度网络体系结构提供了在许多不同类型的设备上可用的体验,从而使得用户不需要总使用一种特定类型的设备,而且应用可以利用云计算的益处。
使用接近度网络体系结构的三个示例包括分布式体验,协作式体验,和主-从体验。下面将更详细地解释这三个示例中的每一个。也可使用其他类型的应用/体验。
分布式体验是其中正在执行的任务(例如,游戏、信息服务、生产力应用等)使其工作跨多个计算设备分布的体验。考虑一种扑克游戏,在这种扑克游戏中有些牌被发出来给大家看,有些牌是用户私有的。可以以跨多个设备分布的方式玩该扑克游戏。客厅的主要电视机可用于显示出发牌者和所有面朝上的牌。每一个用户可以另外地用他们的移动蜂窝电话玩牌。该移动蜂窝电话会描绘特定用户的面朝下的牌。
协作式体验是其中两个计算设备协作以执行任务的体验。考虑跨两个计算设备分布的照片编辑应用,其中每一个应用有自己的屏幕。第一设备将用于进行照片编辑。第二计算设备将提供对正在操作的照片的预览。随着在第一设备上做出的编辑,在第二计算设备的屏幕中描绘结果。
主从体验涉及一个作为主设备的计算设备,以及一个或多个出于软件应用目的作为主设备的从设备的计算设备。例如,从设备可用作主计算设备的输入设备(例如,鼠标、指针,等等)。
在另一种替换方案中,无论人/设备什么时候加入体验,体验都会派生唯一的副本。例如,考虑想要虚拟游览的博物馆。在博物馆的附近,让有移动计算设备的人开始在他们的设备上体验。但是,他们的设备在其自己的体验副本中,与其他也可以体验该游览的人断开连接。因此,那个人的设备使用了接近度网络,但是没有以协作的方式共享体验。
在涉及多个计算设备的许多体验中,一个目标就是让用户能够跨许多不同类型的设备访问内容(服务、应用、数据)。一个挑战是各设备如何加入这一多设备体验。为了解决这个问题,本文描述了接近度网络体系结构。
图1是提供了对接近度网络的一个实施例的高层描述的流程图。总之,接近度网络体系结构允许设备自动发现与该设备接近的它可以参与的所有体验。如果设备选择加入体验,则它将得到适当的应用(或其他类型的软件)以参与该体验。该二进制应用将在共享的上下文中与该体验中的所有设备同步。这使得用户能够以与其他用户同步的方式,跨许多不同的设备从云或其他地方体验内容。
图1的步骤10包括计算设备发现与该设备接近的一个或多个其他设备。这是可由计算设备自动执行的过程(例如,无需人工干预)。在其他实施例中,人可以手动地管理该发现过程。在步骤12,计算设备将确定那些被发现的设备中哪些是可被加入的体验中的一部分。步骤12可以被自动地(例如,无需人工干预)或手动地执行。在一些实施例中,计算设备将标识那些用户可通过扬声器或显示器可用的体验。步骤10和12是自动发现接近的一个或多个体验的一个示例。在步骤14,标识了可被加入的一个体验。该标识可以是基于一组规则而自动的,或者计算设备的用户可以手动地标识所报告的体验(或接近的设备)中的一个以加入。在一些实施例中,设备12将仅标识一个体验,并且在该情况下系统将自动地加入该体验或者自动地选择不加入该体验。另选地,可以给予用户加入或不加入体验的选项。
在加入新体验时,计算设备可能需要软件以参与。如上所述,许多体验需要应用软件以参与分布式多用户游戏、分布式照片编辑会话,等等。在许多情况下,软件已经被载入到计算设备上并且甚至可能是计算设备本地的。在一些实施例中,软件可能还没有被载入到计算设备上并且将需要获得软件。因此,在步骤16,计算设备自动地确定是否需要额外的代码。如果需要,则在步骤18计算设备将获得该额外的代码。所获得的代码可以是对象代码、用于解释器的其他类型的二进制可执行、源代码、或者其他类型的代码。在步骤20,使用/运行额外的代码(或者已经存储在计算设备上的代码),计算设备将在步骤14加入所选择的体验并且参与该体验。如上所述,该体验可以是各类型应用的任一种。用于建立接近度网络的技术不限于任何类型的应用或任何类型的体验。
图2是描述了用于实现接近度网络的体系结构的一个实施例的框图。其他体系结构也可用于实现接近度网络。图2示出云100,它可以是因特网、广域网、其他类型的网络、或者其他通信手段。图2还示出了其他设备。这些设备将通过云100互相通信。在一个实施例中,可使用有线技术来执行所有通信。在其他实施例中,可使用无线技术或者有线和无线技术的结合来执行通信。从一节点到另一节点的通信的准确形式不限于为了本文所描述的接近度网络的目的。
图2示出计算设备102、104和106。这些计算设备可以是任何类型的移动或非移动计算设备,包括(但不限于)台式计算机、笔记本计算机、蜂窝电话、电视机/机顶盒、视频游戏控制台、汽车、平板计算机、智能设备,等等。可用于接近度网络的计算设备不限于任何特定类型的计算设备。计算设备102、104和106中的每一个都与云100通信,以使得它们能够与众多不同实体(在一些实施例中,包括互相)通信。在一个示例中,计算设备102、104和106中的一个将接近一个或多个其他计算设备。在这一情况发生时,可执行图1的过程。注意到尽管图2示出三个计算设备(102、104和106),但是本文所述的技术可用于少于三个计算设备或多于三个计算设备的情况。不需要特定数目的计算设备。
图2还示出区域网络服务器108、体验服务器110和应用服务器112,这三个服务器都与云100通信。区域网络服务器108可以是用于实现帮助计算设备(例如,102、104和106)连接至或加入体验的服务的一个或多个计算机。区域网络服务器108的主要职责是帮助确定特定计算设备附近的所有设备、体验和朋友,以及提供对一个体验的选择以由计算设备加入。
体验服务器110可以是实现用于接近度网络的服务的一个或多个计算设备。体验服务器110担当存储了与每个活动的体验有关的全部或大部分信息的交换所。体验服务器可使用数据库或其他类型的数据存储来存储与体验有关的数据。例如,图2示出记录120,其中每个记录标识特定体验的数据。数据存储不需要有专用的格式。每个记录包括体验的标识(例如,全局唯一ID)、体验的访问控制列表、当前参与体验的设备以及存储与体验有关的状态信息的共享存储器。该共享存储器可向应用表示为跨HTTP访问的共享的、同步的、面向对象的存储器(例如,该共享存储器被表示为可使用HTTP访问和同步的共享对象集)。访问控制列表可包括指示什么类型的设备可加入体验、什么标识的设备可加入体验、什么用户身份可加入体验、以及其他访问准则的规则。为每一体验存储的设备信息可以是当前参与体验的每一设备的唯一标识的列表。在其他实施例中,体验服务器110还可存储与曾经加入体验但是现在不再涉及的设备有关的信息。共享存储器可存储与体验有关的状态信息。状态信息可包括与每一玩家有关的数据、特定变量的数据值、分数、计时信息、环境信息以及用于标识体验的当前状态的其他信息。在体验中没有更多的设备/用户时,该体验的共享存储器可被保存到云存储器132,以使得用户在稍后的时间返回的情况下可继续该体验。如上所述,体验可以是分布式游戏、使用生产力工具、播放音频/视频内容、商务,等等。用于实现接近度网络的技术不限于任何类型的体验。
可用一个或多个计算设备实现的应用服务器112可用作软件的储存库,该储存库允许每个不同类型的计算设备参与体验。如上所述,一些实施例构想了用户可跨众多不同类型的设备来访问体验。因此,需要为不同类型的设备存储不同类型的软件模块。例如,一个模块可用于蜂窝电话,另一个模块可用于机顶盒,以及第三模块可用于膝上型计算机。此外,在一些实施例中,可能有没有对应的软件模块的计算设备。在那些情况下,应用服务器112可以为任何类型的计算设备提供使用浏览器可访问的web应用。应用服务器112将具有数据存储、应用存储130,以用于存储可用于不同体验的所有各软件模块/应用。在一个实施例中,应用服务器112告诉计算设备从哪里获得用于特定体验的应用。例如,应用服务器112可向请求的计算设备发送该计算设备从哪里可获得它需要的应用的位置的URL。
在一些实施例中,创建用于计算设备102、104和106的应用的软件开发者将开发包括了与区域网络服务器108、体验服务器110以及应用存储服务器112交互所需的所有逻辑的应用。在其他实施例中,区域网络服务器108、体验服务器110以及应用服务器112的提供者将提供以软件开发工具包(SDK)的形式的库。用于计算设备102、104和106的应用的开发者将能够通过使用作为SDK的一部分的应用程序接口(API)来访问各个库。为计算设备102、104或106开发的应用将能够调用某些函数以利用接近度网络。例如,API可具有下列函数调用:发现、加入、更新、暂停、切换、以及释放。也可使用其他函数。应用可使用发现函数以发现与其接近的所有设备和体验。在接收到发现命令后,计算设备上的库将访问区域网络服务器108以标识附近的设备以及与那些附近的设备相关联的体验。在接收到要加入的一组体验选择后,加入函数可用于加入其中一个体验。更新命令可用于同步体验服务器110的相应计算设备之间的状态变量。暂停函数可用于临时地暂停特定计算设备的任务/体验。切换函数可用于切换体验。释放函数可用于离开体验。
图3是描述了图2的各组件的操作的一个实施例的流程图。在步骤200,计算设备102、104或106中的一个将进入环境。在步骤202,该计算设备将获得位置信息。这一位置信息用于确定哪些其他设备与其接近。有许多不同类型的可以用本文所述的技术使用的接近度信息。在一个示例中,计算设备将包括用于接收GPS位置信息的GPS接收器。该计算设备将使用该GPS信息以确定其位置。在另一实施例中,可以以与使用GPS技术相同的方式来使用伪卫星技术。在另一实施例中,可使用蓝牙技术。例如,计算设备可从另一设备接收蓝牙信号,并且从而标识与其接近的设备以提供相对位置信息。在另一实施例中,计算设备可搜索区域内的所有WiFi网络并且记录那些WiFI网络中每一个的信号强度。排序的信号强度列表提供了可包括位置信息的WiFi签名。该信息可用于确定计算设备相对于WiFi网络的路由器/接入点的位置。在另一实施例中,计算设备可对其周围环境拍照。可将这一照片与该环境的一组已知的照片匹配以便检测环境中的位置。与获取用于确定什么设备在接近度内的位置信息有关的另外的信息可在Krumm等人于2004年6月29日提交、2006年3月2日公布的序列号为10/880,051题为“使用无线信号强度的接近度检测”的美国专利申请2006/0046709以及在2006年6月30日提交、2007年8月30日公布的序列号为11,427,957题为“基于接收到的信号确定物理位置”的美国专利申请2007/0202887中找到,这两个申请的全部内容通过引用并入本申请。在步骤202中可由计算设备获得任何上述的位置信息(以及其他类型的位置信息)。
在步骤204,计算设备102将发送其位置信息以及计算设备102的身份信息至区域网络服务器108。对于这一示例的剩余部分,我们将假设计算设备102在步骤200进入环境并且执行本文所述的图3的各步骤。在步骤204提供的身份信息包括计算设备102的唯一标识以及计算设备102的用户的身份信息(例如,用户名、密码、真实姓名、地址,等等)。例如,用户可以已经用工作简档或个人简档登录。游戏控制台的用户可以有游戏简档。其他简档包括社交联网、即时消息收发、聊天、电子邮件等。作为步骤204的一部分,计算设备将发送身份信息或具有位置信息的简档信息的子集至区域网络服务器108.
在步骤206,区域网络服务器标识与计算设备102接近的其他计算设备。在一个实施例中,作为步骤204的一部分,计算设备愿意向区域网络服务器108发送其三维空间的位置。在该实施例中,区域网络服务器108将查找位于该三维位置的特定半径范围内的其他计算设备。在其他实施例中,计算设备102将发送相对位置信息(例如,蓝牙信息、WiFi信号强度,等等)。区域网络服务器108将接收到该信息并且确定哪些设备位于计算设备102的接近度内。在步骤208,区域网络服务器将向体验服务器110发送对位于计算设备102的接近度内的体验的请求。从区域网络服务器108到体验服务器110的请求将包括与计算设备102接近的所有设备的标识。因此,该请求将要求由区域网络服务器108标识的任何设备正在参与的所有体验。在步骤210,体验服务器110将搜索各记录120以便找出所标识的设备正在参与的所有体验。在步骤212,体验服务器110将向区域网络服务器108发送在步骤210找出的所有体验的标识。此外,体验服务器110将标识体验中涉及的所有身份、体验的访问列表信息、参与体验的设备以及共享存储器的一个或多个URL。
在步骤214,区域网络服务器108将确定从体验服务器110向它报告的哪些体验可由计算设备102访问。例如,区域网络服务器108将每一体验的访问准则与计算设备102的身份信息以及其他信息比较,以确定哪些体验的访问控制列表被满足。区域网络服务器108将标识计算设备102被允许加入的那些体验。在一些实施例中,体验服务器110将确定计算设备102被允许加入哪些体验。
在步骤216,区域网络服务器108将确定由体验服务器110报告的哪些身份是正在操作计算设备102的用户的朋友。在步骤218,区域网络服务器108将向计算设备102发送与其接近的所有体验的一个或多个标识、参与该体验并且同样与计算设备102接近的设备,以及与计算设备102接近的所有朋友。在步骤220,计算设备102将选择从区域网络服务器108向它报告的各体验中的一个。在一个实施例中,在步骤218接收到的所有体验将由计算设备102通过显示器或扬声器向用户报告。用户从而可以手动地选择加入哪些体验。在另一实施例中,计算设备102将包括用于自动选择体验的一组准则或规则。该准则可基于用户简档或其他数据。在任一情况下,在步骤220选择各体验中的一个。在步骤222,计算设备102将确定是否需要任何额外的代码。在许多情况下,体验涉及在计算设备102上运行将与该计算设备上的其他应用通信、协作或者以其他方式单独工作的应用。如果该应用代码已经存储在计算设备102上,则不需要获得新的代码。但是,如果该应用的代码还没有存储在计算设备102上,则计算设备102将需要在步骤224获得额外的代码。在步骤226,在获得额外的代码之后,如果需要,计算设备102将加入所选择的体验并且参与该体验。例如,计算设备可以运行它获得的代码以参与分布式多用户游戏、多设备生产力任务,等等。
一个实施例还可使用分层的位置检测。GPS、蜂窝三角测量、或WiFi查找被用来确定设备的大概位置。这使得系统以小至几米的范围知道计算设备在哪里。附近可以有要求计算设备接近特定物理对象的体验。例如,蓝牙技术可以被嵌入到高级数字海报中。区域网络服务器使得海报和计算设备互相知道对方。它们中的一个用蓝牙(或其他技术)扫描另一个。一旦它们使用蓝牙(或其他技术)“看见”对方,则体验变为可加入的。另一示例是可使用沿着游览隐藏在各感兴趣点的蓝牙接收器的虚拟游览体验。随着计算设备接近游览的各个点,正确的点的编程自动地播放。
标识朋友的概念可用于众多体验。例如,第一个人在一个体验中并且想要邀请附近的朋友加入(例如,开始移动电话上的游戏并且想要邀请桌子对面的朋友一起玩)。另一示例是一个人创建仅有这个人的朋友可加入的体验(例如,游乐场上的小孩在她电话上开始任何附近的朋友可发现和加入的多玩家游戏)。她的朋友加入和离开。新加入的朋友可以在她没有邀请他们(一个接着一个)的情况下加入。
图4是描述用于获得额外代码的过程的一个实施例的流程图。即,图4的过程是图3的步骤224的一个示例实现。在图4的步骤250,计算设备102向应用服务器112发送对代码的请求。该请求将指示计算设备102的设备类型以及计算设备想要加入的体验。在步骤252,应用服务器112将为适合于该特定设备类型的代码而搜索其数据存储130。如果找出该特定设备类型的代码以及体验(步骤254),则在步骤256应用存储服务器112将该代码传输至计算设备102。作为响应,计算设备102将安装接收到的代码。在步骤254,如果没有找出适合于设备类型的代码以及应用,则应用存储服务器112将获得执行相同功能的web应用(由应用存储服务器112或其他地方服务的)的URL。以这一方式,浏览器或其他装置可用来访问web服务以使得用户仍能够通过由web服务执行所需任务来参与体验。在步骤260,应用存储服务器112将发送web应用的URL至计算设备102。在一个替换方案中,应用存储服务器112的功能可由区域网络服务器108或体验服务器110执行。在另一实施例中,计算设备可要求用户通过CD-ROM、因特网下载等手动地获得代码。
图5是描述用于加入和参与体验的过程的一个实施例的流程图。即,图5的过程是图3的步骤226的一个示例实现。在步骤280,计算设备102将运行应用的可执行文件。该应用将使得计算设备102能够参与体验。在步骤282,计算设备102上运行的应用将使用从区域网络服务器108接收到的URL向体验服务器110请求状态信息。在步骤284,计算设备102上运行的应用将从体验服务器110接收状态信息。在步骤286,计算设备102上运行的应用将基于接收到的状态信息更新其状态。在步骤288,更新的应用将在计算设备102上运行。步骤288包括与计算设备102以及(可选地)其他计算设备的用户交互。随着体验/应用的状态改变,计算设备102上运行的应用将通过使用HTTP访问共享存储器向体验服务器110更新该状态信息以及从体验服务器110接收另外的更新。在运行期间,应用可与接近计算设备102的计算设备上的其他应用交互(可选)。
图2的体系结构是其中一组服务器(例如,区域网络服务器108、体验服务器110和应用存储服务器112)管理一个或多个体验的中央模型。图6是描绘了基于对等模型的接近度网络的另一实施例的另一体系结构的框图。在这一体系结构中,一个本地设备将发现附近的设备并且管理接近度网络。管理的设备将有传感器API以在它和接近的其他设备之间共享传感器数据。管理的设备可以指导其他设备输出光、噪音或其他信号以帮助检测位置和/或方向。管理员还可以指令其他设备在哪里以及如何定位它们自己。以这一方式,可基于设备彼此有多接近以及它们的方向来缩放或者以其他方式改变体验。为了实现这一点,管理设备将需要找出其他设备的属性。彼此互相接近的设备之间的通信可以是直接的或者通过云。在一组实施例中,所有内容和数据可以驻留在本地。在另一实施例中,所有或部分内容可以通过云访问。在这一实施例的一些实现中,主设备担当体验服务器。
图6示出云100以及能够通过云100通信的一组计算设备302、304和306。尽管图6示出了三个计算设备,但是可以使用多于或者少于三个计算设备。这些计算设备之一302被指定为主计算设备。图6示出通过云或者直接通过有线或无线通信装置互相通信的主计算设备、计算设备304和计算设备306。如上所述,用作主计算设备302、计算设备304和计算设备306之间的共享体验的一部分的部分或全部内容可通过在云内容提供者308处存储内容经由云来访问。在一个实施例中,云内容提供者308包括提供web应用服务或存储服务的一个或多个服务器。例如,云内容提供者308可包括载入到计算设备的应用、那些应用使用的数据、介质或其他内容。计算设备302、304和306可以是台式计算机、膝上型计算机、蜂窝电话、电视机/机顶盒、视频游戏控制台、汽车、智能设备,等等。在一个实施例中,各计算设备将包括用于感测与它们周围环境有关的信息的一个或多个传感器。传感器的示例包括图像传感器、深度照相机、话筒、触觉传感器、射频波传感器(例如,蓝牙接收器、WiFi接收器,等等)、以及已知的其他类型的传感器。
图7提供了主计算设备的一个示例。在这一示例中,主计算设备包括连接至电视机或监视器404的视频游戏控制台402。照相机系统406以及蓝牙传感器408、410、412和414被安装在电视机或监视器404上并且与视频游戏控制台402连接。照相机系统406将包括图像传感器以及深度照相机。与深度照相机有关的更多信息可以在Leyvand等人于2010年1月29日提出的题为基于视觉的身份跟踪的美国专利申请12/696,282中找到,此处全部内容通过引用并入本申请。在一些实施例中,除了图7所描绘的传感器之外的另外的传感器也可被加入游戏控制台402。在图7所描绘的实施例中,除了主计算设备之外的各计算设备将发送蓝牙信号。蓝牙接收器408、410、412和414将从任何接近的设备接收蓝牙信号。由于这四个传感器是分布的,因此它们接收到的信号将略有不同。这些不同的信号可用于三角测量(基于差异)以确定发射蓝牙信号的计算设备的位置。所确定的位置将是相对于游戏控制台402的。在其他实施例中,主计算设备302可使用WiFi信号强度以确定这一接近的设备。在其他实施例中,设备可使用基于GPS的位置计算以确定接近的设备。在另一实施例中,设备可以输出可由主计算设备使用的线性调频脉冲(RF、音频等)以标识与其接近的计算设备。图7仅是主计算设备302的一个示例,并且还可以用本文所述的技术使用其他实施例。
图8是描述了操作图6的各组件以实现本文所述的接近度网络的过程的一个实施例的流程图。在图8的步骤502,其他计算设备中的一个(例如,计算设备304、306等)将进入与主计算设备302相同的环境。在步骤504,主计算设备302接收与其他计算设备有关的传感器数据。例如,主计算设备302可以从蓝牙接收器、WiFi接收器、图像照相机、深度照相机、话筒等接收信息。传感器数据将警告主计算设备302存在其他计算机设备。在一些替代方案中,计算设备将跨以太网、WiFi或其他通信装置接收基本的发现消息。例如,无线游戏控制器可以向游戏控制台唤起它的存在。在步骤506,响应于从传感器数据被警告存在其他计算设备,主计算设备302将建立与其他计算设备的通信。计算设备之间的通信可以通过云100、通过云内容提供者308、和/或直接通过本领域已知的有线或无线通信装置。
在一个实施例中,主计算设备302将包括传感器API,它允许其他计算设备发送传感器数据至主计算设备302以及从主计算设备302接收传感器数据。例如,如果其他计算设备包括WiFi接收器、GPS接收器、视频传感器等,则来自这些传感器的信息可通过传感器API提供给主计算设备302。此外,其他计算设备可以通过传感器API向主计算设备302指示它们的位置(例如,GPS导出的位置)。因此,在步骤508,其他计算设备将通过传感器API向主计算设备302传输现有的传感器信息(如果存在)。在步骤510,主计算设备302将观察其他计算设备,并且在步骤512,主计算设备302将使用步骤510的观察来确定与其他计算设备有关的另外的位置和/或方向信息。以下讨论与步骤510和512有关的更多信息。
在步骤514,主计算设备302将向其他计算设备请求身份信息,其中主计算设备从其他计算设备接收传感器数据。这允许了主计算设备302标识计算设备的用户的朋友以及确定访问控制决策。在步骤516,其他计算设备将发送那些计算设备的用户的身份信息至主计算设备302。在步骤518,主计算设备302将确定哪一体验对其他计算设备可用。例如,主计算设备可以仅有当前正在执行的一个体验。因此,步骤518将简单地确定与主计算设备302接近的其他计算设备是否通过了该体验的访问准则。如果多个体验同时运行,则主计算设备302将确定被检测到与主计算设备302接近的计算设备是否有对任何体验的访问权限。在步骤520,主计算设备302将通知其他一个或多个计算设备任何该计算设备的用户有体验的访问权限的可用体验。
其他计算设备将选择加入的体验(如果存在选择)并且通知主计算设备302这一选择。例如,可向用户提供选择(体验之间的选择或加入单个体验的选择)并且用户可手动地选择。另选地,其他计算设备可具有用于自动选择的一组规则或准则。在步骤524,其他计算设备将确定是否需要额外的代码以加入体验。如果需要额外的代码,则在步骤526其他计算设备将获得额外的代码。在获得额外的代码之后,或者如果不需要额外的代码,在步骤528其他计算设备将加入和参与选择和体验。
在步骤526获得的代码可以通过执行图4的步骤过程来实现。在一个实施例中,其他计算设备将访问如图2中的应用存储服务器。在另一实施例中,图4的过程将用于从云内容提供者获得额外的代码。在其他实施例中,图4的过程可由从主计算设备302获得代码的其他计算设备执行。
图9是描述了主计算设备302观察其他计算设备以便使用那些观察确定另外的位置和/或方向信息的过程的一个实施例的流程图。因此,图9的过程是图8的步骤510和512的一个示例实现。在图9的步骤602,主计算设备302请求与其他计算设备的显示屏的物理属性有关的信息。例如,主计算设备将对显示的分辨率、亮度以及显示的技术感兴趣。作为步骤602的一部分,其他计算机将提供该信息。
在步骤604,主计算设备302将请求其他计算设备以在其屏幕上显示图像。主计算机将向其他计算机提供该图像。在步骤606,其他计算机将在其屏幕上显示它被请求的图像。在步骤608,主计算机将使用照相机(例如,图7的照相机系统406)感测静止的照片。在步骤610,主计算设备302将为了它请求其他计算机显示的图片而搜索照片。在一个实施例中,主计算设备302将请求其他计算设备显示非常独特的图像并且将在从照相机406接收的文件中查找该独特图像。如果找到该图像(步骤612),则主计算设备302将通过图像的大小以及在照片中找到图像的方向来推断位置和方向。
在推断位置和方向之后,或者如果在步骤612没有找到图像,则在步骤616主计算设备302将请求其他计算设备播放特定的音频流。在步骤618,其他计算设备将播放该请求的音频。在步骤620,主计算设备将感测音频。在步骤622,主计算设备将确定它感知的音频是否是它请求其他计算设备播放的音频。如果是的话,则在步骤624主计算设备302可以推断位置信息。本领域有用于基于音频信号的音量来确定对象之间距离的已知技术。在一些实施例中,音调或频率还可用于确定主计算设备和其他计算设备之间的距离。
在步骤624推断位置信息之后,或者如果在步骤622没有听到正确的声音,则在步骤626主计算设备302将请求其他计算设备发射RF信号。该RF信号可以是蓝牙信号、WiFi信号或其他类型的信号。在步骤628,其他计算设备将发射RF信号。在步骤630,主计算设备302将检测其周围的RF信号。在步骤632,主计算设备将确定它检测到的RF信号是否是它请求其他计算设备发射的RF信号。如果是的话,则主计算设备302将从检测到的RF信号推断位置信息。有用于基于接收到的RF信号的强度和幅度来确定距离的已知技术。在步骤634推断位置信息之后,或者如果没有检测到RF信号,则主计算设备302将使用推断的位置信息和方向信息来更新它已经有的位置或方向信息。
在共享经验是分布式扑克牌游戏的示例中,主计算设备302可能想要在用户的蜂窝电话显示该用户私有的牌之前知道用户蜂窝电话的方向。如果用户的蜂窝电话被定向为其他用户可以看见它(包括主计算设备302),则主计算设备302将请求用户(通过用户蜂窝电话上的消息)在主计算设备302发送用户私有的牌之前关掉和隐藏蜂窝电话的显示。
在一些实施例中,可由一定量的接近度验证来控制参与体验。例如,如果主计算设备不能验证其他计算设备在包容线区内则不允许计算设备加入体验。在一个示例实现中,包容线区是对体验有效的2维或3维空间的定义,并且可由主设备验证包容线区域内特定计算设备的存在。
图10描绘了用于实现图2和图6的任何设备的示例性计算系统710。图10的计算系统710可用于执行图1、图3-5和图8-9所描述的功能。计算机710的各组件可包括但不限于,处理单元720(可以执行本文所述的各过程的一个或多个处理器)、系统存储器730(可以存储编程该一个或多个处理器以执行本文所述的各过程的代码),以及将包括系统存储器的各系统组件与处理单元720耦合的系统总线721。系统总线721可以是几种类型的总线结构中的任何一种,包括存储器总线或存储控制器、外围总线、以及使用各种总线体系结构中的任一种的局部总线。作为示例而非限制,这样的架构包括工业标准架构(ISA)总线、微通道架构(MCA)总线、增强型ISA(EISA)总线、视频电子标准协会(VESA)局部总线、也称为夹层(Mezzanine)总线的外围组件互连(PCI)总线、以及PCI Express。
计算系统710通常包括各种计算机可读介质。计算机可读介质可以是可由计算系统710访问的任何可用介质,并且包括易失性和非易失性介质、可移动和不可移动介质,包括RAM、ROM、EEPROM、闪存或其他存储器技术,CD-ROM、数字多功能盘(DVD)或其他光盘存储,磁带盒、磁带、磁盘存储或其他磁存储设备,或可以用来存储所需信息并且可由计算系统710访问的任何其他介质。
系统存储器730包括易失性和/或非易失性存储器形式的计算机存储介质,如只读存储器(ROM)731和随机存取存储器(RAM)732。基本输入/输出系统733(BIOS)包括如在启动时帮助在计算机710内的元件之间传输信息的基本例程,它通常储存在ROM 731中。RAM 732通常包含处理单元720可以立即访问和/或目前正在操作的数据和/或程序模块。作为示例而非限制,图10示出了操作系统734、应用程序735、其他程序模块736和程序数据737。
计算机710还可以包括其他可移动/不可移动、易失性/非易失性计算机存储介质。仅作为示例,图10示出了从不可移动、非易失性磁介质中读取或向其写入的硬盘驱动器740,从可移动、非易失性磁盘752中读取或向其写入的磁盘驱动器351,以及从诸如CD ROM或其他光学介质等可移动、非易失性光盘756中读取或向其写入的光盘驱动器755。可以在示例性操作环境中使用的其他可移动/不可移动、易失性/非易失性计算机存储介质包括但不限于,磁带盒、闪存卡、数字多功能盘、数字录像带、固态RAM、固态ROM等等。硬盘驱动器741通常通过诸如接口740等不可移动存储器接口连接至系统总线721,并且磁盘驱动器751和光盘驱动器755通常由诸如接口750等可移动存储器接口连接至系统总线721。
上文讨论并在图10中示出的驱动器及其相关联的计算机存储介质为计算机710提供了对计算机可读指令、数据结构、程序模块和其他数据的存储。例如,在图10中,硬盘驱动器741被示为存储操作系统344、应用程序745、其他程序模块746和程序数据747。注意,这些组件可以与操作系统734、应用程序735、其他程序模块736和程序数据737相同,也可以与它们不同。在此给操作系统744、应用程序745、其他程序模块746、以及程序数据747提供了不同的编号,以说明至少它们是不同的副本。用户可以通过诸如键盘762和定点设备761(通常被称为鼠标、轨迹球或触摸板)之类的输入设备向计算机中输入命令和信息。其他输入设备(未示出)可以包括话筒、操纵杆、游戏手柄、圆盘式卫星天线、扫描仪、蓝牙收发机、WiFi收发机、GPS接收器等等。这些和其他输入设备通常通过耦合至系统总线的用户输入接口760连接至处理单元720,但也可以由其他接口和总线结构,诸如并行端口、游戏端口或通用串行总线(USB)来连接。监视器791或其他类型的显示设备也通过接口,诸如视频接口790,连接至系统总线721。除了监视器之外,计算机还可以包括可以通过外围接口795连接的诸如打印机796、扬声器797和传感器799之类的其他外围设备。传感器799可以是上文所述的任何传感器,包括蓝牙接收器(或收发机)、话筒、静止照相机、视频照相机、深度照相机、GPS接收器、WiFi收发机,等等。
计算机710可以使用到诸如远程计算机780之类的一个或多个远程计算机的逻辑连接在联网环境中操作。远程计算机780可以是个人计算机、服务器、路由器、网络PC、对等设备或其他常见网络节点,并且通常包括上面相对于计算设备710所描述的许多或所有元件,但在图10中只示出存储器存储设备781。图10中所示的逻辑连接包括局域网(LAN)771和广域网(WAN)773,但也可以包括其他网络。这样的联网环境在办公室、企业范围计算机网络、内联网和因特网中是常见的。
当在LAN联网环境中使用时,计算机710通过网络接口或适配器770连接至LAN 771。当在WAN联网环境中使用时,计算机710通常包括调制解调器772或用于通过诸如因特网等WAN 773建立通信的其他装置。调制解调器772可以是内置或外置的,它可以经由用户输入接口760或其他适当的机制连接至系统总线721。在联网环境中,相对于计算机710所描述的程序模块或其部分可被存储在远程存储器存储设备中。作为示例而非限制,图10示出了远程应用程序785驻留在存储器设备781上。可以理解,所示的网络连接是示例性的,且可以使用在计算机之间建立通信链路的其他手段。
尽管用结构特征和/或方法动作专用的语言描述了本主题,但可以理解,所附权利要求书中定义的主题不必限于上述具体特征或动作。相反,上述具体特征和动作是作为实现权利要求的示例形式公开的。本发明的范围旨在由所附权利要求书来定义。

Claims (13)

1.一种用于多个计算设备基于接近度参与任务的方法,包括:
自动地发现接近的一个或多个体验;
标识可以被加入的一个或多个体验中的至少一个体验;
自动地确定需要额外的代码以加入一个体验;
获得额外的代码;
加入一个体验;以及
运行获得的额外代码以用所标识的一个设备参与一个体验(20)。
2.如权利要求1所述的方法,其特征在于:
运行获得的额外代码以参与一个体验包括参与在多个计算设备上运行的分布式应用。
3.如权利要求1所述的方法,其特征在于:
运行获得的额外代码以参与一个体验包括第一计算设备担当第二计算设备的输入设备,该第二计算设备没有物理地连接到第一计算设备而是与第一计算设备接近。
4.如权利要求1所述的方法,其特征在于,所述自动地发现接近的一个或多个体验包括:
自动地发现接近的一个或多个设备;以及
自动地确定一个或多个所发现的设备是可以被加入的一个或多个体验的一部分,所述标识可被加入的一个或多个体验中的至少一个体验包括标识一个或多个所发现的设备中的至少一个设备以及可以被加入的一个或多个体验中的相关联的一个体验。
5.一种方便多个计算设备基于接近度共同工作的装置,包括:
区域网络服务器,所述区域网络服务器从一个或多个计算设备接收位置信息,所述区域网络服务器基于位置信息向一个或多个计算设备通知位于相应接近度的其他计算设备;以及
与区域网络服务器通信的体验服务器,所述体验服务器维护多个体验的状态和其他信息,所述体验服务器与一个或多个计算设备以及区域网络服务器就多个体验通信,响应于从计算设备接收位置信息区域网络服务器与体验服务器通信以标识与该计算设备接近的一个或多个体验并且向该计算设备通知与该计算设备接近的一个或多个体验。
6.如权利要求5所述的装置,其特征在于:
所述特定体验的状态信息包括参与体验的计算设备的标识以及指示体验的状态的共享存储器。
7.如权利要求6所述的装置,其特征在于:
所述共享存储器被表示为可以使用HTTP访问和同步的共享对象集。
8.如权利要求6所述的装置,其特征在于:
所述区域网络服务器以及所述体验服务器通过全局网络彼此以及与一个或多个计算设备通信,所述区域网络服务器包括多个计算机,所述体验服务器包括多个计算机。
9.如权利要求5所述的装置,其特征在于:
所述位置信息包括基于WiFi信号强度的相对位置信息。
10.如权利要求5所述的装置,其特征在于,还包括:
存储多个体验的应用的应用存储服务器,所述应用存储服务器为多个体验中的每一个体验存储用于不同类型设备的应用。
11.如权利要求5所述的装置,其特征在于,还包括:
存储多个体验的应用的应用存储服务器,所述应用存储服务器为多个体验中的每一个体验存储用于不同类型设备的应用以及多种类型设备可使用的web应用。
12.如权利要求11所述的装置,其特征在于:
特定体验的所述状态信息包括参与体验的计算设备的标识以及指示体验的状态的共享存储器;
所述体验服务器与一个或多个计算设备交互以更新用于多个体验的共享对象中的状态信息;
所述共享对象集可使用HTTP访问;以及
所述区域网络服务器以及所述体验服务器通过全局网络彼此以及与一个或多个计算设备通信,所述区域网络服务器包括多个计算机,所述体验服务器包括多个计算机。
13.如权利要求5所述的装置,其特征在于:
所述区域网络服务器为计算设备的用户从该计算设备接收身份信息,确定与该计算设备接近的用户的朋友,以及将与朋友有关的信息传输至该计算设备。
CN201180028865.3A 2010-06-11 2011-05-30 接近度网络 Expired - Fee Related CN102939600B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/813,683 US20110307599A1 (en) 2010-06-11 2010-06-11 Proximity network
US12/813,683 2010-06-11
PCT/US2011/038480 WO2011156163A2 (en) 2010-06-11 2011-05-30 Proximity network

Publications (2)

Publication Number Publication Date
CN102939600A true CN102939600A (zh) 2013-02-20
CN102939600B CN102939600B (zh) 2015-08-12

Family

ID=45097155

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201180028865.3A Expired - Fee Related CN102939600B (zh) 2010-06-11 2011-05-30 接近度网络

Country Status (4)

Country Link
US (1) US20110307599A1 (zh)
EP (1) EP2580674A4 (zh)
CN (1) CN102939600B (zh)
WO (1) WO2011156163A2 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107408241A (zh) * 2015-03-25 2017-11-28 微软技术许可有限责任公司 基于接近度的提醒

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9020854B2 (en) 2004-03-08 2015-04-28 Proxense, Llc Linked account system using personal digital key (PDK-LAS)
EP1829283A2 (en) 2004-12-20 2007-09-05 Proxense, LLC Biometric personal data key (pdk) authentication
US8433919B2 (en) * 2005-11-30 2013-04-30 Proxense, Llc Two-level authentication for secure transactions
US8036152B2 (en) 2006-01-06 2011-10-11 Proxense, Llc Integrated power management of a client device via system time slot assignment
US11206664B2 (en) 2006-01-06 2021-12-21 Proxense, Llc Wireless network synchronization of cells and client devices on a network
US9269221B2 (en) 2006-11-13 2016-02-23 John J. Gobbi Configuration of interfaces for a location detection system and application
WO2009062194A1 (en) 2007-11-09 2009-05-14 Proxense, Llc Proximity-sensor supporting multiple application services
US8171528B1 (en) 2007-12-06 2012-05-01 Proxense, Llc Hybrid device having a personal digital key and receiver-decoder circuit and methods of use
WO2009079666A1 (en) 2007-12-19 2009-06-25 Proxense, Llc Security system and method for controlling access to computing resources
US8508336B2 (en) 2008-02-14 2013-08-13 Proxense, Llc Proximity-based healthcare management system with automatic access to private information
US11120449B2 (en) 2008-04-08 2021-09-14 Proxense, Llc Automated service-based order processing
US8875219B2 (en) * 2009-07-30 2014-10-28 Blackberry Limited Apparatus and method for controlled sharing of personal information
US9418205B2 (en) 2010-03-15 2016-08-16 Proxense, Llc Proximity-based system for automatic application or data access and item tracking
US8918854B1 (en) 2010-07-15 2014-12-23 Proxense, Llc Proximity-based system for automatic application initialization
CN101973031B (zh) * 2010-08-24 2013-07-24 中国科学院深圳先进技术研究院 云机器人系统及实现方法
US20120185583A1 (en) * 2011-01-19 2012-07-19 Qualcomm Incorporated Methods and apparatus for enabling relaying of peer discovery signals
US9171079B2 (en) 2011-01-28 2015-10-27 Cisco Technology, Inc. Searching sensor data
US9275093B2 (en) 2011-01-28 2016-03-01 Cisco Technology, Inc. Indexing sensor data
US9225793B2 (en) * 2011-01-28 2015-12-29 Cisco Technology, Inc. Aggregating sensor data
KR101747113B1 (ko) * 2011-02-01 2017-06-15 삼성전자주식회사 클라우드 컴퓨팅 실행 방법
US20120210399A1 (en) * 2011-02-16 2012-08-16 Waldeck Technology, Llc Location-enabled access control lists for real-world devices
US9265450B1 (en) 2011-02-21 2016-02-23 Proxense, Llc Proximity-based system for object tracking and automatic application initialization
US9339727B2 (en) * 2011-06-15 2016-05-17 Microsoft Technology Licensing, Llc Position-based decision to provide service
US9176214B2 (en) * 2011-08-10 2015-11-03 Microsoft Technology Licensing, Llc Proximity detection for shared computing experiences
US20140220946A1 (en) * 2011-12-09 2014-08-07 Samsung Electronics Co., Ltd. Network participation method based on a user command, and groups and device adopting same
US9686647B2 (en) 2012-01-17 2017-06-20 Comcast Cable Communications, Llc Mobile WiFi network
EP2807843A4 (en) * 2012-01-27 2015-11-04 Hewlett Packard Development Co INTELLIGENT PERIPHERAL DEVICE
US8533266B2 (en) * 2012-02-14 2013-09-10 Google Inc. User presence detection and event discovery
GB201209212D0 (en) * 2012-05-25 2012-07-04 Drazin Jonathan A collaborative home retailing system
EP2891346B1 (en) * 2012-08-28 2018-11-14 Nokia Technologies Oy Discovery method and apparatuses and system for discovery
US9300742B2 (en) 2012-10-23 2016-03-29 Microsoft Technology Licensing, Inc. Buffer ordering based on content access tracking
US9258353B2 (en) 2012-10-23 2016-02-09 Microsoft Technology Licensing, Llc Multiple buffering orders for digital content item
US20140287792A1 (en) * 2013-03-25 2014-09-25 Nokia Corporation Method and apparatus for nearby group formation by combining auditory and wireless communication
WO2014183106A2 (en) 2013-05-10 2014-11-13 Proxense, Llc Secure element as a digital pocket
US9813840B2 (en) * 2013-11-20 2017-11-07 At&T Intellectual Property I, L.P. Methods, devices and computer readable storage devices for guiding an application programming interface request
US9635108B2 (en) 2014-01-25 2017-04-25 Q Technologies Inc. Systems and methods for content sharing using uniquely generated idenifiers
US9756438B2 (en) 2014-06-24 2017-09-05 Microsoft Technology Licensing, Llc Proximity discovery using audio signals
NL2013236B1 (en) * 2014-07-22 2016-08-16 Bunq B V Method and system for initiating a communication protocol.

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030073406A1 (en) * 2001-10-17 2003-04-17 Benjamin Mitchell A. Multi-sensor fusion
US6836794B1 (en) * 1998-09-21 2004-12-28 Microsoft Corporation Method and system for assigning and publishing applications
CN1712951A (zh) * 2005-06-21 2005-12-28 吴来政 火车轮轴超声瑞利波探伤方法
US20080077309A1 (en) * 2006-09-22 2008-03-27 Nortel Networks Limited Method and apparatus for enabling commuter groups
US20080140650A1 (en) * 2006-11-29 2008-06-12 David Stackpole Dynamic geosocial networking
CN101390311A (zh) * 2006-02-28 2009-03-18 微软公司 基于接收的信号确定物理位置

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5906657A (en) * 1996-07-01 1999-05-25 Sun Microsystems, Inc. System using position detector to determine location and orientation between computers to select information to be transferred via wireless medium
US6276332B1 (en) * 1999-11-03 2001-08-21 Ford Global Technologies, Inc. Electronic airflow control
FI112433B (fi) * 2000-02-29 2003-11-28 Nokia Corp Sijaintiin sidotut palvelut
CA2419428A1 (en) * 2000-06-22 2001-12-27 Yaron Mayer System and method for searching, finding and contacting dates on the internet in instant messaging networks
US6678750B2 (en) * 2001-06-04 2004-01-13 Hewlett-Packard Development Company, L.P. Wireless networked peripheral devices
WO2003048926A1 (fr) * 2001-12-07 2003-06-12 Ntt Docomo, Inc. Terminal de communication mobile, dispositif, systeme, procede et programme de demarrage de logiciel d'application
KR100577682B1 (ko) * 2004-06-04 2006-05-10 삼성전자주식회사 노드들로 구성된 통신 시스템에서 거리 추정 장치 및 방법
US20080157970A1 (en) * 2006-03-23 2008-07-03 G2 Microsystems Pty. Ltd. Coarse and fine location for tagged items
US8028905B2 (en) * 2007-05-18 2011-10-04 Holberg Jordan R System and method for tracking individuals via remote transmitters attached to personal items
DE102007045894A1 (de) * 2007-09-25 2009-05-07 Mobotix Ag Verfahren zur Kommunikationssteuerung
US8234193B2 (en) * 2008-03-03 2012-07-31 Wildfire Interactive, Inc. Method and system for providing online promotions through a social network-based platform
US9319462B2 (en) * 2008-10-27 2016-04-19 Brocade Communications Systems, Inc. System and method for end-to-end beaconing

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6836794B1 (en) * 1998-09-21 2004-12-28 Microsoft Corporation Method and system for assigning and publishing applications
US20030073406A1 (en) * 2001-10-17 2003-04-17 Benjamin Mitchell A. Multi-sensor fusion
CN1712951A (zh) * 2005-06-21 2005-12-28 吴来政 火车轮轴超声瑞利波探伤方法
CN101390311A (zh) * 2006-02-28 2009-03-18 微软公司 基于接收的信号确定物理位置
US20080077309A1 (en) * 2006-09-22 2008-03-27 Nortel Networks Limited Method and apparatus for enabling commuter groups
US20080140650A1 (en) * 2006-11-29 2008-06-12 David Stackpole Dynamic geosocial networking

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107408241A (zh) * 2015-03-25 2017-11-28 微软技术许可有限责任公司 基于接近度的提醒

Also Published As

Publication number Publication date
EP2580674A2 (en) 2013-04-17
WO2011156163A3 (en) 2012-02-23
EP2580674A4 (en) 2017-06-21
CN102939600B (zh) 2015-08-12
WO2011156163A2 (en) 2011-12-15
US20110307599A1 (en) 2011-12-15

Similar Documents

Publication Publication Date Title
CN102939600B (zh) 接近度网络
CN102884537B (zh) 用于设备定位和通信的方法
US20130297690A1 (en) Method and apparatus for binding devices into one or more groups
JP6944805B2 (ja) 機器間アプリケーション連動方法およびシステム
US11069252B2 (en) Collaborative virtual environment
JP6961334B2 (ja) サーバ、情報処理方法およびプログラム
EP3097704A2 (en) Determing data associated with proximate computing devices
WO2019117583A1 (ko) 공간 메시징과 컨텐츠 공유를 위한 방법 및 그 시스템
US11575529B2 (en) Method, system, and non-transitory computer readable record medium for controlling joining chatroom based on location
JP6830528B2 (ja) ユーザ活動情報を共有する方法およびシステム
CN103891245A (zh) 位置知晓的内容检测
US20160180471A1 (en) Method, system and recording medium for managing official account
Fischer et al. Supporting team coordination on the ground: requirements from a mixed reality game
An Adopting metaverse‐related mixed reality technologies to tackle urban development challenges: An empirical study of an Australian municipal government
JP2023531418A (ja) ロケーションベースゲームのためのプレイヤデバイスの近接検出
US20230359618A1 (en) Sharded Storage of Geolocated Data with Predictable Query Response Times
Meyer et al. Supporting mobile collaboration in spatially distributed workgroups with digital interactive maps
Zhao et al. GeoDF: Towards a SDI-based PPGIS application for E-Governance
Glover et al. Digital places: location-based digital practices in higher education using Bluetooth Beacons
Mikusz et al. A longitudinal study of pervasive display personalisation
KR102303761B1 (ko) 증강현실 기반 사진 앨범 제공 방법
JP2021515925A (ja) チャットルームを3次元形態で提供する方法、システム、および非一時なコンピュータ読み取り可能な記録媒体
JP7336780B1 (ja) プログラム、方法、情報処理装置、システム
WO2015093679A1 (ko) 사용자 참여 공연 메이킹 시스템 및 그 제공 방법
KR20220094928A (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: 20150717

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

Effective date of registration: 20150717

Address after: Washington State

Applicant after: Micro soft technique license Co., Ltd

Address before: Washington State

Applicant before: Microsoft Corp.

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: 20150812

Termination date: 20190530