JP5817891B2 - POS system control method - Google Patents

POS system control method Download PDF

Info

Publication number
JP5817891B2
JP5817891B2 JP2014131097A JP2014131097A JP5817891B2 JP 5817891 B2 JP5817891 B2 JP 5817891B2 JP 2014131097 A JP2014131097 A JP 2014131097A JP 2014131097 A JP2014131097 A JP 2014131097A JP 5817891 B2 JP5817891 B2 JP 5817891B2
Authority
JP
Japan
Prior art keywords
server
pos
information
request
printing
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Fee Related
Application number
JP2014131097A
Other languages
Japanese (ja)
Other versions
JP2014186749A (en
Inventor
英雄 中村
英雄 中村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
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 Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2014131097A priority Critical patent/JP5817891B2/en
Publication of JP2014186749A publication Critical patent/JP2014186749A/en
Application granted granted Critical
Publication of JP5817891B2 publication Critical patent/JP5817891B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Accessory Devices And Overall Control Thereof (AREA)

Description

本発明は、LAN、インターネット等のネットワークを介してデバイスの制御を行うネットワークシステムおよびプログラムに関するものである。   The present invention relates to a network system and a program for controlling devices via a network such as a LAN or the Internet.

従来、一般的にコンピュータからデバイスを使用する場合、デバイス製造メーカより提供される特定のOS専用のデバイスドライバをコンピュータにインストールしてデバイス(プリンタ、スキャナ等の周辺デバイス)を動作させる。また、多数のコンピュータによりデバイスを共有する場合においては、デバイスに対応するデバイスドライバを、ネットワーク上に設けられたサーバ(集中ドライバストレージ)により一括管理し、各コンピュータ(クライアント)に配布する方法が知られている(例えば、特許文献1参照)。この場合、サーバでは、デバイスドライバをWindows(登録商標)2000やWindowsXP(登録商標)等のOS毎に管理すると共に、当該デバイスドライバのバージョン(版数)の管理を行い、各クライアントのOSに応じてデバイスドライバを配布することで、各クライアントからデバイス(共有デバイス)を使用可能にしている。   Conventionally, when a device is generally used from a computer, a device driver for a specific OS provided by a device manufacturer is installed in the computer to operate the device (peripheral devices such as a printer and a scanner). In addition, when a device is shared by many computers, a method is known in which device drivers corresponding to the device are collectively managed by a server (centralized driver storage) provided on the network and distributed to each computer (client). (For example, refer to Patent Document 1). In this case, the server manages the device driver for each OS such as Windows (registered trademark) 2000 and Windows XP (registered trademark), and also manages the version (version number) of the device driver, depending on the OS of each client. By distributing device drivers, devices (shared devices) can be used from each client.

特開2004−303252号公報JP 2004-303252 A

しかし、上記では、デバイスを使用するためには、各クライアントにデバイスドライバをインストールする必要があり、このデバイスドライバはOSに依存して動作するため、クライアントの処理負荷が大きくなる。また、デバイスメーカ側も、各クライアントのOSの種類ごとに、対応したデバイスドライバを開発する必要があり、開発コストが大きくなるという問題がある。   However, in the above, in order to use a device, it is necessary to install a device driver in each client. Since this device driver operates depending on the OS, the processing load on the client increases. Also, the device manufacturer has to develop a corresponding device driver for each client OS type, which increases the development cost.

本発明は、上記の問題点に鑑みたものであり、クライアントにデバイスドライバをインストールすることなくデバイスを制御することができるネットワークシステムおよびプログラムを提供することを目的とする。   SUMMARY An advantage of some aspects of the invention is that it provides a network system and a program capable of controlling a device without installing a device driver in a client.

本発明のネットワークシステムは、アプリケーションを実行する1以上のアプリケーション実行サーバと、当該アプリケーション実行サーバにアプリケーションの実行を要求する1以上のクライアント端末と、当該クライアント端末の操作に伴って動作する1以上のデバイスと、当該デバイスを制御する1以上のデバイスサーバと、を有し、少なくともアプリケーション実行サーバとクライアント端末、デバイスサーバとデバイス、アプリケーション実行サーバとデバイスサーバ、クライアント端末とデバイス、がそれぞれネットワーク接続されたネットワークシステムであって、アプリケーション実行サーバは、クライアント端末から、デバイス動作を伴うアプリケーション実行要求を受信する実行要求受信手段と、アプリケーション実行要求の受信に伴ってデバイスを制御するためのデバイス制御情報を生成し、デバイスサーバに送信するデバイス制御情報送信手段と、デバイス制御情報の送信に対するデバイスサーバからの応答受信に伴って、アプリケーションの実行結果を含む第1応答データを生成し、クライアント端末に送信する第1応答データ送信手段と、を備え、クライアント端末は、アプリケーション実行サーバからの第1応答データの受信に伴って、デバイスに対しデバイス動作要求を送信する動作要求手段と、デバイス動作要求に対するデバイスの動作結果を含む第2応答データを受信する動作結果受信手段と、を備え、デバイスサーバは、アプリケーション実行サーバからデバイス制御情報を受信し、制御対象となるデバイスに応じてコマンド変換したコマンド変換情報を、デバイス別のキューに保存するコマンド変換情報保存手段と、アプリケーション実行サーバに対し、コマンド変換情報の保存に伴う応答を送信する保存応答手段と、を備え、デバイスは、クライアント端末からのデバイス動作要求の受信に伴って、デバイスサーバに対しデバイスコマンド要求を送信するコマンド要求送信手段と、デバイスコマンド要求に対してデバイスサーバがデバイス別のキューから取り出したコマンド変換情報を受信し、当該コマンド変換情報に従って動作する動作手段と、動作手段の動作結果を、第2応答データとしてクライアント端末に送信する動作結果送信手段と、を備えたことを特徴とする。   The network system of the present invention includes at least one application execution server that executes an application, at least one client terminal that requests the application execution server to execute the application, and at least one that operates in accordance with the operation of the client terminal. A device and one or more device servers that control the device, and at least the application execution server and the client terminal, the device server and the device, the application execution server and the device server, and the client terminal and the device are connected to the network. In the network system, the application execution server includes an execution request receiving unit that receives an application execution request accompanied by a device operation from a client terminal, and an application execution Generate device control information for controlling the device in response to the reception of the request, and transmit the device control information to the device server, and execute the application in response to receiving the response from the device server to the transmission of the device control information First response data transmitting means for generating first response data including a result and transmitting the first response data to the client terminal. The client terminal receives the first response data from the application execution server. An operation request means for transmitting an operation request; and an operation result receiving means for receiving second response data including a device operation result in response to the device operation request. The device server receives device control information from the application execution server. Command converted according to the device to be controlled Command conversion information storage means for storing the command conversion information in a queue for each device, and storage response means for transmitting a response accompanying the storage of the command conversion information to the application execution server. In response to the reception of the device operation request, the command request transmission means for transmitting the device command request to the device server, and the command conversion information received from the device-specific queue by the device server in response to the device command request An operation means that operates according to the command conversion information; and an operation result transmission means that transmits an operation result of the operation means to the client terminal as second response data.

この構成によれば、クライアント端末が、デバイス動作を伴うアプリケーション実行要求を送信すると、アプリケーション実行サーバは、当該アプリケーション実行要求に基づいて、対象となるデバイスを制御するためのデバイス制御情報を生成し、デバイスサーバに送信する。デバイスサーバは、デバイス制御情報を対象となるデバイスに応じてコマンド変換し、デバイス別のキューに保存する。そして、デバイスサーバは、アプリケーション実行サーバに対してデバイス制御情報に係る処理が完了した旨の応答を送信する。アプリケーション実行サーバは、当該応答に伴って、アプリケーションの実行結果を第1応答データとして生成し、当該第1応答データをクライアント端末に送信する。クライアント端末は、受信した第1応答データに基づいて、対象となるデバイスに対してデバイス動作要求を送信する。デバイス動作要求を受信したデバイスは、デバイスサーバに対してデバイスコマンドを要求し、デバイスサーバから当該デバイスに対応するデバイス別キューに保存されているコマンド変換情報を受信する。そして、デバイスは、このコマンド変換情報に基づいて自身を動作させ、その動作結果をクライアント端末に送信し、クライアント端末が当該動作結果を受信することで、一連のデバイス動作に関する処理が完了する。これにより、デバイスサーバが各デバイスの制御情報を管理すると共に、各デバイスのデバイスドライバの役目を果たすため、クライアント端末にデバイスドライバをインストールすることなく、クライアント端末からの動作要求に基づき、デバイスを使用することができる。また、クライアント端末にデバイスドライバが不要になるため、デバイスの使用に係るクライアント端末の処理の負荷を軽減することができる。さらに、デバイスメーカにとっては、各クライアント端末のOSの種類毎にデバイスドライバを作成する必要がなくなり、これに係る開発コストを削減できるといった効果がある。   According to this configuration, when the client terminal transmits an application execution request involving device operation, the application execution server generates device control information for controlling a target device based on the application execution request, Send to device server. The device server converts the device control information into a command according to the target device and stores it in a queue for each device. Then, the device server transmits a response to the effect that the processing related to the device control information has been completed to the application execution server. The application execution server generates an application execution result as first response data in response to the response, and transmits the first response data to the client terminal. The client terminal transmits a device operation request to the target device based on the received first response data. The device that has received the device operation request requests a device command from the device server, and receives command conversion information stored in the device-specific queue corresponding to the device from the device server. Then, the device operates itself based on the command conversion information, transmits the operation result to the client terminal, and the client terminal receives the operation result, thereby completing a series of processing relating to the device operation. As a result, the device server manages the control information of each device and functions as a device driver for each device. Therefore, the device is used based on the operation request from the client terminal without installing the device driver in the client terminal. can do. In addition, since a device driver is not required for the client terminal, it is possible to reduce the processing load on the client terminal related to the use of the device. Further, for the device manufacturer, there is no need to create a device driver for each type of OS of each client terminal, and there is an effect that the development cost related to this can be reduced.

この場合、アプリケーション実行サーバおよびデバイスは、HTTPサーバとHTTPクライアントと、を備え、デバイスサーバは、HTTPサーバを備え、クライアント端末は、プラグイン機能を有しない単機能ブラウザを備え、アプリケーション実行サーバ、クライアント端末、デバイスサーバおよびデバイスは、ハイパーテキスト転送プロトコルに基づいて通信を行うことが好ましい。   In this case, the application execution server and the device include an HTTP server and an HTTP client, the device server includes an HTTP server, and the client terminal includes a single function browser having no plug-in function. The terminal, device server, and device preferably communicate based on the hypertext transfer protocol.

この構成によれば、クライアント端末は、単機能ブラウザを使用して、アプリケーション実行サーバおよびデバイスとハイパーテキスト転送プロトコル(HTTP)に基づいて通信を行うことで、クライアント端末の環境(クライアント端末のOSの種類等)に依存することなく、デバイス(例えば、プリンタ、スキャナ等の周辺機器)にアクセスすることができる。また、クライアント端末はOSの種類やブラウザに依存したプラグインモジュールが不要であるため、例えば、プラグインモジュールが提供されておらず、デバイスが使用できないといったことがなくなる。なお、ここで言う単機能ブラウザとは、プラグインモジュールをインストールしていない標準のブラウザである。   According to this configuration, the client terminal communicates with the application execution server and the device based on the hypertext transfer protocol (HTTP) using a single function browser, so that the environment of the client terminal (the OS of the client terminal OS) It is possible to access a device (for example, a peripheral device such as a printer or a scanner) without depending on the type. In addition, since the client terminal does not require a plug-in module depending on the type of OS or browser, for example, the plug-in module is not provided and the device cannot be used. The single-function browser here is a standard browser in which no plug-in module is installed.

これらの場合、第1応答データには、少なくともデバイスを特定するデバイス特定情報およびデバイスの動作を指定する動作情報を含むタグが挿入されており、動作要求手段は、タグの情報に基づいて、デバイス動作要求を送信することが好ましい。   In these cases, the first response data includes a tag including at least device specifying information for specifying the device and operation information for specifying the operation of the device, and the operation requesting means Preferably, an operation request is transmitted.

また、これらの場合、動作要求手段は、受信した第1応答データに、少なくともデバイスを特定するデバイス特定情報およびデバイスの動作を指定する動作情報を含むタグを挿入し、当該タグの情報に基づいて、デバイス動作要求を送信することが好ましい。   In these cases, the operation requesting unit inserts a tag including at least device specifying information for specifying the device and operation information for specifying the operation of the device into the received first response data, and based on the information of the tag Preferably, the device operation request is transmitted.

これらの構成によれば、アプリケーション実行サーバによりデバイス特定情報および動作情報を含むタグが挿入された第1応答データ、またはクライアント端末により動的にデバイス特定情報および動作情報を含むタグを挿入した第一応答データに基づいて、デバイス動作要求を送信する。これにより、アプリケーション実行サーバとデバイスとのドメインが異なる場合においても、アプリケーション実行サーバとデバイスとがシームレスに連携することができる。また、クライアント端末を使用するユーザは、デバイスに関する情報を意識することなくデバイスを使用することができる。   According to these configurations, the first response data in which the tag including the device identification information and the operation information is inserted by the application execution server, or the first tag in which the tag including the device identification information and the operation information is dynamically inserted by the client terminal A device operation request is transmitted based on the response data. Thus, even when the application execution server and the device have different domains, the application execution server and the device can seamlessly cooperate with each other. In addition, a user who uses the client terminal can use the device without being aware of information about the device.

これらの場合、デバイスは、デバイス本体とデバイスアダプタと、で構成され、デバイス本体は、デバイスアダプタを介してクライアント端末およびデバイスサーバと接続され、デバイスアダプタは、クライアント端末からのデバイス動作要求に基づき、デバイスサーバに対しデバイスコマンド要求を送信することが好ましい。   In these cases, the device is composed of a device body and a device adapter, the device body is connected to the client terminal and the device server via the device adapter, and the device adapter is based on a device operation request from the client terminal, It is preferable to send a device command request to the device server.

この構成によれば、デバイスアダプタを介してデバイス本体と、クライアント端末およびデバイスサーバと、をネットワーク接続できる。そして、デバイスアダプタによりクライアント端末からのデバイス動作要求等を受信すると共に、この要求に伴いデバイスサーバに対してデバイスコマンド要求を送信してデバイス本体の動作制御ができる。これにより、デバイス本体が直接ネットワークに接続できない場合でも、クライアント端末からネットワークを介してデバイスを使用することができる。   According to this configuration, the device main body, the client terminal, and the device server can be connected to the network via the device adapter. The device adapter receives a device operation request or the like from the client terminal, and transmits a device command request to the device server in accordance with this request to control the operation of the device body. Thereby, even when the device body cannot be directly connected to the network, the device can be used from the client terminal via the network.

これらの場合、アプリケーション実行サーバは、デバイスサーバに対し、デバイスを専有して使用するためのデバイス専有要求を送信するデバイス専有要求手段を、さらに備え、デバイスサーバは、デバイス専有要求に基づき、当該デバイスの使用を単一のアプリケーション実行サーバに限定するデバイス排他制御手段と、専有されたデバイスに対して、他のアプリケーション実行サーバから使用要求が有った場合、他のアプリケーション実行サーバに対して、当該デバイスの使用を禁止する旨を通知する通知手段と、を備えたことが好ましい。   In these cases, the application execution server further includes device exclusive request means for transmitting a device exclusive request for exclusive use of the device to the device server, and the device server is configured to transmit the device exclusive request based on the device exclusive request. Device exclusive control means that restricts the use to a single application execution server, and when there is a use request from another application execution server to a dedicated device, And a notification means for notifying that the use of the device is prohibited.

この構成によれば、アプリケーション実行サーバからのデバイス専有要求により、デバイスサーバは、対象となるデバイスの排他制御を行う。これにより、単一のアプリケーション実行サーバで、該当するデバイスを専有することができ、例えば、アプリケーション実行サーバで、デバイス動作を伴う優先度の高い処理を行う場合等、該当するデバイスを専有することで処理遅延を防止できる。なお、デバイス専有要求がされていないデバイスに関しては、複数のアプリケーション実行サーバで共有して使用可能である。   According to this configuration, the device server performs exclusive control of the target device in response to a device exclusive request from the application execution server. This allows a single application execution server to occupy the corresponding device. For example, when the application execution server performs high-priority processing involving device operations, Processing delay can be prevented. It should be noted that a device that is not requested for device exclusive use can be shared by a plurality of application execution servers.

これらの場合、アプリケーション実行サーバとクライアント端末、デバイスサーバとデバイス、がそれぞれインターネット接続されていることが好ましい。   In these cases, it is preferable that the application execution server and the client terminal, and the device server and the device are respectively connected to the Internet.

この構成によれば、アプリケーション実行サーバおよびデバイスサーバをインターネット上に配置することで、クライアント端末およびデバイスの設置場所に拘らず、上記両サーバにアクセスし、アプリケーションおよびデバイスを使用することができる。   According to this configuration, by arranging the application execution server and the device server on the Internet, it is possible to access both the servers and use the application and the device regardless of the installation location of the client terminal and the device.

これらの場合、アプリケーション実行サーバは、POSサーバとして機能し、クライアント端末は、POS端末として機能することが好ましい。   In these cases, it is preferable that the application execution server functions as a POS server and the client terminal functions as a POS terminal.

この構成によれば、各POS端末にアプリケーションやデバイスドライバをインストールする必要がないため、POS端末の低廉化を図ることができると共に、保守・管理に要する時間やコストを軽減できる。   According to this configuration, since it is not necessary to install an application or a device driver in each POS terminal, it is possible to reduce the cost of the POS terminal and reduce the time and cost required for maintenance and management.

これらの場合、アプリケーション実行サーバに接続されると共に、当該アプリケーション実行サーバと同様の処理を行うアプリケーション代理実行サーバと、デバイスサーバに接続されると共に、当該デバイスサーバと同様の処理を行う代理デバイスサーバと、をさらに備え、アプリケーション代理実行サーバと代理デバイスサーバと、がネットワーク接続され、アプリケーション代理実行サーバは、アプリケーション実行サーバが異常状態となった場合、アプリケーション実行サーバの処理を代理実行し、代理デバイスサーバは、デバイスサーバが異常状態となった場合、デバイスサーバの処理を代理実行することが好ましい。   In these cases, an application proxy execution server that is connected to the application execution server and performs processing similar to the application execution server, and a proxy device server that is connected to the device server and performs processing similar to the device server The application proxy execution server and the proxy device server are connected to the network, and the application proxy execution server performs proxy processing of the application execution server when the application execution server is in an abnormal state. In the case where the device server is in an abnormal state, it is preferable to execute the processing of the device server as a proxy.

この構成によれば、アプリケーション実行サーバが異常状態の場合、アプリケーション代理実行サーバにより、クライアント端末からの処理依頼を代理実行することができる。また、デバイスサーバが異常状態の場合には、代理デバイスサーバにより、デバイスからのデバイスコマンド要求依頼を代理実行することができる。これにより、アプリケーション代理サーバをアプリケーション実行サーバのバックアップサーバとして使用することができると共に、クライアント端末はアプリケーション実行サーバの不具合を意識することなく、アプリケーションの実行結果を取得することができる。また、代理デバイスサーバをデバイスサーバのバックアップとして使用できるため、デバイスサーバの状態を意識することなく、確実にデバイスを動作させることができる。なお、異常状態とは、正常状態でない状態であり、例えば、アプリケーション実行サーバのアプリケーションからの応答がない場合や、アプリケーション実行サーバまたはデバイスサーバが故障した場合をいう。   According to this configuration, when the application execution server is in an abnormal state, the application proxy execution server can execute a processing request from the client terminal as a proxy. When the device server is in an abnormal state, the proxy device server can execute a device command request request from the device by proxy. As a result, the application proxy server can be used as a backup server for the application execution server, and the client terminal can acquire the execution result of the application without being aware of the malfunction of the application execution server. In addition, since the proxy device server can be used as a backup of the device server, the device can be reliably operated without being aware of the state of the device server. The abnormal state is a state that is not a normal state, for example, a case where there is no response from the application of the application execution server, or a case where the application execution server or the device server fails.

この場合、アプリケーション実行サーバとアプリケーション代理実行サーバとの間、およびデバイスサーバと代理デバイスサーバとの間で、アプリケーション実行要求に関する情報の同期を取ることが好ましい。   In this case, it is preferable to synchronize information regarding application execution requests between the application execution server and the application proxy execution server and between the device server and the proxy device server.

この構成によれば、アプリケーション実行サーバとアプリケーション代理実行サーバの同期を取ることができ、例えば、アプリケーション実行サーバが異常状態になった場合でも、クライアント端末は、アプリケーション実行サーバに実行要求した場合の実行結果と同一の実行結果をアプリケーション代理実行サーバから取得することができる。また、デバイスサーバと代理デバイスサーバの同期を取ることで、例えば、デバイスサーバが異常状態になった場合でも、デバイスは、デバイスサーバに要求した場合の応答結果(コマンド変換情報や印刷データ)と同一の応答結果を代理デバイスサーバから取得することができる。   According to this configuration, the application execution server and the application proxy execution server can be synchronized. For example, even when the application execution server is in an abnormal state, the client terminal executes when the execution request is made to the application execution server. The same execution result as the result can be acquired from the application proxy execution server. In addition, by synchronizing the device server and the proxy device server, for example, even when the device server is in an abnormal state, the device is the same as the response result (command conversion information and print data) when requested to the device server. Can be obtained from the proxy device server.

これらの場合、アプリケーション実行サーバとアプリケーション代理実行サーバ、デバイスサーバと代理デバイスサーバ、がインターネット接続され、アプリケーション実行サーバ、デバイスサーバ、クライアント端末およびデバイスは、LAN接続されていることが好ましい。   In these cases, it is preferable that the application execution server and the application proxy execution server, the device server and the proxy device server are connected to the Internet, and the application execution server, the device server, the client terminal, and the device are LAN connected.

この構成によれば、アプリケーション実行サーバ、デバイスサーバ、クライアント端末およびデバイスがLAN接続されるため、アプリケーション実行サーバおよびデバイスサーバをインターネット上に設置する場合と比べ、アプリケーション実行サーバとクライアント端末との間、およびデバイスサーバとデバイスとの間の応答速度を速くすることができる。   According to this configuration, since the application execution server, the device server, the client terminal, and the device are LAN-connected, compared to the case where the application execution server and the device server are installed on the Internet, between the application execution server and the client terminal, In addition, the response speed between the device server and the device can be increased.

これらの場合、デバイスは、当該デバイスの設定サービスを行うためのデバイス設定手段を備え、クライアント端末は、デバイス設定手段による設定サービスを使用し、デバイスの設定を行うことが好ましい。   In these cases, it is preferable that the device includes device setting means for performing a setting service for the device, and the client terminal uses the setting service provided by the device setting means to perform device setting.

この構成によれば、クライアント端末から設定サービスを使用してデバイスの設定を行うことができるため、デバイスに入力装置を設ける必要がなく、簡単に且つ低コストでデバイスの設定を行うことができる。なお、ここでいう設定サービスとは、WebページによるUIやWebサービスAPI等によりデバイスの初期設定(IPアドレス、通信対象となるデバイスサーバ名等の設定)を行うものである。   According to this configuration, since it is possible to set the device using the setting service from the client terminal, it is not necessary to provide an input device in the device, and the device can be set easily and at low cost. Note that the setting service here refers to initial setting of a device (setting of an IP address, a device server name to be communicated, and the like) using a Web page UI, Web service API, or the like.

これらの場合、デバイスサーバは、制御対象となるデバイスの環境設定サービスを行うためのデバイス環境設定手段を備え、クライアント端末は、デバイス環境設定手段による環境設定サービスを使用し、デバイスの環境設定を行うことが好ましい。   In these cases, the device server includes device environment setting means for performing an environment setting service for the device to be controlled, and the client terminal uses the environment setting service provided by the device environment setting means to set the environment of the device. It is preferable.

この構成によれば、デバイスサーバが提供するデバイスの環境設定サービスを使用することで、クライアント端末から制御対象となるデバイスの環境設定(デバイスの登録・削除、デバイス名・IDの設定、デバイスのプロパティ設定等)を行うことができるため、デバイス毎に環境設定用の入力装置を設ける必要がなく、簡単に且つ低コストでデバイスの環境設定を行うことができる。なお、ここでいう環境設定サービスとは、WebページによるUIやWebサービスAPI等によりデバイスの環境設定を行うものである。   According to this configuration, by using the device environment setting service provided by the device server, the environment setting of the device to be controlled from the client terminal (device registration / deletion, device name / ID setting, device property Therefore, it is not necessary to provide an input device for setting the environment for each device, and the device environment can be set easily and at low cost. Note that the environment setting service here is for setting the environment of a device by a UI using a Web page, a Web service API, or the like.

これらの場合、アプリケーション実行サーバとデバイスサーバと、が単一のサーバとして構成されていることが好ましい。   In these cases, it is preferable that the application execution server and the device server are configured as a single server.

この構成によれば、アプリケーション実行サーバとデバイスサーバとを1台のサーバで構成することで、アプリケーション実行サーバとデバイスサーバとの間のデータ通信が不要となり、システムの処理速度が向上する。また、低コストでシステムを構築することができると共に、システム管理が容易になる。   According to this configuration, by configuring the application execution server and the device server with a single server, data communication between the application execution server and the device server becomes unnecessary, and the processing speed of the system is improved. In addition, a system can be constructed at a low cost, and system management becomes easy.

本発明のプログラムは、コンピュータを、上記に記載のネットワークシステムにおけるアプリケーション実行サーバまたはデバイスサーバの各手段として機能させるためのものであることを特徴とする。   The program of the present invention is a program for causing a computer to function as each means of an application execution server or a device server in the network system described above.

このプログラムを用いることにより、クライアント端末にデバイスドライバをインストールすることなく、クライアント端末からの動作要求に基づきデバイスを動作させることができる。   By using this program, the device can be operated based on an operation request from the client terminal without installing a device driver in the client terminal.

本発明の一実施形態に係るPOSシステムのシステム構成図である。1 is a system configuration diagram of a POS system according to an embodiment of the present invention. POSシステムのブロック図である。It is a block diagram of a POS system. デバイスアダプタをソフトウェアで実現した場合のシステム構成図である。It is a system block diagram at the time of implement | achieving a device adapter with software. ホスト装置から印刷装置を動作させる手順について説明するフローチャートである。6 is a flowchart illustrating a procedure for operating a printing apparatus from a host apparatus. ホスト装置から印刷装置を動作させる手順について説明するフローチャートである。6 is a flowchart illustrating a procedure for operating a printing apparatus from a host apparatus. POSサーバとホスト装置との間の認証処理手順について説明するフローチャートである。It is a flowchart explaining the authentication processing procedure between a POS server and a host device. デバイスサーバとデバイスとの間の認証処理手順について説明するフローチャートである。It is a flowchart explaining the authentication processing procedure between a device server and a device. 印刷装置でエラーが発生した場合の処理手順について説明するフローチャートである。6 is a flowchart illustrating a processing procedure when an error occurs in the printing apparatus. 印刷装置を一時停止させる場合の処理手順について説明するフローチャートである。6 is a flowchart for describing a processing procedure when the printing apparatus is temporarily stopped. 印刷装置を一時停止させる場合の処理手順について説明するフローチャートである。6 is a flowchart for describing a processing procedure when the printing apparatus is temporarily stopped. 代理POSサーバおよび代理デバイスサーバを導入した場合のシステム構成図である。It is a system block diagram at the time of introducing a proxy POS server and a proxy device server.

以下、添付の図面を参照して、本実施形態に係るネットワークシステムについて説明する。本実施形態に係るネットワークシステムは、クライアント端末にデバイスドライバをインストールすることなく、クライアント端末からのデバイス動作要求に基づき、対象となるデバイスを使用することができるシステムである。以下、本発明のネットワークシステムを、スーパーやコンビニエンス・ストア等の店舗にて使用されるPOSシステムに適用した場合を例に挙げて説明する。なお、本発明のデバイスとは、キーボードデバイスやポインタデバイス以外の非標準デバイスを対象とする。   Hereinafter, a network system according to the present embodiment will be described with reference to the accompanying drawings. The network system according to the present embodiment is a system that can use a target device based on a device operation request from a client terminal without installing a device driver in the client terminal. Hereinafter, a case where the network system of the present invention is applied to a POS system used in a store such as a supermarket or a convenience store will be described as an example. The device of the present invention is intended for non-standard devices other than keyboard devices and pointer devices.

図1に示すように、本発明の一実施形態に係るPOSシステム1(ネットワークシステム)は、オペレータによって商品情報が入力され、清算金額を算出する複数のPOS端末2(図1では2台)と、POS端末2とインターネット6で接続される共に、当該POS端末2を管理するPOSサーバ3(アプリケーション実行サーバ)と、POS端末2とインターネット6で接続され、POS端末2の構成要素である各種デバイス5を管理するデバイスサーバ4と、から構成されている。POSサーバ3およびデバイスサーバ4をインターネット6上に設置することで、POS端末2の設置場所に拘らずアクセスすることが可能となり、多数のユーザに同一品質のPOSサービスおよびデバイスサービスを提供することができる。   As shown in FIG. 1, a POS system 1 (network system) according to an embodiment of the present invention includes a plurality of POS terminals 2 (two in FIG. 1) that receive merchandise information and calculates a settlement amount. A POS server 3 (application execution server) that is connected to the POS terminal 2 via the Internet 6 and manages the POS terminal 2, and various devices that are connected to the POS terminal 2 via the Internet 6 and are components of the POS terminal 2 And a device server 4 that manages the device 5. By installing the POS server 3 and the device server 4 on the Internet 6, it becomes possible to access regardless of the installation location of the POS terminal 2, and to provide a POS service and a device service of the same quality to many users. it can.

POSサーバ3は、いわゆるWebアプリケーションサーバとして構築され、図2に示すように、CPU11(Central Processing Unit)、ROM12(Read Only Memory)、RAM13(Random Access Memory)、HDD14(Hard Disk Drive)、入力デバイス15、ディスプレイ16、入出力インターフェース(Input/Output)17、通信インターフェース18を備え、ROM12内に記憶された制御プログラムに従って、RAM13内のデータの処理を行う。HDD14には、HTTPサーバ21、HTTPクライアント22、POSアプリケーション23(Webアプリケーション)、商品マスタ24(データベース)が記憶されている。   The POS server 3 is constructed as a so-called Web application server. As shown in FIG. 2, the CPU 11 (Central Processing Unit), ROM 12 (Read Only Memory), RAM 13 (Random Access Memory), HDD 14 (Hard Disk Drive), input device 15, a display 16, an input / output interface (Input / Output) 17, and a communication interface 18, and processes data in the RAM 13 in accordance with a control program stored in the ROM 12. The HDD 14 stores an HTTP server 21, an HTTP client 22, a POS application 23 (Web application), and a product master 24 (database).

POSサーバ3は、HTTPサーバ21を介して、ハイパーテキスト転送プロトコル(HTTP)に基づいてPOS端末2(ホスト装置51のブラウザ71)と通信を行う。つまり、POSサーバ3のCPU11は、POS端末2(ホスト装置51)からのデバイス動作を含むアプリケーション実行要求を、通信インターフェース18を介してHTTPリクエストとして受信し(実行要求受信手段)、当該アプリケーション実行要求に対する実行結果をHTML形式やXML形式のデータ(ページ)としてPOS端末2に送信(応答)する(第1応答データ送信手段)。この場合、CPU11は、POS端末2からデバイス動作を含むアプリケーション実行要求を受信すると、その応答データとして、動作対象となるデバイス5(例えば、印刷装置54、スキャナ等の周辺機器)を特定するデバイス特定情報(当該デバイス5のIPアドレス)、デバイス5の動作を指定する動作情報(例えば、デバイス操作のためのAPI等の情報)等をタグとして挿入したデータ(ページ)、あるいは、後述するデバイスサーバ4での処理結果等をHTML形式、若しくはXML形式のデータ(ページ)としてPOS端末2に送信する。   The POS server 3 communicates with the POS terminal 2 (the browser 71 of the host device 51) based on the hypertext transfer protocol (HTTP) via the HTTP server 21. That is, the CPU 11 of the POS server 3 receives an application execution request including a device operation from the POS terminal 2 (host device 51) as an HTTP request via the communication interface 18 (execution request receiving means), and receives the application execution request. Is transmitted (response) to the POS terminal 2 as data (page) in HTML format or XML format (first response data transmission means). In this case, when the CPU 11 receives the application execution request including the device operation from the POS terminal 2, the device specification that specifies the device 5 (for example, the peripheral device such as the printing apparatus 54 or the scanner) as the operation target as the response data. Data (page) in which information (IP address of the device 5), operation information for specifying the operation of the device 5 (for example, information such as API for device operation) and the like are inserted as tags, or a device server 4 described later The processing result in step S1 is transmitted to the POS terminal 2 as data (page) in HTML format or XML format.

一方、デバイスサーバ4(HTTPサーバ41)との通信は、POSサーバ3のHTTPクライアント22を介して、SOAP(Simple Object Access Protocol)に基づいて行う(転送プロトコルはHTTPを使用)。POSサーバ3のCPU11は、上記のデバイス動作を含むアプリケーション実行要求に基づいてデバイス制御情報(対象となるデバイス5の情報)を生成し、当該デバイス制御情報と処理対象となるデータ(例えば、印刷データ等)と、をHTTPリクエストとしてデバイスサーバ4に送信する(デバイス制御情報送信手段)。そして、デバイスサーバ4から当該リクエストに対する処理結果を受信する。なお、デバイス制御情報は、XML形式(若しくは、HTML形式)のデータとして生成される。   On the other hand, communication with the device server 4 (HTTP server 41) is performed based on SOAP (Simple Object Access Protocol) via the HTTP client 22 of the POS server 3 (the transfer protocol uses HTTP). The CPU 11 of the POS server 3 generates device control information (information of the target device 5) based on the application execution request including the above device operation, and the device control information and data to be processed (for example, print data) Etc.) as an HTTP request to the device server 4 (device control information transmitting means). Then, the processing result for the request is received from the device server 4. The device control information is generated as data in XML format (or HTML format).

POSアプリケーション23は、POS端末2からの要求に基づいて決済処理を行うためのものである。例えば、POS端末2から商品の入力情報が送信されると、CPU11は、POSアプリケーション23を実行し、当該入力情報に基づいて、商品マスタ24から商品コード、商品名、金額に関する情報を抽出し、レシートの印刷およびPOS端末2のカスタマディスプレイ52の表示に用いる商品データを生成する。また、CPU11は、POS端末2からの入力情報や生成した上記商品データからレシートに印刷するための決済情報印刷データを生成する。これらの生成したデータは、POS端末2からのアプリケーション実行要求に伴い、上記のデバイス制御情報と共にデバイスサーバ4に送信される。なお、ここで生成される各データは、HTML形式、若しくはXML形式のデータである。   The POS application 23 is for performing a payment process based on a request from the POS terminal 2. For example, when product input information is transmitted from the POS terminal 2, the CPU 11 executes the POS application 23, and extracts information on the product code, product name, and price from the product master 24 based on the input information. Product data used for printing the receipt and displaying on the customer display 52 of the POS terminal 2 is generated. Further, the CPU 11 generates settlement information print data for printing on a receipt from the input information from the POS terminal 2 and the generated product data. These generated data are transmitted to the device server 4 together with the device control information in accordance with the application execution request from the POS terminal 2. Each data generated here is data in HTML format or XML format.

また、POSサーバ3のCPU11は、POS端末2を使用するユーザ(従業員)のアカウント管理を行い、ユーザの識別を行う。CPU11は、POS端末2から送信されるユーザIDおよびパスワードを受信し、POSサーバ3に登録されているものと一致するか否かを認証する。認証が成功した場合は、POSサーバ3へのアクセスを許可し、失敗した場合は、再度ユーザIDおよびパスワードを入力させる、あるいはアクセス拒否通知を送信するなどの処理を実行する。   Further, the CPU 11 of the POS server 3 performs account management of a user (employee) who uses the POS terminal 2 and identifies the user. The CPU 11 receives the user ID and password transmitted from the POS terminal 2 and authenticates whether or not the user ID and password registered in the POS server 3 match. If the authentication is successful, access to the POS server 3 is permitted. If the authentication is unsuccessful, the user ID and password are input again, or an access rejection notification is transmitted.

デバイスサーバ4は、Webアプリケーションサーバとして構築され、図2に示すように、CPU31、ROM32、RAM33、HDD34、入力デバイス35、ディスプレイ36、入出力インターフェース37、通信インターフェース38を備え、ROM32内に記憶された制御プログラムに従って、RAM33内のデータの処理を行う。HDD34には、HTTPサーバ41、デバイス管理アプリケーション42(Webアプリケーション)、デバイス管理データベース43が記憶されている。   The device server 4 is constructed as a Web application server, and includes a CPU 31, a ROM 32, a RAM 33, an HDD 34, an input device 35, a display 36, an input / output interface 37, and a communication interface 38 as shown in FIG. 2, and is stored in the ROM 32. The data in the RAM 33 is processed according to the control program. The HDD 34 stores an HTTP server 41, a device management application 42 (Web application), and a device management database 43.

デバイスサーバ4は、HTTPサーバ41を介して、SOAPに基づいてPOSサーバ3と通信を行う(転送プロトコルはHTTPを使用)。つまり、デバイスサーバ4のCPU31は、POSサーバ3(HTTPクライアント22)からのデバイス制御情報および処理対象となるデータ(印刷データ等)を、通信インターフェース38を介してHTTPリクエストとして受信する。そして、CPU31は、デバイス管理アプリケーション42により、デバイス管理データベース43を参照して当該デバイス制御情報を制御対象となるデバイス5に対応するようにコマンド変換し、その変換したコマンド変換情報を、デバイス別のキューに保存する(コマンド変換情報保存手段)。その後、CPU31は、POSサーバ3に対し、コマンド変換情報の保存処理に伴う結果(保存の成功/失敗)をXML形式のデータとして送信(応答)する(保存応答手段)。なお、デバイス管理データベース43には、各デバイス5に対応するデバイスドライバの情報が記録されており、CPU31は、この情報に基づいて、デバイス制御情報を制御対象となるデバイス5に即したコマンドに変換する。また、POSサーバ3からの各処理要求に対してジョブIDを付与し、例えば、印刷のキャンセル処理等が発生した場合に、当該ジョブIDを指定して処理を行う。   The device server 4 communicates with the POS server 3 based on SOAP via the HTTP server 41 (HTTP is used as a transfer protocol). That is, the CPU 31 of the device server 4 receives the device control information from the POS server 3 (HTTP client 22) and the data to be processed (print data and the like) as an HTTP request via the communication interface 38. The CPU 31 uses the device management application 42 to refer to the device management database 43 to convert the device control information so as to correspond to the device 5 to be controlled, and to convert the converted command conversion information for each device. Save in queue (command conversion information storage means). Thereafter, the CPU 31 transmits (responds) the result (success / failure of the storage) associated with the command conversion information storage processing to the POS server 3 as XML format data (storage response means). The device management database 43 records device driver information corresponding to each device 5, and based on this information, the CPU 31 converts the device control information into a command suitable for the device 5 to be controlled. To do. Also, a job ID is assigned to each processing request from the POS server 3, and for example, when a print canceling process or the like occurs, the job ID is specified to perform processing.

また、デバイスサーバ4は、HTTPサーバ41を介して、HTTPに基づいてデバイス5(あるいは、デバイスアダプタ53)とも通信を行う。デバイスサーバ4のCPU31は、デバイス5(HTTPクライアント86、96)からのデバイスコマンド要求をHTTPリクエストとして受信する。そして、当該デバイスコマンド要求に基づいて、対象となるデバイス5用のキューに保存したデバイス制御情報(コマンド等)を順番に取り出し、応答データとしてデバイス5に送信する。また、デバイス5側でデータ出力やデータの書き込みを行うための対象となるデータが有る場合には、当該データを対象となるデバイス5で処理可能な形式のデータに変換し、上記のデバイス制御情報と合わせて送信する。   The device server 4 also communicates with the device 5 (or the device adapter 53) based on HTTP via the HTTP server 41. The CPU 31 of the device server 4 receives a device command request from the device 5 (HTTP clients 86 and 96) as an HTTP request. Then, on the basis of the device command request, device control information (command or the like) stored in the target device 5 queue is sequentially extracted and transmitted to the device 5 as response data. Further, when there is data that is a target for data output or data writing on the device 5 side, the data is converted into data in a format that can be processed by the target device 5, and the above device control information And send it together.

また、デバイスサーバ4のCPU31は、デバイス5のアカウント管理を行い、デバイス5の識別を行う。CPU31は、デバイス5から送信されるデバイスIDおよびパスワードを受信し、デバイスサーバ4に登録されているものと一致するか否かを認証する。認証が成功した場合は、デバイスサーバ4へのアクセスを許可し、失敗した場合は、デバイスサーバ4のアクセスを拒否すると共に、デバイス5に対してその旨を通知する。これにより、確実にデバイス5を識別することができ、誤って別のデバイス5にデータを送信する等のトラブルを防止することができる。   Further, the CPU 31 of the device server 4 performs account management of the device 5 and identifies the device 5. The CPU 31 receives the device ID and password transmitted from the device 5 and authenticates whether or not they match those registered in the device server 4. If the authentication is successful, access to the device server 4 is permitted. If the authentication is unsuccessful, the access to the device server 4 is rejected and the device 5 is notified of this. As a result, the device 5 can be reliably identified, and troubles such as sending data to another device 5 by mistake can be prevented.

また、デバイスサーバ4は、自身が管理する各デバイス5の環境設定を行うための環境設定サービスを備え、POS端末2(ホスト装置51)等にデバイス環境設定機能を提供する(デバイス環境設定手段)。この環境設定サービスでは、例えば、デバイス5の登録・削除、デバイス名・IDの設定、デバイス5のプロパティ設定等を行うことができる。なお、この環境設定サービスは、例えば、WebページによるUI(User Interface)やWebサービスAPI(Application Program Interface)として提供することが好ましい。これにより、デバイス5毎に環境設定用の入力装置を設ける必要がなく、簡単に且つ低コストでデバイス5の設定を行うことができる。   The device server 4 also includes an environment setting service for setting the environment of each device 5 managed by the device server 4 and provides a device environment setting function to the POS terminal 2 (host device 51) (device environment setting means). . In this environment setting service, for example, registration / deletion of the device 5, device name / ID setting, property setting of the device 5, and the like can be performed. The environment setting service is preferably provided as, for example, a UI (User Interface) or a Web service API (Application Program Interface) using a Web page. Thereby, it is not necessary to provide an input device for setting the environment for each device 5, and the device 5 can be set easily and at low cost.

一方、POS端末2は、POSサーバ3から商品データを取得するホスト装置51(クライアント端末)と、商品名や売上金額等を表示するカスタマディスプレイ52(デバイス本体)と、カスタマディスプレイ52をホスト装置51にネットワーク接続するためのデバイスアダプタ53と、レシートに決済情報を印刷する印刷装置54と、を備え、これらはLAN55により接続されている(図1参照)。   On the other hand, the POS terminal 2 includes a host device 51 (client terminal) that acquires product data from the POS server 3, a customer display 52 (device body) that displays product names, sales amounts, and the like, and a customer display 52 that displays the customer display 52. A device adapter 53 for connecting to a network and a printing device 54 for printing payment information on a receipt are connected via a LAN 55 (see FIG. 1).

ホスト装置51は、図2に示すように、CPU61、ROM62、RAM63、HDD64、入出力インターフェース65、標準入力デバイス66、通信インターフェース67を備え、HDD64には、ブラウザ71(Webブラウザ)が記憶されている。CPU61は、ROM62内に記憶された制御プログラムに従って、RAM63内のデータの処理を行う。標準入力デバイス66としては、キーボード72、バーコードスキャナ73(バーコードリーダ)を備え、CPU61は、キーボード72による入力およびバーコードスキャナ73による読み取りによって、POSサーバ3から商品コードや商品名、金額等に関する商品データを取得する。   As shown in FIG. 2, the host device 51 includes a CPU 61, a ROM 62, a RAM 63, an HDD 64, an input / output interface 65, a standard input device 66, and a communication interface 67. The HDD 64 stores a browser 71 (Web browser). Yes. The CPU 61 processes data in the RAM 63 according to a control program stored in the ROM 62. The standard input device 66 includes a keyboard 72 and a barcode scanner 73 (barcode reader). The CPU 61 receives a product code, a product name, a price, and the like from the POS server 3 by inputting with the keyboard 72 and reading with the barcode scanner 73. Get product data about.

ブラウザ71は、プラグインモジュールを有さない単機能ブラウザ(標準ブラウザ)であり、CPU61は、このブラウザ71を使用して、通信インターフェース67を介してネットワーク接続(インターネット接続、またはLAN接続)されたPOSサーバ3、およびカスタマディスプレイ52(デバイスアダプタ53)や印刷装置54等のデバイス5と通信を行う。この通信は、HTTPに基づいて行われ、http(s)://x.x.x.x/のようなURIを指定することで、POSサーバ3および各デバイス5と接続することにより行われる。   The browser 71 is a single function browser (standard browser) having no plug-in module, and the CPU 61 is connected to the network (Internet connection or LAN connection) via the communication interface 67 using the browser 71. It communicates with the POS server 3 and the devices 5 such as the customer display 52 (device adapter 53) and the printing apparatus 54. This communication is performed based on HTTP, http (s): // x. x. x. This is done by connecting to the POS server 3 and each device 5 by specifying a URI such as x /.

CPU61は、ブラウザ71を使用して、標準入力デバイス66からの入力情報に基づき、POSサーバ3にアプリケーション実行要求を送信する。この時、POSサーバ3からの応答データをカスタマディスプレイ52に表示、あるいは印刷装置54で印刷する等のデバイス動作を伴う場合は、上記アプリケーション実行要求にデバイス動作を伴う旨の情報を含めて送信する。そして、CPU61は、POSサーバ3から動作対象となるデバイス5(カスタマディスプレイ52や印刷装置54等)を特定する情報(デバイス特定情報)、デバイス5の動作を指定する動作情報等をタグとして挿入したHTML形式、若しくはXML形式の応答データを受信(取得)する。その後、CPU61は、受信した応答データに基づいて、対象となるデバイス5に対してデバイス動作要求を送信する(動作要求手段)。また、CPU61は、デバイス5からデバイス動作要求に対する動作結果を含む応答データを受信し(動作結果受信手段)、この応答データによりデバイスの動作結果を判別し、所定の処理を行う。つまり、デバイス5を動作させる場合、ホスト装置51は、ブラウザ71を使用して、デバイス動作要求(HTTPリクエスト)をデバイス5に送信するだけでよく、従来のようにホスト装置51自身でデバイス5を制御する必要がない。これにより、ホスト装置51には、ホスト装置51の環境(OSの種類等)に依存したデバイスドライバが不要となる。また、ブラウザ71は、単機能ブラウザでよく、プラグインモジュールを必要としないため、ホスト装置51の環境に依存することなく、デバイス5にアクセスすることができる。   The CPU 61 transmits an application execution request to the POS server 3 based on the input information from the standard input device 66 using the browser 71. At this time, when the response data from the POS server 3 is displayed on the customer display 52 or accompanied by a device operation such as printing by the printing device 54, the application execution request is transmitted including information indicating that the device operation is accompanied. . Then, the CPU 61 inserts information (device specifying information) for specifying the device 5 (customer display 52, printing device 54, etc.) to be operated from the POS server 3 and operation information for specifying the operation of the device 5 as tags. Receive (acquire) response data in HTML format or XML format. Thereafter, the CPU 61 transmits a device operation request to the target device 5 based on the received response data (operation request unit). Further, the CPU 61 receives response data including an operation result for the device operation request from the device 5 (operation result receiving means), determines the operation result of the device based on this response data, and performs a predetermined process. In other words, when the device 5 is operated, the host device 51 only needs to transmit a device operation request (HTTP request) to the device 5 using the browser 71. There is no need to control. As a result, the host device 51 does not require a device driver depending on the environment (such as the type of OS) of the host device 51. Further, since the browser 71 may be a single function browser and does not require a plug-in module, it can access the device 5 without depending on the environment of the host device 51.

なお、デバイス5からの応答データには、デバイス動作の成功/失敗の情報のみならず、デバイス5が生成したデータ(画像データや、文書データ等)も含まれる。この場合、ホスト装置51のCPU61は、当該データをPOSサーバ3に送信(アップロード)することが可能である。また、POSサーバ3からの応答データ内に、デバイス5に関する情報(デバイス5のアドレス)を含むタグが挿入されているため、POSサーバ3とデバイス5とのドメインが異なる場合でも、問題なくデバイス5にアクセスが可能(クロスサイトアクセスが可能)となり、POSサーバ3とデバイス5とがシームレスに連携することができる。これにより、ユーザは、デバイス5に関する情報を意識することなくデバイス5にアクセスすることができる。なお、当該タグは、POSサーバ3側で応答データ内に挿入しても良いし、あるいは、ホスト装置51側でタグを生成し、動的に応答データに挿入するようにしてもよい。   The response data from the device 5 includes not only information on the success / failure of the device operation but also data (image data, document data, etc.) generated by the device 5. In this case, the CPU 61 of the host device 51 can transmit (upload) the data to the POS server 3. Further, since a tag including information about the device 5 (the address of the device 5) is inserted in the response data from the POS server 3, even if the domains of the POS server 3 and the device 5 are different, the device 5 can be used without any problem. Can be accessed (cross-site access is possible), and the POS server 3 and the device 5 can cooperate seamlessly. Thereby, the user can access the device 5 without being aware of information related to the device 5. The tag may be inserted into the response data on the POS server 3 side, or a tag may be generated on the host device 51 side and dynamically inserted into the response data.

カスタマディスプレイ52は、標準入力デバイス66により入力された(読み取られた)商品情報を表示し、顧客に対して購入商品の一覧、金額等を提示する。本実施形態で説明するカスタマディスプレイ52は、単体ではネットワーク接続が不可能なものを想定しており、デバイスアダプタ53を介して、ホスト装置51とLAN55で接続されると共に、デバイスサーバ4とインターネット6接続される。これにより、ネットワーク接続ができないデバイス5であっても、ホスト装置51からネットワークを介してデバイス5を使用することができる。   The customer display 52 displays product information input (read) by the standard input device 66, and presents a list of purchased products, a price, etc. to the customer. The customer display 52 described in the present embodiment assumes that a single unit cannot be connected to the network, and is connected to the host device 51 via the device adapter 53 via the LAN 55 and to the device server 4 and the Internet 6. Connected. Thereby, even if the device 5 cannot be connected to the network, the device 5 can be used from the host device 51 via the network.

デバイスアダプタ53は、CPU81、記憶部82および通信インターフェース83を有し、記憶部82には、HTTPサーバ85およびHTTPクライアント86を備えている。デバイスアダプタ53は、HTTPサーバ85を介して、HTTPに基づいてホスト装置51(ブラウザ71)と通信を行う。CPU81は、通信インターフェース83を介してLAN55で接続されたホスト装置51(ブラウザ71)から、HTTPリクエストとしてカスタマディスプレイ52への表示要求(デバイス動作要求)を受信する。そして、CPU81は、ホスト装置51から受信したカスタマディスプレイ52への表示要求に基づき、HTTPクライアント86を介して、デバイスサーバ4(HTTPサーバ41)に対し、デバイスコマンド要求(HTTPリクエスト)を送信する(コマンド要求送信手段)。この時、デバイスアダプタ53(CPU81)は、自身のデバイスIDおよびパスワードを合わせて送信し、デバイスサーバ4による認証を受ける。そして、認証成功後、CPU81は、デバイスサーバ4から、当該要求に対応するデバイスコマンド(デバイス制御情報)および表示データを受信する。そして、CPU81は、このデバイスコマンドおよび表示データに基づいて、カスタマディスプレイ52を制御して所望の文字や画像を表示させ(動作手段)、その結果(正常に表示できたか否か)を、HTTPサーバ85を介してホスト装置51(ブラウザ71)に送信する(動作結果送信手段)。   The device adapter 53 includes a CPU 81, a storage unit 82, and a communication interface 83, and the storage unit 82 includes an HTTP server 85 and an HTTP client 86. The device adapter 53 communicates with the host device 51 (browser 71) via the HTTP server 85 based on HTTP. The CPU 81 receives a display request (device operation request) to the customer display 52 as an HTTP request from the host device 51 (browser 71) connected via the LAN 55 via the communication interface 83. Then, the CPU 81 transmits a device command request (HTTP request) to the device server 4 (HTTP server 41) via the HTTP client 86 based on the display request on the customer display 52 received from the host device 51 ( Command request transmission means). At this time, the device adapter 53 (CPU 81) transmits its own device ID and password together and is authenticated by the device server 4. After successful authentication, the CPU 81 receives a device command (device control information) and display data corresponding to the request from the device server 4. Then, the CPU 81 controls the customer display 52 based on this device command and display data to display a desired character or image (operation means), and the result (whether it can be normally displayed) is displayed on the HTTP server. It is transmitted to the host device 51 (browser 71) via 85 (operation result transmitting means).

なお、上記では、デバイスアダプタ53をハードウェアとして構成しているが、これに限らず、ソフトウェアとして構成してもよい。この場合、ソフトウェアデバイスアダプタ87をホスト装置51に組み込み、カスタマディスプレイ52に所望の情報を表示させることが好ましい(図3参照)。   In the above description, the device adapter 53 is configured as hardware, but is not limited thereto, and may be configured as software. In this case, it is preferable to incorporate the software device adapter 87 into the host device 51 and display desired information on the customer display 52 (see FIG. 3).

印刷装置54は、レシート上に決済情報を印刷するレシートプリンタであり、CPU91、記憶部92、印刷部93および通信インターフェース94を備え、通信インターフェース94を介してホスト装置51とLAN55で接続されると共に、デバイスサーバ4とインターネット6で接続されている。また、記憶部92には、HTTPサーバ95と、HTTPクライアント96と、を有している(図2参照)。   The printing device 54 is a receipt printer that prints settlement information on a receipt, and includes a CPU 91, a storage unit 92, a printing unit 93, and a communication interface 94, and is connected to the host device 51 via the communication interface 94 via the LAN 55. The device server 4 is connected to the Internet 6. In addition, the storage unit 92 includes an HTTP server 95 and an HTTP client 96 (see FIG. 2).

印刷装置54は、HTTPサーバ95を介して、HTTPに基づいてホスト装置51(ブラウザ71)と通信を行う。CPU91は、HTTPサーバ95により、通信インターフェース94を介してLAN55で接続されたホスト装置51(ブラウザ71)から、HTTPリクエストとして印刷要求(デバイス動作要求)を受信する。そして、CPU91は、ホスト装置51から受信した印刷要求に基づき、HTTPクライアント96を介して、デバイスサーバ4(HTTPサーバ41)に対し、デバイスコマンド要求(HTTPリクエスト)を送信する(コマンド要求送信手段)。この時、印刷装置54(CPU91)は、自身のデバイスIDおよびパスワードを合わせて送信し、デバイスサーバ4による認証を受ける。そして、認証成功後、CPU91は、デバイスサーバ4から、当該要求に対応するデバイスコマンド(デバイス制御情報)および印刷データを受信する。そして、CPU91は、このデバイスコマンドおよび印刷データに基づいて、印刷部93を制御して印刷処理を行い(動作手段)、その印刷処理結果(成功/失敗)を、HTTPサーバ95を介してホスト装置51(ブラウザ71)に送信する(動作結果送信手段)。   The printing apparatus 54 communicates with the host apparatus 51 (browser 71) based on HTTP via the HTTP server 95. The CPU 91 receives a print request (device operation request) as an HTTP request from the host device 51 (browser 71) connected by the LAN 55 via the communication interface 94 by the HTTP server 95. Then, the CPU 91 transmits a device command request (HTTP request) to the device server 4 (HTTP server 41) via the HTTP client 96 based on the print request received from the host device 51 (command request transmitting means). . At this time, the printing device 54 (CPU 91) transmits its own device ID and password together and is authenticated by the device server 4. After successful authentication, the CPU 91 receives a device command (device control information) and print data corresponding to the request from the device server 4. Then, the CPU 91 controls the printing unit 93 based on the device command and the print data to perform the printing process (operation means), and the printing process result (success / failure) is sent via the HTTP server 95 to the host device. 51 (browser 71) (operation result transmission means).

また、印刷装置54は、自身の初期設定を行うための設定サービスを備え、ホスト装置51等にデバイス設定機能を提供する(デバイス設定手段)。この設定サービスは、例えば、WebページによるUI(User Interface)やWebサービスAPI(Application Program Interface)として提供することが好ましい。これにより、印刷装置54(デバイス5)に入力装置を設ける必要がなく、簡単に且つ低コストで印刷装置54(デバイス5)の設定を行うことができる。   Further, the printing apparatus 54 includes a setting service for performing its own initial setting, and provides a device setting function to the host apparatus 51 and the like (device setting means). This setting service is preferably provided as, for example, a UI (User Interface) or a Web service API (Application Program Interface) using a Web page. Thereby, it is not necessary to provide an input device in the printing apparatus 54 (device 5), and the setting of the printing apparatus 54 (device 5) can be performed easily and at low cost.

次に、図4および図5を参照して、本発明のPOSシステム1において、ホスト装置51からデバイス5を動作させる手順について説明する。ここでは、対象となるデバイス5として、印刷装置54を例に挙げ、入力された商品情報に基づいてレシートを印刷する手順について説明する。まず、ホスト装置51がPOSサーバ3に接続すると、POSサーバ3は、ホスト装置51を使用するユーザの認証処理を行う(S01,詳細は後述)。ユーザ認証終了後、ホスト装置51は、標準入力デバイス66(キーボード72やバーコードスキャナ73)により商品情報を入力(読み取り)し、POSサーバ3に対して入力した商品情報に基づくレシート印刷要求(アプリケーション実行要求)を送信する(S02)。このレシート印刷要求は、ホスト装置51のブラウザ71から、HTTPリクエストとしてPOSサーバ3(HTTPサーバ21)に送信される。   Next, a procedure for operating the device 5 from the host device 51 in the POS system 1 of the present invention will be described with reference to FIGS. Here, the printing device 54 is taken as an example of the target device 5, and a procedure for printing a receipt based on the input product information will be described. First, when the host device 51 connects to the POS server 3, the POS server 3 performs an authentication process for a user who uses the host device 51 (S01, details will be described later). After the user authentication is completed, the host device 51 inputs (reads) product information using the standard input device 66 (keyboard 72 or bar code scanner 73), and receives a receipt print request (application) based on the product information input to the POS server 3. (Execution request) is transmitted (S02). The receipt print request is transmitted from the browser 71 of the host device 51 to the POS server 3 (HTTP server 21) as an HTTP request.

POSサーバ3は、レシート印刷要求を受信すると(S03,実行要求受信手段)、当該要求に基づき、POSアプリケーション23を実行してXML形式のデバイス制御情報(印刷装置54に関する情報)および印刷対象となる決済情報印刷データを生成し(S04)、デバイスサーバ4に送信する(S05,デバイス制御情報送信手段)。デバイスサーバ4は、デバイス制御情報および決済情報印刷データを受信し(S06)、当該デバイス制御情報を制御対象となる印刷装置54に対応するようにコマンド変換してコマンド変換情報(デバイスコマンド)を生成し(S07)、当該印刷装置54用のキューに保存する(S08,コマンド変換情報保存手段)。そして、デバイスサーバ4は、POSサーバ3に対し、この保存処理に伴う結果(保存の成功/失敗)を送信する(S09,保存応答手段)。   When the POS server 3 receives the receipt print request (S03, execution request receiving means), the POS server 23 executes the POS application 23 based on the request and becomes the device control information in the XML format (information on the printing apparatus 54) and the print target. Payment information print data is generated (S04) and transmitted to the device server 4 (S05, device control information transmission means). The device server 4 receives the device control information and the payment information print data (S06), converts the device control information into a command so as to correspond to the printing device 54 to be controlled, and generates command conversion information (device command). In step S07, the data is stored in the queue for the printing apparatus 54 (step S08, command conversion information storage unit). Then, the device server 4 transmits a result (success / failure of the storage) accompanying the storage process to the POS server 3 (S09, storage response means).

POSサーバ3は、デバイスサーバ4から処理結果を受信すると(S10)、HTML形式(若しくはXML形式)の第1応答データ(ページ)を生成する(S11)。この第1応答データには、印刷装置54の特定情報(IPアドレス等)、印刷装置54の起動に関する情報(起動用のAPI名等)、印刷装置54からのコールバックを受けるためのJavaScript(登録商標)の関数が埋め込まれている。そして、POSサーバ3は、ホスト装置51に対して当該第1応答データ(ページ)を送信する(S12,第1応答データ送信手段)。   When receiving the processing result from the device server 4 (S10), the POS server 3 generates first response data (page) in HTML format (or XML format) (S11). The first response data includes specific information (such as an IP address) of the printing apparatus 54, information related to activation of the printing apparatus 54 (such as an activation API name), and JavaScript (registered) for receiving a callback from the printing apparatus 54. Trademark) function is embedded. Then, the POS server 3 transmits the first response data (page) to the host device 51 (S12, first response data transmission means).

