WikiPatents - Community Patent Review
Create Free Account  |  License or Sell Your Patent  |  WikiPatents Marketplace  |  WikiPatents Blog
Username:  Password:  
    
Advanced Search
Network based knowledgeable assistant    
United States Patent5652789   
Link to this pagehttp://www.wikipatents.com/5652789.html
Inventor(s)Miner; Richard A. (Cambridge, MA), Warner; William J. (Weston, MA), Lovell; Anthony M. (Somerville, MA), Shienbrood; Eric R. (Concord, MA), Gabryelski; Keith (Cambridge, MA), Arnold; Kenneth C. R. C. (Lexington, MA), d'Arbeloff; Nicholas C. (Belmont, MA), Hinckley; Kee (Winchester, MA)
AbstractA method implemented by a computer-based electronic assistant to receive and manage incoming calls to a subscriber including the steps of receiving an incoming call to the subscriber from a caller; establishing a first connection between the electronic assistant and the caller; establishing a second connection between the electronic assistant and the subscriber; over the second connection, electronically notifying the subscriber of the incoming call; in response to receiving a call accept command from the subscriber over the second connection, linking the caller and the subscriber so that they may communicate with each other; upon linking the subscriber to the caller, switching the electronic assistant to a background mode in which said electronic assistant continues to monitor the subscriber over the second connection while the subscriber is linked with the caller; and in response to receiving a summoning command, switching the electronic assistant into a foreground mode, wherein the electronic assistant when in its background mode responds to a first set of commands including at least the summoning command and when in its foreground mode responds to a second set of commands where the second set of commands is larger than the first set of commands.
   














 Title Information Submit all comments and votes
 
Patent Text Patent PDF Print Page Summary File History
Plain text PDF images Print Summary File History
Drawing from US Patent 5652789
Network based knowledgeable assistant - US Patent 5652789 Drawing
Network based knowledgeable assistant
Inventor     Miner; Richard A. (Cambridge, MA) , Warner; William J. (Weston, MA) , Lovell; Anthony M. (Somerville, MA) , Shienbrood; Eric R. (Concord, MA) , Gabryelski; Keith (Cambridge, MA) , Arnold; Kenneth C. R. C. (Lexington, MA) , d'Arbeloff; Nicholas C. (Belmont, MA) , Hinckley; Kee (Winchester, MA)
Owner/Assignee     Wildfire Communications, Inc. (Lexington, MA)
Patent assignment
All assignments
Publication Date     July 29, 1997
Application Number     08/316,635
PAIR File History     Application Data   Transaction History
Image File Wrapper   Patent Term   Fees
Litigation
Filing Date     September 30, 1994
US Classification     379/201.01 379/212.01 379/88.22
Int'l Classification    
Examiner     Zele; Krista M.
Assistant Examiner     Weaver; Scott L.
Attorney/Law Firm     Fish & Richardson P.C.
Address
Parent Case    
Priority Data    
USPTO Field of Search     379/201 379/202 379/203 379/206 379/211 379/212 379/213 379/214 379/67 379/88 379/89
Patent Tags     network based knowledgeable assistant
   
Enter a comma (,) or semicolon (;) between multiple tag words/phrases.
Describe this patent:
 Amusing   
 Clever   
 Complex   
 Efficient   
 Historic   
 Important   
 Innovative   
 Interesting   
 Practical   
 Simple   
[no votes]
Patent WIKI

Share information and news about this patent, including information and news about the technology, inventors, company, ligation and licensing.

 References Submit all comments and votes
 
*references marked with an asterisk below are user-added references
 U.S. References
 
Add a new US reference:  
ReferenceRelevancyCommentsReferenceRelevancyComments
5566236
MeLampy et al.

Oct,1996

[0 after 0 votes]
5463684
Morduch et al.

Oct,1995

[0 after 0 votes]
5436963
Fitzpatrick et al.

Jul,1995

[0 after 0 votes]
5414754
Pugh et al.

May,1995

[0 after 0 votes]
5408526
McFarland et al.

Apr,1995

[0 after 0 votes]
5384771
Isidoro et al.

Jan,1995

[0 after 0 votes]
5355403
Richardson, Jr. et al.

Oct,1994

[0 after 0 votes]
5329578
Brennan et al.

Jul,1994

[0 after 0 votes]
5333266
Boaz et al.

Jul,1994

[0 after 0 votes]
5327486
Wolff et al.

Jul,1994

[0 after 0 votes]
5263084
Chaput et al.

Nov,1993

[0 after 0 votes]
5243645
Bissell et al.

Sep,1993

[0 after 0 votes]
5195086
Baumgartner et al.

Mar,1993

[0 after 0 votes]
5131024
Pugh et al.

Jul,1992

