JP3869972B2 - デバイス検索クライアントおよびデバイス検索方法 - Google Patents
デバイス検索クライアントおよびデバイス検索方法 Download PDFInfo
- Publication number
- JP3869972B2 JP3869972B2 JP11962499A JP11962499A JP3869972B2 JP 3869972 B2 JP3869972 B2 JP 3869972B2 JP 11962499 A JP11962499 A JP 11962499A JP 11962499 A JP11962499 A JP 11962499A JP 3869972 B2 JP3869972 B2 JP 3869972B2
- Authority
- JP
- Japan
- Prior art keywords
- search
- input
- determination criterion
- condition
- satisfies
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Description
【発明の属する技術分野】
本発明は、ネットワーク上のデバイスの検索する検索クライアントおよび検索方法に関するものである。
【0002】
【従来の技術】
従来、ネットワーク上の各種の資源(プリンタ、サーバ、スキャナなど)を効率的に発見し、利用するための方法として、ディレクトリサービスと呼ばれるものが提供されている。ディレクトリサービスとは、言わばネットワークに関する電話帳であり、様々な情報を格納するためのものである。ディレクトリシステムの具体例としては、例えばLDAP(Lightweight Directory Access Protocol)がある。LDAPの規定は、IETFが発行しているRFC1777に記載されている。また解説書としては、例えば株式会社プレンティスホールより「LDAP インターネット ディレクトリ アプリケーション プログラミング」が1997年11月1日に発行されている。このディレクトリサービスを用いて、例えばネットワークに接続されているデバイスを検索することにより、ネットワーク上で利用可能なデバイスのネットワークアドレスの一覧を得ることができる。
【0003】
【発明が解決しようとする課題】
しかしながら上記従来例では、例えばネットワークプリンタを検索する場合を例に取れば、ステープル機能のあるなし、両面印刷サポートのあるなしなどの各種属性を指定して検索した場合、条件をすべて満足したデバイスのみが検索される。もし、条件をすべて満足するデバイスが存在しない場合には、条件を入れ直して再度検索を行わなければならないという問題があった。
【0004】
本発明は、上記問題点を解決するためになされたもので、条件をすべて満足するデバイスが存在した場合には正しく表示することはもちろんのこと、条件をすべて満足するデバイスが存在しない場合にも、近しい条件を備えているデバイスを表示することによって、ユーザが条件を緩和して再検索する手間を省くようなデバイス検索クライアントおよびデバイス検索方法を提供することを目的とする。
【0005】
【課題を解決するための手段】
本発明は上記問題点を解決するために、本出願の第1の発明は、ネットワーク上のデバイスを検索するデバイス検索クライアントであって、デバイスの検索条件を入力する入力手段と、前記入力手段で入力された検索条件の中から、所定の検索条件を抽出する抽出手段と、前記抽出手段により抽出された検索条件を前記ネットワーク上の検索サーバに送信してその検索結果を取得する第1の検索手段と、前記入力手段で入力された検索条件に基づいて、前記第1の検索手段の検索結果に対して検索を行う第2の検索手段と、前記第2の検索手段の出力する検索結果を表示する表示手段とを備え、前記第2の検索手段は、検索結果を出力するための判定基準を少なくとも2つ備え、まず第1の判定基準を満足するデバイス情報を出力し、該第1の判定基準を満足するデバイスが存在しない場合には、該第1の判定基準と異なる第2の判定基準を満足するデバイス情報を出力することを特徴とする。
【0006】
また、本出願の第2の発明は、本出願の第1の発明において、前記第2の判定基準は、前記第1の判定基準よりも緩和された基準であることを特徴とする。
【0007】
また、本出願の第3の発明は、本出願の第1または2の発明において、前記第1の判定基準は、前記入力手段で入力された検索条件のすべてを満足するデバイスを判定するものであり、前記第2の判定基準は、デバイスが前記入力手段で入力された検索条件のうち所定数以上を満足するデバイスを判定するものであることを特徴とする。
【0008】
また、本出願の第4の発明は、本出願の第3の発明において、前記第2の検索手段が、前記第2の判定基準に基づいて出力するデバイス情報には、該デバイスが満足しない検索条件の情報が含まれることを特徴とする。
【0009】
また、本出願の第5の発明は、本出願の第1〜4の発明において、前記抽出手段は、オブジェクトクラスに関する条件のみを抽出して出力することを特徴とする。
【0010】
また、本出願の第6の発明は、ネットワーク上のデバイスを検索するデバイス検索方法であって、デバイスの検索条件を入力する入力工程と、前記入力工程で入力された検索条件の中から、所定の検索条件を抽出する抽出工程と、前記抽出工程により抽出された検索条件を前記ネットワーク上の検索サーバに送信してその検索結果を取得する第1の検索工程と、前記入力工程で入力された検索条件に基づいて、前記第1の検索工程の検索結果に対して検索を行う第2の検索工程と、前記第2の検索工程の出力する検索結果を表示する表示工程とを備え、前記第2の検索工程は、検索結果を出力するための判定基準を少なくとも2つ備え、まず第1の判定基準を満足するデバイス情報を出力し、該第1の判定基準を満足するデバイスが存在しない場合には、該第1の判定基準と異なる第2の判定基準を満足するデバイス情報を出力することを特徴とする。
【0011】
また、本出願の第7の発明は、本出願の第6の発明において、前記第2の判定基準は、前記第1の判定基準よりも緩和された基準であることを特徴とする。
【0012】
また、本出願の第8の発明は、本出願の第6または7の発明において、前記第1の判定基準は、前記入力工程で入力された検索条件のすべてを満足するデバイスを判定するものであり、前記第2の判定基準は、デバイスが前記入力工程で入力された検索条件のうち所定数以上を満足するデバイスを判定するものであることを特徴とする。
【0013】
また、本出願の第9の発明は、本出願の第8の発明は、前記第2の検索工程が、前記第2の判定基準に基づいて出力するデバイス情報には、該デバイスが満足しない検索条件の情報が含まれることを特徴とする。
【0014】
また、本出願の第10の発明は、本出願の第6〜9の発明において、前記抽出工程は、オブジェクトクラスに関する条件のみを抽出して出力することを特徴とする。
【0015】
また、本出願の第11の発明は、本出願の第6〜10の発明のいずれかに示した各工程を実行するためのプログラムコードを格納したコンピュータ読み取り可能な記憶媒体である。
【0016】
【発明の実施の形態】
以下、本発明の実施の形態について、図面を参照しながら詳細に説明する。本発明は、ユーザが望む属性を持つネットワークデバイスを容易に検索するとともに、検索結果をユーザにわかりやすい形式で表示するものである。特に、携帯用コンピュータを訪問先のネットワークに接続して印刷を行なう場合に特に有効である。詳細については、以下の説明で明らかになろう。
【0017】
図1は、本実施形態のデバイス検索システムが動作可能なネットワークの構成を示す図である。同図において、101はカラープリンタ、102はMFP(Multi Function Peripheral。コピー機であるが、ネットワークプリンタとしても使用可能なもの。)、103および104はモノクロプリンタ、105はネットワーク接続されたスキャナである。111および113は、それぞれデスクトップ型コンピュータ(以下、PCと称する)とノート型コンピュータ(以下、ノートPCと称する)である。これらは、本実施形態のデバイス検索クライアントのプログラムが実行可能であり、後述するようにデバイス検索サーバに対して所望の条件を満たすデバイスの検索要求を発行するするとともに、その検索結果を受信して表示画面上に表示する。以下、このデバイス検索クライアントのプログラムが実行可能なPC111およびノートPC113を、それぞれ、デバイス検索クライアント111、113と称する。112は、本実施形態のデバイス検索サーバのプログラムが実行可能なPCであり、後述するようにネットワークデバイス101から105に関する情報(データベース)が格納されており、デバイス検索クライアント111あるいは113からのデバイス検索の問い合わせを受け付け、その結果を返す。以下、このデバイス検索サーバのプログラムが実行可能なPC112をデバイス検索サーバ112と称する。
【0018】
これらのデバイスのうち、101、102、103、111、112および120は二階に設置されており、104および105は一階に設置されている。113はノートPCなので、現在は一階からLAN100に接続しているが、その携帯性から取り外されることもある。さらに、これらのデバイスを相互に接続するネットワーク100は、ファイアウォール120を介してインターネット130に接続されており、インターネット130を介して他のネットワーク140とも接続されている。
【0019】
図2は、検索クライアント111、113および検索サーバ112の構成の一例を示したブロック図であり、これは汎用のパーソナルコンピュータと同様の構成から成っている。同図において、200は、デバイス検索クライアントソフトウェアあるいはデバイス検索サーバソフトウェア(以下、これらをまとめてデバイス検索ソフトウェアと呼ぶ)が稼動するPC全体を表わしており、図1における111、112あるいは113と同等である。PC200は、ROM202もしくはハードディスク(HD)211に記憶された、あるいはフロッピーディスクドライブ(FD)212より供給されるデバイス検索ソフトウェアを実行するCPU201を備え、システムバス204に接続される各デバイスを総括的に制御する。203はRAMで、CPU201の主メモリ、ワークエリア等として機能する。205はキーボードコントローラ(KBC)で、キーボード(KB)209や不図示のポインティングデバイス等からの指示入力を制御する。206はCRTコントローラ(CRTC)で、CRTディスプレイ(CRT)210の表示を制御する。207はディスクコントローラ(DKC)で、ブートプログラム、種々のアプリケーション、編集ファイル、ユーザファイルそしてネットワーク管理プログラム等を記憶するハードディスク(HD)211およびフロッピーディスクコントローラ(FD)212とのアクセスを制御する。208はネットワークインタフェースカード(NIC)で、LAN220を介して、ネットワークプリンタ、他のネットワーク機器あるいは他のPCと双方向にデータをやりとりする。なお、LAN220は図1におけるLAN100と同じものである。
【0020】
次に、デバイス検索サーバの構成と動作について説明する。図3は、検索サーバ112に格納されているネットワーク機器に関するデータベースの構造を表形式で表現した図である。検索サーバ112において、データベース300の情報は、物理的にはハードディスク211に格納されている。同図の表において、各行がネットワークデバイス一台を表現している。各列は、デバイスの名称(301)、プリンタのネットワークアドレス(302)、デバイスの機能種別を示すオブジェクトクラス(303)、デバイスタイプ(304)、カラー印刷をサポートしているかどうか(305)、両面印刷をサポートしているかどうか(306)、ステープルをサポートしているかどうか(307)をそれぞれ表している。
【0021】
ここで、オブジェクトクラス(ObjectClass)とは、デバイスの機能種別を示すものであり、例えば、デバイスがプリンタであれば、プリンタクラス(printer)として登録される。また、あるデバイスが印刷機能を持っていれば、例えばそのデバイスがMFPであったとしても、プリンタクラスのデバイスとして登録されても良い。一方、デバイスタイプとはデバイスの全体的な機能を示すものであって、ここでは単体のプリンタとMFPとは区別される。305から307までの表記において、1はサポートしていることを、0はサポートしていないことを示す。また、NAは、その属性に関する情報が格納されていないことを示す。
【0022】
図3に示されたデータについて例えば表の一行目に登録されているデバイスを例にとって具体的に解説すると、カラー君という名称のデバイスが、ネットワークアドレス192.168.16.131に存在し、そのデバイスはプリント機能を持っていて、形態としては単体のプリンタであり、属性としてカラー印刷とステープルをサポートしているが、両面印刷の機能はサポートしていないことを示している。そして、本実施形態においては、図3に示された1行目から5行目までのデバイスは、それぞれ図1における101、102、103、104および105に相当するものとする。なお、図3に示した情報はあくまでも例であって、検索サーバ112に格納する情報としては、さらに設置場所などの附加情報もあっても良いことは言うまでもない。
【0023】
つぎにデバイス検索サーバ112の動作を図4および図5のフローチャートを用いて説明する。まず、図4は、デバイス検索サーバ112の動作について説明したフローチャートである。これら一連の処理の判断と実行は、ハードウェア的にはデバイス検索サーバ内部のCPU201によって行われる。デバイス検索サーバ112が起動すると、まずステップS401にて、デバイス検索クライアントからデバイス検索要求を受け付けるための受信ポートをオープンする。この操作により、デバイス検索クライアントからの検索要求を受信した時には、オペレーティングシステムが受信イベントを発行し、検索要求の受信がプログラムに通知される。次にステップS402に進み、オペレーティングシステムから何らかのイベントが通知されるまで待つ。何らかのイベントが通知されたら、そのイベントを取得して次のステップに進む。次のステップS403では、ステップS402で取得したイベントが、ユーザによるシステムシャットダウンイベントであるかどうかを判断する。もしシャットダウンイベントであった場合には、ステップS408にて受信ポートをクローズした後、プログラムを終了する。一方、ステップS403で、シャットダウンイベントではないと判断された場合には、ステップS404に進み、デバイス検索クライアントからの問い合わせ受信イベントであるかどうかを判断する。もし、問い合わせ受信イベントである場合には、ステップS405に進み、該イベントで取得した検索条件と図3に示したデータベースとを照らし合わせて適切なデバイスを選び出す。続くステップS406にて、ステップS405で得た検索結果をデバイス検索クライアントに対して返信する。一方、ステップS407で問い合わせ受信イベントではないと判断された場合にはステップS407に進み、シャットダウンイベントあるいは問い合わせ受信イベント以外の処理、例えば表示画面の更新などを行なう。
【0024】
図5は、図4におけるステップS405のデータベース検索動作をより詳しく説明するフローチャートである。全体について簡単に概略を説明すると、本実施形態のデータベース検索ステップでは、デバイス検索クライアントが複数の検索条件を指定してきた場合、それらの検索条件をひとつずつ処理する方式を採用している。それがステップS501からそのNO判断を経由して再びステップS501に戻る外側のループである。ステップS504からそのNO判断から出て再びステップS504に戻る内側のループは、検索条件ひとつについて、データベースの全ての登録情報を走査するためのものである。以下、ステップひとつ毎に詳細に説明する。データベース検索動作においては、ステップS501で全ての検索条件を処理し終わったかどうかを判断する。もし全ての条件を処理し終わった場合には、ステップS502に進み、検索結果を上位プログラムに返す。一方、ステップS501において全ての検索条件を処理し終えていないと判断された場合にはステップS503に進み、デバイス検索クライアントから受信した情報の中から検索条件をひとつ取り出す。
【0025】
次にステップS504に進み、図3で説明したネットワークデバイスに関するデータベース300を全て走査し終えたかどうかを判断する。走査が終わったと判断された場合には、ステップS501に戻って、次の検索条件の処理を行なう。一方、ステップS504でデータベース300の走査が終わっていないと判断された場合には、ステップS505に進む。ステップS505では、データベース300のうちからデバイスひとつ分のデータを取り出す。続くステップS506で、ステップS505で取り出したデータが検索条件に合致しているかどうかを判断する。もし条件に合致している場合にはステップS507に進む。一方、ステップS506でステップS505で取り出したデータが検索条件に合致してないと判断された場合にはステップS504に戻り、データベース300に登録されている次のデバイス情報について処理を続ける。ステップS507では、ステップS506で検索条件に合致したと判断されたデバイスの情報のうち、デバイス名称301とネットワークアドレス302、デバイスタイプ304、カラー305、両面印刷306ならびにステープル307を取り出し、続くステップS508で検索結果に追加する。ステップS508の処理が終了したら、ステップS504に戻って次のデータの走査を続ける。
【0026】
以下、本実施形態では、クライアントが、検索条件として、「オブジェクトクラスがプリンタであるデバイス」を要求した場合を想定して説明する。この検索条件により、データベース300について検索を行なった検索結果を図6に示す。同図において、検索結果600には、オブジェクトクラスが「プリンタ」であるという条件に合致したデバイスは4台あり、それぞれについてデバイス名称601、ネットワークアドレス602、デバイスタイプ603、カラー機能のありなし604、両面印刷機能のありなし605ならびにステープル機能のありなし606の情報が示されている。
【0027】
次に、デバイス検索クライアントの動作について説明する。図7は、デバイスの検索を行なう前の、クライアントの画面表示の一例を示す説明図である。同図において、ウィンドウ700の中に、各種の情報が表示されている。701は検索するデバイスのオブジェクトクラスを指定するコンボボックスである。701のコンボボックスを操作することにより、検索するデバイスのオブジェクトクラスを、「プリンタ」あるいは「スキャナ」などに変更することができる。またその変更に応じて、703で示される検索属性を指定する領域の検索属性条件がオブジェクトクラスに応じた属性に変化する。例えば、両面印刷属性703bやステープル属性703cは、オブジェクトクラスがプリンタの場合は表示されているが、オブジェクトクラスを「スキャナ」に変更すると、それらは無効であるから表示されなくなる等である。702は検索スタートボタンであり、ユーザがこのボタンをキーボード209あるいは不図示のポインティングデバイスを用いて押下することにより、デバイス検索サーバに対して条件に合致するデバイスがあるかどうかの問い合わせが行われる。
【0028】
703は検索属性を指定する領域であり、現在は701のコンボボックスにてオブジェクトクラスとしてプリンタが選択されているので703にはプリンタに関する属性が3つのチェックボックスで示されている。それぞれカラー印刷が可能かどうか703a、両面印刷が可能かどうか703bおよびステープルが可能かどうか703cが指定できるようになっている。図7に示した例では、全てのチェックボックスがチェックされているので、カラー印刷可能かつ両面印刷可能かつステープル可能なデバイスを検索することになる。704は検索結果を表示する領域であり、デバイスの名称704a、ネットワークアドレス704bおよび検索条件に関係する事項704cが表示される。705は指定した条件に完全に一致したかどうかの結果を表示する領域であり、「完全一致」あるいは「不完全一致」のどちらかが表示される。
【0029】
図8は、図7の表示画面において指定した検索条件およびデバイス検索サーバへの問い合わせるための検索条件データの一例を示した図であり、本実施形態では、IETFが発行するRFC1960の規定に基づいた記法を用いている。801は、オペレータにより入力された検索条件データを示しており、オブジェクトクラスがプリンタ(1行目)であり、属性としてカラー印刷可能(2行目)、両面印刷可能(3行目)、ステープル可能(4行目)なデバイスが指定されている。802はデバイス検索サーバへの問い合わせる検索条件データを示している。デバイス検索クライアントの動作について後述するように、サーバに問い合わせる条件として、検索条件の中からオブジェクトクラスに関するものだけを抽出して問い合わせるため、オブジェクトクラスがプリンタであるという条件だけが示されている。ここで、801に示した検索条件は、図7に示したウィンドウをユーザが操作して検索条件を変更する度にCPU201によって更新され、RAM203上に一時的に記憶されるものとする。
【0030】
図9は、デバイス検索クライアント111および113の動作を示すフローチャートである。尚、デバイス検索サーバ112の上でデバイス検索クライアントのプログラムを実行させることもできる。まず、デバイス検索クライアントのプログラムの概略動作について説明すると、システムが終了するまで、イベントを待ち、イベントが生じたらそのイベントについての処理を行うイベント駆動型のプログラムとして動作する。主なイベントとしては、システム終了イベント、デバイス検索要求イベント、デバイス検索結果受信イベントである。以下、個別のステップについて詳細に説明する。
【0031】
検索クライアントが起動すると、まずステップS901でイベントが発生するまで待つ。イベントが発生したら、そのイベントを取得してステップS902に進む。ステップS902では、ステップS901で取得したイベントが、ユーザがキーボード209あるいは不図示のポインティングデバイスを用いてシステム終了のコマンドを発行したものであるかどうかを判定する。もしユーザが終了コマンドを発行したと判定した場合には、プログラムを終了する。一方、ステップS902において終了コマンドの発行イベントではないと判定した場合には、ステップS903に進む。ステップS903では、ステップS901で取得したイベントが、ユーザが検索メニュー701を選択することによって、デバイス検索コマンドを発行したことによるものであるかどうかを判定する。もしデバイス検索コマンドの発行によるイベントであった場合にはステップS904に進み、デバイス検索サーバ112に対してデバイス検索要求を送信する。一方、ステップS903において、イベントがデバイス検索コマンドを発行したことによるものではないと判断された場合にはステップS905に進む。ステップS905では、ステップS901で取得したイベントが、ステップS904で送信したデバイス検索要求の送信に対するデバイス検索サーバ112からの検索結果の返答受信によるイベントであるかどうかを判断する。もし、返答の受信によるものであると判断された場合には、ステップS906に進み、受信した検索結果をウィンドウ700に表示する。ステップS906の処理が終了したら、ステップS901に戻って次のイベントを待つ。
【0032】
一方、ステップS905において返答受信によるイベントではないと判断された場合には、ステップS907に進み、その他の処理を行う。その他の処理とは、例えばプログラム起動時やユーザが画面をウィンドウを移動させた場合などに、画面を再描画すること等である。ステップS907の処理が終了したら、ステップS901に戻って次のイベントを待つ。
【0033】
図10は、図9のフローチャートのうち、検索要求動作S904について詳しく説明したフローチャートである。まず、ステップS1001において、RAM203にアクセスして、図8で説明したようにあらかじめ記憶しておいた検索条件を取得する。続くステップS1002において、その検索条件の中からオブジェクトクラスに関する条件だけを抽出して検索サーバ112に送信し、ネットワークデバイスの検索を要求する。
【0034】
なお、デバイス検索サーバのアドレスは、本実施形態では例えばユーザがキーボード209を用いて入力した値をハードディスク211に書き出しておき、それを読み込むなどしてあらかじめわかっているものとするが、それに限定されるものではない。他の方法としては、例えばプログラミング言語Lindaにおけるタプルスペースのような手法を用いて、ネットワークから取得しても良い。プログラム言語Lindaについては、各種の論文や解説書があるが、例えば、「D. Gelernter著、"Generative Communication in Linda", ACM Transactions on Programming Languages and Systems, volume7, number1, pp80--112, 1985年」等に開示されている。
【0035】
図11は、図9のフローチャートのうち、検索結果表示動作S906について詳しく説明したフローチャートである。検索結果表示動作においては、ステップS1101において、受信した検索結果を調べて、RAM203に一時的に記憶しておいた検索条件に完全に一致したデバイスがあったかどうかを判断する。もし条件に完全に一致したデバイスがひとつでもあった場合にはステップS1102に進む。ステップS1102ではCRTC206を操作して画面を書き換え、検索結果表示領域705に完全一致であった旨を表示する。続くステップS1103では、完全一致であったことを記憶しておくために、完全一致かどうかを示す一時変数fExistにTRUEを代入しておく。ステップS1103の処理を終了したらステップS1106に進む。一方、ステップS1101において、条件に完全に一致したデバイスがひとつもない場合にあはステップS1104に進む。ステップS1104では、CRTC206を操作して画面を書き換え、検索結果表示領域705に不完全一致であった旨を表示する。続くステップS1105では、不完全一致であったことを記憶しておくために、一時変数fExistにFALSEを代入しておく。ステップS1105の処理を終了したら、ステップS1106に合流する。
【0036】
ステップS1106からそのNO判断を経由して再びステップS116に戻るループは、受信した検索結果(図6で示した検索結果600)に含まれる全てのデバイス情報をひとつずつ順に処理(検索条件満足か否かの判断、表示等)するためのループである。ステップS1106では、受信した検索結果に含まれる全てのデバイス情報を処理し終わったかどうかを判断する。もし全て処理し終わったと判断された場合には、全体の処理を終了する。一方、ステップS1106において、まだ受信した全情報を処理し終わっていないと判断された場合にはステップS1107に進み、受信したひとつ以上のデバイス情報の中から、情報をひとつ取り出す。続くステップS1108では、先ほどのステップS1103あるいステップS1105で代入したfExistの値がTRUEかFALSEかによって処理を分ける。fExistがTRUE、つまり条件に完全一致するデバイスがあった場合にはステップS1109に進む。受信したデバイス情報の中には検索条件に完全に一致していないものもあるので、条件に完全に一致するデバイス情報のみを選り分ける。その選別を行うのがステップS1109である。ステップS1109では、ステップS1107で取得したデバイス情報がRAM203に一時的に記憶しておいた検索条件801を完全に満たしているかどうかを判断する。完全に満たしている場合にはステップS1110に進む。ステップS1110では、CRTC206を制御して画面を書き換え、デバイス情報表示領域704にデバイス名、ネットワークアドレスおよび完全一致である旨を表示する。ステップS1110の処理を終了したら、ステップS1106に戻って、次のデバイス情報の処理を行う。一方、ステップS1109において、完全に一致していないと判断された場合には、ステップS1110での表示処理を行うことなく、速やかにステップS1106に戻る。
【0037】
さて、ステップS1108において、fExistがFALSEであった場合の処理について以下に説明する。S1108においてfExistがFALSEであった場合には、ステップS1111に進む。この場合、受信した検索結果の中には、オブジェクトクラスが合致しているということを除いて検索条件801に全く合致しない情報から、完全合致一歩手前の情報まで、様々な情報が含まれている。ユーザには、それらの情報の中から、なるべく重要な情報のみを選別して表示する方が望ましい。そのための判別を行うのがステップS1111である。ここでは、指定した3つの検索条件(カラーあり、両面あり、ステープルあり)のうち、2つ以上の条件に合致したもの、すなわちN個の条件のうちN−1個の条件が一致していれば、「ある基準以上合致」と判断する。また、N−2個あるいはN−3個等、一致条件の基準を適宜設定してもよいことは言うまでもない。
【0038】
ステップS1111においては、ステップS1107で取得したデバイス情報がRAM203に一時的に記憶しておいた検索条件801の3つの属性(カラーあり、両面あり、ステープルあり)のうち、2つ以上の属性を満たしているかどうかを判断する。もし2つ以上の属性を満たしていると判断された場合には、ステップS1112に進む。ステップS1112では、満たしていなかった属性を調べる。続くステップS1113では、CRTC206を制御して画面を更新し、検索結果表示領域704に、S1107で取得した情報からプリンタ名、ネットワークアドレスおよびステップS1112で調べた一致しなかった条件(属性)を表示する。ステップS1113の処理が終わったら、ステップS1106に戻って次の情報の処理を続ける。一方ステップS1111で、2つ以上の属性を満たしていなかったと判断された場合には、ステップS1106に戻る。
【0039】
図12は、検索操作を終了した後の、デバイス検索クライアントの画面表示の一例を示す図である。同図の例では、オブジェクトクラスがプリンタで、カラー印刷機能あり、両面印刷機能あり、ステープル機能ありのデバイスの検索を行った結果を示している。その条件に完全に一致するデバイスは無かったので、不完全一致である旨が705に示されている。また、近しい条件のデバイスとして、「カラー君」ならびに「2階高速機」なる名称のデバイスが存在し、それぞれのデバイスについて703で指定した条件のうち合致しなかった条件が704cに表示されている。
【0040】
図13は、検索条件に完全に一致するデバイスがあった場合のデバイス検索クライアントの画面表示の一例を示す図である。同図の例では、オブジェクトクラスがプリンタで、両面印刷機能あり、ステープル機能ありのデバイスの検索を行った結果を示している。その条件に完全に一致するデバイスとして、「2階高速機」なる名称のデバイスが存在するので、そのデバイスに関する情報が704に表示されるとともに、完全一致である旨が705および704cに示されている。
【0041】
このように本実施形態によれば、ユーザが指定する条件のすべてを満足するデバイスが発見されればそれを表示でき、発見されなかった場合でも、一部の条件を満足する近しいデバイスを表示して、再検索の操作の手間を省くことが可能となる。
【0042】
また、本発明に係るネットワークデバイス制御プログラムは、外部からインストールされるプログラムによって、PC200によって遂行されても良い。その場合、そのプログラムはCD−ROMやフラッシュメモリやフロッピーディスクなどの記憶媒体により、あるいは電子メールやパソコン通信などのネットワークを介して、外部の記憶媒体からプログラムを含む情報群をPC200上にロードすることにより、PC200に供給される場合でも本発明は適用されるものである。
【0043】
図14は、本実施形態におけるプログラムか格納された記憶媒体のメモリマップの一例であり、ここでは記憶媒体としてCD−ROMを想定している。9999はディレクトリ情報を記憶してある領域で、以降のインストールプログラムを記憶してある領域9998およびネットワークデバイス制御プログラムを記憶してある領域9997の位置を示している。9998は、インストールプログラムを記憶してある領域である。9997は、ネットワークデバイス制御プログラムを記憶してある領域である。本発明のネットワーク制御プログラムがPC200にインストールされる際には、まずインストールプログラムを記憶してある領域9998に記憶されているインストールプログラムがシステムにロードされ、CPU201によって実行される。次に、CPU201によって実行されるインストールプログラムが、ネットワークデバイス制御プログラムを記憶してある領域9997からネットワークデバイス制御プログラムを読み出して、ハードディスク211に格納する。
【0044】
なお、本発明は、複数の機器(例えばホストコンピュータ、インタフェース機器、リーダなど)から構成されるシステムあるいは統合装置に適用しても、ひとつの機器からなる装置に適用してもよい。
【0045】
また、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、本発明の目的が達成されることは言うまでもない。
【0046】
この場合、記憶媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。プログラムコードを供給するための記憶媒体としては、例えば、フロッピーディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM,CD−R、磁気テープ、不揮発性のメモリカード、ROMなどを用いることができる。
【0047】
また、コンピュータが読み出したプログラムコードを実行することによって、前述した実施形態の機能が実現される他、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOSなどが実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【0048】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【0049】
なお、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体から、そのプログラムをパソコン通信など通信ラインを介して要求者にそのプログラムを配信する場合にも適用できることは言うまでもない。
【0050】
【発明の効果】
以上説明したように、本出願の発明によれば、ユーザが指定する条件を満足するデバイスが発見できなかった場合でも、近しい条件を備えているデバイスを表示することができる。これによって、ユーザが条件を緩和して再検索する等の操作の手間を省くことができる。
【0051】
とくに、本出願の第3および第8の発明によれば、ユーザが指定する条件のすべてを満足するデバイスが発見されればそれを表示でき、発見されなかった場合でも、一部の条件を満足する近しいデバイスを表示して、再検索の操作の手間を省くことができる。
【0052】
また、本出願の第4および第9の発明によれば、ユーザが指定する条件のすべてを満足するデバイスが発見されず近しい条件を備えるデバイスを表示する際、満足しない条件を合わせて表示することにより、ユーザが容易にデバイスを選定することができる。
【0053】
また、本出願の第5および第10の発明によれば、ユーザが指定した条件からオブジェクトクラスに関する条件に合致するものを検索サーバから取得し、さらにクライアント側で詳細に検索を行うことで、効率的な検索を行うことができる。
【図面の簡単な説明】
【図1】本実施形態のデバイス検索システムが動作可能なネットワークの構成を示す図である。
【図2】デバイス検索サーバおよびデバイス検索クライアントの構成の一例を示したブロック図である。
【図3】デバイス検索サーバが持つデバイス情報の一例を示す図である。
【図4】デバイス検索サーバの動作を示すフローチャートである。
【図5】デバイス検索サーバのデータベース検索動作を示すフローチャートである。
【図6】デバイス検索サーバが出力する検索結果の一例を示す図である。
【図7】デバイス検索前の時点におけるデバイス検索クライアントの画面表示の一例を示す図である。
【図8】デバイス検索クライアントに一時的に保持されている検索条件ならびに問い合わせ条件の一例を示す図である。
【図9】デバイス検索クライアントの動作を示すフローチャートである。
【図10】デバイス検索クライアントの検索要求動作を示すフローチャートである。
【図11】デバイス検索クライアントの検索結果表示動作を示すフローチャートである。
【図12】デバイス検索クライアントの画面表示の一例を示す図である。(不完全一致の場合)
【図13】デバイス検索クライアントの画面表示の一例を示す図である。(完全一致の場合)
【図14】本実施形態のデバイス検索ソフトウェアの記憶媒体におけるメモリマップを示す図である。
【符号の説明】
100 LAN
101 カラープリンタ
102 MFP
103 モノクロプリンタ
104 モノクロプリンタ
105 スキャナ
111 デバイス検索クライアント(デスクトップPC)
112 デバイス検索サーバ
113 デバイス検索クライアント(ノートPC)
120 ファイアウォール
130 インターネット
140 他のネットワーク
Claims (11)
- ネットワーク上のデバイスを検索するデバイス検索クライアントであって、デバイスの機能及び種別を示す属性からなる検索条件を入力する入力手段と、
前記入力手段で入力された検索条件の中から、特定の検索条件を抽出する抽出手段と、
前記抽出手段により抽出された検索条件を前記ネットワーク上の検索サーバに送信してその検索結果をサーバ装置から取得する第1の検索手段と、
前記入力手段で入力された検索条件に基づいて、前記第1の検索手段がサーバ装置から取得した検索結果を用いて前記デバイス検索クライアントにて検索を行う第2の検索手段と、
前記第2の検索手段の出力する検索結果を表示する表示手段とを備え、
前記第2の検索手段は、検索結果を出力するための、デバイスの機能を示す属性からなる判定基準を少なくとも2つを用いて検索を実行し、前記入力手段により入力された検索条件に対応する第1の判定基準を満足するデバイスが存在する場合は、当該デバイスの情報を出力し、該第1の判定基準を満足するデバイスが存在せず、該第1の判定基準の一部である第2の検索条件を満たすデバイスが存在する場合には、該第2の判定基準を満足するデバイスを示す情報を、当該デバイスが満足しない第1の判定基準の係るデバイスの機能を示す属性とともに出力することを特徴とするデバイス検索クライアント。 - 前記第2の判定基準は、前記第1の判定基準よりも緩和された基準であることを特徴とする請求項1に記載のデバイス検索クライアント。
- 前記第1の判定基準は、前記入力手段で入力された検索条件のすべてを満足するデバイスを判定するものであり、前記第2の判定基準は、デバイスが前記入力手段で入力された検索条件のうち所定数以上を満足するデバイスを判定するものであることを特徴とする請求項1または2のいずれかに記載のデバイス検索クライアント。
- 前記第2の検索手段が、前記第2の判定基準に基づいて出力するデバイス情報には、該デバイスが満足しない検索条件の情報が含まれることを特徴とする請求項3に記載のデバイス検索クライアント。
- 前記抽出手段は、オブジェクトクラスに関する条件のみを抽出して出力することを特徴とする請求項1〜4のいずれかに記載のデバイス検索クライアント。
- ネットワーク上のデバイスを検索するデバイス検索クライアントにおける方法であって、
デバイスの機能を示す属性からなる検索条件を入力する入力工程と、
前記入力工程で入力された検索条件の中から、特定の検索条件を抽出する抽出工程と、
前記抽出工程により抽出された検索条件を前記ネットワーク上の検索サーバに送信してその検索結果をサーバ装置から取得する第1の検索工程と、
前記入力工程で入力された検索条件に基づいて、前記第1の検索工程がサーバ装置から取得した検索結果を用いて前記デバイス検索クライアントにて検索を行う第2の検索工程と、
前記第2の検索工程の出力する検索結果を表示する表示工程とを備え、
前記第2の検索工程は、検索結果を出力するための、デバイスの機能を示す属性からなる判定基準を少なくとも2つを用いて検索を実行し、前記入力工程により入力された検索条件に対応する第1の判定基準を満足するデバイスが存在する場合は、当該デバイスの情報を出力し、該第1の判定基準を満足するデバイスが存在せず、該第1の判定基準の一部である第2の検索条件を満たすデバイスが存在する場合には、該第2の判定基準を満足するデバイスを示す情報を、当該デバイスが満足しない第1の判定基準の係るデバイスの機能を示す属性とともに出力することを特徴とするデバイス検索方法。 - 前記第2の判定基準は、前記第1の判定基準よりも緩和された基準であることを特徴とする請求項6に記載のデバイス検索方法。
- 前記第1の判定基準は、前記入力工程で入力された検索条件のすべてを満足するデバイスを判定するものであり、前記第2の判定基準は、デバイスが前記入力工程で入力された検索条件のうち所定数以上を満足するデバイスを判定するものであることを特徴とする請求項6または7のいずれかに記載のデバイス検索方法。
- 前記第2の検索工程が、前記第2の判定基準に基づいて出力するデバイス情報には、該デバイスが満足しない検索条件の情報が含まれることを特徴とする請求項8に記載のデバイス検索方法。
- 前記抽出工程は、オブジェクトクラスに関する条件のみを抽出して出力することを特徴とする請求項6〜9のいずれかに記載のデバイス検索方法。
- 請求項6〜9のいずれかに示した各工程を実行するためのプログラムコードを格納したコンピュータ読み取り可能な記憶媒体。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP11962499A JP3869972B2 (ja) | 1999-04-27 | 1999-04-27 | デバイス検索クライアントおよびデバイス検索方法 |
US09/552,589 US7085763B2 (en) | 1999-04-27 | 2000-04-19 | Device search system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP11962499A JP3869972B2 (ja) | 1999-04-27 | 1999-04-27 | デバイス検索クライアントおよびデバイス検索方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2000312222A JP2000312222A (ja) | 2000-11-07 |
JP3869972B2 true JP3869972B2 (ja) | 2007-01-17 |
Family
ID=14766058
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP11962499A Expired - Fee Related JP3869972B2 (ja) | 1999-04-27 | 1999-04-27 | デバイス検索クライアントおよびデバイス検索方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3869972B2 (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4547808B2 (ja) * | 2001-01-18 | 2010-09-22 | 日産自動車株式会社 | 共同利用車両の利用予約システム |
JP4140375B2 (ja) | 2002-12-19 | 2008-08-27 | 富士ゼロックス株式会社 | サービス検索装置、サービス検索システム及びサービス検索プログラム |
JP4838564B2 (ja) | 2005-10-06 | 2011-12-14 | キヤノン株式会社 | ネットワークデバイス、その制御方法およびプログラム |
JP5180676B2 (ja) * | 2008-05-14 | 2013-04-10 | キヤノン株式会社 | 画像形成装置、その制御方法及びそのプログラム |
JP5652032B2 (ja) * | 2010-07-27 | 2015-01-14 | ブラザー工業株式会社 | ユニバーサルドライバ、及びデバイス制御方法 |
-
1999
- 1999-04-27 JP JP11962499A patent/JP3869972B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2000312222A (ja) | 2000-11-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3740320B2 (ja) | デバイス検索システム及びデバイス検索方法 | |
US7617455B2 (en) | Device search apparatus | |
US7085763B2 (en) | Device search system | |
JP4240690B2 (ja) | 情報処理装置と情報処理方法、及び情報処理システム、並びに記録媒体 | |
US20040083210A1 (en) | System for searching device on network | |
KR100790240B1 (ko) | 네트워크 관리 시스템, 표시 방법 및 네트워크 관리프로그램 | |
JP3869972B2 (ja) | デバイス検索クライアントおよびデバイス検索方法 | |
JP3768726B2 (ja) | デバイス検索クライアントおよびデバイス検索方法 | |
JP3962519B2 (ja) | 情報処理装置及び方法及びコンピュータ読取り可能な記憶媒体 | |
JP4416220B2 (ja) | 情報処理装置、情報処理方法及びコンピュータ読み取り可能な記憶媒体 | |
JP4065548B2 (ja) | コンピュータ及びその制御方法 | |
JP4764114B2 (ja) | 情報処理装置及び情報処理方法及び記憶媒体 | |
JP2001337875A (ja) | 端末装置、ネットワークシステム、デバイス検索方法、及び記憶媒体 | |
JP2001306284A (ja) | サーバ装置およびクライアント装置およびデバイス検索方法および記憶媒体 | |
JP2000339260A (ja) | デバイス検索クライアントおよびデバイス検索方法 | |
JP3976957B2 (ja) | 情報処理装置、ネットワークシステム、デバイス検索装置及び方法、並びにコンピュータ読み取り可能な記録媒体 | |
JP2001092759A (ja) | デバイス検索方法及びシステム並びに記憶媒体 | |
JP2001202316A (ja) | 情報処理装置及びシステム及び方法並びに記憶媒体 | |
JPH11312065A (ja) | プリンタ検索方法、情報処理システム、記録媒体 | |
JP2001337876A (ja) | 端末装置、ネットワークシステム、デバイス検索方法、及び記憶媒体 | |
JP2001101122A (ja) | デバイス検索クライアント、デバイス検索サーバ、デバイス検索システム、デバイス検索方法及び記憶媒体 | |
JP3787465B2 (ja) | デバイス情報処理装置及びその制御方法並びに情報処理装置及びその制御方法並びに記憶媒体 | |
JP2001216107A (ja) | サーバ装置およびクライアント装置およびデバイス装置およびサーバ装置のデータ処理方法およびクライアント装置のデータ処理方法およびデバイス装置のデータ処理方法および記憶媒体 | |
JP2008027465A (ja) | ネットワーク管理システム、表示方法及びネットワーク管理プログラム | |
JP2005157613A (ja) | 情報管理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20041209 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20060614 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060620 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060821 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20061003 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20061016 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091020 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101020 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101020 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111020 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111020 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121020 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131020 Year of fee payment: 7 |
|
LAPS | Cancellation because of no payment of annual fees |