Fault monitoring and notification system for automated banking6279826Abstract A system operates to receive status messages from banking machines (12) operating in a network (14). The messages are received by an event management system (20) operating at least one computer (54) in operative connection with a data store (52). The data store includes information representative of the banking machines in the network, status messages generated by the banking machines and actions to be taken including entities to be notified of conditions which cause status messages to be sent by the various banking machines. A device status processing program (36) in the computer resolves an action to be taken responsive to the status message. Responsive to the action resolved by the device status processing program the computer causes a notification message to be dispatched by a multimedia reporter to an entity who is to be notified of the condition at the banking machine which caused the status message. Claims We claim: Description TECHNICAL FIELD
Field Name
Number of Field Length Format Description
1 Terminal ID 15 ASCII The ATM
identification number
used in the system
2 Host ID 15 ASCII The internal system
ID for the ATM host
or controller sending
the message
3 Date 8 YYYYMMDD Date of event or
status message from
ATM
4 Time 6 hhmmss Time of event or
status message from
ATM
5 Status length 4 numeric Total length of fields
0000-9999 in status message
Status variable variable Status message sent
message by ATM to host
from ATM
It should be understood that the preferred form of the present invention is operative with a number of different types of banking machines which have different message formats for status condition messages, as well as different types of status condition messages. The event management system 20 of the preferred embodiment is operative to handle condition messages of various types for which information has been stored in its data store. This enables the system to work with ATM networks in which numerous types and varieties of banking machines are used. The fault or condition status messages may vary between machine types and manufacturers. A typical example of a status message which would be included as part of the host message to the event management system, would be a status message generated by an automated teller machine manufactured by Diebold, Incorporated, the assignee of the present invention. In this case the host messages sent to the event management system may include data in many separate fields in the status message portion of the host message. In addition to header fields 1 through 5 previously discussed, the status message portion may have the following fields.
Field Name
Number of Field Length Format Description
6 Solicited/ 1 "1" or "2" 1 Unsolicited;
Unsolicited 2 Solicited
ID
7 Message ID 1 "2" Indicates purpose and
format of message;
"2" indicates a
device status
message
8 Field 1 0 .times. 1C Field separator
separator
9 LUNO var. 3-9 numeric ATM logical unit
000000000- number. May be
999999999 zero filled
10 Field 1 0 .times. 1C Field separator
separator
11 Field 1 0 .times. 1C Field separator
separator
12 Status 1 ASCII Reason why message
descriptor* was sent; "8"
indicates device fault
13 Field 1 0 .times. 1C Field separator
separator*
14 Device 1 ASCII An indicator of the
identifier device in the ATM
reporting this status
15 Device/ var. 42 ASCII Alpha numeric
application descriptor of status
status
16 Field 1 0 .times. 1C Field separator
separator**
17 MDS var. 116 ASCII MDS type status
status**
18 End of text 1 0 .times. 03 End of message
indicator
*These fields are not present if message is an unsolicited message.
**These fields are not present if MDS status is not selected. MDS
represents a particular type of Diebold .RTM. ATM.
It should be understood that while the above message format indicates a message format used in a preferred embodiment of the present invention for host messages, in other embodiments other formats may be used. As shown in FIG. 3, the ATM host 16 may send host messages to the computer or computers operating the event management system through various types of drivers. By way of example, an SNA3270 driver 42 is shown as sending the message. However the present invention is also operable to send host messages through an RS232 type communicators driver 46. In addition, the event management system 20 may receive messages through a network 48, which may be a local area network (LAN) or a wide area network (WAN). Network 48 may be a network that communicates TCP/IP messages, in which case the ATM host may send a message to the event management system through the network 48 using a TCP/IP sender 50. As previously discussed, the message gateway router 34 of the event management system 20 is in operative connection with a data store which is schematically indicated 52. Data store 52 preferably includes one or more relational databases that include data representative of numerous types of information used by various system components in performing their functions. The data store may reside on the same computer or server as the other functional software components of the event management system. Alternatively, the data store may reside on other operatively connected computers. The event management system preferably operates in computers having a client/server configuration shown in FIG. 6, which includes at least one computer 54 which acts as a server and which has the data store 52 thereon. The server 54 is connected to a number of computers 56 which are connected through a local or wide area network 58. Each of the computers 56 is enabled to access the software programs of the event management system and the database which operate in the server computer 54. The computer software of the event management system is installed on the computers from computer readable media bearing the software. Such computer readable media may include diskettes, a tape, a disk drive or other media from which software may be read. Each of the computers 54 and 56 is in operative connection with a display device 60 which includes a screen for displaying instructions or outputting other information to the user. Each of the computers 54, 56 is also preferably in operative connection with input devices. Such input devices may include for example, a keyboard schematically indicated 62 or a mouse 64. In other embodiments other input devices may be used including electronic links or other connections or ways in which a user may provide inputs to the computers. It should be further understood that the network 58 may also be in connection with multiple servers and that the event management system 20 may have portions operating on multiple servers, or may have the data store residing in databases on multiple servers. For the event management system of the preferred embodiment to operate, information must first be input into the data store 52 concerning the ATMs connected to the system as well as the locations in which they operate. Information is also preferably input concerning the host computer or controller to which the ATMs are connected, as well as the ATM "groups" in which a particular ATM may be included. This relationship is schematically represented in FIG. 9 which shows that there is a logical relationship for each ATM between a host or controller, a physical location for the particular ATM and a particular group in which the ATM is included. Information representative of these aspects of ATMs, controllers, locations and ATM groups is stored in correlated relation in the data store 52. In the preferred form of the invention the data is stored in a plurality of database records. To provide this information to the event management system, the computer 54 is appropriately programmed with event management application software which facilitates the inputting of the required information. A main menu window 66 shown in FIG. 8 is generated by the event management system software at the display devices associated with computers having access to the system. The event management system is preferably configured to operate in a Windows.RTM. operating environment to facilitate operation of the system by a user. As shown in FIG. 8 under the column in the main menu entitled "Administration", certain windows or screens associated with ATMs may be selected for purposes of display and input. For example, selecting the "controllers" entry under the heading "Administration" causes the controllers window 68 shown in FIG. 10 to be displayed. The controllers window 68 enables a user to establish the controller identification information associated with host computers which send the information to the event management system. It should be noted that the controllers window 68 enables the establishment of a controller ID and name for each host, as well as the designation of particular voice files which are used by the MMR for purposes of reporting information concerning the host through the IVR. It should also be noted with regard to FIG. 10 that host computers can be designated as "internal" to the EMS system. This is done for purposes of phantom or test ATMs which are used in a manner later discussed to test the operation of the system. An example of a layout for a database table record in which information on controllers is stored is the "networks" table record shown in FIG. 50. It should be understood that the windows displayed by the user interface may include information from many types of table records. However, the logical foundation of the system will sometimes result in much of the displayed information being stored together in a record in the data store. Selecting the entry "ATMs" under the "Administration" in the main menu 66 shown in FIG. 8 causes an ATM window 70 shown in FIG. 11 to be displayed. A user is enabled to input through the input devices such as the keyboard, a terminal ID number associated with a particular ATM as well as the controller or host ID number previously discussed. A user is also enabled to enter information about groups to which the ATM belongs as well as a location ID number which is associated with the location where the ATM is located. Other information may also be entered by a user in the ATM window 70. This information includes the model number and serial number associated with a particular ATM. It also includes information related to service vendor information such as a product key assigned by a service vendor such as Diebold, Incorporated, for first line and second line service. Other information included in the ATM window may include ATM types and the "mode" which is an indication of the format in which the ATM communicates messages. Database table record layouts for information related to ATMs and ATM modes are shown in FIG. 50. During operation of the system as shown in FIG. 11, selection of the ATM window is also operative to provide status information and statistical information concerning the particular ATM selected. From the main menu 66 shown in FIG. 8, selecting the entry "ATM groups" under "Administration" causes the ATM groups window 72 shown in FIG. 12 to be displayed on the display device. A user is enabled to input information in the ATM groups window which identifies a particular group and includes certain ATMs by terminal ID in this group. Groups may be used for purposes of treating particular ATMs in a similar manner for purposes of administration by the system operator. Database table record layouts for data concerning service groups is shown in FIG. 50. The selection of the "locations" entry under "Administration" in the main menu window 66 of the event management system causes a locations window 74 shown in FIG. 13 to be displayed. The locations window is configured to include a location ID associated with a particular ATM. The locations window also includes address information as well as a contact name at the location. In addition, the locations window may include designations of voice files to be used when transmitting to this particular location as well as vendor information, such as a vendor site number which is shown in FIG. 13 as a Diebold site number. As shown in FIG. 13 locations window 74 is also used when the location is a facility which is staffed by personnel during certain business hours. This information is used by the system to determine whether to contact someone at the location to give notice of status conditions. If the ATM associated with the location is not at a facility that is staffed with personnel, there are no business hours and this portion of the locations window is left blank. If a locations window is accessed during operation of the system the locations window is operative to provide status information on machines at the particular location. An example of a database record layout for data associated with ATM sites is shown in FIG. 50. The information provided through the ATMs, controller, ATM groups and locations windows is used by the system to establish the database records in the data store 52. These database records are used by the computer(s) operating the event management system 20 in a manner later discussed to resolve the information necessary to accomplish its functions. Returning now to the operation of the system as explained with regard to FIG. 3, ATM host messages 30 are received at the corresponding line driver 32 associated with the event management system 20. The event management system 20 includes for each functional component in the software a node table record having the layout shown in FIG. 46. The node table records include for each node, node table record data shown in a portion 76 of the node table layout shown in FIG. 46. In addition, if a particular node corresponds to a line type node, a node table portion 78 is included as part of the node table record layout. If a node corresponds to a process, a table record portion 80 is included as part of the node table record layout along with portion 76. The node table records associated with each functional component in the software system provides characteristic data concerning the software process represented by the node table record which enables communication with the software component represented by the node as well as enables the operation thereof as part of the system. When the line driver 32 receives a host message it is operative in the preferred embodiment to place the host message within a standard message envelope (SME) format used by the MGR 34 within the event management system. In the preferred embodiment, the standard message envelope is as follows:
Field
Number Field Designator Description Length
1 HEADER SID SME message layout version 1
2 SOURCE NODE System node originating 6
SID message
3 MESSAGE The time the event management 17
RECEIVE system receives the message in
SYSTEM the format
TIME YYYYMMDDHHMMSSmmm
4 INTERNAL The system ID of the message 4
MESSAGE
SID
5 Not used 4
6 TARGET NODE The system ID of the node to 6
SID which a message is being sent
7 DATA FORMAT Indicator that the particular 1
INDICATOR source of the message is either
internal or external
8 MESSAGE A designator of the direction 1
DIRECTION of a message either into or out
of the system
9 Not used 5
10 PROCESSING Last processing node system ID 6
NODE SID
11 Not used 6
12 THE MESSAGE A particular message being sent variable
TEXT to the function represented by
the TARGET NODE SID
It should be understood that in other embodiments other standard message envelope formats may be used. Upon receipt of the host message 30 by line driver 32 the line driver is operative to establish the contents of the fields in the SME format as follows: In Field 1 the HEADER SID is set to "1" as this represents one layout for Fields 1 through 11 in the SME header. Other message forms in the system use other designators which represent different SME layouts. In Field 2 of the header the line driver 32 is operative to insert its own NODE SID as the SOURCE NODE SID of the message within the system. In Field 3 the line driver inserts the time at which the event management system 20 receives the message. This is done based on a clock routine which serves as a clock device operating in the computer in which the event management system is operating. The line driver 32 resolves the INTERNAL MESSAGE SID data in Field 4 from the data from its own node table record. This is done by determining the IN_MSG_FMT_SID value from its own node table record and inserting it in Field 4 in the message. Field 5 is not used and is set to null values. The line driver resolves the information for Field 6 from its own node table record. The node table record includes information about its "parent" node which in this case is the node identification value for the message gateway router 34 to which the line driver will send its message. This designator is indicated PARENT_NODE_SID in the node table record associated with the line driver. The line driver is operative to include this designator in Field 6. The line driver is further operative to include in Field 7 a "zero" value which is indicative that the message is coming from an external data source. This will always be true for messages from the line driver. The line driver is further operative to set the MESSAGE DIRECTION in Field 8 to a value which is indicative that the line driver is receiving an inbound message. The line driver is further operative to place its own NODE SID value in Field 10 of the message, and sets the values in Field 9 and 11 of the message which are not used to null values. The line driver is further operative to place the host message in the format received in Field 12 of the message. Having built a message in this SME format, the line driver is now operative to send the message to the message gateway router 34. This is done using the TARGET NODE SID value for the message gateway router which is included in Field 6 of the message. A "send message" routine of the preferred embodiment is operative to send the message. This routine first determines if the target node for the message resides on the same computer or on a different computer from the system component that is sending the message, in this case the line driver. This is accomplished by the send message routine reviewing the node table record associated with the target node. In the present example the message gateway router is a node type process which includes the table portion 80 shown in FIG. 46. This portion of the node table record associated with MGR includes a SERVER_SID value. The send message routine is operative to determine if the SERVER_SID value associated with the TARGET NODE SID in the data store is the same as that for the SOURCE NODE SID, which in this case is the line driver that is sending the message. If the SERVER_SID for both the source node and the target node are the same, then both processes reside on the same computer (server). In response the send message routine operates to send the message through the interprocess communication system (IPC) of the one computer. However, if the target node resides on a different computer, the send message routine is operative to look up the system IP address on other computer to which to send the message. This is accomplished by taking the SERVER_SID value and looking up in the data store a server table record. Server table records have a layout 82 shown in FIG. 46. The server table record includes an IP address value associated with the SERVER_SID value. It should be noted that the node table record layout as shown in table portion 76 includes an entry indicative of the particular interprocess communication type through which the software component to which the node table corresponds, receives its messages through the interprocess communication system. This designator is indicated IPC_TYPE_SID in the node table record layout. This designator can be indicative of a message queue, or a named pipe or a TCP/IP manner of communication. In response to determining that the target node of the message is on the same server, the send message routine is operative to call a "make interprocess communication key function" which is operative to send the message to the appropriate designation within the operating system from which it will be retrieved by the functional component which corresponds to the target node. The software function is operative to send the message based on the data stored in the node table record corresponding to the target node value (NODE_SID) in Field 6 of the message. The parameters used in the preferred embodiment include the values APPLICATION_SID, IPC_TYPE_SID, NODE_TYPE_SID and MSG_PRIORITY. Of course the approach taken in other embodiments depends on the nature of the computer hardware and software being used. In the alternative, if the send message function determines that the target node for a message is located on a different computer, it retrieves the IP address for the target node from the server table record 82 and the IP_PORT_ID from the node type process portion of the corresponding table record for the target node as shown in table portion 80. This provides the TCP/IP address information necessary to send the message to the target software component on the other server. In some situations the other server may involve a different hardware architecture which requires certain portions of the message to be changed. If such a modification in the message is indicated in the server table record, the message is changed in this manner by the send message function before being sent. In the preferred form of the invention, if the send message function determines that the TARGET_NODE_SID for the message is on a different computer, it resolves an address for a listener based on the IP address associated with the computer on which the software which corresponds to the target node is operating. The listener receives the message and then sends the message to the particular target node based on the TARGET NODE SID value in Field 6 of the message header. This approach enables the message from the line driver to be sent to the message gateway router 34 regardless of where the message gateway router function resides in the computer system. The message gateway router 34 is operative to receive the message from the line driver and place it in a suitable message format for use by other components of the system. The message gateway router is first operative to determine the format of the message it has received from the host, which is contained in Field 12 of the standard message envelope format transmitted by the line driver. This is determined from the INTERNAL_MSG_SID value (internal message ID) which the line driver placed in Field 4 of the message. Using this FMT_SID value (format ID) the message gateway router operates to find a message format table record which includes this value. Message format table records are represented by the message format table layout 84 shown in FIG. 47. Upon finding the message format table record corresponding to the value set forth in Field 4 of the header, the message gateway router operates to recover values from the table record representative of an "offset" and "length" which correspond to the location in the message where a value representative of the particular message "type" is found. The offset and length values are designated in table record layout 84 by the MSG_TYPE_OFFSET and MSG_TYPE_LENGTH values. In response to finding these values the message gateway router 34 operates to step through the data characters in Field 12 of the standard message envelope a number of characters equal to the message type offset. The message gateway router then copies the number of characters following the offset equal to the message type length. These characters are a value indicative of the type of message that has been received by the message gateway router. Having resolved the message type from the message format table record information, the message gateway router 34 is then operative based on the IN_MSG_FMT_SID value from Field 4 of the header (indicative of the format of messages the line driver receives) and the resolved message type information, to find a message map table record that corresponds to these two values. A message map table record is represented by the message map table record layout 86 in FIG. 47. By finding a message map table record which includes the FMT_SID in the message from the line driver and the resolved MSG_TYPE value, the message gateway router is enabled to resolve an internal message ID value designated INT_MSG_SID. The message gateway router is then operative to reformat or otherwise transform the message text in Field 12 into a format suitable for use by the next functional component within the event management system. The message gateway router in doing this first sets a field number designated FIELD_NUM value to "1", and using a message version or MSG_VER value of "1" from Field 1, the MGR proceeds to find a message field table record in the data store which corresponds to the resolved INT_MSG_SID value, message version value and field number value. The message field table records are represented by message field table record layout 88 shown in FIG. 47. The message gateway router locates in the data store the message field table record that corresponds to the INT_MSG_SID resolved from the message map table record and which corresponds to the MSG_VER value of "1" and the FIELD_NUM value of "1". Upon finding this message field table record the MGR is enabled to resolve data from the table record which indicates the field length of a particular field which is indicated by the FIELD_LEN value. This is representative of the length of the data which represents the first field in the raw message. The message gateway router 34 is further operative to place the first field from the raw message data into an internal array in the MGR. This is done in accordance with field map data which is resolved by the message gateway router from a field map table record. A field map table record layout is indicated 90 in FIG. 47. The message gateway router is operative to find the field map table record that includes the resolved INT_MSG_SID value and the original message version, original field number and original field data values resolved from the message field table record and the header of the message. Upon finding the message map table record in the data store including this data, the message gateway router is enabled to resolve field map data designated FIELD_MAP_DATA which is a value indicative how the data for the first field number is to be placed into the cell array in the MGR. Having placed the data from the first field in the raw message, which was in Field 12 of the SME message sent by the line driver, in the appropriate position in the MGR cell array, the MGR then moves on to the next field. It does this by incrementing the field number (FIELD_NUM) counter to "2". The MGR then repeats the process finding a message field table record corresponding to the INT_MSG_SID value and the new field number. Upon having resolved the length of the next message field the MGR then finds a field map table record that corresponds to this next field number which provides the field map data to place the second field from the raw message into the MGR cell array. The field number is again incremented. This process is repeated until all of the fields in the raw message have been placed in the cell array of the MGR. In this manner the original raw message is mapped into the cell array of the MGR and is transformed to a new format based on its message format and type, which new format is suitable for use by the component of the event management system which can handle that type message. As shown in FIG. 3, the message gateway router 34 is further operative to generate a record in a message log schematically indicated 92. This message log is comprised of records stored in the data store 52. An example of the fields held in a message log record of a preferred embodiment of the present invention is schematically indicated by status message log table record 94 shown in FIG. 51. The MGR is operative to insert these values from its cell array based on where they are mapped into their designated positions within the cell array. As can be appreciated from the sample description of the host message, many of the values in the status message log table record are present in the host message or are determined by the MGR during its operation. The MGR is also operative to resolve an ATM_SID value. This value is resolved as shown in FIG. 50 from ATMs table records which have ATMs table record layout 96. The values necessary to resolve the ATM_SID value includes the NETWORK_SID value which may be derived from network table records which are schematically shown as record layout 98 in FIG. 50. As shown from table record layout 98 the NETWORK_SID value can be resolved from the network ID value which is included in Field 2 of the host message. From the NETWORK_SID value and the terminal ID value (Field 1 of the host message) an ATM table record can be resolved which provides the ATM_SID value. Other values for the status log table record, including the FAULT_SID, PROBLEM_SID, DEVICE_STATUS_SID values are not resolved at this point but are left for resolution at a later stage by operation of the device status processing program. Having reformatted the raw message from the host into a form suitable for use by the next component within the system, the MGR is next operative to construct a message from its cell array directed to the next component of the system. In the case of an ATM status condition message, the next component will be the device status processing program 36 (DSPP). To send the message from the MGR to the device status processing program the MGR constructs a new SME format message. This new message has a different HEADER SID value in Field 1 of the message which is indicative that this message will have a different format which is suitable for processing by the DSPP. The message from the MGR to the DSPP is a union of structures as are all internal system messages with the exception of messages from the line driver to the MGR. The message includes structures which will eventually be required in a message from the DSPP to the multimedia reporter. Additional structures required for the MMR to perform its functions will be resolved by the DSPP. As reconstituted by the MGR from its cell array, the message to the DSPP in the preferred embodiment includes the following structures.
Structure No. Name Description
1 SME_MSG_TYPE This corresponds to the message
version
value for this message structure
2 DATE This is the date of the fault
message from
Field 3 of the host message
3 TIME This is the date of the fault
message from
Field 3 of the host message
4 ATM_SID This is the ATM_SID value resolved
by
the MGR which corresponds to a table
record for the ATM that generated
the
fault message
5 FAULT_SID Null at this time
6 MMR_ACTION_SID Null at this time
7 UNUSED Null at this time
8 MSG_TYPE This value is indicative of the
solicited/unsolicited character of
the
message and is based on the data in
Field
6 of the original host message
9 MSG_ID This value is indicative of the
device status
message indicator and is based on
the data
in Field 7 of the original host
message
10 LUNO This value is indicative of the
logical unit
number and is based on data in Field
9 of
the original host message
11 STATUS_ID Null at this time
12 DEVICE_ID This value is indicative of the
device
identifier and is based on the data
in Field
12 of the host message
13 DEVICE_SID Null at this time
14 STATUS_BYTES_LEN This value is indicative of the
length of the
status message in the STATUS_BYTES
portion of this message
15 STATUS_BYTES This is the status information which
is
based on the data in either Field 15
or 17
of the original host message based
on the
type of ATM generating the message
16 STATUS_MSG_LOG Null at this time
17 STATUS_MSG_LENGTH Null at this time
18 STATUS_MSG This is a reproduction of the
original status
message sent by the ATM in its
entirety
19 ATM_MODE_SID Null at this time
20 DEVICE_STATUS_SID Null at this time
21 STATUS_BITMAP_LEN Null at this time
22 STATUS_BITMAP Null at this time
23 SML_STATUS_DATE This is the status message log
status date
which is the date associated with
the
record corresponding to the status
message
that has been created in the data
store
24 VENDOR INTERFACE Null at this time
25 CREATE_TROUBLE_IND Null at this time
It should be noted that while the foregoing description of the structures indicates the origins of the data from the exemplary ATM status message previously described, a different ATM status message format could have been used as the source for the data. The MGR functions to reformat such other format host messages so a message having this group of structures will be produced by the MGR when the message is of a type to be handled by the DSPP. The MGR resolves a TARGET NODE SID value for sending the message to the DSPP by reviewing the node table record for the MGR. As can be seen with reference to the node table record layout 76 in FIG. 46, the node table record includes a designator for a parent node of the particular node (PARENT_NODE_SID). In the case of the MGR, the NODE_SID of the device status processing program is the "parent node" of the MGR. The MGR is operative to resolve this NODE_SID value for purposes of sending the message to the DSPP. After constructing a new message the MGR is operative to call the send message routine. The send message routine works in the manner previously described to determine if the TARGET NODE SID to which it is sending the message is located on the same computer as the MGR. Upon determining whether the device status processing program 36 is located on the same computer or another computer, the send message routine is operative to deliver the message from the MGR to the device status processing program. For purposes of this example it will be presumed that the DSPP is on the same server as the MGR and the message is delivered to the DSPP through the interprocess communications function. Upon receiving the message from the MGR the device status processing program 36 is operative to carry out the processes which are schematically represented in FIG. 4. These processes include the assimilation of information from the message it receives and the database concerning the ATM which is sending the message and determining the particular manner in which it is operating so as to interpret its message. The device status processing program 36 then operates to determine the particular fault and device associated with the condition message sent by the ATM. This is done by the device status processing program as schematically indicated based on information stored in the data store 52. The information in the data store is representative of the various device and fault codes and the particular conditions and devices they represent. The data in the message sent by the MGR is used to resolve a particular fault condition which has been indicated. As further schematically represented in FIG. 4, the device status processing program, after having determined the identity of the ATM exhibiting the condition and the nature of the fault condition represented by the condition message that the ATM generated, is then operative to determine a value representative of an action to be taken. This is done based on information that is stored in the database concerning actions to be taken in response to a particular fault condition in a particular device at a particular ATM. To establish the information that is required in the data store to carry out the functions of the device status processing program, as well as the multimedia reporter, certain data is input to the data store. This is done in accordance with the categories of information shown in the main menu window 66 shown in FIG. 8. Specifically, under "Administration" a "Holidays" window 100 shown in FIG. 15 may be used to input certain days that are considered to be holidays at particular ATM locations. This information works in coordinated relation with the location data and is used by the system in situations where first line service is needed which could be done by personnel at a branch of a bank, or other persons normally present at the ATM location. However, this data enables the system to check if the condition requiring first line service has occurred during a holiday, at which time someone other than branch banking personnel will need to be contacted. A database table record layout for "Holidays" records is shown in FIG. 57. The Holidays table record layout includes a SITE_SID value which corresponds to the location where the ATM is located. A vendors window 102 is shown in FIG. 14. Each vendor window 102 shows the name of a particular vendor who can service banking machine conditions. The vendors window further includes contact information for persons at the vendor including phone and fax information. The information input through the vendor windows may be used to contact particular individuals at service vendors when such individuals need to be contacted for purposes of servicing conditions at ATMs. The vendors window may also contain an indication of whether the vendor will be permitted to indicate the status of calls by responding through the interface device of the multimedia reporter, or whether some other method will be used. A database table record layout for "Vendors" records is shown in FIG. 55. Also shown in FIG. 55 is a layout for "ATM Vendor Hours" which contains data values representing a particular ATM and the vendor who will be contacted concerning the ATM, the hours the vendor is responsible and the method of contact or "call" to be made to the vendor. FIG. 16 shows a message recipients window 104. The message recipients window provides contact information for various entities that may be notified of conditions at machines in the system. It should be noted that the message recipients window may contain phone, fax and pager numbers for message recipients. In addition, the message recipients window may include a mailbox number and password for each message recipient. This information may be used to provide security for the interface device so that only persons who input a proper mailbox number and password will be allowed to gain access to the interface device of the system. FIG. 54 shows a data base table record layout for "contacts" who are message recipients. These records contain data values representative of a system mailbox and password as well as contact number information. The records also contain values which correlate this contact with a vendor and voice files to be used for the contact. FIG. 28 shows a fault codes window 106. The fault codes window 106 shows the particular condition associated with a condition message which is generated by the ATM. It should be noted that the fault codes window includes information concerning the particular device type within the ATM that the particular fault code is associated with. It also indicates a particular class and operational status associated with the particular fault. For example, some faults may still allow an ATM to be operable or partially operable in a degraded mode. Such a condition may not necessitate attention as immediate as other conditions. In addition, it should be noted that the fault codes window includes information concerning corrective action that may be taken to correct the particular condition. The layout of "device type" database table records is shown in FIG. 50. Values in the message which are representative of the ATM device, message type and mode enable resolution of a device id value (DEVICE_SID). FIG. 49 shows a layout for "device status" table records. The device status table records are used to resolve a value representative of the fault which has occurred (FAULT_SID) from other data values. A fault actions window 108 similar to that shown in FIG. 7 is shown in FIG. 29. The fault actions window is operative to lay out for each banking machine connected to the system and each type of fault condition at the machine, the particular action to be taken in response thereto. The first four columns of the table are used to specify the particular ATM for which fault actions will be taken. If the user wishes to limit particular fault actions to a particular device type they are also enabled to do that through an entry in the sixth column of the table in the fault actions window. The seventh column of the table fault actions window specifies the particular fault code that the action corresponds to. The eighth column of the table corresponds to threshold values which are specified by the user in a thresholds window 110 shown in FIG. 30. The thresholds window enables the user to include in memory certain prior conditions which, if they have been found to have occurred, dictate the action to be taken when the fault condition arises. These threshold conditions are shown in the thresholds column of the fault actions window. The check order column represents the order or priority in which the computer is to check the various possible actions which may be taken in response to the same fault code. This is also referred to as a "sequence" value. The check order column has values which range from zero which is the first condition to be checked through sequentially increasing higher numbers which are subsequently checked. The actions column contains the action to be taken in response to the occurrence of a fault code and prior occurrences meeting the requirements of the corresponding threshold. The actions procedures are predefined by the user. An example of predefined action procedures and the corresponding actions that will be taken by the system are shown in FIGS. 31 and 32. These actions procedures also enable a user to set up their own procedures in a tabular arrangement. The table in the fault actions window further indicates whether or not a trouble ticket will be generated for the particular condition. Included among the actions may be the automatic notification of a service vendor through an electronic link such as Diebold, Incorporated's DECAL.RTM. system. As represented in FIG. 7 the table in the fault actions window schematically indicates the coordination of the various types of information that are used by the device status processing program 36 in carrying out its actions. In the preferred embodiment of the present invention data that is input by the user is stored in the table records in the data store of the system and is available for being accessed by the device status processing program in carrying out their functions. The layout of the "fault actions" database table record is shown in FIG. 49 as is the layout of the related "thresholds" records. As can be seen, a table record which includes the values corresponding to the particular network, group, site, ATM, ATM type, device, fault and threshold, corresponds to a particular MMR action value. This value determines the actions the MMR will take. The manner in which the device status processing program resolves information which eventually produces a designation for a particular action to be taken by the multimedia reporter 40, is shown with reference to the database schema shown in FIG. 48. FIG. 48 shows the various table records and the values which are derived therefrom by the device status processing program in resolving the final value indicative of an action the MMR is to take. The layouts of the table records shown in FIGS. 49, 50 and 55 through 59 show further values which are stored and which can be resolved and recovered from the records in the data store. The device status processing program 36 is operative to resolve a multimedia reporter action system ID designator referred to as MMR_ACTION_SID. This designator is used by the system to cause the multimedia reporter to carry out the particular actions which are resolved as the appropriate actions to be carried out in response to occurrence of a fault condition at a particular ATM. Generally these actions will include contacting a particular entity or servicer in a particular manner. The fault actions table record resolved by the device status processing program also indicates whether a trouble ticket record is to be opened in the data store in response to a particular condition message sent by the ATM. The opening of records which correspond to "trouble tickets" is carried out by the MMR in a manner later discussed. The action message value is sent to the multimedia reporter 40 which is shown schematically in FIG. 5. In response to receiving the action message the multimedia reporter is operative based on data in the data store to execute particular actions that are responsive to the action message resolved by the device status processing program. The multimedia reporter is generally operative to dispatch a message to a servicer or other entity through one of the message mediums. It also establishes a schedule of future actions to be taken which is maintained in the scheduler 38. The MMR also tracks and maintains records of conditions and their resolution, and displays and analyzes the records. After resolving the particular MMR_ACTION_SID value representative of the action to be taken by the MMR, the device status processing program is operative to build a message to be sent to the multimedia reporter. The device status processing program is operative to supplement the union of structures that was sent to the DSPP by the MGR with additional data. The data in the structures are values resolved during processing by the DSPP. The DSPP is also operative to change the designator which leads the union of structures to indicate the structure of the new message. In the preferred embodiment the union of structures in the message from the DSPP to the MMR is as follows.
Structure No. Name Description
1 SME MSG TYPE This is a designator of a particular
union
of structures for this message
2 DATE* This is the date of the fault
message
derived from Field 3 of the host
message
and is indicative of the date
associated
with the fault which causes the
action
message to be generated
3 TIME* This is the fault message receive
time
4 ATM_SID* This is the ATM system identifier
value
which has been derived from the
terminal
ID value in the MGR message and the
NETWORK SID value derived from the
network ID value in the MGR message
5 FAULT_SID This is derived by the device status
processing program in the course of
resolving the MMR_ACTION_SID based
on the ATM_MODE_SID and the
ATM_TYPE_SID from the ATM_SID
table record. Further, the MGR
message
provides the terminal ID, terminal
status
and message type information used in
deriving this value
6 MMR_ACTION_SID This is the value indicative of the
action
that the multimedia reporter will
take. It
is resolved from the fault actions
table
record based on the NETWORK_SID,
ATM_SID, ATM_TYPE_SID and
FAULT_SID which are derived in the
course of resolving the
MMR_ACTION_SID. The FAULT_SID
table record provides the DEVICE_SID
value, and the ATM_SID table record
provides the SERVICE_GRP_SID and the
SITE_SID values which are included
in the
message
7 UNUSED Null at this time
8 MSG_TYPE* This is value indicative of the
solicited/unsolicited character of
the
message from the ATM
9 MSG_ID* This value is indicative of the
device status
message indicator
10 LUNO* This value is indicative of the
logical unit.
number
11 STATUS_ID This value is derived from the
status
descriptor information in Field 12
of the
original host message
12 DEVICE_ID* This value is indicative of the
device
identifier information
13 DEVICE_SID This is previously derived by the
device
status processing program from the
FAULT_SID table record
14 STATUS_ This value is indicative of the
length of
BYTES_LEN* the status message
15 STATUS_BYTES* This data is the status information
from the
original message generated by the
ATM
16 STATUS_MSG_LOG This is the data in the status
message log
record corresponding to the status
message
17 STATUS_MSG_LEN This value corresponds to the length
of the
data in structure 18
18 STATUS_MSG* This is reproduction of the original
status
message from the ATM
19 ATM_MODE_SID Ths value is previously derived by
the
device status processing program
20 DEVICE_STATUS_SID This value was previously derived by
the
device status processing program
21 STATUS_BITMAP_LEN This value indicates the length of
the
bitmap used to identify the fields
present
in the status message
22 STATUS_BITMAP This is the bitmap which indicates
the
fields present in the status message
23 SML_STATUS_DATE* Ths value is the status message log
date
corresponding to the status message
log
table record
24 VENDOR INTERFACE These structures contain additional
data
that may be needed to be sent to a
vendor's on-line fault tracking
system
25 CREATE_TROUBLE_IND This is a create trouble indicator
which is
an indication of a trouble ticket is
to be
created by the MMR. This is derived
from the fault actions table in the
device
status processing program
*indicates same structure and value as in MGR message to DSPP.
This message in this format provides all the information required by the multimedia reporter 40 of the preferred embodiment to begin resolving how to send the messages to the proper entities, to create a schedule of activities and to generate records pertaining to the condition which caused the message from the ATM to be sent. The operation of the multimedia reporter is accomplished through state flow processes. The state flow processes are carried out in a manner responsive to the action message received from the device status processing program and information in the data store, to notify the appropriate personnel in accordance with parameters that have been set up by an operator of the system. These include the particular individuals and corresponding fax, phone and pager numbers for which representative data is stored in the database. This further includes providing the particular specialized voice files for which representative data is stored in the database records, to be used with the particular entities to be notified. Similarly, the multimedia reporter is operative to provide the particular configurations for fax formats and E-mail and other electronic message formats which may be necessary to notify appropriate entities or other servicers of the condition at the ATM. The multimedia reporter operates through state flow processes to provide the appropriate message in the appropriate manner. A database schema for the resolution of information which is used to carry out state flow processes of the preferred embodiment is shown in FIGS. 52 through 59. As can be seen from these Figures the stored data is arranged in table records which are used by the multimedia reporter to resolve values associated with the particular actions to be taken and to actuate the interactive voice response device to dispatch the appropriate message in the appropriate medium. Of course, in other embodiments of the invention other approaches may be used. The multimedia reporter is also enabled to respond to input messages provided by servicers to the message receiving portion of the interface device, and to communicate input data to the data store to indicate the content of the input messages. This includes indicating that responsive messages have been received to acknowledge and close trouble tickets. In addition, the interface device may also receive data representative of other activities by servicers or other entities, such as input messages indicative of arrival of the servicer at the location of the ATM, that the servicer or other person is currently working off site to correct the problem, that the problem is resolved and is pending closed awaiting some confirmation activity, that the problem is resolved and that the trouble ticket is closed, and that the trouble ticket is cancelled. Of course the system may be configured to receive input messages indicative of other conditions which pertain to the status of corrective activities. The input messages are also operative to cancel actions that would otherwise be taken by the MMR in response to messages from the scheduler, if the established time had elapsed without the input message being received. It should be understood that while the receipt of input messages through the interface device is discussed in connection with the interactive voice/response module (IVR) the interface device used with the multimedia reporter may receive input messages by E-mail data or other data link from a vendor computer system such as the DECAL.RTM. system provided by Diebold, Incorporated. Further, while the system as described uses a single communications device and interface for dispatching and receiving messages, other embodiments may have multiple interfaces operate to dispatch messages, receive messages, or both. Such interfaces may comprise hardware, software and combinations thereof. The trouble ticket records are generated by the MMR and stored in the data store responsive to the value in the union of structures sent by the DSPP which indicates whether trouble tickets are to be opened. The trouble record which shows the condition indicated at an ATM include data indicating that they have "open" status until the record is indicated as closed. The record is preferably updated with further information until information is included in the record to indicate it is closed. The record may be closed either by the servicer sending an input message through the interface device as previously discussed, or by the user who operates the system using the appropriate window and input device. In some embodiments it may be desirable for a user to input a message through an input device such as a mouse or keyboard indicating that the problem has been resolved or cancelled. The system is preferably configured to enable a servicer or user to input messages electronically either from the ATM, through the interface device or another source to update information in the trouble record and eventually to indicate that the condition which caused the signal to be generated from the ATM has been corrected. The message sent by the DSPP to the MMR includes the value which causes the MMR to open a "trouble ticket" in the data store when it receives the message. The determination as to whether a trouble ticket is opened is based on the fault actions table record resolved by the DSPP as shown in FIG. 49. The inclusion of the value in the table record is based on the user setting the trouble ticket indicator (TT IND) in the fault actions window which details the action to be taken in response to the occurrence of the fault. The trouble ticket indicator is the final column in FIG. 29. In response to receiving a message which includes an instruction to open a "trouble ticket" the MMR operates to establish an "open problems" record in the data store. The layout of the open problems table records is shown in FIG. 51. The MMR fills in as much of the data in the record as it has available when it receives the message. The MMR operates to add data to the table record as events occur until the record is "closed". The record can be closed by an input message which indicates the problem is fixed or an input that indicates that the "trouble ticket" is cancelled. Cancellation may be appropriate in circumstances where testing of the system is being conducted or where the fault condition is otherwise known to not require further action. When open problems are "closed" the records remain in the data store and can be used for analytical purposes. "Open Problems" records which are closed are reclassified periodically and stored as "problem history" records in the data store. The layout for the problem history table records in the data store is shown in FIG. 51. The closed records will be changed to problem history records generally on a daily basis. A user may eventually move closed "problem history" table records into the archive records of the data store. This is done periodically, but generally after a longer period than the period for reclassification of "open" records to "history" records. When this is done a "problem history" record is reclassified as an "archive problems" (ARC_PROBLEMS) record. The layout of the archive problems records is shown in FIG. 58. The layouts of the problems type table records are generally the same as no additional substantive data is added to the record once it is closed. Trouble ticket record information can be obtained by a user of the system by selecting appropriate designators on the main menu window 66 producer on a display by the event management system as shown in FIG. 8. For example, selecting the trouble ticket monitor provides a user with the trouble ticket monitor window 112 of the type shown in FIGS. 23 and 24. As shown in FIG. 23, the trouble ticket monitor window enables a user to sort through trouble ticket record information by selecting criteria concerning the status of the trouble ticket. The user is also shown the date associated with the trouble tickets by clicking on a particular date in a calendar window that is shown open in FIG. 23. In addition, the user may selectively review particular locations or terminal IDs as well as fault codes, as indicated by a fault code window in FIG. 24. By selecting trouble ticket history data from the main menu window 66 generated on a display by the event management system, a user is enabled to call a trouble ticket history window indicated 114 in FIG. 25. The trouble ticket history window is particularly suited for reviewing trouble tickets that have been closed or cancelled, and reclassified as history records. This capability enables the user to review the details concerning recent ATM condition messages and their resolution. As previously discussed, the MGR 34 is operative to generate records in the data store which provide a log of status messages as reflected by table record layout 94 in FIG. 51. These records include values representative of the condition messages received from a particular ATM host. This data is resolved and displayed by the system on a display to a user in the ATM host message log window 116 shown in FIG. 27. The ATM host message log window enables a user to view particular faults or conditions which have been reported by ATMs which are operated by a particular host system. This is particularly useful for administrators who wish to obtain status information on ATMs that are operated by particular host computers in the system. The status message log table records are reclassified periodically as archive status message log table records, the layout of which is shown in FIG. 58. The reclassification is done by the system on a periodic basis set by the user. The information in the archive status message log table records is used for analysis and reporting purposes in a manner later discussed. The MMR acts to carry out actions in response to the fault action value included in the message to the MMR from the DSPP. Generally, the actions that are resolved to be taken by the MMDR include a plurality or sequence of actions that are to be conducted in accordance with a schedule. The schedule generally includes giving a prompt notification to a servicer or other entity in a manner and format that the MMR resolves based on the records in the data store. The schedule also includes other actions which are to be taken at times after giving the initial notification, depending on conditions which exist or which have been notified to the MMR as existing at that time. If the MMR has been notified of a condition which eliminates the need for taking a later action in the schedule, the next scheduled action is not carried out. An example would be a situation where the MMR is configured to notify a particular servicer or other entity of a condition at an ATM. The notification may include sending a notification to a servicer through a pager. The schedule associated with the actions to be taken may include paging the servicer a second time 15 minutes after the first page if the servicer has not contacted the interface device of the MMR and input a message acknowledging the call. When the servicer has not acknowledged the call within 15 minutes of the first page, the MMR sends the second page. However, if the call was acknowledged before the time to send the second page, the instruction in the schedule to send the second page is not carried out by the MMR. The MMR is preferably configured so that every action message from the DSPP that requires corrective action at an ATM has stored in correlated relation therewith data representative of a schedule of immediate and future actions which are carried out automatically until the problem is corrected and closed, or the problem record is cancelled by the operator of the system. The operation of the MMR includes the resolution of values representative of a schedule of actions to take in response to the DSPP message, as well as the resolution of values representative of the messages to send to carry out those actions. This includes resolving the manner of contacting the entity who is to receive the message as well as the content of the message to be sent. The MMR further operates to resolve data representative of further action messages responsive to input messages from servicers and other input messages it has previously received related to the particular condition. How the MMR of the preferred embodiment accomplishes these functions can be appreciated from the database table records used by the MMR beginning with the record layouts shown in FIG. 52. The MMR STATE table records provide for each MMR_ACTION_SID value, and a "previous function result" value (PREV_FUNC_RESULT), a function id value (FUNC_SID), a parameter id value (PARM_SID) and a next action value (NEXT_ACTION_SID). A sequence value (MMR_ACTION_ROWSEQ) is also included in the MMR STATES table records. The sequence values correspond to the "check order" values shown in FIG. 29 which is a fault actions window generated on a display by the system. The sequence values are indicators of what is checked first among a plurality of similar conditions. In situations where the MMR first begins resolving the actions to take there is no "previous function result" value. Therefore the MMR_ACTION_SID and the null previous function result, are used to resolve a unique record in the data store. This record provides FUNC_SID and PARM_SID values. The FUNC_SID value points to a unique table record associated with the particular function to be carried out. The PARM_SID value specifies the table record that supplies parameters to be used in carrying out the function. The layout of the function table records is shown in FIG. 53. The "parameter" tables are tables designated by the "P_" prefix. The parameter tables include values representative of information concerning contacts for messages, reading voice menus, telephone dialing (DMTF), date/time, language and schedules. The parameter values may be used to resolve other values for carrying out functions such as voice file indicator values and phone, fax, and pager numbers for servicers. It should be noted that the present invention preferably stores voice file instructions in more than one language. As a result, a particular servicer may receive voice files in Spanish, another servicer in English and so on. The language may be selected by input messages to the user interface. Similarly, "variables" records are maintained in the data store. Variables values can be resolved based on a parameter value which is resolved and used to execute a function. An example is sending a message comprised of selected variables, such as a text message in a different language. This enables the system to be used with ATMs in several regions or countries where different languages are spoken. In the preferred embodiment of the invention the user interface includes a "Multi-Voice" interface produced by ITI Logiciel. Of course in other embodiments other interface devices comprised of hardware, software or both, may be used. Often in response to messages output through the message dispatching portion of the user interface, a user will be requested to respond with an input message. This often involves selecting an appropriate button on a touch tone phone. Alternatively, the response may include sending a response message electronically from the ATM or other device. This response or "return code" determines the next function to be executed. The data values necessary for the MMR to resolve the next function to be carried out is determined from the "return codes" and "function return codes" table records, the layouts of which are represented in FIG. 53. As represented in FIG. 56 the data store includes records which are representative of schedules of actions which are to be taken in response to a DSPP action message. The "schedule actions" records, the layout of which is shown, enable resolving schedule id values based on a parameter value and the action message value. The schedule id value (SCHEDULE_SID) enables resolving a value corresponding to "schedules" table record, the layout of which is also shown. These table records enable the MMR to resolve times for taking actions. The data store also includes records that handle the operation of the servicer interface device of the MMR. As previously discussed the MMR STATES records are used to resolve the function and parameter values, including functions which are executed to notify servicers. The "notify handler" table records, the layout of which are shown in FIG. 52, are used to store values representative of data records that contain data for carrying out alternative actions if certain precursor steps cannot be carried out. For example, if there is no notification made to a servicer, a "no notification method" value (NO_NOT_METHOD_SID) can be resolved by the MMR, which enables the MMR to resolve a "no notification handler" table record that provides the values that will be used to carry out a next action. Likewise, the "notify handler" table records include values which are used to resolve table records where no acknowledgement is received, as well as where a designated servicer is not reachable. Table record layouts for the records associated with handling these conditions are shown in FIG. 52. It should be noted that these record layouts include values corresponding to schedule table records, which enables the MMR to carry out the alternative actions in accordance with the stored time parameters. In the preferred form of the system the computer which operates the system is further operative to include in the data store records related to calls that have been made to servicers concerning particular conditions which exist at an ATM. The meaning of "calls" includes all methods of notifying servicers. FIGS. 26 and 36 show a call details window 118 generated on a display by the system, which shows the current status of the information associated with the call. For example, in FIG. 26 it can be noted that a particular service has been notified through the previously discussed interactive voice/response module (IVR) which serves as part of the servicer interface device of the system. Further, in FIG. 26 there is an indication that the call through the IVR has been acknowledged. FIG. 36 shows another example of a call details window in which a call has been made to a vendor. In this case the notification to the vendor was given through a DECAL.RTM. system operated by Diebold, Incorporated and was sent by way of an electronic message. This call details window further shows that the call has been acknowledged along with additional information that has been provided by the vendor system. Database records concerning calls are maintained in the data store. The layout of the "calls record" tables is shown in FIG. 55. As with other historical data, records concerning closed calls are periodically reclassified as "call history" records, the layout of which is also shown in FIG. 55. Further "call history" records are later periodically reclassified as "archive call" records, the layout of which is also shown in FIG. 59. The notification through a vendor system is also accommodated by the preferred form system of the present invention by enabling the user to establish in the data store particular information records required for communication with a vendor system. FIG. 35 shows a DECAL.RTM. set-up window 120 which is used in the preferred embodiment to set up communication to a system operated by Diebold, Incorporated, which tracks and provides information concerning ATM fault conditions. Of course, in other embodiments of the invention other types of systems may be similarly interfaced for purposes of communicating and receiving information concerning fault conditions at particular ATMs. The MMR is also operative based on the configuration of the system to send and receive messages from a scheduler 38. The scheduler is a software process which receives messages from the MMR to schedule a future action. The scheduler then returns an appropriate message to the MMR at the scheduled time. If when the response message is sent by the scheduler to the MMR the conditions then notified to the MMR indicate the scheduled action is not needed, the steps associated with the action are not executed by the MMR. The MMR resolves the schedule for future actions to be taken based on the database table records as previously discussed. The MMR is then operative to send the scheduler a message to schedule a return message based on the data resolved. This message has a different format, and is a different SME message type with a different union of structures than those messages previously discussed. The structures in the message to the scheduler contain the data that the scheduler needs to resolve the time and address to send back the responsive message to the requester node of the MMR, as well as to resolve the content of the return message. The message to the scheduler is sent by the MMR using the send message routine previously discussed. Likewise the send message routine is used by the scheduler to send its message to the MMR. Records are established in the data store concerning scheduled events. A layout for these records is shown in FIG. 56. The described form of the scheduler component conducts a limited amount of activity, and functions primarily to hold and return the original message from the MMR. However, in other embodiments the scheduler may be configured to perform additional functions including activities necessary to resolve the need for the responsive message and the building of more complex message structures. The preferred form of the invention provides the user with displays of activities which are scheduled to be performed in response to messages from the scheduler. An example of a scheduler window 122 is shown in FIG. 34. The scheduler window indicates particular actions that will be taken and the time when the actions are scheduled to be taken in response to the particular condition which has occurred at an ATM. These conditions are identified by the trouble ticket number assigned by the MMR to the ATM message. Further, as shown in FIG. 34 the scheduler window 122 provides confirmation that the action has been sent to the requester node. Of course, if the action scheduled is no longer needed the MMR will take no action in response to the message from the scheduler. A user may also selectively cancel certain actions using an input device. A further novel aspect of the preferred embodiment of the present invention is the ability to test the operation of the system. This is accomplished through the creation of records representative of phantom ATMs in the data store. These phantom ATMs may have particular fault actions established for fault conditions. As with actual ATMs, the user is enabled by watching the displays generated by the system associated with the scheduling function or by actually allowing the system to perform, to test that the system is operating as expected. In addition, the preferred embodiment of the present invention enables a user to generate fault messages for actual ATMs within the system. The user is thereby enabled to watch how the system reacts to the particular fault messages. To prevent unnecessary responses to test inquiries a user may cancel particular actions before they occur through the scheduler or by temporarily changing the actions sequence which occurs responsive to the fault using an input device connected to the system. The user is enabled to generate faults from phantom ATMs or actual ATMs using a device fault simulation tool. The user operates the device fault simulation tool through a test window designated 123 in FIG. 33. The user is enabled to input values using an input device in the test window indicative of a phantom ATM. The user can further establish fault actions for this particular phantom ATM and observe that the fault actions are carried out properly. Alternatively, a user may enter information for an actual ATM within the system and enter a particular type of fault status message. By selecting the generation of this status message the user may then watch the operation of the system to verify that the action to be taken by the system in response to this message actually occurs. This feature provides a user with greater assurance th | ||||||
