The present invention relates generally to the field of computer-facilitated communications; more particularly, to instant messaging between users logged into a computer network.
A paramount concern in a modern enterprise is the ability to quickly respond to changing information. Electronic messaging systems such as instant messaging and e-mail have provided convenient tools for contacting people or groups of people efficiently. These systems provide a fast and inexpensive method for individuals to communicate and collaborate. Reliance on electronic communication has increased markedly in recent years. As technology advances, it is certain that organizations will become more dependent on immediate access to information to excel in a competitive environment.
It is also important for members of an organization to be able to effectively share identical screen images in real-time, such as text and graphics, among one or more client computers. Users typically share these images with one another using e-mail or instant message attachments. A practice known as “screen sharing” or “window sharing” is also used to allow for the display of identical information on computer screens or windows which are mutually connected in a distributed system. Nevertheless, these solutions have shortcomings.
For one, instant messaging is not used for screen sharing. Instead, users are typically connected via a slow connect medium, which adversely affects the instantaneous quality of instant messaging. Furthermore, when users send large attachments, there is an overall slowdown in the speed and reliability of their networks as server capacity is consumed at high levels. In addition, instant messaging systems are generally not scalable. There is typically only one path for a message to take over a network, and past systems have lacked the intelligence to find a more optimum path for the instant messages. Consequently, if there is too much traffic on a particular path, the recipient of an instant message may be subjected to a substantial delay.
Still another major shortcoming of existing instant messaging systems is that they do not provide a secure medium for confidential communication. Instant messaging has been traditionally conducted over the Internet, with communications sent via clear text. This type of insecure forum is often unacceptable for high-security business information. Finally, most instant messaging systems cannot track the presence of an individual throughout an organization. If an emergency happens within the organization, for example, there is no way to automatically alert the proper individuals using existing instant messaging technology.
What is needed is a comprehensive instant messaging system that allows for encrypted communication, collaborative screen sharing using the instant messaging system, and extensibility. Furthermore, an instant messaging system that is able to track the presence of individuals within an organization and to alert those individuals automatically if a predetermined event occurs would also be beneficial.
The present invention will be understood more fully from the detailed description that follows and from the accompanying drawings, which however, should not be taken to limit the invention to the specific embodiments shown, but are for explanation and understanding only.
A system and method for instant messaging collaboration is described. In the following description numerous specific details are set forth, such as the architecture of a message center, details regarding particular types of instant messaging collaboration, and the use of the invention for sharing business reports, in order to provide a thorough understanding of the present invention. However, persons having ordinary skill in the computer arts will appreciate that these specific details may not be needed to practice the present invention.
According to one embodiment of the present invention, an instant messaging system is provided that allows users to transmit messages instantaneously to any user located in a list of users contained in the instant messaging system. The system is able to track the presence of users that are using the instant message system within an organization, and to send users alerts about changing information within the organization. For example, if the instant messaging system is used in an oil refinery and there is a dangerous condition occurring in the refinery, an instant message may be sent to the appropriate people within the refinery so that they are able to immediately respond to the event. The system also provides for instant messaging through e-mail if users are not using the instant messaging system.
In one embodiment, the instant messaging system allows users to plug in their own security, such as bit encryption, so that confidential information may be transmitted between users in a highly secure manner. In another embodiment, a proprietary instant messenger allows for peer-to-peer collaboration, completely bypassing a server for instant messaging. In this manner, users of the system may communicate directly with one another and share identical screen images without having to communicate through the Internet, or with any other server, for that matter. If an image on one user's screen changes, this change may be streamed in real-time to all other participants in the instant messaging collaboration. The instant messaging system of the present invention is also extensible, such that message deliveries can be farmed out to back-up servers to send instant messages to users if network traffic necessitates this type of transmission.
Referring now to
As is known in the art, the existing enterprise systems contain a variety of different data about the organization. For example, the ERP system 102 may contain data regarding essential business functions including payroll, manufacturing, general ledger, and human resources whereas the CRM system 103 may contain core information regarding the organization's customers. As data in these various systems changes (e.g., a sale is made, a new employee is hired, payroll is processed, etc.), one or more message queueing systems 107 may be used to allow these various applications 102, 103, 104, etc., to exchange information on the data being stored in their systems. To this end, one implementation of the present invention employs a message queue server (e.g., the Microsoft RTM message Queue Server (MSMQ) (not shown in this view) although other message queuing systems may be used as well), to provide loosely-coupled and reliable network (across servers) communication services based on a message-queueing model. In MSMQ, messages are sent to a queue, where the message is retained in storage until it is removed and used by another application. In this manner, loosely-coupled applications can share data to provide an enterprise-wide view of information, such as data and business transactions.
An enterprise link 110 is coupled to the enterprise computing runtime environment 101 through a network connection, such as the Internet 111. Of course, as is noted above, the network connection may also be a LAN, a WAN, a wireless network, or any other system of connections that allows one or more computers to exchange information. The enterprise link 110 integrates, in real-time, the disparate data in the message queues. The enterprise link 110 of the present invention is maintained active. It continuously accepts raw data feeds 121, 122, 123, etc., from the existing enterprise systems, and then reformats, synchronizes, and consolidates the data.
In a traditional model, the data in the message queues is usually processed through the data flow system when a specified number of records have built up within the message queues (i.e., the data is then transmitted in batch mode). According to an algorithm contained within the data flow system of the present invention, however, individual records are processed through to the enterprise link 110 the moment that they appear; that is, the program continuously checks for new messages and handles them in real-time. In this manner, real-time data flow is transmitted through the raw data feeds 121, 122, 123 via the message queues.
It should be noted that although a message queueing system is used in one embodiment, the enterprise link 110 may also obtain data from the enterprise computing runtime environment 101 in a variety of other ways. These sources of data may be, for example, HyperText Transport Protocol (“HTTP”) requests and/or Application Programming Interface (“API”) calls and/or Web Services calls. In these alternative embodiments, the enterprise link 110 contains a web server (not shown in this view) to process the HTTP requests and/or another application or server to process the API and/or Web Service calls.
Regardless of how the enterprise link 110 receives the raw data feeds (e.g., 121-123) the enterprise link 110 transmits the data it receives from the enterprise computing runtime environment 101 via a network connection 160 to an active data cache (ADC) 120. Alternatively, the data may be transmitted to the ADC 120 via some other connection. The ADC 120 comprises a high-performance, memory-based persistent cache which stores the data (e.g., as shown by stars 131, 132, and 133) it receives from the enterprise link 110. The ADC 120 contains code which may be implemented in software such as Java™, Perl, C++, or other types of programming languages that can be stored on a computer-readable medium (e.g., a disk) to manage the data that is actively changing within the enterprise computing runtime environment 101 and to make the data accessible to the end-user in real-time. In this manner, the data represented by stars 131, 132, and 133 in the ADC 120 is constantly changing such that it is synchronized in real-time with the data in the enterprise computing runtime environment 101. The data 131, 132, and 133 in the ADC 120 may also be made persistent to disk 140, as disk 140 is optionally used for backup, restore, and recovery purposes.
An active designer 154 is the component module of the enterprise link 110 that determines the particular data that is contained within the ADC 120. Active designer 154 determines the process by which the data 131, 132, and 133 is transmitted to the ADC 120. As is shown in
By way of example, when sales data arrives at the ERP 102, the active designer 154 may contain a set of data flow definitions on how to retrieve, transform, and display this data. Each data flow definition may include executable software code instructing the enterprise link 110 to retrieve, by way of example, the data within the salesperson field whenever a sale is made, to describe how many sales that salesperson has made for the day, etc., and then to transmit this data to the ADC 120.
In the embodiment of
Referring now to
The presence component 209 may determine, for example, that a user is off-line, and therefore may not receive an instant message. The presence component may also determine that even though a user may not be using instant messaging, that the user has an e-mail address, where the instant message may be sent to be viewed the next time the user checks e-mail. The user manager 204 allows the server component 200 to obtain log-in information for various users. The user manager 204 also maintains lists of users that the server component 200 may communicate with via instant messaging. Local user information 205, including the name and e-mail address of users, may also be contained within the server component 200 of the message center architecture.
A variety of plug-ins 206, 207, and 208, may be connected to the main server component 200 to allow the message center 170 to contact instant messaging users 220 and 230. In the embodiment illustrated by
Components of the enterprise computing runtime environment may use the event engine 202 to transmit messages through the API layer 201 directly to the Microsoft instant messaging server 210 through plug-in 208. The Microsoft instant messaging server 210 may then use the Internet 215 to transmit the instant message to a user 220. For instance, if an instant message needs to be sent to user 220 within an organization, the event engine 202 immediately transmits this message to the server component 200. The user manager 204 resolves the user's e-mail address on the Microsoft instant messaging server 210. The server component 200 employs the presence component 203 to determine whether or not user 220 is on-line. If user 220 is not on-line, then a message is transmitted back to the message center 170 indicating that the user is not on-line and thus cannot be contacted. Alternatively, the server component 200 may send the instant message to the user 220 via e-mail through the SMTP mail protocol plug-in 207 for the user 220 to receive next time the user checks his in-box. If the user 220 is on-line, however, then the plug-in 208 immediately transmits the message via the Internet 215 to the Microsoft instant messaging server 210. The Microsoft instant messaging server 210 then transmits the message to the user 220.
In another embodiment of the present invention, a user 230 may receive instant messages without using the Microsoft instant messaging server 210. For example, the proprietary instant messaging plug-in 206 allows instant messages to be transmitted from the event engine 202 to users who are logged into a proprietary server 240. If a message arrives at the server component 200 from the event engine 202 for the user 230, the user manager 204 is able to resolve the user's 230 e-mail address and transmit the message to the user 230 via the proprietary server 207. In addition, the message center is able to determine how the user 230 is logged on to the system. That is, it recognizes that the user 230 is logged on using the proprietary server 240 and therefore is able to send the message to the user 230 via the proprietary instant messaging plug-in 206.
Instant messages may be sent using the proprietary instant messaging plug-in 206 and the SMTP plug-in 207 simultaneously. Or, alternatively, an algorithm within the server component 200 may contain a set of rules to determine the best mode of instant message transmission. For example, if a message arrives at the message center for user 220, an algorithm may dictate that the instant message first try to be sent via the Microsoft instant messaging server 210, next through the proprietary server 240, and, if this fails, through the SMTP plug-in 207 via the mail server 211.
In another embodiment, an algorithm may be used to try to transmit the instant message through the proprietary server 240 first, the Microsoft instant messaging server 210 second, and the mail server 211 last. The proprietary server 240 may be connected to the server component 200 and to the users 230 and 220 via a standard Transmission Control Protocol/Internet Protocol (TCP/IP) connection 216. Thus, the proprietary server 240 allows messages to be transmitted using bit-encryption or other highly secure transmission methods. The users 220 and 230 may also be connected to each other via the TCP/IP connections 216 and to the mail server 211 via the TCP/IP connection 216.
In addition, two components of the proprietary server 240 allow for the farming out of network traffic to multiple in-house servers. A presence component 251 of the proprietary server 240 is able to detect the presence of users 220 and 230 of the system, that is, whether or not users 220 and 230 are logged on to the proprietary server 240. A message component 252 of the proprietary server 240, handles message delivery to users 220 and 230.
If multiple messages are transmitted to the proprietary server 240 it may farm them out to back-up servers 241, 242, 243, etc., via the TCP/IP connection 216 located in-house if network traffic is too extensive. In this way, the instant messaging system is scalable. If hundreds of users in an organization need to receive an instant message, these messages may be farmed out to as many back-up servers 241, 242, 243, etc., as necessary and then transmitted to the appropriate users. Furthermore, users 220 and 230 may also communicate directly, without going through a proprietary server 240. This type of direct connection may be brokered by the proprietary server 240. In this case, the proprietary server 240 may set up a direct connection between user 220 and user 230 if the proprietary server is unable to connect to the users 220 and/or 230.
In the example embodiment of
Referring now to
In one example, the data may be in the form of a report 306 which is displayed in a specified format, such as a graph. The data may be active. That is, as data changes within the enterprise computing runtime environment these changes are immediately made available to the user 301 (or any user specified by the algorithm contained within the event engine) in real-time via the server component 320 of the message center. At this point, the user's 301 client computer is communicating directly with the server component 320 via connection 321.
Hosted inside the user's 301 client computer is the data. User 301 may click on the chat window to view the data on the user's client computer screen 304. Moreover, the user 301 may share the data with users 302 and 303 via the proprietary server 350. If the user 301 decides to share the data with users 302 and 303, the user 301 may use a viewer 335 to display a drop-down screen 340. A space 345 for text entry in the drop-down screen 340 is provided as well as a conversation window 355 to allow for instant messaging, that is, for “chatting” with users 302 and 303 via the proprietary server 350. The user 301 may send the data comprising the graphical report 306 in the form of an instant message to users 302 and 303 through the proprietary server 350. This message is streamed through the propriety server 350 via the instant messaging protocol. Icons appear on users' 302 and 303 client computer screens 370 and 371, indicating that they are the recipients of an instant message. When the users 302 and 303 click on the icons, they are able to see the exact data, in this example, the graphical report 306, that is shown on user's 301 computer screen. Users 302 and 303 are able to click on their viewers 375 and 385, to display drop-down screens 380 and 390. Spaces for text entry 381 and 391 and conversation windows 382 and 392 may be used to convey messages to users 301, 302, and 303 involved in the instant messaging collaboration in the manner described herein.
In addition, users 301, 302, and 303 are able to annotate the data in real-time in order to make changes to the data or insert comments. As a user 301, for example, annotates the data, the annotated data is streamed in real-time to users 302 and 303 who are involved in the instant messaging collaboration via the proprietary server 350. Furthermore, users 302 and/or 303 may also make changes to the data in real-time, which may be streamed through the proprietary server 350 to the users 301, 302, and 303.
Another feature of the present invention allows for client computers that have pen-enabled data input. For example, a user 301 may circle a portion of the graphical report 306 with a pen-type device coupled to user's 301 client computer. This circle appears in real-time on users' 302 and 303 computer screens in accordance with one embodiment of the present invention. Spaces for pen-enabled entries 346, 383, and 393, such as handwriting recognition windows, may be located on users 301, 302, and 303 drop-down screens 340, 380, and 390. This feature permits instant messaging collaboration to be conducted using tablet personal computers where the main data entry device is not a keyboard but, a pen-type device.
Referring now to
In this example, the first user decides to share the sales report with a second and third user, and thus selects the viewer feature on the user's computer screen (block 505). A drop-down menu is displayed on the first user's computer screen (block 506). The first user utilizes a keypad to type in a message in the conversation window of the drop-down menu and sends this message as well as the sales report to the second and third users through the proprietary server using the instant messaging protocol (block 507).
Continuing with this example, the second and third users receive the exact data that is displayed on the first user's computer screen (block 508). The first user annotates the sales data by using a pen-type device to circle a portion of the data (block 509). This change in the data is instantaneously streamed in real-time to the second and third users (block 510) who are involved in an instant messaging collaboration via the proprietary server with the first user. The second and third users use drop-down menus on their respective computer screens to communicate with the users involved in the collaboration (block 511). The second and third users make changes to the active data report, pen-enabled or otherwise (block 512). These changes are streamed to the users involved in the instant messaging collaboration (block 513).
A flow chart illustrating one example operation according to one embodiment of the present invention is shown in
Referring now to
A display device 806 for providing visual output is also coupled to bus 801 for communicating information and command selections to processor 802. Keyboard 807 is coupled to bus 801 for communicating information and command selections to processor 802. Another type of input device is cursor control unit 808, which may be a device such as a mouse or trackball, for communicating direction commands that control cursor movement on display 809.
For example, the cursor control unit 808 may be used to click on a box that will display the instant messages and/or active data transmitted to the computer system 800. Yet another type of input device is a pen-type device 810, for making pen-enabled annotations to a document or for entering messages in handwriting recognition windows (not shown in this view) on drop-down menus on the display 809.
Processor 802 is shown coupled through bus 801 to an input/output (I/O) interface 811, which can be used to control and transfer data to electronic devices connected to computer 800, such as other computers, tape records, and the like.
Network interface device 812 is coupled to bus 801 and provides a physical and logical connection between computer system 800 and network medium, such as the Internet. Depending on the network environment in which computer 800 is used, this connection is typically to a server computer, but it can also be to a network router or to another client computer. Note that the architecture of
In the foregoing, a system and method for instant messaging collaboration has been described. Although the present invention has been described with reference to specific exemplary embodiments, it should be understood that numerous changes in the disclosed embodiments can be made in accordance with the disclosure herein without departing from the spirit and scope of the invention. The preceding description, therefore, is not meant to limit the scope of the invention. Rather, the scope of the invention is to be determined only by the appended claims and their equivalents.
Number | Name | Date | Kind |
---|---|---|---|
5033009 | Dubnoff | Jul 1991 | A |
5510980 | Peters | Apr 1996 | A |
5553215 | Kaethler | Sep 1996 | A |
5592608 | Weber et al. | Jan 1997 | A |
5613131 | Moss et al. | Mar 1997 | A |
5615362 | Jensen et al. | Mar 1997 | A |
5654726 | Mima et al. | Aug 1997 | A |
5721847 | Johnson | Feb 1998 | A |
5754774 | Bittinger et al. | May 1998 | A |
5758337 | Hammond | May 1998 | A |
5765164 | Prasad et al. | Jun 1998 | A |
5778372 | Cordell et al. | Jul 1998 | A |
5781911 | Young et al. | Jul 1998 | A |
5784275 | Sojoodi et al. | Jul 1998 | A |
5787409 | Seiffert et al. | Jul 1998 | A |
5809267 | Moran et al. | Sep 1998 | A |
5812840 | Sxhwartz | Sep 1998 | A |
5831609 | London et al. | Nov 1998 | A |
5831615 | Drews et al. | Nov 1998 | A |
5857201 | Wright, Jr. et al. | Jan 1999 | A |
5862325 | Reed et al. | Jan 1999 | A |
5864669 | Osterman et al. | Jan 1999 | A |
5890174 | Khanna et al. | Mar 1999 | A |
5893126 | Drews et al. | Apr 1999 | A |
5898434 | Small et al. | Apr 1999 | A |
5918009 | Gehani et al. | Jun 1999 | A |
5922044 | Banthia | Jul 1999 | A |
5926177 | Hatanaka et al. | Jul 1999 | A |
5928327 | Wang et al. | Jul 1999 | A |
5930794 | Linenbach et al. | Jul 1999 | A |
5943620 | Boltz et al. | Aug 1999 | A |
5974236 | Sherman | Oct 1999 | A |
6023694 | Kouchi et al. | Feb 2000 | A |
6025844 | Parsons | Feb 2000 | A |
6035324 | Chang | Mar 2000 | A |
6038558 | Powers et al. | Mar 2000 | A |
6055548 | Comer et al. | Apr 2000 | A |
6070197 | Cobb et al. | May 2000 | A |
6073242 | Hardy et al. | Jun 2000 | A |
6075530 | Lucas et al. | Jun 2000 | A |
6088481 | Okamoto et al. | Jul 2000 | A |
6092102 | Wagner | Jul 2000 | A |
6094681 | Shaffer et al. | Jul 2000 | A |
6112236 | Dollin et al. | Aug 2000 | A |
6141659 | Barker et al. | Oct 2000 | A |
6170019 | Dresel et al. | Jan 2001 | B1 |
6175859 | Mohler | Jan 2001 | B1 |
6182116 | Namma et al. | Jan 2001 | B1 |
6185582 | Zellweger et al. | Feb 2001 | B1 |
6189069 | Pares et al. | Feb 2001 | B1 |
6201539 | Miller et al. | Mar 2001 | B1 |
6204846 | Little et al. | Mar 2001 | B1 |
6205474 | Hurley | Mar 2001 | B1 |
6208990 | Suresh et al. | Mar 2001 | B1 |
6233578 | Machihara et al. | May 2001 | B1 |
6239797 | Hills et al. | May 2001 | B1 |
6240444 | Fin et al. | May 2001 | B1 |
6243698 | Powers et al. | Jun 2001 | B1 |
6243713 | Nelson et al. | Jun 2001 | B1 |
6256649 | Mackinlay et al. | Jul 2001 | B1 |
6256676 | Taylor et al. | Jul 2001 | B1 |
6269393 | Yost et al. | Jul 2001 | B1 |
6292803 | Richardson et al. | Sep 2001 | B1 |
6301601 | Helland et al. | Oct 2001 | B1 |
6304546 | Natarajan et al. | Oct 2001 | B1 |
6314463 | Abbott et al. | Nov 2001 | B1 |
6317737 | Gorelik et al. | Nov 2001 | B1 |
6336135 | Niblett et al. | Jan 2002 | B1 |
6341312 | French et al. | Jan 2002 | B1 |
6348933 | Walls et al. | Feb 2002 | B1 |
6363363 | Haller et al. | Mar 2002 | B1 |
6393421 | Paglin | May 2002 | B1 |
6397217 | Melbin | May 2002 | B1 |
6430576 | Gates et al. | Aug 2002 | B1 |
6449344 | Goldfinger et al. | Sep 2002 | B1 |
6467052 | Kaler et al. | Oct 2002 | B1 |
6480847 | Linenbach et al. | Nov 2002 | B1 |
6510457 | Ayukawa et al. | Jan 2003 | B1 |
6513047 | Talley | Jan 2003 | B1 |
6519568 | Harvey et al. | Feb 2003 | B1 |
6523046 | Liu et al. | Feb 2003 | B2 |
6532465 | Hartley et al. | Mar 2003 | B2 |
6535227 | Fox et al. | Mar 2003 | B1 |
6542165 | Ohkado | Apr 2003 | B1 |
6567796 | Yost et al. | May 2003 | B1 |
6567814 | Bakier et al. | May 2003 | B1 |
6574618 | Eylon et al. | Jun 2003 | B2 |
6574639 | Carey et al. | Jun 2003 | B2 |
6591277 | Spence et al. | Jul 2003 | B2 |
6591278 | Ernst | Jul 2003 | B1 |
6598167 | Devine et al. | Jul 2003 | B2 |
6606596 | Zirngibl et al. | Aug 2003 | B1 |
6640234 | Coffen et al. | Oct 2003 | B1 |
6647272 | Asikainen | Nov 2003 | B1 |
6651055 | Kilmer et al. | Nov 2003 | B1 |
6651142 | Gorelik et al. | Nov 2003 | B1 |
6701485 | Igra et al. | Mar 2004 | B1 |
6731314 | Cheng et al. | May 2004 | B1 |
6745193 | Horvitz et al. | Jun 2004 | B1 |
6775267 | Kung et al. | Aug 2004 | B1 |
6789083 | Thelen | Sep 2004 | B2 |
6832341 | Vijayan | Dec 2004 | B1 |
6901592 | Mar et al. | May 2005 | B2 |
6907422 | Predovic | Jun 2005 | B1 |
6915457 | Miller | Jul 2005 | B1 |
6920607 | Ali et al. | Jul 2005 | B1 |
6938221 | Nguyen | Aug 2005 | B2 |
6954902 | Noma et al. | Oct 2005 | B2 |
6996768 | Elo et al. | Feb 2006 | B1 |
7024474 | Clubb et al. | Apr 2006 | B2 |
7031314 | Craig et al. | Apr 2006 | B2 |
7032006 | Zhuk | Apr 2006 | B2 |
7058953 | Willard et al. | Jun 2006 | B2 |
7096432 | Huapaya et al. | Aug 2006 | B2 |
7113964 | Bequet et al. | Sep 2006 | B1 |
7120139 | Kung et al. | Oct 2006 | B1 |
7171473 | Eftis et al. | Jan 2007 | B1 |
7174339 | Wucherer et al. | Feb 2007 | B1 |
7197565 | Abdelaziz et al. | Mar 2007 | B2 |
7243124 | Gardner et al. | Jul 2007 | B1 |
7272660 | Powers et al. | Sep 2007 | B1 |
20010034733 | Promt et al. | Oct 2001 | A1 |
20010039616 | Kumagai et al. | Nov 2001 | A1 |
20010049721 | Blair et al. | Dec 2001 | A1 |
20020013853 | Baber et al. | Jan 2002 | A1 |
20020038217 | Young | Mar 2002 | A1 |
20020057678 | Jiang et al. | May 2002 | A1 |
20020059472 | Woolrath et al. | May 2002 | A1 |
20020065894 | Dalal et al. | May 2002 | A1 |
20020078208 | Crump et al. | Jun 2002 | A1 |
20020083067 | Tamayo et al. | Jun 2002 | A1 |
20020107864 | Battas et al. | Aug 2002 | A1 |
20020107905 | Roe et al. | Aug 2002 | A1 |
20020107957 | Zargham | Aug 2002 | A1 |
20020116362 | Li et al. | Aug 2002 | A1 |
20020120697 | Generous et al. | Aug 2002 | A1 |
20020120765 | Boehmke | Aug 2002 | A1 |
20020143710 | Liu | Oct 2002 | A1 |
20020152402 | Tov et al. | Oct 2002 | A1 |
20020165849 | Singh et al. | Nov 2002 | A1 |
20020184187 | Bakalash et al. | Dec 2002 | A1 |
20020198985 | Fraenkel et al. | Dec 2002 | A1 |
20030004742 | Palmer et al. | Jan 2003 | A1 |
20030023691 | Knauerhase | Jan 2003 | A1 |
20030028682 | Sutherland | Feb 2003 | A1 |
20030028683 | Yorke et al. | Feb 2003 | A1 |
20030033329 | Bergman et al. | Feb 2003 | A1 |
20030074393 | Peart | Apr 2003 | A1 |
20030088633 | Chiu et al. | May 2003 | A1 |
20030093585 | Allan | May 2003 | A1 |
20030101201 | Saylor et al. | May 2003 | A1 |
20030101223 | Pace et al. | May 2003 | A1 |
20030105837 | Kamen et al. | Jun 2003 | A1 |
20030115186 | Wilkinson | Jun 2003 | A1 |
20030120805 | Couts et al. | Jun 2003 | A1 |
20030154177 | Holland et al. | Aug 2003 | A1 |
20030182428 | Li et al. | Sep 2003 | A1 |
20030182461 | Stelting et al. | Sep 2003 | A1 |
20030187971 | Uliano et al. | Oct 2003 | A1 |
20030204741 | Schoen et al. | Oct 2003 | A1 |
20030208543 | Enete et al. | Nov 2003 | A1 |
20030217081 | White et al. | Nov 2003 | A1 |
20030220860 | Heytens et al. | Nov 2003 | A1 |
20030229722 | Beyda | Dec 2003 | A1 |
20030235279 | Richomme | Dec 2003 | A1 |
20040002958 | Seshadri et al. | Jan 2004 | A1 |
20040010543 | Grobman | Jan 2004 | A1 |
20040030762 | Silverthorne et al. | Feb 2004 | A1 |
20040039776 | Ballard | Feb 2004 | A1 |
20040039800 | Black et al. | Feb 2004 | A1 |
20040049477 | Powers et al. | Mar 2004 | A1 |
20040073596 | Kloninger et al. | Apr 2004 | A1 |
20040087300 | Lewis | May 2004 | A1 |
20040146044 | Herkerdorf et al. | Jul 2004 | A1 |
20040152477 | Wu et al. | Aug 2004 | A1 |
20040254998 | Horvitz | Dec 2004 | A1 |
20050004984 | Simpson | Jan 2005 | A1 |
20050055329 | Bakalash et al. | Mar 2005 | A1 |
20050086211 | Mayer | Apr 2005 | A1 |
20050102294 | Coldewey | May 2005 | A1 |
20050102611 | Chen | May 2005 | A1 |
20060089939 | Broda et al. | Apr 2006 | A1 |
20060161540 | Svhmitz et al. | Jul 2006 | A1 |
20040046803 | Beauchamp et al. | Feb 2008 | A1 |
20080043256 | Broda et al. | Feb 2008 | A1 |
20080046505 | Netsch et al. | Feb 2008 | A1 |
20080046506 | Broda | Feb 2008 | A1 |
20080046510 | Beauchamp et al. | Feb 2008 | A1 |
20080046536 | Broda | Feb 2008 | A1 |
20080046556 | Nicholls et al. | Feb 2008 | A1 |
20080046568 | Broda et al. | Feb 2008 | A1 |
20080046803 | Beauchamp et al. | Feb 2008 | A1 |
20080046837 | Beauchamp et al. | Feb 2008 | A1 |
20080077656 | Broda | Mar 2008 | A1 |
Number | Date | Country |
---|---|---|
WO 0163466 | Aug 2001 | WO |
Number | Date | Country | |
---|---|---|---|
20040054802 A1 | Mar 2004 | US |
Number | Date | Country | |
---|---|---|---|
60410989 | Sep 2002 | US |