Integrated, context passing user display
Systems and methods are provided to facilitate an integrated display of information to a user. According to some embodiments, a first service and a second service may be registered with a registry. The information stored in the registry might include, for example, indications that the first and/or second services are to receive data from disparate remote sources. According to some embodiments, placement information is received from a user to lay out the first and second services within a pane of an application. Moreover, information from the remote sources may be displayed to the user within the pane.
A portion of the disclosure of the patent document contains material which is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure, as it appears in the Patent and Trademark Office patent file or records, but otherwise reserves all copyright rights whatsoever.
FIELDThe present invention relates to the presentation of information to a user. In particular, some embodiments are associated with an integrated display of information to a user.
BACKGROUNDA user may view information from a number of different sources. For example,
To display data to the user, a number of different applications might be running at a user device, and each application can be associated with different screens and/or display windows. For example, a user might start a first program that displays stock prices and position a first display associated with the first program on his or her desktop. The user could then start a second program that displays news articles and position a second display associated with the second program on his or her desktop (e.g., along side the first display of stock prices). In this way, a user can manually configure the user display 120. Such an approach, however, can consume a considerable amount of time (especially when a user needs to constantly re-arrange the user display 120).
Moreover, some or all of the data on the user display 120 may depend on a specific context associated with the information. For example, a user might be interested in the price of a particular stock, or group of stocks. Similarly, the user might be interested in viewing news articles associated with a particular company or industry. In some cases, a user can enter context information into each application running at the user display 120. For example, the user might enter “MSFT” into a program that displays stock prices and “microsoft” into a program that displays news articles. This manual approach, however, can also be time consuming. Moreover, the approach can lead to errors (e.g., a user might incorrectly enter “microseft” into an application and, as a result, not receive news articles associated with Microsoft Corp.
Another disadvantages with typical user displays 120 is that it can be expensive to create the systems required to support a number of disparate data systems 110. This can be especially true when there are a substantially number of users and/or a substantial number of data systems 110 (and various combinations of those systems 110). Moreover, it can be difficult to update and maintain those systems (e.g., when a data system 110 alters the way it transmits information or a new data system 110 is added to a user display 120).
SUMMARYTo alleviate problems inherent in the prior art, the present invention introduces systems and methods to provide an integrated display of information to a user.
In some embodiments of the present invention, a first service and a second service may be registered with a registry. The information stored in the registry might include, for example, indications that the first and/or second services are to receive data from disparate remote sources. According to some embodiments, placement information is received from a user to lay out the first and second services within a pane of an application. Moreover, information from the remote sources may be displayed to the user within the pane.
According to some embodiments, placement information is received from a user via a contact information application. The placement information may, for example, lay out a first and second display area, the first display area being associated with a first service to receive data from a first remote source and the second display area being associated with a second service to receive data from a second remote source. Data from the first and second remote sources may then be displayed to the user via the contact information application.
According to another embodiment, first and second services are established to receive data from remote, independent sources. Placement information may be received from a user to lay out the services within a pane of a host application. Context information associated with a service may then be dynamically determined context information, and information associated with the context information may be displayed to the user within the pane.
Some other embodiments comprise: means for registering, with a registry, a first service including an indication that the first service is to receive data from a first remote source; means for registering, with the registry, a second service including an indication that the second service is to receive data from a second remote source, the second remote source being independent of the first remote source; means for receiving, from a user, placement information laying out the first and second services within a pane of an application; means for registering, with the registry, information associated with the pane including layout information; and means for displaying to the user information from the first and second remote sources within the pane.
Still other embodiments comprise: means for receiving from a user, via a contact information application, placement information laying out a first and second display area, the first display area being associated with a first service to receive data from a first remote source and the second display area being associated with a second service to receive data from a second remote source; and means for displaying to the user data from the first and second remote sources via the contact information application.
Yet other embodiments comprise: means for establishing a first service to receive data from a first remote source; means for establishing a second service to receive data from a second remote source, the second remote source being independent of the first remote source; means for receiving, from a user, placement information laying out the first and second services within a pane of a host application; means for dynamically determining context information associated with the first service; and means for displaying to the user information from the first and second remote sources within the pane, wherein the information from the first remote source is associated with the context information.
With these and other advantages and features of the invention that will become hereinafter apparent, the invention may be more clearly understood by reference to the following detailed description of the invention, the appended claims, and the drawings attached herein.
A user device 240 may receive the information from the data sources 210, 220. The user device 240 might comprise, for example, a Personal Computer (PC), a Personal Digital Assistant (PDA), a mobile computer, and/or a wireless device. Although a single user device 240 is illustrated in
According to some embodiments of the present invention, the user device 240 may include an Operating System (OS) 250, such as MICROSOFT WINDOWS®, and a host application 260, such as the MICROSOFT OFFICE OUTLOOK® contact information application. Note that the particular OS 250 and host application 260 are provided only as examples and embodiments may be practice with a different OS 250 or host application 260. For example, the LOTUS® contact information application may instead be used at the user device 240.
Consider, for example,
The user device 240 may be adapted to provide an integrated, context passing information display to a user. For example,
At 302, a first “service” may be registered with a registry. As used herein, the term “service” might refer to, for example, a Web service, an applet, an Active X service, a chart, a graph, or any other type of component that may provide data. Referring to
Similarly, a second service may be registered with the registry 252 at 304, including an indication that the second service is to receive data from the second remote data source 220. Note that the second remote data source 220 may be independent of the first remote data source 210 (e.g., they may be owned or operated by different entities and/or be located remote from each other).
At 306, placement information may be received from a user. The placement information may, for example, lay out the first and second services within a pane of an application. Referring to
At 310, information from the first and second remote data sources 210, 220 may be displayed to the user within the pane 410 of the host application 260. Consider, by way of example only,
According to some embodiments, the registration information (e.g., associated with services and/or display panes) is locally stored in the registry 252 at the user device 240. According to other embodiments, the registry may be stored at a remote server such that the information associated with the pane is to be available to a plurality of user devices within an enterprise. For example,
According to this embodiment, the user devices 740 interact with an exchange server 750 and a remote display management server 760 that stores a registry 762. The exchange server 750 may, for example, facilitate storage of MICROSOFT OFFICE OUTLOOK® forms in an organizational library by role (e.g., a user's function within an enterprise). Moreover, when a service is to be registered, the registration information is stored in the remote registry 762 (e.g., including the methods and properties associated with the service). The display management server 760 may register disparate services and/or manage layouts in accordance with a standard interactive and programming language for getting information from and updating a database, such as a Structured Query Language (SQL).
In this way, information associated with a plurality of panes and/or user devices 740 can be stored at the registry 762. For example, a one type of pane might be appropriate for an employee who works in a human resources department while a another type of pane is more appropriate for an employee who works as a broker (e.g., due to differences in workflow and/or business processes). In this case, an appropriate pane may be selected for a user device based on his or her role in an enterprise.
At 804, data from the first and second remote sources is displayed to a user via the contact information application. For example, the information might be displayed via a display pane of the contact information application. By using the contact information application to receive about and/or to display information through an integrated display, the existing infrastructure associated with the contact information application can be efficiently utilized (and the amount of separate display management structure required may be reduced).
At 908, context information associated with the first service is dynamically determined. Information from the first and second remote sources may then be displayed to the user at 910 within the pane. Note that the information from the first and/or second remote sources may be associated with the context information. The context information may come from, for example, a host application. Consider, for example, MICROSOFT OUTLOOK as a host application. In this case, a “business address” (which is typically stored by MICROSOFT OUTLOOK) may be context information that is needed by a service (e.g., the service might automatically display tax information based on the business address). In other cases, the context information may come from a user. For example, a user might type in a stock symbol, and a service might then display prices and trades associated with that stock. In still other cases, context information for one service may come from another service. For example, a service might “publish” information that can be consumed by other services (e.g., another service might chart or graph published data). In this way, context information and the associated layout of that information may facilitate a workflow process for a user.
The processor 1010 is also in communication with a storage device 1030. The storage device 1030 may comprise any appropriate information storage device, including combinations of magnetic storage devices (e.g., magnetic tape and hard disk drives), optical storage devices, and/or semiconductor memory devices such as Random Access Memory (RAM) devices and Read Only Memory (ROM) devices.
As shown in
According to some embodiments, the storage device 1030 further stores registry and/or user database 1100 such as the one illustrated in
The service identifier 1102 may be, for example, an alphanumeric string that identifies a particular service that may be activated by a user (e.g., a web service, an applet, or a chart). The service status 1104 may indicate whether each service in the database 1100 is active and, if so, where in a display pane the service should be located. The inputs and outputs 1106 may define for a service what types of data will be received by and/or published from that service. The user roles 1108 may indicate, for example, which types of user will (or should) each service.
Thus, embodiments of the present invention may provide integrated, context-passing solutions to display information to user. Moreover, users may be able to integrate, send, and receive context across disparate services and other forms of interactive communication through computer networks. By exposing properties and methods associated with various services through a centralized management console, using an existing enterprise infrastructure, a more productive business process or workflow may be provided.
The following illustrates various additional embodiments of the present invention. These do not constitute a definition of all possible embodiments, and those skilled in the art will understand that the present invention is applicable to many other embodiments. Further, although the following embodiments are briefly described for clarity, those skilled in the art will understand how to make any changes, if necessary, to the above-described apparatus and methods to accommodate these and other embodiments and applications.
Although some embodiments have been described herein with respect to financial information, the present invention may be used in connection with any other type of information. For example, a display pane might display information associated with real estate prices, stocks and bonds, a sales application, customer service data, and/or news articles.
Moreover, the various systems provided herein are merely for illustration and embodiments may be associated with any type of network topologies and/or user display layouts.
The present invention has been described in terms of several embodiments solely for the purpose of illustration. Persons skilled in the art will recognize from this description that the invention is not limited to the embodiments described, but may be practiced with modifications and alterations limited only by the spirit and scope of the appended claims.
Claims
1. A method, comprising:
- registering, with a registry, a first service including an indication that the first service is to receive data from a first remote source;
- registering, with the registry, a second service including an indication that the second service is to receive data from a second remote source, the second remote source being independent of the first remote source;
- receiving, from a user, placement information laying out the first and second services within a pane of an application;
- registering, with the registry, information associated with the pane including layout information; and
- displaying to the user information from the first and second remote sources within the pane.
2. The method of claim 1, wherein the registry is locally stored at a user device.
3. The method of claim 1, wherein the registry is stored at a remote server such that the information associated with the pane is to be available to a plurality of user devices within an enterprise.
4. The method of claim 3, wherein information associated with a plurality of panes is stored at the registry, and a pane is to be selected for a user device based on a user role.
5. The method of claim 1, wherein the pane is associated with a contact information application.
6. The method of claim 5, wherein said receiving is performed via a graphical user interface tool bar component added to the contact information application, and said providing is performed via a contact information display.
7. The method of claim 1, wherein the registration information associated with the first service further includes an indication that the first service is to publish data.
8. A method, comprising:
- receiving from a user, via a contact information application, placement information laying out a first and second display area, the first display area being associated with a first service to receive data from a first remote source and the second display area being associated with a second service to receive data from a second remote source; and
- displaying to the user data from the first and second remote sources via the contact information application.
9. The method of claim 8, wherein said displaying is performed via a display pane of the contact information application.
10. The method of claim 8, wherein said displaying is facilitated via an application separate from the contact information application.
11. The method of claim 8, further comprising:
- registering, with a registry, the first service including an indication that the first service is to receive data from the first remote source; and
- registering, with the registry, the second service including an indication that the second service is to receive data from the second remote source, the second remote source being independent of the first remote source.
12. The method of claim 11, further comprising:
- registering, with the registry, information associated with the pane including layout information.
13. The method of claim 12, wherein the registry is locally stored at a user device.
14. The method of claim 13, wherein the registry is stored at a remote server such that the information associated with the pane is to be available to a plurality of user devices within an enterprise.
15. The method of claim 14, wherein information associated with a plurality of panes is stored at the registry, and a pane is to be selected for a user device based on a user type.
16. A method, comprising:
- establishing a first service to receive data from a first remote source;
- establishing a second service to receive data from a second remote source, the second remote source being independent of the first remote source;
- receiving, from a user, placement information laying out the first and second services within a pane of a host application;
- dynamically determining context information associated with the first service; and
- displaying to the user information from the first and second remote sources within the pane, wherein the information from the first remote source is associated with the context information.
17. The method of claim 16, wherein the context information is received from the host application.
18. The method of claim 16, wherein the context information is received from the second service.
19. An apparatus, comprising:
- a communication port adapted to exchange data via a network;
- a display device; and
- a processor coupled tot he communication port and display device, wherein the processor is to: register, with a registry, a first service including an indication that the first service is to receive data from a first remote source via the communication port, register, with the registry, a second service including an indication that the second service is to receive data from a second remote source via the communication port, the second remote source being independent of the first remote source, receiving, from a user, placement information laying out the first and second services within a pane of an application, registering, with the registry, information associated with the pane including layout information, and displaying on the display device information from the first and second remote sources within the pane.
20. The apparatus of claim 19, further comprising:
- a storage device to store at least one of: (i) the registry, or (ii) user role information.
21. A computer-readable medium storing instructions adapted to be executed by a processor to perform a method, the method comprising:
- registering, with a registry, a first service including an indication that the first service is to receive data from a first remote source;
- registering, with the registry, a second service including an indication that the second service is to receive data from a second remote source, the second remote source being independent of the first remote source;
- receiving, from a user, placement information laying out the first and second services within a pane of an application;
- registering, with the registry, information associated with the pane including layout information; and
- displaying to the user information from the first and second remote sources within the pane.
Type: Application
Filed: Sep 13, 2006
Publication Date: Mar 13, 2008
Inventor: Harry G. James (Poughkeepsie, NY)
Application Number: 11/520,099
International Classification: G06F 17/30 (20060101);