WO2018020883A1 - 自動取引装置、自動取引システム及び非一時的記録媒体 - Google Patents

自動取引装置、自動取引システム及び非一時的記録媒体 Download PDF

Info

Publication number
WO2018020883A1
WO2018020883A1 PCT/JP2017/021926 JP2017021926W WO2018020883A1 WO 2018020883 A1 WO2018020883 A1 WO 2018020883A1 JP 2017021926 W JP2017021926 W JP 2017021926W WO 2018020883 A1 WO2018020883 A1 WO 2018020883A1
Authority
WO
WIPO (PCT)
Prior art keywords
command
information
transaction
processing
unit
Prior art date
Application number
PCT/JP2017/021926
Other languages
English (en)
French (fr)
Inventor
孝志 原
Original Assignee
日立オムロンターミナルソリューションズ株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 日立オムロンターミナルソリューションズ株式会社 filed Critical 日立オムロンターミナルソリューションズ株式会社
Priority to JP2018529431A priority Critical patent/JP6663497B2/ja
Priority to CN201780005115.1A priority patent/CN108475453B/zh
Publication of WO2018020883A1 publication Critical patent/WO2018020883A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07DHANDLING OF COINS OR VALUABLE PAPERS, e.g. TESTING, SORTING BY DENOMINATIONS, COUNTING, DISPENSING, CHANGING OR DEPOSITING
    • G07D9/00Counting coins; Handling of coins not provided for in the other groups of this subclass
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07DHANDLING OF COINS OR VALUABLE PAPERS, e.g. TESTING, SORTING BY DENOMINATIONS, COUNTING, DISPENSING, CHANGING OR DEPOSITING
    • G07D13/00Handling of coins or of valuable papers, characterised by a combination of mechanisms not covered by a single one of groups G07D1/00 - G07D11/00
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F19/00Complete banking systems; Coded card-freed arrangements adapted for dispensing or receiving monies or the like and posting such transactions to existing accounts, e.g. automatic teller machines

