(57)【要約】【課題】より効率よく処理すると共に、ネットワークの負荷をより低減することができる。【解決手段】ユーザＰＣ２０が、ＳＬＰの検索要求に、ＳＮＭＰのコマンドと所定の処理実行条件とを格納してこの検索要求を作成し、この作成した検索要求をマルチキャストによりプリンタ４０などへ送信出力し、これを受けたプリンタ４０が、ＳＬＰの検索要求に格納されたＳＮＭＰのコマンドを取得・実行しこの実行結果が処理実行条件を満たしているときには検索要求に対する応答をＳＬＰにより行う。このように、ＳＬＰの検索要求を受けてＳＮＭＰのコマンドの実行と、その結果に応じたＳＬＰの検索要求の応答を処理するから、ＳＬＰの要求処理と、ＳＮＭＰの検索要求とをネットワークを介して別々に送信出力または取得する必要がないし、ＳＮＭＰのコマンドの実行結果をＳＬＰの処理に反映させることができる。【選択図】図１
2008181421.tif 000002
【特許請求の範囲】
【請求項１】
処理要求装置へネットワークを介して応答する処理応答装置であって、
情報を取得可能な第１取得手段と、
前記第１取得手段が前記処理要求装置から取得した第１のプロトコルの処理要求に第２のプロトコルのコマンドが格納されているときには該第２のプロトコルのコマンドを取得する第１プロトコル処理手段と、
前記取得された第２のプロトコルのコマンドを解釈して実行し該実行結果を前記第１プロトコル処理手段へ受け渡す第２プロトコル処理手段と、
を備え、
前記第１プロトコル処理手段は、前記第２プロトコル処理手段の実行結果に基づいて前記処理要求に対する応答を処理する、
処理応答装置。
【請求項２】
請求項１に記載の処理応答装置であって、
情報を出力可能な第１出力手段、を備え、
前記第１プロトコル処理手段は、前記第２プロトコル処理手段の実行結果が前記処理要求に格納された所定の処理実行条件を満たしているときには前記処理要求に対する応答を前記処理要求装置へ前記第１出力手段に出力させる、処理応答装置。
【請求項３】
前記第１のプロトコルは複数の処理応答装置へ処理要求を出力可能なプロトコルであり、前記第２のプロトコルは１つの処理応答装置へ処理要求を出力可能なプロトコルである、請求項１又は２に記載の処理応答装置。
【請求項４】
前記第１のプロトコルはＳＬＰであり、前記第２のプロトコルはＳＮＭＰであり、前記処理要求は処理応答装置の検索要求である、請求項１〜３のいずれかに記載の処理応答装置。
【請求項５】
処理応答装置へネットワークを介して所定の処理を要求する処理要求装置であって、
情報を出力可能な第２出力手段と、
第１のプロトコルの処理要求に、第２のプロトコルのコマンドと、該コマンドを前記処理応答装置が実行した際に得られる実行結果に基づいて該処理要求に対する応答を前記第１のプロトコルにより処理させるよう定められた処理実行条件とを格納して該処理要求を作成する要求作成手段と、
前記作成された処理要求を前記第２出力手段に前記処理応答装置へ出力させる処理制御手段と、
を備えた処理要求装置。
【請求項６】
前記第１のプロトコルはＳＬＰであり、前記処理要求は処理応答装置の検索要求であり、
前記要求作成手段は、前記第２のプロトコルのコマンドと前記処理実行条件とを含むタグリストを前記処理要求に格納して該処理要求を作成する、請求項５に記載の処理要求装置。
【請求項７】
処理要求装置へネットワークを介して応答する処理応答装置のコンピュータが実行する処理応答方法であって、
（ａ）前記処理要求装置から取得した第１のプロトコルの処理要求に第２のプロトコルのコマンドが格納されているときには該第２のプロトコルのコマンドを取得するステップと、
（ｂ）前記ステップ（ａ）で取得した第２のプロトコルのコマンドを解釈して実行するステップと、
（ｃ）前記ステップ（ｂ）での実行結果に基づいて前記処理要求に対する応答を処理するステップと、
を含む処理応答方法。
【請求項８】
処理応答装置へネットワークを介して所定の処理を要求する処理要求装置のコンピュータが実行する処理要求方法であって、
（ａ）第１のプロトコルの処理要求に、第２のプロトコルのコマンドと、該コマンドを前記処理応答装置が実行した際に得られる実行結果に基づいて該処理要求に対する応答を前記第１のプロトコルにより処理させるよう定められた処理実行条件とを格納して該処理要求を作成するステップと、
（ｂ）前記ステップ（ａ）で作成された処理要求を前記処理応答装置へ出力するステップと、
を含む処理要求方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、処理応答装置、処理要求装置およびそれらの方法に関する。
【背景技術】
【０００２】
従来、処理要求装置としては、サービスロケーションプロトコル（ＳＬＰ）を用い、装置名を取得するための要求、デバイスＩＤを取得するための要求、デバイスの種類に応じた詳細情報を取得するための要求など複数の要求を含んだ情報取得要求を作成し検索対象に送信することにより複数回の通信によって得ていた各情報をまとめて取得するものが提案されている（例えば、特許文献１参照）。
【特許文献１】特開２００６−２０２１９５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
ところで、例えばネットワークに接続された機器の検索などを行う場合には、複数のプロトコルを実行してこれらの機器の情報を得たい場合がある。このような場合、あるプロトコルでネットワークに接続された機器の検索を行いその検索結果に基づいて機器の絞り込みを行った上で、他のプロトコルを用いて更にネットワークに接続された機器に関する情報を取得していた。このように、複数のプロトコルを利用する際には、各々の実行要求を送信しなければならず、複数のプロトコルにより機器の情報を得る際には、ネットワークに負荷がかかることがあった。更に、一方のプロトコルの結果を他方のプロトコルの結果に自動的に反映させることができないため、効率よい処理を行うことができなかった。
【０００４】
本発明は、このような課題に鑑みなされたものであり、より効率よく処理すると共に、ネットワークの負荷をより低減することができる処理応答装置、処理要求装置およびそれらの方法を提供することを目的とする。
【課題を解決するための手段】
【０００５】
本発明は、上述の目的を達成するために以下の手段を採った。
【０００６】
本発明の処理応答装置は、
処理要求装置へネットワークを介して応答する処理応答装置であって、
情報を取得可能な第１取得手段と、
前記第１取得手段が前記処理要求装置から取得した第１のプロトコルの処理要求に第２のプロトコルのコマンドが格納されているときには該第２のプロトコルのコマンドを取得する第１プロトコル処理手段と、
前記取得された第２のプロトコルのコマンドを解釈して実行し該実行結果を前記第１プロトコル処理手段へ受け渡す第２プロトコル処理手段と、
を備え、
前記第１プロトコル処理手段は、前記第２プロトコル処理手段の実行結果に基づいて前記処理要求に対する応答を処理するものである。
【０００７】
この処理応答装置では、処理要求装置から取得した第１のプロトコルの処理要求に第２のプロトコルのコマンドが格納されているときには、この第２のプロトコルのコマンドを取得し、この取得した第２のプロトコルのコマンドを解釈して実行し、この実行結果に基づいて第１のプロトコルの処理要求に対する応答を処理する。このように、第１のプロトコルの処理要求を受けて第２のプロトコルのコマンドの実行と、その結果に応じた第１のプロトコルの処理要求の応答を処理するから、第１のプロトコルの要求処理と、第２のプロトコルの処理要求とをネットワークを介して別々に取得する必要がないし、第２のプロトコルのコマンドの実行結果を第１のプロトコルの処理に反映させることができる。したがって、より効率よく処理すると共に、ネットワークの負荷をより低減することができる。
【０００８】
本発明の処理応答装置は、情報を出力可能な第１出力手段、を備え、前記第１プロトコル処理手段は、前記第２プロトコル処理手段の実行結果が前記処理要求に格納された所定の処理実行条件を満たしているときには前記処理要求に対する応答を前記処理要求装置へ前記第１出力手段に出力させるものとしてもよい。こうすれば、処理要求に対する応答を処理要求装置が利用することができる。このとき、前記第１プロトコル処理手段は、前記第２プロトコル処理手段の実行結果が前記処理実行条件を満たしていないときには前記処理要求に対する応答を前記第１出力手段に出力させないものとしてもよい。こうすれば、ネットワークの負荷を一層低減することができる。
【０００９】
本発明の処理応答装置において、前記第１のプロトコルは複数の処理応答装置へ処理要求を出力可能なプロトコルであり、前記第２のプロトコルは１つの処理応答装置へ処理要求を出力可能なプロトコルであるものとしてもよい。こうすれば、第１のプロトコルにより複数の処理応答装置へ処理要求を出力し、これを受けて１つの装置へ処理要求するプロトコルの処理を処理応答装置に実行させその実行結果に基づいて処理要求の応答を行うことから、第１のプロトコルで処理要求を出力したあと、第２のプロトコルで個別の装置へ処理要求を出力する必要などがないため、ネットワークの負荷を一層低減することができる。ここで、「複数の処理応答装置へ出力可能」とは、マルチキャストやブロードキャストであるものとしてもよい。また、「１つの処理応答装置へ出力可能」とは、ユニキャストであるものとしてもよい。このとき、前記第１のプロトコルは下位層のプロトコルであり、前記第２のプロトコルは前記第１のプロトコルよりも上位層のプロトコルであるものとしてもよい。こうすれば、異なる階層のプロトコルを用いて、処理要求の実行を行うことができる。
【００１０】
本発明の処理応答装置において、前記第１のプロトコルはＳＬＰであり、前記第２のプロトコルはＳＮＭＰであり、前記処理要求は処理応答装置の検索要求であるものとしてもよい。こうすれば、複数の装置へのＳＬＰによる検索処理と、各々の装置ごとにＳＮＭＰによる情報取得処理の実行することと、を一度に行うことができる。このとき、前記第１プロトコル処理手段は、前記第１のプロトコルの処理要求に格納されたタグリストから第２のプロトコルコマンドを取得するものとしてもよい。こうすれば、比較的容易に第２のプロトコルコマンドを取得することができる。
【００１１】
本発明の処理要求装置は、
処理応答装置へネットワークを介して所定の処理を要求する処理要求装置であって、
情報を出力可能な第２出力手段と、
第１のプロトコルの処理要求に、第２のプロトコルのコマンドと、該コマンドを前記処理応答装置が実行した際に得られる実行結果に基づいて該処理要求に対する応答を前記第１のプロトコルにより処理させるよう定められた処理実行条件とを格納して該処理要求を作成する要求作成手段と、
前記作成された処理要求を前記第２出力手段に前記処理応答装置へ出力させる処理制御手段と、を備えたものである。
【００１２】
この処理要求装置では、第１のプロトコルの処理要求に、第２のプロトコルのコマンドと、このコマンドを処理応答装置が実行した際に得られる実行結果に基づいてこの処理要求に対する応答を第１のプロトコルにより処理させるよう定められた処理実行条件とを格納してこの処理要求を作成し、この作成した処理要求を処理応答装置へ出力する。このように、処理要求を受けた処理応答装置に、第２のプロトコルのコマンドの実行と、その結果に応じた第１のプロトコルの処理要求の応答を処理させるから、第１のプロトコルの要求処理と第２のプロトコルの処理要求とをネットワークを介して別々に出力する必要がないし、第２のプロトコルのコマンドの実行結果を第１のプロトコルの処理に反映させることができる。したがって、より効率よく処理すると共に、ネットワークの負荷をより低減することができる。
【００１３】
本発明の処理要求装置において、前記第１のプロトコルはＳＬＰであり、前記処理要求は処理応答装置の検索要求であり、前記要求作成手段は、前記第２のプロトコルのコマンドと前記処理実行条件とを含むタグリストを前記処理要求に格納して該処理要求を作成するものとしてもよい。こうすれば、複数の装置へのＳＬＰによるサービス検索と、第２のプロトコルのコマンドの実行とを一度に行うことができるし、ひいては、ネットワークの負荷を低減することができる。また、タグリストにコマンドと処理実行条件とを含めるため、比較的容易に処理要求を作成することができる。なお、本発明の処理要求装置は、情報を取得可能な第２取得手段と、ユーザへ情報を報知可能な報知手段と、を備え、前記処理制御手段は、前記第２取得手段が前記第２出力手段によって出力された処理要求に対する応答を取得したときには、該取得した応答を前記ユーザへ前記報知手段に報知させるものとしてもよい。こうすれば、処理要求に対する応答をユーザが利用しやすい。このとき、前記報知手段は、画像を表示することにより前記応答をユーザに報知する表示手段、音声を出力することにより前記応答をユーザに報知する音声出力手段及び画像を印刷媒体に印刷出力することにより前記応答をユーザに報知する印刷手段のうち少なくとも１つとしてもよい。また、前記第１のプロトコルは複数の処理応答装置へ処理要求を出力可能なプロトコルであり、前記第２のプロトコルは１つの処理応答装置へ処理要求を出力可能なプロトコルであるものとしてもよい。こうすれば、第１のプロトコルにより複数の処理応答装置へ処理要求を出力し、これを受けて１つの装置へ処理要求するプロトコルの処理を処理応答装置に実行させその実行結果に基づいて処理要求の応答を行うことから、第１のプロトコルで処理要求を出力したあと、第２のプロトコルで個別の装置へ処理要求を出力する必要などがないため、ネットワークの負荷を一層低減することができる。
【００１４】
本発明の処理応答方法は、
処理要求装置へネットワークを介して応答する処理応答装置のコンピュータが実行する処理応答方法であって、
（ａ）前記処理要求装置から取得した第１のプロトコルの処理要求に第２のプロトコルのコマンドが格納されているときには該第２のプロトコルのコマンドを取得するステップと、
（ｂ）前記ステップ（ａ）で取得した第２のプロトコルのコマンドを解釈して実行するステップと、
（ｃ）前記ステップ（ｂ）での実行結果に基づいて前記処理要求に対する応答を処理するステップと、を含むものである。
【００１５】
この処理応答方法では、処理要求装置から取得した第１のプロトコルの処理要求に第２のプロトコルのコマンドが格納されているときには、この第２のプロトコルのコマンドを取得し、この取得した第２のプロトコルのコマンドを解釈して実行し、この実行結果に基づいて第１のプロトコルの処理要求に対する応答を処理する。このように、第１のプロトコルの処理要求を受けて第２のプロトコルのコマンドの実行と、その結果に応じた第１のプロトコルの処理要求の応答を処理するから、第１のプロトコルの要求処理と、第２のプロトコルの処理要求とをネットワークを介して別々に取得する必要がないし、第２のプロトコルのコマンドの実行結果を第１のプロトコルの処理に反映させることができる。したがって、より効率よく処理すると共に、ネットワークの負荷をより低減することができる。なお、この処理応答方法において、上述した処理応答装置の種々の態様を採用してもよいし、また、上述した処理応答装置の各機能を実現するようなステップを追加してもよい。
【００１６】
本発明の処理要求方法は、
処理応答装置へネットワークを介して所定の処理を要求する処理要求装置のコンピュータが実行する処理要求方法であって、
（ａ）第１のプロトコルの処理要求に、第２のプロトコルのコマンドと、該コマンドを前記処理応答装置が実行した際に得られる実行結果に基づいて該処理要求に対する応答を前記第１のプロトコルにより処理させるよう定められた処理実行条件とを格納して該処理要求を作成するステップと、
（ｂ）前記ステップ（ａ）で作成された処理要求を前記処理応答装置へ出力するステップと、を含むものである。
【００１７】
この処理要求方法では、第１のプロトコルの処理要求に、第２のプロトコルのコマンドと、このコマンドを処理応答装置が実行した際に得られる実行結果に基づいてこの処理要求に対する応答を第１のプロトコルにより処理させるよう定められた処理実行条件とを格納してこの処理要求を作成し、この作成した処理要求を処理応答装置へ出力する。このように、処理要求を受けた処理応答装置に、第２のプロトコルのコマンドの実行と、その結果に応じた第１のプロトコルの処理要求の応答を処理させるから、第１のプロトコルの要求処理と、第２のプロトコルの処理要求とをネットワークを介して別々に出力する必要がないし、第２のプロトコルのコマンドの実行結果を第１のプロトコルの処理に反映させることができる。したがって、より効率よく処理すると共に、ネットワークの負荷をより低減することができる。なお、この処理要求方法において、上述した処理要求装置の種々の態様を採用してもよいし、また、上述した処理要求装置の各機能を実現するようなステップを追加してもよい。
【００１８】
本発明のプログラムは、上述した処理応答方法又は処理要求方法の各ステップを１又は複数のコンピュータに実現させるためのものである。このプログラムは、コンピュータが読み取り可能な記録媒体（例えばハードディスク、ＲＯＭ、ＦＤ、ＣＤ、ＤＶＤなど）に記録されていてもよいし、伝送媒体（インターネットやＬＡＮなどの通信網）を介してあるコンピュータから別のコンピュータへ配信されてもよいし、その他どのような形で授受されてもよい。このプログラムを一つのコンピュータに実行させるか又は複数のコンピュータに各ステップを分担して実行させれば、上述した処理応答方法又は処理要求方法の各ステップが実行されるため、該方法と同様の作用効果が得られる。
【発明を実施するための最良の形態】
【００１９】
次に本発明を具現化した一実施形態について説明する。図１は、本発明の一実施形態であるサービス検索システム１０の構成の概略を示す構成図である。本実施例のサービス検索システム１０は、ネットワークとしてのＬＡＮ１２に接続され本発明の処理要求装置としての機能を備えたユーザＰＣ２０，３０と、処理応答装置としての機能を備えた複数のプリンタ４０，５０，５１，…，とＬＡＮ１２に接続されユーザＰＣ２０やプリンタ４０とのルーティングを行うルータ１４，１６とによって構成されている。なお、このサービス検索システム１０では、プリンタを７台、ユーザＰＣを２台としたが、それぞれを任意の数だけ備えたものとしてもかまわない。
【００２０】
ユーザＰＣ２０は、ユーザが使用する周知の汎用パソコンであり、図１に示すように、各種制御を実行するＣＰＵ２２と各種制御プログラムを記憶するＲＯＭ２３とデータを一時記憶するＲＡＭ２４とを備えたコントローラ２１と、各種アプリケーションプログラムや各種データファイルを記憶する大容量メモリであるＨＤＤ２５と、ＬＡＮ１２に接続された外部機器との間で信号の送受信が可能なＩ／Ｆ２６とを備えている。コントローラ２１は、更に、ＳＬＰ（Ｓｅｒｖｉｃｅ  Ｌｏｃａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ）のユーザエージェントとして機能するＳＬＰ処理部２１ａと、ＳＬＰを利用してＬＡＮ１２に接続されているプリンタなどのサービスを検索する要求を作成するＳＬＰ検索要求作成部２１ｂと、ＳＮＭＰ（Ｓｉｍｐｌｅ  Ｎｅｔｗｏｒｋ  Ｍａｎａｇｅｍｅｎｔ  Ｐｒｏｔｏｃｏｌ）のＳＮＭＰマネージャとして機能するＳＮＭＰ処理部２１ｂと、を備えている。ここでは、ＳＬＰは、マルチキャスト、ブロードキャスト及びユニキャストで動作可能であり、ＳＮＭＰはユニキャストで動作可能であるものとした。このユーザＰＣ２０は、インストールされたプログラムによりファイルの印刷指令をＬＡＮ１２を介してプリンタ４０に送信したり、プリンタ４０から送信された情報を受信したりする。また、ユーザＰＣ２０は、ＬＡＮ１２を介してプリンタ４０などとデータを送受信する際には、情報記憶手段としてのＲＡＭ２４の所定領域に設けられた受信バッファ及び送信バッファを利用して行う。このユーザＰＣ２０は、各種情報を画面表示するディスプレイ２８や、ユーザが各種指令を入力するキーボード等の入力装置２９などを備え、ディスプレイ２８に表示されたカーソル等をユーザが入力装置２９を介して入力操作するとその入力操作に応じた動作を実行する機能を有している。なお、ユーザＰＣ３０は、ユーザＰＣ２０と同様の構成であるため、その説明を省略する。
【００２１】
プリンタ４０は、装置全体の制御を司るＣＰＵ４２と各種処理プログラムを記憶した読み書き可能なフラッシュＲＯＭ４３と一時的にデータを記憶するＲＡＭ４４とを備えたコントローラ４１と、着色剤としてトナーを用いて記録紙Ｓに印刷を行う印刷機構４５と、ＬＡＮ１２に接続された外部機器との間で信号の送受信が可能なＩ／Ｆ４６とを備えている。このプリンタ４０は、ＬＡＮ１２を介してユーザＰＣ２０などとデータを送受信する際には、情報記憶手段としてのＲＡＭ４４の所定領域に設けられた受信バッファ及び送信バッファを利用して行う。コントローラ４１は、更に、ＳＬＰの検索要求を処理するＳＬＰ処理部４１ａを備えておりＳＬＰのサービスエージェントとして機能すると共に、ＳＮＭＰのコマンドを実行するＳＮＭＰ処理部４１ｂを備えておりＳＮＭＰエージェントとして機能する。フラッシュＲＯＭ４３には、図示しないが、プリンタ４０のドメイン名や、プリンタ４０が対応するサービス種別やプリンタ４０の製造元の情報である製造者名や、製品の称呼である製品名のほか、ＩＰアドレスやＭＡＣアドレスなどの各々の固有情報が格納されている。このフラッシュＲＯＭ４３には、プリンタ４０の状態を保持するためのＳＮＭＰによって管理される項目を定義したＭＩＢ（Ｍａｎａｇｅｍｅｎｔ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｂａｓｅ）が記憶されている。このＭＩＢには、プリンタ４０の機能に関する情報や（両面印刷可能など）、トナーに関する情報などが格納されている。印刷機構４５は、単一感光体方式と中間転写方式とを採用したフルカラーの電子写真方式の印刷機構として構成され、シアン（Ｃ）、マゼンタ（Ｍ）、イエロー（Ｙ）、ブラック（Ｋ）の４色に色分解された各色ごとの画像の静電潜像を感光体上に形成し、その静電潜像を各色のトナーにより現像し、現像したトナー像を最終的に記録紙Ｓに転写し、転写した記録紙Ｓを定着させる機構である。なお、印刷機構４５は、プリントヘッド内に設けられた圧電素子又はヒータによりインクカートリッジ内のインクを加圧して記録紙Ｓに向かって吐出するインクジェット方式を採用してもよい。なお、プリンタ５０〜５５は、プリンタ４０と同様の構成であるため、その説明を省略する。
【００２２】
次に、こうして構成された本実施形態のサービス検索システム１０の動作について、まず、ユーザＰＣ２０によりＬＡＮ１２で提供されているサービスをＳＬＰを利用して検索する際の動作について説明する。ここでは、説明の便宜のため、ＬＡＮ１２に接続された機器のうち所定のドメイン名を検索する場合について、主にユーザＰＣ２０とプリンタ４０とを用いて説明する。まず、ユーザは、ユーザＰＣ２０の入力装置２９を操作してＨＤＤ２５に記憶されたＳＬＰを利用するサービス検索プログラムを実行する。すると、ユーザＰＣ２０のＣＰＵ２２は、図２に示す、ＨＤＤ２５に記憶されたＳＬＰサービス検索処理ルーチンを実行する。図２は、ユーザＰＣ２０により実行されるＳＬＰサービス検索処理ルーチンの一例を示すフローチャートである。このルーチンを開始すると、ＣＰＵ２２は、まず、ＨＤＤ２５に記憶されたサービス検索画面８０を読み出しディスプレイ２８に表示させる（ステップＳ１００）。
【００２３】
図３は、サービス検索画面８０の説明図である。このサービス検索画面８０には、ユーザの操作に基づいて画面上を移動するカーソル８１や、検索対象の製造者名や検索するサービスの種別を図示しないプルダウンメニューなどによりユーザが入力するサービス種別入力部８２、ドメイン名など検索項目としての固有情報の種別をプルダウンで選択可能でありその種別の文字列を入力可能な検索文字列入力部８３、検索条件に基づいてＬＡＮ１２に接続された機器などサービスの検索結果が格納される検索結果表示部８４、検索が終了した際にクリックされる検索終了ボタン８８、検索実行時にクリックされる検索実行ボタン８９などが設けられている。ユーザは、このサービス検索画面８０のサービス種別入力部８２や検索文字列入力部８３に検索したい内容を入力するのである。
【００２４】
次に、ＣＰＵ２２は、検索条件が入力されたか否かをサービス種別入力部８２や検索文字列入力部８３に入力されたか否かに基づいて判定し（ステップＳ１１０）、検索条件が入力されていないときには、そのまま待機し、検索条件が入力されたときには、検索文字列入力部８３に、ＳＬＰによる検索に際してＳＮＭＰのコマンド実行処理が必要な検索条件が入力されたか否かを判定する（ステップＳ１２０）。ここで、ＳＮＭＰのコマンド実行処理が必要な検索条件とは、例えば、プリンタ４０のＭＩＢを取得し、この取得したＭＩＢに含まれている情報が、入力した条件に適合するか否かを判定する必要がある検索条件などをいう。検索条件にＳＮＭＰのコマンド実行処理が必要な条件が含まれていないときには、通常のＳＬＰのタグリストを格納した検索要求を作成する（ステップＳ１３０）。ここでは、ＳＬＰ処理部２１ａが検索要求を作成するものとした。
【００２５】
図４は、通常時のサービス検索要求の概念図である。ここでは、具体例として、ＬＡＮ１２に接続されたＥＰＳＯＮプリンタの製品名を検索する場合について説明する。サービス検索画面８０において、サービス種別入力部８２に「ＥＰＳＯＮ  ｐｒｉｎｔｅｒ」、検索文字列入力部８３に「製品名」が入力されたときには、この検索要求には、検索するサービスの情報として、装置の製造者名を示す「ｐ−ｄｅｖ．１２４８」（ＥＰＳＯＮを表す）や検索するサービス種別を示す「ｐｒｉｎｔｅｒ」を格納すると共に、ベンダの拡張機能を示す「ｘ−１２４８−ｐ−ｄｅｖ．」や製品名を示す「ｐｎ」など、検索対象の固有の情報を含むタグリストを格納したものを作成するのである。
【００２６】
一方、検索条件にＳＮＭＰのコマンド実行処理が必要な条件が含まれているときには、プリンタ４０でＳＮＭＰのコマンド実行が必要であるものとして、ＣＰＵ２２は、ＳＮＭＰの実行コマンドを含むタグリストを格納したＳＬＰの検索要求を作成する（ステップＳ１４０）。ここでは、ＳＬＰ検索要求作成部２１ｂが検索要求を作成するものとした。図５は、ＳＮＭＰの実行コマンドを含むサービス検索要求の概念図である。サービス検索画面８０において、サービス種別入力部８２に「ＥＰＳＯＮ  ｐｒｉｎｔｅｒ」、検索文字列入力部８３に「ドメイン名」が入力されたときには、この検索要求には、検索するサービスの情報として、装置の製造者名を示す「ｐ−ｄｅｖ．１２４８」や検索するサービス種別を示す「ｐｔｉｎｔｅｒ」を格納すると共に、ベンダの拡張機能を示す「ｘ−１２４８」や拡張機能で定義したＳＮＭＰを処理するアトリビュートである「ｐ−ｓｐｔ」、内部的にＳＮＭＰのＧｅｔＲｅｑｕｅｓｔ−ＰＤＵを処理することを示す「ｓｎｍｐｇｅｔ」、ｓｎｍｐｇｅｔをＳＮＭＰｖ１で行うことを示す「Ｖ１」、コミュニティネームである「ｐｕｂｌｉｃ」、ＭＩＢのオブジェクトＩＤとしての「１．３．６．１．２．１．１．５．０」（ｓｙｓＮａｍｅを表す）、上記コマンドの実行結果が適合したときにこの検索要求の応答を実行するよう定められた処理実行条件としての「ｒｅｓｕｌｔ：ｎｏＥｒｒｏｒ」などを含むタグリストを格納したものを作成する。即ち、このタグリストの内容は、ＳＮＭＰのコマンドを実行した結果が「ｎｏＥｒｒｏｒ」であるときに検索要求に対する応答を返すよう定めたものとなっている。このタグリストには、その先頭に「｛」、最後尾に「｝」及び内容の区切りに「｜」など、ＳＬＰのタグリストの記述に規定されている以外の文字を用いることにより、プリンタ４０におけるＳＮＭＰの実行コマンドが格納されているか否かの判定が容易となっているのである。なお、ここでは、説明の便宜のため、ＳＮＭＰのコマンド等を「ｎｏＥｒｒｏｒ」などの文字として説明したが、実際には、タグリストの内容は、「０２０１００」（ｎｏＥｒｒｏｒを表す）のようにＳＮＭＰのヘキサで記述されている。
【００２７】
続いて、検索開始の指示がされたか否かを検索実行ボタン８９がクリックされたか否かに基づいて判定し（ステップＳ１５０）、検索開始の指示がされていないときにはステップＳ１１０以降の処理を実行する。一方、検索開始の指示がされたときには、ステップＳ１３０又はステップＳ１４０で作成した検索要求をＬＡＮ１２に接続されたプリンタへＩ／Ｆ２６が送信出力する（ステップＳ１６０）。ここで、検索要求の送信出力は、ＳＬＰでは、ルータ１４より内側の機器まで、ルータ１６より内側の機器まで又は全体の機器のいずれかを指定可能であるが、ここではＬＡＮ１２の全体の機器に対してマルチキャストで送信出力するものとした。ステップＳ１６０のあと、各プリンタからの応答情報をＩ／Ｆ２６が取得したか否かを判定し（ステップＳ１７０）、応答情報を取得していないときにはそのまま待機し、応答情報を取得したときには、検索条件に該当する情報の内容をディスプレイ２８に表示出力する（ステップＳ１８０）。ここでは、検索した内容を検索結果表示部８４に埋め込んだサービス検索画面８０をディスプレイ２８に表示出力する。そして検索処理が終了したか否かを検索終了ボタン８８がクリックされたか否かに基づいて判定し（ステップＳ１９０）、検索処理が終了していないときにはステップＳ１１０以降の処理を実行し、検索処理が終了したときにはサービス検索画面８０を閉じそのままこのルーチンを終了する。このように、検索文字列入力部８３にＳＮＭＰのコマンド実行処理が必要な条件が含まれているときには、予め定めたルールに基づいてＳＮＭＰのコマンドをタグリストに格納した検索要求を作成し検索対象であるプリンタに送信するのである。
【００２８】
次に、ユーザＰＣ２０が送信した検索要求に対してプリンタ４０が応答する動作について説明する。図６は、プリンタ４０により実行されるサービス応答処理ルーチンの一例を示すフローチャートである。このルーチンは、フラッシュＲＯＭ４３に記憶され、プリンタ４０の電源がオンになったあと所定のタイミングごとに（例えば数ｍｓｅｃごとに）繰返し実行される。このルーチンを開始すると、ＣＰＵ４２は、まず、検索要求をＩ／Ｆ４６が取得したか否かを判定し（ステップＳ２００）、検索要求を取得していないときにはそのままこのルーチンを終了する。一方、検索要求を取得したときには、ＣＰＵ４２は、検索要求の中に、ＳＮＭＰのコマンドが含まれているか否かを判定する（ステップＳ２１０）。ＳＮＭＰのコマンドが含まれているか否かの判定は、タグリストの記述に規定されている以外の文字がタグリストに含まれているか否かや、タグリスト内に「ｐ−ｓｐｔ」が含まれているか否かに基づいて行うことができる。ＳＮＭＰのコマンドが含まれていないときには、通常の検索であるものとみなし、ＣＰＵ４２は、タグリストに指定された検索条件とフラッシュＲＯＭ４３などに記憶された情報とが一致するか否か、即ち、検索条件を満たすか否かを判定する（ステップＳ２２０）。ここで、検索条件を満たすか否かの判定は、フラッシュＲＯＭ４３に記憶されたサービス種別と検索要求に含まれるサービス種別が一致するか否かや、フラッシュＲＯＭ４３に記憶された内容とタグリストに記述された内容と一致するか否かなどに基づいて行う。検索条件を満たさないと判定したときには、ＣＰＵ４２は、そのまま応答情報を作成せずにこのルーチンを終了し、一方、検索条件を満たすと判定したときには、検索内容に応じたアトリビュートリストを格納した応答情報を作成し（ステップＳ２３０）、作成した応答情報を検索要求の送信元であるユーザＰＣ２０へＳＬＰのユニキャストを利用してＩ／Ｆ４６が送信出力し（ステップＳ２４０）、このルーチンを終了する。
【００２９】
一方、ステップＳ２１０でＳＮＭＰのコマンドが含まれているときには、ＣＰＵ４２は、検索要求に格納されたタグリストからＳＮＭＰのコマンドを取得し、このコマンドを実行する（ステップＳ２５０）。ここでは、ＳＬＰ処理部４１ａがタグリストを読出しＳＮＭＰのコマンドを取得してＳＮＭＰ処理部４１ｂに受渡し、これを受けたＳＮＭＰ処理部４１ｂがこのＳＮＭＰのコマンドを実行するものとした。次に、ＣＰＵ４２は、コマンドを実行した結果がタグリストに記述された処理実行条件を満たすか否かを判定する（ステップＳ２６０）。ここでは、ＳＮＭＰ処理部４１ｂがコマンドを実行した結果をＳＬＰ処理部４１ａに受渡し、これを受けたＳＬＰ処理部４１ａがタグリストに記述された処理実行条件を満たすか否かを判定するものとした。ここで、図５に示した例について説明すると、ＳＮＭＰのコマンドを実行した結果が「ｎｏＥｒｒｏｒ」であるか否かにより処理実行条件を満たすか否かを判定する。コマンドを実行した結果がタグリストに記述された処理実行条件を満たさないときには、ＣＰＵ４２は、検索要求に対する応答を作成せず、即ち応答を出力せずにそのままこのルーチンを終了する。一方、コマンドを実行した結果がタグリストに記述された処理実行条件を満たすときには、ＣＰＵ４２は、検索内容に応じたアトリビュートリストを格納した応答情報を作成し（ステップＳ２３０）、作成した応答情報を検索要求の送信元であるユーザＰＣ２０へＳＬＰのユニキャストを利用してＩ／Ｆ４６が送信出力し（ステップＳ２４０）、このルーチンを終了する。
【００３０】
ここで、例えば、プリンタが有する機能（例えば両面印刷機能など）により検索条件を絞り込み、ＬＡＮ１２に接続されたなかの特定のプリンタを検索する場合について考える。このような場合は、各プリンタが有するＭＩＢにそのプリンタが有する機能についての情報が格納されていることから、ＳＮＭＰを利用して各プリンタの機能に関する情報を取得することができる。また、ＬＡＮ１２に接続された機器のうちプリンタをサービスとして検索することが可能であるから、ＳＬＰを利用してプリンタの検索を行うことができる。しかしながら、このような検索条件でＳＬＰとＳＮＭＰとを別々に利用して検索しようとすると、ＳＬＰによりマルチキャスト又はブロードキャストでプリンタを検索したのち、ＳＮＭＰによりユニキャストで各個別のプリンタの情報を取得しなければならず、手間がかかる上、ネットワークの負荷が多大になる。また、新たな機器がＬＡＮ１２に接続されていくことを考えると、サービス検索システム１０の構築方法により、例えば、新たに生じた目的の情報（例えば両面印刷機能が追加されたなど）をＳＬＰのサービスアトリビュートに新たに追加していくということも考えられるが、追加したアトリビュートに対応していない、以前からＬＡＮ１２に接続されていた機器が存在することから、この機器の設定を逐次行わなければならないといった不都合がある。また、ＬＡＮ１２に接続された新たな機器が有する機能拡張されたＳＮＭＰのＭＩＢと同期してＳＬＰのアトリビュートを機能拡張することも困難である。これに対して、本実施例のサービス検索システム１０では、上述したように、ユーザＰＣ２０がＳＬＰの検索要求にＳＮＭＰのコマンドと処理実行条件とを格納してＳＬＰを利用して複数のプリンタに送信出力し、これを受けた各々のプリンタがＳＮＭＰのコマンドを実行しこの実行結果が処理実行条件を満たすもの（例えば両面印刷機能を有するという条件を満たすもの）のみがＳＬＰを利用してユーザＰＣ２０へ応答情報を返すのである。
【００３１】
ここで、本実施形態の構成要素と本発明の構成要素との対応関係を明らかにする。本実施形態のプリンタ４０が本発明の処理応答装置に相当し、このうち、Ｉ／Ｆ４６が第１取得手段及び第１出力手段に相当し、コントローラ４１（ＳＬＰ処理部４１ａ）が第１プロトコル処理手段に相当し、コントローラ４１（ＳＮＭＰ処理部４１ｂ）が第２プロトコル処理手段に相当する。また、ユーザＰＣ２０が処理要求装置に相当し、このうち、Ｉ／Ｆ２６が第２出力手段及び第２取得手段に相当し、コントローラ２１（ＳＬＰ検索要求作成部２１ｂ）が要求作成手段に相当し、ＣＰＵ２２が処理制御手段に相当し、ＳＬＰが第１のプロトコルに相当し、ＳＮＭＰが第２のプロトコルに相当する。なお、本実施形態では、サービス検索システム１０の動作を説明することにより本発明の処理応答方法及び処理要求方法の一例も明らかにしている。
【００３２】
以上詳述した本実施形態のサービス検索システム１０によれば、ユーザＰＣ２０が、ＳＬＰの検索要求に、ＳＮＭＰのコマンドと、このコマンドをプリンタ４０が実行した際に得られる実行結果に基づいてこの検索要求に対する応答をＳＬＰにより処理させるよう定められた処理実行条件とを格納してこの検索要求を作成し、この作成した検索要求をプリンタ４０へ出力し、プリンタ４０が、ユーザＰＣ２０から取得したＳＬＰの検索要求にＳＮＭＰのコマンドが格納されているときには、このＳＮＭＰのコマンドを取得し、この取得したＳＮＭＰのコマンドを解釈して実行し、この実行結果が処理実行条件を満たしているときには検索要求に対する応答をＳＬＰにより行う。このように、ＳＬＰの検索要求を受けてＳＮＭＰのコマンドの実行と、その結果に応じたＳＬＰの検索要求の応答を処理するから、ＳＬＰの要求処理と、ＳＮＭＰの検索要求とをネットワークを介して別々に送信出力または取得する必要がないし、ＳＮＭＰのコマンドの実行結果をＳＬＰの処理に反映させることができる。したがって、より効率よく検索処理すると共に、ネットワークの負荷をより低減することができる。また、ユーザＰＣ２０へ検索結果を送信出力するため、検索要求に対する応答をユーザＰＣ２０が利用することができる。また、実行結果が処理実行条件を満たしていないときには検索要求に対する応答を送信出力しないため、ネットワークの負荷を一層低減することができる。更に、ＳＬＰは複数のプリンタ４０へ検索要求を出力可能なプロトコルであり、ＳＮＭＰは１つのプリンタ４０へ検索要求を出力可能なプロトコルであるため、ＳＬＰで検索要求を出力したあと、ＳＮＭＰで個別の装置へ検索要求を出力する必要などがなく、ネットワークの負荷を一層低減することができるし、複数の装置へのＳＬＰによる検索処理と、各々の装置ごとにＳＮＭＰによる情報取得処理の実行することと、を一度に行うことができる。更にまた、ＳＬＰの検索要求に格納されたタグリストからＳＮＭＰコマンドを取得するため、比較的容易にＳＮＭＰコマンドを取得することができる。そして、検索要求に対する応答結果をディスプレイ２８に表示出力するため、検索要求に対する応答をユーザが利用しやすい。
【００３３】
なお、本発明は上述した実施形態に何ら限定されることはなく、本発明の技術的範囲に属する限り種々の態様で実施し得ることはいうまでもない。
【００３４】
例えば、上述した実施形態では、ＳＬＰの検索要求にＳＮＭＰのコマンドを格納し、検索対象であるプリンタで実行させるものとしたが、これらのプロトコルや、検索要求などに特に限定されず、第１のプロトコルの処理要求に第２のプロトコルのコマンドを格納し第２のプロトコルのコマンドの実行結果により第１のプロトコルの処理要求に対する応答を決定するものであれば、いかなるものに適用してもよい。このとき、第１及び第２のプロトコルが１つの機器に出力可能であるものとしてもよいし、第１及び第２のプロトコルが複数の機器に出力可能であるものとしてもよいが、第１のプロトコルが複数の機器に出力可能なものとし第２のプロトコルが１つの機器に出力可能なものとすることが、通信のやり取りを考慮する上では好ましい。なお、第１のプロトコルと第２のプロトコルとが同階層であってもよいし別階層であってもよい。
【００３５】
上述した実施形態では、ＳＬＰの検索要求に格納したＳＮＭＰのコマンドを実行しｎｏＥｒｒｏｒであるときに、検索要求の応答を送信出力するものとしたが、特にこれに限定されず、所定の処理実行条件を満たすときに検索要求に対する応答を送信出力するものとしてもよい。なお、ＳＮＭＰのコマンドをタグリストに格納するものとしたが、タグリスト以外の部分に格納してもよい。
【００３６】
上述した実施形態では、「｛」、「｝」「｜」などのタグリストの記述に規定されていない文字を用いてタグリストを作成するものとしたが、他の規定されていない文字を採用してもよい。また、タグリストの先頭の文字、最後尾の文字及び内容の区切り文字をタグリストの記述に規定されていない文字とするものとしたが、タグリストの他の部分にこれらの文字を用いてもよい。あるいは、タグリストの記述に規定されていない文字を利用してタグリストを作成するものとしたが、タグリストの記述に規定されていない文字を利用せずにタグリストを作成するものとしてもよい。この場合、コマンドを含むことをＣＰＵ４２が容易に判定可能な文字又は文字列を予め定めておき、これを用いてタグリストを作成するものとしてもよい。なお、ＣＰＵ４２は、ワイルドカード文字の有無により絞り込み検索であるか否かを判定するものとしてもよい。
【００３７】
上述した実施形態では、検索結果である応答情報をディスプレイ２８へ画像により表示出力するものとしたが、図示しないスピーカから音声を出力することにより応答をユーザに報知してもよいし、画像を記録紙Ｓに印刷出力することにより応答をユーザに報知してもよい。
【００３８】
上述した実施形態では、本発明の検索実行装置をユーザＰＣ２０とし、検索応答装置をプリンタ４０としたが、本発明の検索実行装置をプリンタ４０とし、検索応答装置をユーザＰＣ２０としてもよいし、その他ＳＬＰによるサービス検索に対応している機器（例えばＬＡＮ１２に接続されたスキャナや、ルータ、ＦＡＸなど）であれば特に限定されずに本発明を適用することができる。
【図面の簡単な説明】
【００３９】
【図１】サービス検索システム１０の構成の概略を示す構成図である。
【図２】サービス検索処理ルーチンの一例を示すフローチャートである。
【図３】サービス検索画面８０の説明図である。
【図４】通常時のサービス検索要求の概念図である。
【図５】ＳＮＭＰの実行コマンドを含むサービス検索要求の概念図である。
【図６】サービス応答処理ルーチンの一例を示すフローチャートである。
【符号の説明】
【００４０】
１０  サービス検索システム、１２  ＬＡＮ、１４，１６  ルータ、２０，３０  ユーザＰＣ、２１  コントローラ、２１ａ  ＳＬＰ処理部、２１ｂ  ＳＬＰ検索要求作成部、２１ｃ  ＳＮＭＰ処理部、２２  ＣＰＵ、２３  ＲＯＭ、２４  ＲＡＭ、２５  ＨＤＤ、２６  ネットワークインターフェース（Ｉ／Ｆ）、２８  ディスプレイ、２９  入力装置、４０，５０〜５５  プリンタ、４１  コントローラ、４１ａ  ＳＬＰ処理部、４１ｂ  ＳＮＭＰ処理部、４２  ＣＰＵ、４３  フラッシュＲＯＭ、４４  ＲＡＭ、４５  印刷機構、４６  Ｉ／Ｆ、８０  サービス検索画面、８１  カーソル、８２  サービス種別入力部、８３  検索文字列入力部、８４  検索結果表示部、８８  検索終了ボタン、８９  検索実行ボタン、Ｓ  記録紙。
【図１】
2008181421.tif 000003
【図２】
2008181421.tif 000004
【図３】
2008181421.tif 000005
【図４】
2008181421.tif 000006
【図５】
2008181421.tif 000007
【図６】
2008181421.tif 000008