ホスト装置51(ブラウザ71)は、第1応答データを受信し(S13)、当該第1応答データに基づいて、印刷装置54(HTTPサーバ95)に対してHTTPリクエストとして印刷装置起動要求(デバイス起動要求)を送信する(S14,動作要求手段)。   The host device 51 (browser 71) receives the first response data (S13), and based on the first response data, the printing device activation request (device activation) as an HTTP request to the printing device 54 (HTTP server 95). Request) is transmitted (S14, operation request means).

印刷装置54(HTTPサーバ95)は、ホスト装置51からの印刷装置起動要求を受信し(S15)、これに伴い、デバイスサーバ4に対して自身のデバイスIDおよびパスワード送信する。そして、デバイスサーバ4は、受信した印刷装置54のIDとパスワードに基づいて印刷装置54の認証処理(デバイス認証)を行う(S16,詳細は後述)。デバイス認証終了後、印刷装置54(HTTPクライアント96)は、デバイスサーバ4(HTTPサーバ41)に対し、HTTPリクエストとしてデバイスコマンド要求を送信する(S17,コマンド要求送信手段)。   The printing apparatus 54 (HTTP server 95) receives the printing apparatus activation request from the host apparatus 51 (S15), and accordingly transmits its own device ID and password to the device server 4. The device server 4 performs authentication processing (device authentication) of the printing apparatus 54 based on the received ID and password of the printing apparatus 54 (S16, details will be described later). After the device authentication is completed, the printing apparatus 54 (HTTP client 96) transmits a device command request as an HTTP request to the device server 4 (HTTP server 41) (S17, command request transmitting means).