Definitions

  • the present invention relates to an automatic transaction apparatus, an automatic transaction system, and a non-temporary recording medium.
  • Automatic cash transaction equipment such as ATM (Automated Teller ⁇ ⁇ ⁇ Machine) is widely installed not only in bank stores, but also in department stores, convenience stores or station premises.
  • the automatic transaction apparatus is an apparatus that handles many types of transaction media such as cash and forms.
  • a specific module that controls various processing units that constitute the automatic transaction apparatus such as a banknote part is provided. In many cases, the efficiency of design is improved by purchasing from specialized manufacturers.
  • the automatic transaction apparatus is equipped with a banknote part for depositing / withdrawing banknotes with a customer.
  • various technologies have been introduced to realize functions and performance related to operation such as the characteristics of the area where the banknote operates and the type, state, and operation of banknotes.
  • a high technique is required for the design of an automatic transaction apparatus.
  • the above-mentioned module built in the automatic transaction apparatus is generally connected to the control unit through a communication line or an IO (Input Output) interface such as USB (Universal Serial Bus).
  • the control unit transmits a command message for instructing an operation to the module, the module performs an operation according to the instruction, and returns the operation result to the control unit by a response message (Patent Document 1).
  • Modules such as those described above have complex and numerous functions, and in order to extract their functions and performance, it is necessary to have a technology that appropriately determines the order of command messages, information determination based on response messages, and the next operation. . Therefore, in order to draw out the function of the module to the maximum, the specification of the command message and the response message must be designed in detail, and there is a problem that the design load becomes high. In the said patent document 1, the said subject is not considered but the technique for solving these subjects was calculated
  • An automatic transaction apparatus includes a processing unit that executes a transaction using a medium, and generates a first command that acquires information used for the transaction from the processing unit based on a transaction instruction. And a second command providing unit that specifies a process to be executed by the processing unit based on the first command and generates a second command that is converted into a command different from the first command. It is comprised as what has a control part.
  • FIG. 4 is a diagram illustrating a flow of a command message and a response message in each unit and module in the control unit in the software configuration illustrated in FIG. 3.
  • FIG. 5 is a configuration diagram of software in an ATM in which a function library is arranged in the software configuration shown in FIG. 4.
  • FIG. 6 is a configuration diagram of software when the module shown in FIG. 5 includes submodules. It is a figure which shows the example of a banknote part connection process flow. It is a figure which shows the example of structure information. It is a figure which shows the example of license permission information.
  • telegram which included the determination result of the slot feeding condition in the reserve. It is a figure which shows the example of the processing content table at the time of returning including additional information in a response message. It is a figure which shows the example of the basic processing flow of the function library main body function at the time of including additional information. It is a figure which shows the example of the license permission information defined including the license level.
  • FIG. It is a figure which shows the example of the processing content table at the time of using the license permission information shown in FIG. It is a figure which shows the example of the basic processing flow of the function library main body function at the time of using the license permission information shown in FIG. It is a figure which shows the example of the format of the command message between the function library and the banknote part which is a module. It is a figure which shows the example of the basic processing flow of the function library main body function at the time of modifying or expanding a standard error code. It is a figure which shows the example of an error code conversion table. It is a figure which shows the example of a reference destination management table. It is a figure which shows the example of a 1st topless management table.
  • a banknote part that is a banknote processing apparatus is described as an example.
  • the present invention can be similarly applied to various modules that control various devices generally provided in automatic transaction devices such as processing devices.
  • an automatic transaction apparatus is described as an example of a transaction medium handling apparatus according to the present invention, but it is used in a bank sorting apparatus such as a sorter, an apparatus handled by a teller such as a teller machine, and a central bank. It can also be applied to devices.
  • the present invention is not limited to these embodiments.
  • a module provider proposes a means for realizing an appropriate usage technique by designing a software library that realizes functions on the control unit side and providing the module together with the module.
  • the module supplier can minimize the disclosure of the module usage technology to the module supplier and use the storage of the control unit to realize many functions for operation and maintenance at no additional cost. It becomes. As a result, the value of the module can be increased.
  • the module provider it is not necessary for the module provider to understand all of the complex module usage techniques, and the minimum understanding necessary for automatic transaction equipment is sufficient, and an optimal system design for controlling the module can be achieved. Therefore, the performance can be exhibited while maximally effectively using the resources of the control unit. Furthermore, by receiving functions that tend to be low in design priority, such as maintenance, from the module provider, the design man-hours can be reduced, and the automatic transaction apparatus can be designed in a short period of time and with high quality. In addition, by having various conversion information in the control unit, it is possible to suppress the burden of design change of the control unit even when the function is realized by a plurality of types of modules or a plurality of banks.
  • FIG. 1 is an external perspective view of an automatic transaction apparatus (hereinafter referred to as ATM) 10.
  • the ATM 10 is an apparatus that is installed in a financial institution or the like, performs transactions such as depositing and withdrawing cash by a customer's operation, and automatically executes various transactions requested by the customer.
  • the ATM 10 includes a banknote part 11, a card / detail slip part 12, a bankbook part 13, a coin part 14, an operation part 15, and an attendant operation part 16. It consists of
  • the banknote part 11 discriminates the denomination and authenticity of the banknote, counts and stores the banknotes inserted by the user, or is stored in the banknote storage according to the deposit amount input from the operation unit 15.
  • the banknote is processed, such as being fed out and discharged to the deposit / withdrawal port.
  • the card / detail slip section 12 accepts a cash card for a user to conduct a transaction with the ATM 10, obtains and discharges information stored in the card, and discharges a statement slip printed with a transaction record to the user. Etc., processes related to cards and statement slips.
  • the passbook unit 13 performs processing related to the passbook, such as accepting a passbook for a user to conduct transactions with the ATM 10, obtaining information recorded in the passbook, discharging, and printing the transaction record.
  • the coin unit 14 discriminates the denomination and authenticity of the coin, counts and stores the coins inserted by the user, or is stored in the coin storage according to the amount of money input from the operation unit 15.
  • the coin-related processing such as feeding out the coins to be discharged into the deposit / withdrawal port is performed.
  • the bill part 11, the card / detail slip part 12, the bankbook part 13, and the coin part 14 are transactions that are processes for obtaining information (for example, transaction amount, account information) used for the transaction from the target medium.
  • the transaction process may include an operation process such as a medium conveyance process for conveying the target medium in order to acquire information used for the transaction.
  • the operation unit 15 receives input and designation of various information related to transactions such as transaction type and deposit / withdrawal amount from the user.
  • the clerk operation unit 16 displays information on faults and recovery operation information that occur during operation, and displays various operation screen information during maintenance operations.
  • FIG. 2 is a block diagram showing a functional configuration of the ATM 10.
  • a bill unit 11 a card / detail slip unit 12, a passbook unit 13, a coin unit 14, and an operation unit 15 are connected to the control unit 20.
  • the control unit 20 is connected to a communication control unit 17 for connecting to an external device such as a host computer.
  • an external device such as a host computer.
  • the banknote unit 11 includes a deposit / withdrawal unit 112, an identification unit 113, a temporary storage unit 114, a transport unit 115, and a cassette 116, which are connected to the banknote control unit 111. As shown in FIG. 2, the banknote part 11 receives the instruction
  • a deposit / withdrawal unit 112 that inserts and withdraws banknotes
  • an identification unit 113 that performs denomination identification of banknotes, and temporarily holds banknotes inserted by a transaction operator Part 114
  • a transport part 115 for connecting the respective parts and transporting banknotes
  • a plurality of detachable cassettes 116 for storing banknotes.
  • the deposit or withdrawal part 112 may be completely different in deposit and withdrawal, or the number of deposit / withdrawal parts 112 may be different.
  • the structure of the part 11 is not restricted to FIG.
  • FIG. 3 is a general software configuration diagram in the ATM 10.
  • the control unit 20 includes an operating system (OS) 201 that is basic software for managing the functions of the ATM 10 and the above-described units, and various information necessary for the operation of the ATM 10 and the above-described units.
  • OS operating system
  • AP business application
  • SP service provider
  • modules for handling various media corresponding to the above units modules executed in each of the banknote unit 11, the card / detail slip unit 12, the passbook unit 13, and the coin unit 14).
  • a communication control unit for a module that performs communication control with each other (banknote communication control unit 2051, card / detail slip unit 2052, passbook communication control unit 2053, coin communication control unit 2054), generation of a message to communicate with each module,
  • a service provider 204 that performs editing and analysis, and a business application 203 that realizes a transaction operation by combining the operations of the modules operate.
  • the storage 202 stores information and programs necessary for each operation, operation result records, and the like.
  • the service provider 204 and the business application 203 are not clearly separated and may be integrated.
  • the control unit 20 includes, for example, a CPU (Central Processing Unit) and a memory as hardware, and stores in the storage 202 a program for realizing the functions of the above-described units constituting the ATM 10.
  • the control unit 20 realizes the above functions by, for example, reading a program from the storage 202 to a memory (not shown) and executing it at a timing when the power of the ATM 10 is turned on.
  • the above program is provided in an installable or executable format, recorded on a computer-readable recording medium such as a USB (Universal Serial Bus) memory, or connected to a network such as the Internet. It may be configured to be provided or distributed to the storage 202 by being stored on another computer and downloaded via a network.
  • a computer-readable recording medium such as a USB (Universal Serial Bus) memory
  • FIG. 4 is a diagram showing the flow of command messages and response messages in each unit and module in the control unit in the software configuration shown in FIG. In FIG. 4, it has shown about the case of the module which the banknote part 11 performs. In the following, illustration of the communication control unit of the module shown in FIG. 3 is omitted, but each communication control unit performs communication control on the module.
  • the service provider 204 when the control unit 20 receives an instruction regarding a transaction from the business application 203, the service provider 204 generates, edits, and outputs a command message C ⁇ b> 1 for the banknote unit 11 for each instruction.
  • the command message C1 for example, there is a command including an instruction to execute a transaction such as a deposit process. That is, the service provider 204 generates a command that can be executed by the banknote unit 11.
  • the command that can be executed by the banknote unit 11 means a command that the banknote unit 11 can understand, and may be a command that the banknote unit processes or operates according to information of the command.
  • the command that allows the banknote part 11 to operate without changing the information included in the command (the banknote part 11 can be operated directly) is included in the executable command.
  • the information contained in the command utilized by the control part 20 and the banknote part 11 is the same. Is included in an executable command.
  • information (especially command code) included in the command is converted by the service provider 204 or the function library 206, it may not be included in the executable command.
  • the banknote unit 11 Upon receipt of the command message C1 from the service provider 204, the banknote unit 11 executes processing according to the command and returns the result to the service provider 204 as a response message R1.
  • the response message R1 for example, a transaction indicating the number of banknotes stored in each denomination cassette in a transaction such as a deposit transaction, the number of banknotes determined to be fake, and whether or not the transaction processing has been normally completed. There is a response including the processing result of.
  • the service provider 204 transmits a response corresponding to the command C1 to the business application 203 in response to the response message R1.
  • the business application 203 notifies the result of the command C1 to the outside based on the response.
  • the business application 203 is provided with specifications determined by the bank, and the service provider 204 needs to be designed at the module providing destination so as to match the specifications of the business application 203. was there.
  • the module providing destination is required to draw out the function of the module provided from the module providing source to the maximum.
  • the module provider designed the service provider 204 without necessarily properly understanding the specifications of the module provided by the module provider and the structure of complex command messages and response messages. Therefore, it may not be said that the function of the module is exhibited as intended by the module provider.
  • FIG. 5 is a block diagram of software in the ATM 10 in which a function library (FL) 206, which is a software library designed by a module provider, is arranged in the software configuration shown in FIG.
  • FL function library
  • the ATM 10 can easily perform an extension process in addition to a transaction process (also referred to as a basic process) that has been performed conventionally.
  • the transaction process is a process for acquiring information used in the transaction, for example, a deposit transaction or a withdrawal transaction, and is withdrawn from an amount specified in an externally designated account or an account designated from the outside.
  • curd is also contained.
  • the extension process is a process different from the transaction process, and a process performed by the function library or executed by the banknote unit 11 based on information acquired by the process of acquiring information not used in the transaction, the transaction process or the extension process.
  • the function library 206 analyzes the acquisition process for acquiring the state information from the banknote part 11, the operation process for operating the banknote part 11 or setting the banknote part 11, and the information acquired by the acquisition process. Including analysis processing.
  • the acquisition process may include status information from the banknote unit 11 (for example, the number of banknotes stored for each storage or each type of denomination, banknote setting information, banknote failure information, log information (banknotes).
  • the operation processing is, for example, an operation different from the transaction processing in the banknote part 11 based on the state information acquired by the acquisition process or by an instruction from the outside (for example, counting or scrutiny of banknotes stored in the banknote part 11) ) Or changing the setting of the banknote part 11.
  • the analysis process is a process of detecting a sign of occurrence of a component failure based on the operation log of each component of the banknote unit 11.
  • the function library 206 transmits a command message that can be executed by each unit such as the banknote unit 11 based on a command received from the outside via the service provider 204, and receives a response message received from each unit such as the banknote unit 11 as a service provider. 204 or a message providing module that is transmitted as a response message that can be processed by the business application 203.
  • the service provider 204 is software that implements a common processing that is commonly executed based on instructions from a plurality of business applications 203 or a common processing unit that manages commonly used data, that is, middleware. It's okay. As described in FIGS. 3 and 4, the business application 203 issues a transaction instruction to the service provider 204, but may be integrated with the service provider 204. Therefore, below, the process between the service provider 204, the function library 206, and the banknote part 11 is demonstrated.
  • the service provider 204 issues an operation instruction for the banknote unit 11 to the function library 206, and the function library 206 receives the operation instruction, converts it into an appropriate operation instruction for the banknote unit 11, and instructs the banknote unit 11.
  • the communication control unit is not shown in the figure, but the communication control unit performs communication control on the module.
  • the bill unit 11 operates according to the instruction and returns the result to the function library 206.
  • the function library 206 performs optimal operations according to the operation technique according to the operation result, such as collecting operation records, instructing the banknote part to perform additional operations as necessary, or storing part of the operation information in the storage 202, etc. ,
  • the operation result corresponding to the instruction from the service provider 204 is returned to the service provider 204.
  • the function library 206 may transmit the operation instruction from the service provider 204 to the banknote unit 11 as it is.
  • the function library 206 may refer to information included in the operation instruction, change the information, and transmit the information to the banknote unit 11.
  • the service provider 204 causes the banknote unit 11 to perform the transaction process (for example, a command code). Is generated.
  • the function library 206 performs the expansion process or causes the banknote unit 11 to perform the expansion process (for example, a command code). ) May be generated.
  • an instruction from the outside may or may not go through the service provider 204.
  • the service provider 204 may not be able to generate a command that causes the banknote part to perform the expansion process.
  • the command code is information unique to each process indicating a process to be executed by the banknote part.
  • the command coat which can implement a banknote part means the command code which the banknote part 11 can understand, and may be a command which a banknote part processes or operate
  • the command code utilized by the control part 20 and the banknote part 11 is the same. Are included in executable commands.
  • the command code is converted by the service provider 204 or the function library 206, it may not be included in the executable command code.
  • the function library 206 transmits the command generated by the service provider 204 to the banknote unit 11 as it is (without changing the command code) for the banknote unit 11 to perform transaction processing. May be. By transmitting to the banknote part 11 as it is, it becomes possible to suppress the design change of the service provider 204 of the existing control part 20 which is implementing transaction processing.
  • the function library 206 causes the banknote unit 11 to perform transaction processing and expansion processing when the control unit 20 performs transaction processing will be described with reference to FIG.
  • the service provider 204 may generate a command code for transaction processing as described above.
  • the service provider 204 when the control unit 20 receives an instruction regarding a transaction from the business application 203, the service provider 204 generates and edits a command message Ca1 for the function library 206 according to the instruction. Output.
  • An example of the command message Ca1 is a command including an instruction to execute a deposit process.
  • the command message Ca1 shown in FIG. 5 and the command message C1 shown in FIG. 4 can use the same message.
  • the function library 206 When the function library 206 receives the command message Ca1 from the service provider 204, the function library 206 generates, edits and outputs the command message Cb1 for the banknote part 11 in accordance with the command.
  • the command message Cb1 for example, in addition to the command for executing the deposit process included in the above instruction, there are commands including the designation of the denomination of the cassette, the handling method of the fake bill, and the designation of the bill acceptance rate.
  • the command message Cb1 includes a command for acquiring state information indicating the state of the banknote part 11 at the current time.
  • a command for acquiring the status information for example, there is a command for collecting log information.
  • the bill unit 11 Upon receipt of the command message Cb1, the bill unit 11 executes processing according to these commands, and returns the result to the function library 206 as a response message Rb1.
  • the response message Rb1 for example, the number of banknotes stored in a cassette of a designated denomination, the number of banknotes determined to be fake, the acceptance rate of banknotes when processed, and whether or not the processing has been completed normally
  • the processing result indicating for example, the number of banknotes stored in a cassette of a designated denomination, the number of banknotes determined to be fake, the acceptance rate of banknotes when processed, and whether or not the processing has been completed normally
  • the function library 206 generates, edits and outputs a command message Cb2 for executing the next processing according to the response message Rb1. For example, as the response message Rb1, the function library 206 stops the deposit transaction when the number of stored cassettes of the banknote of the specified denomination is greater than or equal to a predetermined threshold or no more banknotes can be accepted. In the case of including an inquiry such as, an instruction to collect in another cassette is output as a command message Cb2, and a response message Rb2 for the command message Cb2 is received.
  • the function library 206 exchanges a command message and a response message with the banknote unit 11 until the transaction instructed by the business application 203 is completed.
  • the function library 206 transmits the response RaN indicating the end of the process related to the transaction instructed from the business application to the service provider 204. To do.
  • the service provider 204 Based on the response, the service provider 204 notifies the outside of the transaction result by the business application 203.
  • the command message generated by the service provider 204 may be either contents that cannot be executed by each part such as the banknote part 11 or contents that can be executed. If it is impossible to execute, the function library 206 generates or changes a command message that can be executed by each part such as the bill part 11 based on the command message that is not executable by each part such as the bill part 11 transmitted by the service provider 204. The response message received from each unit such as the bill unit 11 may be converted into a response message that can be processed by the service provider 204 and transmitted to the service provider 204 (details will be described later). On the other hand, in the case of an executable command, the function library 206 may transmit it directly to the banknote unit 11 or the like, and return the response received from the banknote unit 11 to the service provider 204 as it is.
  • the service provider 204 transmits the first command (for example, command message Ca1) to the function library 206.
  • the function library 206 inquires the service provider 204 (transmits / receives a response message and a command message). Instead, based on the first command, transmission of a plurality of second commands (for example, command message Cb1, command message Cb2) to the module and a second response (for example, corresponding to each of the plurality of second commands) If, response telegram Rb1, to receive a response telegram Rb2).
  • the service provider 204 can suppress the number of first commands and first responses with the function library.
  • the function library based on the content of one second response (for example, response message Rb1) corresponding to one second command, the next second to be transmitted to the module next to the second command.
  • the type of command (command message Cb2)) may be determined.
  • the function library can select and transmit a command suitable for the module state to the module, and the system resource efficiency of the ATM 10 by suppressing the number of command transmission and response reception to the module. Can be used.
  • the service provider 204 transmits a transaction command that is the first command described above that causes the banknote unit 11 to carry out a transaction process such as a deposit transaction or a withdrawal transaction that is performed by conveying the banknote.
  • the function library 206 may generate an information acquisition command for collecting log information including state information that is not used in the transaction based on the transaction command, and transmit the information acquisition command to the banknote unit 11 to execute the expansion process.
  • status information is the operation information of the banknote part 11 which arises when the banknote part 11 conveyed the banknote, the storage information for every kind of banknote which the banknote part 11 hold
  • the function library 206 transmits information acquired from the banknote unit 11 based on the transaction command to the service provider 204, and does not transmit log information acquired by the banknote unit 11 based on the information acquisition command to the service provider 204.
  • the function library 206 may store log information in the storage 202.
  • the function library 206 may generate or change a command that can be executed by each unit such as the banknote unit 11 based on a command that cannot be executed by each unit such as the banknote unit 11 generated by the service provider 204.
  • the function library 206 generates one second command that can be executed by the banknote unit 11 based on the first command from the outside without using the service provider 204. Then, based on one second response to one second command transmitted to the banknote part 11 and received from the banknote part 11, another second command that can be executed by the banknote part 11 is generated, and the banknote part 11 may be transmitted.
  • FIG. 6 is a block diagram of software when the module shown in FIG. 5 includes submodules.
  • the banknote part 11 which is the module shown in FIG. 5 has the identification part 113 which is a 1-level submodule inside.
  • the control unit 20 is provided with an identification unit communication control unit corresponding to the identification unit 113 (not shown). That is, the control unit 20 is connected to the banknote unit 11 and is also connected to the identification unit 113 without using the banknote unit 11.
  • the service provider 204 when receiving an instruction regarding the transaction from the business application 203, the service provider 204 generates, edits and outputs a command message Ca1 for the function library 206 in accordance with the instruction.
  • An example of the command message Ca1 is a command including an instruction to execute a deposit process.
  • the command message Ca1 shown in FIG. 5 and the command message C1 shown in FIG. 4 can use the same message.
  • the function library 206 When the function library 206 receives the command message Ca1 from the service provider 204, the function library 206 analyzes the command, and generates and edits the command message CbM1 for the banknote unit 11 as a module and the command message CbS1 for the identification unit 113 as a submodule. Output.
  • the command message CbM1 there is the same command as in FIG.
  • the command message CbS1 for example, there is a command including setting of a threshold value for determining the authenticity of banknotes.
  • a command for acquiring state information indicating the state of the banknote portion 11 at the current time may be included as in the command message CbM1.
  • the identification unit 113 Upon receiving the command message CbS1, the identification unit 113 executes processing according to these commands, and returns the result to the function library 206 as a response message RbS1.
  • the response message RbS1 for example, there is a response including a threshold for determining the authenticity of a bill.
  • the function library 206 generates, edits and outputs a command message CbS2 for executing the next processing corresponding to the response message RbS1, as in the case of receiving the response message RbM1, and is instructed by the business application 203.
  • the command message and response message are exchanged until the transaction is completed.
  • the identification unit 113 identifies the banknote in the transaction process based on the command transmitted from the control unit 20 to the banknote unit 11, and uses the command transmitted from the control unit 20 to the identification unit 113 without passing through the banknote unit 11. Based on this, processing (for example, expansion processing) different from transaction processing is performed.
  • the function library 206 communicates with the identification unit 113 via an identification unit communication control unit (not shown), a command is issued from the service provider 204 by processing in parallel with the communication with the banknote unit 11. It is possible to shorten the processing time from when the response is made until the response is returned.
  • the function library 206 may generate a command message to the banknote unit 11 and a command message to the identification unit 113 based on one command message from the service provider 204.
  • the number of command message instructions from the service provider 204 can be suppressed, and the module provider does not need to design the service provider 204 as in the prior art, and the module provider has a technical outflow. No worries.
  • the present invention can be similarly applied to the case where the module has a plurality of sub-modules of multiple hierarchies. . In this case, the processing time can be further shortened. Subsequently, processing performed in the present embodiment will be described.
  • FIG. 7 shows an example of a bill part connection processing flow having a spoofing prevention function for the purpose of verifying whether the license management of the function library 206 and the correct module are connected. This process is executed, for example, when the ATM 10 is turned on.
  • the function library 206 In the banknote part connection process (701), the function library 206 generates a command message for performing line connection with the banknote part 11 and outputs the command message to the banknote part communication control unit 2051.
  • the banknote part communication control part 2051 produces
  • the function library 206 determines whether or not a response message indicating that the line connection with the banknote part 11 has been received from the banknote part communication control unit 2051 (703), and determines that a response message indicating that the connection has been received has not been received.
  • the service provider 204 is notified of the reason (for example, a message or code indicating an error such as a communication timeout or power off of the bill unit 11) indicating that the connection is not included in the response message from the bill unit 11. (710), and the process ends abnormally (713).
  • the reason for example, a message or code indicating an error such as a communication timeout or power off of the bill unit 11.
  • the function library 206 indicates the type (model) of the banknote part included in the response message and the banknote part hardware.
  • the configuration information including information for identifying the bill part such as a unique serial number for each piece of wear is read (704). An example of the read configuration information is shown in FIG.
  • the configuration information includes a hardware configuration of the banknote unit 11 that is a module (for example, information such as cassette quantity, country / region information, and deposit / withdrawal port arrangement), serial number, In addition to the number of firmware versions, the serial number of the identification unit, which is a submodule, and the number of firmware versions are included.
  • a module for example, information such as cassette quantity, country / region information, and deposit / withdrawal port arrangement
  • serial number In addition to the number of firmware versions, the serial number of the identification unit, which is a submodule, and the number of firmware versions are included.
  • the function library 206 refers to the license permission information of the ATM 10 stored in the storage 202 in advance and the configuration information read in step 704, and determines whether or not the read configuration information is registered in the license permission information. Determine (705).
  • the license permission information is stored in the storage 202, but may be stored in the function library 206.
  • the license permission information is information for identifying the banknote part 11 permitted to be used.
  • Fig. 9 shows an example of license permission information.
  • license-permitted serial numbers for permitting operations are held in a table format.
  • FIG. 9 it can be seen that for a banknote part of a certain type (model XXXXX-XX), the hardware configuration and a plurality of serial numbers permitted for license are registered.
  • Fig. 9 in addition to storing all of the above serial numbers, by permitting by specifying a serial number within a specific range, such as from one number to another, or by specifying a specific numerical value of a certain digit You may determine whether the banknote part is the permitted banknote part by the method of permitting.
  • step 705 the function library 206 determines that the read configuration information is not registered in the license permission information (705; No), and if it is determined that the function library 206 cannot be used, notifies the service provider 204 accordingly (711). The process is terminated abnormally (713). In this case, the service provider 204 may notify unusable information to the outside (the host device to which the ATM 10 is connected or the display unit of the ATM 10 (for example, the operation unit 15 or the clerk operation unit 16)).
  • step 705 the function library 206 determines that the read configuration information is registered in the license permission information (705; Yes), and if it determines that it can be used, generates a command message for the banknote unit 11, It outputs to the banknote part communication control part 2051.
  • the banknote part communication control part 2051 produces
  • the function library 206 determines whether or not a response message indicating that the banknote part 11 has been successfully initialized has been received from the banknote part 11 via the banknote part communication control unit 2051 (707).
  • a response message indicating that the banknote part 11 has been successfully initialized has been received from the banknote part 11 via the banknote part communication control unit 2051 (707).
  • the function library 206 determines that the response message indicating that the banknote unit 11 has been successfully initialized has been received (707; Yes), the function library 206 notifies the service provider 204 that initialization has been successful (708). ), The connection process is normally terminated (709). On the other hand, when the function library 206 determines that the response message indicating that the bill unit 11 has been successfully initialized has not been received (707; No), the function library 206 notifies the service provider 204 that initialization has failed. (712), the process ends abnormally (713).
  • Fig. 10 shows an example of the basic processing flow of the function library main body function.
  • the function library 206 executes S701, S1002, and S1013 when the power of the ATM 10 is turned on, and executes S1003 to S1012, and S1014 in response to reception of a command from the service provider 204. Good.
  • the banknote part connection process shown in FIG. 7 is executed (701), and when the function library 206 cannot connect to the banknote part 11, it notifies the service provider 204 that the connection is impossible and re- It waits for a connection instruction (1002; No, 1013).
  • the function library 206 receives a command from the service provider 204 (1003).
  • the process proceeds to the next step, and the function library 206 searches the processing content table for registration processing content corresponding to the command.
  • FIG. 11 is a diagram illustrating an example of a processing content table.
  • the processing content table is a table that defines a processing sequence for determining a processing order for the bill unit 11 that is a module for a command received from the service provider 204.
  • the processing sequence for the module is determined, but when the module has submodules as shown in FIG. 6, it can be determined in the same manner as the module.
  • the processing content table includes a number for identifying a command received from the service provider 204, a command identified by the number, and whether the execution of the command is permitted. Is stored in association with a permission category indicating whether the command is received and a processing sequence executed when the command is received.
  • the function library 206 may add an ID or the like for each type of command issued to the module and count the number of times the command is issued. In addition, command issue time and end information indicating whether the processing executed by the module has ended normally may be managed. Thereby, the function library 206 can grasp in detail the operation status of the module by the command (the number of normal operation ends, the number of abnormal operation ends, etc.). Also, the module provider can grasp the usage status of the function library 206 at the module provider based on the operation status of the module.
  • the function library 206 searches for a command received from the service provider 204 using such a processing content table, and first determines whether or not registration is permitted and whether or not use is permitted (1005).
  • the function library 206 determines that the command received from the service provider 204 is registered in the processing content table and is permitted to be used (1005; Yes), the function library 206 proceeds to the next processing. On the other hand, when the function library 206 determines that the command received from the service provider 204 is registered in the processing content table and is not permitted to be used (1005; No), the function library 206 received a command that is not permitted to be executed. As a result, a message indicating that the processing cannot be executed is returned to the service provider 204 (1014).
  • the function library 206 executes instruction determination processing (1006 to 1010) for determining what operation is to be instructed to the module.
  • the function library 206 initializes the sequence number to be processed (1006). This sequence number is stored in a memory (not shown) in the control unit 20.
  • the function library 206 refers to the processing content table shown in FIG. 11, and stores the processing sequence corresponding to the initialized sequence number in the processing sequence corresponding to the command received in Step 1003. A command message is generated, and the generated command message is transmitted to the bill unit 11 via the bill unit communication control unit 2051 (1007).
  • the function library 206 receives a response message including the operation result (1008).
  • the function library 206 analyzes the response message received from the module and confirms the module operation result.
  • the function library 206 refers to the current sequence number in the processing content table shown in FIG. 11 and the operation result of the module to determine the sequence number of the next process to be performed (1009).
  • the function library 206 determines whether or not the determined sequence number is the last sequence number in the processing sequence (1010), and determines that the determined sequence number is not the last sequence number in the processing sequence. If so (1010; No), the process returns to step 1007 and the subsequent processing is repeated.
  • the function library 206 determines that the determined sequence number is the last sequence number in the processing sequence (1010; Yes)
  • the function library 206 generates a response message to the service provider 204 (1011).
  • a response message is returned to 204 (1012).
  • step 1003 when the function library 206 receives a command message including an instruction to execute the deposit process from the service provider 204, in step 1004 and 1005, the deposit command and its permission category are permitted in the process content table shown in FIG. Make sure that there is. Subsequently, in step 1006, the function library 206 initializes the sequence number to “1”.
  • the function library 206 reads a deposit command that is a command message to be executed in an order corresponding to the initialized sequence number in the processing sequence corresponding to the deposit command, and sends a command to the banknote unit 11 that is a module.
  • a telegram is generated (C1101).
  • the function library 206 transmits the generated command message to the bill unit 11 via the bill unit communication control unit 2051.
  • the function library 206 receives a response message including the execution result of the process for the command message from the banknote unit 11 in step 1008 and analyzes the execution result. If the function library 206 determines in step 1009 that the processing in the banknote part 11 has ended normally as a result of analyzing the response message, the function library 206 proceeds to sequence number 2 and performs log collection 1 (for example, normal log collection processing). A command message is generated (C1102). The function library 206 transmits the generated command message to the bill unit 11 via the bill unit communication control unit 2051. Furthermore, in step 1010, the function library 206 determines whether or not the deposit processing sequence (number 2 in FIG. 11) has been completed.
  • the process proceeds to steps 1011 and 1012, and the function library 206 receives a response message including the execution result of the normal log collection process from the banknote unit 11, and executes the response message. Analyze the results.
  • the function library 206 determines that the normal log collection processing has ended normally as a result of analyzing the response message, the function library 206 generates a response message indicating that the deposit processing has ended normally (C1103), and the generated response The message is transmitted to the service provider 204.
  • the function library 206 generates a response message indicating that the deposit process has ended abnormally in steps 1011 and 1012 if it is determined that the normal log collection process has ended abnormally. (C1104), the generated response message is transmitted to the service provider 204.
  • step 1009 the function library 206 determines in step 1009 that the response message has been analyzed and the processing in the banknote part 11 has not been completed normally, the function library 206 proceeds to sequence number 3 and logs collection 2 (for example, A command message for failure log collection processing is generated (C1105), and the generated command message is transmitted to the bill unit 11 via the bill unit communication control unit 2051. Further, in step 1010, the function library 206 determines whether or not the deposit processing sequence has been completed. In this case, since the next sequence number is not specified, the process proceeds to steps 1011 and 1012, and the function library 206 receives a response message including the execution result of the abnormality log collection process from the banknote unit 11, and executes the response message. Analyze the results.
  • the function library 206 When the function library 206 analyzes the response message and determines that the failure log collection processing has ended normally, the function library 206 generates a response message indicating that the deposit processing has ended abnormally (C1106), and the generated response The message is transmitted to the service provider 204. In addition, when the function library 206 determines that the failure log collection processing has ended abnormally as a result of analyzing the response message, in step 1011, 1012, the function library 206 generates a response message indicating that the deposit processing has ended abnormally. (C1107), the generated response message is transmitted to the service provider 204.
  • sequence number 3 there are two cases of abnormal termination of processing, that is, the deposit processing itself has terminated abnormally, and failure log collection has ended abnormally.
  • a response message indicating only that the deposit process has been terminated abnormally is generated for the provider 204. Therefore, the service provider 204 is notified as a response message only that the deposit processing has been terminated abnormally as usual.
  • the function library 206 when the module executes processing according to the first command received from the service provider 204, the function library 206 refers to the first command and the processing content table, and the first The second command / response sequence with the module based on the command is analyzed, and for each first command received from the service provider 204, processing based on the second command / response sequence with the module is performed. The first response message to the service provider is generated. In other words, the function library determines another second command to be transmitted to the module next based on the information of the one second response that is a response from the module to the one second command.
  • control unit has processing content information in which information of another second command to be generated next is stored for each second response information, and the function library includes the processing content information. Based on this, another second command including information on the other second command corresponding to the information on the second response received from the module is transmitted. For this reason, the module provider can design the function that had to be left to the module provider. In addition, a module provider can design a service provider without analyzing complicated command response messages.
  • FIG. 12 is a diagram showing an example of the format of a command message transmitted and received in the above embodiment.
  • the format of the command message includes a message length indicating the length of the command message, a command code indicating the command transmitted from the service provider, and a total acceptable number indicating the acceptable number of bills.
  • the number of denominations 1 to 4 indicating the number of denominations that can be accepted for each denomination, the reserve for setting extended commands in command messages, and a check code for confirming the validity of messages Is included. 10 and 11, the deposit command transmitted from the service provider 204 is set as the command code.
  • FIG. 13 is a diagram showing an example of the format of the response message transmitted and received in the above embodiment.
  • the response message format includes a message length indicating the length of the response message, a command code indicating the command executed by the module, an operation result code indicating the command execution result, and a command execution time.
  • An error code indicating an error that has occurred, a total received number indicating the number of bills actually received by executing a command, a denomination 1 acceptance number to a denomination 4 acceptance number indicating an acceptance number for each denomination, The number of rejects indicating the number of rejected banknotes, a reserve for setting a response message extension command, and a check code for confirming the validity of the message are included.
  • the deposit command executed by the banknote unit 11 is set as the command code.
  • the banknote transaction command instructing the banknote transaction may include a command code indicating the type of command and a transmissible number indicating the number of transactions that can be performed for each type of banknote.
  • the banknote transaction response which returns the result of a banknote transaction contains the command code which shows the classification of the banknote transaction command corresponding to the said response, and the transaction number which is the number of sheets for every kind of banknote which the banknote part counted.
  • the response message is exchanged without setting an extension command in the reserve.
  • the banknote unit 11 executes the deposit counting operation
  • the returned banknote is a banknote rejected as a result of executing the counting operation
  • the deposit counting operation is performed again.
  • the returned banknote can be read.
  • the returned banknote is associated with a payout failure
  • the banknote unit 11 may transmit a response message including the determination result of the slot feeding state 1401 in the reserve. Since the response message is returned to the command message, a command for notifying the slot feeding status 1401 may be set in the reserve of the command message shown in FIG. In this manner, the function library 206 that receives the response message by including additional information indicating the detailed status of each part of the bill unit 11 such as the insertion slot feeding status in the response message example shown in FIG. Can perform finer control using the information.
  • FIG. 15 is a diagram illustrating an example of a processing content table when the response message is returned including additional information such as the state information described above.
  • FIG. 15 shows an example in which a response message including the additional information is transmitted when the banknote unit 11 executes deposit counting.
  • FIG. 16 is a diagram showing an example of the basic processing flow of the function library main body function when the additional information is included (for example, there are operation processing included in the extension processing). In FIG. 16, the same steps as those in FIG. 10 are denoted by the same reference numerals, and the description thereof is omitted.
  • the function library 206 executes S701, S1002, and S1013 when the power of the ATM 10 is turned on, and executes commands S1003 to S1008, S1010 to S1012, S1014, and S1061 from the service provider 204. May be executed in response to the reception of.
  • the function library 206 reads a deposit command that is a command message to be executed in the order corresponding to the initialized sequence number, and inputs the slot information as the additional information. A command message including a command for determining 1401 is generated. Then, the function library 206 transmits the command message to the bill unit 11 via the bill unit communication control unit 2051, receives the response message processed according to the command message from the bill unit 11, and the execution result thereof. Is analyzed.
  • the function library 206 refers to the processing content table shown in FIG. 15 and sends a response message including a slot feeding status 1401 indicating an execution result indicating that there is a return medium and that there is no feeding failure. It is determined whether it has been received from the unit 11 (C1501). If the function library 206 determines that it has received a response message including an insertion slot feeding status 1401 indicating an execution result indicating that there is a return medium and no feeding failure, the function library 206 proceeds to sequence number 2 and again includes a command message including a deposit command. Is transmitted to the banknote part 11 (C1502). As described above, the function library 206 determines whether or not to issue the deposit command again with reference to the additional information of the response message received from the banknote unit 11, so that the reject banknotes can be reduced.
  • the function library 206 determines that it has received a response message including the insertion slot feeding status 1401 indicating the execution result indicating that there is a return medium and that there is no feeding failure, the function library 206 proceeds to sequence number 3, and the case of FIG. Similarly, log collection 1 is executed and the processing is terminated as it is. The reason for terminating the process is that even if there is a returned banknote, if there is a payout failure, it may be jammed if the deposit is made again, and higher reliability can be obtained if the operation is terminated as it is.
  • the function library 206 transmits a second command to the banknote part 11 and receives a second response including state information from the banknote part.
  • the service provider does not need to perform complicated processes.
  • FIG. 17 is a diagram showing an example of license permission information defined including the license level.
  • the license level is stored in association with the bill type and model.
  • the banknotes with serial numbers 1 and 2 are defined as expanded functions. The provided command message and response message can be exchanged.
  • serial number of the banknote part as the license-permitted serial number, each device of the banknote part can be identified, but when considering the replacement or repair of the banknote part due to a failure or the like, In addition to the production number, a unique number dedicated to license management may be used.
  • FIG. 18 is a diagram showing an example of a processing content table when the license permission information shown in FIG. 17 is used.
  • a permission category level 1801 is defined instead of the permission category.
  • the processing content table stores commands of a plurality of transaction functions and extended functions and information of processing sequences corresponding to the commands, and the banknote part is one of a plurality of transaction functions or extended functions. It may further include license information that specifies whether the function is permitted to be executed.
  • the withdrawal command is defined by dividing the processing sequence to be executed according to the license level.
  • the license level is 1, it is a processing sequence for executing withdrawal processing and log collection as basic functions.
  • the license level is 2, the extended function is for withdrawal processing and log collection as well as collection and log collection. It can be seen that the processing sequence is capable of executing the reset.
  • a processing sequence corresponding to each of a plurality of license levels is defined in one processing content table, but a processing table may be provided for each license level. As described above, by setting the license level for each banknote part, it is possible to flexibly set the suitability of the function to be executed.
  • FIG. 19 is a diagram showing an example of a basic processing flow of the function library main body function when the license permission information shown in FIG. 17 is used.
  • the same steps as those in FIG. 10 are denoted by the same reference numerals, and the description thereof is omitted.
  • some processes may be executed when the power of the ATM 10 is turned on, and the remaining processes may be executed in response to receiving a command from the service provider 204.
  • the function library 206 receives a command message including an instruction to execute the deposit process from the service provider 204.
  • the function library 206 confirms the deposit command and its permission classification level in the process content table shown in FIG. To do. Specifically, the function library 206 reads the license level corresponding to the serial number of its own device from the license permission information shown in FIG. The function library 206 determines whether or not the read license level is set to a permission category level corresponding to the deposit command in the processing content table shown in FIG. 18, and the read license level is set to the permission category level. If it is determined that it is not, a message indicating that the process cannot be executed is returned to the service provider 204 as in 1014 of FIG. On the other hand, the function library 206 executes the processing from step 1006 onward as in the case of FIG.
  • the function library 206 determines whether or not the command message and the response message can be executed according to the license level given to the module. Therefore, depending on the level of the license held by the module providing destination, Whether to disclose the function to the module provider can be designed by the module provider.
  • the command message and response message between the service provider 204 and the function library 206 and the command message and response message between the function library 206 and the bill unit 116 are executed in the same format.
  • what type of processing sequence is executed when the function library 206 receives a command message and a response message between the service provider 204 and the function library 206 when the function library 206 receives the command message and the response message.
  • Leaked to the module supplier there remains a concern of technology leakage from the module supplier to the module supplier. Therefore, in the following, a case where a part of a command message is modified for the purpose of concealing the module usage technique will be described.
  • FIG. 20 is a diagram showing an example of the format of a command message between the function library 206 and the bill part 11 which is a module.
  • the command message format shown in FIG. 12 is a command message between the service provider 204 and the function library 206 will be described as an example.
  • the value of the command code of the command message received by the function library 206 from the service provider 204 is $ 1000.
  • the value of the command code 2001 of the command message received by the bill unit 11 from the function library 206 is $. It can be seen that it is 7100.
  • the function library 206 when the function library 206 receives a command message from the service provider 204, the function library 206 converts the command code value included in the command message into a value after calculation by adding a predetermined value, and transmits the value to the banknote unit 11.
  • the command code value included in the command message is set.
  • the function library 206 changes the command code and sends it to the module, so that the service provider 204 and the module are not directly connected with the same command message, and the leakage of techniques for using the module is prevented. And the need for the function library 206 can be increased.
  • the command code is converted has been described. However, even if the command message is stolen, the entire command message is scrambled in the function library 206 in order to conceal the command sequence. It may have a function to make it.
  • the error code at the time of abnormal termination in the processing sequence is the same.
  • an error code with a simpler system than the standard error code may be desired so that the client side using the ATM 10 can easily understand what kind of response should be performed.
  • a standard error code is modified or expanded and provided from the function library 206 to the service provider 204 will be described.
  • FIG. 21 is a diagram showing an example of the basic processing flow of the function library body function when a standard error code is modified or expanded.
  • the same steps as those of FIG. 10 are denoted by the same reference numerals, and the description thereof is omitted.
  • some processes may be executed when the power of the ATM 10 is turned on, and the remaining processes may be executed in response to receiving a command from the service provider 204.
  • FIG. 21 exemplifies processing when the function library 206 and the banknote unit 11 are connected.
  • step 1005 the function library 206 searches for the command received from the service provider 204 using the processing content table shown in FIG. 11, and determines that the registration is not permitted and the use is not permitted (1005; No). An error code indicating that fact is stored in a memory (not shown) (2101), and the process proceeds to step 2106.
  • the function library 206 determines that there is registration and is permitted to use (1005; Yes), it initializes the sequence number (1006). At this time, in order to execute the next command, the function library 206 determines whether the status of the function library 206 is in a state where the next command can be executed (2101), and the next command cannot be executed. (2102; No), an error code indicating that is stored in a memory (not shown) (2103), and the process proceeds to step 2106.
  • the function library 206 executes the processing of steps 1007 to 1009, and according to the additional information included in the response message received from the banknote unit 11, The status of the function library 206 is updated (2104), and it is determined whether or not the bill library unit 11 is connected (2105). If the function library 206 determines that the banknote unit 11 has been connected (2105; Yes), it accesses the error code conversion table using the error code stored in steps 2101 and 2103 as a key, and converts the error code ( 2106).
  • FIG. 22 is a diagram showing an example of the error code conversion table 2200.
  • a standard error code 2201 that is an error code defined in the standard specification of the banknote part 11 and a customized error code 2202 (in this example, three setting errors).
  • the function library 206 associates the standard error code 2201 unique to each banknote part 11 and the error code 2202 unique to each service provider 204 or bank (each of the settings 1 to 3 is a service provider). Or it is decided for each bank).
  • the function library 206 converts the standard error code stored in steps 2101 and 2103 into any customized error code, and then generates and transmits a response message to the service provider 204 in steps 1011 and 1012.
  • error code settings may be determined as an initial setting file at the time of product shipment, or may be obtained by accessing the service provider 204 when the function library 206 is activated when the ATM 10 is powered on.
  • the function library 206 changes the standard error code corresponding to the error received from the banknote unit 11 to an error code corresponding to the service provider 204 or the bank based on the error code conversion table. As a result, the development man-hours of the service provider 204 can be suppressed.
  • the above processing can also be applied to the case of handling a plurality of types of banknotes 11 as will be described later with reference to FIG.
  • the processing sequence executed by the function library 206 may be different.
  • the function library 206 can be used for a plurality of banknote parts 11 by storing the processing content table of FIG.
  • the control unit 20 may store a reference destination management table.
  • FIG. 23 is a diagram illustrating an example of a reference destination management table.
  • the reference destination management table 2301 associates the bill part type (for example, type XXXXXX-XX in FIG. 9) indicating the kind of the bill part 11 with the identification information unique to each processing content table shown in FIG.
  • the function library 206 receives the operation instruction for the module such as the bill 11 from the service provider 204 or refers to the reference management table at the time of initial setting, thereby acquiring the bill 11 obtained from the bill 11 or received from the outside.
  • the processing content table to be referred to is determined based on the type.
  • the function library 206 implements each process between the banknote parts 11 based on the sequence defined in the determined process content table.
  • the function library 206 can set the processing content according to the type of the banknote part 11.
  • the control unit 20 has both functions of first pieceless management information (first pieceless management table) to be described later and second pieceless management information (second pieceless management table) to be described later.
  • first pieceless management information first pieceless management table
  • second pieceless management information second pieceless management table
  • the error code conversion has been mainly described.
  • the control unit 20 separately includes first frameless management information and second frameless management information. May be.
  • FIG. 24A is a diagram showing an example of the first frameless (command response) management table 2400A. 11, 15, and 18, the “reception command from SP” in the processing content table has mainly been described in the case where the command code is common between the service provider 204 and the function library 206. However, when there are a plurality of service provider 204 types or bank types, command message and response message definitions (for example, message format and command code) transmitted and received between the function library 206 and the service provider 204 are transmitted. Different cases arise.
  • command message and response message definitions for example, message format and command code
  • the function library 206 can be easily used for a plurality of service providers 204 by storing the definitions of the command message and the response message for each service provider 204 or each bank.
  • the control unit 20 may store the first frameless management table 2400A, for example.
  • the command code / response code for example, operation result code, error code, additional information
  • the present invention is not limited to this.
  • the first frameless management table 2400A includes a command code / response code 2402A defined (managed) by the function library 206 for each command / response type 2401A, and a command code / response code defined / managed for each service provider 204 or bank.
  • the response code 2403A is associated.
  • the command code / response code 2402A defined in the function library 206 is a unique value that can be identified for each type of command / response.
  • the command code / response code 2403A defined for each service provider 204 or bank is a unique value that can be identified for each type of command / response.
  • the command code / response code 2402A defined in the function library 206 and the command code / response code 2403A defined for each service provider 204 or bank may have different values or common values for some or all types. Good.
  • command code / response code defined for each service provider 204 or each bank may be a different value or a common value among a plurality of service providers or banks with respect to some or all types.
  • the function library 206 When the function library 206 receives a command from the service provider 204, the function library 206 refers to the first frameless management table 2400A and corresponds to the command code received from the service provider 204 based on the type of the service provider 204 or the bank. Convert to the command code. Further, when the function library 206 transmits a response to the service provider 204, the service library 206 refers to the first frameless management table 2400 and, based on the type of the service provider 204 or the bank, a response code corresponding to the response code to be transmitted to the service provider 204 Convert to response code of provider 204 or bank.
  • the function library 206 refers to the first frameless management table 2400A at the time of initial setting, and based on the type of the service provider 204 or the bank, depending on the connected service provider 204 (FIGS. 11, 15, 18). ) ” May be changed to a command code / response code of the type of the service provider 204.
  • the function library 206 may receive the service provider 204 or the type of bank from the service provider 204 or the outside, and may be set by the function library 206.
  • control unit 20 uses the first frameless management table 2400A to connect to a service provider 204 or a bank of a different type, it can be handled flexibly, and the function to be applied can be expanded or deleted. You can easily add or delete commands according to your needs.
  • the control unit 20 has a similar management table in which element types are associated with each service provider 204 or bank type, and the service provider 204 or You may enable it to process based on the information of the element for every kind of bank.
  • FIG. 24B is a diagram showing an example of the second frameless (command response) management table 2400B.
  • the “issue command to module” in the processing content table of FIGS. 11, 15, and 18 has been described with respect to the case where the command code is common between the bill unit 11 and the function library 206.
  • the definition of command messages and response messages sent and received between the function library 206 and the banknotes 11 may be different.
  • the function library 206 can be easily used for a plurality of types of banknotes 11 by storing the definitions of command messages and response messages for each type of banknotes 11.
  • control unit 20 may store, for example, a second frameless management table.
  • command code / response code for example, operation result code, error code, and additional information
  • the present invention is not limited to this.
  • the second frameless management table includes a command code / response code 2402B defined (managed) by the function library 206 for each command / response type 2401B, and a command code / response defined (managed) for each type of banknote part 11.
  • the code 2403B is associated.
  • the command code / response code 2402B defined by the function library 206 is a unique value that can be identified for each type of command / response.
  • the command code / response code 2403B defined for each type of the banknote part 11 is also a unique value that can be identified for each type of command / response.
  • the command code / response code 2402B defined by the function library 206 and the command code / response code 2403B defined for each type of the banknote part 11 may have different values or common values for some or all types. Good.
  • command code / response code 2403B defined for each type of banknote part 11 may be a different value or a common value for each type of banknote part 11 with respect to some or all types.
  • the function library 206 When the function library 206 receives a response from the banknote unit 11, the function library 206 refers to the second frameless management table 2400B and based on the type of the banknote unit 11, the function library response code corresponding to the response code received from the banknote unit 11 Convert to The function library 206 refers to the second frameless management table when transmitting the banknote part 11 command, and the command of the banknote part 11 corresponding to the command code to be transmitted to the banknote part 11 based on the type of the banknote part 11. Convert to code. Alternatively, the function library 206 refers to the second pieceless management table 2400B at the time of initial setting, and in the processing content table (FIGS. 11, 15, and 18) according to the connected banknote part 11 based on the type of the banknote part 11. The “issue command to module” may be changed to a command code / response code of the type of the banknote part 11.
  • the function library 206 may receive the classification of the banknote part 11 from the banknote part 11 or the outside, and the function library 206 may set.
  • the control unit 20 can flexibly handle banknotes 11 of different types, and can be used to expand and delete functions to be applied. You can easily add and delete commands.
  • the control unit has a similar management table in which the types of elements are associated with the types of banknotes 11, and for each type of banknotes 11. You may enable it to process based on the information of an element.
  • control unit 20 having the function library 20 can be easily introduced into various types of systems regardless of the type of the banknote unit 11 and the type of the service provider 204 or the bank. Is possible.
  • 24A and 24B show an example of converting the framelessness of both basic processing (for example, deposit, withdrawal, storage (storage after deposit count)) or expansion processing (for example, automatic scrutiny, log collection 1). As shown, any one of the frames may be converted.
  • FIG. 25 shows an example of a system including a host device to which a plurality of ATMs 10 including the banknote unit 11 are connected by a communication network 100.
  • the host device include a management device 110 that manages the operation of the ATM 10 by a bank, a maintenance device 120 that is managed by a maintenance company, and the like.
  • a management device 110 that manages the operation of the ATM 10 by a bank
  • a maintenance device 120 that is managed by a maintenance company, and the like.
  • the host device manages the function library 206 will be described.
  • the host device such as the management device 110 or the maintenance device 120 includes a control unit 130 including a storage unit (for example, a memory) and a CPU, and an operation terminal 140 that receives input of information from the outside.
  • the control unit 130 of the host device transmits / receives various information to / from the communication control unit 101 of the ATM 10 connected via the communication network 100.
  • storage part shows the specific information 2601 (for example, ATM serial number, banknote part serial number, or banknote identification part serial number) of ATM10 or the banknote part 11, and the banknote identification part 113, and the kind of the function library 206 of each ATM10.
  • the function library management information 2600 associated with the information is stored.
  • FIG. 26 is a diagram showing an example of the function library management information 2600.
  • the function library management information 2600 is information for managing the function library for each ATM.
  • the function library management information 2600 associates ATM information 2601 that identifies an ATM with type information 2602 that indicates the type of the function library 206.
  • the ATM information 2601 includes an ATM ID 2603 that is information unique to each ATM. Further, the ATM information 2601 may have a banknote part serial number 2604 which is information for identifying a banknote part and a banknote identification part serial number 2605 which is information for identifying a banknote identification part.
  • the type information 2602 indicating the type of the function library 206 includes, for example, FL version information 2606 indicating the version of the function library, license information 2607 indicating the license level of the function library or the presence or absence of the license, and the function library provides to the ATM.
  • Function type information 2608 indicating functions (for example, deposit, storage, withdrawal, automatic scrutiny, etc.), provided vendor information 2609 indicating the vendor providing the function library, and the like may be included. Further, the function library management information may include installation location information 2610 indicating the installation location of the ATM.
  • the host device uses the function library management information 2600 and based on the type information 2602 of the function library 206 received by the operation terminal 140 of the host device, the ATM 10, the bill unit 11 or the bill recognition unit 113 having the function library 206. And the information indicating the extracted ATM 10, banknote part 11, or banknote identification part 113 may be displayed on the operation terminal 140.
  • the host device extracts the type information 2602 of the function library 206 of the ATM 10 based on the information indicating the ATM 10, the banknote unit 11 or the banknote identification unit 113 received by the operation terminal 140 of the host device, and the extracted function library 206. Type information may be displayed on the operation terminal 140.
  • the host device receives an update instruction from the operation terminal 140, based on the function library management information 2600, the host device issues an instruction to acquire the type information 2602 of the function library 206 to the ATM 10 corresponding to the unique information of the ATM 10 that has received the update instruction. Send.
  • the function library 206 of the ATM 10 receives the acquisition instruction via the business application 203 or the service provider 204. Based on the instruction, the function library 206 acquires the type information of the function library 206 stored in the storage 202, and transmits the type information of the function library 206 to the host device via the business application 203 or the service provider 204.
  • the ATM 10 may transmit information unique to the ATM 10 or the banknote unit 11 to the host device in addition to the type information of the function library 206.
  • the host device receives the type information of the function library 206 and updates the function library management information.
  • the operation terminal 140 of the host device displays the updated function library management information.
  • the function library 206 changes the type information of the function library 206 to the business application 203 or the service provider 204 when the type information managed by the function library 206 is updated, not at the timing when the acquisition instruction is received from the host device. It may be transmitted via a higher-level device. In addition to the type information of the function library 206, the ATM 10 may also transmit information unique to the ATM 10 or the banknote unit 11 to the host device.
  • the function library 206 determines the number of command issuances, the time of command issuance, and whether the processing executed by the module has been completed normally for each type of command issued to the module. May be managed. Further, the host device or the control unit 20 of the ATM 10 may manage the above information individually. As a result, it is possible to confirm information match / mismatch between the module provider and the module provider regarding the usage status of the function library 206.
  • the function library 206 collects log information for each part constituting the banknote part 11 generated by the operation of the banknote part 11 having the function library 206, and based on the collected log information, the fault for each part of the banknote part 11 is collected. An analysis process is performed to determine the presence / absence, possibility / absence, probability or timing of occurrence, necessity of replacement for each part, and timing.
  • the function library 206 stores analysis information, which is a result of the analysis processing, in the storage 202.
  • the upper device when receiving an analysis information acquisition instruction as a result of the analysis processing from the operation terminal 140 of the upper apparatus, transmits an analysis information acquisition instruction of the function library 206 to the ATM 10 that has received the acquisition instruction.
  • the function library 206 receives the acquisition instruction via the business application 203 or the service provider 204. Based on the acquisition instruction, the function library 206 acquires the analysis information of the function library 206 stored in the storage 202, and transmits the analysis information of the function library 206 to the host device via the business application 203 or the service provider 204.
  • the ATM 10 may also transmit information unique to the ATM 10, the banknote unit 11, or the identification unit 13 to the host device.
  • the host device receives the analysis information of the function library 206 and stores the unique information such as ATM 10 and the analysis information in association with each other. Further, the higher-level device may display the analysis information on the operation terminal 140.
  • the function library 206 of the ATM 10 collects the log information of the banknote part 11, analyzes the state of the banknote part 11 based on the collected log information, and transmits the analysis result to the host apparatus. Compared to the case where log information is collected and analyzed, it is possible to effectively use resources of the host device and resources of the communication line connecting the host device and the ATM 10.
  • FIG. 27 is a diagram illustrating an example of log information 2700 for each part constituting the banknote unit 11.
  • the log information may include a command type 2701 (may be a command code) that is a type of command received from the function library 206, and a reception date and time 2702 that is a time when the command is received.
  • log information may have the operation value 2703 which the banknote part 11 acquired by operation
  • the log information includes a component type 2705 indicating the type of the component, and component number information 2706 indicating a specific component number depending on a location that is unique for each component in the banknote unit 11 or is arranged in a certain component type. You may have.
  • each component type has a corresponding command type
  • the function library 206 may determine which type of component to acquire based on the processing content table (FIGS. 11 and 18).
  • the log collection 1 may be set to collect sensor values
  • the log collection 2 may be set to acquire roller values.
  • the components include, for example, a detection unit including an optical sensor and a magnetic sensor, a conveyance unit including a roller, a belt, and the like.
  • the log information may be information generated by each of the plurality of detection units and the plurality of transport units included in the banknote unit 11, for example.
  • the log information of the detection unit may include, for example, sensor output and detection level.
  • the log information of the transport unit may include, for example, transport error information such as transport skew.
  • the function library 206 is based on the collected or stored log information, actual data indicating the current or latest operating value 2703 of the component of the banknote part 11, and information based on the past operating value of the component and the operating value 2703. Statistical data indicating a trend (for example, information indicating a time-series change in operating value) is generated. Subsequently, the function library 206 determines whether or not a failure has occurred, whether or not a failure has occurred, the probability or timing of the failure, or whether or not maintenance or replacement is required for each component based on the generated statistical data and actual data. Perform analysis processing to determine
  • FIG. 28 is an analysis log information table 2800 showing log types used when the function library 206 executes various analysis processes.
  • the analysis log information table 2800 is information indicating a processing type 2801 indicating the type of analysis processing, a log type 280 that is a type of log used in the analysis processing, and a component that is a collection source of logs used in the analysis processing. It is a table in which a certain part number 2803 is associated. An analysis process can be executed based on information specified in the analysis log information table 2800.
  • FIG. 29 is a diagram showing an example of the exchange information management table 2900.
  • the exchange information management table 2900 includes a bill part 11 or a bill part serial number 2902 indicating information for identifying the bill part 11 and a part indicating the exchanged part. Information of exchange contents indicating the number 2903 and the reason for exchange may be included.
  • the replacement information management table 2900 is information for associating the part number 2903 and the replacement time 2901, and any information that can determine the replacement time 2901 of the part number 2903 may be used.
  • the function library 206 updates the information in the exchange information management table 2900 when detecting the exchange of the banknote part 11 or the parts. More specifically, the function library 206 specifies the exchanged part number 2903 based on the information received from the banknote unit 11 and causes the maintenance staff or the like who performed the exchange to select the exchange content 2904. Further, the exchange information management table 2900 may be displayed on the display screen of the management device 110, etc., and the banknote part that the administrator wants to grasp by sorting under any condition such as the banknote part serial number 2902 or exchange location. Eleven exchange information may be known immediately.
  • FIG. 30 shows an example of the flow of statistical data generation processing.
  • the function library 206 may generate statistical data in consideration of the exchange of the banknote part 11 or parts when generating statistical data using the exchange information management table 2900 and the analysis log information table 2800.
  • the function library 206 Based on the analysis log information table 2800, the function library 206 specifies a part number for generating a log of the log type used in the analysis according to the processing type of the analysis process (S3000). Subsequently, the function library 206 determines whether there is a replacement history of the identified part number based on the replacement information management table 2900 (S3002). If there is no replacement history (S3002: none), statistical data is generated based on log information for a predetermined period determined for each part (S3008). On the other hand, if there is an exchange history (S3002: present), the exchange time is acquired based on the exchange information management table 2900 (S3004). The function library 206 generates statistical data based on the acquired exchange time (S3006).
  • the function library 206 generates statistical data by distinguishing log information before the acquired exchange time and log information after the acquired exchange time.
  • the function library 206 does not handle log information before the exchange time and log information after the exchange time as continuous data.
  • two pieces of statistical data may be generated before and after the replacement time, or one piece of statistical data may be generated by associating log information before the replacement time with log information after the replacement time in the operation time zone.
  • the exchange information management table 2900 and the analysis log information table 2800 it is possible to generate appropriate statistical data according to the components used for the analysis processing.
  • the sequence number of the next command to be executed is determined depending on whether the operation result is normal or abnormal. However, the information included in the response message from the module, for example, whether or not the banknote remains is the latest.
  • Various functions are available by switching the sequence number based on various information associated with the operation result, information on the operation result executed in the past, various stored setting information, etc., or switching to a new table that defines the table itself. A switching mechanism can be realized.
  • registering a command sequence definition table to be used for each device in the license permission information table shown in FIG. 9 makes it possible to switch the range and function that can be used for each device. By applying this method, it is possible to realize a function of enabling the extended function by updating the license permission information table.
  • FIG. 9 shows an example in which the license permission information is managed according to the model of the banknote unit 11, it may be managed using a virtual ID.
  • the host device such as the management device 130 manages the virtual ID, so that when the model change or the like occurs due to the exchange of the banknote portion 11 or the like, the virtual ID can be easily managed.
  • the message format between service provider function libraries and the message format between function library modules be different due to the concealment of module usage technology, which is one of the purposes of this proposal.
  • the function library is to be installed in a place where the device has been constructed without the function library, the same format can be used to facilitate the embedded design.
  • the purpose can be achieved by changing the information of the existing disclosure command or by adding a function limitation by adding a non-disclosure command.
  • information included in the message is added. For example, not only the error code notified by the module but also new information such as the error code generated by the function library according to the operation status It is also possible to increase the added value by adding.
  • FIGS. 8, 9, 11 to 15, 17, 18, 20, 22, 23, 24, 26, 28, and 29 show examples of holding in the form of tables. Any method for associating and storing information is not limited to the table format.
  • the command type is described as “received command from SP”, but the command information (for example, the function library identifies the command according to the management state of the control unit 20). It may be a command code managed by a function library or a command code managed by a service provider. Further, although the command type is described as “issued command to module”, the command information that the function library identifies the command according to the management state of the control unit 20 (for example, the command code managed by the function library, Or a command code managed by a module).
  • the automatic transaction apparatus may be a medium handling apparatus that acquires information from a medium having information.
  • transaction processing performed by the medium handling device is performed from a target medium (for example, banknote, card, statement slip, bankbook, coin) in order to perform transactions such as deposit, withdrawal, transfer, and transfer.
  • a target medium for example, banknote, card, statement slip, bankbook, coin
  • the process which acquires information may be processing which a processing part (for example, a bill part, a card / statement slip part, a passbook part, a coin part) carries out.
  • a processing part for example, a bill part, a card / statement slip part, a passbook part, a coin part
  • it may be a process that causes each processing unit to carry or read a medium to be handled along with the transaction process.
  • the transaction response such as the banknote transaction response is based on the transaction command, and is information used in the transaction acquired from the medium (for example, the number of banknotes for each denomination counted in the transaction, the read card number, the read bankbook number, It may be a response that returns the number of coins counted for each denomination.
  • the transaction process may be a process of acquiring information that identifies a user account or information that is reflected in the identified account.
  • a process in which the banknote part acquires the counting result (for example, the number of each banknote type, banknote image) of the banknotes inserted into the insertion slot of the banknote part is basic. It corresponds to processing.
  • the information that is not used in the basic process the information that is acquired by the basic process or the expansion process, the process that is performed by the function library or that is executed by the banknote portion is the expansion process.
  • the function library generates (executable) a command for causing the banknote part to execute the process of acquiring the counting result in the banknote part, and causes the function library to execute (executable) the command for executing the expansion process on the banknote part. It may be generated. As described above, the basic process and the extension process may change depending on the type of the processing unit.
  • a medium handling apparatus that conducts transactions based on information on media input from the outside, and a control unit that acquires information used in transactions from the input media, and a control that generates commands that can be executed by the processing unit
  • the control unit has a service provider that generates a basic processing command that is a command that can be executed by the processing unit for basic processing (for example, transaction processing) for acquiring information used in the transaction, and an extension different from the basic processing.
  • a function library that generates an extended processing command that is a command that can be executed by the processing unit.
  • the function library receives the basic processing command from the service provider and transmits it to the processing unit without conversion (the same command as the basic processing command).
  • a medium handling apparatus having a processing unit that acquires information on a medium input from the outside, and having a control unit that generates a basic processing command or an extended processing command that can be executed by the processing unit. , Having second pieceless management information for managing basic processing commands or extended processing commands corresponding to each type of processing unit, and based on the second pieceless management information, the first command corresponding to the type of processing unit or A second command is generated.
  • a medium handling apparatus having a processing unit for acquiring information of a medium input from the outside, and having a control unit having a function library for transmitting an extended processing response as a result of the extended processing to the outside or a service provider.
  • the control unit has first frameless management information that manages the response of the expansion process corresponding to each type of bank or service provider, and corresponds to the type of bank or service provider based on the first frameless management information Generate a response for extended processing.
  • a medium handling apparatus that performs medium processing, which is processing that uses information contained in a medium, based on a module that acquires information from the medium and an instruction to start transaction processing from the outside, connected to the module, A control unit having a service provider that generates a first command and a function library that generates a second command to be transmitted to the module based on the first command received from the service provider.
  • Another second command to be transmitted to the module is determined based on the information of one second response which is a response from the module to the second command.
  • the control unit has processing content information storing information of another second command to be generated next for each second response information, and the function library includes the processing content information. Based on the second response information received from the module, another second command including other second command information may be transmitted.
  • the function library generates a plurality of second commands in response to one first command and receives all the second responses corresponding to each second command.
  • One first response that is a response to the first command may be transmitted to the service provider.
  • a medium handling apparatus that performs medium processing, which is processing that uses information included in the medium, and a module that acquires information from the medium, and an instruction to start transaction processing from the outside connected to the module,
  • a control unit having a service provider that generates a first command and a function library that transmits a second command to the module based on the first command received from the service provider.
  • send the transaction command that causes the module to acquire information used in transaction processing from the medium and the information acquisition command as a second command to the module To do.
  • the function library is based on the contents of transaction response (information of one second response) which is a response from the module to the transaction command, and the type of information acquisition command (information of other second command) May be determined.
  • the function library may generate the next information acquisition command based on one information acquisition response that is a response from the module to one information acquisition command.
  • the module includes the state information indicating the state of the module in the transaction response (information of the second response of one) from the module to the transaction command, the function library receives the transaction response, Based on the state information included in the transaction response, a second command to be generated next (information on another second command) may be determined.
  • the function library has reference destination management information in which information indicating the module type is associated with the processing content information, and corresponds to information indicating the module type acquired from the module based on the reference destination management information. Processing content information may be determined.
  • An automatic transaction apparatus having a processing unit that executes a transaction using a medium, and generates a first command for acquiring information used for the transaction from the processing unit based on a transaction instruction.
  • a control including a command providing unit and a second command providing unit that specifies processing to be executed by the processing unit based on the first command and generates a second command that is converted into a command different from the first command Part.
  • the second command providing unit has processing content information for designating the second command, and the second command providing unit uses the processing content information based on the first response that is a response to the first command from the processing unit. 2 commands are determined.
  • the second command providing unit receives the first command from the first command providing unit, and transmits the first command to the processing unit without converting the command code of the first command. To do.
  • a program for realizing each process can be stored in an electric / electronic and / or magnetic non-transitory recording medium. That is, a program for realizing the function of the function library 206 is stored in a portable or non-temporary recording medium of a host device such as a server, and is installed (stored) in the ATM 10 to realize the function. You may do it.

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

媒体を用いて取引を実行する処理部を有する自動取引装置であって、取引の指示に基づいて、処理部が取引に使用する情報を取得する第1のコマンドを生成する第1のコマンド提供部と、第1のコマンドに基づき処理部の実行する処理を指定し、第1のコマンドとは異なるコマンドであり、処理部が指定する処理を実施する第2のコマンドを生成する第2のコマンド提供部とを含む制御部を有する。

Description

自動取引装置、自動取引システム及び非一時的記録媒体
 本発明は、自動取引装置、自動取引システム及び非一時的記録媒体に関する。
 ATM(Automated Teller Machine)などの現金自動取引装置は、銀行の店舗だけでなく、デパート、コンビニエンスストアまたは駅構内などに幅広く設置されている。自動取引装置は、現金や帳票など多くの種類の取引媒体を取扱う装置であり、自動取引装置の設計に際しては、紙幣部などの自動取引装置を構成する各種の処理部を制御する特定のモジュールを専業メーカから購入することで設計の効率化を行うことが多い。
 一般的に、自動取引装置には、顧客との入出金紙幣を出し入れする紙幣部が搭載されている。特に、紙幣部は稼働する地域の特性や紙幣の種類・状態・運用など稼働にかかる機能や性能の実現にさまざまな技術が導入されている。また、それらを使いこなすことで従来よりも高い性能を発揮する自動取引装置を実現するため、モジュールを購入する場合においても自動取引装置の設計に高い技術が必要となる。
 自動取引装置に内蔵される上記モジュールは、一般的には、制御部と通信回線やUSB(Universal Serial Bus)等のIO(Input Output)インタフェースで接続される。制御部は、モジュールへの動作を指示するためのコマンド電文を送信し、モジュールが、その指示に従った動作を行い、その動作結果をレスポンス電文で制御部に返送する(特許文献1)。
特開2014-78273号公報
 上述のようなモジュールは、複雑かつ多数の機能を有し、その機能や性能を引き出すには、コマンド電文の順序や、レスポンス電文による情報判定と次の動作を適切に決定する技術を必要とする。そのため、モジュールの機能を最大限に引き出すにはコマンド電文やレスポンス電文の仕様を詳細に設計しなければならず、その設計負荷が高くなってしまうという課題がある。上記特許文献1では、上記課題については考慮されておらず、これらの課題を解決するための技術が求められていた。
 本発明にかかる自動取引装置は、媒体を用いて取引を実行する処理部を有し、取引の指示に基づいて、取引に使用する情報を処理部から取得する第1のコマンドを生成する第1のコマンド提供部と、第1のコマンドに基づき処理部の実行する処理を指定し、第1のコマンドとは異なるコマンドに変換される第2のコマンドを生成する第2のコマンド提供部とを含む制御部を有するものとして構成される。
 本発明の一実施の形態によれば、モジュールの機能を最大限に引き出すためのコマンド電文やレスポンス電文の仕様を簡素化することができ、設計負荷を低減できる。
ATMの外観斜視図である。 ATMの機能的な構成を示すブロック図である。 ATM内の一般的な従来型のソフトウェア構成図である。 図3に示したソフトウェア構成において、制御部内の各部およびモジュールにおけるコマンド電文やレスポンス電文の流れを示す図である。 図4に示したソフトウェア構成においてファンクションライブラリを配置したATM内のソフトウェアの構成図である。 図5に示したモジュールがサブモジュールを含む場合のソフトウェアの構成図である。 紙幣部接続処理フローの例を示す図である。 構成情報の例を示す図である。 ライセンス許可情報の例を示す図である。 ファンクションライブラリ本体機能の基本処理フローの例を示す図である。 処理内容テーブルの例を示す図である。 コマンド電文のフォーマットの例を示す図である。 レスポンス電文のフォーマットの例を示す図である。 リザーブに投入口繰出し状況の判定結果を含めたレスポンス電文の例を示す図である。 レスポンス電文に付加情報を含めて返送した場合の処理内容テーブルの例を示す図である。 付加情報を含めた場合のファンクションライブラリ本体機能の基本処理フローの例を示す図である。 ライセンスレベルを含めて定義したライセンス許可情報の例を示す図である。 図17に示したライセンス許可情報を用いた場合の処理内容テーブルの例を示す図である。 図17に示したライセンス許可情報を用いた場合のファンクションライブラリ本体機能の基本処理フローの例を示す図である。 ファンクションライブラリとモジュールである紙幣部との間のコマンド電文のフォーマットの例を示す図である。 標準的なエラーコードを改変や拡大した場合のファンクションライブラリ本体機能の基本処理フローの例を示す図である。 エラーコード変換テーブルの例を示す図である。 参照先管理テーブルの例を示す図である。 第一のコマレス管理テーブルの例を示す図である。 第二のコマレス管理テーブルの例を示す図である。 上位装置を含むシステムの構成を示す図である。 ファンクションライブラリ管理情報の例を示す図である。 部品毎のログ情報の例を示す図である。 分析ログ情報テーブルの例を示す図である。 交換情報管理テーブルの例を示す図である。 統計データ生成処理のフローの例を示す図である。
 以下、本発明の一実施形態を、図面を参照して詳細に説明する。
 以下では、自動取引装置を構成する各種の処理部を制御するモジュールのうち、紙幣処理装置である紙幣部を例に説明しているが、例えば、カード・明細票処理装置、通帳処理装置あるいは硬貨処理装置等の自動取引装置が一般的に備えている各種装置を制御する様々なモジュールについても同様に適用することができる。また、以下では、本発明にかかる取引媒体取扱装置の一例として、自動取引装置について記載しているが、ソータ等の紙幣の仕分装置、テラーマシーン等のテラーが扱う装置、中央銀行で利用される装置などにも適用できる。なお、本発明はこれらの実施の形態に限定されるものではない。
 本実施例では、モジュール提供元が、制御部側で機能を実現するソフトウェアライブラリを設計し、モジュール提供先へモジュールと合わせて提供することで、適切な使いこなし技術を実現する手段を提案する。本提案によれば、モジュール提供元においては、モジュール提供先へのモジュール使いこなし技術の開示を最小限にとどめ、制御部が持つストレージを活用し追加コストなく運用や保守にかかる多くの機能実現が可能となる。その結果、モジュールの価値を高めることが可能となる。
 また、モジュール提供先においては、複雑なモジュール使いこなし技術のすべてを理解する必要はなく、自動取引装置に必要な最小限の理解で充分になるとともに、モジュールを制御する最適なシステム設計ができる。したがって、制御部の資源を最大限有効活用しつつ性能を発揮することができる。さらに、保守等の設計優先度が低くなりがちな機能をモジュール提供元から供給を受けることで設計工数を削減し、短期間かつ高品質に自動取引装置の設計が可能となる。また、制御部に各種変換情報を有することにより、複数種類のモジュール又は複数の銀行で機能を実現した場合であっても、制御部の設計変更の負担を抑制することが可能となる。
 図1は、自動取引装置(以下、ATMと呼ぶ。)10の外観斜視図である。ATM10は、金融機関等に設置され、顧客の操作によって現金の預入や引出等の取引を行い、顧客の要求する種々の取引を自動的に実行する装置である。図1に示すように、ATM10は、その内部に、紙幣部11と、カード・明細票部12と、通帳部13と、硬貨部14と、操作部15と、係員操作部16と、を含んで構成されている。
 紙幣部11は、紙幣の金種や真偽を判別し、利用者が投入した紙幣を計数して収納したり、操作部15から入力された入金金額等に応じて、紙幣収納庫に収納されている紙幣を繰出して入出金口に排出する等、紙幣に関する処理を行う。
 カード・明細票部12は、利用者がATM10との間で取引を行うためのキャッシュカードの受け入れ、カードに記憶された情報の取得、排出、取引記録を印字した明細票を利用者に排出する等、カードや明細票に関する処理を行う。
 通帳部13は、利用者がATM10との間で取引を行うための通帳の受け入れ、通帳に記録された情報の取得、排出、取引記録を印字やページめくり等、通帳に関する処理を行う。
 硬貨部14は、硬貨の金種や真偽を判別し、利用者が投入した硬貨を計数して収納したり、操作部15から入力された入金金額等に応じて、硬貨収納庫に収納されている硬貨を繰出して入出金口に排出する等、硬貨に関する処理を行う。
 すなわち、紙幣部11、カード・明細票部12、通帳部13、及び硬貨部14は、それぞれ対象媒体から、取引に利用される情報(例えば、取引金額、口座情報)を取得する処理である取引処理を行う。また、取引処理には、取引に利用される情報を取得するために、対象媒体を搬送する媒体搬送処理等の動作処理を含んでもよい。
 操作部15は、利用者から、取引の種別、入出金金額等、取引に関する様々な情報の入力や指定を受け付ける。
 係員操作部16は、運用中に発生した障害の情報や復旧操作情報の案内表示や、保守運用で種々の操作画面情報の表示を行う。
 図2は、ATM10の機能的な構成を示すブロック図である。図2に示すように、ATM10は、紙幣部11、カード・明細票部12、通帳部13、硬貨部14、操作部15が、それぞれ制御部20に接続されている。また、制御部20は、ホストコンピュータ等の外部装置に接続するための通信制御部17に接続されている。以下では、紙幣部11を例に、上記各部の具体的な構成を説明する。
 紙幣部11は、入出金部112と、識別部113と、一時保留部114と、搬送部115と、カセット116とを有し、これらが紙幣制御部111に接続されている。図2に示すように、紙幣部11は、ATM10全体およびATM10を構成する各部の動作を制御する制御部20からの指示を受け、紙幣の繰出し、搬送等を制御するとともに動作結果を制御部20に報告する紙幣制御部111を核として、紙幣の投入、抜き取りを行なう入出金部112や、紙幣の金種識別を行なう識別部113、取引操作者が投入した紙幣を一時的に保留する一時保留部114、それぞれの部位を接続し紙幣を搬送する搬送部115、紙幣を収納する着脱可能な複数のカセット116から構成されている。なお、紙幣部11によっては、一時保留部114がないことや、入出金部112が入金と出金が完全に別の場所となることや、入出金部112の数が異なることもあり、紙幣部11の構成は、図2に限らない。
 図3は、ATM10内の一般的なソフトウェア構成図である。図3に示すように、制御部20には、ATM10の機能や上記各部を管理するための基本的なソフトウェアであるオペレーティングシステム(OS)201と、ATM10や上記各部の動作に必要な様々な情報を記憶するストレージ202と、ATM10の取引操作を受け付けるソフトウェアである業務アプリケーション(AP)203と、業務アプリケーション203と紙幣部11との間で送受信され、紙幣部11等の各部が実行可能なコマンド電文やレスポンス電文を生成する電文提供モジュール(ソフトウェア)であるサービスプロバイダ(SP)204と、上記各部のそれぞれに対応する通信制御部205(紙幣部通信制御部2051、カード・明細票部2052、通帳部通信制御部2053、硬貨部通信制御部2054)と、を有している。
 制御部20内で動作するオペレーティングシステム201上では、上記各部に対応する各種媒体を取扱うモジュール(紙幣部11、カード・明細票部12、通帳部13、硬貨部14のそれぞれで実行されるモジュール)と通信制御を行うモジュール用の通信制御部(紙幣部通信制御部2051、カード・明細票部2052、通帳部通信制御部2053、硬貨部通信制御部2054)、各モジュールと通信する電文の生成や編集、解析を行うサービスプロバイダ204、各モジュールの動作を組み合わせて取引動作を実現する業務アプリケーション203が動作する。その他、ストレージ202には、各動作に必要な情報やプログラム、動作結果記録などが記憶される。ここで、サービスプロバイダ204と業務アプリケーション203が明確に区分けされず、一体化している場合もある。
 制御部20は、ハードウェアとしては、例えば、CPU(Central Processing Unit)及びメモリから構成され、ATM10を構成する上記各部の機能を実現するためのプログラムをストレージ202に記憶している。制御部20は、例えば、ATM10の電源がONされたタイミングで、上記ストレージ202からプログラムを不図示のメモリに読み出して実行することにより、上記機能を実現する。
 なお、上記プログラムは、インストール可能な形式又は実行可能な形式のファイルでUSB(Universal Serial Bus)メモリ等のコンピュータで読み取り可能な記録媒体に記録されて提供したり、インターネット等のネットワークに接続された他のコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより、ストレージ202に提供または配布するように構成しても良い。
 図4は、図3に示したソフトウェア構成において、制御部内の各部およびモジュールにおけるコマンド電文やレスポンス電文の流れを示す図である。図4では、紙幣部11が実行するモジュールの場合について示している。なお、以降では、図3に示すモジュールの通信制御部の図示を省略するが、各通信制御部は、モジュールに対し通信制御を行うものとある。
 図4に示すように、制御部20では、業務アプリケーション203から取引に関する指示を受けると、サービスプロバイダ204が、その指示毎に、紙幣部11に対するコマンド電文C1を生成、編集して出力する。コマンド電文C1としては、例えば、入金処理などの取引を実行する指示を含むコマンドがある。すなわち、サービスプロバイダ204は、紙幣部11が実施可能なコマンドを生成する。ここで、紙幣部11が実施可能なコマンドとは、紙幣部11が理解できるコマンドを意味し、当該コマンドの情報に従い紙幣部が処理又は動作をするコマンドであってよい。すなわち、コマンドに含まれる情報を変更しなくとも紙幣部11が動作する(紙幣部11を直接動作させることができる)コマンドは、実施可能なコマンドに含まれる。なお、制御部20と紙幣部11との間の通信のために、コマンドを一時的に変更した場合であっても、制御部20と紙幣部11とで利用されるコマンドに含まれる情報が同一の場合は、実施可能なコマンドに含まれる。一方、サービスプロバイダ204や、ファンクションライブラリ206でコマンドに含まれる情報(特にコマンドコード)を変換した場合は、実施可能なコマンドに含まれなくともよい。
 紙幣部11は、サービスプロバイダ204からコマンド電文C1を受信すると、そのコマンドに従って処理を実行し、その結果をレスポンス電文R1としてサービスプロバイダ204に返す。レスポンス電文R1としては、例えば、入金取引などの取引で各金種のカセットに収納された紙幣の枚数、偽券と判別された紙幣の枚数、取引の処理が正常終了したか否かを示す取引の処理結果などを含むレスポンスがある。
 サービスプロバイダ204は、上記レスポンス電文R1に応じて、業務アプリケーション203にコマンドC1に対応するレスポンスを送信する。業務アプリケーション203は、レスポンスに基づきコマンドC1の結果を外部へ通知する。
 図3、4に示したソフトウェア構成では、業務アプリケーション203は、銀行側で定められた仕様で提供され、その業務アプリケーション203の仕様に合致するように、モジュール提供先でサービスプロバイダ204を設計する必要があった。この際、モジュール提供先では、モジュール提供元から提供されるモジュールの機能を最大限に引き出して設計することが求められる。しかし、モジュール提供先では、モジュール提供元から提供されるモジュールの仕様や複雑なコマンド電文やレスポンス電文の構造を必ずしも適切に理解することができないまま、サービスプロバイダ204の設計を行っていた。したがって、モジュール提供元が意図したとおりにモジュールの機能が発揮されているとはいえない場合があった。
 そこで、以下に示すように、本実施例では、サービスプロバイダ204からの簡易な指示に従ってモジュールの詳細な機能を実現することができるソフトウェアライブラリをモジュール提供側で設計することにより、モジュール提供先におけるサービスプロバイダ204の設計負担を軽減しつつ、モジュール提供元における技術流出の危険性を低減している。
 図5は、図4に示したソフトウェア構成において、モジュール提供元により設計されるソフトウェアライブラリであるファンクションライブラリ(FL)206を配置したATM10内のソフトウェアの構成図である。
 ATM10は、ファンクションライブラリ206を備えることにより、従来から実施している取引処理(基本処理ともいう)に加え、拡張処理を容易に実施することが可能となる。取引処理は、取引で利用される情報を取得する処理であり、例えば、入金取引又は出金取引などであり、外部から指定された口座に入金する金額又は外部から指定された口座から出金する金額を紙幣部11が計数する処理などがある。また、外部から投入された現金やカード等の媒体から、取引に利用される情報(例えば、取引金額や口座情報等をいう。)を取得する処理も含まれる。
 一方、拡張処理は、取引処理とは異なる処理であり、取引では利用しない情報を取得する処理、取引処理又は拡張処理により取得した情報に基づき、ファンクションライブラリが実施する又は紙幣部11に実施させる処理がある。より具体的には、紙幣部11から状態情報を取得する取得処理と、紙幣部11を動作させる又は紙幣部11に設定をさせる動作処理と、取得処理により取得した情報に基づきファンクションライブラリ206が分析を行う分析処理を含む。取得処理は、例えば、紙幣部11から状態情報(例えば、収納庫毎又は金種などの種別毎に収納されている紙幣の枚数、紙幣部の設定情報、紙幣部の障害情報、ログ情報(紙幣部11の稼働状態を示す稼働ログ、取引処理で紙幣から取得した紙幣画像や記番号などの紙幣ログ))を取得する処理である。また、動作処理は、例えば、取得処理により取得した状態情報に基づき又は外部からの指示により紙幣部11に取引処理とは異なる動作(例えば、紙幣部11の収納している紙幣の計数又は精査など)をさせる又は紙幣部11の設定を変更させる処理である。また、分析処理は、紙幣部11の各部品の稼働ログに基づき、部品の障害発生の予兆検知を行う処理である。
 続いて、ファンクションライブラリ206と、サービスプロバイダ204に関して説明する。ファンクションライブラリ206は、サービスプロバイダ204を経由して外部から受信したコマンドに基づき、紙幣部11等の各部が実行可能なコマンド電文を送信し、紙幣部11等の各部から受信したレスポンス電文をサービスプロバイダ204又は業務アプリケーション203が処理できるレスポンス電文として送信する電文提供モジュールであってよい。また、サービスプロバイダ204は、複数の業務アプリケーション203からの指示に基づき共通して実施される共通処理又は共通して利用されるデータの管理を実施する共通処理部を実現するソフトウェア、即ちミドルウェアであってよい。なお、図3、図4でも説明したように、業務アプリケーション203は、サービスプロバイダ204に取引指示を行うが、サービスプロバイダ204と一体化されている場合もある。そのため、以下では、サービスプロバイダ204、ファンクションライブラリ206、紙幣部11間での処理について説明する。
 次に、図5に示す処理の概要を説明する。サービスプロバイダ204は、紙幣部11に対する動作指示をファンクションライブラリ206に発行し、ファンクションライブラリ206はその動作指示を受け、紙幣部11への適切な動作指示に変換し紙幣部11へ指示する。なお、図4と同様に本図では通信制御部の図示を省略するが、通信制御部が、モジュールに対し通信制御を行っている。
 紙幣部11は指示に従って動作を行い、その結果を、ファンクションライブラリ206に返送する。ファンクションライブラリ206は動作結果に従い、動作記録の収集など必要に応じて紙幣部へ追加動作を指示するなどを行ったり、あるいは動作情報の一部をストレージ202に格納するなど使いこなし技術に従った最適動作を行った上で、サービスプロバイダ204からの指示に対する動作結果をサービスプロバイダ204に返送する。ファンクションライブラリ206は、サービスプロバイダ204からの動作指示をそのまま紙幣部11へ送信することもある、動作指示に含まれる情報を参照し、情報を変更した上で紙幣部11へ送信する場合もある。
 続いて、これらのサービスプロバイダ204とファンクションライブラリ206を、取引処理又は拡張処理のいずれかに応じて、使い分ける技術について説明する。例えば、制御部20は、外部からの指示に基づいて取引処理を紙幣部11に実施させる場合、サービスプロバイダ204が紙幣部11に取引処理を実施させる(実施可能な)コマンド(例えば、コマンドコード)を生成する。また、外部からの指示に基づいて拡張処理を紙幣部11に実施させる場合、ファンクションライブラリ206が拡張処理を実施する又は紙幣部11に拡張処理を実施させる(実施可能な)コマンド(例えば、コマンドコード)を生成するようにしてもよい。なお、この場合、外部からの指示はサービスプロバイダ204を経由してもよいし、経由しなくてもよい。また、外部からの指示がサービスプロバイダ204を経由した場合、サービスプロバイダ204は、紙幣部に拡張処理を実施させるコマンドの生成をできないものでよい。
 なお、上述のコマンドの生成とは、コマンドを新たに生成する意に限られず、既成のコマンドを利用することも含まれる。また、コマンドコードとは、紙幣部に実施させる処理を示す処理毎に固有の情報である。また、紙幣部が実施可能なコマンドコートとは、紙幣部11が理解できるコマンドコードを意味し、当該コマンドコードの情報に従い紙幣部が処理又は動作をするコマンドであってよい。すなわち、コマンドコードを変更しなくとも紙幣部11が動作する(紙幣部11を直接動作させることができる)コマンドコードは、実施可能なコマンドコードに含まれる。なお、制御部20と紙幣部11との間の通信のために、コマンドコードを一時的に変更した場合であっても、制御部20と紙幣部11とで利用されるコマンドコードが同一の場合は、実施可能なコマンドに含まれる。一方、サービスプロバイダ204や、ファンクションライブラリ206でコマンドコードを変換した場合は、実施可能なコマンドコードには含まれなくともよい。
 取引処理と、拡張処理とを異なるミドルウェアのそれぞれが、紙幣部11に実施可能なコマンドを生成するようにしたことで、拡張処理の技術秘匿と機能拡張や変更に伴う設計工数の削減の両立が可能となる。また、この場合、上述のように、ファンクションライブラリ206は、サービスプロバイダ204が生成した紙幣部11に取引処理を実施させるコマンドに関しては、そのまま(コマンドコードを変更することなく)紙幣部11へ送信してもよい。そのまま紙幣部11に送信することにより、取引処理を実施している既存の制御部20のサービスプロバイダ204の設計変更を抑制することが可能となる。
 以下では、図5を用いて、制御部20が、取引処理を実施する場合に、ファンクションライブラリ206が取引処理及び拡張処理を紙幣部11に実施させる例について説明する。なお、上記同様取引処理のコマンドコードは、サービスプロバイダ204が生成してもよい。
 より具体的には、図5に示すように、制御部20では、業務アプリケーション203から取引に関する指示を受けると、サービスプロバイダ204が、その指示に従って、ファンクションライブラリ206に対するコマンド電文Ca1を生成、編集して出力する。コマンド電文Ca1としては、例えば、入金処理を実行する指示を含むコマンドがある。図5に示すコマンド電文Ca1と、図4に示したコマンド電文C1とは同じ電文を用いることができる。
 ファンクションライブラリ206は、サービスプロバイダ204からコマンド電文Ca1を受信すると、そのコマンドに従って、紙幣部11に対するコマンド電文Cb1を生成、編集して出力する。コマンド電文Cb1としては、例えば、上記指示に含まれる入金処理を実行するコマンドのほか、カセットの金種の指定、偽券の取扱方法、紙幣受け付け率の指定を含むコマンドがある。また、コマンド電文Cb1には、現時点における紙幣部11の状態を示す状態情報を取得するためのコマンドが含まれる。上記状態情報を取得するためのコマンドとしては、例えば、ログ情報を収集するコマンドがある。
 紙幣部11は、コマンド電文Cb1を受信すると、これらのコマンドに従って処理を実行し、その結果をレスポンス電文Rb1としてファンクションライブラリ206に返す。レスポンス電文Rb1としては、例えば、指定された金種のカセットに収納された紙幣の枚数、偽券と判別された紙幣の枚数、処理した際の紙幣の受け付け率、処理が正常終了したか否かを示す処理結果を含むレスポンスがある。
 ファンクションライブラリ206は、上記レスポンス電文Rb1に応じた次の処理を実行するためのコマンド電文Cb2を生成、編集して出力する。例えば、ファンクションライブラリ206は、レスポンス電文Rb1として、指定された金種の紙幣のカセットの収納枚数が、あらかじめ定められた閾値以上である場合やこれ以上紙幣を受け付けられないため入金の取引を停止させる等の問い合わせを含む場合には、他のカセットに回収する指示をコマンド電文Cb2として出力し、コマンド電文Cb2に対するレスポンス電文Rb2を受信する。
 以降、ファンクションライブラリ206は、業務アプリケーション203から指示された取引が完了するまで、紙幣部11との間でコマンド電文およびレスポンス電文の受け渡しを行う。紙幣部11から、業務アプリケーションより指示された取引に関する処理の終わりを示すレスポンスRbNを受信すると、ファンクションライブラリ206は、サービスプロバイダ204に業務アプリケーションから指示された取引に関する処理の終わりを示すレスポンスRaNを送信する。サービスプロバイダ204は、当該レスポンスに基づき、業務アプリケーション203により、外部に取引の結果を通知する。
 なお、図4の場合と異なり、図5では、サービスプロバイダ204が生成するコマンド電文は、紙幣部11等の各部が実行不能な内容又は実行可能な内容のいずれであってもよい。実行不能な場合、ファンクションライブラリ206は、サービスプロバイダ204により送信された紙幣部11等の各部が実行不能なコマンド電文に基づき、紙幣部11等の各部が実行可能なコマンド電文を生成又は変更し、紙幣部11等の各部から受信したレスポンス電文を、サービスプロバイダ204が処理できるレスポンス電文に変換して、サービスプロバイダ204に送信してもよい(詳細に関しては、後述する。)。一方、ファンクションライブラリ206は、実行可能なコマンドの場合は、そのまま紙幣部11等とへ送信し、紙幣部11から受信したレスポンスをそのままサービスプロバイダ204に返信してもよい。
 このように、本実施例では、サービスプロバイダ204と紙幣部11との間にファンクションライブラリ206を設けることにより、サービスプロバイダ204が第一のコマンド(例えば、コマンド電文Ca1)をファンクションライブラリ206に送信し、第一のコマンドに対応する第一のレスポンス(例えば、レスポンスRaN)をファンクションライブラリ206から受信するまでの間に、ファンクションライブラリ206が、サービスプロバイダ204に問い合わせる(レスポンス電文及びコマンド電文の送受信する)ことなく、第一のコマンドに基づき、モジュールに対する複数の第二のコマンド(例えば、コマンド電文Cb1、コマンド電文Cb2)の送信及び複数の第二のコマンドそれぞれに対応する第二のレスポンス(例えば、レスポンス電文Rb1、レスポンス電文Rb2)を受信する。これにより、サービスプロバイダ204は、ファンクションライブラリとの間での、第一のコマンド及び第一のレスポンスの数を抑制することが可能となる。
 また、ファンクションライブラリは、一の第二のコマンドに対応する一の第二のレスポンス(例えば、レスポンス電文Rb1)の内容に基づき、一の第二のコマンドの次にモジュールに送信する次の第二のコマンド(コマンド電文Cb2))の種類を判断するようにしてもよい。この場合、ファンクションライブラリは、モジュールに対して、モジュールの状態に適したコマンドを選択して送信することが可能となり、モジュールへのコマンド送信及びレスポンス受信の数の抑制などによるATM10のシステム資源の効率的な利用ができる。
 また、外部からの指示に基づき、サービスプロバイダ204が紙幣部11に紙幣を搬送させて実行する入金取引又は出金取引等の取引処理を実行させる上述の第一のコマンドである取引コマンドを送信し、ファンクションライブラリ206は、取引コマンドに基づき、取引では使用されない状態情報を含むログ情報を収集する情報取得コマンドを生成し、紙幣部11に送信し拡張処理を実行してもよい。なお、状態情報は、紙幣部11が紙幣を搬送させたことにより生じる紙幣部11の稼働情報、紙幣部11が取引前若しくは後で保持している紙幣の種類毎の収納情報、紙幣部11の部品毎のエラー情報を示す部品情報などを含む情報であってよい。さらには、ファンクションライブラリ206は、取引コマンドに基づき紙幣部11から取得した情報は、サービスプロバイダ204に送信し、情報取得コマンドに基づき紙幣部11が取得したログ情報は、サービスプロバイダ204には送信しないように処理する。この場合、ファンクションライブラリ206は、ログ情報をストレージ202に収納してもよい。
 また、ファンクションライブラリ206は、サービスプロバイダ204により生成された紙幣部11等の各部が実行不能なコマンドに基づき、紙幣部11等の各部が実行可能なコマンドを生成又は変更してもよい。
 また、処理の種類(例えば、拡張処理)によっては、サービスプロバイダを204介さずに、ファンクションライブラリ206が外部からの第一のコマンドに基づき紙幣部11が実行可能な一の第二のコマンドを生成し、紙幣部11へ送信し、紙幣部11から受信した一の第二のコマンドに対する一の第二のレスポンスに基づき、紙幣部11が実行可能な他の第二のコマンドを生成し、紙幣部11に送信してもよい。
 このように、ファンクションライブラリ206を設け、上述の処理を実施させることで、モジュール提供先では、サービスプロバイダ204を設計する負荷を抑制できるとともに、モジュール提供元では技術流出の懸念がなくなる。また、モジュールの運用や保守に必要な機能において動作履歴を活用することができる。また、図6は、図5に示したモジュールがサブモジュールを含む場合のソフトウェアの構成図である。図6に示す例では、図5に示したモジュールである紙幣部11が、内部に1階層のサブモジュールである識別部113を有している。また、制御部20には、上記識別部113に対応する識別部通信制御部が設けられている(不図示)。すなわち、制御部20は、紙幣部11と接続されると共に、紙幣部11を介さずに識別部113とも接続されている。
 制御部20では、業務アプリケーション203から取引に関する指示を受けると、サービスプロバイダ204が、その指示に従って、ファンクションライブラリ206に対するコマンド電文Ca1を生成、編集して出力する。コマンド電文Ca1としては、例えば、入金処理を実行する指示を含むコマンドがある。図5に示すコマンド電文Ca1と、図4に示したコマンド電文C1とは同じ電文を用いることができる。
 ファンクションライブラリ206は、サービスプロバイダ204からコマンド電文Ca1を受信すると、そのコマンドを解析し、モジュールである紙幣部11に対するコマンド電文CbM1と、サブモジュールである識別部113に対するコマンド電文CbS1を生成、編集して出力する。コマンド電文CbM1としては、図5の場合と同様のコマンドがある。また、コマンド電文CbS1としては、例えば、紙幣の真偽判定のための閾値の設定を含むコマンドがある。この場合も、コマンド電文CbM1と同様に、現時点における紙幣部11の状態を示す状態情報を取得するためのコマンドを含めてもよい。
 識別部113は、コマンド電文CbS1を受信すると、これらのコマンドに従って処理を実行し、その結果をレスポンス電文RbS1としてファンクションライブラリ206に返す。レスポンス電文RbS1としては、例えば、紙幣の真偽判定のための閾値を含むレスポンスがある。
 ファンクションライブラリ206は、レスポンス電文RbM1を受信した場合と同様に、上記レスポンス電文RbS1に応じた次の処理を実行するためのコマンド電文CbS2を生成、編集して出力し、業務アプリケーション203から指示された取引が完了するまでコマンド電文およびレスポンス電文の受け渡しを行う。
 すなわち、識別部113は、制御部20が紙幣部11へ送信したコマンドに基づき取引処理における紙幣の識別を実施すると共に、制御部20が紙幣部11を介さずに識別部113に送信したコマンドに基づき、取引処理とは異なる処理(例えば、拡張処理)を実施する。
 このように、識別部113を、直接(紙幣部11を経由せず)、ファンクションライブラリ206(又は制御部20)と接続することで、識別部113への専用の動作指示や識別部113が持つ多量情報の収集を行うことができる。ここでは、ファンクションライブラリ206は、識別部通信制御部(不図示)を介して識別部113と通信を行なうため、紙幣部11との通信と並行で処理することで、サービスプロバイダ204からコマンドが発行されてからレスポンスを返すまでの処理時間を短縮することができる。
 また、ファンクションライブラリ206は、サービスプロバイダ204からの1のコマンド電文に基づき、紙幣部11へのコマンド電文と、識別部113へのコマンド電文を生成してもよい。これにより、サービスプロバイダ204からのコマンド電文の指示の回数を抑制することが可能になり、モジュール提供先では、従来のように、サービスプロバイダ204を設計する必要がなくなるとともに、モジュール提供元では技術流出の懸念がなくなる。なお、本例では、モジュールが1階層の1つのサブモジュールを有している場合について説明したが、モジュールが多数階層の複数のサブモジュールを有している場合にも同様に適用することができる。この場合にはさらに上記処理時間を短縮することができる。続いて、本実施例で行われる処理について説明する。
 図7は、ファンクションライブラリ206のライセンス管理や正しいモジュールが接続されているかを検証することを目的としたなりすまし防止機能を持たせた紙幣部接続処理フローの例を示す。本処理は、例えば、ATM10の電源がONされたときに実行される。
 紙幣部接続処理(701)では、ファンクションライブラリ206は、紙幣部11と回線接続を行なうコマンド電文を生成し、紙幣部通信制御部2051に出力する。紙幣部通信制御部2051は、所定の通信手順を含むコマンド電文を生成し、紙幣部11に対する回線接続を行う(702)。ファンクションライブラリ206は、紙幣部通信制御部2051から紙幣部11と回線接続できた旨のレスポンス電文を受信したか否かを判定し(703)、接続できた旨のレスポンス電文を受信しなかったと判定した場合(703;No)、紙幣部11からのレスポンス電文に含まれる接続不可を示す理由(例えば、通信タイムアウト、紙幣部11の電源off等のエラーを示すメッセージやコード)をサービスプロバイダ204に通知し(710)、本処理を異常終了させる(713)。
 一方、ファンクションライブラリ206は、接続できた旨のレスポンス電文を受信したと判定した場合(703;Yes)、そのレスポンス電文に含まれる紙幣部のタイプ(型式)を示す紙幣部種別や紙幣部のハードウェア毎に固有のシリアル番号等の紙幣部を識別する情報を含む構成情報を読み取る(704)。読み取った構成情報の例を図8に示す。
 図8に示すように、構成情報には、モジュールである紙幣部11のハードウェア構成(例えば、カセットの数量、国や地域情報、入出金口の配置等の情報がある。)、シリアル番号、ファームウェアのバージョン数のほか、サブモジュールである識別部のシリアル番号、ファームウェアのバージョン数が含まれている。
 続いて、ファンクションライブラリ206は、あらかじめストレージ202に記憶したATM10の有するライセンス許可情報と、ステップ704で読み取った構成情報とを参照し、読み取った構成情報がライセンス許可情報に登録されているか否かを判定する(705)。本例では、ライセンス許可情報がストレージ202に記憶されているが、ファンクションライブラリ206に記憶されていてもよい。ライセンス許可情報は、使用が許可された紙幣部11を識別するための情報である。
 ライセンス許可情報の例を図9に示す。ここでは動作を許可するライセンス許可シリアル番号をテーブル形式で保持している。図9では、ある種別(型式XXXXX-XX)の紙幣部について、そのハードウェア構成、ライセンスが許可された複数のシリアル番号が登録されていることがわかる。図9のように、上記シリアル番号をすべて格納するほか、ある番号から他の番号まで、というようにシリアル番号を特定の範囲で指定して許可するか、ある桁の特定数値を指定することにより許可するといった手法により、紙幣部が許可された紙幣部であるか否かを判定してもよい。
 ファンクションライブラリ206は、ステップ705で、読み取った構成情報がライセンス許可情報に登録されていないと判定し(705;No)、使用不可と判断したときには、サービスプロバイダ204にその旨を通知し(711)、処理を異常終了させる(713)。この場合、サービスプロバイダ204は、使用不可の情報を外部(ATM10が接続された上位装置やATM10の表示部(例えば、操作部15、係員操作部16))に通知してもよい。
 一方、ファンクションライブラリ206は、ステップ705で、読み取った構成情報がライセンス許可情報に登録されていると判定し(705;Yes)、使用可能と判断したときには、紙幣部11に対するコマンド電文を生成し、紙幣部通信制御部2051に出力する。紙幣部通信制御部2051は、所定の通信手順を含むコマンド電文を生成し、紙幣部11の初期化処理を実行するコマンド電文を生成し、紙幣部11は、そのコマンド電文に従って初期化処理を実行する(706)。ファンクションライブラリ206は、紙幣部11が正常に初期化できたことを示すレスポンス電文を、紙幣部通信制御部2051を介して紙幣部11から受信したか否かを判定する(707)。紙幣部11の初期化の例としては、使用するカセットの金種の指定や、紙幣受け付け率の設定がある。
 ファンクションライブラリ206は、紙幣部11が正常に初期化できたことを示すレスポンス電文を受信したと判定した場合(707;Yes)には、サービスプロバイダ204に初期化が正常した旨を通知し(708)、接続処理を正常終了する(709)。一方、ファンクションライブラリ206は、紙幣部11が正常に初期化できたことを示すレスポンス電文を受信しなかったと判定した場合(707;No)、初期化ができなかった旨をサービスプロバイダ204に通知し(712)、処理を異常終了する(713)。
 図10は、ファンクションライブラリ本体機能の基本処理フローを例として示す。本処理は、例えば、ファンクションライブラリ206が、S701、S1002、S1013を、ATM10の電源がONされたときに実行し、S1003~S1012、S1014をサービスプロバイダ204からのコマンドの受信に応じて実行してよい。
 まず、本処理では、図7に示した紙幣部接続処理を実行し(701)、ファンクションライブラリ206は、紙幣部11に接続できなかったときには接続不可として不可理由をサービスプロバイダ204に通知し、再接続指示待ちとする(1002;No、1013)。一方、ファンクションライブラリ206は、紙幣部11に正しく接続できたときには、サービスプロバイダ204からのコマンドを受信する(1003)。ステップ1003においてサービスプロバイダ204からコマンドを受信したときに次のステップに進み、ファンクションライブラリ206は、コマンドに対応した登録処理内容を処理内容テーブルの中から検索する。
 図11は、処理内容テーブルの例を示す図である。処理内容テーブルは、サービスプロバイダ204から受け取ったコマンドに対するモジュールである紙幣部11への処理の順序を決める処理シーケンスを定めたテーブルである。本例ではモジュールへの処理シーケンスを定めているが、図6に示したようにモジュールがサブモジュールを有している場合には、モジュールと同様に定めることができる。
 図11に示すように、処理内容テーブルには、サービスプロバイダ204から受け取ったコマンドを識別するための番号と、その番号により識別されるコマンドと、そのコマンドの実行が許可されたものであるか否かを示す許可区分と、そのコマンドを受け取ったときに実行する処理シーケンスとが対応付けて記憶されている。
 なお、ファンクションライブラリ206は、モジュールに対して発行するコマンドの種別毎にID等を付与し、コマンドの発行回数をカウントするようにしても良い。また、併せてコマンド発行の時刻や、モジュールの実行した処理が正常に終了したか否かを示す終了情報を管理しても良い。これにより、ファンクションライブラリ206でコマンドによるモジュールの動作状況(動作正常終了の回数や動作異常終了の回数等)を詳細に把握することができる。また、モジュール提供元では、該モジュールの動作状況に基づきモジュール提供元でのファンクションライブラリ206の使用状況を把握することができる。
 ファンクションライブラリ206は、このような処理内容テーブルを用いてサービスプロバイダ204から受信したコマンドを検索し、まず、登録の有無および使用許可されているか否かを判定する(1005)。
 ファンクションライブラリ206は、サービスプロバイダ204から受信したコマンドが処理内容テーブルに登録されており、かつ使用許可されていると判定した場合(1005;Yes)、次の処理に進む。一方、ファンクションライブラリ206は、サービスプロバイダ204から受信したコマンドが処理内容テーブルに登録されており、かつ使用許可されていないと判定した場合(1005;No)、実行が許可されていないコマンドを受信したとして、処理が実行できない旨をサービスプロバイダ204に返送する(1014)。
 一方、ファンクションライブラリ206は、使用許可を確認した場合は(1005;Yes)、モジュールに対してどのような動作を指示するのかを決定するための指示決定処理(1006~1010)を実行する。ファンクションライブラリ206は、処理対象とするシーケンス番号を初期化する(1006)。このシーケンス番号は、制御部20内のメモリ(不図示)に記憶しておく。
 次に、ファンクションライブラリ206は、図11に示した処理内容テーブルを参照し、ステップ1003で受信したコマンドに対応する処理シーケンスのうち、初期化したシーケンス番号に対応するモジュールである紙幣部11へのコマンド電文を生成し、紙幣部通信制御部2051を介して、生成したコマンド電文を紙幣部11に送信する(1007)。ステップ1007で送信されたコマンド電文に従って、紙幣部11が処理を実行すると、ファンクションライブラリ206は、その動作結果を含むレスポンス電文を受信する(1008)。
 ファンクションライブラリ206は、モジュールから受信したレスポンス電文を解析してモジュールの動作結果を確認する。ファンクションライブラリ206は、図11に示した処理内容テーブルの現在のシーケンス番号と、モジュールの動作結果とを参照して、次に行うべき処理のシーケンス番号を決定する(1009)。ファンクションライブラリ206は、決定したシーケンス番号がその処理シーケンスの中で最後のシーケンス番号であるか否かを判定し(1010)、決定したシーケンス番号がその処理シーケンスの中で最後のシーケンス番号でないと判定した場合(1010;No)、ステップ1007に戻って以降の処理を繰り返す。
 一方、ファンクションライブラリ206は、決定したシーケンス番号がその処理シーケンスの中で最後のシーケンス番号であると判定した場合(1010;Yes)、サービスプロバイダ204へのレスポンス電文を生成し(1011)、サービスプロバイダ204にレスポンス電文を返送する(1012)。
 以下、図10に示したステップ1003以降の処理を、より具体的に説明する。ステップ1003において、ファンクションライブラリ206は、入金処理の実行指示を含むコマンド電文をサービスプロバイダ204から受信すると、ステップ1004、1005において、図11に示した処理内容テーブルに入金コマンドとその許可区分が許可であることを確認する。続いて、ファンクションライブラリ206は、ステップ1006において、シーケンス番号を「1」に初期化する。
 さらに、ファンクションライブラリ206は、ステップ1007において、入金コマンドに対応する処理シーケンスのうち、初期化したシーケンス番号に対応する順序で行うコマンド電文である入金コマンドを読み取り、モジュールである紙幣部11へのコマンド電文を生成する(C1101)。ファンクションライブラリ206は、生成したコマンド電文を、紙幣部通信制御部2051を介して紙幣部11に送信する。
 ファンクションライブラリ206は、ステップ1008において紙幣部11からコマンド電文に対する処理の実行結果を含むレスポンス電文を受信し、その実行結果を解析する。ファンクションライブラリ206は、ステップ1009において、レスポンス電文を解析した結果、紙幣部11における処理が正常終了したと判定した場合にはシーケンス番号2に進み、ログ収集1(例えば、正常ログの収集処理)のコマンド電文を生成する(C1102)。ファンクションライブラリ206は、生成したコマンド電文を、紙幣部通信制御部2051を介して紙幣部11に送信する。さらに、ファンクションライブラリ206は、ステップ1010において、入金処理のシーケンス(図11における番号2のシーケンス)が全て終了したか否かを判定する。この場合には、次のシーケンス番号が指定されていないため、ステップ1011、1012に進み、ファンクションライブラリ206は、紙幣部11から正常ログの収集処理の実行結果を含むレスポンス電文を受信し、その実行結果を解析する。ファンクションライブラリ206は、レスポンス電文を解析した結果、正常ログの収集処理が正常終了したと判定した場合には、入金処理が正常に終了したことを示すレスポンス電文を生成し(C1103)、生成したレスポンス電文をサービスプロバイダ204に送信する。一方、ファンクションライブラリ206は、レスポンス電文を解析した結果、正常ログの収集処理が異常終了したと判定した場合には、ステップ1011、1012において、入金処理が異常終了したことを示すレスポンス電文を生成し(C1104)、生成したレスポンス電文をサービスプロバイダ204に送信する。
 上記処理と同様に、ファンクションライブラリ206は、ステップ1009において、レスポンス電文を解析した結果、紙幣部11における処理が正常終了しなかったと判定した場合にはシーケンス番号3に進み、ログ収集2(例えば、障害ログの収集処理)のコマンド電文を生成し(C1105)、生成したコマンド電文を、紙幣部通信制御部2051を介して紙幣部11に送信する。さらに、ファンクションライブラリ206は、ステップ1010において、入金処理のシーケンスが全て終了したか否かを判定する。この場合には、次のシーケンス番号が指定されていないため、ステップ1011、1012に進み、ファンクションライブラリ206は、紙幣部11から異常ログの収集処理の実行結果を含むレスポンス電文を受信し、その実行結果を解析する。
 ファンクションライブラリ206は、レスポンス電文を解析した結果、障害ログの収集処理が正常終了したと判定した場合には、入金処理が異常に終了したことを示すレスポンス電文を生成し(C1106)、生成したレスポンス電文をサービスプロバイダ204に送信する。また、ファンクションライブラリ206は、レスポンス電文を解析した結果、障害ログの収集処理が異常終了したと判定した場合には、ステップ1011、1012において、入金処理が異常終了したことを示すレスポンス電文を生成し(C1107)、生成したレスポンス電文をサービスプロバイダ204に送信する。
 すなわち、シーケンス番号3の場合、処理の異常終了としては、入金処理自体が異常終了したこと、障害ログ収集が異常終了したことの2つのケースがあるが、このような場合であっても、サービスプロバイダ204に対しては、いずれの場合も入金処理が異常終了したことだけを示すレスポンス電文を生成する。したがって、サービスプロバイダ204に対しては、従来どおり、入金処理が異常終了したことだけがレスポンス電文として通知される。
 このように、本実施例では、サービスプロバイダ204から受信した第一のコマンドに従ってモジュールが処理を実行する場合、ファンクションライブラリ206が、その第一のコマンドと処理内容テーブルとを参照し、その第一のコマンドに基づくモジュールとの第二のコマンド/レスポンスのシーケンスを解析し、サービスプロバイダ204から受信した第一のコマンドごとに、モジュールとの第二のコマンド/レスポンスのシーケンスに基づく処理を実施した上で、サービスプロバイダへの第一のレスポンス電文を生成する。言い換えると、ファンクションライブラリは、一の第二のコマンドに対するモジュールからの応答である一の第二のレスポンスの情報に基づき、次にモジュールに送信する他の第二のコマンドを決定する。
 より詳細には、制御部が、一の第二のレスポンスの情報毎に、次に生成する他の第二のコマンドの情報を記憶した処理内容情報を有し、ファンクションライブラリは、処理内容情報に基づき、モジュールから受信した一の第二のレスポンスの情報に対応する他の第二のコマンドの情報を含む他の第二のコマンドを送信している。このため、モジュールの提供元では、モジュールの提供先に委ねざるを得なかった機能の設計を自らおこなえる。また、モジュール提供先にとっては、複雑なコマンドレスポンス電文等の解析をすることなくサービスプロバイダの設計ができる。
 図12は、上記実施例で送受信されるコマンド電文のフォーマットの例を示す図である。図12に示すように、コマンド電文のフォーマットには、コマンド電文の長さを示す電文長と、サービスプロバイダから送信されたコマンドを示すコマンドコードと、紙幣の受け入れ可能枚数を示す合計受付可能枚数と、金種ごとの受け入れ可能枚数を示す金種1受付可能枚数~金種4受付可能枚数と、コマンド電文の拡張コマンドを設定するためのリザーブと、電文の妥当性を確認するためのチェックコードとが含まれる。図10、11の例では、サービスプロバイダ204から送信された入金コマンドがコマンドコードに設定されている。
 図13は、上記実施例で送受信されるレスポンス電文のフォーマットの例を示す図である。図13に示すように、レスポンス電文のフォーマットには、レスポンス電文の長さを示す電文長と、モジュールが実行したコマンドを示すコマンドコードと、コマンドの実行結果を示す動作結果コードと、コマンド実行時に発生したエラーを示すエラーコードと、コマンドを実行して実際に紙幣が受け入れられた枚数を示す合計受付枚数と、金種ごとの受け入れ枚数を示す金種1受付枚数~金種4受付枚数と、リジェクトされた紙幣枚数を示すリジェクト件数と、レスポンス電文の拡張コマンドを設定するためのリザーブと、電文の妥当性を確認するためのチェックコードとが含まれる。図10、11の例では、紙幣部11が実行した入金コマンドがコマンドコードに設定されている。
 図12、13は入金取引に利用されるコマンドに関し説明したが、出金取引など他の取引に利用される出金コマンドであっても、同様である。すなわち、紙幣取引を指示する紙幣取引コマンドは、コマンドの種別を示すコマンドコードと、紙幣の種類毎に取引可能な枚数を示す取引可能枚数を含んでよい。また、紙幣取引の結果を返信する紙幣取引レスポンスは、当該レスポンスに対応する紙幣取引コマンドの種別を示すコマンドコードと、紙幣部が計数した紙幣の種類毎の枚数である取引枚数を含む。
 なお、上記実施例では、レスポンス電文としてリザーブには拡張用のコマンドを設定することなくやり取りした。しかし、例えば、紙幣部11が入金計数動作を実行したときに投入口に返却した紙幣がある場合、その返却紙幣が計数動作を実行した結果リジェクトした紙幣である場合には、再度入金計数動作を実行することで、その返却紙幣を読み取ることができる可能性がある。しかし、返却紙幣が繰出し不良に伴うものであったときは、再度入金計数動作を行なうとジャム異常になる懸念がある。したがって、このような場合には、そのまま返却紙幣有りというレスポンス電文を送信し、その返却紙幣については再度読み取らずに処理を終了させるほうが好ましい場合もある。したがって、図14に示すように、紙幣部11が上記リザーブに投入口繰出し状況1401の判定結果を含めてレスポンス電文を送信してもよい。レスポンス電文はコマンド電文に対して返送されるため、図12に示したコマンド電文のリザーブに、投入口繰出し状況1401を通知するコマンドを設定しておけばよい。このように、図13に示したレスポンス電文例に、投入口繰出し状況等の、紙幣部11を構成する各部の詳細な状況を示す付加情報を含めることにより、そのレスポンス電文を受信したファンクションライブラリ206は、その情報を用いてさらに細かい制御を行なうことができる。
 図15は、レスポンス電文に上述した状態情報などの付加情報を含めて返送した場合の処理内容テーブルの例を示す図である。図15では、紙幣部11が入金計数を実行したときに上記付加情報を含めたレスポンス電文を送信する場合の例を示している。また、図16は、上記付加情報を含めた場合のファンクションライブラリ本体機能の基本処理フローを例として示す図である(例えば、拡張処理に含まれる動作処理などがある)。図16では、図10のステップと同一のステップについては同一の符合を付してその説明を省略している。また、図10同様、例えば、ファンクションライブラリ206は、S701、S1002、S1013を、ATM10の電源がONされたときに実行し、S1003~S1008、S1010~S1012、S1014、S1061をサービスプロバイダ204からのコマンドの受信に応じて実行してよい。
 図10に示したC1101の場合と同様、ステップ1006~1008では、ファンクションライブラリ206は、初期化したシーケンス番号に対応する順序で行うコマンド電文である入金コマンドを読み取り、上記付加情報として投入口繰出し状況1401を判定するためのコマンドを含むコマンド電文を生成する。そして、ファンクションライブラリ206は、そのコマンド電文を、紙幣部通信制御部2051を介して紙幣部11に送信し、そのコマンド電文にしたがって処理されたレスポンス電文を、紙幣部11から受信し、その実行結果を解析する。
 このとき、ファンクションライブラリ206は、ステップ1601において、図15に示した処理内容テーブルを参照し、返却媒体ありかつ繰出し不良なしを示す旨の実行結果を示す投入口繰出し状況1401を含むレスポンス電文を紙幣部11から受信したか否かを判定する(C1501)。ファンクションライブラリ206は、返却媒体ありかつ繰出し不良なしを示す旨の実行結果を示す投入口繰出し状況1401を含むレスポンス電文を受信したと判定した場合、シーケンス番号2に進み、再度入金コマンドを含むコマンド電文を紙幣部11に送信する(C1502)。このように、ファンクションライブラリ206は、紙幣部11から受信したレスポンス電文の付加情報を参照して再度入金コマンドを発行すべきか否かを判定しているので、リジェクト紙幣の低減を図ることができる。
 一方、ファンクションライブラリ206は、返却媒体ありかつ繰出し不良なしを示す旨の実行結果を示す投入口繰出し状況1401を含むレスポンス電文を受信したと判定した場合、シーケンス番号3に進み、図10の場合と同様に、ログ収集1を実行し、そのまま処理を終了する。処理を終了する理由は、返却紙幣があっても、繰出し不良が発生していたときには再度入金を行なうとジャムになる可能性があり、そのまま動作終了したほうが高い信頼性が得られるためである。
 すなわち、サービスプロバイダから受信した第一のコマンドに基づき、ファンクションライブラリ206が、紙幣部11に第二のコマンドを送信し、紙幣部から状態情報を含む第二のレスポンスを受信し、当該状態情報に応じた処理を実行した上で、サービスプロバイダに第一のレスポンスを送信することで、サービスプロバイダは、複雑な処理を実施する必要がなくなる。
 また、上記実施例では、図9に示したように、シリアル番号が登録されている紙幣部11についてのみ図11に示した処理内容テーブルの許可区分を「有」として定義し、コマンドの実行を許可することとした。しかし、モジュールの提供先によって、ライセンスを与えるレベルを分け、どのようなレベルのコマンドを実行させるのかをモジュールの提供元が定めておくことが望ましい場合もある。そこで、以下では、許可区分を「有無」だけでなく、ライセンスレベルに応じて分けて定義する場合について説明する。
 図17は、ライセンスレベルを含めて定義したライセンス許可情報の例を示す図である。図17に示すように、本例では、紙幣部種別及び型式に対応付けてライセンスレベルが記憶されている。図17では、ライセンスレベル1(基本機能のみ許可するレベル)、ライセンスレベル2(基本機能および拡張機能を許可するレベル)として定義されているため、シリアル番号1、2の紙幣部については拡張機能として提供されるコマンド電文およびレスポンス電文のやり取りが可能となる。なお、ライセンス許可シリアル番号として紙幣部の製造番号を用いることにより、紙幣部1つ1つの装置を識別することができるが、故障等に伴う紙幣部の入れ替えや修理を考慮する場合、紙幣部の製造番号とは別にライセンス管理専用のユニークな番号を用いてもよい。
 図18は、図17に示したライセンス許可情報を用いた場合の処理内容テーブルの例を示す図である。図18に示すように、ライセンスレベルを設けたときの処理内容テーブルには、許可区分に代えて許可区分レベル1801が定義されている。この例では、ライセンスレベルが1、2のいずれの紙幣部でもリセットコマンド、入金コマンド、収納コマンドのそれぞれと、これらのコマンドに対応する処理シーケンスの実行が可能である一方、自動精算コマンドおよびこれに対応する処理シーケンスは、拡張機能であるため、ライセンスレベルが2の紙幣部にのみ許可していることがわかる。以上のように、処理内容テーブルには、複数の取引機能及び拡張機能のコマンドとそのコマンドに対応する処理シーケンスの情報が格納されると共に、紙幣部は複数の取引機能又は拡張機能のうちいずれの機能の実行を許可されているかを指定するライセンス情報をさらに含むようにすることができる。
 さらに、出金コマンドについては、ライセンスレベルに応じて、実行する処理シーケンスを分けて定義されている。ライセンスレベルが1の場合には、基本機能として出金処理とログ収集を実行する処理シーケンスである一方、ライセンスレベルが2の場合には、拡張機能として出金処理とログ収集のほか、回収やリセットの実行が可能な処理シーケンスであることがわかる。本例では、1つの処理内容テーブルに複数のライセンスレベルのそれぞれに対応する処理シーケンスを定義しているが、ライセンスレベルごとに処理テーブルを設けてもよい。以上のように、紙幣部毎にライセンスレベルを設定することにより、実行する機能の適否を柔軟に設定することができる。
 図19は、図17に示したライセンス許可情報を用いた場合のファンクションライブラリ本体機能の基本処理フローを例として示す図である。図19では、図10のステップと同一のステップについては同一の符合を付してその説明を省略している。また、図10、1619と同様に、一部の処理をATM10の電源がONされたときに実行し、残りの処理をサービスプロバイダ204からのコマンドの受信に応じて実行してよい。
 ファンクションライブラリ206は、ステップ103において、入金処理の実行指示を含むコマンド電文をサービスプロバイダ204から受信すると、ステップ1004、1901において、図11に示した処理内容テーブルに入金コマンドとその許可区分レベルを確認する。具体的には、ファンクションライブラリ206は、自装置のシリアル番号に対応するライセンスレベルを図17に示したライセンス許可情報から読み取る。ファンクションライブラリ206は、読み取ったライセンスレベルが図18に示した処理内容テーブルの入金コマンドに対応する許可区分レベルに設定されているか否かを判定し、読み取ったライセンスレベルが上記許可区分レベルに設定されていないと判定した場合には、図10の1014と同様に、処理が実行できない旨をサービスプロバイダ204に返送する。一方、ファンクションライブラリ206は、図10の場合と同様に、ステップ1006以降の処理を実行する。
 このように、ファンクションライブラリ206は、モジュールに与えられたライセンスレベルに応じてコマンド電文およびレスポンス電文の実行可否を判定しているので、モジュール提供先が保有するライセンスのレベルに応じて、どのような機能をモジュール提供先に開示するのかを、モジュール提供元主導で設計することができる。
 また、上記実施例では、サービスプロバイダ204とファンクションライブラリ206との間のコマンド電文およびレスポンス電文と、ファンクションライブラリ206と紙幣部116との間のコマンド電文およびレスポンス電文とを、同じフォーマットで実行する場合について説明した。しかし、サービスプロバイダ204とファンクションライブラリ206との間のコマンド電文およびレスポンス電文を蓄積して解析する等により、ファンクションライブラリ206がどのようなコマンドを受信した場合にどのような処理シーケンスを実行するのかがモジュール提供先に漏洩し、モジュールの提供元からモジュールの提供先への技術流出の懸念が残る。そこで、以下では、モジュール使いこなし技術の隠蔽化を目的として、コマンド電文の一部を改変した場合について説明する。
 図20は、ファンクションライブラリ206とモジュールである紙幣部11との間のコマンド電文のフォーマットの例を示す図である。図12で示したコマンド電文のフォーマットが、サービスプロバイダ204とファンクションライブラリ206との間のコマンド電文とした場合を例に説明する。図12では、ファンクションライブラリ206がサービスプロバイダ204から受け取るコマンド電文のコマンドコードの値が$1000であるところ、図20では、紙幣部11がファンクションライブラリ206から受け取るコマンド電文のコマンドコード2001の値が$7100となっていることがわかる。すなわち、ファンクションライブラリ206は、サービスプロバイダ204からコマンド電文を受信すると、そのコマンド電文に含まれるコマンドコードの値に所定値を加える等して演算した後の値に変換し、紙幣部11に送信するコマンド電文に含まれるコマンドコードの値に設定している。
 このように、ファンクションライブラリ206が、コマンドコードを変更してモジュールに送信することで、サービスプロバイダ204とモジュールとを、同じコマンド電文で直接接続することがなくなり、モジュールの使いこなし技術の流出を防止することができ、ファンクションライブラリ206の必要性を高めることができる。なお、本例では、コマンドコードを変換する場合の一例について説明したが、コマンド電文が盗み見られた場合でもコマンドシーケンスの秘匿化を行なうため、ファンクションライブラリ206にコマンド電文の全体をスクランブルしたり、暗号化する機能を持たせてもよい。
 また、上記実施例では、ファンクションライブラリ206からサービスプロバイダ204にレスポンス電文を送信する際に、処理シーケンスで異常終了となったときのエラーコードが同じである前提で説明した。しかし、ATM10を使用するクライアントのニーズやATM10が設置された地域、モジュールの供給先のニーズ等によっては、一律に同じ体系のエラーコードを採用しないほうが好ましい場合もある。
 例えば、ATM10を使用するクライアント側でどのような対応をすればよいのかを容易に把握できるように、標準的なエラーコードの体系よりも簡易な体系のエラーコードを望む場合もある。そこで、以下では、標準的なエラーコードを改変や拡大してファンクションライブラリ206からサービスプロバイダ204に提供する場合について説明する。
 図21は、標準的なエラーコードを改変や拡大した場合のファンクションライブラリ本体機能の基本処理フローを例として示す図である。図21では、図10のステップと同一のステップについては同一の符合を付してその説明を省略している。また、図10、1619と同様に、一部の処理をATM10の電源がONされたときに実行し、残りの処理をサービスプロバイダ204からのコマンドの受信に応じて実行してよい。また、図21では、ファンクションライブラリ206と紙幣部11との接続を行う場合の処理を例示している。
 ファンクションライブラリ206は、ステップ1005において、図11に示した処理内容テーブルを用いてサービスプロバイダ204から受信したコマンドを検索し、登録の有無および使用許可されていないと判定した場合(1005;No)、その旨を示すエラーコードを不図示のメモリに記憶し(2101)、ステップ2106に進む。
 一方、ファンクションライブラリ206は、登録の有無および使用許可されていると判定した場合(1005;Yes)、シーケンス番号を初期化する(1006)。このとき、ファンクションライブラリ206は、次のコマンドを実行するために、ファンクションライブラリ206のステータスが次のコマンドを実行可能な状態にあるか否かを判定し(2101)、次のコマンドを実行可能でないと判定した場合(2102;No)、その旨を示すエラーコードを不図示のメモリに記憶し(2103)、ステップ2106に進む。
 一方、ファンクションライブラリ206は、次のコマンドを実行可能であると判定した場合(2102;Yes)、ステップ1007~1009の処理を実行し、紙幣部11から受信したレスポンス電文に含まれる付加情報に従って、ファンクションライブラリ206のステータスを更新し(2104)、紙幣部11と接続できたか否かを判定する(2105)。そして、ファンクションライブラリ206は、紙幣部11と接続できたと判定した場合(2105;Yes)、ステップ2101、2103で記憶したエラーコードをキーにしてエラーコード変換テーブルにアクセスし、エラーコードを変換する(2106)。
 図22は、エラーコード変換テーブル2200の例を示す図である。図22に示すように、エラーコード変換テーブル2200では、紙幣部11の標準仕様で定められたエラーコードである標準エラーコード2201と、カスタマイズされたエラーコード2202(本例では、3つの設定のエラーコード)とが対応付けて記憶されている。言い換えると、ファンクションライブラリ206が、紙幣部11毎に固有の標準エラーコード2201と、サービスプロバイダ204又は銀行毎に固有のエラーコード2202とを対応付けている(設定1~3のそれぞれが、サービスプロバイダ又は銀行毎に決まっている)。したがって、ファンクションライブラリ206は、ステップ2101、2103で記憶した標準エラーコードをいずれかのカスタマイズエラーコードに変換した上で、ステップ1011、1012において、サービスプロバイダ204へのレスポンス電文を生成し、送信する。なお、これらのエラーコードの設定は、製品出荷時に初期設定ファイルとして定めておくか、あるいはATM10の電源起動時にファンクションライブラリ206が起動し、サービスプロバイダ204にアクセスして取得すればよい。
 すなわち、ファンクションライブラリ206は、エラーコード変換テーブルに基づき、紙幣部11から受信したエラーに対応する標準エラーコードを、サービスプロバイダ204又は銀行に応じたエラーコードに変更する。これにより、サービスプロバイダ204の開発工数を抑制することが可能となる。
 また、以上の処理は、図23で後述するように複数種類の紙幣部11を取り扱う場合にも適用できる。紙幣部11の種類が異なると、ファンクションライブラリ206が実施する処理シーケンスが異なる場合がある。このような場合、図11の処理内容テーブルを紙幣部11の種類毎に記憶することにより、複数の紙幣部11に対して、ファンクションライブラリ206を利用することが可能となる。このような場合を想定して、制御部20は、参照先管理テーブルを記憶してもよい。
 図23は、参照先管理テーブルの例を示す図である。
 参照先管理テーブル2301は、紙幣部11の種類を示す紙幣部種別(例えば、図9の型XXXXX-XX)と、図11に示す処理内容テーブル毎に固有の識別情報とを関連づける。
 ファンクションライブラリ206は、サービスプロバイダ204より紙幣部11等のモジュールに対する動作指示を受けるとき又は初期設定時に、参照先管理テーブルを参照することにより、紙幣部11から取得した又は外部から受け付けた紙幣部11の種別に基づき、対応する参照すべき処理内容テーブルを決定する。そして、ファンクションライブラリ206は、決定した処理内容テーブルに定められたシーケンスに基づき、紙幣部11との間で各処理を実施する。
 参照先管理テーブル2301を有することにより、ファンクションライブラリ206は、紙幣部11の種類に応じた処理内容の設定が可能となる。
 続いて、図21、22の変形例に関して説明する。図21、22では、制御部20が、後述する第一のコマレス管理情報(第一のコマレス管理テーブル)と後述する第二のコマレス管理情報(第二のコマレス管理テーブル)との両方の機能を有するエラーコード変換テーブルを有する場合に関し、エラーコードの変換を中心に説明したが、制御部20が図24A、24Bのように、第一のコマレス管理情報と第二のコマレス管理情報を別々に備えてもよい。
 図24Aは、第一のコマレス(コマンドレスポンス)管理テーブル2400Aの例を示す図である。図11、15、18の処理内容テーブルの“SPからの受信コマンド”に関し、サービスプロバイダ204とファンクションライブラリ206との間で、コマンドコードが共通である場合を主として説明した。
  しかし、サービスプロバイダ204の種類又は銀行の種別が複数になってくると、ファンクションライブラリ206とサービスプロバイダ204との間で送受信されるコマンド電文やレスポンス電文の定義(例えば、電文フォーマット、コマンドコード)が異なる場合が生じる。
 このような場合、コマンド電文やレスポンス電文の定義をサービスプロバイダ204又は銀行毎に記憶することにより、複数のサービスプロバイダ204に対して、ファンクションライブラリ206を利用することが容易となる。このような場合を想定して、制御部20は、例えば、第一のコマレス管理テーブル2400Aを記憶してもよい。以下では、コマンドコード/レスポンスコード(例えば、動作結果コード、エラーコード、付加情報)がサービスプロバイダ204又は銀行毎に異なる場合に関して説明するが、これに限るものではない。
 第一のコマレス管理テーブル2400Aは、コマンド/レスポンスの種別毎2401Aに、ファンクションライブラリ206で定義(管理)するコマンドコード/レスポンスコード2402Aと、サービスプロバイダ204又は銀行毎に定義(管理)するコマンドコード/レスポンスコード2403Aとを関連づける。
 ここで、ファンクションライブラリ206で定義するコマンドコード/レスポンスコード2402Aは、コマンド/レスポンスの種別毎に識別できる固有の値である。また、サービスプロバイダ204又は銀行毎に定義するコマンドコード/レスポンスコード2403Aも、コマンド/レスポンスの種別毎に識別できる固有の値となる。ファンクションライブラリ206で定義するコマンドコード/レスポンスコード2402Aとサービスプロバイダ204又は銀行毎に定義するコマンドコード/レスポンスコード2403Aとは、一部又は全部の種別に関し、異なる値又は共通の値を有してもよい。
 また、サービスプロバイダ204又は銀行毎に定義するコマンドコード/レスポンスコードは、一部又は全部の種別に関し、複数のサービスプロバイダ又は銀行間で異なる値又は共通の値であってよい。
 ファンクションライブラリ206は、サービスプロバイダ204からコマンドを受信する際に、第一のコマレス管理テーブル2400Aを参照しサービスプロバイダ204又は銀行の種別に基づき、サービスプロバイダ204から受信するコマンドコードを対応するファンクションライブラリ206のコマンドコードへ変換する。また、ファンクションライブラリ206は、サービスプロバイダ204にレスポンスを送信する際に、第一のコマレス管理テーブル2400を参照しサービスプロバイダ204又は銀行の種別に基づき、サービスプロバイダ204へ送信するレスポンスコードを対応するサービスプロバイダ204又は銀行のレスポンスコードへ変換する。あるいは、ファンクションライブラリ206は、初期設定時に第一のコマレス管理テーブル2400Aを参照しサービスプロバイダ204又は銀行の種別に基づき、接続されたサービスプロバイダ204に応じて、処理内容テーブル(図11、15、18)の“SPからの受信コマンド”を、当該サービスプロバイダ204の種別のコマンドコード/レスポンスコードに変更してもよい。
 なお、サービスプロバイダ204又は銀行の種別は、サービスプロバイダ204又は外部からファンクションライブラリ206が受信し、ファンクションライブラリ206が設定してもよい。
 制御部20が、第一のコマレス管理テーブル2400Aを利用することにより、種別の異なるサービスプロバイダ204又は銀行と接続する場合にも、その取扱いを柔軟に行うことができ、適用する機能の拡張や削除にあわせたコマンドの追加、削除を容易に行うことができる。なお、コマンド電文/レスポンス電文のフォーマットや、他の要素に関しても、制御部20は、サービスプロバイダ204又は銀行の種類毎に要素の種類を対応づけた同様の管理テーブルを有し、サービスプロバイダ204又は銀行の種類毎の要素の情報に基づき処理をできるようにしてもよい。
 図24Bは、第二のコマレス(コマンドレスポンス)管理テーブル2400Bの例を示す図である。図11、15、18の処理内容テーブルの“モジュールへの発行コマンド”は、紙幣部11とファンクションライブラリ206との間で、コマンドコードが共通である場合に関して説明した。
  しかし、紙幣部11の種類(例えば、図8の紙幣部種別(型番))が複数になってくると、ファンクションライブラリ206と紙幣部11との間で送受信されるコマンド電文やレスポンス電文の定義(例えば、電文フォーマット、コマンドコード)が異なる場合が生じる。このような場合、コマンド電文やレスポンス電文の定義を紙幣部11の種類毎に記憶することにより、複数種類の紙幣部11に対して、ファンクションライブラリ206を利用することが容易となる。このような場合を想定して、制御部20は、例えば、第二のコマレス管理テーブルを記憶してもよい。以下では、コマンドコード/レスポンスコード(例えば、動作結果コード、エラーコード、付加情報)が紙幣部11の種類毎に異なる場合に関して説明するが、これに限るものではない。
 第二のコマレス管理テーブルは、コマンド/レスポンスの種別毎2401Bに、ファンクションライブラリ206で定義(管理)するコマンドコード/レスポンスコード2402Bと、紙幣部11の種類毎に定義(管理)するコマンドコード/レスポンスコード2403Bとを関連づける。
 ここで、ファンクションライブラリ206で定義するコマンドコード/レスポンスコード2402Bは、コマンド/レスポンスの種別毎に識別できる固有の値である。また、紙幣部11の種類毎に定義するコマンドコード/レスポンスコード2403Bも、コマンド/レスポンスの種別毎に識別できる固有の値となる。ファンクションライブラリ206で定義するコマンドコード/レスポンスコード2402Bと紙幣部11の種類毎に定義するコマンドコード/レスポンスコード2403Bとは、一部又は全部の種別に関し、異なる値又は共通の値を有してもよい。
 また、紙幣部11の種類毎に定義するコマンドコード/レスポンスコード2403Bは、一部又は全部の種別に関し、紙幣部11の種類毎で異なる値又は共通の値であってよい。
 ファンクションライブラリ206は、紙幣部11からレスポンスを受信する際に、第二のコマレス管理テーブル2400Bを参照し紙幣部11の種類に基づき、紙幣部11から受信するレスポンスコードを対応するファンクションライブラリのレスポンスコードへ変換する。また、ファンクションライブラリ206は、紙幣部11コマンドを送信する際に、第二のコマレス管理テーブルを参照し紙幣部11の種別に基づき、紙幣部11へ送信するコマンドコードを対応する紙幣部11のコマンドコードへ変換する。あるいは、ファンクションライブラリ206は、初期設定時に第二のコマレス管理テーブル2400Bを参照し紙幣部11の種別に基づき、接続された紙幣部11に応じて、処理内容テーブル(図11、15、18)の“モジュールへの発行コマンド”を当該紙幣部11の種別のコマンドコード/レスポンスコードに変更してもよい。
 なお、紙幣部11の種別は、紙幣部11又は外部からファンクションライブラリ206が受信し、ファンクションライブラリ206が設定してもよい。
 制御部20が、第二のコマレス管理テーブル2400Bを利用することにより、種別の異なる紙幣部11と接続する場合にも、その取扱いを柔軟に行うことができ、適用する機能の拡張や削除のにあわせたコマンドの追加、削除を容易に行うことができる。なお、コマンド電文/レスポンス電文のフォーマットや、他の要素に関しても、制御部は、紙幣部11の種類毎に要素の種類を対応付けた同様の管理テーブルを有し、紙幣部11の種類毎の要素の情報に基づき処理をできるようにしてもよい。
 また、図24A、24Bを別々に有することで、紙幣部11の種類及びサービスプロバイダ204若しくは銀行の種類によらず、ファンクションライブラリ20を有する制御部20は容易に様々な種類のシステムに導入することが可能となる。
 また、図24A、24Bは、基本処理(例えば、入金、出金、収納(入金計数の後の収納))又は拡張処理(例えば、自動精査、ログ収集1)の両方のコマレスを変換する例を示したが、いずれか一方のコマレスを変換するものであってもよい。
 [第2の実施形態]
  図25は、上述の紙幣部11を含む複数のATM10が通信ネットワーク100により接続される上位装置を含むシステムの一例を示す。上位装置としては、例えば、銀行がATM10の稼働等を管理する管理装置110や、保守会社が管理する保守装置120などがある。以下では、上位装置がファンクションライブラリ206を管理する場合について説明する。
 管理装置110あるいは保守装置120等の上位装置は、記憶部(例えば、メモリ)とCPUとを含む制御部130と、外部からの情報の入力を受け付ける操作端末140とを有する。上位装置の制御部130は、通信ネットワーク100で接続されたATM10の通信制御部101との間で各種情報の送受信を行う。
 記憶部は、ATM10又は紙幣部11、紙幣識別部113の固有の情報2601(例えば、ATMシリアル番号、紙幣部シリアル番号、又は紙幣識別部シリアル番号)と、各ATM10のファンクションライブラリ206の種類を示す情報とを関連付けたファンクションライブラリ管理情報2600を記憶している。
 図26は、ファンクションライブラリ管理情報2600の例を示す図である。
 ファンクションライブラリ管理情報2600は、ATM毎にファンクションライブラリを管理するための情報である。ファンクションライブラリ管理情報2600は、ATMを識別するATM情報2601と、ファンクションライブラリ206の種類を示す種類情報2602とを関連づける。ATM情報2601は、ATM毎に固有の情報であるATMID2603を含む。また、ATM情報2601は、紙幣部を識別する情報である紙幣部シリアル番号2604、紙幣識別部を識別する情報である紙幣識別部シリアル番号2605を有しても良い。また、ファンクションライブラリ206の種類を示す種類情報2602は、例えば、ファンクションライブラリのバージョンを示すFLバージョン情報2606、ファンクションライブラリのライセンスのレベル又はライセンスの有無を示すライセンス情報2607、ファンクションライブラリがATMに提供する機能を示す機能種別情報2608(例えば、入金、収納、出金、自動精査など)、ファンクションライブラリの提供元ベンダを示す提供ベンダ情報2609などを含んで良い。また、ファンクションライブラリ管理情報は、ATMの設置場所を示す設置場所情報2610を含んでも良い。
 さらに、上位装置は、ファンクションライブラリ管理情報2600を用いて、上位装置の操作端末140が受け付けたファンクションライブラリ206の種類情報2602に基づき、当該ファンクションライブラリ206を有するATM10、紙幣部11又は紙幣識別部113を抽出し、抽出したATM10、紙幣部11、又は紙幣識別部113を示す情報を操作端末140に表示してもよい。
 また、上位装置は、上位装置の操作端末140が受け付けたATM10、紙幣部11又は紙幣識別部113を示す情報に基づき、当該ATM10のファンクションライブラリ206の種類情報2602を抽出し、抽出したファンクションライブラリ206の種類情報を操作端末140に表示してもよい。
 これにより、上位装置から、ATM10、紙幣処理装置11、紙幣識別部113とファンクションライブラリ206の管理が可能となる。
 続いて、ファンクションライブラリ管理情報の更新に関して説明する。上位装置は、操作端末140から更新指示を受け付けると、ファンクションライブラリ管理情報2600に基づき、更新指示を受け付けたATM10の固有の情報に対応する、当該ATM10にファンクションライブラリ206の種類情報2602の取得指示を送信する。
 ATM10のファンクションライブラリ206は、業務アプリケーション203又はサービスプロバイダ204を経由して、当該取得指示を受信する。ファンクションライブラリ206は、当該指示に基づき、ストレージ202が記憶するファンクションライブラリ206の種類情報を取得し、ファンクションライブラリ206の種類情報を業務アプリケーション203又はサービスプロバイダ204を経由して、上位装置に送信する。
 ATM10は、ファンクションライブラリ206の種類情報に加え、ATM10又は紙幣部11の固有の情報も上位装置へ送信してもよい。上位装置は、ファンクションライブラリ206の種類情報を受信し、ファンクションライブラリ管理情報を更新する。上位装置の操作端末140は、更新したファンクションライブラリ管理情報を表示する。
 なお、ファンクションライブラリ206は、上位装置から取得指示を受信したタイミングではなく、ファンクションライブラリ206が管理する種類情報に更新があった場合に、ファンクションライブラリ206の種類情報を業務アプリケーション203又はサービスプロバイダ204を経由して、上位装置に送信してもよい。ATM10は、ファンクションライブラリ206の種類情報に加え、ATM10又は紙幣部11の固有の情報も上位装置へ送信してよい。
 また、第1の実施形態と同様に、ファンクションライブラリ206は、モジュールに対して発行するコマンドの種別毎にコマンドの発行回数、コマンド発行の時刻、モジュールの実行した処理が正常に終了したか否かを示す終了情報を管理してもよい。さらに、上位装置やATM10の制御部20が、以上の情報を個別に管理してもよい。これにより、モジュール提供元とモジュール提供先とでファンクションライブラリ206の使用状況に関し、情報の一致/不一致を確認することができる。
 続いて、ファンクションライブラリ206の分析処理に関して説明する。ファンクションライブラリ206は、ファンクションライブラリ206を有する紙幣部11が稼働することにより発生する紙幣部11を構成する部品毎のログ情報を収集し、収集したログ情報に基づき、紙幣部11の部品毎の障害発生の有無、可能性の有無、確率あるいは時期、又は部品毎の交換の要否、時期を判断する分析処理を実施する。ファンクションライブラリ206は、分析処理で判断した結果である分析情報をストレージ202に格納する。
 一方、上位装置は、上位装置の操作端末140から分析処理の結果である分析情報の取得指示を受け付けると、取得指示を受け付けたATM10にファンクションライブラリ206の分析情報の取得指示を送信する。ファンクションライブラリ206は、業務アプリケーション203又はサービスプロバイダ204を経由して、当該取得指示を受信する。ファンクションライブラリ206は、当該取得指示に基づき、ストレージ202が記憶するファンクションライブラリ206の分析情報を取得し ファンクションライブラリ206の分析情報を業務アプリケーション203又はサービスプロバイダ204を経由して、上位装置に送信する。ATM10は、ファンクションライブラリ206の分析情報に加え、ATM10、紙幣部11又は識別部13の固有の情報も上位装置へ送信してもよい。上位装置は、ファンクションライブラリ206の分析情報を受信し、ATM10などの固有の情報及び分析情報を関連づけて記憶する。また、上位装置は、分析情報を操作端末140に表示してもよい。
 上述の通り、ATM10のファンクションライブラリ206が紙幣部11のログ情報を収集し、収集したログ情報に基づき紙幣部11の状態を分析し、分析した結果を上位装置に送信するため、上位装置が、ログ情報を収集して分析する場合に比較し、上位装置の資源及び上位装置とATM10を接続する通信回線の資源などを有効利用することが可能となる。
 以降では、分析処理についてより詳細に説明する。
  図27は、紙幣部11を構成する部品毎のログ情報2700の例を示す図である。
  ログ情報は、ファンクションライブラリ206から受信したコマンドの種類であるコマンド種別2701(コマンドコードであってもよい)と、当該コマンドを受信した時間である受信日時2702とを有するものであってよい。また、ログ情報は、部品の稼働により紙幣部11が取得した稼働値2703と、紙幣部11が当該値を取得した日時を示す日時2704とを、部品毎に有するものであってよい。また、ログ情報には、部品の種類を示す部品種別2705と、紙幣部11内での部品毎に固有な又はある部品種別の中でも配置される場所により固有な部品番号を示す部品番号情報2706を有してもよい。
 なお、部品の種類毎に、対応するコマンド種別を有し、ファンクションライブラリ206が、処理内容テーブル(図11、図18)に基づき、どの種別の部品を取得するかを決定していてもよい。例えば、ログ収集1は、センサの値を収集し、ログ収集2は、ローラの値を取得するように設定してもよい。
 ここで、部品は、例えば、光学センサ、磁気センサなどを含む検知部、ローラ、ベルトなどを含む搬送部などを含む。また、ログ情報は、例えば、紙幣部11が有する複数の検知部、複数の搬送部のそれぞれが生成する情報であってよい。検知部のログ情報としては、例えば、センサ出力、検知レベルを含んでよい。また、搬送部のログ情報としては、例えば、搬送スキューなどの搬送エラー情報などを含んでよい。
 続いて、収集したログ情報に基づき、ATM10の保守に関わる保守情報を生成する分析処理について説明する。ファンクションライブラリ206は、収集又は格納したログ情報に基づき、紙幣部11の部品の現在又は最新の稼働値2703を示す実績データ、及び当該部品の過去の稼働値に基づく情報であって稼働値2703の傾向を示す統計データ(例えば、稼働値の時系列変化を示す情報)を生成する。続いて、ファンクションライブラリ206は、生成した統計データ及び実績データに基づき、障害発生の有無、障害発生の可能性の有無、障害発生の確率あるいは時期、又は部品毎の保守・交換の要否、時期を判断する分析処理を実施する。
 図28は、ファンクションライブラリ206が、種々の分析処理を実行する際に利用するログ種別を示す分析ログ情報テーブル2800である。分析ログ情報テーブル2800は、分析処理の種類を示す処理種別2801と、当該分析処理で利用するログの種類であるログ種別280、当該分析処理で利用するログの収集元である部品を示す情報である部品番号2803を関連づけたテーブルである。分析ログ情報テーブル2800で指定される情報によって、分析処理を実行することができる。
 図29は、交換情報管理テーブル2900の例を示す図である。
  交換情報管理テーブル2900は、紙幣部11若しくは紙幣部11を構成する部品を交換した時間を示す交換時刻2901、紙幣部11を識別する情報である紙幣部シリアル番号2902、交換された部品を示す部品番号2903、及び交換した理由などを示す交換内容の情報を含んで良い。交換情報管理テーブル2900は、部品番号2903と交換時刻2901とを関連付ける情報であり、部品番号2903の交換時刻2901を決定できるものであればよい。
 ファンクションライブラリ206は、紙幣部11又は部品の交換を検知すると、交換情報管理テーブル2900の情報を更新する。より詳細には、ファンクションライブラリ206は、紙幣部11から受信した情報に基づき、交換された部品番号2903を特定し、交換を実施した保守員等に交換内容2904を選択させる。また、交換情報管理テーブル2900は、管理装置110の表示画面等に表示してもよく、紙幣部シリアル番号2902や交換箇所等、任意の条件でソートすることにより、管理者が、把握したい紙幣部11の交換情報を即時に知ることができるようにしてもよい。
 図30は、統計データ生成処理のフローの一例を示す。
  ファンクションライブラリ206は、交換情報管理テーブル2900と分析ログ情報テーブル2800を用いて、統計データを生成する際に、紙幣部11又は部品の交換を考慮した統計データを生成してもよい。
 以下詳細にファンクションライブラリ206の実施する統計データ生成処理について、説明する。
  ファンクションライブラリ206は、分析ログ情報テーブル2800に基づき、分析処理の処理種別に応じて、当該分析で利用するログ種別のログを生成する部品番号を特定する(S3000)。続いて、ファンクションライブラリ206は、交換情報管理テーブル2900に基づき、特定した部品番号の交換履歴の有無を判断する(S3002)。ここで、交換履歴がない場合(S3002:無)、部品毎に定めた所定期間のログ情報に基づき統計データを生成する(S3008)。一方、交換履歴がある場合(S3002:有)、交換情報管理テーブル2900に基づき、交換時刻を取得する(S3004)。ファンクションライブラリ206は、取得した交換時刻に基づき、統計データを生成する(S3006)。
 より詳細には、ファンクションライブラリ206は、取得した交換時刻よりも前のログ情報と、取得した交換時刻以後のログ情報とを区別して、統計データを生成する。言い換えると、ファンクションライブラリ206は、交換時刻よりも前のログ情報と交換時刻後のログ情報とを連続したデータとしては扱わない。例えば、交換時刻前後で2つの統計データを生成、又は交換時刻よりも前のログ情報と交換時刻以後のログ情報を稼働時間帯で対応させて1つの統計データを生成してもよい。以上のように、交換情報管理テーブル2900と分析ログ情報テーブル2800とを有することにより、分析処理に利用される部品に応じて、適切な統計データを生成することが可能となる。
 なお、図11に示すコマンドシーケンステーブルにおいては動作結果が正常か異常かで次に実行するコマンドのシーケンス番号を決定したが、モジュールからのレスポンス電文に含まれる情報、たとえば紙幣の残留有無など直近の動作結果にともなう各種情報、過去に実行した動作結果による情報、記憶済の各種設定情報等を元にシーケンス番号を切り替える、あるいはテーブルそのものを別に定義した新たなテーブルに切り替えることで多様かつ複数機能を切り替える仕組みを実現することが可能となる。
 さらなる応用例として、図9に示したライセンス許可情報テーブルに装置別で使用するコマンドシーケンス定義テーブルを登録することで、機材別で使用可能な範囲や機能を切り替えることも可能となる。この方法を応用することで、ライセンス許可情報テーブルを更新することで、拡張機能を有効にするといった機能実現が可能となる。
 なお、図9では、ライセンス許可情報を紙幣部11の型式によって管理する例を示したが、仮想IDを利用して管理するようにしてもよい。管理装置130等の上位装置が、仮想IDを管理することにより、紙幣部11の交換等により型式変更等が生じた場合にも、仮想IDにより容易に管理することができる。
 電文フォーマットについては、サービスプロバイダーファンクションライブラリ間の電文フォーマットと、ファンクションライブラリーモジュール間の電文フォーマットは、本提案目的の一つであるモジュール使いこなし技術の隠蔽化により異なるフォーマットにすることが望ましい。しかしながら、ファンクションライブラリがない状態で装置が構築済であるところにファンクションライブラリの組み込みを行う場合は、同じフォーマットとすることで組み込み設計の容易化が可能となる。この場合、モジュール使いこなし技術の隠蔽化を行うために、既存開示コマンドの情報を一部変更する、あるいは非開示コマンドを追加することで機能制限を設けるなどにより目的を達することができる。
 また、既存電文フォーマットを使用する場合であっても電文内に含まれる情報を追加、たとえばモジュールが通知するエラーコードだけでなく動作状況に応じてファンクションライブラリが生成するエラーコードの通知など新たな情報を付加することで付加価値を高めることも可能である。
 なお、本説明は、上記実施例そのままに限定されるものではなく、例えば、図10、図16、図20、図21の各フローを適宜組み合わせて実行する等、実施段階ではその要旨に逸脱しない範囲で構成要素や処理のフローチャートの一部または全部を、ATMが使用される環境に応じて組み合わせて実行することができる。
 また、情報の保持方法として、図8、9、11~15、17,18、20、22、23、24、26、28、29では、テーブルの形式で保持する例を示したが、それぞれの情報を関連付けて記憶する方法であれば、テーブルの形式に限らない。
 また、図11、15、18では、“SPからの受信コマンド”として、コマンド種別を記載しているが、制御部20の管理状態に応じて、ファンクションライブラリがコマンドを識別するコマンド情報(例えば、ファンクションライブラリが管理するコマンドコード、又はサービスプロバイダが管理するコマンドコード)であってもよい。また、“モジュールへの発行コマンド”として、コマンド種別を記載しているが、制御部20の管理状態に応じて、ファンクションライブラリがコマンドを識別するコマンド情報(例えば、ファンクションライブラリが管理するコマンドコード、又はモジュールが管理するコマンドコード)であってもよい。
 また、自動取引装置を実施形態として記載したが、情報を有する媒体から情報を取得する媒体取扱装置であってもよい。
 また、媒体取扱装置の実施する取引処理(基本処理)は、入金、出金、振替、振込などの取引を実施するために、対象媒体(例えば、紙幣、カード、明細票、通帳、硬貨)から情報(金額、口座情報)を取得する動作を、処理部(例えば、紙幣部、カード・明細票部、通帳部、硬貨部)が実施する処理であってよい。例えば、取引処理に伴い、各処理部に取り扱う媒体を搬送させる又は読み取る処理などを実施させる処理であってよい。また、紙幣取引レスポンスなどの取引レスポンスは、取引コマンドに基づき、媒体から取得した取引で使用する情報(例えば、当該取引で計数した金種毎の紙幣枚数、読み取ったカード番号、読み取った通帳番号、計数した金種毎の硬貨枚数)を返信するレスポンスであってよい。
 また、取引処理は、利用者の口座を特定する情報又は特定された口座に反映される情報を取得する処理であってもよい。
 また、ソータの場合は、取引との概念がないため、紙幣部の投入口に投入された紙幣の計数結果(例えば、紙幣種類毎の枚数、紙幣画像)を紙幣部が取得する処理が、基本処理に相当する。一方、基本処理では用いない情報を取得する処理、基本処理又は拡張処理により取得した情報に基づき、ファンクションライブラリが実施する又は紙幣部に実施させる処理が拡張処理となる。このため、当該計数結果を紙幣部が取得する処理を紙幣部に実施させる(実施可能な)コマンドをサービスプロバイダが生成し、拡張処理を紙幣部に実施させる(実施可能な)コマンドをファンクションライブラリが生成するものであってよい。なお、上述の通り、処理部の種類により、基本処理と拡張処理が変わることがあってもよい。
 以上の実施形態では、少なくとも以下のいずれか一つ又は複数の特徴を有する。これらの特徴を有することにより、上述した効果を有する。
 (1)外部から投入された媒体の情報に基づき取引を行う媒体取扱装置であって、投入された媒体から取引で用いる情報を取得する処理部と、処理部が実施可能なコマンドを生成する制御部を有し、制御部は、取引で用いる情報を取得する基本処理(例えば、取引処理)を処理部が実施可能なコマンドである基本処理コマンドを生成するサービスプロバイダと、基本処理とは異なる拡張処理を処理部が実施可能なコマンドである拡張処理コマンドを生成するファンクションライブラリとを有する。
 (1)-2ファンクションライブラリは、基本処理コマンドをサービスプロバイダから受信し、変換することなく(基本処理コマンドと同一のコマンドを)、処理部に送信する。
 (2)外部から投入された媒体の情報を取得する処理部を有する媒体取扱装置であって、処理部が実施可能な基本処理コマンド又は拡張処理コマンドを生成する制御部を有し、制御部は、処理部の種類毎に対応した基本処理コマンド又は拡張処理コマンドを管理する第二のコマレス管理情報を有し、第二のコマレス管理情報に基づき、処理部の種類に対応した第一のコマンド又は第二のコマンドを生成することを特徴とする。
 (3)外部から投入された媒体の情報を取得する処理部を有する媒体取扱装置であって、外部又はサービスプロバイダに拡張処理の結果である拡張処理のレスポンスを送信するファンクションライブラリを有する制御部を備え、制御部は、銀行又はサービスプロバイダの種類毎に対応した拡張処理のレスポンスを管理する第一のコマレス管理情報を有し、第一のコマレス管理情報に基づき、銀行又はサービスプロバイダの種類に対応した拡張処理のレスポンスを生成する。
 (4)媒体の有する情報を使用する処理である媒体処理を行う媒体取扱装置であって、媒体から情報を取得するモジュールと、モジュールと接続され、外部からの取引処理を開始させる指示に基づき、第一のコマンドを生成するサービスプロバイダと、サービスプロバイダから受信した第一のコマンドに基づき、モジュールに送信する第二のコマンドを生成するファンクションライブラリとを有する制御部とを備え、ファンクションライブラリは、一の第二のコマンドに対するモジュールからの応答である一の第二のレスポンスの情報に基づき、次にモジュールに送信する他の第二のコマンドを決定する。
 (4)-1制御部は、一の第二のレスポンスの情報毎に、次に生成する他の第二のコマンドの情報を記憶した処理内容情報を有し、ファンクションライブラリは、処理内容情報に基づき、モジュールから受信した一の第二のレスポンスの情報に対応する他の第二のコマンドの情報を含む他の第二のコマンドを送信してもよい。
 (4)-2ファンクションライブラリは、一の第一のコマンドに対して、複数の第二のコマンドを生成し、それぞれの第二のコマンドに対応する第二のレスポンスを全て受信した後に、一の第一のコマンドに対する応答である一の第一のレスポンスをサービスプロバイダに送信してもよい。
 (5)媒体の有する情報を使用する処理である媒体処理を行う媒体取扱装置であって、媒体から情報を取得するモジュールと、モジュールと接続され、外部からの取引処理を開始させる指示に基づき、第一のコマンドを生成するサービスプロバイダと、サービスプロバイダから受信した第一のコマンドに基づき、モジュールに第二のコマンドを送信するファンクションライブラリとを有する制御部とを備え、ファンクションライブラリは、取引処理では使用しない情報(例えば、状態情報)をモジュールに取得させる情報取得コマンドを生成し、取引処理で使用する情報をモジュールに媒体から取得させる取引コマンド及び前記情報取得コマンドを第二のコマンドとしてモジュールに送信する。
 (5)-1ファンクションライブラリは、取引コマンドに対するモジュールからの応答である取引レスポンスの内容(一の第二のレスポンスの情報)に基づき、情報取得コマンドの種類(他の第二のコマンドの情報)を決定してもよい。
 (5)-2ファンクションライブラリは、一の情報取得コマンドに対するモジュールからの応答である一の情報取得レスポンスに基づき、次の情報取得コマンドを生成してもよい。
 (5)-3モジュールは、取引コマンドに対するモジュールからの応答である取引レスポンス(一の第二のレスポンスの情報)にモジュールの状態を示す状態情報を含め、ファンクションライブラリは、取引レスポンスを受信し、取引レスポンスに含まれた状態情報に基づき、次に生成する第二のコマンド(他の第二のコマンドの情報)を決定してもよい。
 (6)ファンクションライブラリは、モジュールの種類を示す情報と処理内容情報とを対応づけた参照先管理情報を有し、参照先管理情報に基づき、モジュールから取得したモジュールの種類を示す情報に対応した処理内容情報を決定してもよい。
 (7)媒体を用いて取引を実行する処理部を有する自動取引装置であって、取引の指示に基づいて、取引に使用する情報を処理部から取得する第1のコマンドを生成する第1のコマンド提供部と、第1のコマンドに基づき処理部の実行する処理を指定し、第1のコマンドとは異なるコマンドに変換される第2のコマンドを生成する第2のコマンド提供部とを含む制御部を有する。
 (7)-1第2のコマンド提供部は、第2のコマンドを指定する処理内容情報を有し、処理部から第1のコマンドに対する応答である第1のレスポンスに基づいて処理内容情報により第2のコマンドを決定する。
 (7)-2第2のコマンド提供部は、第1のコマンド提供部から第1のコマンドを受信し、第1のコマンドのコマンドコードを変換することなく、第1のコマンドを処理部に送信する。
 なお、実施形態において各処理を実現するためのプログラムは、電気・電子及び/又は磁気的な非一時的(non‐transitory)な記録媒体に格納可能である。即ち、ファンクションライブラリ206の機能を実現するためのプログラムを、持ち運び可能な又はサーバなどの上位装置の非一時的な記録媒体に格納し、ATM10にインストール(格納)することで、その機能を実現させるようにしても良い。
  以上、図面を用いて詳細に説明したが、本発明は上述の種々の例に限定されるものではなく、その趣旨を逸脱しない範囲で、種々の変更が可能である。
10      ATM
11      紙幣部
113     識別部
12      カード・明細票部
13      通帳部
14      硬貨部
15      操作部
16      係員操作部
201     オペレーティングシステム
202     ストレージ
203     業務アプリケーション
204     サービスプロバイダ
206     ファンクションライブラリ

Claims (14)

  1.  媒体を用いて取引を実行する処理部を有する自動取引装置であって、
     前記取引の指示に基づいて、前記処理部が前記取引に使用する情報を取得する第1のコマンドを生成する第1のコマンド提供部と、前記第1のコマンドに基づき前記処理部の実行する処理を指定し、前記第1のコマンドとは異なるコマンドであり、前記処理部が前記指定する処理を実施する第2のコマンドを生成する第2のコマンド提供部とを含む制御部を有することを特徴とする自動取引装置。
  2.  前記第2のコマンド提供部は、前記第2のコマンドを指定する処理内容情報を有し、
     前記処理部から前記第1のコマンドに対する応答である第1のレスポンスに基づいて前記処理内容情報により前記第2のコマンドを決定することを特徴とする請求項1に記載の自動取引装置。
  3.  前記第2のコマンド提供部は、前記第1のコマンド提供部から前記第1のコマンドを受信し、前記第1のコマンドのコマンドコードを変換することなく、前記第1のコマンドを前記処理部に送信することを特徴とする請求項2に記載の自動取引装置。
  4.  前記処理部は、前記第1のコマンドに応じて実行する取引処理と、前記第2のコマンドに応じて実行する拡張処理とを実行し、
     前記処理内容情報には、前記処理部に実行される前記取引処理及び前記拡張処理の情報が複数含まれ、前記処理部が複数のうちいずれの取引処理又は拡張処理を実行するかを指定するライセンス情報がさらに含まれることを特徴とする請求項3に記載の自動取引装置。
  5.  前記媒体を収納する収納部をさらに有し、
     前記取引処理は、少なくとも前記媒体の計数を行う処理又は前記媒体から前記取引に利用する情報を取得する処理を含み、
     前記拡張処理は、少なくとも前記処理部の状態情報の取得処理、前記処理部を動作させる動作処理又は前記取得処理により取得した情報に基づき分析を行う分析処理を含むことを特徴とする請求項4に記載の自動取引装置。
  6.  前記取引が、現金を用いて実行される入金取引又は出金取引である場合、
     前記処理部は、前記第1のコマンドに基づいて前記現金を搬送させて前記入金取引又は出金取引を実行し、
     前記第2のコマンド提供部は、前記第1のレスポンスである前記入金取引又は前記出金取引の結果に基づいて、前記処理部の状態情報の収集を実行することを特徴とする請求項5に記載の自動取引装置。
  7.  前記処理部は、一又は複数の構成部を有し、
     前記一又は複数の構成部は、前記処理部が前記第2の電文提供部から受信する前記第1のコマンドに基づいて前記取引処理を実行すると共に、前記第2の電文提供部から直接受信する前記第2のコマンドに基づいて前記拡張処理を実行することを特徴とする請求項6に記載の自動取引装置。
  8.  媒体を用いて取引を実行する処理部を有する複数の自動取引装置と、前記複数の自動取引装置に接続される上位装置とからなる自動取引システムであって、
     前記複数の自動取引装置の各々は、前記取引の指示に基づいて、前記取引に使用する情報を前記処理部から取得する第1のコマンドを生成する第1のコマンド提供部と、前記第1のコマンドに基づき前記処理部の実行する処理を指定し、前記第1のコマンドとは異なるコマンドに変換される第2のコマンドを生成する第2のコマンド提供部とを有する制御部を有し、
     前記上位装置は、前記複数の自動取引装置の各々の前記第2のコマンド提供部を管理するコマンド管理情報を有することを特徴とする自動取引システム。
  9.  前記第2のコマンド提供部は、前記第2のコマンドを指定する処理内容情報を有し、
     前記処理部から前記第1のコマンドに対する応答である第1のレスポンスに基づいて前記処理内容情報により前記第2のコマンドを決定することを特徴とする請求項8に記載の自動取引システム。
  10.  前記複数の自動取引装置の各々の前記処理部は、前記第1のコマンドに応じて実行する取引処理と、前記第2のコマンドに応じて実行する拡張処理とを実行し、
     前記処理内容情報には、前記処理部に実行される前記取引処理及び前記拡張処理の情報が複数含まれ、前記処理部が複数のうちいずれの取引処理又は拡張処理を実行するかを指定するライセンス情報がさらに含まれ、
     前記コマンド管理情報には、前記複数の自動取引装置の各々のライセンス情報が含まれ、
     前記複数の自動取引装置は、前記ライセンス情報に応じて実行する前記取引処理又は前記拡張処理を決定することを特徴とする請求項9に記載の自動取引システム。
  11.  前記処理部は、複数の部品から構成され、
     前記第2のコマンド提供部は、前記第2のコマンドにより前記複数の部品の各々の稼働情報を取得することを特徴とする請求項10に記載の自動取引システム。
  12.  前記稼働情報は、少なくとも前記複数の部品の各々の交換又は保守の実行の有無を示す交換保守情報と交換又は保守を実行した時刻情報とを含み、
     前記第2のコマンド提供部は、前記交換保守情報と前記時刻情報とに基づいて取得した前記稼働情報から分析対象とする対象データを決定し、
     前記上位装置は、前記対象データを用いて統計処理を実行することを特徴とする請求項11に記載の自動取引システム。
  13.  媒体を用いて取引処理を実行する処理部と、前記取引の指示に基づいて、前記処理部が前記取引に使用する情報を取得する第1のコマンドを送信する制御部とを有する自動取引装置に、
     前記第1のコマンドに基づき前記処理部の実行する処理を指定し、前記第1のコマンドとは異なるコマンドであり、前記処理部が前記指定する処理を実施する第2のコマンドを送信するステップを実現させるプログラムを格納する非一時的記録媒体。
  14.  前記第2のコマンド提供部は、前記第2のコマンドを指定する処理内容情報を有し、
     前記処理部から前記第1のコマンドに対する応答である第1のレスポンスに基づいて前記処理内容情報により前記第2のコマンドを決定するステップを実現させるプログラムを格納する請求項13に記載の非一時的記録媒体。
