WikiPatents - Community Patent Review
Create Free Account  |  License or Sell Your Patent  |  WikiPatents Marketplace  |  WikiPatents Blog
Username:  Password:  
    
Advanced Search
Voice and data interface to a voice-mail service system    

Get related patents on CD
United States Patent5003577   
Link to this pagehttp://www.wikipatents.com/5003577.html
Inventor(s)Ertz; Douglas J. (Boulder, CO); Friedman; Larry A. (Boulder, CO); Katamura; William (Lafayette, CO); Kwok; Cheuk W. (Sudbury, MA); Marinelli; David J. (Louisville, CO)
AbstractA user-access interface to a voice message service system (16) includes a voice channel (13) and a data channel (14). The data channel enables the user to interact with the voice-mail service system via a video terminal or display-equipped computer (11) and to print message headers on the terminal or display. The user can then visually scan the headers. The user can then listen to the messages or record new messages via the voice channel. The interactive interface between the terminal or computer and the voice message service system over the data channel is provided by a function (30) executing on the terminal or computer and a function (31) executing on the voice-message service system.
   














 Title Information Submit all comments and votes
 
Patent Text Patent PDF Print Page Summary File History
Plain text PDF images Print Summary File History Custom Search
Drawing from US Patent 5003577
Voice and data interface to a voice-mail service system - US Patent 5003577 Drawing
Voice and data interface to a voice-mail service system
Inventor     Ertz; Douglas J. (Boulder, CO); Friedman; Larry A. (Boulder, CO); Katamura; William (Lafayette, CO); Kwok; Cheuk W. (Sudbury, MA); Marinelli; David J. (Louisville, CO)
Owner/Assignee     AT&T Bell Laboratories (Murray Hill, NJ)
Patent assignment
All assignments
Company News
Publication Date     March 26, 1991
Application Number     07/334,050
PAIR File History     Application Data   Transaction History
Image File Wrapper   Patent Term   Fees
Litigation
Filing Date     April 5, 1989
US Classification     379/88.13 370/428 379/88.11 379/88.23 379/93.15 379/93.24
Int'l Classification     H04J 003/06 H04J 003/12 H04M 003/50 H04M 011/00
Examiner     Brown; Thomas W.
Assistant Examiner    
Attorney/Law Firm     Volejnicek; David
Address
Parent Case    
Priority Data    
USPTO Field of Search     379/89 379/88 379/94 379/96 370/60.1 370/61 370/62 370/94.2 370/105.2 370/110.1
Patent Tags     voice data interface voice-mail service
   
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
4853952
Jachmann
379/88.11
Aug,1989

[0 after 0 votes]
4790003
Kepley
379/88.18
Dec,1988

[0 after 0 votes]
4763356
Day, Jr.
379/368
Aug,1988

[0 after 0 votes]
4748656
Gibbs
379/93.05
May,1988

[0 after 0 votes]
4646346
Emerson
379/214.01
Feb,1987

[0 after 0 votes]
4612416
Emerson
379/88.18
Sep,1986

[0 after 0 votes]
4581486
Matthews
379/88.26
Dec,1969

[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

[0 market size comments]
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%

[0 market share comments]
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%

[0 reasonable royalty comments]
Public's "Guesstimation" of Royalty Value
Market SizeN/A[No votes]
xMarket ShareN/A[No votes]
xReasonable RoyaltyN/A[No votes]

N/A

[0 Guesstimation of Royalty Value Comments]
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]
[0 license availability comments]
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]
[0 owner/assignee comments]
Competitive Advantage
Does this invention have a significant competitive advantage over similar technologies?
Yes

No



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

[0 competitive advantage comments]
Commercial Alternatives
Are there viable commercial alternatives for this invention?
Yes

No



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

[0 commercial alternatives comments]
 Technical Review Submit all comments and votes
 Claims Submit all comments and votes
 


We claim:

1. A voice and data interface to a voice message service system, comprising:

means for coupling a plurality of voice communication channels to the system;

means for coupling a plurality of data communication channels to the system at a same time as the plurality of voice channels are coupled to the system;

means for pairing coupled voice and coupled data channels, each channel pair for use in a different communication session, including

means for transmitting a unique identifier on a channel of one of the coupled voice and data channels, and

means responsive to receipt of the unique identifier on a channel of the other of the coupled voice and data channels for pairing the channel on which the unique identifier was transmitted with the channel on which the unique identifier was received; and

means responsive to control communications received over the data channel of a channel pair for providing over the voice and data channels of the channel pair those system services that are requested by the control communications received over the data channel of the channel pair, including communicating data responses to the received control communications over the data channel of the channel pair and communicating voice messages specified by the received control communications over the voice channel of the channel pair.

2. The interface of claim 1 wherein

the providing means communicates voice message headers that are specified by the control communications received over the data channel of a channel pair, in textual form over the data channel of channel pair.

3. The interface of claim 1 wherein

the providing means plays voice messages that are specified by the control communications received over the data channel of a channel pair, over the voice channel of the channel pair.

4. The interface of claim 1 wherein

the providing means records voice messages that are specified by the control communications received over the data channel of a channel pair, over the voice channel of the channel pair.

5. The interface of claim 1 wherein

the providing means comprises:

means responsive to a request for a voice message header received over the data channel of a channel pair, for transmitting the voice message header from the system over the data channel of the channel pair; and

means responsive to a request for a voice message received over the data channel of the channel pair, for transmitting the voice message from the system over the voice channel of the channel pair.

6. The interface of claim 1 wherein

the providing means comprises:

means responsive to a request for a voice message header received over the data channel of a channel pair, for transmitting at least one voice message header from the system over the data channel of the channel pair; and

means responsive to receipt over the data channel of the channel pair of a request for a voice message corresponding to a selected header that has been transmitted over the data channel of the channel pair, for transmitting the corresponding voice message from the system over the voice channel of the channel pair.

7. A voice and data interface to a voice message service system, comprising:

means for terminating a voice communication channel from the system;

means for terminating a data communication channel from the system contemporaneously with termination of the voice channel;

means for pairing the terminated voice channel and the terminated data channel for use in a single communication session with the system, including

means for receiving a unique identifier from the system on one of the voice channel and the data channel, and

means for transmitting the unique identifier to the system on the other of the voice channel and the data channel to signal the pairing of the voice channel and the data channel to the system;

means for sending control communications to the system over the data channel of the channel pair to effect activities of the voice message service system, and for receiving data responses to the sent control communications over the data channel of the channel pair; and

means for communicating over the voice channel of the channel pair voice messages that are specified by the control communications sent over the data channel of the channel pair.

8. The interface of claim 7 wherein

the sending and receiving means receives voice message headers that are specified by the sent control communications, in textual form over the data channel of the channel pair.

9. The interface of claim 7 wherein

the communicating means receives voice messages that are specified by the sent control communications and that are played by the system over the voice channel of the channel pair, in response to the sent control communications.

10. The interface of claim 7 wherein

the communicating means transmits over the voice channel of the channel pair voice messages that are specified by the sent control communications, for recording by the system in response to the sent control communications.

11. The interface of claim 9 wherein

the sending means comprises

means for sending a request for a voice message header and a request for a voice message over the data channel of the channel pair to the system, and for receiving the requested voice message header over the data channel of the channel pair from the system; and wherein

the communicating means comprises

means for receiving the requested voice message over the voice channel of the channel pair from the system.

12. The interface of claim 11 further comprising:

means for visually displaying the received voice message header; and

means for aurally playing the received voice message.

13. The interface of claim 7 wherein

the sending means comprises

means for selecting a voice message header from among a plurality of received voice message headers, and

means for sending a request for a voice message header and a request for a voice message corresponding to the selected voice message header over the data channel of the channel pair to the system, and for receiving at least one voice message header from the system over the data channel of the channel pair in response to the request for a voice message header; and wherein

the communicating means comprises

means for receiving the voice message corresponding to the selected voice message header from the system over the voice channel of the channel pair in response to the request for a voice message.

14. The interface of claim 13 further comprising

means for visually displaying received voice message headers, and

means for aurally playing the received voice message; and wherein

the selecting means comprises

means for receiving user input identifying a displayed voice message header.

15. A method of providing concurrent voice and data access to a voice message service system that may have a plurality of voice channels and a plurality of data channels coupled thereto concurrently, comprising the steps of:

concurrently coupling at least one voice communication channel and at least one data communication channel to the system;

pairing the coupled voice channels and the coupled data channels, each channel pair for use in a different communication session, by

transmitting a unique identifier on a channel of one of the coupled voice channels and data channels,

receiving the unique identifier on a channel of the other of the coupled voice channels and data channels, and

pairing the channel on which the unique identifier was transmitted with the channel on which the unique identifier was received;

receiving control communications over the data channel of a channel pair;

effecting activities of the voice message service system that are requested by the received control communications;

communicating data responses to control communications that were received over the data channel of the channel pair, over the data channel of the channel pair; and

communicating voice messages specified by control communications that were received over the data channel of the channel pair, over the voice channel of the channel pair.

16. The method of claim 15 wherein

the step of communicating data responses comprises the step of:

communicating voice message headers that are specified by the received control communications, in textual form over the data channel of the channel pair.

17. The method of claim 15 wherein

the step of communicating voice messages comprises the step of:

playing voice messages that are specified by the received control communications, over the voice channel of the channel pair.

18. The method of claim 15 wherein

the step of communicating voice messages comprises the step of:

recording voice messages that are specified by the received control communications, over the voice channel of the channel pair.

19. The method of claim 15 wherein

the step of receiving control communications comprises the steps of

receiving a request for a voice message header over the data channel of the channel pair, and

receiving a request for a voice message over the data channel of the channel pair; wherein

the step of communicating data responses comprises the step of

transmitting the requested voice message header from the system over the data channel of the channel pair; and wherein

the step of communicating voice messages comprises the step of

transmitting the requested voice message from the system over the voice channel of the channel pair.

20. The method of claim 15 wherein

the step of receiving control communications comprises the steps of

receiving a request for a voice message header over the data channel of the channel pair, and

receiving over the data channel of the channel pair a request for a voice message corresponding to a selected header that has been transmitted over the data channel of the channel pair; wherein

the step of communicating data responses comprises the step of

transmitting at least one voice message header from the system over the data channel of the channel pair; and wherein

the step of communicating voice messages comprises the step of

transmitting the corresponding voice message from the system over the voice channel of the channel pair.

21. A method of providing concurrent voice and data access to a voice message service system that may have a plurality of voice channels and a plurality of data channels coupled thereto concurrently, comprising the steps of:

concurrently terminating a voice communication channel and a data communication channel from the system;

pairing the terminated voice channel and the terminated data channel for use in a single communication session with the system, by

receiving a unique identifier from the system on one of the voice channel and the data channel, and

transmitting the unique identifier to the system on the other of the voice channel and the data channel to signal the pairing of the voice channel and the data channel to the system;

sending control communications to the system over the data channel of the channel pair to effect activities of the voice message service system;

receiving data responses to the sent control communications over the data channel of the channel pair; and

communicating over the voice channel of the channel pair voice messages that are specified by the control communications sent over the data channel of the channel pair.

22. The method of claim 21 wherein

the step of receiving data responses comprises the step of:

receiving voice message headers that are specified by the sent control communications, in textual form over the data channel of the channel pair.

23. The method of claim 21 wherein

the step of communicating voice messages comprises the step of:

receiving over the voice channel of the channel pair those voice messages that are specified by the sent control communications and that are played by the system in response to the sent control communications.

24. The method of claim 21 wherein

the step of communicating voice messges comprises the step of:

transmitting over the voice channel of the channel pair those voice messages that are specified by the sent control communications, for recording by the system in response to the sent control communications.

25. The method of claim 21 wherein

the step of sending control communications comprises the step of

sending a request for a voice message header and a request for a voice message over the data channel of the channel pair to the system; wherein

the step of receiving data responses comprises the step of

receiving the requested voice message header over the data channel of the channel pair from the system; and wherein

the step of communicating voice messages comprises the step of

receiving the requested voice message over the voice channel of the channel pair from the system.

26. The method of claim 25 further comprising the steps of:

visually displaying the received voice message header; and

aurally playing the received voice message.

27. The method of claim 21 wherein

the step of sending control communications comprises the steps of

selecting a voice message header from among a plurality of received voice message headers, and

sending a request for a voice message header and a request for a voice message corresponding to the selected voice message header over the data channel of the channel pair to the system; wherein

the step of receiving data responses comprises the step of

receiving at least one voice message header from the system over the data channel of the channel pair in response to the request for a voice message header; and wherein

the step of communicating voice messages comprises the step of

receiving the voice message corresponding to the selected voice message header from the system over the voice channel of the channel pair in response to the request for a voice message.

28. The method of claim 27 further comprising the steps of visually displaying received voice message headers, and aurally playing the received voice message; and wherein the step of selecting comprises the step of receiving user input identifying a displayed voice message header.

29. The method of claim 21 wherein

the step of receiving a unique identifier comprises the step of

receiving a unique identifier sent by the system on one of the terminated voice channel and the terminated data channel; and wherein

the step of transmitting the unique identifier comprises the step of

transmitting the unique identifier on the other of the terminated voice channel and the terminated data channel for receipt by the system to cause the system to pair the channel on which the system sent the identifier with the channel on which the system receives the identifier.
 Description Submit all comments and votes
 


TECHNICAL FIELD

This invention relates generally to voice-mail systems, and relates particularly to user interfaces to such systems.

BACKGROUND OF THE INVENTION

Voice-mail service systems are well known in the art. They principally provide to a calling party the ability to send a voice message to a called party without contacting another human being e.g., answering service operator, in the process, and enable the called party to retrieve those messages at will via his or her telephone, also without intervention of another human being. These systems also typically formulate a header for each message that identifies, e.g., when the message was received and the telephone number and/or identity of the calling party. The called party can retrieve and review the header information--for example, to determine what new messages have been received--without retrieving and listening to the messages themselves. An example of such a system, is the AT&T Audix.RTM. voice-mail service system.

SUMMARY OF THE INVENTION

Conventional voice-mail service systems provide only an audio--i.e., telephone set--access to the voice messages and message headers stored therein. We have realized that this is unfortunate, because it is inconvenient and time-consuming for a called party to scroll through his or her message headers in voice mode, i.e., by listening to the header information.

The invention is directed to solving this and other disadvantages of the prior art. According to the invention, a combined voice and data access to the voice-mail service system is provided to users. The user-access interface to the voice-mail service system includes a voice channel or connection--the conventional voice connection, for example--plus a concurrent data channel or connection, thereby providing the user both visual and audio access to the voice mail system in a single communication session. The data connection enables the user to interact with the voice-mail service system visually via a display terminal or a display-equipped computer (such as a personal computer), supplying data control signals to the system to effect operation of the system, and receiving responses to the control signals. In particular, the user can receive and print message headers on the terminal or display, so that he or she can then visually scan the headers. The visual scanning of message headers is substantially faster for most users than voice-mode scanning. And, by means of the data connection, the user is able to access message headers (as well as the corresponding messages) in random order. Additionally, the user can then play or record messages via the voice connection under control of data control signals supplied to the system over the data connection. In contrast to a data-only interface that would require the user to retrieve or store messages in digital form, and hence would require that each user's terminal or computer be equipped with a digital-to-audio and an audio-to-digital converter, the combined voice-and-data interface allows all users to share use of the converter which is included in the voice-mail service system.

As a further advantage, the digital connection enables the provisioning of a myriad of different user-access interfaces, each customized for a given application, merely by modifying the functionality of that portion of the interface which interacts with the user(e.g., a personal-computer-resident interactive application program).

These and other advantages and features of the invention will become more apparent from the following description of an illustrative embodiment of the invention considered together with the drawing.

BRIEF DESCRIPTION OF THE DRAWING

FIG. 1 is a block diagram of a voice-mail service system including an illustrative embodiment of the invention;

FIGS. 2 and 4-14 are a state diagram of the operation of function 30 of FIG. 1;

FIGS. 3-14 are a state diagram of the operation of function 31 of FIG. 1;

The odd-numbered ones of FIGS. 15-110 are flow diagrams of the operation of function 30 in the transitions and states of FIGS. 2 and 4-14;

The even-numbered ones of FIGS. 15-110 are flow diagrams of the operation of function 31 in the transitions and states of FIGS. 3-14 and

FIGS. 111-113 show illustrative screen displays of a terminal 11 of FIG. 1.

DETAILED DESCRIPTION

FIG. 1 shows the configuration of a communication system that provides voice-mail services to users. At their premises, users are equipped with terminal equipment. The terminal equipment includes voice terminals 10, such as standard or digital telephone sets, and data terminals 11, such as personal computers (PCs) or the AT&T 510D video terminals. Alternatively, a voice terminal may even take the form of a handset 10 and a touch pad 10 incorporated into a data terminal 11. (For ease of reference, voice terminals in all forms will hereinafter be designated by the numeral 10, and data terminals in all forms will hereinafter be designated by the numeral 11.) Users, i.e., their equipment, are interconnected for communication through a switching system 12. Switching system 12 is illustratively a private branch exchange (PBX) such as the AT&T System 75 or System 85 PBX. Voice terminals 10 are connected to switching system 12 via voice channels 13, while data terminals 11 are connected to switching system 12 via data channels 14. A voice channel 13 and a data channel 14 may be carried by either separate physical links 29 or a common link 29. For example, where voice terminal 10 is a standard telephone set and data terminal 11 is a stand-alone PC or terminal, voice channel 13 may be carried by a conventional telephone loop while data channel 14 is carried by a separate data link that supports the ISDN xB+D or the AT&T DCP protocol. Alternatively, where voice terminal 10 is a digital telephone set and data terminal is a PC or a terminal coupled to that set, or where voice terminal 10 is incorporated into data terminal 11, both voice and data channels 13 and 14 are commonly carried by a single link that supports the ISDN protocol, in a conventional manner.

Data terminals 11 are coupled to links 29 either through digital telephones or through interfaces 15. An illustrative interface to a DCP link 29 is the AT&T PC/PBX interface. The PC/PBX interface and the DCP protocol are described in U.S. Pat. No. 4,748,656.

Also connected to switching system 12 is a voice-mail service system 16, illustratively the AT&T Audix voice-mail service system. The connection to system 16 is made up of voice links 17 and a control link 18 such as an AT&T DCIU protocol link--as is conventional and described in U.S. Pat. Nos. 4,646,346 and 4,612,416--plus data links 19. Voice links 17 carry voice channels 13. Data links 19 are illustratively links that support the ISDN or DCP protocol. Data links carry data channels 14. Voice links 17 are coupled to voice ports 22 of system 16 directly, whereas data links 19 are coupled to data ports 21 of system 16 by an interface 20. Interface 20 merely translates between the protocol used on data links 19 and the protocol or format that is understood or used internally by system 16. Translators of this nature are well-known in the art. If system 16 understands the protocol of links 19 directly, no interface 20 is needed. Operation of an illustrative voice-mail service system and its interface to a PBX are described in U.S. Pat. No. 4,790,003.

According to the invention, to permit communication by data terminal 11 with system 16 over data channels 14, terminal 11 includes a voice message system interface function 30. Function 30 is illustratively implemented in software. Similarly, to permit communication by system 16 with terminal 11 over data channels 14, system 16 includes a data terminal interface function 31. Function 31 is likewise illustratively implemented in software. The operation of function 30 is shown by the state diagram of FIGS. 2 and 4-14; the steps involved in those states and state transitions are shown by the flow diagrams of odd-numbered ones of FIGS. 15-110. Similarly, the operation of function 31 is shown by the state diagram of FIGS. 3-14, while the steps involved in those steps are shown by the flow diagrams of even-numbered ones of FIGS. 15-110. FIGS. 2-110 are referred to jointly in the following description of the operation of functions 30 and 31.

Illustratively, the communication protocol used between system 16 and terminal 11 has two layers above the physical layer. Layer 2 guarantees delivery of messages between system 16 and terminal 11, and notifies them if a failure occurs while trying to deliver a layer 3 message. Most acknowledgments are at layer 2 of the protocol, and command and response messages are at level 3. For purposes of simplifying the description, however, no distinction is made hereinbelow between the two layers.

Initially, function 30 is stopped, i.e., not invoked or executing, in "stop" state 2000 of FIG. 2. Upon being invoked, i.e., upon being started, function 30 makes transition 2001 to "login" state 2002. The operation of function 30 in state 2002 is shown in FIG. 15. Upon starting to execute, on data terminal 11, at step 200, function 30 presents a menu of possible login-related activities to a user of terminal 11, by displaying a login menu on the screen of terminal 11, at step 201. Function 30 then a awaits the user's selection of one of the options from the login menu, at step 202. Further activities of function 30 depend upon which login menu option is selected, as indicated at step 202.

A user selects the LOGIN or AUTO-LOGIN option to establish a connection to system 16. If the user selects the LOGIN option, the user must provide the system with login information, such as the user's own phone number, the user's password to system 16, the data-link telephone number of system 16, and the voice-link telephone number of system 16. If the user selects the AUTO-LOGIN option, the login information is assumed to be stored in memory of terminal 11. Accordingly, if the LOGIN option was selected, function 30 receives the selection at step 295, and causes the user to be prompted for the requisite login information via messages displayed on the screen of terminal 11 and causes the login information to be collected from keyboard of terminal 11, at step 203. Conversely, if the AUTO-LOGIN option was selected, function 30 receives the selection at step 296 and causes the requisite login information to be retrieved from memory, at step 204. From this point on, the LOGIN and AUTO-LOGIN procedures are identical.

To originally store the requisite login information for AUTO-LOGIN purposes, the user selects at step 202 the ADMINISTER-LOGIN option. This selection causes function 30 to make a transition 2003 that does not result in a state change, as shown in FIG. 2. In response to receiving the user's selection, at step 297 of FIG. 15, function 30 causes the user to be prompted for login information and causes that information to be collected, in the same manner as at step 203, at step 298. Function 30 then stores this information in memory of terminal 11, at step 299, and returns to step 201 to re-present the login menu to the user.

Returning to the discussion of the LOGIN and AUTO-LOGIN procedures, when function 30 is in possession of the requisite login information, it initiates a data call to system 16, using the data-link telephone number of system 16 to dial a data port 21 of system 16 over data channel 14, at step 205, in a conventional manner. It then waits for the call to be answered by system 16, at step 206.

The data call that is initiated by terminal 11 over a data channel 14 is received and processed by system 12 in a conventional manner. System 12 responds to the dialed number by connecting the data call and channel 14 to system 16 via a link 19.

Initially, function 31 is in "idle" state 3000 of FIG. 3 and not actively executing. When function 31 of system 16 detects that a call is coming in over a link 19, it makes a transition to 3001 to begin state 3002. The operation of function 31 in state 3002 is shown in FIG. 16. Upon detecting the incoming data call in a conventional manner, at step 300, function 31 answers the call, at step 301, again conventionally. A data communication path is thus established between system 16 and terminal 11 over a channel 14 and a link 19 through system 12. Function 31 then waits for a response from the caller, at step 302.

When it receives indication that system 16 has answered the call, at step 210 of FIG. 15, and that a communication path to system 16 has thus been established, function 30 responds by sending a login command over the data path to system 16, at step 211. The command includes the calling, i.e., the user's, telephone number. Function 30 then awaits a response from system 16, at step 212.

Function 31 receives the login command at step 310 of FIG. 16. In response, it saves the calling telephone number that was included in the command, at step 311. Function 31 then selects and associates with this data call a unique I.D., at step 312. Any I.D. and any method of selection may be used, as long as the selected I.D. is unique to this call. Function 31 then sends the selected I.D. to terminal 11 over the data call, at step 313, and proceeds to await establishment of a voice call from voice terminal 10, at step 314.

Function 30 receives the I.D. associated with the data call, at step 215 of FIG. 15, and stores it, at step 216. Function 30 then signals the user to dial a voice port 22 of system 16 from voice terminal 10, at step 217, illustratively by displaying a message to that effect on the screen of terminal 11. Alternatively at step 217, if data terminal 11 has access to voice link 13 of voice terminal 10, function 30 of terminal 11 may perform the dialing of voice port 22 for the user automatically. Function 30 then awaits receipt via the data call of an acknowledgment from system 16 that the requisite voice call has been established, at step 218.

The user establishes a voice call to system 16 from terminal 10 in a conventional manner. As part of, or following, the call establishment, the calling telephone number is conveyed to system 16, and is transferred to function 31. This conveyance is accomplished in a conventional manner, either by means of an automatic number identification (ANI) feature of switch 12, or by means of a user response to a prompt from system 16.

When function 31 receives the calling telephone number of a voice call, at step 320 of FIG. 16, it compares this number against the stored calling telephone numbers of all presently-existing data calls (which it stored during execution of step 311 for each of those calls), at step 321. If no match is detected, at step 322, function 31 treats the voice call as a conventional attempt to access system 16. Function 31 therefore invokes the conventional voice call processing function of system 16, at step 323, and then returns to step 314.

If function 31 detects at step 322 a match between the calling numbers of a voice and a data call, it recognizes that those two calls originated with the same user. Function 31 therefore sends an acknowledgment of the establishment of the voice call to terminal 11 via the data call, at step 324, and waits for the user to log in over the voice call, at step 325.

Upon receiving the acknowledgment of the establishment of a voice call, at step 220 of FIG. 15, function 30 signals the user to log in over the voice call, and provides the user with the I.D. associated with the data call, at step 221, illustratively by displaying the information on the screen of terminal 11. Alternatively at step 221, if data terminal 11 has access to voice link 13 of voice terminal 10, function 30 of terminal 11 may perform the logging into system 16 for the user automatically. Function 30 then awaits an acknowledgment from system 16 that the user has been logged in properly, at step 222.

The user logs in to system 16 over the voice call in the conventional manner, with the exception that he or she provides the I.D. identifying the data call as part of the login procedure. System 16 responds to the conventional portion of the login information conventionally. The data call I.D. that was provided to system 16 as part of the login is given to function 31.

In response to being given the data call I.D. from the voice call, at step 330 of FIG. 16, function 31 compares this I.D. with the I.D.s of presently-existing data calls, at step 331. If no match is detected, at step 332, function 31 treats the voice call as being erroneous, and it causes the voice call to be terminated, at step 333. Function then returns to step 325.

If function 31 detects a match between the I.D. provided by the voice call and a data call's I.D., at step 334, it recognizes the two calls as being related, i.e., as being part of the same communication session between the user and system 16. Function 31 therefore creates an association between the two calls, at step 334, illustratively by storing in memory of system 16 information that relates the two calls together. Function 31 then sends an acknowledgment over the data call to terminal 11, at step 335, to advise it that the voice call login succeeded in establishing a voice and data call association.

The success of the login leads both functions 30 and 31 to make a transition to a new state. Function 31 therefore sends a command to terminal 11 to advise function 30 to prepare for a new state, at step 350. Function 31 then waits for an acknowledgment from terminal 11, at step 351. When it receives the acknowledgment at step 352, function 31 makes a transition 3003 to activity menu state 2006.

The activities of function 31 in state 2006 are shown in FIG. 18. Function 31 sends a message to terminal 11 advising function 30 that the new state is the activity menu state, at step 353. Function 31 again waits for an acknowledgment, at step 353, and upon receipt thereof, at step 355, function 31 waits, at step 336, to be informed by terminal 11 of what activity the user has selected to engage in.

Returning to step 222 of FIG. 15, function 30 awaits acknowledgment of success of the voice call login for only a predetermined period of time. Function 30 is thus prevented from awaiting indefinitely the arrival of an acknowledgment of a voice call that was terminated at step 333 and for which no acknowledgment has been or will be given. If the allotted time period times out before the acknowledgment is received, function 30 makes a transition 2003 back to stop state 2000. Function 30 notifies the user of the timeout at step 226, illustratively by displaying a message on the screen of terminal 11. Function 30 then conventionally terminates the data call to system 16, at step 227, and quits, at step 228.

If, however, function 30 receives the login acknowledgement, at step 229, before the allotted time period times out at step 225, it proceeds to wait for receipt of a command from system 16, at step 250.

Function 30 receives the "prepare for a new state" command from system 16, at step 251. It acknowledges the command, at step 253, and then waits for receipt of the new state, at step 253. When it receives the message from system 16, at step 254, that the new state is the activity menu state, function 30 acknowledges it, at step 255, and makes a transition 2004 or 2005--depending on whether the successful login was a LOGIN or an AUTO-LOGIN, respectively--to "activity menu" state 2006 (see FIG. 2).

The activities of function 30 in state 2006 are shown in FIG. 17. First, function 30 requests of system 16 the counts of the various kinds of messages that system 16 may be storing. Function 30 sends the request to system 16 over the data call, at step 230. Function 30 then awaits receipt from system 16 of an acknowledgment of the request, at step 231.

Function 31 receives the message count request, at step 337 of FIG. 18, and sends an acknowledgment thereof to terminal 11 over the data call, at step 330. Function 31 then retrieves the counts of the various types of incoming and outgoing messages that are associated in system 16 with the user of terminal 11, at step 339, and reports these counts to terminal 11, at step 340. Function 31 then awaits receipt from terminal 11 of an acknowledgment of the counts, at step 341.

Function 30 receives the acknowledgment of its request, at step 235 of FIG. 17, and then waits for receipt of the requested counts, at step 236. When it receives the counts, at step 237, function 30 sends an acknowledgment to system 16 over the data call, at step 238. Function 30 then presents the count to the user, along with a menu of activities that the user may opt to undertake, at step 239. Function 30 then awaits selection by the user of one of the menu items, at step 240.

Function 31 responds to receipt of the acknowledgment from terminal 11, at step 345 of FIG. 18, by returning to step 336 to await receipt of a new command from terminal 11.

The options presented to the user by the activity menu at step 239 are to scan the headers of one of the types of incoming messages--new, old, and unopened--to scan the headers of one of the types of outgoing messages--undelivered, delivered, accessed, undeliverable, and file cabinet--to record a new outgoing message, and to administer the user's greeting. These are the conventional choices presented by system 16 to users. An illustrative activity menu screen displayed by terminal 11 is shown in FIG. 111.

Any one of the selections causes a transition of functions 30 and 31 from activity menu state 2006 to a new state representative of the selection, as shown in FIGS. 2 and 3. For example (considering first the incoming message options), as shown in FIG. 4, selection of the "scan new message headers" option causes functions 30 and 31 to make transition 2007 to "scan new" state 2030; selection of the "scan old message heade