デバイスサーバ4は、デバイスコマンド要求を受信し(S18)、この要求に基づいて、保存済みのコマンド変換情報(デバイスコマンド)を、当該印刷装置54用のキューから取り出すと共に、印刷対象である決済情報印刷データを印刷装置54で出力可能な形式のデータに変換して印刷装置54に送信する(S19)。印刷装置54は、デバイスコマンドおよび決済情報印刷データを受信し(S20)、当該デバイスコマンドに基づいて、印刷部93を動作させて印刷処理を行う(S21,動作手段)。その後、印刷装置54は、印刷処理の実行結果(成功/失敗等)および印刷装置54の状態に関する情報を第2応答データとして生成する(S22)。この第2応答データは、JSONP(JSON with Padding)によりJavaScript(登録商標)のコールバック関数として生成される。そして、印刷装置54は、当該第2応答データをホスト装置51に送信する(S23,動作結果送信手段)。   The device server 4 receives the device command request (S18). Based on this request, the device server 4 retrieves the saved command conversion information (device command) from the queue for the printing device 54 and sets the payment information to be printed. The print data is converted into data in a format that can be output by the printing device 54 and transmitted to the printing device 54 (S19). The printing apparatus 54 receives the device command and payment information print data (S20), and operates the printing unit 93 based on the device command to perform print processing (S21, operation means). Thereafter, the printing apparatus 54 generates information about the execution result (success / failure, etc.) of the printing process and the state of the printing apparatus 54 as second response data (S22). The second response data is generated as a callback function of JavaScript (registered trademark) by JSONP (JSON with Padding). Then, the printing apparatus 54 transmits the second response data to the host apparatus 51 (S23, operation result transmission means).