[0 after 0 votes]
4972462
Shibata

Nov,1990

[0 after 0 votes]
4953204
Cuschleg, Jr. et al.

Aug,1990

[0 after 0 votes]
4933966
Hird et al.

Jun,1990

[0 after 0 votes]
4873719
Reese

Oct,1989

[0 after 0 votes]
4761807
Matthews et al.

Aug,1988

[0 after 0 votes]
4585906
Matthews et al.

Apr,1986

[0 after 0 votes]
4313035
Jordan et al.

Jan,1982

[0 after 0 votes]
 Foreign References
 Other References
 Market Review Submit all comments and votes
   
Market Size
Estimate the gross annual revenues of the relevant market sector:
> $10B
$5B - $10B
$2B - $5B
$500M - $2B
$100M - $500M
$10M - $100M
$1M - $10M
$500K - $1M
$100K - $500K
< $100K
[No votes]
$0
 
$0   $2.5B   $5B   $7.5B   $10B
Market Share
Estimate the percentage of the relevant market sector this invention will capture:
75% - 100%
50% - 74.99%
25% - 49.99%
10 - 24.99%
5 - 9.99%
2 - 4.99%
1 - 1.99%
< 1%
[No votes]
0.0%
 
0%   25%   50%   75%   100%
Reasonable Royalty
What percentage of gross sales should the inventor or assignee be paid?
75% - 100%
50% - 74.99%
25% - 49.99%
10 - 24.99%
5 - 9.99%
2 - 4.99%
1 - 1.99%
< 1%
[No votes]
0.0%
 
0%   25%   50%   75%   100%
Public's "Guesstimation" of Royalty Value
Market SizeN/A[No votes]
xMarket ShareN/A[No votes]
xReasonable RoyaltyN/A[No votes]

N/A

License Availablity
If you are NOT the owner or assignee, answer here:
Yes, license is available for purchase

No, license is not currently available



[No votes]
License Availablity
If you ARE the owner or assignee, answer here:
Yes, license is available for purchase

No, license is not currently available



[No votes]
Competitive Advantage
Does this invention have a significant competitive advantage over similar technologies?
Yes

No



[No votes]
Most helpful competitive advantage comment
[No comments]

Commercial Alternatives
Are there viable commercial alternatives for this invention?
Yes

No



[No votes]
Most helpful commercial alternative comment
[No comments]

 Technical Review Submit all comments and votes
 Claims Submit all comments and votes
 


What is claimed is:

1. A method implemented by a computer-based electronic assistant to receive and manage incoming calls to a subscriber, said method comprising:

receiving an incoming call to the subscriber from a caller;

in response to receiving the incoming call, establishing a first connection between the electronic assistant and the caller, said electronic assistant being in a foreground mode;

establishing a second connection between the electronic assistant and the subscriber;

over the second connection, electronically notifying the subscriber of the incoming call;

in response to receiving a call accept command from the subscriber over the second connection, linking the caller and the subscriber so that they may communicate with each other;

upon linking the subscriber to the caller, switching the electronic assistant to a background mode in which said electronic assistant continues to monitor the subscriber over the second connection while the subscriber is linked with the caller; and

in response to receiving a summoning command, switching the electronic assistant into said foreground mode,

wherein the electronic assistant when in the background mode responds to a first set of commands including at least the summoning command and when in the foreground mode responds to a second set of commands, said second set of commands being larger in number than said first set of commands.

2. The method of claim 1 wherein said second set of commands includes a command that causes the electronic assistant to terminate the first connection which command is unavailable in the first set of commands.

3. The method of claim 1 wherein said second set of commands includes a command that causes the electronic assistant to establish a connection between the subscriber and another party which command is unavailable in the first set of commands.

4. The method of claim 1 wherein said second set of commands includes a command that causes the electronic assistant to send a message to another party which command is unavailable in the first set of commands.
 Description Submit all comments and votes
 


BACKGROUND OF THE INVENTION

The present invention relates to a computer-implemented method and apparatus for managing communications to and/or from a user over multiple media.

Today there are many different, commercially available devices that enable people to communicate with each other electronically. In addition to the ubiquitous telephone that has been around for decades, there now are cordless phones for the home, mobile phones for the car, handheld wireless phones which fit into a person's jacket pocket, pagers, local and wide area computer networks, and facsimile machines, to name a few. Undoubtedly, the number and type of devices and their sophistication will continue to increase over time. Indeed, it is likely that a day will soon arrive when it will be possible for everybody to conveniently and inexpensively be within arms reach of some communication device that enables them to communicate electronically with other people.

