(57)【要約】【課題】Ｗｅｂアプリケーションによる外部機器の制御を可能にし得る、端末装置、外部機器の制御方法、及びプログラムを提供する。【解決手段】端末装置１０は、Ｗｅｂサーバ２０から送信されたＷｅｂアプリケーションであるコンテンツプログラム２１を実行する、プログラム実行部１１と、外部機器３０及び４０との間でデータ通信を行なう、通信部１３と、Ｗｅｂアプリケーションからの指示に応じて、通信部１３を介して、外部機器３０及び４０を制御する、通信制御部１２と、を備えている。【選択図】図１
2014126982.tif 000002
【特許請求の範囲】
【請求項１】
Ｗｅｂサーバから送信されたＷｅｂアプリケーションを実行する、プログラム実行部と、
外部機器との間でデータ通信を行なう、通信部と、
前記Ｗｅｂアプリケーションからの指示に応じて、前記通信部を介して、前記外部機器を制御する、通信制御部と、
を備えていることを特徴とする端末装置。
【請求項２】
前記外部機器が、コード又は記録媒体からの情報の読み取りが可能な情報読取装置である場合に、
前記通信制御部は、前記Ｗｅｂアプリケーションからの指示に応じて、前記通信部を介して、前記情報読取装置を動作させて、前記情報読取装置が読み取った情報を前記プログラム実行部へと出力させる、
請求項１に記載の端末装置。
【請求項３】
Ｗｅｂサーバから送信されたＷｅｂアプリケーションを実行する端末装置に接続された、外部機器を制御するための方法であって、
（ａ）前記Ｗｅｂアプリケーションを実行する、ステップと、
（ｂ）前記端末装置に備えられ、且つ、外部機器との間でのデータ通信が可能な、通信装置を介して、前記Ｗｅｂアプリケーションからの指示に応じて、前記外部機器を制御する、ステップと、
を有することを特徴とする外部機器の制御方法。
【請求項４】
前記外部機器が、コード又は記録媒体からの情報の読み取りが可能な情報読取装置である場合に、
前記（ｂ）のステップにおいて、前記Ｗｅｂアプリケーションからの指示に応じて、前記通信装置を介して、前記情報読取装置を動作させて、前記情報読取装置が読み取った情報を取得する、
請求項３に記載の外部機器の制御方法。
【請求項５】
Ｗｅｂサーバから送信されたＷｅｂアプリケーションを実行する端末装置に接続された、外部機器を制御するためのプログラムであって、
前記端末装置のプロセッサに、
（ａ）前記Ｗｅｂアプリケーションを実行する、ステップと、
（ｂ）前記端末装置に備えられ、且つ、外部機器との間でのデータ通信が可能な、通信装置を介して、前記Ｗｅｂアプリケーションからの指示に応じて、前記外部機器を制御する、ステップと、
を実行させるプログラム。
【請求項６】
前記外部機器が、コード又は記録媒体からの情報の読み取りが可能な情報読取装置である場合に、
前記（ｂ）のステップにおいて、前記Ｗｅｂアプリケーションからの指示に応じて、前記通信装置を介して、前記情報読取装置を動作させて、前記情報読取装置が読み取った情報を取得する、
請求項５に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、Ｗｅｂアプリケーションを実行する端末装置、Ｗｅｂアプリケーションを用いた外部機器の制御方法、及びこれらを実現するためのプログラムに関する。
【背景技術】
【０００２】
近年、ネットワークの高速化、サーバコンピュータの性能向上により、企業等では、Ｗｅｂアプリケーションの利用が増加している。一般に、Ｗｅｂアプリケーションとは、端末装置に導入されたＷｅｂブラウザ上で動作するアプリケーションソフトを意味する（例えば、特許文献１参照。）。
【０００３】
Ｗｅｂアプリケーションでは、処理は、ネットワーク上のＷｅｂサーバと端末装置のＷｅｂブラウザとの間で、互いに通信を行ないながら進められる。従って、各端末装置において、必要となる処理に応じてアプリケーションソフトを導入する必要がなく、企業等においては、設備コストを抑制することができる。
【０００４】
また、Ｗｅｂアプリケーションでは、端末装置は、Ｗｅｂブラウザによって、入力データを受け付けたり、情報を表示したり、するだけであり、入力されたデータの管理及び処理等は、Ｗｅｂサーバによって行なわれる。このため、端末装置に重要なデータが残らないので、Ｗｅｂアプリケーションによれば、企業等において、セキュリティの向上を図ることが容易となる。
【０００５】
このように、Ｗｅｂアプリケーションには多くの利点があり、今後、利用範囲が拡大するものと考えられる。特に、スマートフォン、タブレット型の端末装置といった、携帯型の端末装置では、パーソナルコンピュータ（ＰＣ）に比べて、記憶容量が小さいため、Ｗｅｂアプリケーションの利用は増加の傾向にある。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００９−１６９７３００号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、従来からのＷｅｂブラウザにおいて、その機能は限定的であり、Ｗｅｂアプリケーションの利用範囲の拡大に制限を与えている。具体的には、従来からのＷｅｂブラウザでは、Ｗｅｂアプリケーションが、端末装置に接続された外部機器を直接制御することができないため、外部機器を用いたシステムにＷｅｂアプリケーションを利用することが困難となっている。
【０００８】
なお、従来からのＷｅｂブラウザであっても、例えば、外部機器であるプリンタのドライバソフトが端末装置にインストールされている環境下では、ユーザは、Ｗｅｂブラウザから、ドライバソフトを経由して、プリンタを動作させることができる。しかし、この場合は、プリンタはユーザの指示によって動作しており、Ｗｅｂアプリケーションがプリンタを直接制御しているわけではない。
【０００９】
本発明の目的の一例は、上記問題を解消し、Ｗｅｂアプリケーションによる外部機器の制御を可能にし得る、端末装置、外部機器の制御方法、及びプログラムを提供することにある。
【課題を解決するための手段】
【００１０】
上記目的を達成するため、本発明の一側面における端末装置は、
Ｗｅｂサーバから送信されたＷｅｂアプリケーションを実行する、プログラム実行部と、
外部機器との間でデータ通信を行なう、通信部と、
前記Ｗｅｂアプリケーションからの指示に応じて、前記通信部を介して、前記外部機器を制御する、通信制御部と、
を備えていることを特徴とする。
【００１１】
また、上記目的を達成するため、本発明の一側面における外部機器の制御方法は、Ｗｅｂサーバから送信されたＷｅｂアプリケーションを実行する端末装置に接続された、外部機器を制御するための方法であって、
（ａ）前記Ｗｅｂアプリケーションを実行する、ステップと、
（ｂ）前記端末装置に備えられ、且つ、外部機器との間でのデータ通信が可能な、通信装置を介して、前記Ｗｅｂアプリケーションからの指示に応じて、前記外部機器を制御する、ステップと、
を有することを特徴とする。
【００１２】
更に、上記目的を達成するため、本発明の一側面におけるプログラムは、Ｗｅｂサーバから送信されたＷｅｂアプリケーションを実行する端末装置に接続された、外部機器を制御するためのプログラムであって、
前記端末装置のプロセッサに、
（ａ）前記Ｗｅｂアプリケーションを実行する、ステップと、
（ｂ）前記端末装置に備えられ、且つ、外部機器との間でのデータ通信が可能な、通信装置を介して、前記Ｗｅｂアプリケーションからの指示に応じて、前記外部機器を制御する、ステップと、
を実行させることを特徴とする。
【発明の効果】
【００１３】
以上のように、本発明によれば、Ｗｅｂアプリケーションによる外部機器の制御を可能とすることができる。
【図面の簡単な説明】
【００１４】
【図１】図１は、本発明の実施の形態における端末装置の構成を示すブロック図である。
【図２】図２は、本発明の実施の形態における端末装置の動作を示すシーケンス図である。
【図３】図３は、本発明の実施の形態における端末装置として利用可能な携帯型の端末装置の一例を示すブロック図である。
【発明を実施するための形態】
【００１５】
（実施の形態）
以下、本発明の実施の形態における、端末装置、外部機器の制御方法、及びプログラムについて、図１〜図３を参照しながら説明する。
【００１６】
［装置構成］
最初に、本実施の形態における端末装置の構成について図１を用いて説明する。図１は、本発明の実施の形態における端末装置の構成を示すブロック図である。
【００１７】
図１に示すように、本実施の形態における端末装置１０は、Ｗｅｂサーバ２０から送信されるコンテンツプログラム２１を実行可能な端末装置である。コンテンツプログラム２１は、いわゆるＷｅｂアプリケーションであり、端末装置１０のＷｅｂブラウザ１４上で動作する。本実施の形態では、端末装置１０は、社内ＬＡＮ、インターネット等のネットワーク（図１において図示せず）を介して、Ｗｅｂサーバ２０に接続されている。
【００１８】
なお、Ｗｅｂブラウザ１４は、後述するように、従来からのＷｅｂブラウザでは備えられていない機能を備えている。従って、以降においては、「拡張Ｗｅｂブラウザ１４」と表記する。
【００１９】
また、図１に示すように、端末装置１０は、プログラム実行部１１と、通信制御部１２と、通信部１３とを備えている。このうち、プログラム実行部１１は、Ｗｅｂサーバ２０から送信されたＷｅｂアプリケーションであるコンテンツプログラム２１を実行する。
【００２０】
通信部１３は、外部機器３０及び４０との間でデータ通信を行なう機能を備えている。通信制御部１２は、Ｗｅｂアプリケーションであるコンテンツプログラム２１からの指示に応じて、通信部１３を介して、外部機器３０及び４０を制御する。
【００２１】
このように、端末装置１０によれば、コンテンツプログラム２１自体が、外部機器３０及び４０を直接制御することができる。また、外部機器３０及び４０を動作させるために、利用者による操作が必要とされることもない。
【００２２】
ここで、本実施の形態における端末装置の構成について更に具体的に説明する。まず、本実施の形態では、端末装置１０は、タブレット型端末、スマートフォン、といった携帯型の端末装置である。
【００２３】
また、本実施の形態では、コンテンツプログラム２１は、例えば、ＨＴＭＬファイルの中にＪａｖａ（登録商標）プログラム（Ｊａｖａ  Ｓｃｒｉｐｔ（登録商標））を記述することによって構築されている。コンテンツプログラム２１は、ＪＳＰ（Java Server Pages）技術を利用してＷｅｂサーバ２０から送信される。
【００２４】
更に、図１に示すように、本実施の形態では、端末１０は、オペレーティングシステム１５を備えている。オペレーティングシステム１５は、入出力機能、メモリ管理といった、各種プログラムから共通して利用される基本的な機能を提供する。
【００２５】
また、オペレーティングシステム１５上には、拡張Ｗｅｂブラウザ１４が導入され、プログラム実行部１１は、拡張Ｗｅｂブラウザ１４を構成するプログラムモジュールによって構築されている。具体的には、拡張Ｗｅｂブラウザ１４は、プログラムモジュールとして、Ｊａｖａ  Ｓｃｒｉｐｔエンジンと呼ばれるプログラムモジュールと、制御モジュールと、レンダリングエンジンなどを備えている。なお、図１において、これらのプログラムモジュールの図示は省略している。
【００２６】
このうち、Ｊａｖａ  Ｓｃｒｉｐｔエンジンは、コンテンツプログラムに記述されたＪａｖａ  Ｓｃｒｉｐｔを解析し、これを実行する。また、制御モジュールは、Ｊａｖａ  Ｓｃｒｉｐｔ中の命令に沿って、オペレーティングシステム１５を制御する。レンダリングエンジンは、コンテンツの表示処理を実行する。プログラム実行部１１は、主に、Ｊａｖａ  Ｓｃｒｉｐｔエンジンと制御モジュールとで構築されている。
【００２７】
また、通信部１３は、本実施の形態では、外部機器３０及び４０との間で、無線による通信を行なうことができる通信装置である。具体的には、通信部１３は、Ｂｌｕｅｔｏｏｔｈ（登録商標）等の短距離無線通信技術を利用した通信を実行可能な通信用のチップである。
【００２８】
更に、通信制御部１２は、通信部１３として機能する通信装置を動作させるためのドライバソフトによって構築されている。このドライバソフトは、拡張Ｗｅｂブラウザ１４によって管理されており、プログラム実行部１１を構築する制御モジュールは、ドライバソフトに指示を与えたり、ドライバソフトからデータを受け取ったりすることができる。拡張Ｗｅｂブラウザ１４は、この点で、従来からのＷｅｂブラウザと異なっている。
【００２９】
また、本実施の形態では、外部機器３０は、コード又は記録媒体からの情報の読み取りが可能な情報読取装置であり、図１の例では、外部機器３０は、バーコードリーダである。外部機器４０は、プリンタである。なお、以降の説明では、外部機器３０は「バーコードリーダ３０」と表記し、外部機器４０は「プリンタ４０」と表記する。
【００３０】
また、バーコードリーダ３０は、バーコード読取用の光学部品とその制御回路等を含む読取部３２を備えている。更に、プリンタ４０は、印刷のための各種部品を含む印刷部４２を備えている。
【００３１】
加えて、バーコードリーダ３０は通信部３１を備え、プリンタ４０は通信部４１を備えている。通信部３１及び４１は、端末装置１０の通信部１３とのデータ通信を実行する。具体的には、通信部３１及び４１は、通信部１３と同様のものであり、Ｂｌｕｅｔｏｏｔｈ等の短距離無線通信技術を利用した通信を実行可能な通信用のチップである。
【００３２】
［装置動作］
次に、本発明の実施の形態における端末装置１０の動作について図２を用いて説明する。図２は、本発明の実施の形態における端末装置の動作を示すシーケンス図である。以下の説明においては、適宜図１を参酌する。また、本実施の形態では、端末装置１０を動作させることによって、外部機器の制御方法が実施される。よって、本実施の形態における外部機器の制御方法の説明は、以下の端末装置１０の動作説明に代える。
【００３３】
最初に、図２に示すように、Ｗｅｂサーバ２０が、端末装置１０へとコンテンツプログラム２１を送信する（ステップＡ１）。次に、端末装置１０において、プログラム実行部１１は、送信されてきたコンテンツプログラム２１から、Ｊａｖａ  Ｓｃｒｉｐｔを取得して、取得したＪａｖａ  Ｓｃｒｉｐｔを実行する（ステップＡ２）。
【００３４】
続いて、プログラム実行部１１は、Ｊａｖａ  Ｓｃｒｉｐｔ中に、バーコードリーダ３０に対するデータの読み取り命令が含まれていた場合は、これを解析し、解析結果に基づいて、通信制御部１２に対してデータの読み取りを指示する（ステップＡ３）。
【００３５】
次に、ステップＡ３が実行されると、通信制御部１２は、通信部１３にデータ通信を指示する（ステップＡ４）。これにより、通信部１３は、バーコードリーダ３０の通信部３１に、データの読み取り要求を送信する（ステップＡ５）。
【００３６】
次に、バーコードリーダ３０において、通信部３１は、データの読み取り要求を受信すると、読取部３２にデータの読み取りを指示する（ステップＡ６）。これにより、読取部３２は、データの読み取りを実行し（ステップＡ７）、読み取ったデータ（以下「読取データ」と表記する。）を通信部３１に出力する（ステップＡ８）。
【００３７】
次に、通信部３１は、読取データを、端末装置１０の通信部１３に送信する（ステップＡ９）。続いて、通信部１３は、送信されてきた読取データを、通信制御部１２を介して、プログラム実行部１１へと出力する（ステップＡ１０）。
【００３８】
次に、プログラム実行部１１は、受け取った読取データを、Ｗｅｂサーバ２０に送信する（ステップＡ１１）。これにより、Ｗｅｂサーバ２０は、必要なデータ処理を実行する（ステップＡ１２）。次に、Ｗｅｂサーバ２０は、必要なデータ処理を終了した場合は、そのことをプログラム実行部１１に通知する（ステップＡ１３）。なお、上記のステップＡ１１〜Ａ１３は、Ｗｅｂサーバ２０とは別のアプリケーションサーバによって実行されていても良い。
【００３９】
次に、Ｊａｖａ  Ｓｃｒｉｐｔ中に、ステップＡ１３の実行後に、データ処理の結果をプリンタ４０に印刷させる旨の命令が含まれているとすると、プログラム実行部１１は、これを解析し、解析結果に基づいて、通信制御部１２に対してデータ処理結果の印刷を指示する（ステップＡ１４）。
【００４０】
次に、ステップＡ１４が実行されると、通信制御部１２は、通信部１３にデータ通信を指示する（ステップＡ１５）。これにより、通信部１３は、プリンタ４０の通信部４１に、データ処理結果の印刷要求を送信する（ステップＡ１６）。
【００４１】
次に、プリンタ４０において、通信部４１は、データ処理結果の印刷要求を受信すると、印刷部４２に印刷の実行を指示する（ステップＡ１７）。これにより、印刷部４２は、データ処理結果を印刷する（ステップＡ１８）。
【００４２】
以上のステップＡ１〜Ａ１８では、ステップＡ７において、ユーザが、バーコードリーダ３０の読取面をバーコードにかざす作業は必要となるが、ユーザに、それ以外の操作（電源のオンオフ等）を要求することはない。ステップＡ１〜Ａ１８によれば、バーコードリーダ３０とプリンタ４０とは、Ｗｅｂアプリケーションであるコンテンツプログラム２１によって直接制御される。
【００４３】
上記ステップＡ１〜Ａ１８の具体例としては、例えば、バーコードリーダ３０が、小売店でのレジにおいて、商品に付されたバーコードの読み取りに使用されている場合が挙げられる。この場合は、バーコードには、情報として、商品コード、値段等が含まれており、ステップＡ１２において、ＷＥＢサーバ２０は、データベース（図１及び図２において図示せず）に、購入された商品の情報を記録する。また、この場合、プリンタ４０は、商品購入者に渡すレシートを印刷するので、ユーザが商品のバーコードにバーコードリーダを当てるだけで、自動的にレシートが印刷される。
【００４４】
［プログラム］
本実施の形態におけるプログラムは、端末装置１０に、図２に示すステップＡ２〜Ａ５、Ａ１０、Ａ１１、Ａ１４〜Ａ１６を実行させるプログラムであれば良い。このプログラムを端末装置にインストールし、実行することによって、本実施の形態における端末装置１０と外部機器の制御方法とを実現することができる。この場合、端末装置のＣＰＵ（Central Processing Unit）は、プログラム実行部１１及び通信制御部１２として機能し、処理を行なう。
【００４５】
続いて、本実施の形態におけるプログラムを実行することによって、端末装置１０を実現する携帯型の端末装置について図３を用いて説明する。図３は、本発明の実施の形態における端末装置として利用可能な携帯型の端末装置の一例を示すブロック図である。
【００４６】
図３に示すように、携帯型の端末装置５０は、ＣＰＵ５１と、メモリ５２と、ディスプレイ５３と、記憶媒体５４と、通信モジュール５５と、タッチパネル５６とを備える。これらの各部は、バス５７を介して、互いにデータ通信可能に接続される。
【００４７】
ＣＰＵ５１は、記憶装置５４に格納された、本実施の形態におけるプログラム（コード）をメモリ５２に展開し、これらを所定順序で実行することにより、各種の演算を実施する。メモリ５２は、典型的には、ＤＲＡＭ（Dynamic Random Access Memory）等の揮発性のメモリである。
【００４８】
また、本実施の形態におけるプログラムは、コンピュータ読み取り可能な記録媒体に格納された状態で提供されても良いし、通信モジュール５５を介して接続されたインターネット上から送信されても良い。記録媒体の具体例としては、ＣＦ（Compact Flash（登録商標））及びＳＤ（Secure Digital）等の汎用的な半導体記憶デバイスが挙げられる。
【００４９】
また、記憶装置５４の具体例としては、ハードディスク、フラッシュメモリ等の半導体記憶装置が挙げられる。タッチパネル５６は、ユーザの入力を受け付ける入力機器である。ディスプレイ５３は、液晶表示装置等の表示装置である。通信モジュール３５は、無線ＬＡＮによる通信を実現するための装置及び携帯電話網を利用した通信を実現するための装置のうちいずれか一方又は両方と、通信部１３として機能する通信装置とを含む。
【００５０】
また、本実施の形態では、端末装置１０は、上述した、タブレット型端末、スマートフォン等の携帯型の端末装置に限定されず、ノートＰＣといったパーソナルコンピュータ、電子ペーパー等であっても良い。
【産業上の利用可能性】
【００５１】
以上のように本発明によれば、Ｗｅｂアプリケーションによる外部機器の制御が可能となる。Ｗｅｂサービスを提供するＷｅｂシステムに有用である。
【符号の説明】
【００５２】
１０  端末装置
１１  プログラム実行部
１２  通信制御部
１３  通信部
１４  拡張Ｗｅｂブラウザ
２０  Ｗｅｂサーバ
３０  外部機器（バーコードリーダ）
３１  通信部
３２  読取部
４０  プリンタ
４１  通信部
４２  印刷部
５０  携帯型の端末装置
５１  ＣＰＵ
５２  メモリ
５３  ディスプレイ
５４  記憶装置
５５  通信モジュール
５６  タッチパネル
５７  バス
【図１】
2014126982.tif 000003
【図２】
2014126982.tif 000004
【図３】
2014126982.tif 000005