第2応答データを受信したホスト装置51は(S24,動作結果受信手段)、当該第2応答データに基づき、印刷装置54の動作結果を判別する(S25)。具体的には、ホスト装置51は、第2応答データのJavaScript(登録商標)を実行し、コールバック関数を呼び出すことで、印刷装置54の動作結果を取得し、判別する。印刷処理が正常に終了した場合(S26:Yes)、ホスト装置51は、印刷装置54での印刷処理が正常終了した旨をPOSサーバ3に通知し(S27)、POSサーバ3は、その通知を受信する(S28)。一方、印刷処理が正常終了しなかった場合(S26:No)、ホスト装置51は、印刷装置54に、再度、印刷装置起動要求を送信したり、あるいは印刷装置54の状態に基づいたエラー処理を行う(S29)。   The host device 51 that has received the second response data (S24, operation result receiving means) discriminates the operation result of the printing device 54 based on the second response data (S25). Specifically, the host device 51 executes the JavaScript (registered trademark) of the second response data and calls the callback function to acquire and determine the operation result of the printing device 54. When the printing process is normally completed (S26: Yes), the host device 51 notifies the POS server 3 that the printing process in the printing device 54 has been normally completed (S27), and the POS server 3 notifies the notification. Receive (S28). On the other hand, if the printing process has not ended normally (S26: No), the host apparatus 51 transmits a printing apparatus activation request to the printing apparatus 54 again, or performs error processing based on the state of the printing apparatus 54. Perform (S29).

