以下に添付図面を参照して、この発明にかかる情報処理装置、情報処理システム、機器連携方法およびプログラムの実施の形態を詳細に説明する。
(実施の形態1)
図1は、実施の形態1の情報処理システムのネットワーク構成および情報処理装置の機能的構成を示すブロック図である。本実施の形態にかかる情報処理システムは、図1に示すように、情報処理装置100と、操作端末200と、複数の入力機器および複数の出力機器としての複合機1、プロジェクタ1がインターネットやLAN(Local Area Network)等のネットワークで接続された構成となっている。
操作端末200は、ユーザが所望の入力機能および出力機能の機能実行要求を入力してネットワークを介して情報処理装置100に送信する端末である。操作端末200としては、例えば、PC(Personal Computer)や携帯端末等が該当するがこれに限定されるものではない。
情報処理装置100は、操作端末200からの機能実行要求を受信して、当該機能実行を実現するための入力機器、出力機器の組み合わせや実行順番を定めた連携フローを生成して、連携フローに従って入力機器、出力機器に実行を行わせるプラットフォームの役割を行うものである。情報処理装置100としては、例えば、サーバ装置やワークステーションあるいはPC等のコンピュータ、複合機や複写機などの画像形成装置、プロジェクタ等の情報投影装置、携帯電話やPDA(Personal Data Assistance)あるいはタブレット端末などの携帯端末などが該当するが、これらに限定されるものではない。
入力機器および出力機器としての複合機1、プロジェクタ1は、それぞれの入力機能、出力機能を実行するとともに、情報処理装置100からの要求を受けて、自己の実現可能な機能を示す能力情報を情報処理装置100に送信する。
ここで、能力情報としては、入出力データの形式や解像度等であり、各機器によって異なる。能力情報の詳細は後述する。また、本実施の形態では、複合機1、プロジェクタ1のいずれも入力機器と出力機器のいずれにもなり得るものとする。
情報処理装置100は、図1に示すように、アプリケーションプログラミングインタフェイス(Apprication Programing Interface:以下、「API」と称する。)を境界として上位の層と下位の層にわけられている。上位の層には、ユーザインタフェイス部101(以下、「UI部101」と称する。)と、フロー実行アプリ103とを有する。
UI部101は、操作端末100から、入力機能および出力機能の機能実行要求を受信する。ここで、本実施の形態では、機能実行要求には、ユーザにより指定された所望の入力機能、出力機能、入力機能を実行する入力機器、出力機能を実行する出力機器を含んでいる。例えば、機能実行要求としては「スキャン(複合機1)+投影(プロジェクタ1)」等が該当する。
ここで、「スキャン」が入力機能であり、「複合機1」が当該入力機能「スキャン」を実行する入力機器である。また、「投影」が出力機能であり、「プロジェクタ1」が当該出力機能「投影」を実行する出力機器である。入力機能を行う入力機器、出力機能を実行する出力機器の特定の手法としては、各機器を識別するためのIPアドレスを用いるが、これに限定されるものではない。
フロー実行アプリ103は、UI部101から機能実行要求を受信して、APIを利用して機器検索/サービス連携部110のサービス連携部111に対して連携フロー生成要求を送信し、サービス連携部111で生成された連携フロー(以下、「フロー」と称する場合もある。)を受信する。
また、フロー実行アプリ103は、受信した連携フローに従って、APIを利用して入力機器に対する入力処理の要求、出力機器に対する出力処理の要求を行う。
ここで、APIは、パラメータ指定等予め定義された関数により、フロー実行アプリ103からのフロー生成、入力処理、出力処理の各要求を受信可能とする。そして、APIは、当該関数により、フロー生成の要求を受信した場合、サービス連携部111にフロー生成の要求を行って、サービス連携部111にフロー生成を行わせる。APIは、当該関数により、入力処理の要求、出力処理の要求を受信した場合、デバイス操作部104に各処理の実行要求を行って、デバイス操作部104に入力機器、出力機器に対する制御を行わせる。
また、APIより上位の層には、フロー実行アプリの他、各種アプリケーション(不図示)を搭載することができ、これらの各種アプリケーションもAPIで定義された関数呼び出しにより、APIで提供されるサービス連携のための各機能の実行要求を行うことができる。
言い換えれば、APIおよびAPIより下位の層は、アプリケーション(フロー実行アプリ103を含む)に対するサービス連携のプラットフォームとしての役割を有する。なお、APIの詳細については後述の実施の形態2で説明する。
情報処理装置100は、APIより下位の層に、サービス連携部111を有する機器検索/サービス連携部110と、デバイス操作部104と、記憶部105とを主に備えている。
サービス連携部111は、機能実行要求で指定された入力機器および出力機器に対して、能力情報を要求し、入力機器および出力機器から能力情報を受信する。そして、サービス連携部111は、能力情報に基づいて、機能実行要求で指定された入力機能を有する入力機器と機能実行要求で指定された出力機能を有する出力機器であって、入力機能と出力機能が連携可能な入力機器および出力機器の組み合わせおよび実行順を示す連携フローを生成する。
すなわち、サービス連携部111は、能力情報から、ユーザから機能実行要求で指定された入力機器、出力機器とこれらを連携して実行するために必要なパラメータを特定した連携フローを生成し、この連携フローを応答としてフロー実行アプリ103に送信する。
入力機器、出力機器とこれらを連携して実行するために必要なパラメータとしては、例えば、入力機器の出力データの形式と出力機器の入力データの形式が一致するデータ形式や入力機器、出力機器の実行順等である。
これにより、フロー実行アプリ103は、機器間を連携させるための処理を意識することなく、サービス連携部111が生成した連携フローのパラメータをAPIを利用してデバイス操作部104に渡すだけで、入出力機能の連携が実行可能となる。
次に、以上のように構成された本実施の形態の機器連携処理について具体例をあげて説明する。図2は、実施の形態1の連携処理のシーケンス図である。ここでは、上述した「スキャン(複合機1)+投影(プロジェクタ1)」の機能実行要求がユーザから操作端末200に入力された場合を例にあげて説明する。
図3は、実施の形態1の機能実行要求の入力画面の一例を示す模式図である。情報処理装置100のUI部101は、図3に示す入力画面を操作端末200に表示し、ユーザはこの入力画面から所望の機能の実行要求を入力する。図3に示すように、ユーザは、所望の入力機能、入力機能を実行させる入力機器のIPアドレスにより入力機器を指定し、入力機能のパラメータを指定する。また、ユーザは所望の出力機能、出力機能を実行させる出力機器のIPアドレスにより出力機器を指定し、出力機能のパラメータを指定する。
図2に戻り、操作端末200は、上記の入力画面からユーザにより指定された「スキャン(複合機1)+投影(プロジェクタ1)」の機能実行要求を情報処理装置100に送信する(ステップS11)。
情報処理装置100のUI部101は、この機能実行要求を受信し、機能実行要求で指定された入力機能(スキャン)および出力機能(投影)、指定された入力機器(複合機1)および出力機器(プロジェクタ1)の各IPアドレス、機能実行要求に指定があればそのパラメータ(モノクロ/カラー等の入力属性、投影属性等)を含むフロー生成要求をフロー実行アプリ103に送信する(ステップS12)。フロー実行アプリ103は、このフロー生成の要求を、APIを利用してサービス連携部111に送信する(ステップS13)。
サービス連携部111は、フロー実行アプリ103からフロー生成の要求を受信すると、フロー生成の要求で指定された複合機1とプロジェクタ1に能力情報取得要求を送信して(ステップS14,S16)、各機器から能力情報を取得する(ステップS15,S17)。
そして、サービス連携部111は、これらの能力情報から連携フローを生成する(ステップS18)。ここで、複合機1の能力情報が図2の符号201に示すとおりであり、プロジェクタ1の能力情報が、図2の符号202に示すとおりであったとする。図4は、複合機1とプロジェクタ1の各能力情報とを比較して表形式にして説明するための図である。
図2、図4の例では、複合機1の能力情報では出力形式が「Jpeg」と「Tiff」であり、プロジェクタ1の能力情報では入力形式が「Jpeg」である。この場合、サービス連携部111は、複合機1のスキャン実行をJpegで出力するようにパラメータを構成し、複合機1とプロジェクタ1の連携フローを生成する。生成される連携フローの例を、図2の符号203に示す。
連携フローは、符号203に示すように、入力機器(複合機1)のIPアドレス、スキャン属性(カラー/モノクロ指定[fullColor]、出力データ形式[Jpeg])、コメント、入力機器(複合機1)をパラメータとした入力機能の関数呼び出し(スキャン())と、出力機器(プロジェクタ1)のIPアドレス、投影属性、コメント、出力機器(プロジェクタ1)をパラメータとした出力機能の関数呼び出し(投影())が、実行する順番で指定される。
すなわち、この連携フローでは、APIが提供する入力機能の関数(スキャン())、出力機能の関数(投影())がパラメータとともに記述される。
そして、サービス連携部111は、生成した連携フローをフロー実行アプリ103に送信する(ステップS19)。
なお、サービス連携部111は、能力情報を比較した結果、入力機器と出力機器が連携不能であると判断した場合には、その旨を示すエラーをフロー実行アプリ103に返し、フロー実行アプリ103は、連携不能のエラーをUI部101を介して操作端末200に通知するように構成すればよい。
次に、フロー実行アプリ103は、連携フローで指定された関数呼び出しをAPIに対して行う。これにより、複合機1とプロジェクタ1を連携処理させる場合のパラメータ変更などを意識することなく連携させることが可能となる。
具体的には、フロー実行アプリ103は、受信した連携フローを参照して、パラメータが指定されている入力機能の関数(スキャン())呼び出しを行うことにより、APIを利用してデバイス操作部104に入力処理の要求を行う(ステップS20)。この入力処理の要求には、入力機能としてのスキャンと、カラー/モノクロ指定(FullColor)や出力データ形式(Jpeg)等のパラメータと、入力機器(複合機1)のIPアドレスが含まれる。
この入力処理の要求を受信したデバイス操作部104は、入力処理の要求で指定された入力機器(複合機1)に対して処理実行要求を行う(ステップS21)。入力機器(複合機1)から処理の完了の通知がなされると(ステップS22)、デバイス操作部104は、完了通知とともに受信したスキャン画像データを記憶部105に保存する。そして、デバイス操作部104は、スキャン画像データのロケーション等のファイル情報をフロー実行アプリ103に送信する(ステップS23)。
フロー実行アプリ103は、ファイル情報を受信すると、ファイル情報をパラメータに指定して、連携フローに登録されている出力機能の関数(投影())呼び出しを行うことにより、APIを利用してデバイス操作部104に出力処理の要求を行う(ステップS24)。この出力処理の要求には、出力機能としての投影と、ファイル情報等のパラメータと、出力機器(プロジェクタ1)のIPアドレスとが含まれる。
この出力処理の要求を受信したデバイス操作部104は、出力処理の要求で指定された出力機器(プロジェクタ1)に対して処理実行要求を行う(ステップS25)。出力機器(プロジェクタ1)から処理の完了の通知がなされると(ステップS26)、デバイス操作部104は、完了通知をフロー実行アプリ103に送信し(ステップS27)、この完了通知は、フロー実行アプリ103からUI部101へ、UI部101から操作端末200へと順次送信される(ステップS28,29)。
このように本実施の形態では、ユーザからの入出力にかかる機能実行要求があった場合に、サービス連携部111により、機能実行要求で指定された入力機器、出力機器に能力情報を問い合わせ、能力情報に基づいて連携可能な場合に、連携フローを生成し、フロー実行アプリ103で連携フローに基づいて入力機器、出力機器に対して処理実行要求を行うので、ユーザは入力機器、出力機器の能力を把握していなくても、入力機器、出力機器を連携して所望の入出力処理を実行することができ、入力機器と出力機器の連携を容易に行うことができる。
また、本実施の形態では、フロー実行アプリ103がAPIを利用してサービス連携部111にフロー生成の要求を行い、またAPIを利用してデバイス操作部104に入力処理および出力処理の実行要求を行うので、入力機器と出力機器を連携処理させる場合のパラメータ変更などを意識することなく、容易に連携させることができる。
(実施の形態2)
実施の形態1では、ユーザによる操作端末200からの機能実行要求に入力機器と出力機器のIPアドレスが指定されていたが、この実施の形態2では、入力機器と出力機器の指定を行わずに機能実行要求をユーザが行った場合でも、連携可能とするものである。
図5は、実施の形態2の情報処理システムのネットワーク構成および情報処理装置の機能的構成を示すブロック図である。本実施の形態にかかる情報処理システムは、図5に示すように、情報処理装置500と、操作端末200と、複数の入力機器および複数の出力機器としての複合機1、プロジェクタ1、プロジェクタ2がインターネットやLAN等のネットワークで接続された構成となっている。
ここで、操作端末200、複合機1、プロジェクタ1の機能は実施の形態1と同様である。プロジェクタ2は、プロジェクタ1と能力(機能)が異なっている。
情報処理装置500は、図5に示すように、APIを境界とした上位の層に、UI部101と、フロー実行アプリ503と、アプリケーション102とを有する。また、APIを境界とした下位の層に、機器検索/サービス連携部510と、デバイス操作部104と、記憶部105とを主に備えている。
ここで、UI部101、デバイス操作部104、記憶部105の機能および構成は実施の形態1と同様である。
本実施の形態では、UI部101は、操作端末200から、入力機能および出力機能の機能実行要求を受信するが、機能実行要求には、ユーザにより指定された所望の入力機能、出力機能が含まれ、入力機能を実行する入力機器、出力機能を実行する出力機器の指定は含まれない。本実施の形態では、例えば、機能実行要求としては「スキャン+投影」等が該当する。ここで、「スキャン」が入力機能の指定であり、「投影」が出力機能の指定である。
フロー実行アプリ503は、UI部101から機能実行要求を受信して、APIを利用して機器検索/サービス連携部510のサービス連携部511に対して連携フロー生成の要求を送信し、サービス連携部511で生成された連携フローを受信する。また、フロー実行アプリ503は、受信した連携フローに従って、APIを利用して入力機器に対する入力処理の要求、出力機器に対する出力処理の要求を行う。
機器検索/サービス連携部510は、サービス連携部511と、機器検索部512とを主に備えている。
機器検索部512は、ネットワークに接続されている周辺の入力機器および出力機器に対して能力情報を要求し、入力機器および出力機器から能力情報を受信する。
サービス連携部511は、機器検索部512により受信した能力情報に基づいて、ユーザからの機能実行要求に対して連携可能な入力機器、出力機器を指定した連携フローを生成する。ここで、能力情報、連携フローについては実施の形態1と同様である。
例えば、操作端末200から「スキャン+投影」の機能実行要求をUI部101が受信した場合、フロー実行アプリ503が、APIを利用して、サービス連携部511に、「スキャン+投影」のフロー生成の要求を行う。
フロー生成の要求を受けて、機器検索部512は、周辺に存在する入力機器、出力機器で「スキャン」「投影」のできる機器(図5の例では、複合機1、プロジェクタ1、プロジェクタ2)を検索し、各機器の能力情報を取得する。
そして、サービス連携部511が、機器検索部512が取得した能力情報に基づいて、能力情報のマッチングを行い、連携フローを生成し、フロー実行アプリ503に送信する。
次に、APIの詳細について説明する。本実施の形態では、フロー生成の関数と、入力処理の関数と、出力処理の関数と、加工処理の各関数がAPIとして提供されている。
1)フロー生成
<入力パラメータ>
複数の機能名(例:スキャン+投影)
パラメータ
<応答>
連携フロー
2)入力処理
<入力パラメータ>
機能名(例:スキャン)
IPアドレス
パラメータ
<応答>
入力によって生成された画像のロケーション
3)出力処理
<入力パラメータ>
機能名(例:投影)
IPアドレス
パラメータ(入力画像のロケーション含む)
<応答>
完了通知のみ
4)加工処理
<入力パラメータ>
機能名(例:画像フォーマット変換)
IPアドレス
パラメータ(入力画像のロケーション含む)
<応答>
入力によって生成された画像のロケーション
このため、フロー実行アプリ503は、入力パラメータを指定したフロー生成関数を呼び出すことにより、サービス連携部511に対してフロー生成要求を行う。また、フロー実行アプリ503は、入力パラメータを指定した入力処理関数を呼び出すことにより、デバイス操作部104に対してIPアドレスで指定された入力機器に対する入力処理要求を行う。また、フロー実行アプリ503は、入力パラメータを指定した出力処理関数を呼び出すことにより、デバイス操作部104に対してIPアドレスで指定された出力機器に対する出力処理要求を行う。さらに、フロー実行アプリ503は、入力パラメータを指定した加工処理関数を呼び出すことにより、デバイス操作部104に対してIPアドレスで指定されたサービスに対する加工処理要求を行う。
例えば、フロー実行アプリ503は、スキャンを指定した入力処理の関数呼び出しにより、複合機1によりスキャンされた画像データは記憶部105に保存されて、ロケーション情報が応答として返される。なお、画像データの実体を応答として返すように構成してもよい。
次に、フロー実行アプリ503は、投影と、画像データのロケーション情報をパラメータに指定した出力処理の関数呼び出しを行うことにより、記憶部105に保存された画像データがプロジェクタ2により投影される。
デバイス操作部104は、入力処理要求および出力処理要求の内容を解釈して、入力機器、出力機器への各操作を実行する。
このように、フロー実行アプリ503がAPIを用いた処理要求を行うことにより、フロー実行アプリ503は各機器の差異を意識することなく、各処理を実行させることができる。
次に、以上のように構成された本実施の形態の機器連携処理について具体例をあげて説明する。図6は、実施の形態2の連携処理のうち、機能実行要求から連携フローの提示までのシーケンス図である。ここでは、上述した「スキャン+投影」の機能実行要求がユーザから操作端末200に入力された場合を例にあげて説明する。
図7は、実施の形態2の機能実行要求の入力画面の一例を示す模式図である。情報処理装置500のUI部101は、図7に示す入力画面を操作端末200に表示し、ユーザはこの入力画面から所望の機能の実行要求を入力する。図7に示すように、ユーザは、所望の入力機能、入力機能のパラメータを指定する。また、ユーザは所望の出力機能、出力機能のパラメータを指定する。
図6に戻り、操作端末200は、上記の入力画面からユーザにより指定された「スキャン+投影」の機能実行要求を情報処理装置500に送信する(ステップS31)。
情報処理装置500のUI部101は、この機能実行要求を受信し、機能実行要求で指定された入力機能(スキャン)および出力機能(投影)、機能実行要求に指定があればそのパラメータ(モノクロ/カラー等の入力属性、投影属性等)を含むフロー生成要求をフロー実行アプリ503に送信する(ステップS32)。フロー実行アプリ503は、このフロー生成の要求を、APIを利用してサービス連携部511に送信する(ステップS33)。
サービス連携部511は、フロー実行アプリ503からフロー生成の要求を受信すると、機器検索部512に指示し、機器検索部512は、ネットワークに接続されている周辺の入力機器、出力機器である複合機1、プロジェクタ1、プロジェクタ2に能力情報取得要求を送信して(ステップS34、S36、S38)、各機器から能力情報を取得する(ステップS35、S37、S39)。
そして、サービス連携部511は、機器検索部512により取得された、これらの能力情報を比較して、機能実行要求で指定された入力機能、出力機能を実現可能な入力機器と出力機器の組み合わせおよび実行順番を示す連携フローを生成する(ステップS40)。
ここで、複合機1の能力情報が図6の符号601に示すとおりであり、プロジェクタ1の能力情報が、図6の符号602に示すとおりであり、プロジェクタ2の能力情報が、図6の符号603に示すとおりであったとする。図8は、複合機1とプロジェクタ1とプロジェクタ2との各能力情報とを比較して表形式にして説明するための図である。
図6、図8の例では、フロー生成の要求が「スキャン+投影」であるのに対して、複合機1が「スキャン」が可能であり、プロジェクタ1、プロジェクタ2が「投影」が可能である。また、複合機1ではスキャンの出力形式がJpegであるのに対して、プロジェクタ1では投影の入力形式がJpegである。このため、サービス連携部511は、「複合機1→プロジェクタ1」の連携フローを生成する。ここで、プロジェクタ2では投影の入力形式がTiffであるため、連携の対象外となる。なお、連携可能な組み合わせが複数存在する場合には、複数の連携フローが生成される。
連携フローは、図6の符号604に示すように、入力機器(複合機1)のIPアドレス、スキャン属性(カラー/モノクロ指定[fullcolor]、出力データ形式[Jpeg])、コメント、入力機器(複合機1)をパラメータとした入力機能の関数呼び出し(スキャン())と、出力機器(プロジェクタ1)のIPアドレス、投影属性、コメント、出力機器(プロジェクタ1)をパラメータとした出力機能の関数呼び出し(投影())が、実行する順番で指定される。
本実施の形態でも、連携フローでは、APIが提供する入力機能の関数(スキャン())、出力機能の関数(投影())がパラメータとともに記述される。
そして、サービス連携部511は、生成した連携フローをフロー実行アプリ503に送信する(ステップS41)。そして、フロー実行アプリ503は連携フローをUI部101に送信して(ステップS42)、UI部101がユーザの操作端末200に連携フローを表示する(ステップS43)。
図9は、UI部101により操作端末200に表示されるフロー選択画面の一例を示す模式図である。図6の例では、生成された連携フローが一つであるため、フロー選択画面には一つの連携フローしか表示されていないが、サービス連携部511で複数の連携フローが生成された場合には、フロー選択画面には生成された複数の連携フローが表示される。
図10は、実施の形態2の連携処理のうち、連携フローの選択から入力機器および出力機器の処理実行までのシーケンス図である。ユーザは、操作端末200において、図9に示す連携フロー選択画面から所望の連携フローを選択すると(ステップS51)、操作端末200はその選択を受け付けて情報処理装置500のUI部101に送信する(ステップS52)。
UI部101は、選択された連携フローの実行要求をフロー実行アプリ503に送信する(ステップS53)。
フロー実行アプリ503は、選択された連携フローで指定された関数呼び出しをAPIに対して行う。これにより、複合機1とプロジェクタ1を連携処理させる場合のパラメータ変更などを意識することなく連携させることが可能となる。
具体的には、フロー実行アプリ503は、受信した連携フローを参照して、パラメータが指定されている入力機能の関数(スキャン())呼び出しを行うことにより、APIを利用してデバイス操作部104に入力処理の要求を行う(ステップS54)。この入力処理の要求には、入力機能としてのスキャンと、カラー/モノクロ指定(Fullcolor)や出力データ形式(Jpeg)等のパラメータと、入力機器(複合機1)のIPアドレスが含まれる。
この入力処理の要求を受信したデバイス操作部104は、入力処理の要求で指定された入力機器(複合機1)に対して処理実行の要求を行う(ステップS55)。入力機器(複合機1)から処理の完了の通知がなされると(ステップS56)、デバイス操作部104は、完了通知とともに受信したスキャン画像データを記憶部105に保存する。そして、デバイス操作部104は、スキャン画像データのロケーション等のファイル情報をフロー実行アプリ103に送信する(ステップS57)。
フロー実行アプリ503は、ファイル情報を受信すると、ファイル情報をパラメータに指定して、連携フローに登録されている出力機能の関数(投影())呼び出しを行うことにより、APIを利用してデバイス操作部104に出力処理の要求を行う(ステップS58)。この出力処理の要求には、出力機能としての投影と、ファイル情報等のパラメータと、出力機器(プロジェクタ1)のIPアドレスとが含まれる。
この出力処理の要求を受信したデバイス操作部104は、出力処理の要求で指定された出力機器(プロジェクタ1)に対して処理実行要求を行う(ステップS59)。出力機器(プロジェクタ1)から処理の完了の通知がなされると(ステップS60)、デバイス操作部104は、完了通知をフロー実行アプリ503に送信し(ステップS61)、この完了通知は、フロー実行アプリ503からUI部101へ、UI部101から操作端末200へと順次送信される(ステップS62,63)。
このように本実施の形態では、ユーザから、入力機器、出力機器を指定せずに入出力にかかる機能実行要求があった場合に、機器検索部512によりネットワークも入力機器、出力機器に能力情報を問い合わせ、サービス連携部511により能力情報に基づいて連携可能な入力機器と出力機器の組み合わせおよび実行順を含む連携フローを生成し、フロー実行アプリ103で連携フローに基づいて入力機器、出力機器に対して処理実行要求を行うので、ユーザは入力機器、出力機器の存在や入力機器、出力機器の能力を把握していなくても、入力機器、出力機器を連携して所望の入出力処理を実行することができ、入力機器と出力機器の連携を容易に行うことができる。
また、本実施の形態では、フロー実行アプリ503がAPIを利用してサービス連携部511にフロー生成の要求を行い、またAPIを利用してデバイス操作部104に入力処理および出力処理の実行要求を行うので、入力機器と出力機器を連携処理させる場合のパラメータ変更などを意識することなく、容易に連携させることができる。
(実施の形態3)
実施の形態1、2では、ユーザからの機能実行要求によりフロー生成の要求があるごとに、入力機器、出力機器から能力情報を取得していたが、この実施の形態3では、入力機器、出力機器から取得した能力情報を保存しておき、次のフロー生成の要求があった場合には、保存していた能力情報を連携フローの生成に用いる。
図11は、実施の形態3の情報処理システムのネットワーク構成および情報処理装置の機能的構成を示すブロック図である。本実施の形態にかかる情報処理システムは、図11に示すように、情報処理装置1100と、操作端末200と、複数の入力機器および複数の出力機器としての複合機1、プロジェクタ1、プロジェクタ2がインターネットやLAN等のネットワークで接続された構成となっている。
ここで、操作端末200、複合機1、プロジェクタ1、プロジェクタ2の機能は実施の形態2と同様である。また、複合機1、プロジェクタ1、プロジェクタ2の能力は、実施の形態2の複合機1、プロジェクタ1、プロジェクタ2と同様である。
情報処理装置1100は、図11に示すように、APIを境界とした上位の層に、UI部101と、フロー実行アプリ503と、アプリケーション102とを有する。また、APIを境界とした下位の層に、機器検索/サービス連携部1110と、デバイス操作部104と、記憶部105とを主に備えている。
ここで、UI部101、フロー実行アプリ503、デバイス操作部104、記憶部105の機能および構成は実施の形態2と同様である。
また、本実施の形態では、実施の形態2と同様に、UI部101は、操作端末200から、入力機能を実行する入力機器、出力機能を実行する出力機器の指定が含まれず、所望の入力機能、出力機能が含まれる機能実行要求を受信する。
機器検索/サービス連携部1110は、サービス連携部1111と、機器検索部512と、能力管理部1113とを主に備えている。ここで、機器検索部512の機能および構成は実施の形態2と同様である。
能力管理部1113は、機器検索部512より受信した能力情報を保存するハードディスクドライブ装置(HDD)、フラッシュメモリ等の記憶媒体である。
サービス連携部1111は、機器検索部512により受信した能力情報を能力管理部1113に保存する。また、機器検索部512により受信した能力情報または能力管理部1113に記憶された能力情報に基づいて、ユーザからの機能実行要求に対して連携可能な入力機器、出力機器を指定した連携フローを生成する。
より具体的には、サービス連携部1111は、能力管理部1113に能力情報が登録されている場合に、能力管理部1113の能力情報に基づいて連携フローを生成する。一方、サービス連携部1111は、能力管理部1113に能力情報が登録されていない場合、あるいは能力管理部1113に保存されている能力情報が現在の入力機器や出力機器の能力に一致しない場合に、機器検索部512に入力機器、出力機器に対する能力情報の取得を行わせ、機器検索部512により受信した能力情報に基づいて連携フローを生成する。ここで、連携フローの具体的な生成手法については実施の形態2と同様である。
次に、以上のように構成された本実施の形態の機器連携処理について具体例をあげて説明する。図12は、実施の形態3の連携処理のうち、機能実行要求から連携フローの提示までのシーケンス図である。ここでは、「スキャン+投影」の機能実行要求がユーザから操作端末200に入力された場合を例にあげて説明する。
ユーザの操作端末200による機能実行要求から複合機1、プロジェクタ1,プロジェクタ2からの能力情報取得、フロー生成までの処理(ステップS31〜S40)は、実施の形態2と同様である。
能力情報を取得し、フローが生成されたら、サービス連携部1111は、取得した能力情報を能力管理部1113に保存する(ステップS1201)。能力情報は、上述した図8のような形式で能力管理部1113に保存される。
そして、サービス連携部1111は、取得した能力情報に基づいて、実施の形態2と同様に連携フローを生成し(ステップS40)、これ以降は実施の形態2と同様に、生成された連携フローが操作端末200に表示される(ステップS41〜S43)。
このように能力管理部1113に保存した能力情報は次のように利用することができる。図13は、実施の形態3の連携処理のうち、能力管理部1113に保存された能力情報を利用した、機能実行要求から連携フローの提示までのシーケンス図である。
ユーザの操作端末200による機能実行要求からフロー実行アプリ503によるフロー生成の要求までの処理(ステップS31〜S33)は、実施の形態2と同様である。
サービス連携部1111は、フロー実行アプリ503からフロー生成の要求を受信したら、機器検索部512により入力機器、出力機器に対する能力情報の取得要求を行う代わりに、能力管理部1113に保存されている入力機器、出力機器の能力情報を読み出す(ステップS1301)。そして、サービス連携部1111は、読み出した能力情報に基づいて、実施の形態2と同様に連携フローを生成し(ステップS40)、これ以降は実施の形態2と同様に、生成された連携フローが操作端末200に表示される(ステップS41〜S43)。
このように本実施の形態では、機器検索部512により取得した能力情報を能力管理部1113に保存し、次回以降のフロー生成に能力管理部1113に保存した能力情報を利用して連携フローの生成を行うので、入力機器、出力機器の連携処理の高速化を図ることができる。
(実施の形態4)
実施の形態1〜3では、入力機器と出力機器との連携を行っていた。この実施の形態4では、さらに、クラウドコンピュータ上のサービス(以下、「クラウドサービス」という。)も入力機器と出力機器と連携可能にしている。
また、実施の形態1〜3では、デバイス操作部104が実際の入力機器や出力機器の利用方法を把握しており、クラウドサービスが情報処理装置の提供元である自社製品である場合もデバイス操作部104がその利用方法を把握している。しかしながら、自社製品ではないサードベンダがクラウドサービスまでも接続しようとした場合、それらは増加スピードも速いこともあり、サードベンダのクラウドサービスに接続する処理部分を常に情報処理装置に搭載することは難しい。
このため、この実施の形態4では、API上にサードベンダが開発するカスタムアプリケーションを搭載可能とし、このカスタムアプリケーションによりサードベンダのクラウドサービスに接続可能としている。
図14は、実施の形態4の情報処理システムのネットワーク構成および情報処理装置の機能的構成を示すブロック図である。本実施の形態にかかる情報処理システムは、図14に示すように、情報処理装置1400と、操作端末200と、複数の入力機器および複数の出力機器としての複合機1、プロジェクタ1、プロジェクタ2がインターネットやLAN等のネットワークで接続された構成となっている。また、情報処理装置1400は、情報処理装置1400の製造メーカが提供するデータ変換サービス2を含むクラウドコンピュータ700と、サードベンダが提供するデータ変換サービス1を含むクラウドコンピュータ600ともインターネット等のネットワークで接続可能となっている。
ここで、操作端末200、複合機1、プロジェクタ1、プロジェクタ2の機能は実施の形態2と同様である。また、複合機1、プロジェクタ1、プロジェクタ2の能力は、実施の形態2の複合機1、プロジェクタ1、プロジェクタ2と同様である。
情報処理装置1400は、図14に示すように、APIを境界とした上位の層に、UI部101と、フロー実行アプリ503と、アプリケーション102と、カスタムアプリケーション1403を有する。また、APIを境界とした下位の層に、機器検索/サービス連携部1410と、デバイス操作部104と、記憶部105とを主に備えている。
ここで、UI部101、フロー実行アプリ503、デバイス操作部104、記憶部105の機能および構成は実施の形態2と同様である。
また、本実施の形態では、実施の形態2と同様に、UI部101は、操作端末200から、入力機能を実行する入力機器、出力機能を実行する出力機器の指定が含まれず、所望の入力機能、出力機能が含まれる機能実行要求を受信する。
また、フロー実行アプリ503からサービス連携部1411へ送信されるフロー生成の要求には、符号1402に示すように、データ変換サービス1によるデータ変換を示す「変換1」が含まれる。
カスタムアプリケーション1403は、情報処理装置1400が把握していないサードベンダのクラウドサービスであるデータ変換サービス1のデータ変換サービス1へ接続を実施するためのアプリケーションである。カスタムアプリケーション1403は、データ変換サービス(変換1)に接続するための方法を把握している。従って、図14において、点線で囲んだカスタムアプリケーション1403とクラウドサービス600とがサードベンダが提供するものとなる。
また、カスタムアプリケーション1403は、データ変換サービス1の機能提供を可能にするため、APIで定義された「加工処理」(実施の形態2で詳述)のインタフェイスを提供する。この加工処理のAPIは、自社のクラウドサービスであるデータ変換サービス2を利用する場合にも使用される。
機器検索/サービス連携部1410は、サービス連携部1411と、機器検索部512と、能力管理部1113とを主に備えている。ここで、機器検索部512、能力管理部1113の機能および構成は実施の形態3と同様である。
本実施の形態では、機器検索部512は、サードベンダのデータ変換サービス1に対するインタフェイスを知らないため、データ変換サービス1に対し能力情報の取得要求を行うことができない。このため、APIは、実施の形態2で説明した能力管理部1113にアクセスするための関数「能力情報登録」を提供しており、これにより、カスタムアプリケーション1403が、能力登録関数の呼び出しにより、APIを利用して、データ変換サービス1の能力情報を能力管理部1113に保存可能となっている。ここで、データ変換サービス1の能力情報の例を符号1401に示す。
また、サービス連携部1411は、自社のクラウドサービス700の能力情報を能力管理部1113に保存する。その他のサービス連携部1411の機能は、実施の形態3と同様である。
このように本実施の形態では、API上にサードベンダが開発するカスタムアプリケーションを搭載可能としているので、入出機器、出力機器だけでなく、クラウドサービスとの連携も容易に行うことができる。
(実施の形態5)
実施の形態5では、連携フローをサービス連携部で生成する代わりに、入力機器と出力機器の連携可能な組み合わせを操作端末に提示してユーザ側で組み合わせの決定を行うものである。すなわち、本実施の形態では、ユーザの指定により連携フローを構築する。
本実施の形態の情報処理装置1400は、図14を用いて説明した実施の形態4と同様の構成とする。
本実施の形態のサービス連携部1411は、連携フローに代えて、機能実行要求で指定された入力機能を有する1または複数の入力機器の一覧と、機能実行要求で指定された出力機能を有する1または複数の出力機器の一覧とを生成する。
また、UI部101は、1または複数の入力機器の一覧と前記1または複数の出力機器の一覧とを操作端末200に表示し、ユーザから1または複数の入力機器の一覧の中から1の入力機器と1または複数の出力機器の一覧の中から1の出力機器との選択を受け付ける。
フロー実行アプリ503は、選択された入力機器および出力機器それぞれからなる連携フローを生成し、この連携フローに従って、選択された入力機器、出力機器に対して処理要求を行う。
また、UI部101は、ユーザにより選択された入力機器と出力機器とが連携不能な場合に、ネットワークに接続され、入力機器から出力されるデータを出力機器の能力情報に適したデータに加工するデータ変換サービス等による加工処理を選択させる。
この場合、フロー実行アプリ503は、選択された入力機器、選択された加工処理および選択された出力機器を含む連携フローを生成し各機器、サービスに対して処理要求を行う。
例えば、サービス連携部1411が「スキャン+投影」のフロー生成の要求をフロー実行アプリ503から受信した場合、図15に示す応答を生成し、フロー実行アプリ503に送信する。
この応答は、図15に示すように、各機器やサービスの名称、それぞれの入力/出力の対応形式を示し、Firstは指定された連携フローの入力に該当する機能(本例では、「スキャン」)、Lastは指定された連携フローの出力に該当する機能(本例では「投影」)をそれぞれ示す。
フロー実行アプリ503が図15に示す応答を受信した場合、UI部101は、図16に示すフロー選択画面を操作端末200に表示する。
このフロー選択画面において、ユーザが入力機器、出力機器を選択することができる。ここで、例えば、複合機1と、プロジェクタ1が選択された場合、図15の応答に示すように、複合機1の出力がJpegで、プロジェクタ1の入力がJpegなので、フロー実行アプリ503は、そのまま「スキャン+投影」の連携フローを構築して実行する。
しかし、フロー選択画面で、複合機1とプロジェクタ3が選択された場合には、図15の応答から、プロジェクタ3の入力がPDFであるため、そのままでは連携することができない。
このため、本実施の形態のフロー実行アプリ503は、図17に示すように、複合機1の出力であるJpegと、プロジェクタ3の入力であるPDFを変換可能な(すなわち、入力がJpegであり、出力がPDFである)加工1と加工2を、接続するために必要な処理としてフロー選択画面に表示し、ユーザに選択させる。
この場合、ユーザが加工1を選択したとすると、フロー実行アプリ503は、複合機1→[Jpeg]→加工1→[PDF]→プロジェクタ3の連携フローを構築して実行する。
また、他の態様としては、入力機器側から順番にユーザに選択させるように構成することもできる。この場合、サービス連携部1411からフロー実行アプリ503への応答のデータ構造を以下のように構成する。
複合機1=>[加工1,加工2]
複合機2=>[加工2,加工3]
加工1=>[プロジェクタ1]
加工2=>[プロジェクタ1,プロジェクタ2]
加工3=>[プロジェクタ2,プロジェクタ3]
図18は、フロー選択画面の遷移を示す図である。UI部101は、まず、入力機器として、複合機1、複合機2のいずれかを選択させるための画面を表示し、ユーザによる選択に併せて、加工1,加工2の選択画面、プロジェクタ1、プロジェクタ2の選択画面を順次、操作端末200に表示する。そして、フロー実行アプリ503は、選択された機器による連携フローを生成する。
このように本実施の形態では、ユーザからの選択により、連携する機器やサービスが決定されるので、連携の自由度を広げることが可能となる。
(実施の形態6)
実施の形態6は、実施の形態4におけるクラウドサービスの能力情報にサービスによる処理時間を含むものである。
図19は、実施の形態6の情報処理システムのネットワーク構成および情報処理装置の機能的構成を示すブロック図である。本実施の形態にかかる情報処理システムは、図19に示すように、情報処理装置1900と、操作端末200と、複数の入力機器および複数の出力機器としての複合機1、プロジェクタ1、プロジェクタ2がインターネットやLAN等のネットワークで接続された構成となっている。また、情報処理装置1900は、情報処理装置1400の製造メーカが提供するデータ変換サービス2を含むクラウドサービス700と、サードベンダが提供するデータ変換サービス1を含むクラウドサービス600ともインターネット等のネットワークで接続可能となっている。
ここで、操作端末200、複合機1、プロジェクタ1、プロジェクタ2、クラウドサービス600、クラウドサービス700の機能は実施の形態4と同様である。
情報処理装置1900は、図19に示すように、APIを境界とした上位の層に、UI部101と、フロー実行アプリ503と、アプリケーション102と、カスタムアプリケーション1903とを有する。また、APIを境界とした下位の層に、機器検索/サービス連携部1910と、デバイス操作部104と、記憶部105とを主に備えている。
ここで、UI部101、フロー実行アプリ503、デバイス操作部104、記憶部105、アプリケーション102の機能および構成は実施の形態2と同様である。
本実施の形態のカスタムアプリケーション1903は、データ変換サービス1の能力情報として、実施の形態4の能力情報の内容に加えて、データ変換サービス1による平均処理時間を登録して、APIを利用し能力管理部1913に保存する。符号1901は、本実施の形態の能力情報の一例を示している。
機器検索/サービス連携部1910は、図19に示すように、サービス連携部1411と、機器検索部512と、能力管理部1913とを主に備えている。ここで、機器検索部512、能力管理部1913の機能および構成は実施の形態4と同様である。
サービス連携部1411は、データ変換サービス1を用いた連携フローを生成する場合には、カスタムアプリケーション1903により能力管理部1913に保存された能力情報の平均処理時間を抽出して、実施の形態4と同様にデータ変換サービス1によるデータ変換を示す「変換1」と平均処理時間を含めて連携フローを生成する。符号1902は、連携フローの一例であり、処理時間が登録されている。この例では、クラウドサービス600のデータ変換サービス1が追加された連携フローは、これを含まない連携フローによる処理より、5秒処理時間が長くなる可能性があることを示している。
同様の情報を、機器検索部512による各入力機器、出力機器の機器検索での問い合わせの応答である能力情報に付加するように構成してもよい。また、連携フローの一連の処理に要する時間の目安を連携フローに含ませることもできる。
このように本実施の形態では、連携フローに処理時間を含めているので、ユーザは、複数の連携フローが提示された場合に、連携フローを選択する要素として機器やサービスだけでなく、その処理時間を考慮に入れて判断することが可能となる。
(実施の形態7)
実施の形態7は、ユーザからの機能実行要求に操作端末200の位置情報を含め、この位置情報を利用して機器検索を行うものである。
図20は、実施の形態7の情報処理システムのネットワーク構成および情報処理装置の機能的構成を示すブロック図である。本実施の形態にかかる情報処理システムは、図20に示すように、情報処理装置2000と、操作端末200と、複数の入力機器および複数の出力機器としての複合機1、プロジェクタ1、プロジェクタ2がインターネットやLAN等のネットワークで接続された構成となっている。また、情報処理装置2000は、情報処理装置1400の製造メーカが提供するデータ変換サービス2を含むクラウドサービス700ともインターネット等のネットワークで接続可能となっている。
ここで、操作端末200、複合機1、プロジェクタ1、プロジェクタ2、クラウドサービス700の機能は実施の形態4と同様である。
情報処理装置2000は、図20に示すように、APIを境界とした上位の層に、UI部101と、フロー実行アプリ503と、アプリケーション102とを有する。また、APIを境界とした下位の層に、機器検索/サービス連携部2010と、デバイス操作部104と、記憶部105とを主に備えている。
ここで、UI部101、デバイス操作部104、記憶部105、アプリケーション102の機能および構成は実施の形態2と同様である。
本実施の形態では、UI部101は、操作端末200から、入力機能を実行する入力機器、出力機能を実行する出力機器の指定が含まれず、所望の入力機能、出力機能の他、操作端末200の位置情報を含む機能実行要求を受信する。ここで、位置情報としては、GPS等で取得した緯度・経度からなる位置座標等が該当するが、これに限定されるものではない。
フロー実行アプリ503は、機能要求に含まれる入力機能、出力機能、位置情報を指定したフロー生成の要求をサービス連携部2011に送信する。このため、本実施の形態のAPIの各関数には、パラメータとして位置情報が指定できる仕様となっている。
機器検索/サービス連携部2010は、図20に示すように、サービス連携部2011と、機器検索部512と、能力管理部1113とを主に備えている。ここで、機器検索部512、能力管理部1113の機能および構成は実施の形態4と同様である。
ただし、能力管理部1113は、能力情報に含まれる入力機器、出力機器の位置情報も保存する。ここで、位置情報は、機器検索部512が能力情報の一部として取得する他、予め管理者等により登録しておくことが可能である。
機器検索部512が能力情報の問い合わせにより受信する能力情報には、各機器の位置情報が含まれる。
サービス連携部2011は、取得した能力情報により、連携可能な入力機器と出力機器との組み合わせであって、操作端末の位置情報から所定の範囲内の位置情報を有する入力機器、出力機器の組み合わせを抽出して、連携フローを生成する。
次に、以上のように構成された本実施の形態の機器連携処理について具体例をあげて説明する。図21は、実施の形態7の連携処理のうち、機能実行要求から連携フローの提示までのシーケンス図である。ここでは、「スキャン+投影+位置情報」の機能実行要求がユーザから操作端末200に入力された場合を例にあげて説明する。
操作端末200は、ユーザにより指定された「スキャン+投影+位置情報」の機能実行要求を情報処理装置2000に送信する(ステップS71)。
情報処理装置2000のUI部101は、この機能実行要求を受信し、機能実行要求で指定された入力機能(スキャン)および出力機能(投影)、機能実行要求に指定があればそのパラメータ(モノクロ/カラー等の入力属性、投影属性等)、位置情報を含むフロー生成要求をフロー実行アプリ503に送信する(ステップS72)。フロー実行アプリ503は、このフロー生成の要求を、APIを利用してサービス連携部2011に送信する(ステップS73)。
サービス連携部2011は、フロー実行アプリ503からフロー生成の要求を受信すると、機器検索部512に指示し、機器検索部512は、ネットワークに接続されている周辺の入力機器、出力機器である複合機1、プロジェクタ1、プロジェクタ2に能力情報取得要求を送信して(ステップS74、S76、S78)、各機器から能力情報を取得する(ステップS75、S77、S79)。これらの能力情報には、各機器の位置情報が含まれている(符号2101、2102、2103参照)。
そして、サービス連携部2011は、機器検索部512により取得された、これらの能力情報を比較して、機能実行要求で指定された入力機能、出力機能を実現可能な入力機器と出力機器の組み合わせを求め、この組み合わせの中から、さらに操作端末200と所定の範囲内の位置情報を有する入力機器、出力機器の組み合わせを選択し、その実行順番を示す連携フローを生成する(ステップS80)。以降の処理(ステップS80〜S83)は、実施の形態2と同様である。
このように本実施の形態では、機能実行要求に操作端末200の位置情報を指定して、サービス連携部2011により連携フローを生成する際に、操作端末200の位置情報から所定範囲内の位置情報を有する機器の組み合わせを抽出しているので、操作端末200の近くでユーザが指定して入出力機能を実行して、入力機器と出力機器の連携を図り、ユーザが求める結果を早期に得ることができる。
(変形例)
実施の形態7では、機器検索部512により入力機器、出力機器の能力情報を取得して、サービス連携部2011により連携フローを生成する際に、操作端末200の位置情報から所定範囲内の位置情報を有する機器の組み合わせを抽出していたが、入力機器、出力機器の位置情報が予めわかっている場合には、機器検索部512により能力情報の取得要求をする際に、操作端末200の位置情報から所定範囲内の位置情報の入力機器、出力機器を選択して能力情報の取得要求を行うように構成してもよい。
図22は、実施の形態7の変形例の連携処理のうち、機能実行要求から連携フローの提示までのシーケンス図である。この例では、位置情報としてIPアドレスを用い、入力機器、出力機器のIPアドレスが能力管理部1113に予め登録されているものとする。また、「スキャン+投影+操作端末IPアドレス」の機能実行要求がユーザから操作端末200に入力されたものとする。
操作端末200は、ユーザにより指定された「スキャン+投影+操作端末IPアドレス」の機能実行要求を情報処理装置2000に送信する(ステップS91)。
情報処理装置2000のUI部101は、この機能実行要求を受信し、機能実行要求で指定された入力機能(スキャン)および出力機能(投影)、機能実行要求に指定があればそのパラメータ(モノクロ/カラー等の入力属性、投影属性等)、操作端末IPアドレスを含むフロー生成要求をフロー実行アプリ503に送信する(ステップS92)。フロー実行アプリ503は、このフロー生成の要求を、APIを利用してサービス連携部2011に送信する(ステップS93)。
サービス連携部2011は、フロー実行アプリ503からフロー生成の要求を受信すると、機器検索部512に指示し、機器検索部512は、能力管理部1113を参照し、ネットワークに接続されている周辺の入力機器、出力機器である複合機1、プロジェクタ1、プロジェクタ2の中から、フロー生成の要求で指定された操作端末IPアドレスと一定条件(例えば、同一セグメントや所定の範囲内)を満たすIPアドレスを有する機器を選択し、選択された機器に対し能力取得要求を行う。
本例では、機器検索部512は、IPアドレスが「192.168.11.**」である入力機器、出力機器を選択する。この結果、IPアドレスが「192.168.11.2」の複合機1と、IPアドレスが「192.168.11.50」のプロジェクタ1を選択し、それぞれに対して能力情報要求を送信し(ステップS94、S96)、複合機1、プロジェクタ1のそれぞれから能力情報を取得する(ステップS95、S97)。
ここで、プロジェクタ2はIPアドレスが「192.168.12.200」であるため、選択されず能力情報取得要求は送信されない。
これ以降は、サービス連携部2011は、実施の形態2と同様に、取得した能力情報に基づいて連携フローを生成し(ステップS98)、以降の処理(ステップS99〜S101)は、実施の形態2と同様である。
このように本変形例では、機器検索部512により能力情報の取得要求をする際に、操作端末200の位置情報から所定範囲内の位置情報の入力機器、出力機器を選択して能力情報の取得要求を行って連携フローを生成しているので、実施の形態7と同様の効果を有する他、ネットワーク負荷を軽減することができる。
(実施の形態8)
実施の形態8は、操作端末を所持するユーザが会議室へ入室した場合に、会議室内のプロジェクタ等の機器に操作端末をダイレクトに接続して、機器のIDを取得し、そのIDを指定して情報処理装置に機能実行要求を行って、機器による入力機能、出力機能を行わせるものである。
図23は、実施の形態8のネットワーク構成および情報処理装置の機能的構成を示すブロック図である。図23に示すように、本実施の形態の情報処理システムは、情報処理装置1100と、操作端末2300と、複合機1、プロジェクタ1、プロジェクタ2等の入出力機器とを備えた構成となっている。ここで、本実施の形態の情報処理装置1100は、実施の形態3と同様の構成および機能を有している。
操作端末2300は、ユーザが所持可能な端末であり、例えば、スマートフォンや携帯電話等の携帯端末、タブレット等が該当するがこれらに限定されるものではない。操作端末2300は、図23に示すように、UI部2301と、機器検索部2302と、実行要求部2303を備えている。
UI部2301は、ユーザに対して各種画面を表示したり、ユーザからの各種操作を受け付ける。
機器検索部2302は、ネットワーク内にある複合機1、プロジェクタ1、プロジェクタ2等の入出力機器を検索し、検索された入出力機器とのアドホックなネットワーク接続を確立する。また、機器検索部2301は、アドホックなネットワーク接続を確立した入出力機器に、機器を識別するための識別情報であるIDを要求し、当該IDを受信する。
実行要求部2303は、IDを指定した機能実行要求を、情報処理装置1100に対して送信する。
複合機1、プロジェクタ1、プロジェクタ2等の入出力機器は、操作端末2300からIDの要求を受信したら、自己のIDを操作端末2300に送信する。
情報処理装置1100は、操作端末2300から機能実行要求を受信したら、実施の形態3と同様の処理により、入出力機器に各機能を実行させる。
次に、以上のように構成された本実施の形態の情報処理システムによる機能実行処理について説明する。図24は、実施の形態8の機能実行処理のシーケンス図である。図24の例では、入出力機器としてプロジェクタ1を用いる場合を説明するが、他の機器であっても同様に行われる。
まず、操作端末2300の機器検索部2302は、ネットワーク内で機器を検索し、プロジェクタ1とアドホックなネットワークを確立する(ステップS2401)。次に、操作端末2300の機器検索部2302は、アドホックなネットワークを確立したプロジェクタ1に対してプロジェクタ1のIDを要求する(ステップS2402)。
IDの要求を受信したプロジェクタ1は、自己のIDを操作端末2300に送信する(ステップS2403)。
操作端末2300は、プロジェクタ1のIDを受信すると、情報処理装置1100に対して、IDを指定した機能実行要求を送信する(ステップS2404)。これにより、機能実行要求を受信した情報処理装置1100は、実施の形態3と同様に、プロジェクタ1に対して投影を実行させることになる。
このように本実施の形態では、操作端末2300がプロジェクタ1とアドホックなネットワーク接続により、IDを取得して、そのIDを指定して情報処理装置1100に機能実行要求を行ってプロジェクタ1に投影処理を実行させているので、会議室に入ってきたユーザが会議室にあるプロジェクタ1を用いたい場合でも、プロジェクタ1のIPアドレスを知らずとも、プロジェクタ1に所望の画像や文書などを投影させることができ、ユーザの便宜となる。
(実施の形態9)
実施の形態9は、操作端末を所持するユーザが会議室へ入室した場合に、会議室内のプロジェクタ等の機器に操作端末をダイレクトに接続して、操作端末から直接、機器による入力機能、出力機能を行わせるものである。
図25は、実施の形態9のネットワーク構成および情報処理装置の機能的構成を示すブロック図である。図25に示すように、本実施の形態の情報処理システムは、情報処理装置1100と、操作端末2500と、複合機1、プロジェクタ1、プロジェクタ2等の入出力機器とを備えた構成となっている。ここで、本実施の形態の情報処理装置1100は、実施の形態3と同様の構成および機能を有している。
操作端末2500は、ユーザが所持可能な端末であり、例えば、スマートフォンや携帯電話等の携帯端末、タブレット等が該当するがこれらに限定されるものではない。操作端末2500は、図25に示すように、UI部2301と、機器検索部2502と、アプリケーション2501とを備えている。ここで、UI部2301の機能については実施の形態8と同様である。
機器検索部2502は、実施の形態8と同様に、ネットワーク内で、複合機1、プロジェクタ1、プロジェクタ2等の入出力機器を検索し、検索された入出力機器とのアドホックなネットワーク接続を確立する。また、本実施の形態の機器検索部2502は、アドホックなネットワーク接続を確立した入出力機器から、入出力機器における機能を実行するためのコマンドを受信する。このコマンドには、入出力機器のURI(Uniform Resource Identifier)が含まれている。
アプリケーション2501は、複合機1、プロジェクタ1、プロジェクタ2等の入出力機器に対して、URIを含むコマンドを発行する。
複合機1、プロジェクタ1、プロジェクタ2等の入出力機器は、操作端末2500の機器検索部2502からコマンドを要求された場合に、URIを含むコマンドを操作端末2500に送信する。また、入出力機器は、操作端末2500のアプリケーション2501からコマンドを発行されたら、各機能を実行する。
次に、以上のように構成された本実施の形態の情報処理システムによる機能実行処理について説明する。図26は、実施の形態9の機能実行処理のシーケンス図である。図26の例では、入出力機器としてプロジェクタ1を用いる場合を説明するが、他の機器であっても同様に行われる。
まず、操作端末2500の機器検索部2502は、ネットワーク内で機器を検索し、プロジェクタ1とアドホックなネットワークを確立する(ステップS2601)。次に、操作端末2500の機器検索部2502は、アドホックなネットワークを確立したプロジェクタ1に対してプロジェクタ1の投影機能を実行するためのURIを含むコマンドを要求する(ステップS2602)。
コマンドの要求を受信したプロジェクタ1は、投影機能を実行するためのURIを含むコマンドを操作端末2500に送信する(ステップS2603)。
操作端末2500は、プロジェクタ1からコマンドを受信すると、URIを指定してコマンドをプロジェクタ1に発行する(ステップS2604)。これにより、プロジェクタ1では、投影処理が実行される(ステップS2605)。
このように本実施の形態では、操作端末2500がプロジェクタ1とアドホックなネットワーク接続により、機能実行のためのコマンドを取得して、そのコマンドを発行することにより、プロジェクタ1に投影処理を実行させているので、会議室に入ってきたユーザが会議室にあるプロジェクタ1を用いたい場合でも、プロジェクタ1のIPアドレスを知らずとも、プロジェクタ1に所望の画像や文書などを投影させることができ、ユーザの便宜となる。
(実施の形態10)
図27は、実施の形態10のネットワーク構成図である。本実施の形態の情報処理システムは、図27に示すように、3つの情報処理装置2700,2800,2900と、複合機1、プロジェクタ1、プロジェクタ2等の入出力機器とから構成される。
図27に示すように、情報処理装置2800と複合機1、プロジェクタ1、プロジェクタ2等の入出力機器とは、ローカルネットワーク1(第1ネットワーク)内で接続されている。また、情報処理装置2700は、パブリックネットワーク(第2ネットワーク)内に存在する。情報処理装置2900は、ローカルネットワーク2(第3ネットワーク)内に存在する。
そして、情報処理装置2800と情報処理装置2700は互いにアクセス可能であり、情報処理装置2900と情報処理装置2700も互いにアクセス可能である。ここで、会議室には、情報処理装置2800と、複合機1、プロジェクタ1、プロジェクタ2等の入出力機器とがあり、ローカルネットワーク1で接続されているものとする。そして、このとき、操作端末2300を所持するユーザが会議室に入室し、会議室内の入出力機器を使用するものとする。本実施の形態では、操作端末2300から会議室内の入出力機器を使用するために、操作端末2300がパブリックネットワーク内の情報処理装置2700に接続する。以下、詳細に説明する。
図28は、実施の形態10のパブリックネットワーク内の情報処置装置2700の機能的構成を示すブロック図である。本実施の形態の情報処理装置2700は、図28に示すように、UI部101と、アプリケーション102と、フロー実行アプリ503と、デバイス操作部104と、サービス連携部1111と、能力管理部1113と、記憶部2720と、管理部2730と、キュー2740とを主に備えている。ここで、UI部101、アプリケーション102、デバイス操作部104、フロー実行アプリ503、サービス連携部1111、能力管理部1113の機能、構成は実施の形態3と同様である。また、情報処理装置2700は、実施の形態3と同様のAPIも有している。
本実施の形態の管理部2730は、ローカルネットワーク1の情報処理装置2800から、ローカルネットワーク1内で情報処理装置2800に接続された入出力機器の能力情報を受信し、能力管理部1113を介して記憶部2720に保存する。また、管理部2730は、ローカルネットワーク2内の情報処理装置2900からデータ変換サービスの能力情報を受信して、記憶部2720に保存する。ここで、記憶部2720は、能力情報を保存するHDD、メモリ等の記憶媒体である。
また、管理部2730は、サービス連携部1111で生成された連携フローを実行する際に、連携フローに登録された処理をキュー2740に一時的に保存する。さらに、管理部2730は、キュー2740に保存された処理を読み出して、処理に応じて、ローカルネットワーク1の情報処理装置2800に入力処理、出力処理の要求を行ったり、ローカルネットワーク2の情報処理装置2900に加工処理の要求を行う。キュー2740は、先入れ先出し方式(FIFO:First In−First Out)のキューであり、メモリ等の記憶媒体上に生成される。
図29は、実施の形態10のローカルネットワーク1内の情報処理装置2800の機能的構成を示すブロック図である。本実施の形態の情報処理装置2800は、図29に示すように、UI部101と、アプリケーション102と、フロー実行アプリ503と、デバイス操作部104と、記憶部105と、機器検索部512、サービス連携部1111および能力管理部1113を含む機器検索/サービス連携部1110と、クライアント部2801とを主に備えている。ここで、UI部101、アプリケーション102、フロー実行アプリ503、デバイス操作部104、記憶部105、機器検索部512、サービス連携部1111、能力管理部1113の機能、構成は実施の形態3と同様である。また、情報処理装置2800は、実施の形態3と同様のAPIも有している。
クライアント部2801は、能力管理部1113が取得した入出力機器の能力情報を、パブリックネットワーク内の情報処理装置2700で一定期間ごとに送信する。また、クライアント部2801は、パブリックネットワーク内の情報処理装置2700から、入力処理の要求、出力処理の要求を受信し、これらの要求をデバイス操作部104に渡して各処理を実行させる。
また、実施の形態1と同様に、プロジェクタ1はJpeg形式の画像データの投影が可能であり、プロジェクタ1はTiff形式の画像データの投影が可能であるものとする。
図30は、ローカルネットワーク2内の情報処理装置2900の機能的構成を示すブロック図である。本実施の形態の情報処理装置2900は、図30に示すように、クライアント部2901と、機器検索/サービス連携部2910と、データ変換サービス2920とを主に備えている。
クライアント部2901は、データ変換サービス2920の能力情報をパブリックネットワーク内の情報処理装置2700に送信する。また、クライアント部2901は、パブリックネットワーク内の情報処理装置2700から加工処理の要求を受信し、機器検索/サービス連携部2910に受け渡す。
機器検索/サービス連携部2910は、クライアント部2901から加工処理の要求を受け取り、データ変換サービス2920にデータ変換を実行させる。また、機器検索/サービス連携部2910は、データ変換サービス2920から能力情報を取得してクライアント部2901に受け渡す。
次に、以上のように構成された本実施の形態の情報処理システムによる連携フロー生成処理について説明する。図31は、実施の形態10の連携フロー生成処理の手順を示すシーケンス図である。
ローカルネットワーク1の情報処理装置2800の機器検索/サービス連携部1110は、複合機1、プロジェクタ1、プロジェクタ2等のローカルネットワーク1内の入出力機器から能力情報を収集する(ステップS3101a,S3101b,S3101c)。そして、情報処理装置2800の機器検索/サービス連携部1110は、収集した能力情報を記憶部105に登録(保存)する(ステップS3102)。
そして、機器検索/サービス連携部1110は、記憶部105に保存された能力情報を一定期間ごとに読み出して、クライアント部2801に送出する(ステップS3103)。クライアント部2801は、機器検索/サービス連携部1110から受け取った能力情報を一定期間ごとに、パブリックナネットワークの情報処理装置2700に送信する(ステップS3104)。
パブリックネットワーク内の情報処理装置2700では、管理部2730がローカルネットワーク1の情報処理装置2800から送信された能力情報を受信し、能力管理部1113が受信した能力情報を記憶部2720に登録(保存)する(ステップS3105)。
一方、会議室に入室したユーザにより操作端末2300から機能実行要求をパブリックネットワークの情報処理装置2700に対して送信する(ステップS3110)。ここで、一例として、機能実行要求は、プロジェクタ1のIDを指定した投影の実行要求を例に挙げて説明する。すなわち、操作端末2300は、機能実行要求「ファイル+投影(プロジェクタ1のID)」を情報処理装置2700に送信するものとする。ここで、ファイルは、PDF形式の投影対象の画像データであるとする。なお、操作端末2300は、プロジェクタ1のIDを実施の形態8と同様の手法で取得しているものとする。
機能実行要求を受信した情報処理装置2700によるフロー生成処理は、実施の形態3と同様に行われる。すなわち、機能実行要求を情報処理装置2700のUI部101で受信し、UI部101はフロー生成要求をフロー実行アプリ503に送信する(ステップS3111)。フロー実行アプリ503は、受信したフロー生成要求をサービス連携部1111に送信する(ステップS3112)。
サービス連携部1111は、フロー生成要求を受信すると、記憶部105の能力情報を読み込んで(ステップS3113)、能力情報に基づいて連携フローを生成する(ステップS3114)。この例の機能実行要求「ファイル+投影(プロジェクタ1のID)」では、ファイルがPDF形式の画像データであり、プロジェクタ1の能力情報では出力形式はJpegであるため、ファイルをJpeg形式に変換する必要がある。このため、サービス連携部1111は、ローカルネットワーク2の情報処理装置2900のデータ変換サービス2920の能力情報を参照して、投影の出力処理だけではなく、データ変換サービス2920によるデータ変換を加工処理として連携フローに登録する。
この結果、サービス連携部1111は、「加工処理(変換,ファイル,変換属性(PDF−Jpeg),データ変換サービス2920)+出力処理(投影,ファイル,プロジェクタ1のID)」という連携フローを生成することになる。なお、この場合、プロジェクタ等の入出力機器やデータ変換サービスが複数ある場合、これらの能力情報により、対応可能な複数の連携フローが生成される場合もある。
このように一または複数の連携フローが生成されたら、サービス連携部1111から、フロー実行アプリ503を介して、UI部101へ応答が送信される(ステップS3115,S3116)。そして、UI部101から操作端末2300へ生成された連携フローが送信され、操作端末2300で表示される(ステップS3117)。
図32、33は、実施の形態10のフロー実行処理の手順を示すシーケンス図である。操作端末2300で連携フローが表示されたら、ユーザが所望の連携フローの選択を情報処理装置2700のUI部101に送信する(ステップS3201)。UI部101は、選択された連携フローの実行要求をフロー実行アプリ503に送信する(ステップS3202)。
フロー実行アプリ503は、連携フローを解析し、連携フローに登録されている処理の要求を登録されている順番でサービス連携部1111に送信する。この例では、連携フローとして、「加工処理(変換,ファイル,変換属性(PDF−Jpeg),データ変換サービス2920)+出力処理(投影,ファイル,プロジェクト1のID)」が登録されているので、フロー実行アプリ503は、まず、加工処理(加工処理(変換,ファイル,変換属性(PDF−Jpeg),データ変換サービス2920))の要求を加工処理対象の画像データとともにサービス連携部1111に送信する(ステップS3203)。サービス連携部1111は、加工処理の要求を、管理部2730に送信する(ステップS3204)。管理部2730は、記憶部2720からデータ変換サービス2920の能力情報を取得して(ステップS3205)、加工処理(変換,ファイル,変換属性(PDF−Jpeg),データ変換サービス2920)をキュー2740に登録する(ステップS3206)。
また、フロー実行アプリ503は、連携フローで加工処理の次に登録されている出力処理(出力処理(投影,ファイル,プロジェクト1のID))の要求を、サービス連携部1111に送信する(ステップS3207)。サービス連携部1111は、出力処理の要求を、管理部2730に送信する(ステップS3208)。管理部2730は、記憶部2720からプロジェクタ1の能力情報を取得して(ステップS3209)、出力処理(投影,ファイル,プロジェクト1のID)をキュー2740に登録する(ステップS3210)。
次に、管理部2730は、キュー2740から、登録されている処理を取得する(ステップS3301)。キュー2740には、最初に加工処理が登録されているので、管理部2730は、加工処理(変換,ファイル,変換属性(PDF−Jpeg),データ変換サービス2920)の要求をローカルネットワーク2の情報処理装置2900に送信する(ステップS3302)。
ローカルネットワーク2の情報処理装置2900では、クライアント部2901により加工処理の要求を受信し、かかる要求を機器検索/サービス連携部2910に送信する(ステップS3303)。そして、機器検索/サービス連携部2910は、加工処理の要求で指定されたファイルで示される画像データとともにデータ変換要求をデータ変換サービス2920に対して行う(ステップS3304)。
これによりデータ変換サービス2920によるファイルのデータ変換が行われ(ステップS3305)、データ変換が完了したら、変換後のファイルとともに完了通知をパブリックネットワークの情報処理装置2700に送信する(ステップS3306,S3307,S3308)。
次に、パブリックネットワークの情報処理装置2700の管理部2730は、キュー2740から、次に登録されている処理を取得する(ステップS3309)。キュー2740には、加工処理の次に出力処理が登録されているので、管理部2730は、出力処理の要求(出力処理(投影,ファイル,プロジェクト1のID))を、データ変換後のファイルとともにローカルネットワーク1の情報処理装置2800に送信する(ステップS3310)。
ローカルネットワーク1の情報処理装置2800では、クライアント部2801で出力処理の要求を受信すると、デバイス操作部104にこれを送信し(ステップS3311)、デバイス操作部104は、変換後のファイルとともに投影要求をIDで指定されたプロジェクタ1に送信する(ステップS3312)。プロジェクタ1は、投影要求で指定された変換後のファイルの投影処理を行う(ステップS3313)。
そして、プロジェクタ1は投影処理を完了すると、完了通知を情報処理装置2800に送信し(ステップS3314)、情報処理装置2800は、この完了通知をパブリックネットワークの情報処理装置2700に送信する(ステップS3315、S3316)。
パブリックネットワークの情報処理装置2700は、管理部2730で完了通知を受信すると、この完了通知を、デバイス操作部104、フロー実行アプリ503、UI部101を介して、操作端末2300に送信する(ステップS3317,3318,3319,3320)。
このように本実施の形態では、ユーザが会議室へ入室して会議室内のローカルネットワーク1内の入出力機器を使用する際、ユーザの操作端末2300がローカルネットワーク1に接続不可能な状況でも、パブリックネットワークの情報処理装置2700にアクセスして処理要求を行えば、入出力機器の入出力機能を実行することができ、ユーザの便宜となる。
(実施の形態11)
図34は、実施の形態11のネットワーク構成図である。本実施の形態の情報処理システムは、図34に示すように、2つの情報処理装置3400,2900と、複合機1、プロジェクタ1、プロジェクタ2等の入出力機器とから構成される。
図34に示すように、複合機1、プロジェクタ1、プロジェクタ2等の入出力機器は、ローカルネットワーク1(第1ネットワーク)内に存在するまた、情報処理装置3400は、パブリックネットワーク(第2ネットワーク)内に存在する。情報処理装置2900は、ローカルネットワーク2(第3ネットワーク)内に存在する。
そして、複合機1、プロジェクタ1、プロジェクタ2等の入出力機器と情報処理装置3400は互いにアクセス可能であり、情報処理装置2900と情報処理装置3400も互いにアクセス可能である。ここで、ローカルネットワーク2の情報処理装置2900の構成は実施の形態10と同様である。
ここで、会議室には、複合機1、プロジェクタ1、プロジェクタ2等の入出力機器が設置されて、ローカルネットワーク1内にあるものとする。また、実施の形態1と同様に、プロジェクタ1はJpeg形式の画像データの投影が可能であり、プロジェクタ1はTiff形式の画像データの投影が可能であるものとする。
そして、このとき、操作端末2300を所持するユーザが会議室に入室し、会議室内の入出力機器を使用するものとする。本実施の形態では、操作端末2300から会議室内の入出力機器を使用するために、操作端末2300がパブリックネットワーク内の情報処理装置3400に接続する。以下、詳細に説明する。
図35は、実施の形態11のパブリックネットワーク内の情報処置装置3400の機能的構成を示すブロック図である。本実施の形態の情報処理装置3400は、図35に示すように、UI部101と、アプリケーション102と、フロー実行アプリ503と、デバイス操作部104と、サービス連携部1111と、能力管理部1113と、記憶部2720と、管理部3430と、キュー2740とを主に備えている。ここで、UI部101、アプリケーション102、デバイス操作部104、フロー実行アプリ503、サービス連携部1111、能力管理部1113、記憶部2720、キュー2740の機能、構成は実施の形態10と同様である。また、情報処理装置3400は、実施の形態3と同様のAPIも有している。
本実施の形態の管理部3430は、一定期間ごとに、ローカルネットワーク1内の複合機1、プロジェクタ1、プロジェクタ2等の入出力機器から、各機器の能力情報を受信し、受信した能力情報を能力管理部1113を介して記憶部2720に保存する。また、能力管理部1113は、キュー2740に登録された連携フローに登録された処理の要求を、ローカルネットワーク1内の複合機1、プロジェクタ1、プロジェクタ2等の入出力機器に対して送信して、各機能を実行させる。その他の管理部3430の機能は、実施の形態10と同様である。
次に、以上のように構成された本実施の形態の情報処理システムによる連携フロー生成処理について説明する。図36は、実施の形態11の連携フロー生成処理の手順を示すシーケンス図である。
パブリックネットワークの情報処理装置3400の管理部3430は、一定期間ごとに、複合機1、プロジェクタ1、プロジェクタ2等のローカルネットワーク1内の入出力機器から能力情報を収集する(ステップS3501a,S3501b,S3501c)。そして、管理部3430は、ローカルネットワーク1内の入出力機器から送信された能力情報を受信し、能力管理部1113が受信した能力情報を記憶部2720に登録(保存)する(ステップS3105)。
一方、会議室に入室したユーザにより操作端末2300から機能実行要求をパブリックネットワークの情報処理装置3400に対して送信する(ステップS3110)。これにより、図31で説明した実施の形態10の連携フロー生成処理と同様に、連携フローが生成され、操作端末2300で表示される(ステップS3111〜S3117)。
図37は、実施の形態11のフロー実行処理の手順を示すシーケンス図である。操作端末2300で連携フローが表示された場合に、ユーザが所望の連携フローの選択を行って、連携フローに登録された各処理がキュー2740に登録されるまでの処理は、図32を用いて説明した実施の形態10と同様に行われる。なお、本実施の形態でも、連携フローとして、「加工処理(変換,ファイル,変換属性(PDF−Jpeg),データ変換サービス2920)+出力処理(投影,ファイル,プロジェクト1のID)」が生成されたものとする。
次に、管理部3430は、キュー2740から、登録されている処理を取得する(ステップS3301)。キュー2740には、最初に加工処理が登録されているので、管理部2730は、加工処理(変換,ファイル,変換属性(PDF−Jpeg),データ変換サービス2920)の要求をローカルネットワーク2の情報処理装置2900に送信する(ステップS3302)。
ローカルネットワーク2の情報処理装置2900では、クライアント部2901により加工処理の要求を受信し、かかる要求を機器検索/サービス連携部2910に送信する(ステップS3303)。そして、機器検索/サービス連携部2910は、加工処理の要求で指定されたファイルで示される画像データとともにデータ変換要求をデータ変換サービス2920に対して行う(ステップS3304)。
これによりデータ変換サービス2920によるファイルのデータ変換が行われ(ステップS3305)、データ変換が完了したら、変換後のファイルとともに完了通知をパブリックネットワークの情報処理装置3400に送信する(ステップS3306,S3307,S3308)。
また、パブリックネットワークの情報処理装置3400の管理部3430が、キュー2740から、次に登録されている処理を取得する(ステップS3309)。キュー2740には、加工処理の次に出力処理が登録されているので、管理部2730は、出力処理の要求(出力処理(投影,ファイル,プロジェクト1のID))を、データ変換後のファイルとともにローカルネットワーク1のプロジェクタ1に送信する(ステップS3601)。プロジェクタ1は、投影要求で指定されたデータ変換後のファイルの投影処理を行う(ステップS3602)。
そして、プロジェクタ1は投影処理を完了すると、完了通知をパブリックネットワークの情報処理装置3400に送信し(ステップS3603)、情報処理装置3400は、この完了通知を管理部3430で受信し、管理部3430は、完了通知をデバイス操作部104、フロー実行アプリ503、UI部101を介して、操作端末2300に送信する(ステップS3317,3318,3319,3320)。
このように本実施の形態では、ユーザが会議室へ入室して会議室内のローカルネットワーク1内の入出力機器を使用する際、ユーザの操作端末2300がローカルネットワーク1に接続不可能な状況でも、パブリックネットワークの情報処理装置3400にアクセスして処理要求を行えば、入出力機器の入出力機能を実行することができ、ユーザの便宜となる。
実施の形態1〜11およびその変形例の情報処理装置は、CPUなどの制御装置と、ROM(Read Only Memory)やRAMなどの記憶装置と、HDD、CDドライブ装置などの外部記憶装置と、ディスプレイ装置などの表示装置と、キーボードやマウスなどの入力装置を備えたハードウェア構成となっている。
実施の形態1〜11およびその変形例の情報処理装置で実行される機器連携プログラムは、インストール可能な形式又は実行可能な形式のファイルでCD−ROM、フレキシブルディスク(FD)、CD−R、DVD(Digital Versatile Disk)等のコンピュータで読み取り可能な記録媒体に記録されて提供される。
また、実施の形態1〜11およびその変形例の情報処理装置で実行される機器連携プログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。また、実施の形態1〜11およびその変形例の情報処理装置で実行される機器連携プログラムをインターネット等のネットワーク経由で提供または配布するように構成しても良い。
また、実施の形態1〜11およびその変形例の情報処理装置で実行される機器連携プログラムを、ROM等に予め組み込んで提供するように構成してもよい。
実施の形態1〜11およびその変形例の情報処理装置で実行される機器連携プログラムは、上述した各部(UI部、フロー実行アプリ、デバイス操作部、機器検索部、サービス連携部等)を含むモジュール構成となっており、実際のハードウェアとしてはCPU(プロセッサ)が上記記憶媒体から機器連携プログラムを読み出して実行することにより上記各部が主記憶装置上にロードされ、UI部、フロー実行アプリ、デバイス操作部、機器検索部、サービス連携部等が主記憶装置上に生成されるようになっている。