This application relates generally to a method and apparatus for alert control.
The modern era of electronic devices has seen a dramatic increase in the number of electronic devices used by individuals. These devices are experiencing an unprecedented growth in consumer demand. As they become more prevalent, these devices are being used by individuals in various environments which may have environmental conditions which impact the utilization of these devices.
In accordance with an embodiment of the present invention, a method, comprising monitoring at least one environmental factor related to a device, storing at least one event, and generating an alert based at least in part on the storing and the monitoring is disclosed.
In accordance with another embodiment of the present invention, an apparatus, comprising a processing element configured to monitor at least one environmental factor related to a device, store at least one event, and generate an alert based at least in part on the storing and the monitoring is disclosed.
In accordance with another embodiment of the present invention, a computer program product comprising at least one computer-readable storage medium having computer-readable program code portions stored therein, the computer-readable program code portions comprising a first executable portion to monitor at least one environmental factor related to a device, a second executable portion to store at least one event, and a third executable portion to generate an alert based at least in part on the storing and the monitoring is disclosed.
For a more complete understanding of embodiments of the present invention, the objects and advantages thereof, reference is now made to the following descriptions taken in connection with the accompanying drawings in which:
The preferred embodiment of the present invention and its advantages are best understood by referring to
Embodiments of the present invention will now be described more fully hereinafter with reference to the accompanying drawings, in which some, but not all embodiments of the invention are shown. Indeed, embodiments of the invention may be embodied in many different forms and should not be construed as limited to the embodiments set forth herein; rather, these embodiments are provided so that this disclosure will satisfy applicable legal requirements.
Embodiments of the present invention will be primarily described below in conjunction with mobile communications applications. However, it should be understood that embodiments of the present invention may be utilized in conjunction with a variety of other applications, both in the mobile communications industries and outside of the mobile communications industries.
The mobile terminal 10 comprises an antenna 12 (or multiple antennae) in operable communication with a transmitter 14 and a receiver 16. The mobile terminal 10 further comprises a controller 20 or other processing element that provides signals to and receives signals from the transmitter 14 and receiver 16, respectively. The signals comprise signaling information in accordance with the air interface standard of the applicable cellular system, and also user speech, received data and/or user generated data. In this regard, the mobile terminal 10 may operate with one or more air interface standards, communication protocols, modulation types, and access types. By way of illustration, the mobile terminal 10 may operate in accordance with any of a number of first, second, third and/or fourth-generation communication protocols or the like. For example, the mobile terminal 10 may operate in accordance with second-generation (2G) wireless communication protocols IS-136 (TDMA), GSM, and IS-95 (CDMA), or with third-generation (3G) wireless communication protocols, such as UMTS, CDMA2000, WCDMA and TD-SCDMA, with fourth-generation (4G) wireless communication protocols, and/or the like.
It is understood that the controller 20 comprises circuitry desirable for implementing audio and logic functions of the mobile terminal 10. For example, the controller 20 may comprise a digital signal processor device, a microprocessor device, various analog to digital converters, digital to analog converters, and for other support circuits. Control and signal processing functions of the mobile terminal 10 are allocated between these devices according to their respective capabilities. The controller 20 thus may also comprise the functionality to convolutionally encode and interleave message and data prior to modulation and transmission. The controller 20 may additionally comprise an internal voice coder, and may comprise an internal data modem. Further, the controller 20 may comprise functionality to operate one or more software programs, which may be stored in memory. For example, the controller 20 may operate a connectivity program, such as a conventional Web browser. The connectivity program may then allow the mobile terminal 10 to transmit and receive Web content, such as location-based content and/or other web page content, according to a Wireless Application Protocol (WAP), Hypertext Transfer Protocol (HTTP), and/or the like, for example.
The mobile terminal 10 may also comprise a user interface including an output device such as a ringer, a conventional earphone and/or speaker 24, a microphone 26, a display 28, and/or a user input interface, which are coupled to the controller 20. The user input interface, which allows the mobile terminal 10 to receive data, may comprise any of a number of devices allowing the mobile terminal 10 to receive data, such as a keypad 30, a touch display (not shown) or other input device. In embodiments including the keypad 30, the keypad 30 may comprise the conventional numeric (0-9) and related keys (#, *), and other keys used for operating the mobile terminal 10. Alternatively, the keypad 30 may comprise a conventional QWERTY keypad arrangement. The keypad 30 may also comprise various soft keys with associated functions. In addition, or alternatively, the mobile terminal 10 may comprise an interface device such as a joystick or other user input interface. The mobile terminal 10 further comprises a battery 34, such as a vibrating battery pack, for powering various circuits that are required to operate the mobile terminal 10, as well as optionally providing mechanical vibration as a detectable output.
In an exemplary embodiment, the mobile terminal 10 comprises a media capturing element, such as a camera, video and/or audio module, in communication with the controller 20. The media capturing element may be any means for capturing an image, video and/or audio for storage, display or transmission. For example, in an exemplary embodiment in which the media capturing element is a camera module 36, the camera module 36 may comprise a digital camera which may form a digital image file from a captured image. As such, the camera module 36 comprises hardware, such as a lens or other optical component(s), and/or software necessary for creating a digital image file from a captured image. Alternatively, the camera module 36 may comprise only the hardware for viewing an image, while a memory device of the mobile terminal 10 stores instructions for execution by the controller 20 in the form of software for creating a digital image file from a captured image. In an exemplary embodiment, the camera module 36 may further comprise a processing element such as a co-processor which assists the controller 20 in processing image data and an encoder and/or decoder for compressing and/or decompressing image data. The encoder and/or decoder may encode and/or decode according to a standard format, for example, a JPEG standard format.
The mobile terminal 10 may further comprise a user identity module (UIM) 38. The UIM 38 may be a memory device having a built in processor. The UIM 38 may comprise, for example, a subscriber identity module (SIM), a universal integrated circuit card (UICC), a universal subscriber identity module (USIM), a removable user identity module (R-UIM), and/or the like. The UIM 38 may store information elements related to a mobile subscriber. In addition to the UIM 38, the mobile terminal 10 may be equipped with memory. For example, the mobile terminal 10 may comprise volatile memory 40, such as volatile Random Access Memory (RAM) including a cache area for the temporary storage of data. The mobile terminal 10 may also comprise other memory, for example, non-volatile memory 42, which may be embedded and/or may be removable. The non-volatile memory 42 may additionally or alternatively comprise an EEPROM, flash memory or the like, such as that available from the SanDisk Corporation of Sunnyvale, Calif., or Lexar Media Inc. of Fremont, Calif. The memories may store any of a number of pieces of information, and data, used by the mobile terminal 10 to implement the functions of the mobile terminal 10. For example, the memories may comprise an identifier, such as an international mobile equipment identification (IMEI) code, which may uniquely identify the mobile terminal 10.
Although
During the operation of a device, for example mobile terminal 10, there may be events occurring where it is desirable to alert a user of the event. Such events may comprise for example, receiving a phone call, receiving a message, receiving a voice mail notification, receiving an email, a calendar alarm, an alarm clock notification, and/or the like.
In an exemplary embodiment, at block 202, an event occurs. In an exemplary embodiment, the event occurs in an electronic device, for example mobile terminal 10. The event may comprise: receiving a phone call, receiving a message, receiving a voice mail notification, receiving an email, generating a calendar alarm, generating an alarm clock notification, and/or the like. It should be understood that there are many ways in which an event may be received. For example, an event may be generated in the device, such as, a calendar event, an alarm clock event, and/or the like. In another example, the device may have an event communicated to it, such as, receiving a phone call, receiving a message, receiving a voice mail notification, receiving an email, and/or the like.
In an exemplary embodiment, at block 204, the event is processed. Processing the event may comprise performing one or more operations, for example, storing data, updating state information, initiating communication processes, and/or the like. For example, when a message event is received, there may be operations to set up communications to receive the message, operations to store the message, and/or the like.
In an exemplary embodiment, at block 206, an alert is performed. An alert may comprise an audio signal, a visual signal, a tactile signal, and/or the like. An example of an audio signal may be a ring tone, a song, a beep, and/or the like. An example of a visual signal may be an image, a video, a text display, a light, and/or the like. An example of a tactile signal may be vibration, movement, heating, and/or the like.
An environment monitoring system, for example environment monitoring system 300 of
In an exemplary embodiment, an event monitoring system 300 comprises a controller 304 coupled with a sensor 302 and a user alert module 306. Sensor 302 receives input from an environment around a device, for example, mobile terminal 10 of
In an exemplary embodiment, controller 304 may comprise a processing element to evaluate the information provided by the sensor 302. For example, if controller 304 receives sound information, controller 304 may evaluate the received sound information to determine whether the sound environment around the device is favorable to a user perceiving an audio alert signal. It should be understood that controller 304 may comprise one or more elements to evaluate information from one or more sensors 302. For example, a device may evaluate sound and motion information, for example to evaluate an action to be taken in response to receiving an event. In this example, controller 304 may comprise one or more elements to evaluate sound information and at least one different element to evaluate motion information. However, in the same example a controller may comprise one or more elements to evaluate both sound information and motion information.
In an exemplary embodiment, user alert module 306 receives information from controller 304. It should be understood that user alert system 306 may perform a method, such as at least part of the method 200 for event alert of
In an exemplary embodiment, a user may be in a noisy environment, such as a music concert, an airport, a sports event, and/or the like. In such an example, noise in the environment around a device, for example, mobile terminal 10 of
In another exemplary embodiment, a user may be in a location where it is undesirable to perceive an alert, such as a church, a movie theater, and/or the like. Therefore, the location of a device, for example, mobile terminal 10 of
In yet another exemplary embodiment, a user may have left a device, for example, mobile terminal 10 of
In still another exemplary embodiment, a user may be performing an activity where it is undesirable to perceive an alert, such as driving a car, operating machinery, and/or the like. In such an example, the activity of the user makes it undesirable for the alert to be perceived. In this exemplary embodiment, an environment monitoring system, for example environment monitoring system 300 of
For the sake of simplicity, lack of environmental favorableness for the perception of an alert may be referred to as environmental unfavorableness for an alert. This environmental unfavorableness may be based, at least in part, on factors such as sound environment around the device, location of the device, motion of the device, proximity of the user to the device, visual environment around the device, and/or the like. It should be understood that environmental unfavorableness may comprise multiple elements. Furthermore, environmental unfavorableness may comprise information related to operations performed on environmental information to provide a more concise representation of environmental favorableness for perception of an alert. For example, a high value for environmental unfavorableness may relate to the presence of high amplitude sound levels, indicating that sound environment around the device is not favorable to perception of an audio alert. In another example, a high value for environmental unfavorableness may relate to very low sound levels indicating lack of user proximity. In yet another example, a high value for environmental unfavorableness may relate to very low sound levels and unfavorable user proximity information indicating lack of user proximity.
In evaluating environmental unfavorableness, an environmental unfavorableness threshold may be utilized to evaluate whether the environmental unfavorableness may affect device, for example, mobile terminal 10 of
It can be seen in
In an exemplary embodiment, events may be stored during times of environmental unfavorableness so that a user may be alerted at a later time. This later time may be, for example, when a time of environmental favorableness is entered, a time after environment unfavorableness is entered, etc. In an exemplary embodiment, an event storage window may refer to a time period between starting event storage and generating an alert of at least one stored event. However, it should be understood that events may continue to be stored after the alert of at least one stored event. There are various methods which may determine a time for starting and stopping of an event storage mode, for example, environmental unfavorableness becoming outside an environmental unfavorableness threshold, a missed alert when environmental unfavorableness is outside an environmental unfavorableness threshold, environmental unfavorableness becoming within an environmental unfavorableness threshold, a handled alert, and/or the like. A missed alert may comprise an alert for a phone call event where the user does not answer the call, an alert for a phone call event where the user does not decline the call or answer the call, a message alert where the message is not read within a certain amount of time, and/or the like. Handling of an alert may comprise a user answering an alert for a phone call, a user declining an alert for a phone call, a user reading a message and/or the like.
In an exemplary embodiment, an event storage start 506 relates to an environmental unfavorableness becoming outside an environmental unfavorableness threshold 504. While the environmental unfavorableness is outside of the environmental unfavorableness threshold, event A 512 and event B 514 occur. In an exemplary embodiment, events occurring after an event storage start 506 are stored. Thus in
In an exemplary embodiment, at block 602, the environment around a device, for example, mobile terminal 10 of
At block 604, a determination is made as to whether the environment is favorable for an alert. If the environment is favorable for alert, then at block 605, it is verified whether there are any stored events. If, at block 605, it is determined that there are stored events, then at block 606, an alert may be generated for any stored event. If, at block 605, it is determined that there are no stored events, the method starting at block 602 is entered.
If, at block 604, it is determined that the environment is not favorable for alert, at block 610, a determination is made as to whether an event has been received is performed. This determination may comprise an active check, a notification, and/or the like. For example, in an exemplary embodiment, a telephony module may send a notification which relates to occurrence of an event such as a phone call. In another example, determination of an event occurrence may be performed by querying a telephony module about occurrence of an event, such as a phone call.
In an exemplary embodiment, if at block 610 it is determined that an event has not been received, the method starting at block 602 is entered. In an exemplary embodiment, if at block 610 it is determined that an event has been received, then at block 612 the event is stored. In an exemplary embodiment, the event stored at block 612 is an event that occurred during or after the environment became unfavorable, but before the environment became favorable. It should be understood that an alert for an event may be generated in the same circumstance as when it is stored. For example, if a system has determined that an environment is unfavorable for an alert at block 604, when processing a phone call event, for example at block 204 of
In an exemplary embodiment, an event storage window 712 relates to the time between an event storage start 710 and a stored event alert 714. In an exemplary embodiment, an event storage start 710 relates to an event A 706 occurring when environmental unfavorableness is outside an environmental unfavorableness threshold 704. Then event B 708 occurs. A stored event alert 714 may be generated in relation to the environmental unfavorableness becoming within the environmental unfavorableness threshold 704. In an exemplary embodiment, the stored event alert may comprise information related to event A 706, event B 708, any previously unhandled events, and/or the like. It should be understood that the determination of the environmental unfavorableness being outside the environmental unfavorableness threshold may take place before an event, after an event, during the processing of an event, and/or the like. It can be seen in
In an exemplary embodiment, an event storage start 806 relates to an environmental unfavorableness becoming outside an environmental unfavorableness threshold 804. Then event A 812 occurs and event B 814 occurs. A stored event alert 808 may be generated in relation to an environmental factor, for example, the environmental unfavorableness becoming within the environmental unfavorableness threshold 804. In an exemplary embodiment, the stored event alert may comprise information related to event A 812, event B 814, any previously unhandled events, and/or the like. In an exemplary embodiment, after the stored event alert 808, the user handles the alert 816. In an exemplary embodiment, an event storage window 810 relates to the time between event storage start 806 and a user handling the alert 816. Handling of an alert may comprise a user answering an alert for a phone call, a user declining an alert for a phone call, a user reading a message and/or the like.
In an exemplary embodiment, an event storage start 856 relates to an environmental unfavorableness becoming outside an environmental unfavorableness threshold 854. Event A 866 occurs after event storage start 856. A stored event alert 858 may be generated in relation to the environmental unfavorableness becoming within the environmental unfavorableness threshold 854. In an exemplary embodiment, the stored event alert may comprise information related to event A 866, any previously unhandled events, and/or the like. After the environmental unfavorableness again becomes outside the environmental unfavorableness threshold 854, a stored event alert 860 may be generated in relation to the environmental unfavorableness again becoming within the environmental unfavorableness threshold 854. The stored event alert may comprise information related to event A 866, any previously unhandled events, and/or the like. After the environmental unfavorableness again becomes outside the environmental unfavorableness threshold 854, event B 868 occurs. A stored event alert 862 may be generated in relation to the environmental unfavorableness again becoming within the environmental unfavorableness threshold 854. In an exemplary embodiment, the stored event alert may comprise information related to event A 866, event B 868, any previously unhandled events, and/or the like. In an exemplary embodiment, after the stored event alert 808, the user handles the alert 816. In the example of
It should be understood that in cases where environmental unfavorableness is determined and/or utilized, if desired, environmental favorableness may be determined and/or utilized. It should be further understood that in cases where environmental favorableness is determined and/or utilized, if desired, environmental unfavorableness may be determined and/or utilized. It should also be understood that information containing ratings of environmental favorableness and/or environmental unfavorableness may be at least a partial basis for other values related to environmental favorableness and/or environmental unfavorableness.
It should be further understood that there may be various methods of utilizing environmental favorableness, environmental unfavorableness, environmental favorableness threshold, environmental unfavorableness threshold, etc. to benefit from the present invention. For example, an environmental unfavorableness may be determined to be within an environmental unfavorableness threshold if the environmental unfavorableness is less than an environmental unfavorableness threshold. In another example, an environmental unfavorableness may be determined to be outside an environmental unfavorableness threshold if the environmental unfavorableness is less than an environmental unfavorableness threshold. In this manner, there are no limitations on the operations used to evaluate environmental favorableness, environmental unfavorableness, environmental favorableness threshold, environmental unfavorableness threshold, etc.
Embodiments of the present invention may be implemented in software, hardware, application logic or a combination of software, hardware and/or application logic. The software, application logic and/or hardware may reside on a single or a plurality of devices. If desired, part of the software, application logic and/or hardware may reside on a device, part of the software, application logic and/or hardware may reside on another part of the device, and part of the software, application logic and/or hardware may reside on a different device. The application logic, software or an instruction set is preferably maintained on any one of various conventional computer-readable media. In the context of this document, a “computer-readable medium” may be any media or means that may contain, store, communicate, propagate or transport the instructions for use by or in connection with an instruction execution system, apparatus, or device.
If desired, the different functions discussed herein may be performed in any order and/or concurrently with each other. Furthermore, if desired, one or more of the above-described functions may be optional or may be combined.
Without in any way limiting the scope, interpretation, or application of the claims appearing below, it is possible that a technical advantage of one or more of the exemplary embodiments disclosed herein may be repeating an alert when environmental conditions may have interfered with user perception of the alert. Another possible technical advantage of one or more of the exemplary embodiments disclosed herein may be allowing timing of an alert to be at least partially related to environmental conditions. Another technical advantage of one or more of the exemplary embodiments disclosed herein may be increasing the likelihood that a user will perceive an alert.
It is also noted herein that while the above describes exemplifying embodiments of the invention, these descriptions should not be viewed in a limiting sense. Rather, there are several variations and modifications which may be made without departing from the scope of the present invention as defined in the appended claims.