The proliferation of different types of communication devices and the increasing diversity of communications media present new challenges. How will communications among the different devices and over the different communications media be coordinated and managed so that people have truly effective access to each other? One challenge is associated with communicating information between and across different communications media. Another challenge is related to handling the inevitable increase in the number of calls so as to maintain accessibility of users. For example, as more people come to rely on their wireless phones to transact business while on the road or away from their offices, their phones are likely to be busy a larger percentage of the time. As a consequence, although a wireless phone can go anywhere with its owner, to the people trying to reach that owner when the phone is in use, the owner will still seem to be as inaccessible as when he did not carry a wireless phone. In addition, the more the owner of such a device uses it, the more likely it will be that he will not know that somebody else was trying to reach him and thus he may miss important calls.

An obvious advantage of many of the new commercially available communications devices is that they offer the possibility of greater mobility to the user. Unfortunately, however, it is not always having to be near the office telephone that ties a business person to the office. The office provides other services that are also important and may not be so mobile. Thus, to fully realize the greater mobility that is offered by the new communications devices and media, these new technologies must be provided in a way that takes into account the business person's dependance on other services besides communications.

SUMMARY OF THE INVENTION

The invention described herein is referred to as an electronic assistant. It is a computer-implemented entity that assists a subscriber with his or her communications by carrying out tasks that are delegated to it. The electronic assistant, modeled to have human-like qualities, recognizes speech and performs functions within the familiar model of an office.

Each subscriber who has an account is assigned at least one electronic assistant which may be dedicated or shared. The electronic assistant offers services to both the subscriber and to any contacts or other callers trying to reach the subscriber. A contact is a person, place, or group that the subscriber has described for the electronic assistant. A contact can be another subscriber or an outside caller. Electronic assistants treat both subscribers and contacts as users of the system.

The electronic assistant offers a wide range of services to its subscriber, among which are the following. The electronic assistant can handle incoming calls from several of the subscriber's personal contacts while at the same time it is doing any of its tasks, including reviewing messages with the subscriber, managing information, etc. It can make logical decisions about how to manage, whether to forward, and where to forward the incoming calls from the subscriber's contacts. The electronic assistant can also communicate with the subscriber and the subscriber's contacts using a wide variety of different communication devices, such as telephones, fax machines, pagers, computer terminals, and communications enabled handheld devices (e.g. Personal Digital Assistants otherwise referred to as PDA's). When the subscriber tries to reach a contact or a contact tries to reach the subscriber, the electronic assistant mediates the connection and then remains available to add value to the session. The electronic assistant can schedule and manage reminders for its subscriber. When reminders come due, the electronic assistant notifies the subscriber.

In general, in one aspect, the invention is a method implemented by a computer-based electronic assistant to receive and manage incoming calls to a subscriber. The method includes the steps of: receiving an incoming call to the subscriber from a caller; establishing a first connection between the electronic assistant and the caller; establishing a second connection between the electronic assistant and the subscriber; over the second connection, electronically notifying the subscriber of the incoming call; in response to receiving a call accept command from the subscriber over the second connection, linking the caller and the subscriber so that they may communicate with each other; upon linking the subscriber to the caller, switching the electronic assistant to a background mode in which said electronic assistant continues to monitor the subscriber over the second connection while the subscriber is linked with the caller; and in response to receiving a summoning command, switching the electronic assistant into a foreground mode. When in the background mode, the electronic assistant responds to a first set of commands including at least the summoning command and when in the foreground mode, it responds to a second set of commands. The second set of commands is larger than the first set of commands.

In general, in another aspect, the invention is a computer-implemented method of processing an electronic reminder that is addressed to a subscriber. The electronic reminder includes subscriber-generated content and a specified time at which it is to be delivered to the subscriber. The method includes the steps of: storing the electronic reminder in an electronic database that is accessible to the electronic assistant; when current time coincides with the specified time, detecting that the stored electronic reminder has become due; in response to detecting that the stored electronic reminder has become due, identifying a communications device through which the subscriber can be reached at the specified time; establishing a connection to the communications device; upon reaching an answering party through the communications device, electronically notifying the answering party that the call is intended for the subscriber; electronically informing the answering party that the answering party may accept the call by issuing an accept reply; if the call is accepted by the answering party, electronically delivering the contents of the electronic reminder to the answering party through said communications device.

In general, in yet another aspect, the invention is a method implemented by a computer-based electronic assistant to receive and manage incoming calls to a subscriber. The method includes the steps of: receiving an incoming call to the subscriber from a caller; in response to receiving the incoming call, establishing a first connection between the electronic assistant and the caller; through a dialog between the electronic assistant and the caller over the first connection, determining the identity of the caller; detecting that the subscriber is presently interacting with the electronic assistant through a second separate connection; electronically alerting the subscriber over the second connection that there is an incoming call for the subscriber; electronically identifying to the subscriber the identity of the caller; monitoring the second connection for a response sent by the subscriber to the electronic assistant directing the electronic assistant how to process the incoming call.

In general, in still another aspect, the invention is a method implemented by a computer-based electronic assistant for managing information and connection resources for a plurality of subscribers including a first subscriber and a second subscriber. The method includes the steps of: receiving a call from the first subscriber to the electronic assistant over a communications media; establishing a first connection between the electronic assistant and the first subscriber; identifying the first subscriber as the source of the call; starting up a first session in said electronic assistant which is a thread of execution of code for managing data and performing functions on behalf of the first subscriber; within the first session, receiving a first command sent by the first subscriber to the electronic assistant over the first connection instructing the electronic assistant to perform a function relating to the second subscriber; responding to the first command by sending a first message addressed to the second subscriber and containing information relating to the first command; in response to the first message, starting up a second session which is a thread of execution of code for managing data and performing functions on behalf of the second subscriber and which is separate from the first session; within the second session, receiving the first message and performing a function that produces a result that is responsive to the first message.

In general, in another aspect, the invention is a computer-implemented method of processing communications through a multimedia interface that includes a plurality of interface devices and a plurality of input/output devices. Each of the interface devices is capable of connecting to a different one of a plurality of different communications networks, and each of the input/output devices is capable of processing a different one of a plurality of media types. The method includes the steps of: establishing a channel representing a physical connection to any selected one of the plurality of communications networks through the interface devices; attaching an appropriate subset of a plurality of ports to the channel, wherein each port represents a different one of the input/output devices and wherein the appropriate subset of ports includes ports which correspond to input/output devices that are capable of connecting to the selected communications network; executing an operation that generates an item of information that is to be communicated through the multimedia interface to at least one of the communications networks; retrieving from a memory a multi-media reference to the item of information, wherein the multi-media reference contains a plurality of references to the item of information, each of which refers to the item of information in a different one of a plurality of formats, each of which is of a different media type; passing the multi-media reference to the ports attached to the channel; in response to receiving the multi-media reference at the attached ports, retrieving the item of information from memory in a particular one of the formats identified in the multi-media reference; and passing the retrieved item of information to an input/output device for delivery over the connected communications network. The step of retrieving is performed by one of the attached ports that is capable of processing the format of the retrieved item of information and the input/output device to which the retrieved item is passed for delivery is the input/output device that is associated with the attached port that retrieved the item of information from memory.

In preferred embodiments, the electronic assistant enables the individual to manage and customize his availablilty to friends, family, business associates, customers and strangers depending upon the time of day, day of the week and his or her needs. In addition, the electronic assistant has the subscriber's schedule and therefore knows where the subscriber is, what he is doing, what his availability is, and how to reach him (e.g. through what communications device). The schedule is used to manage the accessibility of the subscriber to others and his visibility to other subscribers on the system.

Other advantages and features will become apparent from the following description of the preferred embodiment and from the claims.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows the electronic assistant and office items;

FIG. 2 shows the hardware platform;

FIG. 3 is a functional overview of the software architecture;

FIG. 4 is a process view of the software architecture;

FIG. 5 is a functional block diagram of the system highlighting the hardware interface to the communications channels;

FIGS. 6A-H illustrate the process of completing a task and the objects that are involved;

FIG. 7 illustrates the use of the box, the hand and the finger in manipulating items;

FIG. 8 shows a sample MMUI menu;

FIG. 9 shows a sample MMUI menu with moguls;

FIGS. 10A-D show the relationship between memes, menus and moguls;

FIG. 11 illustrates the process of submitting and delivering a message and the objects that are involved;

FIG. 12 illustrates the process of delivering reminders and the objects that are involved;

FIG. 13 shows the contents of a box;

FIG. 14 shows the contents of a user object;

FIG. 15 shows the relationship between user objects and contacts;

FIG. 16 shows the flow of events between the VM and the agent sessions and hardware;

FIG. 17 shows the VM internal objects and their relationship to each other;

FIGS. 18A-B illustrate the process of creating a channel and the objects that are involved;

FIG. 19 illustrates the operations for presenting memes and menus to ports;

FIG. 20 shows the functional relationships between the agents and the applications services;

FIG. 21 shows the flow of data in an assistant's session;

FIG. 22 shows the agent class hierarchy;

FIGS. 23A-D present an example of a three-part handshake;

FIGS. 24A-B is a flow chart of the answer call task;

FIGS. 25A-D illustrate the use of a conference object in establishing a call between subscribers;

FIG. 26 is a flow chart of the locate-and-notify task;

FIG. 27 is a flow chart of the notify task;

FIG. 28 shows a "Create-A-Contact" dialog with the electronic assistant;

FIG. 29 show