Uniloc USA, Inc. et al v. Google, Inc.

Filing 1

COMPLAINT against Google, Inc. ( Filing fee $ 400 receipt number 0540-6215981.), filed by Uniloc USA, Inc., Uniloc Luxembourg, S.A.. (Attachments: # 1 Exhibit A, # 2 Exhibit B, # 3 Exhibit C, # 4 Civil Cover Sheet)(Etheridge, James)

Download PDF
EXHIBIT C US007535890B2 United States Patent (io) Rojas d2) (45) ( 54 ) SYSTEM AND METHOD FOR INSTANT VOIP MESSAGING ( 75 ) Inventor: 2007/0112925 Al * 2007/0174403 Al * Notice: Subject to any disclaimer, the term of this patent is extended or adjusted under 35 U.S.C. 154 (b) by 799 days. ( 21 ) Filed: Dec. 18, 2003 Prior Publication Data ( 65 ) Jun. 23, 2005 US 2005/0135333 A1 370/352; 709/206 370/354, 370/352 See application file for complete search history. (57) ABSTRACT There is provided an instant voice messaging system (and method) for delivering instant messages over a packet switched network, the system comprising: a client connected to the network, the client selecting one or more recipients, generating an instant voice message therefor, and transmit ting the selected recipients and the instant voice message therefor over the network; and a server connected to the network, the server receiving the selected recipients and the instant voice message therefor, and delivering the instant voice message to the selected recipients over the network, the selected recipients being enabled to audibly play the instant voice message. References Cited U.S. PATENT DOCUMENTS B1 * 7/ 2004 McZeal , Jr A1 * 5/ 2003 Sagi et al Al * 7/ 2003 Creamer etal Al * 2/ 2004 Schultes et al Al * 6/ 2004 Goodman et al Al * 7/ 2004 Bernstein etal Al * 12/ 2004 Williams etal Al * 3/ 2005 Gierachf Al * 5/ 2005 Hollowell et al Al * 7/ 2006 Boukobza A1 * 11/ 2006 Weiner - Primary Examiner— Creighton Smith (74) Attorney, Agent, or Firm— Scully, Scott, Murphy & Presser, P.C. Int. Cl. (2006.01) H04L 12/66 (52) U.S. Cl (58) Field of Classification Search 6 ,763,226 2003/0087632 2003/0126207 2004/0030046 2004/0122906 2004/0128356 2004 0252679 2005/0053230 2005/0105697 2006/0167883 2006/0268750 455/90.2 455/414 709/204 525/71 709/206 709/206 370/356 379/406.06 379/88.13 707/10 370/260 70 Claims, 9 Drawing Sheets 200 216 202 204 208 212 709/206 709/207 * cited by examiner (51) (56) 5/2007 Malik 7/2007 Barry - Appl . No.: 10/740, 030 ( 22 ) May 19, 2009 http://www.ci sco .com/warp/public/cc/pd nemnsw/callmn prodlit/ cm33_ds.htm; “ Data Sheet Cisco CallManager Version 3.3” , Nov. 22, 2002. http://www.ci sco .com/enTJS/products/hw/switches/ ps1925 products_data_sheet 09186a00800a3c3d .html; “ Data Sheet Cisco MGX 8000 Series” (date unknown ). http://www.hsteliann .com/ english/? zone=3100 V21P; “ Teliphone 3100 V21P” , 2003. http://www. hnuxdevices.com/articles.AT 5199947519 .html; “ Device Profile: snom 100 VoIP phone” , May 15 , 2002. http://www. pingtel .com pr xpressa.jsp; No limits with the advanced industry standard SIP phone; Dec . 8, 2003. AudioCoded Enabling Technology Products, TPM-1100 VoP Media Gateway Modules, copyright 2003. Assignee: Ayalogic, Inc., Akron, OH (US) (*) US 7,535,890 B2 OTHER PUBLICATIONS Michael J. Rojas , North Canton, OH ( US ) ( 73 ) Patent No.: Date of Patent: AUDIO h FILE 5 210 / LOCAL IVM SERVER LOCAL IP NETWORK IVM CLIENT - 114 218 “ r EOI GATEWAY 112 ' [M IVM CLIENT (VoIP PHONE) LEGACY SWITCH 10 LEGACY PHONE U.S. Patent May 19, 2009 US 7,535,890 B2 Sheet 1 of 9 / 120 —— E 102 108 IP NETWORK (INTERNET) Q ss = -= 118 o GATEWAY 116 12 llssrs r* ! LEGACY SWITCH 110 LEGACY PHONE FIG. 1 VoIP a ^ruofi VoIP PHONE 14 GATEWAY 104 FTtH VoIP SOFTPHONE a c (PRIOR ART) PSTN U.S. Patent May 19, 2009 US 7,535,890 B2 Sheet 2 of 9 216 / 202 204 il 208 22 AUDIO FILE 210 , J1 LOCAL IVM LOCAL IP NETWORK SERVER IVM CLIENT 218 114 f TL GATEWAY 12 / J IVM CLIENT (VoIP PHONE) LEGACY SWITCH no LEGACY PHONE FIG 2 * U . S . 208 ; Paten 302 320 / ? CLIENT ENGINE MESSAGING SYSTEM 306 308 MSG DATABASE 304 May 19 , DOCUMENT HANDLER AUDIO FILE FILE MANAGER 210 AUDIO FILE CREATION 310 314 ^ LOCAL " IP NETWORK 316 1 318 312 TO LOCAL IVM SERVER 202 20 9 She t 3 of 9 l ENCRYPTION COMPRESSION PROCESSING DECRYPTION DECOMPRESSION SIGNAL US 7 , 535 890 B , FIG. 3 2 402 436 TOIVM CLIENTS LOCAL IP NETWORK U . S . SERVER COMMUNICATION PUTFORM SERVER ENGINE (SWITCHING CORE} 404 CONTROL LAYER 426 NON - PROPRIETARY 428 v ' ' " MESSAGING SYSTEM SERVER 430 v / 406 STATION MANAGER MANAGER 412 408 GATEWAY MANAGER CLIENT V DATABASE Paten 202 L 1 NON PROPRIETARY SERVER 410 432 . DATABASE MANAGER 434 PROPRIETARY SERVER PROPRIETARY SERVER May 204 19 , LOCAL IP NETWORK TO GATEWAYS 114 20 9 She t 4 of 9 416 1 LCD MANAGER T 418 FIG. 4 DHCP TFTP SERVER ) T 420 422 SUPPLEMENTAL SERVERS SERVER ~ ' 1 HTTP SERVER T 424 US 7 , 535 890 B , 2 U . S . 502 IVM SYSTEM 216 202 200 D S tJ - 204 GLOBAL IVM SERVER SYSTEM GJ rflJ Oz/ LOCAL IVM SERVER . / 102 Paten May 19 , 208 212 AUDIO FILE IVM CLIENT 210 r- LOCAL IP NETWORK I G2 £ gas (INTERNET) 506 218 O, 20 9 IP NETWORK £ ' IVM CLIENT (VoIP PHONE) 114 5 S of GATEWAY 112 206 IVM CLIENT (VoIP PHONE) LEGACY SWITCH 9 504 LOCAL IP NETWORK 110 LEGACY 508 US 7 , PHONE IVM CLIENT FIG. 5 She t 5 535 890 B , 2 U . S . 600 602 IVM SYSTEM 202 / LOCAL \ IVM j SERVER L V 206 CLIENT ) \j y * * * £ Paten 502 510 l IP NETWORK (INTERNET) MESSAGES t 102 * 606 608 * TRANSPORT SERVER #2 DIRECTORY SERVER Es \ 20 9 6 of 9 ^ ^ / TVM \ CLIENT ) 19 , She t 604 20! May TRANSPORT SERVER #1 GLOBAL IVM SERVER SYSTEM US 7 , FIG. 6 535 890 B , 2 U . S . 604, 606 i l IP NETWORK (INTERNET) Paten 702 714 COMMUNICATION PLATFORM SERVER 704 ENGINE MESSAGING SYSTEM 706 CLIENT MANAGER 710 712 MESSAGE DATABASE <) DATABASE MANAGER May 19 LOCAL SERVER MANAGER , 708 20 9 She t 7 of 9 US 7 , 535 890 B , FIG. 7 2 U . S . 60S _ L 1 ? COMMUNICATION PLATFORM SERVER IP NETWORK (INTERNET) Paten 802 812 ENGINE 804 806 MESSAGING SYSTEM 1 808 USER MANAGER 810 LOCAL SERVER MANAGER May 19 , 20 9 She t 8 TRANSPORT MANAGER of 9 US 7 , FIG. 8 535 890 B , 2 U.S. Patent May 19, 2009 US 7,535,890 B2 Sheet 9 of 9 900 918 920 A 7 922 B 502 s A g g / 1A 1 7 932 7 934 930 D 926 E s A g A g B g 7 D g 2B 1 940 7 7 938 936 902 928 a. A g B g C g g g F 604 GLOBAL IVM SERVER SYSTEM TSlHSk^===, DIR 08 D E g 2C 1 924 910 IP NETWORK m 102 IVM SYSTEM #1 202 IVM SYSTEM #2 202 204 LAN LAN 208 TAJ IB 1C 1 C g 2A g 7 208 A B IA x C 7 906 l C 1 7 2A 1 2C E g 2A 2B 1 92 1C 208 <L 2B 2B 2C 1A g A 1A 206 208 JL. 2A 206 914 916 7 908 904 FIG. 9 7 / F Milt ... 2Cl o A 8 7 US 7,535,890 B2 1 2 SYSTEM AND METHOD FOR INSTANT VOIP MESSAGING vided between the legacy switch 112 and the packet -switched network 102 to enable IP telephony between the legacy telephone 110 and a VoIP terminal device, such as a VoIP soft phone 104 or VoIP telephone 106 . More specifically, the media gateway 114 converts the audio signal carried over PSTN to packets carried over the packet-switched IP network 102. In addition, a media gateway 118 may be disposed over the PSTN 116 and connected to a softswitch 120 to convert the audio signal from the legacy telephone 110 to packets routed over the IP network 102 via the softswitch 120. Voice messaging in both the VoIP and PSTN is known. More specifically, the foregoing systems may be provided with a facility to allow users to leave voice messages for recipients, which is a feature that is familiar to anyone who uses a telephone. Conventionally, leaving a voice message involves dialing the recipient’ s telephone number (often without knowing whether the recipient will answer), waiting for the connection to be established , speaking to an operator or navigating through a menu of options, listening to a greet ing message, and recording the message for later pickup by the recipient. In that message, the user must typically identify himself or herself in order for the recipient to return the call. Instant text messaging is likewise known. More specifically, a user is provided with a client terminal, which is typically a general-purpose PC programmed with instant text messaging software and in data communication over an IP network with an instant text-messaging server. The instant text-messaging server presents the user, via the client termi nal, with a list of persons who are currently “ online” and ready to receive text messages on their own client terminals. The user then uses the client terminal to select one or more persons to whom the message will be sent and types in a text message. The text message is sent immediately via the text messaging server to the selected one or more persons and is displayed on their respective client terminals. However, notwithstanding the foregoing advances in the VoIP/PSTN voice communication and voice/text messaging, there is still a need in the art for providing a system and method for providing instant VoIP messaging over an IP network. More particularly, there is a need in the art for providing local and global instant voice messaging over VoIP with PSTN support. BACKGROUND OF THE INVENTION 5 1. Technical Field of the Invention The present invention generally relates to Internet telephony (IP telephony). More particularly, the present invention is directed to a system and method for enabling local and global instant VoIP messaging over an IP network, such as the 10 Internet, with PSTN support. 2. Description of the Prior Art Traditional telephony is based on a public switched telephone network (i.e., “ PSTN” ). In the PSTN, a telephone terminal is electrically connected to a conventional or legacy 15 switch. The telephone terminal and the legacy switch communicate via a proprietary protocol, which may be different depending on the vendor of the legacy switch. Circuit switching provides a communication path (i.e., dedicated circuit) for a telephone call from the telephone terminal to another device 20 over the PSTN, including another telephone terminal. During the telephone call , voice communication takes place over that communication path. An alternative to the PSTN is Voice over Internet Protocol (i.e., “ VoIP” ), also known as IP telephony or Internet tele- 25 phony. In the IP telephony, a VoIP terminal device is con nected to a packet -switched network (e.g., Internet ) and voice communication from the VoIP terminal device is digitized, packetized and transmitted over the packet-switched network to a destination VoIP terminal device, which reconstructs the 30 packets and audibly plays, stores or otherwise processes the transmission. The VoIP terminal device may be a VoIP telephone or a general-purpose personal computer (PC) enabled for IP telephony. More specifically, the PC is programmed with the software and equipped with audio input/output 35 devices (e.g., a combination of microphone and speaker or a headset) to serve as a VoIP terminal device. The PC so enabled and equipped will herein be referred to as a VoIP terminal device or a VoIP softphone. FIG. 1 is an illustrative example of a prior art IP telephony 40 system 100. The IP telephony system 100 comprises a packet switched IP network 102, such as the Internet , which trans mits VoIP traffic from and to a plurality of terminal devices SUMMARY OF THE INVENTION 104, 106 and 110. Terminal device 104 is a VoIP softphone that is enabled for IP telephony over the network 102. Termi - 45 The present invention is directed to a system and method nal device 106 is a VoIP telephone, which is connected to the for enabling local and global instant VoIP messaging over an network 102 via a softswitch 108. Hie VoIP softswitch 108 is IP network, such as the Internet. disposed on the packet-switched network (e.g., Internet) 102 According to an embodiment of the present invention, between an origination terminal device (such as VoIP soft phone 104) and a destination terminal device (such as VoIP 50 there is provided an instant voice messaging system for deliv ering instant messages over a packet-switched network, the telephone 106), and routes packets over the packet -switched system comprising: a client connected to the network, the IP network 102. The softswitch 108 may also manage and client selecting one or more recipients, generating an instant perform administrative functions for the terminal device or voice message therefor, and transmitting the selected recipi devices (e.g., VoIP telephone 106 ) to which it is connected. Whether the terminal device is a VoIP softphone 104 or aVoIP 55 ents and the instant voice message therefor over the network; and a server connected to the network, the server receiving the telephone 106, the terminal device is connected to the IP selected recipients and the instant voice message therefor, and network 102 via a networking standard such as Ethernet, delivering the instant voice message to the selected recipients Bluetooth, IEEE 1394 (also known as “ Firewire” ), IEEE over the network, the selected recipients being enabled to 802.11 (also known as “ WiFi” ), or networking over serial communication channels such as the Universal Serial Bus 60 audibly play the instant voice message. According to another embodiment of the present invention, (i.e., “ USB” ). Data communication over the network then there is provided an instant voice messaging system for deliv takes place using a connection protocol , e.g., transfer control protocol /Internet protocol (i .e., “ TCP/ IP” ). ering instant messages over a packet-switched network Further regarding FIG. 1, terminal device 110 is a legacy enabling public switched telephone network (PSTN) support , telephone that is comiectedto a legacy switch 112 for (circuit - 65 the system comprising: a PSTN telephone connected to the network for providing input audio ; a client connected to the switched ) voice communications over the PSTN 116 with network, the client selecting one or more recipients, generat other terminal devices. A media gateway 114 may be pro - US 7,535,890 B2 3 4 ing an instant voice message therefor using the input audio provided by the PSTN telephone, and transmitting the selected recipients and the instant voice message therefor over the network; a server connected to the network, the server receiving the selected recipients and the instant voice message therefor, and delivering the instant voice message to the selected recipients over the network, the selected recipients being enabled to audibly play the instant voice message. According to a further embodiment of the present invention, there is provided an instant voice messaging system for delivering instant messages over a packet -switched network, the system comprising: a voice-over-internet -protocol (VoIP) telephone connected to the network for providing input audio; a client connected to the network, the client selecting one or more recipients, generating an instant voice message therefor using the input audio provided by the VoIP telephone, and transmitting the selected recipients and the instant voice message therefor over the network; a server connected to the network, the server receiving the selected recipients and the instant voice message therefor, and delivering the instant voice message to the selected recipients over the network, the selected recipients being enabled to audibly play the instant voice message. According to still another embodiment of the present invention, there is provided an instant voice messaging system for delivering instant messages over a plurality of packet switched networks, the system comprising: a client connected to a local network, the client selecting one or more external recipients connected to an external network outside the local network, generating an instant voice message therefor, and transmitting the selected recipients and the instant voice message therefor over the local network and the external network; and a server comiected to the external network, the server receiving the selected recipients and the instant voice message therefor, and delivering the instant voice message to the selected recipients over the external network, the selected recipients being enabled to audibly play the instant voice message. According to yet another embodiment of the present invention, there is provided an instant voice messaging system for delivering instant messages over a plurality of packet switched networks enabling public switched telephone net work (PSTN) support, the system comprising: a PSTN telephone comiected to a local network for providing input audio; a client comiected to the local network, the client selecting one or more external recipients connected to an external network outside the local network, generating an instant voice message therefor using the input audio provided by the PSTN telephone, and transmitting the selected recipients and the instant voice message therefor over the local network and the external network; a server comiected to the external network, the server receiving the selected recipients and the instant voice message therefor, and delivering the instant voice message to the selected recipients over the external network, the selected recipients being enabled to audibly play the instant voice message. According to yet a further embodiment of the present invention, there is provided an instant voice messaging system for delivering instant messages over a plurality of packet switched networks, the system comprising: a voice-over-internet-protocol (VoIP) telephone connected to a local network for providing input audio; a client connected to the local network, the client selecting one or more external recipi ents comiected to an external network outside the local net work, generating an instant voice message therefor using the input audio provided by the VoIP telephone, and transmitting the selected recipients and the instant voice message therefor over the local network and the external network; an server connected to the external network, the external server receiv ing the selected recipients and the instant voice message therefor, and delivering the instant voice message to the selected recipients over the external network, the selected recipients being enabled to audibly play the instant voice message. According to still a further embodiment of the present invention, there is provided an instant voice messaging sys tem for delivering instant messages over a plurality of packet switched networks, the system comprising: a client connected to an external network, the client selecting one or more recipients connected to a local network, generating an instant voice message therefor, and transmitting the selected recipi ents and the instant voice message therefor over the external network; an external server system comiected to the external network, the external server system receiving the selected recipients and the instant voice message, and routing the selected recipients and the instant voice message over the external network and the local network; a local server connected to the local network, the local server receiving the selected recipients and the instant voice message therefor, and delivering the instant voice message to the selected recipients over the local network, the selected recipients being enabled to audibly play the instant voice message. According to an embodiment of the present invention, there is provided a method for instant voice messaging over a packet-switched network, the method comprising: selecting one or more recipients for instant voice messaging at a client ; generating an instant voice message for the selected recipi ents at the client ; transmitting the selected recipients and the instant voice message therefor over the network from the client to a server; receiving the selected recipients and the instant voice message therefor at the server; delivering the instant voice message from the server to the selected recipi ents over the network; and audibly playing the instant voice message at the selected recipients. According to another embodiment of the present invention, there is provided a method for instant voice messaging over a packet-switched network enabling public switched telephone network (PSTN) support , the method comprising: providing input audio via a PSTN telephone comiected over the net work; selecting one or more recipients for instant voice mes saging at a client ; generating an instant voice message using the input audio from the PSTN telephone for the selected recipients at the client ; transmitting the selected recipients and the instant voice message therefor over the network from the client to a server; receiving the selected recipients and the instant voice message therefor at the server; delivering the instant voice message from the server to the selected recipi ents over the network; and audibly playing the instant voice message at the selected recipients. According to a further embodiment of the present invention, there is provided a method for instant voice messaging over a packet-switched network, the method comprising: pro viding input audio via a voice-over-internet-protocol (VoIP ) telephone connected over the network; selecting one or more recipients for instant voice messaging at a client; generating an instant voice message using the input audio from the VoIP telephone for the selected recipients at the client ; transmitting the selected recipients and the instant voice message therefor over the network from the client to a server; receiving the selected recipients and the instant voice message therefor at the server; delivering the instant voice message from the server to the selected recipients over the network; and audibly playing the instant voice message at the selected recipients. 5 10 15 20 25 30 35 40 45 50 55 60 65 US 7,535,890 B2 5 6 According to still another embodiment of the present invention, there is provided a method for instant voice messaging over a plurality of packet-switched networks, the method comprising: selecting one or more external recipients for instant voice messaging at a client connected to a local network, the one or more external recipients connected to an external network outside the local network; generating an instant voice message for the selected external recipients at the client ; transmitting the selected external recipients and the instant voice message therefor over the local network and the external network; receiving the selected external recipients and the instant voice message therefor at an external server connected to the external network; delivering the instant voice message to the selected external recipients over the external network; and audibly playing the instant voice message at the selected external recipients. According to yet another embodiment of the present invention, there is provided a method for instant voice messaging system over a plurality of packet-switched networks enabling public switched telephone network (PSTN) support, the method comprising: providing input audio via a PSTN telephone connected to a local network; selecting one or more external recipients for instant voice messaging at a client, the one or more external recipients connected to an external network outside the local network; generating an instant voice message for the one or more external recipients using the input audio provided by the PSTN telephone; transmitting the selected recipients and the instant voice message therefor over the local network and the external network; receiving the selected recipients and the instant voice message therefor at a server connected to the external network; delivering the instant voice message to the selected recipients from the server over the external network; and audibly playing the instant voice message at the selected recipients. According to still a further embodiment of the present invention, there is provided a method for instant voice messaging system over a plurality of packet-switched networks, the method comprising: providing input audio via a voiceover-internet -protocol (VoIP) telephone connected to a local network; selecting one or more external recipients for instant voice messaging at a client, the one or more external recipi ents connected to an external network outside the local net work; generating an instant voice message for the one or more external recipients using the input audio provided by the VoIP telephone; transmitting the selected recipients and the instant voice message therefor over the local network and the external network; receiving the selected recipients and the instant voice message therefor at a server connected to the external network; delivering the instant voice message to the selected recipients from the server over the external network; and audibly playing the instant voice message at the selected recipients. According to yet a further embodiment of the present invention, there is provided a method for instant voice messaging over a plurality of a plurality of packet-switched net works, the method comprising: selecting one or more recipients connected to a local network at a client connected to an external network; generating an instant voice message for the selected recipients at the client; transmitting the selected recipients and the instant voice message therefor over the external network from the client to an external server system; receiving the selected recipients and the instant voice message at the external server system; routing the selected recipi ents and the instant voice message over the external network and the local network; receiving the selected recipients and the instant voice message therefor at a local server connected to the local network; delivering the instant voice message to the selected recipients over the local network; audibly playing the instant voice message at the selected recipients. BRIEF DESCRIPTION OF THE DRAWINGS 5 10 15 20 25 30 35 40 45 50 55 60 65 The objects, features and advantages of the present invention will become apparent to one skilled in the art, in view of the following detailed description taken in combination with the attached drawings, in which: FIG. 1 illustrates an example of a prior art IP telephony system; FIG. 2 illustrates an exemplary local IVM system for enabling instant voice messaging according to the present invention; FIG. 3 illustrates an exemplary IVM client of FIG. 2 for enabling instant voice messaging according to the present invention; FIG. 4 illustrates an exemplary' IVM server of FIG. 2 for enabling instant voice messaging according to the present invention; FIG. 5 illustrates an exemplary' global IVM system comprising a local IVM system and global IVM clients, according to the present invention; FIG. 6 illustrates an exemplary' global IVM server system depicted in FIG. 5, according to the present invention; FIG. 7 illustrates an exemplary' transport server depicted in FIG. 6, according to the present invention; FIG. 8 illustrates an exemplary' directory server depicted in FIG. 6, according to the present invention; and FIG. 9 illustrates an exemplary' global IVM system comprising a plurality of local IVM systems and global IVM clients, according to the present invention. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT OF THE INVENTION The present invention is directed to a system and method for enabling local and global instant VoIP messaging over an IP network with PSTN support. FIG. 2 is an exemplary illustration of a local instant voice messaging (IVM) system 200 according to the present invention. The instant voice messaging system 200 comprises a local IVM server 202 that provides the core functionality for enabling instant voice messaging with PSTN support accord ing to the present invention. The architecture of the local IVM server 202 will be described in detail hereinbelow with ref erence to FIG. 4. According to the exemplary IVM system 200, the local IVM server 202 is enabled to provide instant voice messaging to one or more IVM clients 206 and 208, as well support instant voice messaging for PSTN legacy telephones 110. It is noted that although FIG. 2 depicts one of each IVM client 206, 208 and legacy telephone 110 for clarity and brevity, the local IVM server 202 is enabled to support a plurality of each of the foregoing IVM clients 206, 208 and legacy telephone 110. The local packet-switched IP network 204 interconnects the IVM clients 206, 208 and the legacy telephone 110 to the local IVM server 202 as well as interconnecting the local IVM server 202 to the local IP network 204. The network 204 may be a local area network (LAN), a wide area network (WAN), or the like, which supports both wired and wireless devices. The exemplary IVM client 208 is a VoIP softphone, the architecture of which will be described in detail hereinbelow with reference to FIG. 3. A microphone 212 is connected to the IVM client 208 and enables the recording of an instant voice message according to the present invention into an audio file 210 for transmission to the local IVM server 202 over the network 204. An input device 218 US 7,535,890 B2 7 8 IVM client 208. The audio file 210 at the IVM client 208 is (e.g., a keyboard) is connected to the IVM client 208 to select finalized via a stop signal , which is generated by the user via one or more recipients that are to receive the recorded instant the input device 218 or a preset time period without speech voice message. Although not depicted in FIG. 2, the input device 218 may include a trackball, digitizing pad or mouse, input via the input audio device 212 on the IVM client 208. or the like. A display device 216 is connected to the IVM 5 Once the recording of the user’ s speech is finalized , IVM client 208 generates a send signal indicating that the digitized client 208 to display instant voice messages recorded and/or audio file 210 (instant voice message) is ready to be sent to the received by a user of the IVM client 208. An audio device 214, selected recipients. The user generates the send signal when such as external speaker, is connected to the IVM client 208 the user operates the IVM client 208 via the input device 218, to play received instant voice messages. It is noted that the microphone 212, audio device 214, display device 216 and 10 e.g., pressing a key on a keyboard or clicking a button on a mouse. The IVM client 208 transmits the digitized audio file input device 218 may form integral parts of the IVM client 208. 210 and the send signal to the local IVM server 202. In Further with reference to FIG. 2, IVM client 206 is interresponse to the send signal indicating that the instant voice connected via the network 204 to the local IVM server 202. message is ready to be sent, the IVM client 208 sends the An exemplary IVM client 206 is a VoIP telephone, which 15 recorded audio file 210 destined for the selected one or more recipients via local IVM server 202. After receiving the audio comprises a screen display (not shown) capable of displaying file 210, the IVM server 202 thereafter delivers the transmit instant voice messages recorded and/or received by a user of ted instant voice message to the selected one or more recipi the IVM client 206 according to the present invention. The VoIP telephone 206 further comprises a handset and/or ents via the local IP network 204 . The one or more recipients speakerphone for recording instant voice messages and lis- 20 are enabled to display an indication that the instant voice tening to instant voice messages received at the VoIP telemessage has been received and audibly play the instant voice message to an associated user. It should be understood that phone 206 according to the present invention. The VoIP teleonly the available IVM recipients, currently comiected to the phones which may be implemented to provide instant voice messaging functionality according to the present invention IVM server 202, will receive the instant voice message. It is are commercially available from many vendors, including 25 noted that if a recipient IVM client is not currently comiected Alcatel , Lucent , NEC and Cisco , to name just a few. to the local IVM server 202 (i.e., is unavailable), the IVM server temporarily saves the instant voice message and deliv In addition to the foregoing IVM clients 206, 208, the IVM system 200 supports a legacy telephone 110 for instant voice ers it to the IVM client when the IVM client connects to the messaging according to the present invention. The legacy local IVM server 202 (i .e., is available). There are several embodiments for the operation of the telephone 110 is comiectedto a legacy switch 112. The legacy 30 IVM client (VoIP telephone) 206 within the IVM system 200, switch 112 is further connected to a media gateway 114. Both the legacy switch 112 and the media gateway 114 interconaccording to the present invention. In the first embodiment , the VoIP telephone 206 is a standalone IVM client 206 nect the legacy telephone 110 via the network 204 to the local IVM server 202, thereby facilitating instant voice messaging enabled for instant voice messaging according to the present according to the present invention. The media gateway 114 35 invention. In the second embodiment , the VoIP telephone 206 may be a gateway that supports trunk pack network control operates synchronously either with the IVM client 208 or (i.e., “ TPNCP” ) protocol, media gateway control protocol IVM server 202 to enable instant voice messaging according (i.e., “ MGCP” ), or a media gateway control H.428 protocol to the present invention. Thus, in operation according to the (i.e., “ MEGACO” ). As previously mentioned, the media gatefirst embodiment in FIG. 2, the IVM client (VoIP telephone) way 114 converts the audio signal carried over PSTN to 40 206 is comiected over the network 204 to the IVM server 202, which as aforementioned enables instant voice messaging packets to be transmitted over a packet-switched IP network, functionality over the local network 204. The IVM client 206 such as the local network 204. The implementation of the instant voice messaging for displays a list of one or more IVM recipients on its associated IVM client 208 will be described first and will be followed by display provided and stored by the local IVM server 202, as the implementations for IVM client 206 and legacy telephone 45 will be particularly described hereinbelow with reference to FIG. 4. The user operates the IVM client 206 by using a 110, with reference to the local IVM system 200 depicted in FIG. 2. These implementations implement a “ record mode” keypad on the VoIP telephone 206 to indicate a selection of of the instant voice messaging according to the present invenone or more IVM recipients from the list . The VoIP telephone tion. There will further be described an “ intercom mode” of 206 transmits the selection to the IVM server 202. The user the instant voice messaging according to the present inven- 50 selection also generates a start signal to the IVM client 206 tion. Therefore, in operation of the IVM client 208 according indicating the user is ready to begin instant voice messaging according to the present invention. The user speaks into the to FIG. 2, the IVM client (IVM softphone) 208 is connected handset of the IVM client 206 or a speakerphone on the IVM over the network 204 to the IVM server 202, which as aforeclient 206. Although not shown in FIG. 2, the VoIP telephone mentioned enables instant voice messaging functionality over the network 204. The IVM client 208 displays a list of 55 206 may provide a dedicated storage device, which in one or more IVM recipients on its display 216, provided and response to the start signal records an audio file, similar to the audio file 210 in the IVM client 208. The audio file is finalized stored by the local IVM server 202, as will be particularly via a stop signal. The stop signal is generated when the user described hereinbelow with reference to FIG. 4 . The user presses a button on the keypad , a preset time period without operates the IVM client 208 by using the input device 218 to indicate a selection of one or more IVM recipients from the 60 speech input to the VoIP telephone 206, or when the user list . The user selection is transmitted to the IVM server 202. returns the handset to the cradle of the VoIP telephone 206. Once the recording of the user’ s speech is complete, a send The user selection also generates a start signal to the IVM client 208 that the user is ready to begin instant voice messignal is generated indicating that the instant voice message is saging according to the present invention. In response to the ready to be sent to the selected recipients. The user generates start signal , the IVM client (softphone) 208 listens to the input 65 the send signal when the user presses a button on the keypad or returns the handset of the VoIP telephone 206 to it cradle audio device 212 and records the user’ s speech into a digi tized audio file 210 (i .e., instant voice message) stored on the (on-hook). In response to the send signal, the IVM client 206 US 7,535,890 B2 9 10 server 202 temporarily saves the instant voice message and sends the recorded audio to the local IVM server 202 via the delivers it to the IVM client when the IVM client connects to network 204. The IVM server 202 thereafter delivers the the local IVM server 202. instant voice message to the selected one or more recipients via the IP network 204. As before, the one or more recipients In operation of the legacy telephone 110 according to FIG. are enabled to display an indication that the instant voice 5 2, the legacy telephone 110 is connected to the local IVM message has been received and audibly play the instant voice server 202 via media gateway 114 and legacy switch 112. The message. As aforementioned, if a recipient IVM client is not legacy telephone 110 cooperates with the IVM client 208 to currently connected to the local IVM server 202, the IVM record and send an instant voice message. More specifically, server 202 temporarily saves the instant voice message and the legacy telephone 110 is used as a recording/listening 10 delivers it to the IVM client when the IVM client connects to device for recording or listing to instant voice messages, the local IVM server 202. while the IVM client 208 is used for displaying and selecting instant voice message recipients as described hereinabove. In the second embodiment of the IVM client 206 according Thus, in operation the IVM client 208 displays a list of IVM to FIG. 2, the VoIP telephone 206 operates synchronously either with the IVM client 208 or the IVM server 202 to 15 recipients on the display device 216 provided and stored by the local IVM server 202. The user operates the IVM client enable instant voice messaging according to the present 208 by using the input device 218 on the IVM client 208 to invention. Thus, in operation according to the second indicate a selection of one or more IVM recipients from the embodiment, the IVM client (VoIP telephone) 206 is still list. The user selection is transmitted to the IVM server 202. connected over the network 204 to the IVM server 202, which as aforementioned enables instant voice messaging function- 20 The user selection generates a start signal to the IVM server 202 indicating that the user is ready to begin instant voice ality over the local network 204. However, VoIP telephone messaging according to the present invention. In response to 206 cooperates with the IVM client 208 or IVM server 202 to receiving the start signal, the IVM server 202 transmits an record and send an instant voice message. More specifically, emulation code to the legacy telephone 110 to ring, thereby the VoIP telephone 206 is only used as a recording/listening 25 indicating to the user the IVM system 200 is ready to record device for recording or listing to instant voice messages, an instant voice message. As the user picks up the handset of while the IVM client 208 is used for displaying and selecting the legacy telephone 110 (off-hook), a connection is estab instant voice message recipients as described hereinabove. In lished via the network 204 between the legacy telephone 110 operation, the IVM client 208 displays a list of IVM recipi and the IVM server 202. Thereafter, the IVM server forwards ents on the display device 216 provided and stored by the 30 the user’ s speech transmitted from the legacy telephone 110 local IVM server 202. The user operates the IVM client 208 to the IVM client 208 for storage into the digitized audio file by using the input device 218 on the IVM client 208 to 210 (i.e., instant voice message). The audio file on the IVM indicate a selection of one or more IVM recipients from the client 208 is finalized by returning the handset of the legacy list . The user selection is transmitted to the IVM server 202. telephone 110 to its cradle (on-hook) or by pressing a desigThe user selection generates a start signal to the IVM server 35 nated button on the keypad of the legacy telephone 110, which transmits a stop signal to the IVM server 202 and further to the 202 indicating that the user is ready to begin instant voice IVM client 208. Returning the handset to its cradle also messaging according to the present invention. In response to generates a send signal to the IVM server to transmit the receiving the start signal, the IVM server 202 transmits a ring recorded audio file (instant voice message) to the selected one signal to the VoIP telephone 206, thereby indicating to the user the IVM system 200 is ready to record an instant voice 40 or more IVM recipients. The IVM server 202 thereafter deliv ers the instant voice message to the selected one or more message. The IVM server 202 also signals the IVM client 208 recipients via the IP network 204. The one or more recipients to generate audio file 210 to record the instant voice message. are enabled to display an indication that the received instant As the user picks up the handset of the VoIP telephone 206 voice message has been received and audibly play the instant (off-hook), a comiection is established via the network 204 between the local IVM server 202 and the VoIP telephone 45 voice message. If a recipient IVM client is not currently connected to the local IVM server 202, the IVM server 202 206. Thereafter, the IVM server 202 forwards the user’ s temporarily saves the instant voice message and delivers it to speech transmitted from VoIP telephone 206 to the IVM client the IVM client when the IVM client comiects to the local IVM 208 for storage into digitized audio file 210 on the IVM client server 202. 208. The audio file 210 is finalized by returning the handset its cradle (on-hook) or by pressing a designated button on the 50 Regarding the operational embodiments described with reference to FIG. 2 for recoding and transmitting an instant keypad VoIP telephone 206, whichtransmits the stop signal to voice message according to the present invention, the digi the IVM server 202 and further from the IVM server 202 to tized audio file is preferably compressed by applying a comthe IVM client 208. Returning the handset to its cradle pref erably generates a send signal to the IVM server 202, which pression algorithm before sending the audio file to the one or transmits the signal to the IVM client 208. The IVM client 55 more selected recipients. The audio file is preferably comthereafter transmits the recorded audio file 210 (instant voice pressed within the IVM clients 206, 208 before forwarding message) to IVM server 202 for delivery to the selected one or the audio file to the IVM server 202 for subsequent delivery to the one or more selected recipients. Alternatively, the commore IVM recipients. Alternatively, the user may press a key on the keyboard 218 to initiate the send signal. In response to pression may be implemented within the IVM server 202 the send signal, the IVM client 206 sends the recorded audio 60 before the audio file is transmitted to the one or more selected to the local IVM server 202 via the network 204. The IVM recipients. A Lempel -Ziv compression algorithm is preferserver 202 thereafter delivers the instant voice message to the ably used to compress the audio file according to the present invention. It is noted that many suitable compression algo selected one or more recipients via the IP network 204. The rithms are known to persons of skill in the art, including one or more recipients are enabled to display an indication that the instant voice message has been received and audibly 65 Huffman encoding, audio compression standards promul gated by the Moving Pictures Experts Group (“ MPEG” ), play the instant voice message. If a recipient IVM client is not currently connected to the local IVM server 202, the IVM G.722 wideband speech encoding standard, fractal compres - US 7,535,890 B2 11 12 sion, and wavelet compression. Any of the foregoing comenabling instant voice messaging according to the present pression algorithms may be implemented within the scope of invention. The IVM client 208 is a general -purpose programthe present invention. mable computer equipped with a network interface (not Further regarding the operational embodiments described shown), such as an Ethernet card , to provide connectivity to with reference to FIG. 2 for recoding and transmitting an 5 the network 204. It is noted that any suitable networking instant voice message according to the present invention, the protocol, not only Ethernet, could be used to connect the IVM digitized audio file (which may or may not be compressed as client to a network 204 and thus is considered within the described above) is further preferably encrypted via an scope of the present invention. The client platform 302 comencryption algorithm before transmitting the audio file to the prises a client engine 304, which controls other components, one or more selected recipients. The encryption is preferably 10 namely the document handler 306, file manager 308, audio implemented within the IVM clients 206, 208 before forfile creation 312, signal processing 314, encryption/decryp warding the audio file to the IVM server 202 for subsequent tion 316, and compression/decompression 318. The messagdelivery to the one or more selected recipients. Alternatively, ing system 320 and the client engine 304 communicate via the encryption may be implemented within the IVM server 202 before the audio file is transmitted to the one or more 15 standard inter-process communication. The messaging sys tem 320 and client engine 304 also communicate with the selected recipients. An AES (Rijndael ) encryption algorithm IVM server 202 over the network interface via the network is preferably used to encrypt the audio file according to the 204. The document handler 306 oversees the retrieving, send present invention. It is noted that many suitable encryption ing, receiving and storing of one or more documents (or files) algorithms are known to persons skilled in the art, including DES, Triple DES, Blowfish, Twofish, Serpent , and the like. 20 attached to instant voice messages from/to the one or more selected IVM recipients that may be communicating with the Any of the foregoing encryption algorithms may be impleIVM client 208. More specifically, when an instant voice mented within the scope of the present invention. Lastly with reference to FIG. 2, in addition to the “ record message is to be transmitted to the one or more IVM recipi mode” of instant voice messaging, the instant voice messagents, one or more documents may be attached to the instant ing system 200 also supports an “ intercom mode” of voice 25 voice message to be, stored or displayed by the one or more messaging. The “ intercom mode” represents real-time instant selected IVM recipients. The file manager accesses a message voice messaging. In the “ intercom mode,” instead of creating database 310, in which both the received and recorded instant an audio file 210, one or more buffers (not shown) of a voice messages are represented as database records, each predetermined size are generated in the IVM client 206, 208 record comprising a message identifier and the instant voice or local IVM server 202. The one or more buffers are used to 30 message. The file manager 308 sendees requests from the automatically write successive portions of the instant voice user to record, delete or retrieve messages to/from the mes message. Once a first buffer is full, i .e., input audio of the sage database 310. Audio file creation 312 creates an instant predetermined size is written to the buffer, the content of the voice message as audio file 210, and is responsible for receiv first buffer is automatically transmitted to the IVM server 202 for transmission to the one or more IVM recipients. A second 35 ing input speech for the instant voice message from audio input device 212 or via network 204 and storing the input buffer is meanwhile written with the next successive portion speech into audio file 210. Signal processing 314 performs of input audio. Once, the second buffer is full, i.e., input audio noise removal and signal optimization in the audio file 210. of the predetermined size is written to the buffer, the content Encryption/decryption 316 provides for respectively encrypt of the second buffer is transmitted to the IVM server 202 for transmission to the one or more IVM recipients. If the entire 40 ing/decrypting of outgoing/incoming audio files (i.e., instant voice messages), and compression/decompression 318 instant voice message or a successive portion thereof (such as respectively compresses/decompresses the outgoing/incoma last successive portion in the instant voice message) written ing audio files. to either buffer is smaller the predetermined size, then the buffered content of less than the predetermined size is auto Further with reference to FIG. 3, the reception of an instant matically transmitted to the IVM server 202. The foregoing 45 voice message is described as follows. It is assumed that the buffering using the first and second buffers is repeated until local IVM server 202 has determined that the IVM client 208 is available to receive an instant voice message by checking the entire instant voice message has been transmitted to the IVM server 202 for transmission to the one or more IVM the IVM client’ s 208 current status, i .e., whether the IVM client 208 is “ on-line.” The local IVM server 202 maintains recipients. It is noted that the invention is not limited to a particular number of buffers. The foregoing buffering and 50 the current status of the IVM clients connected to the local IVM server 202, i.e., IVM clients 206, 208. It is further transmission allows a “ real-time” instant voice message to be assumed that an IVM client has transmitted an instant voice transmitted to the one or more IVM recipients. The “ intercom mode” may be designated as a default mode when an IVM message to the IVM client 208. The local IVM server 202 receives the instant voice message over the local IP network recipient is on-line, while the “ record mode” may be designated as a default if the IVM recipient is unavailable, i.e., not 55 204 and forwards the instant voice message to the IVM client on-line. The user may easily change the “ intercom mode” to 208. Upon receipt at the IVM client 208, the instant voice the “ record mode” on the respective IVM client 206, 208. message is decrypted at 316, decompressed at 318, and stored Finally, the audio contents of the buffers may be signal pro in the message database 310 using the file manager 308. .Any files attached to the instant voice message are also stored in cessed (for clarity), encrypted and compressed before trans mission, as will be described in more detail hereinbelow with 60 the message database 310 using the file manager 308. A visual reference to FIG. 3. and/or sound effect is initiated to notify a user of the IVM FIG. 3. an exemplary illustration of the architecture in the client 208 that a new instant voice message has been received IVM client 208 for enabling instant voice messaging accordat the IVM client 208. At this point in time, the instant voice ing to the present invention. More specifically, the IVM client message and any file attachments are available to the user. The 208 comprises a client platform 302 for generating an instant 65 user can select the instant voice message from a listing of available instant voice messages displayed on the IVM client voice message and a messaging system 320 for messaging between the IVM client 208 and the IVM server 202 for 208 and play the newly received instant voice message. The US 7,535,890 B2 13 14 user may also open any file attachments and move or save the files to a separate location on the client using a drag-and-drop process. Still further with reference to FIG. 3, the generation and transmission of an instant voice message is described as fol lows. The user selects the available one or more IVM recipi ents and initiates the creation of an instant voice message as described above with reference to FIG. 2. The client engine 304 detects the start signal and invokes audio file creation 312 of the audio file 210. The audio file 210 is initialized and captures the audio voice message input by the user. Once the client engine 304 detects a stop signal , the instant voice message is finalized in the audio file 210 via audio file creation 312. The audio file 210 is adjusted for gain, and noise is removed via signal processing 314. The audio file 210 is further compressed at 318 and encrypted at 316. The completion of these processes causes the client engine 304 to inform the user via display 216 that the instant voice message is available to be sent. After the client engine 304 detects the send signal from the user, the instant voice message (audio file 210 ) is transferred to the local IVM server 202. Before the transmission of the instant voice message (i.e., before the send signal), the user has the option to review the instant voice message, re-record the instant voice message, delete the instant voice, as well as attach one or more files (i.e., docu ments). The attachment of one or more files is enabled conventionally via a methodology such as “ drag-and -drop” and the like, which invokes the document handler 306 to make the appropriate linkages to the one or more files and flags the messaging system 320 that the instant voice message also has the attached one or more files. FIG. 4. an exemplary illustration of the local IVM server 202 for enabling instant voice messaging according to the present invention. The IVM server 202 is a general-purpose programmable computer equipped with a network interface, such as an Ethernet card, to provide connectivity to a network 204. It is noted that any suitable networking protocol may be implemented to comiect the IVM server 202 to a network 204. The IVM server 202 comprises a server communication plat form 402, a messaging system 436 and a database 414, thereby enabling instant voice messaging according to the present invention. The server communication platform 402 comprises a server engine 404, client manager 406, station manager 408, gateway manager 410, database manager 412 that accesses database 414, supplemental servers 416 (including particular server subsystems 418-424), as well as a control layer 426 (including non-proprietary server subsystems 428, 430 and proprietary server subsystems 432, 434). The messaging system 436 and the server engine 304 communi cate via standard inter-process communication. The messaging system 436 and the server engine are also able to communicate with the IVM clients 206, 208 over the network interface via the network 204. The database 414 stores users (e.g., IVM clients as well as legacy telephone clients) that are known to the IVM server 202 via the database manager 412. The users are represented in the database as records, each record comprising a username, a password , and a contact list (a list of other users with whom the user wishes to exchange instant voice messages), and other data relating to the user. The database manager 412 services requests to add, update, delete, or retrieve database records to/from the database 414. The password may be stored in the database 414 as plaintext, in encrypted form, or as a hash (e.g., MD5 hash). The messaging system 436 communicates to the server engine 404 via message objects. A message object comprises an action field, an ID field, a source field , a destination field, and an object field. The con- tent of the action field is selected from a list of permitted actions, which among other actions includes: comiect , dis connect, subscribe, unsubscribe, and post message. In addi tion, the actions include: determining if an IVM client is awake (i .e., pinging), disconnecting from the IVM client , processing an IVM client message, and notifying IVM clients if the IVM server 202 goes down. The client messages include sending an instant voice message portions, checkin message, send message, set status message, send a phone command message, and send control parameters message. The content of the ID field represents a unique identifier for the message object. The content of the source field is a globally unique identifier (“ GUID” ) that uniquely identifies the sender of the message. This unique identifier can be generated by any known way, including the Globally Unique ID function call available in the Microsoft Windows and Microsoft NET envi ronments. In some circumstances, the source field is set to a special value to indicate that the sender of the message object is entitled to special privileges. The senders with special privileges are in fact IVM servers. This allows the IVM serv ers to broadcast messages to one another, subscribe to special events, and directly send messages to specific IVM servers. These privileges can depend upon whether the IVM servers are local servers or global servers. As an example, there can exist more than one local IVM server, each of these local IVM servers automatically has privileges to communicate to other local IVM server. On a global server system, a directory server can communicate with one or more transport servers. The content of the destination field is a GUID of an intended IVM recipient of the instant voice message. The content of the object field is a block of data being carried by the message object, which may be, for example, a digitized instant voice message. Depending on the circumstances in which the mes sage object is sent, some of the message object fields may be left blank or ignored . For example, the message object may merely require an action to be performed based upon the GUID supplied. In this case, the action does not necessarily require any data to be sent or received and some of the mes sage object’ s fields may be left blank or ignored. Connection objects maintain the logical connections between the IVM server 202 and IVM clients 206, 208 connected to the IVM server 202. More specifically, a connection object comprises data representing the state of the connection and code (one or more methods) for establishing and maintaining the logical connections between the IVM server 202 and the IVM clients 206, 208 within the IVM system 200 of FIG. 2. The connection object can contain both data and/or commands, including information that describes the socket , the size of the data to be transferred , and the priority of the transfer (e.g., high, normal , low, unknown). On start up the local IVM server 202 generates and maintains a list for each IVM client 206, 208. The local IVM server 202 then waits to receive connection objects from the IVM clients 206, 208 that are stored in the respective lists, decodes the received connection objects to obtain specific requests, and then services the specific requests from the IVM clients 206, 208. Further with reference to FIG. 4, the server engine 404 controls all other subsystems in the server communication platform 402, and it is responsible for startup and shutdown of the IVM server 202 and the IVM system 200. The client manager 406 controls the IVM clients 206, 208, providing contact presence (connection) information and message scheduling and delivery. The station manager 408 controls the individual legacy telephone 110 and coordinates its activity to work synchronously with the IVM client 208 and server 202. The gateway manager 410 enables the IVM server 202 to communicate with the legacy telephones, such as legacy tele- 5 10 15 20 25 30 35 40 45 50 55 60 65 US 7,535,890 B2 15 16 phone 110. The control layer 426 comprises a plurality of server subsystems 428-434, each of which provides transla tion services to different proprietary and non-proprietary gateways 114, such as TPNCP, MGCP, and MEGACO gateways. The proprietary server subsystems 428, 430 and nonproprietary' server subsystems 432, 434 are connected to respective gateways 114 via the local IP network 204. The supplemental server subsystems 416 provide a number of required services such as display manager subsystem 418, dynamic host configuration protocol (i .e., “ DHCP” ) sub system 420, trivial file transfer protocol (i.e., “ TFTP” ) server subsystem 422, and hypertext transfer protocol (i.e., “ HTTP” ). Each of the supplemental servers 418-424 in the subsystem 416 is used during the initial set -up of the IVM system 200. The boot -up process and allocation of IP addresses to IVM clients 206, 208 are performed through an LCD panel (not shown) associated with the local IVM server 202. The LCD manager 418 supports this boot -up process. The DHCP server 420 is used to allocate IP addresses as required and allows the advanced configuration of network settings in the instant voice messaging system. The TFTP server 422 provides a TCP/IP file transfer capability. Lastly, the HTTP server 424 provides services for a web server. FIG. 5 is an exemplary illustration of a global instant voice messaging (IVM) system 500, according to the present invention. In the global IVM system 500, the local IVM system 200 is depicted as a local IVM system 510, which is connected to a packet -switched network 102 (i.e., Internet ). The global IVM system 500 comprises the local IVM system 510, global IVM server system 502, and global IVM clients 506 and 508 that are optionally connected via local IP network 504. The global IVM server system 502 is connected to the IP network ( i.e., Internet) 102 for enabling the local IVM clients 206, 208 and legacy telephone 110 in the local IVM system 510 to generate and send instant voice messages to the global IVM clients 506, 508, as well as the local IVM clients 206, 208 to receive instant voice messages from the global IVM clients 506, 508. The implementation of the global instant voice messaging for the IVM client 208 will be described first and will be followed by the implementations for IVM client 206 and legacy telephone 110, with reference to the global IVM system 500 depicted in FIG. 5. Thereafter, instant voice messaging for global clients 506 and 508 will be described according to the present invention. These implementations implement a “ record mode” of the instant voice messaging according to the present invention. Thereafter, there will lastly be described an “ intercom mode” of the instant voice messaging according to the present invention. Therefore, in operation of the IVM client 208 according to FIG. 5, the IVM client 208 is connected via the networks 204, 102 to the global IVM server system 502, which enables the global instant voice messaging functionality outside the local IVM system 510 over the network (i .e., Internet ) 102. More specifically, the IVM client 208 requests from the global IVM server system 502 a global contact list (not shown) of global one or more IVM recipients with which the IVM client 208 may exchange instant voice messages. For the purposes of illustration, it is assumed that global IVM clients 506, 508 are in the contact list. The global IVM server system 502 stores and maintains this contact list . Thus, the global IVM server system 502 responds by transmitting the contact list to the IVM client 208. The IVM client 208 displays the contact list on its display 216. Alternatively, the global contact list may be replicated to the local IVM server 202 within the local IVM system 510, in which case the local IVM client 208 obtains the global contact list from the local IVM server 202. The user operates the IVM client 208 by using the input device 218 to indicate a selection of one or more IVM recipients from the global contact list. Here, for the purposes of illustration it is again assumed that IVM client 208 selected global IVM clients 506, 508. The user selection is transmitted to the IVM server 202. The user selection also generates a start signal to the IVM client 208 that the user is ready to begin instant voice messaging. In response to the start signal , the IVM client 208 listens to the input audio device 212 and records the user’ s speech into a digitized audio file 210 (i .e., instant voice mes sage) stored on the IVM client 208. The audio file 210 is finalized via a stop signal , which is generated by the user via the input device 218 or a preset time period without speech input via the input audio device 212. Once the recording is finalized, the IVM client 208 generates a send signal indicat ing that the digitized audio file 210 (instant voice message) is ready to be sent to the selected one or more IVM recipients. The user generates the send signal when the user operates the IVM client 208 via the input device 218. The IVM client 208 transmits the digitized audio file 210 and the send signal to the global IVM server system 502 via the local IP network 204 and the global IP network 102. After receiving the audio file 210, the global IVM server system 502 delivers the transmit ted instant voice message to the selected one or more recipi ents (e.g., IVM clients 506 and 508) via the IP network 102. The one or more recipients are enabled to display an indica tion that the instant voice message has been received and audibly play the instant voice message to an associated user. It is noted that if a recipient IVM client 506, 508 is not currently connected to the global IVM server system 502, the global IVM server system 502 temporarily saves the instant voice message and delivers it to the global IVM client 506, 508 when the IVM client connects to the global IVM server system 502. There are several embodiments for the operation of the IVM client (VoIP telephone) 206 within the global IVM system 500 of FIG. 5, according to the present invention . In the first embodiment, the VoIP telephone 206 is a standalone IVM client 206 enabled for instant voice messaging accord ing to the present invention. In the second embodiment, the VoIP telephone 206 operates synchronously with the IVM client 208 to enable instant voice messaging according to the present invention. Thus, in operation according to the first embodiment in FIG. 5, the IVM client 206 is connected via the networks 204, 102 to the global IVM server system 502, which enables instant voice messaging functionality over the IP network (Internet) 102. As mentioned previously, the IVM client 206 is also connected to the local IVM server 202. The IVM client 208 requests from the global IVM server system 502 a global contact list (not shown) of the global one or more IVM recipients with which the IVM client 206 may exchange instant voice messages. For the purposes of illustration, it is assumed that the global IVM clients 506, 508 are in the contact list. The global IVM server system 502 stores and maintains this contact list. Tlius, the global IVM server sys tem 502 responds by transmitting the global contact list to the IVM client 206. Alternatively, the global contact list may be replicated to the local IVM server 202 within the local IVM system 510, in which case the local IVM client 206 obtains the global contact list from the local IVM server 202. The IVM client 206 displays a list of the one or more IVM recipi ents on its associated display. The user operates the IVM client 206 by using a keypad on the VoIP telephone 206 to indicate a selection of one or more IVM recipients from the list. The VoIP telephone 206 transmits the selection to the global IVM server system 502. The user selection also generates a start signal to the IVM client 206 indicating the user is ready to begin instant voice messaging according to the 5 10 15 20 25 30 35 40 45 50 55 60 65 US 7,535,890 B2 17 present invention. The user speaks into the handset of the IVM client 206 or a speakerphone on the IVM client 206. Although not shown in FIG. 5, the VoIP telephone 206 may provide a dedicated storage device, which in response to the start signal records an audio file, similar to the audio file 210 in the IVM client 208. The audio file is finalized via a stop signal. The stop signal is generated when the user presses a button on the keypad, a preset time period without speech input to the VoIP telephone 206, or when the user returns the handset to the cradle of the VoIP telephone 206. Once the recording of the user’ s speech is complete, a send signal is generated indicating that the instant voice message is ready to be sent to the selected recipients. The user generates the send signal when the user presses a button on the keypad or returns the handset of the VoIP telephone 206 to it cradle. In response to the send signal, the IVM client 206 sends the recorded audio file (instant voice message) to the global IVM server system 502 via the networks 204, 102 for delivery to the selected one or more IVM recipients. The global IVM server 502 thereafter delivers the instant voice message to the selected one or more recipients (e.g., IVM clients 506 and 508) via the IP network 102. As before, the one or more recipients are enabled to display an indication that the instant voice message has been received and audibly play the instant voice message. If a recipient IVM client is not currently connected to the global IVM server system 502, the global IVM server system 502 temporarily saves the instant voice message and delivers it to the IVM client when the IVM client connects to the global IVM server system 502. In the second embodiment of the IVM client 206 according to FIG. 5, the VoIP telephone 206 operates synchronously with the IVM client 208 to enable global instant voice messaging according to the present invention. Thus, in operation according to the second embodiment in FIG. 5, the VoIP telephone 206 is comiected over the network 204 to the IVM client 208 and the IVM client 208 is connected via the net works 204, 102 to the global IVM server system 502, which enables instant voice messaging functionality over the IP network (Internet) 102. The VoIP telephone 206 cooperates with the IVM client 208 to record and send a global instant voice message outside the local IVM system 510. The IVM client 208 displays a global contact list of IVM recipients (not shown) on the display device 216 provided by the global IVM server system 502, as described hereinabove. Alternatively, the global contact list may be replicated to the local IVM server 202 within the local IVM system 510, in which case the IVM client 208 obtains the global contact list from the local IVM server 202. The user operates the IVM client 208 by using the input device 218 to indicate a selection of one or more IVM recipients from the contact list. The user selection generates a start signal in the IVM client 208 indicating that the user is ready to begin instant voice messaging according to the present invention. In response to the start signal, the IVM client 208 generates audio file 210 to record an instant voice message and transmits a ring signal to the VoIP telephone 206. As the user picks up the handset of the VoIP telephone 206 (off-hook), a connection is established via the network 204 between the local IVM client 208 and the VoIP telephone 206. Thereafter, the VoIP telephone 206 forwards the user’ s speech to the IVM client 208 for storage into the audio file 210. The audio file 210 is finalized by returning the handset its cradle (on-hook) or by pressing a designated but ton on the keypad VoIP telephone 206, which transmits the stop signal to the IVM client 208. Returning the handset to its cradle preferably generates a send signal to the IVM client 208. The IVM client thereafter transmits the recorded audio file 210 (instant voice message) to the global IVM server 18 system 502 via networks 204, 102 for delivery to the selected one or more IVM recipients. Alternatively, the user may press a key on the keyboard 218 to initiate the send signal . In response to the send signal, the IVM client 208 sends the 5 recorded audio file to the global IVM server system 502 for delivery to the selected one or more IVM recipients. The global IVM server system 502 thereafter delivers the instant voice message to the selected one or more recipients (e.g., IVM clients 506 and 508 ) via the IP network 102. As before, 10 the one or more IVM recipients are enabled to display an indication that the instant voice message has been received and audibly play the instant voice message. If a recipient IVM client is not currently comiected to the global IVM server system 502, the global IVM server system 502 temporarily 15 saves the instant voice message and delivers it to the IVM client when the IVM client connects to the global IVM server system 502. In operation of the legacy telephone 110 according to FIG. 5, the legacy telephone 110 is comiected to the local IVM 20 client 208 via media gateway 114, legacy switch 112 and network 204. The legacy telephone 110 cooperates with the IVM client 208 to record and send an instant voice message outside the local IVM system 510. More specifically, the legacy telephone 110 is used as a recording/listening device 25 for recording or listing to instant voice messages, while the IVM client 208 is used for displaying and selecting instant voice message recipients as described hereinabove. Thus, in operation the IVM client 208 requests from the global IVM server system 502 a global contact list of global one or more 30 IVM recipients with which the IVM client 208 may exchange instant voice messages. Alternatively, the global contact list may be replicated to the local IVM server 202 within the local IVM system 510, in which case the IVM client 208 obtains the global contact list from the local IVM server 202. The 35 IVM client 208 displays the global list of IVM recipients, as described hereinabove. The user operates the IVM client 208 to indicate a selection of one or more IVM recipients from the global contact list. The IVM client 208 transmits the user selection to the global IVM server system 502. The user 40 selection generates a start signal in the IVM client 208 indi cating that the user is ready to begin instant voice messaging according to the present invention. In response to the start signal, the IVM client 208 transmits an emulation code to the legacy telephone 110 to ring, thereby indicating to the user the 45 global IVM system 500 is ready to record an instant voice message. As the user picks up the handset of the legacy telephone 110 (off-hook), a connection is established via the network 204 between the legacy telephone 110 and the IVM client 208. Thereafter, the user’ s speech is transmitted from 50 the legacy telephone 110 to the IVM client 208 for storage into the digitized audio file 210 (i.e., instant voice message). The audio file 210 is finalized by returning the handset of the legacy telephone 110 to its cradle (on-hook) or by pressing a designated button on the keypad of the legacy telephone 110, 55 which transmits a stop signal to the IVM client 208. Returning the handset to its cradle may also generate a send signal to the IVM client 208 to transmit the recorded audio file (instant voice message) to the global IVM server system 502 for delivery to the selected one or more IVM recipients. Alterna 60 tively, the send signal is preferably generated from the IVM client 208 as described hereinabove. The global IVM server system 502 thereafter delivers the instant voice message to the selected one or more IVM recipients via the IP network (Internet ) 102. The one or more recipients are enabled to 65 display an indication that the instant voice message has been received and audibly play the instant voice message. If a recipient IVM client is not currently comiected to the global US 7,535,890 B2 19 20 IVM server system 502, the global IVM server system 502 temporarily saves the instant voice message and delivers it to the IVM client when the IVM client connects to the global IVM server 502. Further with reference to FIG. 5, the instant voice messaging for global clients 506 and 508 will be described according to the present invention. In a first embodiment , each of the global IVM clients 506, 508 is enabled to independently send an instant voice message. The IVM clients 506, 508 have like peripheral devices and functionality described respectively with reference to local IVM clients 206, 208 in FIG. 2. In second embodiment described below, the VoIP telephone 506 operates in conjunction with the IVM client 508 to send an instant voice message. Therefore, in operation of the global IVM clients 506 and 508 according the first embodiment in FIG. 5, the IVM clients 506, 508 are connected via the net works 204, 102 to the global IVM server system 502, which enables the global instant voice messaging functionality out side the local IVM system 510 over the network (i.e., Internet) 102. Each of the global IVM clients 506, 508 is enabled to request from the global IVM server system 502 a contact list ( not shown) of global one or more IVM recipients with which each of the global IVM client 506, 508 may exchange instant voice messages. For the purposes of this illustration, it is assumed that the IVM clients 206 and 208 within the local IVM system 510 are in the contact list for each global IVM client 506, 508. The global IVM server system 502 stores and maintains the foregoing contact list for each global IVM client 506, 508. Upon request , the global IVM server system 502 responds by transmitting the contact list to each of the IVM clients 506, 508. Each of the IVM clients 506, 508 displays the contact list on its display. The user operates the IVM client 506, 508 to indicate a selection of one or more IVM recipients from the contact list . Each of the global IVM clients 506, 508 transmits the user selection to the global IVM server system 502. The user selection also generates a start signal to the IVM clients 506, 508 that the user is ready to begin instant voice messaging. In response to the start signal, the IVM clients 506, 508 record the user’ s speech into a digitized audio file (i .e., instant voice message) stored on the global IVM clients 506, 508. The audio file is finalized via a stop signal, which is generated by the user by operating the global IVM client 506, 508. Once the recording is finalized, the IVM client 506, 508 generates a send signal indicating that the digitized audio file (instant voice message) is ready to be sent to the selected one or more recipients. The user generates the send signal when the user operates the global IVM client 506, 508. The IVM client 208 transmits the digitized audio file and the send signal to the global IVM server system 502. After receiving the audio file, the global IVM server system 502 delivers the transmitted instant voice message to the local IVM server 202 in the local IVM system 510 for delivery to the selected one or more recipients (e.g., local IVM clients 206 and 208) via the local IP network 204. The one or more recipients IVM 206, 208 are enabled to display an indication that the instant voice message has been received and audibly play the instant voice message to an associated user. It is noted that if a recipient IVM client 206, 208 is not currently connected to the local IVM server 202, the IVM server 202 temporarily saves the instant voice message and delivers it to the local IVM client 206, 208 when the IVM client connects to the local IVM server 202. In the second embodiment of the IVM client 506 according to FIG. 5, the VoIP telephone 506 operates synchronously with the IVM client 508 to enable global instant voice messaging according to the present invention. In this embodi ment, the VoIP telephone 506 and the IVM client 508 may be located in a user’ s residence and be comiected to a local IP network 504. This local IP network 504 can be a WiFi net work or a local area network (i.e., LAN), which is also within the user’ s residence. The local IP network 504 may be connected to the IP network (Internet) 102 via a digital subscriber line (i.e., DSL) connection, cable connection, dialup connec tion, or the like. As noted above, the IVM clients 506, 508 have like peripheral devices and functionality described respectively with reference to local IVM clients 206, 208 in FIG. 2. Thus, in operation according to this embodiment in FIG. 5, the global IVM client 508 requests from the global IVM server system 502 a contact list of global one or more IVM recipients with which each of the global IVM client 508 may exchange instant voice messages. For the purposes of this illustration, it is assumed that the IVM clients 206 and 208 within the local IVM system 510 are in the contact list for the global IVM client 508. The global IVM server system 502 stores and maintains the foregoing contact list for the global IVM client 508. The IVM client 508 displays a contact list of IVM recipients on the associated display device provided by the global IVM server system 502, as described hereinabove. The user operates the IVM client 508 by using the associated input device to indicate a selection of one or more IVM recipients from the contact list . The user selection generates a start signal in the IVM client 508 indicating that the user is ready to begin instant voice messaging according to the present invention. In response to the start signal, the IVM client 508 generates audio file to record an instant voice message and transmits a ring signal to the VoIP telephone 506 via local IP network 504. As the user picks up the handset of the VoIP telephone 206 (off-hook), a connection is estab lished via the local network 504 between the local IVM client 508 and the VoIP telephone 506. Thereafter, the VoIP telephone 506 forwards the user’ s speech to the IVM client 508 for storage into the audio file at the IVM client 508. The audio file is finalized by returning the handset its cradle (on-hook) or by pressing a designated button on the keypad associated with the VoIP telephone 506, which transmits the stop signal to the IVM client 508. Returning the handset to its cradle preferably generates a send signal to the IVM client 508. The IVM client thereafter transmits the recorded audio file (instant voice message) to the global IVM server system 502 for delivery to the selected one or more IVM recipients. Alterna tively, the user may press a key on the input device associated with the IVM client 508 to initiate the send signal . In response to the send signal, the IVM client 508 sends the recorded audio file to the global IVM server system 502 for delivery to the selected one or more IVM recipients. The global IVM server system 502 thereafter transmits the instant voice mes sage to the local IVM server 202 for delivery selected one or more recipients (e.g., local IVM clients 206 and 208 ) via the local IP network 204. As before, the one or more recipients are enabled to display an indication that the instant voice message has been received and audibly play the instant voice message. If a recipient IVM client is not currently comiected to the local IVM server 202, the local IVM server 202 temporarily saves the instant voice message and delivers it to the IVM client when the IVM client comiects to the local IVM server 202. Lastly with reference to FIG. 5, in addition to the “ record mode” of instant voice messaging as described above, the instant voice messaging system 500 also supports an “ intercom mode” of the instant voice messaging. The “ intercom mode” represents real-time instant voice messaging. In the “ intercom mode,” instead of creating an audio file as described hereinabove, one or more buffers (not shown) of a predetermined size are generated. The buffers may be gener- 5 10 15 20 25 30 35 40 45 50 55 60 65 US 7,535,890 B2 21 ated in any one of the IVM clients 206, 208, 506 and 508, depending on how the global IVM system 500 is defined. The one or more buffers are used to automatically write successive portions of the instant voice message. Once a first buffer is full, i .e., input audio of the predetermined size is written to the buffer, the content of the first buffer is automatically trans mitted . If the transmission is generated at a local IVM client 206, 208 and destined for one or more local IVM recipients, the content of the first buffer is transmitted to the local IVM server 202 for delivery to the local one or more recipients. If the transmission is generated at a local IVM client 206, 208 and destined for one or more global IVM recipients 506, 508, the content of the first buffer is transmitted to the global IVM server system 502 for delivery to the one or more global recipients. In addition, if the transmission is generated at a global IVM client 506, 508 and destined for the other global IVM clients, the content of the first buffer is transmitted to the global IVM server system 502, such as for example clients 506, 508. Lastly, if the transmission is generated at a global IVM client 506, 508 and destined for the local IVM clients 206, 208, the content of the first buffer is transmitted to the global IVM server system 502 and further transmitted by the global IVM server 502 to the local IVM server 202 for deliv ery to clients 206, 208 within the local IVM system 510. A second buffer is meanwhile written with the next successive portion of input audio. Once, the second buffer is lull, i.e., input audio of the predetermined size is written to the buffer, the content of the second buffer is transmitted in similar fashion to the first buffer. If the entire instant voice message or a successive portion thereof (such as a last successive portion in the instant voice message) written to either buffer is smaller the predetermined size, then the buffered content of less than the predetermined size is automatically transmitted to the IVM server 202. The foregoing buffering using the first and second buffers is repeated until the entire instant voice message has been transmitted as described above. It is noted that the invention is not limited to a particular number of buffers. The foregoing buffering and transmission allows a “ real time” instant voice message to be transmitted to the one or more local, as well as global, IVM recipients. The “ intercom mode” may be designated as a default mode when an IVM recipient is on-line, while the “ record mode” may be designated as a default if the IVM recipient is unavailable, i.e., not on-line. The user may easily change the “ intercom mode” to the “ record mode” on the respective IVM client 206, 208, 506, 508. Finally, the audio contents of the buffers may be signal processed (for clarity), encrypted and compressed before transmission, as was described previously. FIG. 6 is an exemplary detailed illustration 600 of the global IVM server system 502 depicted in FIG. 5, according to the present invention. More specifically, the local IVM system 510 described in FIG. 5 is connected via the IP net work (Internet) 102 to the global IVM server system 502. The global IVM server system 502 comprises an IVM transport server mesh 602 and an IVM directory server 608. The IVM transport server mesh 602 comprises a plurality of interconnected IVM transport servers 604, 606. Although the mesh 602 is depicted as having two IVM transport servers 604, 606, it is to be understood that as many IVM transport servers as are desired or required for redundancy and load balancing may be interconnected in a mesh. The IVM transport servers 604, 606 may be centrally located and configured to commu nicate (i.e., forward and receive messages) with local IVM clients 206, 208, local IVM server 202 and global IVM client 506, 508 (not depicted in FIG. 6 ) . The plurality of IVM transport servers 604, 606 in the IVM transport server mesh 602 permits load balancing and redundancy in the global IVM 22 system 500. The directory server 608 maintains a transport server list of all the IVM transport servers 604, 606 currently connecting to the mesh 602. Each of the IVM transport serv ers 604, 606 first connects to the directory server 608. The 5 directory server 608 informs each of the connecting IVM transport servers 604, 606 of all the other IVM transport servers currently in the mesh 602 based on an active list (not shown) of transport servers 604, 606 in the mesh 602. The connecting IVM transport server then comiects to each of the 10 IVM transport servers in the transport server list , resulting in an interconnected mesh 602 of IVM transport servers 604, 606. The IVM transport servers 604, 606 and the IVM direc tory server 608 communicate via messages. Further with reference to FIG. 6, the IVM transport servers 15 604, 606 connected in the mesh 602 share a database (not shown) of IVM clients, so that each IVM transport server 604, 606 refers to the same client database. It is preferable that each IVM transport server 604, 606 maintains its own copy of the client database, which is mirrored and replicated conven20 tionally amongst the IVM transport servers 604, 606 in the mesh 602. The client database may further be replicated to the local IVM server 202. Alternatively, the client database is stored on a separate file server (not shown) in data commu nication with the IVM transport servers 604, 606 over a 25 network (not shown). FIG. 7 is an exemplary detailed illustration of a transport server 604, 606 depicted in FIG. 6, according to the present invention. The IVM transport server 604, 606 is a general purpose programmable computer comprising a network 30 interface (not shown) connected to IP network (Internet) 102, a communication platform 702, a message database 712, and a messaging system 714. The communication platform 702 comprises a server engine 704, which controls a user manager 706, a local server manager 708, and a storage manager 710. 35 The messaging system 714 and the server engine 704 communicate via standard inter-process communication. The storage manager 710 handles retrieving, sending, and storing of messages, including instant voice messages and attachments thereto, to/from the message database 712. The user 40 manager 706 is responsible for creating/maintaining IVM clients 206, 208, 506, 508, identifying them and relaying their status to the server engine 704. When an IVM client commu nicates an instant voice message within the global IVM sys tem 500, the user manager 706 notifies the server engine 704 45 whether the one or more recipients are unavailable, and thereby the instant voice message is saved in the message database 712. When the one or more IVM recipients become available, the user manager 706 notifies the server engine 704, which instructs the storage manager 710 to retrieve any 50 undelivered instant voice messages for the one or more recipi ents and delivers the instant voice messages to the designated one or more IVM recipients. The local server manager 708 is responsible for creating/maintaining and providing the status of available local IVM servers, such as IVM server 202 in 55 FIG. 2. The availability status of the local IVM servers is checked periodically and updated. FIG. 8 is an exemplary detailed illustration of a directory server 608 depicted in FIG. 6, according to the present invention. The directory server 608 is a general-purpose program60 mable computer equipped with a network interface (not shown) connected to IP network (Internet ) 102, a messaging system 812, and a communication platform 802. The communication platform 802 comprises a server engine 804, which controls a local server manager 806, a user manager 65 808, and a transport manager 810 . The messaging system 812 and the server engine 804 communicate via standard interprocess communication. The transport manager 810 main- US 7,535,890 B2 23 24 tains the status of the IVM transport servers 604, 606 in the sage if a selected recipient is unavailable and delivering IVM transport server mesh 602 within the global IVM system the stored instant voice message to the selected recipient once the selected recipient becomes available. 500 and using a load-balancing mechanism distributes instant voice messages to available transport server 604, 606 for 2. The instant voice messaging system according to claim routing to the one or more IVM recipients. The user manager 5 1, wherein the packet -switched network is a local network. 808 is responsible for creating/maintaining IVM clients 206, 3. The instant voice messaging system according to claim 208, 506, 508, identifying and relaying their status via the 1, wherein the packet -switched network is the Internet . server engine 804 to the IVM transport server 604, 606 to be 4. The instant voice messaging system according to claim used . The local server manager 806 is responsible for creat 1, wherein the client requests a list of recipients associated ing/maintaining and providing the status of available local 10 with the client from the server and the server transmits the list IVM servers, such as IVM server 202 in FIG. 2. The avail of recipients to the client for selection of the one or more ability status of the local IVM servers is checked periodically recipients. and updated . 5. The instant voice messaging system according to claim FIG. 9 illustrates an exemplary a global instant voice mes1, wherein the server delivers the instant voice message to the saging (IVM) system 900, which comprises a plurality of 15 selected recipients that are available. local IVM systems and a plurality of global IVM clients, 6. The instant voice messaging system according to claim according to the present invention. In the global IVM system 1, wherein the client records the instant voice message in an 900, there are depicted a plurality of local IVM systems 902, audio file, transmits the audio file to the server, and the server 910 connected to the global IP network 102. The internal representation and functionality of each local IVM system 20 delivers the audio file to the selected recipients, the selected recipients being enabled to audibly play the audio file. 902, 904 is identical to the local IVM system 510 described 7. The instant voice messaging system according to claim with reference to FIG. 5. In global IVM system 900 of FIG. 9, 6, wherein the client signal processes, compresses and there are also depicted a plurality of global IVM clients 918encrypts the audio file, and the selected recipients being 928 and a global IVM server system 502 connected to the global IP network (i .e., Internet) 102. The internal represen- 25 enabled to decrypt and decompress the audio file before audi bly playing the audio file. tations of the global IVM client 918-928 and the global IVM 8. The instant voice messaging system according to claim server system 502 are identical to the respective IVM client 1, wherein the client buffers each of a plurality of successive 508 (and/or IVM client or 506) and the global IVM server portions of the instant voice message as the instant message is system 502 described with reference to FIG. 5. In the local IVM system 902, each local IVM client 206, 208 is enabled to 30 recorded, and the client transmits each successive buffered portion to the server for delivery to the to the selected recipi request local IVM recipients from the local IVM server 202 ents, the selected recipients being enabled to audibly playing and global IVM recipients from either the global IVM server each successive portion as it is delivered . system 502 or the local IVM server 202. For example, the local IVM client 1A 208 displays a list 904 to a user, com9. The instant voice messaging system according to claim prising both local and global IVM recipients. More specifi- 35 1, wherein the client is enabled to attach one or more files to cally, the list 904 enables IVM client 1A to send instant voice the instant voice message and the selected recipients are messages according to the present invention to local IVM enabled to store or display the one or more attached files. clients IB 208 and 1C 206, global IVM client C 922 and 10. The instant voice messaging system according to claim global IVM client 2A 208 in the local IVM system 910. 1, the system further comprising a public switched telephone Similar lists 906-916 are displayed to the users of the respec - 40 network (PSTN) telephone connected to the network to pro tive IVM clients 1B-1C in local IVM system 902, and 2A-2C vide input audio of the instant voice message to the client. in local IVM system 910. In addition, the global clients A-F 11. The instant voice messaging system according to claim 918-928 are enabled to request IVM recipients from the glo 1, the system further comprising a voice-over-internet-proto bal IVM server system 502 and display the respective lists of col (VoIP) telephone connected to the network to provide IVM recipients 930 -940 on the respective IVM clients 918- 45 input audio of the instant voice message to the client. 928. 12. An instant voice messaging system for delivering While the invention has been particularly shown and instant messages over a packet-switched network enabling described with regard to preferred embodiments thereof, it public switched telephone network (PSTN) support , the sys will be understood by those skilled in the art that the forego tem comprising: ing and other changes in form and details may be made 50 a PSTN telephone connected to the network for providing therein without departing from the spirit and scope of the input audio; invention. a client connected to the network, the client selecting one Having thus described our invention, what we claim as or more recipients, generating an instant voice message new, and desire to secure by Letters Patent is: therefor using the input audio provided by the PSTN 1. An instant voice messaging system for delivering instant 55 telephone, and transmitting the selected recipients and messages over a packet-switched network, the system comthe instant voice message therefor over the network; prising: a client connected to the network, the client selecting one a server connected to the network, the server receiving the selected recipients and the instant voice message thereor more recipients, generating an instant voice message for, and delivering the instant voice message to the therefor, and transmitting the selected recipients and the 60 selected recipients over the network, the selected recipi instant voice message therefor over the network ; and a server connected to the network, the server receiving the ents being enabled to audibly play the instant voice message, and the server temporarily storing the instant selected recipients and the instant voice message therefor, and delivering the instant voice message to the voice message if a selected recipient is unavailable and delivering the stored instant voice message to the selected recipients over the network, the selected recipi- 65 selected recipient once the selected recipient becomes ents enabled to audibly play the instant voice message, available. and the server temporarily storing the instant voice mes- US 7,535,890 B2 25 26 13. An instant voice messaging system for delivering instant messages over a packet -switched network, the system comprising: a voice-over-internet-protocol (VoIP) telephone connected to the network for providing input audio ; a client connected to the network, the client selecting one or more recipients, generating an instant voice message therefor using the input audio provided by the VoIP telephone, and transmitting the selected recipients and the instant voice message therefor over the network; a server connected to the network, the server receiving the selected recipients and the instant voice message therefor, and delivering the instant voice message to the selected recipients over the network, the selected recipients being enabled to audibly play the instant voice message, and the server temporarily storing the instant voice message if a selected recipient is unavailable and delivering the stored instant voice message to the selected recipient once the selected recipient becomes available. 14. An instant voice messaging system for delivering instant messages over a plurality of packet-switched networks, the system comprising: a client connected to a local network, the client selecting one or more external recipients connected to an external network outside the local network, generating an instant voice message therefor, and transmitting the selected recipients and the instant voice message therefor over the local network and the external network; and a server connected to the external network, the server receiving the selected recipients and the instant voice message therefor, and delivering the instant voice message to the selected recipients over the external network, the selected recipients being enabled to audibly play the instant voice message, and the server temporarily storing the instant voice message if a selected recipient is unavailable and delivering the stored instant voice message to the selected recipient once the selected recipient becomes available. 15. The instant voice messaging system according to claim 14, the client further selects one or more local recipients connected to the local network and transmits the selected local recipients and the instant voice message therefor over the local network, wherein the system further comprises: a local server connected to the local network, the local server receiving the selected local recipients and the instant message therefor from the client , and delivering the instant voice message to the selected local recipients over the local network, the selected local recipients being enabled to audibly play the instant voice message. 16. The instant voice messaging system according to claim 14, wherein the local network is a network within an enterprise. 17. The instant voice messaging system according to claim 14, wherein the external network is the Internet . 18. The instant voice messaging system according to claim 14, wherein the client requests a list of recipients associated with the client from the server and the server transmits the list of recipients to the client for selection of the one or more recipients. 19. The instant voice messaging system according to claim 14, wherein the server delivers the instant voice message to the selected recipients that are available. 20. The instant voice messaging system according to claim 14, wherein the client records the instant voice message in an audio file, transmits the audio file to the server, and the server delivers the audio file to the selected recipients, the selected recipients being enabled to audibly play the audio file. 21. The instant voice messaging system according to claim 20, wherein the client signal processes, compresses and encrypts the audio file, and the selected recipients are enabled to decrypt and decompress the audio file before audibly play ing the audio file. 22. The instant voice messaging system according to claim 14, wherein the client buffers each of a plurality of successive portions of the instant voice message as the instant message is recorded, and the client transmits each successive portion to the server for delivery to the selected recipients, the selected recipients being enabled to audibly playing each successive portion as it is delivered. 23. The instant voice messaging system according to claim 14, wherein the client is enabled to attach one or more files to the instant voice message and the selected recipients are enabled to store or display the one or more attached files. 24. The instant voice messaging system according to claim 14, the system further comprising a public switched telephone network (PSTN) telephone comiected to the local net work to provide input audio of the instant voice message to the client. 25. The instant voice messaging system according to claim 14, the system further comprising a voice-over-internet-pro tocol (VoIP) telephone comiected to the local network to provide input audio of the instant voice message to the client . 26. An instant voice messaging system for delivering instant messages over a plurality of packet-switched net works enabling public switched telephone network (PSTN) support, the system comprising: a PSTN telephone connected to a local network for provid ing input audio; a client connected to the local network, the client selecting one or more external recipients comiected to an external network outside the local network, generating an instant voice message therefor using the input audio provided by the PSTN telephone, and transmitting the selected recipients and the instant voice message therefor over the local network and the external network; a server connected to the external network, the server receiving the selected recipients and the instant voice message therefor, and delivering the instant voice mes sage to the selected recipients over the external network, the selected recipients being enabled to audibly play the instant voice message, and the server temporarily storing the instant voice message if a selected recipient is unavailable and delivering the stored instant voice mes sage to the selected recipient once the selected recipient becomes available. 27. An instant voice messaging system for delivering instant messages over a plurality of packet-switched net works, the system comprising: a voice-over-internet -protocol (VoIP) telephone comiected to a local network for providing input audio ; a client connected to the local network, the client selecting one or more external recipients comiected to an external network outside the local network, generating an instant voice message therefor using the input audio provided by the VoIP telephone, and transmitting the selected recipients and the instant voice message therefor over the local network and the external network; an server connected to the external network, the external server receiving the selected recipients and the instant voice message therefor, and delivering the instant voice message to the selected recipients over the external net work, the selected recipients being enabled to audibly 5 10 15 20 25 30 35 40 45 50 55 60 65 US 7,535,890 B2 27 28 play the instant voice message, and the server tempo rarily storing the instant voice message if a selected recipient is unavailable and delivering the stored instant voice message to the selected recipient once the selected recipient becomes available. 28. An instant voice messaging system for delivering instant messages over a plurality of packet-switched networks, the system comprising: a client connected to an external network, the client select ing one or more recipients connected to a local network, generating an instant voice message therefor, and trans mitting the selected recipients and the instant voice message therefor over the external network; and a external server system connected to the external network, the external server system receiving the selected recipients and the instant voice message, and routing the selected recipients and the instant voice message over the external network and the local network; a local server connected to the local network, the local server receiving the selected recipients and the instant voice message therefor, and delivering the instant voice message to the selected recipients over the local net work, the selected recipients being enabled to audibly play the instant voice message, and the local server temporarily storing the instant voice message if a selected recipient is unavailable and delivering the stored instant voice message to the selected recipient once the selected recipient becomes available. 29. The instant voice messaging system according to claim 28, the client further selects one or more external recipients connected to the external and transmits the selected external recipients over the external network to the external server, and the external server receives the selected external recipients and delivers the instant voice message to the selected external recipients over the external network, the selected external recipients being enabled to audibly play the instant voice message. 30. The instant voice messaging system according to claim 28, wherein the local network is a network within an enterprise. 31. The instant voice messaging system according to claim 28, wherein the external network is the Internet . 32. The instant voice messaging system according to claim 28, wherein the client requests a list of recipients associated with the client from the external server system and the external server system transmits the list of recipients to the client for selection of the one or more recipients. 33. The instant voice messaging system according to claim 28, wherein the local server delivers the instant voice message to the selected recipients that are available. 34. The instant voice messaging system according to claim 28, wherein the client records the instant voice message in an audio file, transmits the audio file to the external server, the external server system routes the audio file to the local server, and the local server delivers the audio file to the selected recipients, the selected recipients being enabled to audibly play the audio file. 35. The instant voice messaging system according to claim 34, wherein the client signal processes, compresses and encrypts the audio file, and the selected recipients are enabled to decrypt and decompress the audio file before audibly play ing the audio file. 36. The instant voice messaging system according to claim 28, wherein the client buffers each of a plurality of successive portions of the instant voice message as the instant message is recorded , and the client transmits each successive buffered portion to the external server system, the external server sys- tern routes each successive portion to the local server, and the local server delivers each successive portion to the to the selected recipients, the selected recipients being enabled to audibly play each successive portion as it is delivered. 37. The instant voice messaging system according to claim 28, wherein the client is enabled to attach one or more files to the instant voice message and the selected recipients are enabled to store or display the one or more attached files. 38. The instant voice messaging system according to claim 28, the system further comprising a voice-over-internet-pro tocol (VoIP) telephone connected to the client via a local network, the client providing input audio of the instant voice message to the client via the local network. 39. The instant voice messaging system according to claim 28, wherein the external server system comprises: a transport server mesh including a plurality of transport servers for routing instant voice messages; a directory server for maintaining the transport server mesh and facilitating load -balancing of the instant voice mes sages within the transport server mesh. 40. A method for instant voice messaging over a packet switched network, the method comprising: selecting one or more recipients for instant voice messaging at a client; generating an instant voice message for the selected recipi ents at the client; transmitting the selected recipients and the instant voice message therefor over the network from the client to a server; receiving the selected recipients and the instant voice mes sage therefor at the server; delivering the instant voice message from the server to the selected recipients over the network; temporarily storing at the server the instant voice message if a selected recipient is unavailable; delivering from the server the stored instant voice message to the selected recipient once the selected recipient becomes available: and audibly playing the instant voice message at the selected 5 10 15 20 25 30 35 40 45 50 55 60 65 recipients. 41. The method for instant voice messaging according to claim 40, wherein the method further comprises: requesting from the client a list of recipients associated with the client from the server; and transmitting from the server the list of recipients to the client for selection of the one or more recipients. 42. The method for instant voice messaging according to claim 40, wherein the method further comprises: delivering the instant voice message from the server to the selected recipients that are available. 43. The method for instant voice messaging according to claim 40, wherein the method further comprises: recording the instant voice message at the client in an audio file; transmitting the audio file to the server; delivering the audio file from the server to the selected recipients; and audibly playing the audio file at the least one of the selected recipients. 44. The method for instant voice messaging according to claim 43, wherein the method further comprises: signal processing, compressing and encrypting the audio file at the client ; decrypting and decompressing the audio file at the at least one selected recipient; and audibly playing the decrypted and decompressed audio file at the least one of the selected recipients. US 7,535,890 B2 29 30 45. The method for instant voice messaging according to claim 40, further comprising: buffering each of a plurality of successive portions of the instant voice message at the client as the instant message is recorded; transmitting from the client each successive buffered portion to the server; delivering each successive portion from the server to the selected recipients, the selected recipients audibly play ing each successive portion as it is delivered . 46. The method for instant voice messaging according to claim 40, wherein the method further comprises: attaching one or more files to the instant voice message at the client; storing or displaying the one or more attached files at the selected recipients. 47. The method for instant voice messaging according to claim 40, wherein the method further comprises: providing input audio of the instant voice message to the client from a public switched telephone network (PSTN) telephone comiected to the network. 48. The method for instant voice messaging according to claim 40, wherein the method further comprises: providing input audio of the instant voice message to the client from a voice-over-intemet-protocol (VoIP) telephone connected to the network. 49. A method for instant voice messaging over a packet switched network enabling public switched telephone net work (PSTN) support, the method comprising: providing input audio via a PSTN telephone connected over the network; selecting one or more recipients for instant voice messaging at a client ; generating an instant voice message using the input audio from the PSTN telephone for the selected recipients at the client; transmitting the selected recipients and the instant voice message therefor over the network from the client to a server; receiving the selected recipients and the instant voice message therefor at the server; delivering the instant voice message from the server to the selected recipients over the network; temporarily storing at the server the instant voice message if a selected recipient is unavailable; delivering from the server the stored instant voice message to the selected recipient once the selected recipient becomes available; and audibly playing the instant voice message at selected recipients. 50. A method for instant voice messaging over a packet switched network, the method comprising: providing input audio via a voice-over-intemet-protocol (VoIP) telephone connected over the network; selecting one or more recipients for instant voice messaging at a client ; generating an instant voice message using the input audio from the VoIP telephone for the selected recipients at the client; transmitting the selected recipients and the instant voice message therefor over the network from the client to a server; receiving the selected recipients and the instant voice message therefor at the server; delivering the instant voice message from the server to the selected recipients over the network; temporarily storing at the server the instant voice message if a selected recipient is unavailable; delivering from the server the stored instant voice message to the selected recipient once the selected recipient becomes available; and audibly playing the instant voice message at the selected recipients. 51. A method for instant voice messaging over a plurality of packet -switched networks, the method comprising: selecting one or more external recipients for instant voice messaging at a client comiected to a local network, the one or more external recipients comiected to an external network outside the local network; generating an instant voice message for the selected external recipients at the client; transmitting the selected external recipients and the instant voice message therefor over the local network and the external network; receiving the selected external recipients and the instant voice message therefor at an external server comiected to the external network; delivering the instant voice message to the selected external recipients over the external network; temporarily storing the instant voice message at the external server if a selected recipient is unavailable; delivering the stored instant voice message to the selected recipient once the selected recipient becomes available; and audibly playing the instant voice message at the selected external recipients. 52. The method for instant voice messaging according to claim 51, wherein the method further comprises: requesting from the external server a list of external recipi ents associated with the client ; and transmitting the list of external recipients from the external server to the client for selection of the one or more external recipients. 53. The method for instant voice messaging according to claim 51, wherein the method further comprises: delivering the instant voice message from the external server to the selected recipients that are available. 54. The method for instant voice messaging according to claim 51, wherein the method further comprises: recording the instant voice message in an audio file at the client; transmitting the audio file to the external server; delivering the audio file to the selected recipients from the external server; and audibly playing the audio file at the selected recipients. 55. The method for instant voice messaging according to claim 54, wherein the method further comprises: signal processing, compressing and encrypting the audio file at the client ; and decrypting and decompressing the audio file at the selected recipients; and audibly playing the decrypted and decompressed audio file at the selected recipients. 56. The method for instant voice messaging according to claim 51, wherein the method further comprises: buffering each of a plurality of successive portions of the instant voice message at the client as the instant message is recorded; transmitting from the client each successive portion to the external server; delivering each successive portion from the external server to the selected external recipients, 5 10 15 20 25 30 35 40 45 50 55 60 65 US 7,535,890 B2 31 32 audibly playing each successive portion at the selected external recipients as it is delivered . 57. The method for instant voice messaging according to claim 51, wherein the method thither comprises: attaching one or more files to the instant voice message; storing or displaying the one or more attached files at the selected external recipients. 58. The method for instant voice messaging according to claim 51, wherein the method further comprises providing input audio of the instant voice message to the client from a public switched telephone network (PSTN) telephone over the local network. 59. The method for instant voice messaging according to claim 51, wherein the method further comprises providing input audio of the instant voice message to the client from a voice-over-internet-protocol (VoIP) telephone over the local network. 60. A method for instant voice messaging system over a plurality of packet -switched networks enabling public switched telephone network (PSTN) support, the method comprising: providing input audio via a PSTN telephone connected to a local network; selecting one or more external recipients for instant voice messaging at a client, the one or more external recipients connected to an external network outside the local net work; generating an instant voice message for the one or more external recipients using the input audio provided by the PSTN telephone; transmitting the selected recipients and the instant voice message therefor over the local network and the external network; receiving the selected recipients and the instant voice message therefor at a server connected to the external net work; delivering the instant voice message to the selected recipi ents from the server over the external network; temporarily storing at the server the instant voice message if a selected recipient is unavailable; delivering from the server the stored instant voice message to the selected recipient once the selected recipient becomes available; and audibly playing the instant voice message at the selected recipients. 61. A method for instant voice messaging system over a plurality of packet-switched networks, the method comprising; providing input audio via a voice-over-intemet-protocol (VoIP) telephone connected to a local network; selecting one or more external recipients for instant voice messaging at a client, the one or more external recipients connected to an external network outside the local net work; generating an instant voice message for the one or more external recipients using the input audio provided by the VoIP telephone; transmitting the selected recipients and the instant voice message therefor over the local network and the external network; receiving the selected recipients and the instant voice message therefor at a server connected to the external net work; delivering the instant voice message to the selected recipi ents from the server over the external network; temporarily storing at the server the instant voice message if a selected recipient is unavailable; delivering from the server the stored instant voice message to the selected recipient once the selected recipient becomes available; and audibly playing the instant voice message at the selected recipients. 62. A method for instant voice messaging over a plurality of a plurality of packet-switched networks, the method comprising: selecting one or more recipients connected to a local net work at a client connected to an external network; generating an instant voice message for the selected recipi ents at the client; transmitting the selected recipients and the instant voice message therefor over the external network from the client to an external server system; receiving the selected recipients and the instant voice mes sage at the external server system ; routing the selected recipients and the instant voice mes sage over the external network and the local network; receiving the selected recipients and the instant voice mes sage therefor at a local server comiected to the local network; delivering the instant voice message to the selected recipi ents over the local network; temporarily storing the instant voice message at the local server if a selected recipient is unavailable; delivering the stored instant voice message to the selected recipient once the selected recipient becomes available; and audibly playing the instant voice message at the selected recipients. 63. The method for instant voice messaging according to claim 62, wherein the method further comprises: requesting a list of recipients associated with the client from the external server system; and transmitting the list of recipients from the external server system to the client for selection of the one or more recipients. 64. The method for instant voice messaging according to claim 62, wherein the method further comprises: delivering the instant voice message from the local server to the selected recipients that are available. 65. The method for instant voice messaging according to claim 62, wherein the method further comprises: recording the instant voice message in an audio file at the client; transmitting the audio file from the client to the external server system; routing the audio file from the external server system to the local server; and delivering the audio file from the local server to the selected recipients; and audibly playing the audio file at the selected recipients. 66. The method for instant voice messaging according to claim 65, wherein the method further comprises: signal processing, compressing and encrypting the audio file at the client ; decrypting and decompressing the audio file at the selected recipients; audibly playing the decrypted and decompressed audio file at the selected recipients. 67. The method for instant voice messaging according to claim 62, wherein the method further comprises: buffering each of a plurality of successive portions of the instant voice message at the client as the instant message is recorded; 5 10 15 20 25 30 35 40 45 50 55 60 65 US 7,535,890 B2 33 34 69. The method for instant voice messaging according to transmitting from the client each successive portion to the external server system; aim 62, wherein the method further comprises: routing each successive portion from the external server providing input audio of the instant voice message from a system to the local server; voice-over-internet-protocol (VoIP) telephone to the cli ent via a local network connecting the VoIP telephone to delivering each successive portion from local server to the 5 the client. selected external recipients ; and audibly playing each successive portion at the selected 70. The method for instant voice messaging according to claim 62, wherein the method further comprises ; recipients as it is delivered. maintaining a transport server mesh including a plurality of 68. The method for instant voice messaging according to claim 62, wherein the method further comprises: to transport servers for routing instant voice messages ; and load-balancing the instant voice messages within the trans attaching one or more files to the instant voice message at the client; port server mesh. storing or displaying the one or more attached files at the selected recipients.

Disclaimer: Justia Dockets & Filings provides public litigation records from the federal appellate and district courts. These filings and docket sheets should not be considered findings of fact or liability, nor do they necessarily reflect the view of Justia.


Why Is My Information Online?