|Publication number||US7996514 B2|
|Application number||US 10/743,312|
|Publication date||Aug 9, 2011|
|Filing date||Dec 23, 2003|
|Priority date||Dec 23, 2003|
|Also published as||US8185627, US20050138576, US20110264743|
|Publication number||10743312, 743312, US 7996514 B2, US 7996514B2, US-B2-7996514, US7996514 B2, US7996514B2|
|Inventors||David W. Baumert, Aaron F. Woodman, Flora P. Goldthwaite, Jonathan Cluts, Pamela J. Heath|
|Original Assignee||Microsoft Corporation|
|Export Citation||BiBTeX, EndNote, RefMan|
|Patent Citations (12), Referenced by (11), Classifications (11), Legal Events (3)|
|External Links: USPTO, USPTO Assignment, Espacenet|
The present invention relates to the field of sharing information over a network and more particularly to techniques for sharing information based on proximity within a particular environment.
With widespread adoption of wireless networks and the proliferation of networked devices and objects, it is desirable to create products that intelligently take advantage of these networking capabilities. One currently available networking option is Bluetooth, which is a short-range radio technology aimed at simplifying communications among Internet devices and between Internet devices and other computers. Bluetooth uses short-range radio links to replace cables between computers and connected units.
Using Bluetooth and other similar technologies, mobile devices can communicate with one another when the devices are within a pre-determined distance from one another. For instance, a Bluetooth computer can detect a Bluetooth printer in its vicinity and wirelessly execute a print job. Similarly, a mobile phone using the Bluetooth network can communicate with a nearby computer to inform a user that the computer has received an email.
Other technologies that facilitate communications between devices include wireless local area networks (WLANs), wireless application protocol (WAP), and Infrared Technologies such as IrDA-Data. All of these technologies are capable of simplifying wireless communications between devices and can be used optimally in different environments. For example, WLANs are LAN protocols modulated on carrier waves. WLANs can handle greater data throughput than Bluetooth and are generally server-based, whereas Bluetooth technologies are generally peer-to-peer. WAP is a communications protocol for mobile phones intended to extend available Internet-based services. IR technologies require that a data beam be aimed at a receiving antenna. Accordingly, IR technologies require a free line of sight.
While these currently available technologies facilitate wireless communications, they do not currently fully utilize the potential for devices to share information with one another and to acquire information from nearby objects. In particular, networking options within particular environments, such as the home environment, can utilize location-based component technologies. Knowledge of physical space and proximity have not been adequately utilized to present information.
Accordingly, a solution is needed that allows networked devices to interact with other networked devices intelligently. Furthermore, a solution is needed that will allow networked devices to interact intelligently with other nearby objects. For instance, a solution is needed that will allow devices to adjust their offerings and capabilities based on the collection of devices or objects in the area.
In one aspect, the present invention is directed to a system for facilitating interaction between a device and a device environment. The system includes a detection module for automatically detecting proximity of a participant within the device environment and a user-configurable authorization module for authorizing the device to adjust a device user interface in a pre-determined manner in response to the detection of the participant.
In yet another aspect, the present invention is directed to a method for facilitating interaction between a device and a device environment. The method includes detecting a participant present within the device environment and adjusting a device user interface based on user-configured rules set forth in a device authorization module in response to the detection of the participant.
In an additional aspect, the invention is directed to a system for sharing resources among multiple participating devices, wherein each of the multiple participating devices has a device specific set of application resources. The system includes a detection module for detecting proximity of a first participating device to a second participating device and a configurable resource regulation mechanism for making the device specific application resources from the second participating device available to the first participating device.
In a further aspect, the invention is directed to a method for facilitating resource sharing between multiple devices. The method includes allowing a user to configure regulation of shared resources between multiple participating devices and enabling regulation of device resources based on proximity of a first participating device to a second participating device. Regulation includes making device specific application resources of the first participating device available to the second participating device.
The present invention is described in detail below with reference to the attached drawing figures, wherein:
All of the described components are participants in the system. While the tablet PC 40, the PDA with mobile phone 50, and the personal computer 200 may function as active components, other components such as the RFID tagged object 30 may function as passive components detectable by the active components. Detection of a passive component may cause the active components to launch a particular application. The active components may be connected in a peer-to-peer system in which there is no serve or alternatively, one active component may be designated as a server. The interaction between the components will be described further below with respect to
The invention may be described in the general context of computer-executable instructions, such as program modules, being executed by a computer. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular abstract data types. Moreover, those skilled in the art will appreciate that the invention may be practiced with other computer system configurations, including hand-held devices, multiprocessor systems, microprocessor-based or programmable consumer electronics, minicomputers, mainframe computers, and the like. The invention may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in both local and remote computer storage media including memory storage devices.
With reference to
Computer 110 typically includes a variety of computer readable media. By way of example, and not limitation, computer readable media may comprise computer storage media and communication media. The system memory 130 includes computer storage media in the form of volatile and/or nonvolatile memory such as read only memory (ROM) 131 and random access memory (RAM) 132. A basic input/output system 133 (BIOS), containing the basic routines that help to transfer information between elements within computer 110, such as during start-up, is typically stored in ROM 131. RAM 132 typically contains data and/or program modules that are immediately accessible to and/or presently being operated on by processing unit 120. By way of example, and not limitation,
The computer 110 may also include other removable/nonremovable, volatile/nonvolatile computer storage media. By way of example only,
The drives and their associated computer storage media discussed above and illustrated in
The computer 110 in the present invention may operate in a networked environment using logical connections to one or more remote computers, such as a remote computer 180. The remote computer 180 may be a personal computer, and typically includes many or all of the elements described above relative to the computer 110, although only a memory storage device 181 has been illustrated in
When used in a LAN networking environment, the computer 110 is connected to the LAN 171 through a network interface or adapter 170. When used in a WAN networking environment, the computer 110 typically includes a modem 172 or other means for establishing communications over the WAN 173, such as the Internet. The modem 172, which may be internal or external, may be connected to the system bus 121 via the user-input interface 160, or other appropriate mechanism. In a networked environment, program modules depicted relative to the computer 110, or portions thereof, may be stored in the remote memory storage device. By way of example, and not limitation,
Although many other internal components of the computer 110 are not shown, those of ordinary skill in the art will appreciate that such components and the interconnection are well known. Accordingly, additional details concerning the internal construction of the computer 110 need not be disclosed in connection with the present invention.
The device detection tools 218 may be employed on each active participating device in the system in order to detect other participating devices in the immediate environment. Upon detection, by the device detection tools 218, the authorization module 216 may be consulted to determine which of the devices will be the controlling device and which device will be controlled. The device connection manager 220 secures a connection between the controlled and controlling devices.
The authorization module 216 preferably interacts with the nearby device list 214, which keeps track on each active device of all of the nearby participants. The authorization module 216 may be configured by the user to establish a hierarchy of devices or a defining policy for determining which devices will obtain resources from other devices. For example, the personal computer authorization module 216 may be configured to control the tablet PC. In this instance, if the tablet PC is brought in the vicinity of the personal computer, the authorization module 216 or the command and control translation module 212 may be configured with a set of rules including a rule stating that the tablet PC will display the user interface of the personal computer. Aside from a user interface, the tablet PC may acquire other features, characteristics, or applications from the personal computer as dictated by these components that have been configured by the user.
Additionally, the set of rules within the authorization module 216 should be able to resolve possible conflicts between devices such that given any combination of devices in the environment, each device shares a predetermined set of characteristics or acquires a predetermined set of characteristics from each other device. The arbitration may be arranged in a hierarchy so that a device at the top of the hierarchy will cause devices lower in the hierarchy to acquire its user interface or other resources. Optionally, arbitration can also be on a first come, first serve basis, in which any participant entering the environment acquires the user interface of the participant first present in the environment.
In one embodiment, the authorization module 216 may include two pieces of information. The first is whether the particular participant is a controlled participant or a controlling participant. Thus, when the two proximal participants include one controlling participant and one controlled participant, no conflicts arise. However, in the instance of a conflict, the authorization module refers to a second internal source of information that includes arbitration information as described above. Alternatively, arbitration information could be stored as a component separate from the authorization module 216.
The network selection module 222 may control communications between system participants. The particular network selected may depend upon the nature of the communicating devices. Examples of networks that may be selected include IR, USB, Ethernet, RF, and telecommunications. A base layer of the application shown in
The command and control translation module 212 receives commands from the user interface tools 210 and communicates user commands to the authorization module 216. The command and control translation module 212 may store user input as to particular actions that should be taken when the participating device is the controlling device and when the participating device is the controlled device. The user may interact with the software platform by a keyboard and mouse or by a selection of infrared remote controls, or by any other suitable technique. The UI element manager 211 manipulates the user interface in accordance with the user-defined rules from the authorization module 216 and the command and control translation module 212.
The nature of the system and the ability to implement user controls, such as through the use of the authorization module 216 render the proposed system ideal for use in a home environment. Participants in the system including those shown in
As noted above with respect to
As illustrated in
In an embodiment of the method described above, a docking cradle for the tablet PC can be manually registered in the application as being proximal. When a user places the tablet PC in the nearby docking station, the tablet PC notifies the personal computer that it is docked in step A10. The personal computer and tablet PC then may add each other to their respective device lists in step A20. In step A30, the personal computer may request and receive permission to control the tablet PCs display if the authorization rules are consistent. In an embodiment of the invention, the authorization rules allow the personal computer to take control of the tablet PC display and extend its own UI onto the tablet PC display surface. If the personal computer application determines that it can improve the quality of its user experience by rendering the calendar applet on the tablet PC's display, it will perform this action.
Similarly, if participating devices include a PDA and a desktop PC, when a user places the PDA in a docking cradle connected to the desktop PC, the desktop PC detects this in step A10. The PDA and desktop PC add each other to their respective device lists in step A20 and determine the authorization rules in step A30. If the desktop PC is the controlling device, it takes control of the PDA's display and extends its own UI onto the PDA display surface in step A40. For example, if the desktop PC's controlling application determines that it can improve the quality of the user experience by moving the door message applet onto the PDA's display, it will perform this action. The position on the desktop PCs display previously held by the door message applet is replaced by a lower-value applet or link. Also, the telecommunication services accessible to the PDA may be made available to the controlling application while the PDA is docked.
In a further example, the participants include a remote control and a desktop PC. In the event the user chooses to control the UI on the desktop PC with a remote control, the platform detects and identifies the particular remote control being used and adjusts the UI based on that remote. As an example, commands issued from an adult's remote control device cause the UI to adjust its presentation to provide access to services, control, and content appropriate for an adult user. Should control be attempted with a child's remote, the UI adjusts itself to provide access and control appropriate for a child user.
In a further example in which the participants include an active and a passive participant, a user may place an RFID tagged object within range of the RFID scanner connected to a desktop PC. The RFID tagged object is detected by the desktop PC scanner in step A10. The desktop PC may identify the object by looking up the tag ID in databases either hosted by the desktop PC or accessible via the wireless network. Based on the identification, the PC retrieves relevant application information.
In summary, the invention provides a platform for a user interface that makes use of nearby intelligent objects or devices to improve its usefulness. The interface may dynamically span multiple devices by leveraging and managing the displays of nearby devices. It may dynamically adjust its menu based on nearby objects or it may dynamically adjust its interaction methods based on the types of nearby human interface devices. Additionally, services provided through nearby devices may adjust their offerings based on the collection of devices or objects in the area. A user interface that dynamically and intelligently adjusts its presentation to reflect the proximity of nearby objects or devices increases the quality of the user experience.
As set forth above, services of one participant are available on another through cooperative interaction between participants. The platform is preferably a peer-to-peer distributed platform and participants derive knowledge from proximity. If a participating device enters the defined environment, it becomes part of the system. The base layer is a self-configuring network and dynamic software tools such as the authorization module allow user to change resources available from and to each device.
The present invention has been described in relation to particular embodiments, which are intended in all respects to be illustrative rather than restrictive. Alternative embodiments will become apparent to those skilled in the art to which the present invention pertains without departing from its scope.
From the foregoing, it will be seen that this invention is one well adapted to attain all the ends and objects set forth above, together with other advantages which are obvious and inherent to the system and method. It will be understood that certain features and sub-combinations are of utility and may be employed without reference to other features and sub-combinations. This is contemplated and with the scope of the claims.
|Cited Patent||Filing date||Publication date||Applicant||Title|
|US6201968 *||Mar 5, 1998||Mar 13, 2001||Motorola, Inc.||Method combining entries from multiple neighbor cell lists to obtain an updated list for a subscriber device|
|US6675196 *||Aug 5, 1999||Jan 6, 2004||Amazon.Com, Inc.||Universal protocol for enabling a device to discover and utilize the services of another device|
|US7102640 *||Mar 21, 2002||Sep 5, 2006||Nokia Corporation||Service/device indication with graphical interface|
|US7103834 *||Nov 3, 2000||Sep 5, 2006||Samsung Electronics Co., Ltd.||Method and apparatus for a home network auto-tree builder|
|US20030014766 *||Aug 30, 2002||Jan 16, 2003||Peracom Networks, Inc.||Entertainment and computer coaxial network and method of distributing signals therethrough|
|US20030037284 *||Sep 27, 2001||Feb 20, 2003||Anand Srinivasan||Self-monitoring mechanism in fault-tolerant distributed dynamic network systems|
|US20040003073 *||Mar 7, 2003||Jan 1, 2004||Openpeak Inc.||Method, system, and computer program product for managing controlled residential or non-residential environments|
|US20040107246 *||Nov 18, 2003||Jun 3, 2004||Sony Corporation||Control system and control method, method and apparatus for processing information, information processing terminal and method thereof, storage medium, and program|
|US20050086273 *||Sep 25, 2003||Apr 21, 2005||Johannes Loebbert||Electronic device having communication function|
|US20060074810 *||Nov 28, 2003||Apr 6, 2006||Verberkt Mark H||Method of considering content equivalency when rendering content|
|US20070033265 *||Oct 13, 2006||Feb 8, 2007||Avocent Huntsville Corporation||System and method for accessing and operating personal computers remotely|
|US20070105548 *||May 12, 2004||May 10, 2007||Thomason Licensing S.A.||Integrated cellular/pcs-pots communication system|
|Citing Patent||Filing date||Publication date||Applicant||Title|
|US8230075 *||Nov 15, 2008||Jul 24, 2012||Adobe Systems Incorporated||Method and device for identifying devices which can be targeted for the purpose of establishing a communication session|
|US9214823 *||Dec 20, 2011||Dec 15, 2015||Sprint Spectrum L.P.||Correlating operational states and battery usage of devices to extend battery duration|
|US9356918||Mar 13, 2013||May 31, 2016||Google Inc.||Identification delegation for devices|
|US9496968||Mar 8, 2013||Nov 15, 2016||Google Inc.||Proximity detection by mobile devices|
|US9536057 *||Oct 18, 2013||Jan 3, 2017||Mcafee, Inc.||Premises aware security|
|US9542542 *||May 7, 2007||Jan 10, 2017||Proxense, Llc||Single step transaction authentication using proximity and biometric input|
|US20070245158 *||May 7, 2007||Oct 18, 2007||Giobbi John J||Single step transaction authentication using proximity and biometric input|
|US20110099487 *||Jan 12, 2007||Apr 28, 2011||Nokia Corporation||End-to-end solution for an end-user to obtain desired information in user interfaces|
|US20110239114 *||Mar 24, 2010||Sep 29, 2011||David Robbins Falkenburg||Apparatus and Method for Unified Experience Across Different Devices|
|US20140250179 *||Mar 4, 2013||Sep 4, 2014||International Business Machines Corporation||Colony application|
|US20140351881 *||Oct 18, 2013||Nov 27, 2014||Sudeep Das||Premises aware security|
|U.S. Classification||709/224, 709/208, 709/203|
|International Classification||G06F21/00, G06F15/173, G06F15/16, G06F1/16|
|Cooperative Classification||G06F21/35, G06F1/1632|
|European Classification||G06F1/16P6, G06F21/35|
|Jun 4, 2004||AS||Assignment|
Owner name: MICROSOFT CORPORATION, WASHINGTON
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:BAUMERT, DAVID W.;WOODMAN, AARON F.;GOLDTHWAITE, FLORA P.;AND OTHERS;REEL/FRAME:015436/0376
Effective date: 20040603
|Dec 9, 2014||AS||Assignment|
Owner name: MICROSOFT TECHNOLOGY LICENSING, LLC, WASHINGTON
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:MICROSOFT CORPORATION;REEL/FRAME:034541/0477
Effective date: 20141014
|Jan 27, 2015||FPAY||Fee payment|
Year of fee payment: 4