次に、図6を参照して、ホスト装置51を使用するユーザの認証の手順について説明する。まず、ホスト装置51は、ユーザによりユーザIDおよびパスワード(以下、ユーザ認証情報)が入力されると(S31)、当該ユーザ認証情報をPOSサーバ3に送信する(S32)。ユーザ認証情報を受信したPOSサーバ3は、ユーザ認証用データベース(図示省略)を参照し、当該ユーザIDに対するパスワードが登録されたものと一致するか認証を行う(S33)。認証が成功した場合(S34:Yes)、POSサーバ3は、当該ユーザ(ホスト装置51)にPOSアプリケーション23の使用を許可する(S35)。一方、認証が失敗した場合(S34:No)、POSサーバ3は、ホスト装置51(ユーザ)に対してその旨を通知し(例えば、ユーザ認証情報の入力画面を再表示する等)、ホスト装置51(ユーザ)は、再度ユーザIDおよびパスワードを入力し(S36)、再入力したユーザIDおよびパスワードをPOSサーバ3に送信する(S32)。なお、パスワードを連続して所定回数間違って入力した場合、POSサーバ3への接続を切断したり、あるいは、当該ユーザIDを無効にする等の処理をすることが好ましい。   Next, a procedure for authenticating a user who uses the host device 51 will be described with reference to FIG. First, when a user ID and a password (hereinafter referred to as user authentication information) are input by the user (S31), the host device 51 transmits the user authentication information to the POS server 3 (S32). The POS server 3 that has received the user authentication information refers to a user authentication database (not shown) and authenticates whether the password for the user ID matches that registered (S33). If the authentication is successful (S34: Yes), the POS server 3 permits the user (host device 51) to use the POS application 23 (S35). On the other hand, if the authentication fails (S34: No), the POS server 3 notifies the host device 51 (user) to that effect (for example, redisplays the user authentication information input screen), and the host device. 51 (user) inputs the user ID and password again (S36), and transmits the re-input user ID and password to the POS server 3 (S32). Note that when the password is erroneously input a predetermined number of times, it is preferable to perform processing such as disconnecting the connection to the POS server 3 or invalidating the user ID.