PCT/JP2017/021926 2016-07-29 2017-06-14 自動取引装置、自動取引システム及び非一時的記録媒体 WO2018020883A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2018529431A JP6663497B2 (ja) 2016-07-29 2017-06-14 自動取引装置、自動取引システム及び非一時的記録媒体
CN201780005115.1A CN108475453B (zh) 2016-07-29 2017-06-14 自动交易装置、自动交易系统及非暂时性记录介质

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2016-149966 2016-07-29
JP2016149966 2016-07-29

Publications (1)

Publication Number Publication Date
WO2018020883A1 true WO2018020883A1 (ja) 2018-02-01

Family

ID=61016700

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2017/021926 WO2018020883A1 (ja) 2016-07-29 2017-06-14 自動取引装置、自動取引システム及び非一時的記録媒体

Country Status (3)

Country Link
JP (1) JP6663497B2 (ja)
CN (1) CN108475453B (ja)
WO (1) WO2018020883A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021193558A1 (ja) * 2020-03-24 2021-09-30 グローリー株式会社 有価媒体処理装置、有価媒体処理システム、および、認証方法

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114999073A (zh) * 2022-05-26 2022-09-02 中国银行股份有限公司 一种纸币存储方法、系统及电子设备

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008191809A (ja) * 2007-02-02 2008-08-21 Hitachi Omron Terminal Solutions Corp 自動取引装置およびic媒体リーダライタ

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7108190B2 (en) * 2003-02-28 2006-09-19 Appleton Papers Inc. Token array and method employing authentication tokens bearing scent formulation information
CN1987925A (zh) * 2006-12-29 2007-06-27 中国建设银行股份有限公司 一种金融系统综合前置平台及交易数据的转发方法
CN101075969B (zh) * 2007-07-20 2010-09-15 中国建设银行股份有限公司 一种控制数据传输的方法、装置和一种数据传输系统
JP6209942B2 (ja) * 2013-10-31 2017-10-11 沖電気工業株式会社 取引装置及び取引方法
CN104361692B (zh) * 2014-11-21 2017-01-04 中国建设银行股份有限公司 一种交易监控方法,atm前置系统及atm交易系统
CN104714804A (zh) * 2015-03-20 2015-06-17 东南大学 一种轨道交通自动售检票系统读写器中间件

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008191809A (ja) * 2007-02-02 2008-08-21 Hitachi Omron Terminal Solutions Corp 自動取引装置およびic媒体リーダライタ

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
NITTA, TETSUJI ET AL.: "AT-400N Jido Torihiki Sochi no Software", OKI REVIEW, vol. 64, no. 3, 1 July 1997 (1997-07-01), pages 83 - 86, ISSN: 0286-892X *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021193558A1 (ja) * 2020-03-24 2021-09-30 グローリー株式会社 有価媒体処理装置、有価媒体処理システム、および、認証方法

