(57)【要約】【課題】ネットワークに接続された複数のデバイスの間で、通知先情報テーブルを共有して利用する。【解決手段】デバイス状態通知装置は、ネットワークに接続されたデバイスの状態変化を、前記ネットワークに接続された通知先に、前記ネットワークを介して通知するデバイス状態通知装置であって、前記デバイスの状態変化があった場合に、その状態変化があったことを通知する通知先が登録されている通知先情報テーブルと、前記通知先情報テーブルに、新たな通知先を登録する前に、前記ネットワークを介して他のデバイスに問い合わせを行い、登録しようとしている前記新たな通知先を他のデバイスで登録しているか否かを確認する確認手段と、前記確認手段で確認した結果、登録しようとしている前記新たな通知先を他のデバイスが登録していた場合には、前記新たな通知先を登録している他のデバイスを特定するデバイス特定情報を、共有通知先情報テーブルに登録する、共有化情報登録手段と、を備えて構成されている。【選択図】図１
2010113401.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークに接続されたデバイスの状態変化を、前記ネットワークに接続された通知先に、前記ネットワークを介して通知するデバイス状態通知装置であって、
前記デバイスの状態変化があった場合に、その状態変化があったことを通知する通知先が登録されている通知先情報テーブルと、
前記通知先情報テーブルに、新たな通知先を登録する前に、前記ネットワークを介して他のデバイスに問い合わせを行い、登録しようとしている前記新たな通知先を他のデバイスで登録しているか否かを確認する確認手段と、
前記確認手段で確認した結果、登録しようとしている前記新たな通知先を他のデバイスが登録していた場合には、前記新たな通知先を登録している他のデバイスを特定するデバイス特定情報を、共有通知先情報テーブルに登録する、共有化情報登録手段と、
を備えることを特徴とするデバイス状態通知装置。
【請求項２】
前記確認手段で確認した結果、登録しようとしている前記新たな通知先が、他のデバイスに登録されていなかった場合には、前記新たな通知先を前記通知先情報テーブルに登録する、新規登録実行手段を、さらに備えることを特徴とする請求項１に記載のデバイス状態通知装置。
【請求項３】
前記デバイスの状態変化が生じた場合に、前記共有通知先情報テーブルを検索し、前記共有通知先情報テーブルに登録されている他のデバイスから、前記状態変化を通知すべき通知先を取得する、通知先取得手段を、さらに備えることを特徴とする請求項１又は請求項２に記載のデバイス状態通知装置。
【請求項４】
前記共有通知先情報テーブルには、前記状態変化を通知すべき通知先が登録されている、前記他のデバイスにおける通知先情報テーブルのテーブル内位置が、前記デバイス特定情報に対応付けて、登録されており、
前記通知先取得手段は、前記他のデバイスに前記テーブル内位置を通知して、そのテーブル内位置に登録されている通知先を取得する、ことを特徴とする請求項３に記載のデバイス状態通知装置。
【請求項５】
前記確認手段は、前記新たな通知先を前記通知先情報テーブルに登録しようとするたびに、前記新たな通知先が他のデバイスで登録されているか否かを確認する、ことを特徴とする請求項１乃至請求項４のいずれかに記載のデバイス状態通知装置。
【請求項６】
前記確認手段は、前記新たな通知先を前記通知先情報テーブルに登録しようとしたが、前記通知先情報テーブルに空き容量が無く、前記新たな通知先を登録できない場合に、前記新たな通知先が他のデバイスで登録されているか否かを確認する、ことを特徴とする請求項１乃至請求項４のいずれかに記載のデバイス状態通知装置。
【請求項７】
前記確認手段は、前記ネットワーク上の同一セグメント内に接続されている他のプリンタのすべてに対して、前記問い合わせを行う、ことを特徴とする請求項１乃至請求項６のいずれかに記載のデバイス状態通知装置。
【請求項８】
ネットワークに接続された第１のデバイスと、前記ネットワークに接続された１又は複数の第２のデバイスとを有しており、前記第１のデバイスは、前記第１のデバイスに所定の状態変化が生じた場合に、前記ネットワークに接続された通知先に、所定の状態変化が生じたことを前記ネットワークを介して通知するとともに、前記第２のデバイスも、前記第２のデバイスに所定の状態変化が生じた場合に、前記ネットワークに接続された通知先に、所定の状態変化が生じたことを前記ネットワークを介して通知する、デバイスネットワークシステムであって、
前記第１のデバイスは、前記第１のデバイスに所定の状態変化があった場合に、その状態変化があったことを通知する通知先が登録されている第１の通知先情報テーブルを、備えており、
前記第２のデバイスは、前記第２のデバイスに所定の状態変化があった場合に、その状態変化があったことを通知する通知先が登録されている第２の通知先情報テーブルを、備えており、
前記第１のデバイスは、さらに、
前記第１の通知先情報テーブルに、新たな通知先を登録する前に、前記ネットワークを介して前記第２のデバイスに問い合わせを行い、登録しようとしている前記新たな通知先が前記第２の通知先情報テーブルに登録されているか否かを確認する確認手段と、
前記確認手段で確認した結果、登録しようとしている前記新たな通知先が前記第２の通知先情報テーブルに登録されていた場合には、前記新たな通知先を登録している前記第２の通知先情報テーブルを保持する前記第２のデバイスを特定するデバイス特定情報を、共有通知先情報テーブルに登録する、共有化情報登録手段と、
を備えることを特徴とするデバイスネットワークシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デバイス状態通知装置及びデバイスネットワークシステムに関し、特に、デバイスの状態が変化した際に、その変化を通知する機能を有するデバイス状態通知装置及びそのような機能を有するデバイスを備えたデバイスネットワークシステムに関する。
【背景技術】
【０００２】
ネットワークを介して、プリンタと、複数のホストコンピュータとを相互に接続し、１台のプリンタを複数のホストコンピュータで共有する利用態様が普及している。このような利用態様の場合、各ホストコンピュータは、プリンタの状態変化を監視し、印刷ジョブの開始や終了、プリンタの障害などを監視する必要がある。このような状態変化の監視がホストコンピュータで出来るようにするため、プリンタ側にデバイス状態通知装置が設けられている。
【０００３】
例えば、プリンタとホストコンピュータとの間を接続するネットワークの規格がＴＣＰ／ＩＰである場合、ＳＮＭＰ（Simple Network Management Protocol）を用いることにより、プリンタの監視を実現する。すなわち、ホストコンピュータ側に、ＳＮＭＰに準拠した管理アプリケーションを搭載し、プリンタ側に、同じくＳＮＭＰに準拠したネットワークインターフェースを搭載し、ＳＮＭＰ  Ｔｒａｐという監視手段を用いて、ホストコンピュータはプリンタの状態監視を行う。
【０００４】
プリンタ側で予め指定された状態変化が発生したときに、どのホストコンピュータに通知をするのかは、プリンタ側に設けられた通知先情報テーブルに事前に登録されている。しかし、一般的に、通知先情報テーブルに登録できる通知先アドレスの数には制限がある。このため、新たにプリンタの監視を開始しようとしたホストコンピュータが、プリンタの通知先情報テーブルに、自らの通知先アドレスを登録しようとしても、既に通知先情報テーブルに空きがない場合には、その登録ができなくなってしまう。通知先情報テーブルに通知先アドレスの登録ができないと、ホストコンピュータは、そのプリンタの状態監視ができないこととなる。このため、例えば、特開２００３−９９３４２号公報（特許文献１）には、ホストコンピュータの管理アプリケーションからの削除要求に基づいて、通知先情報テーブルから通知先を削除する手法を開示している。
【０００５】
しかし、一般的には、１つネットワークには複数のプリンタが接続されており、各プリンタで、同じ通知先アドレスを通知先情報テーブルに登録していることが想定される。このような場合、各プリンタに登録されている同一の通知先アドレスを共有して利用できば、通知先情報テーブルに格納する通知先アドレスの数を削減することができる。
【０００６】
これは、プリンタだけに限られたものではなく、その状態変化を通知先に通知するデバイス状態通知装置を備えた他の種類のデバイスでも、同様に対処し得ることとなる。
【特許文献１】特開２００３−９９３４２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
そこで本発明は、前記課題に鑑みてなされたものであり、ネットワークに接続された複数のデバイスの間で、通知先情報テーブルを共有して利用することにより、重複した通知先の登録を回避し、通知先情報テーブルの有効利用を図らんとしたものである。
【課題を解決するための手段】
【０００８】
上記課題を解決するため、本発明に係るデバイス状態通知装置は、
ネットワークに接続されたデバイスの状態変化を、前記ネットワークに接続された通知先に、前記ネットワークを介して通知するデバイス状態通知装置であって、
前記デバイスの状態変化があった場合に、その状態変化があったことを通知する通知先が登録されている通知先情報テーブルと、
前記通知先情報テーブルに、新たな通知先を登録する前に、前記ネットワークを介して他のデバイスに問い合わせを行い、登録しようとしている前記新たな通知先を他のデバイスで登録しているか否かを確認する確認手段と、
前記確認手段で確認した結果、登録しようとしている前記新たな通知先を他のデバイスが登録していた場合には、前記新たな通知先を登録している他のデバイスを特定するデバイス特定情報を、共有通知先情報テーブルに登録する、共有化情報登録手段と、
を備えることを特徴とする。
【０００９】
この場合、前記確認手段で確認した結果、登録しようとしている前記新たな通知先が、他のデバイスに登録されていなかった場合には、前記新たな通知先を前記通知先情報テーブルに登録する、新規登録実行手段を、さらに備えるようにしてもよい。
【００１０】
また、前記デバイスの状態変化が生じた場合に、前記共有通知先情報テーブルを検索し、前記共有通知先情報テーブルに登録されている他のデバイスから、前記状態変化を通知すべき通知先を取得する、通知先取得手段を、さらに備えるようにしてもよい。
【００１１】
この場合、前記共有通知先情報テーブルには、前記状態変化を通知すべき通知先が登録されている、前記他のデバイスにおける通知先情報テーブルのテーブル内位置が、前記デバイス特定情報に対応付けて、登録されており、
前記通知先取得手段は、前記他のデバイスに前記テーブル内位置を通知して、そのテーブル内位置に登録されている通知先を取得するようにしてもよい。
【００１２】
また、前記確認手段は、前記新たな通知先を前記通知先情報テーブルに登録しようとするたびに、前記新たな通知先が他のデバイスで登録されているか否かを確認するようにしてもよい。
【００１３】
或いは、前記確認手段は、前記新たな通知先を前記通知先情報テーブルに登録しようとしたが、前記通知先情報テーブルに空き容量が無く、前記新たな通知先を登録できない場合に、前記新たな通知先が他のデバイスで登録されているか否かを確認するようにしてもよい。
【００１４】
また、前記確認手段は、前記ネットワーク上の同一セグメント内に接続されている他のプリンタのすべてに対して、前記問い合わせを行うようにしてもよい。
【００１５】
本発明に係るデバイスネットワークシステムは、ネットワークに接続された第１のデバイスと、前記ネットワークに接続された１又は複数の第２のデバイスとを有しており、前記第１のデバイスは、前記第１のデバイスに所定の状態変化が生じた場合に、前記ネットワークに接続された通知先に、所定の状態変化が生じたことを前記ネットワークを介して通知するとともに、前記第２のデバイスも、前記第２のデバイスに所定の状態変化が生じた場合に、前記ネットワークに接続された通知先に、所定の状態変化が生じたことを前記ネットワークを介して通知する、デバイスネットワークシステムであって、
前記第１のデバイスは、前記第１のデバイスに所定の状態変化があった場合に、その状態変化があったことを通知する通知先が登録されている第１の通知先情報テーブルを、備えており、
前記第２のデバイスは、前記第２のデバイスに所定の状態変化があった場合に、その状態変化があったことを通知する通知先が登録されている第２の通知先情報テーブルを、備えており、
前記第１のデバイスは、さらに、
前記第１の通知先情報テーブルに、新たな通知先を登録する前に、前記ネットワークを介して前記第２のデバイスに問い合わせを行い、登録しようとしている前記新たな通知先が前記第２の通知先情報テーブルに登録されているか否かを確認する確認手段と、
前記確認手段で確認した結果、登録しようとしている前記新たな通知先が前記第２の通知先情報テーブルに登録されていた場合には、前記新たな通知先を登録している前記第２の通知先情報テーブルを保持する前記第２のデバイスを特定するデバイス特定情報を、共有通知先情報テーブルに登録する、共有化情報登録手段と、
を備えることを特徴とする。
【発明を実施するための形態】
【００１６】
以下、図面を参照して、本発明の実施形態を説明する。なお、以下に説明する実施形態は、本発明の技術的範囲を限定するものではない。
【００１７】
図１は、本実施形態に係るデバイスネットワークシステム１０の全体構成を示すブロック図である。この図１に示すように、本実施形態に係るデバイスネットワークシステム１０は、ネットワーク１２に接続された、１又は複数のホストコンピュータ１４と、複数のプリンタ１６とを備えて、構成されている。この図１の例では、５台のホストコンピュータ１４Ａ〜１４Ｅが、ネットワーク１２に接続されており、２台のプリンタ１６Ａ、１６Ｂが、ネットワーク１２に接続されている。
【００１８】
本実施形態においては、ネットワーク１２は、例えば、ＴＣＰ／ＩＰの規格に準拠しており、このネットワーク１２に、同じくＴＣＰ／ＩＰの規格に準拠したホストコンピュータ１４とプリンタ１６とが接続されている。ホストコンピュータ１４は、プリンタ１６の状態をＳＮＭＰ  Ｔｒａｐを用いて監視する。この監視を行うために、ホストコンピュータ１４では、管理アプリケーションが起動されている。すなわち、ホストコンピュータ１４Ａ〜１４Ｅに、それぞれ、管理アプリケーションＡ〜Ｅが起動されている。
【００１９】
この管理アプリケーションＡ〜Ｅは、例えば、このプリンタ１６に送信した印刷データの印刷開始、その印刷の終了、紙無しエラーの発生、トナー無しエラーの発生などを、ＳＮＭＰ  Ｔｒａｐを用いて監視する。プリンタ１６Ａ、１６Ｂでは、予め指定されたこれらの状態が発生すると、ＳＮＭＰ  Ｔｒａｐを用いて、指定されたホストコンピュータ１４Ａ〜１４Ｅの管理アプリケーションＡ〜Ｅに通知する。すなわち、プリンタ１６Ａ、１６Ｂは、これらの状態変化が発生した旨の通知を、通知先アドレス宛に送信する。プリンタ１６Ａ、１６Ｂは、このような状態の監視がなされるデバイスの一例である。
【００２０】
本実施形態においては、これらホストコンピュータ１４Ａ〜１４Ｅとプリンタ１６Ａ、１６Ｂは、ネットワーク１２上の同一セグメント内に配置されている。すなわち、ネットワーク１２は、ルータ１８に接続されており、このルータ１８を介して、ネットワーク１２は外部のネットワークに接続されている。このため、本実施形態においては、プリンタ１６Ａ、１６Ｂは、ネットワーク１２を介して一斉問い合わせをすることができる関係にある。すなわち、問い合わせ先を特定せずに、ネットワーク１２上の同じセグメント内に接続されているすべてのプリンタに対して回答を要求するタイプの問い合わせをすることができる。なお、図１においては、ホストコンピュータ１４Ａ〜１４Ｅもネットワーク１２上の同一セグメント内に接続されているが、本実施形態においては、ホストコンピュータ１４Ａ〜１４Ｅに関しては、一斉問い合わせを行う処理は発生しないため、必ずしも、同一セグメント上に位置する必要はない。
【００２１】
図２は、本実施形態に係るプリンタ１６の内部構成の一例を示すブロック図である。この図２に示すように、本実施形態に係るプリンタ１６は、ＣＰＵ（Central Processing Unit）２０と、ＲＡＭ（Random Access Memory）２２と、ＲＯＭ（Read Only Memory）２４と、ハードディスクドライブ２６と、印刷機構部２８と、通信インターフェース３０とを備えて構成されている。これらＣＰＵ２０と、ＲＡＭ２２と、ＲＯＭ２４と、ハードディスクドライブ２６と、印刷機構部２８と、通信インターフェース３０とは、内部バス３２を介して相互に接続されている。
【００２２】
ＣＰＵ２０は、このプリンタ１６の全体的な制御を行う制御部を構成する。具体的には、ＣＰＵ２０は、プリンタ１６がネットワーク１２を介してホストコンピュータ１４から印刷データを受信し、印刷機構部２８で印刷を行う際に必要となる各種の制御を行う。また、ＣＰＵ２０は、この各種の制御を実現するにあたり、必要なプログラムをＲＯＭ２４やハードディスクドライブ２６から読み込んだり、生成されたデータをＲＡＭ２２に書き込んだりする。
【００２３】
ハードディスクドライブ２６は、いわゆる大容量の補助記憶装置を構成しており、プログラムの他、印刷データや各種制御データなども不揮発的に記憶される。印刷機構部２８は、印刷を実際に行うプリンタエンジンにより構成されており、例えば、本実施形態ではレーザービーム式の印刷機構により構成されている。
【００２４】
通信インターフェース３０は、プリンタ１６をネットワーク１２に接続するためのインターフェースである。本実施形態においては、この通信インターフェース３０は、ＴＣＰ／ＩＰのプロトコルに準拠しており、ＳＮＭＰ  Ｔｒａｐを用いて、ホストコンピュータ１４がこのプリンタ１６を監視することができるように構成されている。
【００２５】
本実施形態においては、このプリンタ１６にデバイス状態通知装置が組み込まれている。すなわち、プリンタ１６が、後述する通知先登録処理や、ＳＮＭＰ  Ｔｒａｐ発行処理、通知先回答処理を行うことにより、本実施形態に係るデバイス状態通知装置がプリンタ１６で実現される。
【００２６】
次に、図３に基づいて、本実施形態に係るプリンタ１６で実行される通知先登録処理について、説明する。この図３の通知先登録処理は、プリンタ１６がホストコンピュータ１４から通知先の新規登録要求を受けた場合に、起動される処理である。すなわち、プリンタ１６が新たな通知先を登録しようとするたびに、起動される処理である。
【００２７】
また、この通知先登録処理は、プリンタ１６のＣＰＵ２０が、ＲＯＭ２４又はハードディスクドライブ２６に格納されている通知先登録処理プログラムを読み込んで実行することにより、実現される処理である。以下では、プリンタ１６Ａが、ホストコンピュータ１４Ａの管理アプリケーションＡをから、新規登録の要求を受けて、この通知先登録処理を実行する場合を例に、本実施形態を説明する。
【００２８】
この通知先登録処理が起動されると、まず、プリンタ１６は、通知先情報テーブルの内容の問い合わせを行う（ステップＳ１０）。例えば、本実施形態では、プリンタ１６Ａは、ネットワーク１２を介して、同一セグメント内にある他のすべてのプリンタに対して、通知先情報テーブルの内容の一斉問い合わせを行う。
【００２９】
図４は、プリンタ１６Ａが保持する通知先情報テーブルＴＢ１０の構成の一例を示す図であり、図５は、プリンタ１６Ｂが保持する通知先情報テーブルＴＢ２０の構成の一例を示す図である。これら通知先情報テーブルＴＢ１０、ＴＢ２０は、例えば、それぞれ、プリンタ１６Ａ、１６Ｂのハードディスクドライブ２６に格納されて、保持されている。
【００３０】
これら図４及び図５に示すように、本実施形態に係る通知先情報テーブルＴＢ１０、ＴＢ２０は、所定の状態変化がプリンタ１６Ａ、１６Ｂに発生した場合に、その状態変化が発生した旨を通知する通知先を特定する情報が格納されている。本実施形態においては、各ホストコンピュータ１４で起動されている管理アプリケーションを特定する通知先アドレスが格納されている。
【００３１】
図４の例では、通知先情報テーブルＴＢ１０の１番目には、管理アプリケーションＤの通知先アドレスが格納されており、２番目には、管理アプリケーションＦの通知先アドレスが格納されている。図５の例では、通知先情報テーブルＴＢ２０の一番目には、管理アプリケーションＢの通知先アドレスが格納されており、２番目には、管理アプリケーションＣの通知先アドレスが格納されている。これらの図から分かるように、本実施形態においては、通知先情報テーブルＴＢ１０、ＴＢ２０には、それぞれ、最大４個の通知先アドレスを格納することができるように構成されている。換言すれば、通知先情報テーブルＴＢ１０、ＴＢ２０には、５個以上の通知先アドレスは格納できない。
【００３２】
図３のステップＳ１０においては、どのような態様で一斉問い合わせをするかは、任意である。例えば、プリンタ１６Ａは、他のすべてのプリンタに対して、そのプリンタが保持する通知先情報テーブルの内容をすべて返信するように要求してもよい。或いは、プリンタ１６Ａは、登録要求を受け付けた通知先アドレスを特定して、他のすべてのプリンタに対して、その登録しようとしている通知先アドレスを通知先情報テーブルに保持しているかどうかを回答するように要求し、且つ、登録しようとしている通知先アドレスを保持している場合には、そのテーブル内位置を回答するように要求してもよい。
【００３３】
この問い合わせに対する返信を受信した後、プリンタ１６Ａは、同一セグメント内にある他のプリンタの通知先情報テーブルに、登録しようとしている通知先アドレスが既に登録されているか否かを判断する（ステップＳ１２）。
【００３４】
図１の例では、プリンタ１６Ｂの通知先情報テーブルＴＢ２０に、登録しようとしている管理アプリケーションＡの通知先アドレスが存在するか否かを判断する。例えば、プリンタ１６ＡがステップＳ１０で、他のすべてのプリンタに対して、そのプリンタが保持する通知先情報テーブルの内容をすべて返信するように要求した場合には、返信された通知先情報テーブルＴＢ２０に、管理アプリケーションＡの通知先アドレスが登録されているか否かを判断する。一方、プリンタ１６ＡがステップＳ１０で、登録要求を受け付けた管理アプリケーションＡの通知先アドレスを特定して、他のすべてのプリンタに対して、管理アプリケーションＡの通知先アドレスを通知先情報テーブルに保持しているかどうかを回答するように要求した場合には、プリンタ１６Ｂから返信された回答に基づいて、プリンタ１６Ｂの通知先情報テーブルＴＢ２０に管理アプリケーションＡの通知先アドレスが登録されているか否かを判断する。
【００３５】
登録しようとしている通知先アドレスが、他のプリンタの通知先情報テーブルに存在しない場合（ステップＳ１２：ＮＯ）には、プリンタ１６Ａは、自らの通知先情報テーブルＴＢ１０に通知先アドレスの登録を行う（ステップＳ１４）。すなわち、図４に示した通知先情報テーブルＴＢ１０に、新たな通知先アドレスを新規に登録する。ここでは、ホストコンピュータ１４Ａの管理アプリケーションＡから登録要求を受け付けたことを想定しているので、この通知先情報テーブルＴＢ１０に、管理アプリケーションＡの通知先アドレスを追加格納する。
【００３６】
一方、登録しようとしている通知先アドレスが、他のプリンタの通知先情報テーブルに存在した場合（ステップＳ１２：ＹＥＳ）には、共有通知先情報テーブルに、登録しようとしている通知先アドレスを保持しているプリンタと、そのテーブル内位置を登録する（ステップＳ１６）。
【００３７】
図６は、本実施形態に係るプリンタ１６Ａが保持する共有通知先情報テーブルＴＢ３０の構成の一例を示す図である。この共有通知先情報テーブルＴＢ３０は、例えば、プリンタ１６Ａのハードディスクドライブ２６に形成されている。
【００３８】
この図６に示すように、本実施形態に係る共有通知先情報テーブルＴＢ３０は、データ項目として、プリンタ特定情報とテーブル内位置とを備えている。プリンタ特定情報には、本来であればプリンタ１６Ａが保持すべき通知先アドレスを保持している他のプリンタを特定する情報が格納される。本実施形態においては、このプリンタ特定情報は、プリンタの保持するネットワークアドレスにより構成されている。また、テーブル内位置には、プリンタ特定情報で特定されたプリンタが保持する通知先情報テーブル内におけるどの位置に、本来であればプリンタ１６Ａが保持すべき通知先アドレスが格納されているかを特定する情報が格納される。
【００３９】
図６の例では、例えば、このプリンタ１６Ａが本来であれば通知先情報テーブルＴＢ１０に登録すべき通知先アドレスが、プリンタＢの通知先情報テーブルＴＢ２０における１番目に格納されており、また、同じくプリンタＢの通知先情報テーブルＴＢ２０における２番目に格納されていることを示している。ここで、図５の通知先情報テーブルＴＢ２０を見ると、１番目には、管理アプリケーションＢの通知先アドレスが格納されており、２番目には、管理アプリケーションＣの通知先アドレスが格納されている。このように、本実施形態においては、同一セグメント内にある他のプリンタが、登録しようとしている通知先アドレスを既に保持している場合には、プリンタ１６Ａは、その通知先アドレスを自らの通知先情報テーブルＴＢ１０に登録するのではなく、その通知先アドレスを保持しているプリンタのプリンタ特定情報とテーブル内位置を、共有通知先情報テーブルＴＢ３０に登録するのである。
【００４０】
なお、この図６の共有通知先情報テーブルＴＢ３０に登録できるプリンタ特定情報とテーブル内位置の数は、任意に設計できる。例えば、プリンタ特定情報とテーブル内位置を２０個登録できるように、共有通知先情報テーブルＴＢ３０を設定しても良いし、或いは、プリンタ特定情報とテーブル内位置を新たに登録する際に、随時拡張するように設定しても良い。
【００４１】
このステップＳ１６又は上述したステップＳ１４の処理により、本実施形態に係る通知先登録処理は終了する。
【００４２】
次に、図７に基づいて、プリンタ１６がＳＮＭＰ  Ｔｒａｐを発行する際に実行するＳＮＭＰ  Ｔｒａｐ発行処理について説明する。このＳＮＭＰ  Ｔｒａｐ発行処理は、プリンタ１６においてＳＮＭＰ  Ｔｒａｐを発行するべき状態変化が生じた場合に起動される処理である。また、このＳＮＭＰ  Ｔｒａｐ発行処理は、プリンタ１６のＣＰＵ２０が、ＲＯＭ２４又はハードディスクドライブ２６に格納されているＳＮＭＰ  Ｔｒａｐ発行処理プログラムを読み込んで実行することにより、実現される処理である。以下では、プリンタ１６Ａが、このＳＮＭＰ  Ｔｒａｐ発行処理を実行する場合を例に、本実施形態を説明する。
【００４３】
図７に示すように、プリンタ１６は、ＳＮＭＰ  Ｔｒａｐを発行すべき状態変化が発生した場合、通知先情報テーブルから、通知先アドレスを取得する（ステップＳ３０）。例えば、本実施形態においては、図４の通知先情報テーブルＴＢ１０から、管理アプリケーションＤの通知先アドレスと、管理アプリケーションＦの通知先アドレスとを取得する。
【００４４】
次に、プリンタ１６は、ステップＳ３０で取得した通知先アドレスに、ＳＮＭＰ  Ｔｒａｐを発行する（ステップＳ３２）。例えば、本実施形態においては、ネットワーク１２を介して、ステップＳ３０で取得した管理アプリケーションＤの通知先アドレスと、管理アプリケーションＦの通知先アドレスを送信先アドレスとして、ＳＮＭＰ  Ｔｒａｐを送信する。
【００４５】
次に、プリンタ１６は、共有通知先情報テーブルから、プリンタ特定情報とテーブル内位置を取得する（ステップＳ３４）。例えば、本実施形態においては、図６の共有通知先情報テーブルＴＢ３０から、プリンタＢのプリンタ特定情報であるネットワークアドレスと、テーブル内位置である「１番目」、「２番目」という情報を、取得する。
【００４６】
次に、プリンタ１６Ａは、ネットワーク１２を介して、問い合わせを行い、他のプリンタの保持する通知先アドレスを取得する（ステップＳ３６）。例えば、本実施形態においては、プリンタＢに、プリンタＢの保持する通知先情報テーブルＴＢ２０の１番目の通知先アドレスと、２番目の通知先アドレスとを回答するように、問い合わせを行う。この問い合わせは、ステップＳ３４で取得したプリンタＢのネットワークアドレス宛に行う。
【００４７】
この回答を受け取った後、プリンタ１６は、ステップＳ３６で取得した通知先アドレスに、ＳＮＭＰ  Ｔｒａｐを発行する（ステップＳ３８）。例えば、本実施形態においては、ステップＳ３６の問い合わせにより、プリンタＢの保持する管理アプリケーションＢの通知先アドレスと管理アプリケーションＣの通知先アドレスとを取得するので、これら２つの通知先アドレスにＳＮＭＰ  Ｔｒａｐを発行する。
【００４８】
このステップＳ３８の処理により、本実施形態に係るＳＮＭＰ  Ｔｒａｐ発行処理が終了する。
【００４９】
次に、図８に基づいて、プリンタ１６が他のプリンタから通知先アドレスに関する問い合わせがあった場合に実行する通知先回答処理について説明する。この通知先回答処理は、プリンタ１６が他のプリンタから通知先アドレスに関する問い合わせを受けた場合に起動される処理である。また、この通知先回答処理は、プリンタ１６のＣＰＵ２０が、ＲＯＭ２４又はハードディスクドライブ２６に格納されている通知先回答処理プログラムを読み込んで実行することにより、実現される処理である。以下では、プリンタ１６Ｂが、プリンタ１６Ａから問い合わせを受けて、この通知先回答処理を実行する場合を例に、本実施形態を説明する。
【００５０】
図８に示すように、プリンタ１６が通知先アドレスの問い合わせを受けると、自らの通知先情報テーブルを検索し、指定されたテーブル内位置から、通知先アドレスを取得する（ステップＳ５０）。例えば、本実施形態においては、プリンタ１６Ｂは、自らの通知先情報テーブルＴＢ２０を検索し、指定された１番目の管理アプリケーションＢの通知先アドレスと２番目の管理アプリケーションＣの通知先アドレスとを取得する。
【００５１】
次に、プリンタ１６は、ステップＳ５０で取得した通知先アドレスを、問い合わせをしてきたプリンタに返信する（ステップＳ５２）。例えば、本実施形態においては、ステップＳ５０で取得した、管理アプリケーションＢの通知先アドレスと管理アプリケーションＣの通知先アドレスとを、プリンタ１６Ａに返信する。
【００５２】
このステップＳ５２の処理により、本実施形態に係る通知先回答処理が終了する。
【００５３】
図９は、本実施形態において、プリンタ１６が他のプリンタ１６に通知先アドレスの問い合わせを行い、ＳＮＭＰ  Ｔｒａｐを発行する場合のプリンタ１６と他のプリンタ１６と管理アプリケーションとの間のやり取りの一例を説明する図である。この図９においては、プリンタ１６Ａがプリンタ１６Ｂに対して、通知先情報テーブルＴＢ２０の１番目と２番目の通知先アドレスを送信するように要求し、この要求を受けたプリンタ１６Ｂが、この２つの通知先アドレスをプリンタ１６Ａに返信する場合を例示している。
【００５４】
この図９に示すように、上述した図７のＳＮＭＰ  Ｔｒａｐ発行処理のステップＳ３６において、プリンタ１６Ａはプリンタ１６Ｂに対して、通知先情報テーブルＴＢ２０の１番目と２番目の通知先アドレスを回答するように要求する。この要求を受けたプリンタ１６Ｂでは、上述した図８の通知先回答処理を実行し、１番目の管理アプリケーションＢの通知先アドレスと２番目の管理アプリケーションＣの通知先アドレスとを返信する。
【００５５】
これら２つの通知先アドレスを取得したプリンタ１６Ａは、それぞれの通知先アドレスに対して、ＳＮＭＰ  Ｔｒａｐを発行する。これにより、プリンタ１６Ａは、自らの通知先情報テーブルＴＢ１０に登録されている通知先ではないが、プリンタ１６Ｂに登録されている通知先についても、ＳＮＭＰ  Ｔｒａｐを発行することができるようになる。
【００５６】
以上のように、本実施形態に係るデバイスネットワークシステム１０によれば、他のプリンタ１６の通知先情報テーブルに保持されている通知先アドレスについても、ＳＮＭＰ  Ｔｒａｐを発行できるようにしたので、通知先情報テーブルの有効活用を図ることができる。
【００５７】
すなわち、新たに登録要求を受け付けた通知先アドレスを、自らの通知先情報テーブルに登録する前に、他のプリンタに対して問い合わせを行い、同一の通知先アドレスを保持しているかどうかを確認し、もし、他のプリンタが同一の通知先アドレスを保持している場合には、その通知先アドレスを通知先情報テーブルに登録するのでなく、共有通知先情報テーブルに登録することとした。このため、最大４個までしか通知先アドレスの登録をすることができない通知先情報テーブルに登録する通知先アドレスの数を抑制することができる。
【００５８】
また、このように１台のプリンタが通知先アドレスを保持して一元管理するようにしたので、もし通知先アドレスの変更があったような場合でも、その通知先アドレスを一元管理しているプリンタの通知先アドレスだけを変更すればよいので、通知先アドレスの変更作業が容易になる。
【００５９】
なお、本発明は上記実施形態に限定されず種々に変形可能である。例えば、上述した実施形態においては、デバイスの状態変化を監視する対象がプリンタ１６である場合を例にして、本発明を説明したが、状態変化を監視する対象のデバイスはプリンタ１６に限られるものではない。すなわち、上述した実施形態では、デバイス状態通知装置をプリンタ１６に組み込んで本発明を実現した場合を例に説明をしたが、デバイス状態通知装置をプリンタ以外のデバイスに組み込んで本発明を実現してもよい。
【００６０】
また、上述した実施形態では、通知先情報テーブルＴＢ１０、ＴＢ２０には、４個まで通知先に関する情報が格納できる場合を例に本発明を説明したが、通知先情報テーブル３０に格納できる通知先の数は、任意に設計することができる。
【００６１】
また、上述した実施形態では、ネットワーク１２がＴＣＰ／ＩＰに準拠しており、ＳＮＭＰ  Ｔｒａｐを用いて、監視対象となっているデバイスの状態変化を、ホストコンピュータ１４に通知することしたが、他の通信規格やプロトコルを用いて、この通知を実現できるようにしてもよい。
【００６２】
また、上述した実施形態では、１つのホストコンピュータ１４には、１つの管理アプリケーションが生成されることを前提に説明をしたが、１つのホストコンピュータ１４に複数の管理アプリケーションが生成されてもよい。この場合、プリンタ１６は各管理アプリケーションに対して、上述した各処理を行うこととなる。すなわち、プリンタ１６は、各アプリケーションに対して、ＳＮＭＰ  Ｔｒａｐを発行する。
【００６３】
また、上述した実施形態では、複数のプリンタ１６が同一セグメント内にある場合を例に本発明を説明したが、これら複数のプリンタ１６のセグメントが異なっていてもよい。但し、上述した図３の通知先登録処理におけるステップＳ１０で、自らが登録しようとしている通知先アドレスを保持しているか否かを、他のプリンタに対して一斉に問い合わせをするので、異なるセグメントのプリンタに対しても、同等の問い合わせを行うことができるようなネットワークシステムである必要がある。
【００６４】
また、上述した実施形態では、プリンタ１６が新たな通知先アドレスの登録の要求を受けるたびに、図３の通知先登録処理で他のプリンタ１６に対して、同一通知先アドレスの登録の有無を確認するようにしたが（ステップＳ１０）、自らの通知先情報テーブルが満杯で空き容量が無く、新たな通知先アドレスの登録ができない場合にのみ、他のプリンタ１６に対して同一通知先アドレスの登録の有無を確認するようにしてもよい。
【００６５】
また、上述した実施形態で説明した通知先登録処理、ＳＮＭＰ  Ｔｒａｐ発行処理、及び、通知先回答処理については、これら各処理を実行するためのプログラムをフレキシブルディスク、ＣＤ−ＲＯＭ（Compact Disc-Read Only Memory）、ＲＯＭ、メモリカード等の記録媒体に記録して、記録媒体の形で頒布することが可能である。この場合、この記録媒体に記録されたプログラムをプリンタ１６に読み込ませ、実行させることにより、上述した実施形態を実現することができる。
【００６６】
また、プリンタ１６は、オペレーティングシステムや別のアプリケーションプログラム等の他のプログラムを備える場合がある。この場合、プリンタ１６の備える他のプログラムを活用するために、そのプリンタ１６が備えるプログラムの中から、上述した実施形態と同等の処理を実現するプログラムを呼び出すような命令を含むプログラムを、記録媒体に記録するようにしてもよい。
【００６７】
さらに、このようなプログラムは、記録媒体の形ではなく、ネットワークを通じて搬送波として頒布することも可能である。ネットワーク上を搬送波の形で伝送されたプログラムは、プリンタ１６に取り込まれて、このプログラムを実行することにより上述した実施形態を実現することができる。
【００６８】
また、記録媒体にプログラムを記録する際や、ネットワーク上を搬送波として伝送される際に、プログラムの暗号化や圧縮化がなされている場合がある。この場合には、これら記録媒体や搬送波からプログラムを読み込んだプリンタ１６は、そのプログラムの復号や伸張を行った上で、実行する必要がある。
【００６９】
また、上述した実施形態では、通知先登録処理、ＳＮＭＰ  Ｔｒａｐ発行処理、及び、通知先回答処理を、ソフトウェアにより実現する場合を例に説明したが、これらの各処理をＡＳＩＣ（Application Specific IC）などのハードウェアにより実現するようにしてもよい。さらには、これらの各処理を、ソフトウェアとハードウェアとが協働して実現するようにしてもよい。
【図面の簡単な説明】
【００７０】
【図１】本発明の適用されたデバイスネットワークシステムのネットワーク構成の一例を説明するブロック図。
【図２】本発明に係るプリンタの内部構成の一例を示す機能ブロック図。
【図３】図２のプリンタで実行される通知先登録処理の内容の一例を説明するフローチャートを示す図。
【図４】ある１のプリンタが保持する通知先情報テーブルの構成の一例を示す図。
【図５】別のプリンタが保持する通知先情報テーブルの構成の一例を示す図。
【図６】ある１のプリンタが保持する共有通知先情報テーブルの構成の一例を示す図。
【図７】図２のプリンタで実行されるＳＮＭＰ  Ｔｒａｐ発行処理の内容の一例を説明するフローチャートを示す図。
【図８】図２のプリンタで実行される通知先回答処理の内容の一例を説明するフローチャートを示す図。
【図９】同一セグメント内のプリンタで通知先アドレスを共有してＳＮＭＰ  Ｔｒａｐを発行する場合のやり取りを説明する図。
【符号の説明】
【００７１】
１０  デバイスネットワークシステム
１２  ネットワーク
１４（１４Ａ〜１４Ｄ）  ホストコンピュータ
１６（１６Ａ、１６Ｂ）  プリンタ
１８  ルータ
２０  ＣＰＵ
２２  ＲＡＭ
２４  ＲＯＭ
２６  ハードディスクドライブ
２８  印刷機構部
３０  通信インターフェース
【図１】
2010113401.tif 000003
【図２】
2010113401.tif 000004
【図３】
2010113401.tif 000005
【図４】
2010113401.tif 000006
【図５】
2010113401.tif 000007
【図６】
2010113401.tif 000008
【図７】
2010113401.tif 000009
【図８】
2010113401.tif 000010
【図９】
2010113401.tif 000011