(57)【要約】【課題】ネットワーク上における機器の検索に際しより利便性の高いサービスを提供することのできる電子機器の提供を目的とする。【解決手段】ネットワークに接続されている機器の一覧情報を管理し、クライアントからの機器検索要求に応じて一覧情報に基づいてクライアントが所望する機器を検索し、該検索結果をクライアントに返信する電子機器であって、一覧情報に含まれているそれぞれの機器よりアクセス制御情報を取得する機器情報取得手段と、クライアントからの機器検索要求に応じ、一覧情報の中から当該クライアントが所望する機器を検索し、検索された機器に対する当該クライアントのアクセスの可否をアクセス制御情報に基づいて判定するアクセス判定手段とを有し、アクセス判定手段によってアクセスが可能であると判定された機器が存在するときに、アクセスが可能な機器に関する情報を検索結果として返信することにより上記課題を解決する。【選択図】図８
2008097368.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークに接続されている機器の一覧情報を管理し、クライアントからの機器検索要求に応じて前記一覧情報に基づいて前記クライアントが所望する機器を検索し、該検索結果を前記クライアントに返信する電子機器であって、
前記一覧情報に含まれているそれぞれの機器よりアクセス制御情報を取得する機器情報取得手段と、
前記クライアントからの前記機器検索要求に応じ、前記一覧情報の中から当該クライアントが所望する機器を検索し、検索された機器に対する当該クライアントのアクセスの可否を前記アクセス制御情報に基づいて判定するアクセス判定手段とを有し、
前記アクセス判定手段によってアクセスが可能であると判定された機器が存在するときに、前記アクセスが可能な機器に関する情報を前記検索結果として返信することを特徴とする電子機器。
【請求項２】
前記クライアントによってネットワーク上にマルチキャストされる、当該クライアントが機器を検索していることを示すメッセージの受信に応じ、当該電子機器によって機器の検索が可能であることを示す広告メッセージを送信する広告メッセージ送信手段を有し、
前記機器検索要求は、前記広告メッセージに応じて当該電子機器にユニキャストされることを特徴とする請求項１記載の電子機器。
【請求項３】
優先的に使用させる機器を示す優先機器情報に基づいて、前記アクセス判定手段によってアクセスが可能であると判定された機器の中から前記検索結果とする機器を判定する優先機器判定手段を有することを特徴とする請求項１又は２記載の電子機器。
【請求項４】
前記機器情報取得手段は、前記一覧情報に含まれているそれぞれの機器より当該機器の性能を示す情報を取得し、
前記優先機器判定手段は、前記性能の高い機器を前記検索結果とすることを特徴とする請求項３記載の電子機器。
【請求項５】
前記優先機器判定手段は、当該電子機器を前記検索結果とすることを特徴とする請求項３又は４記載の電子機器。
【請求項６】
ネットワークに接続されている機器の一覧情報を管理し、クライアントからの機器検索要求に応じて前記一覧情報に基づいて前記クライアントが所望する機器を検索し、該検索結果を前記クライアントに返信する電子機器が実行する機器検索方法であって、
前記一覧情報に含まれているそれぞれの機器よりアクセス制御情報を取得する機器情報取得手順と、
前記クライアントからの前記機器検索要求に応じ、前記一覧情報の中から当該クライアントが所望する機器を検索し、検索された機器に対する当該クライアントのアクセスの可否を前記アクセス制御情報に基づいて判定するアクセス判定手順とを有し、
前記アクセス判定手順においてアクセスが可能であると判定された機器が存在するときに、前記アクセスが可能な機器に関する情報を前記検索結果として返信することを特徴とする機器検索方法。
【請求項７】
前記クライアントによってネットワーク上にマルチキャストされる、当該クライアントが機器を検索していることを示すメッセージの受信に応じ、当該電子機器によって機器の検索が可能であることを示す広告メッセージを送信する広告メッセージ送信手順を有し、
前記機器検索要求は、前記広告メッセージに応じて当該電子機器にユニキャストされることを特徴とする請求項６記載の機器検索方法。
【請求項８】
優先的に使用させる機器を示す優先機器情報に基づいて、前記アクセス判定手順においてアクセスが可能であると判定された機器の中から前記検索結果とする機器を判定する優先機器判定手順を有することを特徴とする請求項６又は７記載の機器検索方法。
【請求項９】
前記機器情報取得手順は、前記一覧情報に含まれているそれぞれの機器より当該機器の性能を示す情報を取得し、
前記優先機器判定手順は、前記性能の高い機器を前記検索結果とすることを特徴とする請求項８記載の機器検索方法。
【請求項１０】
前記優先機器判定手順は、当該電子機器を前記検索結果とすることを特徴とする請求項８又は９記載の機器検索方法。
【請求項１１】
請求項６乃至１０いずれか一項記載の機器検索方法をコンピュータに実行させるための機器検索プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子機器、機器検索方法及び機器検索プログラムに関する。
【背景技術】
【０００２】
Ｗｅｂ  Ｓｅｒｖｉｃｅｓ  Ｄｙｎａｍｉｃ  Ｄｉｓｃｏｖｅｒｙ（ＷＳ−Ｄｉｓｃｏｖｅｒｙ）は、主としてマルチキャストによって所望のＷｅｂサービスを検索するためのプロトコルを定義する標準仕様である（例えば、特許文献１）。
【０００３】
図１は、ＷＳ−Ｄｉｓｃｏｖｅｒｙに基づいたＷｅｂサービスの検索処理を説明するためのシーケンス図である。
【０００４】
各Ｗｅｂサービスは、例えば、ネットワークに接続したときにＨｅｌｌｏメッセージをマルチキャストすることにより、自らの存在をネットワーク上に通知する（Ｓ１）。
【０００５】
クライアントは、提供されるサービスのタイプ及びＷｅｂサービスの所在の範囲の少なくともいずれか一方によってＷｅｂサービスを検索するとき、そのタイプ及び範囲の少なくともいずれか一方を指定したＰｒｏｂｅメッセージをマルチキャストする（Ｓ２）。Ｐｒｏｂｅメッセージに指定されたタイプ及び範囲に合致する各Ｗｅｂサービスは、Ｐｒｏｂｅメッセージに対してＰｒｏｂｅ  Ｍａｔｃｈメッセージをユニキャストで返信する（Ｓ３）。
【０００６】
クライアントは、例えば、Ｐｒｏｂｅ  Ｍａｔｃｈメッセージによって得られるＷｅｂサービスの識別情報を指定してＲｅｓｏｌｖｅメッセージをマルチキャストすることにより、当該Ｗｅｂサービスと通信するためのアドレス情報を検索する（Ｓ４）。Ｒｅｓｏｌｖｅメッセージに指定された識別情報に合致するＷｅｂサービスは、Ｒｅｏｌｖｅメッセージに対してＲｅｓｏｌｖｅ  Ｍａｔｃｈメッセージをユニキャストで返信する（Ｓ５）。
【０００７】
その後、クライアントは、Ｒｅｌｏｌｖｅ  Ｍａｃｔｃｈメッセージに含まれているアドレス情報を用いて通信することにより、所望のＷｅｂサービスを利用することができる。
【０００８】
ＷＳ−Ｄｉｓｃｏｖｅｒｙは、また、多数のエンドポイントを有する大規模な環境におけるマルチキャストを抑制するため、ディスカバリプロキシ（Ｄｉｓｏｃｏｖｅｒｙ  Ｐｒｏｘｙ）を利用した仕組みについても定義している。
【０００９】
図２は、ディスカバリプロキシを用いたＷｅｂサービスの検索処理を説明するためのシーケンス図である。
【００１０】
各Ｗｅｂサービスは、例えば、ネットワークに接続したときにＨｅｌｌｏメッセージをマルチキャストすることにより、自らの存在をネットワーク上に通知する（Ｓ１１）。当該Ｈｅｌｌｏメッセージを受信したディスカバリプロキシは、Ｈｅｌｌｏメッセージに含まれているＷｅｂサービスの情報を保持しておく。
【００１１】
クライアントが、Ｐｒｏｂｅメッセージをマルチキャストすると（Ｓ１２）。Ｐｒｏｂｅメッセージに指定されたタイプ及び範囲に合致する各Ｗｅｂサービスは、Ｐｒｏｂｅ  Ｍａｔｃｈメッセージをユニキャストで返信する（Ｓ１３）。また、ディスカバリプロキシは、Ｐｒｏｂｅメッセージを受信すると、自らの存在を通知するためＨｅｌｌｏメッセージをクライアントにユニキャストで送信する（Ｓ１４）。
【００１２】
ネットワーク上にディスカバリプロキシが存在することを知ったクライアントは、ディスカバリプロキシに対してＰｒｏｂｅメッセージをユニキャストで送信する（Ｓ１５）。ディスカバリプロキシは、保持されている情報の中からＰｔｏｂｅメッセージに合致するＷｅｂサービスを検索し、検索されたＷｅｂサービスに関するＰｒｏｂｅ  Ｍａｔｃｈメッセージをユニキャストで返信する（Ｓ１６）。続いて、クライアントは、Ｐｒｏｂｅ  Ｍａｔｃｈメッセージによって得られるＷｅｂサービスの識別情報を指定してＲｅｓｏｌｖｅメッセージをディスカバリプロキシにユニキャストすることにより、当該Ｗｅｂサービスと通信するためのアドレス情報の検索を要求する（Ｓ１７）。ディスカバリプロキシは、保持されている情報の中からＲｅｓｏｌｖｅメッセージに合致するＷｅｂサービスを検索し、検索されたＷｅｂサービスに関するＲｅｓｏｌｖｅ  Ｍａｔｃｈメッセージをユニキャストで返信する（Ｓ１８）。
【非特許文献１】"Ｗｅｂ  Ｓｅｒｖｉｃｅ  Ｄｙａｎａｍｉｃ  Ｄｉｓｃｏｖｅｒｙ（ＷＳ−Ｄｉｓｃｏｖｅｒｙ）"、 [online]、[平成１８年１０月２日検索]、<http://msdn.microsoft.com/library/en-us/dnglobspec/html/WS-Discovery.pdf>
【発明の開示】
【発明が解決しようとする課題】
【００１３】
ところで、ディスカバリプロキシには、Ｗｅｂサービスの検索のため、各種のＷｅｂサービスの一覧情報が登録されている。この仕組みを利用して、より利便性の高いサービスの提供が期待される。
【００１４】
本発明は、上記の点に鑑みてなされたものであって、ネットワーク上における機器の検索に際しより利便性の高いサービスを提供することのできる電子機器、機器検索方法、及び機器検索プログラムの提供を目的とする。
【課題を解決するための手段】
【００１５】
そこで上記課題を解決するため、本発明は、ネットワークに接続されている機器の一覧情報を管理し、クライアントからの機器検索要求に応じて前記一覧情報に基づいて前記クライアントが所望する機器を検索し、該検索結果を前記クライアントに返信する電子機器であって、前記一覧情報に含まれているそれぞれの機器よりアクセス制御情報を取得する機器情報取得手段と、前記クライアントからの前記機器検索要求に応じ、前記一覧情報の中から当該クライアントが所望する機器を検索し、検索された機器に対する当該クライアントのアクセスの可否を前記アクセス制御情報に基づいて判定するアクセス判定手段とを有し、前記アクセス判定手段によってアクセスが可能であると判定された機器が存在するときに、前記アクセスが可能な機器に関する情報を前記検索結果として返信することを特徴とする。
【００１６】
このような電子機器では、ネットワーク上における機器の検索に際しより利便性の高いサービスを提供することができる。
【発明の効果】
【００１７】
本発明によれば、ネットワーク上における機器の検索に際しより利便性の高いサービスを提供することのできる電子機器、機器検索方法、及び機器検索プログラムを提供することができる。
【発明を実施するための最良の形態】
【００１８】
以下、図面に基づいて本発明の実施の形態を説明する。図３は、本発明の実施の形態における融合機の構成例を示す図である。図３の融合機１０１は、電子機器の一例であり、種々のハードウェア１１１と、種々のソフトウェア１１２と、融合機起動部１１３により構成される。
【００１９】
融合機１０１のハードウェア１１１としては、撮像部１２１と、印刷部１２２と、その他のハードウェア１２３が存在する。撮像部１２１は、読取原稿から画像（画像データ）を読み取るためのハードウェアである。印刷部１２２は、画像（画像データ）を印刷用紙に印刷するためのハードウェアである。
【００２０】
融合機１０１のソフトウェア１１２としては、種々のアプリケーション１３１と、種々のプラットフォーム１３２が存在する。これらのプログラムは、ＵＮＩＸ（登録商標）等のＯＳ（オペレーティングシステム）によりプロセス単位で並列的に実行される。
【００２１】
アプリケーション１３１としては、コピー用のアプリケーションであるコピーアプリ１４１、プリンタ用のアプリケーションであるプリンタアプリ１４２、スキャナ用のアプリケーションであるスキャナアプリ１４３、ファクシミリ用のアプリケーションであるファクシミリアプリ１４４、ネットワークファイル用のアプリケーションであるネットワークファイルアプリ１４５等が存在する。
【００２２】
プラットフォーム１３２としては、種々のコントロールサービス１５１、システムリソースマネージャ１５２、種々のハンドラ１５３が存在する。コントロールサービス１５１としては、ネットワークコントロールサービス（ＮＣＳ）１６１、ファクシミリコントロールサービス（ＦＣＳ）１６２、デリバリコントロールサービス（ＤＣＳ）１６３、エンジンコントロールサービス（ＥＣＳ）１６４、メモリコントロールサービス（ＭＣＳ）１６５、オペレーションパネルコントロールサービス（ＯＣＳ）１６６、サーティフィケーションコントロールサービス（ＣＣＳ）１６７、ユーザディレクトリコントロールサービス（ＵＣＳ）１６８、システムコントロールサービス（ＳＣＳ）１６９が存在する。ハンドラ１５３としては、ファクシミリコントロールユニットハンドラ（ＦＣＵＨ）１７１、イメージメモリハンドラ（ＩＭＨ）１７２が存在する。
【００２３】
ＮＣＳ１６１のプロセスは、ネットワーク通信の仲介を行う。ＦＣＳ１６２のプロセスは、ファクシミリのＡＰＩを提供する。ＤＣＳ１６３のプロセスは、蓄積文書の配信処理に関する制御を行う。ＥＣＳ１６４のプロセスは、撮像部１２１や印刷部１２２に関する制御を行う。ＭＣＳ１６５のプロセスは、メモリやハードディスクドライブに関する制御を行う。ＯＣＳ１６６のプロセスは、オペレーションパネルに関する制御を行う。ＣＣＳ１６７のプロセスは、認証処理や課金処理に関する制御を行う。ＵＣＳ１６８のプロセスは、ユーザ情報の管理に関する制御を行う。ＳＣＳ１６９のプロセスは、システムの管理に関する制御を行う。
【００２４】
アプリケーション１３１とプラットフォーム１３２の仲介を行うソフトウェア１１２として、仮想アプリケーションサービス（ＶＡＳ）１３５が存在する。ＶＡＳ１３５は、アプリケーション１３１をクライアントとするサーバプロセスとして動作すると共に、プラットフォーム１３２をサーバとするクライアントプロセスとして動作する。ＶＡＳ１３５は、アプリケーション１３１から見てプラットフォーム１３２を隠蔽するラッピング機能を備え、プラットフォーム１３２のバージョンアップに伴うバージョン差を吸収する役割等を担う。
【００２５】
融合機起動部１１３は、融合機１０１の電源投入時に最初に実行される。これにより、ＵＮＩＸ（登録商標）等のＯＳが起動され、アプリケーション１３１やプラットフォーム１３２が起動される。これらのプログラムは、ハードディスクドライブやメモリカードに蓄積されており、ハードディスクドライブやメモリカードから再生されて、メモリに起動されることになる。
【００２６】
図４は、本発明の実施の形態における融合機のハードウェア構成例を示す図である。融合機１０１のハードウェア１１１としては、コントローラ２０１と、オペレーションパネル２０２と、ファクシミリコントロールユニット（ＦＣＵ）２０３と、撮像部１２１と、印刷部１２２が存在する。
【００２７】
コントローラ２０１は、ＣＰＵ２１１、ＡＳＩＣ２１２、ＮＢ２２１、ＳＢ２２２、ＭＥＭ−Ｐ２３１、ＭＥＭ−Ｃ２３２、ＨＤＤ（ハードディスクドライブ）２３３、メモリカードスロット２３４、ＮＩＣ（ネットワークインタフェースコントローラ）２４１、ＵＳＢデバイス２４２、ＩＥＥＥ１３９４デバイス２４３、セントロニクスデバイス２４４により構成される。
【００２８】
ＣＰＵ２１１は、種々の情報処理用のＩＣである。ＡＳＩＣ２１２は、種々の画像処理用のＩＣである。ＮＢ２２１は、コントローラ２０１のノースブリッジである。ＳＢ２２２は、コントローラ２０１のサウスブリッジである。ＭＥＭ−Ｐ２３１は、融合機１０１のシステムメモリである。ＭＥＭ−Ｃ２３２は、融合機１０１のローカルメモリである。ＨＤＤ２３３は、融合機１０１のストレージである。メモリカードスロット２３４は、メモリカード２３５をセットするためのスロットである。ＮＩＣ２４１は、ＭＡＣアドレスによるネットワーク通信用のコントローラである。ＵＳＢデバイス２４２は、ＵＳＢ規格の接続端子を提供するためのデバイスである。ＩＥＥＥ１３９４デバイス２４３は、ＩＥＥＥ１３９４規格の接続端子を提供するためのデバイスである。セントロニクスデバイス２４４は、セントロニクス仕様の接続端子を提供するためのデバイスである。なお、図３におけるソフトウェア１２１は、ＭＥＭ−Ｐ２３１又はメモリカード２３５等の記録媒体に記録されたプログラムが、ＣＰＵ２１１によって処理されることにより機能する。
【００２９】
オペレーションパネル２０２は、オペレータが融合機１０１に入力を行うためのハードウェア（操作部）であると共に、オペレータが融合機１０１から出力を得るためのハードウェア（表示部）である。
【００３０】
図３のＮＣＳ１６１について更に詳しく説明する。図５は、第一の実施の形態におけるＮＣＳの機能構成例を説明するための図である。図５に示されるように、ＮＣＳ１６１には、ＤＥＭモジュール３００が含まれている。ＤＥＭモジュール３００は、Ｄモジュール３１０、Ｅモジュール３２０、及びＭモジュール３３０より構成される。
【００３１】
Ｄモジュール３１０の振る舞いは、例えば、Ｗｅｂ  Ｓｅｒｖｉｃｅｓ  Ｄｙｎａｍｉｃ  Ｄｉｓｃｏｖｅｒｙ（ＷＳ−Ｄｉｓｃｏｖｅｒｙ）に準拠している。ＷＳ−Ｄｉｓｃｏｖｅｒｙは、主としてマルチキャストによって所望のＷｅｂサービスの検索するためのプロトコルを定義する標準仕様であり、その内容は、「http://msdn.microsoft.com/library/en-us/dnglobspec/html/WS-Discovery.pdf」に詳しい。なお、Ｄモジュール３１０には、ＷＳ−Ｄｉｓｃｏｖｅｒｙにおいて定義されているディスカバリプロキシ（Ｄｉｓｃｏｖｅｒｙ  Ｐｒｏｘｙ）として機能するための仕組みも実装されている。すなわち、融合機１０１は、ネットワーク上において各種の画像形成サービスを提供するＷｅｂサービスでもあり、また、ディスカバリプロキシでもある。
【００３２】
Ｅモジュール３２０は、融合機１０１において発生したイベント（Ｅｖｅｎｔ）を他の機器に通知するためのモジュールである。Ｅモジュール３２０の振る舞いは、例えば、ＷＳ−Ｅｖｅｎｔｉｎｇという規格仕様に準拠している。ＷＳ−Ｅｖｅｎｔｉｎｇについては、「http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnglobspec/html/ws-eventing.asp」に詳しい。
【００３３】
Ｍモジュール３３０の振る舞いは、例えば、Ｗｅｂ  Ｓｅｒｖｉｃｅ  Ｍｅｔａｄａｔａ  Ｅｘｃｈａｎｇｅ（ＷＳ−ＭｅｔａｄａｔａＥｘｃｈａｎｇｅ）に対して拡張を行ったものに基づく。ＷＳ−ＭｅｔａｄａｔａＥｘｃｈａｎｇｅは、Ｗｅｂサービス向けのメタデータに基づくメッセージ交換のためのブートストラップ機構を定義する規格仕様であり、その内容は、「http://specs.xmlsoap.org/ws/2004/09/mex/WS-MetadataExchange.pdf」に詳しい。Ｍモジュール３３０は、斯かる仕様に基づいて、各種機器（のＷｅｂサービス）と通信することにより、当該機器のアクセス制御情報を取得する。ここで、アクセス制御情報とは、各機器に対してアクセス可能な主体（ユーザ又はクライアント装置等）を制限するための情報をいう。
【００３４】
図６は、Ｄモジュールの構成例を示す図である。図６において、Ｄモジュール３１０は、送信メッセージ生成部３１１、広告情報蓄積処理部３１２、受信メッセージ処理部３１３、データ送信処理部３１４、及びデータ受信処理部３１５等より構成される。
【００３５】
送信メッセージ生成部３１１は、ＷＳ−Ｄｉｓｃｏｖｅｒｙに準拠した通信（以下「ディスカバリ通信」という。）において、融合機１０１より送信されるメッセージを生成する部分である。送信メッセージ生成部３１１は、デバイス通信メッセージ生成部３１１１、プロキシ広告メッセージ生成部３１１２、及びプロキシ応答メッセージ生成部３１１３等より構成される。
【００３６】
デバイス通信メッセージ３１１１は、Ｗｅｂサービスとしての融合機１０１がＷｅｂサービスとして振る舞うために送信する必要のあるメッセージを生成する。斯かるメッセージとしては、例えば、融合機１０１がネットワークに接続したとき（融合機１０１が起動されたとき）に送信されるＨｅｌｌｏメッセージ、ネットワークへの接続を解除するとき（融合機１０１の電源が切られる際）に送信されるＢｙｅメッセージ、クライアントからのＰｒｏｂｅメッセージに対する応答としてのＰｒｏｂｅ  Ｍａｔｃｈメッセージ、及びクライアントからのＲｅｓｏｌｖｅメッセージに対するＲｅｓｏｌｖｅ  Ｍａｔｃｈメッセージ等が相当する。
【００３７】
プロキシ広告メッセージ生成部３１１２は、融合機１０１がディスカバリプロキシであることを通知するためのＨｅｌｌｏメッセージ（広告メッセージ）を生成する。
【００３８】
プロキシ応答メッセージ生成部３１１３は、ディスカバリプロキシとしての融合機１０１がディスカバリプロキシとして振る舞うときに、クライアントからのメッセージに対して送信する応答メッセージ（Ｐｒｏｂｅ  ＭａｔｃｈメッセージやＲｅｓｏｌｖｅ  Ｍａｔｃｈメッセージ）を生成する。
【００３９】
広告情報蓄積処理部３１２は、ディスカバリプロキシとしての融合機１０１が、ネットワークに接続（参加）した各機器より送信されるＨｅｌｌｏメッセージを受信したときに、当該Ｈｅｌｌｏメッセージに含まれている情報（広告情報）を融合機１０１の記憶装置に蓄積しておくための処理を実行する。
【００４０】
受信メッセージ処理部３１３は、ディスカバリ通信において受信される各種のメッセージに応じた処理を実行する。例えば、受信されたメッセージに対して応答が必要な場合、送信メッセージ生成部３１１に対して応答メッセージの生成を要求する。
【００４１】
データ送信処理部３１４は、送信メッセージ生成部３１１によって生成される各種のメッセージの送信処理をＯＳに要求する。データ受信処理部３１５は、ディスカバリ通信において受信される各種のメッセージをＯＳを介して受信する。
【００４２】
図７は、Ｍモジュールの構成例を示す図である。図７において、Ｍモジュール３３０は、送信メッセージ生成部３３１、要求受付処理部３３２、応答受付処理部３３３、機器情報蓄積処理部３３４、データ送信処理部３３５、及びデータ受信処理部３３６等より構成される。
【００４３】
送信メッセージ生成部３３１は、ＷＳ−ＭｅｔａｄａｔａＥｘｃｈａｎｇｅに準拠した通信（以下「メタデータ通信」という。）において、融合機１０１より送信されるメッセージを生成する部分である。送信メッセージ生成部３３１は、機器情報取得要求生成部３３１１及び機器情報応答生成部３３１２等より構成される。
【００４４】
機器情報取得要求生成部３３１１は、ネットワークに接続されている他の機器に対して機器情報の取得を要求するメッセージを生成する。機器情報応答生成部３３１２は、融合機１０１の機器情報の取得要求が受信されたときに当該取得要求に対する応答として、融合機１０１の機器情報を含むメッセージを生成する。
【００４５】
要求受付処理部３３２は、機器情報の取得要求が受信されたときに機器情報応答生成部３３１２に対して融合機１０１の機器情報の生成を要求する。応答受付処理部３３３は、機器情報取得要求生成部３３１１によって生成された機器情報の取得要求に対する応答（他の機器の機器情報）が受信されたときに、機器情報蓄積処理部３３４に対して当該機器情報の蓄積を要求する。機器情報蓄積処理部３３４は、受信された機器情報を融合機１０１の記憶装置に蓄積しておくための処理を実行する。
【００４６】
データ送信処理部３３５は、送信メッセージ生成部３３１によって生成される各種のメッセージの送信処理をＯＳに要求する。データ受信処理部３３６は、メタデータ通信において受信される各種のメッセージをＯＳを介して受信する。
【００４７】
以下、融合機１０１の処理手順について説明する。図８は、第一の実施の形態における融合機の処理手順を説明するためのシーケンス図である。図中のシーケンス図において、機器５０は、例えば、プリンタ、融合機等のネットワーク機器であり、各機器に応じた機能を提供するためのＷｅｂサービスが実装されている。クライアント６０は、機器５０の提供するＷｅｂサービスを利用するＰＣ（Personal Computer）等のコンピュータである。機器５０、クライアント６０、融合機１０１は、ネットワーク（有線又は無線の別は問わない。）を介して相互に接続されている。なお、機器５０は、当該ネットワークに複数台接続されているのが一般的である。また、機器５０は、図３〜図７に示される融合機１０１と同様の機器であってもよい。
【００４８】
各機器５０は、例えば、ネットワークに接続したとき（例えば、機器５０が起動されたとき）、ＷＳ−Ｄｉｓｃｏｖｅｒｙにおいて定義されているＨｅｌｌｏメッセージをマルチキャストすることにより、自らの存在をネットワーク上に通知する（Ｓ１０１）。当該Ｈｅｌｌｏメッセージは、クライアント６０や融合機１０１によって受信される。
【００４９】
融合機１０１のＤモジュール３１０における受信メッセージ処理部３１３は、機器５０からのＨｅｌｌｏメッセージが受信されると、当該Ｈｅｌｌｏメッセージに含まれている広告情報を抽出する。広告情報蓄積処理部３１２は、抽出された広告情報を機器情報テーブルに登録する（Ｓ１０２）。
【００５０】
図９は、第一の実施の形態における機器情報テーブルの構成例を示す図である。図９において、機器情報テーブル３１２１は、それぞれの機器５０より収集された広告情報とアクセス制御情報とを機器５０ごとに管理するテーブルである。すなわち、機器情報テーブル３１２１において、ネットワークに接続している機器５０の一覧情報が管理される。広告情報には、例えば、機器５０のＩＰアドレス、ＵＵＩＤ（Universally Unique Identifier）、及びＭｅｔａｄａｔａＶｅｒｓｉｏｎ等が含まれている。ＭｅｔａｄａｔａＶｅｒｓｉｏｎは、後述するＷＳ−ＭｅｔａｄａｔａＥｘｃｈａｎｇｅに基づく通信によって交換されるメタデータの更新情報を示す。
【００５１】
融合機１０１が新たにネットワークに接続された機器５０よりＨｅｌｌｏメッセージを受信するたびに、機器情報テーブル３１２１には、当該機器５０に係る広告情報が登録される。なお、図９の機器情報テーブル３１２１におけるアクセス制御情報は、後述の処理（ステップＳ１０６）において登録される情報である。したがって、その詳細については後述する。なお、図９の機器情報テーブル３１２１には、自機（融合機１０１）の情報についても登録される。
【００５２】
広告情報蓄積処理部３１２は、広告情報の登録が完了すると、機器情報テーブル３１２１に広告情報が登録されている機器５０の機器情報の収集をＭモジュール３３０に要求する（Ｓ１０３）。
【００５３】
Ｍモジュール３３０における機器情報取得要求生成部３３１１は、当該機器５０に対して、メタデータとして機器情報を要求するためのＷＳ−ＭｅｔａｄａｔａＥｘｃｈａｎｇｅに基づくリクエストメッセージ（ＧｅｔＭｅｔａｄａｔａ  Ｒｅｑｕｅｓｔ）を生成する。当該リクエストメッセージ（以下、「機器情報要求メッセージ」という。）は、それぞれの機器５０に対してデータ送信処理部３３５によってユニキャストされる（Ｓ１０４）。なお、第一の実施の形態では、機器情報としてアクセス制御情報を収集する例について説明する。
【００５４】
図１０は、機器情報要求メッセージの例を示す図である。図１０における機器情報要求メッセージのｍ１の記述ｄ１１には、機器情報要求メッセージｍ１が、メタデータの取得を要求するリクエストメッセージであることが示されている。また、記述ｄ１２には、当該機器情報要求メッセージｍ１に対する応答先（融合機１０１）が示されている。また、記述ｄ１３には、当該機器情報要求メッセージｍ１の送信先（各機器５０）が示されている。送信先は、機器情報テーブル３１２１における広告情報に基づいて指定される。また、記述ｄ１４には、メタデータとしてアクセス制御情報を要求することが示されている。なお、ＷＳ−ＭｅｔａｄａｔａＥｘｃｈａｎｇｅは、アクセス制御情報を交換するための仕様ではない。したがって、ＷＳ−ＭｅｔａｄａｔａＥｘｃｈａｎｇｅに基づいてアクセス制御情報を交換する点に関しては、本実施の形態において独自に定義された部分である。
【００５５】
機器情報要求メッセージを受信した各機器５０は、それぞれの機器５０に設定されているアクセス制御情報を含むレスポンスメッセージ（以下「機器情報応答メッセージ」という。）を融合機１０１に対してユニキャストする（Ｓ１０５）。
【００５６】
図１１は、機器情報応答メッセージの例を示す図である。図１１における機器情報応答メッセージｍ２の記述ｄ２１には、機器情報応答メッセージｍ２が、メタデータの取得要求に対するレスポンスメッセージであることが示されている。また、記述ｄ２２には、当該機器情報応答メッセージｍ２の送信先（融合機１０１）が示されている。
【００５７】
１７行目から２６行目までは、メタデータとしてアクセス制御情報が示されている。すなわち、記述ｄ２３には、当該メタデータがアクセス制御情報であることが示されている。記述ｄ２３１には、当該機器情報応答メッセージｍ２の送信元の機器５０に対してアクセスが許可されるクライアント６０が、ＩＰｖ４のＩＰアドレスの範囲指定によって示されている。記述ｄ２３１１は、当該範囲の開始アドレス（１２：３４：５６：７８）を示し、記述ｄ２３１２は、当該範囲の終了アドレス（１２：３４：５６：９０）を示す。また、記述ｄ２３２には、記述ｄ２３２には、当該機器情報応答メッセージｍ２の送信元の機器５０に対してアクセスが許可されるクライアント６０が、ＩＰｖ６のＩＰアドレスの範囲指定によって示されている。記述ｄ２３２１は、当該範囲の開始アドレス（１：：１）を示し、記述ｄ２３２２は、当該範囲の終了アドレス（２：：２）を示す。
【００５８】
融合機１０１のＭモジュール３３０における応答受付信処理部３２３は、機器５０からの機器情報応答メッセージが受信されると、当該機器情報応答メッセージに含まれているアクセス制御情報を抽出する。機器情報蓄積処理部３３４は、抽出されたアクセス制御情報を機器情報テーブル３１２１に登録する（Ｓ１０６）。これによって、ネットワークに接続されている各機器５０のアクセス制御情報が、広告情報と共に機器情報テーブル３１２１に蓄積される。
【００５９】
その後、クライアント６０が、提供されるサービスのタイプ又はＷｅｂサービスの所在の範囲等よって機器５０を検索するとき、そのタイプ及び範囲の少なくともいずれか一方を指定したＰｒｏｂｅメッセージ又はＲｅｓｌｖｅメッセージをマルチキャストする（Ｓ１０７）。融合機１０１の受信メッセージ処理部３１３は、Ｐｒｏｂｅメッセージ又はＲｅｓｏｌｖｅメッセージ（クライアント６０が機器５０を検索していることを示すメッセージ）を受信すると、自らがディスカバリプロキシであることを通知するためのＨｅｌｌｏメッセージ（融合機１０１によって機器の検索が可能であることを示す広告メッセージ）の生成をプロキシ用広告メッセージ生成部３１１２に要求する。プロキシ用広告メッセージ生成部３１１２は、当該Ｈｅｌｌｏメッセージを生成し、データ送信処理部３１４を介してクライアント６０にユニキャストで送信する（Ｓ１０８）。なお、Ｐｒｏｂｅメッセージに指定されたタイプ及び範囲、又はＲｅｓｏｌｖｅメッセージに合致する各機器５０のうち、クライアント６０のアクセスが許可されていない機器５０は、当該メッセージに対する応答は行わない。
【００６０】
ネットワーク上にディスカバリプロキシが存在することを知ったクライアント６０は、融合機１０１に対してＰｒｏｂｅメッセージ（機器検索要求）をユニキャストで送信する（Ｓ１０９）。融合機１０１のＤモジュール３１０の受信メッセージ処理部３１３は、Ｐｒｏｂｅメッセージを受信すると、機器情報テーブル３１２１に登録されている広告情報に基づいて、当該Ｐｒｏｂｅメッセージに合致する機器５０を検索する（Ｓ１１０）。続いて、受信メッセージ処理部３１３は、検索された機器５０について、機器情報テーブル３１２１に登録されているアクセス制御情報に基づいて、クライアント６０のアクセスの可否を判定する（Ｓ１１１）。すなわち、クライアント６０のＩＰアドレスがアクセス制御情報で指定されている範囲外の場合、アクセスは許可されない。アクセスが許可される機器５０（以下、「アクセス可能機器」という。）が存在しない場合、受信メッセージ処理部３１３は、Ｐｒｏｂｅメッセージに対する応答は行わないと判定する。したがって、この場合、Ｐｒｏｂｅ  Ｍａｔｃｈメッセージは返信されず、クライアント６０は、タイムアウトによって機器の検索を中止する。
【００６１】
一方、アクセス可能機器が存在する場合、受信メッセージ処理部３１３は、アクセス可能機器に関するＰｒｏｂｅ  Ｍａｔｃｈメッセージ（検索結果）の生成をプロキシ応答メッセージ生成部３１１３に要求する。プロキシ応答メッセージ生成部３１１３は、当該Ｐｒｏｂｅ  Ｍａｔｃｈメッセージを生成し、データ送信処理部３１４を介してクライアント６０に送信する（Ｓ１１２）。なお、アクセス可能機器が複数存在する場合、当該Ｐｒｏｂｅ  Ｍａｔｃｈメッセージには、その複数の機器５０に関する情報が含まれる。
【００６２】
以降、図２のステップＳ１７以降と同様の処理が行われ（Ｓ１１３〜Ｓ１１４）、クライアント６０は、アクセスが許可された機器５０のサービスを利用することができる（Ｓ１１５）。この際、当該機器５０に対するアクセス権は既に確認済みのため、クライアント６０が機器５０にアクセスした際に、アクセスが拒否される可能性は低い。
【００６３】
上述したように、第一の実施の形態における融合機１０１は、ディスカバリ通信によって得られた広告情報に基づいて、各機器５０よりアクセス制御情報を収集して蓄積しておく。したがって、融合機１０１は、クライアント６０に対してディスカバリプロキシとして振る舞う際に、クライアント６０が所望する機器５０に対するアクセス制御を実行することができる。したがって、クライアント５０が、アクセスが許可されない機器５０に対して通信の要求を行うといった無駄を省くことができる。なお、上記では、アクセス制御情報の例としてＩＰアドレスの範囲を用いて説明したが、例えば、アクセス制御情報は、アクセスを許可する（又は許可しない）ユーザ名又はグループのリストであってもよい。
【００６４】
次に、第二の実施の形態について説明する。第二の実施の形態では、クライアント６０に使用させる機器５０について、優先順位の設定を可能とした例について説明する。なお、第二の実施の形態では第一の実施の形態との相違点を中心に説明する。したがって、第一の実施の形態と同一部分には同一符号を付し、その説明は省略する。特に明記しない点については、第一の実施の形態と同様でよい。
【００６５】
図１２は、第二の実施の形態におけるＮＣＳの機能構成例を説明するための図である。第二の実施の形態において、ＤＥＭモジュール３００は、更に、検索結果通知制御マネージャ３４０を含む。
【００６６】
図１３は、検索結果通知制御マネージャの構成例を示す図である。図１３において、検索結果通知制御マネージャ３４０は、ユーザ設定情報管理部３４１及びユーザ設定検索結果生成処理部３４２より構成される。
【００６７】
ユーザ設定情報管理部３４１は、ユーザによって設定される優先順位情報を管理する。優先順位情報は、例えば、次のような画面を介してユーザによって設定される。図１４は、優先順位設定画面の表示例を示す図である。図１４の優先順位設定画面３４１１において、チェックボタン３４１１ａが選択されると、本機（融合機１０１）が優先的に使用される機器（優先機器）とされる。チェックボタン３４１１ｂが選択されると、機器５０のメーカー名やモデル名一覧が表示されているリスト３４１１ｃの中で選択された機器５０が優先機器とされる。この選択は、例えば、Ｗｅｂサービスの種類（プリントサービス、スキャナサービス等）ごとに可能としてもよい。この場合、機器情報として、各機器５０が提供するＷｅｂサービスの情報（提供サービス情報）を収集し、機器情報テーブルに登録しておき、当該提供サービス情報に基づいて、各Ｗｅｂサービスの種類を判別すればよい。また、複数選択を可能とし、その中で優先順位を設定可能としてもよい。なお、リスト３４１１ｃは、機器情報テーブルに基づいて表示される。チェックボタン３４１１ｄが選択されると、性能の高い機器５０が優先機器とされる。図中では、印刷速度が高速なものが優先される例が示されている。ユーザ情報設定情報管理部３４１は、優先順位設定画面３４１１において設定された優先順位情報を融合機１０１の記憶装置に保存する。なお、優先順位設定画面３４１１は、融合機１０１のオペレーションパネル２０２に表示させてもよいし、融合機１０１とネットワークを介して接続されているＰＣ等のディスプレイにＷｅｂページとして表示させてもよい。
【００６８】
ユーザ設定検索結果生成処理部３４２は、優先使用機器判定部３４２１及び優先使用機器通知部３４２２より構成される。優先使用機器判定部３４２は、優先順位情報に基づいて、アクセス可能機器の中からクライアント６０に使用させる機器５０を選択する。優先使用機器通知部３４２２は、優先使用機器判定部３４２１によって選択された機器５０をＤモジュール３１０に通知する。
【００６９】
図１５は、第二の実施の形態における融合機の処理手順を説明するためのシーケンス図である。図１５において、ステップＳ２０１〜Ｓ２１１の処理の流れは、図８におけるステップＳ１０１〜Ｓ１１１と同様である。但し、ステップＳ２０４及びＳ２０５において交換される情報は第一の実施の形態と異なる。すなわち、ステップＳ２０４においてユニキャストされる機器情報要求メッセージでは、アクセス制御情報の他に、機器名情報、及び性能情報等の送信が要求される。それに応じステップＳ２０５においてユニキャストされる機器情報応答メッセージには、送信元の機器５０のアクセス制御情報、機器名情報、及び性能情報等が含まれている。
【００７０】
したがって、ステップＳ２０６において機器情報テーブルには、アクセス制御情報、機器名情報、及び性能情報が登録される。図１６は、第二の実施の形態における機器情報テーブルの構成例を示す図である。第二の実施の形態における機器情報テーブル３１２２は、広告情報及びアクセス制御情報の他に、機器名情報及び性能情報を機器５０ごとに管理する。機器名情報には、例えば、メーカー名やモデル名（機種名）等が含まれている。性能情報には、機器５０が提供するＷｅｂサービスの性能を示す情報である。例えば、機器５０が印刷に関するＷｅｂサービスを提供する場合、性能情報には印刷速度を示す情報が含まれる。なお、図１４のリスト３４１１ｃに表示されるメーカー名やモデル名は、機器情報テーブル３１２２に登録されているものが用いられる。
【００７１】
ステップＳ２１１のアクセスの可否判定においてアクセス可能機器が存在しない場合、受信メッセージ処理部３１３は、Ｐｒｏｂｅメッセージに対する応答は行わないと判定する。この場合、その後の処理（ステップＳ２１２以降）は実行されない。したがって、クライアント６０は、タイムアウトによって機器の検索を中止する。
【００７２】
一方、アクセス可能機器が存在する場合、受信メッセージ処理部３１３は、機器５０の検索要求（Ｐｒｏｂｅメッセージ）の受信を検索結果通知制御マネージャ３４０のユーザ設定検索結果生成処理部３４２に通知する（Ｓ２１２）。この際、アクセス可能機器の一覧もユーザ設定検索結果生成処理部３４２に通知される。
【００７３】
ユーザ設定検索結果生成処理部３４２の優先使用機器判定部３４２１は、Ｍモジュール３３０の機器情報蓄積処理部３３４に対して各アクセス可能機器の機種名情報及び性能情報の提供を要求する（Ｓ２１３）。機器情報蓄積処理部３３４は、各アクセス可能機器の機種名情報及び性能情報を機器情報テーブル３１２２より取得し、優先使用機器判定部３４２１に返却する（Ｓ２１４）。
【００７４】
優先使用機器判定部３２４１は、各アクセス可能機器の機種名情報及び性能情報と、ユーザによって設定された優先順位情報とに基づいて、アクセス可能機器の中から優先順位の高い機器５０をクライアント６０に使用させる機器５０として選択する。例えば、優先順位情報において、本機の優先機器として設定されている場合であって、かつ、融合機１０１がアクセス可能機器の場合、優先使用機器判定部３２４１は、融合機１０１を使用機器とする。また、優先順位情報において、特定の機器５０が優先機器として選択されている場合であって、かつ、当該特定の機器５０がアクセス可能機器の場合、優先使用機器判定部３２４１は、当該機器５０を使用機器とする。また、優先順位情報において、高速印刷が優先されている場合、優先使用機器判定部３２４１は、アクセス可能機器の中で最も印刷速度の速いものを使用機器とする。但し、使用機器は、一つだけでなく、優先順位を付けて複数選択されてもよい。
【００７５】
続いて、優先使用機器通知部３４２２は、優先使用機器判定部３４２１によって選択された使用機器をＤモジュール３１０の受信メッセージ処理部３１３に通知する（Ｓ２１６）。受信メッセージ処理部３１３は、当該使用機器に関するＰｒｏｂｅ  Ｍａｔｃｈメッセージ（検索結果）の生成をプロキシ応答メッセージ生成部３１１３に要求する。プロキシ応答メッセージ生成部３１１３は、使用機器に関するＰｒｏｂｅ  Ｍａｔｃｈメッセージを生成し、当該Ｐｒｏｂｅ  Ｍａｔｃｈメッセージをデータ送信処理部３１４を介してクライアント６０にユニキャストする（Ｓ２１７）。ステップＳ２１８以降は、第一の実施の形態におけるステップＳ１１３以降と同様である。
【００７６】
上述したように、第二の実施の形態の融合機１０１によれば、予め設定された優先順位に基づいて使用機器が選択される。したがって、複数の機器５０がアクセス可能機器として検索された場合、ユーザの意図により則した機器５０を使用させることができる。
【００７７】
なお、上記実施の形態では、融合機１０１を電子機器の例として説明したが、電子機器は、プログラムに基づく情報処理が可能であり、ネットワーク通信が可能な機器であれば所定のものに限定されない。例えば、ＰＣ（Personal Computer）等の汎用的なコンピュータであってもよい。
【００７８】
以上、本発明の実施例について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【図面の簡単な説明】
【００７９】
【図１】ＷＳ−Ｄｉｓｃｏｖｅｒｙに基づいたＷｅｂサービスの検索処理を説明するためのシーケンス図である。
【図２】ディスカバリプロキシを用いたＷｅｂサービスの検索処理を説明するためのシーケンス図である。
【図３】本発明の実施の形態における融合機の構成例を示す図である。
【図４】本発明の実施の形態における融合機のハードウェア構成例を示す図である。
【図５】第一の実施の形態におけるＮＣＳの機能構成例を説明するための図である。
【図６】Ｄモジュールの構成例を示す図である。
【図７】Ｍモジュールの構成例を示す図である。
【図８】第一の実施の形態における融合機の処理手順を説明するためのシーケンス図である。
【図９】第一の実施の形態における機器情報テーブルの構成例を示す図である。
【図１０】機器情報要求メッセージの例を示す図である。
【図１１】機器情報応答メッセージの例を示す図である。
【図１２】第二の実施の形態におけるＮＣＳの機能構成例を説明するための図である。
【図１３】検索結果通知制御マネージャの構成例を示す図である。
【図１４】優先順位設定画面の表示例を示す図である。
【図１５】第二の実施の形態における融合機の処理手順を説明するためのシーケンス図である。
【図１６】第二の実施の形態における機器情報テーブルの構成例を示す図である。
【符号の説明】
【００８０】
５０        機器
６０        クライアント
１０１      融合機
１１１      ハードウェア
１１２      ソフトウェア
１１３      融合機起動部
１２１      撮像部
１２２      印刷部
１２３      その他のハードウェア
１３１      アプリケーション
１３２      プラットフォーム
１３３      アプリケーションプログラムインタフェース
１３４      エンジンインタフェース
１３５      仮想アプリケーションサービス
１４１      コピーアプリ
１４２      プリンタアプリ
１４３      スキャナアプリ
１４４      ファクシミリアプリ
１４５      ネットワークファイルアプリ
１５１      コントロールサービス
１５２      システムリソースマネージャ
１５３      ハンドラ
１６１      ネットワークコントロールサービス
１６２      ファクシミリコントロールサービス
１６３      デリバリコントロールサービス
１６４      エンジンコントロールサービス
１６５      メモリコントロールサービス
１６６      オペレーションパネルコントロールサービス
１６７      サーティフィケーションコントロールサービス
１６８      ユーザディレクトリコントロールサービス
１６９      システムコントロールサービス
１７１      ファクシミリコントロールユニットハンドラ
１７２      イメージメモリハンドラ
２０１      コントローラ
２０２      オペレーションパネル
２０３      ファクシミリコントロールユニット
２１１      ＣＰＵ
２１２      ＡＳＩＣ
２２１      ＮＢ
２２２      ＳＢ
２３１      ＭＥＭ−Ｐ
２３２      ＭＥＭ−Ｃ
２３３      ＨＤＤ
２３４      メモリカードスロット
２３５      メモリカード
２４１      ＮＩＣ
２４２      ＵＳＢデバイス
２４３      ＩＥＥＥ１３９４デバイス
２４４      セントロニクスデバイス
３００      ＤＥＭモジュール
３１０      Ｄモジュール
３１１      送信メッセージ生成部
３１２      広告情報蓄積処理部
３１３      受信メッセージ処理部
３１４      データ送信処理部
３１５      データ受信処理部
３２０      Ｅモジュール
３３０      Ｍモジュール
３３１      送信メッセージ生成部
３３２      要求受付処理部
３３３      応答受付処理部
３３４      機器情報蓄積処理部
３３５      データ送信処理部
３３６      データ受信処理部
３４０      検索結果通知制御マネージャ
３４１      ユーザ設定情報管理部
３４２      ユーザ設定検索結果生成処理部
３１１１    デバイス通信メッセージ生成部
３１１２    プロキシ広告メッセージ生成部
３１１３    プロキシ応答メッセージ生成部
３３１１    機器情報取得要求生成部
３３１２    機器情報応答生成部
３４２１    優先使用機器判定部
３４２２    優先使用機器通知部
【図１】
2008097368.tif 000003
【図２】
2008097368.tif 000004
【図３】
2008097368.tif 000005
【図４】
2008097368.tif 000006
【図５】
2008097368.tif 000007
【図６】
2008097368.tif 000008
【図７】
2008097368.tif 000009
【図８】
2008097368.tif 000010
【図９】
2008097368.tif 000011
【図１０】
2008097368.tif 000012
【図１１】
2008097368.tif 000013
【図１２】
2008097368.tif 000014
【図１３】
2008097368.tif 000015
【図１４】
2008097368.tif 000016
【図１５】
2008097368.tif 000017
【図１６】
2008097368.tif 000018