(57)【要約】【課題】入力機器、出力機器、その他外部装置等の連携を容易に行うこと。【解決手段】情報処理装置１００は、ユーザからネットワークで接続された操作端末２００を介して、入力機能および出力機能を指定した複数の処理の機能実行要求を受け付けるＵＩ部１０１と、入力機器および出力機器から、各機器の有する機能を示す能力情報を取得し、能力情報に基づいて、機能実行要求で指定された入力機能を有する入力機器と機能実行要求で指定された出力機能を有する出力機器であって、入力機能と出力機能が連携可能な入力機器および出力機器の組み合わせおよび実行順を示す連携フローを生成する機器検索／サービス連携部１１０と、連携フローの入力機器および出力機器のそれぞれに対して処理要求を行うフロー実行アプリ１０３とを備えた。【選択図】図１
2018133819.tif 000002
【特許請求の範囲】
【請求項１】
操作端末と、情報処理装置とを含むシステムであって、
前記情報処理装置は、
当該システムに接続される複数の機器に処理の実行要求を送信する要求送信手段と、
前記複数の機器それぞれが実行できる処理を示す情報に基づいて、前記操作端末が有する表示部に、前記複数の機器のいずれかを用いて実行可能な電子データを生成する１以上の入力処理と、前記複数の機器のいずれかを用いて実行可能な電子データを出力する１以上の出力処理と、を表示させる表示手段と、
前記端末装置から送信される前記１以上の入力処理のうち一の入力処理と、前記１以上の出力処理のうち一の出力処理との実行要求を受信する受信手段と、
前記複数の機器それぞれが実行できる処理を示す情報、及び、前記複数の機器それぞれが実行できる前記処理それぞれで利用できるデータ形式を示す情報、に基づいて、前記一の入力処理を実行できる機器と、前記一の出力処理を該機器で生成された電子データのデータ形式で実行できる他の機器との組み合わせを生成する生成手段と、を有し、
前記表示手段は、前記生成手段で生成された機器の組み合わせを前記操作端末の表示部に表示させ、
前記要求送信手段は、前記機器の組み合わせのうち前記操作端末で選択された一の組み合わせで示される前記一の入力処理を実行する第１の機器に前記一の入力処理の実行要求を送信し、前記一の組み合わせで示される前記一の出力処理を実行する第２の機器に前記一の入力処理で生成された電子データを用いた前記一の出力処理の実行要求を送信し、
前記操作端末は、
前記表示部と、
前記表示部に情報を表示する表示制御手段と、
前記表示部に表示された前記１以上の入力処理のうち一の入力処理と、前記表示部に表示された前記１以上の出力処理のうち一の出力処理との選択を受け付ける受付手段と、
前記選択を受付けた前記一の入力処理及び前記一の出力処理の実行要求を前記情報処理装置に送信する送信手段と、
を有し、
前記表示制御手段は、前記情報処理装置から送信される前記機器の組み合わせを前記表示部に表示し、
前記受付手段は、前記表示部に表示された前記機器の組み合わせのうち一の組み合わせの選択を受け付け、
前記送信手段は、前記一の組み合わせを前記情報処理装置に送信する
ことを特徴とするシステム。
【請求項２】
請求項１に記載のシステムであって、
前記情報処理装置は、
前記複数の機器それぞれが実行できる処理を示す情報、及び、前記複数の機器それぞれが実行できる前記処理それぞれで利用できるデータ形式を示す情報、を前記複数の機器それぞれから取得する取得手段と、
前記取得手段で取得された情報を記憶する記憶手段と、を、さらに備え、
前記生成手段は、前記記憶手段に記憶された前記複数の機器それぞれが実行できる処理を示す情報、及び、前記複数の機器それぞれが実行できる前記処理それぞれで利用できるデータ形式を示す情報、に基づき、前記端末に前記一の入力処理と前記一の出力処理とを実行できる機器の組み合わせを生成する
ことを特徴とするシステム。
【請求項３】
請求項１または２に記載のシステムであって、
前記受信手段は、前記一の出力処理及び前記一の入力処理の実行要求を受信するとともに前記端末の位置情報を受信し、前記複数の機器それぞれの位置情報に基づき、前記複数の機器のうち前記端末の位置情報の示す位置から所定の範囲に位置する機器のうち前記一の入力処理と前記一の出力処理を実行できる機器の組み合わせを表示する
ことを特徴とするシステム。
【請求項４】
請求項１に記載のシステムであって、
前記情報処理装置は、電子データの変換を行う他の情報処理装置と接続され、
前記生成手段は、前記他の情報処理装置から変換できるデータ形式を示す他の能力情報に基づいて、前記他の情報処理装置のデータ形式の変換を用いて前記一の入力処理と前記一の出力処理とを実行できる機器の組み合わせを更に生成する
ことを特徴とするシステム。
【請求項５】
請求項４に記載のシステムであって、
前記要求送信手段は、前記他の情報処理装置のデータ形式の変換を用いて前記一の入力処理と前記一の出力処理とを実行できる機器の組み合わせが選択されたとき、前記他の情報処理装置に前記一の入力処理で生成された電子データのデータ形式の変換要求を送信し、前記一の組み合わせで示される前記一の出力処理を実行する前記第２の機器に前記他の情報処理装置でデータ形式が変換された電子データを用いた前記一の出力処理の実行要求を送信する
ことを特徴とするシステム。
【請求項６】
請求項４または５に記載のシステムであって、
前記他の能力情報は、前記他の情報処理装置による処理時間を含む、
ことを特徴とするシステム。
【請求項７】
操作端末と、情報処理装置とを含むシステムが実行する情報処理方法であって、
前記情報処理装置は、
当該システムに接続される複数の機器に処理の実行要求を送信する要求送信ステップと、
前記複数の機器それぞれが実行できる処理を示す情報に基づいて、前記操作端末が有する表示部に、前記複数の機器のいずれかを用いて実行可能な電子データを生成する１以上の入力処理と、前記複数の機器のいずれかを用いて実行可能な電子データを出力する１以上の出力処理と、を表示させる表示ステップと、
前記端末装置から送信される前記１以上の入力処理のうち一の入力処理と、前記１以上の出力処理のうち一の出力処理との実行要求を受信する受信ステップと、
前記複数の機器それぞれが実行できる処理を示す情報、及び、前記複数の機器それぞれが実行できる前記処理それぞれで利用できるデータ形式を示す情報、に基づいて、前記一の入力処理を実行できる機器と、前記一の出力処理を該機器で生成された電子データのデータ形式で実行できる他の機器との組み合わせを生成する生成ステップと、を含み、
前記表示ステップは、前記生成ステップで生成された機器の組み合わせを前記操作端末の表示部に表示させ、
前記要求送信ステップは、前記機器の組み合わせのうち前記操作端末で選択された一の組み合わせで示される前記一の入力処理を実行する第１の機器に前記一の入力処理の実行要求を送信し、前記一の組み合わせで示される前記一の出力処理を実行する第２の機器に前記一の入力処理で生成された電子データを用いた前記一の出力処理の実行要求を送信し、
前記操作端末は、
前記表示部に情報を表示する表示制御ステップと、
前記表示部に表示された前記１以上の入力処理のうち一の入力処理と、前記表示部に表示された前記１以上の出力処理のうち一の出力処理との選択を受け付ける受付ステップと、
前記選択を受付けた前記一の入力処理及び前記一の出力処理の実行要求を前記情報処理装置に送信する送信ステップと、を含み、
前記表示制御ステップは、前記情報処理装置から送信される前記機器の組み合わせを前記表示部に表示し、
前記受付ステップは、前記表示部に表示された前記機器の組み合わせのうち一の組み合わせの選択を受け付け、
前記送信ステップは、前記一の組み合わせを前記情報処理装置に送信する
ことを特徴とする情報処理方法。
【請求項８】
情報処理装置であって、
複数の機器に処理の実行要求を送信する要求送信手段と、
前記複数の機器それぞれが実行できる処理を示す情報に基づいて、操作端末が有する表示部に、前記複数の機器のいずれかを用いて実行可能な電子データを生成する１以上の入力処理と、前記複数の機器のいずれかを用いて実行可能な電子データを出力する１以上の出力処理と、を表示させる表示手段と、
前記端末装置から送信される前記１以上の入力処理のうち一の入力処理と、前記１以上の出力処理のうち一の出力処理との実行要求を受信する受信手段と、
前記複数の機器それぞれが実行できる処理を示す情報、及び、前記複数の機器それぞれが実行できる前記処理それぞれで利用できるデータ形式を示す情報、に基づいて、前記一の入力処理を実行できる機器と、前記一の出力処理を該機器で生成された電子データのデータ形式で実行できる他の機器との組み合わせを生成する生成手段と、を有し、
前記表示手段は、前記生成手段で生成された機器の組み合わせを前記操作端末の表示部に表示させ、
前記要求送信手段は、前記機器の組み合わせのうち前記操作端末で選択された一の組み合わせで示される前記一の入力処理を実行する第１の機器に前記一の入力処理の実行要求を送信し、前記一の組み合わせで示される前記一の出力処理を実行する第２の機器に前記一の入力処理で生成された電子データを用いた前記一の出力処理の実行要求を送信する
ことを特徴とする情報処理装置。
【請求項９】
コンピュータに、
複数の機器に処理の実行要求を送信する要求送信ステップと、
前記複数の機器それぞれが実行できる処理を示す情報に基づいて、操作端末が有する表示部に、前記複数の機器のいずれかを用いて実行可能な電子データを生成する１以上の入力処理と、前記複数の機器のいずれかを用いて実行可能な電子データを出力する１以上の出力処理と、を表示させる表示ステップと、
前記端末装置から送信される前記１以上の入力処理のうち一の入力処理と、前記１以上の出力処理のうち一の出力処理との実行要求を受信する受信ステップと、
前記複数の機器それぞれが実行できる処理を示す情報、及び、前記複数の機器それぞれが実行できる前記処理それぞれで利用できるデータ形式を示す情報、に基づいて、前記一の入力処理を実行できる機器と、前記一の出力処理を該機器で生成された電子データのデータ形式で実行できる他の機器との組み合わせを生成する生成ステップと、を実行させ、
前記表示ステップは、前記生成ステップで生成された機器の組み合わせを前記操作端末の表示部に表示させ、
前記要求送信ステップは、前記機器の組み合わせのうち前記操作端末で選択された一の組み合わせで示される前記一の入力処理を実行する第１の機器に前記一の入力処理の実行要求を送信し、前記一の組み合わせで示される前記一の出力処理を実行する第２の機器に前記一の入力処理で生成された電子データを用いた前記一の出力処理の実行要求を送信する
ことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、システム、情報処理方法、情報処理装置およびプログラムに関する。
【背景技術】
【０００２】
従来、画像形成装置と画像形成装置以外の他の入出力機器を連携させる場合には、画像形成装置に搭載するアプリケーション開発のためのＳＤＫ（Ｓｏｆｔｗａｒｅ  Ｄｅｖｅｌｐｍｅｎｔ  Ｋｉｔ）を利用して、組込みアプリケーションを開発する手法がある。
【０００３】
また、特許文献１や特許文献２に記載されているように、画像形成装置の機能を制御可能なインタフェースを画像形成装置内に予め用意して、外部サーバ等で他の入出力機器と連携するためのアプリケーションを構築する手法がある。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、近年では、画像形成装置と画像形成装置以外の入出力機器との連携や、画像形成装置や入出力機器とクラウドコンピュータ上のサービスとの連携が要求されており、さらにこれらは、いずれも動的に連携対象が変わる可能性がある。
【０００５】
このような場合にも、画像形成装置だけでなく、オフィスにおける種々の入出力機器同士、または入出力機器とクラウド上のサービスのような連携を可能とするプラットフォームを用意し、そのプラットフォーム上でのアプリケーション開発により連携を容易に行うことが求められている。
【０００６】
本発明は、上記に鑑みてなされたものであって、入力機器、出力機器、その他外部装置等の連携を容易に行うことができるシステム、情報処理方法、情報処理装置およびプログラムを提供することを主な目的とする。
【課題を解決するための手段】
【０００７】
上述した課題を解決し、目的を達成するために、本発明にかかる情報処理装置は、複数の機器にネットワークで接続された情報処理装置であって、前記複数の機器それぞれから該機器の能力を示す能力情報を取得する取得手段と、前記複数の機器のいずれかを用いて電子データを生成する第１の処理と、前記複数の機器のいずれかを用いて電子データを出力する第２の処理と、を当該情報処理装置に接続される端末に表示し、該端末に表示された前記第１の処理のうち一の処理と、前記第２の処理のうち他の処理との選択を受け付け、前記取得手段で取得した能力情報に基づき、前記複数の機器のうち前記一の処理を実行できる機器と前記他の処理を実行できる機器との組み合わせを、前記端末に表示させるユーザインタフェイス部と、前記ユーザインタフェイス部で前記端末に表示された機器の組み合わせのうち、前記一の処理を実行する第１の機器と前記他の処理を実行する第２の機器との組み合わせを示す一の機器の組み合わせの選択を受け付けると、前記第１の機器に前記一の処理を実行させ、前記第２の機器に前記第１の機器で実行された前記一の処理で生成された電子データを用いた前記他の処理を実行させる実行手段と、を備えた。
【０００８】
また、本発明にかかる機器連携方法は、複数の機器にネットワークで接続された情報処理装置で実行される機器連携方法であって、前記複数の機器それぞれから該機器の能力を示す能力情報を取得する取得ステップと、前記複数の機器のいずれかを用いて電子データを生成する第１の処理と、前記複数の機器のいずれかを用いて電子データを出力する第２の処理と、を当該情報処理装置に接続される端末に表示し、該端末に表示された前記第１の処理のうち一の処理と、前記第２の処理のうち他の処理との選択を受け付け、前記取得ステップで取得した能力情報に基づき、前記複数の機器のうち前記一の処理を実行できる機器と前記他の処理を実行できる機器との組み合わせを、前記端末に表示させる表示ステップと、前記表示ステップで前記端末に表示された機器の組み合わせのうち、前記一の処理を実行する第１の機器と前記他の処理を実行する第２の機器との組み合わせを示す一の機器の組み合わせの選択を受け付けると、前記第１の機器に前記一の処理を実行させ、前記第２の機器に前記第１の機器で実行された前記一の処理で生成された電子データを用いた前記他の処理を実行させる実行ステップと、を含む。
【０００９】
また、本発明にかかるプログラムは、複数の機器にネットワークで接続されたコンピュータに実行させるためのプログラムであって、前記複数の機器それぞれから該機器の能力を示す能力情報を取得する取得ステップと、前記複数の機器のいずれかを用いて電子データを生成する第１の処理と、前記複数の機器のいずれかを用いて電子データを出力する第２の処理と、を当該コンピュータに接続される端末に表示し、該端末に表示された前記第１の処理のうち一の処理と、前記第２の処理のうち他の処理との選択を受け付け、前記取得ステップで取得した能力情報に基づき、前記複数の機器のうち前記一の処理を実行できる機器と前記他の処理を実行できる機器との組み合わせを、前記端末に表示させる表示ステップと、前記表示ステップで前記端末に表示された機器の組み合わせのうち、前記一の処理を実行する第１の機器と前記他の処理を実行する第２の機器との組み合わせを示す一の機器の組み合わせの選択を受け付けると、前記第１の機器に前記一の処理を実行させ、前記第２の機器に前記第１の機器で実行された前記一の処理で生成された電子データを用いた前記他の処理を実行させる実行ステップと、を前記コンピュータに実行させる。
【００１０】
また、本発明にかかる情報処理システムは、複数の情報処理装置を含む情報処理システムであって、該複数の情報処理装置のうち少なくとも一の情報処理装置が複数の機器にネットワークで接続された情報処理システムであって、前記複数の機器それぞれから該機器の能力を示す能力情報を取得する取得手段と、前記複数の機器のいずれかを用いて電子データを生成する第１の処理と、前記複数の機器のいずれかを用いて電子データを出力する第２の処理と、を当該情報処理装置に接続される端末に表示し、該端末に表示された前記第１の処理のうち一の処理と、前記第２の処理のうち他の処理との選択を受け付け、前記取得手段で取得した能力情報に基づき、前記複数の機器のうち前記一の処理を実行できる機器と前記他の処理を実行できる機器との組み合わせを、前記端末に表示させるユーザインタフェイス部と、前記ユーザインタフェイス部で前記端末に表示された機器の組み合わせのうち、前記一の処理を実行する第１の機器と前記他の処理を実行する第２の機器との組み合わせを示す一の機器の組み合わせの選択を受け付けると、前記第１の機器に前記一の処理を実行させ、前記第２の機器に前記第１の機器で実行された前記一の処理で生成された電子データを用いた前記他の処理を実行させる実行手段と、を備えた。
【発明の効果】
【００１１】
本発明によれば、入力機器、出力機器、その他外部装置等の連携を容易に行うことができるという効果を奏する。
【図面の簡単な説明】
【００１２】
【図１】図１は、実施の形態１の情報処理システムのネットワーク構成および情報処理装置の機能的構成を示すブロック図である。
【図２】図２は、実施の形態１の連携処理のシーケンス図である。
【図３】図３は、実施の形態１の機能実行要求の入力画面の一例を示す模式図である。
【図４】図４は、複合機１とプロジェクタ１の各能力情報とを比較して表形式にして説明するための図である。
【図５】図５は、実施の形態２の情報処理システムのネットワーク構成および情報処理装置の機能的構成を示すブロック図である。
【図６】図６は、実施の形態２の連携処理のうち、機能実行要求から連携フローの提示までのシーケンス図である。
【図７】図７は、実施の形態２の機能実行要求の入力画面の一例を示す模式図である。
【図８】図８は、複合機１とプロジェクタ１とプロジェクタ２との各能力情報とを比較して表形式にして説明するための図である。
【図９】図９は、ＵＩ部１０１により操作端末２００に表示されるフロー選択画面の一例を示す模式図である。
【図１０】図１０は、実施の形態２の連携処理のうち、連携フローの選択から入力機器および出力機器の処理実行までのシーケンス図である。
【図１１】図１１は、実施の形態３の情報処理システムのネットワーク構成および情報処理装置の機能的構成を示すブロック図である。
【図１２】図１２は、実施の形態３の連携処理のうち、機能実行要求から連携フローの提示までのシーケンス図である。
【図１３】図１３は、実施の形態３の連携処理のうち、能力管理部１１１３に保存された能力情報を利用した、機能実行要求から連携フローの提示までのシーケンス図である。
【図１４】図１４は、実施の形態４の情報処理システムのネットワーク構成および情報処理装置の機能的構成を示すブロック図である。
【図１５】図１５は、実施の形態５のサービス連携部からの応答を示す図である。
【図１６】図１６は、実施の形態５のフロー選択画面を示す図である。
【図１７】図１７は、実施の形態５の他のフロー選択画面を示す図である。
【図１８】図１８は、実施の形態５のフロー選択画面の遷移を示す図である。
【図１９】図１９は、実施の形態６の情報処理システムのネットワーク構成および情報処理装置の機能的構成を示すブロック図である。
【図２０】図２０は、実施の形態７の情報処理システムのネットワーク構成および情報処理装置の機能的構成を示すブロック図である。
【図２１】図２１は、実施の形態７の連携処理のうち、機能実行要求から連携フローの提示までのシーケンス図である。
【図２２】図２２は、実施の形態７の変形例の連携処理のうち、機能実行要求から連携フローの提示までのシーケンス図である。
【図２３】図２３は、実施の形態８のネットワーク構成および情報処理装置の機能的構成を示すブロック図である。
【図２４】図２４は、実施の形態８の機能実行処理のシーケンス図である。
【図２５】図２５は、実施の形態９のネットワーク構成および情報処理装置の機能的構成を示すブロック図である。
【図２６】図２６は、実施の形態９の機能実行処理のシーケンス図である。
【図２７】図２７は、実施の形態１０のネットワーク構成図である。
【図２８】図２８は、実施の形態１０のパブリックネットワーク内の情報処置装置２の機能的構成を示すブロック図である。
【図２９】図２９は、実施の形態１０のローカルネットワーク１内の情報処理装置の機能的構成を示すブロック図である。
【図３０】図３０は、ローカルネットワーク２内の情報処理装置の機能的構成を示すブロック図である。
【図３１】図３１は、実施の形態１０の連携フロー生成処理の手順を示すシーケンス図である。
【図３２】図３２は、実施の形態１０のフロー実行処理の手順を示すシーケンス図である。
【図３３】図３３は、実施の形態１０のフロー実行処理の手順を示すシーケンス図である。
【図３４】図３４は、実施の形態１１のネットワーク構成図である。
【図３５】図３５は、実施の形態１１のパブリックネットワーク内の情報処置装置３４００の機能的構成を示すブロック図である。
【図３６】図３６は、実施の形態１１の連携フロー生成処理の手順を示すシーケンス図である。
【図３７】図３７は、実施の形態１１のフロー実行処理の手順を示すシーケンス図である。
【発明を実施するための形態】
【００１３】
以下に添付図面を参照して、この発明にかかる情報処理装置、情報処理システム、機器連携方法およびプログラムの実施の形態を詳細に説明する。
【００１４】
（実施の形態１）
図１は、実施の形態１の情報処理システムのネットワーク構成および情報処理装置の機能的構成を示すブロック図である。本実施の形態にかかる情報処理システムは、図１に示すように、情報処理装置１００と、操作端末２００と、複数の入力機器および複数の出力機器としての複合機１、プロジェクタ１がインターネットやＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）等のネットワークで接続された構成となっている。
【００１５】
操作端末２００は、ユーザが所望の入力機能および出力機能の機能実行要求を入力してネットワークを介して情報処理装置１００に送信する端末である。操作端末２００としては、例えば、ＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）や携帯端末等が該当するがこれに限定されるものではない。
【００１６】
情報処理装置１００は、操作端末２００からの機能実行要求を受信して、当該機能実行を実現するための入力機器、出力機器の組み合わせや実行順番を定めた連携フローを生成して、連携フローに従って入力機器、出力機器に実行を行わせるプラットフォームの役割を行うものである。情報処理装置１００としては、例えば、サーバ装置やワークステーションあるいはＰＣ等のコンピュータ、複合機や複写機などの画像形成装置、プロジェクタ等の情報投影装置、携帯電話やＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄａｔａ  Ａｓｓｉｓｔａｎｃｅ）あるいはタブレット端末などの携帯端末などが該当するが、これらに限定されるものではない。
【００１７】
入力機器および出力機器としての複合機１、プロジェクタ１は、それぞれの入力機能、出力機能を実行するとともに、情報処理装置１００からの要求を受けて、自己の実現可能な機能を示す能力情報を情報処理装置１００に送信する。
【００１８】
ここで、能力情報としては、入出力データの形式や解像度等であり、各機器によって異なる。能力情報の詳細は後述する。また、本実施の形態では、複合機１、プロジェクタ１のいずれも入力機器と出力機器のいずれにもなり得るものとする。
【００１９】
情報処理装置１００は、図１に示すように、アプリケーションプログラミングインタフェイス（Ａｐｐｒｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍｉｎｇ  Ｉｎｔｅｒｆａｃｅ：以下、「ＡＰＩ」と称する。）を境界として上位の層と下位の層にわけられている。上位の層には、ユーザインタフェイス部１０１（以下、「ＵＩ部１０１」と称する。）と、フロー実行アプリ１０３とを有する。
【００２０】
ＵＩ部１０１は、操作端末１００から、入力機能および出力機能の機能実行要求を受信する。ここで、本実施の形態では、機能実行要求には、ユーザにより指定された所望の入力機能、出力機能、入力機能を実行する入力機器、出力機能を実行する出力機器を含んでいる。例えば、機能実行要求としては「スキャン（複合機１）＋投影（プロジェクタ１）」等が該当する。
【００２１】
ここで、「スキャン」が入力機能であり、「複合機１」が当該入力機能「スキャン」を実行する入力機器である。また、「投影」が出力機能であり、「プロジェクタ１」が当該出力機能「投影」を実行する出力機器である。入力機能を行う入力機器、出力機能を実行する出力機器の特定の手法としては、各機器を識別するためのＩＰアドレスを用いるが、これに限定されるものではない。
【００２２】
フロー実行アプリ１０３は、ＵＩ部１０１から機能実行要求を受信して、ＡＰＩを利用して機器検索／サービス連携部１１０のサービス連携部１１１に対して連携フロー生成要求を送信し、サービス連携部１１１で生成された連携フロー（以下、「フロー」と称する場合もある。）を受信する。
【００２３】
また、フロー実行アプリ１０３は、受信した連携フローに従って、ＡＰＩを利用して入力機器に対する入力処理の要求、出力機器に対する出力処理の要求を行う。
【００２４】
ここで、ＡＰＩは、パラメータ指定等予め定義された関数により、フロー実行アプリ１０３からのフロー生成、入力処理、出力処理の各要求を受信可能とする。そして、ＡＰＩは、当該関数により、フロー生成の要求を受信した場合、サービス連携部１１１にフロー生成の要求を行って、サービス連携部１１１にフロー生成を行わせる。ＡＰＩは、当該関数により、入力処理の要求、出力処理の要求を受信した場合、デバイス操作部１０４に各処理の実行要求を行って、デバイス操作部１０４に入力機器、出力機器に対する制御を行わせる。
【００２５】
また、ＡＰＩより上位の層には、フロー実行アプリの他、各種アプリケーション（不図示）を搭載することができ、これらの各種アプリケーションもＡＰＩで定義された関数呼び出しにより、ＡＰＩで提供されるサービス連携のための各機能の実行要求を行うことができる。
【００２６】
言い換えれば、ＡＰＩおよびＡＰＩより下位の層は、アプリケーション（フロー実行アプリ１０３を含む）に対するサービス連携のプラットフォームとしての役割を有する。なお、ＡＰＩの詳細については後述の実施の形態２で説明する。
【００２７】
情報処理装置１００は、ＡＰＩより下位の層に、サービス連携部１１１を有する機器検索／サービス連携部１１０と、デバイス操作部１０４と、記憶部１０５とを主に備えている。
【００２８】
サービス連携部１１１は、機能実行要求で指定された入力機器および出力機器に対して、能力情報を要求し、入力機器および出力機器から能力情報を受信する。そして、サービス連携部１１１は、能力情報に基づいて、機能実行要求で指定された入力機能を有する入力機器と機能実行要求で指定された出力機能を有する出力機器であって、入力機能と出力機能が連携可能な入力機器および出力機器の組み合わせおよび実行順を示す連携フローを生成する。
【００２９】
すなわち、サービス連携部１１１は、能力情報から、ユーザから機能実行要求で指定された入力機器、出力機器とこれらを連携して実行するために必要なパラメータを特定した連携フローを生成し、この連携フローを応答としてフロー実行アプリ１０３に送信する。
【００３０】
入力機器、出力機器とこれらを連携して実行するために必要なパラメータとしては、例えば、入力機器の出力データの形式と出力機器の入力データの形式が一致するデータ形式や入力機器、出力機器の実行順等である。
【００３１】
これにより、フロー実行アプリ１０３は、機器間を連携させるための処理を意識することなく、サービス連携部１１１が生成した連携フローのパラメータをＡＰＩを利用してデバイス操作部１０４に渡すだけで、入出力機能の連携が実行可能となる。
【００３２】
次に、以上のように構成された本実施の形態の機器連携処理について具体例をあげて説明する。図２は、実施の形態１の連携処理のシーケンス図である。ここでは、上述した「スキャン（複合機１）＋投影（プロジェクタ１）」の機能実行要求がユーザから操作端末２００に入力された場合を例にあげて説明する。
【００３３】
図３は、実施の形態１の機能実行要求の入力画面の一例を示す模式図である。情報処理装置１００のＵＩ部１０１は、図３に示す入力画面を操作端末２００に表示し、ユーザはこの入力画面から所望の機能の実行要求を入力する。図３に示すように、ユーザは、所望の入力機能、入力機能を実行させる入力機器のＩＰアドレスにより入力機器を指定し、入力機能のパラメータを指定する。また、ユーザは所望の出力機能、出力機能を実行させる出力機器のＩＰアドレスにより出力機器を指定し、出力機能のパラメータを指定する。
【００３４】
図２に戻り、操作端末２００は、上記の入力画面からユーザにより指定された「スキャン（複合機１）＋投影（プロジェクタ１）」の機能実行要求を情報処理装置１００に送信する（ステップＳ１１）。
【００３５】
情報処理装置１００のＵＩ部１０１は、この機能実行要求を受信し、機能実行要求で指定された入力機能（スキャン）および出力機能（投影）、指定された入力機器（複合機１）および出力機器（プロジェクタ１）の各ＩＰアドレス、機能実行要求に指定があればそのパラメータ（モノクロ／カラー等の入力属性、投影属性等）を含むフロー生成要求をフロー実行アプリ１０３に送信する（ステップＳ１２）。フロー実行アプリ１０３は、このフロー生成の要求を、ＡＰＩを利用してサービス連携部１１１に送信する（ステップＳ１３）。
【００３６】
サービス連携部１１１は、フロー実行アプリ１０３からフロー生成の要求を受信すると、フロー生成の要求で指定された複合機１とプロジェクタ１に能力情報取得要求を送信して（ステップＳ１４，Ｓ１６）、各機器から能力情報を取得する（ステップＳ１５，Ｓ１７）。
【００３７】
そして、サービス連携部１１１は、これらの能力情報から連携フローを生成する（ステップＳ１８）。ここで、複合機１の能力情報が図２の符号２０１に示すとおりであり、プロジェクタ１の能力情報が、図２の符号２０２に示すとおりであったとする。図４は、複合機１とプロジェクタ１の各能力情報とを比較して表形式にして説明するための図である。
【００３８】
図２、図４の例では、複合機１の能力情報では出力形式が「Ｊｐｅｇ」と「Ｔｉｆｆ」であり、プロジェクタ１の能力情報では入力形式が「Ｊｐｅｇ」である。この場合、サービス連携部１１１は、複合機１のスキャン実行をＪｐｅｇで出力するようにパラメータを構成し、複合機１とプロジェクタ１の連携フローを生成する。生成される連携フローの例を、図２の符号２０３に示す。
【００３９】
連携フローは、符号２０３に示すように、入力機器（複合機１）のＩＰアドレス、スキャン属性（カラー／モノクロ指定［ｆｕｌｌＣｏｌｏｒ］、出力データ形式［Ｊｐｅｇ］）、コメント、入力機器（複合機１）をパラメータとした入力機能の関数呼び出し（スキャン（））と、出力機器（プロジェクタ１）のＩＰアドレス、投影属性、コメント、出力機器（プロジェクタ１）をパラメータとした出力機能の関数呼び出し（投影（））が、実行する順番で指定される。
【００４０】
すなわち、この連携フローでは、ＡＰＩが提供する入力機能の関数（スキャン（））、出力機能の関数（投影（））がパラメータとともに記述される。
【００４１】
そして、サービス連携部１１１は、生成した連携フローをフロー実行アプリ１０３に送信する（ステップＳ１９）。
【００４２】
なお、サービス連携部１１１は、能力情報を比較した結果、入力機器と出力機器が連携不能であると判断した場合には、その旨を示すエラーをフロー実行アプリ１０３に返し、フロー実行アプリ１０３は、連携不能のエラーをＵＩ部１０１を介して操作端末２００に通知するように構成すればよい。
【００４３】
次に、フロー実行アプリ１０３は、連携フローで指定された関数呼び出しをＡＰＩに対して行う。これにより、複合機１とプロジェクタ１を連携処理させる場合のパラメータ変更などを意識することなく連携させることが可能となる。
【００４４】
具体的には、フロー実行アプリ１０３は、受信した連携フローを参照して、パラメータが指定されている入力機能の関数（スキャン（））呼び出しを行うことにより、ＡＰＩを利用してデバイス操作部１０４に入力処理の要求を行う（ステップＳ２０）。この入力処理の要求には、入力機能としてのスキャンと、カラー／モノクロ指定（ＦｕｌｌＣｏｌｏｒ）や出力データ形式（Ｊｐｅｇ）等のパラメータと、入力機器（複合機１）のＩＰアドレスが含まれる。
【００４５】
この入力処理の要求を受信したデバイス操作部１０４は、入力処理の要求で指定された入力機器（複合機１）に対して処理実行要求を行う（ステップＳ２１）。入力機器（複合機１）から処理の完了の通知がなされると（ステップＳ２２）、デバイス操作部１０４は、完了通知とともに受信したスキャン画像データを記憶部１０５に保存する。そして、デバイス操作部１０４は、スキャン画像データのロケーション等のファイル情報をフロー実行アプリ１０３に送信する（ステップＳ２３）。
【００４６】
フロー実行アプリ１０３は、ファイル情報を受信すると、ファイル情報をパラメータに指定して、連携フローに登録されている出力機能の関数（投影（））呼び出しを行うことにより、ＡＰＩを利用してデバイス操作部１０４に出力処理の要求を行う（ステップＳ２４）。この出力処理の要求には、出力機能としての投影と、ファイル情報等のパラメータと、出力機器（プロジェクタ１）のＩＰアドレスとが含まれる。
【００４７】
この出力処理の要求を受信したデバイス操作部１０４は、出力処理の要求で指定された出力機器（プロジェクタ１）に対して処理実行要求を行う（ステップＳ２５）。出力機器（プロジェクタ１）から処理の完了の通知がなされると（ステップＳ２６）、デバイス操作部１０４は、完了通知をフロー実行アプリ１０３に送信し（ステップＳ２７）、この完了通知は、フロー実行アプリ１０３からＵＩ部１０１へ、ＵＩ部１０１から操作端末２００へと順次送信される（ステップＳ２８，２９）。
【００４８】
このように本実施の形態では、ユーザからの入出力にかかる機能実行要求があった場合に、サービス連携部１１１により、機能実行要求で指定された入力機器、出力機器に能力情報を問い合わせ、能力情報に基づいて連携可能な場合に、連携フローを生成し、フロー実行アプリ１０３で連携フローに基づいて入力機器、出力機器に対して処理実行要求を行うので、ユーザは入力機器、出力機器の能力を把握していなくても、入力機器、出力機器を連携して所望の入出力処理を実行することができ、入力機器と出力機器の連携を容易に行うことができる。
【００４９】
また、本実施の形態では、フロー実行アプリ１０３がＡＰＩを利用してサービス連携部１１１にフロー生成の要求を行い、またＡＰＩを利用してデバイス操作部１０４に入力処理および出力処理の実行要求を行うので、入力機器と出力機器を連携処理させる場合のパラメータ変更などを意識することなく、容易に連携させることができる。
【００５０】
（実施の形態２）
実施の形態１では、ユーザによる操作端末２００からの機能実行要求に入力機器と出力機器のＩＰアドレスが指定されていたが、この実施の形態２では、入力機器と出力機器の指定を行わずに機能実行要求をユーザが行った場合でも、連携可能とするものである。
【００５１】
図５は、実施の形態２の情報処理システムのネットワーク構成および情報処理装置の機能的構成を示すブロック図である。本実施の形態にかかる情報処理システムは、図５に示すように、情報処理装置５００と、操作端末２００と、複数の入力機器および複数の出力機器としての複合機１、プロジェクタ１、プロジェクタ２がインターネットやＬＡＮ等のネットワークで接続された構成となっている。
【００５２】
ここで、操作端末２００、複合機１、プロジェクタ１の機能は実施の形態１と同様である。プロジェクタ２は、プロジェクタ１と能力（機能）が異なっている。
【００５３】
情報処理装置５００は、図５に示すように、ＡＰＩを境界とした上位の層に、ＵＩ部１０１と、フロー実行アプリ５０３と、アプリケーション１０２とを有する。また、ＡＰＩを境界とした下位の層に、機器検索／サービス連携部５１０と、デバイス操作部１０４と、記憶部１０５とを主に備えている。
【００５４】
ここで、ＵＩ部１０１、デバイス操作部１０４、記憶部１０５の機能および構成は実施の形態１と同様である。
【００５５】
本実施の形態では、ＵＩ部１０１は、操作端末２００から、入力機能および出力機能の機能実行要求を受信するが、機能実行要求には、ユーザにより指定された所望の入力機能、出力機能が含まれ、入力機能を実行する入力機器、出力機能を実行する出力機器の指定は含まれない。本実施の形態では、例えば、機能実行要求としては「スキャン＋投影」等が該当する。ここで、「スキャン」が入力機能の指定であり、「投影」が出力機能の指定である。
【００５６】
フロー実行アプリ５０３は、ＵＩ部１０１から機能実行要求を受信して、ＡＰＩを利用して機器検索／サービス連携部５１０のサービス連携部５１１に対して連携フロー生成の要求を送信し、サービス連携部５１１で生成された連携フローを受信する。また、フロー実行アプリ５０３は、受信した連携フローに従って、ＡＰＩを利用して入力機器に対する入力処理の要求、出力機器に対する出力処理の要求を行う。
【００５７】
機器検索／サービス連携部５１０は、サービス連携部５１１と、機器検索部５１２とを主に備えている。
【００５８】
機器検索部５１２は、ネットワークに接続されている周辺の入力機器および出力機器に対して能力情報を要求し、入力機器および出力機器から能力情報を受信する。
【００５９】
サービス連携部５１１は、機器検索部５１２により受信した能力情報に基づいて、ユーザからの機能実行要求に対して連携可能な入力機器、出力機器を指定した連携フローを生成する。ここで、能力情報、連携フローについては実施の形態１と同様である。
【００６０】
例えば、操作端末２００から「スキャン＋投影」の機能実行要求をＵＩ部１０１が受信した場合、フロー実行アプリ５０３が、ＡＰＩを利用して、サービス連携部５１１に、「スキャン＋投影」のフロー生成の要求を行う。
【００６１】
フロー生成の要求を受けて、機器検索部５１２は、周辺に存在する入力機器、出力機器で「スキャン」「投影」のできる機器（図５の例では、複合機１、プロジェクタ１、プロジェクタ２）を検索し、各機器の能力情報を取得する。
【００６２】
そして、サービス連携部５１１が、機器検索部５１２が取得した能力情報に基づいて、能力情報のマッチングを行い、連携フローを生成し、フロー実行アプリ５０３に送信する。
【００６３】
次に、ＡＰＩの詳細について説明する。本実施の形態では、フロー生成の関数と、入力処理の関数と、出力処理の関数と、加工処理の各関数がＡＰＩとして提供されている。
【００６４】
１）フロー生成
＜入力パラメータ＞
複数の機能名（例：スキャン＋投影）
パラメータ
＜応答＞
連携フロー
【００６５】
２）入力処理
＜入力パラメータ＞
機能名（例：スキャン）
ＩＰアドレス
パラメータ
＜応答＞
入力によって生成された画像のロケーション
【００６６】
３）出力処理
＜入力パラメータ＞
機能名（例：投影）
ＩＰアドレス
パラメータ（入力画像のロケーション含む）
＜応答＞
完了通知のみ
【００６７】
４）加工処理
＜入力パラメータ＞
機能名（例：画像フォーマット変換）
ＩＰアドレス
パラメータ（入力画像のロケーション含む）
＜応答＞
入力によって生成された画像のロケーション
【００６８】
このため、フロー実行アプリ５０３は、入力パラメータを指定したフロー生成関数を呼び出すことにより、サービス連携部５１１に対してフロー生成要求を行う。また、フロー実行アプリ５０３は、入力パラメータを指定した入力処理関数を呼び出すことにより、デバイス操作部１０４に対してＩＰアドレスで指定された入力機器に対する入力処理要求を行う。また、フロー実行アプリ５０３は、入力パラメータを指定した出力処理関数を呼び出すことにより、デバイス操作部１０４に対してＩＰアドレスで指定された出力機器に対する出力処理要求を行う。さらに、フロー実行アプリ５０３は、入力パラメータを指定した加工処理関数を呼び出すことにより、デバイス操作部１０４に対してＩＰアドレスで指定されたサービスに対する加工処理要求を行う。
【００６９】
例えば、フロー実行アプリ５０３は、スキャンを指定した入力処理の関数呼び出しにより、複合機１によりスキャンされた画像データは記憶部１０５に保存されて、ロケーション情報が応答として返される。なお、画像データの実体を応答として返すように構成してもよい。
【００７０】
次に、フロー実行アプリ５０３は、投影と、画像データのロケーション情報をパラメータに指定した出力処理の関数呼び出しを行うことにより、記憶部１０５に保存された画像データがプロジェクタ２により投影される。
【００７１】
デバイス操作部１０４は、入力処理要求および出力処理要求の内容を解釈して、入力機器、出力機器への各操作を実行する。
【００７２】
このように、フロー実行アプリ５０３がＡＰＩを用いた処理要求を行うことにより、フロー実行アプリ５０３は各機器の差異を意識することなく、各処理を実行させることができる。
【００７３】
次に、以上のように構成された本実施の形態の機器連携処理について具体例をあげて説明する。図６は、実施の形態２の連携処理のうち、機能実行要求から連携フローの提示までのシーケンス図である。ここでは、上述した「スキャン＋投影」の機能実行要求がユーザから操作端末２００に入力された場合を例にあげて説明する。
【００７４】
図７は、実施の形態２の機能実行要求の入力画面の一例を示す模式図である。情報処理装置５００のＵＩ部１０１は、図７に示す入力画面を操作端末２００に表示し、ユーザはこの入力画面から所望の機能の実行要求を入力する。図７に示すように、ユーザは、所望の入力機能、入力機能のパラメータを指定する。また、ユーザは所望の出力機能、出力機能のパラメータを指定する。
【００７５】
図６に戻り、操作端末２００は、上記の入力画面からユーザにより指定された「スキャン＋投影」の機能実行要求を情報処理装置５００に送信する（ステップＳ３１）。
【００７６】
情報処理装置５００のＵＩ部１０１は、この機能実行要求を受信し、機能実行要求で指定された入力機能（スキャン）および出力機能（投影）、機能実行要求に指定があればそのパラメータ（モノクロ／カラー等の入力属性、投影属性等）を含むフロー生成要求をフロー実行アプリ５０３に送信する（ステップＳ３２）。フロー実行アプリ５０３は、このフロー生成の要求を、ＡＰＩを利用してサービス連携部５１１に送信する（ステップＳ３３）。
【００７７】
サービス連携部５１１は、フロー実行アプリ５０３からフロー生成の要求を受信すると、機器検索部５１２に指示し、機器検索部５１２は、ネットワークに接続されている周辺の入力機器、出力機器である複合機１、プロジェクタ１、プロジェクタ２に能力情報取得要求を送信して（ステップＳ３４、Ｓ３６、Ｓ３８）、各機器から能力情報を取得する（ステップＳ３５、Ｓ３７、Ｓ３９）。
【００７８】
そして、サービス連携部５１１は、機器検索部５１２により取得された、これらの能力情報を比較して、機能実行要求で指定された入力機能、出力機能を実現可能な入力機器と出力機器の組み合わせおよび実行順番を示す連携フローを生成する（ステップＳ４０）。
【００７９】
ここで、複合機１の能力情報が図６の符号６０１に示すとおりであり、プロジェクタ１の能力情報が、図６の符号６０２に示すとおりであり、プロジェクタ２の能力情報が、図６の符号６０３に示すとおりであったとする。図８は、複合機１とプロジェクタ１とプロジェクタ２との各能力情報とを比較して表形式にして説明するための図である。
【００８０】
図６、図８の例では、フロー生成の要求が「スキャン＋投影」であるのに対して、複合機１が「スキャン」が可能であり、プロジェクタ１、プロジェクタ２が「投影」が可能である。また、複合機１ではスキャンの出力形式がＪｐｅｇであるのに対して、プロジェクタ１では投影の入力形式がＪｐｅｇである。このため、サービス連携部５１１は、「複合機１→プロジェクタ１」の連携フローを生成する。ここで、プロジェクタ２では投影の入力形式がＴｉｆｆであるため、連携の対象外となる。なお、連携可能な組み合わせが複数存在する場合には、複数の連携フローが生成される。
【００８１】
連携フローは、図６の符号６０４に示すように、入力機器（複合機１）のＩＰアドレス、スキャン属性（カラー／モノクロ指定［ｆｕｌｌｃｏｌｏｒ］、出力データ形式［Ｊｐｅｇ］）、コメント、入力機器（複合機１）をパラメータとした入力機能の関数呼び出し（スキャン（））と、出力機器（プロジェクタ１）のＩＰアドレス、投影属性、コメント、出力機器（プロジェクタ１）をパラメータとした出力機能の関数呼び出し（投影（））が、実行する順番で指定される。
【００８２】
本実施の形態でも、連携フローでは、ＡＰＩが提供する入力機能の関数（スキャン（））、出力機能の関数（投影（））がパラメータとともに記述される。
【００８３】
そして、サービス連携部５１１は、生成した連携フローをフロー実行アプリ５０３に送信する（ステップＳ４１）。そして、フロー実行アプリ５０３は連携フローをＵＩ部１０１に送信して（ステップＳ４２）、ＵＩ部１０１がユーザの操作端末２００に連携フローを表示する（ステップＳ４３）。
【００８４】
図９は、ＵＩ部１０１により操作端末２００に表示されるフロー選択画面の一例を示す模式図である。図６の例では、生成された連携フローが一つであるため、フロー選択画面には一つの連携フローしか表示されていないが、サービス連携部５１１で複数の連携フローが生成された場合には、フロー選択画面には生成された複数の連携フローが表示される。
【００８５】
図１０は、実施の形態２の連携処理のうち、連携フローの選択から入力機器および出力機器の処理実行までのシーケンス図である。ユーザは、操作端末２００において、図９に示す連携フロー選択画面から所望の連携フローを選択すると（ステップＳ５１）、操作端末２００はその選択を受け付けて情報処理装置５００のＵＩ部１０１に送信する（ステップＳ５２）。
【００８６】
ＵＩ部１０１は、選択された連携フローの実行要求をフロー実行アプリ５０３に送信する（ステップＳ５３）。
【００８７】
フロー実行アプリ５０３は、選択された連携フローで指定された関数呼び出しをＡＰＩに対して行う。これにより、複合機１とプロジェクタ１を連携処理させる場合のパラメータ変更などを意識することなく連携させることが可能となる。
【００８８】
具体的には、フロー実行アプリ５０３は、受信した連携フローを参照して、パラメータが指定されている入力機能の関数（スキャン（））呼び出しを行うことにより、ＡＰＩを利用してデバイス操作部１０４に入力処理の要求を行う（ステップＳ５４）。この入力処理の要求には、入力機能としてのスキャンと、カラー／モノクロ指定（Ｆｕｌｌｃｏｌｏｒ）や出力データ形式（Ｊｐｅｇ）等のパラメータと、入力機器（複合機１）のＩＰアドレスが含まれる。
【００８９】
この入力処理の要求を受信したデバイス操作部１０４は、入力処理の要求で指定された入力機器（複合機１）に対して処理実行の要求を行う（ステップＳ５５）。入力機器（複合機１）から処理の完了の通知がなされると（ステップＳ５６）、デバイス操作部１０４は、完了通知とともに受信したスキャン画像データを記憶部１０５に保存する。そして、デバイス操作部１０４は、スキャン画像データのロケーション等のファイル情報をフロー実行アプリ１０３に送信する（ステップＳ５７）。
【００９０】
フロー実行アプリ５０３は、ファイル情報を受信すると、ファイル情報をパラメータに指定して、連携フローに登録されている出力機能の関数（投影（））呼び出しを行うことにより、ＡＰＩを利用してデバイス操作部１０４に出力処理の要求を行う（ステップＳ５８）。この出力処理の要求には、出力機能としての投影と、ファイル情報等のパラメータと、出力機器（プロジェクタ１）のＩＰアドレスとが含まれる。
【００９１】
この出力処理の要求を受信したデバイス操作部１０４は、出力処理の要求で指定された出力機器（プロジェクタ１）に対して処理実行要求を行う（ステップＳ５９）。出力機器（プロジェクタ１）から処理の完了の通知がなされると（ステップＳ６０）、デバイス操作部１０４は、完了通知をフロー実行アプリ５０３に送信し（ステップＳ６１）、この完了通知は、フロー実行アプリ５０３からＵＩ部１０１へ、ＵＩ部１０１から操作端末２００へと順次送信される（ステップＳ６２，６３）。
【００９２】
このように本実施の形態では、ユーザから、入力機器、出力機器を指定せずに入出力にかかる機能実行要求があった場合に、機器検索部５１２によりネットワークも入力機器、出力機器に能力情報を問い合わせ、サービス連携部５１１により能力情報に基づいて連携可能な入力機器と出力機器の組み合わせおよび実行順を含む連携フローを生成し、フロー実行アプリ１０３で連携フローに基づいて入力機器、出力機器に対して処理実行要求を行うので、ユーザは入力機器、出力機器の存在や入力機器、出力機器の能力を把握していなくても、入力機器、出力機器を連携して所望の入出力処理を実行することができ、入力機器と出力機器の連携を容易に行うことができる。
【００９３】
また、本実施の形態では、フロー実行アプリ５０３がＡＰＩを利用してサービス連携部５１１にフロー生成の要求を行い、またＡＰＩを利用してデバイス操作部１０４に入力処理および出力処理の実行要求を行うので、入力機器と出力機器を連携処理させる場合のパラメータ変更などを意識することなく、容易に連携させることができる。
【００９４】
（実施の形態３）
実施の形態１、２では、ユーザからの機能実行要求によりフロー生成の要求があるごとに、入力機器、出力機器から能力情報を取得していたが、この実施の形態３では、入力機器、出力機器から取得した能力情報を保存しておき、次のフロー生成の要求があった場合には、保存していた能力情報を連携フローの生成に用いる。
【００９５】
図１１は、実施の形態３の情報処理システムのネットワーク構成および情報処理装置の機能的構成を示すブロック図である。本実施の形態にかかる情報処理システムは、図１１に示すように、情報処理装置１１００と、操作端末２００と、複数の入力機器および複数の出力機器としての複合機１、プロジェクタ１、プロジェクタ２がインターネットやＬＡＮ等のネットワークで接続された構成となっている。
【００９６】
ここで、操作端末２００、複合機１、プロジェクタ１、プロジェクタ２の機能は実施の形態２と同様である。また、複合機１、プロジェクタ１、プロジェクタ２の能力は、実施の形態２の複合機１、プロジェクタ１、プロジェクタ２と同様である。
【００９７】
情報処理装置１１００は、図１１に示すように、ＡＰＩを境界とした上位の層に、ＵＩ部１０１と、フロー実行アプリ５０３と、アプリケーション１０２とを有する。また、ＡＰＩを境界とした下位の層に、機器検索／サービス連携部１１１０と、デバイス操作部１０４と、記憶部１０５とを主に備えている。
【００９８】
ここで、ＵＩ部１０１、フロー実行アプリ５０３、デバイス操作部１０４、記憶部１０５の機能および構成は実施の形態２と同様である。
【００９９】
また、本実施の形態では、実施の形態２と同様に、ＵＩ部１０１は、操作端末２００から、入力機能を実行する入力機器、出力機能を実行する出力機器の指定が含まれず、所望の入力機能、出力機能が含まれる機能実行要求を受信する。
【０１００】
機器検索／サービス連携部１１１０は、サービス連携部１１１１と、機器検索部５１２と、能力管理部１１１３とを主に備えている。ここで、機器検索部５１２の機能および構成は実施の形態２と同様である。
【０１０１】
能力管理部１１１３は、機器検索部５１２より受信した能力情報を保存するハードディスクドライブ装置（ＨＤＤ）、フラッシュメモリ等の記憶媒体である。
【０１０２】
サービス連携部１１１１は、機器検索部５１２により受信した能力情報を能力管理部１１１３に保存する。また、機器検索部５１２により受信した能力情報または能力管理部１１１３に記憶された能力情報に基づいて、ユーザからの機能実行要求に対して連携可能な入力機器、出力機器を指定した連携フローを生成する。
【０１０３】
より具体的には、サービス連携部１１１１は、能力管理部１１１３に能力情報が登録されている場合に、能力管理部１１１３の能力情報に基づいて連携フローを生成する。一方、サービス連携部１１１１は、能力管理部１１１３に能力情報が登録されていない場合、あるいは能力管理部１１１３に保存されている能力情報が現在の入力機器や出力機器の能力に一致しない場合に、機器検索部５１２に入力機器、出力機器に対する能力情報の取得を行わせ、機器検索部５１２により受信した能力情報に基づいて連携フローを生成する。ここで、連携フローの具体的な生成手法については実施の形態２と同様である。
【０１０４】
次に、以上のように構成された本実施の形態の機器連携処理について具体例をあげて説明する。図１２は、実施の形態３の連携処理のうち、機能実行要求から連携フローの提示までのシーケンス図である。ここでは、「スキャン＋投影」の機能実行要求がユーザから操作端末２００に入力された場合を例にあげて説明する。
【０１０５】
ユーザの操作端末２００による機能実行要求から複合機１、プロジェクタ１，プロジェクタ２からの能力情報取得、フロー生成までの処理（ステップＳ３１〜Ｓ４０）は、実施の形態２と同様である。
【０１０６】
能力情報を取得し、フローが生成されたら、サービス連携部１１１１は、取得した能力情報を能力管理部１１１３に保存する（ステップＳ１２０１）。能力情報は、上述した図８のような形式で能力管理部１１１３に保存される。
【０１０７】
そして、サービス連携部１１１１は、取得した能力情報に基づいて、実施の形態２と同様に連携フローを生成し（ステップＳ４０）、これ以降は実施の形態２と同様に、生成された連携フローが操作端末２００に表示される（ステップＳ４１〜Ｓ４３）。
【０１０８】
このように能力管理部１１１３に保存した能力情報は次のように利用することができる。図１３は、実施の形態３の連携処理のうち、能力管理部１１１３に保存された能力情報を利用した、機能実行要求から連携フローの提示までのシーケンス図である。
【０１０９】
ユーザの操作端末２００による機能実行要求からフロー実行アプリ５０３によるフロー生成の要求までの処理（ステップＳ３１〜Ｓ３３）は、実施の形態２と同様である。
【０１１０】
サービス連携部１１１１は、フロー実行アプリ５０３からフロー生成の要求を受信したら、機器検索部５１２により入力機器、出力機器に対する能力情報の取得要求を行う代わりに、能力管理部１１１３に保存されている入力機器、出力機器の能力情報を読み出す（ステップＳ１３０１）。そして、サービス連携部１１１１は、読み出した能力情報に基づいて、実施の形態２と同様に連携フローを生成し（ステップＳ４０）、これ以降は実施の形態２と同様に、生成された連携フローが操作端末２００に表示される（ステップＳ４１〜Ｓ４３）。
【０１１１】
このように本実施の形態では、機器検索部５１２により取得した能力情報を能力管理部１１１３に保存し、次回以降のフロー生成に能力管理部１１１３に保存した能力情報を利用して連携フローの生成を行うので、入力機器、出力機器の連携処理の高速化を図ることができる。
【０１１２】
（実施の形態４）
実施の形態１〜３では、入力機器と出力機器との連携を行っていた。この実施の形態４では、さらに、クラウドコンピュータ上のサービス（以下、「クラウドサービス」という。）も入力機器と出力機器と連携可能にしている。
【０１１３】
また、実施の形態１〜３では、デバイス操作部１０４が実際の入力機器や出力機器の利用方法を把握しており、クラウドサービスが情報処理装置の提供元である自社製品である場合もデバイス操作部１０４がその利用方法を把握している。しかしながら、自社製品ではないサードベンダがクラウドサービスまでも接続しようとした場合、それらは増加スピードも速いこともあり、サードベンダのクラウドサービスに接続する処理部分を常に情報処理装置に搭載することは難しい。
【０１１４】
このため、この実施の形態４では、ＡＰＩ上にサードベンダが開発するカスタムアプリケーションを搭載可能とし、このカスタムアプリケーションによりサードベンダのクラウドサービスに接続可能としている。
【０１１５】
図１４は、実施の形態４の情報処理システムのネットワーク構成および情報処理装置の機能的構成を示すブロック図である。本実施の形態にかかる情報処理システムは、図１４に示すように、情報処理装置１４００と、操作端末２００と、複数の入力機器および複数の出力機器としての複合機１、プロジェクタ１、プロジェクタ２がインターネットやＬＡＮ等のネットワークで接続された構成となっている。また、情報処理装置１４００は、情報処理装置１４００の製造メーカが提供するデータ変換サービス２を含むクラウドコンピュータ７００と、サードベンダが提供するデータ変換サービス１を含むクラウドコンピュータ６００ともインターネット等のネットワークで接続可能となっている。
【０１１６】
ここで、操作端末２００、複合機１、プロジェクタ１、プロジェクタ２の機能は実施の形態２と同様である。また、複合機１、プロジェクタ１、プロジェクタ２の能力は、実施の形態２の複合機１、プロジェクタ１、プロジェクタ２と同様である。
【０１１７】
情報処理装置１４００は、図１４に示すように、ＡＰＩを境界とした上位の層に、ＵＩ部１０１と、フロー実行アプリ５０３と、アプリケーション１０２と、カスタムアプリケーション１４０３を有する。また、ＡＰＩを境界とした下位の層に、機器検索／サービス連携部１４１０と、デバイス操作部１０４と、記憶部１０５とを主に備えている。
【０１１８】
ここで、ＵＩ部１０１、フロー実行アプリ５０３、デバイス操作部１０４、記憶部１０５の機能および構成は実施の形態２と同様である。
【０１１９】
また、本実施の形態では、実施の形態２と同様に、ＵＩ部１０１は、操作端末２００から、入力機能を実行する入力機器、出力機能を実行する出力機器の指定が含まれず、所望の入力機能、出力機能が含まれる機能実行要求を受信する。
【０１２０】
また、フロー実行アプリ５０３からサービス連携部１４１１へ送信されるフロー生成の要求には、符号１４０２に示すように、データ変換サービス１によるデータ変換を示す「変換１」が含まれる。
【０１２１】
カスタムアプリケーション１４０３は、情報処理装置１４００が把握していないサードベンダのクラウドサービスであるデータ変換サービス１のデータ変換サービス１へ接続を実施するためのアプリケーションである。カスタムアプリケーション１４０３は、データ変換サービス（変換１）に接続するための方法を把握している。従って、図１４において、点線で囲んだカスタムアプリケーション１４０３とクラウドサービス６００とがサードベンダが提供するものとなる。
【０１２２】
また、カスタムアプリケーション１４０３は、データ変換サービス１の機能提供を可能にするため、ＡＰＩで定義された「加工処理」（実施の形態２で詳述）のインタフェイスを提供する。この加工処理のＡＰＩは、自社のクラウドサービスであるデータ変換サービス２を利用する場合にも使用される。
【０１２３】
機器検索／サービス連携部１４１０は、サービス連携部１４１１と、機器検索部５１２と、能力管理部１１１３とを主に備えている。ここで、機器検索部５１２、能力管理部１１１３の機能および構成は実施の形態３と同様である。
【０１２４】
本実施の形態では、機器検索部５１２は、サードベンダのデータ変換サービス１に対するインタフェイスを知らないため、データ変換サービス１に対し能力情報の取得要求を行うことができない。このため、ＡＰＩは、実施の形態２で説明した能力管理部１１１３にアクセスするための関数「能力情報登録」を提供しており、これにより、カスタムアプリケーション１４０３が、能力登録関数の呼び出しにより、ＡＰＩを利用して、データ変換サービス１の能力情報を能力管理部１１１３に保存可能となっている。ここで、データ変換サービス１の能力情報の例を符号１４０１に示す。
【０１２５】
また、サービス連携部１４１１は、自社のクラウドサービス７００の能力情報を能力管理部１１１３に保存する。その他のサービス連携部１４１１の機能は、実施の形態３と同様である。
【０１２６】
このように本実施の形態では、ＡＰＩ上にサードベンダが開発するカスタムアプリケーションを搭載可能としているので、入出機器、出力機器だけでなく、クラウドサービスとの連携も容易に行うことができる。
【０１２７】
（実施の形態５）
実施の形態５では、連携フローをサービス連携部で生成する代わりに、入力機器と出力機器の連携可能な組み合わせを操作端末に提示してユーザ側で組み合わせの決定を行うものである。すなわち、本実施の形態では、ユーザの指定により連携フローを構築する。
【０１２８】
本実施の形態の情報処理装置１４００は、図１４を用いて説明した実施の形態４と同様の構成とする。
【０１２９】
本実施の形態のサービス連携部１４１１は、連携フローに代えて、機能実行要求で指定された入力機能を有する１または複数の入力機器の一覧と、機能実行要求で指定された出力機能を有する１または複数の出力機器の一覧とを生成する。
【０１３０】
また、ＵＩ部１０１は、１または複数の入力機器の一覧と前記１または複数の出力機器の一覧とを操作端末２００に表示し、ユーザから１または複数の入力機器の一覧の中から１の入力機器と１または複数の出力機器の一覧の中から１の出力機器との選択を受け付ける。
【０１３１】
フロー実行アプリ５０３は、選択された入力機器および出力機器それぞれからなる連携フローを生成し、この連携フローに従って、選択された入力機器、出力機器に対して処理要求を行う。
【０１３２】
また、ＵＩ部１０１は、ユーザにより選択された入力機器と出力機器とが連携不能な場合に、ネットワークに接続され、入力機器から出力されるデータを出力機器の能力情報に適したデータに加工するデータ変換サービス等による加工処理を選択させる。
【０１３３】
この場合、フロー実行アプリ５０３は、選択された入力機器、選択された加工処理および選択された出力機器を含む連携フローを生成し各機器、サービスに対して処理要求を行う。
【０１３４】
例えば、サービス連携部１４１１が「スキャン＋投影」のフロー生成の要求をフロー実行アプリ５０３から受信した場合、図１５に示す応答を生成し、フロー実行アプリ５０３に送信する。
【０１３５】
この応答は、図１５に示すように、各機器やサービスの名称、それぞれの入力／出力の対応形式を示し、Ｆｉｒｓｔは指定された連携フローの入力に該当する機能（本例では、「スキャン」）、Ｌａｓｔは指定された連携フローの出力に該当する機能（本例では「投影」）をそれぞれ示す。
【０１３６】
フロー実行アプリ５０３が図１５に示す応答を受信した場合、ＵＩ部１０１は、図１６に示すフロー選択画面を操作端末２００に表示する。
【０１３７】
このフロー選択画面において、ユーザが入力機器、出力機器を選択することができる。ここで、例えば、複合機１と、プロジェクタ１が選択された場合、図１５の応答に示すように、複合機１の出力がＪｐｅｇで、プロジェクタ１の入力がＪｐｅｇなので、フロー実行アプリ５０３は、そのまま「スキャン＋投影」の連携フローを構築して実行する。
【０１３８】
しかし、フロー選択画面で、複合機１とプロジェクタ３が選択された場合には、図１５の応答から、プロジェクタ３の入力がＰＤＦであるため、そのままでは連携することができない。
【０１３９】
このため、本実施の形態のフロー実行アプリ５０３は、図１７に示すように、複合機１の出力であるＪｐｅｇと、プロジェクタ３の入力であるＰＤＦを変換可能な（すなわち、入力がＪｐｅｇであり、出力がＰＤＦである）加工１と加工２を、接続するために必要な処理としてフロー選択画面に表示し、ユーザに選択させる。
【０１４０】
この場合、ユーザが加工１を選択したとすると、フロー実行アプリ５０３は、複合機１→［Ｊｐｅｇ］→加工１→［ＰＤＦ］→プロジェクタ３の連携フローを構築して実行する。
【０１４１】
また、他の態様としては、入力機器側から順番にユーザに選択させるように構成することもできる。この場合、サービス連携部１４１１からフロー実行アプリ５０３への応答のデータ構造を以下のように構成する。
【０１４２】
複合機１＝＞［加工１，加工２］
複合機２＝＞［加工２，加工３］
加工１＝＞［プロジェクタ１］
加工２＝＞［プロジェクタ１，プロジェクタ２］
加工３＝＞［プロジェクタ２，プロジェクタ３］
【０１４３】
図１８は、フロー選択画面の遷移を示す図である。ＵＩ部１０１は、まず、入力機器として、複合機１、複合機２のいずれかを選択させるための画面を表示し、ユーザによる選択に併せて、加工１，加工２の選択画面、プロジェクタ１、プロジェクタ２の選択画面を順次、操作端末２００に表示する。そして、フロー実行アプリ５０３は、選択された機器による連携フローを生成する。
【０１４４】
このように本実施の形態では、ユーザからの選択により、連携する機器やサービスが決定されるので、連携の自由度を広げることが可能となる。
【０１４５】
（実施の形態６）
実施の形態６は、実施の形態４におけるクラウドサービスの能力情報にサービスによる処理時間を含むものである。
【０１４６】
図１９は、実施の形態６の情報処理システムのネットワーク構成および情報処理装置の機能的構成を示すブロック図である。本実施の形態にかかる情報処理システムは、図１９に示すように、情報処理装置１９００と、操作端末２００と、複数の入力機器および複数の出力機器としての複合機１、プロジェクタ１、プロジェクタ２がインターネットやＬＡＮ等のネットワークで接続された構成となっている。また、情報処理装置１９００は、情報処理装置１４００の製造メーカが提供するデータ変換サービス２を含むクラウドサービス７００と、サードベンダが提供するデータ変換サービス１を含むクラウドサービス６００ともインターネット等のネットワークで接続可能となっている。
【０１４７】
ここで、操作端末２００、複合機１、プロジェクタ１、プロジェクタ２、クラウドサービス６００、クラウドサービス７００の機能は実施の形態４と同様である。
【０１４８】
情報処理装置１９００は、図１９に示すように、ＡＰＩを境界とした上位の層に、ＵＩ部１０１と、フロー実行アプリ５０３と、アプリケーション１０２と、カスタムアプリケーション１９０３とを有する。また、ＡＰＩを境界とした下位の層に、機器検索／サービス連携部１９１０と、デバイス操作部１０４と、記憶部１０５とを主に備えている。
【０１４９】
ここで、ＵＩ部１０１、フロー実行アプリ５０３、デバイス操作部１０４、記憶部１０５、アプリケーション１０２の機能および構成は実施の形態２と同様である。
【０１５０】
本実施の形態のカスタムアプリケーション１９０３は、データ変換サービス１の能力情報として、実施の形態４の能力情報の内容に加えて、データ変換サービス１による平均処理時間を登録して、ＡＰＩを利用し能力管理部１９１３に保存する。符号１９０１は、本実施の形態の能力情報の一例を示している。
【０１５１】
機器検索／サービス連携部１９１０は、図１９に示すように、サービス連携部１４１１と、機器検索部５１２と、能力管理部１９１３とを主に備えている。ここで、機器検索部５１２、能力管理部１９１３の機能および構成は実施の形態４と同様である。
【０１５２】
サービス連携部１４１１は、データ変換サービス１を用いた連携フローを生成する場合には、カスタムアプリケーション１９０３により能力管理部１９１３に保存された能力情報の平均処理時間を抽出して、実施の形態４と同様にデータ変換サービス１によるデータ変換を示す「変換１」と平均処理時間を含めて連携フローを生成する。符号１９０２は、連携フローの一例であり、処理時間が登録されている。この例では、クラウドサービス６００のデータ変換サービス１が追加された連携フローは、これを含まない連携フローによる処理より、５秒処理時間が長くなる可能性があることを示している。
【０１５３】
同様の情報を、機器検索部５１２による各入力機器、出力機器の機器検索での問い合わせの応答である能力情報に付加するように構成してもよい。また、連携フローの一連の処理に要する時間の目安を連携フローに含ませることもできる。
【０１５４】
このように本実施の形態では、連携フローに処理時間を含めているので、ユーザは、複数の連携フローが提示された場合に、連携フローを選択する要素として機器やサービスだけでなく、その処理時間を考慮に入れて判断することが可能となる。
【０１５５】
（実施の形態７）
実施の形態７は、ユーザからの機能実行要求に操作端末２００の位置情報を含め、この位置情報を利用して機器検索を行うものである。
【０１５６】
図２０は、実施の形態７の情報処理システムのネットワーク構成および情報処理装置の機能的構成を示すブロック図である。本実施の形態にかかる情報処理システムは、図２０に示すように、情報処理装置２０００と、操作端末２００と、複数の入力機器および複数の出力機器としての複合機１、プロジェクタ１、プロジェクタ２がインターネットやＬＡＮ等のネットワークで接続された構成となっている。また、情報処理装置２０００は、情報処理装置１４００の製造メーカが提供するデータ変換サービス２を含むクラウドサービス７００ともインターネット等のネットワークで接続可能となっている。
【０１５７】
ここで、操作端末２００、複合機１、プロジェクタ１、プロジェクタ２、クラウドサービス７００の機能は実施の形態４と同様である。
【０１５８】
情報処理装置２０００は、図２０に示すように、ＡＰＩを境界とした上位の層に、ＵＩ部１０１と、フロー実行アプリ５０３と、アプリケーション１０２とを有する。また、ＡＰＩを境界とした下位の層に、機器検索／サービス連携部２０１０と、デバイス操作部１０４と、記憶部１０５とを主に備えている。
【０１５９】
ここで、ＵＩ部１０１、デバイス操作部１０４、記憶部１０５、アプリケーション１０２の機能および構成は実施の形態２と同様である。
【０１６０】
本実施の形態では、ＵＩ部１０１は、操作端末２００から、入力機能を実行する入力機器、出力機能を実行する出力機器の指定が含まれず、所望の入力機能、出力機能の他、操作端末２００の位置情報を含む機能実行要求を受信する。ここで、位置情報としては、ＧＰＳ等で取得した緯度・経度からなる位置座標等が該当するが、これに限定されるものではない。
【０１６１】
フロー実行アプリ５０３は、機能要求に含まれる入力機能、出力機能、位置情報を指定したフロー生成の要求をサービス連携部２０１１に送信する。このため、本実施の形態のＡＰＩの各関数には、パラメータとして位置情報が指定できる仕様となっている。
【０１６２】
機器検索／サービス連携部２０１０は、図２０に示すように、サービス連携部２０１１と、機器検索部５１２と、能力管理部１１１３とを主に備えている。ここで、機器検索部５１２、能力管理部１１１３の機能および構成は実施の形態４と同様である。
【０１６３】
ただし、能力管理部１１１３は、能力情報に含まれる入力機器、出力機器の位置情報も保存する。ここで、位置情報は、機器検索部５１２が能力情報の一部として取得する他、予め管理者等により登録しておくことが可能である。
【０１６４】
機器検索部５１２が能力情報の問い合わせにより受信する能力情報には、各機器の位置情報が含まれる。
【０１６５】
サービス連携部２０１１は、取得した能力情報により、連携可能な入力機器と出力機器との組み合わせであって、操作端末の位置情報から所定の範囲内の位置情報を有する入力機器、出力機器の組み合わせを抽出して、連携フローを生成する。
【０１６６】
次に、以上のように構成された本実施の形態の機器連携処理について具体例をあげて説明する。図２１は、実施の形態７の連携処理のうち、機能実行要求から連携フローの提示までのシーケンス図である。ここでは、「スキャン＋投影＋位置情報」の機能実行要求がユーザから操作端末２００に入力された場合を例にあげて説明する。
【０１６７】
操作端末２００は、ユーザにより指定された「スキャン＋投影＋位置情報」の機能実行要求を情報処理装置２０００に送信する（ステップＳ７１）。
【０１６８】
情報処理装置２０００のＵＩ部１０１は、この機能実行要求を受信し、機能実行要求で指定された入力機能（スキャン）および出力機能（投影）、機能実行要求に指定があればそのパラメータ（モノクロ／カラー等の入力属性、投影属性等）、位置情報を含むフロー生成要求をフロー実行アプリ５０３に送信する（ステップＳ７２）。フロー実行アプリ５０３は、このフロー生成の要求を、ＡＰＩを利用してサービス連携部２０１１に送信する（ステップＳ７３）。
【０１６９】
サービス連携部２０１１は、フロー実行アプリ５０３からフロー生成の要求を受信すると、機器検索部５１２に指示し、機器検索部５１２は、ネットワークに接続されている周辺の入力機器、出力機器である複合機１、プロジェクタ１、プロジェクタ２に能力情報取得要求を送信して（ステップＳ７４、Ｓ７６、Ｓ７８）、各機器から能力情報を取得する（ステップＳ７５、Ｓ７７、Ｓ７９）。これらの能力情報には、各機器の位置情報が含まれている（符号２１０１、２１０２、２１０３参照）。
【０１７０】
そして、サービス連携部２０１１は、機器検索部５１２により取得された、これらの能力情報を比較して、機能実行要求で指定された入力機能、出力機能を実現可能な入力機器と出力機器の組み合わせを求め、この組み合わせの中から、さらに操作端末２００と所定の範囲内の位置情報を有する入力機器、出力機器の組み合わせを選択し、その実行順番を示す連携フローを生成する（ステップＳ８０）。以降の処理（ステップＳ８０〜Ｓ８３）は、実施の形態２と同様である。
【０１７１】
このように本実施の形態では、機能実行要求に操作端末２００の位置情報を指定して、サービス連携部２０１１により連携フローを生成する際に、操作端末２００の位置情報から所定範囲内の位置情報を有する機器の組み合わせを抽出しているので、操作端末２００の近くでユーザが指定して入出力機能を実行して、入力機器と出力機器の連携を図り、ユーザが求める結果を早期に得ることができる。
【０１７２】
（変形例）
実施の形態７では、機器検索部５１２により入力機器、出力機器の能力情報を取得して、サービス連携部２０１１により連携フローを生成する際に、操作端末２００の位置情報から所定範囲内の位置情報を有する機器の組み合わせを抽出していたが、入力機器、出力機器の位置情報が予めわかっている場合には、機器検索部５１２により能力情報の取得要求をする際に、操作端末２００の位置情報から所定範囲内の位置情報の入力機器、出力機器を選択して能力情報の取得要求を行うように構成してもよい。
【０１７３】
図２２は、実施の形態７の変形例の連携処理のうち、機能実行要求から連携フローの提示までのシーケンス図である。この例では、位置情報としてＩＰアドレスを用い、入力機器、出力機器のＩＰアドレスが能力管理部１１１３に予め登録されているものとする。また、「スキャン＋投影＋操作端末ＩＰアドレス」の機能実行要求がユーザから操作端末２００に入力されたものとする。
【０１７４】
操作端末２００は、ユーザにより指定された「スキャン＋投影＋操作端末ＩＰアドレス」の機能実行要求を情報処理装置２０００に送信する（ステップＳ９１）。
【０１７５】
情報処理装置２０００のＵＩ部１０１は、この機能実行要求を受信し、機能実行要求で指定された入力機能（スキャン）および出力機能（投影）、機能実行要求に指定があればそのパラメータ（モノクロ／カラー等の入力属性、投影属性等）、操作端末ＩＰアドレスを含むフロー生成要求をフロー実行アプリ５０３に送信する（ステップＳ９２）。フロー実行アプリ５０３は、このフロー生成の要求を、ＡＰＩを利用してサービス連携部２０１１に送信する（ステップＳ９３）。
【０１７６】
サービス連携部２０１１は、フロー実行アプリ５０３からフロー生成の要求を受信すると、機器検索部５１２に指示し、機器検索部５１２は、能力管理部１１１３を参照し、ネットワークに接続されている周辺の入力機器、出力機器である複合機１、プロジェクタ１、プロジェクタ２の中から、フロー生成の要求で指定された操作端末ＩＰアドレスと一定条件（例えば、同一セグメントや所定の範囲内）を満たすＩＰアドレスを有する機器を選択し、選択された機器に対し能力取得要求を行う。
【０１７７】
本例では、機器検索部５１２は、ＩＰアドレスが「１９２．１６８．１１．＊＊」である入力機器、出力機器を選択する。この結果、ＩＰアドレスが「１９２．１６８．１１．２」の複合機１と、ＩＰアドレスが「１９２．１６８．１１．５０」のプロジェクタ１を選択し、それぞれに対して能力情報要求を送信し（ステップＳ９４、Ｓ９６）、複合機１、プロジェクタ１のそれぞれから能力情報を取得する（ステップＳ９５、Ｓ９７）。
【０１７８】
ここで、プロジェクタ２はＩＰアドレスが「１９２．１６８．１２．２００」であるため、選択されず能力情報取得要求は送信されない。
【０１７９】
これ以降は、サービス連携部２０１１は、実施の形態２と同様に、取得した能力情報に基づいて連携フローを生成し（ステップＳ９８）、以降の処理（ステップＳ９９〜Ｓ１０１）は、実施の形態２と同様である。
【０１８０】
このように本変形例では、機器検索部５１２により能力情報の取得要求をする際に、操作端末２００の位置情報から所定範囲内の位置情報の入力機器、出力機器を選択して能力情報の取得要求を行って連携フローを生成しているので、実施の形態７と同様の効果を有する他、ネットワーク負荷を軽減することができる。
【０１８１】
（実施の形態８）
実施の形態８は、操作端末を所持するユーザが会議室へ入室した場合に、会議室内のプロジェクタ等の機器に操作端末をダイレクトに接続して、機器のＩＤを取得し、そのＩＤを指定して情報処理装置に機能実行要求を行って、機器による入力機能、出力機能を行わせるものである。
【０１８２】
図２３は、実施の形態８のネットワーク構成および情報処理装置の機能的構成を示すブロック図である。図２３に示すように、本実施の形態の情報処理システムは、情報処理装置１１００と、操作端末２３００と、複合機１、プロジェクタ１、プロジェクタ２等の入出力機器とを備えた構成となっている。ここで、本実施の形態の情報処理装置１１００は、実施の形態３と同様の構成および機能を有している。
【０１８３】
操作端末２３００は、ユーザが所持可能な端末であり、例えば、スマートフォンや携帯電話等の携帯端末、タブレット等が該当するがこれらに限定されるものではない。操作端末２３００は、図２３に示すように、ＵＩ部２３０１と、機器検索部２３０２と、実行要求部２３０３を備えている。
【０１８４】
ＵＩ部２３０１は、ユーザに対して各種画面を表示したり、ユーザからの各種操作を受け付ける。
【０１８５】
機器検索部２３０２は、ネットワーク内にある複合機１、プロジェクタ１、プロジェクタ２等の入出力機器を検索し、検索された入出力機器とのアドホックなネットワーク接続を確立する。また、機器検索部２３０１は、アドホックなネットワーク接続を確立した入出力機器に、機器を識別するための識別情報であるＩＤを要求し、当該ＩＤを受信する。
【０１８６】
実行要求部２３０３は、ＩＤを指定した機能実行要求を、情報処理装置１１００に対して送信する。
【０１８７】
複合機１、プロジェクタ１、プロジェクタ２等の入出力機器は、操作端末２３００からＩＤの要求を受信したら、自己のＩＤを操作端末２３００に送信する。
【０１８８】
情報処理装置１１００は、操作端末２３００から機能実行要求を受信したら、実施の形態３と同様の処理により、入出力機器に各機能を実行させる。
【０１８９】
次に、以上のように構成された本実施の形態の情報処理システムによる機能実行処理について説明する。図２４は、実施の形態８の機能実行処理のシーケンス図である。図２４の例では、入出力機器としてプロジェクタ１を用いる場合を説明するが、他の機器であっても同様に行われる。
【０１９０】
まず、操作端末２３００の機器検索部２３０２は、ネットワーク内で機器を検索し、プロジェクタ１とアドホックなネットワークを確立する（ステップＳ２４０１）。次に、操作端末２３００の機器検索部２３０２は、アドホックなネットワークを確立したプロジェクタ１に対してプロジェクタ１のＩＤを要求する（ステップＳ２４０２）。
【０１９１】
ＩＤの要求を受信したプロジェクタ１は、自己のＩＤを操作端末２３００に送信する（ステップＳ２４０３）。
【０１９２】
操作端末２３００は、プロジェクタ１のＩＤを受信すると、情報処理装置１１００に対して、ＩＤを指定した機能実行要求を送信する（ステップＳ２４０４）。これにより、機能実行要求を受信した情報処理装置１１００は、実施の形態３と同様に、プロジェクタ１に対して投影を実行させることになる。
【０１９３】
このように本実施の形態では、操作端末２３００がプロジェクタ１とアドホックなネットワーク接続により、ＩＤを取得して、そのＩＤを指定して情報処理装置１１００に機能実行要求を行ってプロジェクタ１に投影処理を実行させているので、会議室に入ってきたユーザが会議室にあるプロジェクタ１を用いたい場合でも、プロジェクタ１のＩＰアドレスを知らずとも、プロジェクタ１に所望の画像や文書などを投影させることができ、ユーザの便宜となる。
【０１９４】
（実施の形態９）
実施の形態９は、操作端末を所持するユーザが会議室へ入室した場合に、会議室内のプロジェクタ等の機器に操作端末をダイレクトに接続して、操作端末から直接、機器による入力機能、出力機能を行わせるものである。
【０１９５】
図２５は、実施の形態９のネットワーク構成および情報処理装置の機能的構成を示すブロック図である。図２５に示すように、本実施の形態の情報処理システムは、情報処理装置１１００と、操作端末２５００と、複合機１、プロジェクタ１、プロジェクタ２等の入出力機器とを備えた構成となっている。ここで、本実施の形態の情報処理装置１１００は、実施の形態３と同様の構成および機能を有している。
【０１９６】
操作端末２５００は、ユーザが所持可能な端末であり、例えば、スマートフォンや携帯電話等の携帯端末、タブレット等が該当するがこれらに限定されるものではない。操作端末２５００は、図２５に示すように、ＵＩ部２３０１と、機器検索部２５０２と、アプリケーション２５０１とを備えている。ここで、ＵＩ部２３０１の機能については実施の形態８と同様である。
【０１９７】
機器検索部２５０２は、実施の形態８と同様に、ネットワーク内で、複合機１、プロジェクタ１、プロジェクタ２等の入出力機器を検索し、検索された入出力機器とのアドホックなネットワーク接続を確立する。また、本実施の形態の機器検索部２５０２は、アドホックなネットワーク接続を確立した入出力機器から、入出力機器における機能を実行するためのコマンドを受信する。このコマンドには、入出力機器のＵＲＩ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｉｄｅｎｔｉｆｉｅｒ）が含まれている。
【０１９８】
アプリケーション２５０１は、複合機１、プロジェクタ１、プロジェクタ２等の入出力機器に対して、ＵＲＩを含むコマンドを発行する。
【０１９９】
複合機１、プロジェクタ１、プロジェクタ２等の入出力機器は、操作端末２５００の機器検索部２５０２からコマンドを要求された場合に、ＵＲＩを含むコマンドを操作端末２５００に送信する。また、入出力機器は、操作端末２５００のアプリケーション２５０１からコマンドを発行されたら、各機能を実行する。
【０２００】
次に、以上のように構成された本実施の形態の情報処理システムによる機能実行処理について説明する。図２６は、実施の形態９の機能実行処理のシーケンス図である。図２６の例では、入出力機器としてプロジェクタ１を用いる場合を説明するが、他の機器であっても同様に行われる。
【０２０１】
まず、操作端末２５００の機器検索部２５０２は、ネットワーク内で機器を検索し、プロジェクタ１とアドホックなネットワークを確立する（ステップＳ２６０１）。次に、操作端末２５００の機器検索部２５０２は、アドホックなネットワークを確立したプロジェクタ１に対してプロジェクタ１の投影機能を実行するためのＵＲＩを含むコマンドを要求する（ステップＳ２６０２）。
【０２０２】
コマンドの要求を受信したプロジェクタ１は、投影機能を実行するためのＵＲＩを含むコマンドを操作端末２５００に送信する（ステップＳ２６０３）。
【０２０３】
操作端末２５００は、プロジェクタ１からコマンドを受信すると、ＵＲＩを指定してコマンドをプロジェクタ１に発行する（ステップＳ２６０４）。これにより、プロジェクタ１では、投影処理が実行される（ステップＳ２６０５）。
【０２０４】
このように本実施の形態では、操作端末２５００がプロジェクタ１とアドホックなネットワーク接続により、機能実行のためのコマンドを取得して、そのコマンドを発行することにより、プロジェクタ１に投影処理を実行させているので、会議室に入ってきたユーザが会議室にあるプロジェクタ１を用いたい場合でも、プロジェクタ１のＩＰアドレスを知らずとも、プロジェクタ１に所望の画像や文書などを投影させることができ、ユーザの便宜となる。
【０２０５】
（実施の形態１０）
図２７は、実施の形態１０のネットワーク構成図である。本実施の形態の情報処理システムは、図２７に示すように、３つの情報処理装置２７００，２８００，２９００と、複合機１、プロジェクタ１、プロジェクタ２等の入出力機器とから構成される。
【０２０６】
図２７に示すように、情報処理装置２８００と複合機１、プロジェクタ１、プロジェクタ２等の入出力機器とは、ローカルネットワーク１（第１ネットワーク）内で接続されている。また、情報処理装置２７００は、パブリックネットワーク（第２ネットワーク）内に存在する。情報処理装置２９００は、ローカルネットワーク２（第３ネットワーク）内に存在する。
【０２０７】
そして、情報処理装置２８００と情報処理装置２７００は互いにアクセス可能であり、情報処理装置２９００と情報処理装置２７００も互いにアクセス可能である。ここで、会議室には、情報処理装置２８００と、複合機１、プロジェクタ１、プロジェクタ２等の入出力機器とがあり、ローカルネットワーク１で接続されているものとする。そして、このとき、操作端末２３００を所持するユーザが会議室に入室し、会議室内の入出力機器を使用するものとする。本実施の形態では、操作端末２３００から会議室内の入出力機器を使用するために、操作端末２３００がパブリックネットワーク内の情報処理装置２７００に接続する。以下、詳細に説明する。
【０２０８】
図２８は、実施の形態１０のパブリックネットワーク内の情報処置装置２７００の機能的構成を示すブロック図である。本実施の形態の情報処理装置２７００は、図２８に示すように、ＵＩ部１０１と、アプリケーション１０２と、フロー実行アプリ５０３と、デバイス操作部１０４と、サービス連携部１１１１と、能力管理部１１１３と、記憶部２７２０と、管理部２７３０と、キュー２７４０とを主に備えている。ここで、ＵＩ部１０１、アプリケーション１０２、デバイス操作部１０４、フロー実行アプリ５０３、サービス連携部１１１１、能力管理部１１１３の機能、構成は実施の形態３と同様である。また、情報処理装置２７００は、実施の形態３と同様のＡＰＩも有している。
【０２０９】
本実施の形態の管理部２７３０は、ローカルネットワーク１の情報処理装置２８００から、ローカルネットワーク１内で情報処理装置２８００に接続された入出力機器の能力情報を受信し、能力管理部１１１３を介して記憶部２７２０に保存する。また、管理部２７３０は、ローカルネットワーク２内の情報処理装置２９００からデータ変換サービスの能力情報を受信して、記憶部２７２０に保存する。ここで、記憶部２７２０は、能力情報を保存するＨＤＤ、メモリ等の記憶媒体である。
【０２１０】
また、管理部２７３０は、サービス連携部１１１１で生成された連携フローを実行する際に、連携フローに登録された処理をキュー２７４０に一時的に保存する。さらに、管理部２７３０は、キュー２７４０に保存された処理を読み出して、処理に応じて、ローカルネットワーク１の情報処理装置２８００に入力処理、出力処理の要求を行ったり、ローカルネットワーク２の情報処理装置２９００に加工処理の要求を行う。キュー２７４０は、先入れ先出し方式（ＦＩＦＯ：Ｆｉｒｓｔ  Ｉｎ−Ｆｉｒｓｔ  Ｏｕｔ）のキューであり、メモリ等の記憶媒体上に生成される。
【０２１１】
図２９は、実施の形態１０のローカルネットワーク１内の情報処理装置２８００の機能的構成を示すブロック図である。本実施の形態の情報処理装置２８００は、図２９に示すように、ＵＩ部１０１と、アプリケーション１０２と、フロー実行アプリ５０３と、デバイス操作部１０４と、記憶部１０５と、機器検索部５１２、サービス連携部１１１１および能力管理部１１１３を含む機器検索／サービス連携部１１１０と、クライアント部２８０１とを主に備えている。ここで、ＵＩ部１０１、アプリケーション１０２、フロー実行アプリ５０３、デバイス操作部１０４、記憶部１０５、機器検索部５１２、サービス連携部１１１１、能力管理部１１１３の機能、構成は実施の形態３と同様である。また、情報処理装置２８００は、実施の形態３と同様のＡＰＩも有している。
【０２１２】
クライアント部２８０１は、能力管理部１１１３が取得した入出力機器の能力情報を、パブリックネットワーク内の情報処理装置２７００で一定期間ごとに送信する。また、クライアント部２８０１は、パブリックネットワーク内の情報処理装置２７００から、入力処理の要求、出力処理の要求を受信し、これらの要求をデバイス操作部１０４に渡して各処理を実行させる。
【０２１３】
また、実施の形態１と同様に、プロジェクタ１はＪｐｅｇ形式の画像データの投影が可能であり、プロジェクタ１はＴｉｆｆ形式の画像データの投影が可能であるものとする。
【０２１４】
図３０は、ローカルネットワーク２内の情報処理装置２９００の機能的構成を示すブロック図である。本実施の形態の情報処理装置２９００は、図３０に示すように、クライアント部２９０１と、機器検索／サービス連携部２９１０と、データ変換サービス２９２０とを主に備えている。
【０２１５】
クライアント部２９０１は、データ変換サービス２９２０の能力情報をパブリックネットワーク内の情報処理装置２７００に送信する。また、クライアント部２９０１は、パブリックネットワーク内の情報処理装置２７００から加工処理の要求を受信し、機器検索／サービス連携部２９１０に受け渡す。
【０２１６】
機器検索／サービス連携部２９１０は、クライアント部２９０１から加工処理の要求を受け取り、データ変換サービス２９２０にデータ変換を実行させる。また、機器検索／サービス連携部２９１０は、データ変換サービス２９２０から能力情報を取得してクライアント部２９０１に受け渡す。
【０２１７】
次に、以上のように構成された本実施の形態の情報処理システムによる連携フロー生成処理について説明する。図３１は、実施の形態１０の連携フロー生成処理の手順を示すシーケンス図である。
【０２１８】
ローカルネットワーク１の情報処理装置２８００の機器検索／サービス連携部１１１０は、複合機１、プロジェクタ１、プロジェクタ２等のローカルネットワーク１内の入出力機器から能力情報を収集する（ステップＳ３１０１ａ，Ｓ３１０１ｂ，Ｓ３１０１ｃ）。そして、情報処理装置２８００の機器検索／サービス連携部１１１０は、収集した能力情報を記憶部１０５に登録（保存）する（ステップＳ３１０２）。
【０２１９】
そして、機器検索／サービス連携部１１１０は、記憶部１０５に保存された能力情報を一定期間ごとに読み出して、クライアント部２８０１に送出する（ステップＳ３１０３）。クライアント部２８０１は、機器検索／サービス連携部１１１０から受け取った能力情報を一定期間ごとに、パブリックナネットワークの情報処理装置２７００に送信する（ステップＳ３１０４）。
【０２２０】
パブリックネットワーク内の情報処理装置２７００では、管理部２７３０がローカルネットワーク１の情報処理装置２８００から送信された能力情報を受信し、能力管理部１１１３が受信した能力情報を記憶部２７２０に登録（保存）する（ステップＳ３１０５）。
【０２２１】
一方、会議室に入室したユーザにより操作端末２３００から機能実行要求をパブリックネットワークの情報処理装置２７００に対して送信する（ステップＳ３１１０）。ここで、一例として、機能実行要求は、プロジェクタ１のＩＤを指定した投影の実行要求を例に挙げて説明する。すなわち、操作端末２３００は、機能実行要求「ファイル＋投影（プロジェクタ１のＩＤ）」を情報処理装置２７００に送信するものとする。ここで、ファイルは、ＰＤＦ形式の投影対象の画像データであるとする。なお、操作端末２３００は、プロジェクタ１のＩＤを実施の形態８と同様の手法で取得しているものとする。
【０２２２】
機能実行要求を受信した情報処理装置２７００によるフロー生成処理は、実施の形態３と同様に行われる。すなわち、機能実行要求を情報処理装置２７００のＵＩ部１０１で受信し、ＵＩ部１０１はフロー生成要求をフロー実行アプリ５０３に送信する（ステップＳ３１１１）。フロー実行アプリ５０３は、受信したフロー生成要求をサービス連携部１１１１に送信する（ステップＳ３１１２）。
【０２２３】
サービス連携部１１１１は、フロー生成要求を受信すると、記憶部１０５の能力情報を読み込んで（ステップＳ３１１３）、能力情報に基づいて連携フローを生成する（ステップＳ３１１４）。この例の機能実行要求「ファイル＋投影（プロジェクタ１のＩＤ）」では、ファイルがＰＤＦ形式の画像データであり、プロジェクタ１の能力情報では出力形式はＪｐｅｇであるため、ファイルをＪｐｅｇ形式に変換する必要がある。このため、サービス連携部１１１１は、ローカルネットワーク２の情報処理装置２９００のデータ変換サービス２９２０の能力情報を参照して、投影の出力処理だけではなく、データ変換サービス２９２０によるデータ変換を加工処理として連携フローに登録する。
【０２２４】
この結果、サービス連携部１１１１は、「加工処理（変換，ファイル，変換属性（ＰＤＦ−Ｊｐｅｇ），データ変換サービス２９２０）＋出力処理（投影，ファイル，プロジェクタ１のＩＤ）」という連携フローを生成することになる。なお、この場合、プロジェクタ等の入出力機器やデータ変換サービスが複数ある場合、これらの能力情報により、対応可能な複数の連携フローが生成される場合もある。
【０２２５】
このように一または複数の連携フローが生成されたら、サービス連携部１１１１から、フロー実行アプリ５０３を介して、ＵＩ部１０１へ応答が送信される（ステップＳ３１１５，Ｓ３１１６）。そして、ＵＩ部１０１から操作端末２３００へ生成された連携フローが送信され、操作端末２３００で表示される（ステップＳ３１１７）。
【０２２６】
図３２、３３は、実施の形態１０のフロー実行処理の手順を示すシーケンス図である。操作端末２３００で連携フローが表示されたら、ユーザが所望の連携フローの選択を情報処理装置２７００のＵＩ部１０１に送信する（ステップＳ３２０１）。ＵＩ部１０１は、選択された連携フローの実行要求をフロー実行アプリ５０３に送信する（ステップＳ３２０２）。
【０２２７】
フロー実行アプリ５０３は、連携フローを解析し、連携フローに登録されている処理の要求を登録されている順番でサービス連携部１１１１に送信する。この例では、連携フローとして、「加工処理（変換，ファイル，変換属性（ＰＤＦ−Ｊｐｅｇ），データ変換サービス２９２０）＋出力処理（投影，ファイル，プロジェクト１のＩＤ）」が登録されているので、フロー実行アプリ５０３は、まず、加工処理（加工処理（変換，ファイル，変換属性（ＰＤＦ−Ｊｐｅｇ），データ変換サービス２９２０））の要求を加工処理対象の画像データとともにサービス連携部１１１１に送信する（ステップＳ３２０３）。サービス連携部１１１１は、加工処理の要求を、管理部２７３０に送信する（ステップＳ３２０４）。管理部２７３０は、記憶部２７２０からデータ変換サービス２９２０の能力情報を取得して（ステップＳ３２０５）、加工処理（変換，ファイル，変換属性（ＰＤＦ−Ｊｐｅｇ），データ変換サービス２９２０）をキュー２７４０に登録する（ステップＳ３２０６）。
【０２２８】
また、フロー実行アプリ５０３は、連携フローで加工処理の次に登録されている出力処理（出力処理（投影，ファイル，プロジェクト１のＩＤ））の要求を、サービス連携部１１１１に送信する（ステップＳ３２０７）。サービス連携部１１１１は、出力処理の要求を、管理部２７３０に送信する（ステップＳ３２０８）。管理部２７３０は、記憶部２７２０からプロジェクタ１の能力情報を取得して（ステップＳ３２０９）、出力処理（投影，ファイル，プロジェクト１のＩＤ）をキュー２７４０に登録する（ステップＳ３２１０）。
【０２２９】
次に、管理部２７３０は、キュー２７４０から、登録されている処理を取得する（ステップＳ３３０１）。キュー２７４０には、最初に加工処理が登録されているので、管理部２７３０は、加工処理（変換，ファイル，変換属性（ＰＤＦ−Ｊｐｅｇ），データ変換サービス２９２０）の要求をローカルネットワーク２の情報処理装置２９００に送信する（ステップＳ３３０２）。
【０２３０】
ローカルネットワーク２の情報処理装置２９００では、クライアント部２９０１により加工処理の要求を受信し、かかる要求を機器検索／サービス連携部２９１０に送信する（ステップＳ３３０３）。そして、機器検索／サービス連携部２９１０は、加工処理の要求で指定されたファイルで示される画像データとともにデータ変換要求をデータ変換サービス２９２０に対して行う（ステップＳ３３０４）。
【０２３１】
これによりデータ変換サービス２９２０によるファイルのデータ変換が行われ（ステップＳ３３０５）、データ変換が完了したら、変換後のファイルとともに完了通知をパブリックネットワークの情報処理装置２７００に送信する（ステップＳ３３０６，Ｓ３３０７，Ｓ３３０８）。
【０２３２】
次に、パブリックネットワークの情報処理装置２７００の管理部２７３０は、キュー２７４０から、次に登録されている処理を取得する（ステップＳ３３０９）。キュー２７４０には、加工処理の次に出力処理が登録されているので、管理部２７３０は、出力処理の要求（出力処理（投影，ファイル，プロジェクト１のＩＤ））を、データ変換後のファイルとともにローカルネットワーク１の情報処理装置２８００に送信する（ステップＳ３３１０）。
【０２３３】
ローカルネットワーク１の情報処理装置２８００では、クライアント部２８０１で出力処理の要求を受信すると、デバイス操作部１０４にこれを送信し（ステップＳ３３１１）、デバイス操作部１０４は、変換後のファイルとともに投影要求をＩＤで指定されたプロジェクタ１に送信する（ステップＳ３３１２）。プロジェクタ１は、投影要求で指定された変換後のファイルの投影処理を行う（ステップＳ３３１３）。
【０２３４】
そして、プロジェクタ１は投影処理を完了すると、完了通知を情報処理装置２８００に送信し（ステップＳ３３１４）、情報処理装置２８００は、この完了通知をパブリックネットワークの情報処理装置２７００に送信する（ステップＳ３３１５、Ｓ３３１６）。
【０２３５】
パブリックネットワークの情報処理装置２７００は、管理部２７３０で完了通知を受信すると、この完了通知を、デバイス操作部１０４、フロー実行アプリ５０３、ＵＩ部１０１を介して、操作端末２３００に送信する（ステップＳ３３１７，３３１８，３３１９，３３２０）。
【０２３６】
このように本実施の形態では、ユーザが会議室へ入室して会議室内のローカルネットワーク１内の入出力機器を使用する際、ユーザの操作端末２３００がローカルネットワーク１に接続不可能な状況でも、パブリックネットワークの情報処理装置２７００にアクセスして処理要求を行えば、入出力機器の入出力機能を実行することができ、ユーザの便宜となる。
【０２３７】
（実施の形態１１）
図３４は、実施の形態１１のネットワーク構成図である。本実施の形態の情報処理システムは、図３４に示すように、２つの情報処理装置３４００，２９００と、複合機１、プロジェクタ１、プロジェクタ２等の入出力機器とから構成される。
【０２３８】
図３４に示すように、複合機１、プロジェクタ１、プロジェクタ２等の入出力機器は、ローカルネットワーク１（第１ネットワーク）内に存在するまた、情報処理装置３４００は、パブリックネットワーク（第２ネットワーク）内に存在する。情報処理装置２９００は、ローカルネットワーク２（第３ネットワーク）内に存在する。
【０２３９】
そして、複合機１、プロジェクタ１、プロジェクタ２等の入出力機器と情報処理装置３４００は互いにアクセス可能であり、情報処理装置２９００と情報処理装置３４００も互いにアクセス可能である。ここで、ローカルネットワーク２の情報処理装置２９００の構成は実施の形態１０と同様である。
【０２４０】
ここで、会議室には、複合機１、プロジェクタ１、プロジェクタ２等の入出力機器が設置されて、ローカルネットワーク１内にあるものとする。また、実施の形態１と同様に、プロジェクタ１はＪｐｅｇ形式の画像データの投影が可能であり、プロジェクタ１はＴｉｆｆ形式の画像データの投影が可能であるものとする。
【０２４１】
そして、このとき、操作端末２３００を所持するユーザが会議室に入室し、会議室内の入出力機器を使用するものとする。本実施の形態では、操作端末２３００から会議室内の入出力機器を使用するために、操作端末２３００がパブリックネットワーク内の情報処理装置３４００に接続する。以下、詳細に説明する。
【０２４２】
図３５は、実施の形態１１のパブリックネットワーク内の情報処置装置３４００の機能的構成を示すブロック図である。本実施の形態の情報処理装置３４００は、図３５に示すように、ＵＩ部１０１と、アプリケーション１０２と、フロー実行アプリ５０３と、デバイス操作部１０４と、サービス連携部１１１１と、能力管理部１１１３と、記憶部２７２０と、管理部３４３０と、キュー２７４０とを主に備えている。ここで、ＵＩ部１０１、アプリケーション１０２、デバイス操作部１０４、フロー実行アプリ５０３、サービス連携部１１１１、能力管理部１１１３、記憶部２７２０、キュー２７４０の機能、構成は実施の形態１０と同様である。また、情報処理装置３４００は、実施の形態３と同様のＡＰＩも有している。
【０２４３】
本実施の形態の管理部３４３０は、一定期間ごとに、ローカルネットワーク１内の複合機１、プロジェクタ１、プロジェクタ２等の入出力機器から、各機器の能力情報を受信し、受信した能力情報を能力管理部１１１３を介して記憶部２７２０に保存する。また、能力管理部１１１３は、キュー２７４０に登録された連携フローに登録された処理の要求を、ローカルネットワーク１内の複合機１、プロジェクタ１、プロジェクタ２等の入出力機器に対して送信して、各機能を実行させる。その他の管理部３４３０の機能は、実施の形態１０と同様である。
【０２４４】
次に、以上のように構成された本実施の形態の情報処理システムによる連携フロー生成処理について説明する。図３６は、実施の形態１１の連携フロー生成処理の手順を示すシーケンス図である。
【０２４５】
パブリックネットワークの情報処理装置３４００の管理部３４３０は、一定期間ごとに、複合機１、プロジェクタ１、プロジェクタ２等のローカルネットワーク１内の入出力機器から能力情報を収集する（ステップＳ３５０１ａ，Ｓ３５０１ｂ，Ｓ３５０１ｃ）。そして、管理部３４３０は、ローカルネットワーク１内の入出力機器から送信された能力情報を受信し、能力管理部１１１３が受信した能力情報を記憶部２７２０に登録（保存）する（ステップＳ３１０５）。
【０２４６】
一方、会議室に入室したユーザにより操作端末２３００から機能実行要求をパブリックネットワークの情報処理装置３４００に対して送信する（ステップＳ３１１０）。これにより、図３１で説明した実施の形態１０の連携フロー生成処理と同様に、連携フローが生成され、操作端末２３００で表示される（ステップＳ３１１１〜Ｓ３１１７）。
【０２４７】
図３７は、実施の形態１１のフロー実行処理の手順を示すシーケンス図である。操作端末２３００で連携フローが表示された場合に、ユーザが所望の連携フローの選択を行って、連携フローに登録された各処理がキュー２７４０に登録されるまでの処理は、図３２を用いて説明した実施の形態１０と同様に行われる。なお、本実施の形態でも、連携フローとして、「加工処理（変換，ファイル，変換属性（ＰＤＦ−Ｊｐｅｇ），データ変換サービス２９２０）＋出力処理（投影，ファイル，プロジェクト１のＩＤ）」が生成されたものとする。
【０２４８】
次に、管理部３４３０は、キュー２７４０から、登録されている処理を取得する（ステップＳ３３０１）。キュー２７４０には、最初に加工処理が登録されているので、管理部２７３０は、加工処理（変換，ファイル，変換属性（ＰＤＦ−Ｊｐｅｇ），データ変換サービス２９２０）の要求をローカルネットワーク２の情報処理装置２９００に送信する（ステップＳ３３０２）。
【０２４９】
ローカルネットワーク２の情報処理装置２９００では、クライアント部２９０１により加工処理の要求を受信し、かかる要求を機器検索／サービス連携部２９１０に送信する（ステップＳ３３０３）。そして、機器検索／サービス連携部２９１０は、加工処理の要求で指定されたファイルで示される画像データとともにデータ変換要求をデータ変換サービス２９２０に対して行う（ステップＳ３３０４）。
【０２５０】
これによりデータ変換サービス２９２０によるファイルのデータ変換が行われ（ステップＳ３３０５）、データ変換が完了したら、変換後のファイルとともに完了通知をパブリックネットワークの情報処理装置３４００に送信する（ステップＳ３３０６，Ｓ３３０７，Ｓ３３０８）。
【０２５１】
また、パブリックネットワークの情報処理装置３４００の管理部３４３０が、キュー２７４０から、次に登録されている処理を取得する（ステップＳ３３０９）。キュー２７４０には、加工処理の次に出力処理が登録されているので、管理部２７３０は、出力処理の要求（出力処理（投影，ファイル，プロジェクト１のＩＤ））を、データ変換後のファイルとともにローカルネットワーク１のプロジェクタ１に送信する（ステップＳ３６０１）。プロジェクタ１は、投影要求で指定されたデータ変換後のファイルの投影処理を行う（ステップＳ３６０２）。
【０２５２】
そして、プロジェクタ１は投影処理を完了すると、完了通知をパブリックネットワークの情報処理装置３４００に送信し（ステップＳ３６０３）、情報処理装置３４００は、この完了通知を管理部３４３０で受信し、管理部３４３０は、完了通知をデバイス操作部１０４、フロー実行アプリ５０３、ＵＩ部１０１を介して、操作端末２３００に送信する（ステップＳ３３１７，３３１８，３３１９，３３２０）。
【０２５３】
このように本実施の形態では、ユーザが会議室へ入室して会議室内のローカルネットワーク１内の入出力機器を使用する際、ユーザの操作端末２３００がローカルネットワーク１に接続不可能な状況でも、パブリックネットワークの情報処理装置３４００にアクセスして処理要求を行えば、入出力機器の入出力機能を実行することができ、ユーザの便宜となる。
【０２５４】
実施の形態１〜１１およびその変形例の情報処理装置は、ＣＰＵなどの制御装置と、ＲＯＭ（Read  Only  Memory）やＲＡＭなどの記憶装置と、ＨＤＤ、ＣＤドライブ装置などの外部記憶装置と、ディスプレイ装置などの表示装置と、キーボードやマウスなどの入力装置を備えたハードウェア構成となっている。
【０２５５】
実施の形態１〜１１およびその変形例の情報処理装置で実行される機器連携プログラムは、インストール可能な形式又は実行可能な形式のファイルでＣＤ−ＲＯＭ、フレキシブルディスク（ＦＤ）、ＣＤ−Ｒ、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）等のコンピュータで読み取り可能な記録媒体に記録されて提供される。
【０２５６】
また、実施の形態１〜１１およびその変形例の情報処理装置で実行される機器連携プログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。また、実施の形態１〜１１およびその変形例の情報処理装置で実行される機器連携プログラムをインターネット等のネットワーク経由で提供または配布するように構成しても良い。
【０２５７】
また、実施の形態１〜１１およびその変形例の情報処理装置で実行される機器連携プログラムを、ＲＯＭ等に予め組み込んで提供するように構成してもよい。
【０２５８】
実施の形態１〜１１およびその変形例の情報処理装置で実行される機器連携プログラムは、上述した各部（ＵＩ部、フロー実行アプリ、デバイス操作部、機器検索部、サービス連携部等）を含むモジュール構成となっており、実際のハードウェアとしてはＣＰＵ（プロセッサ）が上記記憶媒体から機器連携プログラムを読み出して実行することにより上記各部が主記憶装置上にロードされ、ＵＩ部、フロー実行アプリ、デバイス操作部、機器検索部、サービス連携部等が主記憶装置上に生成されるようになっている。
【符号の説明】
【０２５９】
１００，５００，１１００，１４００，１９００，２０００，２７００，２８００，２９００，３４００  情報処理装置
１０１，２３０１  ＵＩ部
１０２，２５０１  アプリケーション
１０３，５０３  フロー実行アプリ
１０４  デバイス操作部
１０５  記憶部
１１０，５１０，１４１０，１１１０，１９１０，２０１０  機器検索／サービス連携部
１１１，５１１，１１１１，１４１１，２０１１  サービス連携部
２００，２３００，２５００  操作端末
５１２，２３０２，２５０２  機器検索部
６００，７００  クラウドサービス
１１１３，１９１３  能力管理部
１４０３，１９０３  カスタムアプリケーション
２７２０  記憶部
２７３０  管理部
２７４０  キュー
【先行技術文献】
【特許文献】
【０２６０】
【特許文献１】特許第４４０３１３８号公報
【特許文献２】特許第４４０３１３９号公報
【図１】
2018133819.tif 000003
【図２】
2018133819.tif 000004
【図３】
2018133819.tif 000005
【図４】
2018133819.tif 000006
【図５】
2018133819.tif 000007
【図６】
2018133819.tif 000008
【図７】
2018133819.tif 000009
【図８】
2018133819.tif 000010
【図９】
2018133819.tif 000011
【図１０】
2018133819.tif 000012
【図１１】
2018133819.tif 000013
【図１２】
2018133819.tif 000014
【図１３】
2018133819.tif 000015
【図１４】
2018133819.tif 000016
【図１５】
2018133819.tif 000017
【図１６】
2018133819.tif 000018
【図１７】
2018133819.tif 000019
【図１８】
2018133819.tif 000020
【図１９】
2018133819.tif 000021
【図２０】
2018133819.tif 000022
【図２１】
2018133819.tif 000023
【図２２】
2018133819.tif 000024
【図２３】
2018133819.tif 000025
【図２４】
2018133819.tif 000026
【図２５】
2018133819.tif 000027
【図２６】
2018133819.tif 000028
【図２７】
2018133819.tif 000029
【図２８】
2018133819.tif 000030
【図２９】
2018133819.tif 000031
【図３０】
2018133819.tif 000032
【図３１】
2018133819.tif 000033
【図３２】
2018133819.tif 000034
【図３３】
2018133819.tif 000035
【図３４】
2018133819.tif 000036
【図３５】
2018133819.tif 000037
【図３６】
2018133819.tif 000038
【図３７】
2018133819.tif 000039
【手続補正書】
【提出日】平成30年5月18日(2018.5.18)
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００１
【補正方法】変更
【補正の内容】
【０００１】
本発明は、情報処理装置、システムおよび情報処理方法に関する。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０００６
【補正方法】変更
【補正の内容】
【０００６】
本発明は、上記に鑑みてなされたものであって、入力機器、出力機器、その他外部装置等の連携を容易に行うことができる情報処理装置、システムおよび情報処理方法を提供することを主な目的とする。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】０００７
【補正方法】変更
【補正の内容】
【０００７】
上述した課題を解決し、目的を達成するために、本発明は、情報処理装置であって、複数の機器に処理の実行要求を送信する要求送信手段と、前記複数の機器それぞれが実行できる処理を示す情報に基づいて、表示部に、前記複数の機器のいずれかを用いて実行可能な電子データを生成する１以上の入力処理と、前記複数の機器のいずれかを用いて実行可能な電子データを出力する１以上の出力処理と、を表示させる表示制御手段と、操作端末から送信される前記１以上の入力処理のうち一の入力処理と、前記１以上の出力処理のうち一の出力処理との指定を受け付ける受付手段と、前記複数の機器それぞれが実行できる処理を示す情報、及び、前記複数の機器それぞれが実行できる処理それぞれで利用できるデータ形式を示す情報、に基づいて、前記一の入力処理を実行できる機器と、前記一の出力処理を該機器で生成された電子データのデータ形式で実行できる他の機器との組み合わせを生成する生成手段と、を有し、前記表示制御手段は、前記生成手段で生成された機器の組み合わせを前記表示部に表示させ、前記要求送信手段は、前記機器の組み合わせのうち前記表示部を介して選択された一の組み合わせで示される前記一の入力処理を実行する第１の機器に前記一の入力処理の実行要求を送信し、前記一の組み合わせで示される前記一の出力処理を実行する第２の機器に前記一の入力処理で生成された電子データを用いた前記一の出力処理の実行要求を送信する。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】０００８
【補正方法】削除
【補正の内容】
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】０００９
【補正方法】削除
【補正の内容】
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】００１０
【補正方法】削除
【補正の内容】
【手続補正８】
【補正対象書類名】明細書
【補正対象項目名】００１３
【補正方法】変更
【補正の内容】
【００１３】
以下に添付図面を参照して、この発明にかかる情報処理装置、システムおよび情報処理方法の実施の形態を詳細に説明する。
【手続補正９】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
情報処理装置であって、
複数の機器に処理の実行要求を送信する要求送信手段と、
前記複数の機器それぞれが実行できる処理を示す情報に基づいて、表示部に、前記複数の機器のいずれかを用いて実行可能な電子データを生成する１以上の入力処理と、前記複数の機器のいずれかを用いて実行可能な電子データを出力する１以上の出力処理と、を表示させる表示制御手段と、
操作端末から送信される前記１以上の入力処理のうち一の入力処理と、前記１以上の出力処理のうち一の出力処理との指定を受け付ける受付手段と、
前記複数の機器それぞれが実行できる処理を示す情報、及び、前記複数の機器それぞれが実行できる処理それぞれで利用できるデータ形式を示す情報、に基づいて、前記一の入力処理を実行できる機器と、前記一の出力処理を該機器で生成された電子データのデータ形式で実行できる他の機器との組み合わせを生成する生成手段と、を有し、
前記表示制御手段は、前記生成手段で生成された機器の組み合わせを前記表示部に表示させ、
前記要求送信手段は、前記機器の組み合わせのうち前記表示部を介して選択された一の組み合わせで示される前記一の入力処理を実行する第１の機器に前記一の入力処理の実行要求を送信し、前記一の組み合わせで示される前記一の出力処理を実行する第２の機器に前記一の入力処理で生成された電子データを用いた前記一の出力処理の実行要求を送信する
ことを特徴とする情報処理装置。
【請求項２】
請求項１に記載の情報処理装置であって、
前記情報処理装置は、
前記複数の機器それぞれが実行できる処理を示す情報、及び、前記複数の機器それぞれが実行できる処理それぞれで利用できるデータ形式を示す情報、を前記複数の機器それぞれから取得する取得手段と、
前記取得手段で取得された情報を記憶する記憶手段と、を、さらに備え、
前記生成手段は、前記記憶手段に記憶された前記複数の機器それぞれが実行できる処理を示す情報、及び、前記複数の機器それぞれが実行できる処理それぞれで利用できるデータ形式を示す情報、に基づき、前記操作端末に前記一の入力処理と前記一の出力処理とを実行できる機器の組み合わせを生成する
ことを特徴とする情報処理装置。
【請求項３】
請求項１または２に記載の情報処理装置であって、
前記受付手段は、前記一の出力処理及び前記一の入力処理の実行要求を受け付けるとともに前記操作端末の位置情報を受け付け、
前記生成手段は、前記複数の機器それぞれの位置情報に基づき、前記複数の機器のうち前記操作端末の位置情報の示す位置から所定の範囲に位置する機器のうち前記一の入力処理と前記一の出力処理を実行できる機器の組み合わせを生成する
ことを特徴とする情報処理装置。
【請求項４】
請求項１に記載の情報処理装置であって、
前記情報処理装置は、電子データの変換を行う他の情報処理装置と接続され、
前記生成手段は、前記他の情報処理装置から変換できるデータ形式を示す他の能力情報に基づいて、前記他の情報処理装置のデータ形式の変換を用いて前記一の入力処理と前記一の出力処理とを実行できる機器の組み合わせを更に生成する
ことを特徴とする情報処理装置。
【請求項５】
請求項４に記載の情報処理装置であって、
前記要求送信手段は、前記他の情報処理装置のデータ形式の変換を用いて前記一の入力処理と前記一の出力処理とを実行できる機器の組み合わせが選択されたとき、前記他の情報処理装置に前記一の入力処理で生成された電子データのデータ形式の変換要求を送信し、前記一の組み合わせで示される前記一の出力処理を実行する前記第２の機器に前記他の情報処理装置でデータ形式が変換された電子データを用いた前記一の出力処理の実行要求を送信する
ことを特徴とする情報処理装置。
【請求項６】
請求項４または５に記載の情報処理装置であって、
前記他の能力情報は、前記他の情報処理装置による処理時間を含む、
ことを特徴とする情報処理装置。
【請求項７】
操作端末と、情報処理装置とを含むシステムであって、
複数の機器に処理の実行要求を送信する要求送信手段と、
前記複数の機器それぞれが実行できる処理を示す情報に基づいて、表示部に、前記複数の機器のいずれかを用いて実行可能な電子データを生成する１以上の入力処理と、前記複数の機器のいずれかを用いて実行可能な電子データを出力する１以上の出力処理と、を表示させる表示制御手段と、
前記操作端末から送信される前記１以上の入力処理のうち一の入力処理と、前記１以上の出力処理のうち一の出力処理との指定を受け付ける受付手段と、
前記複数の機器それぞれが実行できる処理を示す情報、及び、前記複数の機器それぞれが実行できる処理それぞれで利用できるデータ形式を示す情報、に基づいて、前記一の入力処理を実行できる機器と、前記一の出力処理を該機器で生成された電子データのデータ形式で実行できる他の機器との組み合わせを生成する生成手段と、を有し、
前記表示制御手段は、前記生成手段で生成された機器の組み合わせを前記表示部に表示させ、
前記要求送信手段は、前記機器の組み合わせのうち前記表示部を介して選択された一の組み合わせで示される前記一の入力処理を実行する第１の機器に前記一の入力処理の実行要求を送信し、前記一の組み合わせで示される前記一の出力処理を実行する第２の機器に前記一の入力処理で生成された電子データを用いた前記一の出力処理の実行要求を送信する
ことを特徴とするシステム。
【請求項８】
情報処理装置が実行する情報処理方法であって、
複数の機器に処理の実行要求を送信する要求送信ステップと、
前記複数の機器それぞれが実行できる処理を示す情報に基づいて、表示部に、前記複数の機器のいずれかを用いて実行可能な電子データを生成する１以上の入力処理と、前記複数の機器のいずれかを用いて実行可能な電子データを出力する１以上の出力処理と、を表示させる表示制御ステップと、
操作端末から送信される前記１以上の入力処理のうち一の入力処理と、前記１以上の出力処理のうち一の出力処理との指定を受け付ける受付ステップと、
前記複数の機器それぞれが実行できる処理を示す情報、及び、前記複数の機器それぞれが実行できる処理それぞれで利用できるデータ形式を示す情報、に基づいて、前記一の入力処理を実行できる機器と、前記一の出力処理を該機器で生成された電子データのデータ形式で実行できる他の機器との組み合わせを生成する生成ステップと、を含み、
前記表示制御ステップは、前記生成ステップで生成された機器の組み合わせを前記表示部に表示させ、
前記要求送信ステップは、前記機器の組み合わせのうち前記表示部を介して選択された一の組み合わせで示される前記一の入力処理を実行する第１の機器に前記一の入力処理の実行要求を送信し、前記一の組み合わせで示される前記一の出力処理を実行する第２の機器に前記一の入力処理で生成された電子データを用いた前記一の出力処理の実行要求を送信する
ことを特徴とする情報処理方法。