Consumers, businesses, and governments alike are more dependent than ever on modern telecommunication systems to exchange vast amounts of information in a growing variety of formats (e.g., voice, video conferencing, text messaging, multimedia messaging, instant messaging, and electronic mail). This information ranges from normal day-to-day conversations to time-critical business or public safety information. In many cases, users find the need to record and store these communications because of the importance or value of the information.
For certain types of communications (e.g., text messaging, multimedia messaging, instant messaging, and electronic mail), the process of recording and storing the communication is relatively easy. These types of communications are transmitted in a form that is already stored in the memory of the device used to transmit and/or receive the communication. The user need only designate which items the user wants to store. Additionally, with the exception of instant messaging, these types of communications are not conducted in real-time which gives the user ample time and opportunity to decide whether to store the communication session.
However, for communications that involve real-time exchanges between one or more parties (e.g., voice calls, video calls, and video conferencing), the process for recording and storing the communication is not straightforward, and, at times, not possible. Conventional telecommunication systems do not provide a universal means to record these types of real-time communications.
Therefore, there is a need for an approach that provides for automated and seamless buffering, recording, and delivery of real-time communications using existing communication devices.
Various exemplary embodiments are illustrated by way of example, and not by way of limitation, in the figures of the accompanying drawings in which like reference numerals refer to similar elements and in which:
A preferred apparatus, method, and system for buffering, recording, and delivering real-time communications are described. In the following description, for the purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the preferred embodiments of the invention. It is apparent, however, that the preferred embodiments may be practiced without these specific details or with an equivalent arrangement. In other instances, well-known structures and devices are shown in block diagram form in order to avoid unnecessarily obscuring the preferred embodiments of the invention.
Although various exemplary embodiments are described with respect to a mobile device, it is contemplated that these embodiments have applicability to any device capable of communicating over a network, such as a home communication terminal (HCT), a digital home communication terminal (DHCT), television system Set Top Box (STB), landline connected to a Public Switched Telephone Network (PSTN), a personal digital assistant (PDA), laptop computer, and/or a personal computer (PC), as well as other like technologies and customer premises equipment (CPE).
In this embodiment, the radio network 101 is a cellular network and may employ various technologies including, for example, code division multiple access (CDMA), enhanced data rates for global evolution (EDGE), general packet radio service (GPRS), global system for mobile communications (GSM), Internet protocol multimedia subsystem (IMS), universal mobile telecommunications system (UMTS), etc., as well as any other suitable wireless medium, e.g., microwave access (WiMAX), Long Term Evolution (LTE) networks, wireless fidelity (WiFi), satellite, and the like.
As discussed above, conventional telecommunication systems lack the built-in capability to automatically buffer, record, and deliver real-time communication sessions. Generally, a user must use additional recording equipment (e.g., tape recorders or video recorders) to facilitate capture of the information. Often times, the user will find that this additional equipment is not present or available when the user wants to record a communication. Furthermore, because the communication is occurring in real-time, the user may not realize that he or she wants to record the information until the communication has already been received. At that point, the information is already lost. Thus, without preconfigured or installed recording equipment, users risk losing valuable information exchanged during real-time communications. Furthermore, communications service providers are continually challenged to develop new services and features to remain competitive and to develop new sources of revenue.
To address the above problem, the content recording platform 105 uses a content buffering, recording, and delivery control component to interact with a real-time communications network (e.g., system 100) and provide content recording services to network users. The user can configure the service to, for example, “always buffer 30 minutes of voice and multimedia (e.g., voice and video) communication sessions” and configure a key sequence (“*R”) on the communication device to initiate recording and delivery of the content. This configuration might, for example, result in receiving an E-mail with an attached audio file of a voice conversation.
The following examples illustrate the different capabilities of the content recording platform 105.
In a first example, a school administrator answers a phone call in which the caller makes a bomb threat to the school. Unknown to the caller, the administrator enters a key sequence on her telephone to initiate recording and immediate delivery of the phone call as she continues talking. The content recording platform 105 immediately delivers an E-mail containing an audio file of a recording of the phone call up to the point of the recording and delivery request. The administrator immediately forwards the E-mail to her emergency contact list. As the call continues, the administrator enters the recording and delivery key sequence several times during the conversation. Each time, the content recording platform 105 delivers a recording of the entire conversation up to initiation of the record and deliver request. At the end of the phone call, the content recording platform 105 delivers an E-mail with an audio file of the entire conversation. The administrator also may configure the option to create a speech-to-text transcript of the recording that the content recording platform 105 can deliver by E-mail or other text-based messaging options (e.g., short messaging service (SMS) or multimedia messaging service (MMS)).
In another example, a business user watching and listening to a routine video conference call realizes important business changes were just announced. She decides that she did not capture all the details of the announcement and enters her recording key sequence on her personal computer. At the end of the video conference, the content recording platform 105 posts a recording of the multimedia communication session to an Internet site where she can later view, retrieve, copy, edit and forward the relevant portions of the video conference call to her team.
In a final example, a young woman is driving late at night on a rural highway and is pulled over by a vehicle with a flashing light. The young woman is unsure of the identity of the man in the car and initiates a video call to her father as a man approaches. The father enters his key sequence on his phone to record and immediately deliver the video call. The father then asks his daughter to remain in the car with the doors locked until the father can verify the approaching man's identity. As preconfigured by the father, the content recording platform 105 immediately delivers an E-mail containing a video capture of the man approaching the car. The father forwards the email to the local police to check the man's identity. Once the local police verifies the man's identity as a police officer, the father relays the information to the daughter.
As seen in
The content recording platform 105 is connected to a mobile device 103 via radio network 101. The content recording platform 105 also has connectivity to a data network 112 that supports an end terminal 113. The end terminal 113 can be any computing device that provides access to the content recording platform 105. Under certain embodiments, end terminal 113 can include laptop computer 117 among other like computing devices. It is contemplated that a user can access content recording platform 105 functions and settings for the mobile device 103 through either the end terminal 113 or laptop 117. The data network 112 maybe any local area network (LAN), metropolitan area network (MAN), wide area network (WAN), the Internet, or any other suitable packet-switched network, such as a commercially owned, proprietary packet-switched network, e.g., a proprietary cable or fiber-optic network.
The data network 112 additionally permits a host 115 to access content recording platform 105 functions and settings via a graphical user interface (GUI) such as a browser application or any web-based application for the mobile device 103. As a result, the user of the mobile device 103 can input and update controls, rules, and configurations for the content recording platform 105 through a web browser, through end terminal 113, through laptop 117, or through the mobile device 103 itself. Alternatively, the host 115 can run applications to access content recording platform 105 functions and settings.
The content recording platform 105 is linked to the data network 112 and a telephony gateway 119 for connectivity to the telephony network 121. In this example, the telephony network 121 can provide access from the end terminal 123 or telephony device 125 to the content recording platform 105. In this way, users of telephonic devices (e.g., end terminal 123 and telephony device 125) on plain old telephone service (POTS) can use these devices to access the content buffering, recording, and delivery services provided by platform 105. The telephony network 121 may be a Public Switched Telephone Network (PSTN), a Public Land Mobile Network (PLMN), or similar.
The content recording control application 203 interacts with the user profile database 107 and the content control rules database 109 to determine the content buffering, recording, and delivery rules applicable to each user and communication session. The application 203 then commands the MRF 209 to buffer and/or record communication sessions according to the user's request and store the recording in the content storage database 111. To assist in the delivery of a recorded communication session, the application 203 incorporates a media translation control module 205 that commands the MRF 209 to convert the recorded session to a format requested by the user (e.g., voice mail, E-mail, SMS, MMS, etc.). The MRF 209 can include additional subsystems (e.g., speech recognition engine) to help convert one media format to another (e.g., creation of a speech-to-text transcript of a voice communication session).
The operation of the content recording platform 105 is now described in
The content control rules and configuration directs how the content recording platform 105 will buffer, record, and deliver real-time communications. These rules can be quite extensive and include specifications on what communication sessions to buffer (e.g., buffer all real-time communications, buffer voice communications only, buffer video communications only), how long to buffer (e.g., 5 minutes, 15 minutes, 30 minutes, etc.), format of the recording (e.g., audio recording, video recording, speech-to-text transcript), delivery mechanism (e.g., voice mail, E-mail, SMS, MMS, Internet link), and delivery device (e.g., user's device, a third party's device). It is contemplated that the user can use the same rules and configuration for all real-time communications or can create separate sets of rules for each type of communication. For example, the user may have one set of rules for voice communications, another set of rules for video communications, and a third set for multimedia conferencing. Additionally, the user can configure rules based on their different public user identities (e.g., work, student, and home identities). Alternatively, these rules can be pre-defined by the service provider and serve as defaults.
As part of the setup process, the content recording platform I 105 can further prompt the user to create unique key sequences to invoke specific recording rules. For example, the user can designate that the key sequence “*R” to initiate recording of the communication session or the key sequence “*D” to immediately deliver a recording of the communication up to the point of the request. It is contemplated that the user can create any number of key sequences to dynamically control platform parameters including delivery format or device.
In step 305, the content recording platform 105 completes the subscription setup process by storing the user profile in the user profile database 107 and, optionally, the rules and configuration in the content control rules database 109. In one embodiment, the user can modify the stored configuration at any time, using any appropriate mechanism and device (e.g., mobile device 103). Further, it is contemplated that such rules can be specified by another user or entity (e.g., service provider, system administrator, etc.).
The content recording platform 105 enables the user to have great flexibility in determining how the platform 105 will record and deliver real-time communication sessions. Three exemplary recording options are described below.
On receipt of this request, the content recording platform 105 begins recording the communication session including the portion of the session that has already been captured in the platform's buffer (step 503). In this way, the user can initiate a recording request any time before the content buffer reaches its preconfigured capacity and still receive a complete recording of the communication session. If the buffer reaches its recording capacity before the user initiates a recording request, the content recording platform will deliver the content available in the buffer along with the rest of the communication from the point of the recording request.
The content recording platform 105 continues to monitor for and execute additional user requests until the end of the communication session (step 505). At the end of the communication session in step 507, the content recording platform 105 converts the recording into the user's requested format and deliver the recording to the specified device or devices according to the user's preferences and rules contained in the user profile database 107 and content control rules database 109. In this embodiment, available formats for recordings of real-time communication sessions include audio recordings, video recordings, and speech-to-text transcripts. The recording format dictates the delivery mechanisms available to the user. For example, if the user selects delivery of the communication session as an audio recording, the content recording platform 105 may deliver the audio recording as a voice mail (e.g., the user calls a central number to retrieve the recording), E-mail attachment, MMS message, or an Internet link to the file. Similarly, the content recording platform 105 may deliver a video recording as an E-mail attachment, MMS message, or an Internet link to the file. For speech-to-text transcripts, the platform 105 may deliver the transcript as an E-mail attachment, sequence of SMS messages, Instant Message, or an Internet link to the file.
The content recording platform 105 also enables the user to freely choose what device or devices will receive the recorded communication session. Based on the user's preferences and rules, the platform 105 can deliver the recording to the user's device (e.g., mobile device 103, laptop 117, telephony device 125) and/or to third party devices in any combination or number. For example, the user may set up a distribution list of devices that will automatically receive a recorded communication. The user can even configure the content recording platform 105 to record a communication session and deliver it to local authorities through the 911 emergency phone line.
In response to this request, the content recording platform 105 will begin recording the session including the portion of the communication of the session that has already been captured by the platform's buffer (step 603), just as in a normal recording request. However, the content recording platform 105 also will immediately deliver a recording of the session up to the point of the recording request to the specified device or devices in the specified format (605). In this way, the user can request and receive delivery of a recording of a communication session even before the session has ended.
After delivering the partial recording, the content recording platform 105 continues to record the rest of the communication session and monitors for additional user requests (steps 607-609). The user, for example, can initiate one or more additional requests for a partial recording during the communication session. Each time the request is received, the content recording platform 105 delivers a recording of the entire session up to the point of the recording request. Each subsequent recording request results in a recording that includes additional portions of the session recorded since the prior request. At the end of the communication session in step 611, the content recording platform 105 will deliver a final complete recording of the communication session to the specified device or devices in the specified format.
After receiving the request, the content recording platform 105 starts recording the communication session including the portion of the session that has already been captured by the platform's buffer (step 703). At the same time, the content recording platform 105 immediately begin providing a live stream of the communication session to the specified device or devices in the specified format (step 705). In this embodiment, the content recording platform 105 can provide a live audio or video stream via an Internet link or provide a continuous speech-to-text transcription via SMS, video captioning, Instant Messaging, or E-mail. During the communication session, the content recording platform 105 continues to monitor for and execute additional user requests (step 707). At the end of the communication session in step 709, the content recording platform 105 delivers a final complete recording of the communication session to the specified device or devices in the specified format.
During the communication session, the user can request a recording of the ongoing session by entering a preconfigured key sequence (step 803). During setup, the user creates any number of recording rules and designates unique key sequences to invoke them. For example, the user can initiate a recording and delivery of the communication session after the session ends by entering the key sequence “*R.” If the user wants to deliver a live stream of the session, the user can enter the key sequence “*L.” Additionally, the user can designate certain key sequences to initiate recordings that are “secret” (i.e., undetected by other communication parties.). For instance, in the bomb threat example discussed above, the administrator most likely would not want to alert the person making the bomb threat the she is recording the communication session. In this case, the administrator can use the “secret” key sequence to initiate recording without alerting the other party. The content recording platform 105 will respond to the user's request and provide the requested recording. After the user ends the communication session in step 805, the user will receive a complete recording of the communication in the user's requested format and sent to the user's designated device or devices per step 807.
In certain embodiments, the mobile device 103 can be equipped with a variety of sensory input and output mechanisms such as audio (e.g., through a microphone and speaker), video (e.g., through a camera and video display), and touch (e.g., through touch input and haptic feedback) to provide a richer multimedia experience. In this example, mobile device 103 includes video display 909 to facilitate video calls and multimedia conferencing.
It is contemplated that the multimedia capabilities of the laptop 117 can be expanded with the addition of the various sensory input and output mechanisms discussed above with respect to mobile device 103.
The processes described herein for providing content buffering, recording, and delivery may be implemented via software, hardware (e.g., general processor, Digital Signal Processing (DSP) chip, an Application Specific Integrated Circuit (ASIC), Field Programmable Gate Arrays (FPGAs), etc.), firmware or a combination thereof. Such exemplary hardware for performing the described functions is detailed below.
The computer system 1100 may be coupled via the bus 1101 to a display 1111, such as a cathode ray tube (CRT), liquid crystal display, active matrix display, or plasma display, for displaying information to a computer user. An input device 1113, such as a keyboard including alphanumeric and other keys, is coupled to the bus 1101 for communicating information and command selections to the processor 1103. Another type of user input device is a cursor control 1115, such as a mouse, a trackball, or cursor direction keys, for communicating direction information and command selections to the processor 1103 and for controlling cursor movement on the display 1111.
According to an embodiment of the invention, the processes described herein are performed by the computer system 1100, in response to the processor 1103 executing an arrangement of instructions contained in main memory 1105. Such instructions can be read into main memory 1105 from another computer-readable medium, such as the storage device 1109. Execution of the arrangement of instructions contained in main memory 1105 causes the processor 1103 to perform the process steps described herein. One or more processors in a multi-processing arrangement may also be employed to execute the instructions contained in main memory 1105. In alternative embodiments, hard-wired circuitry may be used in place of or in combination with software instructions to implement the embodiment of the invention. Thus, embodiments of the invention are not limited to any specific combination of hardware circuitry and software.
The computer system 1100 also includes a communication interface 1117 coupled to bus 1101. The communication interface 1117 provides a two-way data communication coupling to a network link 1119 connected to a local network 1121. For example, the communication interface 1117 may be a digital subscriber line (DSL) card or modern, an integrated services digital network (ISDN) card, a cable modem, a telephone modem, or any other communication interface to provide a data communication connection to a corresponding type of communication line. As another example, communication interface 1117 may be a local area network (LAN) card (e.g. for Ethernet™ or an Asynchronous Transfer Model (ATM) network) to provide a data communication connection to a compatible LAN. Wireless links can also be implemented. In any such implementation, communication interface 1117 sends and receives electrical, electromagnetic, or optical signals that carry digital data streams representing various types of information. Further, the communication interface 1117 can include peripheral interface devices, such as a Universal Serial Bus (USB) interface, a PCMCIA (Personal Computer Memory Card International Association) interface, etc. Although a single communication interface 1117 is depicted in
The network link 1119 typically provides data communication through one or more networks to other data devices. For example, the network link 1119 may provide a connection through local network 1121 to a host computer 1123, which has connectivity to a network 1125 (e.g. a wide area network (WAN) or the global packet data communication network now commonly referred to as the “Internet”) or to data equipment operated by a service provider. The local network 1121 and the network 1125 both use electrical, electromagnetic, or optical signals to convey information and instructions. The signals through the various networks and the signals on the network link 1119 and through the communication interface 1117, which communicate digital data with the computer system 1100, are exemplary forms of carrier waves bearing the information and instructions.
The computer system 1100 can send messages and receive data, including program code, through the network(s), the network link 1119, and the communication interface 1117. In the Internet example, a server (not shown) might transmit requested code belonging to an application program for implementing an embodiment of the invention through the network 1125, the local network 1121 and the communication interface 1117. The processor 1103 may execute the transmitted code while being received and/or store the code in the storage device 1109, or other non-volatile storage for later execution. In this manner, the computer system 1100 may obtain application code in the form of a carrier wave.
The term “computer-readable medium” as used herein refers to any medium that participates in providing instructions to the processor 1103 for execution. Such a medium may take many forms, including but not limited to non-volatile media, volatile media, and transmission media. Non-volatile media include, for example, optical or magnetic disks, such as the storage device 1109. Volatile media include dynamic memory, such as main memory 1105. Transmission media include coaxial cables, copper wire and fiber optics, including the wires that comprise the bus 1101. Transmission media can also take the form of acoustic, optical, or electromagnetic waves, such as those generated during radio frequency (RF) and infrared (IR) data communications. Common forms of computer-readable media include, for example, a floppy disk, a flexible disk, hard disk, magnetic tape, any other magnetic medium, a CD-ROM, CDRW, DVD, any other optical medium, punch cards, paper tape, optical mark sheets, any other physical medium with patterns of holes or other optically recognizable indicia, a RAM, a PROM, and EPROM, a FLASH-EPROM, any other memory chip or cartridge, a carrier wave, or any other medium from which a computer can read.
Various forms of computer-readable media may be involved in providing instructions to a processor for execution. For example, the instructions for carrying out at least part of the embodiments of the invention may initially be borne on a magnetic disk of a remote computer. In such a scenario, the remote computer loads the instructions into main memory and sends the instructions over a telephone line using a modem. A modem of a local computer system receives the data on the telephone line and uses an infrared transmitter to convert the data to an infrared signal and transmit the infrared signal to a portable computing device, such as a personal digital assistant (PDA) or a laptop. An infrared detector on the portable computing device receives the information and instructions borne by the infrared signal and places the data on a bus. The bus conveys the data to main memory, from which a processor retrieves and executes the instructions. The instructions received by main memory can optionally be stored on storage device either before or after execution by processor.
While certain exemplary embodiments and implementations have been described herein, other embodiments and modifications will be apparent from this description. Accordingly, the invention is not limited to such embodiments, but rather to the broader scope of the presented claims and various obvious modifications and equivalent arrangements.