Also Published As

Publication number Publication date
JPWO2018020883A1 (ja) 2018-12-20
CN108475453A (zh) 2018-08-31
CN108475453B (zh) 2020-09-22
JP6663497B2 (ja) 2020-03-11

Similar Documents

Publication Publication Date Title
RU2581550C1 (ru) Устройство обработки данных и система обработки данных
JP2004240710A (ja) 紙幣取扱装置
US9672500B2 (en) Self-service terminal service emergency method and site server
JP2021196712A (ja) 監視サーバ、監視プログラム及び監視システム
WO2018020883A1 (ja) 自動取引装置、自動取引システム及び非一時的記録媒体
CN101512571A (zh) 用于处理图像退回票据的方法和系统
JP4586135B2 (ja) 紙幣確認方法および紙幣確認システム
JP2004164209A (ja) 自動取引システム
US20210365898A1 (en) Valuable medium processing device, valuable medium processing system, and valuable medium processing method
JP2010170421A (ja) 現金自動取引システム、現金自動取引装置及び現金自動取引装置用プログラム
JP4807025B2 (ja) 自動取引装置
WO2019098061A1 (ja) 貨幣処理システム、貨幣処理装置、センター装置、および、貨幣処理装置における不正検出方法
JP3710094B2 (ja) 出金管理システム及び出金管理方法
WO2020031512A1 (ja) 取引装置
JP6857091B2 (ja) 貨幣処理システム、貨幣処理機、貨幣釣銭機および貨幣処理方法
CN107408322A (zh) 检查装置及检查系统
CN110930579A (zh) 一种凭证的提取方法、装置及系统
WO2019227127A1 (en) Payment processing system and method
US20220292494A1 (en) Money processing device, method of resolving abnormality of money processing device, and computer-readable recording medium
WO2021039125A1 (ja) 入金管理装置、入金管理方法、及び入金管理システム
JP4706420B2 (ja) 自動取引装置
JP6055432B2 (ja) 監視システム、監視装置、及び監視プログラム
JP2020182085A (ja) 鍵管理装置
JP5437870B2 (ja) 入金管理システム、入金装置、および入金装置置換方法
JP2006171905A (ja) 自動販売機の返金システムおよび方法ならびに自動販売機およびそのプログラム

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 2018529431

Country of ref document: JP

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 17833893

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 17833893

Country of ref document: EP

Kind code of ref document: A1