Abstract:
In one aspect, a phone-interface device determines whether a problem has occurred at a control panel by determining whether a signal from the control panel has been received, and when a signal has not been received within a period of time, the phone-interface device transmits an error message to a monitoring station. In another aspect, the control panel determines whether a problem has occurred at the phone-interface device by determining whether a signal from the phone-interface device has been received, and when a signal has not been received within a period of time, the control panel transmits an error message to a user. In another aspect, the phone-interface device contains memory to buffer data transferred between the control panel and a monitoring station. In this way, a high-speed connection between the phone-interface and the monitoring station can be accommodated while using a lower-speed connection between the phone-interface device and the control panel.

Description:
FIELD OF THE INVENTION  
         [0001]    The present invention relates generally to security systems and components that operate in security systems. More particularly, the present invention relates to a wireless phone-interface device within a security system.  
         COPYRIGHT NOTICE/PERMISSION  
         [0002]    A portion of the disclosure of this patent document contains material which is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure as it appears in the Patent and Trademark Office patent file or records, but otherwise reserves all copyright rights whatsoever. The following notice applies to the software and data as described below and in the drawings hereto: Copyright © Interactive Technologies, Incorporated, 2000. All Rights Reserved.  
         BACKGROUND OF THE INVENTION  
         [0003]    In a security system, a control panel receives signals from security devices distributed throughout a monitoring area, such as a home, business, or warehouse, to monitor various sensor events. The security devices placed throughout the monitoring area might include door/window sensors, glass-break sensors, motion detectors, temperature sensors, smoke sensors, and the like. When a sensor event is sensed, such as a door/window open, movement, smoke, or fire, the sensor sends a sensor event to a control panel, which based on its installation programming and current user setting determines the appropriate system response. In some cases, the control panel will start an entry delay period, in others, e.g. a fire, the control panel may sound an immediate alarm. A system response such as entry delay, can lead to further system actions, such as an alarm and a report of the system state to an off-premises monitoring station, such as a monitoring company central station, fire station, or police station.  
           [0004]    Security systems typical delay reporting of at least one of the sensor events (e.g. door open) to the monitoring station for some period of time sufficient to allow a valid user time to disarm the reporting prior to the expiration of an entry delay timer and therefore prevent an alarm report to the monitoring station. This delay in reporting is called “entry delay,” as opposed to “dialer delay,” which is an additional time delay between when the control panel determines that the monitoring station should be notified and when the dialer actually reports the alarm via a telephone call to the monitoring station.  
           [0005]    Current self-contained security systems—with the user interface, dialer, siren, and processing functions integrated into a single unit—are vulnerable to attack because the entry delay time period gives an unauthorized intruder time to break open and disable the control panel before the control panel has reported the sensor event via the dialer. Also, for ease of installation and consumer convenience, the user interface is typically located near the normal premise entry point, which makes it easy for the intruder to find the dialer since they are integrated together. Further, the low-level siren sounds during the entry delay period, which are intended to prompt the valid user to disarm the system, but also aids the intruder in finding the self-contained security system including the critical dialer..  
           [0006]    Current hardwired and wireless self-contained security systems typically run a wire from the control panel to the telephone demarcation point (the “head in” point) prior to all telephone sets in the facility. This distance can be quite long, which makes installation expensive. This wire to the demarcation point is necessary because the security system must be able to seize the telephone line, so that the security system can report a sensor event to the monitoring station even if a premise&#39;s telephone-set receiver is off-hook. Line seizure means that the control panel disconnects all other premise telephones.  
           [0007]    Another disadvantage of current security systems is the expense in isolating the telephone line from alternating current (AC) used by the control panel. Telephone companies, government regulations, and/or safety standards require electrical isolation in order to provide product reliability and ensure customer safety. This is commonly accomplished with an isolation transformer, a transient surge-protection device, and/or other expensive components installed in the control panel, which electrically isolate the AC power from the telephone line and ensure safety.  
           [0008]    Thus, a significant need exists for methods and systems that reduce the costs of obtaining security protection and that provide better protection against unauthorized intruders.  
         SUMMARY OF THE INVENTION  
         [0009]    The present invention provides solutions to the above-described shortcomings in conventional approaches, as well as other advantages apparent from the description below. The present invention is a method, system, apparatus, and program product related to a wireless phone-interface device in a security system.  
           [0010]    In one aspect, a phone-interface device determines whether a problem has occurred at a control panel by determining whether a signal from a control panel has been received, and when a signal has not been received within a period of time, the phone-interface device transmits an error message to a monitoring station.  
           [0011]    In another aspect, the control panel determines whether a problem has occurred at the phone-interface device by determining whether a signal from the phone-interface device has been received, and when a signal has not been received within a period of time, the control panel transmits an error message to a user.  
           [0012]    In another aspect, the phone-interface device contains memory to buffer data transferred between the control panel and a monitoring station. In this way, a high-speed connection between the phone-interface and the monitoring station can be accommodated while using a lower-speed connection between the phone-interface device and the control panel.  
       
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0013]    [0013]FIG. 1 illustrates a pictorial example of a facility with a security system, according to an embodiment of the invention.  
         [0014]    [0014]FIG. 2 illustrates a block diagram showing additional detail for selected elements of the security system.  
         [0015]    [0015]FIG. 3 illustrates a flowchart that describes a method at a control panel for receiving and processing events, according to an embodiment of the invention.  
         [0016]    [0016]FIG. 4 illustrates a flowchart that describes a method at a phone-interface device for receiving and processing events, according to an embodiment of the invention.  
         [0017]    [0017]FIG. 5 illustrates a flowchart that describes a method at a phone-interface device for transferring data between a control panel and a monitoring station, according to an embodiment of the invention.  
         [0018]    [0018]FIG. 6A illustrates a flowchart that describes a method at a phone-interface device for charging an energy storage device from a phone line, according to an embodiment of the invention.  
         [0019]    [0019]FIG. 6B illustrates a flowchart that describes a method at a phone-interface device for charging an energy storage device from a phone line, according to an embodiment of the invention.  
         [0020]    [0020]FIG. 7A illustrates a flowchart that describes a method at a control panel for sending a status message to a phone-interface device, according to an embodiment of the invention.  
         [0021]    [0021]FIG. 7B illustrates a flowchart that describes a method at a phone-interface device for detecting when a control panel has an error condition.  
         [0022]    [0022]FIG. 8A illustrates a flowchart that describes a method at a phone-interface device for sending a status message to a control panel, according to an embodiment of the invention.  
         [0023]    [0023]FIG. 8B illustrates a flowchart that describes a method at a control panel for detecting when a phone-interface device has an error condition.  
         [0024]    [0024]FIG. 9 illustrates a flowchart that describes a method at a phone-interface device for receiving telephone calls, according to an embodiment of the invention.  
         [0025]    [0025]FIG. 10 illustrates a flowchart of the RF main routine of the phone-interface device.  
         [0026]    [0026]FIG. 11 is a flowchart of the Provisional Alarm routine of the phone-interface device.  
         [0027]    [0027]FIG. 12 illustrates a flowchart of the Clear Provisional Alarm routine of the phone-interface device.  
         [0028]    [0028]FIG. 13 illustrates a flowchart of the Delayed Alarm and Start Delayed Alarms routines of the phone-interface device.  
         [0029]    [0029]FIG. 14 illustrates a flowchart of the Immediate Alarm and Start Immediate Alarms routines of the phone-interface device.  
         [0030]    [0030]FIG. 15 illustrates a flowchart of the Cancel Alarm routine of the phone-interface device.  
         [0031]    [0031]FIG. 16 illustrates a flowchart of the Expire Provisional Timer routine of the phone-interface device.  
         [0032]    [0032]FIG. 17 illustrates a flowchart of the Expire Dialer Timer routine of the phone-interface device.  
         [0033]    [0033]FIG. 18 illustrates a flowchart of the Set Armed State routine of the phone-interface device.  
         [0034]    [0034]FIG. 19 illustrates a flowchart of the Set Disarmed State routine of the phone-interface device.  
         [0035]    [0035]FIG. 20 illustrates a flowchart fo the Phone Main routine of the phone-interface device controller. 
     
    
     DETAILED DESCRIPTION OF THE INVENTION  
       [0036]    In the following detailed description of exemplary embodiments of the invention, reference is made to the accompanying drawings (where like numbers represent like elements) that form a part hereof, and in which is shown by way of illustration specific exemplary embodiments in which the invention may be practiced. These embodiments are described in sufficient detail to enable those skilled in the art to practice the invention, but other embodiments may be utilized and logical, mechanical, electrical, and other changes may be made without departing from the scope of the present invention. The following detailed description is, therefore, not to be taken in a limiting sense, and the scope of the present invention is defined only by the appended claims.  
         [0037]    [0037]FIG. 1 depicts a pictorial example of a facility with a security system, according to an embodiment of the invention. Facility  100  includes security system  112 . In one embodiment facility  100  is a house, but in other embodiments facility  100  can be a business, warehouse, or any other type of structure needing security. For protection against intruder tampering, control panel  114  ordinarily is locked in a durable housing and placed in a remote location within facility  100 , unless it is a self-contained panel. Control panel  114  optionally activates siren  125  and transmits system conditions to phone-interface device  140 . Phone-interface device  140  uses communications link  141  to transmit system conditions to an unillustrated off-premises monitoring station, such as a monitoring company central station, fire station, or police station. In one embodiment, communications link  141  is a telephone line. In another embodiment, communications link  141  is an ISDN (Integrated Services Digital Network) line. In another embodiment, communications link  141  uses wireless communications. In other embodiments, any appropriate communications link can be used.  
         [0038]    Security devices  116  placed throughout the monitoring area might include door/window open sensors, glass-break sensors, motion detectors, temperature sensors, smoke sensors, infrared sensors, shock sensors, and the like. When security device  116  senses its respective event, the sensor sends a sensor event to control panel  114 . In one embodiment, security devices  116  are hardwired to control panel  114 . In another embodiment, selected ones or all of the security devices are wireless, in which case the wireless security device includes a wireless transmitter, and control panel  114  includes a wireless receiver.  
         [0039]    Security system  112  also can include input devices  120  for user communication with control panel  114 . Input devices  120  are shown mounted within control panel  114 , but in other embodiments, input devices  120  are packaged separately. Input devices  120  can be hardwired to control panel  114  or wireless. In some embodiments, the wireless input device can take the form of a portable, wireless unit such as a portable keypad or keychain fob. In other embodiments, input devices  120  are mounted on a wall. An authorized user enters information into the input device to access the control panel. In particular, the user can selectively arm and disarm the security system by entering appropriate information. Also, the user can obtain system status information using the input device, which may provide visual or audible feedback.  
         [0040]    In one embodiment, control panel  114  receives alternating electric current via A/C plug  196 .  
         [0041]    [0041]FIG. 2 depicts a block diagram showing additional detail for selected components of the security system of FIG. 1. Control panel  114  is shown receiving signals from sensors  116  and input device  120 . Control panel  114  is also shown sending and receiving signals to and from phone interface device  140 . Phone interface device  140  is connected via RJ31X jack  284  at phone line demarcation point  285  to a telephone network, which enables phone interface device  140  to transmit and receives signals to and from monitoring station  290 . RJ31X jack  284  is a telephone jack that connects alarm equipment to a telephone line. In other embodiments, any appropriate jack can be used. Phone interface device  140  is also connected to facility phone network  295 , which is the network of telephones in facility  100 .  
         [0042]    Control panel  114  contains controller  210 , which is coupled to display  220 , transmitter  225 , and receiver  235 . Receiver  235  receives wireless signals containing sensor events and control information from sensors  116  and input device  120 . Input devices  120  are shown mounted within control panel  114 , but in other embodiments, input devices  120  are packaged separately. Input devices  120  can be hardwired to control panel  114  or wireless. In one embodiment receiver  235  receives RF (radio frequency) signals. In another embodiment, some or all of sensors  116  and input device  120  are hardwired to control panel  114 . Receiver  235  provides the received sense events and to controller  210 .  
         [0043]    Controller  210  further processes the received information and derives system condition and control information from sense events and other settings and programming information. When appropriate, controller  210  transmits information to siren  125  to cause siren  125  to emit an audio alarm or entry delay beeps for prompting the user to disarm the system. Controller  210  also transmits information to and receives information from phone-interface device  140  via transmitter  225  and receiver  235 , as further described below with reference to FIGS.  3 - 5 ,  7 A, and  8 B. Controller  210  further causes display  220  to display status information to the user. In one embodiment, transmitter  225  transmits RF signals.  
         [0044]    Although input device  120  and siren  125  are shown enclosed within control panel  114 , in another embodiment either or both are packaged separately from control panel  114 .  
         [0045]    In one embodiment, control panel  114  receives alternating electric current via A/C plug  196 .  
         [0046]    Phone-interface device  140  includes controller  250  coupled to receiver  260 , transmitter  265 , energy storage device  270 , memory  275 , phone ports  276  and  277 , and sensors  278 . Receiver  260  receives signals from transmitter  225 . Transmitter  265  sends signals to receiver  235 . The operation of controller  250  is further described below with reference to FIGS. 4, 5,  6 A,  6 B,  7 B,  8 A,  9 , and  10 - 20 . In one embodiment, memory  275  is volatile memory such as RAM (Random Access Memory). In another embodiment, memory  275  is non-volatile memory such as a diskette in a diskette drive, a hard disk in a hard-disk drive, or a CD-ROM in a CD-ROM drive.  
         [0047]    Controller  210  draws energy from energy storage device  270  and distributes it to receiver  260 , transmitter  265 , memory  275 , and phone ports  276  and  277 . In another embodiment, energy storage device  270  is connected directly to receiver  260 , transmitter  265 , memory  275 , and phone ports  276  and  277 . In one embodiment, energy storage device  270  is a battery. In another embodiment, energy storage device  270  is a capacitor  
         [0048]    Phone port  277  connects to phone line demarcation point  285 . Phone port  277  operates to seize the telephone line, dial, and receive electrical energy through the telephone line, as further described below with reference to FIGS.  3 - 8 B and  10 - 20 . Phone port  277  further senses information about the telephone line and relays it to controller  250 , which transmits it to control panel  114  via transmitter  265 . Examples of this sense information includes dial tone/cadence, ring/cadence, line cut, line voltage, line current, caller id, and touch tone signals. Telephone signals pass between controller  250  and monitoring station  290  through phone port  277 .  
         [0049]    Phone port  276  connects to facility phone network  295 . Telephone signals also pass from phone port  276  to facility phone network  295 .  
         [0050]    Sensors  278  sense trouble conditions in phone-interface device  140  and report them to controller  250 , which transmits data about the trouble conditions to control panel  114  via transmitter  140 . Examples of trouble conditions include removal of phone port  277  from the phone line, removal of the cover of phone-interface device  140 , removal of phone-interface device  140  from its mounting, and low battery or power-supply trouble.  
         [0051]    In one embodiment, controller  210  and controller  250  carry out their functions using hardware components, such as logic gates or programmable logic devices. In another embodiment, one or both of controller  210  and  250  are implemented using a computer processor that executes instructions contained in memory. The instructions defining the functions of this embodiment can be delivered to controller  210  and/or controller  250  via a variety of signal-bearing media, which include, but are not limited to:  
         [0052]    (1) information permanently stored on non-writeable storage media (e.g., read only memory devices within a computer such as CD-ROM disks) readable by an unillustrated CD-ROM drive;  
         [0053]    (2) alterable information stored on writeable storage media (e.g., floppy disks within a diskette drive, tape drive, or hard-disk drive); or  
         [0054]    (3) information conveyed to controller  210  and/or controller  250  by a communications media, such as through a computer or telephone network including wireless communications.  
         [0055]    Such signal-bearing media, when carrying computer-readable instructions that direct the functions of the present invention, represent embodiments of the present invention.  
         [0056]    The configuration depicted in FIG. 2 is but one possible implementation of the components depicted in FIG. 1, and an embodiment of the invention can apply to any hardware configuration that provides a wireless telephone interface device.  
         [0057]    [0057]FIG. 3 illustrates a flowchart that describes a method at control panel  114  for receiving and processing events, according to an embodiment of the invention. Control begins at block  300 . Control then continues to block  305  where controller  210  receives an event from input device  120  or receiver  235 . Control then continues to block  310  where controller  210  determines whether the event previously received is a door opened and entry delay event. If a door was opened, then an authorized user needs entry delay time to disarm the security system, so if the determination at block  310  is true, then control continues to block  315  where controller  210  sends a provisional alarm report to phone-interface device  140 . Control then returns to block  305 , as previously described above.  
         [0058]    If the determination at block  310  is false, then control continues to block  320  where controller  210  determines whether the event previously received is a sensor event from one of sensors  116  via receiver  235 . If the determination at block  320  is true, then control continues to block  325  where controller  210  sends an alarm report to phone-interface device  140 . Control then returns to block  305 , as previously described above.  
         [0059]    If the determination at block  320  is false, then control continues to block  330  where controller  210  determines whether the event previously received is a disarm event. A disarm event occurs as a result of a user entering a command to disarm the security system via input device  120 . If the determination at bock  330  is true, then control continues to block  335  where controller  210  sends a disarm report to phone-interface device  140 . Control then returns to block  305 , as previously described above.  
         [0060]    If the determination at block  330  is false, then control continues to block  340  where controller  210  processes other events.  
         [0061]    [0061]FIG. 4 illustrates a flowchart that describes a method at phone-interface device  140  for receiving and processing events, according to an embodiment of the invention. Control begins at block  400 . Control then continues to block  405  where phone-interface device  140  receives an event from control panel  114  or an event internal to phone-interface device  140 .  
         [0062]    Control then continues to block  410  where controller  250  determines whether the event previously received is a provisional alarm report from control panel  114 . If the determination at block  410  is true, then control continues to block  415  where controller  250  sets a timer to a period of time. In one embodiment, the timer is an unillustrated hardware timer in phone-interface deice  140 . In another embodiment the timer is a software timer. Control then returns to block  405 , as previously described above.  
         [0063]    If the determination at block  410  is false, then control continues to block  420  where controller  250  determines whether the event previously received is a timer expiration event. If the determination at block  420  is true, then a period of time has elapsed since the last provisional alarm without receiving a disarm report from control panel  114 , so an alarm needs to be communicated to monitoring station  290 . Control then continues to block  425  where controller  250  seizes the telephone line. Control then continues to block  430  where controller  250  sends an alarm report to monitoring station  290  via the telephone line. Control then continues to block  435  where controller  250  determines whether the alarm call at block  430  was successful. If the determination at block  435  is true, then control returns to block  405 , as previously described above. If the determination at block  435  is false, then control continues to block  440  where controller  250  sends the alarm to monitoring station  290  via a wireless telephone. Control then returns to block  405 , as previously described above.  
         [0064]    If the determination at block  420  is false, then control continues to block  445  where controller  250  determines whether the event previously received is an alarm event. If the determination at block  445  is true, then control continues to block  425 , as previously described above.  
         [0065]    If the determination at block  445  is false, then control continues to block  460  where controller  250  determines whether the event previously received is a disarm event from control panel  114 . If the determination at block  460  is true, then a disarm report has been received, which cancels the previous provisional alarm report, so there is no need to send an alarm to monitoring station  290 . Thus, control then continues to block  465  where controller  250  cancels the timer if it was previously set. Control then returns to block  405 , as previously described above.  
         [0066]    If the determination at block  460  is false, then control continues to block  470  where controller  250  processes other events. Control then returns to block  405 , as previously described above.  
         [0067]    [0067]FIG. 5 illustrates a flowchart that describes a method at phone-interface device  140  for transferring data between control panel  114  and monitoring station  290 , according to an embodiment of the invention. Control begins at block  500 . Control then continues to block  505  where phone-interface device  140  receives data. In one embodiment, the data received is configuration data, which can include an account number. The data received can be either from monitoring station  290  or from control panel  114 .  
         [0068]    Control then continues to block  510  where controller  250  determines whether the received data was from monitoring station  290 . If the determination at block  510  is true, control then continues to block  512  where controller  250  optionally determines using caller id whether the calling originates from an authorized monitoring station. If the determination at block  512  is false, then control continues to block  514  where controller  250  returns an error to the caller.  
         [0069]    If the determination at block  512  is true, then control continues to block  515  where controller  250  determines whether the link between phone-interface device  140  and control panel  114  is fast enough to keep up with the data transfer between monitoring station  290  and phone interface device  140 . If the determination at block  515  is true, then control continues to block  520  where controller  250  transfers the data to control panel  114  via transmitter  265  as the data is received from monitoring station  290  in real time. Control then returns to block  505 , as previously described above.  
         [0070]    If the determination at block  515  is false, then the link between phone-interface device  140  and control panel  114  is not fast enough to keep up with the data transfer between monitoring station  290  and phone interface device  140 , so control continues to block  525  where controller  250  saves the data in memory  275 . Once the data transfer between monitoring station  290  and phone-interface device  140  is complete, control continues to block  530  where controller  250  hangs up the telephone. Control then continues to block  540  where controller  250  dribbles the saved data to control panel  114  via transmitter  265  at a data rate that the link between control panel  114  and phone-interface device  114  can handle. Once the data transfer is complete, control continues to block  545  where phone-interface device  140  rec-calls monitoring station  290  to report success or failure of the data transfer. Control then returns to block  505 , as previously described above.  
         [0071]    If the determination at block  510  is false, then the received data is from control panel  114 , so control continues to block  560  where controller  250  determines whether the link between phone-interface device  140  and control panel  114  is fast enough to keep up with the data transfer between monitoring station  290  and phone interface device  140 . If the determination at block  560  is true, then control continues to block  565  where controller  250  transfers the data to monitoring station  290  as the data is received from control panel  114  in real time. Control then returns to block  505 , as previously described above.  
         [0072]    If the determination at block  560  is false, then the link between phone-interface device  140  and control panel  114  is not fast enough to keep up with the data transfer between monitoring station  290  and phone interface device  140 , so control continues to block  570  where controller  250  dribbles the data in memory  275 . Once the data transfer between control panel  114  and phone-interface device  140  is complete, control continues to block  575  where controller  250  calls monitoring station  290 . Control then continues to block  580  where controller  250  dumps the data to monitoring station  290 . In another embodiment, controller  250  converts sequences of DTMF tones from control panel  114  into a command and sends the command to monitoring station  290  instead of sending DTMF tones. Once the data transfer is complete, control returns to block  505 , as previously described above.  
         [0073]    [0073]FIG. 6A illustrates a flowchart that describes a method at phone interface device  140  for charging energy storage device  270  from a phone line, according to an embodiment of the invention. Control begins at block  600 . Control then continues to block  610  where controller  250  determines whether energy storage device  270  has low electrical power. If the determination at block  610  is false, then control returns to block  610 , as previously described above.  
         [0074]    If the determination at block  610  is true, then control continues to block  620  where controller  250  places a call to monitoring station  290 . In another embodiment, instead of placing a call to monitoring station  290 , controller  250  sends a message to control panel  114  using transmitter  265 , and control panel  114  determines the appropriate next action. Control then continues to block  630  where controller charges energy storage device  270  from the telephone line in various states, such as ringing, while checking the line for proper voltages or currents, while dialing, during a connected call, or after the off-site call party has hung up. Controller  250  adjusts its electrical interface to the phone line so that the entire facility phone system presents the proper current and voltage profile to the outside phone line. That is, controller  250  draws the leftover energy that is available beyond what the facility phone system needs, per telephone company regulations. Control then continues to block  640  where controller  250  hangs up the telephone. Control then returns to block  610 , as previously described above.  
         [0075]    [0075]FIG. 6B illustrates a flowchart that describes a method at phone-interface device  140  for charging energy storage device  270  from a phone line, according to an embodiment of the invention. Control begins at block  650 . Control then continues to block  655  where controller  250  determines whether any of the phones in facility  100  are off-hook. If the determination at block  655  is false, control then returns to block  655 , as previously described above. In other embodiment, the logic of block  655  is not used, and instead control continues directly from block  650  to block  665 , as further described below.  
         [0076]    If the determination at block  655  is true, then control continues to block  665  where controller  250  draws energy from the phone line in various states, such as ringing, while checking the line for proper voltages or currents, while dialing, during a connected call, and after an off-site call party has hung up. Controller  250  adjusts its electrical interface to the phone line so that the entire facility phone system presents the proper current and voltage profile to the outside phone line. That is, controller  250  draws the leftover energy that is available beyond what the facility phone(s) need, but yet within regulatory allowances.  
         [0077]    [0077]FIGS. 7A and 7B illustrate an embodiment for defeating an intruder who breaks into a facility and disables the control panel prior to the control panel reporting the system condition because of the entry delay previously described above. FIGS. 8A and 8B illustrate another embodiment for defeating the intruder.  
         [0078]    [0078]FIG. 7A illustrates a flowchart that describes a method at control panel  114  for sending a status message to phone-interface device  140 , according to an embodiment of the invention. Control begins at block  700 . Control then continues to block  710  where controller  210  sends a status message to phone-interface device  140  via transmitter  225 . Control then continues to block  720  where controller  210  waits for a period of time. Control then returns to block  710 , as previously described above.  
         [0079]    [0079]FIG. 7B illustrates a flowchart that describes a method at phone-interface device  140  for detecting when control panel  114  has an error condition. Control begins at block  750 . Control then continues to block  755  where controller  250  waits for a period of time. Control then continues to block  760  where controller  250  determines whether a status message has been received from control panel  114  via receiver  260 . If the determination at block  760  is true, then control continues to block  765  where controller  250  determines whether the status message contains information that needs to be communicated to the user. If the determination at block  765  is true, then control continues to block  767  where controller notifies the user of the status. In one embodiment, controller  250  dials one of the facility phones to notify the user. In another embodiment, controller  250  pages the user. In still another embodiment, controller  250  calls an off-premises phone. If the determination at bock  765  is false, then control returns to block  755 , as previously described above.  
         [0080]    If the determination at block  760  is false, then control continues to block  765  where controller  250  determines whether to retry by waiting further. If the determination at block  765  is true, then control returns to block  755  as previously described above. If the determination at block  765  is false, then control continues to block  770  where controller  250  sends an error message to monitoring station  290  indicating that control panel  114  is inoperative. Control then continues to block  799  where the function ends.  
         [0081]    [0081]FIG. 8A illustrates a flowchart that describes a method at phone-interface device  140  for sending a status message to control panel  114 , according to an embodiment of the invention. Control begins at block  800 . Control then continues to block  810  where controller  250  sends a status message to control panel  114 . Control then continues to block  820  where controller  250  waits for a period of time. Control then returns to block  810 , as previously described above.  
         [0082]    [0082]FIG. 8B illustrates a flowchart that describes a method at control panel  114  for detecting when phone-interface device  140  has an error condition. Control begins at block  850 . Control then continues to block  855  where controller  210  waits for a period of time. Control then continues to block  860  where controller  210  determines whether a status message has been received from phone-interface device  140 . If the determination at block  860  is true, then control returns to block  855 , as previously described above. If the determination at block  860  is false, then control continues to block  865  where controller  210  displays an error message on display  220 , indicating that phone-interface device  140  is inoperative. Control then continues to block  899  where the function returns.  
         [0083]    [0083]FIG. 9 illustrates a flowchart that describes a method at phone-interface device  140  for receiving telephone calls, according to an embodiment of the invention. Control begins at block  900 . Control then continues to block  905  where controller  250  senses and determines the ring pattern of an incoming call. Control then continues to block  910  where controller  250  determines whether the call is intended for control panel  114  based on the ring pattern. If the determination at block  910  is false, then the call is not intended from the control panel, so control continues to block  999  where the function returns.  
         [0084]    If the determination at block  910  is true, then control continues to block  930  where controller  250  disconnects the phones within facility phone network  295 . Control then continues to block  935  where controller  250  answers the telephone call. Control then continues to block  940  where controller  250  analyzes the information transmitted in the telephone signal and sends the DTMF (Dual Tone Multi-Frequency, also known as “touch-tone”) tones into codes and transmits the codes to control panel  114  via transmitter  265 . In another embodiment, controller  250  translates the DTMF codes into control panel commands and transmits the control panel commands to control panel  114  via transmitter  265 . Control then continues to block  999  where the function returns.  
         [0085]    [0085]FIG. 10 is a flowchart of the RF main routine of controller  250  in phone-interface device  140 . Control begins at block  1005 . Control then continues to block  1010  where controller  250  determines whether the provisional timer has expired. If the determination at block  1010  is true, then control continues to block  1015  where controller  250  moves the provisional alarms to the report buffer. Control then continues to block  1020  where controller  250  starts the delayed alarms, as further described below with reference to FIG. 13 at entry block  1305 . Referring again to FIG. 10, control then continues to block  1099 , which returns to block  1005 .  
         [0086]    If the determination at block  1010  is false, then control continues to block  1025  where controller  250  determines whether it has received an RF command. If the determination at block  1025  is true, then control continues to block  1030 , where controller  250  does the RF command, as further described below with reference to FIGS.  11 - 19 . Control then continues to block  1099 , as previously described above.  
         [0087]    If the determination at block  1025  is false, then control continues to block  1035  where controller  250  determines whether 5 pings have been missed. If the determination at block  1035  is true, then control continues to block  1040  where controller  250  tries to resync. Control then continues to block  1050  where controller  250  determines whether it has the panel. If the determination at block  1050  is true, the control continues to block  1099 , which returns to block  1005 , as previously described above.  
         [0088]    If the determination at block  1050  is false, then control continues to block  1055  where controller  250  determines whether the resync tries are done. If the determination at block  1055  is false, then control returns to block  1040 , as previously described above.  
         [0089]    If the determination at block  1055  is true, then control continues to block  1060  where controller  250  determines whether control panel  114  is armed. If the determination at block  1060  is true, the control continues to block  1065  where controller  250  puts the panel failure alarm in the buffer. Control then continues to block  1075  where delayed alarms are started, as described below with reference to FIG. 13 at entry block  1305 .  
         [0090]    If the determination at block  1060  is false, then control continues to block  1070  where controller  250  puts panel failure trouble in the buffer. Control then continues to block  1075 , as previously described above.  
         [0091]    [0091]FIG. 11 is a flowchart of the Provisional Alarm routine of controller  250  in phone-interface device  140 . Control begins at block  1100 . Control then continues to block  1110  where controller  250  determines whether the provisional timer is on. If the determination at block  1110  is false, then control continues to block  1120  where controller  250  starts the provisional timer. Control then continues to block  1130  where controller  250  buffers the provisional alarm. Control then continues to block  1140  where controller  250  returns to the RF Main routine, as previously described above with reference to FIG. 10.  
         [0092]    Referring again to FIG. 11, if the determination at block  1110  is true, then control continues directly from block  1110  to block  1130 , as previously described above.  
         [0093]    [0093]FIG. 12 is a flowchart of the Clear Provisional Alarm routine of controller  250  in phone-interface device  140 . Control beings at block  1200 . Control then continues to block  1210  where controller  250  determines if the provisional timer is on. If the determination at block  1210  is true, then control continues to block  1220  where controller  250  stops the provisional timer. Control then continues to block  1230  where controller  250  clears the provisional alarms. Control then continues to block  1240  where controller  250  returns to the RF Main routine, as previously described above with reference to FIG. 10.  
         [0094]    Referring again to FIG. 12, if the determination at block  1210  is false, then control continues directly to block  1240 , as previously described above.  
         [0095]    [0095]FIG. 13 is a flowchart of the Start Delayed Alarms and Delayed Alarm routines of controller  250  in phone-interface device  140 . Control begins at block  1300  for the Delayed Alarm routine and at block  1305  for the Start Delayed Alarms routine. From block  1300 , control continues to block  1310  where controller  250  buffers the alarm. Control then continues to block  1320  where controller  250  determines whether an alarm is pending. If the determination at block  1320  is false, then control continues to block  1330  where controller  250  determines whether the dialer timer is on. If the determination at block  1330  is false, then control continues to block  1340  where controller  250  starts the dialer timer. Control then continues to block  1350  where controller  250  sets alarm pending. Control then continues to block  1360  where controller  250  returns to the RF Main routine, as previously described above with reference to FIG. 10.  
         [0096]    Referring again to FIG. 13, if the determination at block  1330  is true, then control continues directly from block  1330  to block  1360 , as previously described above. If the determination at block  1320  is true, then control continues directly from block  1320  to block  1360 , as previously described above.  
         [0097]    When the routine is entered at block  1305 , control continues directly from block  1305  to block  1320 , as previously described above.  
         [0098]    [0098]FIG. 14 is a flowchart of the Immediate Alarm and Start Immediate Alarms routines of controller  250  in phone-interface device  140 . Control begins at block  1400  for the Im mediate Alarm routine and at block  1405  for the Start Immediate Alarms routine. From block  1400 , control continues to block  1410  where controller  250  buffers the alarm. Control then continues to block  1420  where controller  250  determines whether an alarm is pending. If the determination at block  1420  is false, then control continues to block  1430  where controller  250  determines whether the dialer timer is on. If the determination at block  1430  is true, then control continues to block  1440  where controller  250  stops the dialer timer. Control then continues to block  1450  where controller  250  sets alarm pending. Control then continues to block  1460  where controller  250  sets report pending. Control then continues to block  1470  where controller  250  sets a flag to do the report. Control then continues to block  1480  where controller  250  returns to the RF Main routine, as previously described above with reference to FIG. 10.  
         [0099]    Referring again to FIG. 14, if the determination at block  1430  is false, then control continues directly from block  1430  to block  1460 , as previously described above. If the determination at block  1420  is true, then control continues directly from block  1420  to block  1460 , as previously described above.  
         [0100]    When the routine is entered at block  1405 , control continues directly from block  1405  to block  1420 , as previously described above.  
         [0101]    [0101]FIG. 15 is a flowchart of the Cancel Alarm routine of controller  250  in phone-interface device  140 . Control begins at block  1500 . Control then continues to block  1510  where controller  250  determines whether an alarm is pending. If the determination at block  1510  is true, then control continues to block  1520  where controller  250  determines whether the dialer timer is on. If the determination at block  1520  is true, the control continues to block  1530  where controller  250  stops the dialer timer. Control then continues to block  1540  where controller  250  clears alarm pending. Control then continues to block  1550  where controller  250  clears the report buffer. Control then continues to block  1560  where controller  250  returns to the RF Main routine, as previously describe above with reference to FIG. 10.  
         [0102]    If the determination at block  1520  is false, then control continues to block  1570  where controller  250  buffers a cancel report. Control then continues to block  1580  where controller  250  sets report pending. Control then continues to block  1590  where controller  250  sets a flag to do the report. Control then continues to block  1560 , as previously described above.  
         [0103]    If the determination at block  1510  is false, then control continues directly from block  1510  to block  1570 , as previously described above.  
         [0104]    [0104]FIG. 16 is a flowchart of the Expire Provisional Timer routine of controller  250  in phone-interface device  140 . Control begins at block  1600 . Control then continues to block  1610  where controller  250  determines whether the provisional timer is on. If the determination at block  1610  is true, then control continues to block  1620  where controller  250  stops the provisional timer. Control then continues to block  1630  where controller  250  moves provisional alarms to the report buffer. Control then continues to block  1640  where controller  250  starts delayed alarms. Control then continues to block  1650  where controller  250  returns to the RF Main routine, as previously described above with reference to FIG. 10.  
         [0105]    Referring again to FIG. 16, if the determination at block  1610  is false, then control continues directly from block  1610  to block  1650 , as previously described above.  
         [0106]    [0106]FIG. 17 is a flowchart of the Expire Dialer Timer routine of controller  250  in phone-interface device  140 . Control begins at block  1700 . Control then continues to block  1710  where controller  250  determines whether the dialer timer is on. If the determination at block  1710  is true, then control continues to block  1720  where controller  250  starts immediate alarms. Control then continues to block  1730  where controller  250  returns to the RF Main routine, as previously described above with reference to FIG. 10.  
         [0107]    Referring again to FIG. 17, if the determination at block  1710  is false, then control continues directly from block  1710  to block  1730 , as previously described above.  
         [0108]    [0108]FIG. 18 is a flowchart of the Set Armed State routine of controller  250  in phone-interface device  140 . Control begins at block  1800 . Control then continues to block  1810  where controller  250  sets the armed flag. Control then continues to block  1820  where controller  250  returns to the RF Main routine, as previously described above with reference to FIG. 10.  
         [0109]    [0109]FIG. 19 is a flowchart of the Set Disarmed State routine of controller  250  in phone-interface device  140 . Control begins at block  1900 . Control then continues to block  1910  where controller  250  clears the armed flag. Control then continues to block  1920  where controller  250  returns to the RF Main routine, as previously described above with reference to FIG. 10.  
         [0110]    [0110]FIG. 20 is a flowchart of the Phone Main routine of controller  250  in phone-interface device  140 . Control begins at block  2000 . Control then continues to block  2005  where controller  250  determines whether the dialer timer is done. If the determination at block  2005  is true, the control continues to block  2010  where controller  250  stops the dialer timer. Control then continues to block  2015  where controller  250  sets report pending. Control then continues to block  2020  where controller  250  sets a flag to do the report.  
         [0111]    Control then continues to block  2025  where controller  250  seizes the communications link. Control then continues to block  2030  where controller  250  takes the phone off hook. Control then continues to block  2035  where controller  250  dials the telephone. Control then continues to block  2040  where controller  250  communications with monitoring station  290 . Control then continues to block  2045  where controller  2045  clears alarm pending. Control then continues to block  2050  where controller  250  clears report pending. Control then continues to block  2055  where controller  255  returns to block  2000 , as previously described above.  
         [0112]    If the determination at block  2005  is false, then control continues from block  2005  to block  2057  where controller  250  determines if a report is ready to go out. If the determination at block  2057  is true, then control continues from block  2057  to block  2025 , as previously described above.  
         [0113]    If the determination at block  2057  is false, then control continues from block  2057  to block  2060  where controller  250  determines whether there is a ring pattern match. If the determination at block  2060  is true, then control continues from block  2060  to block  2065  where controller  250  seizes the communications link. Control then continues to block  2070  where controller  250  takes the telephone off hook. Control then continues to block  2075  where controller  250  communicates with the downloader. Control then continues to block  2080  where controller  250  returns to block  2000 , as previously described above.  
         [0114]    If the determination at block  2060  is false, then control returns to block  2000 , as previously described above.