(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022061285
(43)【公開日】2022-04-18
(54)【発明の名称】端末装置制御方法、端末装置、及びプログラム
(51)【国際特許分類】
H04M 1/00 20060101AFI20220411BHJP
G06F 3/12 20060101ALI20220411BHJP
【FI】
H04M1/00 U
G06F3/12 320
G06F3/12 324
G06F3/12 392
【審査請求】未請求
【請求項の数】6
【出願形態】OL
(21)【出願番号】P 2020169198
(22)【出願日】2020-10-06
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.JAVASCRIPT
(71)【出願人】
【識別番号】000002325
【氏名又は名称】セイコーインスツル株式会社
(74)【代理人】
【識別番号】100142837
【弁理士】
【氏名又は名称】内野 則彰
(74)【代理人】
【識別番号】100166305
【弁理士】
【氏名又は名称】谷川 徹
(74)【代理人】
【識別番号】100171251
【弁理士】
【氏名又は名称】篠田 拓也
(72)【発明者】
【氏名】小倉 知樹
【テーマコード(参考)】
5K127
【Fターム(参考)】
5K127AA36
5K127BA03
5K127BB22
5K127BB33
5K127DA07
5K127DA12
5K127DA15
5K127FA07
5K127GA14
5K127GD10
5K127KA02
(57)【要約】
【課題】外部装置に動作を行わせるためのアプリケーションが動作している間に、端末装置の画面モードに応じて外部装置から端末装置に送信される情報についての動作を同時に実行できること。
【解決手段】端末装置制御方法は、端末装置の画面について1つのアプリケーションが動作するモードである1画面モードと、複数のアプリケーションが並行して動作するモードである複数画面モードとのいずれかを示す画面モード情報を取得する画面モード情報取得ステップと、画面モード情報が複数画面モードであることを示す場合に、第1アプリケーションが動作している時期に少なくとも動作する動作であって、外部装置から端末装置に送信される情報についての動作である第1動作を有効にするか無効にするかを切り替える切り替えステップと、第1動作を有効にすると切り替えられている場合に第1動作を実行する第1動作実行ステップとを有する。
【選択図】
図4
【特許請求の範囲】
【請求項1】
外部装置と通信をすることによって前記外部装置に動作を行わせる端末装置の画面について1つのアプリケーションが動作するモードである1画面モードと、複数のアプリケーションが並行して動作するモードである複数画面モードとのいずれかを示す画面モード情報を取得する画面モード情報取得ステップと、
前記画面モード情報取得ステップによって取得された前記画面モード情報が前記複数画面モードであることを示す場合に、前記外部装置に動作を行わせるための第1アプリケーションが動作している時期に少なくとも動作する動作であって、前記外部装置から前記端末装置に送信される情報についての動作である第1動作を有効にするか無効にするかを切り替える切り替えステップと、
前記切り替えステップによって前記第1動作を有効にすると切り替えられている場合に前記第1動作を実行する第1動作実行ステップと、
を有する端末装置制御方法。
【請求項2】
前記外部装置から受信した情報を前記第1アプリケーションに出力する受信情報出力ステップ
をさらに有する請求項1に記載の端末装置制御方法。
【請求項3】
前記切り替えステップによって前記第1動作を有効にすると切り替えられている場合と、前記第1動作を無効にすると切り替えられている場合とにおいて、前記第1アプリケーションによる動作に対して異なる応答を行う応答ステップ
をさらに有する請求項1または請求項2に記載の端末装置制御方法。
【請求項4】
前記端末装置の前記画面についてのモードに関する通知を行う通知ステップ
をさらに有する請求項1から請求項3のいずれか一項に記載の端末装置制御方法。
【請求項5】
外部装置と通信をすることによって前記外部装置に動作を行わせる端末装置の画面について1つのアプリケーションが動作するモードである1画面モードと、複数のアプリケーションが並行して動作するモードである複数画面モードとのいずれかを示す画面モード情報を取得する画面モード情報取得部と、
前記画面モード情報取得部によって取得された前記画面モード情報が前記複数画面モードであることを示す場合に、前記外部装置に動作を行わせるための第1アプリケーションが動作している時期に少なくとも動作する動作であって、前記外部装置から前記端末装置に送信される情報についての動作である第1動作を有効にするか無効にするかを切り替える切り替え部と、
前記切り替え部によって前記第1動作を有効にすると切り替えられている場合に前記第1動作を実行する第1動作実行部と、
を備える端末装置。
【請求項6】
コンピュータに、
外部装置と通信をすることによって前記外部装置に動作を行わせる端末装置の画面について1つのアプリケーションが動作するモードである1画面モードと、複数のアプリケーションが並行して動作するモードである複数画面モードとのいずれかを示す画面モード情報を取得する画面モード情報取得ステップと、
前記画面モード情報取得ステップによって取得された前記画面モード情報が前記複数画面モードであることを示す場合に、前記外部装置に動作を行わせるための第1アプリケーションが動作している時期に少なくとも動作する動作であって、前記外部装置から前記端末装置に送信される情報についての動作である第1動作を有効にするか無効にするかを切り替える切り替えステップと、
前記切り替えステップによって前記第1動作を有効にすると切り替えられている場合に前記第1動作を実行する第1動作実行ステップと、
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、端末装置制御方法、端末装置、及びプログラムに関する。
【背景技術】
【0002】
ウェブブラウザなどのアプリケーション(以下では、第1アプリケーションと呼ぶ)から印刷データを受け取り、その印刷データをそのまま、あるいはプリンタ用データに変換して、プリンタへ送信するアプリケーション(以下では、第2アプリケーションと呼ぶ)が知られている(特許文献1)。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
特許文献1に記載されるような技術においては、端末装置としてiPad(登録商標)、iPhone(登録商標)などの携帯端末を利用することがよく想定される。これらの端末装置では、基本的には、動作できるアプリケーションが画面に表示されているものに限られ、画面に表示されているアプリケーション以外の他のアプリケーションは動作を停止させられてしまう。
【0005】
特許文献1に記載されるような第2アプリケーションを、動作できるアプリケーションが画面に表示されているものに限られる上述したような端末装置で動作させる場合、第1アプリケーションが動作している間は、第2アプリケーションは動作を停止させられてしまう。そのため、第2アプリケーションには、プリンタのエラー状態を常に監視するなどの「バックグラウンド的な動作が必要となる機能」がなかった。
【0006】
したがって、動作できるアプリケーションが画面に表示されているものに限られる1画面モードと、同時に複数のアプリケーションが動作できる複数画面モードとをもつ端末装置において、複数画面モードのときに、第1アプリケーション及び第2アプリケーションを同時に実行した場合でも、第2アプリケーションには「バックグラウンド的な動作が必要となる機能」がなかったため、当該機能を実現できなかった。
【0007】
本発明は上記の点に鑑みてなされたものであり、外部装置に動作を行わせるためのアプリケーションが動作している間に、端末装置の画面モードに応じて外部装置から端末装置に送信される情報についての動作を同時に実行できる端末装置制御方法、端末装置、及びプログラムを提供する。
【課題を解決するための手段】
【0008】
本発明は上記の課題を解決するためになされたものであり、本発明の一態様は、外部装置と通信をすることによって前記外部装置に動作を行わせる端末装置の画面について1つのアプリケーションが動作するモードである1画面モードと、複数のアプリケーションが並行して動作するモードである複数画面モードとのいずれかを示す画面モード情報を取得する画面モード情報取得ステップと、前記画面モード情報取得ステップによって取得された前記画面モード情報が前記複数画面モードであることを示す場合に、前記外部装置に動作を行わせるための第1アプリケーションが動作している時期に少なくとも動作する動作であって、前記外部装置から前記端末装置に送信される情報についての動作である第1動作を有効にするか無効にするかを切り替える切り替えステップと、前記切り替えステップによって前記第1動作を有効にすると切り替えられている場合に前記第1動作を実行する第1動作実行ステップと、を有する端末装置制御方法である。
【0009】
また、本発明の一態様は、上記の端末装置制御方法において、前記外部装置から受信した情報を前記第1アプリケーションに出力する受信情報出力ステップをさらに有する。
【0010】
また、本発明の一態様は、上記の端末装置制御方法において、前記切り替えステップによって前記第1動作を有効にすると切り替えられている場合と、前記第1動作を無効にすると切り替えられている場合とにおいて、前記第1アプリケーションによる動作に対して異なる応答を行う応答ステップをさらに有する。
【0011】
また、本発明の一態様は、上記の端末装置制御方法において、前記端末装置の前記画面についてのモードに関する通知を行う通知ステップをさらに有する。
【0012】
また、本発明の一態様は、外部装置と通信をすることによって前記外部装置に動作を行わせる端末装置の画面について1つのアプリケーションが動作するモードである1画面モードと、複数のアプリケーションが並行して動作するモードである複数画面モードとのいずれかを示す画面モード情報を取得する画面モード情報取得部と、前記画面モード情報取得部によって取得された前記画面モード情報が前記複数画面モードであることを示す場合に、前記外部装置に動作を行わせるための第1アプリケーションが動作している時期に少なくとも動作する動作であって、前記外部装置から前記端末装置に送信される情報についての動作である第1動作を有効にするか無効にするかを切り替える切り替え部と、前記切り替え部によって前記第1動作を有効にすると切り替えられている場合に前記第1動作を実行する第1動作実行部と、を備える端末装置である。
【0013】
また、本発明の一態様は、コンピュータに、外部装置と通信をすることによって前記外部装置に動作を行わせる端末装置の画面について1つのアプリケーションが動作するモードである1画面モードと、複数のアプリケーションが並行して動作するモードである複数画面モードとのいずれかを示す画面モード情報を取得する画面モード情報取得ステップと、前記画面モード情報取得ステップによって取得された前記画面モード情報が前記複数画面モードであることを示す場合に、前記外部装置に動作を行わせるための第1アプリケーションが動作している時期に少なくとも動作する動作であって、前記外部装置から前記端末装置に送信される情報についての動作である第1動作を有効にするか無効にするかを切り替える切り替えステップと、前記切り替えステップによって前記第1動作を有効にすると切り替えられている場合に前記第1動作を実行する第1動作実行ステップと、を実行させるためのプログラムである。
【発明の効果】
【0014】
本発明によれば、外部装置に動作を行わせるためのアプリケーションが動作している間に、端末装置の画面モードに応じて外部装置から端末装置に送信される情報についての動作を同時に実行できる。
【図面の簡単な説明】
【0015】
【
図1】本発明の実施形態に係る印刷システムの構成の一例を示す図である。
【
図2】本発明の実施形態に係る印刷システムのハードウェア構成の一例を示す図である。
【
図3】本発明の実施形態に係る印刷システムの機能構成の一例を示す図である。
【
図4】本発明の実施形態に係る第2アプリケーションによる端末装置制御方法の一例を示す図である。
【
図5】本発明の本実施形態に係るバックグラウンド的動作の一例を示す図である。
【発明を実施するための形態】
【0016】
(第1の実施形態)
以下、図面を参照しながら本発明の実施形態について詳しく説明する。
図1は、本実施形態に係る印刷システムPSの構成の一例を示す図である。印刷システムPSは、端末装置1と、サーバ2と、プリンタ3とを備える。
端末装置1は、サーバ2に記憶されるウェブアプリケーションを読み込み、読み込んだウェブアプリケーションの実行結果に基づいて、ウェブブラウザにおいて印刷データを生成する。端末装置1は、生成した印刷データをプリンタ3に送信する。プリンタ3は、端末装置1から受信した印刷データの印刷を実行する。上述したように端末装置1は、外部装置と通信をすることによって外部装置に動作を行わせる。
【0017】
図2は、本実施形態に係る印刷システムPSのハードウェア構成の一例を示す図である。端末装置1は、通信部10と、表示部11と、操作受付部12と、CPU(Central Processing Unit)13と、ROM(Read Only Memory)14と、RAM(Random Access Memory)15と、記憶部16とを備える。
【0018】
通信部10は、ネットワークを介して、各種の情報の送信及び受信を行う。端末装置1は、通信部10を介して、サーバ2及びプリンタ3と各種の情報の送信及び受信を行う。通信部10は、ネットワークを介して通信を行うための通信インターフェース(I/F)を備える。通信部10は、一例として、USB(Universal Serial Bus)を用いてプリンタ3と通信を行う。通信部10は、プリンタ3との通信に、Bluetooth Classic (登録商標)、Bluetooth Low Energy(登録商標)などの近距離無線通信を用いてもよい。また、通信部10は、プリンタ3との通信に、有線または無線のLAN(Local Area Network)を用いてもよい。また、通信部10は、プリンタ3との通信に、シリアル通信を用いてもよい。通信部10は、プリンタ3との通信に、上述した通信以外の種類の通信を用いてもよい。
通信部10は、サーバ2との通信に、例えば、無線LANを用いる。通信部10は、サーバ2との通信に、無線LAN以外の種類の通信を用いてもよい。
【0019】
表示部11は、各種の情報を表示する。表示部11は、例えば、液晶ディスプレイ、または有機エレクトロルミネッセンス(EL:Electroluminescence)ディスプレイを備える。
操作受付部12は、ユーザからの各種の操作を受け付ける。操作受付部12は、例えば、タッチパネルを備える。操作受付部12に備えられるタッチパネルは、表示部11に備えられる液晶ディスプレイと一体に備えられてよい。操作受付部12は、操作ボタン、マウス、またはキーボードなどを備えてもよい。
【0020】
CPU13は、ROM14からプログラムを読み込み、読み込んだプログラムに従って各種の制御を実行する。CPU13は、レジスターなどの内部記憶媒体を複数内蔵している。CPU13は、ROM14から内部記憶媒体にデータを一時的に記憶し、これを演算処理する。CPU13は、演算結果をレジスターに出力し、さらにレジスターからRAM14や外部の記憶媒体に出力させる。ROM14は、CPU13が各種演算や制御を行うための各種プログラム、データ及びパラメーターなどを格納した主記憶装置である。
【0021】
記憶部16は、アプリケーションなど各種の情報を記憶する。記憶部16は、例えば、半導体記憶装置等の記憶装置を用いて構成される。記憶部16は、磁気ハードディスク装置を備えてもよい。
記憶部16は、一例として、ウェブブラウザ160と、中継アプリケーション161とを記憶している。ウェブブラウザ160は、サーバ2に備えられるウェブアプリケーション20と通信を行い、ウェブアプリケーション20の実行結果を表示する。ウェブブラウザ160上では、一例として、JavaScriptなどウェブブラウザ上で動作するプログラムが用いられてPOS(Point of Sale)用プログラムが動作する。ウェブブラウザ上で動作するプログラムに、JavaScript以外の言語が用いられてもよい。
【0022】
なお、第1アプリケーション133として、ウェブブラウザ以外に、例えば、ユーザによって作成されたアプリケーションが用いられてもよい。また、第1アプリケーション133には、スクリプト、中間表現、プラグインなどの各種のプログラムが用いられてもよい。それらの各種のプログラムは、サーバ2から取得(ダウンロード)する後述のウェブページデータWPに含まれていてもよい。
【0023】
中継アプリケーション161は、ウェブブラウザ160において生成されたHTTPプロトコルに基づく印刷データPD1を、プリンタ3によって印刷が実行可能な形式に変換する。また、中継アプリケーション161は、バックグラウンド的動作を行う。本実施形態においてバックグラウンド的動作とは、プリンタ3に動作を行わせるための第1アプリケーション133が動作している時期に少なくとも動作する動作であって、プリンタ3から端末装置1に送信される情報についての動作である。つまり、本実施形態においてバックグラウンド的動作とは、複数画面モードにおいて第1アプリケーション133が動作している間にバックグラウンドにおいて実行される動作、または処理である。バックグラウンド的動作は、第1動作の一例である。
【0024】
サーバ2は、ウェブアプリケーション20を備える。また、サーバ2は、ウェブアプリケーション20において表示されるウェブページデータ21を記憶している。
【0025】
図3は、本実施形態に係る印刷システムPSの機能構成の一例を示す図である。
端末装置1は、表示制御部130と、画面モード切り替え部131と、操作情報供給部132と、第1アプリケーション133と、第2アプリケーション136とを備える。表示制御部130、画面モード切り替え部131、操作情報供給部132、第1アプリケーション133、及び第2アプリケーション136は、それぞれ、例えばCPU13がROM14及びまたは記憶部16からプログラムを読み込んで処理を実行することにより実現される。表示制御部130、画面モード切り替え部131、及び操作情報供給部132は、一例として、端末装置1のOS(Operating System)に組み込まれて実現される。
【0026】
表示制御部130は、表示部11の制御を行う。
画面モード切り替え部131は、表示部11に表示される画面についてモードを切り替える。表示部11に表示される画面についてのモードには、1画面モードと、複数画面モードとがある。1画面モードは、表示部11に1つのアプリケーションによる画面が表示されて、1つのアプリケーションが動作するモードである。複数画面モードは、表示部11に複数のアプリケーションによる画面が表示されて、複数のアプリケーションが並行して動作するモードである。画面モード切り替え部131は、モードを切り替えた結果に応じて、1画面モードと、複数画面モードとのいずれかを示す画面モード情報を生成する。
【0027】
なお、複数画面モードにおいて、表示制御部130は、例えば、表示部11の画面全体を分割して複数のアプリケーションによる画面をそれぞれ表示する。複数画面モードにおいて、表示制御部130は、表示部11の画面の複数の領域それぞれに複数のアプリケーションによる画面をそれぞれ表示してもよい。
【0028】
操作情報供給部132は、操作受付部12が受け付ける各種の操作を他の機能部に伝える。操作受付部12が受け付ける各種の操作は、例えば、各アプリケーションにおけるユーザーインターフェースを介して行われる。
【0029】
第1アプリケーション133は、一例として、ウェブブラウザである。第1アプリケーション133は、記憶部16に記憶されるウェブブラウザ160がCPU13によって実行されて実現される。第1アプリケーション133は、ウェブブラウザ表示部134と、印刷制御部135と、印刷データ生成部143とを備える。
【0030】
ウェブブラウザ表示部134は、サーバ2に備えられるウェブアプリケーション20と通信を行い、ウェブアプリケーション20の実行結果を表示する。
印刷制御部135は、ウェブブラウザ160に表示される印刷ボタンがユーザにより押下(タッチパネル上において当該印刷ボタンが表示されている領域がタップ)される操作を受け付ける。
印刷データ生成部143は、ウェブブラウザ160に表示される印刷ボタンが押下される操作を印刷制御部135が受け付けると、印刷データPD1を生成する。
【0031】
第2アプリケーション136は、中継アプリケーションである。第2アプリケーション136は、記憶部16に記憶される中継アプリケーション161がCPU13によって実行されて実現される。第2アプリケーション136は、印刷データ取得部137と、印刷データ変換部138と、印刷データ送信部139と、プリンタ状態管理部140と、画面モード情報取得部141と、切り替え部142とを備える。
【0032】
印刷データ取得部137は、第1アプリケーション133から印刷データPD1を取得する。ここで第1アプリケーション133と第2アプリケーション136との間の印刷データPD1の受け渡しは、例えば、URLスキームを用いて行われる。つまり、印刷データ取得部137は、URLスキームに基づいて第1アプリケーション133から印刷データPD1を取得する。なお、第1アプリケーション133と第2アプリケーション136との間の印刷データPD1の受け渡しは、端末装置1内におけるプロセス間通信として行われてもよいし、その他の方法が用いられてもよい。
【0033】
また、第1アプリケーション133から第2アプリケーション136に印刷データPD1を直接供給せず、サーバ2を介して供給されてもよい。その場合、印刷データPD1は、第1アプリケーション133から一度サーバ2に出力された後、必要に応じて印刷データPD1の変換が行われ、印刷データPD1はサーバ2から第2アプリケーション136に供給される。その場合、印刷データ取得部137は、サーバ2から印刷データPD1、あるいは変換後の印刷データPD2を取得する。
【0034】
印刷データ変換部138は、印刷データ取得部137が取得した印刷データPD1をプリンタ3によって印刷が実行可能な形式に変換する。
印刷データ送信部139は、印刷データ変換部138によって変換されて得られた印刷データPD2をプリンタ3に送信する。
【0035】
なお、第2アプリケーション136は、第1アプリケーション133から取得した印刷データPD1を変換することなくプリンタ3に送信してもよい。その場合、印刷データ取得部137は、第1アプリケーション133から取得した印刷データPD1を印刷データ送信部139に供給する。印刷データ送信部139は、印刷データ取得部137から供給される印刷データPD1をプリンタ3に送信する。
【0036】
プリンタ状態管理部140は、バックグラウンド的動作を行う。本実施形態では、プリンタ状態管理部140は、一例として、バックグラウンド的動作としてプリンタ3についてポーリング処理を行う。
【0037】
画面モード情報取得部141は、画面モード切り替え部131から画面モード情報を取得する。
切り替え部142は、画面モード情報が複数画面モードであることを示す場合に、プリンタ状態管理部140の動作を有効にするか無効にするかを切り替える。
【0038】
サーバ2は、端末装置1にウェブページデータWPを供給する。ここでサーバ2は、端末装置1のウェブブラウザ表示部134からの要請に応じてウェブページデータ21のなかからウェブページデータWPを端末装置1にウェブブラウザ表示部134に供給する。
【0039】
プリンタ3は、端末装置1から送信される印刷データPD2を受信し、受信した印刷データPD2に基づいて印刷を実行する。プリンタ3では、自装置の通信規格に応じたプロトコルの印刷データPD2を端末装置1から受信する。そのため、印刷システムPSでは、HTTPサーバを備えるなどしてHTTP対応の構成とする必要がない。
また、プリンタ3は、印刷データPD2を受信する処理、印刷データPD2を印刷する処理においてエラーが発生した場合、エラーが発生したことをエラーの内容とともに端末装置1に通知する。
【0040】
ここで
図4及び
図5を参照し、第2アプリケーション136による端末装置制御方法の詳細について説明する。
図4は、本実施形態に係る第2アプリケーション136による端末装置制御方法の一例を示す図である。
【0041】
ステップS10(画面モード情報取得ステップ):画面モード情報取得部141は、画面モード切り替え部131から画面モード情報を取得する。ここで画面モード切り替え部131が画面モードを切り替えると、切り替えられた画面モード情報が画面モード切り替え部131から画面モード情報取得部141に供給される。画面モード情報取得部141は、取得した画面モード情報を切り替え部142に供給する。
【0042】
ステップS20(切り替えステップ):切り替え部142は、画面モードが複数画面モードであるか否かを判定する。切り替え部142は、画面モード情報取得部141によって取得された画面モード情報に基づいて判定を行う。切り替え部142は、画面モードが複数画面モードであると判定する場合(ステップS20;YES)、バックグラウンド的動作を有効にすると切り替える(ステップ30)。一方、切り替え部142が、画面モードが1画面モードと判定する場合(ステップS20;NO)、第2アプリケーション136はステップS40の処理を実行する。
【0043】
なお、本実施形態ではステップS20及びステップ30において、切り替え部142は、画面モード情報取得部141から供給される画面モード情報に基づいて画面モードが複数画面モードであるか否かについて判定を行う場合の一例について説明した。つまり、本実施形態では、第2アプリケーション136が画面モードをOSからの情報を用いて自動で検知する場合の一例について説明したが、これに限られない。
第2アプリケーション136におけるユーザーインターフェース上でユーザによってバックグラウンド的動作を有効にするか無効にするかの切り替えを行う操作が行われて、切り替え部142は、当該操作に基づいてポーリング処理について有効と無効とを切り替えてもよい。当該操作は、操作情報供給部132から切り替え部142に供給される。その場合、第2アプリケーション136が画面モード情報取得部141から供給される画面モード情報に基づいて画面モードを判定し、1画面モードである場合には、ユーザーインターフェースからバックグラウンド的動作を有効にするか無効にするかの切り替えを行う操作ができないようにしてもよい。
【0044】
また、切り替え部142は、第1アプリケーション133からの通信による命令に基づいて、バックグラウンド的動作について有効と無効とを切り替えてもよい。この場合、切り替え部142は第2アプリケーション136が画面モード情報取得部141から供給される画面モード情報に基づいて画面モードを判定した結果、1画面モードである場合、第1アプリケーション133からバックグラウンド的動作を有効にする命令を受信した場合には、例えば、切り替え部142はエラーを表示する。あるいは、1画面モードである場合に第1アプリケーション133からバックグラウンド的動作を有効にする命令を受信した場合、切り替え部142は、1画面モードであるためバックグラウンド的動作を有効にできないことを第1アプリケーション133に通知してもよい。
【0045】
ステップS40:プリンタ状態管理部140は、バックグラウンド的動作が有効である否かを判定する。プリンタ状態管理部140は、切り替え部142の切り替えの結果に基づいて判定を行う。プリンタ状態管理部140は、バックグラウンド的動作が有効であると判定する場合(ステップS40;YES)、バックグラウンド的動作を実行する(ステップS90)。つまり、プリンタ状態管理部140は、切り替え部142によってバックグラウンド的動作を有効にすると切り替えられている場合にバックグラウンド的動作を実行する。ステップS90は、第1動作実行ステップの一例である。バックグラウンド的動作を実行した後、第2アプリケーション136はステップ50の処理を実行する。
【0046】
一方、プリンタ状態管理部140は、バックグラウンド的動作が有効でないと判定する場合(ステップS40;NO)、プリンタ状態管理部140はバックグラウンド的動作を実行せず、第2アプリケーション136はステップ50の処理を実行する。
【0047】
なお、プリンタ状態管理部140は、バックグラウンド的動作が有効でないと判定する場合、バックグラウンド的動作が有効でないことを第1アプリケーション133に通知してもよい。第1アプリケーション133は、バックグラウンド的動作が無効となっている場合、当該場合に応じた処理を行うことができる。つまり、第1アプリケーション133の動作は、第2アプリケーション136のバックグラウンド的動作が有効であるか無効であるかに応じて異なっていてよい。
【0048】
ステップS50:印刷データ取得部137は、第1アプリケーション133から印刷データPD1を取得したか否かを判定する。印刷データ生成部143は、印刷データPD1を生成すると、生成した印刷データPD1を印刷データ取得部137に供給する。印刷データ取得部137は、印刷データ生成部143から印刷データPD1が供給された場合、当該印刷データPD1を取得する。印刷データ取得部137は、印刷データPD1を取得したと判定する場合(ステップS50;YES)、取得した印刷データPD1を印刷データ変換部138に供給する。一方、印刷データ取得部137は、印刷データPD1を取得していないと判定する場合(ステップS50;NO)、ステップS40の処理を再度実行する。
【0049】
ステップS60:印刷データ変換部138は、印刷データ取得部137が取得した印刷データPD1をプリンタ3によって印刷が実行可能な形式に変換する。ここで、印刷データ変換部138は、ウェブブラウザである第1アプリケーション133において生成されたHTTPプロトコルに基づく印刷データPD1を、プリンタ3の通信規格に応じたプロトコルの印刷データPD2に変換する。印刷データ変換部138は、変換した結果、印刷データPD2を生成する。
【0050】
ステップS70:印刷データ送信部139は、印刷データ変換部138によって変換されて得られた印刷データPD2を、通信部10を介してプリンタ3に送信する。
【0051】
ステップS80:第2アプリケーション136は、終了条件が満たされたか否かを判定する。終了条件は、例えば、ユーザによって第2アプリケーション136を終了する操作が行われ、当該操作が操作情報供給部132から第2アプリケーション136に伝えられることである。第2アプリケーション136は、終了条件が満たされたと判定する場合(ステップS80;YES)、処理を終了する。一方、第2アプリケーション136は、終了条件が満たされていないと判定する場合(ステップS80;NO)、ステップS40の処理を再度実行する。
【0052】
ここで
図5を参照し、ステップS90に示したバックグラウンド的動作の詳細について説明する。上述したように本実施形態においては、プリンタ状態管理部140は、バックグラウンド的動作としてプリンタ3についてポーリング処理を行う。当該ポーリング処理には、例えば、プリンタ3の接続状態の監視処理、プリンタ3のエラー状態の監視処理、プリンタ3から送信される各種データの監視処理、プリンタ3について状態の変化を検知した場合の処理が含まれる。
【0053】
プリンタ3の接続状態の監視処理では、端末装置1とプリンタ3との通信の接続状態が、端末装置1において検知される。プリンタ3のエラー状態の監視処理は、プリンタ3においてエラーが発生した場合にプリンタ3から送信されるステータスデータが検知される。プリンタ3から送信される各種データの監視処理では、プリンタ3へ送信した各種コマンドに対する応答データ、あるいはプリンタ3に接続される周辺機器、あるいはアクセサリーからプリンタ3を介して送信されるデータが検知される。プリンタ3について状態の変化を検知した場合の処理では、検知された変化が第1アプリケーション133に通知される、検知された変化が第2アプリケーション136のウェブブラウザ上で表示される、あるいは検知された変化に基づいて第1アプリケーション133から以降に印刷データPD1を取得した場合の動作が変更される。プリンタ状態管理部140は、例えば、サーバ2がエラー状態であることが検知されると、第1アプリケーション133にエラーを通知する。
【0054】
図5は、本実施形態に係るバックグラウンド的動作の一例を示す図である。
図5に示すステップS110、ステップS120、及びステップS130の各処理は、
図4に示したステップS90のバックグラウンド的動作として実行される。
【0055】
ステップS110:プリンタ状態管理部140は、プリンタ状態情報を通信部10から取得する。プリンタ状態情報は、プリンタ3の状態を示す情報である。プリンタ状態情報は、通信部10によって生成、更新される。例えば、端末装置1がプリンタ3から新たにエラーメッセージなどのデータを受信した場合、データを受信したことを示す情報が通信部10によってプリンタ状態情報に付加される。あるいは、端末装置1とプリンタ3との通信が切断された場合、通信が切断されたことを示す情報が通信部10によってプリンタ状態情報に付加される。なお、プリンタ3から新たに受信したデータがプリンタ状態情報に付加される代わりに、当該データによってプリンタ状態情報が更新されてもよい。
【0056】
ステップS120:プリンタ状態管理部140は、プリンタ3の状態が変化したか否かを判定する。プリンタ状態管理部140は、通信部10から取得したプリンタ状態情報に基づいて判定を行う。プリンタ状態管理部140は、プリンタ3の状態が変化したと判定する場合(ステップS120;YES)、ステップ30の処理を実行する。一方、プリンタ状態管理部140は、プリンタ3の状態が変化していないと判定する場合(ステップS120;NO)、バックグラウンド的動作を終了する。
【0057】
ステップS130:プリンタ状態管理部140は、プリンタ3の状態が変化した内容を第1アプリケーション133に通知する。例えば、プリンタ状態管理部140は、プリンタ3から受信エラーメッセージなどを第1アプリケーション133に通知する。あるいは、プリンタ状態管理部140は、プリンタ3の状態が変化した内容を第2アプリケーション136上において表示してもよい。その場合、プリンタ状態管理部140は、表示制御部130を介して、例えばプリンタ3から受信したエラーメッセージを表示部11に表示させる。
その後、プリンタ状態管理部140は、バックグラウンド的動作を終了する。
【0058】
上述したように、プリンタ状態管理部140は、プリンタ3から受信したエラーメッセージなどなどの情報を第1アプリケーション133に出力する。プリンタ状態管理部140による当該動作は、受信情報出力ステップの一例である。第1アプリケーション133は、通知されたエラーメッセージなどの情報に基づいて、プリンタ3の状態を監視してよい。
【0059】
なお、バックグラウンド的動作が有効と判定された場合の処理は、上述した処理に限られない。
例えば、プリンタ状態管理部140は、バックグラウンド的動作として上述したポーリング処理と同様の動作を、イベント処理として実行してもよい。あるいは、プリンタ状態管理部140は、バックグラウンド的動作として、ポーリング処理とイベント処理とを組み合わせて実行してもよい。
【0060】
また、バックグラウンド的動作が有効と判定された場合の処理として、例えば以下のような処理が実行されてもよい。例えば、TCP/IP通信あるいはBluetooth(登録商標)など、接続されている状態と切断されている状態とを切り替えて行うような通信において、第2アプリケーション136は、バックグラウンド的動作が有効と判定した場合、プリンタ3との通信を切断せずに維持し、バックグラウンド的動作を行う。一方、第2アプリケーション136は、バックグラウンド的動作が無効と判定した場合、第1アプリケーション133からの印刷データPD1を取得すると、プリンタ3との通信のための接続を行い、プリンタ3に印刷データPD2を送信した後、プリンタ3との通信を切断する。この処理により、バックグラウンド的動作が無効と判定された場合、プリンタ3との通信に伴う消費電力を低減できる。
【0061】
つまり、第2アプリケーション136は、切り替え部142によってバックグラウンド的動作を有効にすると切り替えられている場合と、バックグラウンド的動作を無効にすると切り替えられている場合とにおいて、第1アプリケーション133による動作に対して異なる応答を行う。この第2アプリケーション136の動作は、応答ステップの一例である。
【0062】
なお、第2アプリケーション136は、画面モードが切り替えられてしまうとバックグラウンド的動作が停止してしまうことをユーザに報知してもよい。ユーザによって画面モードが複数画面モードから1画面モードに切り替えられてしまうと、バックグラウンド的動作が停止してしまう場合に、第2アプリケーション136は、第2アプリケーション136が起動した直後に所定の時間の間、アラート(「複数画面モードを維持し、1画面モードにしない」などのテキスト)を表示部11に表示してもよい。あるいは、第2アプリケーション136は、当該アラートを第2アプリケーション136が起動している間、表示部11に表示し続けてもよい。
【0063】
つまり、第2アプリケーション136は、端末装置1の表示部11の画面についてのモードに関する通知を行ってよい。第2アプリケーション136による当該動作は、通知ステップの一例である。
【0064】
また、端末装置1において、画面モードが1画面モードに切り替えられた後、所定の時間の間、第2アプリケーション136が動作できる場合には、当該所定の時間の間、画面モードを複数画面モードに戻すことを促すアラートを表示部11に表示してもよい。
【0065】
以上に説明したように、本実施形態に係る端末装置制御方法は、画面モード情報取得ステップと、切り替えステップと、第1動作実行ステップとを備える。
画面モード情報取得ステップ(本実施形態において、ステップS10)において、第2アプリケーション136は、外部装置(本実施形態において、プリンタ3)と通信をすることによって外部装置(本実施形態において、プリンタ3)に動作を行わせる端末装置1の画面(本実施形態において、表示部11)について1つのアプリケーションが動作するモードである1画面モードと、複数のアプリケーションが並行して動作するモードである複数画面モードとのいずれかを示す画面モード情報を取得する。
切り替えステップ(本実施形態において、ステップS30)において、第2アプリケーション136は、画面モード情報取得ステップ(本実施形態において、ステップS10)によって取得された画面モード情報が複数画面モードであることを示す場合に、外部装置(本実施形態において、プリンタ3)に動作を行わせるための第1アプリケーション133が動作している時期に少なくとも動作する動作であって、外部装置(本実施形態において、プリンタ3)から端末装置1に送信される情報についての動作である第1動作(本実施形態において、バックグラウンド的動作)を有効にするか無効にするかを切り替える。
第1動作実行ステップ(本実施形態において、ステップS90)において、第2アプリケーション136は、切り替えステップ(本実施形態において、ステップS30)によって第1動作(本実施形態において、バックグラウンド的動作)を有効にすると切り替えられている場合に第1動作(本実施形態において、バックグラウンド的動作)を実行する。
【0066】
この構成により、本実施形態に係る端末装置制御方法では、外部装置(本実施形態において、プリンタ3)から端末装置1に送信される情報についての動作である第1動作(本実施形態において、バックグラウンド的動作)を有効にするか無効にするかを端末装置1の画面モードに応じて切り替えことができるため、外部装置(本実施形態において、プリンタ3)に動作を行わせるための第1アプリケーション133が動作している間に、端末装置1の画面モードに応じて第1動作(本実施形態において、バックグラウンド的動作)を同時に実行できる。本実施形態に係る端末装置制御方法では、第1アプリケーション133を作成するユーザに対して、第1動作(本実施形態において、バックグラウンド的動作)というより高機能な動作を提供できる。
【0067】
本実施形態に係る端末装置制御方法では、複数画面モードの場合に、例えば、プリンタ3の接続状態を常に監視する、プリンタ3のエラー状態を常に監視する、あるいはプリンタ3から送信されるデータを常に監視するなどのバックグラウンド的動作が必要となる機能を実現できる。例えば、送信したコマンドに対する応答データの取得や、バーコードスキャナーなどプリンタに接続された機器から取得されるデータの監視を実現できる。
【0068】
本実施形態に係る端末装置制御方法では、外部装置(本実施形態において、プリンタ3)に動作を行わせるための第1アプリケーション133の動作を停止させることなく、外部装置(本実施形態において、プリンタ3)から端末装置1に送信される情報についての動作である第1動作(本実施形態において、バックグラウンド的動作)によって端末装置1は外部装置(本実施形態において、プリンタ3)と双方向通信ができる。
なお、第2アプリケーション136は、切り替えステップによって第1動作(本実施形態において、バックグラウンド的動作)を有効にすると切り替えられるため、1画面モードしかない端末装置(例えば、iPhone(登録商標))においても動作することができる。
【0069】
また、本実施形態に係る端末装置制御方法では、受信情報出力ステップをさらに有してよい。
受信情報出力ステップでは、第2アプリケーション136は、外部装置(本実施形態において、プリンタ3)から受信した情報(本実施形態において、エラーメッセージなど)を第1アプリケーション133に出力する。
この構成により、本実施形態に係る端末装置制御方法では、外部装置から受信した情報(本実施形態において、エラーメッセージなど)を第1アプリケーション133に出力できるため、第1アプリケーション133によって端末装置1の状態を監視することができる。そのため、本実施形態に係る端末装置制御方法は、第1アプリケーション133がPOSアプリケーションである場合に好適に用いられる。
【0070】
また、本実施形態に係る端末装置制御方法では、応答ステップをさらに備えてよい。応答ステップでは、第2アプリケーション136は、切り替えステップ(本実施形態において、ステップS30)によって第1動作(本実施形態において、バックグラウンド的動作)を有効にすると切り替えられている場合と、第1動作(本実施形態において、バックグラウンド的動作)を無効にすると切り替えられている場合とにおいて、第1アプリケーション133による動作に対して異なる応答を行う。
この構成により、本実施形態に係る端末装置制御方法では、第1アプリケーション133による動作に対して第1動作が無効の場合に不要な動作を省略できるため、第1動作が有効であるか無効であるかによらずに第1アプリケーション133による動作に対して同じ応答を行う場合に比べて動作の効率を上げることができる。
【0071】
また、本実施形態に係る端末装置制御方法では、通知ステップをさらに備えてよい。通知ステップでは、第2アプリケーション136は、端末装置1の画面(本実施形態において、表示部11に備えられるディスプレイ)についてのモードに関する通知を行う。
この構成により、本実施形態に係る端末装置制御方法では、端末装置1の画面のモードを複数画面モードに維持するようにユーザに通知できるため、第1動作を行う場合に画面モードが複数画面モードから切り替えられてしまうことを抑制できる。
【0072】
なお、上述した実施形態では、ウェブブラウザ160である第1アプリケーション133においてPOS用プログラムが動作する場合の一例について説明したが、これに限られない。第1アプリケーション133では、キャッシュレジスター用アプリケーション、物流などにおける在庫管理用アプリケーション、ATM用アプリケーション、無人端末用アプリケーション、検針業務用アプリケーションなどが動作してもよい。
【0073】
なお、上述した実施形態では、端末装置1とプリンタ3とを備える印刷システムPSの場合の一例について説明したが、これに限られない。制御システムは、外部装置と、当該外部装置と通信をすることによって当該外部装置に動作を行わせる端末装置とを備えるものであればよい。例えば、上述した実施形態の制御システム(印刷システムPS)において、プリンタ3の代わりに、カスタマーディスプレイ、バーコードスキャナー、あるいはドロワーが備えられてもよい。
【0074】
なお、上述した実施形態における端末装置1の一部、例えば、プリンタ状態管理部140、画面モード情報取得部141、及び切り替え部142をコンピュータで実現するようにしてもよい。その場合、この制御機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現してもよい。なお、ここでいう「コンピュータシステム」とは、端末装置1に内蔵されたコンピュータシステムであって、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD-ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでもよい。また上記プログラムは、前述した機能の一部を実現するためのものであってもよく、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよい。
また、上述した実施形態における端末装置1の一部、または全部を、LSI(Large Scale Integration)等の集積回路として実現してもよい。端末装置1の各機能ブロックは個別にプロセッサ化してもよいし、一部、または全部を集積してプロセッサ化してもよい。また、集積回路化の手法はLSIに限らず専用回路、または汎用プロセッサで実現してもよい。また、半導体技術の進歩によりLSIに代替する集積回路化の技術が出現した場合、当該技術による集積回路を用いてもよい。
【0075】
以上、図面を参照してこの発明の一実施形態について詳しく説明してきたが、具体的な構成は上述のものに限られることはなく、この発明の要旨を逸脱しない範囲内において様々な設計変更等をすることが可能である。
【符号の説明】
【0076】
1…端末装置、2…サーバ、3…プリンタ、11…表示部、133…第1アプリケーション、136…第2アプリケーション、140…プリンタ状態管理部、141…画面モード情報取得部、142…切り替え部