次に、図7を参照して、デバイスサーバ4にアクセスするデバイス5(あるいは、デバイスアダプタ53)の認証の手順について説明する。まず、デバイス5は、デバイスIDおよびパスワード(以下、デバイス認証情報)をデバイスサーバ4に送信する(S41)。当該デバイス認証情報を受信したデバイスサーバ4は、デバイス認証用データベース(図示省略)を参照し、当該デバイスIDに対するパスワードが登録されたものと一致するか認証を行う(S42)。認証が成功した場合(S43:Yes)、デバイスサーバ4は、当該デバイス5に自身(デバイスサーバ4)へのアクセスを許可する(S44)。一方、認証が失敗した場合(S43:No)、デバイスサーバ4は、デバイス5に対してその旨を通知する。認証失敗の通知を受けたデバイス5は(S45)、ホスト装置51に対し、認証が失敗してデバイスサーバ4にアクセスできない旨を通知し(S46)、ホスト装置51は、その通知に基づいてエラー処理を行う(S47)。   Next, with reference to FIG. 7, a procedure for authenticating the device 5 (or the device adapter 53) accessing the device server 4 will be described. First, the device 5 transmits a device ID and a password (hereinafter, device authentication information) to the device server 4 (S41). The device server 4 that has received the device authentication information refers to a device authentication database (not shown) and authenticates whether the password for the device ID matches that registered (S42). When the authentication is successful (S43: Yes), the device server 4 permits the device 5 to access itself (device server 4) (S44). On the other hand, when the authentication fails (S43: No), the device server 4 notifies the device 5 to that effect. The device 5 that has received the notification of the authentication failure (S45) notifies the host device 51 that the authentication has failed and the device server 4 cannot be accessed (S46), and the host device 51 detects an error based on the notification. Processing is performed (S47).

次に、図8を参照して、印刷装置54に障害が発生した場合の動作手順について説明する。まず、印刷装置54は、エラー(障害)を検出すると(S51)、印刷装置54は、自身の印刷動作を停止する(S52)。そして、印刷装置54は、自身のイベント情報やステータス情報(以下、デバイス情報)等をHTTPリクエストとしてデバイスサーバ4に送信する(S53)。デバイスサーバ4は、デバイス情報を受信し(S54)、当該デバイス情報に基づいて、デバイス管理アプリケーション42により、当該印刷装置54の状態(ステータス)を変更する等の処理を行うと共に(S55)、デバイス情報を受信した旨の通知(受信完了通知)を印刷装置54に送信する(S56)。受信完了通知を受信した印刷装置54は、自身の動作を停止させたまま、ホスト装置51からのデバイス動作要求に対する応答データを、JSONP(JSON with Padding)によりJavaScript(登録商標)のコールバック関数として生成し(S57)、当該応答データをホスト装置51に送信する(S58,動作結果送信手段)。ホスト装置51は、印刷装置54からの応答データを受信すると(S59,動作結果受信手段)、コールバック関数を呼び出して印刷装置54の状態を判別し(S60)、その状態(エラー内容)に応じたエラー処理を行う(S61)。   Next, an operation procedure when a failure occurs in the printing apparatus 54 will be described with reference to FIG. First, when the printing apparatus 54 detects an error (failure) (S51), the printing apparatus 54 stops its own printing operation (S52). Then, the printing apparatus 54 transmits its own event information, status information (hereinafter, device information) and the like to the device server 4 as an HTTP request (S53). The device server 4 receives the device information (S54), and performs processing such as changing the status (status) of the printing apparatus 54 by the device management application 42 based on the device information (S55). A notification that the information has been received (reception completion notification) is transmitted to the printing apparatus 54 (S56). The printing apparatus 54 that has received the reception completion notification stops the operation of itself and returns response data to the device operation request from the host apparatus 51 as a callback function of JavaScript (registered trademark) by JSONP (JSON with Padding). The response data is generated (S57), and the response data is transmitted to the host device 51 (S58, operation result transmission means). When the host device 51 receives the response data from the printing device 54 (S59, operation result receiving means), it calls the callback function to determine the state of the printing device 54 (S60), and according to the state (error content). Error processing is performed (S61).

次に、図9および図10を参照して、印刷装置54の印刷動作の一時停止動作、復旧動作、中止動作の動作手順について説明する。なお、これらの動作手順は、送受信するデータの内容が異なるだけで、基本的に同一であるため、ここでは、印刷装置54の一時停止動作について説明する。   Next, with reference to FIG. 9 and FIG. 10, the operation procedure of the pause operation, the recovery operation, and the stop operation of the printing operation of the printing apparatus 54 will be described. Since these operation procedures are basically the same except that the contents of data to be transmitted / received are different, here, the pause operation of the printing apparatus 54 will be described.

