(57)【要約】      （修正有）【課題】携帯端末から取得した処理要求の送信先の機器を決定する情報処理装置を提供すること。【解決手段】携帯端末３０から送信された指示に基づいて処理要求を機器に送信する情報処理装置１０であって、指示を受け付ける受付手段と、携帯端末が電波に関する情報により取得した機器の位置情報を、指示を送信した携帯端末から取得する通信手段と、位置情報に基づいて処理要求を送信する機器を決定する決定手段と、決定手段により決定された機器に処理要求を送信する送信手段と、を有する。【選択図】図１
2018005424.tif 000002
【特許請求の範囲】
【請求項１】
携帯端末から送信された指示に基づいて処理要求を機器に送信する情報処理装置であって、
前記指示を受け付ける受付手段と、
前記携帯端末が電波に関する情報により取得した前記機器の位置情報を、前記指示を送信した前記携帯端末から取得する通信手段と、
前記位置情報に基づいて前記処理要求を送信する前記機器を決定する決定手段と、
前記決定手段により決定された前記機器に前記処理要求を送信する送信手段と、
を有する情報処理装置。
【請求項２】
前記通信手段は、前記携帯端末が電波強度を用いて測定した前記機器との距離情報を前記機器の位置情報として、前記指示を送信した前記携帯端末から取得する請求項１に記載の情報処理装置。
【請求項３】
前記通信手段は、前記携帯端末で起動され要求に対し応答する要求受付応答部に前記位置情報を要求し、前記要求受付応答部から前記位置情報を取得する請求項１又は２に記載の情報処理装置。
【請求項４】
前記要求受付応答部はサーバの機能を備えたサーバ部であり、
前記通信手段は、前記携帯端末で起動された前記サーバ部に前記位置情報を要求し、前記サーバ部から前記位置情報を取得する請求項３に記載の情報処理装置。
【請求項５】
前記情報処理装置では仮想化環境が作成されており、
前記携帯端末は前記仮想化環境で実行されるアプリケーションを操作し、
前記携帯端末に接続するための接続情報を前記仮想化環境から取得する接続情報取得手段を有し、
前記通信手段は、前記接続情報取得手段が取得した前記接続情報を用いて前記携帯端末に接続し、前記要求受付応答部からに前記位置情報を取得する請求項３又は４に記載の情報処理装置。
【請求項６】
携帯端末と、前記携帯端末から送信された指示に基づいて処理要求を機器に送信する情報処理装置とを有する要求処理システムであって、
前記指示を受け付ける受付手段と、
前記携帯端末が電波に関する情報により取得した前記機器の位置情報を、前記指示を送信した前記携帯端末から取得する通信手段と、
前記位置情報に基づいて前記処理要求を送信する前記機器を決定する決定手段と、
前記決定手段により決定された前記機器に前記処理要求を送信する送信手段と、
を有する要求処理システム。
【請求項７】
前記携帯端末は、
前記情報処理装置に接続する接続手段と、
前記接続手段が前記情報処理装置に接続したことを検知する接続検知手段と、
前記接続検知手段が前記情報処理装置への接続を検知した場合、ビーコン装置が送信するビーコン信号の受信を開始する信号受信手段と、
前記ビーコン信号を用いて前記機器の前記位置情報を算出する位置情報算出手段と、
を有する請求項６に記載の要求処理システム。
【請求項８】
前記携帯端末は、前記ビーコン信号の電波強度に応じて表示された出力先の前記機器の候補に対し、出力先の前記機器の指定を受け付け、
前記決定手段は、指定を受け付けた前記機器に前記処理要求を送信すると決定する請求項７に記載の要求処理システム。
【請求項９】
前記接続検知手段は、前記情報処理装置への接続を検知した場合に、前記情報処理装置から前記位置情報の要求を受け付ける要求受付応答部を起動させ、
前記接続手段と前記情報処理装置が未接続になったことを検知した場合、前記要求受付応答部を停止させる請求項７又は８に記載の要求処理システム。
【請求項１０】
前記接続検知手段は、前記情報処理装置への接続を検知した場合に、前記信号受信手段を起動させ、
前記接続手段と前記情報処理装置が未接続になったことを検知した場合、前記信号受信手段を停止させる請求項８に記載の要求処理システム。
【請求項１１】
前記携帯端末では、前記情報処理装置に作成されている仮想化環境に接続する第一のソフトウェアと、前記位置情報を取得する第二のソフトウェアが動作しており、
前記第一のソフトウェアにより実現される前記接続手段が前記仮想化環境に接続したことを、前記第二のソフトウェアにより実現される前記接続検知手段が検知する請求項７〜１０のいずれか１項に記載された要求処理システム。
【請求項１２】
携帯端末と、前記携帯端末から送信された指示に基づいて処理要求を機器に送信する情報処理装置とを有する要求処理システムが行う要求処理方法であって、
受付手段が、前記指示を受け付けるステップと、
通信手段が、前記携帯端末が電波に関する情報により取得した前記機器の位置情報を、前記指示を送信した前記携帯端末から取得するステップと、
決定手段が、前記位置情報に基づいて前記処理要求を送信する前記機器を決定するステップと、
送信手段が、前記決定手段により決定された前記機器に前記処理要求を送信するステップと、を有する要求処理方法。
【請求項１３】
携帯端末から送信された指示に基づいて処理要求を機器に送信する情報処理装置を、
前記指示を受け付ける受付手段と、
前記携帯端末が電波に関する情報により取得した前記機器の位置情報を、前記指示を送信した前記携帯端末から取得する通信手段と、
前記位置情報に基づいて前記処理要求を送信する前記機器を決定する決定手段と、
前記決定手段により決定された前記機器に前記処理要求を送信する送信手段、として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、要求処理システム、要求処理方法及びプログラムに関する。
【背景技術】
【０００２】
仮想化技術によりサーバに仮想化環境を作成しサーバを仮想化することが知られているが、さらにクライアント端末の処理をサーバの仮想化環境を利用して仮想化する技術が知られている。このような技術はデスクトップ仮想化（ＶＤＩ：Virtual Desktop Infrastructure）などと呼ばれ、クライアント端末はシンクライアントなどと呼ばれる。デスクトップ仮想化は、各クライアント端末で個別に動作していたＯＳやアプリケーションソフトウェア（以下、アプリケーションという）をサーバ上の仮想化環境で動作させ、サーバ側で各クライアント別に仮想的にＯＳやアプリケーションを実行する技術である。クライアントで行われたキーボード、マウスの操作信号がサーバの仮想デスクトップに送られ、仮想デスクトップからはその操作を反映した画面情報がクライアント端末に送信される。ユーザは、自分専用のデスクトップにどこからでもアクセスできる。また、ネットワークに接続する機能、画面を表示する機能及び操作を受け付ける機能を有するクライアント端末であれば仮想デスクトップを利用できるため、クライアント端末のコストを低減できる。また、タブレットやスマートフォン等を利用することもできる。
【０００３】
仮想デスクトップによりユーザは場所を選ばすに業務を遂行できるが、移動先で最寄りの画像形成装置に印刷物を出力したい場合、ネットワーク上には画像形成装置などの多くの機器が接続されており近くの機器を選択することが困難な場合が少なくない。このような不都合に対し、印刷要求を行ったユーザの空間的な位置に基づいて出力先の機器を決定する技術が考案されている（例えば、特許文献１参照。）。特許文献１には、出力先とするべき画像形成装置とユーザとの間の相対的関係を示す指定情報をサーバに送信する携帯端末について記載されている。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１に記載された技術では、ユーザが指定情報を入手してサーバに送信しないとサーバが適切な機器を選択できないという問題がある。すなわち、特許文献１では、指定情報を取得するためにユーザは携帯端末でＱＲコード（登録商標）を読み取ったり、ＩＣタグと通信させたりする必要がありユーザの手間になっていた。
【０００５】
本発明は、上記課題に鑑み、携帯端末から取得した処理要求の送信先の機器を決定する情報処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明は、 携帯端末から送信された指示に基づく処理要求を機器に送信する情報処理装置であって、前記指示を受け付ける受付手段と、前記携帯端末が電波に関する情報により取得した前記機器の位置情報を、前記指示を送信した前記携帯端末から取得する通信手段と、前記位置情報に基づいて前記処理要求を送信する前記機器を決定する決定手段と、  前記決定手段により決定された前記機器に前記処理要求を送信する送信手段と、を有する。
【発明の効果】
【０００７】
携帯端末から取得した処理要求の送信先の機器を決定する情報処理装置を提供することができる。
【図面の簡単な説明】
【０００８】
【図１】要求処理システムの概略的な動作を説明する図の一例である。
【図２】要求処理システムの概略的な構成図の一例である。
【図３】仮想化環境を説明する図の一例である。
【図４】情報処理装置の概略的なハードウェア構成を示したブロック図の一例である。
【図５】携帯端末の概略的なハードウェア構成を示したブロック図の一例である。
【図６】画像形成装置の概略的なハードウェア構成を示したブロック図の一例である。
【図７】ビーコン装置のハードウェア構成図の一例である。
【図８】情報処理装置の機能ブロック図の一例である。
【図９】携帯端末で動作する位置検知アプリケーションと発送先制御部の機能ブロック図の一例である。
【図１０】要求処理システムの全体的な動作を説明するシーケンス図の一例である。
【図１１】位置検知アプリケーションの動作手順を示すフローチャート図の一例である。
【図１２】位置検知部がビーコン装置と通信して距離情報を生成する手順を示すフローチャート図の一例である。
【図１３】通信部の動作手順を示すフローチャート図の一例である。
【図１４】発送先制御部の動作手順を示すフローチャート図の一例である。
【図１５】携帯端末に表示される画面例を説明する図である。
【図１６】印刷管理部が配置された携帯端末の構成図の一例である。
【図１７】携帯端末に印刷管理部が配置される場合の発送先制御部の動作手順を示すフローチャート図の一例である。
【図１８】通信部の起動後に位置検知部が起動される場合の、通信部の動作を示すフローチャート図の一例である。
【発明を実施するための形態】
【０００９】
以下、本発明を実施するための形態の一例として要求処理システム１００及び要求処理システム１００が行う要求処理方法を説明する。
【００１０】
図１は、本実施形態の要求処理システム１００の概略的な動作を説明する図の一例である。要求処理システム１００は、情報処理装置１０及び複数の画像形成装置５０を有する。また、ユーザは携帯端末３０を携帯しており、移動先で情報処理装置１０が提供する後述の仮想デスクトップにログインすることができる。
【００１１】
（１）携帯端末３０は周囲の画像形成装置５０が有するビーコン装置７０と通信することで、画像形成装置５０及びビーコン装置７０のデバイスＩＤを取得する。ユーザはデバイスＩＤの取得のために携帯端末３０を意識的に操作しなくてよい（操作することで取得することも可能である）。デバイスＩＤの取得により携帯端末３０と画像形成装置５０との距離情報を算出する。
【００１２】
（２）印刷する場合、ユーザが携帯端末３０を操作することで操作指示が情報処理装置１０に送信され、情報処理装置１０は操作指示に基づいて仮想デスクトップ上で印刷要求を生成する。
【００１３】
（３）情報処理装置１０は、携帯端末３０と通信することで得られている接続情報を自機である情報処理装置１０から取得する。接続情報は携帯端末３０に接続するための情報であり、例えばＩＰアドレスやホスト名などである。
【００１４】
（４）携帯端末３０はこの接続情報を用いて接続されるＨＴＴＰサーバを起動させ、情報処理装置１０からの通信を待ち受ける。
【００１５】
（５）情報処理装置１０は接続情報を用いて携帯端末３０のＨＴＴＰサーバと通信し、各画像形成装置ごとの距離情報を携帯端末３０から取得する。
【００１６】
（６）情報処理装置１０は距離の近い順に出力先の画像形成装置５０を携帯端末３０に提案する。これにより、ユーザは例えば最も近い画像形成装置５０を選択して印刷を実行できる。
【００１７】
このように本実施形態の要求処理システム１００は、携帯端末３０が周囲のビーコン装置７０と通信することで、画像形成装置５０の相対的な位置を検出できるため、ユーザが画像形成装置５０のＩＣタグやＱＲコードなどを読み取る必要がない。また、携帯端末３０がＨＴＴＰサーバを起動させるので、情報処理装置１０は印刷要求を受け付けたタイミングで画像形成装置５０ごとに距離情報を取得できる。このため、携帯端末３０が取得した画像形成装置５０ごとの距離情報を常時受け付けるためのデータベースサーバのような装置が不要になる。
【００１８】
＜用語について＞
機器とは、携帯端末からの処理要求に対し処理要求に応じた処理を行う装置である。例えば、画像形成装置、プロジェクタ、電子黒板、デジタルサイネージ、テレビ会議端末、デジタルカメラなどであるが、このような特定の装置の他、汎用的な情報処理装置でもよい。
【００１９】
処理要求とは、機器が行う処理の要求をいう。あるいは処理された情報の出力を要求する出力要求と称してよい。処理要求が処理の対処となるデータを含んでいてもよい。具体的には、印刷データの印刷要求、画像の表示要求、撮像要求などがあるが、処理要求は機器によって異なっていてよい。
【００２０】
電波に関する情報とは、電波を受信することで得られる情報をいう。例えば、電波強度や電波を復調して得られる情報である。本実施形態では電波強度が距離に応じて減衰することを利用して距離情報を取得するが、電波を復調して位置情報そのものを取得してもよい。
【００２１】
位置情報とは、機器の位置を情報処理装置が把握するための情報である。位置情報は緯度・経度や部屋番号などの絶対的な情報でもよいし、ユーザに対する相対的な位置でもよい。本実施形態では距離情報という用語で説明する。
【００２２】
＜システム構成例＞
図２は、要求処理システム１００の概略的な構成図の一例である。要求処理システム１００は、ネットワークＮに接続された、携帯端末３０、情報処理装置１０、及び、画像形成装置５０を有している。携帯端末３０は、タブレット装置、スマートフォン、ノートＰＣ、ＰＤＡ（Personal Digital Assistant）、ゲーム機、携帯電話などの可搬性がよい情報処理装置である。ただし、携帯端末３０は据置型の情報処理端末でもよく、携帯端末３０は、後述するビーコン装置７０が送信するビーコンを受信する機能を有していればよい。
【００２３】
携帯端末３０は、無線ＬＡＮのアクセスポイントなど建物に備えられているワイヤレス・ネットワーク・インフラを使用してネットワークＮにアクセスすることができる。また、３Ｇ、４ＧやＬＴＥ（Long Term Evolution）といった通信規格で、ネットワークＮに接続することもできる。
【００２４】
また、画像形成装置５０は、いわゆるプリンタであり、ＭＦＰ（Multi-Function Peripherals）、複写機、コピー機等、どのように呼ばれていてもよい。また、ファクス装置やスキャナ装置と呼ばれていてもプリンタ機能を有していればよい。本実施形態を適用して、画像形成装置５０のファクス機能やスキャナ機能をユーザが利用してもよい。さらに、電子写真方式とインクジェット方式などの画像形成装置５０の印刷方式は問わない。
【００２５】
各画像形成装置５０はビーコン装置７０を有している。画像形成装置５０はビーコン装置７０を内蔵していてもよいし、筐体に載せられていたり固定されていたり、画像形成装置５０の近くに設置されていてもよい。
【００２６】
情報処理装置１０はいわゆるサーバの機能を有する装置である。サーバとは、ネットワークＮを介して接続されたクライアント装置からの要求に応じて、何らかのデータ又は何らかの処理結果を提供する装置である。図示する情報処理装置１０は１台の装置として図示されているが、情報処理装置１０はクラウドコンピューティングに対応していることが好ましい。このため、情報処理装置１０のハードウェア構成は、１つの筐体に収納されていたりひとまとまりの装置として備えられていたりする必要はない。例えば、負荷に応じてハード的な情報処理装置１０のリソースが動的に接続・切断されることで構成される。情報処理装置１０には仮想化環境が作成されており、携帯端末３０は仮想化環境を利用して提供される仮想デスクトップに接続して処理を行う。
【００２７】
図３は、仮想化環境を説明する図の一例である。ハードウェア５０３上に仮想化レイヤ５０４が作成され、仮想化レイヤ５０４上で複数のＯＳ５０５が動作する。仮想化レイヤ５０４はハイパーバイザと呼ばれ、ハイパーバイザによりハードウェア上に異なるＯＳ５０５を仮想化して搭載することができる。ハイパーバイザとは、情報処理装置に仮想的な情報処理装置（仮想機械（バーチャルマシン））を実現するための制御プログラムである。したがって、仮想化レイヤ５０４により情報処理装置１０が仮想化され、情報処理装置１０は複数の異なるＯＳ５０５を並列に実行できるようになる。なお、ハイパーバイザ型の仮想化ソフトの一例として、「ESXi」「Xen Server」「Hyper-V」などがあり、本実施形態ではこれらを利用できるが仮想化ソフトは特に制限されない。
【００２８】
各ＯＳ５０５はどのようなＯＳでもよく、また、互いに異なっていてよい。例えば、Ｗｉｎｄｏｗｓ（登録商標）系のＯＳ、ＬＩＮＵＸ（登録商標）、ＵＮＩＸ（登録商標）などがある。ＯＳ５０５上ではアプリケーション５０６が動作するが、これらの汎用的なＯＳ５０５では一般的なワープロソフトやプレゼンテーションソフトなどのアプリケーション５０６をユーザが利用できる。
【００２９】
なお、図３の情報処理装置１０の構成はいわゆるハイパーバイザ型と呼ばれるものであるが、本実施形態の仮想化環境はホストＯＳ型と呼ばれる仮想化技術で実現されてもよい。ホストＯＳ型では、一般的なＯＳ上で仮想化レイヤ５０４が作成され、その上で各ＯＳ５０５が動作する。この場合の仮想化レイヤ５０４は情報処理装置１０がアプリケーションを実行する場合と同様に実現できるためハイパーバイザ型に比べて容易に実現できる。
【００３０】
また、情報処理装置１０は、携帯端末３０に対して仮想的なデスクトップ環境を提供する。従来のデスクトップ環境は、ユーザが操作する情報処理装置（この場合は携帯端末３０）が提供するが、仮想化レイヤ５０４上のＯＳ５０５とアプリケーション５０６を仮想的なデスクトップとして情報処理装置１０が各携帯端末３０に提供する。このような仮想化環境を仮想デスクトップ６０と称する。仮想デスクトップ６０を提供するソフトウェアとして「VMware Horizon View」と「Citrix XenDesktop」、「Microsoft（登録商標）VDI」などがあるがこれらには制限されない。これらは、仮想デスクトップ管理サーバ５０２、セッション管理サーバ５０１及び携帯端末３０などで実行され（携帯端末３０で実行されるソフトウェアが後述する仮想化環境接続クライアントである）、仮想化レイヤ５０４とも協働することで、各携帯端末３０に仮想デスクトップ６０を提供する。
【００３１】
例えば、仮想デスクトップ管理サーバ５０２は、各ＯＳ５０５を携帯端末３０に割り当て両者の対応を管理する。セッション管理サーバ５０１は、携帯端末３０のユーザからの接続リクエストを受け付け、各ＯＳ５０５に割り振り、セッション管理を行う。このような仕組みで、各ＯＳ５０５の画面イメージ（仮想デスクトップ）が対応付けられた携帯端末３０に送信される。仮想デスクトップ管理サーバ５０２やセッション管理サーバ５０１の機能を、情報処理装置１０が有していてもよい。
【００３２】
なお、このように複数の携帯端末３０で利用可能な情報処理装置（サーバ）をターミナルサーバと呼ぶ場合がある。
【００３３】
なお、それぞれＯＳを実装した複数のサーバ装置がネットワークＮに接続されている場合、それぞれのサーバ装置がその担当するサービスを携帯端末３０に提供するように実装してもよい。すなわち、情報処理装置１０は仮想化されていなくてもよい。さらに、ハードウェアの冗長性を保障する目的で、各サーバ装置にバックアップサーバを設置しておくことができる。
【００３４】
携帯端末３０は、上記のネットワークＮとの通信機能、入出力機能、及び、ビーコン装置７０との通信機能を有する他、仮想デスクトップ６０にアクセスするためのアプリケーション（仮想化環境接続クライアント）を実行する。また、ビーコン装置７０と通信した際に距離情報を算出するためのアプリケーション（位置検知アプリケーション）を実行する。携帯端末３０のＯＳは、これらのアプリケーションが動作すればどのようなＯＳでもよい。例えば、Ｗｉｎｄｏｗｓ（登録商標）、Ａｎｄｒｏｉｄ（登録商標）ＯＳ、ｉＯＳ（登録商標）などがある。
【００３５】
＜ハードウェアについて＞
<<情報処理装置１０のハードウェア構成>>
図４は、本発明の情報処理装置１０の概略的なハードウェア構成を示したブロック図である。本発明の情報処理装置１０は、概ねパーソナル・コンピュータ、ワークステーション又はアプライアンス・サーバとして実装することができる。情報処理装置１０は、ＣＰＵ２０１と、ＣＰＵ２０１が使用するデータの高速アクセスを可能とするメモリ２０２とを備える。ＣＰＵ２０１及びメモリ２０２は、システム・バス２０３を介して、情報処理装置１０の他のデバイス又はドライバ、例えば、グラフィックス・ドライバ２０４及びネットワーク・デバイス（ＮＩＣ）２０５へと接続されている。
【００３６】
グラフィックス・ドライバ２０４は、バスを介してＬＣＤ（ディスプレイ装置）２０６に接続されて、ＣＰＵ２０１による処理結果をモニタする。また、ネットワーク・ドライバ２０５は、トランスポート層レベル及び物理層レベルで情報処理装置１０をネットワークＮへと接続して、携帯端末３０とのセッションを確立させている。
【００３７】
システム・バス２０３には、さらにＩ／Ｏバス・ブリッジ２０７が接続されている。Ｉ／Ｏバス・ブリッジ２０７の下流側には、ＰＣＩなどのＩ／Ｏバス２０８を介して、ＩＤＥ、ＡＴＡ、ＡＴＡＰＩ、シリアルＡＴＡ、ＳＣＳＩ、ＵＳＢなどにより、ハードディスク、ＳＳＤ２０９などの記憶装置が接続されている。ＳＳＤ２０９は情報処理装置１０の全体を制御するプログラム２０９ａを記憶している。
【００３８】
また、Ｉ／Ｏバス２０８には、ＵＳＢなどのバスを介して、キーボード及びマウス（ポインティング・デバイスと呼ばれる）などの入力装置２１０が接続され、システム管理者などのオペレータによる入力及び指令を受け付けている。
【００３９】
<<携帯端末３０のハードウェア構成>>
図５は、携帯端末３０のハードウェア構成図の一例である。図示する携帯端末３０は、ＣＰＵ３０１、フラッシュＲＯＭ３０２、ＲＡＭ３０３、無線通信モジュール３０４、アンテナ３０５、ＬＣＤ３０６、タッチパネル３０７、外部I/F３０８、マイク３０９、スピーカー３１０、及び、カメラ３１１を備えている。これらはバス３１２に接続され、データのやり取りが可能である。また、携帯端末３０はバッテリ３１３を備えており、上記の各デバイスへ電力を供給している。
【００４０】
ＣＰＵ３０１は、フラッシュＲＯＭ３０２に記憶されたプログラムにしたがって、各種データの演算処理などにより携帯端末３０全体を制御するものである。フラッシュＲＯＭ３０２は携帯端末３０全体を制御するプログラム３０２ａを記憶するとともに、各種データを記憶するストレージとしても機能する。プログラム３０２ａは上記の仮想化環境接続クライアントと位置検知アプリケーションを含む。
【００４１】
ＲＡＭ３０３は、ＣＰＵ３０１のワークメモリとして使用される。フラッシュＲＯＭ３０２に記憶されたプログラムはＲＡＭ３０３に読み込まれて、ＣＰＵ３０１により実行される。無線通信モジュール３０４は携帯電話回線を利用した音声通信やデータ通信を制御する。無線通信モジュール３０４はまた、無線ＬＡＮやＢＬＥ（Bluetooth（登録商標） Low Energy）の通信制御も行う（以下、Bluetooth（登録商標）の旨を省略する）。
【００４２】
ＬＣＤ３０６は、携帯端末３０を操作するためのアイコンや、各種のデータを表示する。タッチパネル３０７はＬＣＤ３０６に重ね合わせて密着しており、指が接触した位置を検出する。
【００４３】
外部I/F３０８は、例えばＵＳＢインタフェースであり、外部機器を接続するためのインタフェースである。マイク３０９は入力された音声信号をA(Analog)/D（Digital）変換する。スピーカー３１０は音データをD/A変換して可聴信号を出力する。カメラ３１１は撮像素子から出力された画像信号をA/D変換する。
【００４４】
<<画像形成装置５０のハードウェア構成>>
図６は、画像形成装置５０の概略的なハードウェア構成を示したブロック図の一例である。画像形成装置５０は、コントローラ４１０とエンジン部（Ｅｎｇｉｎｅ）４１５とをＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ Ｃｏｍｐｏｎｅｎｔ Ｉｎｔｅｒｆａｃｅ）バス４１６で接続した構成となる。
【００４５】
コントローラ４１０は、画像形成装置５０全体の制御と描画、通信、操作表示部４１１からの入力を制御するコントローラである。エンジン部４１５は、ＰＣＩバス４１６に接続可能なプリンタエンジンなどであり、たとえば白黒プロッタ、１ドラムカラープロッタ、４ドラムカラープロッタ、スキャナ又はファックスユニットなどである。
【００４６】
なお、このエンジン部４１５には、プロッタなどのいわゆるエンジン部分に加えて、誤差拡散やガンマ変換などの画像処理部分が含まれる。
【００４７】
コントローラ４１０は、ＣＰＵ４０１と、ノースブリッジ（ＮＢ）４０３と、システムメモリ（ＭＥＭ−Ｐ）４０２と、サウスブリッジ（ＳＢ）４０４と、ローカルメモリ（ＭＥＭ−Ｃ）４０７と、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ Ｓｐｅｃｉｆｉｃ Ｉｎｔｅｇｒａｔｅｄ Ｃｉｒｃｕｉｔ）４０６と、ハードディスクドライブ（ＨＤＤ）４０８とを有し、ノースブリッジ（ＮＢ）４０３とＡＳＩＣ４０６との間をＡＧＰ（Ａｃｃｅｌｅｒａｔｅｄ Ｇｒａｐｈｉｃｓ Ｐｏｒｔ）バス４０５で接続した構成となる。
【００４８】
また、ＭＥＭ−Ｐ４０２は、ＲＯＭ（Ｒｅａｄ Ｏｎｌｙ Ｍｅｍｏｒｙ）４０２ａと、ＲＡＭ（Ｒａｎｄｏｍ Ａｃｃｅｓｓ Ｍｅｍｏｒｙ)４０２ｂと、をさらに有する。
【００４９】
ＣＰＵ４０１は、画像形成装置５０の全体制御をおこなうものであり、ＮＢ４０３、ＭＥＭ−Ｐ４０２及びＳＢ４０４からなるチップセットを有し、このチップセットを介して他の機器と接続される。
【００５０】
ＮＢ４０３は、ＣＰＵ４０１とＭＥＭ−Ｐ４０２、ＳＢ４０４、ＡＧＰバス４０５とを接続するためのブリッジであり、ＭＥＭ−Ｐ４０２に対する読み書きなどを制御するメモリコントローラと、ＰＣＩマスタ及びＡＧＰターゲットとを有する。
【００５１】
ＭＥＭ−Ｐ４０２は、プログラムやデータの格納用メモリ、プログラムやデータの展開用メモリ、プリンタの描画用メモリなどとして用いるシステムメモリであり、ＲＯＭ４０２ａとＲＡＭ４０２ｂとからなる。
【００５２】
ＲＯＭ４０２ａは、プログラムやデータの格納用メモリとして用いる読み出し専用のメモリであり、ＲＡＭ４０２ｂは、プログラムやデータの展開用メモリ、プリンタの描画用メモリなどとして用いる書き込み及び読み出し可能なメモリである。
【００５３】
ＳＢ４０４は、ＮＢ４０３とＰＣＩデバイス、周辺デバイスとを接続するためのブリッジである。このＳＢ４０４は、ＰＣＩバスを介してＮＢ４０３と接続されており、このＰＣＩバスには、ネットワークインターフェース（Ｉ／Ｆ）部なども接続される。ＡＳＩＣ４０６は、画像処理用のハードウェア要素を有する画像処理用途向けのＩＣ（Ｉｎｔｅｇｒａｔｅｄ Ｃｉｒｃｕｉｔ）であり、ＡＧＰバス４０５、ＰＣＩバス４１６、ＨＤＤ４０８及びＭＥＭ−Ｃ４０７をそれぞれ接続するブリッジの役割を有する。
【００５４】
このＡＳＩＣ４０６は、ＰＣＩターゲット及びＡＧＰマスタと、ＡＳＩＣ４０６の中核をなすアービタ（ＡＲＢ）と、ＭＥＭ−Ｃ４０７を制御するメモリコントローラと、ハードウェアロジックなどにより画像データの回転などをおこなう複数のＤＭＡＣ（Ｄｉｒｅｃｔ Ｍｅｍｏｒｙ Ａｃｃｅｓｓ Ｃｏｎｔｒｏｌｌｅｒ）と、エンジン部４１５との間でＰＣＩバスを介したデータ転送をおこなうＰＣＩユニットとからなる。
【００５５】
このＡＳＩＣ４０６には、ＰＣＩバスを介してＦＣＵ（Ｆａｃｓｉｍｉｌｅ Ｃｏｎｔｒｏｌ Ｕｎｉｔ）４１２、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ Ｓｅｒｉａｌ Ｂｕｓ）４１３、ＩＥＥＥ１３９４（ｔｈｅ Ｉｎｓｔｉｔｕｔｅ ｏｆ Ｅｌｅｃｔｒｉｃａｌ ａｎｄ Ｅｌｅｃｔｒｏｎｉｃｓ Ｅｎｇｉｎｅｅｒｓ １３９４）インタフェース４１４が接続される。
【００５６】
操作表示部４１１はＡＳＩＣ４０６に直接接続されている。ＭＥＭ−Ｃ４０７は、コピー用画像バッファ、符号バッファとして用いるローカルメモリである。ＨＤＤ４０８は、画像データの蓄積、プログラムの蓄積、フォントデータの蓄積、フォームの蓄積を行うためのストレージである。
【００５７】
また、ＨＤＤ４０８は、画像形成装置５０で実行されるアプリケーションのライセンスファイルを保存する。ＡＧＰバス４０５は、グラフィック処理を高速化するために提案されたグラフィックスアクセラレーターカード用のバスインターフェースであり、ＭＥＭ−Ｐ４０２に高スループットで直接アクセスすることにより、グラフィックスアクセラレーターカードを高速にするものである。
【００５８】
<<ビーコン装置７０のハードウェア構成>>
図７は、ビーコン装置７０のハードウェア構成図の一例である。ビーコン装置７０は、電源部７１と、電源部７１から動作するための電力を供給されるビーコン発信部７６とを有し、ビーコン発信部７６は装置制御部７２、無線部７３、メモリ７４、及びアンテナ７５を有する。電源部７１は交流の商用電源を直流の所定の電圧に変換する装置であるが、この他、バッテリで動作してもよい。
【００５９】
メモリ７４は、例えばＲＯＭ、ＲＡＭなどの記憶装置であり、装置制御部７２が実行するプログラム及びパラメータ（例えば、ビーコンの送信間隔）など様々なデータを記憶している。また、このメモリ７４には、デバイスＩＤが記憶されている。メモリ７４は不揮発性でも揮発性でもよいが、揮発性の場合に適切なバックアップが施されている。
【００６０】
無線部７３は、例えばＢＬＥ（Bluetooth LE）規格によって規定されるアドバタイズ信号をビーコン信号としてアンテナ７５から送信する。なお、ビーコン信号は、携帯端末３０が距離情報を取得できる電波であればよく、ＢＬＥ規格で送信しなくてもよい。例えば、従来からのBluetooth（レガシーBluetooth）、無線ＬＡＮ、Ｚｉｇｂｅｅ（登録商標）などでもよい。
【００６１】
装置制御部７２は、主にＣＰＵを有し、メモリ７４のプログラムを実行してビーコン装置７０の各部の動作を制御している。例えば、パラメータとして記憶されている送信間隔の経過を測定し、送信間隔ごとに無線部７３を呼び出してビーコン信号を送信する。ビーコン信号に、デバイスＩＤ及び送信時の電波強度等を設定する。なお、デバイスＩＤについては表１にて説明する。
【００６２】
＜情報処理装置１０の機能について＞
図８は、情報処理装置１０の機能ブロック図の一例である。図８に示す情報処理装置１０の各機能は、ＳＳＤ２０９からメモリ２０２に展開されたプログラム２０９ａをＣＰＵ２０１が実行することにより実現されている。なお、このプログラム２０９ａは、プログラム配信用のサーバから配信されてもよいし、ＵＳＢメモリや光記憶媒体などの可搬性の記憶媒体に記憶された状態で配布されてもよい。
【００６３】
情報処理装置１０は、主に、印刷管理部２０とアプリケーション実行部１１とを有する。印刷管理部２０は、図８に示す破線よりも右側をいう。図８は、印刷管理部２０とアプリケーション実行部１１が一体の例であるが、両者の別々の装置で実行されてもよい。例えば、アプリケーション実行部１１をアプリケーションサーバとして実装し、印刷管理部２０を本実施形態の情報処理装置１０として分離して実装することもできる。
【００６４】
印刷管理部２０とアプリケーション実行部１１は上記の仮想化レイヤ上のＯＳ５０５上で動作している。
【００６５】
アプリケーション実行部１１は、上記のアプリケーション５０６を実行する。アプリケーション５０６はネットワークＮを介して携帯端末３０により操作される。すなわち、アプリケーション５０６は情報処理装置１０で動作しながら、ユーザは携帯端末３０で操作できる。アプリケーション５０６は、通常の印刷動作と同様に印刷を行う。携帯端末３０から印刷要求を受け付けると、ＧＤＩ（Graphics Device Interface）などのＡＰＩコールを経てプリンタドライバ１３を呼び出す。ＡＰＩとはあるプログラムが別のプログラム（この場合はＯＳ）の機能を呼び出すための規約をいう。
【００６６】
ここで、アプリケーション５０６が呼び出すプリンタドライバ１３は常に同じものである。通常、プリンタドライバ１３は画像形成装置５０ごとに用意されているが、本実施形態では、出力先の画像形成装置５０は印刷管理部２０により選択され、ユーザは画像形成装置５０を選択しなくてよい。このため、ユーザは常に同じプリンタドライバ１３に印刷要求すればよい。このように仮想的なプリンタドライバ１３を仮想プリンタドライバと呼ぶ場合がある。ただし、仮想プリンタドライバの「仮想」は仮想化環境とは関係ない。
【００６７】
プリンタドライバ１３は、プリント管理部１４、データ抽出部１５、及び、描画部１６を有する。プリント管理部１４は、アプリケーション５０６から印刷ジョブを取得して（受け付けて）、ジョブ格納部１７に記憶させる。この時、印刷ジョブに重複しないジョブＩＤを付与する。印刷ジョブは文書などの印刷データとジョブ情報を含む。
【００６８】
印刷データは、文書などのテキストなどの他、ビットマップ、ＪＰＥＧ、ＧＩＦなどの低次イメージデータを含むことができるし、また描画コードを含むＥＭＦ、ＰｏｓｔＳｃｒｉｐｔ（登録商標）、ＰＤＦなどの高次イメージデータを含むこともできる。
【００６９】
ジョブ情報は、用紙サイズ、部数、印刷範囲、片面・両面、集約、縮小・拡大、マージン設定、カラー・モノクロなど、印刷の設定に関する情報である。
【００７０】
プリント管理部１４は印刷要求に対し作業空間２３ａ〜２３ｃを確保する。作業空間２３ａ〜２３ｃは、印刷管理部２０が管理するメモリ２０２などの記憶空間から適切な容量を割り当てで形成され、本実施形態では、例えばスプーラとして参照することができる。作業空間２３ａ〜２３ｃを確保すると、プリント管理部１４は、ジョブ格納部１７に格納した印刷ジョブを描画部１６に渡す。
【００７１】
作業空間は作業空間２３ａ〜２３ｃのように３つには限られず、印刷要求に応じて用意される。作業空間が複数、並列に確保されるので、情報処理装置１０は複数の印刷ジョブを時間的に並列に処理できる。以下、本実施形態では、作業空間２３ａが処理を担当するものとして説明する。
【００７２】
また、プリント管理部１４は、印刷要求に対しデータ抽出部１５を呼び出し、データ抽出部１５が印刷ジョブからジョブ情報をジョブ情報データ１９として抽出する。ジョブ情報データ１９は作業空間２３ａに記憶される。
【００７３】
描画部１６は、印刷ジョブから印刷データを抽出して作業空間２３ａに移動する。また、抽出する際、ＥＭＦなどの中間ファイル２１に変換してもよい。イメージ処理部３３６は、作業空間２３ａ内でジョブ情報データ１９を参照しながら印刷データを、ＥＭＦ、ＰＯＳＴＳＣＲＩＰＴなどの中間ファイル２１に変換する。このため、イメージ処理部３３６は、描画プロセッサを含む描画モジュールなどの画像処理モジュールとして実装することができる。
【００７４】
中間ファイル２１とは機種に依存しないフォーマットで作成された描画データである。出力先の画像形成装置５０が決まっていない段階で中間ファイル２１まで作成することで、出力先の画像形成装置５０が決まった後の印刷処理に要する時間を短縮できる。
【００７５】
また、プリンタドライバ１３、印刷要求を取得すると、印刷データを送付する先を決定する発送処理部２８のプライベート・インスタンス２８ａ〜２８ｃを生成する。プライベート・インスタンス２８ａ〜２８ｃは、それぞれのプライベート・インスタンスごとに取得した印刷要求に対し印刷ジョブの発送先を決定し、中間ファイル２１を機種固有ドライバに送出する。
【００７６】
作業空間２３ａは発送処理部２８により参照される。発送処理部２８は、データ発送部２５と発送先制御部２６を有している。発送先制御部２６は、携帯端末３０から距離情報等を取得してさらに後述する対応付けテーブル１８を参照して、出力先とするべき画像形成装置５０を選択する。発送先制御部２６については図９にて詳述する。データ発送部２５は、選択された画像形成装置５０に対応する機種固有ドライバ２７ａ〜２７ｃに送付する中間ファイル２１とジョブ情報データ１９を送信する。
【００７７】
機種固有ドライバ２７ａ〜２７ｃは、発送先として決定された画像形成装置５０の機種固有データを生成する。機種固有データとは、該画像形成装置５０が解釈する形式の描画データ（Ｒａｗデータ）と印刷設定に関する情報をいう。すなわち、機種固有ドライバ２７ａ〜２７ｃは、中間ファイル２１とジョブ情報データ１９を機種固有データに変換する。
【００７８】
なお、発送先として決定されている機種固有ドライバ２７ａがページ割り当てや面付けの機能を持っている場合も想定できる。この場合、プリンタドライバ１３のイメージ処理部３３６は中間ファイル２１を、機種固有ドライバ２７ａの受信可能なフォーマットへとイメージ変換する機能を有していても良い。
【００７９】
例えば、特定の実施形態で、Ｗｉｎｄｏｗｓ（登録商標）のプリンタドライバ１３は、ほとんどのプリンタドライバ１３がＥＭＦを受信できる。このため、中間ファイル２１がＥＭＦの場合、データの変換は必要なく、ジョブ情報データ１９を機種固有ドライバ２７ａの印刷設定構造体ＤＥＶＭＯＤＥに設定すれば、機種固有ドライバ２７ａは、ＥＭＦをそのまま使用して目的とするＲＡＷデータを作成可能となる。機種固有ドライバ２７ａにページ割り当てや面付けの機能のない場合は、中間ファイル２１であるＥＭＦを、ページごとのＥＭＦに分割し、ページ順の入れ替えや描画位置の指定をすることで目的のＲＡＷデータを得ることができる。
【００８０】
なお、プライベート・インスタンス２８ａ〜２８ｃは、図３に示す機種固有ドライバ２７ａだけを管理するのではなく、発送先制御部２６が決定した発送先とするべき機種固有ドライバ２７ｂ、２７ｃを、印刷要求に対応させてそれぞれ呼出す。本実施形態では、印刷管理部２０のジョブ処理機能を、プリンタドライバ１３と、発送処理部２８とに分離し、発送処理部２８のプライベート・インスタンスをプライベート・インスタンス２８ａ〜２８ｃとして生成することにより、印刷ジョブ単位で発送先の画像形成装置５０に対する発送処理を実行させることで、１台の画像形成装置５０のエラーが、印刷管理部２０全体の処理停止を生じさせることがないようにしている。
【００８１】
このため、発送処理部２８は、印刷ジョブごとに独立したスプール空間を取得でき、特定の画像形成装置５０がエラーとなって、プリントキューから、エラージョブが削除できなくなった場合でもエラーによる障害を、プリンタドライバ１３が処理する全ジョブに影響を与えることなく、当該エラーを生じた画像形成装置のジョブのみに限定でき、クラウドプリンティングに適切な処理を実行できる。
【００８２】
<<対応付けテーブル>>
続いて、表１を用いて対応付けテーブル１８を説明する。
【００８３】
【表１】
2018005424.tif 000003
表１は対応付けテーブル１８を模式的に示す。対応付けテーブル１８は、情報処理装置１０が出力先の画像形成装置５０を決定するために利用される。また、対応付けテーブル１８は、画像形成装置５０の名称、デバイスＩＤ、及び、表示名を有する。対応付けテーブル１８は、デバイスＩＤを表示名に変換するために使用される。これにより携帯端末３０のＬＣＤにはデバイスＩＤでなく表示名が表示される。
【００８４】
デバイスＩＤは、ビーコン装置７０又は画像形成装置５０に対して一意性を有する値である。ビーコン装置７０には、iBeacon（登録商標）、EddyStoneなどいくつか規格が存在するが、Bluetoothデバイスとして一意の値であるアドレス値や、受信データフレーム内に一意に設定できるMajor/Minor、NamespaceIDなどを、ビーコン装置７０に一意のデバイスＩＤとして利用することができる。本実施形態では、このデバイスＩＤを空間的な位置及び出力先の画像形成装置５０と紐付けて管理する。
【００８５】
デバイスＩＤはビーコン装置７０に対し一意性を有するが、ビーコン装置７０は画像形成装置５０と対応している。このため、デバイスＩＤは、画像形成装置５０を特定するための機能を有する情報又は画像形成装置５０を一意に識別するための識別情報となる。なお、画像形成装置５０とビーコン装置７０は１対１に対応するものとして説明するが、１つのビーコン装置７０の近くに複数の画像形成装置５０が設置されていてもよい。この場合、画像形成装置５０とビーコン装置７０はＮ（≧２）対１に対応する。
【００８６】
<<位置検知アプリケーションの機能について>>
図９は、携帯端末３０で動作する位置検知アプリケーション４１と発送先制御部２６の機能ブロック図の一例である。位置検知アプリケーション４１は、実行制御部３１、位置検知部３２、距離判定部３３及び通信部３４を有する。これら位置検知アプリケーション４１の機能部は、ＣＰＵ３０１が位置検知アプリケーション４１を実行し図５に示したハードウェアと協働することで実現される機能又は手段である。なお、位置検知アプリケーション４１は、プログラム配信用のサーバから配信されてもよいし、ＵＳＢメモリや光記憶媒体などの可搬性の記憶媒体に記憶された状態で配布されてもよい。
【００８７】
まず、位置検知部３２は、ビーコン装置７０から送信されるビーコン信号を受信し、受信データを解析して、距離情報を生成するために必要なデータを取得する。ビーコン信号から抽出するデータを表２に示す。
【００８８】
距離判定部３３は、ビーコン装置７０ａ〜７０ｃから取得されたＲＳＳＩ（Received Signal Strength Indicator）とＴＸ Ｐｏｗｅｒから、画像形成装置５０ａ〜５０ｃまでの距離を算出し（又は、作成する、推定する）、ビーコンＩＤと対応づけて位置情報検知結果３５に保存する。ＲＳＳＩは受信時の電波強度であり、ＴＸ Ｐｏｗｅｒは送信時の電波強度である。ＲＳＳＩが距離に応じてＴＸ Ｐｏｗｅｒよりも減衰することを利用して距離を測定できる。電波強度から距離を算出する方法として、式（１）のフリスの伝達公式を利用できることが知られている。
RSSI = TX Power − 20 ×log(d)  …（１）
式（１）のｄが、携帯端末３０から画像形成装置５０までの距離である。
【００８９】
また、ＲＳＳＩは周辺環境によりばらつきが発生する。そこで、複数回の受信データを蓄積して平均化したり、平均値から大きく外れたものを除外したりすることで、算出精度を高めることができる。例えば、１０回分の受信データを蓄積して平均値を算出する。あるいは、１分間に受信したデータを蓄積して平均値を算出する。あるいは、平均値と標準偏差を利用して正規分布から外れる値があれば除外する。また、平均する回数や平均する時間、受信時間間隔などをパラメータとして距離判定部３３が有していてもよい、これにより、周囲の環境に合わせた調整が可能である。位置情報検知結果３５を表３に示す。
【００９０】
通信部３４は、ＨＴＴＰサーバとしての機能を有し、発送先制御部２６からの要求を待ち受ける。要求が来た場合、位置情報検知結果３５を読み出して（取得して）発送先制御部２６に応答する。すなわち、通信部３４が位置情報検知結果３５を情報処理装置１０に提供することで、印刷要求があったタイミングで情報処理装置１０が位置情報検知結果３５を取得できる。
【００９１】
実行制御部３１は、位置検知アプリケーション４１の起動・終了制御、位置検知部３２の起動・停止、及び、通信部３４の起動・停止を行う。本実施形態で位置検知アプリケーション４１の実行制御部３１は常に起動しているものとして説明されるが、ユーザが位置検知アプリケーション４１を起動させる操作を行うと実行制御部３１のみが起動される。実行制御部３１は、位置検知部３２が必要な時間帯のみ動作するように起動・停止し、通信部３４が必要な時間帯のみ動作するように起動・停止する。必要な時間帯とは使用される状況をいう。
【００９２】
距離情報はユーザの近くの画像形成装置５０を発送先制御部２６が決定するために算出されるので、位置検知部３２が必要な時間帯とは印刷するよりも前である。したがって、例えば、ユーザが仮想デスクトップにログインしている間だけ起動していればよい。実行制御部３１は、例えば、仮想化環境接続クライアント４０のプロセス実行状態（実行状態，実行可能状態，待ち状態，休止状態）を監視したり、仮想化ソフトのメーカが提供するＡＰＩを利用したりして仮想デスクトップ６０へのログイン／ログアウトを監視することで、ログインしている間だけ位置検知部３２を起動する。
【００９３】
位置検知部３２を常時立ち上げないことにより、携帯端末３０のリソース消費やＣＰＵ負荷の低減が可能になる。
【００９４】
通信部３４についても同様であるが、通信部３４は、情報処理装置１０が印刷要求を取得したタイミングで起動すればよい。しかし、仮想デスクトップ６０のアプリケーション５０６が印刷要求したことを位置検知アプリケーション４１が検出することは困難なので、位置検知部３２と同様の時間帯、起動される。通信部３４を常時立ち上げないことにより、特定の時間帯しか公開しないサーバ機能となるため、外部からの攻撃の回避・軽減につながりセキュリティ効果が高まる。
【００９５】
なお、アプリケーション５０６が印刷要求したことを位置検知アプリケーション４１が検出できる場合、印刷要求を契機に実行制御部３１が通信部３４を起動させてよい。
【００９６】
【表２】
2018005424.tif 000004
表２は、位置検知部３２がビーコン信号から抽出するデータの一例を示す。位置検知部３２は、デバイスＩＤ、ＲＳＳＩ及びＴＸ Ｐｏｗｅｒ（送信時の電波強度）を取得する。デバイスＩＤとＴＸ Ｐｏｗｅｒはビーコン信号に含まれている。ＲＳＳＩは受信時の電波強度なので無線通信モジュール３０４がビーコン信号を受信した際のＲＳＳＩ値を無線通信モジュール３０４から取得することで得られる。
【００９７】
【表３】
2018005424.tif 000005
表３は、位置情報検知結果３５に記憶されている情報を模式的に示す。位置情報検知結果３５には、デバイスＩＤと距離情報が対応付けて登録されている。距離判定部３３が、デバイスＩＤを距離情報の近い順にソートしておくことで、発送先制御部２６は出力先の画像形成装置５０の候補リストを近い順に容易に表示できるようになる。
【００９８】
<<仮想化環境接続クライアント>>
仮想化環境接続クライアント４０は、携帯端末３０から仮想デスクトップ６０に接続するためのアプリケーションである。ユーザは情報処理装置１０の仮想デスクトップ６０にアクセスする際、仮想化環境接続クライアント４０を起動させる。仮想化環境接続クライアント４０はログイン画面を表示するので、ユーザはユーザＩＤやパスワードを入力してログインする。なお、仮想化環境接続クライアント４０は情報処理装置１０の仮想デスクトップ６０に接続するためのアプリケーションなので情報処理装置１０のＩＰアドレス等を保持している。
【００９９】
ログインが成功すると、携帯端末３０と仮想デスクトップ６０（情報処理装置１０）が接続された状態となり、仮想化環境接続クライアント４０には仮想デスクトップ６０が送信するデスクトップ画面が表示される。ユーザは携帯端末３０から仮想デスクトップ６０で動作するアプリケーション５０６を操作し、印刷管理部２０に対し印刷要求する。
【０１００】
なお、仮想化環境接続クライアント４０は、プログラム配信用のサーバから配信されてもよいし、ＵＳＢメモリや光記憶媒体などの可搬性の記憶媒体に記憶された状態で配布されてもよい。
【０１０１】
<<発送先制御部>>
発送先制御部２６は、接続情報取得部５１、位置情報取得部５３、ユーザ選択画面表示部５４、クライアント通信部５２及び出力先決定部５５を有する。
【０１０２】
まず、接続情報取得部５１は、印刷を実行した携帯端末３０の接続情報（ＩＰアドレス又はホスト名など）を取得する。仮想化環境接続クライアント４０は、仮想デスクトップに作成された印刷管理部２０に例えばＨＴＴＰ、ＨＴＴＰｓ、ＨＴＴＰ２などの通信プロトコルでネットワークＮを介して接続している。したがって、ユーザがアプリケーション５０６を操作することで携帯端末３０が情報処理装置１０に送信する操作信号のＩＰヘッダに含まれる送信元のＩＰアドレスを、少なくとも情報処理装置１０が把握している。接続情報取得部５１はこのＩＰアドレス（又はホスト名）を取得する。
【０１０３】
図９の構成図で接続情報取得部５１から仮想デスクトップ６０に矢印が伸びているのは、仮想化環境のＡＰＩを使用して接続情報（ＩＰアドレス）を取得することを模式的に示している。ただし、図１４にて説明するようにターミナルサーバのＡＰＩで接続情報を取得できる場合は、仮想デスクトップ６０から接続情報を取得しなくてよい。
【０１０４】
位置情報取得部５３は、接続情報取得部５１が取得した接続情報を用いて、クライアント通信部５２を介して携帯端末３０上の通信部３４と通信する。携帯端末３０の通信部３４はＨＴＴＰサーバとして通信を待ち受けているので、接続情報が分かれば位置情報取得部５３が位置情報検知結果３５を取得できる。
【０１０５】
ユーザ選択画面表示部５４は、位置情報検知結果３５を用いて出力先の画像形成装置５０の候補リストを含むユーザ選択画面を生成する。ユーザ選択画面は仮想デスクトップとして携帯端末３０のＬＣＤ３０６に表示される。これにより、ユーザは印刷する場所又は画像形成装置５０を決定できる（デバイスＩＤが決定される）。また、候補リストは携帯端末３０から近いと予測される順にソートされている。ソートは、携帯端末３０又は情報処理装置１０のどちらが行ってもよい。
【０１０６】
出力先決定部５５は、ユーザが選択した画像形成装置５０のデバイスＩＤを元に対応付けテーブル１８を参照し出力先の画像形成装置５０を決定する。
【０１０７】
＜動作手順＞
図１０は、要求処理システム１００の全体的な動作を説明するシーケンス図の一例である。
【０１０８】
S1：まず、ユーザの操作により仮想化環境接続クライアント４０が仮想デスクトップ６０に接続する。すなわち、ログインしてユーザが仮想デスクトップを使用できるようになる。
【０１０９】
S2：実行制御部３１は仮想化環境接続クライアント４０が仮想デスクトップ６０に接続したことを検知する。
【０１１０】
S3、S4：実行制御部３１は位置検知部３２を起動し、通信部３４を起動する。この処理については図１１にて説明する。
【０１１１】
S4-2：通信部３４はＨＴＴＰサーバを起動する。ＨＴＴＰサーバの起動に関する処理については図１３にて説明する。
【０１１２】
S5：位置検知部３２が起動することで、位置検知部３２はビーコン装置７０からビーコン信号を受信する。この処理については図１２にて説明する。
【０１１３】
S6：位置検知部３２は、ビーコン信号からデバイスＩＤ、ＲＳＳＩ及びＴＸ Ｐｏｗｅｒを抽出して距離判定部３３に送出する。
【０１１４】
S7：距離判定部３３は、ＲＳＳＩとＴＸ Ｐｏｗｅｒを用いて距離情報を算出し、デバイスＩＤに対応付けて位置情報検知結果３５に登録する。
【０１１５】
S8：ユーザがアプリケーション５０６を操作して印刷を実行する。これにより、プリンタドライバ１３（図では仮想プリンタドライバ）が印刷要求を検知したことを接続情報取得部５１に通知する。
【０１１６】
S9：接続情報取得部５１は、ユーザがログインすると仮想デスクトップ６０から接続情報を取得する。ログイン中に携帯端末３０の接続情報が変更されることは少ないためである。また、印刷要求の前に接続情報を取得しておくことで、印刷要求から画像形成装置５０の決定までの時間を短縮できる。
【０１１７】
また、図１０のように、接続情報取得部５１は印刷要求されたことを契機に画像形成装置を決定する必要があると判断し、仮想デスクトップ６０から接続情報を取得してもよい。
【０１１８】
S10：接続情報取得部５１は取得した接続情報を位置情報取得部５３に送出する。
【０１１９】
S11：位置情報取得部５３は接続情報を用いてクライアント通信部５２に位置情報検知結果３５を取得させる。
【０１２０】
S12：これにより、クライアント通信部５２は位置検知アプリケーション４１から位置情報検知結果３５を取得する。この処理については図１４にて説明する。
【０１２１】
S13：クライアント通信部５２は取得した位置情報検知結果３５をユーザ選択画面表示部５４に表示する。
【０１２２】
S14：ユーザ選択画面表示部５４は位置情報検知結果３５を用いてユーザ選択画面を表示する。ユーザ選択画面の一例を図１５に示す。
【０１２３】
S15：また、ユーザ選択画面表示部５４はユーザによる出力先の画像形成装置５０（場所）の選択を受け付ける。ユーザが最終的に出力先の画像形成装置５０を選択するので、距離情報が誤差を含んでいてもユーザが確認した画像形成装置５０を選択できる。ただし、出力先決定部５５は最も距離情報が小さい画像形成装置５０を選択してもよい。これにより、ユーザが選択する手間を省くことができる。
【０１２４】
S16：ユーザ選択画面表示部５４はユーザにより選択された画像形成装置５０のデバイスＩＤを出力先決定部５５に送出する。
【０１２５】
S17：出力先決定部５５は、対応付けテーブル１８を参照しデバイスＩＤに対応付いている出力先（画像形成装置５０）を決定する。
【０１２６】
S18：出力先決定部５５はデータ発送部２５を介して決定された出力先の画像形成装置５０に対応する機種固有ドライバ２７に印刷実行要求（中間ファイル２１とジョブ情報データ１９）を送信する。
【０１２７】
S19：機種固有ドライバ２７は中間ファイル２１とジョブ情報データ１９から作成した印刷データを画像形成装置５０に送信する。
【０１２８】
<<位置検知アプリケーション４１の動作>>
以下、図１１〜図１４を用いて要求処理システム１００の動作をより詳細に説明する。
図１１は、位置検知アプリケーション４１の動作手順を示すフローチャート図の一例である。図１１の処理は位置検知アプリケーション４１が起動している際に実行される。
【０１２９】
位置検知アプリケーション４１の実行制御部３１は、仮想化環境接続クライアント４０の仮想デスクトップ６０への接続を監視する（Ｓ６０１）。接続とはログインすること又はログインした状態をいい、未接続とはログアウトすること又はログアウトした状態をいう。
【０１３０】
具体的には、ユーザが仮想化環境接続クライアント４０を起動させログインする操作を行い仮想デスクトップ６０へ接続する。仮想化環境接続クライアント４０が実行状態（ＣＰＵを占有している）又は実行可能状態（ＣＰＵが空くのを待っている状態）であればログインしていると推定でき、休止状態（例えばユーザの操作の対象外、起動前、アクティブでない）であればログインしていないと推定できる。この他、実行制御部３１は、仮想化ソフトのメーカが提供するＡＰＩを利用して仮想デスクトップ６０へのログイン／ログアウトを監視できる。
【０１３１】
監視中にユーザが位置検知アプリケーション４１を終了させる操作を行うと（Ｓ６０６のＹｅｓ）、実行制御部３１は位置検知部３２及び通信部３４を停止させ、監視も停止する（Ｓ６０７）。すなわち、位置検知アプリケーション４１が終了する。
【０１３２】
終了させる操作を行わない場合（Ｓ６０６のＮｏ）、実行制御部３１は監視結果に基づいて仮想デスクトップへの接続状態を判断する（Ｓ６０２）。未接続のままであれば監視を係属する。
【０１３３】
接続状態から未接続に移行した場合、実行制御部３１は位置検知部３２及び通信部３４を停止させる（Ｓ６０３）。例えば、仮想デスクトップからログアウトした場合などである。
【０１３４】
未接続から接続状態に移行した場合、実行制御部３１は位置検知部３２を起動させ、通信部３４を起動させる（Ｓ６０４、Ｓ６０５）。なお、実行制御部３１は監視を継続する。
【０１３５】
このように、携帯端末３０が仮想デスクトップ６０に接続した場合にだけ、位置検知部３２と通信部３４を起動させることができる。
【０１３６】
また、携帯端末３０に仮想デスクトップへのログイン状態が残っている場合もあり、この場合、ログイン状態の監視だけでは仮想デスクトップ６０への接続状態を実行制御部３１が判断できない。このような場合は、仮想化環境接続クライアント４０が休止状態から実行状態又は実行可能状態に移行したことで、接続したと判断してよい。また、実行状態又は実行可能状態から休止状態に移行した場合、未接続になったと判断してよい。
【０１３７】
<<位置検知部動作>>
図１２は、位置検知部３２がビーコン装置７０と通信して距離情報を生成する手順を示すフローチャート図の一例である。図１２の処理は位置検知部３２が起動中、繰り返し実行される。
【０１３８】
まず、位置検知部３２はビーコン信号の受信を待ち受けする（Ｓ６１１）。
【０１３９】
図１１で説明したように、実行制御部３１が位置検知部３２を停止させた場合（Ｓ６１６のＹｅｓ）、受信の待ち受けを終了する（Ｓ６１７）。
【０１４０】
ビーコン信号を受信しない場合（Ｓ６１２のＮｏ）、位置検知部３２は待ち受けを継続する。
【０１４１】
ビーコン信号を受信した場合（Ｓ６１２のＹｅｓ）、位置検知部３２はビーコン信号を解析し、ビーコンＩＤ、発信電波強度（TX Power）及び受信電波強度（RSSI）などの必要なデータを抽出し、ＲＡＭ３０３上に蓄積する（Ｓ６１３）。
【０１４２】
次に、距離判定部３３は蓄積した発信電波強度（TX Power）及び受信電波強度（RSSI）から距離情報を算出する（Ｓ６１４）。
【０１４３】
次に、距離を算出したタイミングで、距離判定部３３は位置情報検知結果３５にデバイスＩＤと距離情報を対応付けて登録する（Ｓ６１５）。なお、同じデバイスＩＤの距離情報は最新のものに上書きされる。
【０１４４】
このようにユーザは画像形成装置５０のＱＲコードやＩＣタグを読み取るような操作を行わなくても画像形成装置５０との距離情報を取得できる。
【０１４５】
<<通信部の動作>>
図１３は、通信部３４の動作手順を示すフローチャート図の一例である。図１３の処理は通信部３４が起動中、繰り返し実行される。
【０１４６】
まず、通信部３４は、ＨＴＴＰサーバを起動する（Ｓ６２１）。ＨＴＴＰサーバの機能は要求されたファイルを返す機能と、要求されたプログラムを実行して処理結果を返す機能に分けられる。本実施形態では、位置情報検知結果３５を返す機能を有していればよい。ＨＴＴＰサーバは以下の機能を有する。
・ＨＴＴＰの下位層であるＴＣＰプロトコルスタックのソケットからメソッド（例えばＧｅｔ）をふくむＨＴＴＰリクエスト（要求）を受け取る。
・メソッドの解釈
・メソッドがＧｅｔの場合、指定されたファイルを読み出し、その中身とともにＨＴＴＰレスポンスを作成する。
・ＴＣＰプロトコルスタックが提供するＨＴＴＰレスポンスのソケットを通じてＨＴＴＰリクエストを送信する。
【０１４７】
これらのＨＴＴＰサーバの機能は予め通信部３４が有している。また、ＨＴＴＰサーバの機能は一般的なものでよく所定のライブラリを利用してよい。
【０１４８】
また、ＨＴＴＰサーバはあくまで一例であり、通信部３４はファイルを提供する通信プロトコルを使用するサーバを起動できる。例えば、ＦＴＰ、ＳＭＢ、ＷｅｂＤａｖが使用されてもよい。この場合、通信部３４はＦＴＰサーバ、ＳＭＢサーバ又はＷｅｂＤａｖサーバを起動させる。また、ＩＰアドレスを元にプロセス間通信ができればよいので、トランスポート層以上の通信プロトコルであれば使用できる。例えば、ＴＣＰ/ＩＰプロトコルを使用するソケット通信が知られている。
【０１４９】
ＨＴＴＰサーバが作成されると、ＨＴＴＰサーバはクライアント（発送先制御部２６）からの要求を待ち受ける（Ｓ６２２）。
【０１５０】
図１１で説明したように、実行制御部３１が通信部３４を停止させた場合（Ｓ６２５のＹｅｓ）、要求の待ち受けを終了する（Ｓ６２６）。そして、通信部３４はＨＴＴＰサーバを停止する（Ｓ６２７）。
【０１５１】
クライアント（発送先制御部２６）からの要求がない場合（Ｓ６２３のＮｏ）、待ち受けを継続する（Ｓ６２２）。
【０１５２】
クライアント（発送先制御部２６）からの要求があった場合（Ｓ６２３のＹｅｓ）、ＨＴＴＰサーバは位置情報検知結果３５を取得して応答する（Ｓ６２４）。この後、ＨＴＴＰサーバは待ち受けを継続する（Ｓ６２４）
<<発送先制御部２６の動作>>
図１４は、発送先制御部２６の動作手順を示すフローチャート図の一例である。図１４の処理は、携帯端末３０が仮想デスクトップ６０にログインするとスタートする。
【０１５３】
接続情報取得部５１は、接続した携帯端末３０の接続情報を取得する（Ｓ８０１）。接続情報取得部５１は、ターミナルサーバ（情報処理装置１０）上のセッション情報を取得するＡＰＩ（WTSQuerySessionInformation関数）を使用して携帯端末３０のＩＰアドレスを取得する。情報処理装置１０にログインした各携帯端末３０はセッションＩＤなどで特定されるあるセッションで通信する。接続情報取得部５１はこのセッションＩＤを指定してセッション情報を取得する。なお、セッションＩＤを取得するにはＡＰＩ（WTSEnumerateSessions）を使用する。このＡＰＩによりターミナルサーバ上で実行されているすべてのセッションＩＤを取得できる。
【０１５４】
ターミナルサーバのＡＰＩでＩＰアドレスを取得できない場合（Ｓ８０８のＮｏ）、代替手段として仮想化環境が独自に保持している領域からＩＰアドレスを取得する（Ｓ８０３）。例えば、VMWare（登録商標）など仮想化ソフトが作成する仮想デスクトップ６０では、ターミナルサーバのＡＰＩではＩＰアドレスを取得できない。この場合、仮想化ソフトが提供する所定のＡＰＩを利用することで携帯端末３０のＩＰアドレスを取得できる。接続情報取得部５１は仮想デスクトップ６０の識別情報（又はセッションＩＤなどの携帯端末３０を特定できる情報）を指定してＡＰＩを呼び出すことでこの仮想デスクトップ６０に接続している携帯端末３０のＩＰアドレスを取得できる。
【０１５５】
あるいは、携帯端末３０のＩＰアドレスは仮想デスクトップ６０が使用するレジストリに格納されており、レジストリ情報を参照することで取得できる。
【０１５６】
接続情報の取得に成功した場合は（Ｓ８０９のＹｅｓ）、位置情報取得部５３はクライアント通信部５２を介して携帯端末３０の通信部３４（ＨＴＴＰサーバ）と通信し、位置情報検知結果３５を取得する（Ｓ８０２）。例えば、以下のようなＵＲＬ（Uniform Resource Locator）を宛先に携帯端末３０と通信する。
【０１５７】
http://<接続先IPアドレス>:<接続先ポート番号>/get_location_data/
なお、ＵＲＬの生成ルールは規格により予め定められており、携帯端末３０の通信部３４はこの生成ルールにしたがってＨＴＴＰサーバを起動し、情報処理装置１０の位置情報取得部５３はこの生成ルールにしたがってＵＲＬを生成する。
・接続先ＩＰアドレスは携帯端末３０のＩＰアドレスである。
・接続先ポート番号は通常は８０であり、８０の場合は省略してもよい。
・get_location_dataは仮想ディレクトリである。本実施形態では、位置情報検知結果３５を要求するための仮想的なディレクトリであり、実際に携帯端末３０がこのディレクトリを有していなくてもよい。
【０１５８】
上記のＵＲＬが指定された場合のＨＴＴＰリクエストは以下のようになる。
GET  /<接続先IPアドレス>/get_location_data HTTP/1.1
情報処理装置１０が例えば印刷要求を取得したタイミングで接続情報を取得すれば、接続情報の取得に引き続き発送先制御部２６が位置情報検知結果３５を取得することで、印刷要求したタイミングでユーザに最も近い画像形成装置５０との距離情報を取得できる。仮に、携帯端末３０が起点となって位置情報検知結果を情報処理装置１０に送信することを考えた場合、携帯端末３０は位置情報検知結果を情報処理装置１０がいつ必要になるか分からない。この場合、携帯端末３０がログイン中、繰り返し位置情報検知結果を情報処理装置１０に送信するなどの不要な処理が必要になってしまう。あるいは、位置情報検知結果を保持し情報処理装置１０が任意にアクセス可能なデータベースが必要になってしまう。本実施形態ではＨＴＴＰサーバを起動し情報処理装置１０からの要求に応じて、位置情報検知結果を提供するので、情報処理装置１０が必要とするタイミングで現在の携帯端末３０の位置から最も近い画像形成装置５０の位置を含む位置情報検知結果３５を取得できる。
【０１５９】
次に、位置情報検知結果３５を取得できた場合（Ｓ８１０のＹｅｓ）、ユーザ選択画面表示部５４はユーザ選択画面をＬＣＤ３０６に表示する（Ｓ８０５）。ユーザ選択画面には、対応付けテーブル１８により位置情報検知結果３５のデバイスＩＤから変換された画像形成装置５０の表示名が距離情報の近い順に表示される。ユーザ選択画面を図１５に示す。
【０１６０】
位置情報検知結果３５を取得できない場合（Ｓ８１０のＮｏ）、発送先制御部２６は代替処理を行う（Ｓ８０６）。代替処理としては、位置情報検知結果３５の取得のリトライや、すべての画像形成装置５０からユーザに選択させる処理がある。
【０１６１】
ユーザの選択（Ｓ８０５）又は代替処理（Ｓ８０６）により、最終的な出力先の画像形成装置５０が１つに絞り込まれると、出力先決定部５５が中間ファイル２１とジョブ情報データ１９の出力先を対応付けテーブル１８により決定する（Ｓ８０７）。これにより、ユーザから最も近い画像形成装置５０が印刷物を出力する。
【０１６２】
＜携帯端末３０に表示される画面例＞
図１５を用いて、携帯端末３０に表示される画面例を説明する。図１５（ａ）は位置情報検知結果３５を取得した発送先制御部２６が表示するユーザ選択画面６０１の一例である。ユーザ選択画面６０１には、距離情報が取得できた画像形成装置５０の数（図では９件）６０２が表示される。この数は発送先制御部２６が取得した位置情報検知結果３５に含まれるデバイスＩＤの数である。
【０１６３】
ユーザ選択画面６０１はユーザの携帯端末３０から近い順に画像形成装置５０の候補リストを、画像形成装置５０の表示名６０３としてボタン形式でリスト状に表示する。ユーザが出力先として指定する表示名６０３のボタンを押下すると、ユーザ選択画面表示部５４は出力先の画像形成装置５０を受け付ける。
【０１６４】
次へボタン６０４は、１つの画面に表示し切れない表示名がある場合に表示名のリスト表示を切り替えるためのボタンである。再検索ボタン６０５は、発送先制御部２６が画像形成装置５０を再検索するためのボタンである。全てから選択ボタン６０６は、出力可能な全ての表示名のリストを表示させるためのボタンである。キャンセルボタン６０７は、印刷を中止するためのボタンである。
【０１６５】
図１５（ｂ）は位置情報検知結果３５を取得できない場合に発送先制御部２６が表示する検索結果画面６１１の一例である。図１５（ｂ）では、「出力先候補が見つかりませんでした。「再検索」又は「全てから検索」を選択してください」というメッセージ６０８が表示されている。したがって、ユーザは再検索ボタン６０５又は全てから選択ボタン６０６を押下することで、出力先の画像形成装置５０を選択できる。
【０１６６】
＜他の実施形態＞
いくつかの他の実施形態又は変形例について説明する。
【０１６７】
<<携帯端末３０に印刷管理部２０が配置される場合>>
携帯端末３０のＯＳがWindows（登録商標）の場合、印刷管理部２０を携帯端末３０上に配置することができる。この場合、携帯端末３０の任意のアプリケーションからの印刷要求に対し、出力先の画像形成装置５０を選択して出力できる。
【０１６８】
図１６は、印刷管理部２０が配置された携帯端末３０の構成図の一例である。このような構成の場合も、位置検知アプリケーション４１の動作は同じである。また、仮想化環境接続クライアント４０は不要になる。また、印刷管理部２０と位置アプリケーシは携帯端末３０で動作しているので、情報処理装置１０が携帯端末３０のＩＰアドレス（接続情報）を取得する必要がない。換言すると、印刷管理部２０は携帯端末３０のローカルフォルダから位置情報検知結果３５を取得できる。
【０１６９】
したがって、図１６の構成の場合の発送先制御部２６の動作手順は図１７に示すようになる。図１７は、携帯端末３０に印刷管理部２０が配置される場合の発送先制御部２６の動作手順を示すフローチャート図の一例である。なお、図１７では主に図１４との相違を説明する。
【０１７０】
接続情報取得部５１は、ステップＳ８０１，Ｓ８０３のいずれでも携帯端末３０のＩＰアドレスを取得できない。発送先制御部２６は携帯端末３０上で動作しており、発送先制御部２６から見て通信相手がいないためである。
【０１７１】
この場合、接続情報取得部５１は、ローカルフォルダから位置情報検知結果３５を取得する（Ｓ８０４）。携帯端末３０の所定のフォルダ（又はディレクトリ）に位置情報検知結果３５が記憶されているので、接続情報取得部５１はこのフォルダから位置情報検知結果３５を取得できる。
【０１７２】
したがって、以降は図１４と同様に、ユーザ選択画面を表示して印刷を行うことができる。このような構成によれば、携帯端末３０が情報処理装置１０と通信しないで最寄りの画像形成装置５０を選択できる。
【０１７３】
<<通信部の起動後に位置検知を開始する場合>>
図１８に示すように、実行制御部３１は通信部３４と位置検知部３２を並列に起動しなくてもよい。図１８は、通信部３４の起動後に位置検知部３２が起動される場合の、通信部３４の動作を示すフローチャート図の一例である。図１８では図１３との相違を説明する。
【０１７４】
図１８の処理ではステップＳ６２２に次いで、位置検知部３２が位置検知を開始している（Ｓ６２２−２）。すなわち、図１２の処理が実行される。こうすることで、通信部３４が起動した場合に位置検知を開始するので、さらに携帯端末３０のリソース消費やＣＰＵ負荷の低減が可能になる。
【０１７５】
＜まとめ＞
以上のように、本実施形態の要求処理システム１００は、携帯端末３０が周囲のビーコン装置７０と通信することで、画像形成装置５０の相対的な位置を検出できるため、ユーザが画像形成装置５０のＩＣタグやＱＲコードなどを読み取る必要がない。また、携帯端末３０がＨＴＴＰサーバを起動させるので、情報処理装置１０は適切なタイミングで携帯端末３０の位置情報検知結果を取得できる。ユーザが選択した出力先情報を保持しておくためのデータベースが必要ない。また、携帯端末３０は、仮想デスクトップと接続した場合に、位置検知部３２と通信部３４を起動するので消費電力等を低減できる。また、仮想デスクトップ６０を利用するので携帯端末３０のデスクトップ画面をユーザが操作するという通常の環境で最寄りの画像形成装置５０を選択できる。また、ユーザは常に１つのプリンタドライバ１３を選択するだけで、情報処理装置１０が最も近い画像形成装置５０を選択してくれる。
【０１７６】
＜その他の適用例＞
以上、本発明を実施するための最良の形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。
【０１７７】
例えば、図８，９などの構成例は、情報処理装置１０及び携帯端末３０による処理の理解を容易にするために、主な機能に応じて分割したものである。処理単位の分割の仕方や名称によって本発明が制限されることはない。また、情報処理装置１０及び携帯端末３０の処理は、処理内容に応じてさらに多くの処理単位に分割することもできる。また、１つの処理単位がさらに多くの処理を含むように分割することもできる。
【０１７８】
また、情報処理装置１０は、複数台、存在してもよい。また、図８の機能が複数の情報処理装置１０に分散されていてもよい。
【０１７９】
また、本実施形態では距離情報に応じた画像形成装置の選択方法を説明したが、その他の機器の選択方法にも適用できる。例えば、プロジェクタ、電子黒板、デジタルサイネージ、テレビ会議端末、デジタルカメラなどの機器がビーコン装置を有すれば、印刷管理部２０は最寄りの機器を選択できる。プロジェクタ、電子黒板又はデジタルサイネージであれば映像を表示し、テレビ会議端末やデジタルカメラであれば映像を撮像できる。
【０１８０】
また、本実施形態では、ビーコン装置からビーコン信号を携帯端末３０が受信したが、位置情報そのものを受信してもよい。この位置情報とは、緯度、経度、標高（フロア階数）である。また、位置情報を提供するシステムとしてＧＮＳＳ（Global Navigation Satellite System）やＩＭＥＳ（Indoor MEssaging System）が知られている。また、ビーコン装置から提供される位置情報は、部屋番号又は部屋内の領域を示す情報でもよい。
【０１８１】
また、印刷管理部２０は、最寄りの画像形成装置５０を選択するのでなく、近い画像形成装置のうち負荷の少ない画像形成装置や使用されていない画像形成装置を選択してもよい。また、ユーザが任意に指定した位置に近い画像形成装置を選択してもよい。例えば、自室に戻る前に印刷しておく等の使用状況が想定される。
【０１８２】
なお、プリンタドライバ１３は受付手段の一例であり、クライアント通信部５２は通信手段の一例であり、出力先決定部５５は決定手段の一例であり、ＨＴＴＰサーバは要求受付応答部又はサーバ部の一例であり、接続情報取得部５１は接続情報取得手段の一例である。データ発送部２５は送信手段の一例である。仮想化環境接続クライアント４０は接続手段又は第一のソフトウェアの一例であり、実行制御部３１は接続検知手段の一例であり、位置検知部３２は信号受信手段の一例であり、距離判定部３３は位置情報算出手段の一例である。位置検知アプリケーション４１は第二のソフトウェアの一例である。
【符号の説明】
【０１８３】
１０      情報処理装置
１１      アプリケーション実行部
１３      プリンタドライバ
１８      対応付けテーブル
２６      発送先制御部
３０      携帯端末
３１      実行制御部
３２      位置検知部
３３      距離判定部
３４      通信部
３５      位置情報検知結果
４０      仮想化環境接続クライアント
４１      位置検知アプリケーション
５０      画像形成装置
５１      接続情報取得部
５２      クライアント通信部
５３      位置情報取得部
５４      ユーザ選択画面表示部
５５      出力先決定部
６０      仮想デスクトップ
７０      ビーコン装置
１００    要求処理システム
【先行技術文献】
【特許文献】
【０１８４】
【特許文献１】特開2016‐081322号公報
【図１】
2018005424.tif 000006
【図２】
2018005424.tif 000007
【図３】
2018005424.tif 000008
【図４】
2018005424.tif 000009
【図５】
2018005424.tif 000010
【図６】
2018005424.tif 000011
【図７】
2018005424.tif 000012
【図８】
2018005424.tif 000013
【図９】
2018005424.tif 000014
【図１０】
2018005424.tif 000015
【図１１】
2018005424.tif 000016
【図１２】
2018005424.tif 000017
【図１３】
2018005424.tif 000018
【図１４】
2018005424.tif 000019
【図１５】
2018005424.tif 000020
【図１６】
2018005424.tif 000021
【図１７】
2018005424.tif 000022
【図１８】
2018005424.tif 000023