Method and system for progressively transmitting a voice message from sender to recipients across a distributed services communication network
First Claim
1. A method, comprising:
- associating a first access server on the network with a sender;
progressively receiving a voice message from the sender at the first access server, the voice message intended for delivery over the network to a plurality of recipients;
ascertaining at the first access server one or more access servers on the network associated with the plurality of recipients respectively, each of the one or more access servers responsible for delivering the voice message to the plurality of recipients when the voice message is delivered to the one or more access servers over the network respectively;
progressively delivering the voice message from the first access server to the one or more access servers over the network to consolidate voice message transmissions for recipients sharing at least one next hop by;
(a) ascertaining at the first access server the next hop or hops on the network required to deliver the voice message to the one or more access servers associated with the plurality of recipients respectively;
(b) progressively transmitting only a single copy of the voice message to the ascertained next hop or hops regardless of whether the message is to be delivered to more than one recipient through any of the ascertained next hop or hops respectively to consolidate message transmissions to recipients along the ascertained next hop or hops;
(c) storing the copy of the voice message at the first access server; and
(d) repeatedly performing at each of the ascertained next hop or hops until the voice message is delivered to all of the one or more access servers, the following;
(i) storing the copy of the voice message at the hop;
(ii) ascertaining the next hop or hops required to deliver the voice message to the one or more access servers associated with the plurality of recipients respectively; and
(iii) progressively transmitting only a single copy of the voice message to the ascertained next hop or hops regardless when the message is delivered to more than one recipient through any of the ascertained next hop or hops respectively;
configuring the one or more access servers to store the copy of the voice message upon receipt and to progressively transmit the voice message to the plurality of recipients so the plurality of recipients have the capability to review the voice message in real-time; and
performing a real-time synchronization of the stored copies of the voice message across at least the access servers of the network including providing to a sending node receipt reports from at least one receiving node including requests for transmission of voice media noted to be missing, corrupted, or a reduced bit rate representation of voice media received at the at least one receiving node;
wherein progressively transmitting only a single copy of the voice message for each next hop, where each hop is defined by a sending node and a receiving node pair, further comprises;
(i) defining a transmission loop at the sending node;
(ii) determining voice media of the voice message available for transmission during the defined transmission loop at the sending node;
(iii) ascertaining the bandwidth on the network between the sending node and the receiving node during the transmission loop;
(v) comparing the ascertained bandwidth on the network between the sending node and the receiving node with the bandwidth necessary to transmit the available voice media; and
(vi) transmitting the available voice media to the receiving node when the ascertained bandwidth is sufficient during the transmission loop.
2 Assignments
0 Petitions
Accused Products
Abstract
The progressive transmission of a voice message from server hop to hop across the network enables one or more recipients to review the voice message in real-time. A synchronization element is provided to synchronize in real-time the stored copies of the voice message at each server. A first server and any intermediate server hops between the first server and the one or more second servers are each configured (i) store a copy of the voice message, (ii) ascertain the next server hop or hops on the network to deliver the voice message from the sender to the one or more second servers and (iii) progressively transmit only a single copy of the voice message to the ascertained next server hop or hops on the network regardless if the voice message is to be delivered to more than one recipient through any of the ascertained next server hop or hops.
203 Citations
26 Claims
-
1. A method, comprising:
-
associating a first access server on the network with a sender; progressively receiving a voice message from the sender at the first access server, the voice message intended for delivery over the network to a plurality of recipients; ascertaining at the first access server one or more access servers on the network associated with the plurality of recipients respectively, each of the one or more access servers responsible for delivering the voice message to the plurality of recipients when the voice message is delivered to the one or more access servers over the network respectively; progressively delivering the voice message from the first access server to the one or more access servers over the network to consolidate voice message transmissions for recipients sharing at least one next hop by; (a) ascertaining at the first access server the next hop or hops on the network required to deliver the voice message to the one or more access servers associated with the plurality of recipients respectively; (b) progressively transmitting only a single copy of the voice message to the ascertained next hop or hops regardless of whether the message is to be delivered to more than one recipient through any of the ascertained next hop or hops respectively to consolidate message transmissions to recipients along the ascertained next hop or hops; (c) storing the copy of the voice message at the first access server; and (d) repeatedly performing at each of the ascertained next hop or hops until the voice message is delivered to all of the one or more access servers, the following; (i) storing the copy of the voice message at the hop; (ii) ascertaining the next hop or hops required to deliver the voice message to the one or more access servers associated with the plurality of recipients respectively; and (iii) progressively transmitting only a single copy of the voice message to the ascertained next hop or hops regardless when the message is delivered to more than one recipient through any of the ascertained next hop or hops respectively; configuring the one or more access servers to store the copy of the voice message upon receipt and to progressively transmit the voice message to the plurality of recipients so the plurality of recipients have the capability to review the voice message in real-time; and performing a real-time synchronization of the stored copies of the voice message across at least the access servers of the network including providing to a sending node receipt reports from at least one receiving node including requests for transmission of voice media noted to be missing, corrupted, or a reduced bit rate representation of voice media received at the at least one receiving node; wherein progressively transmitting only a single copy of the voice message for each next hop, where each hop is defined by a sending node and a receiving node pair, further comprises; (i) defining a transmission loop at the sending node; (ii) determining voice media of the voice message available for transmission during the defined transmission loop at the sending node; (iii) ascertaining the bandwidth on the network between the sending node and the receiving node during the transmission loop; (v) comparing the ascertained bandwidth on the network between the sending node and the receiving node with the bandwidth necessary to transmit the available voice media; and (vi) transmitting the available voice media to the receiving node when the ascertained bandwidth is sufficient during the transmission loop. - View Dependent Claims (2, 3, 4, 5, 6, 7, 9, 10, 11, 12, 13, 14, 15, 16, 17)
-
-
8. A method, comprising:
-
associating a first access server on the network with a sender; progressively receiving a voice message from the sender at the first access server, the voice message intended for delivery over the network to a plurality of recipients; ascertaining at the first access server one or more access servers on the network associated with the plurality of recipients respectively, each of the one or more access servers responsible for delivering the voice message to the plurality of recipients when the voice message is delivered to the one or more access servers over the network respectively; progressively delivering the voice message from the first access server to the one or more access servers over the network to consolidate voice message transmissions for recipients sharing at least one next hop by; (a) ascertaining at the first access server the next hop or hops on the network required to deliver the voice message to the one or more access servers associated with the plurality of recipients respectively; (b) progressively transmitting only a single copy of the voice message to the ascertained next hop or hops regardless of whether the message is to be delivered to more than one recipient through any of the ascertained next hop or hops respectively; (c) storing the copy of the voice message at the first access server; and (d) repeatedly performing at each of the ascertained next hop or hops until the voice message is delivered to all of the one or more access servers, the following; (i) storing the copy of the voice message at the hop; (ii) ascertaining the next hop or hops required to deliver the voice message to the one or more access servers associated with the plurality of recipients respectively; and (iii) progressively transmitting only a single copy of the voice message to the ascertained next hop or hops regardless when the message is delivered to more than one recipient through any of the ascertained next hop or hops respectively; configuring the one or more access servers to store the copy of the voice message upon receipt and to progressively transmit the voice message to the plurality of recipients so the plurality of recipients have the capability to review the voice message in real-time; and performing a real-time synchronization of the stored copies of the voice message across at least the access servers of the network, wherein performing a synchronization of the stored copies of the voice message across the network, for each sending and receiving pair of nodes, comprises the following; storing the voice message at the sending node; generating a notice at the sending node notifying the receiving node of the voice message; generating a request at the receiving node requesting all voice media associated with the voice message not already locally stored at the receiving node; transmitting the requested voice media to the receiving node in response to the request; and storing the requested voice media at the receiving node so that the sending node and the receiving node have synchronized copies of the voice message; wherein generating the request at the receiving node requesting all voice media associated with the voice message not already locally stored at the receiving node further comprises; maintaining a data quality store at the receiving node; checking the voice media of the voice message received at the receiving node from the sending node; noting missing, corrupted, or reduced bit rate representations of the voice media as the voice media of the voice message is received at the receiving node; scanning the data quality store; and generating receipt reports, the receipt reports including requests for transmission of the voice media noted in the data quality store.
-
-
18. A network, comprising:
-
a plurality of servers interconnected by a plurality of network connections, wherein each server is a server device having at least one processor and a memory; a first server among the plurality of servers providing access for a sender of a voice message to the network, the first server configured to receive the voice message from the sender and intended for a plurality of recipients; a one or more second servers among the plurality of servers providing access to the network for the plurality of recipients respectively; wherein the first server and any intermediate server hops between the first server and the one or more second servers are each configured to (i) store a copy of the voice message;
(ii) ascertain the next server hop or hops on the network to deliver the voice message from the sender to the one or more second servers providing access to the network for the plurality of recipients respectively and (iii) progressively transmit only a single copy of the voice message to the ascertained next server hop or hops on the network when the message is delivered to more than one recipient through any of the ascertained next server hop or hops to consolidate voice message transmissions for recipients sharing at least one next server hop; anda plurality of synchronization elements provided at the first server and the intermediate server hops between the first server and the one or more second servers respectively, the plurality of synchronization elements configured to cooperate to synchronize all the copies of the voice message stored at the servers including providing to a sending node receipt reports from at least one receiving node including requests for transmission of voice media noted to be missing, corrupted, or a reduced bit rate representation of voice media received at the at least one receiving node; wherein each hop on the network is defined by a sending and receiving pair of nodes on the network and wherein each sending and receiving pair of nodes is configured to progressively transmit only a single copy of the voice message by; (i) defining a transmission loop at the sending node; (ii) determining voice media of the voice message available for transmission during the defined transmission loop; (iii) ascertaining the bandwidth on the network connection between the sending node and the receiving node during the transmission loop; (v) comparing the ascertained bandwidth on the network connection between the sending node and the receiving node with the bandwidth necessary to transmit the available voice media; and (vi) transmitting the available voice media to the receiving node when the ascertained bandwidth is sufficient during the transmission loop. - View Dependent Claims (19, 20, 21, 22, 25, 26)
-
-
23. A network, comprising:
-
a plurality of servers interconnected by a plurality of network connections, wherein each server is a server device having at least one processor and a memory; a first server among the plurality of servers providing access for a sender of a voice message to the network, the first server configured to receive the voice message from the sender and intended for a plurality of recipients; a one or more second servers among the plurality of servers providing access to the network for the plurality of recipients respectively; wherein the first server and any intermediate server hops between the first server and the one or more second servers are each configured to (i) store a copy of the voice message;
(ii) ascertain the next server hop or hops on the network to deliver the voice message from the sender to the one or more second servers providing access to the network for the plurality of recipients respectively and (iii) progressively transmit only a single copy of the voice message to the ascertained next server hop or hops on the network when the message is delivered to more than one recipient through any of the ascertained next server hop or hops to consolidate voice message transmissions for recipients sharing at least one next server hop; anda plurality of synchronization elements provided at the first server and the intermediate server hops between the first server and the one or more second servers respectively, the plurality of synchronization elements configured to cooperate to synchronize all the copies of the voice message stored at the servers including providing to a sending node receipt reports from at least one receiving node including requests for transmission of voice media noted to be missing, corrupted, or a reduced bit rate representation of voice media received at the at least one receiving node; wherein each hop on the network is defined by a sending and receiving pair of nodes on the network and wherein the synchronization elements of each sending and receiving pair of nodes are configured to synchronize their respective copies of the voice message by; storing the voice message at the sending node; generating a notice at the sending node notifying the receiving node of the voice message; generating a request at the receiving node requesting all voice media associated with the voice message not already locally stored at the receiving node; transmitting the requested voice media to the receiving node in response to the request; and storing the requested voice media at the receiving node so that the sending node and the receiving node have synchronized copies of the voice message; wherein generating the notice notifying the receiving node of the voice message further comprises one of the following; (i) transmitting the voice message from the sending node to the receiving node, whereby the notification occurs by virtue of the transmission; (ii) when the sending node logs onto the network; (iii) each time the sending node sends voice media associated with the voice message to the receiving node; (iv) the sending node periodically notifies the receiving node; (v) the receiving node periodically asks the sending node for the status of the voice media associated with the voice message to be transmitted from the sending node to the receiving node; (vi) the sending node sends to the receiving node a synchronization update message;
or(vii) any combination of (i) through (vi).
-
-
24. A network, comprising:
-
a plurality of servers interconnected by a plurality of network connections, wherein each server is a server device having at least one processor and a memory; a first server among the plurality of servers providing access for a sender of a voice message to the network, the first server configured to receive the voice message from the sender and intended for a plurality of recipients; a one or more second servers among the plurality of servers providing access to the network for the plurality of recipients respectively; wherein the first server and any intermediate server hops between the first server and the one or more second servers are each configured to (i) store a copy of the voice message;
(ii) ascertain the next server hop or hops on the network to deliver the voice message from the sender to the one or more second servers providing access to the network for the plurality of recipients respectively and (iii) progressively transmit only a single copy of the voice message to the ascertained next server hop or hops on the network when the message is delivered to more than one recipient through any of the ascertained next server hop or hops to consolidate voice message transmissions for recipients sharing at least one next server hop; anda plurality of synchronization elements provided at the first server and the intermediate server hops between the first server and the one or more second servers respectively, the plurality of synchronization elements configured to cooperate to synchronize all the copies of the voice message stored at the servers, wherein the synchronization elements of each sending and receiving pair of nodes are configured to synchronize their respective copies of the voice message by; storing the voice message at the sending node; generating a notice at the sending node notifying the receiving node of the voice message; generating a request at the receiving node requesting all voice media associated with the voice message not already locally stored at the receiving node; transmitting the requested voice media to the receiving node in response to the request; and storing the requested voice media at the receiving node so that the sending node and the receiving node have synchronized copies of the voice message; wherein generating the request at the receiving node requesting all voice media associated with the voice message not already locally stored at the receiving node further comprises; maintaining a data quality store at the receiving node; checking the voice media of the voice message received at the receiving node from the sending node; noting missing, corrupted or reduced bit rate representations of the voice media as the voice media of the voice message is received at the receiving node; scanning the data quality store; and generating receipt reports, the receipt reports including requests for retransmission of the voice media noted in the data quality store.
-
Specification