まず、ホスト装置51は、ブラウザ71を使用し、POSサーバ3(HTTPサーバ21)に対して、HTTPリクエストとして印刷動作一時停止要求(アプリケーション実行要求)を送信する(S71)。POSサーバ3は、印刷動作一時停止要求を受信し(S72,実行要求受信手段)、当該印刷動作一時停止要求に基づいて、POSアプリケーション23を実行してHTML形式(若しくはXML形式)の第1応答データ(ページ)を生成する(S73)。この第1応答データには、印刷装置54の特定情報(IPアドレス等)、印刷装置54の一時停止に関する情報(一時停止用のAPI名等)、印刷装置54からのコールバックを受けるためのJavaScript(登録商標)の関数が埋め込まれている。そして、POSサーバ3は、ホスト装置51に対して当該第1応答データ(ページ)を送信する(S74,第1応答データ送信手段)。   First, the host device 51 uses the browser 71 to transmit a print operation suspension request (application execution request) as an HTTP request to the POS server 3 (HTTP server 21) (S71). The POS server 3 receives the printing operation suspension request (S72, execution request receiving means), executes the POS application 23 based on the printing operation suspension request, and a first response in HTML format (or XML format). Data (page) is generated (S73). The first response data includes specific information (such as an IP address) of the printing apparatus 54, information related to the suspension of the printing apparatus 54 (such as an API name for suspension), and JavaScript for receiving a callback from the printing apparatus 54. (Registered trademark) function is embedded. Then, the POS server 3 transmits the first response data (page) to the host device 51 (S74, first response data transmission means).

ホスト装置51(ブラウザ71)は、第1応答データを受信し(S75)、当該第1応答データに基づいて、印刷装置54(HTTPサーバ95)に対してHTTPリクエストとして印刷装置一時停止要求(デバイス動作要求)送信する(S76,動作要求手段)。印刷装置54は、ホスト装置51からの印刷装置一時停止要求を受信すると(S77)、自身のイベント情報やステータス情報(以下、デバイス情報)等をHTTPリクエストとしてデバイスサーバ4に送信する(S78)。デバイスサーバ4は、デバイス情報を受信し(S79)、当該デバイス情報に基づいて、デバイス管理アプリケーション42により、当該印刷装置54の状態(ステータス)を一時停止状態に変更する等の処理を行うと共に(S80)、デバイス情報を受信した旨の通知および一時停止用のデバイスコマンド(応答通知)を印刷装置54に送信する(S81)。応答通知を受信した印刷装置54は、自身の動作を一時停止させ(S82,動作手段)、一時停止処理の結果(成功/失敗等)および印刷装置54の状態(ステータス)に関する情報を第2応答データとして生成する(S83)。この第2応答データは、JSONP(JSON with Padding)によりJavaScript(登録商標)のコールバック関数として生成される。そして、印刷装置54は、当該第2応答データをホスト装置51に送信する(S84,動作結果送信手段)。   The host device 51 (browser 71) receives the first response data (S75), and based on the first response data, the printing device temporary stop request (device) as an HTTP request to the printing device 54 (HTTP server 95). Operation request) is transmitted (S76, operation request means). When the printing apparatus 54 receives the printing apparatus suspension request from the host apparatus 51 (S77), the printing apparatus 54 transmits its own event information, status information (hereinafter, device information) and the like to the device server 4 as an HTTP request (S78). The device server 4 receives the device information (S79), and performs processing such as changing the state (status) of the printing apparatus 54 to a paused state by the device management application 42 based on the device information (S79). In step S80, a notification that the device information has been received and a device command for temporary suspension (response notification) are transmitted to the printing apparatus 54 (step S81). The printing apparatus 54 that has received the response notification pauses its own operation (S82, operation means), and sends a second response with information on the result of the suspension process (success / failure, etc.) and the status (status) of the printing apparatus 54. Data is generated (S83). The second response data is generated as a callback function of JavaScript (registered trademark) by JSONP (JSON with Padding). Then, the printing apparatus 54 transmits the second response data to the host apparatus 51 (S84, operation result transmission means).

第2応答データを受信したホスト装置51は(S85,動作結果受信手段)、当該第2応答データに基づき、印刷装置54の動作結果を判別する(S86)。具体的には、ホスト装置51は、第2応答データのJavaScript(登録商標)を実行し、コールバック関数を呼び出すことで、印刷装置54の動作結果を取得し、判別する。一時停止処理が正常に終了した場合(S87:Yes)、ホスト装置51は、印刷装置54の一時停止に係る処理を完了する(S88)。一方、一時停止処理が正常終了しなかった場合(S87:No)、ホスト装置51は、印刷装置54に、再度、印刷装置一時停止要求を送信したり、あるいは印刷装置54の状態に基づいたエラー処理を行う(S89)。なお、印刷動作を中止させる場合、印刷装置54およびデバイスサーバ4は、上記の処理に合わせて、中止対象となる印刷動作の印刷ジョブを削除する処理を行う。   The host device 51 that has received the second response data (S85, operation result receiving means) determines the operation result of the printing device 54 based on the second response data (S86). Specifically, the host device 51 executes the JavaScript (registered trademark) of the second response data and calls the callback function to acquire and determine the operation result of the printing device 54. When the temporary stop process is normally completed (S87: Yes), the host apparatus 51 completes the process related to the temporary stop of the printing apparatus 54 (S88). On the other hand, if the pause process has not ended normally (S87: No), the host device 51 sends a printing device pause request again to the printing device 54, or an error based on the state of the printing device 54. Processing is performed (S89). When canceling the printing operation, the printing apparatus 54 and the device server 4 perform processing for deleting the print job of the printing operation to be canceled in accordance with the above processing.

以上のように、本実施形態によれば、ホスト装置51(クライアント端末)からデバイス5を動作させる場合、デバイスサーバ4が各デバイス5の制御情報を管理すると共に、各デバイス5のデバイスドライバの役目を果たすため、ホスト装置51にデバイスドライバをインストールすることなく、デバイス5を使用することができる。また、ホスト装置51にデバイスドライバが不要になるため、デバイス5の使用に係るホスト装置51の処理の負荷を軽減することができる。さらに、デバイスメーカにとっては、各ホスト装置51のOSの種類毎にデバイスドライバを作成する必要がなくなり、これに係る開発コストを削減できるといった効果がある。   As described above, according to this embodiment, when the device 5 is operated from the host device 51 (client terminal), the device server 4 manages the control information of each device 5 and functions as the device driver of each device 5. Therefore, the device 5 can be used without installing a device driver in the host device 51. Further, since no device driver is required for the host device 51, the processing load of the host device 51 related to the use of the device 5 can be reduced. Furthermore, for the device manufacturer, there is no need to create a device driver for each OS type of each host device 51, and there is an effect that the development cost related to this can be reduced.

また、各POS端末2(ホスト装置51)にPOSアプリケーション23やデバイスドライバをインストールする必要がないため、POS端末2(ホスト装置51)の低廉化を図ることができると共に、保守・管理に要する時間やコストを軽減できる。   Further, since it is not necessary to install the POS application 23 or device driver in each POS terminal 2 (host device 51), the POS terminal 2 (host device 51) can be reduced in cost and time required for maintenance and management. And cost can be reduced.

