JP2012138128A - Client terminal, device, control method for client terminal and program - Google Patents
Client terminal, device, control method for client terminal and program Download PDFInfo
- Publication number
- JP2012138128A JP2012138128A JP2012097442A JP2012097442A JP2012138128A JP 2012138128 A JP2012138128 A JP 2012138128A JP 2012097442 A JP2012097442 A JP 2012097442A JP 2012097442 A JP2012097442 A JP 2012097442A JP 2012138128 A JP2012138128 A JP 2012138128A
- Authority
- JP
- Japan
- Prior art keywords
- client terminal
- server
- application execution
- request
- execution server
- 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.)
- Granted
Links
Images
Landscapes
- Computer And Data Communications (AREA)
Abstract
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参照)。この場合、サーバでは、デバイスドライバをWindows2000(登録商標)や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 2000 (registered trademark) or Windows XP (registered trademark), and also manages the version (version number) of the device driver according to the OS of each client. By distributing device drivers, devices (shared devices) can be used from each client.
しかし、上記では、デバイスを使用するためには、各クライアントのOSの種類に対応したデバイスドライバをインストールする必要がある。また、デバイスドライバはOSに依存して動作するため、クライアントの処理負荷が大きくなる。さらに、デバイスメーカ側も、各クライアントのOSの種類ごとに、対応したデバイスドライバを開発する必要があり、開発コストが大きくなるという問題がある。 However, in the above, in order to use a device, it is necessary to install a device driver corresponding to the type of OS of each client. In addition, since the device driver operates depending on the OS, the processing load on the client increases. Furthermore, the device manufacturer also needs to develop a corresponding device driver for each type of OS of each client, resulting in a problem that the development cost increases.
本発明は、上記の問題点に鑑みたものであり、クライアントにデバイスドライバをインストールすることなくデバイスを制御することができるネットワークシステムおよびプログラムを提供することを目的とする。 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応答データの受信に伴って、デバイスに対しデバイス動作要求を送信する動作要求手段と、デバイス動作要求に対するデバイスの動作結果を含む第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 network system in which at least the application execution server and the client terminal, and the client terminal and the device are respectively connected to the network, and the client terminal sends an application execution request accompanying the operation of the device to the application execution server. An execution request means for transmitting, an execution result receiving means for receiving first response data including an execution result of the application execution server for the application execution request, and for receiving the first response data The device includes an operation request unit that transmits a device operation request to the device, and an operation result receiving unit that receives second response data including the operation result of the device in response to the device operation request. Firmware is provided that interprets a device operation request, converts the device operation request into a command corresponding to the device, and operates the device, and the firmware transmits an operation result of the device to the client terminal.
この構成によれば、クライアント端末が、デバイス動作を伴うアプリケーション実行要求を送信すると、アプリケーション実行サーバは当該アプリケーション実行要求に対する実行結果を第1応答データとしてクライアント端末に送信する。そして、クライアント端末は、第1応答データに伴ってデバイスに動作要求を送信し、デバイスは、ファームウェア(デバイスドライバに相当する機能を含む)により当該動作要求を解釈して自身を動作させると共に、その動作結果をクライアント端末に返信する。これにより、クライアント端末にデバイスドライバをインストールすることなく、クライアント端末からの動作要求に基づき、デバイスを使用することができる。また、クライアント端末にデバイスドライバが不要になるため、デバイスの使用に係るクライアント端末の処理の負荷を軽減することができる。さらに、デバイスメーカにとっては、各クライアント端末のOSの種類毎にデバイスドライバを作成する必要がなくなり、これに係る開発コストを削減できるといった効果がある。 According to this configuration, when the client terminal transmits an application execution request involving device operation, the application execution server transmits an execution result for the application execution request as first response data to the client terminal. Then, the client terminal transmits an operation request to the device along with the first response data. The device interprets the operation request by firmware (including a function corresponding to a device driver) and operates itself, The operation result is returned to the client terminal. Thus, the device can be used based on an operation request from the client terminal without installing a device driver in the client terminal. 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サーバを備え、クライアント端末は、プラグイン機能を有しない単機能ブラウザを備え、実行要求手段、実行結果受信手段および動作要求手段は、アプリケーション実行サーバおよびデバイスと、単機能ブラウザとの間で、ハイパーテキスト転送プロトコルに基づいて通信を行うことが好ましい。 In this case, the application execution server and device include an HTTP server, the client terminal includes a single function browser that does not have a plug-in function, and the execution request unit, the execution result receiving unit, and the operation request unit include the application execution server and the device. And a single function browser 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応答データには、少なくともデバイスを特定するデバイス特定情報がさらに含まれており、動作要求手段は、第1応答データに含まれる情報に基づいて、デバイス動作要求を送信することが好ましい。 In these cases, the first response data further includes at least device specifying information for specifying the device, and the operation requesting means transmits the device operation request based on the information included in the first response data. Is preferred.
また、これらの場合、動作要求手段は、受信した第1応答データに、少なくともデバイスを特定するデバイス特定情報を含めたデバイス動作要求を送信することが好ましい。 In these cases, it is preferable that the operation requesting unit transmits a device operation request including at least device specifying information for specifying the device in the received first response data.
これらの構成によれば、アプリケーション実行サーバにより受信したデバイス特定情報を含む第1応答データ、またはクライアント端末により動的にデバイス特定情報を含めた第1応答データに基づいて、デバイス動作要求を送信する。これにより、アプリケーション実行サーバとデバイスとのドメインが異なる場合においても、アプリケーション実行サーバとデバイスとがシームレスに連携することができる。また、クライアント端末を使用するユーザは、デバイスに関する情報を意識することなくデバイスを使用することができる。 According to these configurations, the device operation request is transmitted based on the first response data including the device specifying information received by the application execution server or the first response data including the device specifying information dynamically by the client terminal. . 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 includes a device body and a device adapter having firmware. The device body is connected to the client terminal via the device adapter, and the device adapter is based on a device operation request from the client terminal. It is preferable to control the device body.
この構成によれば、デバイスアダプタを介してデバイス本体とクライアント端末と、をネットワーク接続すると共に、デバイスアダプタによりクライアント端末からのデバイス動作要求等を受信してデバイス本体の動作制御ができる。これにより、デバイス本体が直接ネットワークに接続できない場合でも、クライアント端末からネットワークを介してデバイスを使用することができる。 According to this configuration, the device main body and the client terminal can be connected to the network via the device adapter, and the device operation request from the client terminal can be received by the device adapter to control the operation of the device main 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, it is preferable that the application execution server and the client terminal are connected to the Internet.
この構成によれば、アプリケーション実行サーバをインターネット上に配置することで、クライアント端末の設置場所に拘らず、アプリケーション実行サーバにアクセスし、使用することができる。 According to this configuration, by placing the application execution server on the Internet, the application execution server can be accessed and used regardless of the installation location of the client terminal.
これらの場合、アプリケーション実行サーバは、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, the application execution server further includes an application proxy execution server that is connected to the application execution server and performs the same processing as the application execution server. The application execution server is connected to the client terminal and the device. When the application execution server is in an abnormal state, it is preferable that the process of the application execution server is executed 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. 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. The abnormal state is a state that is not a normal state, and refers to, 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 fails.
この場合、アプリケーション実行サーバと、アプリケーション代理実行サーバとの間で、アプリケーションに係る情報の同期を取ることが好ましい。 In this case, it is preferable to synchronize information related to the application between the application execution server and the application proxy execution 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.
これらの場合、アプリケーション代理実行サーバとアプリケーション実行サーバとは、インターネット接続され、アプリケーション実行サーバ、クライアント端末およびデバイスは、LAN接続されていることが好ましい。 In these cases, the application proxy execution server and the application execution server are preferably connected to the Internet, and the application execution server, the client terminal, and the device are preferably connected to the LAN.
この構成によれば、アプリケーション実行サーバ、クライアント端末およびデバイスがLAN接続されるため、アプリケーション実行サーバをインターネット上に設置する場合と比べ、アプリケーション実行サーバとクライアント端末と、の間の応答速度を速くすることができる。 According to this configuration, since the application execution server, the client terminal, and the device are LAN-connected, the response speed between the application execution server and the client terminal is increased compared to the case where the application execution server is installed on the Internet. be able to.
これらの場合、デバイスは、当該デバイスの設定サービスを行うためのデバイス設定手段を備え、クライアント端末は、デバイス設定手段による設定サービスを使用し、デバイスの設定を行うことが好ましい。 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 an initial setting of a device (setting of an IP address, a device name, and the like) using a Web page UI, a Web service API, or the like.
本発明のプログラムは、コンピュータを、上記に記載のネットワークシステムにおけるアプリケーション実行サーバの各手段として機能させるためのものであることを特徴とする。 The program according to the present invention is a program for causing a computer to function as each means of an application execution 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.
また、本発明の他のプログラムは、コンピュータを、上記に記載のネットワークシステムにおけるアプリケーション代理実行サーバの各手段として機能させるためのものであることを特徴とする。 According to another aspect of the present invention, there is provided a program for causing a computer to function as each unit of the application proxy execution server in the network system described above.
このプログラムを用いることにより、クライアント端末にデバイスドライバをインストールすることなく、クライアント端末からの動作要求に基づきデバイスを動作させることができ、且つアプリケーションの実行を停止することなくシステムを安定的に動作させることができる。 By using this program, the device can be operated based on the operation request from the client terminal without installing the device driver in the client terminal, and the system can be stably operated without stopping the execution of the application. be able to.
以下、添付の図面を参照して、本実施形態に係るネットワークシステムについて説明する。本実施形態に係るネットワークシステムは、クライアント端末にデバイスドライバをインストールすることなく、クライアント端末からのデバイス動作要求に基づき、対象となるデバイスを使用することができるシステムである。以下、本発明のネットワークシステムを、スーパーやコンビニエンス・ストア等の店舗にて使用される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とインターネット4で接続される共に、当該POS端末2を管理するPOSサーバ3(アプリケーション実行サーバ)とから構成されている。POSサーバ3をインターネット4上に設置することで、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. The
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、POSアプリケーション22(Webアプリケーション)、商品マスタ23(データベース)が記憶されている。
The
POSサーバ3とPOS端末2(ブラウザ51)との通信は、HTTPサーバ21により、ハイパーテキスト転送プロトコル(HTTP)に基づいて行われる。つまり、POSサーバ3のCPU11は、POS端末2(ホスト装置31)からのアプリケーション実行要求を、通信インターフェース18を介してHTTPリクエストとして受信し、当該アプリケーション実行要求の実行結果をHTML形式やXML形式のデータ(ページ)としてPOS端末2に送信(応答)する。また、CPU11は、POS端末2からデバイス動作を含むアプリケーション実行要求を受信した場合、その応答データとして、当該アプリケーション実行要求の実行結果、動作対象となるデバイス5(例えば、印刷装置34、スキャナ等の周辺機器)を特定するデバイス特定情報(当該デバイス5のIPアドレス)、デバイス5の動作を指定する動作情報(例えば、デバイス操作のためのAPI等の情報)、デバイス動作に関する各種パラメタ等をタグとして挿入したデータ(ページ)をPOS端末2に送信する。
Communication between the
POSアプリケーション22は、POS端末2からの要求に基づいて決済処理を行うためのものである。例えば、POS端末2から商品の入力情報が送信されると、CPU11は、POSアプリケーション22を実行し、当該入力情報に基づいて、商品マスタ23から商品コード、商品名、金額に関する情報を抽出し、レシートの印刷およびPOS端末2のカスタマディスプレイ32の表示に用いる商品データを生成する。また、CPU11は、POS端末2からの入力情報や生成した上記商品データからレシートに印刷するための決済情報印刷データを生成する。これらの生成したデータは、POSアプリケーション22の実行結果としてPOS端末2側に送信され、印刷処理や表示処理が行われる。なお、ここで生成される各データは、HTML形式、若しくはXML形式のデータである。
The POS application 22 is for performing a payment process based on a request from the
また、POSサーバ3のCPU11は、POS端末2を使用するユーザ(従業員)のアカウント管理を行い、ユーザの識別を行う。CPU11は、POS端末2から送信されるユーザIDおよびパスワードを受信し、POSサーバ3に登録されているものと一致するか否かを認証する。認証が成功した場合は、POSサーバ3へのアクセスを許可し、失敗した場合は、再度ユーザIDおよびパスワードを入力させる、あるいはアクセス拒否通知を送信するなどの処理を実行する。
Further, the
一方、POS端末2は、POSサーバ3から商品データを取得するホスト装置31(クライアント端末)と、商品名や売上金額等を表示するカスタマディスプレイ32(デバイス本体)と、カスタマディスプレイ32をホスト装置31にネットワーク接続するためのデバイスアダプタ33と、レシートに決済情報を印刷する印刷装置34と、を備え、これらはLAN35により接続されている(図1参照)。
On the other hand, the
図2に示すように、ホスト装置31は、CPU41、ROM42、RAM43、HDD44、入出力インターフェース45、標準入力デバイス46、通信インターフェース47を備え、HDD44には、ブラウザ51(Webブラウザ)が記憶されている。CPU41は、ROM42内に記憶された制御プログラムに従って、RAM43内のデータの処理を行う。標準入力デバイス46としては、キーボード52、バーコードスキャナ53(バーコードリーダ)を備え、CPU41は、キーボード52による入力およびバーコードスキャナ53による読み取りによって、POSサーバ3から商品コードや商品名、金額等に関する商品データを取得する。
As shown in FIG. 2, the
ブラウザ51は、プラグインモジュールを有さない単機能ブラウザ(標準ブラウザ)であり、CPU41は、このブラウザ51を使用して、通信インターフェース47を介してネットワーク接続(インターネット接続、またはLAN接続)されたPOSサーバ3、およびカスタマディスプレイ32(デバイスアダプタ33)や印刷装置34等のデバイス5と通信を行う。この通信は、HTTPに基づいて行われ、http(s)://x.x.x.x/のようなURIを指定することで、POSサーバ3および各デバイス5と接続することにより行われる。
The
CPU41は、ブラウザ51を使用して、標準入力デバイス46からの入力情報に基づき、POSサーバ3にアプリケーション実行要求を送信する(実行要求手段)。この時、POSサーバ3からの応答データをカスタマディスプレイ32に表示、あるいは印刷装置34で印刷する等のデバイス動作を伴う場合は、上記アプリケーション実行要求にデバイス動作を伴う旨の情報を含めて送信する。そして、CPU41は、POSサーバ3から入力情報に対応する商品コードや商品名、金額等に関する情報、および動作対象となるデバイス5(カスタマディスプレイ32や印刷装置34等)を特定する情報(デバイス特定情報)、デバイス5の動作を指定する動作情報、デバイス動作に関する各種パラメタ等をタグとして挿入したHTML形式、若しくはXML形式の応答データを受信(取得)する(実行結果受信手段)。その後、CPU41は、受信した応答データに基づいて、対象となるデバイス5に対してデバイス動作要求を送信する(動作要求手段)。また、CPU41は、デバイス5からデバイス動作要求に対する動作結果を含む応答データを受信し(動作結果受信手段)、この応答データによりデバイス5の動作結果を判別し、所定の処理を行う。つまり、デバイス5を動作させる場合、ホスト装置31は、ブラウザ51を使用して、デバイス動作要求(HTTPリクエスト)をデバイス5に送信するだけでよく、従来のようにホスト装置31自身でデバイス5を制御する必要がない。これにより、ホスト装置31には、ホスト装置31の環境(OSの種類等)に依存したデバイスドライバが不要となる。また、ブラウザ51は、単機能ブラウザ51でよく、プラグインモジュールを必要としないため、ホスト装置31の環境に依存することなく、デバイス5にアクセスすることができる。
The
なお、デバイス5の応答データには、デバイス動作の成功/失敗の情報のみならず、デバイス5が生成したデータ(画像データや、文書データ等)も含まれる。この場合、ホスト装置31のCPU41は、当該データをPOSサーバ3に送信(アップロード)することが可能である。また、応答データ内に、デバイス5に関する情報(デバイス5のアドレス)を含むタグが挿入されているため、POSサーバ3とデバイス5とのドメインが異なる場合でも、問題なくデバイス5にアクセスが可能(クロスサイトアクセスが可能)となり、POSサーバ3とデバイス5とがシームレスに連携することができる。これにより、ユーザは、デバイス5に関する情報を意識することなくデバイス5にアクセスすることができる。なお、当該タグは、POSサーバ3側で応答データ内に挿入しても良いし、あるいは、ホスト装置31側でタグを生成し、動的に応答データに挿入するようにしてもよい。
Note that the response data of the
カスタマディスプレイ32は、標準入力デバイス46により入力された(読み取られた)商品情報を表示し、顧客に対して購入商品の一覧、金額等を提示する。本実施形態で説明するカスタマディスプレイ32は、単体ではネットワーク接続が不可能なものを想定しており、ホスト装置31とはデバイスアダプタ33を介してLAN35で接続される。これにより、ネットワーク接続ができないデバイス5であっても、ホスト装置31からネットワークを介して使用することができる。
The
デバイスアダプタ33は、CPU61、記憶部62および通信インターフェース63を有し、記憶部62には、HTTPサーバ65およびファームウェア66を備えている。CPU61は、HTTPサーバ65により、通信インターフェース63を介してLAN35で接続されたホスト装置31(ブラウザ51)から、HTTPに基づいてデバイス動作要求(HTTPリクエスト)を受信し、その要求に対する動作結果をホスト装置31に送信する。この場合、CPU61は、ファームウェア66により、ホスト装置31から送信されたHTML形式、若しくはXML形式のデバイス動作要求を解釈してカスタマディスプレイ32に対応したコマンドに変換し、カスタマディスプレイ32に所望の文字や画像を表示させる。そして、デバイスアダプタ33は、カスタマディスプレイ32の表示結果(正常に表示できたか否か等)をホスト装置31に送信する。
The
なお、上記では、デバイスアダプタ33をハードウェアとして構成いるが、これに限らず、ソフトウェアとして構成してもよい。この場合、ソフトウェアデバイスアダプタ36をホスト装置31に組み込み、カスタマディスプレイ32に所望の情報を表示させることが好ましい(図3参照)。
In the above description, the
印刷装置34は、レシート上に決済情報を印刷するレシートプリンタであり、CPU81、記憶部82、印刷部83および通信インターフェース84を備え、通信インターフェース84を介してホスト装置31とLAN35で接続されている。また、記憶部82には、HTTPサーバ85と、ファームウェア86と、を有している(図2参照)。印刷装置34とホスト装置31(ブラウザ51)との通信は、HTTPサーバ85により、HTTPに基づいて行われる。CPU81は、ホスト装置31からのデバイス動作要求(HTTPリクエスト)を受信し、その要求に基づいて印刷装置34の動作を制御する。この時、CPU81は、ファームウェア86によりデバイス動作要求を解釈して印刷装置34に対応したコマンドに変換すると共に、印刷対象となるデータ(例えば、文書データ)を当該印刷装置34で印刷可能なデータ(印刷データ)に変換し、これらに基づいて印刷部83を制御して印刷処理を行う。そして、CPU81は、印刷処理の結果(成功/失敗等)をホスト装置31に送信する。
The
また、印刷装置34は、自身の初期設定や環境設定(プロパティ設定等)を行うための設定サービスを備え、ホスト装置31等にデバイス設定機能を提供する(デバイス設定手段)。この設定サービスは、例えば、WebページによるUI(User Interface)やWebサービスAPI(Application Program Interface)として提供することが好ましい。これにより、印刷装置34(デバイス5)に入力装置を設ける必要がなく、簡単に且つ低コストで印刷装置34(デバイス5)の設定を行うことができる。
Further, the
次に、図4を参照して、本発明のPOSシステム1において、ホスト装置31からデバイス5を動作させる手順について説明する。ここでは、対象となるデバイス5として、印刷装置34を例に挙げ、入力された商品情報に基づいてレシートを印刷する手順について説明する。まず、ホスト装置31がPOSサーバ3に接続すると、POSサーバ3は、ホスト装置31を使用するユーザの認証処理を行う(S01、詳細は後述)。ユーザ認証終了後、ホスト装置31は、標準入力デバイス46(キーボード52やバーコードスキャナ53)により商品情報を入力(読み取り)し、POSサーバ3に対して入力した商品情報に基づくレシート印刷要求(アプリケーション実行要求)を送信する(S02,実行要求手段)。このレシート印刷要求は、ホスト装置31のブラウザ51から、HTTPリクエストとしてPOSサーバ3(HTTPサーバ21)に送信される。
Next, a procedure for operating the
POSサーバ3は、レシート印刷要求を受信し(S03)、当該要求に基づいてPOSアプリケーション22を実行し、HTML形式(若しくはXML形式)の第1応答データ(ページ)を生成する(S04)。この第1応答データには、対象となる商品情報をレシートに印刷するための決済情報印刷データ、印刷装置34の特定情報(IPアドレス等)、印刷装置34の起動に関する情報(起動用のAPI名等)、印刷装置34からのコールバックを受けるためのJavaScript(登録商標)の関数が埋め込まれている。そして、POSサーバ3は、ホスト装置31に対して当該第1応答データ(ページ)を送信する(S05)。
The
第1応答データを受信したホスト装置31(ブラウザ51)は(S06,実行結果受信手段)、当該第1応答データに基づいて、印刷装置34(HTTPサーバ85)に対してHTTPリクエストとして印刷装置起動要求(デバイス起動要求)を送信する(S07,動作要求手段)。 The host device 31 (browser 51) that has received the first response data (S06, execution result receiving means) activates the printing device as an HTTP request to the printing device 34 (HTTP server 85) based on the first response data. A request (device activation request) is transmitted (S07, operation request means).
印刷装置34は、ホスト装置31からの印刷装置起動要求を受信すると(S08)、ファームウェア86を介して印刷装置起動要求を解釈すると共に、決済情報印刷データを印刷装置34で出力可能なデータに変換し、印刷部83を動作させて印刷処理を行う(S09)。その後、印刷装置34は、印刷処理の実行結果(成功/失敗等)および印刷装置34の状態に関する情報を第2応答データとして生成する(S10)。この第2応答データは、JSONP(JSON with Padding)によりJavaScript(登録商標)のコールバック関数として生成される。そして、印刷装置34は、当該第2応答データをホスト装置31に送信する(S11)。
When the
第2応答データを受信したホスト装置31は(S12,動作結果受信手段)、当該第2応答データに基づき、印刷装置34の動作結果を判別する(S13)。具体的には、ホスト装置31は、第2応答データのJavaScript(登録商標)を実行し、コールバック関数を呼び出すことで、印刷装置34の動作結果を取得し、判別する。印刷処理が正常に終了した場合(S14:Yes)、ホスト装置31は、印刷装置34での印刷処理が正常終了した旨をPOSサーバ3に通知し(S15)、POSサーバ3は、その通知を受信する(S16)。一方、印刷処理が正常終了しなかった場合(S14:No)、ホスト装置31は、印刷装置34に、再度、印刷装置起動要求を送信したり、あるいは印刷装置34の状態に基づいたエラー処理を行う(S17)。
The
次に、図5を参照して、ホスト装置31を使用するユーザの認証の手順について説明する。まず、ホスト装置31は、ユーザによりユーザIDおよびパスワード(以下、認証情報)が入力されると(S21)、当該認証情報をPOSサーバ3に送信する(S22)。認証情報を受信したPOSサーバ3は、認証用データベース(図示省略)を参照し、当該ユーザIDに対するパスワードが登録されたものと一致するか認証を行う(S23)。認証が成功した場合(S24:Yes)、POSサーバ3は、当該ユーザ(ホスト装置31)にPOSアプリケーション22の使用を許可する(S25)。一方、認証が失敗した場合(S24:No)、POSサーバ3は、ホスト装置31(ユーザ)に対してその旨を通知し(例えば、認証情報の入力画面を再表示する等)、ホスト装置31(ユーザ)は、再度ユーザIDおよびパスワードを入力し(S26)、再入力したユーザIDおよびパスワードをPOSサーバ3に送信する(S22)。なお、パスワードを連続して所定回数間違って入力した場合、POSサーバ3への接続を切断したり、あるいは、当該ユーザIDを無効にする等の処理をすることが好ましい。
Next, a procedure for authenticating a user who uses the
次に、図6を参照して、印刷装置34に障害が発生した場合の動作手順について説明する。まず、印刷装置34は、エラー(障害)を検出すると(S31)、印刷装置34は、自身の印刷動作を停止する(S32)。そして、印刷装置34は、自身のイベント情報やステータス情報等に基づいて、JSONP(JSON with Padding)によりJavaScript(登録商標)のコールバック関数として応答データを生成し(S33)、当該応答データをホスト装置31に送信する(S34)。ホスト装置31は、印刷装置34からの応答データを受信すると(S35,動作結果受信手段)、コールバック関数を呼び出して印刷装置34の状態を判別し(S36)、その状態(エラー内容)に応じたエラー処理を行う(S37)。このエラー処理は、ホスト装置31のブラウザ51上で動作するスクリプトで処理を完結できるため、POSサーバ3が介在する必要はない。
Next, an operation procedure when a failure occurs in the
次に、図7を参照して、印刷装置34の印刷動作の一時停止動作、復旧動作、中止動作の動作手順について説明する。なお、これらの動作手順は、送受信するデータの内容が異なるだけで、基本的に同一であるため、ここでは、印刷装置34の一時停止動作について説明する。まず、ホスト装置31は、ブラウザ51を使用し、POSサーバ3(HTTPサーバ21)に対して、HTTPリクエストとして印刷動作一時停止要求(アプリケーション実行要求)を送信する(S41,実行要求手段)。
Next, with reference to FIG. 7, the operation procedure of the pause operation, the recovery operation, and the stop operation of the printing operation of the
POSサーバ3は、印刷動作一時停止要求を受信し(S42)、当該印刷動作一時停止要求に基づいて、POSアプリケーション22を実行してHTML形式(若しくはXML形式)の第1応答データ(ページ)を生成する(S43)。この第1応答データには、印刷装置34の特定情報(IPアドレス等)、印刷装置34の一時停止に関する情報(一時停止用のAPI名等)、印刷装置34からのコールバックを受けるためのJavaScript(登録商標)の関数が埋め込まれている。そして、POSサーバ3は、ホスト装置31に対して当該第1応答データ(ページ)を送信する(S44)。
The
第1応答データを受信したホスト装置31(ブラウザ51)は(S45,実行結果受信手段)、当該第1応答データに基づいて、印刷装置34(HTTPサーバ85)に対してHTTPリクエストとして印刷装置一時停止要求(デバイス動作要求)送信する(S46,動作要求手段)。印刷装置34は、ホスト装置31からの印刷装置一時停止要求を受信すると(S47)、ファームウェア86を介して印刷装置一時停止要求を解釈し、自身の動作(印刷動作等)を一時停止する(S48)。その後、印刷装置34は、一時停止処理の結果(成功/失敗等)および印刷装置34の状態(ステータス)に関する情報を第2応答データとして生成する(S49)。この第2応答データは、JSONP(JSON with Padding)によりJavaScript(登録商標)のコールバック関数として生成される。そして、印刷装置34は、当該第2応答データをホスト装置31に送信する(S50)。
The host device 31 (browser 51) that has received the first response data (S45, execution result receiving means) temporarily prints as an HTTP request to the printing device 34 (HTTP server 85) based on the first response data. A stop request (device operation request) is transmitted (S46, operation request means). When the
第2応答データを受信したホスト装置31は(S51,動作結果受信手段)、当該第2応答データに基づき、印刷装置34の動作結果を判別する(S52)。具体的には、ホスト装置31は、第2応答データのJavaScript(登録商標)を実行し、コールバック関数を呼び出すことで、印刷装置34の動作結果を取得し、判別する。一時停止処理が正常に終了した場合(S53:Yes)、ホスト装置31は、印刷装置34の一時停止に係る処理を完了する(S54)。一方、一時停止処理が正常終了しなかった場合(S53:No)、ホスト装置31は、印刷装置34に、再度、印刷装置一時停止要求を送信したり、あるいは印刷装置34の状態に基づいたエラー処理を行う(S55)。なお、印刷動作を中止させる場合、印刷装置34は、上記の処理に合わせて、中止対象となる印刷動作の印刷ジョブを削除する処理を行う。
The
このように、本実施形態によれば、ホスト装置31が、デバイス動作を伴うアプリケーション実行要求を送信すると、POSサーバ3は当該アプリケーション実行要求に対する実行結果を応答データとしてホスト装置31に送信する。そして、ホスト装置31は、当該応答データに基づいてデバイス5に動作要求を送信し、デバイス5は、ファームウェア66(86)により当該動作要求を解釈して自身を動作させると共に、その動作結果をホスト装置31に返信する。これにより、ホスト装置31にデバイスドライバをインストールすることなく、ホスト装置31からの動作要求に基づき、デバイス5を使用することができる。また、ホスト装置31にデバイスドライバが不要になるため、デバイス5の使用に係るホスト装置31の処理の負荷を軽減することができる。さらに、デバイスメーカにとっては、各ホスト装置31のOSの種類毎にデバイスドライバを作成する必要がなくなり、これに係る開発コストを削減できる。
As described above, according to the present embodiment, when the
また、各POS端末2(ホスト装置31)にPOSアプリケーション22やデバイスドライバをインストールする必要がないため、POS端末2(ホスト装置31)の低廉化を図ることができると共に、保守・管理に要する時間やコストを軽減できる。 Further, since it is not necessary to install the POS application 22 or device driver in each POS terminal 2 (host device 31), the POS terminal 2 (host device 31) can be reduced in cost and time required for maintenance and management. And cost can be reduced.
なお、図8に示すように、上述したPOSシステム1に、POSサーバ3が異常状態の場合にホスト装置31からの処理を代理実行する代理POSサーバ91(アプリケーション代理実行サーバ)を導入し、POSサーバ3とPOS端末2とを同一LAN35上に、代理POSサーバ91をインターネット4上に設置するようにしてもよい。この場合、POSサーバ3と代理POSサーバ91との間で、ホスト装置31からの実行要求の処理状況、商品マスタ23の情報、認証情報(ユーザIDやパスワード)等のデータの同期を所定間隔で取り、POSサーバ3が異常状態になり、代理POSサーバ91に処理が移行した場合においても、確実に処理が引き継がれるようにする。これにより、ホスト装置31は、POSサーバ3に実行要求した場合の実行結果と同一の実行結果を代理POSサーバ91から取得することができる。また、代理POSサーバ91をPOSサーバ3のバックアップサーバとして使用することができると共に、ホスト装置31はPOSサーバ3の不具合を意識することなく、アプリケーション実行要求や実行結果の取得を行うことができる。また、POSサーバ3とホスト装置31とを同一のLAN35に設置するため、POSサーバ3がインターネット4上に設置される場合と比べ、POSサーバ3とホスト装置31との間の応答速度を早くすることができ、POSシステム1全体の処理効率を向上させることができる。なお、異常状態とは、正常状態でない状態であり、例えば、POSサーバ3のPOSアプリケーション22からの応答がない場合や、POSサーバ3が故障した場合をいう。
As shown in FIG. 8, a proxy POS server 91 (application proxy execution server) that performs proxy processing from the
また、本実施形態では、デバイス5として、カスタマディスプレイ32や印刷装置34(レシート印刷装置)を例に挙げて説明したが、これに限らず、家庭用プリンタ、イメージスキャナ、各種ストレージ等のコンシューマ向けデバイス、オフィス向けデバイスおよび業務用デバイスに適用することが可能である。
また、上述した実施例のPOSシステム1は一例であり、用途は限定されない。例えば、オフィスにおいてレーザプリンタとイメージスキャナを使用した帳票入出力システム等に、本発明は適用可能である。
Further, in the present embodiment, the
Further, the
また、上記の例に示した、POSシステム1の機能をプログラムとして提供することも可能である。また、そのプログラムを記憶媒体(図示省略)に格納して提供することも可能である。記録媒体としては、CD−ROM、フラッシュROM、メモリカード(コンパクトフラッシュ(登録商標)、スマートメディア、メモリースティック等)、コンパクトディスク、光磁気ディスク、デジタルバーサタイルディスクおよびフレキシブルディスク等を利用することができる。
It is also possible to provide the function of the
また、上述した実施例によらず、POSシステム1の装置構成や処理工程等について、本発明の要旨を逸脱しない範囲で、適宜変更も可能である。
Further, regardless of the above-described embodiments, the apparatus configuration, processing steps, and the like of the
1…POSシステム 2…POS端末 3…POSサーバ 4…インターネット 5…デバイス 21、65、85…HTTPサーバ 31…ホスト装置 32…カスタマディスプレイ 33…デバイスアダプタ 34…印刷装置 35…LAN 51…ブラウザ 66、86…ファームウェア 91…代理POSサーバ
DESCRIPTION OF
本発明は、LAN、インターネット等のネットワークを介してデバイスの制御を行うクライアント端末、デバイス、クライアント端末の制御方法およびプログラムに関するものである。 The present invention relates to a client terminal that controls a device via a network such as a LAN or the Internet , a device, a client terminal control method, and a program.
本発明は、上記の問題点に鑑みたものであり、クライアントにデバイスドライバをインストールすることなくデバイスを制御することができるクライアント端末、デバイス、クライアント端末の制御方法およびプログラムを提供することを目的とする。 The present invention has been made in view of the above problems, and an object of the present invention is to provide a client terminal, a device, a client terminal control method, and a program capable of controlling a device without installing a device driver in the client. To do.
本発明のクライアント端末は、アプリケーションを実行する1以上のアプリケーション実行サーバ、および1以上のデバイスと共に、ネットワークシステムを構成する1以上のクライアント端末のうちの任意の1のクライアント端末であって、アプリケーション実行サーバに対し、デバイスの動作を伴うアプリケーション実行要求を送信する実行要求手段と、アプリケーション実行要求に対するアプリケーション実行サーバの実行結果を含む第1応答データを受信する実行結果受信手段と、第1応答データの受信に伴って、デバイスに対しデバイス動作要求を送信する動作要求手段と、デバイスから、デバイス動作要求に対するデバイスの動作結果を含む第2応答データを受信する動作結果受信手段と、を備えたことを特徴とする。
また、上記のクライアント端末において、プラグイン機能を有しない単機能ブラウザを備え、実行要求手段、実行結果受信手段および動作要求手段は、アプリケーション実行サーバおよびデバイスと、単機能ブラウザとの間で、ハイパーテキスト転送プロトコルに基づいて通信を行うことを特徴とする。
また、上記のクライアント端末において、第1応答データには、少なくともデバイスを特定するデバイス特定情報がさらに含まれており、動作要求手段は、第1応答データに含まれる情報に基づいて、デバイス動作要求を送信することを特徴とする。
また、上記のクライアント端末において、動作要求手段は、受信した第1応答データに、少なくともデバイスを特定するデバイス特定情報を含めたデバイス動作要求を送信することを特徴とする。
また、上記のクライアント端末において、アプリケーション実行サーバはPOSサーバであり、当該POSサーバにアクセスするPOS端末として機能することを特徴とする。
本発明のデバイスは、アプリケーションを実行する1以上のアプリケーション実行サーバ、および1以上のクライアント端末と共に、ネットワークシステムを構成する1以上のデバイスのうちの任意の1のデバイスであって、クライアント端末から受信したデバイス動作要求を解釈し、デバイスに対応したコマンドに変換して当該デバイスを動作させると共に、当該デバイスの動作結果を含む第2応答データをクライアント端末に送信するファームウェアを備えたことを特徴とする。
また、上記のデバイスにおいて、デバイス本体と、ファームウェアを有するデバイスアダプタと、で構成され、デバイス本体は、デバイスアダプタを介してクライアント端末と接続され、デバイスアダプタは、クライアント端末からのデバイス動作要求に基づき、デバイス本体を制御することを特徴とする。
本発明のクライアント端末の制御方法は、アプリケーションを実行する1以上のアプリケーション実行サーバ、および1以上のデバイスと共に、ネットワークシステムを構成する1以上のクライアント端末のうちの任意の1のクライアント端末の制御方法であって、アプリケーション実行サーバに対し、デバイスの動作を伴うアプリケーション実行要求を送信するステップと、アプリケーション実行要求に対するアプリケーション実行サーバの実行結果を含む第1応答データを受信するステップと、第1応答データの受信に伴って、デバイスに対しデバイス動作要求を送信するステップと、デバイスから、デバイス動作要求に対するデバイスの動作結果を含む第2応答データを受信するステップと、を実行することを特徴とする。
本発明のプログラムは、コンピュータを、上記に記載のクライアント端末の各手段として機能させるためのものであることを特徴とする。
なお、以下の構成としても良い。
本発明のネットワークシステムは、アプリケーションを実行する1以上のアプリケーション実行サーバと、当該アプリケーション実行サーバにアプリケーションの実行を要求する1以上のクライアント端末と、当該クライアント端末の操作に伴って動作する1以上のデバイスと、を有し、少なくともアプリケーション実行サーバとクライアント端末、クライアント端末とデバイスがそれぞれネットワーク接続されたネットワークシステムであって、クライアント端末は、アプリケーション実行サーバに対し、デバイスの動作を伴うアプリケーション実行要求を送信する実行要求手段と、アプリケーション実行要求に対するアプリケーション実行サーバの実行結果を含む第1応答データを受信する実行結果受信手段と、第1応答データの受信に伴って、デバイスに対しデバイス動作要求を送信する動作要求手段と、デバイス動作要求に対するデバイスの動作結果を含む第2応答データを受信する動作結果受信手段と、を備え、デバイスは、クライアント端末からのデバイス動作要求を解釈し、デバイスに対応したコマンドに変換してデバイスを動作させるファームウェアを備え、ファームウェアは、デバイスの動作結果をクライアント端末に送信することを特徴とする。
The client terminal of the present invention is any one of the one or more client terminals constituting the network system together with the one or more application execution servers that execute the application and the one or more devices. Execution request means for transmitting an application execution request accompanied by device operation to the server; execution result receiving means for receiving first response data including an execution result of the application execution server for the application execution request; An operation requesting means for transmitting a device operation request to the device along with reception; and an operation result receiving means for receiving second response data including the operation result of the device in response to the device operation request from the device. Features.
The client terminal includes a single-function browser that does not have a plug-in function. The execution request unit, the execution result receiving unit, and the operation request unit include a hyper function between the application execution server and device and the single-function browser. Communication is performed based on a text transfer protocol.
In the above client terminal, the first response data further includes at least device specifying information for specifying the device, and the operation requesting unit is configured to request a device operation request based on the information included in the first response data. Is transmitted.
In the above client terminal, the operation requesting means transmits a device operation request including at least device specifying information for specifying a device in the received first response data.
In the above client terminal, the application execution server is a POS server, and functions as a POS terminal that accesses the POS server.
The device of the present invention is any one of one or more devices constituting a network system together with one or more application execution servers that execute applications and one or more client terminals, and is received from the client terminal. And a firmware for transmitting the second response data including the operation result of the device to the client terminal while interpreting the device operation request and converting the command into a command corresponding to the device to operate the device. .
Further, in the above device, the device body includes a device body and a device adapter having firmware. The device body is connected to the client terminal via the device adapter, and the device adapter is based on a device operation request from the client terminal. The device main body is controlled.
The method for controlling a client terminal according to the present invention is a method for controlling any one of one or more client terminals that constitute a network system together with one or more application execution servers that execute applications and one or more devices. A step of transmitting an application execution request accompanied by a device operation to the application execution server, a step of receiving first response data including an execution result of the application execution server in response to the application execution request, and the first response data And receiving a second response data including an operation result of the device in response to the device operation request from the device, and transmitting the device operation request to the device.
The program of the present invention is for causing a computer to function as each means of the client terminal described above.
The following configuration may be used.
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 network system in which at least the application execution server and the client terminal, and the client terminal and the device are respectively connected to the network, and the client terminal sends an application execution request accompanying the operation of the device to the application execution server. An execution request means for transmitting, an execution result receiving means for receiving first response data including an execution result of the application execution server for the application execution request, and for receiving the first response data The device includes an operation request unit that transmits a device operation request to the device, and an operation result receiving unit that receives second response data including the operation result of the device in response to the device operation request. Firmware is provided that interprets a device operation request, converts the device operation request into a command corresponding to the device, and operates the device, and the firmware transmits an operation result of the device to the client terminal.
以下、添付の図面を参照して、本発明のクライアント端末、デバイス、クライアント端末の制御方法およびプログラムについて説明する。本発明は、クライアント端末にデバイスドライバをインストールすることなく、クライアント端末からのデバイス動作要求に基づき、対象となるデバイスを使用することができるものである。以下、本発明のクライアント端末およびデバイスを用いて構成されるネットワークシステムを、スーパーやコンビニエンス・ストア等の店舗にて使用されるPOSシステムに適用した場合を例に挙げて説明する。なお、本発明のデバイスとは、キーボードデバイスやポインタデバイス以外の非標準デバイスを対象とする。 Hereinafter, a client terminal, a device, a client terminal control method, and a program according to the present invention will be described with reference to the accompanying drawings. The present invention, without installing a device driver to a client terminal, based on the device operation request from the client terminal, in which it is possible to use the device of interest. Hereinafter, a case where the network system configured using the client terminal and the device 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.
Claims (13)
前記クライアント端末は、
前記アプリケーション実行サーバに対し、前記デバイスの動作を伴うアプリケーション実行要求を送信する実行要求手段と、
前記アプリケーション実行要求に対する前記アプリケーション実行サーバの実行結果を含む第1応答データを受信する実行結果受信手段と、
前記第1応答データの受信に伴って、前記デバイスに対しデバイス動作要求を送信する動作要求手段と、
前記デバイス動作要求に対する前記デバイスの動作結果を含む第2応答データを受信する動作結果受信手段と、を備え、
前記デバイスは、
前記クライアント端末からの前記デバイス動作要求を解釈し、前記デバイスに対応したコマンドに変換して前記デバイスを動作させるファームウェアを備え、
前記ファームウェアは、前記デバイスの動作結果を前記クライアント端末に送信することを特徴とするネットワークシステム。 One or more application execution servers that execute applications, one or more client terminals that request the application execution servers to execute the applications, and one or more devices that operate in response to operations of the client terminals A network system in which at least the application execution server and the client terminal, and the client terminal and the device are network-connected,
The client terminal is
Execution request means for transmitting an application execution request accompanying the operation of the device to the application execution server;
Execution result receiving means for receiving first response data including an execution result of the application execution server in response to the application execution request;
An operation requesting means for transmitting a device operation request to the device in response to the reception of the first response data;
An operation result receiving means for receiving second response data including an operation result of the device in response to the device operation request;
The device is
Interpreting the device operation request from the client terminal, and converting the command into a command corresponding to the device to operate the device;
The network system, wherein the firmware transmits an operation result of the device to the client terminal.
前記クライアント端末は、プラグイン機能を有しない単機能ブラウザを備え、
前記実行要求手段、前記実行結果受信手段および前記動作要求手段は、前記アプリケーション実行サーバおよび前記デバイスと、前記単機能ブラウザとの間で、ハイパーテキスト転送プロトコルに基づいて通信を行うことを特徴とする請求項1に記載のネットワークシステム。 The application execution server and the device include an HTTP server,
The client terminal includes a single function browser having no plug-in function,
The execution requesting unit, the execution result receiving unit, and the operation requesting unit communicate with each other based on a hypertext transfer protocol between the application execution server and the device and the single function browser. The network system according to claim 1.
前記動作要求手段は、前記第1応答データに含まれる情報に基づいて、前記デバイス動作要求を送信することを特徴とする請求項1または2に記載のネットワークシステム。 The first response data further includes at least device specifying information for specifying the device,
The network system according to claim 1, wherein the operation request unit transmits the device operation request based on information included in the first response data.
前記デバイス本体は、前記デバイスアダプタを介して前記クライアント端末と接続され、
前記デバイスアダプタは、前記クライアント端末からの前記デバイス動作要求に基づき、前記デバイス本体を制御することを特徴とする請求項1ないし4のいずれか1項に記載のネットワークシステム。 The device includes a device body and a device adapter having the firmware,
The device body is connected to the client terminal via the device adapter,
The network system according to claim 1, wherein the device adapter controls the device main body based on the device operation request from the client terminal.
前記クライアント端末は、POS端末として機能することを特徴とする請求項1ないし6のいずれか1項に記載のネットワークシステム。 The application execution server functions as a POS server,
The network system according to claim 1, wherein the client terminal functions as a POS terminal.
前記アプリケーション実行サーバは、前記クライアント端末および前記デバイスと接続され、
前記アプリケーション代理実行サーバは、
前記アプリケーション実行サーバが異常状態となった場合、前記アプリケーション実行サーバの処理を代理実行することを特徴とする請求項1ないし7のいずれか1項に記載のネットワークシステム。 An application proxy execution server that is connected to the application execution server and performs the same processing as the application execution server,
The application execution server is connected to the client terminal and the device,
The application proxy execution server is
The network system according to claim 1, wherein when the application execution server is in an abnormal state, the process of the application execution server is executed by proxy.
前記アプリケーション実行サーバ、前記クライアント端末および前記デバイスは、LAN接続されていることを特徴とする請求項8または9に記載のネットワークシステム。 The application proxy execution server and the application execution server are connected to the Internet,
The network system according to claim 8 or 9, wherein the application execution server, the client terminal, and the device are LAN-connected.
前記クライアント端末は、前記デバイス設定手段による前記設定サービスを使用し、前記デバイスの設定を行うことを特徴とする請求項1ないし10のいずれか1項に記載のネットワークシステム。 The device includes device setting means for performing a setting service of the device,
The network system according to claim 1, wherein the client terminal uses the setting service provided by the device setting unit to set the device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012097442A JP5533929B2 (en) | 2012-04-23 | 2012-04-23 | Client terminal, client terminal control method and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012097442A JP5533929B2 (en) | 2012-04-23 | 2012-04-23 | Client terminal, client terminal control method and program |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007179323A Division JP4983445B2 (en) | 2007-07-09 | 2007-07-09 | Network system and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2012138128A true JP2012138128A (en) | 2012-07-19 |
JP5533929B2 JP5533929B2 (en) | 2014-06-25 |
Family
ID=46675426
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012097442A Active JP5533929B2 (en) | 2012-04-23 | 2012-04-23 | Client terminal, client terminal control method and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5533929B2 (en) |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10326288A (en) * | 1997-03-25 | 1998-12-08 | Seiko Epson Corp | Picture information inputting and outputting device and control method for the same device and picture information processing system |
JP2002251674A (en) * | 2001-02-23 | 2002-09-06 | Sharp Corp | Control method for pos terminal and pos device |
JP2002366726A (en) * | 2001-04-02 | 2002-12-20 | Fujitsu Ltd | Method and program for collecting purchase information |
JP2003036152A (en) * | 2001-05-17 | 2003-02-07 | Matsushita Electric Ind Co Ltd | Information printing system |
JP2004005348A (en) * | 2002-03-25 | 2004-01-08 | Ricoh Co Ltd | Image forming device having web service function |
JP2004007346A (en) * | 2002-03-25 | 2004-01-08 | Ricoh Co Ltd | Image forming apparatus having web service function |
JP2004013708A (en) * | 2002-06-10 | 2004-01-15 | Seiko Epson Corp | Pos system, adapter device, and network system |
JP2004209961A (en) * | 2002-03-25 | 2004-07-29 | Ricoh Co Ltd | Image forming apparatus having web service function |
JP2007065819A (en) * | 2005-08-30 | 2007-03-15 | Seiko Epson Corp | Pos terminal equipment and display method of web page |
JP2007102308A (en) * | 2005-09-30 | 2007-04-19 | Toshiba Corp | Thin client/server system |
JP2007140984A (en) * | 2005-11-18 | 2007-06-07 | Canon Inc | Information processor, method, and computer program |
JP2007193402A (en) * | 2006-01-17 | 2007-08-02 | Nec Software Chubu Ltd | Client/server system, control method therefor, client terminal, and program |
-
2012
- 2012-04-23 JP JP2012097442A patent/JP5533929B2/en active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10326288A (en) * | 1997-03-25 | 1998-12-08 | Seiko Epson Corp | Picture information inputting and outputting device and control method for the same device and picture information processing system |
JP2002251674A (en) * | 2001-02-23 | 2002-09-06 | Sharp Corp | Control method for pos terminal and pos device |
JP2002366726A (en) * | 2001-04-02 | 2002-12-20 | Fujitsu Ltd | Method and program for collecting purchase information |
JP2003036152A (en) * | 2001-05-17 | 2003-02-07 | Matsushita Electric Ind Co Ltd | Information printing system |
JP2004005348A (en) * | 2002-03-25 | 2004-01-08 | Ricoh Co Ltd | Image forming device having web service function |
JP2004007346A (en) * | 2002-03-25 | 2004-01-08 | Ricoh Co Ltd | Image forming apparatus having web service function |
JP2004209961A (en) * | 2002-03-25 | 2004-07-29 | Ricoh Co Ltd | Image forming apparatus having web service function |
JP2004013708A (en) * | 2002-06-10 | 2004-01-15 | Seiko Epson Corp | Pos system, adapter device, and network system |
JP2007065819A (en) * | 2005-08-30 | 2007-03-15 | Seiko Epson Corp | Pos terminal equipment and display method of web page |
JP2007102308A (en) * | 2005-09-30 | 2007-04-19 | Toshiba Corp | Thin client/server system |
JP2007140984A (en) * | 2005-11-18 | 2007-06-07 | Canon Inc | Information processor, method, and computer program |
JP2007193402A (en) * | 2006-01-17 | 2007-08-02 | Nec Software Chubu Ltd | Client/server system, control method therefor, client terminal, and program |
Also Published As
Publication number | Publication date |
---|---|
JP5533929B2 (en) | 2014-06-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5040486B2 (en) | Network system and program | |
JP4900096B2 (en) | Network system and program | |
CA2868967C (en) | Printing system and printer | |
US8792111B2 (en) | Image processing apparatus, information processing method, and storage medium | |
RU2568096C1 (en) | Device of printing control, printing system and method of controlling printing | |
JP4983445B2 (en) | Network system and program | |
CN104871126A (en) | Terminal apparatus, output system, and output method | |
JP5903871B2 (en) | Device control apparatus, device control system, device control method and program | |
US10360549B2 (en) | Printing system and printer | |
US10068219B2 (en) | Information processing method and recording system | |
US9720630B2 (en) | Recording device, control method of a recording device, and recording system | |
JP5614475B2 (en) | POS system | |
JP5370528B2 (en) | Network system, network system control method and program | |
JP5299503B2 (en) | Network system and program | |
JP5533929B2 (en) | Client terminal, client terminal control method and program | |
JP5817891B2 (en) | POS system control method | |
JP5360269B2 (en) | Network system, network system control method and program | |
JP5175629B2 (en) | Activation system | |
JP5668816B2 (en) | Printing apparatus control method and printing apparatus | |
JP5660174B2 (en) | Display control method and device adapter | |
US10410199B2 (en) | Print control system and print control method | |
JP6127586B2 (en) | Information processing system and information processing method | |
US10032152B2 (en) | Transmission system that enables correlation between a sending device and each of multiple receiving devices | |
JP6191385B2 (en) | Transmission system, host device, and data transmission method | |
JP5285970B2 (en) | Key management server device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120518 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20120518 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20130513 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20130513 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20130605 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130611 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130802 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130820 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20131003 |
|
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: 20140401 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5533929 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140414 |
|
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 |