Abstract:
A method and apparatus for associating a command with an event at a first device, communicating the command to a second device when the event occurs and causing an action at the second device depending on the command.

Description:
TECHNICAL FIELD  
         [0001]    The present invention generally relates to the field of communicating devices, and more particularly to control of an alert mechanism of a device based on certain events occurring at another device.  
         BACKGROUND  
         [0002]    A first class of portable devices that include a software-maintained calendar and a software-accessible clock that allow a user to keep track of a schedule of meetings, appointments, and other types of events, has become generally available and such the use of such devices is widespread. Such devices include notebook and sub-notebook computers, personal digital assistants, and pocket PCs among others. Some of these devices use volatile storage such as memory storage and some permanent storage such as hard disk drive or non-volatile memory storage to store such events. Each event such as a meeting or an appointment may have associated with it multiple attributes such as a name, textual information, image and sound files, priority levels, status of acceptance by attendees, among many others. Meetings and appointments may, for example, be characterized as face-to-face, web-based, or telephone meetings.  
           [0003]    A second class of devices with alert mechanisms that may be audible, illuminating, or vibrating tactile alerts, among others, are now ubiquitous in both business environments as well as in the general public arena. Examples of such devices include cellular phones and portable paging devices, among many others.  
           [0004]    These alert mechanisms serve a variety of purposes. In the case of cellular telephones, alert mechanisms such as a circuit to produce an audible alert, where such an alert is a ringing tone, a beep sequence or a musical tone sequence, may indicate the arrival of an incoming call. In other cases a similar alert may indicate the arrival of a text message at the cellular telephone. In other cases, the alert may indicate the meeting of a threshold condition, such as when a stock price of an equity traded at a stock exchange reaches a specific value. In the case of a portable pager, an alert mechanism being activated may cause a beeping tone to sound, a musical chime to be played, a light-emitting component to be switched on, or a tactile vibrating alert to be activated, when an incoming page is received, or in some cases when a clock internal to the pager reaches a predetermined time, in which case the device serves as an alarm clock.  
           [0005]    A problem in the use of this second type of device, exemplified by a cellular telephone, is that users may not wish to have alerts enabled or perceptible at all times. For example, a person in a meeting may wish to not have a cellular telephone ring even if an incoming call is detected. Similarly, a person may wish to have his or her pager silenced for the duration of a theater performance or alternatively wish to have it set to alert that person in a tactile vibrating mode only. While devices with alert mechanisms such as the ones discussed do often have means allowing a user to manually disable the alert mechanism, doing so consistently in order to avoid disturbance at events sensitive to noise or other intrusive occurrences is error prone because of its manual nature. Similarly, a person who has disabled an alert mechanism for a sensitive event may omit, through human error, to re-enable it after the event has ended, resulting in a possible failure to receive an important alert.  
           [0006]    The information about the times and durations of meetings and appointments that would be useful in providing an automated system of disabling or altering alert mechanisms in the second class of device, such as a cellular telephone, is often available to a user in the form of a stored schedule in the first class of device, such as a Pocket PC. Hitherto, however, no method known exists to automatically use such stored event information in one of the first class of devices in order to disable or alter an alert mechanism in one of the second class of devices in order to solve the problem of unwanted intrusion during sensitive events due to an alert. 
       
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0007]    [0007]FIG. 1 is an exemplary system block diagram of one set of embodiments of the invention. 
     
    
     DETAILED DESCRIPTION  
       [0008]    Reference throughout this specification to “one embodiment” or “an embodiment” means that a particular feature, structure or characteristic described in connection with the embodiment is included in at least one embodiment of the present invention. Thus, appearances of the phrases “in one embodiment” or “in an embodiment” in various places throughout this specification are not necessarily all referring to the same embodiment. Furthermore, the particular features, structures or characteristics may be combined in any suitable manner in one or more embodiments  
         [0009]    Exemplary Embodiment. It is helpful to begin by considering one set of embodiments in order to understand the invention with reference to FIG. 1. In this embodiment, the first device is a computer, exemplified by a Pocket PC  100 , a notebook  150 , or other computer  110  such as a desktop PC on which is stored a schedule of meetings. The second device is a remote communication device such as a cellular telephone  120  or a pager  140 . An occurrence of an event that detected by the first device is the approach or arrival of the date and time of the start of an event such as a specific meeting, determined by comparing the stored date and time associated with the meeting to the current time, determinable by the first device by accessing a clock. In association with the start of this meeting is stored an attribute indicating that the meeting is sensitive. Based on this attribute, a command to mute the beeper mechanism of the pager or the ringer of the cellular telephone is constructed by the first device. When the date and time of the meeting approach or arrive, the first device communicates this command to the second device using the wireless network  130 . The second device receives the command and then performs the corresponding action, which is the disabling of its alert mechanism, which in this case is muting the ringer of the cellular telephone or the beeper of the pager. A similar sequence of events that re-enables the ringer or beeper may then be performed when the time for the end of the meeting arrives or passes and when the computer determines that this event has occurred.  
         [0010]    System Description. In general, this invention seeks to control, in specific ways, an alert mechanism of a second device based on certain events occurring at a first device. In this regard, a general notion of a well-defined event detected by the first device is introduced. Further, associated with the detection of such an event is a command that can be communicated to a second device. At or around the time that the event occurs, a communication between the two devices causes the alert mechanism of the second device to be acted on in some manner consistent with the transmitted command.  
         [0011]    First Device. The first device in one embodiment is a computer capable of accessing a stored schedule and storing events and attributes of events in association with the schedule. Specific examples of such a device include a notebook or sub-notebook computer  150 , a Pocket PC  100 , or a desktop computer  110 . The first device is not limited to these embodiments, however; many other embodiments of the first device may exist, including any devices that incorporate within themselves the functionality of a computer system and storage system, such as a web appliance, smart television set-top box, or an on-board automotive computer system, among others.  
         [0012]    Events. Well-defined events occur, detectable by the first device. In one embodiment, the beginning and the ending of any meeting on the stored schedule may each be defined as an event. In order for such a device to detect that such an event has occurred, it will in some embodiments compare times stored on the schedule with the clock time read from a software accessible clock. However, it is not necessary for a stored schedule to be present in order for an event to have occurred, as exemplified in one embodiment by a user-initiated action such as a button-press, or by the clock time merely reaching a specific value, as in a timer or countdown clock.  
         [0013]    Command. When such a well-defined event occurs at the first device, a command associated with the event is then communicated to the second device. The command may be explicitly stored with the event on a stored schedule in some embodiments, or the first device may generate the command based on one or more of the attributes of the event, and the clock time at which it has occurred.  
         [0014]    Action at Second Device. However constructed, the purpose of the command is to cause an action at the second device. The action in turn is to enable, disable, or modify a setting of the alert mechanism of the second device. In some embodiments, where the event is an event on a stored schedule, the action may additionally activate the alert mechanism of the second device, if the alert mechanism is enabled.  
         [0015]    Second Device. In some embodiments the second device may be a cellular telephone, in others a portable pager. It may be another computer such as a Personal Digital Assistant, a Palm Pilot, or a Pocket PC.  
         [0016]    Alert Mechanism. In one embodiment the alert mechanism may be a ringer, beeper or buzzer circuit. The alert mechanism may be a circuit to produce an audible tone sequence or a musical tone, a flashing or illuminating light emitting diode, or a vibrating mechanism among others, or it may combine one or more of these types of alert mechanism into a multi-modal alert mechanism with a selectable mode of operation, such as a tactile vibrating mode, an audible mode, or a silent illuminating mode. In some embodiments the multi-modal alert mechanism may be set to a particular mode of operation in response to the command received at the second device. The alert mechanism may be capable of being disabled or enabled in response to the command received at the second device. The alert mechanism is disabled if it is set so that it does not operate to produce an alert even when an alert occurs. The alert mechanism is enabled if it is set so that it operates to produce an alert when an alert is appropriate.  
         [0017]    The alert mechanism is activated when it is caused to produce an alert. The alert mechanism of the second device may be activated in a number of different ways. In some embodiments, as in the case where the second device is a telephone or pager, the alert may be activated by an incoming call or page from a third device such as another telephone. In some embodiments, the alert mechanism may be activated by an internal event at the second device such as the arrival of a specific clock time or the expiry of a countdown timer. The alert mechanism may in another embodiment be activated by a signal from an embodiment of the first device as discussed above.  
         [0018]    In some embodiments the alert mechanism may have a variable intensity, for example a variable volume level for an audible alert or a variable brightness level for an illuminating alert. In some embodiments the variable intensity may be variable from some maximum level to a minimum level that is imperceptible such as a mute level for an audible alert or a dark level for an illuminating alert. In some embodiments with a variable intensity of the alert mechanism, the intensity may be varied in response to the command from the first device.  
         [0019]    Communication. Communication of the command from the first device to the second device may also take place in many different ways. In some embodiments, the first device may transmit the command to the second device after the occurrence of the event either by broadcast or by point-to-point communication. In some embodiments, the second device may send a polling message at intervals to the first device and the first device may respond only if an event has occurred. In some embodiments, the second device may query the first device to check if an event has occurred only when an alert is requested from the second device.  
         [0020]    The medium of communication of the command in some embodiments would be a wired digital network such as an IEEE 802.3 Ethernet. In some embodiments such as those pictured in FIG. 1, the medium of communication is a wireless network  130  such as an IEEE 802.11b network. Some embodiments may implement alternative methods for communicating the command including but not limited to infrared signaling and optical signaling between the first and the second device.  
         [0021]    In general, other variations of the system described above are possible in some embodiments. For example, in one embodiment, a single instance of the first device may control the alert mechanisms of multiple different instances of the second device, such as in the case of one Pocket PC sending a command to mute all of the cellular telephones equipped to receive the command within range of the communication sent by the Pocket PC. In another embodiment, a single instance of the second device may respond to commands from multiple different instances of the first device. These two embodiments in combination yield another embodiment in which multiple instances of the first device send commands to multiple instances of the second device. In such embodiments, different modes of communication between devices may simultaneously be present. For example, one instance of the first device may communicate using a wireless radio-frequency network such as an IEEE 802.11b while another may communicate using a wireless infrared network. Further a device in some instances may be equipped to use different media to communicate with other devices in different instances of this system.  
         [0022]    Implementation of Methods. The present invention includes various steps. The steps of the present invention may be performed by hardware components, or may be embodied in machine-executable instructions, which may be used to cause a general-purpose or special-purpose processor or logic circuits programmed with the instructions to perform the steps. Alternatively, the steps may be performed by a combination of hardware and software. The present invention may be provided as a computer program product that may include a machine-readable medium having stored thereon data which when accessed by a machine may cause the machine to perform a process according to the present invention. The machine-readable medium may include, but is not limited to, floppy diskettes, optical disks, CD-ROMs, and magneto-optical disks, ROMs, RAMs, EPROMs, EEPROMs, magnet or optical cards, flash memory, or other type of media/machine-readable medium suitable for storing electronic instructions. Moreover, the present invention may also be downloaded as a computer program product, wherein the program may be transferred from a remote computer to a requesting computer by way of data signals embodied in a carrier wave or other propagation medium via a communication link (e.g., a modem or network connection).  
         [0023]    Many of the methods are described in their most basic form but steps can be added to or deleted from any of the methods and information can be added or subtracted from any of the described messages without departing from the basic scope of the present invention. It will be apparent to those skilled in the art that many further modifications and adaptations can be made. The particular embodiments are not provided to limit the invention but to illustrate it. The scope of the present invention is not to be determined by the specific examples provided above but only by the claims below.