なお、図11に示すように、上述したPOSシステム1に、POSサーバ3が異常状態の場合にホスト装置51からの処理要求を代理実行する代理POSサーバ101(アプリケーション代理実行サーバ)と、デバイスサーバ4が異常状態の場合にデバイス5からの処理要求を代理実行する代理デバイスサーバ102と、を導入し、POSサーバ3、デバイスサーバ4およびPOS端末2を同一LAN55上に、代理POSサーバ101および代理デバイスサーバ102をインターネット6上に設置するようにしてもよい。この場合、POSサーバ3と代理POSサーバ101との間で、ホスト装置51からの実行要求の処理状況、商品マスタ24の情報、ユーザ認証情報(ユーザIDやパスワード)等のデータの同期を所定間隔で取り、POSサーバ3が異常状態になり、代理POSサーバ101に処理が移行した場合においても、確実に処理が引き継がれるようにする。また、デバイスサーバ4と代理デバイスサーバ102との間でも、POSサーバ3(代理POSサーバ101)からのデバイス制御情報、デバイス5からの要求に対する処理状況、デバイス管理データベース43の情報、デバイス認証情報(デバイスIDやパスワード)等のデータの同期を所定間隔で取り、デバイスサーバ4が異常状態になり、代理デバイスサーバ102に処理が移行した場合においても、確実に処理が引き継がれるようにする。これにより、ホスト装置51は、POSサーバ3に実行要求した場合の実行結果と同一の実行結果を代理POSサーバ101から取得することができる。一方、デバイス5は、デバイスサーバ4にコマンド要求した場合の応答結果(コマンド変換情報や印刷データ)と同一の応答結果を代理デバイスサーバ102から取得することができる。つまり、結果として、ホスト装置51から各デバイス5を確実に動作させることができる。   As shown in FIG. 11, in the POS system 1 described above, when the POS server 3 is in an abnormal state, a proxy POS server 101 (application proxy execution server) that performs proxy processing requests from the host device 51, and a device server And a proxy device server 102 that executes a processing request from the device 5 when the device 4 is in an abnormal state, and the POS server 3, the device server 4, and the POS terminal 2 are placed on the same LAN 55, the proxy POS server 101 and the proxy The device server 102 may be installed on the Internet 6. In this case, the processing status of the execution request from the host device 51, information on the product master 24, data such as user authentication information (user ID and password) is synchronized between the POS server 3 and the proxy POS server 101 at predetermined intervals. Thus, even when the POS server 3 is in an abnormal state and the processing is shifted to the proxy POS server 101, the processing is surely taken over. Further, even between the device server 4 and the proxy device server 102, device control information from the POS server 3 (proxy POS server 101), processing status for a request from the device 5, information in the device management database 43, device authentication information ( Data such as device IDs and passwords are synchronized at predetermined intervals, so that even when the device server 4 becomes in an abnormal state and the processing shifts to the proxy device server 102, the processing is surely taken over. As a result, the host device 51 can obtain the same execution result from the proxy POS server 101 when the execution request is made to the POS server 3. On the other hand, the device 5 can acquire from the proxy device server 102 the same response result (command conversion information and print data) as the response result when a command request is made to the device server 4. That is, as a result, each device 5 can be reliably operated from the host device 51.

また、代理POSサーバ101をPOSサーバ3のバックアップサーバとして、代理デバイスサーバ102をデバイスサーバ4のバックアップとして使用することができるため、ホスト装置51はPOSサーバ3の不具合を意識することなく、アプリケーションの実行結果を取得することができると共に、デバイスサーバ4の状態を意識することなく、確実にデバイス5を動作させることができる。なお、異常状態とは、正常状態でない状態であり、例えば、POSサーバ3のPOSアプリケーション23や、デバイスサーバ4のデバイス管理アプリケーション42からの応答がない場合や、POSサーバ3またはデバイスサーバ4が故障した場合をいう。また、POSサーバ3、デバイスサーバ4およびPOS端末2(ホスト装置51とデバイス5)を同一のLAN55に設置するため、POSサーバ3およびデバイスサーバ4がインターネット6上に設置される場合と比べ、応答速度を早くすることができ、POSシステム1全体の処理効率を向上させることができる。   Further, since the proxy POS server 101 can be used as a backup server for the POS server 3 and the proxy device server 102 can be used as a backup for the device server 4, the host device 51 can recognize application problems without being aware of problems with the POS server 3. The execution result can be acquired, and the device 5 can be reliably operated without being aware of the state of the device server 4. The abnormal state is a state that is not a normal state. For example, when there is no response from the POS application 23 of the POS server 3 or the device management application 42 of the device server 4, the POS server 3 or the device server 4 has failed. This is the case. Further, since the POS server 3, the device server 4, and the POS terminal 2 (the host device 51 and the device 5) are installed on the same LAN 55, the response is compared with the case where the POS server 3 and the device server 4 are installed on the Internet 6. The speed can be increased, and the processing efficiency of the entire POS system 1 can be improved.

また、本実施形態では、POSサーバ3とデバイスサーバ4と、を別個のサーバで構成しているが、これに限らず、POSサーバ3とデバイスサーバ4と、を単一のサーバとして構成してもよい。これにより、POSサーバ3とデバイスサーバとの間のデータ通信が不要となり、POSシステム1全体の処理速度が向上する。また、低コストでシステムを構築することができると共に、システム管理が容易になる。   In the present embodiment, the POS server 3 and the device server 4 are configured as separate servers. However, the POS server 3 and the device server 4 are configured as a single server. Also good. Thereby, the data communication between the POS server 3 and the device server becomes unnecessary, and the processing speed of the entire POS system 1 is improved. In addition, a system can be constructed at a low cost, and system management becomes easy.

また、本実施形態では、デバイス5として、カスタマディスプレイ52や印刷装置54(レシート印刷装置)を例に挙げて説明したが、これに限らず、家庭用プリンタ、イメージスキャナ、各種ストレージ等のコンシューマ向けデバイス、オフィス向けデバイスおよび業務用デバイスに適用することが可能である。
また、上述した実施例のPOSシステム1は一例であり、用途は限定されない。例えば、オフィスにおいてレーザプリンタとイメージスキャナを使用した帳票入出力システム等に、本発明は適用可能である。
In the present embodiment, the customer display 52 and the printing apparatus 54 (receipt printing apparatus) have been described as examples of the device 5. It can be applied to devices, office devices, and business devices.
Further, the POS system 1 of the above-described embodiment is an example, and the application is not limited. For example, the present invention can be applied to a form input / output system using a laser printer and an image scanner in an office.

また、デバイスサーバ4は、自身が管理するデバイス5の使用を単一のPOSサーバ3(アプリケーション実行サーバ)に限定する機能を有することが好ましい(デバイス排他制御手段)。この場合、POSサーバ3(アプリケーション実行サーバ)は、デバイスサーバ4に対し、デバイス5を専有して使用するためのデバイス専有要求を送信し(デバイス専有要求手段)、デバイスサーバ4は、デバイス専有要求に基づき、当該デバイス5の使用を当該POSサーバ3(アプリケーション実行サーバ)に限定する。そして、専有されたデバイス5に対して、他のPOSサーバ3(アプリケーション実行サーバ)から使用要求が有った場合、当該デバイス5の使用を禁止する旨を通知する(通知手段)。これにより、例えば、POSサーバ3(アプリケーション実行サーバ)で、デバイス動作を伴う優先度の高い処理を行う場合等、該当するデバイス5を専有することで処理遅延を防止できる。   The device server 4 preferably has a function of limiting the use of the device 5 managed by itself to a single POS server 3 (application execution server) (device exclusive control means). In this case, the POS server 3 (application execution server) transmits a device exclusive request for exclusive use of the device 5 to the device server 4 (device exclusive request means), and the device server 4 The use of the device 5 is limited to the POS server 3 (application execution server). Then, when there is a use request from another POS server 3 (application execution server) to the dedicated device 5, it notifies that the use of the device 5 is prohibited (notification means). Thus, for example, when the POS server 3 (application execution server) performs a process with a high priority accompanied by a device operation, the processing delay can be prevented by exclusively using the corresponding device 5.

また、上記の例に示した、POSシステム1の機能をプログラムとして提供することも可能である。また、そのプログラムを記憶媒体(図示省略)に格納して提供することも可能である。記録媒体としては、CD−ROM、フラッシュROM、メモリカード(コンパクトフラッシュ(登録商標)、スマートメディア、メモリースティック等)、コンパクトディスク、光磁気ディスク、デジタルバーサタイルディスクおよびフレキシブルディスク等を利用することができる。   It is also possible to provide the function of the POS system 1 shown in the above example as a program. It is also possible to provide the program stored in a storage medium (not shown). As the recording medium, a CD-ROM, a flash ROM, a memory card (compact flash (registered trademark), smart media, memory stick, etc.), a compact disk, a magneto-optical disk, a digital versatile disk, a flexible disk, and the like can be used.

また、上述した実施例によらず、POSシステム1の装置構成や処理工程等について、本発明の要旨を逸脱しない範囲で、適宜変更も可能である。   Further, regardless of the above-described embodiments, the apparatus configuration, processing steps, and the like of the POS system 1 can be appropriately changed without departing from the gist of the present invention.

1…POSシステム 2…POS端末 3…POSサーバ 4…デバイスサーバ 5…デバイス 6…インターネット 21、41、85、95…HTTPサーバ 22、86、96…HTTPクライアント 51…ホスト装置 52…カスタマディスプレイ 53…デバイスアダプタ 54…印刷装置 55…LAN 71…ブラウザ 101…代理POSサーバ 102…代理デバイスサーバ。   DESCRIPTION OF SYMBOLS 1 ... POS system 2 ... POS terminal 3 ... POS server 4 ... Device server 5 ... Device 6 ... Internet 21, 41, 85, 95 ... HTTP server 22, 86, 96 ... HTTP client 51 ... Host apparatus 52 ... Customer display 53 ... Device adapter 54 ... Printing device 55 ... LAN 71 ... Browser 101 ... Proxy POS server 102 ... Proxy device server.

Claims (7)

ホスト装置、POSサーバ、デバイスサーバ及び印刷装置を有するPOSシステムの制御方法であって、
前記ホスト装置が、ブラウザを使用して、POSアプリケーションの実行を要求するアプリケーション実行要求及び前記印刷装置の動作を要求する動作要求を前記POSサーバに送信し、
前記POSサーバが、前記ホスト装置から送信された前記アプリケーション実行要求及び動作要求を受信し、前記アプリケーション実行要求に基づいて決済処理を行う前記POSアプリケーションを実行して決済情報印刷データ及び制御情報を生成し、生成された前記決済情報印刷データ及び前記制御情報を前記デバイスサーバに送信し、
前記デバイスサーバが、前記POSサーバから送信された前記決済情報印刷データ及び前記制御情報を受信し、前記制御情報を前記印刷装置に対応するコマンド変換情報に変換し、前記コマンド変換情報を保存し、
前記印刷装置が、前記ホスト装置から送信された、前記印刷装置の起動を要求する印刷装置起動要求に基づいて、前記デバイスサーバに前記コマンド変換情報を要求するデバイスコマンド要求を送信し、
前記デバイスサーバが、前記デバイスコマンド要求に応じて、前記決済情報印刷データ及び前記コマンド変換情報を前記印刷装置に送信し、
前記印刷装置が、前記デバイスサーバから送信された前記決済情報印刷データ及び前記コマンド変換情報を受信し、前記決済情報印刷データ及び前記コマンド変換情報に基づいてレシートに決済情報を印刷するPOSシステムの制御方法。
A control method of a POS system having a host device, a POS server, a device server, and a printing device,
The host device uses a browser to send an application execution request for requesting execution of a POS application and an operation request for requesting operation of the printing device to the POS server,
The POS server receives the application execution request and the operation request transmitted from the host device, executes the POS application that performs a payment process based on the application execution request, and generates payment information print data and control information And transmitting the generated payment information print data and the control information to the device server,
The device server receives the payment information print data and the control information transmitted from the POS server, converts the control information into command conversion information corresponding to the printing apparatus, and stores the command conversion information;
The printing device are sent from the host device, the printing device based on the activation request for requesting the activation of the printing device transmits a device command request requesting the command conversion information to the device server,
In response to the device command request , the device server transmits the payment information print data and the command conversion information to the printing apparatus,
Control of the POS system in which the printing apparatus receives the payment information print data and the command conversion information transmitted from the device server, and prints the payment information on a receipt based on the payment information print data and the command conversion information Method.
前記デバイスサーバが、前記印刷装置に対応するデバイスドライバの情報を記録し、前記デバイスドライバの情報に基づいて、前記制御情報を前記コマンド変換情報に変換する請求項1に記載のPOSシステムの制御方法。   2. The POS system control method according to claim 1, wherein the device server records information on a device driver corresponding to the printing apparatus, and converts the control information into the command conversion information based on the information on the device driver. . 前記デバイスサーバが、前記コマンド変換情報の保存処理に伴う結果をPOSサーバに送信し、
前記POSサーバが、前記コマンド変換情報の保存処理に伴う結果を受信した後、前記印刷装置の特定情報を含む応答データを生成し、前記ホスト装置に送信する請求項1または2に記載のPOSシステムの制御方法。
The device server sends a result of the command conversion information storage process to the POS server,
3. The POS system according to claim 1, wherein the POS server generates response data including specific information of the printing apparatus after receiving a result of the command conversion information storage process, and transmits the response data to the host apparatus. Control method.
前記ホスト装置が、前記応答データを受信し、前記応答データに基づいて前記印刷装置へ前記印刷装置起動要求を送信する請求項3に記載のPOSシステムの制御方法。   The POS system control method according to claim 3, wherein the host device receives the response data and transmits the printing device activation request to the printing device based on the response data. 前記印刷装置が、前記コマンド変換情報に基づいて、印刷処理を行い、前記印刷処理の実行結果を前記ホスト装置に送信する請求項1乃至4のいずれか1項に記載のPOSシステムの制御方法。 The printing device, based on the command conversion information, performs print processing method for controlling a POS system according to any one of claims 1 to 4 transmits the execution result of the printing process to the host device. 前記デバイスサーバが、前記印刷装置の環境設定を行う環境設定サービス、及び前記ホスト装置に前記印刷装置の環境設定機能を提供するデバイス環境設定手段を有する請求項1乃至のいずれか1項に記載のPOSシステムの制御方法。 Said device server, according to any one of claims 1 to 5 having a device configuration means for providing an environment setting function of the printing device configuration service set preferences of the printing device, and said host device POS system control method. 前記ホスト端末と接続して、表示を行うディスプレイを有し、
前記ホスト装置が、前記ディスプレイの表示要求を送信し、
前記デバイスサーバが、前記表示要求に基づいて、前記ディスプレイの制御情報及び表示データを送信し、
前記ディスプレイが、前記表示データを表示する請求項1乃至のいずれか1項に記載のPOSシステムの制御方法。
Connected to the host terminal and having a display for displaying;
The host device sends a display request for the display;
The device server transmits control information and display data of the display based on the display request,
The display control method of the POS system according to any one of claims 1 to 6 to display the display data.
JP2014131097A 2014-06-26 2014-06-26 POS system control method Expired - Fee Related JP5817891B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014131097A JP5817891B2 (en) 2014-06-26 2014-06-26 POS system control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014131097A JP5817891B2 (en) 2014-06-26 2014-06-26 POS system control method

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2013127242A Division JP5614475B2 (en) 2013-06-18 2013-06-18 POS system

Publications (2)

Publication Number Publication Date
JP2014186749A JP2014186749A (en) 2014-10-02
JP5817891B2 true JP5817891B2 (en) 2015-11-18

Family

ID=51834191

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014131097A Expired - Fee Related JP5817891B2 (en) 2014-06-26 2014-06-26 POS system control method

Country Status (1)

Country Link
JP (1) JP5817891B2 (en)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002099495A (en) * 2000-09-26 2002-04-05 Fujitsu Ltd Client server system, server and client
JP2005084759A (en) * 2003-09-04 2005-03-31 World:Kk Pos terminal equipment, pos system, and program
JP4604525B2 (en) * 2004-03-17 2011-01-05 セイコーエプソン株式会社 Network system, program, and printing apparatus control method

Also Published As

Publication number Publication date
JP2014186749A (en) 2014-10-02

Similar Documents

Publication Publication Date Title
JP5040486B2 (en) Network system and program
JP4900096B2 (en) Network system and program
US8520230B2 (en) Image processing system, image processing apparatus, image forming apparatus, image processing method, program, and recording medium with login management and authentication tickets
US8792111B2 (en) Image processing apparatus, information processing method, and storage medium
EP3158496A1 (en) Information processing program product, information processing apparatus, and information processing system
JP2014010770A (en) Relay device
US11140294B2 (en) Communication device, non-transitory computer-readable recording medium storing computer-readable instructions for communication device, and method executed by communication device
US10142501B2 (en) Image processing apparatus, method for controlling the same, and storage medium
JP4983445B2 (en) Network system and program
US20190007404A1 (en) Information processing apparatus, management server, service provision server, image processing apparatus, and information processing system
US10846033B2 (en) Print server, control method, and storage medium
US20170295164A1 (en) System for management of a monitor apparatus monitoring a device in a customer environment
US20200076978A1 (en) Management server, information processing system, and information processing method
JP5614475B2 (en) POS system
US11849083B2 (en) Identifying one of a server and a cloud service as a controller of a multi-function device
US11789671B2 (en) Specific communication device, and non-transitory computer-readable recording medium storing computer readable instructions for specific communication device
JP5299503B2 (en) Network system and program
JP5817891B2 (en) POS system control method
JP5370528B2 (en) Network system, network system control method and program
US11520543B2 (en) Image forming apparatus, printing system, control method, and storage medium
JP5660174B2 (en) Display control method and device adapter
JP5668816B2 (en) Printing apparatus control method and printing apparatus
JP6127586B2 (en) Information processing system and information processing method
JP5360269B2 (en) Network system, network system control method and program
US20200404004A1 (en) Browsing management server, browsing management method, and browsing management system

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140707

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140707

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20150109

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150626

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150728

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150805

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20150901

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150914

R150 Certificate of patent or registration of utility model

Ref document number: 5817891

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees