CN102609607A - 基于房间的计算环境 - Google Patents

基于房间的计算环境 Download PDF

Info

Publication number
CN102609607A
CN102609607A CN2011103950905A CN201110395090A CN102609607A CN 102609607 A CN102609607 A CN 102609607A CN 2011103950905 A CN2011103950905 A CN 2011103950905A CN 201110395090 A CN201110395090 A CN 201110395090A CN 102609607 A CN102609607 A CN 102609607A
Authority
CN
China
Prior art keywords
room
data
computing environment
resource
visit
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
CN2011103950905A
Other languages
English (en)
Other versions
CN102609607B (zh
Inventor
M.阿尔卡扎
O.E.马里洛
D.E.沃尔瑟二世
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 CN102609607A publication Critical patent/CN102609607A/zh
Application granted granted Critical
Publication of CN102609607B publication Critical patent/CN102609607B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/604Tools and structures for managing or administering access control systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/29Geographical information databases
    • 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/953Querying, e.g. by the use of web search engines
    • G06F16/9537Spatial or temporal dependent retrieval, e.g. spatiotemporal queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • 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
    • G06Q30/0241Advertisements
    • 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
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • 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
    • G06Q30/0241Advertisements
    • G06Q30/0277Online advertisement
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/102Entity 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/52Network services specially adapted for the location of the user terminal
    • 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/021Services related to particular areas, e.g. point of interest [POI] services, venue services or geofences

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Finance (AREA)
  • Accounting & Taxation (AREA)
  • Development Economics (AREA)
  • Databases & Information Systems (AREA)
  • Strategic Management (AREA)
  • General Engineering & Computer Science (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Game Theory and Decision Science (AREA)
  • General Business, Economics & Management (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Bioethics (AREA)
  • Data Mining & Analysis (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Remote Sensing (AREA)
  • Computing Systems (AREA)
  • Automation & Control Theory (AREA)
  • Information Transfer Between Computers (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Storage Device Security (AREA)

Abstract

公开了用于创建和访问基于房间的计算环境的构思和技术。资源被分类和/或打包为资源类别或包。资源与基于房间的计算环境相关联,存储与资源相关的各种数据,包括与对于访问资源的许可相关的数据。在检测到对基于房间的计算环境的访问时,房间引擎可以验证与该访问相关联的实体,并且基于许可信息和/或其它考虑来确定要表现基于房间的计算环境的什么内容。生成该环境,并且经由一个或多个用户界面将该环境表现给该实体。

Description

基于房间的计算环境
背景技术
实体(entities)有时使用计算设备执行各种活动,诸如执行网络搜索、访问基于网络的或其它类型的应用、访问文件或其它资源、访问或更新社交联网信息等等。在一些情况下,这些活动涉及另一个和/或特定主题,并且/或者可能经常重复。此外,用户可能希望共享在这些活动期间标识的信息或资源。尽管可能涉及并且可能经常重复这些活动,可能没有容易的方式来重复这些活动,更不用说与其他实体共享在这些活动期间标识的信息或资源。
此外,尽管用户可能希望与其他实体共享所标识的信息或资源,然而这些用户同时可能希望限制由未经授权的实体对共享的信息或资源的访问。在一些情况下,用户可能希望与特定实体共享一些信息,而可能希望限制相同实体对其它信息的访问。而且,用户可能希望与所有实体共享一些信息,而对于所有实体或所选择的实体限制一些信息。因为依据这些和其它关注点用户可能不能限制对一些信息或所有信息的访问,共享信息或资源的能力可能受限于其它原因。
另外,在这些和其它活动期间标识的信息和/或资源可能不便于导航,并且/或者可能要求复杂的用户界面、命令、和/或硬编码以便实现期望的功能。尽管一些服务或网站允许用户与其他实体共享特定信息并且设置与共享信息相关联的许可,这些界面不容易与其他用户共享大的和/或变化类型的数据或资源、以及/或者控制对共享数据或资源的访问,并且可能难以导航,尤其在用户限制对一些信息的访问时更是如此。
关于这些和其它考虑,提出了这里作出的公开。
发明内容
这里描述基于房间的计算环境的构思和技术。依据这里公开的构思和技术,将应用、网站、服务、网页、和/或其它内容(“资源”)分类并且/或者打包为资源类别或资源包。这些资源类别或资源包被称为“房间(room)”,其可以被表示为与资源的逻辑编组相关的信息,以及/或者可以通过信息的图形表示和/或到表示物理房间的信息形式的链接来表示。因此,词语“房间”在这里被用来指代涉及特定主题或者可以被考虑为属于特定主题的资源的集合和其它分层级集合和/或包。这里的构思和技术还涉及基于房间的计算环境的图形导航,其中,房间对应于用于访问资源集合或包的图形表示。这里公开的构思和技术还涉及另外的或替代的资源编组,包括但不限于包含一个或多个房间的建筑物、房间内的一个或多个项目、以及/或者独立资源。
根据一个方面,与房间引擎通信的客户端通过创建建筑物、房间、项目等并且利用特定资源填充建筑物、房间、项目等,来生成基于房间的计算环境。基于房间的计算环境的内容的生成可以至少部分地基于从搜索引擎接收的搜索数据、从社交联网服务接收的社交联网数据、从一个或多个用户接收的输入、和其它数据。从用户接收的输入可以包括但不限于与建筑物、房间、项目等相关的许可信息。其它数据可以包括但不限于位置数据、设备数据等,其可以与建筑物、房间、项目、和/或特定资源相关联。
根据另一方面,基于房间的计算环境被实体访问,并且房间引擎确定基于房间的计算环境的内容。在一些实现方式中,实体被授权来:确定该实体是否具有访问基于房间的计算环境的许可,并且如果确定该实体具有许可,则另外确定显示什么作为基于房间的计算环境的内容。所确定的内容还可以包括可以被呈现给基于房间的计算环境中的实体的广告和/或其它信息。
根据另一方面,公开了用于导航基于房间的计算环境的用户界面。用户界面可以被用来以不同细节和/或粒度级别来查看资源,其中各种查看的内容至少部分地基于访问控制和/或其它考虑而变化。如果期望的话,可以利用基于房间的计算环境显示广告和其它内容。
根据另一方面,钥匙(key)概念被用来逻辑地且图形地表示基于房间的计算环境的许可和访问控制。与令牌、口令、访问码、和/或其它信息相对应的钥匙可以被授予用户,并且可以被用户用来访问建筑物、房间、项目、和/或资源。可能要求各种钥匙来访问基于房间的计算环境的各个方面,如由与基于房间的计算环境相关联的一个或多个用户确定的。
根据各个实施例,客户端被配置为运行传统的操作系统,在其它实施例中,客户端被配置为运行基于网络的操作系统。因此,客户端可以运行以下操作系统或其它基本程序,所述操作系统或其它基本程序被配置来访问基于网络的或其它远程运行的应用和服务以便在客户端设备处提供特定功能。因此,客户端可以经由与标准网络浏览器相比简单的操作系统或应用提供各种应用和服务。
应理解,上述主题可以被实现为计算机控制的装置、计算机进程、计算系统、或者作为诸如计算机可读存储介质之类的制造商品。这些和各种其它特征将通过阅读以下具体实施方式与浏览相关联的图而变得明显。
提供该发明内容以便以简化形式介绍下面在具体实施方式中进一步被描述的构思的选择。该发明内容不意图标识要求保护的主题的关键特征或必要特征,也不意图将该发明内容用来限制要求保护的主题的范围。此外,要求保护的主题不限于解决在本公开的任何部分中注意到的任何缺点或所有缺点的实现方式。
附图说明
图1是图示用于这里公开的各个实施例的示例操作环境的系统图。
图2是示出根据示例实施例的用于生成基于房间的计算环境的房间的方法的各方面的流程图。
图3是示出根据示例实施例的用于提供对基于房间的计算环境的访问的方法的各方面的流程图。
图4A-4C是示出根据各个实施例的用于提供对基于房间的计算环境的访问的示例用户界面的各方面的用户界面图。
图5是图示用于能够实现这里提出的实施例的各方面的计算系统的示例计算机硬件和软件架构的计算机架构图。
具体实施方式
以下的具体实施方式针对用于创建和访问基于房间的计算环境的构思和技术。根据这里描述的构思和技术,资源被分类并且/或者打包为资源类别或资源包。这些资源类别或资源包可以被划分为各种分类级别。在一些实施例中,这些各种级别由一个或多个建筑物、与一个或多个建筑物相关联的一个或多个房间、与一个或多个房间相关联的一个或多个项目、以及/或者与任何建筑物、房间和/或项目相关联的一个或多个资源来概念性地和图形地表示。
根据各种实现方式,资源与基于房间的计算环境相关联,并且存储与资源相关的数据。数据可以包括标识可以怎样访问资源的信息(诸如例如网络链接或其它信息)。数据还可以包括与资源相关联的地理位置信息、与资源相关联的社交联网信息、与资源相关联的搜索信息、与资源相关联的广告信息、以及/或者其它信息。可以为访问资源设置许可,并且数据可以被存储为房间数据。
响应于检测基于房间的计算环境的访问,房间引擎可以授权与该访问相关联的实体,并且基于许可信息和/或其它考虑来确定要呈现基于房间的计算环境的什么内容。经由一个或多个用户界面(“UI”)来生成环境,并将该环境呈现给该实体。如果期望的话,可以通过变化粒度级别来经由UI对基于房间的计算环境进行导航,并且与基于房间的计算环境相关联的资源可以被访问和/或运行。
词语“房间”及其变形在这里被用来指代资源的分类或其它编组。根据各个实施例,房间由资源的逻辑编组、以及/或者由信息的图形表示和/或到表示物理房间的信息形式的链接来表示。这样,房间在这里指代涉及或者可以被考虑为属于一个或多个主题或者一组或多组主题的资源的编组、分类、以及其它集合和/或包,以及用于访问资源的集合或包的图形表示。如在这里使用的,词语“资源”被用来指代与应用、服务、网页、网站、文件、应用数据、社交联网数据、搜索数据、和/或可能被客户端消耗或使用的其它信息相关联的或者由之生成的数据。
词语“应用”及其变形在这里被用来指代用于向用户提供功能的计算机可执行文件。根据各个实施例,应用可以由例如计算机、智能电话等的设备运行。另外,计算机、智能电话、或其它设备可以运行如下配置的网络浏览器或操作系统,所述网络浏览器或操作系统被配置为访问远程运行应用和/或服务(诸如基于网络的和/或其它远程运行的应用)、网页、社交联网服务等。在一些实施例中,通过远程和本地运行的组合(例如通过运行JavaScript, DHTML, AJAX, .ASP等)来提供应用、网页、和/或社交联网服务。根据其它实施例,应用包括被构建来访问远程或本地数据的运行时间应用(runtime application)。可以使用来自华盛顿州雷特蒙德的微软公司的SILVERLIGHT产品家族、来自加利福尼亚州圣何塞的Adobe系统公司的AIR和FLASH产品家族和/或其它产品和技术来构建这些运行时间应用。
为了说明书和权利要求书,短语“网络应用”及其变形被用来指代被配置为完全地或部分地在网络服务器和客户端上运行的应用。网络应用可以包括多层应用,其包括但不限于用于存储和/或服务由多层应用使用的数据的数据层、用于运行指令来提供应用功能的逻辑层、以及用于呈现和显示应用输出和/或用于与应用进行交互的界面的表示层。应理解,这里提供的层的名称是示例性的,并且不应被以任何方式解释为限制。
尽管这里描述的主题是在与操作系统和应用程序的运行一起在计算机系统上运行的程序模块的通用背景下表示的,本领域技术人员将认识到其它实现方式可以与其它类型的程序模块组合地执行。通常,程序模块包括例程、程序、组件、数据结构、和执行特定任务或实现特定抽象数据类型的其它类型的结构。此外,本领域技术人员将理解,这里描述的主题可以利用其它计算机系统配置来实现,所述其它计算机系统配置包括手持设备、多处理器系统、基于微处理器或可编程的消费电子装置、微型计算机、大型计算机等等。
在以下具体描述中参考附图,所述附图形成特定实施例或示例的一部分,并且在所述附图中通过图示示出了特定实施例或示例。现在将参考附图来表示用于基于房间的计算环境的计算系统、计算机可读存储介质和计算机实现的方法的各方面,在附图中,在若干个图中相似的标记表示相似的元件。
现在参考图1,将描述这里提出的各个实施例的一个操作环境100的各方面。图1所示的操作环境100包括在网络104上操作或与网络104通信的服务器计算机102。根据各个实施例,由在因特网上操作或与因特网通信的网络服务器提供服务器计算机102的功能,但是不一定是这种情况。
服务器计算机102被配置为运行或存储应用106、网页、和/或其它内容。在一些实施例中,应用106是服务器计算机102可执行的用于提供与服务器计算机102相关联的功能的服务器应用。在其它实施例中,服务器计算机102存储应用106并且允许其它设备和/或网络节点访问、下载和/或修改应用106。在一些实施例中,应用106向服务器计算机102提供请求-响应功能,以便响应于公共目录(public directory)的访问而提供例如网页或其它内容,接收、响应、和/或运行询问等。因此,应理解,服务器计算机102可以包括但不限于应用服务器和/或数据服务器,并且可以与数据库、存储器和/或其它数据存储设备通信,以及/或者包括数据库、存储器和/或其它数据存储设备。
在一个示例实施例中,服务器计算机102容纳(host)可执行的用于提供财务应用的应用106。例如,应用106可以被用来访问财务数据以便确定和/或向用户提供账户余额,在一个或多个账户之间转移资金,打开和/或关闭账户或信用额度(lines of credit),访问账户记录(诸如账户对账单),访问结清支票的图像等等。应用106还可以提供多媒体功能,诸如例如视频和音频回放、音频和视频流传输、游戏、图像共享、观看和编辑等等。应用106还可以提供以下工具,诸如:照片、视频和音频编辑和创建应用,文字处理功能,数据备份和存储功能,日历应用,消息应用(诸如电子邮件、文本消息、即时消息、和实时消息应用)、搜索应用等等。应用106还可以提供购物应用,诸如网络商店等。上面的列出不是穷举的,因为应用106可以提供任何功能。因此,上面的示例是示例性的,并且不应被以任何方式解释为限制。
根据各个实施例,通过运行应用106来生成数据,或者服务器计算机102容纳和/或服务与内容相对应的数据。所述内容可以包括但不限于经由运行应用106而提供给与服务器计算机102连接的设备的网页、图像、文件等。在这些和其它实施例中,由服务器计算机102生成、容纳、和/或服务的数据可以通过连接到服务器计算机102的一个或多个设备变得可用、被发送、和/或被接收。所述设备可以被配置为显示或呈现数据,以便显示与应用106相关联的内容和/或输出,观看文件(诸如音频或视频文件),观看图像,或者呈现网页或其它内容等等。
应理解,在数据与应用106相关联的情况下,应用106可以在服务器计算机102处被运行,并且与应用106相关联的数据可以在远离服务器计算机102的设备处被呈现和显示。在其它实施例中,应用106部分地由服务器计算机102运行,并且部分地由远离服务器计算机102的设备(诸如计算机、服务器等)运行,以便提供与应用106相关联的功能。因此,尽管应用106被图示为由服务器计算机102容纳,但是应理解,应用组件可以由例如一个或多个设备同时运行,以便提供多层应用。
在所图示的实施例中,操作环境100还包括在网络104上操作或与网络104通信的社交联网服务器108(“SN服务器”)。SN服务器108被配置为运行社交联网应用110(“SN应用”),以便向一个或多个用户提供社交联网服务。示例的社交联网服务包括但不限于TWITTER实时消息服务、FACEBOOK社交联网服务、LINKEDIN专业联网服务、YAMMER办公室同事联网服务等。社交联网应用110还可以包括浏览服务,诸如URBANSPOON饭店浏览服务、KUDZU浏览服务、YELP浏览服务、其它浏览服务等。
在其它实施例中,社交联网功能由不被明确地已知为社交联网提供者的其它服务、站点和/或提供者提供。例如,一些网站允许用户彼此经由电子邮件、聊天服务、游戏、评论(comments)、线程(threads)、博客、和/或其它手段来进行交互,而没有明确地支持“社交联网服务”。这些服务的示例包括但不限于:尤其是来自华盛顿州雷特蒙德的微软公司的WINDOWS LIVE服务。因此,应理解,上面列出的社交联网服务不是穷举性的,这里为了简要而仅仅提到了示例的社交联网服务。
在一些实施例中,由SN服务器108运行SN应用110使得SN服务器108生成与社交联网服务相关联并且/或者与SN应用110的一个或多个用户相关联的社交联网数据112(“SN数据”)。在其它实施例中,SN服务器108存储或容纳SN数据112。SN数据112可以描述例如:与一个或多个用户、团体和/或网络相关联的社交联网图;社交联网用户内容,诸如状态更新、照片、浏览、链接、视频等;与一个或多个社交联网用户相关联的联系和履历信息等等。
在一些实施例中,SN数据112包括例如描述以下内容的信息由社交联网服务的用户创建或访问的基于房间的计算环境的房间或者其它方面,社交联网服务的用户访问的应用106和/或其它资源、与社交联网服务的用户相关联的购物和搜索历史和偏好、社交联网服务的用户推荐的文章、广告、网站、链接、照片、视频、音频、其组合等等。SN数据112还可以包括其它信息,诸如与社交联网服务的一个或多个用户相关联的喜欢和不喜欢、与社交联网服务的一个或多个用户相关联的或由社交联网服务的一个或多个用户生成的评论、与社交联网服务的一个或多个用户相关联的或由社交联网服务的一个或多个用户生成的连接请求等等。应理解,SN数据112可以包括任何类型的社交联网信息,上面列出的示例是例示性的。
根据各个实施例,操作环境100包括在网络104上操作或与网络104通信的搜索引擎114。搜索引擎114的功能可以由可由一个或多个设备和/或设备组合运行的一个或多个应用提供。在一些实施例中,搜索引擎114的功能由被配置为运行各种应用的一个或多个服务器计算机提供,然而不一定是这种情况。
在所图示的实施例中,搜索引擎114的功能由被配置为运行搜索应用和/或其它应用(未示出)的网络服务器提供。根据各个实施例,搜索引擎114被配置为发现应用106、SN服务器108、网站、服务、和/或经由网络104可访问的其它资源,以便为资源编制索引、搜索被编制索引的资源、和/或提供满足搜索询问和/或对于资源的其它请求或被认为与搜索询问和/或对于资源的其它请求相关的搜索结果。例如,搜索引擎114可以被提供来接收、解析、解释、和运行搜索询问或其它请求,并且提供满足所述询问和/或与所述询问相关的搜索结果。这样,应理解,搜索引擎114可以被配置为应用自然语言处理和/或其它逻辑,以便标识搜索询问中的搜索项目和/或另外解释搜索询问。
根据各个实施例,搜索结果可以经由搜索结果页面被传递给搜索者或其它实体,所述搜索结果页面可以包括例如到所标识的文档、文件、应用106、SN应用108和/或其它资源等等的链接。搜索引擎114还可以根据需要被配置为跟踪与搜索引擎114相关联的搜索历史和/或其它使用,用于各种分析和/或度量跟踪和报告、和/或用于经由与搜索引擎114通信的其它节点或设备提供服务。如果搜索引擎114被配置为提供分析和/或度量跟踪功能,则用户可以被提供有以下机会,即,选择使用和/或选择不使用用于解决感知的隐私和/或安全问题的功能的机会。类似地,在存储和使用所有使用信息来解决安全和/或隐私问题之前,可以使所述信息匿名。
根据各个实施例,可以由搜索引擎114生成或存储搜索数据116,其包括搜索结果、搜索历史、浏览和/或其它信息。可以使搜索数据116对于与搜索引擎114通信的一个或多个设备(诸如例如房间引擎118)可用、传送到所述与搜索引擎114通信的一个或多个设备、和/或被所述与搜索引擎114通信的一个或多个设备检索(retrieve)。这里更详细地描述搜索数据116的一些示例使用。
房间引擎118被配置为提供这里描述的以下功能:用于创建基于房间的计算环境,生成并存储描述基于房间的计算环境的数据,确定并表现与基于房间的计算环境相关联的广告,生成并提供用于与描述基于房间的计算环境的数据交互的用户界面等等,如在这里详细描述的。在一些实施例中,房间引擎118被配置为运行房间应用120和广告应用122。
房间应用120被配置为生成资源的集合或包,并将资源组织到一个或多个基于房间的计算环境中。基于房间的计算环境可以包括但不限于一个或多个房间。在一些实施例中,房间表示以与建筑物的房间相对应的方式被划分的资源的特定类别或类型。例如,资源可以被打包和/或组织为多种房间,诸如办公室、研究室、康乐室、其它房间等等,所有这些通常可以彼此相关。
更具体地,如这里将更详细地描述的,房间可以被划分为与建筑物相对应的更广或更通用的类别。例如,在一个实施例中,房间被安排到与建筑物相对应的类别中,其中建筑物本身可以包含一个或多个房间。基于房间的更广或更通用的类别,建筑物可以被用来将相关的或相似的房间打包在一起。例如,专用于个人使用的房间可以被安排到房间或其它建筑物的“家庭”类别中。可以经由家庭的图形表示访问相关的房间,或者可以借助于访问与家庭相对应的资源类别来访问相关的房间。类似地,专用于商务使用的房间可以被安排到与商务使用相关的房间类别相对应的“办公室”建筑物中,可以经由办公室的图形表示来访问办公室建筑物,或者可以借助于访问与办公室相对应的资源类别来访问办公室建筑物。
另外地或者替代地,还可以将被打包在一起以及/或者被分类为房间或在房间中的资源分类或组织为更窄的或更具体的资源类别或包。在一个实施例中,房间的资源被安排到与房间的墙壁、固定装置(fixture)、家具、或其它组件(“项目”)相对应的类别。例如,用于个人财务的资源可以被安排到家庭建筑物的办公室房间中,更具体的资源类别(例如支票账户余额决定应用或资源)可以被组织为桌子项目。桌子项目可以对应于突出隐私级别的分类的个人财务资源,或者对应于其它资源类别。应理解,办公室可以包含与其它资源类别相对应的附加和/或替代项目。
如下面参考图4A-4C将更详细解释的,可以针对每个独立资源、每个资源包、每个资源包类别、每个房间类别等设置许可。这样,这里公开的构思和技术可以被用来使得能够对建筑物、房间、项目和/或其它资源级别的丰富的许可和/或访问控制功能。这些或其它类型的建筑物、房间、项目和资源是例示性的,并且下面将参考图4A-4C更详细地描述。
在一些实施例中,经由可以与用户共享的一个或多个钥匙(key)来访问建筑物、房间、或项目。如这里使用的,“钥匙”对应于被实体用来访问基于房间的计算环境的一个或多个方面(诸如例如建筑物、房间、项目、特定资源等)的信息。应理解,“钥匙”可以由诸如令牌、口令等的功能来提供,并且不一定涉及任何物理项目。因此,应理解,术语“钥匙”不仅可以指代功能,还可以指代基于房间的计算环境中用于显示和/或交互的功能的图形表示。
在一些实施例中,对于建筑物的钥匙可以被共享为允许访问与建筑物相对应的一组房间的口令。因此,用户可以通过共享使得能够访问建筑物的口令来与其它用户共享其房间中的家庭类别。在一些实施例中,可能需要多个钥匙来访问特定建筑物的一个或多个房间和/或特定房间中的项目。例如,尽管特定的共享钥匙可能使得能够访问建筑物,但是使用共享钥匙可能不能访问建筑物中的一些房间。用户可以放置附加的访问控制机制,以便防止访问特定房间。这些访问控制机制可以被图形表示为门或锁,用户可以被授予使得能够访问被这些附加的访问控制机制保护的房间或项目的钥匙、口令、和/或其它机制。
为了进一步例示示例实施例中的访问控制的概念,考虑家庭建筑物、或专用于个人使用的房间集合。用户可以与其它用户共享其房间的家庭类别,以便允许他们访问其诸如网站、链接、网页等的资源集合。为了控制对房间的家庭类别的访问,用户可以要求访问家庭的钥匙。其它用户可以经由钥匙访问该家庭,以及/或者可以经由对于访问房间的家庭类别的任何用户开放访问而使得家庭的一些房间可用。在访问家庭(其可能通过走进家庭或者另外访问与家庭相关联的房间而在UI上被图形表示)时,一些房间可能被“锁住”或另外被保护不被“进入”或访问,而一些房间可能对持有前门钥匙的任何用户或进入家庭的其它访问开放。为了访问受保护或锁住的房间,用户可能需要提出诸如口令或经过锁住的门的其它验证机制的另一钥匙。在其它实施例中,用户可能经由电子邮件、聊天服务、电话等请求进入房间,其可以被图形或另外地表示为“敲”锁住的门。该“敲”可以被用来或被解释为向与请求访问有关的共享房间相关联的用户提示消息或其它通知。
类似地,一旦取得对特定房间的访问,该房间中的一些项目可以被进一步保护或者经过访问控制机制。在家庭办公室的情况下,应理解,敏感的财务或个人资源可以被分类到桌子的加锁抽屉或办公室的其它项目中,而其它资源可以被分类到桌子的被授权访问该办公室的任何用户可见的桌面。所有这些构思可以被图形表示并表现给用户,以便允许用户图形地导航资源、资源包、资源包的包等等。将参考图4A-4C更详细地例示和描述这里描述的基于房间的计算环境的这些和其它特征。
根据各个实施例,房间数据124包括独立的资源信息(诸如用于访问资源、资源描述等的一个或多个链接)、描述打包的资源(已经被用户定义为对应于房间、建筑物、房间中的项目)的数据等等。房间数据124还可以包括与独立的资源、资源包、资源类别等相关联的验证/许可列表、口令、和/或其它数据。如上所述,资源可以包括但不限于应用、网页、链接、服务、音频文件、视频文件、网络存储等等。因此,应理解,可以由用户在需要时限制经由与用户相关联的一个或多个建筑物、房间、项目等的资源访问,即使资源经由其它访问手段是大众可用的。
房间数据124还可以包括用于生成与建筑物、房间、项目、资源等相关联的一个或多个UI的计算机可运行指令。另外,房间数据124可以包括与基于房间的计算环境相关联的位置数据。例如,在一些实施例中,建筑物、房间、和/或项目与现实世界的位置或地理位置数据相关联,以便使得能够实现与基于房间的计算环境相关联的基于位置的功能。例如,用户可以访问基于房间的计算环境并且可以默认地位于与用户的当前地理位置相关联的建筑物或房间中。因此,在其家庭中访问基于房间的计算环境的用户可以默认地被表现有图示其家庭和/或与其当前位置相对应的其家庭的房间的图形UI。该示例是例示性的,并且不应被以任何方式解释为限制。
广告应用122被配置为生成与房间数据124一起表现或嵌入在房间数据124中的广告126。在一些实施例中,广告应用122依据一个或多个广告或市场计划来生成广告126,以及/或者与广告和/或市场计划相关联地、和/或独立于广告和/或市场计划地管理广告126的定位、投放和表现。在一些实施例中,广告应用122为广告者管理订阅和/或广告宣传,所述广告者诸如社交联网服务管理者、应用开发者、网络资源作者或服务提供者等等。根据一些实现方式,广告者付费或另外参加广告服务,所述广告服务被设计来依据市场和/或广告计划而选择和表现广告126以及/或者提高或改进广告126的表现。另外地或替代地,用户可以共享建筑物、房间、项目和独立的资源,并且可以向广告者、搜索引擎或其它实体销售在所共享的建筑物、房间、项目等中的广告空间。在这里更详细地描述建筑物、房间、项目等中的广告126的示例表现。
操作环境100还包括在网络104上操作或与网络104通信的客户端128。根据各个实施例,客户端128包括个人计算机(“PC”),诸如桌面型、平板型、膝上型或上网本计算机系统。在各种实现方式中,客户端128还包括其它类型的计算系统,包括但不限于服务器计算机、手持计算机、嵌入式计算机系统、个人数字助理、移动电话、智能电话、机顶盒(“STB”)、游戏设备、和/或其它计算设备。尽管未在图1中图示,应理解,客户端128可以经由网络104与房间引擎118通信。
客户端128被配置为运行操作系统130。根据各个实施例,由客户端128运行的操作系统130是诸如来自华盛顿州雷特蒙德的微软公司的WINDOWS家族操作系统之类的本机操作系统、和/或基于网络的操作系统。因此,将理解,根据各个实施例,客户端128被配置为或被装备为在客户端侧运行传统的本机应用和/或程序,以及/或者访问可以包括远程运行应用(诸如网络应用和/或其它远程应用)的诸如应用106的应用。
另外,客户端128可以被配置为接收并呈现由应用106、SN应用110、房间引擎118和/或其它实体生成的数据。例如,客户端128可以接收以下内容,诸如网页、由应用106生成的数据、SN数据112、房间数据124、广告126、和/或由客户端128运行的操作系统130或应用程序132可以呈现的其它内容。在一些实现方式中,客户端128被配置为访问远程运行的应用和/或运行本地代码(诸如脚本、本地搜索等)。这样,客户端128可以被配置为访问或利用基于云、基于网络、和/或其它远程运行应用,并且呈现由应用106、SN应用110生成的、和/或与网页或其它资源相关联的数据。
因此,应理解,应用程序132可以包括用于访问并呈现房间数据124以提供基于房间的计算环境的图形表示的一个或多个程序,如这里将更详细地解释的。还应理解,应用程序132可以包括:用于访问和/或呈现诸如网页等的内容的应用;用于访问、运行和/或呈现与各种本机和/或基于网络的应用相关联的数据的程序;以及/或者用于访问、运行和/或呈现与各种服务相关联的数据的程序。在其它实施例中,应用程序132包括单机或运行时间应用,其被配置为经由公共或私有应用编程接口(“API”) 和/或公共或私有网络连接来访问基于网络的或远程的资源和/或应用。因此,应用程序132可以包括用于提供或呈现与本地运行和/或远程运行应用相关联的数据的本机的和/或基于网络的应用。
根据各个实施例,诸如网页、应用106、文档、多媒体文件和/或其它文件、社交联网服务、和/或另一资源之类的资源被用户、设备、节点等访问或指定,并且被指派来添加到房间、或资源的其它类别或包。尽管传统使用诸如组织、分类、打包等之类的词语,将理解,资源不一定一直位于或被组织于任何特定位置。相反,组织、分类、打包等可以包括标识与特定资源相关联的组、包、类别等。资源可以被分类或组织为资源类别或包,并且与新的或现有的房间或者其它的资源类别或包相关联。在一些实施例中,相关房间可以被打包到与一种资源相对应的建筑物。类似地,房间可以包括与相对于房间而言更窄地定义的资源类别相对应的项目。描述资源的数据、标识与资源相关联的一个或个链接或位置、和/或其它信息可以被存储为房间数据124,并且与特定建筑物、房间、项目、或者其它资源包或指定资源类别相关联。
在创建房间、访问房间、浏览房间期间,和/或在向房间添加资源期间,可以根据需要取得各种数据,并且将所述各种数据与资源相关联。例如,位置数据、搜索历史信息、社交联网信息、浏览历史等可以被房间引擎118取得。数据可以被房间引擎118用来进一步定义资源和/或与资源相关联的定制功能(tailor functionality)。例如,如上面解释的,房间引擎118可以将位置数据与资源相关联。
房间引擎118还可以访问搜索数据116,以便根据需要标识与资源相关联的搜索倾向和/或其它信息。搜索数据116可以标识例如与资源相关联的流行性和/或排序信息、与资源相关联的搜索倾向等等。搜索数据116的这些和其它方面可以被用来生成用来在基于房间的计算环境中显示的广告126,并且可以被与房间数据124一起存储。
可以生成基于房间的计算环境。基于房间的计算环境可以包括一个或多个建筑物、一个或多个建筑物中的一个或多个房间、一个或多个房间中的一个或多个项目、和/或与一个或多个项目相关联的一个或多个资源。描述基于房间的计算环境的数据、以及用于生成用于对基于房间的计算环境进行导航的一个或多个UI的数据,可以被与房间数据124一起存储、或者可以被存储为房间数据124。可以根据需要指定与建筑物、房间、项目、和/或资源中的每个相关联的许可,并且可以根据需要将所述许可存储为房间数据124或者与房间数据124一起存储。
如果实体访问基于房间的计算环境,则房间引擎118可以被配置为识别该访问。房间引擎118还被配置为验证该实体,以确定对基于房间的计算环境的内容的访问权限,生成基于房间的计算环境的内容(包括广告126和/或与基于房间的计算环境相关联的其它信息),并且如果合适的话将该环境表现给该实体。将参考图2-4C更详细地例示和描述用于生成并表现基于房间的计算环境的示例方法、以及用于表现基于房间的计算环境的示例UI。
图1例示了一个服务器计算机102、一个网络104、一个SN服务器108、一个搜索引擎114、一个房间引擎118、和一个客户端128。然而,应理解,操作环境100的一些实现方式包括多个服务器计算机102、多个网络104、多个SN服务器108、多个搜索引擎114、多个房间引擎118、和/或多个客户端128。因此,所例示的实施例应被理解为示例,并且不应以任何方式被解释为限制。
现在转到图2,将详细描述用于生成基于房间的计算环境的房间的方法200的各方面。应理解,这里公开的方法的操作不一定按照任何特定顺序提出,并且按照替代顺序的一些操作或所有操作的性能是可能的且预期的。已经为了容易描述和例示而以图示顺序提出了操作,但不用于以任何方式限制本公开的目的。可以添加操作、省略操作、和/或同时执行操作,而不偏离所附权利要求的范围。
还应理解,所例示的方法可以在任何时间结束,并且不需要以它们的相应整体被执行。方法的一些或所有操作、和/或基本等同的操作可以通过在计算机存储介质上包括的计算机可读指令(如这里所定义的)的运行而被执行。如在说明书和权利要求书中所使用的,术语“计算机可读指令”及其变形在这里被广义地使用,以便包括例程、应用、应用模块、程序模块、程序、组件、数据结构、算法等。计算机可读指令可以在各种系统配置上实现,所述各种系统配置包括单处理器或多处理器系统、微型计算机、大型计算机、个人计算机、手持计算设备、基于微处理器的可编程的消费电子装置、其组合等等。
因此,应理解,这里描述的逻辑操作被实现为(1)计算机实现的动作的序列、或在计算系统上运行的程序模块序列,和/或(2)计算系统内互联的机器逻辑电路或电路模块。实现方式是取决于计算系统的性能和其它要求的选择问题。相应地,这里描述的逻辑操作被分别称为状态、操作、结构设备、动作、或模块。这些状态、操作、结构设备、动作、和模块可以以软件、固件、专用数字逻辑电路、及其组合来实现。
为了例示和描述本公开的构思,方法200被描述为由房间引擎118通过运行一个或多个应用(诸如例如房间应用120和/或广告应用122)而执行。应理解,该实施例是示例性的,并且不应以任何方式被视为限制。具体地,一个或多个附加的或替代的设备可以运行这些和/或其它应用,而没有偏离本公开的范围。
方法200在操作202开始,其中房间引擎118创建房间。如上面所解释的,房间可以包括资源的类别。尽管在图2中未描述和/或例示,应理解,依据这里的公开,也可以依据这里公开的构思和技术来创建建筑物,房间,项目,和/或资源的其它划分、子划分、类别、子类别等。这样,所例示的实施例(其中例示并描述了房间的创建)应被理解为公开的示例,并且不应以任何方式被解释为限制。
根据一些实施例,房间引擎118可以接收指定房间的创建的输入。该输入可以是从用户、设备、或另一实体接收的。该输入可以经由房间引擎118提供的一个或多个用户界面或API而被接收。例如,房间引擎118可以运行房间应用120以便提供经由其接收与房间的创建相对应的输入的界面。用户例如可以访问房间引擎118,并创建新的“办公室”房间。如上面所解释的,办公室房间可以被创建为与房间类别相对应的房间建筑物的一部分、和/或独立于类别或其它划分。
方法200从操作202前进到操作204,其中一个或多个资源被与在操作202中创建的房间相关联。如上面所提到的,“资源”可以包括应用、服务、文件、以及与以下各项相关联或者由之生成的数据:应用、服务、网页、网站、文件、应用数据、搜索数据、和/或可以由客户端128和/或其它实体消耗或使用的其它信息。还应从这里的公开理解,将资源与房间相关联可以包括标识、生成、和/或存储指定可以如何访问资源的信息。
根据各个实施例,信息包括一个或多个到网页、文件、应用和/或其它资源的网络链接。用于访问资源的其它信息可以包括资源的名称、与资源相关联的硬件和/或软件组件、等等。因此,信息可以包括例如网络链接(诸如用于访问资源的URL)和/或指定容纳该资源的硬件组件的数据。指定如何访问资源的信息的以上示例是示例性的,并且不应以任何方式被解释为限制。
该方法200从操作204前进到操作206,其中房间引擎118取得与资源相关联的数据。所取得的数据可以包括但不限于搜索数据116、与资源相关联的上下文数据、在特定时间(诸如在资源被添加到基于房间的计算环境时)与资源或客户端128相关联的位置数据、与资源相关联的广告信息、与资源相关联的排序信息、与资源相关联的使用信息、和/或其它数据。例如,搜索数据116可以包括与资源相关联的搜索历史,其中,搜索历史揭示通常导致资源显示的搜索项目、已经明确地对于我的名字而搜索资源的次数、到资源的链接等等。这些和其它类型的搜索数据116可以被用来确定资源相对于特定询问或其它活动的相关性,以及确定资源在特定搜索或活动场景下的流行性。
如上面所提到的,还可以存储与资源相关联的位置信息。在一些实施例中,在资源被添加到基于房间的计算环境时客户端128和/或另一设备的位置可以与该资源相关联。因此,如参考图4A-4C将更清楚理解的,例如在从现实世界的家庭办公室搜索时被添加到基于房间的计算环境的资源可以被分类为“家庭-办公室”类别,并且在家庭-办公室房间中被图形显示。对于位置信息的其它使用是可能的且预期的。
广告和/或排序信息可以包括与资源相关联的广告126、和/或与广告126和/或资源相关联的排序或投放信息。因此,例如广告和/或排序信息可以指示资源如何被排序、和/或与该资源相关联的任何广告节目(如果有的话)。该信息可以在表现基于房间的计算环境时被使用,如这里更详细地公开的。
方法200从操作206前进到操作208,其中,房间引擎118确定附加的资源是否要与房间相关联。如果房间引擎118确定附加的资源是否要与房间相关联,则方法200返回操作204,其中资源与房间相关联,并继续返回操作206,其中取得与资源相关联的数据。方法200再次前进到操作208,其中房间引擎118再次确定是否有更多资源要被添加到房间。如果房间引擎118在操作208的任何迭代中确定没有附加资源要与房间相关联,则方法200前进到操作210。
在操作210,房间引擎设置与该房间相关联的许可。具体地,用户或其它实体可以指定对于该房间的访问控制。如这里所解释的,访问控制可以包括例如口令或其它验证机制、钥匙、令牌、cookie、其组合等等。可以自动地生成和/或基于用户输入而生成访问控制信息。具体地这里参考图4A-4C,更详细地描述访问控制机制的创建和使用。
方法200从操作210前进到操作212,其中,房间引擎118更新房间数据124。房间引擎118可以添加或修改房间数据124,以反映在操作202-210中创建和/或修改的房间、以及与该房间相关联的资源。此外,房间数据124可以被更新来反映在操作210中确定的许可和/或访问控制信息(如果有的话)。
方法200从操作210前进到操作214,其中,房间引擎118确定是否要创建另一房间。如果房间引擎118确定要创建另一房间,则方法200返回操作202,其中创建另一房间。对于新房间,可以以基本上与上面描述的方式类似的方式来重复操作202-212。如果房间引擎118确定不要创建另一房间,则方法前进到操作216。该方法在操作216结束。
如上面所提到的,方法200可以包括用于创建建筑物的附加步骤。根据一个预期实施例,方法200可以包括操作201(未例示),其可以被提供在操作202之前。在示例操作201中,房间引擎118接收创建建筑物的命令,并且前进到操作202-214,其中利用房间和与房间相关联的资源填充建筑物。在示例实施例中,方法200还包括操作215(未例示),其可以被提供在操作214之后。在示例操作215中,房间引擎118确定是否要创建另一建筑物,并且如果房间引擎118如此确定,则方法200返回示例操作201。在另一个实施例中,房间引擎118被配置为包括经由用于创建建筑物的分离的和/或不同的方法来在任意时刻创建建筑物。房间引擎118可以被用来使得所创建的建筑物被现有的或新创建的房间填充。因此,这些实施例应被认识为是示例性的,并且不应以任何方式被解释为限制。
类似地,如上面所提到的并且如这里参考图4A-4C更详细地描述的,房间可能被由固定装置、家具等(其可以对应于资源的类别、子类别、划分、子划分等)表示的项目填充。因此,方法200可以包括用于创建项目的附加步骤,并且/或者房间引擎118可以运行其它方法以提供用于创建房间项目和/或用于将项目与特定房间相关联的功能。在一个预期实施例中,方法200包括可以在操作202之后提供的操作203(未例示)。在示例操作203中,房间引擎118接收创建与房间相关联的项目的命令,并进行到操作204-208,其中将资源与在操作203中创建的项目相关联或将资源添加到在操作203中创建的项目。在示例实施例中,方法200还包括操作209,其中房间引擎118确定是否要创建另一项目。如果要创建另一项目,方法200返回操作203,并且创建新项目。如果没有,方法200如上所述地前进到操作210。
尽管参考图2没有例示或描述,但应理解,与操作210相关联的许可设置功能可以集中地和/或独立地提供给由房间引擎118创建的建筑物,房间,项目,和/或资源的其它类别、子类别、划分和/或子划分。因此,如下面将更详细地描述的,用于访问特定建筑物、房间、项目、和/或独立的资源等,用户或其它实体可以指定多个相同的、相似的、和/或不同层的安全和/或访问控制。应理解,根据需要,各个房间可以被编组在一起,并经过类似的或相同的访问控制策略。此外,可以要求试图访问特定建筑物、房间、项目、独立资源等的各方满足若干层的安全和/或访问控制功能。
现在转到图3,详细地描述根据示例实施例的用于提供对基于房间的计算环境的访问的方法300。为了例示而非限制的目的,将方法300描述为由房间引擎118执行。应理解,该实施例是示例性的,并且不应以任何方式被解释为限制。可以使用其它设备和/或应用来生成基于房间的计算环境,而没有偏离权利要求的范围。
方法300在操作302开始,其中基于房间的计算环境被访问。在一些实施例中,基于房间的计算环境可以经由对基于房间的计算环境的一个或多个房间的访问而被访问。根据一些实施例,经由房间引擎118访问基于房间的计算环境。这样,房间引擎118可以被配置为检测基于房间的计算环境何时被访问,但是不一定是这种情况。在其它实施例中,基于在房间引擎118处存储的或房间引擎118访问的房间数据124生成基于房间的计算环境,因此可以基于对房间数据124的访问而确定访问。应理解,用于识别对基于房间的计算环境的访问的这些方法是示例性的,并且不应以任何方式被解释为限制。
方法300从操作302前进到操作304,其中,房间引擎118确定在操作302中访问的基于房间的计算环境是否经过访问控制约束。如上面提到的,用户或其它实体可以为基于房间的计算环境的各个组件(诸如建筑物、房间、项目等等)指定一个或多个访问控制机制。类似地,一个或多个访问控制机制可以包括例如口令、令牌、钥匙、认证、和/或其它验证机制。因此,操作304可以包括房间引擎118确定是否有任何访问控制与基于房间的计算环境相关联。如果房间引擎118确定访问控制机制与基于房间的计算环境相关联,则方法300前进到操作306。
在操作306,房间引擎118验证访问基于房间的计算环境的实体。根据各个实施例,房间引擎118被配置为以各种方式与该实体交互,以便提供房间引擎118的验证功能。例如,在一些实施例中,房间引擎118生成用于向该实体表现登录窗口或表的UI。UI可以向该实体提示用于获得对基于房间的计算环境的访问的用户ID、口令、和/或其它信息。
在其它实施例中,房间引擎118向该实体提示对于基于房间的计算环境、和/或其组件(诸如建筑物、房间、项目、等等)的“钥匙”。“钥匙”的功能可以利用访问码、令牌和/或其它验证方式来提供。在其它实施例中,房间引擎118至少部分地基于与该实体相关联的一个或多个设备标识符、与房间相关联的一个或多个访问列表、和/或其它信息来确定该实体是否有资格访问基于房间的计算环境。应理解,上面的验证方法是示例性的,附加的、替代的、和/或这些和其它验证方法的组合是可能的且预期的。
方法300从操作306或从操作304(如果房间引擎118确定未约束对基于房间的计算环境的访问)前进到操作308,其中,房间引擎确定基于房间的计算环境的内容。根据各个实施例,房间引擎118访问房间数据124,并确定应将基于房间的计算环境的什么元素表现给该实体。如果基于房间的计算环境的任何组件都经过访问控制,则房间引擎118可以对房间数据124应用访问控制策略,以便将所表现的房间数据124仅局限于访问基于房间的计算环境的实体有权力观看的数据。
因此,如果两个用户访问相同的房间数据124,但用户1有资格访问例如家庭建筑物的家庭办公室,而用户2没有资格观看家庭建筑物的家庭办公室,房间引擎118可以在向用户2表现基于房间的计算环境之前忽略与家庭办公室相对应的房间数据124,而在向用户1表现基于房间的计算环境时可以包括与家庭办公室相对应的房间数据124。该示例例示了如何可以基于访问控制权限来改变基于房间的计算环境的内容,但是不应以任何方式被解释为限制。
此外,应理解,取决于与基于房间的计算环境相关联的安全策略,未能适当地与房间引擎118验证的用户可能或可能不知道这种失败。在一些实施例中,仍向未能适当地验证的用户表现基于房间的计算环境,但从被表现给该实体的基于房间的计算环境中省略基于房间的计算环境中的如下组件:对那些组件的访问由一个或多个策略约束。这样,实体不能知道验证已经失败,并且因此可能不会做出访问受约束信息的进一步尝试。在一些实施例中,该方法改进了基于房间的计算环境的整体安全性并且因此被采用,然而在其它实施例中,向所述实体表现了多于一次验证的能力和/或另外向所述实体通知验证已经失败。
确定基于房间的计算环境的环境内容进一步可以包括生成用于与基于房间的计算环境一起显示或者在基于房间的计算环境中显示的广告。例如,一些实体可能付费以使得在与特定用户相关联的基于房间的计算环境中显示广告126。另外或替代地,用户可能向广告实体销售基于房间的计算环境中的广告空间,以试图基于共享的基于房间的计算环境来生成收入。如这里所解释的,可以基于搜索数据116、SN数据112、与客户端128相关联的上下文信息、和/或其它信息来确定广告内容、广告内容的投放、以及广告内容的排序和生成。
在一些实施例中,对基于房间的计算环境中的特定建筑物、房间和/或项目的访问可以提示广告126的生成或显示。例如,如果实体访问基于房间的计算环境的厨房房间,则与厨房配件或用具、食品、杂货、和/或原料、烹饪书等相关的广告126可以以销售物品或服务的尝试而向实体显示。该示例是例示性的,并且不应以任何方式被解释为限制。因此,将理解访问特定建筑物、房间、和/或项目可以触发被认为与建筑物、房间、和/或项目相关的各种广告126的显示。
方法300从操作308前进到操作310,其中,房间引擎118基于在操作310中确定的内容而生成基于房间的计算环境。尽管在图3中没有具体例示或描述,从这里的公开应理解,生成基于房间的计算环境可以包括生成一个或多个建筑物,一个或多个房间,一个或多个项目,和/或资源的其它类别、子类别、划分、子划分等等。还应理解,生成基于房间的计算环境可以包括生成用于与房间数据124交互的一个或多个用户界面,如下面将参考图4A-4C更详细描述的。
方法300从操作310前进到操作312,其中,房间引擎118表现基于房间的计算环境。如依据操作308的上面描述将理解的,表现基于房间的计算环境可以包括向实体表现广告126。此外,表现基于房间的计算环境还可以包括向实体提示附加的登录或其它访问控制信息,如这里更详细地解释的。方法300在操作314结束。
现在转到图4A,将描述示出一个实施例中用于显示基于房间的计算环境的用户界面(UI)的各方面的用户界面图。具体地,图4A示出了根据这里表现的一个特定实现方式由客户端128运行的一个或多个OS 130和/或应用程序132生成的屏幕显示400A。应理解,图4A-4C中例示的UI图是示例性的。此外,应理解,与图4A-4C中例示的UI图相对应的数据可以由房间引擎118生成并由客户端128表现,但不一定是这种情况。
与图4A-4C例示的UI图相对应的数据也可以经由运行基于网络的应用而被生成:由客户端128运行、由远离客户端128的系统运行、和/或由客户端128和远离客户端128的系统的组合运行。类似地,如上面所解释的,UI可以由远离客户端128的系统运行,与所运行的UI相对应的数据可以被传送到客户端128或者可以对客户端128可用,以便在客户端128处呈现和显示。这样,可以在运行基于网络的操作系统和/或其它操作系统的客户端128处显示UI图。
图4A中示出的屏幕显示400A包括各种工具条和菜单项。应理解,所例示的工具条和菜单项仅仅是例示性的,并且另外的和/或替代的工具条和菜单项是可能的且预期的。在所例示的实施例中,屏幕显示400A包括可导航的显示402A。可导航的显示402A可以是基于如这里所描述的房间数据124和广告126而生成的视觉表示。在所例示的实施例中,可导航的显示402A显示用于访问如上所述的建筑物的UI控件404A-H(这里被集中称为一个或多个“UI控件404”)。根据示例实施例,对一个或多个UI控件404的选择导致客户端128例如通过显示与建筑物相关联的一个或多个房间而显示与建筑物相关联的附加细节。
在所例示的实施例中,可导航的显示402A包括用于访问图书馆建筑物的UI控件404A,其可以包含与研究、学习、阅读、和/或有时与物理图书馆相关联的其它活动相关的一个或多个房间。可导航的显示402A还包括用于访问电影院建筑的UI控件404B,其可以包含与诸如流传输视频应用之类的视频或电影、电影研究站点、电影院网站等相关的一个或多个房间,以及包含用于访问有时与物理电影院相关联的功能的其它资源。可导航的显示402A还包括用于访问办公室建筑物的UI控件404C,其可以包含与用户的商务(诸如商务网站、商务工具和/或应用、商务银行信息、内部网站点等)以及用于访问有时与商务相关联的功能的其它资源相关的一个或多个房间。
可导航的显示402A还包括用于访问家庭建筑物的UI控件404D,其可以包含与用户的个人使用(诸如购物站点、个人财务站点、新站点、个人银行应用、通信应用和站点、电子邮件服务门户网站、社交联网访问站点或应用、和/或与用户或其它实体的个人使用相关联的其它资源或应用)相关的一个或多个房间。可导航的显示402A还包括用于访问康乐建筑物的UI控件404E,其可以包含与用户的康乐使用(诸如与业余爱好或兴趣相关的网站、诸如游戏等的应用、体育站点和/或流传输视频、和/或与康乐使用相关联的其它资源或应用)相关的一个或多个房间。
可导航的显示402A还包括用于访问广场建筑物的UI控件404F,其可以包含与购物和/或销售(诸如零售网站、产品预览、因特网购物站点、和/或有时与购物或零售相关联的其它资源或应用)相关的一个或多个房间。可导航的显示402A还包括用于访问其它建筑物的UI控件404G。应理解,所例示的可导航的显示402A和所例示的UI控件404是例示性的,并且不应以任何方式被解释为限制。
可导航的显示402A还包括广告空间406,其可以被用来显示广告(诸如例如这里描述的广告126)。应理解,广告空间406的大小、定向和定位是例示性的,广告可以显示在UI控件404上、可导航的显示上的其它空间中、在新的上拉的和/或下拉的窗口中、和/或屏幕显示400A上的任何地方。
可导航的显示402A还包括另一内容区域408,其可以被用来显示与基于房间的计算环境相关联或与基于房间的计算环境相关的任何期望内容,以及不与基于房间的计算环境相关联和/或不与基于房间的计算环境相关的内容。例如,其它内容区域408可以显示由搜索引擎112生成的搜索,其中搜索结果是基于建筑物或房间的内容、建筑物或房间的作者、与基于房间的计算环境相关联的一个或多个用户相关联的社交联网信息、和/或其它内容而生成的。在一些实施例中,创作基于房间的计算环境的用户配置其它内容区域408以显示期望内容或信息,诸如体育比分、新闻、用户信息等。应理解,内容的这些示例是例示性的,并且不应以任何方式被解释为限制。此外,应理解,其它内容区域408的大小、定向和定位是例示性的,其它配置是可能的。
现在转到图4B,将描述示出一个实施例中用于显示基于房间的计算环境的用户界面(UI)的附加方面的用户界面图。具体地,图4B示出了根据这里表现的一个特定实现方式由客户端128运行的OS 130和/或应用程序132生成的屏幕显示400B。在例示实施例中,屏幕显示400B显示可导航的显示402B,其显示与家庭建筑物相对应的房间。应理解,可导航的显示402B可以响应于对上面参考图4A描述的UI控件404D的选择而被显示,但不一定是这种情况。该实施例是例示性的,可导航的显示402B可以基于位置数据、设置、登录信息、钥匙等,响应于其它动作而显示和/或默认地显示。
可导航的显示402B包括 UI控件410A-G(下文中被集中称为“UI控件410”)。对UI控件410的选择可以导致客户端128显示与一个或多个房间相关联的信息。在所例示的实施例中,对UI控件410的选择导致客户端128显示与上面参考图4A描述的家庭建筑物相对应的一个或多个房间相关联的信息。该实施例是例示性的,并且不应以任何方式被解释为限制。
可导航的显示402B包括用于访问前门廊房间的UI控件410A。前门廊房间可以包括与该前门廊房间相关联的用户希望共享的关于他自己或她自己的任何信息,以及用户希望使得对访问该家庭建筑物的任何人可用的资源。在一些实施例中,前门廊房间包括与该家庭建筑物相关联的社交联网建档、联系信息、履历信息等等。根据各个实施例,前门廊房间可由任何用户和/或被允许访问基于房间的计算环境的用户访问。根据其它实施例,在用户可以观看前门廊房间的内容之前,要求验证。在一些实施例中,与前门廊房间相关联的一个或多个实体销售广告空间406,所述广告空间406可以在屏幕显示400B上的任何地方(包括但不限于前门廊房间)显示、或者在可导航的显示402B上的别处显示(如图4B所示)。
可导航的显示402B还包括用于访问办公室房间的UI控件410B。办公室房间可以包括用户使之与该办公室房间相关联的任何资源或信息。例如,办公室房间可以包括用于管理财务、支付账单、管理资产等的应用,以及到银行或金融机构、商务供应站点、私人文档和/或文件等的链接。可导航的显示402B还包括用于访问康乐房间的UI控件410C。康乐房间可以包括用户使之与该康乐房间相关联的任何资源或信息,诸如例如到体育或新闻站点、应用的链接,或到流传输音频、视频或其它多媒体、视频租赁站点、业余爱好站点或信息的链接等等。
可导航的显示402B还包括用于访问主卧室的UI控件410D。主卧室可以包括用户使之与主卧室相关联的任何资源和信息。例如,主卧室可以包括个人信息和/或用于访问个人信息的应用、图像观看或编辑站点或应用、个人文档和/或文件等。可导航的显示402B还包括用于访问茶水室的UI控件410E。茶水室可以包括用户使之与茶水室相关联的任何资源或信息,诸如例如到杂货购买站点的链接、到食品或杂货浏览和信息、购物和下订单站点、用于获得营养信息的应用或站点的链接等等。
可导航的显示402B还包括用于访问厨房的UI控件410F。厨房可以包括用户使之与厨房相关联的任何资源或信息,诸如例如对食谱或食谱站点的链接或应用,到与烹饪相关的流传输视频、厨房供应商店或网站、厨房产品浏览的链接等。可导航的显示402B还包括用于访问小孩房间的UI控件410G。小孩房间可以包括用户使之与小孩房间相关联的任何资源或信息,诸如例如到儿童游戏、教育应用、阅读站点的链接等等。上面的示例是例示性的,并且不应以任何方式被解释为限制。预期其它房间和/或资源类别,但是为了简要在这里不详细例示和/或描述其它房间和/或资源类别。
如图4B所例示的,房间可以通过走廊彼此联系,所述走廊还可以对应于房间。例如,对与走廊相对应的UI控件412的选择可以使得客户端128显示用户使得对于能访问走廊的任何人可用的资源或信息。更具体地,对走廊房间的访问可以受到访问控件(在图4B中示意性地例示为与前门414A相对应的UI控件414A)的限制。对UI控件414A的选择可以使得客户端128显示用于提示并接收口令或其它验证信息的表。如上面所解释的,与家庭建筑物相关联的用户可以与其它用户共享用于访问走廊和/或基于房间的计算环境的其它组件的钥匙。
所例示的房间建筑物包括表示与图4B中例示的其它房间相关联的其它门或访问控件的其它UI控件414B-C。如上面所解释的,与用户共享的钥匙可以允许用户访问与特定建筑物相关联的房间中的一些房间、所有房间或没有房间。这样,可以与用户共享用于使得用户能够访问特定建筑物的一个或多个房间的多个钥匙或其它访问控制信息。
可导航的显示还包括用于访问走廊中的运动检测器(“MD”)的UI控件416。在一些实施例中,UI控件416仅仅指示运动检测器功能与走廊相关联。更具体地,对走廊的任何访问,例如,成功地在前门处验证并由此访问走廊和/或经由走廊可访问的开放访问房间的任何用户,可以被报告给与房间和/或建筑物相关联的用户。该报告可以借助于即时消息、文本消息、电子邮件、新闻速递等。被授权的实体对UI控件416的选择可以向被授权的实体表现与运动检测器相关的选项,诸如将运动检测器打开或关闭、设置什么类型的用户触发运动检测器、运动检测器位于什么房间中等。在一些实施例中,运动检测器功能被用来提供走廊和/或运动检测器位于其中的其它房间的“命中计数器”功能。因此,根据需要,运动检测器可以被用来跟踪走廊中的流量。
可导航的显示还包括用于访问与特定房间或建筑物相关联的照相机(“CAM”)的UI控件418。在一些实施例中,UI控件418仅仅指示照相机功能与特定房间相关联。更具体地,照相机可以向被授权的实体提供信息,所述信息指示谁当前正在访问包括照相机功能等的房间。被授权的实体对UI控件418的选择可以向被授权的实体提出与照相机相关的选项,诸如将照相机打开或关闭,设置照相机功能报告什么用户或什么类型的用户、照相机功能应用于什么房间等。应理解,根据需要照相机和运动检测器的功能可以被组合到单一模块中。
如上面参考图4A所解释的,可以在图4B所例示的一个或多个房间中和/或在显示屏幕400B上的别处提供广告空间406,并且可以以任何期望的方式配置所述广告空间406。此外,应理解,可以针对每次点击和/或对与广告相关联的资源的其它访问等,向与房间相关联的用户付费以便允许显示与所述房间相关联的广告。应理解,上述房间、门、走廊、和与运动检测器和照相机相关联的功能全部都是示例性的,这些实施例例示这里公开的构思和技术中的一些。此外,应理解,如上面参考图3所解释的,可以基于各种访问控件,将所例示的资源、门、房间等中的一些、所有或都不显示给用户。例如,如果用户没有权力访问办公室房间,则可以从显示400B中省略办公室房间。替代地,可以显示与办公室相关联的门,并且可以与该门交互以便向被授权的实体(用户希望获得其对于访问办公室的授权)指示可以传递给被授权方以进行动作的指示。
现在返回图4C,将描述显示一个实施例中的用于基于房间的计算环境的用户界面(UI)的附加方面的用户界面图。具体地,图4C示出了根据这里表现的一个特定实现方式的由客户端128运行的OS 130和/或应用程序132生成的屏幕显示400C。在所例示的实施例中,根据示例实施例,屏幕显示400C显示与家庭建筑物的办公室房间相对应的可导航的显示402C。
应理解,可导航的显示402C可以响应于对与图4B中的家庭建筑物相对应的UI 410B的选择而被显示。该实施例是例示性的,可导航的显示402C可以响应于其它动作而被显示和/或默认地被显示。例如,在一些实施例中,可导航的显示402C响应于以下确定而被显示:确定用户正在从该办公室房间所关联的家庭办公室访问基于房间的计算环境。可以基于接近传感器(proximity sensors)、地理位置信息、全球定位系统(GPS)接收器或其它位置确定设备等等来确定位置。类似地,如上面所解释的,位置可以由一个或多个IP地址、MAC地址或其它设备标识符等来近似或确定。其它实施例是可能的且预期的。
如上面参考图1-4B所解释的,可导航的显示402C包括与一个或多个资源相对应的各个UI控件。例如,导航显示402C包括用于访问书架项目的UI控件420。在示例实施例中,书架项目被用户用来提供与这里描述的建筑物和/或房间相关联的各种资源的附加分类/子分类。例如,对UI控件420的选择可以使得客户端128显示文章、书、参考资料等,所述文章、书、参考资料等中的任一项或全部可以与办公室书架相关联。
可导航的显示402C还包括用于访问桌子项目的UI控件422。如上面关于图1所提到的,资源不仅可以与建筑物、房间和/或项目相关联,而且还可以与项目的组件相关联。在示例实施例中,桌子项目可以被用户用来提供与这里描述的建筑物和/或房间相关联(具体地,与桌子项目相关联)的各种资源的附加分类/子分类。例如,对UI控件422的选择可以使得客户端128显示与桌子相关联的所有资源,诸如财务信息、个人记录、文档等。在其它实施例中,对UI控件422的选择可以使得客户端128显示与该项目相关联的所有子项目。在所例示的实施例中,在访问桌子办公室房间时,默认地显示子项目。应理解,该实施例是示例性的。
在所例示的实施例中,桌子项目包括用于访问与桌子类别相关联的资源的各种子类别的UI控件424A-D。可导航的显示402C包括用于访问与桌子项目相关联的桌面的UI控件424A。对UI控件424A的选择可以使得客户端128显示与被授权访问办公室房间的所有用户共享的信息。例如,可以与获得对办公室房间的授权访问的所有用户共享家庭商务信息、个人和/或家庭商务联系信息等。
桌子项目还包括用于访问资源的文件柜子类别的UI控件424B。对UI控件424B的选择可以使得客户端128显示被分类在该文件柜子类别中的资源。在示例实施例中,税务记录、个人记录、商务记录、用于访问个人或商务信息的应用等等被子分类在文件柜子类别中,并且可经由对UI控件424B的选择而访问。应理解,对文件柜子类别的访问可能被限于在选择了UI控件424B之后成功地验证的用户,和/或拥有允许对基于房屋的计算环境的建筑物、房间或项目的不受限访问的钥匙的用户。在图4C中,这由在文件柜项目上例示的钥匙图标426来例示。应理解,其它指示是可能的且预期的。类似地,桌子项目包括用于访问桌子抽屉的UI控件424C-D,桌子抽屉可以包括被分类在桌子抽屉或锁定桌子抽屉类别的各种资源和/或信息。类似地,如上面所解释的,对资源的桌子抽屉子类别的访问可能要求验证。
桌子项目还包括用于访问资源的立体声设备子类别的UI控件428。对UI控件428的选择可以使得客户端128显示被分类在立体声设备子类别中的资源。在示例实施例中,流传输的音频、流传输的视频、视频或音频文件、口授文件等被子分类在立体声设备子类别中,并且可经由对UI控件428的选择而被访问。根据需要,用户可以在选择UI控件426时指定应播放的某种音乐。应理解,其它实施例是可能的且预期的。
如上面参考图4A-4B所解释的,广告空间406可以与在图4C中例示的一个或多个项目相关联地被提供,并且可以被以任何期望的方式配置。此外,应理解,可以针对每次点击或对与广告相关联的资源的访问等,向与房间或项目相关联的用户付费以便允许与房间或项目相关联地显示广告。应理解,所有上面描述的项目和子项目都是示例性的,这些实施例例示这里公开的构思和技术中的一些。此外,如上面提到的,可以基于各种访问控件将所例示的项目和/或子项目等中的一些、所有或都不(等)显示给用户。例如,如果用户没有权力访问资源的文件柜类别,则可以从显示400C中省略文件柜资源。
在一些实施例中,以三维用户界面来表现基于房间的计算环境。这些界面可以但不一定由极其逼真和/或身临其境的图形来提供。此外,可以在二维显示器上提供所述界面,以及/或者所述界面使用三维显示和观看技术。在一个预期实施例中,用户在城市或镇中进行虚拟穿行,并且到达各种建筑物。用户可以到达门以进入建筑物和/或表现他或她的身份(诸如钥匙或验证信息)以获得对建筑物的访问。房间和房间中的项目还可以被呈现来提供与房间和房间中的项目的逼真的和/或身临其境的交互。因此,将理解,可以在二维和三维中提供用户体验。
在三维中提供基于房间的计算环境还创建新的广告投放机会。例如,在一个实施例中,广告者可以购买房间的墙壁、房间墙壁上的海报等用于广告空间。在建筑物或房间中导航的用户可以看到对特定服务、公司、商店、资源等做广告的海报。在所述环境中可以与广告126交互,并且与广告126的交互可以提示另外的动作,诸如打开新的房间、到与广告者相关联的商店去等等。在一些实施例中,如果点击房间中的广告,则广告者提供对于受约束的房间等的钥匙。类似地,在一些实施例中,广告者提供对于房间(其通常是基于付费的房间)的免费钥匙,由此鼓励用户接受对房间的试用。在一些实施例中,免费钥匙在一段时间期间持续,而如果没有被用户接受或使用则在该段时间结束时被清除。
在另一实施例中,房间引擎118被配置为提供房间原型,和/或提供特定房间中和/或特定类型的房间中的默认对象。例如,用于啤酒制作的房间可以通过原型啤酒制作房间来提供。原型啤酒制作房间可以包括由房间引擎118基于各种准则和/或基于对房间主题的预期相关性而选择的资源。在一个实施例中,房间引擎118接收搜索数据116和/或访问搜索引擎114以便确定用于啤酒制作的最流行的资源。最流行的资源可以包括例如参考书或站点、用于计算自酿啤酒的各个方面(诸如利用率或国际辛酸单位(“IBU”))的计算器等等。还可以基于付费广告和/或排序节目来选择默认资源,其中应用开发者或网站创作者付费以使他们的资源或其它内容包括在默认房间中。这些示例是例示性的,并且不应以任何方式被解释为限制。
如上面所解释的,房间引擎118被配置为使用位置数据来改变房间数据124和/或房间内容的表现。在一些实施例中,房间引擎118使用位置数据来改变被表现给用户用于与房间交互的UI。例如,房间引擎118可以确定用户正在利用手机电话或其它便携式计算设备访问基于房间的计算环境。响应于作出此确定,房间引擎118可以生成UI覆盖并使得该UI覆盖可用于便携式设备。因此,房间引擎118可以允许便携式设备以修改的形式(被定制以在便携式设备上显示)观看该基于房间的计算环境。
在另一实施例中,UI覆盖被配置为覆盖在利用便携式设备的照相机拍摄的实时图像上。因此,例如,用户可以被提示接近商店中墙壁上的海报。在一些实施例中,海报可以包括智能标签、2D条形码、和/或可以被扫描或输入到便携式设备中并被用来访问诸如上面描述的UI覆盖的其它信息。一旦在便携式设备处接收到UI覆盖,可以将其覆盖在照相机图像上并由此可以被用来提供例如用于在商店中导航的地图、关于销售或优惠券的信息、用于改进购物体验的应用或工具、用于调出(page)商店的关联物的工具等等。由于在标签或来自商店中的显示的其它信息被输入或被扫描时用户的位置是已知的,因此可以提供基于位置的UI覆盖,其包括用于对商店进行导航的可视线索。这些示例是例示性的,并且不应被以任何方式解释为限制。
在一些实施例中,可以为建筑物、房间、和/或项目设定版本,以及/或者可以以多种版本提供建筑物、房间、和/或项目。因此,用户可以访问建筑物、房间、项目等等当前或过去版本。当前和/或过去版本的使用可以被追踪,并且被用来影响与对应版本和/或各种版本上的房间相关联的排序。在一些实施例中,新版本的房间可以是为付费而被提供的、和/或与溢价广告空间相关联,而老版本可以是免费或以降低的价格而提供的、和/或与低于溢价广告空间相关联。
如上面所解释的,关于在房间中包括什么资源的、和/或如何排序房间的确定,可以完全地或部分地基于房间和/或与房间相关联的资源的调出(page)排序而被确定。在一种实现方式中,调出排序也被用来从可用资源和/或房间编译超级房间。房间引擎118被配置为标识排序最高的资源和/或房间,并且将最流行的房间和/或资源编译为超级房间,所述超级房间被预期为与搜索房间的用户和/或针对与超级房间相关联的主题的搜索结果极其相关。由于在超级房间中包括的资源的预期流量和/或使用,超级房间中的广告空间可以被以溢价提供,然而不一定是这种情况。应理解,对于超级房间的其它使用、以及对于超级房间和在超级房间中的其它排序和广告方案是可能的且预期的。
尽管上面的描述已经描述了建筑物、房间和项目,应理解,资源类别的其它划分是可能的且预期的。在一个预期实施例中,类别涉及汽车的部件,诸如乘客室、引擎、储物箱、和行李箱。可以向用于访问车辆的用户提供钥匙,根据需要包括车辆的任何锁住的舱室。类似地,可以向用于仅访问车辆的门的实体提供“遥控钥匙(valet-key)”。因此,可以授予对车辆的一些部分的访问,而可以约束对车辆的其它部分的访问。
类似地,引擎可以对应于用于运行商务的逻辑,诸如数据库查询资源、雇员和/或客户数据等,而乘客室可以对应于所有用户可访问的资源,诸如下订单页、公司信息页等。因此,引擎室、乘客室、储物箱、和行李箱可以对应于房间,这些房间中的每个房间的特定方面可以被分类为项目或被存储为资源。该示例是例示性的,并且不应以任何方式被解释为限制。
尽管在这里没有详细描述,还应理解,基于房间的计算环境可以被用来显示不一定直接与正在打开或显示的特定房间、建筑物、项目等相关的外部信息。因此,例如,基于房间的计算环境可以被扩展为以透视图来显示信息,或者另外显示补充信息。在一些实施例中,例如,天气信息是通过基于房间的计算环境的窗口可见的。类似地,社交网络状态、电子邮件和/或消息信息、新闻、股票报价等可以在基于房间的计算环境中显示。如在权利要求中所使用的,术语“外部信息”被用来指代不一定直接与特定建筑物、房间或项目相关的、但是基于房间的计算环境的用户感兴趣的信息。在一个预期实施例中,外部信息被显示在房间的墙壁上、在房间中桌子项目的桌面上、在建筑物的墙壁上、或者在基于房间的计算环境中的别处。应理解,上面提供的示例是例示性的,并且不应以任何方式被解释为限制。
图5例示了能够运行这里描述的用于提供基于房间的计算环境的软件组件的设备的示例计算机构架500。因此,图5所例示的计算机构架500例示了服务器计算机、移动电话、PDA、智能电话、服务器计算机、桌面型计算机、上网本型计算机、平板型计算机、和/或膝上型计算机的架构,例如,房间引擎118。可以利用计算机架构500运行这里提出的软件组件的任何方面。
图5所例示的计算机架构500包括中央处理单元502(“CPU”)、系统存储器504(包括随机存取存储器506(“RAM”)、只读存储器508(“ROM”))、以及将存储器504与CPU 502耦接的系统总线510。在ROM 508中存储包含基本例程的基本输入/输出系统,所述基本例程有助于诸如在启动期间在计算机架构500内的各元件之间传递信息。计算机架构500还包括用于存储操作系统514、房间应用120、广告应用122、和/或其它应用(未例示)的大容量存储设备512。大容量存储设备512还可以存储房间数据124和/或其它数据(未例示)。
大容量存储设备512通过与总线510连接的大容量存储控制器(未示出)而与CPU 502连接。大容量存储设备512及其相关联的计算机可读介质提供用于计算机架构500的非易失性存储装置。尽管这里包含的计算机可读介质的描述指大容量存储设备(诸如硬盘或CD-ROM驱动器),但是本领域技术人员应理解,计算机可读介质可以是计算机架构500可访问的任何可用计算机存储介质。
借助于示例而非限制,计算机可读存储介质可以包括以任何方法或技术实现的用于存储信息(诸如计算机可读指令、数据结构、程序模块或其它数据)的易失性和非易失性、可移动和不可移动介质。例如,计算机可读介质包括但不限于RAM、ROM、EPROM、EEPROM、闪存或其它固态存储器技术、CD-ROM、数字多用途盘(“DVD”)、HD-DVD、蓝光、或其它光学存储装置、盒式磁带、磁带、磁盘存储装置或其它磁性存储设备、或者可以用来存储期望信息并且可以被计算机架构500访问的任何其它介质。为了该说明书和权利要求书的目的,术语“计算机可读存储介质”及其变形不包括通信介质。
根据各个实施例,计算机架构500可以在使用通过诸如网络104之类的网络到远程计算机的逻辑连接的联网环境下操作。计算机架构500可以通过与总线510连接的网络接口单元516与网络104连接。应理解,网络接口单元516还可以被用来与其它类型的网络和远程计算机系统(例如,客户端128)连接。计算机架构500还可以包括用于接收和处理来自多个其它设备(包括键盘、鼠标、或电子指示笔(图5中未示出))的输入的输入/输出控制器518。类似地,输入/输出控制器518可以向显示屏幕、打印机或其它类型的输出设备(图5中也未示出)提供输出。
应理解,这里描述的软件组件在被加载到CPU 502中并被运行时,可以将来自通用计算系统的CPU 502和全部计算机架构500转换为被定制来便利这里提出的功能的专用计算系统。CPU 502可以从任何数量的晶体管或其它的分立电路元件来构造,其可以单独地或集中地假设任何数量的状态。更具体地,CPU 502可以响应于在这里公开的软件模块内包含的可运行指令而操作为有限状态机。这些计算机可运行指令通过指定CPU 502如何在状态之间切换可以转换CPU 502,由此转换构成CPU 502的晶体管或其它分立硬件元件。
编码这里提出的软件模块还可以转换这里提出的计算机可读介质的物理结构。在该描述的不同实现方式中,物理结构的具体转换可以取决于各种因素。这些因素的示例可以包括但不限于被用来实现计算机可读介质的技术、计算机可读介质被特征化为主存储装置还是辅存储装置等等。例如,如果计算机可读介质被实现为基于半导体的存储器,则通过转换半导体存储器的物理状态,这里公开的软件可以被编码在计算机可读介质上。例如,软件可以转换构成半导体存储器的晶体管、电容器、或其它分立电路元件的状态。软件还可以转换这些组件的物理状态以便在其上存储数据。
作为另一示例,可以使用磁或光技术来实现这里公开的计算机可读介质。在这样的实现方式中,当将这里提出的软件编码在磁或光介质中时,所述软件可以转换磁或光介质的物理状态。这些转换可以包括改变给定磁性介质内特定位置的磁特性。这些转换还可以包括改变给定光学介质内特定位置的物理特征或特性,以便改变这些位置的光学特性。在不偏离本描述的范围和精神的情况下,可以有物理介质的其它转换,上面提供的示例仅仅为了便利本讨论。
依据上述内容,应理解,为了存储和运行这里提出的软件组件,在计算机架构500中发生许多类型的物理转换。还应理解,计算机架构500可以包括其它类型的计算设备,包括手持计算机、嵌入式计算机系统、个人数字助理、以及本领域技术人员已知的其它类型的计算设备。还预期,计算机架构500可以不包括图5所示的所有组件,可以包括在图5中没有明确地示出的其它组件,或者可以利用与图5所示的架构完全不同的架构。
基于以上内容,应理解,这里已经公开了用于提供和使用基于房间的计算环境的技术。尽管已经以专用于计算机结构特征、方法、和转换性动作、特定计算机器、以及计算机可读介质的语言描述了这里提出的主题,但是将理解所附权利要求中定义的发明不一定限于这里描述的特定特征、动作或介质。相反,特定特征、动作和介质被公开为实现权利要求的示例形式。
仅仅借助于例示提供了上面描述的主题,并且上面描述的主题不应被解释为限制。在不遵循所例示和描述的示例实施例和应用的情况下,以及在不偏离本发明的真正精神和范围(这在所附权利要求书中提出)的情况下,可以对这里描述的主题作出各种修改和改变。

Claims (11)

1.一种用于提供基于房间的计算环境的计算机实现的方法,该计算机实现的方法包括执行计算机实现的操作用于:
向房间引擎(118)提交房间创建数据,该房间包括资源(106,110,116)的类别,其中提交房间创建数据造成房间引擎(118)创建房间;
向房间添加资源(106,110,116),其中,向房间添加资源造成房间引擎(118)取得与该资源相关联的数据(116,112);以及
向房间引擎(118)提交许可数据,该许可数据对应于与该房间相关联的许可,其中房间引擎(118)进一步被配置为响应于接收许可数据而生成房间数据(124),其包括标识资源(106,110,116)的数据、以及标识与该房间相对应的许可的数据。
2.如权利要求1所述的方法,其中,设置许可包括标识访问该房间所需的访问控制机制。
3.如权利要求1所述的方法,还包括向房间引擎提交建筑物创建数据,其中,响应于接收建筑物创建数据,该房间引擎被配置为:
创建一个或多个建筑物,每个建筑物包括房间的类别,并且
至少部分地基于确定与该房间相关联的类别并将该房间与对应于所确定的类别的建筑物相关联,而将该房间与所述建筑物中的一个或多个相关联。
4.如权利要求1所述的方法,还包括:向该房间引擎提交位置数据,所述位置数据包括标识与在房间创建数据被提交时与客户端相关联的地理位置的信息。
5.如权利要求1所述的方法,其中,该房间引擎被配置为:
检测实体对基于房间的计算环境的访问;
确定对基于房间的计算环境的访问是否受到约束;
响应于确定对基于房间的计算环境的访问受到约束,验证该实体;
通过访问房间数据而确定基于房间的计算环境的内容,其中,基于房间的计算环境的内容至少部分地基于该实体是否成功地验证而改变,并且其中确定基于房间的计算环境的内容包括生成用于与房间数据一起显示的广告;以及
表现基于房间的计算环境,其中,表现基于房间的计算环境包括经由运行基于网络的操作系统的计算机而生成用于对基于房间的计算环境进行导航的用户界面,该用户界面包括:
用于访问一个或多个资源的一个或多个用户界面控件,以及
用于显示所生成的广告的广告空间。
6.一种计算机实现的方法,包括:
创建一个或多个房间,所述一个或多个房间包括资源(106,110,116)的类别;
创建一个或多个建筑物,所述一个或多个建筑物包括房间的类别;
向所述一个或多个建筑物添加房间;
向所述一个或多个房间添加资源(106,110,116);
取得与该资源相关联的数据(116,112),该数据包括社交联网数据(112)和搜索数据(116);
设置与所述一个或多个建筑物相对应的许可,其中,设置许可包括标识访问所述一个或多个建筑物所需的访问控制机制;
设置与所述一个或多个房间相对应的许可,其中,设置许可包括标识访问所述一个或多个房间所需的访问控制机制;
生成房间数据(124),其包括标识资源(106,110,116)的数据、标识与所述一个或多个房间相对应的许可的数据、以及标识与所述一个或多个建筑物相对应的许可的数据;
生成与所述一个或多个房间相关的广告(126),广告(126)的内容至少部分地基于社交联网数据(112)和搜索数据(116);以及
将与广告相关的数据与对应于一个或多个建筑物和一个或多个房间的房间数据(124)一起存储。
7.如权利要求6所述的方法,还包括:
检测实体对基于房间的计算环境的访问;
确定对基于房间的计算环境的访问是否受到约束;
响应于确定对基于房间的计算环境的访问受到约束,验证该实体;
通过访问房间数据而确定基于房间的计算环境的内容,其中,基于房间的计算环境的内容至少部分地基于该实体是否成功地验证而改变;以及
表现基于房间的计算环境,其中,表现基于房间的计算环境包括经由运行基于网络的操作系统的计算机而生成用于对基于房间的计算环境进行导航的用户界面,该用户界面包括:
用于访问一个或多个建筑物的一个或多个用户界面控件,其中,对所述一个或多个用户界面控件的选择造成计算机显示用于访问一个或多个房间的一个或多个房间用户界面控件;以及
用于显示广告的广告空间。
8.如权利要求7所述的方法,还包括利用基于房间的计算环境表现外部信息。
9.如权利要求8所述的方法,还包括:
响应于接收到对一个或多个用户界面控件的选择,表现用于访问房间的一个或多个房间用户界面控件,所述房间用户界面控件中的至少一个包括门用户界面控件,用于提交验证信息以访问与所述房间用户界面控件中的至少一个相关联的资源。
10.如权利要求9所述的方法,还包括:
显示用于访问与所述一个或多个房间用户界面控件相关联的运动检测器或照相机中的至少一个相关的功能的出现用户界面控件。
11.一种计算机可读存储介质,在其上存储有计算机可读指令,在所述计算机可读指令被计算机运行时造成计算机实现权利要求1到10中的任一项所述的方法。
CN201110395090.5A 2010-12-02 2011-12-02 基于房间的计算环境 Active CN102609607B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/958,415 US20120143681A1 (en) 2010-12-02 2010-12-02 Room-based computing environments
US12/958415 2010-12-02

Publications (2)

Publication Number Publication Date
CN102609607A true CN102609607A (zh) 2012-07-25
CN102609607B CN102609607B (zh) 2016-09-28

Family

ID=46163112

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110395090.5A Active CN102609607B (zh) 2010-12-02 2011-12-02 基于房间的计算环境

Country Status (4)

Country Link
US (1) US20120143681A1 (zh)
EP (1) EP2646929A4 (zh)
CN (1) CN102609607B (zh)
WO (1) WO2012075388A2 (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103778538A (zh) * 2012-10-17 2014-05-07 李兴斌 一种家具仿真布局方法和系统
CN104125338A (zh) * 2014-07-23 2014-10-29 晶赞广告(上海)有限公司 一种手机端展示广告的方法
CN105339895A (zh) * 2013-03-15 2016-02-17 弗胡控股有限公司 平板计算机
CN106716969A (zh) * 2014-09-18 2017-05-24 英特尔公司 用于预先动作执行的技术
CN110573224A (zh) * 2017-04-25 2019-12-13 微软技术许可有限责任公司 三维环境创作和生成

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9319357B2 (en) 2009-01-15 2016-04-19 Social Communications Company Context based virtual area creation
US8392829B2 (en) * 2009-12-31 2013-03-05 Juniper Networks, Inc. Modular documentation using a playlist model
US20130145293A1 (en) * 2011-12-01 2013-06-06 Avaya Inc. Methods, apparatuses, and computer-readable media for providing availability metaphor(s) representing communications availability in an interactive map
US9210164B2 (en) 2012-01-08 2015-12-08 International Business Machines Corporation Confidential information access via social networking web site
US20140214618A1 (en) * 2013-01-30 2014-07-31 Wal-Mart Stores, Inc. In-store customer scan process including nutritional information
US8931070B2 (en) * 2013-03-29 2015-01-06 International Business Machines Corporation Authentication using three-dimensional structure
CN104266642B (zh) * 2014-10-16 2017-05-03 崔永锋 一种基于校园移动户内地图的可视化寝室床位显示导航方法
US10431002B2 (en) 2017-02-23 2019-10-01 International Business Machines Corporation Displaying data lineage using three dimensional virtual reality model

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070192409A1 (en) * 2002-07-23 2007-08-16 Amir Kleinstern Advertising based on location behavior
CN101079126A (zh) * 2006-12-26 2007-11-28 腾讯科技(深圳)有限公司 一种管理沟通记录的系统及方法
CN101517556A (zh) * 2006-07-14 2009-08-26 查查检索有限公司 用于共享和访问资源的方法和系统
US20090216636A1 (en) * 2007-09-28 2009-08-27 James Eliason Method of Promotion and Advertisement of a Website
US20090319913A1 (en) * 2008-06-23 2009-12-24 Microsoft Corporation Managing unified communications conferences via categories
CN101656625A (zh) * 2008-08-18 2010-02-24 中兴通讯股份有限公司 一种基于企业融合通讯的分布式策略管理方法

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5263158A (en) * 1990-02-15 1993-11-16 International Business Machines Corporation Method and system for variable authority level user access control in a distributed data processing system having multiple resource manager
US20010047250A1 (en) * 2000-02-10 2001-11-29 Schuller Joan A. Interactive decorating system
US20030227487A1 (en) * 2002-06-01 2003-12-11 Hugh Harlan M. Method and apparatus for creating and accessing associative data structures under a shared model of categories, rules, triggers and data relationship permissions
JP4676782B2 (ja) * 2004-04-28 2011-04-27 株式会社リコー 情報処理装置、操作許可データ生成方法、操作許可データ生成許否判定方法、操作許可データ生成プログラム、操作許否データ生成許否判定プログラム及び記録媒体
US7792967B2 (en) * 2006-07-14 2010-09-07 Chacha Search, Inc. Method and system for sharing and accessing resources
US20080161110A1 (en) * 2006-10-31 2008-07-03 Steven Mark Campbell In-room gaming
US20090307255A1 (en) * 2008-06-06 2009-12-10 Johnson Controls Technology Company Graphical management of building devices
US20100094891A1 (en) * 2008-10-13 2010-04-15 Bid Solve, Inc. Client-Server System for Multi-Resource Searching
US8190473B2 (en) * 2009-03-10 2012-05-29 Google Inc. Category similarities
US9705888B2 (en) * 2009-03-31 2017-07-11 Amazon Technologies, Inc. Managing security groups for data instances

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070192409A1 (en) * 2002-07-23 2007-08-16 Amir Kleinstern Advertising based on location behavior
CN101517556A (zh) * 2006-07-14 2009-08-26 查查检索有限公司 用于共享和访问资源的方法和系统
CN101079126A (zh) * 2006-12-26 2007-11-28 腾讯科技(深圳)有限公司 一种管理沟通记录的系统及方法
US20090216636A1 (en) * 2007-09-28 2009-08-27 James Eliason Method of Promotion and Advertisement of a Website
US20090319913A1 (en) * 2008-06-23 2009-12-24 Microsoft Corporation Managing unified communications conferences via categories
CN101656625A (zh) * 2008-08-18 2010-02-24 中兴通讯股份有限公司 一种基于企业融合通讯的分布式策略管理方法

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103778538A (zh) * 2012-10-17 2014-05-07 李兴斌 一种家具仿真布局方法和系统
CN105339895A (zh) * 2013-03-15 2016-02-17 弗胡控股有限公司 平板计算机
CN104125338A (zh) * 2014-07-23 2014-10-29 晶赞广告(上海)有限公司 一种手机端展示广告的方法
CN104125338B (zh) * 2014-07-23 2016-02-10 晶赞广告(上海)有限公司 一种手机端展示广告的方法
CN106716969A (zh) * 2014-09-18 2017-05-24 英特尔公司 用于预先动作执行的技术
US10362125B2 (en) 2014-09-18 2019-07-23 Intel Corporation Technologies for pre-action execution
CN110573224A (zh) * 2017-04-25 2019-12-13 微软技术许可有限责任公司 三维环境创作和生成
CN110573224B (zh) * 2017-04-25 2023-09-01 微软技术许可有限责任公司 三维环境创作和生成
US12008725B2 (en) 2017-04-25 2024-06-11 Microsoft Technology Licensing, Llc Container-based virtual camera rotation

Also Published As

Publication number Publication date
US20120143681A1 (en) 2012-06-07
EP2646929A4 (en) 2017-06-21
WO2012075388A2 (en) 2012-06-07
WO2012075388A3 (en) 2012-09-07
CN102609607B (zh) 2016-09-28
EP2646929A2 (en) 2013-10-09

Similar Documents

Publication Publication Date Title
CN102609607B (zh) 基于房间的计算环境
US10628504B2 (en) System of providing suggestions based on accessible and contextual information
RU2589872C2 (ru) Обеспечение возможности рекламодателям предлагать цену на абстрактные объекты
US10120877B2 (en) Broad and alternative category clustering of the same, similar or different categories in social/geo/promo link promotional data sets for end user display of interactive ad links, coupons, mobile coupons, promotions and sale of products, goods and services integrated with 3D spatial geomapping and mobile mapping and social networking
RU2611971C2 (ru) Показ действий и поставщиков, ассоциированных с субъектами
US9684724B2 (en) Organizing search history into collections
Glushko Seven contexts for service system design
US8307286B2 (en) Methods and systems for online video-based property commerce
US8170395B2 (en) Methods and systems for handling montage video data
CN105210061B (zh) 加标签的搜索结果维护
CN102270221B (zh) 用于搜索的相关任务和小任务
CN108834428A (zh) 用于个性化内容推荐的用户界面
EP3044702A2 (en) Amenity, special service and food/beverage search and purchase booking system
CN103930916B (zh) 用于提供与社交图内的所有物有关的信息的方法与系统
TW201030543A (en) System and method for autohyperlinking and navigation in URL based context queries
CN102314659A (zh) 广告与应用之间的交互
US20080046327A1 (en) Online Shop Interface Providing Fully Featured Websites Individualized And Published During A Simple Order Process
JP2015517133A (ja) 情報の対話型比較表示
US11704718B2 (en) Concurrent browsing interface
US10467237B1 (en) Object relationships and similarities based on user context
WO2021236267A1 (en) Shopping list and cart integration
US20100281104A1 (en) Creating secure social applications with extensible types
CN103959327A (zh) 使用社交图信息来组织并跟踪所有物
WO2013010243A1 (en) Room design system with social media interaction
Townsend et al. Building portals, intranets, and corporate web sites using Microsoft servers

Legal Events

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

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150611

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

Effective date of registration: 20150611

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