The present invention relates to telecommunications equipment in general, and, in particular, to techniques for intelligently notifying the user of a telecommunications terminal of the arrival of a message.
When telecommunications terminal 105 receives a call, a record of the call is typically stored in a call log that specifies information about the call such as the identity of the caller, what time the call was received, whether the call was answered or missed, the duration of the call, etc. A call log can similarly maintain a record of outgoing calls that are placed by the user of telecommunications terminal 105.
The present invention enables a telecommunications terminal to notify its user of the arrival of a message via a ringtone whose properties are based on information from one or more call logs. In particular, in the illustrative embodiments a network infrastructure element (e.g., a switch, a wireless base station, a server, etc.) that receives a message directed to a telecommunications terminal sets the values of one or more properties of a ringtone (e.g., tempo, volume, pitch, rhythm, etc.) based on information from one or more call logs. Pertinent call logs might include call logs associated with the telecommunications terminal that receives the call, call logs associated with other telecommunications terminals used by the user, call logs associated with a particular private branch exchange (PBX), etc. Examples of such call log information include: (i) the time of the most recent prior message from the caller; (ii) the number of times that the caller has attempted to contact the user during a particular time interval; etc.
For example, if a telecommunications terminal plays the Beatles song “Hello Goodbye” when a message arrives, the song might be played in a variety of ways, depending on attributes of the message:
In the first illustrative embodiment, when a network infrastructure element receives a message for sending to a telecommunications terminal, the element sends a signal that represents an instance of a ringtone (e.g., an audio clip, a Musical Instrument Digital Interface [MIDI] file, etc.) along with the message. The values of one or more musical properties of the ringtone instance, such as tempo, volume, pitch, rhythm, etc., are established based on information from one or more call logs.
In the second illustrative embodiment, the network infrastructure element determines property values for music (e.g., key signature equals C major, metronome marking equals 140 beats per minute, etc.) based on one or more attributes of the message, and sends the property values, but not an instance of a ringtone, to the telecommunications terminal along with the message. The telecommunications terminal then plays a ringtone that is stored at the terminal in accordance with the received property values.
The illustrative embodiments of the present invention similarly establish values of properties of images and text that are displayed to notify the user of an incoming message. Values of properties such as brightness, size, contrast, resolution, etc. can be changed without interfering with the user's ability to recognize an image. For example, when an incoming message is determined to be important based on a call log (e.g., the first ten messages from a new client, etc.), an image might be displayed at a higher brightness, or an animated image might move at a faster speed.
As in the case of ringtones, in the first illustrative embodiment the network infrastructure element sends a signal that represents an instance of an image (e.g., a Joint Photographic Experts Group [JPEG] file, a Graphics Interchange Format [GIF] file, etc.) to the telecommunications terminal along with the message, where the values of one or more properties of the image instance are established based on information from one or more call logs.
In the second illustrative embodiment, the network infrastructure element determines property values for images (e.g., resolution equals 100 by 120 pixels, saturation equals 90%, etc.) based on one or more call logs, and sends the property values, but not an instance of an image, to the telecommunications terminal along with the message. The telecommunications terminal then displays an image that is stored at the terminal in accordance with the received property values.
The illustrative embodiments of the present invention similarly establish property values for text (e.g., font size, font style, color, dynamic behavior such as flashing, etc.) that is displayed to notify the user of an incoming message. For example, when an incoming message is determined to be important based on information from a call log, a text notification might flash or might be rendered in a bold font to indicate the importance of the message. For text notifications, both the first and second illustrative embodiments send one or more property values of text with the message (i.e., no text is sent), and the telecommunications terminal displays an appropriate text string in accordance with the received property values.
In some embodiments of the present invention, one or more property values of the output signal (i.e., ringtone, image, or text) might also be based on one or more attributes of the incoming message (e.g., the identity of the sender of the message, a priority level embedded in the message, a subject associated with the message, the semantic content of the message, the location from which the message was sent, etc.).
The illustrative embodiment comprises: (a) receiving at a telecommunications terminal (i) a message, and (ii) a first signal representing an instance of a musical composition; and (b) outputting an acoustic second signal based on the first signal to notify the user of the telecommunications terminal of the arrival of the message; wherein the value of a property of the instance is based on information from one or more call logs; and wherein the property is a property of music that is independent of melody.
The terms appearing below is given the following definition for use in this Description and the appended Claims.
For the purposes of the specification and claims, the term “message” is defined as a signal sent from a first telecommunications terminal to a second telecommunications terminal that does one or both of the following: (i) transmits information, or (ii) attempts to establish a dialogue between the terminals. Examples of messages include a telephone call setup signal, an email, an instant message [IM], etc.
For the purposes of the specification and claims, the term “call” is defined similarly to “message”: a signal sent from a first telecommunications terminal to a second telecommunications terminal that does one or both of the following: (i) transmits information, or (ii) attempts to establish a dialogue between the terminals. Examples of calls include a telephone call setup signal, an email, an instant message [IM], etc.
For the purposes of the specification and claims, a person that initiates a signal that is sent from a first telecommunications terminal to a second telecommunications terminal is referred to as the “caller” when the signal is referred to as a “call,” and is referred to as “the sender” when the signal is referred to as a “message.”
For the purposes of the specification and claims, the term “musical composition” is defined as either a piece of music or a sound effect (e.g., one or more beeps, etc.).
For the purposes of the specification and claims, the term “call log” is defined as a data structure that stores information about calls and/or messages.
Telecommunications terminal 305 is a wireless telephone, a wireline telephone, a personal digital assistant (PDA), etc. that is capable of receiving messages (e.g., voice telephone calls, email messages, Short Message Service [SMS] messages, etc.) from other telecommunications terminals via network 320, and of notifying its user of the arrival of a message as described below and with respect to
Network 320 is a communications network (e.g., the Public Switched Telephone Network [PSTN], a cellular wireless network, a wireless local-area network, etc.) that sends messages to telecommunications terminal 305 as described below and with respect to
Receiver 501 receives signals from one or both of telecommunications terminal 305 and other elements 401, depending on the type of element 401-i is, and forwards the information encoded in these signals to processor 502 in well-known fashion. It will be clear to those skilled in the art, after reading this disclosure, how to make and use receiver 501.
Processor 502 is a general-purpose processor that is capable of reading data from and writing data into memory 503 and of executing the tasks described below and with respect to
Memory 503 stores data and executable instructions, as is well-known in the art, and might be any combination of random-access memory (RAM), flash memory, disk drive, etc. It will be clear to those skilled in the art, after reading this disclosure, how to make and use memory 503.
Transmitter 504 receives information from processor 502 and transmits signals that encode this information to one or both of telecommunications terminal 305 and other elements 401, depending on the type of element 401-i is, in well-known fashion. It will be clear to those skilled in the art, after reading this disclosure, how to make and use transmitter 504.
Receiver 601 is capable of receiving signals sent from network 320 and of forwarding the information encoded in these signals to processor 602, in well-known fashion. It will be clear to those skilled in the art, after reading this disclosure, how to make and use receiver 601.
Processor 602 is a general-purpose processor that is capable of reading data from and writing data into memory 603, of sending signals to speaker 310 and display 311 in well-known fashion, and of executing the tasks described below and with respect to
Memory 603 stores data and executable instructions, as is well-known in the art, and might be any combination of random-access memory (RAM), flash memory, disk drive, etc. It will be clear to those skilled in the art, after reading this disclosure, how to make and use memory 603.
Transmitter 604 is capable of receiving information from processor 602 and of transmitting signals that encode this information to network 320 in well-known fashion. It will be clear to those skilled in the art, after reading this disclosure, how to make and use transmitter 604.
Incoming log 701 comprises the status of incoming calls. For each incoming call, incoming log 701 comprises: the identity (if known) of the caller; the telephone number of the caller; the time and date of the call; and the duration of the call.
Outgoing log 702 comprises the status of outgoing calls. For each outgoing call, outgoing log 702 comprises: the identity of the called party; the telephone number of the called party; the time and date of the call; and the duration of the call.
Missed log 703 comprises the status of missed calls. For each missed call, missed log 703 comprises: the identity (if known) of the caller; the contact identifier (e.g., telephone number, email address, etc.) of the caller; the time and date of the call; and the treatment of the call (if known). The call treatment information, if known, indicates if the call was directed to voicemail, directed to another terminal, or handled in another way.
Although call log 700 as depicted in
As will be appreciated by those skilled in the art, although in the illustrative embodiment call log 700 maintains a record of calls associated with terminal 305 (i.e., calls received at terminal 305, calls placed from terminal 305, and calls received at terminal 305 that were missed), in some alternative embodiments call log 700 might maintain a record of calls for a plurality of terminals associated with a user (for example, a user's wireless phone, wireline phone, and PDA). It will be clear to those skilled in the art, after reading this specification, how to aggregate individual call logs from multiple terminals for the purpose of retrieving information from an aggregated call log.
As will also be appreciated by those skilled in the art, in some embodiments call log 700 might be stored in memory 603 of terminal 305, while in some other embodiments a plurality of call logs 700 corresponding to a plurality of telecommunications terminals might instead be stored at one or more of network infrastructure elements 401 or at a remote server. As will be further appreciated by those skilled in the art, in the latter case the plurality of call logs could be stored in a variety of different organization schemes: one call log for each user (i.e., all terminals associated with a given user combined into a single call log); each call log stored separately; call logs for all users aggregated into a single call log; etc.
Terminal 305 uses information in call log 700 to determine the values of one or more properties of an output signal (e.g., a ringtone, an image, etc.) for notifying the user of an incoming call. For example, if Sam Perez were to call at 2:00 pm on Apr. 22, 2004, then it could be readily determined that it has been one hour, sixteen minutes since Sam's most recent prior communication (at 12:44 pm on the same day). As another example, if Liz Brown were to call at 1:30 pm on Apr. 22, 2004, then it could be readily determined that her latest call is her second attempt since 1:00 pm to reach the user of terminal 305. As will be appreciated by those skilled in the art, other facts can be established from the information in call log 700 in a similar fashion.
At task 810, receiver 501 of network infrastructure element 401-i receives a message directed to telecommunications terminal 305 and forwards the message to processor 502, in well-known fashion.
At task 820, processor 502 determines what musical composition (i.e., ringtone) and/or what image will be used to notify the user of telecommunications terminal 305 of the arrival of the message. In some embodiments the user of telecommunications terminal 305 might be notified via the same musical composition and image for all incoming messages, while in some other embodiments musical compositions and images might be associated with categories of callers, while in still some other embodiments each individual caller might have an associated musical composition and image, etc. As will be appreciated by those skilled in the art, in some embodiments these ringtone and image “rules” might be specified by the user of telecommunications terminal 305 and uploaded to memory 503 of network infrastructure element 401-i, while in some other embodiments the calling terminal might automatically piggyback a ringtone and/or image on outgoing messages, etc.
At task 830, processor 502 sets the values of one or more properties of the musical composition that was determined at task 820 based on
At task 840, processor 502 sets the values of one or more properties of the image that was determined at task 820 based on
At task 850, processor 502 determines the values of one or more properties of text based on
At task 860, processor 502 forwards the message, a file comprising the musical composition as “instantiated” at task 830 (e.g., an audio clip, a Musical Instrument Digital Interface [MIDI] file, etc.), the image as instantiated at task 840, and the text property values determined at task 850 to transmitter 504 for sending to telecommunications terminal 305, in well-known fashion. After task 860, the method of
At task 910, processor 502 sets the volume of the musical composition based on pertinent entries from one or more call logs. In some embodiments, processor 502's setting of volume might also be based on one or more attributes of the incoming message, such as: the identity of the sender of the message, a priority associated with the message, a subject associated with the message, the semantic content of the message, the location from which the message was sent (if such information is available), etc. As will be appreciated by those skilled in the art, the logic by which processor 502 sets the volume of the musical composition might be specified by a network 320 service provider, or by the user of telecommunications terminal and uploaded to network infrastructure element 401-i, etc.
At task 920, processor 502 sets the tempo of the musical composition based on pertinent entries from one or more call logs, and optionally, on one or more attributes of the message, as in task 910.
At task 930, processor 502 sets the pitch (i.e., key signature) of the musical composition based on pertinent entries from one or more call logs, and optionally, on one or more attributes of the message.
At task 940, processor 502 sets the timbre (e.g., the musical instrument playing the composition, etc.) of the musical composition based on pertinent entries from one or more call logs, and optionally, on one or more attributes of the message.
At task 950, processor 502 sets the values of additional properties of the musical composition (e.g., harmony, rhythm, gender for vocal music, language for vocal music, etc.) based on pertinent entries from one or more call logs, and optionally, on one or more attributes of the message. After task 950, execution continues at task 840.
At task 1010, processor 502 sets the size of the image based on pertinent entries from one or more call logs, and optionally, on one or more attributes of the message such as: the identity of the sender of the message, a priority associated with the message, a subject associated with the message, the semantic content of the message, the location from which the message was sent (if such information is available), etc.
At task 1020, processor 502 sets the brightness of the image based on pertinent entries from one or more call logs, and optionally, on one or more attributes of the message.
At task 1030, processor 502 sets the contrast of the image based on pertinent entries from one or more call logs, and optionally, on one or more attributes of the message.
At task 1040, processor 502 sets the resolution of the image based on pertinent entries from one or more call logs, and optionally, on one or more attributes of the message.
At task 1050, processor 502 sets the values of additional properties of the image (e.g., hue, saturation, position on display 311, speed of animation, etc.) based on pertinent entries from one or more call logs, and optionally, on one or more attributes of the message. After task 1050, execution continues at task 850.
At task 1110, processor 502 determines the text font based on pertinent entries from one or more call logs, and optionally, on one or more attributes of the message such as: the identity of the sender of the message, a priority associated with the message, a subject associated with the message, the semantic content of the message, the location from which the message was sent (if such information is available), etc.
At task 1120, processor 502 determines the font style (e.g., bold, italics, etc.) based on pertinent entries from one or more call logs, and optionally, on one or more attributes of the message.
At task 1130, processor 502 determines the font size based on pertinent entries from one or more call logs, and optionally, on one or more attributes of the message.
At task 1140, processor 502 determines the text color based on pertinent entries from one or more call logs, and optionally, on one or more attributes of the message.
At task 1150, processor 502 determines the values of additional properties of the text (e.g., background color, position on display 311, dynamic behavior, speed of dynamic behavior, etc.) based on pertinent entries from one or more call logs, and optionally, on one or more attributes of the message.
At task 1160, processor 502 builds a text property-value list based on tasks 1110 through 1150, in well-known fashion. After task 1160, execution continues at task 860.
At task 1210, receiver 601 of telecommunications terminal 305 receives a message, a musical composition, an image, and a text property-value list and forwards them to processor 602, in well-known fashion.
At task 1220, telecommunications terminal 305 plays the musical composition through speaker 312, in well-known fashion.
At task 1230, telecommunications terminal 305 renders the image in display 310, in well-known fashion.
At task 1240, telecommunications terminal 305 determines what text string to display to notify its user of the incoming message, in the same fashion as telecommunications terminal 105 in the prior art.
At task 1250, telecommunications terminal 305 renders the text string of task 1240 in display 310 in accordance with the text property-value list received at task 1210, in well-known fashion. After task 1250, the method of
In addition, as in the first illustrative embodiment the method of
At task 1310, receiver 501 of network infrastructure element 401-i receives a message directed to telecommunications terminal 305 and forwards the message to processor 502, in well-known fashion.
At task 1320, processor 502 builds a property-value list comprising values for one or more properties of music based on
At task 1330, processor 502 builds a property-value list comprising values for one or more properties of images based on
At task 1340, processor 502 builds a property-value list comprising values for one or more properties of text based on
At task 1350, processor 502 forwards the message and the property-value lists of tasks 1320 through 1340 to transmitter 504 for sending to telecommunications terminal 305, in well-known fashion. After task 1350, the method of
At task 1410, processor 502 determines volume based on pertinent entries from one or more call logs, and optionally, on one or more attributes of the message such as: the identity of the sender of the message, a priority associated with the message, a subject associated with the message, the semantic content of the message, the location from which the message was sent (if such information is available), etc.
At task 1420, processor 502 determines tempo based on pertinent entries from one or more call logs, and optionally, on one or more attributes of the message.
At task 1430, processor 502 determines pitch (i.e., key signature) based on pertinent entries from one or more call logs, and optionally, on one or more attributes of the message.
At task 1440, processor 502 determines timbre (e.g., the musical instrument playing the composition, etc.) based on pertinent entries from one or more call logs, and optionally, on one or more attributes of the message.
At task 1450, processor 502 determines the values of additional properties of music (e.g., harmony, rhythm, gender for vocal music, language for vocal music, etc.) based on pertinent entries from one or more call logs, and optionally, on one or more attributes of the message.
At task 1460, processor 502 builds a property-value list based on tasks 1410 through 1450. After task 1460, execution continues at task 1330.
At task 1510, processor 502 determines image size based on pertinent entries from one or more call logs, and optionally, on one or more attributes of the message such as: the identity of the sender of the message, a priority associated with the message, a subject associated with the message, the semantic content of the message, the location from which the message was sent (if such information is available), etc.
At task 1520, processor 502 determines brightness based on pertinent entries from one or more call logs, and optionally, on one or more attributes of the message.
At task 1530, processor 502 determines contrast based on pertinent entries from one or more call logs, and optionally, on one or more attributes of the message.
At task 1540, processor 502 determines resolution based on pertinent entries from one or more call logs, and optionally, on one or more attributes of the message.
At task 1550, processor 502 determines the values of additional properties of images (e.g., hue, saturation, position on display 311, speed of animation, etc.) based on pertinent entries from one or more call logs, and optionally, on one or more attributes of the message.
At task 1560, processor 502 builds a property-value list based on tasks 1510 through 1550. After task 1560, execution continues at task 1340.
At task 1610, processor 502 determines the text font based on pertinent entries from one or more call logs, and optionally, on one or more attributes of the message such as: the identity of the sender of the message, a priority associated with the message, a subject associated with the message, the semantic content of the message, the location from which the message was sent (if such information is available), etc.
At task 1620, processor 502 determines the font style (e.g., bold, italics, etc.) based on pertinent entries from one or more call logs, and optionally, on one or more attributes of the message.
At task 1630, processor 502 determines the font size based on pertinent entries from one or more call logs, and optionally, on one or more attributes of the message. At task 1640, processor 502 determines the text color based on pertinent entries from one or more call logs, and optionally, on one or more attributes of the message.
At task 1650, processor 502 determines the values of additional properties of text (e.g., background color, position on display 311, dynamic behavior, speed of dynamic behavior, etc.) based on pertinent entries from one or more call logs, and optionally, on one or more attributes of the message.
At task 1660, processor 502 builds a property-value list based on tasks 1610 through 1650, in well-known fashion. After task 1660, execution continues at task 1350.
At task 1710, receiver 601 of telecommunications terminal 305 receives a message, a musical property-value list, an image property-value list, and a text property-value list and forwards them to processor 602, in well-known fashion.
At task 1720, processor 602 determines what musical composition to play to notify the user of the arrival of the message, in the same fashion as telecommunications terminal 105 in the prior art.
At task 1730, processor 602 sends a signal to speaker 311 to play the musical composition of task 1720 in accordance with the musical property-value list received at task 1710, in well-known fashion.
At task 1740, processor 602 determines what image to display to notify the user of the arrival of the message, in the same fashion as telecommunications terminal 105 in the prior art.
At task 1750, processor 602 sends a signal to display 310 to render the image of task 1740 in accordance with the image property-value list received at task 1710, in well-known fashion.
At task 1760, processor 602 determines what text string to display to notify the user of the arrival of the message. In some embodiments of the present invention, processor 602 might determine what text string to display in the same way that telecommunications terminal 105 of the prior art determines the appropriate text string, while in some other embodiments, the text string might itself be based on information from one or more call logs (e.g., “Incoming Call from Liz Brown (5th call today)”, etc.).
At task 1770, processor 602 sends a signal to display 310 to render the text string of task 1760 in accordance with the text property-value list received at task 1710, in well-known fashion. After task 1770, the method of
It is to be understood that the above-described embodiments are merely illustrative of the present invention and that many variations of the above-described embodiments can be devised by those skilled in the art without departing from the scope of the invention. For example, in this Specification, numerous specific details are provided in order to provide a thorough description and understanding of the illustrative embodiments of the present invention. Those skilled in the art will recognize, however, that the invention can be practiced without one or more of those details, or with other methods, materials, components, etc.
Furthermore, in some instances, well-known structures, materials, or operations are not shown or described in detail to avoid obscuring aspects of the illustrative embodiments. It is understood that the various embodiments shown in the Figures are illustrative, and are not necessarily drawn to scale. Reference throughout the specification to “one embodiment” or “an embodiment” or “some embodiments” means that a particular feature, structure, material, or characteristic described in connection with the embodiment(s) is included in at least one embodiment of the present invention, but not necessarily all embodiments. Consequently, the appearances of the phrase “in one embodiment,” “in an embodiment,” or “in some embodiments” in various places throughout the Specification are not necessarily all referring to the same embodiment. Furthermore, the particular features, structures, materials, or characteristics can be combined in any suitable manner in one or more embodiments. It is therefore intended that such variations be included within the scope of the following claims and their equivalents.
This application is a continuation-in-part of U.S. patent application Ser. No. 10/881,908, filed 30 Jun. 2004 (now pending), entitled “Log-Based Ringtones”, which is incorporated by reference.
| Number | Name | Date | Kind |
|---|---|---|---|
| 5001709 | Satoh | Mar 1991 | A |
| 5241586 | Wilson et al. | Aug 1993 | A |
| 5661788 | Chin | Aug 1997 | A |
| 5870684 | Hoashi et al. | Feb 1999 | A |
| 6363258 | Schmidt et al. | Mar 2002 | B1 |
| 6381322 | Spencer | Apr 2002 | B1 |
| 6532477 | Tang et al. | Mar 2003 | B1 |
| 6675026 | Yoon | Jan 2004 | B2 |
| 6944284 | Goodings | Sep 2005 | B2 |
| 6950648 | Pappalardo et al. | Sep 2005 | B2 |
| 20020039914 | Hama et al. | Apr 2002 | A1 |
| 20020098875 | Takenaka | Jul 2002 | A1 |
| 20030008687 | Nishimura | Jan 2003 | A1 |
| 20030012361 | Yoshimura | Jan 2003 | A1 |
| 20030026413 | Brandt et al. | Feb 2003 | A1 |
| 20030027605 | Hijii | Feb 2003 | A1 |
| 20030039339 | Luehrig et al. | Feb 2003 | A1 |
| 20030146921 | Taniguchi et al. | Aug 2003 | A1 |
| 20030152205 | Winkler | Aug 2003 | A1 |
| 20030198322 | White, Jr. | Oct 2003 | A1 |
| 20040032946 | Koser et al. | Feb 2004 | A1 |
| 20040066932 | Seligmann | Apr 2004 | A1 |
| 20040213401 | Aupperle et al. | Oct 2004 | A1 |
| 20040253993 | Nakamura | Dec 2004 | A1 |
| 20050107128 | Deeds | May 2005 | A1 |
| 20050181838 | Matsuda et al. | Aug 2005 | A1 |
| 20070129078 | De Beer | Jun 2007 | A1 |
| Number | Date | Country |
|---|---|---|
| 1330124 | Jul 2003 | EP |
| 1501072 | Jan 2005 | EP |
| 11275209 | Oct 1999 | JP |
| 2000-253111 | Sep 2000 | JP |
| 2000244633 | Sep 2000 | JP |
| 2001-007902 | Jan 2001 | JP |
| 2001-094637 | Apr 2001 | JP |
| 2001-168952 | Jun 2001 | JP |
| 2001168952 | Jun 2001 | JP |
| 2001-274867 | Oct 2001 | JP |
| 2001-320471 | Nov 2001 | JP |
| 2001358834 | Dec 2001 | JP |
| 2002-14200 | May 2002 | JP |
| 2003-47043 | Feb 2003 | JP |
| 2003-69662 | Mar 2003 | JP |
| 2003-218999 | Jul 2003 | JP |
| 2003-244280 | Aug 2003 | JP |
| 02087209 | Oct 2002 | WO |
| Number | Date | Country | |
|---|---|---|---|
| 20060003743 A1 | Jan 2006 | US |
| Number | Date | Country | |
|---|---|---|---|
| Parent | 10881908 | Jun 2004 | US |
| Child | 10899662 | US |