Unified messaging system and method providing cached message streams
First Claim
1. In a unified messaging system comprising a file server, a voice server, and a client computer coupled to a computer network, and further comprising a telephone system switch coupled to the voice server and a set of telephones, a method for voice message streaming comprising the steps of:
- streaming message data from the file server into a storage resource upon the voice server;
streaming message data from the storage resource and terminating the stream at a data destination concurrent with the streaming of message data from the file server into the storage resource; and
controlling the streaming of message data by a streaming control mechanism, wherein the streaming control mechanism sends control commands and is coupled to the voice server via a streaming control path, wherein the streaming control path is external to a path over which the message data is transmitted.
16 Assignments
0 Petitions
Accused Products
Abstract
In a unified messaging system, a background stream manager streams message data from a file server into a local storage resource upon a voice server. A foreground stream manager concurrently streams message data from the local storage resource to a telephone. The background stream manager determines whether the amount of contiguous message data within the local storage resource relative to a current message playback position exceeds a high threshold value. If so, the background stream manager interrupts message data streaming into the local storage resource. The foreground stream manager determines whether the amount of contiguous message data remaining to be streamed from the local storage resource relative to the current message playback position has dropped below a low threshold value. If so, the background stream manager resumes message data streaming into the local storage resource. Rather than streaming message data to a client computer, the foreground stream manager issues playback position notifications, which the client computer uses to update a graphical streaming control window.
-
Citations
27 Claims
-
1. In a unified messaging system comprising a file server, a voice server, and a client computer coupled to a computer network, and further comprising a telephone system switch coupled to the voice server and a set of telephones, a method for voice message streaming comprising the steps of:
-
streaming message data from the file server into a storage resource upon the voice server;
streaming message data from the storage resource and terminating the stream at a data destination concurrent with the streaming of message data from the file server into the storage resource; and
controlling the streaming of message data by a streaming control mechanism, wherein the streaming control mechanism sends control commands and is coupled to the voice server via a streaming control path, wherein the streaming control path is external to a path over which the message data is transmitted. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 21, 24)
determining whether a first amount of message data has been streamed into the storage resource relative to a current address from which message data has been most-recently streamed from the storage resource; and
interrupting the streaming into the storage resource.
-
-
5. The method of claim 4, further comprising the steps of:
-
determining whether a second amount of message data remains to be streamed from the storage resource relative to the current address; and
resuming the streaming into the storage resource.
-
-
6. The method of claim 1, further comprising the steps of:
-
maintaining a current address indicating a location within the storage resource from which message data has been most-recently streamed;
determining whether message data streaming from the storage resource is to occur at a new address different from the current address;
determining whether message data corresponding to the new address is currently present within the storage resource; and
avoiding a re-streaming of message data corresponding to the new address into the storage resource.
-
-
7. The method of claim 6, wherein the determining step is performed in response to a repositioning command received from one from a group of a telephone and the client computer.
-
8. The method of claim 7, wherein the repositioning command is generated by a user selection of a graphical control element displayed upon the client computer.
-
9. The method of claim 1, further comprising the steps of:
-
maintaining a current address indicating a location within the storage resource from which message data has been most-recently streamed; and
issuing a position notification corresponding to the current address to the client computer.
-
-
21. The method of claim 1, wherein the streaming control path is of a higher-latency than the streaming path.
-
24. The method of claim 1, wherein the data destination is a voice board unit.
-
10. In a unified messaging system comprising a file server, a voice server, and a client computer coupled to a computer network, and further comprising a telephone system switch coupled to the voice server and a set of telephones, a method for streaming message data from the file server to a telephone, the method comprising the steps of:
-
streaming message data from the file server into a storage resource upon the voice server;
streaming message data from within the storage resource and terminating the stream at a data destination;
determining whether a first amount of data has been streamed into the storage resource relative to a current address from which message data has been most-recently streamed from the storage resource;
interrupting the streaming of message data into the storage resource; and
controlling the streaming of message data out of the storage resource by a streaming control mechanism, wherein the streaming control mechanism sends control commands and is coupled to the voice server via a streaming control path, wherein the streaming control path is external to a path over which the message data is transmitted. - View Dependent Claims (11, 12, 22, 25)
determining whether a second amount of message data remains to be streamed from the storage resource relative to the current address; and
resuming the streaming of message data into the storage resource.
-
-
12. The method of claim 11, further comprising the step of issuing a position notification corresponding to the current address to the client computer.
-
22. The method of claim 10, wherein the streaming control path is of a higher-latency than the streaming path.
-
25. The method of claim 10, wherein the data destination is a voice board unit.
-
13. A computer-readable medium storing program instructions for causing a computer-controlled unified messaging system comprising a file server, a computer, and a voice server coupled to a computer network, and a telephone switch coupled to the voice server and a set of telephones, to perform the steps of:
-
streaming message data stored upon the file server into a storage resource upon the voice server;
streaming message data from within the storage resource and terminating the stream at a data destination concurrent with the streaming of message data from the file server into the storage resource; and
controlling the streaming of message data by a streaming control mechanism, wherein the streaming control mechanism sends control commands and is coupled to the voice server via a streaming control path, wherein the streaming control path is external to a path over which the message data is transmitted. - View Dependent Claims (14, 15, 16, 17, 18, 26)
determining whether a first amount of message data has been streamed into the storage resource relative to a current address from which message data has been most-recently streamed from the storage resource; and
interrupting the streaming of message data into the storage resource.
-
-
16. The computer-readable medium of claim 15, further comprising program instructions for causing the computer-controlled unified messaging system to perform the steps of:
-
determining whether a second amount of message data remains to be streamed from the storage resource relative to the current address; and
resuming the streaming of message data into the storage resource.
-
-
17. The computer-readable medium of claim 16, further comprising program instructions for causing the computer-controlled unified messaging system to perform the steps of:
-
determining whether message data streaming from the storage resource is to occur at a new address different from the current address;
determining whether message data corresponding to the new address is currently present within the storage device; and
avoiding a re-streaming of message data corresponding to the new address into the storage resource.
-
-
18. The computer-readable medium of claim 13, further comprising program instructions for causing the computer-controlled unified messaging system to perform the step of:
-
maintaining a current address indicating a location within the storage resource from which message data has been most-recently streamed; and
issuing a position notification corresponding to the current address to the computer.
-
-
26. The computer-readable medium of claim 13, wherein the data destination is a voice board unit.
-
19. A unified messaging system providing cached message streams comprising:
-
a file server;
a telephone system switch coupled to a set of telephones;
a voice server coupled to the file server and the telephone system switch, the voice server comprising;
a processing unit;
a storage resource coupled to the processing unit;
a background stream manager that directs the streaming of message data stored upon the file server into the storage resource, the background stream manager coupled to the processing unit; and
a foreground stream manager that directs the streaming of message data from the storage resource and terminating the stream at a data destination, the foreground stream manager coupled to the processing unit; and
a client computer for controlling the streaming of message data, wherein the client computer sends control commands and is coupled to the voice server via a streaming control path, wherein the streaming control path is external to a path over which the message data is transmitted. - View Dependent Claims (20, 23, 27)
a processing unit;
a display device; and
a memory coupled to the processing unit and the display device, the memory comprising a playback control module responsive to message position notifications received from the voice server.
-
-
23. The method of claim 19, wherein the streaming control path is of a higher-latency than the streaming path.
-
27. The unified messaging system of claim 19, wherein the data destination is a voice board unit.
Specification