US20100166159A1 - Voice and text mail application for communication devices - Google Patents
Voice and text mail application for communication devices Download PDFInfo
- Publication number
- US20100166159A1 US20100166159A1 US12/721,442 US72144210A US2010166159A1 US 20100166159 A1 US20100166159 A1 US 20100166159A1 US 72144210 A US72144210 A US 72144210A US 2010166159 A1 US2010166159 A1 US 2010166159A1
- Authority
- US
- United States
- Prior art keywords
- media
- incoming message
- message
- communication device
- received
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000004891 communication Methods 0.000 title claims abstract description 90
- 238000009877 rendering Methods 0.000 claims abstract description 75
- 238000000034 method Methods 0.000 claims abstract description 66
- 230000007704 transition Effects 0.000 claims abstract description 19
- 230000001360 synchronised effect Effects 0.000 claims abstract description 16
- 238000012216 screening Methods 0.000 claims abstract description 10
- 230000004044 response Effects 0.000 claims description 30
- 230000000007 visual effect Effects 0.000 claims description 30
- 238000012217 deletion Methods 0.000 claims description 3
- 230000037430 deletion Effects 0.000 claims description 3
- 238000012552 review Methods 0.000 description 30
- 230000005540 biological transmission Effects 0.000 description 8
- 230000006870 function Effects 0.000 description 8
- 230000008901 benefit Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 238000005538 encapsulation Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 4
- 230000001413 cellular effect Effects 0.000 description 3
- 229910003460 diamond Inorganic materials 0.000 description 3
- 239000010432 diamond Substances 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000002085 persistent effect Effects 0.000 description 3
- 241000283973 Oryctolagus cuniculus Species 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000013518 transcription Methods 0.000 description 2
- 230000035897 transcription Effects 0.000 description 2
- 230000001052 transient effect Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000010187 selection method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000003442 weekly effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/56—Unified messaging, e.g. interactions between e-mail, instant messaging or converged IP messaging [CPM]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/1813—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast for computer conferences, e.g. chat rooms
- H04L12/1822—Conducting the conference, e.g. admission, detection, selection or grouping of participants, correlating users to one or more conference sessions, prioritising transmission
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/04—Real-time or near real-time messaging, e.g. instant messaging [IM]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1083—In-session procedures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1083—In-session procedures
- H04L65/1094—Inter-user-equipment sessions transfer or sharing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/40—Support for services or applications
- H04L65/401—Support for services or applications wherein the services involve a main real-time session and one or more additional parallel real-time or time sensitive sessions, e.g. white board sharing or spawning of a subconference
- H04L65/4015—Support for services or applications wherein the services involve a main real-time session and one or more additional parallel real-time or time sensitive sessions, e.g. white board sharing or spawning of a subconference where at least one of the additional parallel sessions is real time or time sensitive, e.g. white board sharing, collaboration or spawning of a subconference
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/75—Media network packet handling
- H04L65/764—Media network packet handling at the destination
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M3/00—Automatic or semi-automatic exchanges
- H04M3/42—Systems providing special services or facilities to subscribers
- H04M3/50—Centralised arrangements for answering calls; Centralised arrangements for recording messages for absent or busy subscribers ; Centralised arrangements for recording messages
- H04M3/53—Centralised arrangements for recording incoming messages, i.e. mailbox systems
- H04M3/533—Voice mail systems
- H04M3/53333—Message receiving aspects
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/1813—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast for computer conferences, e.g. chat rooms
- H04L12/1831—Tracking arrangements for later retrieval, e.g. recording contents, participants activities or behavior, network status
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/21—Monitoring or handling of messages
- H04L51/224—Monitoring or handling of messages providing notification on incoming messages, e.g. pushed notifications of received messages
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M2203/00—Aspects of automatic or semi-automatic exchanges
- H04M2203/25—Aspects of automatic or semi-automatic exchanges related to user interface aspects of the telephonic communication service
- H04M2203/251—Aspects of automatic or semi-automatic exchanges related to user interface aspects of the telephonic communication service where a voice mode or a visual mode can be used interchangeably
- H04M2203/253—Aspects of automatic or semi-automatic exchanges related to user interface aspects of the telephonic communication service where a voice mode or a visual mode can be used interchangeably where a visual mode is used instead of a voice mode
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M2203/00—Aspects of automatic or semi-automatic exchanges
- H04M2203/45—Aspects of automatic or semi-automatic exchanges related to voicemail messaging
- H04M2203/4563—Voicemail monitoring during recording
Definitions
- This invention relates to communications, and more particularly, to a visual voice and text mail method and application capable of supporting both synchronous and asynchronous voice communication between communication devices.
- a known advancement in telephony is voice mail. If a call is made and the recipient does not answer the phone, then the call is “rolled-over” into a separate voice mail system, typically maintained on a voice mail server or an answering machine connected to the phone of the recipient.
- the telephone and voice mail systems are not integrated. Rather, the voice mail services are “tacked-on” to the underlying phone system. The fact that the two systems are separate and distinct, and not integrated, creates a number of inconveniences and inefficiencies.
- VoIP Voice over Internet Protocol
- VoIP services today are little different than traditional telephony.
- the fundamental communication service of VoIP remains the same. A party is still required to place a call and wait for a connection to be made. If the recipient does not answer, the call is rolled over into voice mail, just like conventional telephony. VoIP has therefore not changed the fundamental way people communicate.
- Visual voice mail is a recent advancement in telephony.
- a list of received messages is visually presented on a display of a communication device of a recipient, such as a mobile phone.
- the recipient may select any of the messages in the list to either listen to or delete, typically by simply touching the display adjacent where the message appears.
- the media of the message is immediately rendered, without the user having to either (i) dial-in to the voice mail system or (ii) listen to previously received messages in the queue.
- the message selected for review either resides at and is locally stored on the communication device itself, or is retrieved from the mail server and then rendered.
- the selected message is removed from the list appearing on the display and also possibly removed from storage, either on the communication device itself, the network, or both.
- incoming messages are first received and stored on the voice mail server of a recipient. Once the message is received in full, the message is downloaded to the iPhone of the recipient and the recipient is notified. At this point, the recipient may review the message, or wait to review the message at an arbitrary later time.
- visual voice mail on the iPhone however, incoming voice messages can never be rendered “live” in a real-time rendering mode because the message must be received in full before it can be rendered.
- YouMail is yet another example of an improvement over conventional email systems.
- YouMail provides a number of features, including visual voice mail, voice-to-text transcriptions of voicemails, a single inbox for both voice mails and emails, sharing or forwarding of voicemails via either email or instant messaging, and personalized greetings for different callers.
- voice messages with YouMail can never be reviewed “live” by the recipient. Rather the voice messages must be received in full before the recipient can access the message from his/her inbox and render the message asynchronously.
- Google Voice offers additional improvements to conventional email systems.
- Google Voice one telephone number may be used to ring multiple communication devices, such as the desktop office phone, mobile phone, and home phone of a user.
- Google Voice offers a single or unified voicemail box for receiving all messages in one location, as opposed to separate voicemail boxes for each communication device.
- Google Voice also offers a number of other features, such as accessing voice mails online over the Internet, automatic transcriptions of voice mail messages into text messages, the ability to create personalized greetings based on who is calling, etc.
- Google Voice also provides a recipient with the options to either (i) listen to incoming messages “live” as the media of the message is received (ii) or join the in a live conversation with the person leaving the message. With both options, the recipient can either listen live or enter a live conversation only at the current most point of the incoming message.
- a circuit connection always must be established before the recipient of a message can reply with either a live voice conversation or another voice message. For example if a person would like to respond to a voice mail by speaking to the sender of the message, they are still required to dial the telephone number of the sender of the message.
- some visual voice mail systems have a “compose” feature, allowing the recipient to generate a reply message. Once the message is created, it may be transmitted. With either case, a circuit connection must be established, before the live conversation can take place or the composed message sent.
- the call is “rolled-over” into the voice mail system of the called party if a circuit connection cannot be established, and a voice mail message may be left once a circuit connection is established with the voice mail system.
- a circuit connection has to be established with the voice mail system of the original sender before the message may be left.
- a voice and text mail application method and apparatus capable of supporting both synchronous and asynchronous voice communication is described herein.
- the application is configured to (i) simultaneously and progressively store media of an incoming message as the media is received at a communication device over the network and (ii) provides a “catch up” rendering option which enables the rendering of previously received media of the message starting at any previous point of the message and to catch up the rendering to the current point or head of the message as the media of the message is being received.
- the application also enables the (a) screening of the media of the incoming message as the media is received over the network; (b) the ability to join a live conversation with the sender of the incoming message as the media of the incoming message is received over the network, and/or (c) the option to ignore the media of the incoming message.
- FIG. 1 is a block diagram of the telecommunication system according to the invention.
- FIG. 2 is a diagram of a visual mail application running on client devices in the telecommunication system according to the invention.
- FIGS. 3A through 3C illustrate non-media data structures used in the visual mail application of the invention.
- FIGS. 4A and 4B are flow diagrams illustrating the operational steps of the visual mail application of the invention.
- FIGS. 5A through 5G are a series of screen shots showing the operation of the visual mail application of the invention.
- media as used herein is intended to broadly mean virtually any type of media, such as but not limited to, voice, video, text, still pictures, sensor data, GPS data, or just about any other type of media, data or information.
- a conversation is intended to mean a thread of messages, strung together by some common attribute, such as a subject matter or topic, by name, by participants, by a user group, or some other defined criteria.
- the messages of a conversation do not necessarily have to be tied together by some common attribute. Rather one or more messages may be arbitrarily assembled into a conversation.
- a conversation is intended to mean two or more messages, regardless if they are tied together by a common attribute or not.
- the system 10 includes a plurality of client devices 13 1 through 13 n , each running a visual voice and text mail application 12 1 through 12 n respectively.
- client devices 13 1 through 13 n each running a visual voice and text mail application 12 1 through 12 n respectively.
- the devices 13 communicate with one another over a communication services network 14 , including one or more communication servers 16 .
- One or more networks 18 1 through 18 n is provided to couple the plurality of devices 13 1 through 13 n to the communication services network 14 respectively.
- the networks 18 may be the Public Switched Telephone Network (PSTN), a cellular network based on CDMA or GSM for example, the Internet, a Wi-Fi network, a tactical radio network, a satellite network, or any other type of wired or wireless communication network, or a combination thereof.
- PSTN Public Switched Telephone Network
- the communication services network 14 is a network layer on top of or otherwise in communication with the various underlying networks 18 1 through 18 n . In different embodiments, the network layer 14 is either heterogeneous or homogeneous.
- Vox messages The visual mail applications 12 1 through 12 n running on devices 13 1 through 13 n communicate with one another and with servers 16 over the networks 18 1 through 18 n and network 14 using individual message units, referred to herein as “Vox messages”, which are described in detail below.
- Certain Vox messages are capable of transporting voice and text media as well as other media types.
- the users of the devices 13 may communicate with one another, either synchronously in a real-time “live” mode or asynchronously in a time-shifted messaging mode, and with the ability to seamlessly transition between the two modes.
- the application 12 includes a Multiple Conversation Management System (MCMS) module 20 , a Store and Stream module 22 , and an interface 24 provided between the two modules.
- MCMS Multiple Conversation Management System
- the MCMS module 20 and the Store and Stream module 22 communicate through interface 24 using an encapsulation format (e.g., JSON or XML) over a transport header protocol (e.g., Hypertext Transfer Protocol or HTTP).
- the application 12 functionally is similar to the client application described in U.S. application Ser. Nos. 12/028,400 (U.S. Publication No. 2009/0003558), 12/253,833 (U.S. Publication No.
- the MCMS module 20 includes a number of modules and services for creating, managing and conducting multiple conversations.
- the MCMS module 20 includes a user interface module 20 A for supporting the audio and video functions on the device 13 , rendering/encoding module 20 B for performing rendering and encoding tasks, a contacts service 20 C for managing and maintaining information needed for creating and maintaining contact lists (e.g., telephone numbers and/or email addresses), a presence status service 20 D for both sharing the online status of the user of the device 13 as well as the online status of the other users on the network 14 .
- the MCMS data base 20 E stores and manages the meta data for messages and conversations conducted using the application 12 running on a device 13 as well as contact and presence status information.
- the MCMS database 20 E may be either a document-orientated or a relational database.
- the Store and Stream module 22 includes a Permanent Infinite Memory Buffer or PIMB 26 for storing, in an indexed format, the media of received and sent messages.
- the store and stream module 22 also includes an encode-receive module 34 , net receive module 36 , transmit module 38 and a render module 40 .
- the encode-receive module 34 performs the function of receiving, encoding, indexing and storing in the PIMB 26 media created using the application 12 on device 13 in a time-indexed format.
- the net receive module 36 performs the function of indexing and storing in the PIMB 26 the media contained in messages received from other devices 13 over the network 18 in the time-indexed format.
- the transmit module 38 is responsible for transmitting the media of messages created using the application 12 to other recipients over the network 18 .
- the render module 40 enables the application 12 to render the media of messages on device 13 , either synchronously in the near real-time mode or asynchronously in a time-shifted mode by retrieving and rendering the media stored in
- the MCMS module 20 and the Store and Stream module 22 also each communicate with various hardware components provided on the device 13 , including, but not limited to, encoder/decoder hardware 28 , media drivers 30 and network interface 32 .
- the encoder/decoder hardware 28 is provided for encoding the media, such as voice, text, video or sensor data, generated by a microphone, camera, keyboard, touch-sensitive display, etc. provided on or associated with the device 13 and decoding similar media before it is rendered on the device 13 .
- Media drivers 30 are provided for driving the media generating components, such as speaker and/or a display (not illustrated) after the media has been decoded.
- a network interface is provided 32 for connecting device 13 running the application 12 to a network 18 , either through a wireless or wired connection.
- the application 12 runs or is executed by the underlying processor embedded in device 13 , such as a microprocessor or microcontroller.
- the duration of the media stored in the PIMB 26 may vary.
- the storage may be permanent, meaning the stored media is available virtually forever or at least until the system runs out of storage.
- Various retention rates and strategies may be employed to make effective use of storage resources.
- Many possible implementations exist for the physical storage implementation of the PIMB 26 including, but not limited to: RAM, Flash memory, hard drives, optical media, or some combination thereof.
- the PIMB 26 is also “infinite” in size, meaning the amount of data that can be stored in the PIMB 26 is not inherently limited. This lack of limit is in comparison to existing jitter buffer technology that discards data as soon as it is rendered.
- the PIMB 26 may be implemented using a small and relatively fast RAM cache memory coupled with a hard drive or other non-volatile memory for persistent storage. As the physical storage capacity of the PIMB 26 is exceeded, the media is maintained on a server 16 (as described below) for later retrieval on demand. User criteria or a replacement algorithm, such as least-recently-used, or first-in-last-out, is used to control the actual data stored in the PIMB 26 , the data that is maintained on a server 16 or archived at any point in time.
- the PIMB 26 further provides the attributes of an indexed file storage system and the random access attributes of a database.
- the media of any number of conversations may be stored in the indexed format for later retrieval and review.
- the certain meta data associated with the messages of a conversation such as its originator and its length, may be also stored in the PIMB 26 .
- the indexed media payloads and certain meta data can be stored for a designated period of time. Once the age of the media exceeds the designated period, the payloads and data are discarded. In another embodiment, payloads can be discarded based on the sender and/or the recipient of the message containing the payload, or the topic of the conversation or messages associated with the payload. In yet other embodiments, payloads and data may be marked for transience, meaning the messages will not be stored in the PIMB 26 beyond the requirements needed for immediate transmission or rendering.
- persistent storage may have multiple meanings, depending on a specific implementation.
- media is transient, meaning if the media is stored at all, it is temporarily buffered until it is either transmitted or rendered. After being either transmitted or rendered, the media is irretrievably lost.
- persistent storage as used herein is intended to be broadly construed and mean the storage of media and meta data from indefinitely to any period of time longer than any transient storage needed to either transmit or render media “live” in real-time.
- Each server 16 runs an application very similar to the application 12 .
- the application running on the server(s) 16 include the MCMS module 20 , the Store and Stream module 22 , and interface 24 between the two modules 20 , 22 .
- the notable differences between the application running on the server(s) 16 and the application 12 is (i) the application on the server(s) 16 is configured to support many users (i.e., multiple tenants) of devises 13 running the application 12 ; (ii) the PIMB 26 on the server(s) 16 is typically much larger than on a communication device 13 since the servers support multiple users; and (iii) many of the user interface, media encoding and media rendering modules, such as encode-receive 34 and render 40 , are not present because these functions and services are not performed on the network 14 .
- the server application see U.S. application Ser. Nos. 12/028,400, 12/253,833, 12/253,820 and 12/253,833, all incorporated by reference herein for all purposes.
- Vox messages There are two types of Vox messages, including (i) messages that do not contain media and (ii) messages that do contain media.
- Vox messages that do not contain media are generally used for message meta data, such as media headers and descriptors, contacts information, presence status information, etc.
- the Vox messages that contain media are used for the transport of media.
- the Vox message 50 includes an transport header field and an encapsulation format field for storing various objects, such as contact information, presence status information for the user of a device 13 , or message meta data, as illustrated in FIG. 3B .
- objects such as contact information, presence status information for the user of a device 13 , or message meta data, as illustrated in FIG. 3B .
- FIG. 3B the list of objects provided in FIG. 3B is not exhaustive.
- Other objects such as but not limited to, user location update information, user log-in information, information pertaining to the authentication of users, statistical information, or any machine-to-machine type message, may also be encapsulated in the format filed of Vox messages 50 .
- Contact information includes the name, address (e.g., telephone number and/or email address), or other attributes for each of the contacts in the contact list of the user of a device 13 running application 12 .
- the contact information is used to create contact lists, and to direct messages to intended recipients using the addressing information associated with the individual contacts in the contact list.
- Message meta data provides application 12 level attributes for Vox messages 50 .
- attributes include a message identifier or ID, the identification of the message originator, a recipient list, and a message subject.
- the identifier information may be used for a variety of reasons, including, but not limited to, building contact lists and/or associating media with messages.
- the set of attributes for a given message may be extensible, and not all attributes necessarily need to be supported by all application 12 enabled devices 13 .
- Presence status information may identify the users that are currently authenticated by the system 10 and/or if a given user is reviewing a message live in the real-time mode or not.
- the presence data is therefore useful in determining, in certain embodiments, how messages are delivered across the networks 14 and 18 .
- a transport protocol optimized for timely (i.e., real-time) delivery may be used, whereas a transport protocol optimized for efficient delivery of messages may be used when the presence status indicate the authenticated user is not reviewing the message live.
- Vox message 52 that contains media is illustrated.
- the Vox message 52 is essentially the same as a non-media type Vox message 50 , except it includes an additional field for media.
- the media field is capable of containing one or multiple media types, such as, but not limited to, voice, video, text, sensor data, still pictures or photos, GPS data, or just about any other type of media, or a combination thereof.
- the transport header field in Vox messages 50 and 52 includes the seven layers of the Open System Interconnect Reference Model or OSI model, including from bottom to top: (i) a physical layer for media, signal and binary transmission; (ii) a data link for physical addressing, network, transport; (iii) a network layer for path determination and logical addressing; (iv) a transport layer for end-to-end connections and reliability; (v) a sessions layer for inter-host communication; (vi) a presentation layer for data presentation and encryption; and (vii) an application layer for interacting with the application 12 operating on device 13 .
- the information contained in the encapsulation format field is layered on top of the application layer of the transport header of each Vox message 50 or 52 .
- the seven layers of the OSI model are well known, a detailed explanation for each layer is not provided herein.
- the application layer may be HTTP, SMTP, SIP, or any other type of application layer.
- the encapsulation format may be JSON or XML or any other type of structured data serialization format. It should be noted that the specific transport headers and encapsulation formats as listed herein are merely exemplary. Any transport header or encapsulation format may be used, including new protocols developed in the future, or those currently known, but not listed herein.
- Vox messages 50 or 52 By layering Vox messages 50 or 52 on top of the application layer, the messages are transmitted, and routed to a recipient, as is well known in the art. As a result, a new transport protocol for the application 12 is not needed. Instead, the system 10 takes advantage of current packet based communication networks running over the existing telecommunications infrastructure.
- the information encapsulated in the format field of Vox messages is typically stored in the MCMS database 20 E of the MCMS module 20 .
- this information may be stored in the PIMB 26 , or in both the MCMS database 20 E and the PIMB 26 .
- the media of Vox messages 52 is progressively and simultaneously (i) stored in the PIMB 26 in an indexed format and (ii) placed into the packet payloads of the underlying transport layer protocol and streamed over the underlying network(s) to intended recipients.
- the incoming streaming media of Vox messages 52 is extracted from the incoming packets, and simultaneously and progressively stored in the indexed format in the PIMB 26 of the receiving device 13 as the media is received. If the receiving device 13 is in the synchronous or real-time mode, the render function 40 also progressively renders the incoming streaming media progressively and simultaneously as it is being received.
- the render function 40 may retrieve the received media from the PIMB 26 at an arbitrary later time, defined by the user of the receiving device 13 .
- the media is reviewed asynchronously in the time-shifted mode.
- the media of both transmitted and received Vox messages 52 is stored in the PIMB 26 in the indexed format, the media of the messages may be retrieved and rendered at anytime.
- conversations may be constructed by threading together individual messages.
- the messages of a conversation may be assembled using a defined attribute or in some other arbitrary way.
- a conversation may include messages of different types of media, such as both voice and text, as well as other media types, such as video, still pictures, sensor data, GPS data, or just about any other type of media, data or information.
- the messages of a conversation may also be rendered sequentially in time-indexed order, or one at a time in any order.
- indexing messages it is also possible to retrieve the media of a message starting at a particular offset. For example, if a message is 20 seconds long, it may be possible to retrieve and render the media of the message starting at an arbitrarily selected offset point of the message, and not always at the starting time of the message.
- the ability to (i) progressively and store and transmit media as it is being created on the transmitting device 13 running application 12 and (ii) progressively store and render the media on the receiving devices 13 running application 12 allow the participants to converse in real-time, providing a user experience similar to a full-duplex telephone conversation.
- the storage of the media in the PIMB 26 allows the participants to participate in the conversation asynchronously in a time-shifted mode, providing a user experience similar to conventional messaging systems (e.g., email of SMS text messaging), but with the option of sending or receiving voice messages.
- the ability of the Vox messages 52 to carry multiple media types it is also possible for the participants of a conversation to converse using different types of media. For example, a person may send a text message and receive a reply voice message, or vice versa.
- the simultaneous and progressive storage of both transmitted media as it is being created or received media as it is being received enables a host of rendering options provided on the client 12 enabled devices 13 .
- rendering options include, but are not limited to: pause, replay, play faster, play slower, jump backward, jump forward, catch up to the most recently received media or Catch up to Live (CTL), or jump to the most recently received media.
- CTL Catch up to Live
- the storage of media and certain rendering options allow the participants of a conversation to seamlessly transition a conversation from a time-shifted mode to the real-time mode and vice versa.
- the catch up to the most recently received media and CTL rendering options are very similar, but are not necessarily the same.
- the rendering of media out of the PIMB 26 at the faster rate occurs until the rendering has caught up to the most recently received media.
- this feature allows the recipient to quickly review previously received portions of the message and then seamlessly merge into rendering the media of the message as it is received over the network.
- the CTL rendering option requires the delivery of real-time media, as the sender creates the media. After the seamless transition occurs, the recipient is rendering the media “live” as it is being created and transmitted across the network 14 , as opposed to the delivery of a previously recorded message.
- a conversation may seamlessly transition from the real-time mode to the time-shifted mode.
- a party participating in a real-time or “live” conference call among multiple parties.
- the “live” rendering of incoming media stops, thus seamlessly transitioning the participation of that party that selected the pause option from the real-time to time-shifted mode.
- the party may rejoin the conversation “live” assuming it is still ongoing in the real-time mode.
- the “missed” media during the pause may be reviewed at any arbitrary later time in the time-shifted mode from the PIMB 26 ;
- a recipient may receive a text message and elect to respond with a voice message, or vice-versa.
- the parties may engage in either a “live” conversation in the real-time mode or asynchronously send voice and/or text messages back and forth in the time-shifted mode. Since other known communication platforms, at least at the core level, are typically dedicate to just one media type, the ability to converse with multiple media types, using a single or unified communication platform, is usually not possible.
- Another unique aspect of the system 10 is that the media payloads generated by the visual mail application 12 running on a device 13 are stored in multiple locations. Not only are the payloads stored in the PIMB 26 of the transmitting and receiving devices 13 , but also in a PIMB (not illustrated) of the server(s) 16 on the communication services network 14 . This feature provides the system 10 with both resilience and operability, even when network conditions are poor or when a participant of a conversation is not connected to the network.
- a flow diagram 60 A illustrating the operational steps of the application 12 in response to receiving an incoming “live” message is shown.
- a recipient is notified in step 62 as an incoming message is received.
- the notification therefore occurs before the message is received in full and preferably occurs as soon as possible, for example, when the meta data associated with the message is initially received, indicating that a sender is getting ready to or is in the process of sending a message.
- the notification may include, in accordance with various embodiments, a visual notification, an audio notification, or a combination of both. All incoming meta data and media is simultaneously and progressively stored as the media is received in the PIMB 26 of the receiving communication device 13 , as provided in step 64 .
- the recipient has a number of options, as represented by the decision diamond 66 A.
- a first option is to simply ignore the message. When ignored, the recipient always has the option to retrieve and render the media of the message from the PIMB 26 at any later arbitrary time.
- the recipient may elect to review the incoming voice message in real-time or “live”.
- the recipient needs to decide (decision diamond 70 A) if they wish to review the message from the beginning or from the current point in the message.
- the CTL rendering function (step 72 A) is implemented, causing the media to be retrieved from the PIMB 26 and rendered at a rate faster than when it was originally encoded.
- the application 12 continually measures (decision 74 A) when the rendering out of the PIMB 26 at the faster rate has caught up to the live point of the message as it is being received.
- the rendering seamlessly transitions from the asynchronous rendering mode to the synchronous real-time mode (step 76 A).
- the recipient elects to review the incoming media at the current point of the message, then the media of the message is rendered live (step 76 A) as it is received.
- the recipient may elect to respond to the incoming message either during or immediately after the message is received in full.
- the recipient may elect to respond by engaging in a live conversation (step 80 ) with the sender of the incoming message, create a reply voice message (step 82 ), typically after reviewing the incoming media in full, or reply with a text message (step 84 ), also typically after reviewing the incoming message in full.
- the parties will engage in a real-time conversation, providing a user experience similar to a full duplex telephone call. Whereas with the latter two options, the conversation is asynchronous, similar to most messaging systems.
- the outgoing media is both simultaneously and progressively transmitted (step 86 ) and stored in the PIMB as the media is created (step 88 ).
- the recipient may wish to engage in a live conversation as soon as possible after receiving the notification, without first receiving any previous media associated with the incoming message.
- the recipient may elect to first review the previous portion of the incoming message using the CTL rendering option, and then, join the conversation “live” after reaching the catch-up point.
- the recipient may elect to “screen” or review the incoming message “live”, but not engage in a real-time conversation. When a message is screened, the sender is typically not notified that the recipient is reviewing the message as it is received.
- the sender could be notified that the recipient is screening the message, but has elected not to engage in a live conversation.
- the recipient may initially ignore the message, review it at an arbitrary later time, and then reply, with either a voice or text message.
- the participants of the conversation may elect to continue the conversation in the asynchronous time-shifted mode, or may transition into the real-time mode.
- a flow chart 60 B illustrating the catch up to the most recently received media of an incoming message.
- the flow chart 60 B is essentially the same as the flow chart 60 A of FIG. 4A , but with several differences.
- decision diamond 66 B the recipient has the option of reviewing the incoming message as received. If this option is selected, then the recipient decides to review the incoming message either at the current point (step 76 B) or at the beginning of the message (decision 70 B). If from the beginning, then the previously received media of the message is rendered (step 72 B) from the PIMB 26 at a rate faster than it was originally decoded. When the rendering at the media from the PIMB 26 at the faster rate catches up to the current point (decision 74 B), then the rendering seamlessly transitions from the PIMB to the current point (step 76 B) as the media of the message is received.
- the recipient may also elect to either ignore the incoming message or respond. Either option is essentially the same as described above with regard to FIG. 4A , but with one minor exception.
- the recipient may try to engage in a “live” conversation (step 80 ) with the party who sent the prerecorded message. If the party is available and they wish to converse in real-time, then a live conversation may take place. On the other hand if the party is not available, or elects not to converse in real-time, then a live conversation will not take place.
- FIGS. 4A and 4B illustrate the differences between the catch up to live and the catch up to the most recent media of an incoming message.
- media is rendered out of the PIMB 26 faster than it was originally encoded.
- the faster rendering out of the PIMB catches up to the current most point of the message as it is being received, then with both rendering options, there is a seamless transition to rendering the media of the message as it is received over the network.
- the main difference between the two options is that with CTL, the media of the incoming message is being rendered “live” as the media is created and transmitted over the network, whereas with the catch up to the most recent media option, the media is not being created live.
- FIGS. 5A through 5G are a series of screen shots of the display of a communication device 13 showing the operation of the visual voice and text mail application 12 .
- the display 90 on a device 13 used by a person named Jill is shown.
- the visual voice and text mail display 90 shows a number of messages, both text and voice, received by Jill.
- Jill has received text messages from her “Mom”, “Poker Buddies”, and the members of her “Weekly Status Meeting” at work.
- Jill has received voice mail messages from Dennis Jones, Matt Smith, and Judy Li.
- FIG. 5B shows the display 80 on Jill's device 13 after receiving notification that Sam Fairbanks is sending her a message.
- the notification is a window 92 appearing on the display 90 of Jill's device 13 .
- an indication is provided that Sam Fairbanks is leaving a message.
- Jill is presented with a number of options, including a “Review” icon 94 which will allow Jill to review (i.e., screen) the incoming message in real-time as it is being received, a “Talk Live” icon 96 that allows Jill to begin speaking live with Sam in the real-time mode, a “Text” icon 98 that allows Jill to send an asynchronous text message to Sam, or a “Message” icon 100 that allows Jill to send an asynchronous reply voice message to Sam.
- audible notification signals such as a ring tone or alarm, may optionally be used in cooperation with the window 92 .
- FIG. 5C shows the display 90 on Jill's device 13 after selecting the Review icon 94 .
- a window 104 appears within the display 90 .
- the window 104 provides a number of rendering options, including play, pause, replay, play faster, play slower, jump backward, jump forward, jump to the most recently received media, or catch up to the most recently received media (e.g., Catch Up to Live or CTL), as represented by the “rabbit” icon.
- the media of the incoming message is rendered at the same rate the media was originally encoded.
- This option allows the Jill to review or screen the incoming message from Sam.
- the Sam is not notified that Jill is screening the message.
- Sam is notified that Jill is reviewing the message.
- the “rabbit” CTL icon has been selected, causing Sam's message to be rendered from the beginning (“You won't believe this. But my car broke down . . . ”) at rate faster than the media was originally encoded.
- Sam and Jill may engage in a “live” conversation in the real-time mode.
- a message “scrubber” bar and timer may also be displayed.
- FIG. 5D shows both Sam's device 13 A and Jill's device 13 B when engaged in a “live” real-time conversation.
- Jill may elect to participate in a synchronous conversation with Sam either by selecting the “Talk Live” icon (as illustrated in FIG. 5 ) or using the CTL feature (as described above with regard to FIG. 5C ). With the former, Jill may miss a portion of Sam's message before the point where she joins live, wherein with the latter option, she will hear the message from the beginning. Regardless of which method is used, the two parties may talk synchronously with one another in the real-time mode, as represented by the “LIVE” arrow 106 between the two devices, across the networks 14 and 18 .
- any media consumed “live” in the real-time mode is stored in the PIMB 26 on Jill's device 13 (as well as possibly Sam's device 13 and any intermediate servers 16 ) for later review.
- FIG. 5E shows Jill's device 13 after selecting the “text” icon 98 .
- a keyboard 108 appears on the display 90 of Jill's device 13 .
- the message appears in text window 110 .
- the “Send” icon is used to asynchronously send or transmit the text message when it is complete.
- each keystroke may be transmitted as it is entered, providing the appearance that the text message is “synchronous”, rather than asynchronous. As the transmission of each keystroke is actually a discrete event, the transmission of the text message one letter at a time is actually multiple asynchronous transmissions, one after the other. The transmission of each keystroke is therefore not a synchronous (i.e. continuous) transmission.
- the keyboard is presented in the display 90 .
- communication devices having either a built-in hardware keyboard, as provided for example on some “smart” mobile phones, or an associated keyboard, such as with a desktop or laptop computer, then there is no need to superimpose a keyboard in the display 90 .
- FIG. 5F shows Jill's device after selecting the Message icon 100 .
- the display 90 on Jill's device 13 shows the previous conversation history with Sam Fairbanks.
- the conversation history includes media “bubbles” for both voice or text messages.
- text messages the actual text message (or a portion thereof) is provided in each text bubble.
- voice messages the name of the sender and the duration of the voice message are presented in each bubble.
- the corresponding media of the message is retrieved from the PIMB 26 on Jill's device, and is rendered.
- the message is displayed in its entirety on the display 90 .
- voice the message is rendered through a speaker on the device.
- the display 90 also includes “Start” and “End” message icons 112 and 114 respectively.
- Start icon 112 Jill may start creating her reply message to Sam.
- Jill informs Sam that she cannot talk because she is in a meeting, but will pick him up in 20 minutes.
- the End icon 114 is selected, terminating the message.
- FIG. 5G illustrates Jill's device 13 if she elects to ignore the incoming message from Sam Fairbanks. After the complete message is left, the display 90 on Jill's device 13 is updated to show that Sam Fairbanks has left a message.
- Jill may review the message from Sam Fairbanks asynchronously, in the time-shifted mode. Alternatively, Jill may elect to not review the message from Sam at all, either by actively deleting the message or ignoring it for a predetermined period of time, whereupon in some but not necessarily all embodiments, the message is automatically deleted.
- Jill may optionally reply with another asynchronous voice or text message, attempt to talk live in the real-time mode with Sam, or not reply at all.
- both Sam and Jill are using application 12 enabled devices 13 .
- the transmission and receipt of messages regardless if consumed synchronously in the real-time or live mode or asynchronously in the time-shifted mode, may occur without a circuit connection, as required for conventional telephone calls.
- any media contained in the Vox messages 50 are transmitted or “streamed” between the two parties over the network 14 and the network(s) 18 as the media becomes available.
- the ability to stream the media progressively and simultaneously as the media is created on the transmitting device 13 and rendered on the receiving device 13 creates a user experience that is virtually identical to a conventional full-duplex telephone conversation.
- asynchronous messaging in the time-shifted mode is also possible.
- the various rendering options makes it possible for the participants to seamlessly transition a conversation between the two modes.
- a legacy communication device such as a conventional landline phone incapable of running the application 12
- one or more of the servers 16 on the network 14 is configured as a “gateway” server, which runs the application 12 on behalf of the legacy device.
- the Vox messages 50 containing the media are sent back and forth to the gateway server 16 , where all the media is stored in the local PIMB on behalf of the legacy device.
- the legacy device can then either transmit media or receive media, either synchronously in the real-time mode or asynchronously in the time-shifted mode, using a variety of control methods, such as Dual Tone Multi-Frequency (DTMF) commands, voice activated commands, commands generated through a browser, radio signals, or any combination thereof.
- DTMF Dual Tone Multi-Frequency
- a (or more) legacy device may communicate with either a application 12 enabled device 13 or another legacy device in the same manner as described herein, as if the application 12 resided on the legacy device.
- the visual voice and text mail application 12 as described herein provides a number of features and advantages previously not provided or available with conventional visual voice or text applications. These features and advantages include:
- the application 12 provides the advantages of: (i) having text and voice messages synchronized to your phone in real time. No dialing into a separate voice mail system is necessary; (ii) the ability to reply instantly to other users of application 12 enabled devices 12 . No dialing, interrupting, or listening to greetings is necessary; (iii) the ability to review or listen to messages as they arrive and send messages as you speak; (iv) the ability to provide and receive real-time presence information for other users of the application 12 ; (v) easily keep track of incoming and outgoing messages; (vi) construct conversation histories of threaded messages; (vii) the ability to mix both voice, text and other media types within the context of a single conversation; and (viii) conduct multiple party conversations.
- the application 12 allows a user to see all messages on the display of their device 13 and to scroll up and down to see the entire message history of a conversation.
- the application 12 also allows the user to render the media of messages in any order, to sort messages, or to filter messages.
- the application 12 further provides a number of advantages previously not possible. Certain conversations, which may be considered more important than others, may be prioritized. For example while a person is driving their car, the application 12 on a user's mobile phone may be set so that incoming messages from family members are automatically rendered “live”, while the messages pertaining to other conversations are stored in the PIMB 26 for later retrieval and review. By prioritizing conversations and messages in this manner, high priority messages can be heard automatically, while all other messages may be reviewed in a time-shifted mode. Important conversations can be monitored, while the messages pertaining to lower priority messages are available for later review. Alternatively the user may elect to join the conversation “live” using currently available hands-free technology, such as headsets and Bluetooth®.
- the application 12 may be integrated with other communication systems, such as SMS and IM systems, as well as integrate with other applications, such as an address book, calendar, call logs, etc.
- the present invention may be applied to any communication systems, including mobile or cellular phone networks, police, fire, military taxi, and first responder type communication systems, legacy circuit-based networks, VoIP networks, the Internet, or any combination thereof.
- devices 13 may be one of the following: land-line phone, wireless phone, cellular phone, satellite phone, computer, radio, server, satellite radio, tactical radio or tactical phone
- the types of media besides voice that may be generated on a communication device 13 and transmitted may further include video, text, sensor data, position or GPS information, radio signals, or a combination thereof.
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Computer Networks & Wireless Communication (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- General Engineering & Computer Science (AREA)
- Telephonic Communication Services (AREA)
- Information Transfer Between Computers (AREA)
Abstract
Description
- This application claims the benefit of priority to U.S. Provisional Patent Application Nos. 61/256,866 filed Oct. 30, 2009 and 61/259,094 filed Nov. 6, 2009, both entitled “Voice and Text Mail Application For Communication Devices,” both of which are incorporated herein by reference for all purposes. This application is also a Continuation-in-Part (CIP) of co-pending U.S. patent application Ser. No. 12/028,400 entitled “Telecommunication and Multimedia Management Method and Apparatus,” filed Feb. 8, 2008, which is incorporated by reference herein for all purposes.
- 1. Field of the Invention
- This invention relates to communications, and more particularly, to a visual voice and text mail method and application capable of supporting both synchronous and asynchronous voice communication between communication devices.
- 2. Description of Related Art
- In spite of being a mature technology, telephony has changed little over the years. Similar to the initial telephone system developed over a hundred years ago, a telephone call today still requires a circuit connection between the parties before voice can be transmitted. If a circuit connection is not established, for whatever reason, no communication can take place.
- A known advancement in telephony is voice mail. If a call is made and the recipient does not answer the phone, then the call is “rolled-over” into a separate voice mail system, typically maintained on a voice mail server or an answering machine connected to the phone of the recipient. The telephone and voice mail systems, however, are not integrated. Rather, the voice mail services are “tacked-on” to the underlying phone system. The fact that the two systems are separate and distinct, and not integrated, creates a number of inconveniences and inefficiencies.
- Consider a real-world situation where two parties wish to have a brief conversation. If party A makes a call while party B is busy, then after the phone rings numerous times, party A is eventually rolled over into the voice mail of party B. Only after listening to and navigating through the voice mail system, can party A leave a message. To retrieve the message, party B is required to call into the voice mail system, possibly listen to other messages first in the queue, before listening to the message left by party A. In reply, party B may call party A. If party A is busy, the above process is repeated. This sequence may occur multiple times as the two parties attempt to reach each other. Eventually one of the parties will place a call and a live circuit will be established. Only at this point is it possible for the two parties to engage in a live conversation. The difficulty and time wasted for the two parties to communicate through voice mail, as highlighted in this real-world example, is attributable to the fact that the telephone system and voice mail are two different systems that do not interoperate very well together.
- With the advent of the Internet, telephony based on Voice over Internet Protocol or VoIP has become popular. Despite a number of years of development, VoIP services today are little different than traditional telephony. Add on services like voicemail, email notifications and phonebook auto-dialing, are all common with VoIP. The fundamental communication service of VoIP, however, remains the same. A party is still required to place a call and wait for a connection to be made. If the recipient does not answer, the call is rolled over into voice mail, just like conventional telephony. VoIP has therefore not changed the fundamental way people communicate.
- Visual voice mail is a recent advancement in telephony. With visual voice mail, a list of received messages is visually presented on a display of a communication device of a recipient, such as a mobile phone. The recipient may select any of the messages in the list to either listen to or delete, typically by simply touching the display adjacent where the message appears. When a message is selected for review, the media of the message is immediately rendered, without the user having to either (i) dial-in to the voice mail system or (ii) listen to previously received messages in the queue. In various implementations of visual voice mail, the message selected for review either resides at and is locally stored on the communication device itself, or is retrieved from the mail server and then rendered. When a message is selected for deletion, the selected message is removed from the list appearing on the display and also possibly removed from storage, either on the communication device itself, the network, or both.
- One current example of a product including visual voice mail is the iPhone by Apple Inc. of Cupertino, Calif. With visual voice mail on the iPhone, incoming messages are first received and stored on the voice mail server of a recipient. Once the message is received in full, the message is downloaded to the iPhone of the recipient and the recipient is notified. At this point, the recipient may review the message, or wait to review the message at an arbitrary later time. With visual voice mail on the iPhone, however, incoming voice messages can never be rendered “live” in a real-time rendering mode because the message must be received in full before it can be rendered.
- YouMail is yet another example of an improvement over conventional email systems. YouMail provides a number of features, including visual voice mail, voice-to-text transcriptions of voicemails, a single inbox for both voice mails and emails, sharing or forwarding of voicemails via either email or instant messaging, and personalized greetings for different callers. Like visual voice mail on the iPhone, voice messages with YouMail can never be reviewed “live” by the recipient. Rather the voice messages must be received in full before the recipient can access the message from his/her inbox and render the message asynchronously.
- “Google Voice” offers additional improvements to conventional email systems. With Google Voice, one telephone number may be used to ring multiple communication devices, such as the desktop office phone, mobile phone, and home phone of a user. In addition, Google Voice offers a single or unified voicemail box for receiving all messages in one location, as opposed to separate voicemail boxes for each communication device. Google Voice also offers a number of other features, such as accessing voice mails online over the Internet, automatic transcriptions of voice mail messages into text messages, the ability to create personalized greetings based on who is calling, etc. In addition, Google Voice also provides a recipient with the options to either (i) listen to incoming messages “live” as the media of the message is received (ii) or join the in a live conversation with the person leaving the message. With both options, the recipient can either listen live or enter a live conversation only at the current most point of the incoming message.
- With Google Voice, however, the rendering options for reviewing incoming messages are limited. There is no ability to; (i) asynchronously review the previous portions of a message, behind the current most point, while the message is being left; (ii) seamlessly transition the review of an incoming message from an asynchronous time-shifted mode to a synchronous real-time mode after the asynchronous rendering of the media of the message has caught up to the “live” point of the incoming message; or (iii) reply to an incoming voice message with a text message, or vice versa, using a single unified communication application.
- Another drawback to each of the voice mail systems mentioned above is that a circuit connection always must be established before the recipient of a message can reply with either a live voice conversation or another voice message. For example if a person would like to respond to a voice mail by speaking to the sender of the message, they are still required to dial the telephone number of the sender of the message. Alternatively, some visual voice mail systems have a “compose” feature, allowing the recipient to generate a reply message. Once the message is created, it may be transmitted. With either case, a circuit connection must be established, before the live conversation can take place or the composed message sent. With the live conversation reply alternative, the call is “rolled-over” into the voice mail system of the called party if a circuit connection cannot be established, and a voice mail message may be left once a circuit connection is established with the voice mail system. With the message option, a circuit connection has to be established with the voice mail system of the original sender before the message may be left.
- A voice and text mail application method and apparatus capable of supporting both synchronous and asynchronous voice communication is described herein. The application is configured to (i) simultaneously and progressively store media of an incoming message as the media is received at a communication device over the network and (ii) provides a “catch up” rendering option which enables the rendering of previously received media of the message starting at any previous point of the message and to catch up the rendering to the current point or head of the message as the media of the message is being received. By rendering the previously received media of the incoming message out of storage at a rate faster relative to when the media of the incoming message was originally encoded, eventually the rendering will catch up and seamlessly transition the rendering from an asynchronous time-shifted mode out of storage to a synchronous mode as the media of the message is received over the network. In various alternative embodiments, the application also enables the (a) screening of the media of the incoming message as the media is received over the network; (b) the ability to join a live conversation with the sender of the incoming message as the media of the incoming message is received over the network, and/or (c) the option to ignore the media of the incoming message.
- The invention may best be understood by reference to the following description taken in conjunction with the accompanying drawings, which illustrate specific embodiments of the invention.
-
FIG. 1 is a block diagram of the telecommunication system according to the invention. -
FIG. 2 is a diagram of a visual mail application running on client devices in the telecommunication system according to the invention. -
FIGS. 3A through 3C illustrate non-media data structures used in the visual mail application of the invention. -
FIGS. 4A and 4B are flow diagrams illustrating the operational steps of the visual mail application of the invention. -
FIGS. 5A through 5G are a series of screen shots showing the operation of the visual mail application of the invention. - It should be noted that like reference numbers refer to like elements in the figures.
- The invention will now be described in detail with reference to various embodiments thereof as illustrated in the accompanying drawings. In the following description, specific details are set forth in order to provide a thorough understanding of the invention. It will be apparent, however, to one skilled in the art, that the invention may be practiced without using some of the implementation details set forth herein. It should also be understood that well known operations have not been described in detail in order to not unnecessarily obscure the invention.
- The term “media” as used herein is intended to broadly mean virtually any type of media, such as but not limited to, voice, video, text, still pictures, sensor data, GPS data, or just about any other type of media, data or information.
- As used herein, the term “conversation” is also broadly construed. In one embodiment, a conversation is intended to mean a thread of messages, strung together by some common attribute, such as a subject matter or topic, by name, by participants, by a user group, or some other defined criteria. In another embodiment, the messages of a conversation do not necessarily have to be tied together by some common attribute. Rather one or more messages may be arbitrarily assembled into a conversation. Thus a conversation is intended to mean two or more messages, regardless if they are tied together by a common attribute or not.
- Referring to
FIG. 1 , a block diagram of the telecommunication system according to the invention is shown. Thesystem 10 includes a plurality ofclient devices 13 1 through 13 n, each running a visual voice andtext mail application 12 1 through 12 n respectively. Although theapplication 12 on each device is illustrated external to eachdevice 13, it should be understood that theapplication 12 is actually embedded in eachdevice 13. Thedevices 13 communicate with one another over acommunication services network 14, including one ormore communication servers 16. One ormore networks 18 1 through 18 n, is provided to couple the plurality ofdevices 13 1 through 13 n to thecommunication services network 14 respectively. In various embodiments, thenetworks 18 may be the Public Switched Telephone Network (PSTN), a cellular network based on CDMA or GSM for example, the Internet, a Wi-Fi network, a tactical radio network, a satellite network, or any other type of wired or wireless communication network, or a combination thereof. Thecommunication services network 14 is a network layer on top of or otherwise in communication with the variousunderlying networks 18 1 through 18 n. In different embodiments, thenetwork layer 14 is either heterogeneous or homogeneous. - The
visual mail applications 12 1 through 12 n running ondevices 13 1 through 13 n communicate with one another and withservers 16 over thenetworks 18 1 through 18 n andnetwork 14 using individual message units, referred to herein as “Vox messages”, which are described in detail below. Certain Vox messages are capable of transporting voice and text media as well as other media types. By sending Vox messages back and forth over thecommunication services network 14 and thenetworks 18, the users of thedevices 13 may communicate with one another, either synchronously in a real-time “live” mode or asynchronously in a time-shifted messaging mode, and with the ability to seamlessly transition between the two modes. - Referring to
FIG. 2 , a block diagram of the architecture of the visual voice andtext mail application 12 is shown. Theapplication 12 includes a Multiple Conversation Management System (MCMS)module 20, a Store andStream module 22, and aninterface 24 provided between the two modules. In one embodiment, theMCMS module 20 and the Store andStream module 22 communicate throughinterface 24 using an encapsulation format (e.g., JSON or XML) over a transport header protocol (e.g., Hypertext Transfer Protocol or HTTP). Theapplication 12 functionally is similar to the client application described in U.S. application Ser. Nos. 12/028,400 (U.S. Publication No. 2009/0003558), 12/253,833 (U.S. Publication No. 2009/0168760), 12/253,820 (U.S. Publication No. 20090168759) and 12/253,833 (U.S. Publication No. 2009/0168760), all incorporated by reference herein for all purposes. The individual modules are briefly described below. For more details, the above-listed, co-pending applications should be reviewed. - The
MCMS module 20 includes a number of modules and services for creating, managing and conducting multiple conversations. TheMCMS module 20 includes auser interface module 20A for supporting the audio and video functions on thedevice 13, rendering/encoding module 20B for performing rendering and encoding tasks, acontacts service 20C for managing and maintaining information needed for creating and maintaining contact lists (e.g., telephone numbers and/or email addresses), apresence status service 20D for both sharing the online status of the user of thedevice 13 as well as the online status of the other users on thenetwork 14. TheMCMS data base 20E stores and manages the meta data for messages and conversations conducted using theapplication 12 running on adevice 13 as well as contact and presence status information. In alternative embodiments, theMCMS database 20E may be either a document-orientated or a relational database. - The Store and
Stream module 22 includes a Permanent Infinite Memory Buffer orPIMB 26 for storing, in an indexed format, the media of received and sent messages. The store andstream module 22 also includes an encode-receivemodule 34, net receivemodule 36, transmitmodule 38 and a rendermodule 40. The encode-receivemodule 34 performs the function of receiving, encoding, indexing and storing in thePIMB 26 media created using theapplication 12 ondevice 13 in a time-indexed format. The net receivemodule 36 performs the function of indexing and storing in thePIMB 26 the media contained in messages received fromother devices 13 over thenetwork 18 in the time-indexed format. The transmitmodule 38 is responsible for transmitting the media of messages created using theapplication 12 to other recipients over thenetwork 18. The rendermodule 40 enables theapplication 12 to render the media of messages ondevice 13, either synchronously in the near real-time mode or asynchronously in a time-shifted mode by retrieving and rendering the media stored in thePIMB 26. - The
MCMS module 20 and the Store andStream module 22 also each communicate with various hardware components provided on thedevice 13, including, but not limited to, encoder/decoder hardware 28,media drivers 30 andnetwork interface 32. The encoder/decoder hardware 28 is provided for encoding the media, such as voice, text, video or sensor data, generated by a microphone, camera, keyboard, touch-sensitive display, etc. provided on or associated with thedevice 13 and decoding similar media before it is rendered on thedevice 13.Media drivers 30 are provided for driving the media generating components, such as speaker and/or a display (not illustrated) after the media has been decoded. A network interface is provided 32 for connectingdevice 13 running theapplication 12 to anetwork 18, either through a wireless or wired connection. Although not illustrated, theapplication 12 runs or is executed by the underlying processor embedded indevice 13, such as a microprocessor or microcontroller. - In various embodiments, the duration of the media stored in the
PIMB 26 may vary. In one embodiment, the storage may be permanent, meaning the stored media is available virtually forever or at least until the system runs out of storage. Various retention rates and strategies may be employed to make effective use of storage resources. Many possible implementations exist for the physical storage implementation of thePIMB 26, including, but not limited to: RAM, Flash memory, hard drives, optical media, or some combination thereof. ThePIMB 26 is also “infinite” in size, meaning the amount of data that can be stored in thePIMB 26 is not inherently limited. This lack of limit is in comparison to existing jitter buffer technology that discards data as soon as it is rendered. In one specific embodiment, thePIMB 26 may be implemented using a small and relatively fast RAM cache memory coupled with a hard drive or other non-volatile memory for persistent storage. As the physical storage capacity of thePIMB 26 is exceeded, the media is maintained on a server 16 (as described below) for later retrieval on demand. User criteria or a replacement algorithm, such as least-recently-used, or first-in-last-out, is used to control the actual data stored in thePIMB 26, the data that is maintained on aserver 16 or archived at any point in time. ThePIMB 26 further provides the attributes of an indexed file storage system and the random access attributes of a database. The media of any number of conversations, regardless of the duration or the number of messages in each, may be stored in the indexed format for later retrieval and review. In addition, the certain meta data associated with the messages of a conversation, such as its originator and its length, may be also stored in thePIMB 26. - In alternative embodiments, the indexed media payloads and certain meta data can be stored for a designated period of time. Once the age of the media exceeds the designated period, the payloads and data are discarded. In another embodiment, payloads can be discarded based on the sender and/or the recipient of the message containing the payload, or the topic of the conversation or messages associated with the payload. In yet other embodiments, payloads and data may be marked for transience, meaning the messages will not be stored in the
PIMB 26 beyond the requirements needed for immediate transmission or rendering. - As noted herein, the term “persistent” storage may have multiple meanings, depending on a specific implementation. With known existing “live” communication systems, media is transient, meaning if the media is stored at all, it is temporarily buffered until it is either transmitted or rendered. After being either transmitted or rendered, the media is irretrievably lost. Thus, the term persistent storage as used herein is intended to be broadly construed and mean the storage of media and meta data from indefinitely to any period of time longer than any transient storage needed to either transmit or render media “live” in real-time.
- Each
server 16 runs an application very similar to theapplication 12. The application running on the server(s) 16 include theMCMS module 20, the Store andStream module 22, andinterface 24 between the twomodules application 12 is (i) the application on the server(s) 16 is configured to support many users (i.e., multiple tenants) ofdevises 13 running theapplication 12; (ii) thePIMB 26 on the server(s) 16 is typically much larger than on acommunication device 13 since the servers support multiple users; and (iii) many of the user interface, media encoding and media rendering modules, such as encode-receive 34 and render 40, are not present because these functions and services are not performed on thenetwork 14. For more details of the server application, see U.S. application Ser. Nos. 12/028,400, 12/253,833, 12/253,820 and 12/253,833, all incorporated by reference herein for all purposes. - There are two types of Vox messages, including (i) messages that do not contain media and (ii) messages that do contain media. Vox messages that do not contain media are generally used for message meta data, such as media headers and descriptors, contacts information, presence status information, etc. The Vox messages that contain media are used for the transport of media.
- Referring to
FIG. 3A , the data structure of aVox message 50 that does not contain media is illustrated. TheVox message 50 includes an transport header field and an encapsulation format field for storing various objects, such as contact information, presence status information for the user of adevice 13, or message meta data, as illustrated inFIG. 3B . It should be understood that the list of objects provided inFIG. 3B is not exhaustive. Other objects, such as but not limited to, user location update information, user log-in information, information pertaining to the authentication of users, statistical information, or any machine-to-machine type message, may also be encapsulated in the format filed ofVox messages 50. - Contact information includes the name, address (e.g., telephone number and/or email address), or other attributes for each of the contacts in the contact list of the user of a
device 13 runningapplication 12. The contact information is used to create contact lists, and to direct messages to intended recipients using the addressing information associated with the individual contacts in the contact list. - Message meta data provides
application 12 level attributes forVox messages 50. These attributes include a message identifier or ID, the identification of the message originator, a recipient list, and a message subject. The identifier information may be used for a variety of reasons, including, but not limited to, building contact lists and/or associating media with messages. The set of attributes for a given message may be extensible, and not all attributes necessarily need to be supported by allapplication 12 enableddevices 13. - Presence status information may identify the users that are currently authenticated by the
system 10 and/or if a given user is reviewing a message live in the real-time mode or not. The presence data is therefore useful in determining, in certain embodiments, how messages are delivered across thenetworks - Referring to
FIG. 3C , aVox message 52 that contains media is illustrated. TheVox message 52 is essentially the same as a non-mediatype Vox message 50, except it includes an additional field for media. The media field is capable of containing one or multiple media types, such as, but not limited to, voice, video, text, sensor data, still pictures or photos, GPS data, or just about any other type of media, or a combination thereof. - The transport header field in
Vox messages application 12 operating ondevice 13. Specifically, the information contained in the encapsulation format field is layered on top of the application layer of the transport header of eachVox message - In various embodiments, the application layer may be HTTP, SMTP, SIP, or any other type of application layer. The encapsulation format may be JSON or XML or any other type of structured data serialization format. It should be noted that the specific transport headers and encapsulation formats as listed herein are merely exemplary. Any transport header or encapsulation format may be used, including new protocols developed in the future, or those currently known, but not listed herein.
- By layering
Vox messages application 12 is not needed. Instead, thesystem 10 takes advantage of current packet based communication networks running over the existing telecommunications infrastructure. - The information encapsulated in the format field of Vox messages is typically stored in the
MCMS database 20E of theMCMS module 20. Alternatively, this information may be stored in thePIMB 26, or in both theMCMS database 20E and thePIMB 26. - When created or otherwise originated on a
device 13 runningapplication 12, the media ofVox messages 52 is progressively and simultaneously (i) stored in thePIMB 26 in an indexed format and (ii) placed into the packet payloads of the underlying transport layer protocol and streamed over the underlying network(s) to intended recipients. On the receive side, the incoming streaming media ofVox messages 52 is extracted from the incoming packets, and simultaneously and progressively stored in the indexed format in thePIMB 26 of the receivingdevice 13 as the media is received. If the receivingdevice 13 is in the synchronous or real-time mode, the renderfunction 40 also progressively renders the incoming streaming media progressively and simultaneously as it is being received. Alternatively when in the time-shifted mode, the renderfunction 40 may retrieve the received media from thePIMB 26 at an arbitrary later time, defined by the user of the receivingdevice 13. When media is retrieved from thePIMB 26 for rendering, the media is reviewed asynchronously in the time-shifted mode. - Since the media of both transmitted and received
Vox messages 52 is stored in thePIMB 26 in the indexed format, the media of the messages may be retrieved and rendered at anytime. In addition, conversations may be constructed by threading together individual messages. As noted above, the messages of a conversation may be assembled using a defined attribute or in some other arbitrary way. Regardless of how the messages are assembled, a conversation may include messages of different types of media, such as both voice and text, as well as other media types, such as video, still pictures, sensor data, GPS data, or just about any other type of media, data or information. The messages of a conversation may also be rendered sequentially in time-indexed order, or one at a time in any order. Further by indexing messages, it is also possible to retrieve the media of a message starting at a particular offset. For example, if a message is 20 seconds long, it may be possible to retrieve and render the media of the message starting at an arbitrarily selected offset point of the message, and not always at the starting time of the message. - The ability to (i) progressively and store and transmit media as it is being created on the transmitting
device 13 runningapplication 12 and (ii) progressively store and render the media on the receivingdevices 13 runningapplication 12 allow the participants to converse in real-time, providing a user experience similar to a full-duplex telephone conversation. The storage of the media in thePIMB 26 allows the participants to participate in the conversation asynchronously in a time-shifted mode, providing a user experience similar to conventional messaging systems (e.g., email of SMS text messaging), but with the option of sending or receiving voice messages. In addition, the ability of theVox messages 52 to carry multiple media types, it is also possible for the participants of a conversation to converse using different types of media. For example, a person may send a text message and receive a reply voice message, or vice versa. - The simultaneous and progressive storage of both transmitted media as it is being created or received media as it is being received enables a host of rendering options provided on the
client 12 enableddevices 13. Such rendering options include, but are not limited to: pause, replay, play faster, play slower, jump backward, jump forward, catch up to the most recently received media or Catch up to Live (CTL), or jump to the most recently received media. As described in more detail below, the storage of media and certain rendering options allow the participants of a conversation to seamlessly transition a conversation from a time-shifted mode to the real-time mode and vice versa. - It is useful to note that the catch up to the most recently received media and CTL rendering options are very similar, but are not necessarily the same. With the catch up to the most recently received media option, the rendering of media out of the
PIMB 26 at the faster rate occurs until the rendering has caught up to the most recently received media. In situations were the received media is not live, but rather for example is a recorded message that is being delivered to a recipient after it was initially recorded, then this feature allows the recipient to quickly review previously received portions of the message and then seamlessly merge into rendering the media of the message as it is received over the network. The CTL rendering option, on the other hand, requires the delivery of real-time media, as the sender creates the media. After the seamless transition occurs, the recipient is rendering the media “live” as it is being created and transmitted across thenetwork 14, as opposed to the delivery of a previously recorded message. - Several examples below highlight the seamless transition of a conversation between the time-shifted and real-time modes:
- (i) consider an example of a recipient receiving an incoming live message. If the recipient does not have their
communication device 13 immediately available, for example because their cell phone is in their pocket or purse, then most likely the initial portion of the message will not be heard. But with the CTL rendering option, the recipient can review the media of the message out of thePIMB 26 from the start of the message faster than the media was originally encoded, while the message is still being received. Eventually, the rendering of the media at the increased rate will catch-up to the live point of the message, whereupon, there is a seamless transition from the asynchronous time-shifted mode to the real-time mode. After the seamless transition occurs, the parties may converse live, similar to a conventional phone call; - (ii) in an alternative example, a conversation may seamlessly transition from the real-time mode to the time-shifted mode. Consider a party participating in a real-time or “live” conference call among multiple parties. When the “pause” rendering option is selected, the “live” rendering of incoming media stops, thus seamlessly transitioning the participation of that party that selected the pause option from the real-time to time-shifted mode. After the pause, the party may rejoin the conversation “live” assuming it is still ongoing in the real-time mode. The “missed” media during the pause may be reviewed at any arbitrary later time in the time-shifted mode from the
PIMB 26; - (iii) in another variation of the seamless transition from real-time to time-shifted, one party may elect to leave a live conversation while the other party continues speaking. When this situation occurs, a message can be left, which can be reviewed by the departing party at any arbitrary later time; and
- (iv) in yet another example, a recipient may receive a text message and elect to respond with a voice message, or vice-versa. When receiving the voice message, the parties may engage in either a “live” conversation in the real-time mode or asynchronously send voice and/or text messages back and forth in the time-shifted mode. Since other known communication platforms, at least at the core level, are typically dedicate to just one media type, the ability to converse with multiple media types, using a single or unified communication platform, is usually not possible.
- Another unique aspect of the
system 10 is that the media payloads generated by thevisual mail application 12 running on adevice 13 are stored in multiple locations. Not only are the payloads stored in thePIMB 26 of the transmitting and receivingdevices 13, but also in a PIMB (not illustrated) of the server(s) 16 on thecommunication services network 14. This feature provides thesystem 10 with both resilience and operability, even when network conditions are poor or when a participant of a conversation is not connected to the network. - Referring to
FIG. 4A , a flow diagram 60A illustrating the operational steps of theapplication 12 in response to receiving an incoming “live” message is shown. In the initial step, a recipient is notified instep 62 as an incoming message is received. The notification therefore occurs before the message is received in full and preferably occurs as soon as possible, for example, when the meta data associated with the message is initially received, indicating that a sender is getting ready to or is in the process of sending a message. The notification may include, in accordance with various embodiments, a visual notification, an audio notification, or a combination of both. All incoming meta data and media is simultaneously and progressively stored as the media is received in thePIMB 26 of the receivingcommunication device 13, as provided instep 64. In response to the notification, the recipient has a number of options, as represented by thedecision diamond 66A. - A first option is to simply ignore the message. When ignored, the recipient always has the option to retrieve and render the media of the message from the
PIMB 26 at any later arbitrary time. - In a second option, the recipient may elect to review the incoming voice message in real-time or “live”. When this choice is made, the recipient needs to decide (
decision diamond 70A) if they wish to review the message from the beginning or from the current point in the message. If the beginning option is selected, then the CTL rendering function (step 72A) is implemented, causing the media to be retrieved from thePIMB 26 and rendered at a rate faster than when it was originally encoded. As the media is being rendered out of thePIMB 26, theapplication 12 continually measures (decision 74A) when the rendering out of thePIMB 26 at the faster rate has caught up to the live point of the message as it is being received. When the live point is reached, the rendering seamlessly transitions from the asynchronous rendering mode to the synchronous real-time mode (step 76A). Alternatively, if the recipient elects to review the incoming media at the current point of the message, then the media of the message is rendered live (step 76A) as it is received. - In a third option, the recipient may elect to respond to the incoming message either during or immediately after the message is received in full. As provided in
decision 78, the recipient may elect to respond by engaging in a live conversation (step 80) with the sender of the incoming message, create a reply voice message (step 82), typically after reviewing the incoming media in full, or reply with a text message (step 84), also typically after reviewing the incoming message in full. With the first option, the parties will engage in a real-time conversation, providing a user experience similar to a full duplex telephone call. Whereas with the latter two options, the conversation is asynchronous, similar to most messaging systems. Regardless of which reply, the outgoing media is both simultaneously and progressively transmitted (step 86) and stored in the PIMB as the media is created (step 88). - It should be understood that the timing of any response could vary, depending on the discretion of the recipient. In one scenario, the recipient may wish to engage in a live conversation as soon as possible after receiving the notification, without first receiving any previous media associated with the incoming message. In a second scenario, the recipient may elect to first review the previous portion of the incoming message using the CTL rendering option, and then, join the conversation “live” after reaching the catch-up point. In yet another scenario, the recipient may elect to “screen” or review the incoming message “live”, but not engage in a real-time conversation. When a message is screened, the sender is typically not notified that the recipient is reviewing the message as it is received. In an alternative embodiment however, the sender could be notified that the recipient is screening the message, but has elected not to engage in a live conversation. With another alternative, the recipient may initially ignore the message, review it at an arbitrary later time, and then reply, with either a voice or text message. At that point, the participants of the conversation may elect to continue the conversation in the asynchronous time-shifted mode, or may transition into the real-time mode.
- Referring to
FIG. 4B , aflow chart 60B illustrating the catch up to the most recently received media of an incoming message. With this example, it is assumed that the incoming message is not being delivered “live”, but rather was previously recorded before it was delivered to the recipient. Theflow chart 60B is essentially the same as theflow chart 60A ofFIG. 4A , but with several differences. - In
decision diamond 66B, the recipient has the option of reviewing the incoming message as received. If this option is selected, then the recipient decides to review the incoming message either at the current point (step 76B) or at the beginning of the message (decision 70B). If from the beginning, then the previously received media of the message is rendered (step 72B) from thePIMB 26 at a rate faster than it was originally decoded. When the rendering at the media from thePIMB 26 at the faster rate catches up to the current point (decision 74B), then the rendering seamlessly transitions from the PIMB to the current point (step 76B) as the media of the message is received. - The recipient may also elect to either ignore the incoming message or respond. Either option is essentially the same as described above with regard to
FIG. 4A , but with one minor exception. The recipient may try to engage in a “live” conversation (step 80) with the party who sent the prerecorded message. If the party is available and they wish to converse in real-time, then a live conversation may take place. On the other hand if the party is not available, or elects not to converse in real-time, then a live conversation will not take place. - The examples of
FIGS. 4A and 4B illustrate the differences between the catch up to live and the catch up to the most recent media of an incoming message. In each case, media is rendered out of thePIMB 26 faster than it was originally encoded. When the faster rendering out of the PIMB catches up to the current most point of the message as it is being received, then with both rendering options, there is a seamless transition to rendering the media of the message as it is received over the network. Thus, the main difference between the two options is that with CTL, the media of the incoming message is being rendered “live” as the media is created and transmitted over the network, whereas with the catch up to the most recent media option, the media is not being created live. -
FIGS. 5A through 5G are a series of screen shots of the display of acommunication device 13 showing the operation of the visual voice andtext mail application 12. - In the initial
FIG. 5A , thedisplay 90 on adevice 13 used by a person named Jill is shown. The visual voice andtext mail display 90 shows a number of messages, both text and voice, received by Jill. In this example, Jill has received text messages from her “Mom”, “Poker Buddies”, and the members of her “Weekly Status Meeting” at work. In addition, Jill has received voice mail messages from Dennis Jones, Matt Smith, and Judy Li. -
FIG. 5B shows thedisplay 80 on Jill'sdevice 13 after receiving notification that Sam Fairbanks is sending her a message. In this example, the notification is awindow 92 appearing on thedisplay 90 of Jill'sdevice 13. Within thewindow 92, an indication is provided that Sam Fairbanks is leaving a message. In addition, Jill is presented with a number of options, including a “Review”icon 94 which will allow Jill to review (i.e., screen) the incoming message in real-time as it is being received, a “Talk Live”icon 96 that allows Jill to begin speaking live with Sam in the real-time mode, a “Text”icon 98 that allows Jill to send an asynchronous text message to Sam, or a “Message”icon 100 that allows Jill to send an asynchronous reply voice message to Sam. It should be noted that audible notification signals, such as a ring tone or alarm, may optionally be used in cooperation with thewindow 92. -
FIG. 5C shows thedisplay 90 on Jill'sdevice 13 after selecting theReview icon 94. Awindow 104 appears within thedisplay 90. Thewindow 104 provides a number of rendering options, including play, pause, replay, play faster, play slower, jump backward, jump forward, jump to the most recently received media, or catch up to the most recently received media (e.g., Catch Up to Live or CTL), as represented by the “rabbit” icon. - By selecting the play rendering option, the media of the incoming message is rendered at the same rate the media was originally encoded. This option allows the Jill to review or screen the incoming message from Sam. In one embodiment, the Sam is not notified that Jill is screening the message. In an alternative embodiment, Sam is notified that Jill is reviewing the message.
- In this example, the “rabbit” CTL icon has been selected, causing Sam's message to be rendered from the beginning (“You won't believe this. But my car broke down . . . ”) at rate faster than the media was originally encoded. When the “live” point is reached, Sam and Jill may engage in a “live” conversation in the real-time mode. Also in optional embodiments, a message “scrubber” bar and timer may also be displayed.
-
FIG. 5D shows both Sam'sdevice 13A and Jill'sdevice 13B when engaged in a “live” real-time conversation. As discussed above, Jill may elect to participate in a synchronous conversation with Sam either by selecting the “Talk Live” icon (as illustrated inFIG. 5 ) or using the CTL feature (as described above with regard toFIG. 5C ). With the former, Jill may miss a portion of Sam's message before the point where she joins live, wherein with the latter option, she will hear the message from the beginning. Regardless of which method is used, the two parties may talk synchronously with one another in the real-time mode, as represented by the “LIVE”arrow 106 between the two devices, across thenetworks PIMB 26 on Jill's device 13 (as well as possibly Sam'sdevice 13 and any intermediate servers 16) for later review. -
FIG. 5E shows Jill'sdevice 13 after selecting the “text”icon 98. With this selection, akeyboard 108 appears on thedisplay 90 of Jill'sdevice 13. As Jill types, the message appears intext window 110. The “Send” icon is used to asynchronously send or transmit the text message when it is complete. In an alternative text embodiment, each keystroke may be transmitted as it is entered, providing the appearance that the text message is “synchronous”, rather than asynchronous. As the transmission of each keystroke is actually a discrete event, the transmission of the text message one letter at a time is actually multiple asynchronous transmissions, one after the other. The transmission of each keystroke is therefore not a synchronous (i.e. continuous) transmission. In the example illustrated, the keyboard is presented in thedisplay 90. With communication devices having either a built-in hardware keyboard, as provided for example on some “smart” mobile phones, or an associated keyboard, such as with a desktop or laptop computer, then there is no need to superimpose a keyboard in thedisplay 90. -
FIG. 5F shows Jill's device after selecting theMessage icon 100. With this selection, thedisplay 90 on Jill'sdevice 13 shows the previous conversation history with Sam Fairbanks. In this example, the conversation history includes media “bubbles” for both voice or text messages. With text messages, the actual text message (or a portion thereof) is provided in each text bubble. With voice messages, the name of the sender and the duration of the voice message are presented in each bubble. When either type of bubble is selected, the corresponding media of the message is retrieved from thePIMB 26 on Jill's device, and is rendered. In the case of text, the message is displayed in its entirety on thedisplay 90. With voice, the message is rendered through a speaker on the device. Thedisplay 90 also includes “Start” and “End”message icons Start icon 112 is selected, Jill may start creating her reply message to Sam. In this example, Jill informs Sam that she cannot talk because she is in a meeting, but will pick him up in 20 minutes. When done, theEnd icon 114 is selected, terminating the message. In an alternative embodiment, it is assumed that the message has ended a predetermined period of time after the creation of voice media has stopped. When the predetermined period of time has passed, the message is automatically terminated, without having to physically select theEnd icon 114. -
FIG. 5G illustrates Jill'sdevice 13 if she elects to ignore the incoming message from Sam Fairbanks. After the complete message is left, thedisplay 90 on Jill'sdevice 13 is updated to show that Sam Fairbanks has left a message. At any later arbitrary time, Jill may review the message from Sam Fairbanks asynchronously, in the time-shifted mode. Alternatively, Jill may elect to not review the message from Sam at all, either by actively deleting the message or ignoring it for a predetermined period of time, whereupon in some but not necessarily all embodiments, the message is automatically deleted. In the event Jill elects to review the message, Jill may optionally reply with another asynchronous voice or text message, attempt to talk live in the real-time mode with Sam, or not reply at all. - It should be noted that the various messages, icons and notifications mentioned above with regard to
FIGS. 5A through 5G are merely exemplary. A wide variety different messages, icons and notifications, including audible, visual, text or icon based indicators may be used, either alone or in combination. In addition, the selection of the various icons and functions, and the scrolling through and/or selection of the various messages of a conversation, may be implemented in a number of ways, such as using an input device such as a finger stylus or pointer, using voice commands, or any other screen navigation, input or selection method. Those provided and described herein should therefore be considered as representative and not limiting the scope of the invention in any regard. - With the above examples, it is assumed that both Sam and Jill are using
application 12 enableddevices 13. With bothdevices 13 running theapplication 12, the transmission and receipt of messages, regardless if consumed synchronously in the real-time or live mode or asynchronously in the time-shifted mode, may occur without a circuit connection, as required for conventional telephone calls. Rather, any media contained in theVox messages 50 are transmitted or “streamed” between the two parties over thenetwork 14 and the network(s) 18 as the media becomes available. The ability to stream the media progressively and simultaneously as the media is created on the transmittingdevice 13 and rendered on the receivingdevice 13 creates a user experience that is virtually identical to a conventional full-duplex telephone conversation. In addition with the storage of the streamed media in thePIMB 26 on eachdevice 13, asynchronous messaging in the time-shifted mode is also possible. And as described above, the various rendering options makes it possible for the participants to seamlessly transition a conversation between the two modes. - In yet another embodiment, it may be possible for a legacy communication device, such as a conventional landline phone incapable of running the
application 12, to enjoy many of the features and benefits of theapplication 12 as described herein. With this embodiment, one or more of theservers 16 on thenetwork 14 is configured as a “gateway” server, which runs theapplication 12 on behalf of the legacy device. TheVox messages 50 containing the media are sent back and forth to thegateway server 16, where all the media is stored in the local PIMB on behalf of the legacy device. The legacy device can then either transmit media or receive media, either synchronously in the real-time mode or asynchronously in the time-shifted mode, using a variety of control methods, such as Dual Tone Multi-Frequency (DTMF) commands, voice activated commands, commands generated through a browser, radio signals, or any combination thereof. In this manner, a (or more) legacy device may communicate with either aapplication 12 enableddevice 13 or another legacy device in the same manner as described herein, as if theapplication 12 resided on the legacy device. - The visual voice and
text mail application 12 as described herein provides a number of features and advantages previously not provided or available with conventional visual voice or text applications. These features and advantages include: - (i) the ability to communicate by either voice, text or other media types using a single, unified, application;
- (ii) the ability to have “instant” access to incoming messages and the ability to immediately send a response without dialing or otherwise establishing a circuit with the sender of the original message (i.e., “fire and forget” instant response capabilities);
- (iii) the ability to store the media of conversations on
servers 16, allow a user to maintain conversations histories, and participate in multiple conversions, usingmultiple communication application 12 enableddevices 13. For example, if a conversation is conducted on the work computer of a user, the entire conversation is accessible and may be down-loaded to the same user's cell phone, or vice versa. All of a user's conversations may therefore be conducted and managed across multiple communication devices; - (iv) the ability to provide a user with the flexibility to play messages in a preferred order, elect to either join a conversation related to an incoming message, ignore an incoming message and review it at a later time, or review an incoming message, while not joining a conversation with the sender of the message;
- (v) the ability to provide a user with a host of rendering options, including playing faster, pausing the play of a message, catch up to the most recently received media, catching up to live cm, jump to live, play slower, etc.;
- (vi) the ability to render previously received media of a message, while it is still being received, and to seamlessly transition the rendering of the message from an asynchronous time-shifted mode to a synchronous real-time mode using the CTL rendering feature;
- (vii) the ability to organize conversations by a common attribute, such as but not limited to, participants, topic or subject, user group, or any other defined criteria;
- (viii) the ability to both review the media of previously received messages while the
device 13 is disconnected from thenetwork 14 by retrieving and rendering media from thePIMB 26 and to create messages while disconnected from the network and transmitting the messages out of thePIMB 26 when thedevice 13 reconnects to the network; - (iix) the ability to communicate over any type of wired or wireless communication network, without any restrictions to a specific type of network, such as the PSTN;
- (ix) the ability to engage or participate in multiple conversations at the same time by transitioning between conversations. For each selected conversation, messages can be either reviewed in real-time or the time-shifted mode. When participation in one conversation is complete, another conversation may be selected for participation;
- (x) the ability to transcribe voice media into text and translate voice and/or text media from one language into one or more other languages; and
- (xi) the ability to engage in multi-party conference calls that are easily set up by simply selecting the names of the participants, without the need of bridge numbers or pin numbers. In addition, all the features described above with regard to (i) through (x) apply to conference calls.
- With regard to messaging, the
application 12 provides the advantages of: (i) having text and voice messages synchronized to your phone in real time. No dialing into a separate voice mail system is necessary; (ii) the ability to reply instantly to other users ofapplication 12 enableddevices 12. No dialing, interrupting, or listening to greetings is necessary; (iii) the ability to review or listen to messages as they arrive and send messages as you speak; (iv) the ability to provide and receive real-time presence information for other users of theapplication 12; (v) easily keep track of incoming and outgoing messages; (vi) construct conversation histories of threaded messages; (vii) the ability to mix both voice, text and other media types within the context of a single conversation; and (viii) conduct multiple party conversations. - With regard to the visual interface, the
application 12 allows a user to see all messages on the display of theirdevice 13 and to scroll up and down to see the entire message history of a conversation. Theapplication 12 also allows the user to render the media of messages in any order, to sort messages, or to filter messages. - The
application 12 further provides a number of advantages previously not possible. Certain conversations, which may be considered more important than others, may be prioritized. For example while a person is driving their car, theapplication 12 on a user's mobile phone may be set so that incoming messages from family members are automatically rendered “live”, while the messages pertaining to other conversations are stored in thePIMB 26 for later retrieval and review. By prioritizing conversations and messages in this manner, high priority messages can be heard automatically, while all other messages may be reviewed in a time-shifted mode. Important conversations can be monitored, while the messages pertaining to lower priority messages are available for later review. Alternatively the user may elect to join the conversation “live” using currently available hands-free technology, such as headsets and Bluetooth®. - Lastly with regard to integration, the
application 12 may be integrated with other communication systems, such as SMS and IM systems, as well as integrate with other applications, such as an address book, calendar, call logs, etc. - It should also be understood that the present invention may be applied to any communication systems, including mobile or cellular phone networks, police, fire, military taxi, and first responder type communication systems, legacy circuit-based networks, VoIP networks, the Internet, or any combination thereof.
- In various embodiments,
devices 13 may be one of the following: land-line phone, wireless phone, cellular phone, satellite phone, computer, radio, server, satellite radio, tactical radio or tactical phone The types of media besides voice that may be generated on acommunication device 13 and transmitted may further include video, text, sensor data, position or GPS information, radio signals, or a combination thereof. - Although many of the components and processes are described above in the singular for convenience, it will be appreciated by one of skill in the art that multiple components and repeated processes can also be used to practice the techniques of the system and method described herein. Further, while the invention has been particularly shown and described with reference to specific embodiments thereof, it will be understood by those skilled in the art that changes in the form and details of the disclosed embodiments may be made without departing from the spirit or scope of the invention. For example, embodiments of the invention may be employed with a variety of components and should not be restricted to the ones mentioned above. It is therefore intended that the invention be interpreted to include all variations and equivalents that fall within the true spirit and scope of the invention.
Claims (58)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/721,442 US8542804B2 (en) | 2008-02-08 | 2010-03-10 | Voice and text mail application for communication devices |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/028,400 US8180029B2 (en) | 2007-06-28 | 2008-02-08 | Telecommunication and multimedia management method and apparatus |
US25686609P | 2009-10-30 | 2009-10-30 | |
US25909409P | 2009-11-06 | 2009-11-06 | |
US12/721,442 US8542804B2 (en) | 2008-02-08 | 2010-03-10 | Voice and text mail application for communication devices |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/028,400 Continuation-In-Part US8180029B2 (en) | 2007-06-28 | 2008-02-08 | Telecommunication and multimedia management method and apparatus |
Publications (2)
Publication Number | Publication Date |
---|---|
US20100166159A1 true US20100166159A1 (en) | 2010-07-01 |
US8542804B2 US8542804B2 (en) | 2013-09-24 |
Family
ID=42216135
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/721,442 Active 2029-04-09 US8542804B2 (en) | 2008-02-08 | 2010-03-10 | Voice and text mail application for communication devices |
Country Status (2)
Country | Link |
---|---|
US (1) | US8542804B2 (en) |
WO (1) | WO2011053371A1 (en) |
Cited By (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100135285A1 (en) * | 2005-05-06 | 2010-06-03 | Ipsobox, S.A. De C.V. | Multi-Networking Communication System and Method |
US20100177877A1 (en) * | 2009-01-09 | 2010-07-15 | Microsoft Corporation | Enhanced voicemail usage through automatic voicemail preview |
GB2483280A (en) * | 2010-09-02 | 2012-03-07 | Skype Ltd | Point-to-point communication with persistent connection to front-end server |
US20120178536A1 (en) * | 2011-01-11 | 2012-07-12 | Ncsoft Corporation | Method for inviting users to game through chatting in mobile platform |
US20130055099A1 (en) * | 2011-08-22 | 2013-02-28 | Rose Yao | Unified Messaging System with Integration of Call Log Data |
US20130171975A1 (en) * | 2012-01-04 | 2013-07-04 | Qualcomm Incorporated | Selectively Buffering Media In Response To A Session Disruption Within A Wireless Communications System |
US20130217446A1 (en) * | 2010-07-06 | 2013-08-22 | Research In Motion Limited | System and Method for Providing Feedback to a Caller in Response to The Modulation of an Incoming Voice Communication |
US20140009567A1 (en) * | 2011-01-04 | 2014-01-09 | Telefonaktiebolaget L M Ericsson (Publ) | Local Media Rendering |
WO2014094914A1 (en) * | 2012-12-21 | 2014-06-26 | Telefonaktiebolaget L M Ericsson (Publ) | Real-time monitoring/interrupting of voicemail message recording |
US8781093B1 (en) | 2012-04-18 | 2014-07-15 | Google Inc. | Reputation based message analysis |
US20140357235A1 (en) * | 2012-02-21 | 2014-12-04 | Tencent Technology (Shenzhen) Company Limited | Method and System for Transferring Speech Information |
WO2015017028A1 (en) * | 2013-08-02 | 2015-02-05 | Whatsapp Inc. | Voice communications with real-time status notifications |
US20160219249A1 (en) * | 2012-12-28 | 2016-07-28 | Glide Talk Ltd. | Proactively preparing to display multimedia data |
TWI561052B (en) * | 2014-07-08 | 2016-12-01 | Hooloop Corp | Methods and systems for voice message association and playback, and related computer program products |
US20170155729A1 (en) * | 2013-07-11 | 2017-06-01 | Apollo Education Group, Inc. | Message Consumer Orchestration Framework |
EP3253019A1 (en) * | 2016-06-02 | 2017-12-06 | Deutsche Telekom AG | Devices and method for communicating via a communication network |
US9973462B1 (en) * | 2013-10-21 | 2018-05-15 | Google Llc | Methods for generating message notifications |
US10003563B2 (en) | 2015-05-26 | 2018-06-19 | Facebook, Inc. | Integrated telephone applications on online social networks |
US10097499B1 (en) | 2017-07-10 | 2018-10-09 | Qualcomm Incorporated | Private message notifications |
US10447842B1 (en) | 2018-11-28 | 2019-10-15 | Motorola Solutions, Inc. | Push-to-talk to messaging application graphical interface |
US10608978B2 (en) | 2013-08-02 | 2020-03-31 | Whatsapp Inc. | Voice communications with real-time status notifications |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9208784B2 (en) * | 2013-01-08 | 2015-12-08 | C21 Patents, Llc | Methododolgy for live text broadcasting |
Citations (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5651054A (en) * | 1995-04-13 | 1997-07-22 | Active Voice Corporation | Method and apparatus for monitoring a message in a voice mail system |
US5737011A (en) * | 1995-05-03 | 1998-04-07 | Bell Communications Research, Inc. | Infinitely expandable real-time video conferencing system |
US6175619B1 (en) * | 1998-07-08 | 2001-01-16 | At&T Corp. | Anonymous voice communication using on-line controls |
US20020146110A1 (en) * | 2001-04-06 | 2002-10-10 | Fromm Laurence J. | Customer interaction system |
US6564261B1 (en) * | 1999-05-10 | 2003-05-13 | Telefonaktiebolaget Lm Ericsson (Publ) | Distributed system to intelligently establish sessions between anonymous users over various networks |
US6721703B2 (en) * | 2001-03-02 | 2004-04-13 | Jay M. Jackson | Remote deposition system and method |
US6807565B1 (en) * | 1999-09-03 | 2004-10-19 | Cisco Technology, Inc. | Instant messaging system using voice enabled web based application server |
US20050102358A1 (en) * | 2003-11-10 | 2005-05-12 | Gold Stuart A. | Web page monitoring and collaboration system |
US6931114B1 (en) * | 2000-12-22 | 2005-08-16 | Bellsouth Intellectual Property Corp. | Voice chat service on telephone networks |
US7039040B1 (en) * | 1999-06-07 | 2006-05-02 | At&T Corp. | Voice-over-IP enabled chat |
US7039675B1 (en) * | 1998-07-06 | 2006-05-02 | Canon Kabushiki Kaisha | Data communication control apparatus and method adapted to control distribution of data corresponding to various types of a plurality of terminals |
US7047030B2 (en) * | 2001-05-02 | 2006-05-16 | Symbian Limited | Group communication method for a wireless communication device |
US7111044B2 (en) * | 2002-07-17 | 2006-09-19 | Fastmobile, Inc. | Method and system for displaying group chat sessions on wireless mobile terminals |
US20060248149A1 (en) * | 2005-04-28 | 2006-11-02 | Christian Kraft | Mobile communication terminal and method |
US7305438B2 (en) * | 2003-12-09 | 2007-12-04 | International Business Machines Corporation | Method and system for voice on demand private message chat |
US20080147910A1 (en) * | 2006-09-29 | 2008-06-19 | Hibbard Gary D | Provisional load sharing buffer for reducing hard disk drive (hdd) activity and improving reliability and lifetime |
US20090063698A1 (en) * | 2007-09-04 | 2009-03-05 | Aspera, Inc. | Method and system for aggregate bandwith control |
US20090175425A1 (en) * | 2008-01-03 | 2009-07-09 | Apple Inc. | Outgoing voice mail recording and playback |
US7626951B2 (en) * | 2005-10-06 | 2009-12-01 | Telecommunication Systems, Inc. | Voice Over Internet Protocol (VoIP) location based conferencing |
Family Cites Families (110)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4807224A (en) | 1987-08-21 | 1989-02-21 | Naron Steven E | Multicast data distribution system and method |
US5117422A (en) | 1990-07-09 | 1992-05-26 | Itt Corporation | Method for providing an efficient and adaptive management of message routing in a multi-platform and apparatus communication system |
US5375018A (en) | 1990-07-18 | 1994-12-20 | Klausner Patent Technologies | Location acquisition and time adjusting system |
JP2521016B2 (en) | 1991-12-31 | 1996-07-31 | インターナショナル・ビジネス・マシーンズ・コーポレイション | Multimedia data processing system |
US5283818A (en) | 1992-03-31 | 1994-02-01 | Klausner Patent Technologies | Telephone answering device linking displayed data with recorded audio message |
US5390236A (en) | 1992-03-31 | 1995-02-14 | Klausner Patent Technologies | Telephone answering device linking displayed data with recorded audio message |
JPH07219970A (en) | 1993-12-20 | 1995-08-18 | Xerox Corp | Method and apparatus for reproduction in acceleration format |
US5734963A (en) | 1995-06-06 | 1998-03-31 | Flash Comm, Inc. | Remote initiated messaging apparatus and method in a two way wireless data communications network |
US7266686B1 (en) | 1996-05-09 | 2007-09-04 | Two-Way Media Llc | Multicasting method and apparatus |
US6037932A (en) | 1996-05-28 | 2000-03-14 | Microsoft Corporation | Method for sending computer network data as part of vertical blanking interval |
US5970122A (en) | 1996-07-24 | 1999-10-19 | Lucent Technologies Inc. | Two-way wireless messaging system having user agent |
US5918158A (en) | 1996-07-24 | 1999-06-29 | Lucent Technologies Inc. | Two-way wireless messaging system |
US5963551A (en) | 1996-09-30 | 1999-10-05 | Innomedia Pte Ltd. | System and method for dynamically reconfigurable packet transmission |
US6859525B1 (en) | 1996-10-23 | 2005-02-22 | Riparius Ventures, Llc | Internet telephony device |
DE19651593B4 (en) | 1996-12-11 | 2008-11-20 | Rohde & Schwarz Gmbh & Co. Kg | Arrangement for optimizing the data transmission via a bidirectional radio channel |
FI105874B (en) | 1997-08-12 | 2000-10-13 | Nokia Mobile Phones Ltd | Multiple mobile broadcasting |
US6507586B1 (en) | 1997-09-18 | 2003-01-14 | International Business Machines Corporation | Multicast data transmission over a one-way broadband channel |
US6104757A (en) | 1998-05-15 | 2000-08-15 | North Carolina State University | System and method of error control for interactive low-bit rate video transmission |
US6092120A (en) | 1998-06-26 | 2000-07-18 | Sun Microsystems, Inc. | Method and apparatus for timely delivery of a byte code and serialized objects stream |
US6233389B1 (en) | 1998-07-30 | 2001-05-15 | Tivo, Inc. | Multimedia time warping system |
US7023913B1 (en) | 2000-06-14 | 2006-04-04 | Monroe David A | Digital security multimedia sensor |
US6850965B2 (en) | 1998-11-17 | 2005-02-01 | Arthur Douglas Allen | Method for connection acceptance and rapid determination of optimal multi-media content delivery over network |
US6378035B1 (en) | 1999-04-06 | 2002-04-23 | Microsoft Corporation | Streaming information appliance with buffer read and write synchronization |
US6577599B1 (en) | 1999-06-30 | 2003-06-10 | Sun Microsystems, Inc. | Small-scale reliable multicasting |
US6580694B1 (en) | 1999-08-16 | 2003-06-17 | Intel Corporation | Establishing optimal audio latency in streaming applications over a packet-based network |
US20010025377A1 (en) | 1999-12-30 | 2001-09-27 | Hinderks Larry W. | High bandwidth transmission system and method having local insertion, delay play and demand play |
GB2358558B (en) | 2000-01-18 | 2003-10-15 | Mitel Corp | Packet loss compensation method using injection of spectrally shaped noise |
US7117273B1 (en) | 2000-01-25 | 2006-10-03 | Cisco Technology, Inc. | Methods and apparatus for maintaining a map of node relationships for a network |
US20050259682A1 (en) | 2000-02-03 | 2005-11-24 | Yuval Yosef | Broadcast system |
US6993009B2 (en) | 2000-03-10 | 2006-01-31 | Hughes Electronics Corporation | Method and apparatus for deriving uplink timing from asynchronous traffic across multiple transport streams |
US6834039B1 (en) | 2000-03-10 | 2004-12-21 | Hughes Electronics Corporation | Apparatus and method for efficient TDMA bandwidth allocation for TCP/IP satellite-based networks |
US6480783B1 (en) | 2000-03-17 | 2002-11-12 | Makor Issues And Rights Ltd. | Real time vehicle guidance and forecasting system under traffic jam conditions |
US6791949B1 (en) | 2000-04-28 | 2004-09-14 | Raytheon Company | Network protocol for wireless ad hoc networks |
US6671732B1 (en) | 2000-07-24 | 2003-12-30 | Comverse Ltd. | Method and apparatus for control of content based rich media streaming |
US6912544B1 (en) | 2000-08-31 | 2005-06-28 | Comverse Ltd. | System and method for interleaving of material from database and customized audio-visual material |
US6970926B1 (en) | 2000-10-03 | 2005-11-29 | Motorola, Inc. | Dispatch call server in a packet based communication network |
US7313593B1 (en) | 2000-10-24 | 2007-12-25 | International Business Machines Corporation | Method and apparatus for providing full duplex and multipoint IP audio streaming |
NZ507800A (en) | 2000-10-26 | 2003-06-30 | Interag | Device for herd control and/or monitoring procedures |
US20020150094A1 (en) | 2000-10-27 | 2002-10-17 | Matthew Cheng | Hierarchical level-based internet protocol multicasting |
US7304951B2 (en) | 2000-11-21 | 2007-12-04 | North Carolina State University | Methods and systems for rate-based flow control between a sender and a receiver |
JP2002281081A (en) | 2001-01-10 | 2002-09-27 | Sega Corp | Data distributing device, data distributing method, data receiving device, and data receiving method |
US7240105B2 (en) | 2001-01-26 | 2007-07-03 | International Business Machines Corporation | Distributed multicast caching technique |
US6807578B2 (en) | 2001-03-14 | 2004-10-19 | International Business Machines Corporation | Nack suppression for multicast protocols in mostly one-way networks |
US20020184368A1 (en) | 2001-04-06 | 2002-12-05 | Yunsen Wang | Network system, method and protocols for hierarchical service and content distribution via directory enabled network |
US20020154745A1 (en) | 2001-04-24 | 2002-10-24 | Yuri Shtivelman | Systems and methods for visual access to voicemail |
US8054971B2 (en) | 2001-04-27 | 2011-11-08 | Comverse Ltd | Free-hand mobile messaging-method and device |
US20030027566A1 (en) | 2001-07-30 | 2003-02-06 | Comverse Network Systems, Ltd. | Session management method & system |
US20030028632A1 (en) | 2001-08-02 | 2003-02-06 | Davis Thomas G. | System and method of multicasting data messages |
US20050021819A1 (en) | 2001-08-17 | 2005-01-27 | Kalevi Kilkki | Method, network element, and terminal device for making data packets |
US7117521B2 (en) | 2001-08-31 | 2006-10-03 | Intel Corporation | Method to measure the perceived quality of streaming media |
US6996624B1 (en) | 2001-09-27 | 2006-02-07 | Apple Computer, Inc. | Reliable real-time transport protocol |
US20030099198A1 (en) | 2001-11-27 | 2003-05-29 | Amplify.Net, Inc. | Multicast service delivery in a hierarchical network |
US7382881B2 (en) | 2001-12-07 | 2008-06-03 | Telefonaktiebolaget L M Ericsson (Publ) | Lawful interception of end-to-end encrypted data traffic |
US20030126162A1 (en) | 2002-01-03 | 2003-07-03 | Yohe Thomas Patrick | System and method for synchronizing databases in a secure network environment |
US20040252679A1 (en) | 2002-02-26 | 2004-12-16 | Tim Williams | Stored voice message control extensions |
US6973309B1 (en) | 2002-03-14 | 2005-12-06 | Utstarcom, Inc. | Method and system for re-direction and handoff for pre-paid mobile services in third generation networks |
US20030186722A1 (en) | 2002-03-28 | 2003-10-02 | Comverse, Ltd. | Method and device for real time GSM user device profile interrogation and registration |
US7035385B2 (en) | 2002-03-29 | 2006-04-25 | Bellsouth Intellectual Property Corporation | Method and system for screening calls during voicemail messaging |
US7738892B2 (en) | 2002-05-24 | 2010-06-15 | Kodiak Networks, Inc. | Architecture, client specification and application programming interface (API) for supporting advanced voice services (AVS) including push to talk on wireless handsets and networks |
US7403775B2 (en) | 2002-05-24 | 2008-07-22 | Kodiak Networks, Inc. | Roaming gateway for support of advanced voice services while roaming in wireless communications systems |
JP4254996B2 (en) | 2002-06-04 | 2009-04-15 | 株式会社日立製作所 | Communication system and communication method |
CA2431384C (en) | 2002-06-10 | 2009-08-04 | Research In Motion Limited | Voicemail user interface methods and apparatus for mobile communication devices |
US7091851B2 (en) | 2002-07-02 | 2006-08-15 | Tri-Sentinel, Inc. | Geolocation system-enabled speaker-microphone accessory for radio communication devices |
US7623653B2 (en) | 2002-07-15 | 2009-11-24 | At&T Intellectual Property I, L.P. | Systems and methods for passing through alternative network device features to plain old telephone system (POTS) devices |
US6829473B2 (en) | 2002-07-25 | 2004-12-07 | Utstarcom, Inc. | Roaming and hand-off support for prepaid billing for wireless data networks |
US7184530B2 (en) | 2002-07-25 | 2007-02-27 | Utstarcom, Inc. | Prepaid billing support for simultaneous communication sessions in data networks |
US20040019539A1 (en) | 2002-07-25 | 2004-01-29 | 3Com Corporation | Prepaid billing system for wireless data networks |
US7218709B2 (en) | 2002-07-29 | 2007-05-15 | At&T Corp. | Intelligent voicemail message waiting system and method |
US7349871B2 (en) | 2002-08-08 | 2008-03-25 | Fujitsu Limited | Methods for purchasing of goods and services |
US7383345B2 (en) | 2002-09-04 | 2008-06-03 | Darby & Mohaine L.L.C. | Client-server emulation supporting multicast transmissions of media objects |
US7801133B2 (en) | 2002-11-14 | 2010-09-21 | Northrop Grumman Corporation | Secure network-routed voice multicast dissemination |
US7187941B2 (en) | 2002-11-14 | 2007-03-06 | Northrop Grumman Corporation | Secure network-routed voice processing |
JP3815562B2 (en) | 2002-11-28 | 2006-08-30 | インターナショナル・ビジネス・マシーンズ・コーポレーション | Data processing method, communication system using the same, data transmission device, data reception device, and program |
US20040192378A1 (en) | 2003-03-25 | 2004-09-30 | Comverse, Ltd. | Wireless switchboard system |
KR100877745B1 (en) | 2003-05-08 | 2009-01-12 | 빔플리시티 엘티디. | Methods and systems for instant voice messaging and instant voice message retrieval |
US8638910B2 (en) | 2003-07-14 | 2014-01-28 | Cisco Technology, Inc. | Integration of enterprise voicemail in mobile systems |
US7236738B2 (en) | 2003-08-01 | 2007-06-26 | Pathfire, Inc. | Multicast control systems and methods for dynamic, adaptive time, bandwidth,frequency, and satellite allocations |
GB0319251D0 (en) | 2003-08-15 | 2003-09-17 | British Telecomm | System and method for selecting data providers |
US20060294259A1 (en) | 2003-10-24 | 2006-12-28 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and device for audience monitoring on multicast capable networks |
US7535890B2 (en) | 2003-12-18 | 2009-05-19 | Ayalogic, Inc. | System and method for instant VoIP messaging |
US20050160345A1 (en) | 2003-12-24 | 2005-07-21 | Rod Walsh | Apparatus, system, method and computer program product for reliable multicast transport of data packets |
US7013074B2 (en) | 2004-02-06 | 2006-03-14 | Corning Cable Systems Llc | Optical connection closure having at least one connector port |
US20050215228A1 (en) | 2004-03-26 | 2005-09-29 | Comverse Ltd. | Voice session data session interoperability in the telephony environment |
FR2868643A1 (en) | 2004-03-30 | 2005-10-07 | Thomson Licensing Sa | METHOD OF DISCOVERING APPARATUS CONNECTED TO AN IP NETWORK AND APPARATUS IMPLEMENTING THE METHOD |
US8376855B2 (en) | 2004-06-28 | 2013-02-19 | Winview, Inc. | Methods and apparatus for distributed gaming over a mobile device |
US20060007943A1 (en) | 2004-07-07 | 2006-01-12 | Fellman Ronald D | Method and system for providing site independent real-time multimedia transport over packet-switched networks |
US20060045038A1 (en) | 2004-08-27 | 2006-03-02 | Stanley Kay | Method and apparatus for transmitting and receiving multiple services utilizing a single receiver in a broadband satellite system |
US20060059267A1 (en) | 2004-09-13 | 2006-03-16 | Nokia Corporation | System, method, and device for downloading content using a second transport protocol within a generic content download protocol |
EP1792485A4 (en) | 2004-09-16 | 2009-03-18 | Gen Instrument Corp | System and method for providing authorized access to digital content |
US7266198B2 (en) | 2004-11-17 | 2007-09-04 | General Instrument Corporation | System and method for providing authorized access to digital content |
US7969959B2 (en) | 2004-12-16 | 2011-06-28 | Critical Response Systems, Inc. | Method and apparatus for efficient and deterministic group alerting |
US20060146822A1 (en) | 2004-12-30 | 2006-07-06 | Mikolaj Kolakowski | System, protocol and associated methods for wireless multimedia distribution |
JP2006229884A (en) | 2005-02-21 | 2006-08-31 | Ntt Docomo Inc | Telephone set |
US7493413B2 (en) | 2005-03-15 | 2009-02-17 | Microsoft Corporation | APIS to build peer to peer messaging applications |
US7543023B2 (en) | 2005-03-15 | 2009-06-02 | Microsoft Corporation | Service support framework for peer to peer applications |
US7912959B2 (en) | 2005-03-15 | 2011-03-22 | Microsoft Corporation | Architecture for building a peer to peer messaging platform |
CA2601569C (en) | 2005-03-18 | 2015-08-18 | Gatekeeper Systems, Inc. | Navigation systems and methods for wheeled objects |
EP1891760A1 (en) | 2005-06-03 | 2008-02-27 | Terahop Networks, Inc. | Using wake-up receivers for soft hand-off in wireless communications |
US7387607B2 (en) | 2005-06-06 | 2008-06-17 | Intel Corporation | Wireless medical sensor system |
US7333026B2 (en) | 2005-06-29 | 2008-02-19 | Denso Corporation | Collaborative multicast for dissemination of information in vehicular ad-hoc networks |
WO2007081929A2 (en) * | 2006-01-06 | 2007-07-19 | Orative Corporation | Integration of enterprise voicemail in mobile systems |
US20070180032A1 (en) | 2006-01-27 | 2007-08-02 | Sbc Knowledge Ventures Lp | Method for email service in a visual voicemail system |
US20080002691A1 (en) | 2006-06-29 | 2008-01-03 | Qi Emily H | Device, system and method of multicast/broadcast communication |
US20080002621A1 (en) | 2006-06-29 | 2008-01-03 | Boris Ginzburg | Reliable multicast techniques for wireless links |
US8727208B2 (en) | 2006-06-30 | 2014-05-20 | Intel-Ge Care Innovations Llc | Method for identifying pills via an optical device |
US20080086700A1 (en) | 2006-10-06 | 2008-04-10 | Rodriguez Robert A | Systems and Methods for Isolating On-Screen Textual Data |
US8832277B2 (en) | 2006-11-30 | 2014-09-09 | Red Hat, Inc. | Community tagging of a multimedia stream and linking to related content |
US8180029B2 (en) | 2007-06-28 | 2012-05-15 | Voxer Ip Llc | Telecommunication and multimedia management method and apparatus |
US8250181B2 (en) | 2007-10-19 | 2012-08-21 | Voxer Ip Llc | Method and apparatus for near real-time synchronization of voice communications |
US8099512B2 (en) | 2007-10-19 | 2012-01-17 | Voxer Ip Llc | Method and system for real-time synchronization across a distributed services communication network |
-
2010
- 2010-03-10 US US12/721,442 patent/US8542804B2/en active Active
- 2010-03-17 WO PCT/US2010/027687 patent/WO2011053371A1/en active Application Filing
Patent Citations (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5651054A (en) * | 1995-04-13 | 1997-07-22 | Active Voice Corporation | Method and apparatus for monitoring a message in a voice mail system |
US5737011A (en) * | 1995-05-03 | 1998-04-07 | Bell Communications Research, Inc. | Infinitely expandable real-time video conferencing system |
US7039675B1 (en) * | 1998-07-06 | 2006-05-02 | Canon Kabushiki Kaisha | Data communication control apparatus and method adapted to control distribution of data corresponding to various types of a plurality of terminals |
US6175619B1 (en) * | 1998-07-08 | 2001-01-16 | At&T Corp. | Anonymous voice communication using on-line controls |
US6564261B1 (en) * | 1999-05-10 | 2003-05-13 | Telefonaktiebolaget Lm Ericsson (Publ) | Distributed system to intelligently establish sessions between anonymous users over various networks |
US7039040B1 (en) * | 1999-06-07 | 2006-05-02 | At&T Corp. | Voice-over-IP enabled chat |
US6807565B1 (en) * | 1999-09-03 | 2004-10-19 | Cisco Technology, Inc. | Instant messaging system using voice enabled web based application server |
US6931114B1 (en) * | 2000-12-22 | 2005-08-16 | Bellsouth Intellectual Property Corp. | Voice chat service on telephone networks |
US6721703B2 (en) * | 2001-03-02 | 2004-04-13 | Jay M. Jackson | Remote deposition system and method |
US20020146110A1 (en) * | 2001-04-06 | 2002-10-10 | Fromm Laurence J. | Customer interaction system |
US7047030B2 (en) * | 2001-05-02 | 2006-05-16 | Symbian Limited | Group communication method for a wireless communication device |
US7111044B2 (en) * | 2002-07-17 | 2006-09-19 | Fastmobile, Inc. | Method and system for displaying group chat sessions on wireless mobile terminals |
US20050102358A1 (en) * | 2003-11-10 | 2005-05-12 | Gold Stuart A. | Web page monitoring and collaboration system |
US7305438B2 (en) * | 2003-12-09 | 2007-12-04 | International Business Machines Corporation | Method and system for voice on demand private message chat |
US20060248149A1 (en) * | 2005-04-28 | 2006-11-02 | Christian Kraft | Mobile communication terminal and method |
US7626951B2 (en) * | 2005-10-06 | 2009-12-01 | Telecommunication Systems, Inc. | Voice Over Internet Protocol (VoIP) location based conferencing |
US20080147910A1 (en) * | 2006-09-29 | 2008-06-19 | Hibbard Gary D | Provisional load sharing buffer for reducing hard disk drive (hdd) activity and improving reliability and lifetime |
US20090063698A1 (en) * | 2007-09-04 | 2009-03-05 | Aspera, Inc. | Method and system for aggregate bandwith control |
US20090175425A1 (en) * | 2008-01-03 | 2009-07-09 | Apple Inc. | Outgoing voice mail recording and playback |
Cited By (46)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100135285A1 (en) * | 2005-05-06 | 2010-06-03 | Ipsobox, S.A. De C.V. | Multi-Networking Communication System and Method |
US20100177877A1 (en) * | 2009-01-09 | 2010-07-15 | Microsoft Corporation | Enhanced voicemail usage through automatic voicemail preview |
US8345832B2 (en) * | 2009-01-09 | 2013-01-01 | Microsoft Corporation | Enhanced voicemail usage through automatic voicemail preview |
US20130217446A1 (en) * | 2010-07-06 | 2013-08-22 | Research In Motion Limited | System and Method for Providing Feedback to a Caller in Response to The Modulation of an Incoming Voice Communication |
GB2483280A (en) * | 2010-09-02 | 2012-03-07 | Skype Ltd | Point-to-point communication with persistent connection to front-end server |
US20140009567A1 (en) * | 2011-01-04 | 2014-01-09 | Telefonaktiebolaget L M Ericsson (Publ) | Local Media Rendering |
US9560096B2 (en) * | 2011-01-04 | 2017-01-31 | Telefonaktiebolaget Lm Ericsson (Publ) | Local media rendering |
US20150237086A1 (en) * | 2011-01-04 | 2015-08-20 | Telefonaktiebolaget L M Ericsson (Publ) | Local Media Rendering |
US8994782B2 (en) * | 2011-01-04 | 2015-03-31 | Telefonaktiebolaget L M Ericsson (Publ) | Local media rendering |
US20120178536A1 (en) * | 2011-01-11 | 2012-07-12 | Ncsoft Corporation | Method for inviting users to game through chatting in mobile platform |
US20130055099A1 (en) * | 2011-08-22 | 2013-02-28 | Rose Yao | Unified Messaging System with Integration of Call Log Data |
US20130171975A1 (en) * | 2012-01-04 | 2013-07-04 | Qualcomm Incorporated | Selectively Buffering Media In Response To A Session Disruption Within A Wireless Communications System |
EP2819381A4 (en) * | 2012-02-21 | 2015-04-01 | Tencent Tech Shenzhen Co Ltd | Method and system for transferring speech information |
EP2819381A1 (en) * | 2012-02-21 | 2014-12-31 | Tencent Technology (Shenzhen) Co., Ltd | Method and system for transferring speech information |
US20140357235A1 (en) * | 2012-02-21 | 2014-12-04 | Tencent Technology (Shenzhen) Company Limited | Method and System for Transferring Speech Information |
US9232371B2 (en) * | 2012-02-21 | 2016-01-05 | Tencent Technology (Shenzhen) Company Limited | Method and system for transferring speech information |
US8781093B1 (en) | 2012-04-18 | 2014-07-15 | Google Inc. | Reputation based message analysis |
US9094325B2 (en) | 2012-04-18 | 2015-07-28 | Google Inc. | Reputation based message analysis |
WO2014094914A1 (en) * | 2012-12-21 | 2014-06-26 | Telefonaktiebolaget L M Ericsson (Publ) | Real-time monitoring/interrupting of voicemail message recording |
US20160219249A1 (en) * | 2012-12-28 | 2016-07-28 | Glide Talk Ltd. | Proactively preparing to display multimedia data |
US10579202B2 (en) * | 2012-12-28 | 2020-03-03 | Glide Talk Ltd. | Proactively preparing to display multimedia data |
US11144171B2 (en) | 2012-12-28 | 2021-10-12 | Glide Talk Ltd. | Reduced latency server-mediated audio-video communication |
US20170155729A1 (en) * | 2013-07-11 | 2017-06-01 | Apollo Education Group, Inc. | Message Consumer Orchestration Framework |
US10148782B2 (en) * | 2013-07-11 | 2018-12-04 | Apollo Education Group, Inc. | Message consumer orchestration framework |
AU2014296807B2 (en) * | 2013-08-02 | 2017-06-01 | Whatsapp Inc. | Voice communications with real-time status notifications |
KR20160102318A (en) * | 2013-08-02 | 2016-08-29 | 왓츠앱 인크. | Voice communications with real-time status notifications |
WO2015017028A1 (en) * | 2013-08-02 | 2015-02-05 | Whatsapp Inc. | Voice communications with real-time status notifications |
US20170149978A1 (en) * | 2013-08-02 | 2017-05-25 | Whatsapp Inc. | Voice communications with real-time status notifications |
CN110620720A (en) * | 2013-08-02 | 2019-12-27 | 沃兹艾普公司 | Voice communication with real-time status notification |
JP2016527638A (en) * | 2013-08-02 | 2016-09-08 | ワッツアップ・インコーポレイテッドWhatsapp Inc. | Voice communication using real-time status notification |
US9819801B2 (en) * | 2013-08-02 | 2017-11-14 | Whatsapp Inc. | Voice communications with real-time status notifications |
KR102133747B1 (en) * | 2013-08-02 | 2020-07-15 | 왓츠앱 인크. | Voice communications with real-time status notifications |
KR20160042912A (en) * | 2013-08-02 | 2016-04-20 | 왓츠앱 인크. | Voice communications with real-time status notifications |
KR102133745B1 (en) | 2013-08-02 | 2020-07-15 | 왓츠앱 인크. | Voice communications with real-time status notifications |
US10608978B2 (en) | 2013-08-02 | 2020-03-31 | Whatsapp Inc. | Voice communications with real-time status notifications |
US9226121B2 (en) | 2013-08-02 | 2015-12-29 | Whatsapp Inc. | Voice communications with real-time status notifications |
TWI638562B (en) * | 2013-08-02 | 2018-10-11 | WhatsApp公司 | Voice communications with real-time status notifications |
CN105580325A (en) * | 2013-08-02 | 2016-05-11 | 沃兹艾普公司 | Voice communications with real-time status notifications |
US9973462B1 (en) * | 2013-10-21 | 2018-05-15 | Google Llc | Methods for generating message notifications |
TWI561052B (en) * | 2014-07-08 | 2016-12-01 | Hooloop Corp | Methods and systems for voice message association and playback, and related computer program products |
US10812438B1 (en) | 2015-05-26 | 2020-10-20 | Facebook, Inc. | Integrated telephone applications on online social networks |
US10003563B2 (en) | 2015-05-26 | 2018-06-19 | Facebook, Inc. | Integrated telephone applications on online social networks |
WO2017207780A1 (en) * | 2016-06-02 | 2017-12-07 | Deutsche Telekom Ag | Apparatuses and methods for communicating via a communication network |
EP3253019A1 (en) * | 2016-06-02 | 2017-12-06 | Deutsche Telekom AG | Devices and method for communicating via a communication network |
US10097499B1 (en) | 2017-07-10 | 2018-10-09 | Qualcomm Incorporated | Private message notifications |
US10447842B1 (en) | 2018-11-28 | 2019-10-15 | Motorola Solutions, Inc. | Push-to-talk to messaging application graphical interface |
Also Published As
Publication number | Publication date |
---|---|
US8542804B2 (en) | 2013-09-24 |
WO2011053371A1 (en) | 2011-05-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8542804B2 (en) | Voice and text mail application for communication devices | |
US10375139B2 (en) | Method for downloading and using a communication application through a web browser | |
US8670792B2 (en) | Time-shifting for push to talk voice communication systems | |
US8533611B2 (en) | Browser enabled communication device for conducting conversations in either a real-time mode, a time-shifted mode, and with the ability to seamlessly shift the conversation between the two modes | |
US8321582B2 (en) | Communication application for conducting conversations including multiple media types in either a real-time mode or a time-shifted mode | |
US20120114108A1 (en) | Messaging communication application | |
JP5871341B2 (en) | Telecommunications and multimedia management method and apparatus | |
US8396456B2 (en) | Visual voicemail management | |
US9054912B2 (en) | Communication application for conducting conversations including multiple media types in either a real-time mode or a time-shifted mode | |
US8340646B2 (en) | Direct voicemailing | |
US20100125791A1 (en) | User interface for a telecommunication and multimedia management system and method | |
US8855276B2 (en) | Telecommunication and multimedia management method and apparatus | |
US20050210394A1 (en) | Method for providing concurrent audio-video and audio instant messaging sessions | |
WO2009126426A1 (en) | Time-shifting for push to talk voice communication systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: REBELVOX LLC,CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:KATIS, THOMAS E.;PANTTAJA, JAMES T.;PANTTAJA, MARY G.;AND OTHERS;REEL/FRAME:024061/0615 Effective date: 20100309 Owner name: REBELVOX LLC, CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:KATIS, THOMAS E.;PANTTAJA, JAMES T.;PANTTAJA, MARY G.;AND OTHERS;REEL/FRAME:024061/0615 Effective date: 20100309 |
|
AS | Assignment |
Owner name: VOXER IP LLC, CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:REBELVOX LLC;REEL/FRAME:025907/0274 Effective date: 20110224 |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
FPAY | Fee payment |
Year of fee payment: 4 |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 8TH YR, SMALL ENTITY (ORIGINAL EVENT CODE: M2552); ENTITY STATUS OF PATENT OWNER: SMALL ENTITY Year of fee payment: 8 |
|
FEPP | Fee payment procedure |
Free format text: ENTITY STATUS SET TO UNDISCOUNTED (ORIGINAL EVENT CODE: BIG.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |