説明

処理応答装置、処理要求装置およびそれらの方法

【課題】より効率よく処理すると共に、ネットワークの負荷をより低減することができる。
【解決手段】ユーザPC20が、SLPの検索要求に、SNMPのコマンドと所定の処理実行条件とを格納してこの検索要求を作成し、この作成した検索要求をマルチキャストによりプリンタ40などへ送信出力し、これを受けたプリンタ40が、SLPの検索要求に格納されたSNMPのコマンドを取得・実行しこの実行結果が処理実行条件を満たしているときには検索要求に対する応答をSLPにより行う。このように、SLPの検索要求を受けてSNMPのコマンドの実行と、その結果に応じたSLPの検索要求の応答を処理するから、SLPの要求処理と、SNMPの検索要求とをネットワークを介して別々に送信出力または取得する必要がないし、SNMPのコマンドの実行結果をSLPの処理に反映させることができる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、処理応答装置、処理要求装置およびそれらの方法に関する。
【背景技術】
【0002】
従来、処理要求装置としては、サービスロケーションプロトコル(SLP)を用い、装置名を取得するための要求、デバイスIDを取得するための要求、デバイスの種類に応じた詳細情報を取得するための要求など複数の要求を含んだ情報取得要求を作成し検索対象に送信することにより複数回の通信によって得ていた各情報をまとめて取得するものが提案されている(例えば、特許文献1参照)。
【特許文献1】特開2006−202195号公報
【発明の開示】
【発明が解決しようとする課題】
【0003】
ところで、例えばネットワークに接続された機器の検索などを行う場合には、複数のプロトコルを実行してこれらの機器の情報を得たい場合がある。このような場合、あるプロトコルでネットワークに接続された機器の検索を行いその検索結果に基づいて機器の絞り込みを行った上で、他のプロトコルを用いて更にネットワークに接続された機器に関する情報を取得していた。このように、複数のプロトコルを利用する際には、各々の実行要求を送信しなければならず、複数のプロトコルにより機器の情報を得る際には、ネットワークに負荷がかかることがあった。更に、一方のプロトコルの結果を他方のプロトコルの結果に自動的に反映させることができないため、効率よい処理を行うことができなかった。
【0004】
本発明は、このような課題に鑑みなされたものであり、より効率よく処理すると共に、ネットワークの負荷をより低減することができる処理応答装置、処理要求装置およびそれらの方法を提供することを目的とする。
【課題を解決するための手段】
【0005】
本発明は、上述の目的を達成するために以下の手段を採った。
【0006】
本発明の処理応答装置は、
処理要求装置へネットワークを介して応答する処理応答装置であって、
情報を取得可能な第1取得手段と、
前記第1取得手段が前記処理要求装置から取得した第1のプロトコルの処理要求に第2のプロトコルのコマンドが格納されているときには該第2のプロトコルのコマンドを取得する第1プロトコル処理手段と、
前記取得された第2のプロトコルのコマンドを解釈して実行し該実行結果を前記第1プロトコル処理手段へ受け渡す第2プロトコル処理手段と、
を備え、
前記第1プロトコル処理手段は、前記第2プロトコル処理手段の実行結果に基づいて前記処理要求に対する応答を処理するものである。
【0007】
この処理応答装置では、処理要求装置から取得した第1のプロトコルの処理要求に第2のプロトコルのコマンドが格納されているときには、この第2のプロトコルのコマンドを取得し、この取得した第2のプロトコルのコマンドを解釈して実行し、この実行結果に基づいて第1のプロトコルの処理要求に対する応答を処理する。このように、第1のプロトコルの処理要求を受けて第2のプロトコルのコマンドの実行と、その結果に応じた第1のプロトコルの処理要求の応答を処理するから、第1のプロトコルの要求処理と、第2のプ
ロトコルの処理要求とをネットワークを介して別々に取得する必要がないし、第2のプロトコルのコマンドの実行結果を第1のプロトコルの処理に反映させることができる。したがって、より効率よく処理すると共に、ネットワークの負荷をより低減することができる。
【0008】
本発明の処理応答装置は、情報を出力可能な第1出力手段、を備え、前記第1プロトコル処理手段は、前記第2プロトコル処理手段の実行結果が前記処理要求に格納された所定の処理実行条件を満たしているときには前記処理要求に対する応答を前記処理要求装置へ前記第1出力手段に出力させるものとしてもよい。こうすれば、処理要求に対する応答を処理要求装置が利用することができる。このとき、前記第1プロトコル処理手段は、前記第2プロトコル処理手段の実行結果が前記処理実行条件を満たしていないときには前記処理要求に対する応答を前記第1出力手段に出力させないものとしてもよい。こうすれば、ネットワークの負荷を一層低減することができる。
【0009】
本発明の処理応答装置において、前記第1のプロトコルは複数の処理応答装置へ処理要求を出力可能なプロトコルであり、前記第2のプロトコルは1つの処理応答装置へ処理要求を出力可能なプロトコルであるものとしてもよい。こうすれば、第1のプロトコルにより複数の処理応答装置へ処理要求を出力し、これを受けて1つの装置へ処理要求するプロトコルの処理を処理応答装置に実行させその実行結果に基づいて処理要求の応答を行うことから、第1のプロトコルで処理要求を出力したあと、第2のプロトコルで個別の装置へ処理要求を出力する必要などがないため、ネットワークの負荷を一層低減することができる。ここで、「複数の処理応答装置へ出力可能」とは、マルチキャストやブロードキャストであるものとしてもよい。また、「1つの処理応答装置へ出力可能」とは、ユニキャストであるものとしてもよい。このとき、前記第1のプロトコルは下位層のプロトコルであり、前記第2のプロトコルは前記第1のプロトコルよりも上位層のプロトコルであるものとしてもよい。こうすれば、異なる階層のプロトコルを用いて、処理要求の実行を行うことができる。
【0010】
本発明の処理応答装置において、前記第1のプロトコルはSLPであり、前記第2のプロトコルはSNMPであり、前記処理要求は処理応答装置の検索要求であるものとしてもよい。こうすれば、複数の装置へのSLPによる検索処理と、各々の装置ごとにSNMPによる情報取得処理の実行することと、を一度に行うことができる。このとき、前記第1プロトコル処理手段は、前記第1のプロトコルの処理要求に格納されたタグリストから第2のプロトコルコマンドを取得するものとしてもよい。こうすれば、比較的容易に第2のプロトコルコマンドを取得することができる。
【0011】
本発明の処理要求装置は、
処理応答装置へネットワークを介して所定の処理を要求する処理要求装置であって、
情報を出力可能な第2出力手段と、
第1のプロトコルの処理要求に、第2のプロトコルのコマンドと、該コマンドを前記処理応答装置が実行した際に得られる実行結果に基づいて該処理要求に対する応答を前記第1のプロトコルにより処理させるよう定められた処理実行条件とを格納して該処理要求を作成する要求作成手段と、
前記作成された処理要求を前記第2出力手段に前記処理応答装置へ出力させる処理制御手段と、を備えたものである。
【0012】
この処理要求装置では、第1のプロトコルの処理要求に、第2のプロトコルのコマンドと、このコマンドを処理応答装置が実行した際に得られる実行結果に基づいてこの処理要求に対する応答を第1のプロトコルにより処理させるよう定められた処理実行条件とを格納してこの処理要求を作成し、この作成した処理要求を処理応答装置へ出力する。このよ
うに、処理要求を受けた処理応答装置に、第2のプロトコルのコマンドの実行と、その結果に応じた第1のプロトコルの処理要求の応答を処理させるから、第1のプロトコルの要求処理と第2のプロトコルの処理要求とをネットワークを介して別々に出力する必要がないし、第2のプロトコルのコマンドの実行結果を第1のプロトコルの処理に反映させることができる。したがって、より効率よく処理すると共に、ネットワークの負荷をより低減することができる。
【0013】
本発明の処理要求装置において、前記第1のプロトコルはSLPであり、前記処理要求は処理応答装置の検索要求であり、前記要求作成手段は、前記第2のプロトコルのコマンドと前記処理実行条件とを含むタグリストを前記処理要求に格納して該処理要求を作成するものとしてもよい。こうすれば、複数の装置へのSLPによるサービス検索と、第2のプロトコルのコマンドの実行とを一度に行うことができるし、ひいては、ネットワークの負荷を低減することができる。また、タグリストにコマンドと処理実行条件とを含めるため、比較的容易に処理要求を作成することができる。なお、本発明の処理要求装置は、情報を取得可能な第2取得手段と、ユーザへ情報を報知可能な報知手段と、を備え、前記処理制御手段は、前記第2取得手段が前記第2出力手段によって出力された処理要求に対する応答を取得したときには、該取得した応答を前記ユーザへ前記報知手段に報知させるものとしてもよい。こうすれば、処理要求に対する応答をユーザが利用しやすい。このとき、前記報知手段は、画像を表示することにより前記応答をユーザに報知する表示手段、音声を出力することにより前記応答をユーザに報知する音声出力手段及び画像を印刷媒体に印刷出力することにより前記応答をユーザに報知する印刷手段のうち少なくとも1つとしてもよい。また、前記第1のプロトコルは複数の処理応答装置へ処理要求を出力可能なプロトコルであり、前記第2のプロトコルは1つの処理応答装置へ処理要求を出力可能なプロトコルであるものとしてもよい。こうすれば、第1のプロトコルにより複数の処理応答装置へ処理要求を出力し、これを受けて1つの装置へ処理要求するプロトコルの処理を処理応答装置に実行させその実行結果に基づいて処理要求の応答を行うことから、第1のプロトコルで処理要求を出力したあと、第2のプロトコルで個別の装置へ処理要求を出力する必要などがないため、ネットワークの負荷を一層低減することができる。
【0014】
本発明の処理応答方法は、
処理要求装置へネットワークを介して応答する処理応答装置のコンピュータが実行する処理応答方法であって、
(a)前記処理要求装置から取得した第1のプロトコルの処理要求に第2のプロトコルのコマンドが格納されているときには該第2のプロトコルのコマンドを取得するステップと、
(b)前記ステップ(a)で取得した第2のプロトコルのコマンドを解釈して実行するステップと、
(c)前記ステップ(b)での実行結果に基づいて前記処理要求に対する応答を処理するステップと、を含むものである。
【0015】
この処理応答方法では、処理要求装置から取得した第1のプロトコルの処理要求に第2のプロトコルのコマンドが格納されているときには、この第2のプロトコルのコマンドを取得し、この取得した第2のプロトコルのコマンドを解釈して実行し、この実行結果に基づいて第1のプロトコルの処理要求に対する応答を処理する。このように、第1のプロトコルの処理要求を受けて第2のプロトコルのコマンドの実行と、その結果に応じた第1のプロトコルの処理要求の応答を処理するから、第1のプロトコルの要求処理と、第2のプロトコルの処理要求とをネットワークを介して別々に取得する必要がないし、第2のプロトコルのコマンドの実行結果を第1のプロトコルの処理に反映させることができる。したがって、より効率よく処理すると共に、ネットワークの負荷をより低減することができる。なお、この処理応答方法において、上述した処理応答装置の種々の態様を採用してもよ
いし、また、上述した処理応答装置の各機能を実現するようなステップを追加してもよい。
【0016】
本発明の処理要求方法は、
処理応答装置へネットワークを介して所定の処理を要求する処理要求装置のコンピュータが実行する処理要求方法であって、
(a)第1のプロトコルの処理要求に、第2のプロトコルのコマンドと、該コマンドを前記処理応答装置が実行した際に得られる実行結果に基づいて該処理要求に対する応答を前記第1のプロトコルにより処理させるよう定められた処理実行条件とを格納して該処理要求を作成するステップと、
(b)前記ステップ(a)で作成された処理要求を前記処理応答装置へ出力するステップと、を含むものである。
【0017】
この処理要求方法では、第1のプロトコルの処理要求に、第2のプロトコルのコマンドと、このコマンドを処理応答装置が実行した際に得られる実行結果に基づいてこの処理要求に対する応答を第1のプロトコルにより処理させるよう定められた処理実行条件とを格納してこの処理要求を作成し、この作成した処理要求を処理応答装置へ出力する。このように、処理要求を受けた処理応答装置に、第2のプロトコルのコマンドの実行と、その結果に応じた第1のプロトコルの処理要求の応答を処理させるから、第1のプロトコルの要求処理と、第2のプロトコルの処理要求とをネットワークを介して別々に出力する必要がないし、第2のプロトコルのコマンドの実行結果を第1のプロトコルの処理に反映させることができる。したがって、より効率よく処理すると共に、ネットワークの負荷をより低減することができる。なお、この処理要求方法において、上述した処理要求装置の種々の態様を採用してもよいし、また、上述した処理要求装置の各機能を実現するようなステップを追加してもよい。
【0018】
本発明のプログラムは、上述した処理応答方法又は処理要求方法の各ステップを1又は複数のコンピュータに実現させるためのものである。このプログラムは、コンピュータが読み取り可能な記録媒体(例えばハードディスク、ROM、FD、CD、DVDなど)に記録されていてもよいし、伝送媒体(インターネットやLANなどの通信網)を介してあるコンピュータから別のコンピュータへ配信されてもよいし、その他どのような形で授受されてもよい。このプログラムを一つのコンピュータに実行させるか又は複数のコンピュータに各ステップを分担して実行させれば、上述した処理応答方法又は処理要求方法の各ステップが実行されるため、該方法と同様の作用効果が得られる。
【発明を実施するための最良の形態】
【0019】
次に本発明を具現化した一実施形態について説明する。図1は、本発明の一実施形態であるサービス検索システム10の構成の概略を示す構成図である。本実施例のサービス検索システム10は、ネットワークとしてのLAN12に接続され本発明の処理要求装置としての機能を備えたユーザPC20,30と、処理応答装置としての機能を備えた複数のプリンタ40,50,51,…,とLAN12に接続されユーザPC20やプリンタ40とのルーティングを行うルータ14,16とによって構成されている。なお、このサービス検索システム10では、プリンタを7台、ユーザPCを2台としたが、それぞれを任意の数だけ備えたものとしてもかまわない。
【0020】
ユーザPC20は、ユーザが使用する周知の汎用パソコンであり、図1に示すように、各種制御を実行するCPU22と各種制御プログラムを記憶するROM23とデータを一時記憶するRAM24とを備えたコントローラ21と、各種アプリケーションプログラムや各種データファイルを記憶する大容量メモリであるHDD25と、LAN12に接続された外部機器との間で信号の送受信が可能なI/F26とを備えている。コントローラ2
1は、更に、SLP(Service Location Protocol)のユーザエージェントとして機能するSLP処理部21aと、SLPを利用してLAN12に接続されているプリンタなどのサービスを検索する要求を作成するSLP検索要求作成部21bと、SNMP(Simple Network Management Protocol)のSNMPマネージャとして機能するSNMP処理部21bと、を備えている。ここでは、SLPは、マルチキャスト、ブロードキャスト及びユニキャストで動作可能であり、SNMPはユニキャストで動作可能であるものとした。このユーザPC20は、インストールされたプログラムによりファイルの印刷指令をLAN12を介してプリンタ40に送信したり、プリンタ40から送信された情報を受信したりする。また、ユーザPC20は、LAN12を介してプリンタ40などとデータを送受信する際には、情報記憶手段としてのRAM24の所定領域に設けられた受信バッファ及び送信バッファを利用して行う。このユーザPC20は、各種情報を画面表示するディスプレイ28や、ユーザが各種指令を入力するキーボード等の入力装置29などを備え、ディスプレイ28に表示されたカーソル等をユーザが入力装置29を介して入力操作するとその入力操作に応じた動作を実行する機能を有している。なお、ユーザPC30は、ユーザPC20と同様の構成であるため、その説明を省略する。
【0021】
プリンタ40は、装置全体の制御を司るCPU42と各種処理プログラムを記憶した読み書き可能なフラッシュROM43と一時的にデータを記憶するRAM44とを備えたコントローラ41と、着色剤としてトナーを用いて記録紙Sに印刷を行う印刷機構45と、LAN12に接続された外部機器との間で信号の送受信が可能なI/F46とを備えている。このプリンタ40は、LAN12を介してユーザPC20などとデータを送受信する際には、情報記憶手段としてのRAM44の所定領域に設けられた受信バッファ及び送信バッファを利用して行う。コントローラ41は、更に、SLPの検索要求を処理するSLP処理部41aを備えておりSLPのサービスエージェントとして機能すると共に、SNMPのコマンドを実行するSNMP処理部41bを備えておりSNMPエージェントとして機能する。フラッシュROM43には、図示しないが、プリンタ40のドメイン名や、プリンタ40が対応するサービス種別やプリンタ40の製造元の情報である製造者名や、製品の称呼である製品名のほか、IPアドレスやMACアドレスなどの各々の固有情報が格納されている。このフラッシュROM43には、プリンタ40の状態を保持するためのSNMPによって管理される項目を定義したMIB(Management Information Base)が記憶されている。このMIBには、プリンタ40の機能に関する情報や(両面印刷可能など)、トナーに関する情報などが格納されている。印刷機構45は、単一感光体方式と中間転写方式とを採用したフルカラーの電子写真方式の印刷機構として構成され、シアン(C)、マゼンタ(M)、イエロー(Y)、ブラック(K)の4色に色分解された各色ごとの画像の静電潜像を感光体上に形成し、その静電潜像を各色のトナーにより現像し、現像したトナー像を最終的に記録紙Sに転写し、転写した記録紙Sを定着させる機構である。なお、印刷機構45は、プリントヘッド内に設けられた圧電素子又はヒータによりインクカートリッジ内のインクを加圧して記録紙Sに向かって吐出するインクジェット方式を採用してもよい。なお、プリンタ50〜55は、プリンタ40と同様の構成であるため、その説明を省略する。
【0022】
次に、こうして構成された本実施形態のサービス検索システム10の動作について、まず、ユーザPC20によりLAN12で提供されているサービスをSLPを利用して検索する際の動作について説明する。ここでは、説明の便宜のため、LAN12に接続された機器のうち所定のドメイン名を検索する場合について、主にユーザPC20とプリンタ40とを用いて説明する。まず、ユーザは、ユーザPC20の入力装置29を操作してHDD25に記憶されたSLPを利用するサービス検索プログラムを実行する。すると、ユーザPC20のCPU22は、図2に示す、HDD25に記憶されたSLPサービス検索処理ルーチンを実行する。図2は、ユーザPC20により実行されるSLPサービス検索処
理ルーチンの一例を示すフローチャートである。このルーチンを開始すると、CPU22は、まず、HDD25に記憶されたサービス検索画面80を読み出しディスプレイ28に表示させる(ステップS100)。
【0023】
図3は、サービス検索画面80の説明図である。このサービス検索画面80には、ユーザの操作に基づいて画面上を移動するカーソル81や、検索対象の製造者名や検索するサービスの種別を図示しないプルダウンメニューなどによりユーザが入力するサービス種別入力部82、ドメイン名など検索項目としての固有情報の種別をプルダウンで選択可能でありその種別の文字列を入力可能な検索文字列入力部83、検索条件に基づいてLAN12に接続された機器などサービスの検索結果が格納される検索結果表示部84、検索が終了した際にクリックされる検索終了ボタン88、検索実行時にクリックされる検索実行ボタン89などが設けられている。ユーザは、このサービス検索画面80のサービス種別入力部82や検索文字列入力部83に検索したい内容を入力するのである。
【0024】
次に、CPU22は、検索条件が入力されたか否かをサービス種別入力部82や検索文字列入力部83に入力されたか否かに基づいて判定し(ステップS110)、検索条件が入力されていないときには、そのまま待機し、検索条件が入力されたときには、検索文字列入力部83に、SLPによる検索に際してSNMPのコマンド実行処理が必要な検索条件が入力されたか否かを判定する(ステップS120)。ここで、SNMPのコマンド実行処理が必要な検索条件とは、例えば、プリンタ40のMIBを取得し、この取得したMIBに含まれている情報が、入力した条件に適合するか否かを判定する必要がある検索条件などをいう。検索条件にSNMPのコマンド実行処理が必要な条件が含まれていないときには、通常のSLPのタグリストを格納した検索要求を作成する(ステップS130)。ここでは、SLP処理部21aが検索要求を作成するものとした。
【0025】
図4は、通常時のサービス検索要求の概念図である。ここでは、具体例として、LAN12に接続された(公序良俗違反につき、不掲載)プリンタの製品名を検索する場合について説明する。サービス検索画面80において、サービス種別入力部82に「(公序良俗違反につき、不掲載) printer」、検索文字列入力部83に「製品名」が入力されたときには、この検索要求には、検索するサービスの情報として、装置の製造者名を示す「p−dev.1248」((公序良俗違反につき、不掲載)を表す)や検索するサービス種別を示す「printer」を格納すると共に、ベンダの拡張機能を示す「x−1248−p−dev.」や製品名を示す「pn」など、検索対象の固有の情報を含むタグリストを格納したものを作成するのである。
【0026】
一方、検索条件にSNMPのコマンド実行処理が必要な条件が含まれているときには、プリンタ40でSNMPのコマンド実行が必要であるものとして、CPU22は、SNMPの実行コマンドを含むタグリストを格納したSLPの検索要求を作成する(ステップS140)。ここでは、SLP検索要求作成部21bが検索要求を作成するものとした。図5は、SNMPの実行コマンドを含むサービス検索要求の概念図である。サービス検索画面80において、サービス種別入力部82に「(公序良俗違反につき、不掲載) printer」、検索文字列入力部83に「ドメイン名」が入力されたときには、この検索要求には、検索するサービスの情報として、装置の製造者名を示す「p−dev.1248」や検索するサービス種別を示す「ptinter」を格納すると共に、ベンダの拡張機能を示す「x−1248」や拡張機能で定義したSNMPを処理するアトリビュートである「p−spt」、内部的にSNMPのGetRequest−PDUを処理することを示す「snmpget」、snmpgetをSNMPv1で行うことを示す「V1」、コミュニティネームである「public」、MIBのオブジェクトIDとしての「1.3.6.1.2.1.1.5.0」(sysNameを表す)、上記コマンドの実行結果が適合したときにこの検索要求の応答を実行するよう定められた処理実行条件としての「result:noError」などを含むタグリストを格納したものを作成する。即ち、このタグリストの内容は、SNMPのコマンドを実行した結果が「noError」であるときに検索要求に対する応答を返すよう定めたものとなっている。このタグリストには、その先頭に「{」、最後尾に「}」及び内容の区切りに「|」など、SLPのタグリストの記述に規定されている以外の文字を用いることにより、プリンタ40におけるSNMPの実行コマンドが格納されているか否かの判定が容易となっているのである。なお、ここでは、説明の便宜のため、SNMPのコマンド等を「noError」などの文字として説明したが、実際には、タグリストの内容は、「020100」(noErrorを表す)のようにSNMPのヘキサで記述されている。
【0027】
続いて、検索開始の指示がされたか否かを検索実行ボタン89がクリックされたか否かに基づいて判定し(ステップS150)、検索開始の指示がされていないときにはステップS110以降の処理を実行する。一方、検索開始の指示がされたときには、ステップS130又はステップS140で作成した検索要求をLAN12に接続されたプリンタへI/F26が送信出力する(ステップS160)。ここで、検索要求の送信出力は、SLPでは、ルータ14より内側の機器まで、ルータ16より内側の機器まで又は全体の機器のいずれかを指定可能であるが、ここではLAN12の全体の機器に対してマルチキャストで送信出力するものとした。ステップS160のあと、各プリンタからの応答情報をI/F26が取得したか否かを判定し(ステップS170)、応答情報を取得していないときにはそのまま待機し、応答情報を取得したときには、検索条件に該当する情報の内容をディスプレイ28に表示出力する(ステップS180)。ここでは、検索した内容を検索結果表示部84に埋め込んだサービス検索画面80をディスプレイ28に表示出力する。そして検索処理が終了したか否かを検索終了ボタン88がクリックされたか否かに基づいて判定し(ステップS190)、検索処理が終了していないときにはステップS110以降の処理を実行し、検索処理が終了したときにはサービス検索画面80を閉じそのままこのルーチンを終了する。このように、検索文字列入力部83にSNMPのコマンド実行処理が必要な条件が含まれているときには、予め定めたルールに基づいてSNMPのコマンドをタグリストに格納した検索要求を作成し検索対象であるプリンタに送信するのである。
【0028】
次に、ユーザPC20が送信した検索要求に対してプリンタ40が応答する動作について説明する。図6は、プリンタ40により実行されるサービス応答処理ルーチンの一例を示すフローチャートである。このルーチンは、フラッシュROM43に記憶され、プリンタ40の電源がオンになったあと所定のタイミングごとに(例えば数msecごとに)繰返し実行される。このルーチンを開始すると、CPU42は、まず、検索要求をI/F46が取得したか否かを判定し(ステップS200)、検索要求を取得していないときにはそのままこのルーチンを終了する。一方、検索要求を取得したときには、CPU42は、検索要求の中に、SNMPのコマンドが含まれているか否かを判定する(ステップS210)。SNMPのコマンドが含まれているか否かの判定は、タグリストの記述に規定されている以外の文字がタグリストに含まれているか否かや、タグリスト内に「p−spt」が含まれているか否かに基づいて行うことができる。SNMPのコマンドが含まれていないときには、通常の検索であるものとみなし、CPU42は、タグリストに指定された検索条件とフラッシュROM43などに記憶された情報とが一致するか否か、即ち、検索条件を満たすか否かを判定する(ステップS220)。ここで、検索条件を満たすか否かの判定は、フラッシュROM43に記憶されたサービス種別と検索要求に含まれるサービス種別が一致するか否かや、フラッシュROM43に記憶された内容とタグリストに記述された内容と一致するか否かなどに基づいて行う。検索条件を満たさないと判定したときには、CPU42は、そのまま応答情報を作成せずにこのルーチンを終了し、一方、検索条件を満たすと判定したときには、検索内容に応じたアトリビュートリストを格納した応答情報を作成し(ステップS230)、作成した応答情報を検索要求の送信元であるユーザPC20へSLPのユニキャストを利用してI/F46が送信出力し(ステップS240)、このルーチンを終了する。
【0029】
一方、ステップS210でSNMPのコマンドが含まれているときには、CPU42は、検索要求に格納されたタグリストからSNMPのコマンドを取得し、このコマンドを実行する(ステップS250)。ここでは、SLP処理部41aがタグリストを読出しSNMPのコマンドを取得してSNMP処理部41bに受渡し、これを受けたSNMP処理部41bがこのSNMPのコマンドを実行するものとした。次に、CPU42は、コマンドを実行した結果がタグリストに記述された処理実行条件を満たすか否かを判定する(ステップS260)。ここでは、SNMP処理部41bがコマンドを実行した結果をSLP処理部41aに受渡し、これを受けたSLP処理部41aがタグリストに記述された処理実行条件を満たすか否かを判定するものとした。ここで、図5に示した例について説明すると、SNMPのコマンドを実行した結果が「noError」であるか否かにより処理実行条件を満たすか否かを判定する。コマンドを実行した結果がタグリストに記述された処理実行条件を満たさないときには、CPU42は、検索要求に対する応答を作成せず、即ち応答を出力せずにそのままこのルーチンを終了する。一方、コマンドを実行した結果がタグリストに記述された処理実行条件を満たすときには、CPU42は、検索内容に応じたアトリビュートリストを格納した応答情報を作成し(ステップS230)、作成した応答情報を検索要求の送信元であるユーザPC20へSLPのユニキャストを利用してI/F46が送信出力し(ステップS240)、このルーチンを終了する。
【0030】
ここで、例えば、プリンタが有する機能(例えば両面印刷機能など)により検索条件を絞り込み、LAN12に接続されたなかの特定のプリンタを検索する場合について考える。このような場合は、各プリンタが有するMIBにそのプリンタが有する機能についての情報が格納されていることから、SNMPを利用して各プリンタの機能に関する情報を取得することができる。また、LAN12に接続された機器のうちプリンタをサービスとして検索することが可能であるから、SLPを利用してプリンタの検索を行うことができる。しかしながら、このような検索条件でSLPとSNMPとを別々に利用して検索しようとすると、SLPによりマルチキャスト又はブロードキャストでプリンタを検索したのち、SNMPによりユニキャストで各個別のプリンタの情報を取得しなければならず、手間がかかる上、ネットワークの負荷が多大になる。また、新たな機器がLAN12に接続されていくことを考えると、サービス検索システム10の構築方法により、例えば、新たに生じた目的の情報(例えば両面印刷機能が追加されたなど)をSLPのサービスアトリビュートに新たに追加していくということも考えられるが、追加したアトリビュートに対応していない、以前からLAN12に接続されていた機器が存在することから、この機器の設定を逐次行わなければならないといった不都合がある。また、LAN12に接続された新たな機器が有する機能拡張されたSNMPのMIBと同期してSLPのアトリビュートを機能拡張することも困難である。これに対して、本実施例のサービス検索システム10では、上述したように、ユーザPC20がSLPの検索要求にSNMPのコマンドと処理実行条件とを格納してSLPを利用して複数のプリンタに送信出力し、これを受けた各々のプリンタがSNMPのコマンドを実行しこの実行結果が処理実行条件を満たすもの(例えば両面印刷機能を有するという条件を満たすもの)のみがSLPを利用してユーザPC20へ応答情報を返すのである。
【0031】
ここで、本実施形態の構成要素と本発明の構成要素との対応関係を明らかにする。本実施形態のプリンタ40が本発明の処理応答装置に相当し、このうち、I/F46が第1取得手段及び第1出力手段に相当し、コントローラ41(SLP処理部41a)が第1プロトコル処理手段に相当し、コントローラ41(SNMP処理部41b)が第2プロトコル処理手段に相当する。また、ユーザPC20が処理要求装置に相当し、このうち、I/F26が第2出力手段及び第2取得手段に相当し、コントローラ21(SLP検索要求作成部21b)が要求作成手段に相当し、CPU22が処理制御手段に相当し、SLPが第1のプロトコルに相当し、SNMPが第2のプロトコルに相当する。なお、本実施形態では
、サービス検索システム10の動作を説明することにより本発明の処理応答方法及び処理要求方法の一例も明らかにしている。
【0032】
以上詳述した本実施形態のサービス検索システム10によれば、ユーザPC20が、SLPの検索要求に、SNMPのコマンドと、このコマンドをプリンタ40が実行した際に得られる実行結果に基づいてこの検索要求に対する応答をSLPにより処理させるよう定められた処理実行条件とを格納してこの検索要求を作成し、この作成した検索要求をプリンタ40へ出力し、プリンタ40が、ユーザPC20から取得したSLPの検索要求にSNMPのコマンドが格納されているときには、このSNMPのコマンドを取得し、この取得したSNMPのコマンドを解釈して実行し、この実行結果が処理実行条件を満たしているときには検索要求に対する応答をSLPにより行う。このように、SLPの検索要求を受けてSNMPのコマンドの実行と、その結果に応じたSLPの検索要求の応答を処理するから、SLPの要求処理と、SNMPの検索要求とをネットワークを介して別々に送信出力または取得する必要がないし、SNMPのコマンドの実行結果をSLPの処理に反映させることができる。したがって、より効率よく検索処理すると共に、ネットワークの負荷をより低減することができる。また、ユーザPC20へ検索結果を送信出力するため、検索要求に対する応答をユーザPC20が利用することができる。また、実行結果が処理実行条件を満たしていないときには検索要求に対する応答を送信出力しないため、ネットワークの負荷を一層低減することができる。更に、SLPは複数のプリンタ40へ検索要求を出力可能なプロトコルであり、SNMPは1つのプリンタ40へ検索要求を出力可能なプロトコルであるため、SLPで検索要求を出力したあと、SNMPで個別の装置へ検索要求を出力する必要などがなく、ネットワークの負荷を一層低減することができるし、複数の装置へのSLPによる検索処理と、各々の装置ごとにSNMPによる情報取得処理の実行することと、を一度に行うことができる。更にまた、SLPの検索要求に格納されたタグリストからSNMPコマンドを取得するため、比較的容易にSNMPコマンドを取得することができる。そして、検索要求に対する応答結果をディスプレイ28に表示出力するため、検索要求に対する応答をユーザが利用しやすい。
【0033】
なお、本発明は上述した実施形態に何ら限定されることはなく、本発明の技術的範囲に属する限り種々の態様で実施し得ることはいうまでもない。
【0034】
例えば、上述した実施形態では、SLPの検索要求にSNMPのコマンドを格納し、検索対象であるプリンタで実行させるものとしたが、これらのプロトコルや、検索要求などに特に限定されず、第1のプロトコルの処理要求に第2のプロトコルのコマンドを格納し第2のプロトコルのコマンドの実行結果により第1のプロトコルの処理要求に対する応答を決定するものであれば、いかなるものに適用してもよい。このとき、第1及び第2のプロトコルが1つの機器に出力可能であるものとしてもよいし、第1及び第2のプロトコルが複数の機器に出力可能であるものとしてもよいが、第1のプロトコルが複数の機器に出力可能なものとし第2のプロトコルが1つの機器に出力可能なものとすることが、通信のやり取りを考慮する上では好ましい。なお、第1のプロトコルと第2のプロトコルとが同階層であってもよいし別階層であってもよい。
【0035】
上述した実施形態では、SLPの検索要求に格納したSNMPのコマンドを実行しnoErrorであるときに、検索要求の応答を送信出力するものとしたが、特にこれに限定されず、所定の処理実行条件を満たすときに検索要求に対する応答を送信出力するものとしてもよい。なお、SNMPのコマンドをタグリストに格納するものとしたが、タグリスト以外の部分に格納してもよい。
【0036】
上述した実施形態では、「{」、「}」「|」などのタグリストの記述に規定されていない文字を用いてタグリストを作成するものとしたが、他の規定されていない文字を採用
してもよい。また、タグリストの先頭の文字、最後尾の文字及び内容の区切り文字をタグリストの記述に規定されていない文字とするものとしたが、タグリストの他の部分にこれらの文字を用いてもよい。あるいは、タグリストの記述に規定されていない文字を利用してタグリストを作成するものとしたが、タグリストの記述に規定されていない文字を利用せずにタグリストを作成するものとしてもよい。この場合、コマンドを含むことをCPU42が容易に判定可能な文字又は文字列を予め定めておき、これを用いてタグリストを作成するものとしてもよい。なお、CPU42は、ワイルドカード文字の有無により絞り込み検索であるか否かを判定するものとしてもよい。
【0037】
上述した実施形態では、検索結果である応答情報をディスプレイ28へ画像により表示出力するものとしたが、図示しないスピーカから音声を出力することにより応答をユーザに報知してもよいし、画像を記録紙Sに印刷出力することにより応答をユーザに報知してもよい。
【0038】
上述した実施形態では、本発明の検索実行装置をユーザPC20とし、検索応答装置をプリンタ40としたが、本発明の検索実行装置をプリンタ40とし、検索応答装置をユーザPC20としてもよいし、その他SLPによるサービス検索に対応している機器(例えばLAN12に接続されたスキャナや、ルータ、FAXなど)であれば特に限定されずに本発明を適用することができる。
【図面の簡単な説明】
【0039】
【図1】サービス検索システム10の構成の概略を示す構成図である。
【図2】サービス検索処理ルーチンの一例を示すフローチャートである。
【図3】サービス検索画面80の説明図である。
【図4】通常時のサービス検索要求の概念図である。
【図5】SNMPの実行コマンドを含むサービス検索要求の概念図である。
【図6】サービス応答処理ルーチンの一例を示すフローチャートである。
【符号の説明】
【0040】
10 サービス検索システム、12 LAN、14,16 ルータ、20,30 ユーザPC、21 コントローラ、21a SLP処理部、21b SLP検索要求作成部、21c SNMP処理部、22 CPU、23 ROM、24 RAM、25 HDD、26 ネットワークインターフェース(I/F)、28 ディスプレイ、29 入力装置、40,50〜55 プリンタ、41 コントローラ、41a SLP処理部、41b SNMP処理部、42 CPU、43 フラッシュROM、44 RAM、45 印刷機構、46 I/F、80 サービス検索画面、81 カーソル、82 サービス種別入力部、83 検索文字列入力部、84 検索結果表示部、88 検索終了ボタン、89 検索実行ボタン、S 記録紙。

【特許請求の範囲】
【請求項1】
処理要求装置へネットワークを介して応答する処理応答装置であって、
情報を取得可能な第1取得手段と、
前記第1取得手段が前記処理要求装置から取得した第1のプロトコルの処理要求に第2のプロトコルのコマンドが格納されているときには該第2のプロトコルのコマンドを取得する第1プロトコル処理手段と、
前記取得された第2のプロトコルのコマンドを解釈して実行し該実行結果を前記第1プロトコル処理手段へ受け渡す第2プロトコル処理手段と、
を備え、
前記第1プロトコル処理手段は、前記第2プロトコル処理手段の実行結果に基づいて前記処理要求に対する応答を処理する、
処理応答装置。
【請求項2】
請求項1に記載の処理応答装置であって、
情報を出力可能な第1出力手段、を備え、
前記第1プロトコル処理手段は、前記第2プロトコル処理手段の実行結果が前記処理要求に格納された所定の処理実行条件を満たしているときには前記処理要求に対する応答を前記処理要求装置へ前記第1出力手段に出力させる、処理応答装置。
【請求項3】
前記第1のプロトコルは複数の処理応答装置へ処理要求を出力可能なプロトコルであり、前記第2のプロトコルは1つの処理応答装置へ処理要求を出力可能なプロトコルである、請求項1又は2に記載の処理応答装置。
【請求項4】
前記第1のプロトコルはSLPであり、前記第2のプロトコルはSNMPであり、前記処理要求は処理応答装置の検索要求である、請求項1〜3のいずれかに記載の処理応答装置。
【請求項5】
処理応答装置へネットワークを介して所定の処理を要求する処理要求装置であって、
情報を出力可能な第2出力手段と、
第1のプロトコルの処理要求に、第2のプロトコルのコマンドと、該コマンドを前記処理応答装置が実行した際に得られる実行結果に基づいて該処理要求に対する応答を前記第1のプロトコルにより処理させるよう定められた処理実行条件とを格納して該処理要求を作成する要求作成手段と、
前記作成された処理要求を前記第2出力手段に前記処理応答装置へ出力させる処理制御手段と、
を備えた処理要求装置。
【請求項6】
前記第1のプロトコルはSLPであり、前記処理要求は処理応答装置の検索要求であり、
前記要求作成手段は、前記第2のプロトコルのコマンドと前記処理実行条件とを含むタグリストを前記処理要求に格納して該処理要求を作成する、請求項5に記載の処理要求装置。
【請求項7】
処理要求装置へネットワークを介して応答する処理応答装置のコンピュータが実行する処理応答方法であって、
(a)前記処理要求装置から取得した第1のプロトコルの処理要求に第2のプロトコルのコマンドが格納されているときには該第2のプロトコルのコマンドを取得するステップと、
(b)前記ステップ(a)で取得した第2のプロトコルのコマンドを解釈して実行するス
テップと、
(c)前記ステップ(b)での実行結果に基づいて前記処理要求に対する応答を処理するステップと、
を含む処理応答方法。
【請求項8】
処理応答装置へネットワークを介して所定の処理を要求する処理要求装置のコンピュータが実行する処理要求方法であって、
(a)第1のプロトコルの処理要求に、第2のプロトコルのコマンドと、該コマンドを前記処理応答装置が実行した際に得られる実行結果に基づいて該処理要求に対する応答を前記第1のプロトコルにより処理させるよう定められた処理実行条件とを格納して該処理要求を作成するステップと、
(b)前記ステップ(a)で作成された処理要求を前記処理応答装置へ出力するステップと、
を含む処理要求方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公開番号】特開2009−169949(P2009−169949A)
【公開日】平成21年7月30日(2009.7.30)
【国際特許分類】
【出願番号】特願2008−329510(P2008−329510)
【出願日】平成20年12月25日(2008.12.25)
【分割の表示】特願2007−15489(P2007−15489)の分割
【原出願日】平成19年1月25日(2007.1.25)
【公序良俗違反の表示】
特許法第64条第2項第4号の規定により明細書の一部または全部を不掲載とする。
特許法第64条第2項第4号の規定により図面の一部または全部を不掲載とする。
【出願人】(000002369)セイコーエプソン株式会社 (51,324)
【Fターム(参考)】