CN105378768B - 企业系统中的接近度和环境感知的移动工作空间 - Google Patents

企业系统中的接近度和环境感知的移动工作空间 Download PDF

Info

Publication number
CN105378768B
CN105378768B CN201480039444.4A CN201480039444A CN105378768B CN 105378768 B CN105378768 B CN 105378768B CN 201480039444 A CN201480039444 A CN 201480039444A CN 105378768 B CN105378768 B CN 105378768B
Authority
CN
China
Prior art keywords
computing device
data
capabilities
application
user
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.)
Active
Application number
CN201480039444.4A
Other languages
English (en)
Other versions
CN105378768A (zh
Inventor
乔·阿布·里耶伊利
约瑟夫·L·弗里德曼
乔治·莫驰洛夫
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.)
Citrix Systems Inc
Original Assignee
Citrix Systems Inc
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 Citrix Systems Inc filed Critical Citrix Systems Inc
Priority to CN202010231183.3A priority Critical patent/CN111311202A/zh
Publication of CN105378768A publication Critical patent/CN105378768A/zh
Application granted granted Critical
Publication of CN105378768B publication Critical patent/CN105378768B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • 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
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • 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
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/109Time management, e.g. calendars, reminders, meetings or time accounting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/04Processing captured monitoring data, e.g. for logfile generation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1069Session establishment or de-establishment
    • 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/04Protocols specially adapted for terminals or networks with limited capabilities; specially adapted for terminal portability
    • 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/50Network services
    • H04L67/52Network services specially adapted for the location of the user terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72448User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions
    • H04M1/72454User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions according to context-related or environment-related conditions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72448User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions
    • H04M1/72457User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions according to geographic location
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/14Systems for two-way working
    • H04N7/141Systems for two-way working between two video terminals, e.g. videophone
    • H04N7/147Communication arrangements, e.g. identifying the communication as a video-communication, intermediate storage of the signals
    • 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
    • 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/025Services making use of location information using location based information parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/30Services specially adapted for particular environments, situations or purposes
    • 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
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/14Systems for two-way working
    • H04N7/141Systems for two-way working between two video terminals, e.g. videophone
    • H04N7/142Constructional details of the terminal equipment, e.g. arrangements of the camera and the display
    • H04N2007/145Handheld terminals

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Strategic Management (AREA)
  • Data Mining & Analysis (AREA)
  • General Business, Economics & Management (AREA)
  • Operations Research (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • Physics & Mathematics (AREA)
  • Economics (AREA)
  • General Physics & Mathematics (AREA)
  • Marketing (AREA)
  • Environmental & Geological Engineering (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Information Transfer Between Computers (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Telephonic Communication Services (AREA)

Abstract

本文描述了用于使用基于位置接近度的移动工作空间环境来配置计算设备的方法和系统。移动计算设备确定设备靠近与企业系统有关的位置、另一个设备或个体处。移动计算设备然后可接收诸如一个或多个特定无线网络、企业应用和/或文档的与位置、设备或个体有关的移动工作空间环境,并可基于所接收的移动工作空间环境来配置该设备。本文描述了用于在多个设备之间传输并接收设备能力组、建立通信会话并在设备之间共享各种能力的其他方法和系统。还描述了用于使用企业系统中的移动计算设备来确定和访问企业系统资源的能力的其他额外的方法和系统。

Description

企业系统中的接近度和环境感知的移动工作空间
交叉引用相关申请
本专利申请要求2014年4月11日提交的美国专利申请序列号 14/251,016和2014年2月4日提交的美国专利申请序列号14/172,321,2013 年5月20日提交的美国临时专利申请序列号61/825,274的优先权,上述专利申请的每一个的题目为“Proximity and ContextAware Mobile Workspaces in Enterprise Systems”,其每一个的全部内容通过引用并入本文。
技术领域
本发明涉及企业系统中的接近度和环境感知的移动工作空间。
背景
移动设备,诸如智能电话、个人数字助理、平板计算机、其它类型的移动计算设备,正变得越来越流行。移动设备用于各种目的个人和商业设置中。此外,许多人具有多个计算设备,包含一个或多个移动设备。用户的不同设备可能位于不同的位置并可具有不同的物理设备能力。例如,用户可具有含标准键盘和鼠标接口的台式计算机、含触摸屏接口和语音识别能力的移动设备、含指纹扫描器接口的笔记本电脑等等。
包含移动设备的计算设备被广泛用于消费者世界和商业世界。计算设备的用户可能想让他们的设备是个人的并交互的并适合作为个人消费者设备和商业设备。此外,很多用户频繁地改变他们的物理位置和他们的工作环境,例如,在家、工作场所办公室、会议室、厂区外工作地点、计算环境和其他位置之间。当改变物理位置和/或工作环境时,用户可在不同设备、应用、安全区和网络之间转换,以便执行不同的个人任务和与工作有关的任务。
概述
下文呈现本文所述的各个方面的简要概述。该概述并不是广义的综述,亦非旨在确定关键或重要元素或描绘权利要求的范围。以下概述仅仅以简化形式呈现一些概念,作为对以下提供的更详细描述的介绍性前序。
为了克服以上描述的现有技术中的限制,以及克服将在阅读和理解本说明书时明显的其它限制,本文描述的方面针对使用与企业系统中的各种位置有关的移动工作空间环境(mobile workspace context)来配置移动计算设备。在某些示例中,移动计算设备可确定它位于靠近与企业系统有关的位置处。例如,移动计算设备可使用近场通信标签、全球定位系统(GPS) 接收机、蓝牙、WiFi或其他定位信标、设备相机、扫描仪和/或其他技术来确定设备靠近一个物理位置,例如,会议室或办公室、对象或设备;例如,打印机、投影仪或其他设备;或者员工或与企业系统有关的其他人员。移动计算设备然后可例如从企业服务器接收与位置、设备或个体有关的移动工作空间环境。在各种实施方式中,移动工作空间环境可包含与位置有关的一个或多个特定的无线网络、企业应用和/或特定的文档。然后可基于所接收的移动工作空间环境来配置移动计算设备。例如,移动计算设备可被配置成创建到与该位置相关联的无线网络的连接,或者可被配置成实现对与该位置有关的各种应用和/或特定文档的访问。
根据本公开的其他方面,第一计算设备可确定其位于靠近第二计算设备处。第一计算设备可向第二计算设备传输一组设备能力和/或可从第二计算设备接收一组设备能力。在传输和/或接收设备能力之后,持续通信会话可被建立在计算设备之间,且一个或多个设备能力可被共享在设备之间。在特定示例中,共享的能力可对应于设备的输入或输出能力,例如显示屏特征、连接的外围设备、麦克风、显示屏和其他设备能力。在一些实施方式中,可接收授权设备能力的单向或双向共享和/或识别将共享的一个或多个特定能力的用户输入。根据其他方面,可在同一时间窗口期间在三个或多个设备之间实施设备能力共享。
本公开的其他方面涉及到使用企业系统中的移动计算设备来确定和访问企业系统资源的能力。在各种示例中,移动计算设备可使用相机、扫描仪、近场通信数据阅读器等来捕获数据,并可使用所捕获的数据来识别特定的企业系统资源。例如,移动设备相机和光学特征识别能力可被用于识别与企业系统有关的诸如打印机、扫描仪或投影仪的设备。在另一个示例中,企业系统资源可对应于诸如办公室或会议室的位置或者识别与企业系统有关的特定个体的员工证件或办公室招牌。在确定企业系统资源之后,移动设备可检索并访问来自企业服务器的一组相关的能力。例如,如果企业系统资源是设备,移动设备可从企业服务器接收网络连接数据或者设备驱动器软件。在其他示例中,移动设备可接收并安排与企业系统资源有关的调度数据和/或一组能力或设备。
本发明的实施例还涉及以下几个方面:
1)一种方法,包括:
由移动计算设备确定所述移动计算设备位于靠近第一位置处;
由所述移动计算设备接收与所述第一位置有关的移动工作空间环境;以及
基于与所述第一位置有关的移动工作空间环境来配置所述移动计算设备。
2)根据项目1)所述的方法,其中,确定所述移动计算设备位于靠近所述第一位置处包括从近场通信标签接收数据。
3)根据项目1)所述的方法,其中,确定所述移动计算设备位于靠近所述第一位置处包括使用所述移动计算设备的全球定位系统(GPS)接收器来确定当前的位置。
4)根据项目1)所述的方法,其中,确定所述移动计算设备位于靠近所述第一位置处包括使用所述移动计算设备的扫描仪或相机来扫描或拍摄对象。
5)根据项目1)所述的方法,其中,接收与所述第一位置有关的所述移动工作空间环境包括接收第一无线网络的标识符,以及其中,配置所述移动计算设备包括使用所述标识符来建立与所述第一无线网络的连接。
6)根据项目1)所述的方法,其中,所述移动工作空间环境包括与所述第一位置有关的一个或多个企业应用,以及其中,配置所述移动计算设备包括配置所述移动计算设备上的客户端代理应用以允许对所述一个或多个企业应用的访问。
7)根据项目1)所述的方法,其中,与所述第一位置有关的所述移动工作空间环境包括一个或多个文档,以及其中,配置所述移动计算设备包括配置所述移动计算设备上的客户端代理应用以允许对所述一个或多个文档的访问。
8)根据项目1)所述的方法,其中,所述第一位置对应于工作场所环境中的办公室或会议室,并且其中,接收与所述办公室或会议室有关的所述移动工作空间环境包括:
访问与所述办公室或会议室有关的日程表或调度数据;
检索与所述办公室或会议室有关的当前会议数据;以及
基于所述当前会议数据确定一个或多个应用或文档。
9)根据项目1)所述的方法,其中,确定所述移动计算设备位于靠近所述第一位置处包括使用所述移动计算设备的信标或低功耗蓝牙(BLE) 接收器来确定当前的位置。
10)根据项目1)所述的方法,其中,接收与所述第一位置有关的所述移动工作空间环境包括接收第一企业设备或应用管理框架的标识符,以及其中,配置所述移动计算设备包括配置所述移动计算设备上的客户端代理应用以向所述第一企业设备或应用管理框架注册所述移动计算设备。
11)一种方法,包括:
由第一移动计算设备确定所述第一移动计算设备位于靠近第二计算设备处;
由所述第一移动计算设备向所述第二计算设备传输第一组设备能力;
由所述第一移动计算设备从所述第二计算设备接收第二组设备能力;
由所述第一移动计算设备建立与所述第二计算设备的持续的通信会话;以及
由所述第一移动计算设备经由所述持续的通信会话来与所述第二计算设备共享所述第一组设备能力或所述第二组设备能力中的至少一个。
12)根据项目11)所述的方法,还包括:
在所述第一移动计算设备处接收用户输入,所述用户输入从可用于在所述第一移动计算设备处共享的较大组设备能力中选择用于共享的所述第一组设备能力。
13)根据项目12)所述的方法,其中,在确定所述第一组移动计算设备位于靠近所述第二计算设备处之前,选择用于共享的所述第一组设备能力的所述用户输入被接收。
14)根据项目12)所述的方法,其中,在确定所述第一组移动计算设备位于靠近所述第二计算设备处之后,选择用于共享的所述第一组设备能力的所述用户输入被接收,以及其中,用于共享的所选择的第一组设备能力特定于与所述第二计算设备的所述持续的通信会话。
15)根据项目11)所述的方法,其中,所述持续的通信会话包括在所述第一移动计算设备和所述第二计算设备之间的双向共享通信会话,以及其中,所述共享包括:
在第一时间段内持续将数据传输到所述第二计算设备,所传输的数据对应于所述第一组设备能力中的第一设备能力;以及
在所述第一时间段内持续从所述第二计算设备接收数据,所接收的数据对应于所述第二组设备能力中的第二设备能力。
16)根据项目11)所述的方法,还包括:
在所述第一移动计算设备处接收用户输入,所述用户输入授权与所述第二计算设备的设备能力的单向共享,但不授权与所述第二计算设备的设备能力的双向共享,并且其中,所述共享包括根据所述用户输入的设备能力的单向共享会话。
17)根据项目11)所述的方法,还包括:
确定所述第一移动计算设备位于靠近第三计算设备处;
向所述第三计算设备传输所述第一组设备能力;
从所述第三计算设备接收第三组设备能力;以及
与所述第三计算设备建立第二持续通信会话,
其中,所述共享包括在同一时间段内使用所述持续通信会话与所述第二计算设备共享一个或多个设备能力并使用所述第二持续通信会话与所述第三计算设备共享一个或多个额外的设备能力。
18)根据项目11)所述的方法,其中,将所述第一组设备能力传输到所述第二计算设备包括传输识别所述第一移动计算设备的一个或多个输入或输出功能能力的数据,包含以下项的至少一个:识别所述第一移动计算设备上的显示屏的数量的数据;识别所述第一移动计算设备的显示屏的尺寸的数据;识别所述第一移动计算设备的触摸屏能力的数据;识别与所述第一移动计算设备连接的外围输入或输出设备的数据;识别所述第一移动计算设备的视频显示能力的数据;识别所述第一移动计算设备的相机能力的数据;识别所述第一移动计算设备的麦克风能力的数据;或者识别所述第一移动计算设备的语音识别能力的数据。
19)根据项目11)所述的方法,其中,将所述第一组设备能力传输到所述第二计算设备包括传输识别在所述第一移动计算设备处执行的一个或多个应用会话的数据,所述方法还包括:
确定所述一个或多个应用会话已经在所述第二计算设备处开始;以及
在所述第一计算设备处结束所述一个或多个应用会话。
20)根据项目19)所述的方法,其中,所述一个或多个应用会话是虚拟应用会话,以及其中,在所述第二计算设备处开始所述一个或多个应用会话包括配置所述第二计算设备上的客户端代理应用以允许对所述一个或多个虚拟应用会话的访问。
21)根据项目11)所述的方法,还包括:
在所述第一移动计算设备处接收第一用户输入;
在所述第一移动计算设备处通过所述持续通信会话从所述第二计算设备接收第二用户输入;以及
在所述第一移动计算设备处修改所接收的第一用户输入、所接收的第二用户输入或者是所接收的第一用户输入和所接收的第二用户输入两者。
22)根据项目21)所述的方法,还包括:
放弃所述第一用户输入的至少一部分或所述第二用户输入的至少一部分。
23)根据项目21)所述的方法,还包括:
根据所述第一组设备能力转换所述第二用户输入,其中,所述转换包括以下项的至少一个:将触摸事件转换成鼠标事件或反之亦然;将触摸事件转换成键盘事件或反之亦然;将声音数据转换成文字数据或反之亦然;或者将动作或方向事件转换成触摸事件或反之亦然。
结合下面更详细地公开的内容的益处,将理解这些和其它方面。
附图说明
可通过参照下面结合附图考虑的描述获得对本文描述的方面和其优势的更充分的理解,在附图中相似的参考数字表示相似的特征,且其中:
图1描述了可根据本文描述的一个或多个说明性方面来使用的说明性计算机系统架构。
图2描述了可根据本文描述的一个或多个说明性方面来使用的说明性远程访问系统架构。
图3描述了根据本文描述的一个或多个说明性方面的说明性企业移动性管理系统。
图4描述了根据本文描述的一个或多个说明性方面的另一个说明性企业移动性管理系统。
图5描述了根据本文描述的一个或多个说明性方面的用于客户端设备的客户端代理软件组件的系统架构。
图6是根据本文描述的一个或多个说明性方面示出基于与位置或接近度有关的环境来配置客户端设备的示例过程的流程图。
图7是根据本文描述的一个或多个说明性方面示出基于与位置或接近度有关的环境来配置客户端设备的示例过程的流程图。
图8A-8L是根据本文描述的一个或多个说明性方面的示例用户界面和相关附图,其用于将环境数据从NFC标签传输到移动客户端设备并基于该环境数据配置移动客户端上的客户端代理。
图9是根据本文描述的一个或多个说明性的方面示出在多个设备之间共享数据和能力的示例过程的流程图。
图10-11是根据本文描述的一个或多个说明性的方面示出用于在两个设备之间共享数据和能力的示例技术的图。
图12A-12I是根据本文描述的一个或多个说明性的方面的用于在多个设备之间共享数据和能力的用户界面截屏和相关图。
图13是根据本文所描述的一个或多个说明性方面示出由移动设备识别个体或访问与个体有关的特征或能力示例过程的流程图。
图14是示出根据本文描述的一个或多个说明性方面示出识别对象和访问与对象有关的特征或能力的示例技术的图。
图15A-C是示出根据本文描述的一个或多个说明性方面示出用于识别对象和访问与对象有关的特征或能力的示例用户界面截屏。
具体实施方式
在各个实施方案的下列描述中,参考了上面确认并形成各个实施方案的一部分的附图,并且其中以说明各个实施方案的方式示出,本文所描述的各方面可在各个实施方案中被实践。应当理解的是,可利用其他实施方案,并且在不脱离本文所描述的范围的情况下可做出结构和功能的修改。各种方面能够是其他实施方案并能够以各种不同的方式实践或执行。
作为更详细地描述的对主题的总介绍,本文描述的方面针对被配置成取决于所检测的位置或接近度来改变网络、应用、文档等的配置的接近度感知和环境感知设备。本文描述的其他方面针对例如通过广告和发现能力并将设备配对来与其他设备共享数据和能力的设备。设备可直接经由点对点通信和/或经由诸如云系统的企业系统来通信,从而使得可在单个应用中或单个计算会话中组合各设备的期望的能力。仍然其他的方面针对识别企业系统中的对象或其他实体(例如,公司域中的资源),例如,员工、办公室或会议室或者诸如计算机服务器或打印机的设备。可从各企业资源中检索与所识别的对象有关的特征和能力并可经由客户端设备上的诸如
Figure GDA0001029476110000091
的客户端代理应用提供给用户。
应当理解的是,本文所使用的短语和术语是出于描述的目的,并且不应被视为限制性的。更确切地说,本文所使用的短语和术语被给出它们最广泛的解释和意义。“包括”和“包含”及其变型的使用旨在包括下文中列出的项目及其等效物以及附加项目及其等效物。术语“安装”、“连接”、“耦合”、“定位”、“啮合”和类似术语的使用旨在包括直接和间接的安装、连接、耦合、定位和啮合。
计算体系结构
计算机软件、硬件和网络可用于多种不同的系统环境中,除了别的之外,包括单机、连网、远程访问(又叫做远程桌面)、虚拟化和/或基于云的环境。图1示出了系统架构和数据处理设备的一个示例,其被用于在单机环境和/或网络环境中执行本文描述的一个或多个说明性方面。各个网络节点103、105、107和109可经由诸如互联网的广域网(WAN)101进行互连。也可使用或者另选地使用其他网络,包括专用内部网、企业网、局域网(LAN)、城域网(MAN)、无线网络、个人网(PAN)等。网络101 用于说明的目的并且可以用更少或附加的计算机网络来代替。LAN可具有任何已知LAN拓扑结构中的一种或多种,并且可使用多种不同协议(诸如以太网)中的一种或多种。设备103、105、107、109和其他设备(未示出)可经由双绞线、同轴电缆、光纤、无线电波或其他通信媒介连接到一个或多个网络。
本文所使用以及附图中所描述的术语“网络”不仅指其中远程存储设备经由一个或多个通信路径耦合在一起的系统,还指有时可耦合到该类系统的具有存储能力的单机设备。因此,术语“网络”不仅包括“物理网络”还包括“内容网络”,其由单个实体引起的、驻留在所有的物理网络上的数据组成。
组件可包括数据服务器103、web服务器105和客户端计算机107、109。数据服务器103提供对数据库和控制软件的全面访问、控制和管理,用于执行本文描述的一个或多个说明性方面。数据服务器103可连接到web服务器105,其中用户通过该web服务器105根据请求与数据交互并获得数据。可选地,数据服务器103可充当网络服务器本身,并直接地连接到互联网。数据服务器103可通过网络101(例如,互联网)经由直接或间接连接或经由一些其他网络连接到web服务器105。用户可使用远程计算机 107、109与数据服务器103交互,如使用经由web服务器105托管的一个或多个对外公开的网站连接至数据服务器103的网络浏览器。客户端计算机107、109可用于与数据服务器合作以访问存储在其中的数据,或可用于其它目的。例如,如本领域中已知的,用户可使用互联网浏览器从客户端设备107访问web服务器105,或通过执行经由计算机网络(如互联网) 与web服务器105和/或数据服务器103通信的软件应用来访问web服务器105。
服务器和应用可被组合在相同的物理机器上,并且保留不同的虚拟或逻辑地址,或可驻留在不同的物理机器上。图1仅示出可以被使用的网络结构的一个示例,并且本领域中的技术人员应当理解,如在本文进一步所描述的,所使用的特定网络结构和数据处理设备可以改变,并且对于它们提供的功能来说是次要的。例如,通过web服务器105和数据服务器103 提供的服务可被组合在单一服务器上。
每个组件103、105、107、109可以是任何类型的已知计算机、服务器或数据处理设备。例如,数据服务器103可包括控制速率服务器103的总体操作的处理器111。数据服务器103还可包括RAM 113、ROM 115、网络接口117、输入/输出接口119(例如,键盘、鼠标、显示器、打印机等等),以及存储器121。I/O 119可包括用于读取、写入、显示和/或打印数据或文件的各种接口单元和驱动器。存储器121还可存储用于控制数据处理设备103的整体操作的操作系统软件123,用于指令数据服务器103 以执行本文描述的方面的控制逻辑125,以及提供辅助、支持、和/或其它可用于或不可用于与本文描述的方面结合使用的功能的其它应用软件 127。本文中,控制逻辑还可被称为数据服务器软件125。数据服务器软件的功能可指基于被编码到控制逻辑中的规则自动进行的操作或决定、通过用户将输入提供到系统中来手动进行的操作或决定和/或基于用户输入(例如,查询、数据更新等等)的自动处理的组合。
存储器121还可存储在本文描述的一个或多个方面的性能中使用的数据,包括第一数据库129和第二数据库131。在一些实施方案中,第一数据库可包括第二数据库(例如,作为分离的表、报告等)。即,该信息可存储在单个数据库中,或分离成不同的逻辑、虚拟或物理数据库,其取决于系统设计。设备105、107、109可以具有如关于设备103所述的相似或不同的结构。本领域技术人员应理解,如本文所述的数据处理设备103(或设备105、107、109)的功能可遍布多个数据处理设备,例如,以将处理负载分配到多个计算机、以基于地理位置、用户访问级别、服务质量(QoS) 等分开事务。
一个或多个方面可以在通过本文所描述的一个或多个计算机或其他设备执行的、诸如一个或多个程序模块中的计算机可用或可读数据和/或计算机可执行指令来体现。通常,程序模块包括例程、程序、对象、组件、数据结构等等,当被计算机或其他设备中的处理器执行时,该程序模块执行特定任务或实施特定抽象数据类型。该模块可用源代码编程语言编写,然后被编译用于执行,或可用脚本语言编写,诸如(但不限于)Javascript 或ActionScript。计算机可执行指令可被存储在诸如非易失性存储设备的计算机可读介质上。可利用任何适当的计算机可读存储介质,包括硬盘、 CD-ROM、光学存储设备、磁性存储设备和/或其任何组合。另外,可以用电磁波的形式在源和目的之间传递表示本文所描述的数据或事件的各种传输(非存储)介质,该电磁波通过诸如金属丝、光纤、和/或无线传输介质(例如,空气和/或空间)的信号-传导介质传播。本文所描述的各个方面可被体现为方法、数据处理系统或计算机程序产品。因此,可在软件、固件和/或硬件或诸如集成电路、现场可编程门阵列(FPGA)的硬件等效物等等中全部或部分地实施各种功能。特定的数据结构可用于更有效地执行本文所述的一个或多个方面,且预期这种数据结构在本文所述的计算机可执行指令和计算机可用数据的范围内。
进一步参考图2,可在远程访问环境中实现本文所述的一个或多个方面。图2描绘了示例性的系统架构,包括在说明性计算环境200中的通用计算设备201,其可根据本文所述的一个或多个说明性方面来使用。通用计算设备201可以被用作单服务器或多服务器桌面虚拟化系统(例如,远程访问或云系统)中的服务器206a,所述系统经配置提供用于客户端访问设备的虚拟机。通用计算设备201可具有用于控制服务器及其相关组件(包括随机存取存储器(RAM)205、只读存储器(ROM)207、输入/输出(I/O) 模块209和存储器215)的整体操作的处理器203。
I/O模块209可包括鼠标、键盘、触摸屏、扫描仪、光学阅读器和/或手写笔(或其它输入设备)(通用计算设备201的用户可通过这些输入设备提供输入),并且也可包括用于提供音频输出的扬声器和用于提供文本、视听和/或图形输出的视频显示设备中的一个或多个。软件可存储在存储器 215和/或其它存储中,以提供指令给处理器203用于将通用计算设备201 配置为专用计算设备,以便执行如本文所述的各种功能。例如,存储器215 可以存储由计算设备201使用的软件(诸如操作系统217、应用219和关联的数据库221)。
计算设备201可在支持连接到一个或多个远程计算机(诸如终端240 (也称为客户端设备))的网络化环境中运行。终端240可以是个人计算机、移动设备、笔记本计算机、平板计算机、或服务器,其包括以上描述的关于通用计算设备103或201的许多或全部元素。在图2中描绘的网络连接包括局域网(LAN)225和广域网(WAN)229,但还可包括其它网络。当用于LAN网络环境中时,计算设备201可通过网络接口或适配器223连接到LAN 225。当在WAN联网环境中使用时,计算设备201可包括调制解调器227或用于建立在WAN 229(诸如计算机网络230(例如,互联网))上的通信的其它广域网接口。将认识到的是,所示的网络连接是说明性的,且可使用在计算机之间建立通信链路的其它设备。计算设备 201和/或终端240还可为移动终端(例如,移动电话、智能电话、PDA、笔记本等等),其包括各种其他部件,诸如电池、扬声器和天线(未示出)。
本文描述的各方面也可以用许多其他通用或专用计算系统环境或配置来运行。可适合于结合本文所述的方面使用的其它计算系统、环境和/ 或配置的实例,包括,但不限于,个人计算机、服务器计算机、手持或笔记本设备、多处理器系统、基于微处理器的系统、机顶盒、可编程消费电子产品、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境,等等。
如图2所示,一个或多个客户端设备240可与一个或多个服务器 206a-206n(在本文中统称为“服务器206”)通信。在一个实施方案中,计算环境200可包括在服务器206和客户机240之间安装的网络设备。该网络设备可管理客户端/服务器连接,并在某些情况下可负载平衡多个后端服务器206之间的客户端连接。
在一些实施方案中,客户端机器240可指代单个客户端机器240或单组客户端机器240,而服务器206可指代单个服务器206或单组服务器206。在一个实施方式中,单个客户端机器240与一个以上的服务器206通信,而在另一实施方式中,单个服务器206与一个以上的客户端机器240通信。在又一实施方式中,单个客户端机器240与单个服务器206通信。
在一些实施方案中,可通过下列非穷举术语中的任何一个指代客户端机器240:客户端机器;客户端;客户端计算机;客户端设备;客户端计算设备;本地机器;远程机器;客户端节点;端点;或端点节点。在一些实施方案中,可通过下列非穷举术语中的任何一个指代服务器206:服务器;本地机器;远程机器;服务器群;或主机计算设备。
在一个实施方式中,客户端机器240可以是虚拟机。虚拟机可以是任何虚拟机,而在一些实施方案中虚拟机可以是由1型或2型的超级管理器所管理的任何虚拟机,例如,由Citrix Systems、IBM、VMware开发的超级管理器,或任何其它超级管理器。在一些方面中,虚拟机可由超级管理器管理,而在其它方面中,虚拟机可由在服务器206上执行的超级管理器或在客户端240上执行的超级管理器管理。
一些实施方案包括客户端设备240,其显示由在服务器206上远程执行的应用或由其它远程放置的机器上远程执行的应用生成的应用输出。在这些实施例中,客户端设备240可执行客户端代理程序或应用,以在应用窗口、浏览器、或其他输出窗口中显示输出。在一个实例中,应用是桌面,而在其它实例中应用是生成或呈现桌面的应用。桌面可包括为操作系统的实例提供用户界面的图形壳,在该操作系统中可集成本地和/或远程应用。如在本文所使用的,应用是在操作系统(和可选地,还有桌面)的实例已经被加载之后执行的程序。
在一些实施方案中,服务器206使用远程表示协议或其他程序以将数据发送给瘦客户端或在客户端上执行的远程显示应用,以便呈现通过在服务器206上执行的应用生成的显示输出。瘦客户端或远程显示协议可以是下列非穷举协议列表中的任意一个:通过佛罗里达州劳德代尔堡 (Ft.Lauderdale,Florida)的Citrix系统公司开发的独立计算架构(ICA) 协议;或通过华盛顿雷德蒙德(Redmond,Washington)的微软公司制造的远程桌面协议(RDP)。
远程计算环境可包括多于一个的服务器206a-206n,使得,例如在云计算环境中,服务器206a-206n逻辑组合在一起成服务器群206。服务器群206可包括地理上分散而同时逻辑分组在一起的服务器206,或彼此接近放置同时在逻辑上分组在一起的服务器206。在一些实施方案中,在服务器群206中的地理上分散的服务器206a-206n使用WAN(广域网)、MAN (城域网)、或LAN(局域网)通信,其中不同的地理区域可表征为:不同大陆;大陆的不同区域;不同的国家;不同的州;不同的城市;不同的校区;不同的房间;或前述地理位置的任何组合。在一些实施方案中,服务器群206可作为单一实体进行管理,而在其他实施方案中,服务器群206 可包括多个服务器群。
在一些实施方案中,服务器群可包括服务器206,其执行基本上类似类型的操作系统平台(例如,WINDOWS、UNIX、LINUX、iOS、ANDROID、 SYMBIAN,等)。在其它实施方案中,服务器群206可包括执行第一类型的操作系统平台的一个或多个服务器的第一组,以及执行第二类型的操作系统平台的一个或多个服务器的第二组。
服务器206可根据需要配置成任何类型的服务器,例如,文件服务器、应用服务器、web服务器、代理服务器、设备、网络设备、网关、应用网关、网关服务器、虚拟服务器、部署服务器、SSL VPN服务器、防火墙、网络服务器、应用服务器或作为主应用服务器、执行活动目录的服务器、或执行提供防火墙功能、应用功能、或负载平衡功能的应用加速程序的服务器。还可使用其他服务器类型。
一些实施方式包括从客户端机器240接收请求、将请求转发到第二服务器206b并使用来自第二服务器206b的响应对客户端机器240产生的请求做出响应的第一服务器206a。第一服务器206a可获取客户端机器240 可采用的应用的列表以及与托管在该应用的列表内识别的应用的应用服务器206相关的地址信息。然后,第一服务器206a可使用web接口呈现对客户端请求的响应,并直接与客户端240通信以给客户端240提供对所标识的应用的访问。一个或多个客户端240和/或一个或多个服务器206可经由例如互联网101的网络230传输数据。
图2示出说明性桌面虚拟化系统的高层架构。如图所示,桌面虚拟化系统可以是单服务器或多服务器系统、或云系统,包括配置为给一个或多个客户端访问设备240提供虚拟桌面和/或虚拟应用的至少一个虚拟化服务器206。如在本文使用的,桌面指图形环境或空间,其中一个或多个应用可被托管和/或执行。桌面可包括为操作系统的实例提供用户界面的图形壳,在该操作系统中可集成本地和/或远程应用。应用可包括加载了操作系统(和任选地,还有桌面)的实例之后执行的程序。操作系统的每个实例可以是真实的(例如每个设备一个操作系统)或虚拟的(例如在单个设备上运行的OS的很多实例)。每个应用可在本地设备上执行或在远程放置的设备上执行(例如远程)。
当在桌面虚拟化系统中使用时,服务器206可被配置作为在虚拟化环境中的虚拟化服务器,例如,单一服务器、多个服务器、或云计算环境。在这种实施方案中,虚拟化服务器206可包括硬件层,其包括一个或多个物理磁盘、物理设备、物理处理器、和物理存储器。虚拟化服务器206的存储器215可包括固件、操作系统、以及被配置来创建和管理任意数量的虚拟机是管理程序(例如,1型或2型管理程序)。虚拟机是一组可执行指令,当由处理器执行时,其模拟物理计算机的操作,使得虚拟机可更像物理计算设备那样执行程序和过程。管理程序可提供物理硬件、存储器、处理器和可用于该虚拟机的其它系统资源的虚拟视图给每个虚拟机。
本文所描述的一些方面可在基于云的环境中实施。在这种环境中,客户端设备204可与一个或多个云管理服务器206通信,以访问云系统的计算资源(例如,主机服务器、存储资源、和网络资源)。云管理服务器206 可管理各种计算资源,包括云硬件和软件资源,并可提供用户界面,云运营商和云客户可通过用户界面与云系统交互。例如,管理服务器206可提供一组API和/或一个或多个带用户界面的云运营商控制台应用(例如,基于web的应用或单机应用),以允许云运营商管理云资源、配置虚拟化层、管理客户账户、并执行其它云管理任务。管理服务器206还可包括一组API 和/或一个或多个客户控制台应用,其带有被配置为经由客户端计算机240 从终端用户接收云计算请求的用户界面,例如,请求创建、修改或注销在云中的虚拟机。客户端计算机240可经由互联网或其它通信网络连接到管理服务器206,并可请求访问由管理服务器206所管理的一个或多个计算资源。响应于客户端请求,管理服务器206可包括被配置成基于客户端请求来选择并提供在云系统的硬件层中的物理资源的资源管理器。例如,可配置云系统的管理服务器206和其它组件提供、创建和管理虚拟机和它们的操作环境(例如,管理程序、存储资源、由网络元件提供的服务等)以用于在客户端计算机240为客户,通过网络(例如,互联网)为客户提供计算资源、数据存储服务、网络性能、以及计算机平台和应用支持。云系统还可被配置成提供各种特定的服务,包括安全系统、开发环境、用户界面等。
云计算环境还可包括带有被配置以创建和管理虚拟机的其它硬件和/ 或软件资源的虚拟化层,并使用云中的物理资源给客户提供其它服务。虚拟化层可以包含如上面描述的超级管理器以及提供网络虚拟化、存储虚拟化等的其他组件。虚拟化层可以作为相对于物理资源层的分离层或可与物理资源层共享一些或全部相同的硬件和/或软件资源。
企业移动性管理架构
图3表示的是用于在BYOD环境中使用的企业移动性技术架构300。该架构使移动设备302的用户能够从移动设备302访问企业或个人资源并使用用于个人使用的移动设备302。用户可使用移动设备302访问这种企业资源304或企业服务308,其中移动设备302由用户购买或由企业提供给用户。用户可利用仅用于商业使用,或用于商业和个人使用的移动设备 302。移动设备可运行iOS操作系统、Android操作系统、和/或类似的。企业可以选择实施以管理移动设备304的策略。以这种移动设备可被识别、保护或安全验证、以及被提供对企业资源的选择性的或全部的访问的方式,可通过防火墙或网关植入该策略。策略可以是移动设备管理策略、移动应用管理策略、移动数据管理策略、或移动设备、应用和数据管理策略的某些组合。通过移动设备管理策略的应用来管理的移动设备304可以被称为登记设备。
移动设备的操作系统可以被划分为受管分区310和未受管分区312。受管分区310可具有施用于其的策略,以保护受管分区中运行的应用和存储的数据。在其它实施方案中,所有的应用可根据从应用单独接收的一组一个或多个策略文件执行,且当该应用在设备上执行时,其定义一个或多个安全参数、特征、资源的限制、和/或其它由移动设备管理系统执行的访问控制。通过根据它们各自的策略文件进行操作,每个应用可被允许或限制与一个或多个其它应用和/或资源的通信,从而创建虚拟分区。因此,如本文所用,分区可指存储器的物理分区部分(物理分区),存储器的逻辑分区部分(逻辑分区),和/或创建的虚拟分区,作为如本文描述的跨多个应用一个或多个策略和/或策略文件执行的结果(虚拟分区)。换句话说,通过在受管应用上强制执行策略,这些应用可只限于能够与其它受管应用和值得信赖的企业资源通信,从而创建非受管应用和设备不能通过的虚拟分区。
在受管分区上运行的应用可以是安全应用。安全应用可以是电子邮件应用、web浏览应用、软件即服务(SaaS)访问应用、Windows Application 访问应用,等等。安全应用可以是安全本地应用314,由安全应用启动器 318执行的安全远程应用322,由安全应用启动器318执行的虚拟化应用 326,等等。安全本地应用314可由安全应用封装器320封装。当安全本地应用在设备上执行时,安全应用封装器320可包括在移动设备302上执行的综合策略。安全应用封装器320可包括元数据,其指引在移动设备302 上运行的安全本地应用314到在企业托管的资源,其中安全本地应用314 可在安全本地应用314执行时要求完成请求的任务。由安全应用启动器318 执行的安全远程应用322可以在安全应用启动器应用318内执行。由安全应用启动器318执行的虚拟化应用326可利用移动设备302、企业资源304 等等的资源。由安全应用启动器318执行的虚拟化应用326在移动设备302 上使用的资源,可包括用户交互资源、处理资源,等等。用户交互资源可用于收集和传输键盘输入、鼠标输入、摄像机输入、触觉输入、音频输入、可视化输入、手势输入,等等。处理资源可用来呈现用户界面、从企业资源304接收的过程数据,等等。由安全应用启动器318执行的虚拟化应用 326在企业资源304上使用的资源可包括用户界面生成资源、处理资源,等等。用户界面生成资源可用于组装用户界面、修改用户界面、刷新用户界面,等等。处理资源可用于创建信息、读取信息,更新信息、删除信息,等等。例如,虚拟化应用可记录与GUI相关联的用户交互,并将它们传送到服务器应用,其中服务器应用将使用用户交互数据作为到在服务器上运行的应用的输入。在这种布置中,企业可选择维护服务器端的应用以及与应用相关联的数据、文件等。而企业可按照本文原则,通过保护其用于在移动设备上部署,选择“调动”一些应用,这种布置也可选择用于某些应用。例如,尽管可保护用于在移动设备上使用的一些应用,对于在移动设备上的部署,其它应用可能没有准备或是不合适的,所以企业可选择通过虚拟化技术给移动用户提供对未准备的应用的访问。作为另一示例,企业可能具有带有其中定制移动设备的应用会非常难或相反不合需要的大型和复杂数据集的大型复杂应用(例如,物料资源规划应用),因此,企业会选择通过虚拟化技术提供对应用的访问。作为另一个示例,企业可具有维护高度安全地数据(例如,人类资源数据、客户数据、工程数据)的应用,其可被企业认为甚至对于安全的移动环境也过于敏感,因此企业可选择使用虚拟化技术以允许对该类应用和数据的移动访问。企业可选择提供在移动设备上完全安全和全功能的应用,以及虚拟化应用以允许对被认为更适合在服务器端运行的应用的访问。在实施方案中,虚拟化应用可在安全存储位置之一的移动电话上存储一些数据、文件等。例如,企业可选择允许在电话上存储某些信息,而不允许存储其它信息。
如本文所述,在与虚拟化应用的连接中,移动设备可具有被设计以呈现GUI且然后记录用户与GUI的交互的虚拟化应用。该应用可传送用户交互到服务器端,以被作为用户与应用交互的服务器端应用使用。作为响应,在服务器端的应用可发送新GUI返回到移动设备。例如,新GUI可以是静态页面、动态页面、动画,等等。
安全应用可以访问存储在移动设备的受管分区310中的安全数据容器 328中的数据。在安全数据容器中保护的数据可由以下应用访问,安全封装的应用314、由安全应用启动器318执行的应用、由安全应用启动器318 执行的虚拟化应用326,等等。存储在安全数据容器328中的数据可包括文件、数据库,等等。存储在安全数据容器328中的数据可包括限定到特定安全应用330的数据,在安全应用332中共享的数据,等等。被限制在安全应用的数据可以包括一般安全数据334和高度安全数据338。安全通用数据可使用强的加密形式,诸如AES 128位加密等等,而高度安全数据 338可使用非常强的加密形式,诸如AES 256位加密。在接收来自设备管理器324的命令时,可从设备删除存储在安全数据容器328中的数据。安全应用可以具有双模式选项340。双模式选项340可向用户呈现在非安全模式中运行安全应用的选项。在非安全模式中,安全应用可访问存储在移动设备302的非受管分区312的非安全数据容器342中的数据。存储在未受管数据容器中的数据可以为个人数据344。存储在非安全数据容器342 中的数据,也可由在移动设备302的非受管分区312上运行的非安全应用348访问。当存储在安全数据容器328中的数据从移动设备302中删除时,存储在非安全数据容器342中的数据可保持在移动设备302上。企业可能希望从移动设备中删除选择的或所有数据、文件,和/或企业(企业数据) 拥有的、许可的或控制的应用,而留下的或以其它方式保留的个人数据、文件和/或由用户(个人数据)拥有的、许可的或控制的应用。该操作可称为选择性擦除。根据本文所描述的方面安排的企业和个人数据,企业可执行选择性擦除。
移动设备可连接到在企业的企业资源304和企业服务308,公共互联网348,等等。移动设备可通过虚拟私有网络连接来连接到企业资源304 和企业服务308。虚拟私有网络连接(也称为微VPN或应用专用VPN) 可以是特定于移动设备上的特定应用350中、特定设备、特定安全区域,等等(例如,352)。例如,在手机的安全区域的每个封装的应用可通过应用专用VPN访问企业资源,使得基于与应用相关联的属性,可能与用户或设备属性信息结合,将被授权对VPN的访问。虚拟私有网络连接可携带Microsoft Exchange流量、MicrosoftActive Directory流量、HTTP流量、 HTTPS流量、应用管理流量,等等。虚拟私有网络连接可支持并实现单点登录认证过程354。单点登录过程可允许用户提供单独一组认证凭证,然后其由认证服务358验证。然后,认证服务358可授予用户访问多个企业资源304,而无需用户提供认证凭证到每个单个的企业资源304。
虚拟私有网络连接可由接入网关360建立和管理。接入网关360可包括性能增强特征,其管理、加速和提高企业资源304到移动设备302的输送。接入网关也可重新路由从移动设备302到公众互联网348的流量,使得移动设备302能够访问公共互联网348上运行的公共可用的和不安全的应用。移动设备可经由传输网络362连接到接入网关。传输网络362可以是有线网络、无线网络、云网络、局域网、城域网、广域网、公共网络、私有网络,等等。
企业资源304可包括电子邮件服务器、文件共享服务器、SaaS应用、 Web应用服务器、Windows应用服务器,等等。电子邮件服务器可包括 Exchange服务器、Lotus Notes服务器,等等。文件共享服务器可包括ShareFile服务器,等等。SaaS应用可包括Salesforce,等等。Windows应用服务器可包括被构建以提供旨在本地Windows操作系统上运行的应用的任何应用服务器,等等。企业资源304可以是内建式资源、基于云的资源,等等。可通过移动设备302直接地或通过接入网关360访问企业资源 304。可经由传输网络362由移动设备302访问企业资源304。传输网络 362可以是有线网络、无线网络、云网络、局域网、城域网、广域网、公共网络、私有网络,等等。
企业服务308可包括认证服务358、威胁检测服务364、设备管理器服务324、文件共享服务368、策略管理器服务370、社交集成服务372、应用控制器服务374,等等。认证服务358可包括用户认证服务、设备认证服务、应用认证服务、数据认证服务,等等。认证服务358可以使用证书。该证书可由企业资源304等等存储在移动设备302上。存储在移动设备302上的证书可存储在移动设备上的加密位置中,该证书可暂时存储在移动设备302上,供认证时使用等。威胁检测服务364可包括入侵检测服务,未经授权访问尝试检测服务,等等。未经授权访问尝试检测服务可包括未授权尝试访问设备、应用、数据,等等。设备管理服务324可包括配置、供应、安全、支持、监测、报告和退出服务。文件共享服务368可包括文件管理服务、文件存储服务、文件协作服务,等等。策略管理器服务 370可包括设备策略管理服务、应用策略管理器服务、数据策略管理器服务,等等。社交集成服务372可包括接触集成服务、协作服务、社交网络集成,诸如Facebook、Twitter和LinkedIn,等等。应用控制器服务374可包括管理服务、供应服务、部署服务、分配服务、撤销服务、封装服务,等等。
企业移动性技术架构300可包括应用商店378。应用商店378可包括未封装的应用380、预封装的应用382,等等。应用可从应用控制器374 填入应用商店378。可由移动设备302通过接入网关360、通过公共互联网348,等等访问应用商店378。应用商店可以直观提供并易于使用用户界面。应用商店378可以提供对软件开发工具包384的访问。软件开发工具包384可给用户提供通过如在本说明书中先前描述地对应用进行封装来安全化由用户选择的应用的能力。然后,使用软件开发工具包384封装的应用通过使用应用控制器374将其置于应用商店378来对移动设备302可用。
企业移动技术架构300可包括管理和分析能力。管理和分析能力可提供与资源如何使用,资源被多久使用一次,等等相关的信息。资源可包括设备、应用、数据,等等。如何使用资源可包括哪些设备下载哪些应用,哪些应用访问哪些数据,等等。资源被多久使用一次可包括应用多久被下载一次,一组特定的数据被应用访问了多少次,等等。
图4是另一个说明性的企业移动性管理系统400。参考图3上述描述的管理系统300的一些组件,为简便起见,已经被省略。图4所示的系统 400的架构在许多方面与以上参考图3描述的系统300的架构相似,并可包括上面未提到的其它特征。
在这种情况下,左手边表示带有客户端代理404的登记的/受管移动设备402,其与网关服务器406(其包括接入网关和应用控制器功能)交互以访问各种企业资源408和服务409,诸如,如以上右手边所示的Exchange、 Sharepoint、PKI资源、Kerberos资源、和证书发布服务。虽然没有具体示出,但是移动设备402还可与应用商店交互,用于选择和下载应用。
客户端代理404充当UI(用户界面)媒介,用于在企业数据中心托管的Windows应用/桌面,其使用远程显示协议来访问,诸如但不限于ICA 协议。客户端代理404还支持移动设备402上的本地应用的安装和管理,诸如本地iOS或Android应用。例如,在以上图中所示的受管应用410(邮件、浏览器、封装的应用)全都是在设备上本地执行的本地应用。客户端代理404和这种架构的应用管理框架(AMF)用于提供驱动管理能力和特征的策略,诸如连接和SSO(单点登录)到企业资源/服务408。客户端代理404处理主要用户到企业的认证,通常到带有到其它网关服务器组件的 SSO的接入网关(AG)的认证。客户端代理404从网关服务器406获得策略,以控制移动设备402上的AMF受管应用410的行为。
本机应用410和客户端代理404之间的安全IPC链接412表示管理信道,其允许客户端代理通过应用管理框架414“封装”每个应用来供给将被实施的策略。IPC通道412还允许客户端代理404提供实现连接和SSO 到企业资源408的凭证和认证信息。最后,IPC通道412允许应用管理框架414调用由客户端代理404所实施的用户界面功能(诸如在线认证和离线认证)。
客户端代理404和网关服务器406之间的通信本质上为管理信道从应用管理框架414的扩展,该程序管理框架614包装每个本机受管应用410。应用管理框架414从客户端代理404请求策略信息,该客户端代理604反过来从网关服务器406请求它。应用管理框架414请求认证,并且客户端代理404将其登录到网关服务器406(也被称为NetScaler接入网关)的网关服务部分中。客户端代理404还可调用网关服务器406上的支持服务,其可产生输入材料以导出用于本地数据仓库416的加密密钥,或提供客户端证书,其可实现对PKI保护资源的直接认证,如下面更充分地解释的。
更详细地,应用管理框架414“包装”每个受管应用410。这可经由明确的构建步骤或经由构建后的处理步骤合并。应用管理框架414可在首次启动应用410时与客户端代理404“配对”,以初始化安全IPC信道并为该应用获得策略。应用管理框架414可以执行本地应用的策略的相应部分(诸如客户端代理登录的依赖关系和限制如何可以使用本地OS服务或本地OS服务如何可以与应用410交互的遏制策略中的某些遏制策略)。
应用管理框架414可以使用客户端代理404在安全IPC通道412上所提供的服务以促进认证和内部网络访问。对于私有和共享数据仓库416(容器)的密钥管理还可由在受管应用410和客户端代理404之间的适当的相互作用进行管理。只有经过在线认证后仓库416可以是可用的,或如果策略允许,可在离线认证后可用。第一次使用仓库416可需要在线认证,且离线访问可被限制在再次需要在线认证之前的大多数策略刷新时段。
对内部资源的网络访问可以通过接入网关406从独立的被管理应用 410直接发生。应用管理框架414负责精心安排代表每个应用410的网络访问。客户端代理404可通过提供以下在线认证获得的次级凭证限制的合适的时间来促进这些网络连接。可以使用网络连接的多种模式,诸如反向 web代理连接和端到端的VPN式隧道418。
邮件和浏览器被管理应用410具有特殊状态并且可以使用一般可能不适合随机包装应用的设备。例如,邮件应用可使用特定后台网络访问机制,其允许其在延长的时间周期访问交换,而不要求完整的AG登录。浏览器应用可使用多个私有数据仓库,以隔离不同类型的数据。
该架构支持各种其它安全特征的结合。例如,网关服务器406(包括其网关服务)在某些情况下,将不需要验证AD密码。其可给企业判断AD 密码在某些情况下是否被用作一些用户的认证因素。如果用户是在线或离线(即,连接或不连接到网络的),则可使用不同的认证方法。
加强认证是一种特征,其中网关服务器406可识别被允许访问需要强认证的高级别分类的数据的受管本地应用410,并确保在执行适当的认证后才允许对这些应用的访问,即使这意味着在事先弱级别的登录之后用户需要重新认证。
这种解决方案的另一个安全特征是对移动设备402上的数据仓库416 (容器)的加密。可加密仓库416,使得所有在设备上的数据,包括文件、数据库和配置,得到保护。对于在线仓库,密钥可存储在服务器(网关服务器406)上,且对于离线仓库,可由用户密码保护密钥的本地副本。当数据本地存储在安全容器416中的设备402上时,优选的是最少使用AES256位加密算法。
还可实现其它安全容器的特征。例如,可包括日志特征,其中应用410 内部发生的所有安全事件被记录并报告给后端。可支持数据擦除,诸如,如果应用410检测到篡改,关联的加密密钥可用随机数据写覆盖,在用户数据销毁的文件系统上不留下痕迹。截图保护是另一特征,其中应用可防止任何数据以截图方式存储。例如,密钥窗口的隐藏属性可设置为YES。这可导致当前显示在屏幕上的无论是什么内容都将被隐藏,造成空白屏幕截图,其中任何内容正常驻留。
本地数据传输可被防止,例如通过防止任何数据本地传送到应用容器之外,例如,通过复制其或将其发送到外部应用。键盘缓存特征可操作以禁用敏感文本字段的自动更正功能。SSL证书验证可以是可操作的,使得应用具体验证服务器SSL证书,而不是其被存储在密钥链中。可使用加密密钥生成特征,使得使用由用户提供的通行码产生在设备上用于加密数据的密钥(如果需要离线访问)。如果不需要离线访问,其可以与在服务器端随机生成并存储的另一个密钥进行逻辑异或。密钥导出功能可操作,以使从用户密码生成的密钥使用KDF(密钥导出功能,尤其是PBKDF2)而不是创建它的密码杂凑。后者使得密钥易受暴力或字典攻击。
此外,一个或多个初始向量可用于加密方法中。初始化向量将导致相同的加密数据的多个副本,以产生不同的密文输出,防止重放和密码攻击。即使偷走加密密钥如果不知道用于加密数据的初始化向量,这也将阻止攻击者解密任何数据。此外,可使用认证接解密,其中仅当用户在应用中已经验证之后,才解密应用数据。另一个特征可涉及在存储器中的敏感数据,只有当需要它时其可保持在存储器中(而不是在磁盘中)。例如,登录后登录凭证可从存储器中擦除,且不存储加密密钥和objective-C实例变量内的其它数据,因为可它们可容易地引用。相反,可为这些手动分配存储器。
可实现不活动超时,其中在不活动的策略定义的周期之后,终止用户会话。
可用其它方式防止数据从应用管理框架614泄漏。例如,当应用610 置于后台时,可在预定的(可配置的)时间周期之后清空存储器。当后台运行时,可获取应用的最后显示屏幕的快照以加快前台处理。该截图可包含机密数据,且因此应被清除。
另一个安全特征涉及OTP(一次性口令)420的使用,而无需用于访问一个或多个应用的AD(活动目录)422密码的使用。在某些情况下,某些用户不知道(或不允许知道)他们的AD密码,那么这些用户可以使用 OTP620(诸如通过使用像securID的硬件OTP系统)(OTP也可以由不同的供应商(例如Entrust或Gemalto)来提供)来认证。在某些情况下,在用户用用户ID认证之后,用OTP 420发送文本到用户。在某些情况下,这仅可被实施用于在线使用,其中提示为单字段。
可实施用于这些应用410的离线认证的离线密码,其中经由企业策略允许离线使用。例如,企业可希望以这种方式访问企业应用商店。在这种情况下,客户端代理404可要求用户设定定制的离线密码,且不使用AD 密码。网关服务器406可提供策略以控制和执行关于最小长度、字符类组合和密码寿命的密码标准,诸如由标准Windows Server密码复杂性要求所描述的,尽管这些要求可能被修改。
另一个特征涉及用于某些应用410的客户端证书的启用,作为第二凭证(用于经由微VPN特征访问PKI保护的web资源的目的)。例如,应用可利用该种证书。在这种情况下,可支持使用ActiveSync协议的基于证书的认证,其中来自客户端代理404的证书可由网关服务器406检索,并在密钥链中使用。每个受管应用可具有一个相关联的客户端证书,通过在网关服务器406中定义的标签识别。
网关服务器406可以与企业特殊目的web服务交互,以支持客户端证书的颁布,以允许相关的被管理应用认证内部PKI受保护资源。
可增强客户端代理404和应用管理框架414,以支持获取和使用客户端证书,以用于认证到内部PKI保护的web资源。可支持多于一个的证书,诸如以匹配各种安全等级和/或分离的要求。该证书可由邮件和浏览器受管应用使用,并最终由任意封装的应用使用(提供的这些应用使用web服务类型的通信模式,其中应用管理框架介入HTTPS请求是合理的)。
在iOS上的客户端证书支持可依靠导入PKCS 12BLOB(二进制大对象)到使用的每个周期的每个受管应用中的iOS密钥链。客户端证书支持可使用具有私有存储器内的密钥存储的HTTPS实施方式。客户端证书将不会存在于iOS的密钥链中,并不会被存留,除非可能在强保护的“仅在线”数据值中。
双向的SSL还可通过请求将移动设备402认证到企业来进行实施以提供额外的安全性,并且反之亦然。也可实现认证到网关服务器406的虚拟智能卡。
有限的和全部的Kerberos支持可以是额外的特征。全部的支持特征涉及对AD 422进行完全Kerberos登录的能力,使用AD密码或信任的客户端证书,并获得Kerberos服务标签来响应HTTP协商认证挑战。有限的支持特征涉及在AGEE中的约束授权,其中AGEE支持调用Kerberos协议过渡,因此其可获取和使用Kerberos服务标签(针对于受约束的授权)以响应于HTTP协商认证挑战。当HTTP(而不是HTTPS)连接在VPN和微VPN模式下被代理时,这种机制在反向web代理(又名CVPN)模式下工作。
另一个特征涉及应用容器的锁定和擦除,其在检测到越狱或获得超级权限时可自动发生,并作为来自管理控制台的推送的命令,并可包括远程擦除功能,即使当应用410没有运行时。
可支持企业应用商店和应用控制器的多站点架构或配置,允许从失败情况下的几个不同位置之一服务用户。
在一些情况下,可允许受管应用410经由API(例如OpenSSL)访问证书和私有密钥。企业的可信的受管应用410可被允许以执行具有应用客户端证书和私有密钥的特定公共密钥操作。可相应地识别和处理各种使用情况,诸如当应用行为类似于浏览器且不需要证书访问时,当应用读取了“我是谁”的证书时,当应用使用证书来建立安全会话记号时,以及当应用使用用于重要数据数字签名(例如,交易日志)或用于临时数据加密的私有密钥时。
接近度和环境感知移动工作空间
图5是示出用于客户端设备中的示例客户端代理应用500的架构的组件图。示例客户端代理500可对应于上文中描述的客户端代理404或对应于被配置成在客户端设备上执行并与诸如云系统或其他企业系统的远程资源通信的另一个客户端代理软件应用。如在下文参考图6-15C 讨论的,客户端代理500可包含不同功能以实现接近度和位置感知、基于确定的环境的客户端设备配置、在不同设备之间共享数据和能力、对象识别和经由企业系统访问与对象有关的特征或能力。
本示例中的客户端代理500的软件架构包含客户端代理用户界面组件 510、连接管理软件开发工具包(SDK)515、连接管理器520、连接/状态应用程序接口(API)525、一组虚拟化服务530、运行时SDK 535、平台 SDK 540和客户端核心545。用户界面组件510可包含不同子组件以支持用户认证、与接入网关360或406的通信、应用枚举函数、对于应用启动的支持、漫游和XML/HTTPS支持。用户界面组件510还可包含自我服务和应用选择子组件,且可包含用于呈现给客户端设备的用户的客户端代理用户界面的基本功能。
客户端代理架构500中的虚拟化服务530可例如包含图像服务、桌面集成服务、多媒体服务、输入/输出服务、智能卡服务、打印服务,等等。运行时SDK 535可以例如是独立计算架构(ICA)、运行时SDK,包含ICA 引擎。平台SDK 540可以例如是ICA平台SDK或其他平台SDK,并可包含诸如虚拟信道SDK、配置和加载管理器、跟踪子组件、平台提取SDK 等的各种子组件。客户端核心545可包含例如用于远程访问的核心协议(例如,具有核心ICA协议的Wintation驱动器)、被配置成执行压缩和优先化的减少子组件、多流ICA、具有会话可靠性的TCP堆栈、代理和SSL和 UDP子组件。客户端核心还可包含平台专用子组件的实现,例如,图像智能卡和线程支持、配置和加载管理器库、SSL SDK,等等。
图6是示出关于基于设备的位置或设备相对于其他设备、人或对象的接近度来配置具有适当的环境的客户端设备(例如,经由用于访问企业系统的客户端代理500)的示例特征和方法。
在步骤601中,客户端设备可被注册到企业系统中。如上文讨论的,注册的设备可涉及到通过设备管理策略的应用管理的设备。例如,在所注册的客户端设备402中,客户端代理404可与网关服务器406或其他接入网关进行交互,以访问不同企业资源408和服务409。注册设备可涉及到带来您自己的设备(BYOD)和相关的技术。具有公司账户(或者其他组织账户)的设备的注册可涉及到将证书推送到设备并使用企业系统的设管理服务器来登记设备。在注册之后,可通过使用推送到设备的移动设备管理(MDM)和/或应用管理框架(AMF)策略,由公司管理员(或其他组织管理员)“支配”设备。在特定示例中,为了注册企业系统中的设备,客户端代理500和/或应用注册令牌可被下载并安装在设备上。可从将要注册设备的公司或其他组织的证书获得应用注册令牌。在下载客户端代理 500和应用注册令牌之后,设备用户可被提示以打开令牌并将公司账户(或其他组织账户)添加到设备。
在某些实施方式中,客户端代理500可作为业务线(LOB)应用(例如,公司应用)安装在设备上。如下文讨论的,客户端代理500和/或应用注册令牌可被近场通信(NFC)标签安装,或者可从由NFC标签促进安装的应用商店安装。在这种情况下,客户端代理500可被下载,以及在设备上的操作系统提示可被用于将客户端代理500安装为公司应用。
当客户端代理500被安装为应用公司/组织的业务线应用时,可向设备用户呈现应用商店信息和/或经由客户端代理500推荐的应用。例如,客户端代理500可被配置成在用户第一次使用(FTU)客户端代理应用期间向用户呈现公司应用商店和推荐的公司应用。在一些情况下,海报或其他对象上的NFC标签可被用于为客户端代理500提供应用商店信息和推荐的应用。
在一些实施方式中,声音命令和/或口述可与客户端代理500一起使用。可以发出不同指令以启动或关闭客户端代理应用、发布的应用和/或文档。额外的声音命令可被用于搜索应用或内容,并添加条目或从最喜爱的清单删除条目。口述可被用于输入或控制各种远程应用、文档等等。额外地,客户端代理500可被配置成例如通过使用文字-语音转换技术来向用户采取的动作提供声音反馈。
在步骤602中,可检测客户端设备的当前位置或者客户端设备与其他对象或设备的接近度。在步骤602中的客户端设备的位置或接近度检测可被客户端设备本身、其他附近的对象或设备和/或企业系统内的其他资源实施。可基于其他设备、对象或网络的位置、接近度或检测来确定绝对设备位置或相对设备位置。这种接近度确定可包含特定状态或这些实体的处置或实体收集,而不管是否先前已知或刚刚发现它们等。
在一些情况下,可使用近场通信标签来检测设备的位置。如下文讨论的,用户可将移动设备向(例如,门、墙或海报上的)NFC标签点击,以建立向NFC标签的接近度,并从而确定设备的位置。蓝牙、Wi-Fi和其他基于接近度的技术还可被用于建立设备相对于另一个设备或对象的位置。例如,在一些情况下,可使用移动计算设备的信标或蓝牙低功耗(BLE) 接收器来确定移动计算设备的当前位置。此外,全球定位系统(GPS)技术可被用于确定设备的位置,而不需要确定设备与任何其他设备或对象的接近度。还可使用图像模式识别(IPR)、光学字符识别(OCR)等确定设备位置。例如,设备上的内置摄像头可捕获指示牌或对象的图像,例如建筑物名称或地址、会议室房间号等,然后基于捕获的数据使用IPR或OCR 技术来分析数据并确定设备的位置。
在步骤603中,可确定与在步骤602中检测的设备位置或接近度有关的环境。环境可对应于企业系统中的移动工作空间的一个或多个因素。例如,环境可对应于特定网络,例如,设备用户的家庭网络、公用共享网络、公司或组织网络等等。环境还可对应于设备是否将被配置成具有对与网络有关的应用商店(例如,公司应用商店)的内部或外部访问权。此外,环境还可包含设备可获取的和/或在设备上自动启动的应用(例如,公司或企业应用)清单和用于不同应用的预定配置。环境还可对应于在移动工作空间会话期间可获取的和/或在设备上自动启动的一个或多个特定文档。
在步骤604中,可根据在步骤603中确定的环境,基于设备的位置或接近度来配置设备。例如,设备可被配置成基于确定的环境自动转换网络,例如,在家庭网络和公司网络之间,或者反之亦然。当环境对应于一个或多个组的应用和/或文档时,客户端代理500可被配置成经由企业系统提供应用/文档。即,客户端设备上的客户端代理应用500可基于步骤602中检测的设备的位置或接近度来控制用户将能够访问哪个公司应用或企业应用。此外,某些环境可对应于自动启动设备上的特定应用或文档。因此,在步骤604中,客户端代理500可根据步骤603中确定的环境自动配置和 /或启动设备上的某些应用,并可打开设备上的特定文档。
作为进一步示出步骤601-604的示例,客户端设备可以是用户的个人和/或工作设备,例如,移动手机、平板电脑或笔记本电脑或其他计算设备。可使用上文讨论的接近度或位置技术,在用户的工作场所处公司会议室处检测客户端设备。在公司会议室处检测客户端设备之后,设备可被配置成连接公司的网络,并启动(经由客户端代理500)用户很可能所需的用于该会议室中的会议的一组应用和/或文档,例如,记笔记应用、陈述应用、视频会议应用等等。另外,客户端代理500可被配置成访问用户的日程表和/或调度数据来确定会议的类型或目的(例如,会计会议、生产会议、人力资源会议等)并可基于特定的会议类型和/或其他会议参与者的身份来选择环境。
作为另一个示例,客户端设备可以是被医生、护士或医疗技术人员所使用以在医院或其他医疗设施处提供医疗的设备。在此示例中,所检测的位置可对应于患者的房间、手术室或办公室。在患者的房间检测到设备之后,对应于患者的房间的环境可被检索,包含患者专用数据、图表和相对于患者治疗的应用,且可根据环境配置设备,从而使得设备用户可立即获取所确定的数据和应用(例如,患者专用应用和数据)。
图7是示出其中可使用与NFC标签有关的环境来配置客户端设备的示例的流程图。图7的步骤可对应于步骤601-604的一个或多个特定示例,其中固定位置NFC标签(例如,安装在墙上、房间中等)被用于确定设备的位置并将环境传输给用户。
在步骤701中,设备用户可观察NFC标签并将设备向NFC标签点击以发起配置过程。在步骤702中,NFC标签可经由磁场将数据传回到设备。如果NFC标签是不通电的NFC标签,设备可发出为NFC标签上电的电磁场。相反地,上电的NFC标签可传输数据,而不需要从设备发射的电磁场。在步骤702中传回设备的数据可以例如是与NFC标签有关的位置数据、识别对象的数据或环境数据。例如,如果NFC标签位于诸如建筑物大堂、会议室、办公室等的固定位置,在步骤702中标签可传输NFC标签的位置(例如,建筑物名称、楼层号、房间号、位置坐标等)。在一些情况下,NFC 标签可传输环境信息(例如,网络信息、可获取公司或企业应用或文档清单、应用配置设置等),而不是位置信息。此外,某些NFC标签可以是移动的,例如,固定在汽车、文件或记录、医院里的患者或床和其他移动对象上的NFC标签。在这种示例中,NFC标签可不传输位置信息,而是可传输从其中可以确定环境数据的对象或实体标识符(例如,文件名称、汽车ID、患者名字等)。在其他示例中,各种计算设备(例如,移动手机、平板电脑和笔记本电脑等)可具有NFC传输能力,并因此可实施与上电NFC标签相同的功能。
在步骤703中,客户端设备从NFC标签接收数据(例如,移动工作空间环境数据)并将接收的数据与客户端代理应用500相关联。来自各种类型的NFC标签的传输可被客户端设备上的不同应用使用。因此,客户端设备可被配置成识别如与客户端代理应用500和/或企业系统有关的NFC数据类型。例如,移动设备的操作系统可被配置成识别NFC数据中的应用ID并将应用ID与客户端代理应用500相关联。当由客户端设备接收到NFC 数据时,客户端设备可能已经安装了或者可能还未安装客户端代理应用 500,并可能已经注册了或可能尚未注册到企业系统中。因此,在步骤703 中,在接收与客户端代理和/或企业系统有关的NFC数据之后,如果先前没有为设备实施这些功能,客户端设备可被配置成发起安装客户端代理应用500或将设备注册到企业系统。例如,在步骤703中接收的移动工作空间环境数据可对应于第一企业设备的标识符或应用管理框架,且移动计算设备中的客户端代理应用404可被配置成向第一企业设备或应用管理框架注册移动计算设备。
在步骤704中,假设客户端设备已经安装了客户端代理500,并已经注册到企业系统中,那么客户端设备可被配置成启动客户端代理应用500。在一些情况下,操作系统可被配置成首先确定客户端代理500是否已经运行在客户端设备上。如果没有运行在客户端设备上,操作系统可提示用户确定客户端代理500应被启动。在其他示例中,客户端设备的操作系统可被配置成在接收NFC数据之后自动启动客户端代理500,而不需要来自设备用户的任何额外的确认。
在步骤705中,客户端代理应用500被启动,且将NFC数据作为对于客户端代理应用500的参量从操作系统传递,从而使得客户端代理500可基于NFC数据确定环境并配置客户端代理。如上文讨论的,包含网络、应用、配置、文档等的环境数据可在NFC数据本身中被传输。另外,NFC 数据可包括对远程储存的环境数据的URL指向,例如,与企业系统有关的网关或其他远程设备。另外,NFC数据可包含只有位置信息或从其中由客户端代理500可确定环境的其他识别信息。例如,如果NFC数据对应于位置数据(例如,房间标识符、对象标识符等),那么客户端代理500可访问查找表以检索与位置数据有关的适当的环境(例如,网络、应用、文档等)。当实施这种查找以检索环境表时,查找表可在本地上存储在客户端设备上或者可被远程存储,例如,在相关企业系统的网关或其他远程设备处。
在某些实施方式中,公司或组织环境中的上文中讨论的从NFC标签传输的数据、其他位置或接近度数据技术(例如,蓝牙、Wi-Fi、OCR、IPR 等)可对应于应用商店URL、用户帐户信息和/或一个或多个应用标识符。在这种示例中,客户端设备可向客户端代理500提供这种数据(例如,作为参量或参数),其可被客户端代理500处理并在步骤705中分析。例如,如果NFC标签数据(或者其他数据)包含应用商店URL,那么客户端代理500可被配置成检查对应于应用商店URL的已有商店配置。在此示例中的应用商店URL可对应于公司或其他组织的应用商店378。如果客户端代理500具有匹配应用商店URL的已有商店配置,客户端代理500然后可提示用户提供认证证书以登录对应于URL的应用商店。在提示用户提供认证证书以登录应用商店之前,如果客户端代理500没有匹配应用商店 URL的已有商店配置,那么客户端代理500首先可将商店从客户端代理设备存储器中移除,并使用所提供的应用商店URL添加新商店。
作为其他示例,如果客户端代理500经由NFC接收包含应用商店URL 和用户帐户的数据,那么客户端代理500可首先检查对应于应用商店URL 的已有商店配置。如果客户端设备上的已有商店配置与应用商店URL匹配,客户端代理500然后可检查与应用商店URL有关的客户端设备上的用户账户是否匹配经由NFC提供的用户帐户数据。如果客户端设备上的用户账户与提供的用户帐户数据匹配,用户可使用客户端设备上已有的用户帐户自动登录到应用商店。如果与应用商店URL有关的客户端设备上的账户与经由NFC标签提供的账户数据不匹配,客户端代理500可被配置成移除账户并添加对应于应用商店URL的客户端设备上的新账户。在此情况下,客户端代理500可被配置成在使得用户登录应用商店之前提示设备用户提供对应于经由NFC标签提供的用户帐户的有效密码(例如,预先填写用户名和/或域名字段)。
在另一个示例中,由客户端代理500在步骤705中接收的数据(NFC 标签数据或其他位置/接近度数据)可包含应用商店URL和/或用户帐户以及应用ID清单。在此示例中,客户端代理500可认证用户并如在上述示例中描述地使用户登录应用商店。在用户成功登录到应用商店之后,客户端代理500可通过枚举提供的应用ID清单中的应用,并且对于每一个应用ID,客户端代理500可自动将用户订阅到与应用ID有关的应用。
在另一个示例中,由客户端代理500在步骤705中接收的数据(NFC 标签数据或其他位置/接近度数据)可包含应用商店URL和/或用户帐户以及单个应用ID。在此示例中,客户端代理500可认证用户并如在上述示例中描述地使用户登录应用商店。在用户成功登录到应用商店之后,客户端代理500可识别与应用ID有关的公司应用或企业应用,并可自动启动客户端设备上的应用。
图8A-8L是从NFC标签向移动客户端设备传输环境数据并基于接收的环境数据在客户端设备上配置客户端代理应用500的示例用户界面和相关附图。图8A示出具有可被用于注册客户端设备并下载客户端代理应用 500的NFC标签的海报的示例。图8B示出提示移动设备用户接收来自图 8A中所示的NFC标签的内容的示例操作系统消息。在图8C中,示例用户界面屏幕被示出为对应于由图8A中示出的NFC标签指向的网页的下载屏幕。在图8C中示出的下载屏幕允许用户将应用注册令牌和/或客户端代理应用下载到计算设备。可从公司证书或其他组织证书中获取该示例中的应用注册令牌。图8D是提示用户打开应用注册令牌的示例用户界面屏幕。图8E是提示设备用户将公司账户添加到移动设备的示例操作系统消息。图8F是示出客户端代理应用正被下载到移动设备的示例用户界面屏幕。图8G是提示用户将客户端代理应用安装为公司应用的示例操作系统消息。图8H 是示出成功安装了客户端代理应用的示例用户界面。
图8示出具有可被客户端设备用于接收应用商店信息和推荐的公司应用的NFC标签的海报的示例。在客户端设备已经安装完成客户端代理500 且设备已经被注册到企业系统中之后,例如在注册设备之后的第一次使用期间,用户可将客户端设备向图8I中的海报点击,以订阅一个或多个应用。图8J、8K和8L示出具有可被用于将注册设备的环境在工作环境(图8J)、会议环境(图8K)和家庭环境(图8L)之间改变的NFC标签的海报。如上文讨论的,每个环境可对应于网络(例如,家庭网络或工作网络)、一组设备和/或应用配置、一组可用应用和/或自动启动的应用、一组可用文档和/或自动启动的文档等等。在这些示例中,从NFC标签传输到客户端设备的数据可被传递到客户端代理应用500,并然后被客户端代理500如在上文中步骤705中描述地使用。
在多个设备之间共享数据和能力
图9是示出关于设备和配置多个设备之间的用于共享数据和/或设备能力的通信的示例特征和方法的流程图。在此示例中,可使用每个设备上的客户端代理应用500或者被配置成支持设备通信和数据共享的其他软件来实施设备间的通信。在各种示例中,可在诸如访问同一个公司网络和域、具有公司账户、共用公司应用等的设备的注册到共用企业系统中的设备之间共享设备和能力。在其他示例中,共享数据和能力的设备不需要被注册到同一企业系统中或根本不需要被注册到任何企业系统中。反而,客户端设备500或其他软件应用可被配置成实施设备检测、通信和共享数据和能力,而不需要与任何企业系统的任何通信或对任何企业系统的授权。
在步骤901中,第一计算设备(例如,移动设备302或402)可检测在第一设备的附近范围之内的第二计算设备。在步骤901中,多种不同通信协议和技术可被用于检测附近的设备并建立通信。例如,一个或多个设备可被配置成经由近场通信(NFC)、蓝牙或Wi-Fi通信发送或接收数据。在其中一个设备可检测另一个设备的附近范围可基于所使用的数据通信技术或协议类型。当设备被配置成经由NFC通信时,用户可将设备一起点击以允许设备检测彼此并建立通信。用于实现蓝牙的设备的检测和通信范围可取决于设备的种类和类型以及各种其他条件,并在一些情况下,可在 10-20米或更多米之间变动。可包含在设备之间的直接Wi-Fi传输或使用 Wi-Fi设施的间接通信的Wi-Fi连接可具有大得多的范围。
如在一些示例中示出的,可为非常近的设备设计并实现设备数据共享或能力共享解决方案。例如,可由单独的设备上的客户端代理500经由NFC 发送/接收有限的数据集合,从而要求设备在通信的有限时间段内相互接近 (例如,用于设备之间的一次传输)。在其他示例中,NFC交易可被用于设备之间建立通信,在其之后,可建立长期连接流(例如,使用蓝牙、Wi-Fi 直接或Wi-Fi设施),以支持持续通信会话(例如,用于在一个时间段内共享设备能力)。在这种示例中,最初建立通信会话(使用NFC)可要求附近的物理接近度,但是在初始NFC交易之后不需要保持近的物理接近度,从而允许用户将他们的设备移动到不同房间、建筑物等,同时仍然保持用于数据或能力共享的长期通信会话。此外,在其他示例中,设备为了建立或维持通信会话,永远不需要在近的物理接近度内。例如,注册到同一个企业系统中的两个设备(例如,302或402)可经由接入网关(例如,360 和406)和/或其他企业系统服务或资源来相互检测,并建立并维持通信会话。因此,尽管图9中示出的示例可应用一定接近度范围内的设备,在其他情况下,该步骤可以是可选的,且可不需要接近度范围。
在步骤902中,第一设备可识别它愿意并能够与第二设备共享什么类型的数据,并可从第二设备接收对应的信息。如上文讨论的,在一些示例中,诸如文档、媒体文件、联系人、应用或任何其他数据的有限数据集合可在设备之间传输。因此,在步骤902中,设备用户可识别用户愿意传输给其他设备的特定的一个或多个文件。在其他示例中,更长期的通信会话可被支持以共享更大量的数据、进行中的数据流和/或以与其他设备共享设备能力。在这些示例中,设备用户可在步骤902中识别数据文件、数据流和/或设备能力。在一些情况下,客户端代理应用500可被配置成与设备操作系统进行通信以确定设备能力,并可向在步骤901中检测到的其他附近的设备自动发布设备能力(经由NFC或其他技术)。在步骤902中由第一设备传输的数据可包含识别在第一设备处执行的一个或多个应用会话的数据,且由第二设备传输的数据可包含识别在第二设备处执行的一个或多个应用会话的数据。
例如,设备能力可包含输入和输出特征和诸如显示屏的数量和尺寸、触摸屏功能、外围输入或输出设备(例如,传统的键盘、电话按键、鼠标、打印机、相机等)、视频显示能力、相机能力、麦克风和语音识别能力等的设备能力。如下文讨论的,设备能力可被共享在多个设备之间以允许用户联合利用每个设备上的有用特征。例如,支持语音识别、用户声音控制和具有触摸屏的移动设备402可与具有比移动设备402更大的屏幕尺寸和更好的视频显示能力的台式笔记本或笔记本电脑共享那些能力。在此示例中,通过共享两个设备的能力,用户可享受两个设备在单个应用中和单个计算会话中工作的优势。
如上文描述的,可在步骤902中发布并接收并最终在多个设备之间共享的设备能力可包含诸如显示屏、音频和视频输入/输出特征、外围设备等的各种输入和输出能力。然而,共享的设备能力不需要被限制于输入和输出能力,并可包含诸如处理能力、存储器/存储能力、GPS能力、网络接口、设备驱动器、应用等的额外的特征。例如,移动设备402(例如,移动手机或平板电脑)可具有期望的显示屏、移动性和用户界面能力以允许用户运行特定的软件应用,但移动设备402可缺乏处理能力、存储器或用于有效执行应用的其他能力。在此示例中,可从台式计算机或服务器向移动设备402共享处理能力和存储能力,从而允许移动设备402执行应用并将结果显示在移动显示屏上。
在步骤903中,第一移动设备可与第二移动设备建立配对(例如,持续通信会话),并在步骤904中,可在设备之间共享数据和/或设备能力。在一些情况下,在设备配对之前,一个或两个设备的客户端代理500可发起允许用户确定设备可配对的提示。某些提示还可允许用户选择并确认可与其他设备共享的特定数据(例如,文件、数据流)或特定设备能力。对于被注册到企业系统中的设备,使用诸如接入网关和活动目录的企业系统资源的验证和/或认证可被用于在设备配对之前对设备用户进行认证。
共享数据和设备能力可以是单向的或双向的,取决于设备402和客户端代理500的配置、由用户在共享过程期间进行的选择和用户的访问权限 (当要求认证时)。例如,用户可能希望设置通信会话以在他/她的诸如用户的移动手机、平板电脑和台式计算机的多个设备之间共享能力。在此情况下,设备可自动确定用户账户和认证证书在每一个设备上是相同的,并可自动允许在设备之间的用于所有数据和能力的双向共享访问。另一方面,希望在会议或合作工作期间与另一个用户的设备共享数据或设备能力的用户可允许数据或能力的只有单向共享,或者可只允许某些数据或能力在设备之间被共享(例如,只有显示镜像,但是没有输入能力共享;或者只有鼠标和键盘能力共享,但是没有声音控制等)。如上文讨论的,在步骤902中从第一设备向第二设备传输第一组设备能力可包含传输识别一个或多个在第一设备处执行的应用会话的数据。在这种情况下,在设备之间建立配对可包含在第二设备上开始这些应用会话和/或在第一计算设备上结束这些应用会话。在某些示例中,这些应用会话的一些或全部可以是虚拟的(或托管的)应用会话,并在第二设备处开始应用会话可包含在第二设备上配置客户端代理应用404以允许访问一个或多个虚拟的/托管的应用会话。
在两个或多个被连接并配置成共享数据和设备能力的配对设备的配置中,一个或多个设备可接受并仲裁来自该配置中的所有设备的用户输入。例如,多设备共享配置中的第一设备可接收并处理其自己的用户输入数据并接收并处理在建立的持续通信会话期间来自其他共享设备的用户输入。对输入数据的仲裁可导致某些输入数据被放弃,例如,如果来自一个设备的输入数据与来自另一个设备的同时的输入数据或者多设备共享配置的指定的输出不兼容,或者以其他方式与建立的多设备共享配置不兼容。此外,可将用户输入从一个设备转换到共享配置中的另一个设备中。来自一个设备的用户输入可被针对其他设备的形式因素和能力来调节。例如,来自第一设备的鼠标输入数据(例如,鼠标事件)可被转换成可被具有触摸屏的配对移动手机或平板电脑识别的触摸输入数据(例如,触摸手势),或者反之亦然。在其他示例中,来自一个设备的触摸输入数据可被转换成另一个设备中的键盘输入数据,或者反之亦然,来自一个设备的声音输入数据可被转换成另一个设备中的文字输入数据,或者反之亦然,来自一个设备的动作或方向输入数据可被转换成另一个设备中的其它输入数据,或者反之亦然,等等。
图10是示出其中使用客户端代理应用500(客户端代理A)的第一设备(设备A)经由NFC与使用第二客户端代理应用500(客户端代理B) 的第二设备(设备B)共享数据的示例的流程图。图10的步骤可对应于步骤901-904的一个或多个特定示例,其中NFC通信被用于在位于近的物理接近度之内的两个设备之间的一次数据传输。在此示例中,设备A和设备 B均可以是安装有客户端代理应用500的NFC兼容设备。在一些情况下,设备A(数据共享者)中的客户端代理应用500可被配置,同时配置设备 B(数据被共享者)中的客户端代理应用500可以是可选的。
在步骤1001中,设备A的用户经由客户端代理500选择将共享的数据类型。客户端代理500中的用户界面元件可允许用户选择将与设备B共享的数据类型和/或特定数据文件。例如,由移动手机操作系统提供的应用命令栏或快捷设置可允许用户选择将共享的数据类型并可使得设备准备好共享。在一些情况下,在步骤1001中被识别以共享的数据可包含本地存储在设备A上的文件/应用,并在其他情况下,数据可包含远程文件/应用,例如,设备A可在通信网络上访问的企业系统中的远程数据。在步骤 1002中,若有需要,客户端代理500可提示用户提供认证证书并可在允许用户共享数据之前验证用户证书的真实性。例如,可经由文件共享服务368 访问的远程文件可要求设备A的用户在文件可被下载并与设备B共享之前进行认证(经由挑战并响应)。
在步骤1003中,将设备A和设备B一起点击。在一些情况下,可由操作系统向一个或两个设备中的客户端代理500提供点击确认。可向或可不向设备用户呈现这种确认。在步骤1004中,在设备A的客户端代理500 确认设备已经被一起点击(例如,通过接收点击确认)之后,设备A客户端代理500可将要共享的数据传输至设备A的NFC驱动器。
在步骤1005中,设备A的NFC驱动器可将共享的数据经由NFC传输至设备B。设备至设备的NFC传输可以与上文讨论的标签至设备的NFC 传输相似。在两种情况下,NFC传输可包含平台标识符和/或应用标识符以允许接收设备(设备B)确定输入的数据的目标应用。在设备至设备NFC 传输的情况下,传输设备可调用软件功能(例如,通过使用NdefLaunchAppRecord类)以创建要被发送至另一个设备(例如,通过使用ProximityDevice类)的数据包。例如,客户端代理500可实例化 NdefLaunchAppRecord类、在该类上调用AddPlatformAppId()函数并然后可将平台ID和应用ID值作为字符参数传递至该函数(例如, “WindowsPhone”和“{d1fe9221-3305-4864-98fe-13ba1d27aaa6}”。在该示例中,实例化的NdefLaunchAppRecord对象的参量字段可被设置成负荷字符串。可使用CheckIfValid()函数检查NdefLaunchAppRecord对象的有效性。如果它是有效的,新NdefMessage对象能够被创建,将 NdefLaunchAppRecord对象视作为参数。ProximityDevice类对象然后可使用PublishBinaryMessage()函数发送NdefMessage对象。
在步骤1006中,设备B可接收NFC数据并(可选地)提示设备用户确认接收的数据应被设备接受。在用户确认数据的接受之后,设备B可将 NFC数据解析以确定应用标识符(在该情况下对应于客户端代理应用 500),并然后可将数据传递到客户端代理应用500。如果设备B上的客户端代理500没有已经被实例化,可响应于NFC数据的接受由设备B的操作系统使它自动启动。在启动设备B上的客户端代理500之后,或者已经确定客户端代理500已经在运行之后,可将NFC数据传输的负荷从设备B 的NFC驱动器传递到客户端代理500。
在步骤1007中,设备B的客户端代理500接收作为参数的NFC数据、解析参数并作用于数据。客户端代理500可被配置成取决于接收的数据实施不同动作。如上文讨论的,NFC数据可对应于一个或多个文件应用或者从设备A发送到设备B的其他数据。在一些示例中,如上讨论的,从设备 A发送到设备B的NFC数据可以与从NFC标签发送到设备的NFC数据相似(相同)。例如,步骤1005中的数据传输可包含应用商店URL和/或用户帐户和一个或多个应用ID的清单。在这些示例中,接收设备(设备B) 可以与步骤705中讨论的相同方式接收并处理数据。
图11是示出其中第一设备(设备A)使用客户端代理应用500(客户端代理A)与使用第二客户端代理应用500(客户端代理B)的第二设备 (设备B)建立通信会话并共享设备能力的示例的流程图。图11的步骤对应于步骤901-904的一个或多个额外的示例,其中,NFC通信被用于发起在位于近的物理接近度的两个设备之间的通信,在其之后,持续的通信会话可被建立以共享设备能力。在此示例中,两个设备A和设备B可以是 NFC兼容的、蓝牙兼容的和/或Wi-Fi兼容的设备,其具有安装和配置的客户端代理应用500。
在步骤1101中,设备A的用户经由客户端代理500选择与设备B共享的一组设备能力。客户端代理500中的用户界面元件可允许用户选择各种设备能力,例如,输入和输出能力和如上讨论的其他设备能力。例如,由移动手机操作系统提供的应用命令栏或快捷设置可允许用户选择将共享的设备能力并可使得设备A准备好共享。在一些情况下,客户端代理500 可在允许步骤1101中识别的设备能力被共享之前要求用户确认和/或用户认证。因此,在步骤1102中(可选的),客户端代理500可提示用户认证证书并可在允许用户共享设备能力之前验证用户证书的真实性。在客户端代理500使得设备A准备好共享设备能力之后,设备A可进入对等点发现状态。
在步骤1103中,设备A和设备B可被一起点击。响应于点击设备,可从设备A发送NFC消息到设备B。在步骤1103中发送的NFC消息可包含应用标识符信头和负荷,如在1005中所讨论的。在步骤1104中,设备B可接收NFC数据并(可选地)提示设备用户确认接收的数据应被设备接受。如在步骤1006中讨论的,设备B的操作系统可接收并解析NFC 消息以确定包含在消息中的应用标识符(在该情况下对应于客户端代理 500),如有必要,可启动客户端代理应用500,并然后可将负荷作为参数传递到设备B的客户端代理500。在步骤1105中,设备B的客户端代理 500接收作为参数的数据、解析参数并作用于数据。设备B现在可进入对等点发现状态。
在步骤1106中,在设备A和设备B均已经进入对等点发现状态之后,可建立设备A和设备B之间的长期连接流。在该示例中的长期连接流可使用以下协议的一个或多个:蓝牙;Wi-Fi直接(例如,设备在IEEE 802.11 上直接与彼此进行通信);或者Wi-Fi设施(例如,设备经由路由器或其他网络设备在IEEE 802.11上与彼此间接通信)。在一些示例中,在可建立长期连接流之前,设备的一个或两个均可要求设备用户的点击确认。在步骤 1106中设备之间建立连接流之后,用于经由连接流进行通信的套接字可被提供至每个设备中的客户端代理应用500。
在步骤1107和1108中,在建立完成连接流之后,设备A的客户端代理500可使用连接套接字和适当的协议以将数据发送至设备B的客户端代理500。如上讨论的,在步骤1107中发送并在步骤1108中接收的数据可对应于在设备A处接收并在设备B处发送的(或反之亦然)、如同数据是直接由用户输入到设备B地由设备B接收并处理的用户输入数据(例如,键盘数据、鼠标数据、触摸屏数据、声音数据等)。步骤1107中发送的数据还可对应于在设备A处产生并发送至设备B(或反之亦然)、在设备B 上接收并输出的输出数据(例如,显示屏输出、音频输出等)。
在涉及设备至设备的长期通信会话的一些示例中,诸如PeerFinder类的软件类可被使用。例如,当事件(例如,TriggeredConnectionStateChanged 事件)在具有TriggeredConnectionState.Completed状态的PeerFinder对象上被引发时,可提供StreamSocket对象。可使用提供的StreamSocket对象的OutputStream创建数据写入器(DataWriter),且可使用提供的 StreamSocket对象的InputStream来创建数据阅读器(DataReader)。可在用于双向通信的设备A和设备B上均可配置数据阅读器和数据写入器。在一些示例中,如果只期望单向通信,那么可只在一个设备上配置数据写入器,且可只在另一个设备上配置数据阅读器。
在一些情况下,当使用数据阅读器和数据写入器在设备A和设备B之间传输数据时,有限数量的数据类型可被写入数据写入器,例如,字符串数据和图像。这些类型可对应于数据类型字段中传输的常数和数据传输的负荷。可假设,当发送字符串数据时,设备B具有活动会话,并可假设当发送图像数据时,设备A具有活动会话。设备B可被配置成从数据阅读器连续读取数据,直到被取消。设备B还可取决于发送的数据类型不同地反应。例如,如果读取图像数据,图像将被显示在设备B的显示屏上。然而,如果读取字符串数据,设备B可取决于字符串数据的源不同地反应。例如,如果数据写入器和数据阅读器只支持字符串数据和图像,那么当由设备B 接收字符串数据时,字符串数据可对应于键盘数据或声音数据。对于特定设备,键盘数据可在一次发送至一个按键,从而使得数据传输的负荷可只由该按键组成。对于一些设备,负荷中的按键数据可在前面加上预定的标识符字符串(例如,“按键”),以将负荷字符串识别为按键数据。在这些示例中,当设备B接收键盘数据时,包含在负荷中的按键可被插入设备B 上的客户端代理应用500的活动会话中。
如上面所看到的,在一些情况下,字符串数据可表示按键数据或声音数据。声音数据可表示口述或命令,且特定设备可允许用户在口述模式和命令模式之间选择。在一些情况下,口述模式和命令模式可同时运行,且用户的说话可被理解为文字口述或命令。在一些情况下,由用户至设备A 的声音命令或口述可被转换至文字串并可被写入数据写入器,以用于向设备B的传输。对于口述模式或命令模式,预定的标识符字符串(例如,“口述”或“命令”)可被加到转换的声音字符串的前面。当设备B接收命令或口述声音数据时,它可脱去加在前面的标识符字符串(例如,“口述”或“命令”)并分析字符串数据。如果接收的声音数据被识别为命令数据,负荷字符串还可被转换为小写字母并可被检查已知命令清单。如果命令被识别,它可被转换成特定按键序列,且该按键序列可被插入设备B上的客户端代理应用500的活动会话中。在一些情况下,声音命令可针对客户端代理B(例如,命令设备B上的客户端代理500以使其返回主屏幕、枚举应用、搜索文档等)。在一些情况下,声音命令可针对设备B并被客户端代理B应用(例如,命令设备B上的客户端代理500增加设备B上的音量、增强屏幕亮度、启动另一个本地应用314或410、关闭设备B等)。
当经由数据写入器传输图像数据时,设备A可采用用于渲染绘画内的图形的原始像素数据(例如,从D2DSurface)。设备A然后可压缩原始像素数据(例如,通过使用GZipStream类)并可将压缩的字节阵列写入数据写入器。这个过程可在每次客户端代理应用500接收要显示的新图像数据时发生。当设备B使用数据阅读器接收对应的图像数据时,它可解压缩字节阵列、添加位图信头并然后可在设备B上显示图像。在一些情况下,应用发送图像数据的协议可被扩展以允许设备A和设备B之间的不同分辨率。
图12A-12I是用于在多个设备之间共享数据和能力的用户界面截屏和相关图。图12A是示例客户端代理应用500的示例用户界面屏幕。在该示例中,客户端代理应用显示“我的应用”列举视图和用于与对等设备共享数据和/或能力的各种选项(即,商店账户、最喜爱的、会话、用户输入、镜像显示和扩展显示)。图12A中的用户界面还包含要求用户点击设备以传输数据、表示用户已经选择要共享的数据类型和/或能力的消息。图12B 是示出示例客户端代理应用500中的远程会话视图(发布的Microsoft Word)的示例用户屏幕。图12B中的用户界面还包含用于与对等设备共享数据和/或能力的各种选项(即,商店账户、最喜爱的、会话、用户输入、镜像显示和扩展显示)的选项。图12B中的用户界面还包含要求用户点击设备以传输数据、表示用户已经选择要共享的数据类型和/或能力的消息。因此,如在这些示例中示出的,从一个设备漫游到另一个设备的会话或应用可被简单的点击和NFC的使用触发。这种示例可允许在工作在员工的办公室、会议室或其他物理位置之间的快速环境转换。例如,在医院环境中的实现中,医生可在他们办公室中的台式计算机上查看病人记录,并然后可快速从他们的办公室移动到患者房间并在他们的移动设备上查看相同信息。
图12C是示出执行在三个配对设备上的客户端代理应用的实例的图。远程会话视图被显示在图12C中的三个设备上,示出三个分离的应用正在共享会话。在该示例中,通过共享三个设备的输出能力,应用中的两个已经从主机设备拖入配对的设备中。AdobeReader已经在左边被拖入用户的平板电脑,Microsoft Word已经在右边被拖入用户的移动手机,且Microsoft Excel在中心保持显示在主机设备上。如由设备之间的注释表示的,该示例中,中心主机设备经由蓝牙从其他两个设备接收用户输入,并经由蓝牙向其他两个设备输出图形。因此,图12C中的设备能力已经被结合,允许这些设备充当具有所有三个设备的结合的能力的单个设备。这种“联合设备”可被建立在点对点通信上和/或通过诸如云系统的企业系统的通信,以支持环境感知、设备发现和配对和能力协调。
在图12D中,另一个图被示出为在两个设备之间共享设备能力。在该示例中,设备能力共享被用于实现在主机移动设备和连接的台式计算机之间的显示镜像。相似地,在图12E中,图像被示出为示出三个设备间的输入共享,允许用户提供来自台式计算机的具有键盘或鼠标的输入、来自平板电脑的触摸屏输入和来自移动手机的声音口述和命令。
图12F-12I示出用于移动设备以与一个或多个对等设备共享设备能力的示例用户界面屏幕。图12F示出移动设备上的客户端代理应用500的示例用户界面屏幕。在该示例中,客户端代理应用显示“我的应用”视图,其具有允许移动设备用户与对等设备共享能力的选项。图12G-12I示出移动设备上的客户端代理应用500的示例用户界面屏幕,其中,已经将移动设备的用户输入能力与一个或多个对等设备共享。在图12G中,客户端代理500位于键盘输入模式中,其中,键盘用户输入可被传输至连接的对等设备;图12H中,客户端代理500处于鼠标/跟踪垫输入模式中,其中,鼠标/跟踪垫用户输入可被传输至连接的对等设备;以及在图12I中,客户端代理500是声音口述输入模式,其中,声音用户输入可被传输至连接的对等设备。
识别与企业系统中的对象有关的对象和访问特征或能力
图13是示出关于使用移动设备识别对象和其他实体、以及访问与企业系统中的对象和实体有关的特征或能力的示例特征和方法的流程图。
在步骤1301中,第一计算设备(例如,移动设备302或402)例如从移动设备的相机、扫描仪或NFC数据阅读器接收输入数据。如在下文更详细地讨论的,在步骤1301中接收的数据可对应于企业系统中的具有特定特征和能力的对象或实体(例如,公司网络或其他云系统)。例如,用户 (例如,公司员工或访客)可使用他们的移动设备302或402上的相机来拍摄员工证件(例如,包含员工名称、员工ID号、和/或员工相片),或者可使用他们的移动设备302或402上的扫描仪来扫描员工证件。用户还可拍摄诸如同事会议参与者或用户在公司场所上碰到的某人的公司员工或访客的脸部。在医院设置中,用户可使用他们的移动设备上的扫描仪以扫描具有患者姓名、条形码、识别号等的患者文件或患者手带。
在步骤1301中接收的输入不需要对应于个体,但还可表示企业系统中的具有一些特征或能力的位置或对象。例如,用户可扫描位于公司会议室、办公室或公司场所中的其他位置的房间标签,例如,NFC标签、条形码或其他标签。相似地,与企业系统有关的诸如公司汽车、打印机、扫描仪、投影仪、电话、计算机服务器或其他计算设备的对象可具有可被步骤1301中的用户移动设备扫描的NFC标签、条形码或其他标签。在一些示例中,一些对象不需要具有标签,且用户可代替地拍摄对象(例如,具有名称和/或房间号的会议室或办公室招贴、具有打印机网络名称的打印机标签、公司汽车的车牌号等),从其中可识别对象。在一些示例中,移动设备302或402可收集对应于所拍摄的相片或扫描的对象的GPS数据,从而使得GPS数据可被用于识别实体或对象。例如,如果用户拍摄没有清晰的打印机名称或标识符的公司打印机,用户移动设备可记录GPS坐标中的打印机的位置,以允许识别特定打印机。
在步骤1302中,可分析在步骤1301中接收的输入数据,并可识别相关的个体或对象。在各种示例中,诸如NFC、图像模式识别(IPR)或光学特征识别(OCR)的技术可被用于识别对象和文字输入,且脸部检测/ 识别技术可被用于识别在步骤1301中接收的个体的任何图像。例如,可使用OCR来处理用移动设备相机拍摄的会议室招贴的图像,以确定房间名称或号码,并然后可实施文字/关键字搜索以识别企业系统中的位置或对象(例如,公司资源)清单之内的会议室。相似地,可使用图像处理、脸部检测/脸部识别技术来识别由同事会议参与者或其他熟人的移动设备用户拍摄的图像。
在一些情况下,可由拍摄图像的移动设备302在本地分析图像数据,而在其他情况下,可从移动设备302将图像数据传输至企业系统中的服务,企业系统中的服务被配置成分析数据并识别对应的个体或对象。例如,企业系统中的服务308可接收对应于人脸的图像数据,并可将图像数据与一个或多个数据源(例如,员工识别记录、访客图像记录等)进行比较以确定图像中的员工或访客的身份。作为另一个示例,企业系统中的服务308 可接收对应于设备(例如,打印机、投影仪等)或位置(例如,会议室、办公室等)的图像数据和对应于图像的GPS坐标,并可使用图像和GPS 数据来确定具有企业系统中的特征和/或能力的、由图像和/或GPS数据表示的特定设备或对象。此外,可由移动设备302和一个或多个企业资源304 或服务309协作实施数据分析。例如,移动设备302可被配置成确定接收的图像或扫描的对象所对应的数据类型,例如,对应于房间号或房间名称的文字串、个人的脸或证件的图像、对象的图像等,并然后可基于数据类型传输对应的数据(例如,文字串、对象标识符、图像等)至适当的企业资源或服务。例如,个体的图像可以被传输至员工/访客的人脸识别服务 309,表示办公室或会议室招贴的文字字符串可被传输至建筑物目录服务 309,打印机、扫描仪、投影仪和其他设备的图像可与GPS坐标一起被传输至建筑物设施服务309等。
在步骤1303中,在对应于在步骤1301中接收的输入的个体和/或对象被识别之后,可从企业系统中的各种资源和服务中检索与个体和/或对象有关的各种特征和能力。在一些示例中,单点登录(SSO)技术可在移动设备上与客户端代理应用500一起使用以从若干个不同企业资源304和服务 309中检索与个体或对象有关的特征和能力。例如,如果在步骤1301中接收的输入数据表示公司员工,那么SSO可被用于(例如,通过ActiveSync 协议)联系邮件服务器(例如,Microsoft Exchange)并以检索与员工有关的联系人信息、安排信息和邮件(例如,从或至员工的电子邮件、提到员工的电子信息等)。在医院或其他医疗机构的环境中,如果在步骤1301中接收到的输入数据表示患者,那么企业系统可检索患者的记录。作为另一个示例,如果在步骤1301中接收到的输入数据表示会议室,各种企业资源304和服务309可被用于获取房间会议和空缺安排和会议室的特征和能力(例如,座位尺寸、投影仪和陈述仪器等)。如果在步骤1301中接收的输入数据表示打印机、扫描仪、投影仪或其他计算设备,各种企业资源304 和服务309可被用于确定名称、位置、网络地址、特征和能力等等。
在步骤1304中,在步骤1301中检索的各种特征和能力可经由用户的移动设备302呈现给用户,允许用户经由他们的移动设备立即访问这些特征和能力。如上讨论的,除了其他因素之外,移动设备用户可获取的特征和能力可取决于实体的类型或对象,由相对于实体或对象的各种企业资源 304和服务309支持的特征和能力和与移动设备用户和实体或对象有关的认证证书。如果在步骤1301中接收的输入数据表示公司员工,且如果联系人信息和其他员工信息在步骤1303中被检索到,那么在步骤1304中可在移动设备上向用户呈现员工信息和诸如将员工添加到用户联系人、呼叫员工、发送邮件给员工、为员工安排会议、邀请员工参加会议或协作工作会议等的选项的各种相关功能。在医院或医疗设施的环境中,如果在步骤 1301中接收的输入数据表示患者,且如果患者信息在步骤1303中被检索到,那么在步骤1304中可将患者数据经由用户的移动设备302呈现给用户。作为另一个示例,如果在步骤1301中接收的输入数据表示打印机、扫描仪、投影仪或其他设备,且如果在步骤1303中检索到设备信息,则在步骤1304中可经由用户的移动设备302向用户呈现设备信息(例如,设备能力、状态、安排等)和诸如连接至设备并安装用于设备的驱动器的选项、在时间窗口内保留并安排设备的选项或直接或间接控制设备的各种选项的各种相关功能。
在某些实施方式中,可通过结合现实视图(例如,图像或视频输入) 和与实体或对象有关的共用和/或私人信息将增强的现实(AR)用户体验呈现给用户,为其,在步骤1301中接收用户输入,并在步骤1303中检索额外的企业数据。例如,使用在步骤1303中检索的诸如用户联系人数据、会议安排、状态、聊天记录或在步骤1303中从企业资源或服务中检索的任何其他信息,计算机产生的数据,可将增强的现实上覆于诸如人脸、标记、会议室标签、打印机等的实时和真实世界环境中。使用设备身份、状态、特征和能力的计算机产生的清单还可使用增强的现实以增强诸如打印机、投影仪等设备视图。在其他示例中,增强的现实技术不需要被使用,代替地,在步骤1304中可呈现独立用户界面。
在步骤1304中,用于对象或实体的不同组的特征/能力可被呈现给移动设备用户,取决于为相对于对象或实体的移动设备用户确定的访问等级。在一些情况下,移动设备302的用户可被要求以提供认证证书,并在向用户提供任何特征/能力之前可被企业系统认证。额外地,可由企业系统为与公司或企业系统有关的个人(例如,公司员工、访客等)和对象(例如,会议室、文件、打印机等)保留不同等级的访问许可和对应的特征/ 能力组。
在一些情况下,与个体和对象有关的信息、特征和能力可被指定为“共用的”或“私人的”,或者被分配更具体的和粒度组的可被用于控制对实体或对象的信息、特征和能力的访问的用户许可。例如,在访客或对公司的未授权的用户拍摄员工的脸或证件之后,访客可经由他们的移动设备 302接收一组基本的和共用的信息,诸如员工名称和工作联系人信息。相反地,如果诸如另一个员工或公司的管理人员的具有额外的特许访问的用户相同地拍摄员工的脸或证件,许可的用户可接收诸如员工的手机号、办公电话号、日程安排、管理人信息、雇佣历史和访客和非授权的用户可能不可获取的其他信息的额外的信息。相似地,与对象有关的信息、特征和能力可被指定为“共用的”或“私人的”,或者被分配特定用户许可以便基于请求数据的移动设备用户的身份和证件来控制对不同信息、特征和能力的访问。例如,公司内的访客、临时员工、实习生和特定员工分组(例如,根据等级、职位、部门等)可被分配对对象的一个访问等级,例如访问以查看会议室的调度和能力、访问以读取公司文件或记录并访问以在特定打印机上打印文档。在此示例中的不同员工或不同类型的用户可具有对同一个对象的不同等级的访问权。例如,级别较高的员工和/或技术人员可访问以安排并请求用于会议室的额外的设备、访问以修改或去除公司文件或记录或者访问以重启或重新配置打印机等。因此,当在步骤1303中检索与实体/对象有关的信息、特征和能力时以及当在步骤1304中将信息、特征和能力呈现给用户时,移动用户和/或企业系统上的客户端代理应用 500可确认用户的认证证书并可只呈现用户被授权的信息、特征和能力组。
当在步骤1304中访问与对象有关的特征和能力时,用户可直接(例如,通过使用用户移动设备和对象之间的点对点通信)或间接(例如,经由云系统/企业资源和服务)调用各种特征和能力。例如,在步骤1304中,可向用户呈现重启或重新配置诸如公司打印机或服务器的设备的能力。可经由客户端代理应用500从用户移动设备调用该能力。在相同情况下,用户的移动设备可使用NFC、蓝牙、Wi-Fi等与对象直接通信,以通知对象重启或重新配置。在相同情况下,对对象的访问可以是安全的,且一个或多个企业资源304或服务309可首先为用户的移动设备302提供访问代码或密码以使得用户的移动设备能够经由直接通信控制对象。在其他示例中,用户可经由客户端代理500向企业系统发送请求,以调用对象的能力。企业系统可接收并(可选地)验证请求,并然后可使用相关的企业服务器和接入网关控制对象。
图14是示出其中用户设备(例如,移动设备、台式计算机等)接收对应于对象的输入并与企业系统的各种组件交互以识别对象、检索与对象有关的特征和能力并访问特征和能力的示例的流程图。图14的步骤可对应于步骤1301-1304的一个或多个特定示例,其中,用户设备被用于识别与公司云系统或其他企业系统有关的对象和对象的访问特征和能力。
在步骤1401中,用户将认证证书输入到计算设备(例如,移动设备、台式计算机等)中,以便登录企业系统。在某些示例中,用户可经由运行在设备上的客户端代理应用500或其它软件应用来输入认证证书。客户端代理500可将用户证书传输到企业系统的认证管理器,并在步骤1402中,认证管理器可认证、产生服务令牌并将服务令牌传回用户设备。
在步骤1403中,用户设备可捕获输入,并在一些情况下,根据捕获的输入来对对象类型进行分类(和/或识别特定对象)。如上讨论的,捕获的输入可以是表示一个或多个个体或对象的NFC数据、图像数据、视频数据、条形码数据或其他类型的数据。捕获的输入还可包含位置数据(例如, GPS坐标)以促进对个体或对象的识别。在步骤1403中对于对象的分类可被用户设备(如在图14中示出)、由企业系统中的资源或服务、外部资源或用户设备、企业系统和外部资源的结合实施。例如,如上讨论的,OCR 和建筑物目录服务309可被用于识别特定对象(例如,办公室、会议室), NFC阅读器可被用于识别其他对象(例如,NFC标签的地址、文件和设备),人脸检测和人脸识别可被用于识别其它对象(例如,人脸或员工证件的图像)等等。例如并且非限制性地,在iOS平台的一些实施方式中,客户端代理500可创建音频-视频捕获会话对象、AVCaptureSession,其调整并协调在输入(AVCaptureInput对象)和输出(AVCaptureOutpu对象)之间的流量以实施实时输入捕获和渲染。客户端代理500还可创建CIDetector对象,其使用图像处理以寻找图像中的特定特征。CIDetector对象和CIDetectorTypeFace对象可被一起实例化,以便检测图像中的人脸和脸部特征。在处理并搜索图像之后,CIDetector对象的featuresInImage方法可被用于检索例如以CIFeature对象的形式的特征阵列。CIFeature对象可表示与CIDetector对象的准则匹配的图像的一部分。诸如CIFeature特征的 CIFeature的子类可保存特定于发现该特征的检测器的额外的信息。例如, CIFaceFeature对象可描述图像中检测到的人脸。CIFaceFeature对象的特征还可提供人脸的眼睛和嘴巴的位置,其在后边的步骤中,可对于具有与为其接收输入的人脸有关的共用的和/或私人信息的AR查看的适当定位是有用的。作为另一个示例并且非限制性地,在一些实施方式中,Puma.NET 开放资源OCR SDK可被客户端代理500使用以加载图像、可选择地配置语言和字体设置并将图像转换成识别的文字。
在步骤1404中,用户设备可向企业系统请求与对象有关的特征和能力。在步骤1404中的请求可包含对象的一个或多个显著特征,为其,在步骤1403中捕获输入数据。例如,这种显著特征可包含员工脸或证件的图像、办公室或会议室房间号、打印机图像和对应位置坐标等。用户设备还可确定并传输对象类型(例如,人脸图像、设备位置、房间号、文件或记录号等)以允许企业系统将该请求路由到适当的企业系统中。此外,在一些情况下,在步骤1404中,用户设备可连同请求传输先前接收的服务令牌,或可用其他方式向认证管理器提供认证证书。
在步骤1405中,认证管理器可使用先前接收的服务令牌或其他认证证书认证用户,并可使用在步骤1404中由用户设备发送的对象类型和/或对象的显著特征以将请求路由到适当的企业资源。例如,可将人脸图像路由到员工图像数据库和/或访客图像数据库,从而使得图像可被识别,可将房间号路由到建筑物目录服务,将打印机图像和位置路由到建筑物设施服务等。
在1406中,假设步骤1403中用户设备没有已经识别特定对象,企业资源(其可由单个资源或资源和服务的结合组成)可分析请求并根据请求中的数据识别特定实体/对象(例如,公司员工、房间或位置、文件、设备、汽车等)。在已经识别特定对象之后,企业资源可基于用户设备的认证证书检索与对象有关的特征和能力。如果对象对应于公司员工的图像,则在步骤1406中所用的企业资源可包含公司邮件服务器、员工数据库和/或可包含关于员工的信息的其他资源。如果对象对应于公司设备(例如,计算机服务器、打印机等),则在步骤1406中所用的企业资源可包含能够检索设备特征并控制设备的设备管理器和应用控制器。
在步骤1407中,企业资源可将与对象有关的各种特征和能力传回到用户设备。如上所提及的,不同用户可具有不同登记的许可以查看关于个体或对象的信息并访问与个体或对象有关的特征和能力。因此,在步骤 1407中呈现给用户的特征和能力可基于用户身份和认证证书。在步骤1408 中,用户可使用他们的设备访问与对象有关的各种特征和能力。客户端代理500或其他软件应用可提供用户界面和/或可自动启动应用以允许用户访问与对象有关的特征和能力。在一些实力中,用户设备可通过结合从企业资源接收的特征和能力以及与对象有关的现实视图(例如,图像或视频输入)来提供增强现实(AR)用户体验视图。
在步骤1409中,一个或多个企业资源从用户设备经由客户端代理500 接收请求以控制对象。尽管未在图14中示出,请求可包含在用户设备、认证管理器和企业资源之间来回发送的协议命令。企业资源可通过经由接入网关向对象发出命令来控制对象。例如,在公司网络和云系统实现中,命令网络服务器和其他后端服务器可控制公司网络上的设备,例如,打印机、服务器、电话等,并可访问来自公司邮件服务器、文件服务器、web 服务器等的数据。在步骤1410中,设备接收并作用于经由企业资源发送的用户请求,从而为用户提供与对象有关的特征和能力。如上讨论的,在其他示例中,用户设备可被配置成直接与对象进行通信(例如,通过使用直接点对点通信),而不是通过企业资源间接进行请求。
图15A-C是示出与企业系统中的特定实体和对象有关的特征和能力,其可经由移动设备被用户识别并访问。具体地,图15A-15C示出步骤1301-1304和/或1401-1410的实现中的特定示例,其中,移动设备处的用户捕获对应于个体或对象的输入数据,并可与企业系统进行通信以识别个体或对象,并检索和向用户提供与个体或对象有关的各种特征和能力。
在图15A-15C 中示出的示例用户界面屏幕中,移动设备的用户可能最近在会议期间拍摄了另一个员工的身份识别卡。在用OCR和/或脸部识别技术识别员工之后,移动设备上的客户端代理500可访问公司资源(例如,通过使用ActiveSync协议上的单点登录(SSO)),以经由邮件服务器或公司目录服务器检索员工的信息。在图15A中,将员工的信息与员工身份识别卡的图像和允许用户向员工发送电子邮件的选项一起显示在增强的现实视图中、邀请员工到会议、呼叫员工或将员工添加至移动设备用户的联系人清单。
在图15B中示出的示例中,移动设备的用户可能最近在会议期间拍摄了会议室招贴。可使用与由移动设备捕获的图像有关的OCR和/或GPS坐标来识别会议室房间号。客户端代理500然后可访问公司资源(例如,通过使用ActiveSync协议上的单点登录(SSO)),并例如从公司邮件服务器、调度系统或公司资源目录中检索关于会议室的信息。在图15B中,会议室信息与会议室招贴的图像和允许用户预约会议室的选项一起被显示在增强的现实视图中。
在图15C中示出的示例中,移动设备的用户可能最近在会议期间拍摄了公司场所上的办公室打印机。在该示例中,可使用一个或多个NFC(如果打印机包含NFC标签或能够实现NFC)、GPS、IPR和/或OCR来识别特定打印机。在识别打印机之后,客户端代理500然后可访问公司资源(例如,通过使用ActiveSync协议上的单点登录(SSO)),并例如从公司设备管理器中检索关于打印机的信息。在图15C中,打印机信息与打印机图像和允许用户将打印机添加成用户移动设备中的用户设备之一的选项一起被显示在增强的现实视图中。
虽然已经以针对结构特征和/或方法动作的语言描述了本主题,但是应该理解的是,在所附权利要求中定义的主题不必限于以上所述的具体特征或动作。相反,上述的具体特征和动作作为所附权利要求的示例性实现来描述。本公开的方面从其例证性实施方式方面被描述。从本公开的回顾中,本领域中的普通技术人员将想到在所附权利要求的范围和精神内的很多其它实施方式、修改和变化。例如,本领域的一个普通技术人员将理解,可用除了所引用的顺序之外的顺序执行本文所描述的和/或说明的步骤,且可根据本公开内容的方面,所说明的一个或多个步骤是可选择的。可以进行修改,特别是着眼于前述教导。例如,前面提到的实施方式的每个元件可单独使用或与其它实施方式的元件进行组合使用或进行子组合使用。还应理解和明白的是,可进行修改,且并不脱离本文中所描述的方面的精神和范围。

Claims (11)

1.一种共享设备之间的能力的方法,包括:
由第一移动计算设备确定所述第一移动计算设备位于靠近第二计算设备处;
由所述第一移动计算设备向所述第二计算设备传输第一组设备能力;
由所述第一移动计算设备从所述第二计算设备接收第二组设备能力;
由所述第一移动计算设备建立与所述第二计算设备的第一持续通信会话;
由所述第一移动计算设备经由所述第一持续通信会话来与所述第二计算设备共享在所述第一移动计算设备上执行的应用会话;
在所述第一移动计算设备处从所述第一移动计算设备接收第一用户输入;
在所述第一移动计算设备处通过所述第一持续通信会话从所述第二计算设备接收第二用户输入;
根据所述第一组设备能力转换所述第二用户输入;以及
仲裁所述第一用户输入和所述第二用户输入,以使得所述第一用户输入和所述第二用户输入中的至少一个被放弃。
2.根据权利要求1所述的方法,还包括:
在所述第一移动计算设备处接收用户输入,所述用户输入从能够用于在所述第一移动计算设备处共享的较大组设备能力中选择用于共享的所述第一组设备能力。
3.根据权利要求2所述的方法,其中,在确定所述第一移动计算设备位于靠近所述第二计算设备处之前,选择用于共享的所述第一组设备能力的所述用户输入被接收。
4.根据权利要求2所述的方法,其中,在确定所述第一移动计算设备位于靠近所述第二计算设备处之后,选择用于共享的所述第一组设备能力的所述用户输入被接收,以及其中,用于共享的所选择的第一组设备能力特定于与所述第二计算设备的所述第一持续通信会话。
5.根据权利要求1所述的方法,其中,所述第一持续通信会话包括在所述第一移动计算设备和所述第二计算设备之间的双向共享通信会话,以及其中,由所述第一移动计算设备进行的共享包括:
在第一时间段内持续将数据传输到所述第二计算设备,所传输的数据对应于所述第一组设备能力中的第一设备能力;以及
在所述第一时间段内持续从所述第二计算设备接收数据,所接收的数据对应于所述第二组设备能力中的第二设备能力。
6.根据权利要求1所述的方法,还包括:
在所述第一移动计算设备处接收用户输入,所述用户输入授权与所述第二计算设备的设备能力的单向共享,但不授权与所述第二计算设备的设备能力的双向共享,并且其中,由所述第一移动计算设备进行的共享包括根据所述用户输入的设备能力的单向共享会话。
7.根据权利要求1所述的方法,还包括:
确定所述第一移动计算设备位于靠近第三计算设备处;
向所述第三计算设备传输所述第一组设备能力;
从所述第三计算设备接收第三组设备能力;以及
与所述第三计算设备建立第二持续通信会话,
其中,由所述第一移动计算设备进行的所述共享包括在同一时间段内使用所述第一持续通信会话与所述第二计算设备共享一个或多个设备能力并使用所述第二持续通信会话与所述第三计算设备共享一个或多个额外的设备能力。
8.根据权利要求1所述的方法,其中,将所述第一组设备能力传输到所述第二计算设备包括传输识别所述第一移动计算设备的一个或多个输入或输出功能能力的数据,包含以下项的至少一个:识别所述第一移动计算设备上的显示屏的数量的数据;识别所述第一移动计算设备的显示屏的尺寸的数据;识别所述第一移动计算设备的触摸屏能力的数据;识别与所述第一移动计算设备连接的外围输入或输出设备的数据;识别所述第一移动计算设备的视频显示能力的数据;识别所述第一移动计算设备的相机能力的数据;识别所述第一移动计算设备的麦克风能力的数据;或者识别所述第一移动计算设备的语音识别能力的数据。
9.根据权利要求1所述的方法,其中,将所述第一组设备能力传输到所述第二计算设备包括传输识别在所述第一移动计算设备处执行的一个或多个应用会话的数据,所述方法还包括:
确定所述一个或多个应用会话已经在所述第二计算设备处开始;以及
在所述第一移动计算设备处结束所述一个或多个应用会话。
10.根据权利要求9所述的方法,其中,所述一个或多个应用会话是虚拟应用会话,以及其中,在所述第二计算设备处开始所述一个或多个应用会话包括配置所述第二计算设备上的客户端代理应用以允许对所述一个或多个虚拟应用会话的访问。
11.根据权利要求1所述的方法,其中,第二用户输入的所述转换包括以下项的至少一个:将触摸事件转换成鼠标事件或反之亦然;将触摸事件转换成键盘事件或反之亦然;将声音数据转换成文字数据或反之亦然;或者将动作或方向事件转换成触摸事件或反之亦然。
CN201480039444.4A 2013-05-20 2014-05-13 企业系统中的接近度和环境感知的移动工作空间 Active CN105378768B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010231183.3A CN111311202A (zh) 2013-05-20 2014-05-13 企业系统中的接近度和环境感知的移动工作空间

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US201361825274P 2013-05-20 2013-05-20
US61/825,274 2013-05-20
US14/172,321 US10243786B2 (en) 2013-05-20 2014-02-04 Proximity and context aware mobile workspaces in enterprise systems
US14/172,321 2014-02-04
US14/251,016 2014-04-11
US14/251,016 US10291465B2 (en) 2013-05-20 2014-04-11 Proximity and context aware mobile workspaces in enterprise systems
PCT/US2014/037763 WO2014189706A2 (en) 2013-05-20 2014-05-13 Proximity and context aware mobile workspaces in enterprise systems

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN202010231183.3A Division CN111311202A (zh) 2013-05-20 2014-05-13 企业系统中的接近度和环境感知的移动工作空间

Publications (2)

Publication Number Publication Date
CN105378768A CN105378768A (zh) 2016-03-02
CN105378768B true CN105378768B (zh) 2020-04-21

Family

ID=51896699

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201480039444.4A Active CN105378768B (zh) 2013-05-20 2014-05-13 企业系统中的接近度和环境感知的移动工作空间
CN202010231183.3A Pending CN111311202A (zh) 2013-05-20 2014-05-13 企业系统中的接近度和环境感知的移动工作空间

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN202010231183.3A Pending CN111311202A (zh) 2013-05-20 2014-05-13 企业系统中的接近度和环境感知的移动工作空间

Country Status (4)

Country Link
US (3) US10243786B2 (zh)
EP (1) EP3000078A2 (zh)
CN (2) CN105378768B (zh)
WO (1) WO2014189706A2 (zh)

Families Citing this family (192)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9736675B2 (en) * 2009-05-12 2017-08-15 Avaya Inc. Virtual machine implementation of multiple use context executing on a communication device
US9631930B2 (en) 2013-03-15 2017-04-25 Apple Inc. Warning for frequently traveled trips based on traffic
US20140365505A1 (en) 2013-06-08 2014-12-11 Apple Inc. Harvesting Addresses
US9200915B2 (en) * 2013-06-08 2015-12-01 Apple Inc. Mapping application with several user interfaces
US9317813B2 (en) 2013-03-15 2016-04-19 Apple Inc. Mobile device with predictive routing engine
US9430624B1 (en) * 2013-04-30 2016-08-30 United Services Automobile Association (Usaa) Efficient logon
US9509676B1 (en) * 2013-04-30 2016-11-29 United Services Automobile Association (Usaa) Efficient startup and logon
US20140366091A1 (en) * 2013-06-07 2014-12-11 Amx, Llc Customized information setup, access and sharing during a live conference
KR101573766B1 (ko) * 2013-08-05 2015-12-02 현대모비스 주식회사 무선 연결 및 데이터 공유 간소화 장치 및 그 방법
US10129242B2 (en) * 2013-09-16 2018-11-13 Airwatch Llc Multi-persona devices and management
US20150095771A1 (en) * 2013-09-30 2015-04-02 Lenovo (Singapore) Pte. Ltd. Journal launch based on context
US20150138089A1 (en) * 2013-11-15 2015-05-21 TabiTop, LLC Input devices and methods
US10181985B1 (en) * 2013-12-04 2019-01-15 Amazon Technologies, Inc. Cloud-based device discovery
WO2015108330A1 (en) * 2014-01-20 2015-07-23 Samsung Electronics Co., Ltd. Electronic device for controlling an external device using a number and method thereof
WO2015137907A1 (en) * 2014-03-10 2015-09-17 Hewlett-Packard Development Company, L.P. Providing an operating system session
US9705736B2 (en) * 2014-03-14 2017-07-11 Ray Wang Method and system for a personal network
KR102139997B1 (ko) * 2014-03-21 2020-08-12 에스케이플래닛 주식회사 비콘장치의 보안 강화 방법, 이를 위한 시스템 및 장치
US9888379B2 (en) * 2014-04-16 2018-02-06 Verizon Patent And Licensing Inc. Affiliation and disaffiliation of computing devices
US9894034B2 (en) * 2014-05-21 2018-02-13 Fortinet, Inc. Automated configuration of endpoint security management
US9917814B2 (en) 2014-05-21 2018-03-13 Fortinet, Inc. Automated configuration of endpoint security management
US9819746B2 (en) * 2014-05-21 2017-11-14 Fortinet, Inc. Automated configuration of endpoint security management
US20160004853A1 (en) * 2014-07-07 2016-01-07 International Business Machines Corporation Preventing unauthorized access to computer software applications
US10554709B2 (en) * 2014-07-08 2020-02-04 Microsoft Technology Licensing, Llc Stream processing utilizing virtual processing agents
WO2016011494A1 (en) * 2014-07-25 2016-01-28 Ip Key Pty Ltd Frameworks and methodologies configured to enable integration of booking and access control for service providers
US20160050037A1 (en) * 2014-08-12 2016-02-18 Valcom, Inc. Emergency alert notification device, system, and method
US20160055740A1 (en) * 2014-08-25 2016-02-25 Mindray Ds Usa, Inc. Systems and methods for medical device location discovery
US11061991B2 (en) 2014-09-05 2021-07-13 Airwatch, Llc Secure document sharing
US10693946B2 (en) 2014-09-16 2020-06-23 Amazon Technologies, Inc. Instance backed mobile devices
US10493996B2 (en) 2014-09-22 2019-12-03 Future Technology Partners, Llc Method and system for impaired driving detection, monitoring and accident prevention with driving habits
US9418491B2 (en) 2014-09-22 2016-08-16 Brian K. Phillips Method and system for automatically identifying a driver by creating a unique driver profile for a vehicle from driving habits
US9526032B2 (en) * 2014-09-26 2016-12-20 Apple Inc. Network bandwidth sharing for small mobile devices
US20160125891A1 (en) * 2014-10-31 2016-05-05 Intel Corporation Environment-based complexity reduction for audio processing
US9532221B2 (en) * 2014-11-18 2016-12-27 Motorola Mobility Llc Communicating credentials and content between multiple mobile electronic devices located within content sharing geographical area
US20160173569A1 (en) * 2014-12-10 2016-06-16 Altimetrik Corp. Standardized system architecture for applications on computer devices
US20170302680A1 (en) * 2014-12-10 2017-10-19 Nokia Technologies Oy Local authentication
US20160182404A1 (en) * 2014-12-22 2016-06-23 Ashutosh Rastogi Controlling access and behavior based on time and location
CN107409274B (zh) 2015-03-06 2020-09-15 苹果公司 确定何时建立移动客户端和代理设备之间的连接
EP3070900A1 (en) * 2015-03-16 2016-09-21 Thomson Licensing Method and system of access of a mobile terminal to information in an area
US9749310B2 (en) * 2015-03-27 2017-08-29 Intel Corporation Technologies for authentication and single-sign-on using device security assertions
US10318582B2 (en) 2015-03-30 2019-06-11 Vmware Inc. Indexing electronic documents
US10089388B2 (en) 2015-03-30 2018-10-02 Airwatch Llc Obtaining search results
US10229209B2 (en) * 2015-03-30 2019-03-12 Airwatch Llc Providing search results based on enterprise data
US10453325B2 (en) 2015-06-01 2019-10-22 Apple Inc. Creation of reminders using activity state of an application
US10321317B1 (en) * 2015-06-04 2019-06-11 American Megatrends, Inc. NFC-enhanced firmware security
US9603123B1 (en) 2015-06-04 2017-03-21 Apple Inc. Sending smart alerts on a device at opportune moments using sensors
US10235863B2 (en) 2015-06-05 2019-03-19 Apple Inc. Smart location-based reminders
US10298259B1 (en) 2015-06-16 2019-05-21 Amazon Technologies, Inc. Multi-layered data redundancy coding techniques
US10270475B1 (en) 2015-06-16 2019-04-23 Amazon Technologies, Inc. Layered redundancy coding for encoded parity data
US10977128B1 (en) 2015-06-16 2021-04-13 Amazon Technologies, Inc. Adaptive data loss mitigation for redundancy coding systems
US10270476B1 (en) 2015-06-16 2019-04-23 Amazon Technologies, Inc. Failure mode-sensitive layered redundancy coding techniques
US9998150B1 (en) 2015-06-16 2018-06-12 Amazon Technologies, Inc. Layered data redundancy coding techniques for layer-local data recovery
JP6204477B2 (ja) * 2015-06-29 2017-09-27 ガンホー・オンライン・エンターテイメント株式会社 サーバー装置
US10609122B1 (en) 2015-06-29 2020-03-31 Amazon Technologies, Inc. Instance backed building or place
US11061969B1 (en) 2015-06-29 2021-07-13 Amazon Technologies, Inc. Instance backed mobile devices with multiple instances
US20170004595A1 (en) * 2015-06-30 2017-01-05 The Boeing Company Rewarding a user for providing safety hazard information
US9998539B1 (en) 2015-07-01 2018-06-12 Amazon Technologies, Inc. Non-parity in grid encoded data storage systems
US10198311B1 (en) 2015-07-01 2019-02-05 Amazon Technologies, Inc. Cross-datacenter validation of grid encoded data storage systems
US9959167B1 (en) 2015-07-01 2018-05-01 Amazon Technologies, Inc. Rebundling grid encoded data storage systems
US10108819B1 (en) 2015-07-01 2018-10-23 Amazon Technologies, Inc. Cross-datacenter extension of grid encoded data storage systems
US10394762B1 (en) 2015-07-01 2019-08-27 Amazon Technologies, Inc. Determining data redundancy in grid encoded data storage systems
US10162704B1 (en) 2015-07-01 2018-12-25 Amazon Technologies, Inc. Grid encoded data storage systems for efficient data repair
US10089176B1 (en) 2015-07-01 2018-10-02 Amazon Technologies, Inc. Incremental updates of grid encoded data storage systems
US10187455B2 (en) * 2015-07-28 2019-01-22 Microsoft Technology Licensing, Llc Automated network connection sharing
US10911404B1 (en) * 2015-08-24 2021-02-02 Amazon Technologies, Inc. Attribute based authorization
US9690622B1 (en) 2015-08-24 2017-06-27 Amazon Technologies, Inc. Stateless instance backed mobile devices
US10863003B2 (en) 2015-09-10 2020-12-08 Elliot Berookhim Methods, devices, and systems for determining a subset for autonomous sharing of digital media
JP6601085B2 (ja) * 2015-09-15 2019-11-06 株式会社リコー データ管理システム、データ管理方法
US9928141B1 (en) 2015-09-21 2018-03-27 Amazon Technologies, Inc. Exploiting variable media size in grid encoded data storage systems
US11386060B1 (en) 2015-09-23 2022-07-12 Amazon Technologies, Inc. Techniques for verifiably processing data in distributed computing systems
US9940474B1 (en) 2015-09-29 2018-04-10 Amazon Technologies, Inc. Techniques and systems for data segregation in data storage systems
US10320861B2 (en) * 2015-09-30 2019-06-11 Google Llc System and method for automatic meeting note creation and sharing using a user's context and physical proximity
US20170123622A1 (en) * 2015-10-28 2017-05-04 Microsoft Technology Licensing, Llc Computing device having user-input accessory
US10255819B2 (en) * 2015-11-17 2019-04-09 Airwatch Llc Systems for classroom media sharing
US10237309B2 (en) 2015-11-25 2019-03-19 International Business Machines Corporation Managing virtual desktop infrastructure data sharing
US10394789B1 (en) 2015-12-07 2019-08-27 Amazon Technologies, Inc. Techniques and systems for scalable request handling in data processing systems
US10832222B1 (en) 2015-12-11 2020-11-10 Massachusetts Mutual Life Insurance Company Location-based note generation using wireless devices
US10642813B1 (en) 2015-12-14 2020-05-05 Amazon Technologies, Inc. Techniques and systems for storage and processing of operational data
US10248793B1 (en) 2015-12-16 2019-04-02 Amazon Technologies, Inc. Techniques and systems for durable encryption and deletion in data storage systems
US10324790B1 (en) 2015-12-17 2019-06-18 Amazon Technologies, Inc. Flexible data storage device mapping for data storage systems
US10102065B1 (en) 2015-12-17 2018-10-16 Amazon Technologies, Inc. Localized failure mode decorrelation in redundancy encoded data storage systems
US10180912B1 (en) 2015-12-17 2019-01-15 Amazon Technologies, Inc. Techniques and systems for data segregation in redundancy coded data storage systems
US10127105B1 (en) 2015-12-17 2018-11-13 Amazon Technologies, Inc. Techniques for extending grids in data storage systems
US10235402B1 (en) 2015-12-17 2019-03-19 Amazon Technologies, Inc. Techniques for combining grid-encoded data storage systems
US11501252B1 (en) * 2015-12-31 2022-11-15 American Airlines, Inc. Context-based communication platform
US20170221296A1 (en) 2016-02-02 2017-08-03 6d bytes inc. Automated preparation and dispensation of food and beverage products
US10575120B2 (en) 2016-02-27 2020-02-25 Ray Wang Method of autonomous social media system
US10592336B1 (en) 2016-03-24 2020-03-17 Amazon Technologies, Inc. Layered indexing for asynchronous retrieval of redundancy coded data
US10061668B1 (en) 2016-03-28 2018-08-28 Amazon Technologies, Inc. Local storage clustering for redundancy coded data storage system
US10366062B1 (en) 2016-03-28 2019-07-30 Amazon Technologies, Inc. Cycled clustering for redundancy coded data storage systems
US10678664B1 (en) 2016-03-28 2020-06-09 Amazon Technologies, Inc. Hybridized storage operation for redundancy coded data storage systems
US10389705B2 (en) * 2016-03-30 2019-08-20 Airwatch Llc Associating user accounts with enterprise workspaces
US10637723B2 (en) 2016-03-30 2020-04-28 Airwatch Llc Configuring enterprise workspaces
US10862693B2 (en) * 2016-03-30 2020-12-08 Hewlett-Packard Development Company, L.P. Meeting passcodes
US10028087B2 (en) * 2016-04-04 2018-07-17 Ricoh Company, Ltd. Locating and tracking missing or relocated devices
US10326603B2 (en) 2016-05-06 2019-06-18 Blackberry Limited Inter-workspace communications
US10545343B2 (en) * 2016-05-27 2020-01-28 Assa Abloy Ab Augmented reality security verification
US10181978B1 (en) * 2016-06-29 2019-01-15 Amazon Technologies, Inc. Discovery of device capabilities
US20180013816A1 (en) * 2016-07-06 2018-01-11 Saeid Safavi Method and Apparatus for On Demand Mobile Data Transfer
US10650593B2 (en) 2016-07-12 2020-05-12 Tyco Fire & Security Gmbh Holographic technology implemented security solution
CN106027679B (zh) * 2016-07-15 2019-05-24 中兴通讯股份有限公司 视频会议的实现方法、装置及系统、云桌面终端
US10791172B2 (en) 2016-07-22 2020-09-29 Tinker Pte. Ltd. Systems and methods for interacting with nearby people and devices
US10574788B2 (en) 2016-08-23 2020-02-25 Ebay Inc. System for data transfer based on associated transfer paths
JPWO2018055737A1 (ja) * 2016-09-23 2019-01-10 ヤマハ株式会社 制御装置、制御対象機器、表示用データの処理方法及びプログラム
US11137980B1 (en) 2016-09-27 2021-10-05 Amazon Technologies, Inc. Monotonic time-based data storage
US11281624B1 (en) 2016-09-28 2022-03-22 Amazon Technologies, Inc. Client-based batching of data payload
US10496327B1 (en) 2016-09-28 2019-12-03 Amazon Technologies, Inc. Command parallelization for data storage systems
US10810157B1 (en) 2016-09-28 2020-10-20 Amazon Technologies, Inc. Command aggregation for data storage operations
US10657097B1 (en) 2016-09-28 2020-05-19 Amazon Technologies, Inc. Data payload aggregation for data storage systems
US11204895B1 (en) 2016-09-28 2021-12-21 Amazon Technologies, Inc. Data payload clustering for data storage systems
US10437790B1 (en) 2016-09-28 2019-10-08 Amazon Technologies, Inc. Contextual optimization for data storage systems
US10614239B2 (en) 2016-09-30 2020-04-07 Amazon Technologies, Inc. Immutable cryptographically secured ledger-backed databases
US11212326B2 (en) 2016-10-31 2021-12-28 Microsoft Technology Licensing, Llc Enhanced techniques for joining communication sessions
JP6801375B2 (ja) * 2016-11-01 2020-12-16 セイコーエプソン株式会社 無線通信装置、並びに、その制御方法及び制御プログラム
US10635509B2 (en) 2016-11-17 2020-04-28 Sung Jin Cho System and method for creating and managing an interactive network of applications
US10296764B1 (en) 2016-11-18 2019-05-21 Amazon Technologies, Inc. Verifiable cryptographically secured ledgers for human resource systems
JP2018085069A (ja) * 2016-11-25 2018-05-31 富士通株式会社 情報受信端末、情報配信システム、表示方法および表示プログラム
US11269888B1 (en) 2016-11-28 2022-03-08 Amazon Technologies, Inc. Archival data storage for structured data
US20180203716A1 (en) * 2017-01-13 2018-07-19 Citrix Systems, Inc. Systems and methods for software event signaling of state changes of remote hardware devices for virtual desktop infrastructure environments
US10587459B2 (en) 2017-02-13 2020-03-10 Citrix Systems, Inc. Computer system providing cloud-based health monitoring features and related methods
EP3361706A1 (en) * 2017-02-14 2018-08-15 Webtext Holdings Limited A redirection bridge device and system, a method of redirection bridging, method of use of a user interface and a software product
EP3593555A1 (en) * 2017-03-07 2020-01-15 Sita Information Networking Computing USA, Inc. System, device and method for accessing shared infrastructure
US10552206B2 (en) 2017-05-23 2020-02-04 Ge Aviation Systems Llc Contextual awareness associated with resources
US10218697B2 (en) * 2017-06-09 2019-02-26 Lookout, Inc. Use of device risk evaluation to manage access to services
US11385930B2 (en) 2017-06-21 2022-07-12 Citrix Systems, Inc. Automatic workflow-based device switching
US10491596B2 (en) * 2017-07-31 2019-11-26 Vmware, Inc. Systems and methods for controlling email access
CN108206743B (zh) * 2017-09-20 2022-11-08 中兴通讯股份有限公司 资源共享方法及装置
US10721316B2 (en) 2017-09-29 2020-07-21 Citrix Systems, Inc. Computer system providing user specific session prelaunch features and related methods
US10798103B2 (en) * 2017-11-21 2020-10-06 VWware, Inc. Adaptive device enrollment
US10749870B2 (en) 2017-11-21 2020-08-18 Vmware, Inc. Adaptive device enrollment
US10986078B2 (en) 2017-11-21 2021-04-20 Vmware, Inc. Adaptive device enrollment
US10972468B2 (en) 2017-11-21 2021-04-06 Vmware, Inc. Adaptive device enrollment
US10867601B2 (en) * 2018-01-17 2020-12-15 Citrix Systems, Inc. In-band voice-assistant/concierge for controlling online meetings
US11057442B2 (en) * 2018-01-27 2021-07-06 Vmware, Inc. System and method for workspace sharing
US11206267B2 (en) 2018-01-31 2021-12-21 T-Mobile Usa, Inc. Fine grained digital experience controls
US11627137B2 (en) 2018-01-31 2023-04-11 T-Mobile Usa, Inc. Virtual profile instantiations via an access privilege control system
US11286101B2 (en) * 2018-04-04 2022-03-29 6d bytes inc. Cloud computer system for controlling clusters of remote devices
US10948593B2 (en) 2018-06-22 2021-03-16 Citrix Systems, Inc. System for determining distance between fixed and mobile endpoints and related methods
US10999332B2 (en) * 2018-07-06 2021-05-04 Barco N.V. User-centric connections to a location comprising digital collaboration tools
US11916977B2 (en) * 2018-07-06 2024-02-27 Barco N.V. User-centric connections to a location comprising digital collaboration tools
EP3818737A4 (en) * 2018-07-06 2022-03-16 Thirdwayv, Inc. LOW POWER, SECURE COMMUNICATION FROM ONE WIRELESS MEDICAL DEVICE TO MULTIPLE SMARTPHONES
US11489883B2 (en) * 2018-07-06 2022-11-01 Barco N.V. User-centric connections to a location comprising digital collaboration tools
CN109167752B (zh) * 2018-07-13 2021-04-23 奇酷互联网络科技(深圳)有限公司 移动终端和自动登录应用平台的方法、装置
CN109151171A (zh) * 2018-07-23 2019-01-04 上海华测导航技术股份有限公司 基于蓝牙的接收机模式配置方法、装置、接收机及介质
JP7028117B2 (ja) * 2018-09-12 2022-03-02 株式会社リコー 情報処理システム、情報処理装置、情報処理方法及びプログラム
US20240314125A1 (en) * 2018-12-04 2024-09-19 Journey.ai Providing access control and identity verification for communications when initiating a communication to an entity to be verified
US20200196128A1 (en) * 2018-12-12 2020-06-18 Carmen Chapados Network-based alert system and method
EP3671511B1 (en) * 2018-12-19 2022-07-06 Rohde & Schwarz GmbH & Co. KG Communication system and method
KR102689698B1 (ko) * 2019-01-03 2024-07-31 삼성전자주식회사 디스플레이 장치 및 그 제어 방법
US10984062B2 (en) 2019-01-07 2021-04-20 Citrix Systems, Inc. Device augmentation of real time communications
US10841113B2 (en) 2019-01-15 2020-11-17 Vmware, Inc. Workflow automation using near-field communication
US11868924B2 (en) * 2019-01-25 2024-01-09 The Toronto-Dominion Bank System and method for providing location-based appointment operations
US11165871B2 (en) * 2019-02-01 2021-11-02 Citrix Systems, Inc. Computer system providing context-based Software as a Service (SaaS) application session switching and related methods
US11392467B2 (en) 2019-04-17 2022-07-19 Microsoft Technology Licensing, Llc Failover between decentralized identity stores
US11190512B2 (en) 2019-04-17 2021-11-30 Microsoft Technology Licensing, Llc Integrity attestation of attestation component
US11520908B2 (en) * 2019-04-17 2022-12-06 Lookout Inc. Self-management of devices using personal mobile device management
US11429743B2 (en) 2019-04-29 2022-08-30 Microsoft Technology Licensing, Llc Localization of DID-related claims and data
US11381567B2 (en) 2019-04-29 2022-07-05 Microsoft Technology Licensing, Llc Execution of an application within a scope of user-granted permission
US11411959B2 (en) * 2019-05-03 2022-08-09 Microsoft Technology Licensing, Llc Execution of application in a container within a scope of user-granted permission
US11222137B2 (en) 2019-05-03 2022-01-11 Microsoft Technology Licensing, Llc Storing and executing an application in a user's personal storage with user granted permission
US10862975B1 (en) * 2019-06-04 2020-12-08 Citrix Systems, Inc. Computing system providing direct routing for desktop as a service (DaaS) sessions to a private network and related methods
CN110362967A (zh) * 2019-07-15 2019-10-22 北京奇艺世纪科技有限公司 应用程序防篡改的检测方法、装置、终端设备及存储介质
US10990416B2 (en) * 2019-07-30 2021-04-27 Ncr Corporation Location-based mobile application processing
JP2021026308A (ja) * 2019-07-31 2021-02-22 シャープ株式会社 リソース管理サーバ、制御方法、プログラム及びシステム
US11412013B2 (en) * 2019-08-07 2022-08-09 Jpmorgan Chase Bank, N.A. System and method for implementing video soft phone applications
US11068129B2 (en) * 2019-08-20 2021-07-20 Lenovo (Singapore) Pte. Ltd. Method and device for augmenting a communal display device
US10860954B1 (en) * 2019-08-27 2020-12-08 Capital One Services, Llc Roomfinder platform
US11330006B2 (en) * 2019-08-29 2022-05-10 Bank Of America Corporation Detecting and identifying devices at enterprise locations to protect enterprise-managed information and resources
US11356462B2 (en) 2019-08-29 2022-06-07 Bank Of America Corporation Detecting and identifying devices at enterprise locations to protect enterprise-managed information and resources
WO2021046704A1 (en) 2019-09-10 2021-03-18 Citrix Systems, Inc. Perhipheral device sharing over peer-to-peer connection
US11290560B2 (en) * 2019-09-30 2022-03-29 Slack Technologies, Llc Group-based communication apparatus, method, and computer program product configured to manage draft messages in a group-based communication system
WO2021066842A1 (en) 2019-10-04 2021-04-08 Hewlett-Packard Development Company, L.P. Personalize user interface
WO2021068115A1 (en) 2019-10-08 2021-04-15 Citrix Systems, Inc. Application and device recommendation engine
US11304246B2 (en) 2019-11-01 2022-04-12 Microsoft Technology Licensing, Llc Proximity-based pairing and operation of user-specific companion devices
US11256392B2 (en) 2019-11-01 2022-02-22 Microsoft Technology Licensing, Llc Unified interfaces for paired user computing devices
US11546391B2 (en) 2019-11-01 2023-01-03 Microsoft Technology Licensing, Llc Teleconferencing interfaces and controls for paired user computing devices
US11050815B2 (en) 2019-11-27 2021-06-29 International Business Machines Corporation Dynamic resource provision based on detected nearby devices
AU2021211163A1 (en) * 2020-01-26 2022-07-21 Barco N.V. Synchronizing local room and remote sharing
US11150848B2 (en) * 2020-02-21 2021-10-19 Toshiba Tec Kabushiki Kaisha System and method for identification and location of user identified feature specific printers
US11964247B2 (en) 2020-03-06 2024-04-23 6d bytes inc. Automated blender system
US11611540B2 (en) * 2020-07-01 2023-03-21 Vmware, Inc. Protection of authentication data of a server cluster
WO2022005273A1 (en) * 2020-07-03 2022-01-06 Mimos Berhad System and method for connecting a presentation device to a wireless presentation system unit
US11611877B2 (en) 2020-07-08 2023-03-21 T-Mobile Usa, Inc. User authentication
CN112312060B (zh) * 2020-08-28 2023-07-25 北京字节跳动网络技术有限公司 屏幕共享方法、装置和电子设备
US20220240062A1 (en) * 2021-01-10 2022-07-28 Imidastouch Llc Method, system, and apparatus for secure exchange of social media information
US20220292178A1 (en) * 2021-03-15 2022-09-15 Dell Products, L.P. Systems and methods for scaled user authentication in modern workspaces
CN117321694A (zh) 2021-05-11 2023-12-29 豪夫迈·罗氏有限公司 用于操作实验室自动化系统的方法、实验室自动化系统和实验室体外诊断系统
US11893031B2 (en) * 2021-07-15 2024-02-06 Open Text Sa Ulc Systems and methods for intelligent automatic filing of documents in a content management system
US20230050116A1 (en) * 2021-08-10 2023-02-16 Logitech Europe S.A. Electronic system and method for claiming and reserving work areas
US11501276B1 (en) * 2021-08-16 2022-11-15 International Business Machines Corporation Resiliency in point of service transactions using distributed computing
US12056232B2 (en) * 2021-08-27 2024-08-06 EMC IP Holding Company LLC Function-based service framework with trusted execution platform
US11681571B2 (en) * 2021-09-29 2023-06-20 Dell Products L.P. Managing device group configurations across workspaces based on context
EP4312418A1 (en) * 2022-07-29 2024-01-31 Abb Schweiz Ag Method for automatic selection of servers

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102244676A (zh) * 2010-05-14 2011-11-16 Lg电子株式会社 电子设备和与其他设备共享电子设备的内容的方法

Family Cites Families (102)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6246879B1 (en) * 1998-07-07 2001-06-12 Telefonaktiebolaget L M Ericsson (Publ) Methods of sharing capabilities information between the nodes of telecommunications network
US6427177B1 (en) * 1999-10-04 2002-07-30 Ati International Srl Method and apparatus for configuring multiple devices in a computer system
US7076255B2 (en) 2000-04-05 2006-07-11 Microsoft Corporation Context-aware and location-aware cellular phones and methods
US7680324B2 (en) 2000-11-06 2010-03-16 Evryx Technologies, Inc. Use of image-derived information as search criteria for internet and other search engines
US7143443B2 (en) 2001-10-01 2006-11-28 Ntt Docomo, Inc. Secure sharing of personal devices among different users
US7283846B2 (en) * 2002-02-07 2007-10-16 Sap Aktiengesellschaft Integrating geographical contextual information into mobile enterprise applications
US7020494B2 (en) 2002-02-07 2006-03-28 Sap Aktiengesellschaft Integrating contextual information into mobile enterprise applications
US20030204582A1 (en) 2002-04-29 2003-10-30 Shimoda Marion H. Wireless personal area network scalable migration of resources
US20030236890A1 (en) * 2002-06-25 2003-12-25 Intel Corporation Wireless communication device and method for sharing device resources
US20040026634A1 (en) 2002-08-08 2004-02-12 Takao Utsumi Electron beam proximity exposure apparatus
US7549047B2 (en) * 2002-11-21 2009-06-16 Xerox Corporation Method and system for securely sharing files
US20040266348A1 (en) * 2003-06-30 2004-12-30 Nikhil Deshpande Method and apparatus for finding and sharing device capabilities
US7620008B1 (en) * 2003-09-12 2009-11-17 Sprint Spectrum L.P. Method and system for use of shared data to gain wireless packet data connectivity
US8452847B2 (en) * 2003-09-22 2013-05-28 Broadcom Corporation Processor sharing between in-range devices
US7567987B2 (en) * 2003-10-24 2009-07-28 Microsoft Corporation File sharing in P2P group shared spaces
US7113797B2 (en) * 2003-11-06 2006-09-26 International Business Machines Corporation System, method and program product for scheduling meetings
US7168850B2 (en) 2004-03-30 2007-01-30 Yamatake Corporation Mirror surface state detection device and moisture detection device
US7653001B2 (en) * 2004-04-09 2010-01-26 At&T Mobility Ii Llc Managing differences in user devices when sharing content on mobile devices
US8244179B2 (en) 2005-05-12 2012-08-14 Robin Dua Wireless inter-device data processing configured through inter-device transmitted data
ATE538583T1 (de) * 2006-04-05 2012-01-15 Motorola Mobility Inc Auswahl des transportmediums zur optimierung des betriebs eines gerätes
US8689287B2 (en) 2006-08-17 2014-04-01 Northrop Grumman Systems Corporation Federated credentialing system and method
US20130125031A1 (en) 2006-08-31 2013-05-16 Ben Calica Context related location based content
US8090366B2 (en) * 2006-10-19 2012-01-03 At&T Mobility Ii Llc Systems and methods for file sharing through mobile devices
US8515460B2 (en) 2007-02-12 2013-08-20 Microsoft Corporation Tagging data utilizing nearby device information
US8032472B2 (en) * 2007-04-04 2011-10-04 Tuen Solutions Limited Liability Company Intelligent agent for distributed services for mobile devices
US20090012806A1 (en) 2007-06-10 2009-01-08 Camillo Ricordi System, method and apparatus for data capture and management
CA2599615A1 (en) * 2007-10-01 2009-04-01 Arash Afifi-Sabet An integrated short-range wireless advertising system or method for businesses, individuals, and public places
US7970350B2 (en) 2007-10-31 2011-06-28 Motorola Mobility, Inc. Devices and methods for content sharing
US8131875B1 (en) * 2007-11-26 2012-03-06 Adobe Systems Incorporated Device profile assignment based on device capabilities
US20100325625A1 (en) * 2008-02-13 2010-12-23 Osvaldo Diaz Managing electronic devices with different types of device location limited device management clients
US20090215477A1 (en) * 2008-02-27 2009-08-27 Qualcomm, Incorporated Intelligent multiple device file sharing in a wireless communications system
US20090286506A1 (en) 2008-05-15 2009-11-19 Level 3 Communications, Llc Fixed Mobile Convergent Service in Enterprise Environments
US7982609B2 (en) 2008-06-18 2011-07-19 Microsoft Corporation RFID-based enterprise intelligence
US20110106954A1 (en) 2008-09-26 2011-05-05 Manjirnath Chatterjee System and method for inductively pairing devices to share data or resources
EP2335392B1 (en) * 2008-10-17 2018-07-25 Nokia Technologies Oy Method, apparatus and computer program product for providing composite capability information for devices in distributed networks
US20120019365A1 (en) 2009-02-20 2012-01-26 Solocem Systems Oy Short-range communication-enabled mobile device, method and related server arrangement
US8767081B2 (en) 2009-02-23 2014-07-01 Microsoft Corporation Sharing video data associated with the same event
US20100216441A1 (en) 2009-02-25 2010-08-26 Bo Larsson Method for photo tagging based on broadcast assisted face identification
KR20100109462A (ko) * 2009-03-31 2010-10-08 삼성전자주식회사 디바이스들간의 통신 링크 생성 방법 및 그 장치
US8260883B2 (en) * 2009-04-01 2012-09-04 Wimm Labs, Inc. File sharing between devices
FI20095402A0 (fi) 2009-04-09 2009-04-09 Valtion Teknillinen Lyhyen kantaman viestintään sovitettu mobiililaite, menetelmä ja vastaava palvelinjärjestelmä
US8558693B2 (en) 2009-09-10 2013-10-15 Tribal Technologies, Inc. System and method for location-based reminders on a mobile device
US8312392B2 (en) * 2009-10-02 2012-11-13 Qualcomm Incorporated User interface gestures and methods for providing file sharing functionality
KR101612553B1 (ko) * 2009-10-09 2016-04-27 삼성전자주식회사 리모트 사용자 인터페이스 서버와 리모트 사용자 인터페이스 클라이언트간의 인터페이스를 위한 장치 및 방법
CA2780062A1 (en) * 2009-11-06 2011-05-12 Research In Motion Limited Device, system and method for selecting, sharing and displaying electronic content
US20110167357A1 (en) 2010-01-05 2011-07-07 Todd Benjamin Scenario-Based Content Organization and Retrieval
US9547842B2 (en) * 2010-01-13 2017-01-17 International Business Machines Corporation Out-of-office electronic mail messaging system
US8473743B2 (en) * 2010-04-07 2013-06-25 Apple Inc. Mobile device management
US8649326B2 (en) * 2010-07-06 2014-02-11 Htc Corporation Method of handling capability information of a mobile device and related communication device
JP5849484B2 (ja) 2010-09-16 2016-01-27 株式会社リコー 伝送端末、表示データ送信方法、プログラム、情報提供装置及び伝送システム
US8719581B2 (en) * 2010-09-22 2014-05-06 Savant Systems, Llc Programmable multimedia controller with flexible user access and shared device configurations
EP2625602B1 (en) * 2010-10-05 2019-11-27 Citrix Systems Inc. Gesture support for shared sessions
EP2625591A4 (en) * 2010-10-05 2014-04-30 Citrix Systems Inc TOUCH SUPPORT FOR REMOTE APPLICATIONS
US8359016B2 (en) * 2010-11-19 2013-01-22 Mobile Iron, Inc. Management of mobile applications
US9378485B2 (en) 2010-12-30 2016-06-28 General Electric Company Systems and methods for applying geolocation to workflows using mobile medical clients
US8990273B2 (en) * 2011-01-13 2015-03-24 Apple Inc. Ad hoc file sharing
US8401522B2 (en) * 2011-02-21 2013-03-19 Carmela R. Crawford Systems, methods and apparatus for authenticating access to enterprise resources
US9058482B2 (en) 2011-03-01 2015-06-16 Angel Secure Networks, Inc. Controlling user access to electronic resources without password
US20140074537A1 (en) * 2012-09-05 2014-03-13 Crestron Electronics, Inc. Initiating Schedule Management Via Near Field Communication
US20140108084A1 (en) 2012-10-12 2014-04-17 Crestron Electronics, Inc. Initiating Schedule Management Via Radio Frequency Beacons
US10044871B2 (en) 2011-04-29 2018-08-07 Crestron Electronics, Inc. Conference system including automated equipment setup
US8224894B1 (en) 2011-05-09 2012-07-17 Google Inc. Zero-click sharing of application context across devices
WO2012153983A2 (en) * 2011-05-09 2012-11-15 Samsung Electronics Co., Ltd. Method and system for sharing device capabilities of universal plug and play (upnp) devices with a service network entity
US9369673B2 (en) 2011-05-11 2016-06-14 Blue Jeans Network Methods and systems for using a mobile device to join a video conference endpoint into a video conference
US9544158B2 (en) * 2011-10-05 2017-01-10 Microsoft Technology Licensing, Llc Workspace collaboration via a wall-type computing device
US8886925B2 (en) 2011-10-11 2014-11-11 Citrix Systems, Inc. Protecting enterprise data through policy-based encryption of message attachments
US20130104041A1 (en) 2011-10-21 2013-04-25 International Business Machines Corporation Capturing application workflow
US9024998B2 (en) * 2011-10-27 2015-05-05 Pollycom, Inc. Pairing devices in conference using ultrasonic beacon
US9491404B2 (en) * 2011-10-27 2016-11-08 Polycom, Inc. Compensating for different audio clocks between devices using ultrasonic beacon
US8681350B2 (en) 2012-02-29 2014-03-25 Canon Kabushiki Kaisha Systems and methods for enterprise sharing of a printing device
US9185248B2 (en) * 2012-02-29 2015-11-10 Blackberry Limited Method and device for sharing a camera feature
JP5945916B2 (ja) * 2012-03-02 2016-07-05 日本電気株式会社 情報処理システム、情報処理方法、携帯端末、サーバ、それらの制御方法および制御プログラム
US8761811B2 (en) 2012-04-27 2014-06-24 Oracle International Corporation Augmented reality for maintenance management, asset management, or real estate management
KR101890140B1 (ko) 2012-05-07 2018-09-28 삼성전자주식회사 카메라 장치를 이용하여 디스플레이 장치를 제어하는 방법 및 이를 적용한 모바일 장치, 디스플레이 장치, 그리고 시스템
EP2663110A1 (en) * 2012-05-11 2013-11-13 BlackBerry Limited Near Field Communication Tag Data Management
US20130346329A1 (en) 2012-05-14 2013-12-26 NetSuite Inc. System and methods for social data sharing capabilities for enterprise information systems
US9584682B2 (en) * 2012-05-24 2017-02-28 Blackberry Limited System and method for sharing data across multiple electronic devices
US10103784B2 (en) * 2012-05-24 2018-10-16 Blackberry Limited Creation and management of near field communications tags
US20140006620A1 (en) * 2012-06-27 2014-01-02 International Business Machines Corporation System, method and program product for local client device context-aware shared resource and service management
US10209946B2 (en) 2012-08-23 2019-02-19 Red Hat, Inc. Augmented reality personal identification
US9864810B2 (en) * 2012-08-24 2018-01-09 International Business Machines Corporation User-specified user application data sharing
CN102821109B (zh) 2012-08-28 2015-06-03 腾讯科技(深圳)有限公司 在即时通信应用中实现数据共享的方法、相关设备及系统
US9058583B2 (en) 2012-09-06 2015-06-16 Sap Se Systems and methods for mobile access to item information
US20140089202A1 (en) * 2012-09-27 2014-03-27 Michael K. Bond CRM Security Core
US8644817B1 (en) * 2012-09-26 2014-02-04 Avaya Inc. System and method for presenting a single persistent view of a multi-module communication device to a network
US9449343B2 (en) 2012-10-05 2016-09-20 Sap Se Augmented-reality shopping using a networked mobile device
US20140108558A1 (en) * 2012-10-12 2014-04-17 Citrix Systems, Inc. Application Management Framework for Secure Data Sharing in an Orchestration Framework for Connected Devices
US20140109171A1 (en) * 2012-10-15 2014-04-17 Citrix Systems, Inc. Providing Virtualized Private Network tunnels
US8880051B2 (en) * 2012-11-16 2014-11-04 Intel Corporation Automatic seamless context sharing across multiple devices
US9529439B2 (en) 2012-11-27 2016-12-27 Qualcomm Incorporated Multi device pairing and sharing via gestures
US20140181302A1 (en) * 2012-12-21 2014-06-26 Optionmonster Holdings, Inc. Dynamic Presentation
WO2014117094A2 (en) * 2013-01-25 2014-07-31 Innopath Software, Inc. Device management service
WO2014122606A2 (en) * 2013-02-07 2014-08-14 Ben Volach Content sharing management
US9838266B2 (en) * 2013-02-15 2017-12-05 Apple Inc. Dynamic device collaboration
US9674819B2 (en) * 2013-03-15 2017-06-06 Qualcomm Incorporated Systems and methods for sharing context information in a neighbor aware network
US9754089B2 (en) 2013-03-15 2017-09-05 Microsoft Technology Licensing, Llc Enterprise application management with enrollment tokens
US20140282460A1 (en) * 2013-03-15 2014-09-18 Microsoft Corporation Enterprise device unenrollment
US8914863B2 (en) 2013-03-29 2014-12-16 Here Global B.V. Enhancing the security of near-field communication
US9619222B2 (en) 2014-01-16 2017-04-11 International Business Machines Corporation System, method and apparatus for automatic device registration and secure application activation
US9860187B2 (en) * 2014-02-28 2018-01-02 Mobile Iron, Inc. Enrolling a mobile device with an enterprise mobile device management environment
US9842150B2 (en) * 2015-03-05 2017-12-12 M-Files Oy Method, an apparatus, a computer system and a computer program product for defining visibility of objects in metadata-based file arrangement in mobile environment
US9819712B2 (en) 2015-03-31 2017-11-14 Vmware, Inc. Cloud-based conferencing system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102244676A (zh) * 2010-05-14 2011-11-16 Lg电子株式会社 电子设备和与其他设备共享电子设备的内容的方法

Also Published As

Publication number Publication date
EP3000078A2 (en) 2016-03-30
WO2014189706A3 (en) 2015-01-08
CN111311202A (zh) 2020-06-19
US10686655B2 (en) 2020-06-16
WO2014189706A2 (en) 2014-11-27
US10291465B2 (en) 2019-05-14
US20140344420A1 (en) 2014-11-20
CN105378768A (zh) 2016-03-02
US20140344446A1 (en) 2014-11-20
US10243786B2 (en) 2019-03-26
US20190173745A1 (en) 2019-06-06

Similar Documents

Publication Publication Date Title
US10686655B2 (en) Proximity and context aware mobile workspaces in enterprise systems
US11501057B2 (en) Enabling file attachments in calendar events
AU2018318922B2 (en) Extending single-sign-on to relying parties of federated logon providers
EP3742369A1 (en) Systems and methods for establishing a channel between multiple devices
US9854063B2 (en) Enterprise application store for an orchestration framework for connected devices
US11423121B2 (en) Real time digital content concealment
US9690525B2 (en) Availability of devices based on location
US20170039007A1 (en) Autonomous secure printing
US9674669B2 (en) Determining and navigating to a target location
CN113419799A (zh) 使用云同步数据提供本机桌面
US20210182440A1 (en) System for preventing access to sensitive information and related techniques
US11483465B2 (en) Automatic image capture

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant