(57)【要約】【課題】  デバイスから管理サーバに所定の監視情報を送信するデバイス管理システムにおいて、デバイスから管理サーバへのアクセス頻度を低減すること。【解決手段】  所定のネットワークに接続されるデバイスに内蔵され、デバイスに関する所定の監視情報を、ネットワークに接続された管理サーバに送信するデバイス監視制御装置であって、監視情報を記憶し、予め設定されたタイミングで、管理サーバに送信すべき監視情報が記憶されているか否かを判断する。そして、送信すべき監視情報が記憶されていると判断された場合において、デバイス及びネットワークに接続される他のデバイスとの中から、所定の条件に基づいて、代理デバイスを決定する。さらに、他のデバイスが代理デバイスに決定した場合には、決定した他のデバイスに、デバイスの送信すべき監視情報及び他のデバイスの送信すべき監視情報を取りまとめて、管理サーバに送信させるための通知を行う。【選択図】        図４
2006215974.tif 000002
【特許請求の範囲】
【請求項１】
所定のネットワークに接続されるデバイスに内蔵され、前記デバイスに関する所定の監視情報を、前記ネットワークに接続された管理サーバに送信するデバイス監視制御装置であって、
前記監視情報を記憶する監視情報記憶部と、
予め設定されたタイミングで、前記監視情報記憶部に、前記管理サーバに送信すべき前記監視情報が記憶されているか否かを判断する判断部と、
前記判断部によって、前記監視情報記憶部に、前記送信すべき監視情報が記憶されていると判断された場合において、前記デバイス及び前記ネットワークに接続される他のデバイスとの中から、所定の条件に基づいて、代理デバイスを決定する代理デバイス決定部と、
を備え、
前記他のデバイスが前記代理デバイスに決定した場合には、決定した前記他のデバイスに、前記デバイスの前記送信すべき監視情報及び前記他のデバイスの送信すべき監視情報を取りまとめて、前記管理サーバに送信させるための通知を行うことを特徴とするデバイス監視制御装置。
【請求項２】
請求項１に記載のデバイス監視制御装置において、
前記代理デバイス決定部は、
前記所定の条件として、
前記デバイス及び前記他のデバイスにおける前記送信すべき監視情報の量、または、前記デバイス及び前記他のデバイスにおける印刷ジョブの量に基づいて、前記代理デバイスを決定することを特徴とするデバイス監視制御装置。
【請求項３】
請求項１または請求項２に記載のデバイス監視制御装置において、
前記代理デバイス決定部は、
前記判断部によって、前記監視情報記憶部に、前記送信すべき監視情報が記憶されていないと判断された場合には、前記代理デバイスを決定しないことを特徴とするデバイス監視制御装置。
【請求項４】
請求項１または請求項２に記載のデバイス監視制御装置において、
前記代理デバイス決定部が、自身が内蔵される前記デバイスを前記代理デバイスに決定した場合、または、前記他のデバイスから前記代理デバイスに決定した旨の通知を受けた場合において、前記他のデバイスから、該他のデバイスが保持する前記送信すべき監視情報を収集する監視情報収集部と、
収集された前記監視情報、および、前記監視情報記憶部に記憶された前記送信すべき監視情報を、前記管理サーバに送信する送信部と、
を備えることをデバイス監視制御装置。
【請求項５】
請求項４に記載のデバイス監視制御装置において、
前記デバイス監視制御装置が内蔵された前記デバイスにおいて、所定のイベントが発生したか否かを判断するイベント発生判断部を備え、
前記監視情報収集部は、さらに、
前記イベント発生判断部によって、前記デバイスにおいて、前記所定のイベントが発生したと判断された場合には、前記他のデバイスから、該他のデバイスが保持する前記送信すべき監視情報を収集し、
前記送信部は、さらに、
収集された前記監視情報、および、前記監視情報記憶部に記憶された前記送信すべき監視情報を、前記管理サーバに送信することを特徴とするデバイス監視制御装置。
【請求項６】
請求項４または請求項５に記載のデバイス監視制御装置において、
前記デバイス監視制御装置が内蔵された前記デバイスを識別するための識別情報を記憶する識別情報記憶部を備え、
前記監視情報収集部は、さらに、
前記他のデバイスから、該他のデバイスを識別するための識別情報を収集し、
前記送信部は、
前記収集された監視情報、および、前記監視情報記憶部に記憶された前記送信すべき監視情報を、前記収集された識別情報、および、前記識別情報記憶部に記憶された識別情報とそれぞれ対応付けて、前記管理サーバに送信することを特徴とするデバイス監視制御装置。
【請求項７】
請求項４ないし請求項６のいずれかに記載のデバイス監視制御装置において、
前記収集された監視情報、および、前記監視情報記憶部に記憶された前記送信すべき監視情報を、一体的に記録した監視情報ファイルを作成する監視情報ファイル作成部を備え、
前記送信部は、前記監視情報ファイルを、前記管理サーバに送信することを特徴とするデバイス監視制御装置。
【請求項８】
請求項４ないし請求項７のいずれかに記載のデバイス監視制御装置において、
前記管理サーバから、前記監視情報の受信が完了したことを示す受信完了応答を受け付けるサーバ受信完了応答受付部と、
前記受信完了応答に応じて、前記監視情報記憶部に記憶されている、前記管理サーバに送信済みの前記監視情報を削除する監視情報削除部と、
を備えることを特徴とするデバイス監視制御装置。
【請求項９】
請求項８記載のデバイス監視制御装置であって、
前記送信部は、さらに、
前記受信完了応答に応じて、前記監視情報を収集した前記他のデバイスに、前記収集済みの監視情報の削除要求を送信することを特徴とするデバイス監視制御装置。
【請求項１０】
請求項１記載のデバイス監視制御装置において、
前記他のデバイスから、前記送信すべき監視情報の送信要求を受け付ける送信要求受付部を備え、
受け付けた前記送信要求に応じて、前記監視情報記憶部に記憶された前記送信すべき監視情報を、前記送信要求の送信元の前記他のデバイスに送信することを特徴とするデバイス監視制御装置。
【請求項１１】
請求項１０記載のデバイス監視制御装置において、
前記送信すべき監視情報を受信した前記他のデバイスから、前記監視情報の受信が完了したことを示す受信完了応答を受け付けるデバイス受信完了応答受付部と、
前記受信完了応答に応じて、前記監視情報記憶部に記憶されている、前記他のデバイスに送信済みの監視情報を削除する監視情報削除部と、
を備えることを特徴とするデバイス監視制御装置。
【請求項１２】
請求項１０記載のデバイス監視制御装置において、
前記送信すべき監視情報を受信した前記他のデバイスから、該他のデバイスに送信済みの前記監視情報の削除要求を受け付ける削除要求受付部と、
前記削除要求に応じて、前記監視情報記憶部に記憶されている、前記他のデバイスに送信済みの監視情報を削除する監視情報削除部と、
を備えることを特徴とするデバイス監視制御装置。
【請求項１３】
ネットワークに接続されるデバイスであって、
請求項１ないし１２のいずれかに記載のデバイス監視制御装置を備えることを特徴とするデバイス。
【請求項１４】
第１のデバイスと、少なくとも第２のデバイスを含む他のデバイスと、所定の管理サーバとを、所定のネットワークを介して、互いに接続することによって構成されたデバイス管理システムであって、
前記第１のデバイスは、該第１のデバイスに関する所定の監視情報を記憶する監視情報記憶部を備えており、
前記第１のデバイスは、
予め設定されたタイミングで、前記監視情報記憶部に、前記管理サーバに送信すべき前記監視情報が記憶されているか否かを判断し、
前記監視情報記憶部に、前記送信すべき監視情報が記憶されていると判断した場合において、前記第１のデバイス及び前記他のデバイスとの中から、所定の条件に基づいて、代理デバイスを決定し、
前記他のデバイスのうちの第２のデバイスを前記代理デバイスに決定した場合には、決定した前記第２のデバイスに代理デバイスに決定した旨を通知し、
前記第２のデバイスは、
前記第１のデバイスから前記代理デバイスに決定した通知を受けた場合には、
少なくとも前記第１のデバイスに、前記第１のデバイスが保持する前記送信すべき監視情報を送信するように求める送信要求を送信し、
前記第１のデバイスは、
前記第２のデバイスからの前記送信要求を受信した場合には、
前記監視情報記憶部に記憶されている前記送信すべき監視情報を前記第２のデバイスに送信し、
前記第２のデバイスは、
前記第１のデバイスから送信されてくる前記監視情報を受信し、受信した前記監視情報と自ら保持する送信すべき監視情報とを、前記管理サーバに送信することを特徴とするデバイス管理システム。
【請求項１５】
所定のネットワークに接続されるデバイスに内蔵され、監視情報記憶部に記憶された前記デバイスに関する所定の監視情報を前記ネットワークに接続された管理サーバに送信するデバイス監視制御装置の制御方法であって、
予め設定されたタイミングで、前記監視情報記憶部に、前記サーバに送信すべき前記監視情報が記憶されているか否かを判断する工程と、
前記監視情報記憶部に、前記送信すべき監視情報が記憶されていると判断した場合において、前記デバイス及び前記ネットワークに接続される他のデバイスとの中から、所定の条件に基づいて、代理デバイスを決定する工程と、
前記他のデバイスが前記代理デバイスに決定した場合には、決定した前記他のデバイスに、前記デバイスの前記送信すべき監視情報及び前記他のデバイスの送信すべき監視情報を取りまとめて、前記管理サーバに送信させるための通知を行う工程と、
を備えることを特徴とする制御方法。
【請求項１６】
所定の監視情報を記憶する監視情報記憶部を備える第１のデバイスと、少なくとも第２のデバイスを含む他のデバイスと、所定の管理サーバとを、所定のネットワークを介して、互いに接続することによって構成されたデバイス管理システムの制御方法であって、
前記第１のデバイスにおいて、予め設定されたタイミングで、前記監視情報記憶部に、前記管理サーバに送信すべき前記監視情報が記憶されているか否かを判断し、前記監視情報記憶部に、前記送信すべき監視情報が記憶されていると判断した場合において、前記第１のデバイス及び前記他のデバイスとの中から、所定の条件に基づいて、代理デバイスを決定する工程と、
前記他のデバイスのうちの第２のデバイスが前記代理デバイスに決定された場合には、決定した前記第２のデバイスに代理デバイスに決定した旨を通知する工程と、
前記第２のデバイスにおいて、前記第１のデバイスから前記代理デバイスに決定した通知を受けた場合には、少なくとも前記第１のデバイスに、前記第１のデバイスが保持する前記送信すべき監視情報を送信するように求める送信要求を送信する工程と、
前記第１のデバイスにおいて、前記第２のデバイスからの前記送信要求を受信した場合には、前記監視情報記憶部に記憶されている前記送信すべき監視情報を前記第２のデバイスに送信する工程と、
前記第２のデバイスにおいて、前記第１のデバイスから送信されてくる前記監視情報を受信し、受信した前記監視情報と自ら保持する送信すべき監視情報とを、前記管理サーバに送信する工程と、
を備えることを特徴とする制御方法。
【請求項１７】
所定のネットワークに接続されるデバイスに内蔵され、監視情報記憶部に記憶される前記デバイスに関する所定の監視情報を、前記ネットワークに接続された管理サーバに送信するデバイス監視制御装置を制御するためのコンピュータプログラムであって、
予め設定されたタイミングで、前記監視情報記憶部に、前記管理サーバに送信すべき前記監視情報が記憶されているか否かを判断する機能と、
前記監視情報記憶部に、前記送信すべき監視情報が記憶されていると判断された場合において、前記デバイス及び前記ネットワークに接続される他のデバイスとの中から、所定の条件に基づいて、代理デバイスを決定する機能と、
前記他のデバイスが前記代理デバイスに決定された場合には、決定した前記他のデバイスに、前記デバイスの前記送信すべき監視情報及び前記他のデバイスの送信すべき監視情報を取りまとめて、前記管理サーバに送信させるための通知を行う機能と、
をコンピュータに実現させるためのコンピュータプログラム。
【請求項１８】
請求項１７記載のコンピュータプログラムをコンピュータ読み取り可能に記録した記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークに接続されたデバイスの監視制御技術に関するものである。
【背景技術】
【０００２】
近年、インターネットや、ローカルエリアネットワークなどのネットワーク技術の普及に伴い、ネットワークに接続されたプリンタなどの複数のデバイスを、ネットワークを介して接続された管理サーバによって管理するデバイス管理システムが提案されている（例えば、下記特許文献参照）。このデバイス管理システムでは、ネットワークに接続された各デバイスは、例えば、各デバイスに内蔵されたネットワークボードによって、デバイスの動作状態など、デバイスに関する所定の監視情報を取得し、それぞれ個別に管理サーバに送信する。監視情報としては、例えば、デバイスをプリンタとした場合、印刷枚数、インクやトナーなどの使用量や、残量、エラー情報等が挙げられる。
【０００３】
【特許文献１】特開２００４−１８５３５１号公報
【特許文献２】特開２００２−１８９６３８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
上述したデバイス管理システムにおいて、管理サーバと、デバイスとの間に、ファイアウォールが設置されている場合には、管理サーバが主体となって、管理サーバから各デバイスに監視情報の送信を要求し、各デバイスから監視情報の収集を行うことができない場合があった。また、各デバイスが主体となって、管理サーバからの要求によらずに、管理サーバに監視情報を送信する場合、管理サーバの管理対象となるデバイスの数が膨大になると、多数のデバイスが、管理サーバに一斉にアクセスして、それぞれ監視情報を一斉に送信し、管理サーバにおける監視情報の処理が滞ったり、不能になったりするおそれがあった。このような課題は、プリンタに限らず、ネットワークに接続された種々のデバイスを、管理サーバによって管理するデバイス管理システムにおいて、共通の課題である。
【０００５】
本発明は、上述の課題を解決するためになされたものであり、デバイスから管理サーバに所定の監視情報を送信するデバイス管理システムにおいて、デバイスから管理サーバへのアクセス頻度を低減することを目的とする。
【課題を解決するための手段】
【０００６】
上記目的の少なくとも一部を達成するために、本発明のデバイス監視制御装置は、
所定のネットワークに接続されるデバイスに内蔵され、前記デバイスに関する所定の監視情報を、前記ネットワークに接続された管理サーバに送信するデバイス監視制御装置であって、
前記監視情報を記憶する監視情報記憶部と、
予め設定されたタイミングで、前記監視情報記憶部に、前記管理サーバに送信すべき前記監視情報が記憶されているか否かを判断する判断部と、
前記判断部によって、前記監視情報記憶部に、前記送信すべき監視情報が記憶されていると判断された場合において、前記デバイス及び前記ネットワークに接続される他のデバイスとの中から、所定の条件に基づいて、代理デバイスを決定する代理デバイス決定部と、
を備え、
前記他のデバイスが前記代理デバイスに決定した場合には、決定した前記他のデバイスに、前記デバイスの前記送信すべき監視情報及び前記他のデバイスの送信すべき監視情報を取りまとめて、前記管理サーバに送信させるための通知を行うことを要旨とする。
【０００７】
本発明のデバイス監視制御装置は、ネットワークに接続されるデバイスに、例えば、ネットワークカードや、ネットワークボードとして内蔵される。デバイスには、例えば、プリンタや、スキャナや、プロジェクタや、オーディオ装置や、家電機器や、クライアントコンピュータや、ＰＤＡ（Personal Digital Assistance）など、ネットワークに接続されて利用される種々の装置が含まれる。また、「予め設定されたタイミング」とは、後述する代理デバイスを決定すべく設定されたタイミングである。以下、このタイミングを、代理デバイス決定時刻とも呼ぶ。「管理サーバに送信すべき監視情報」としては、例えば、サーバに未送信の監視情報が挙げられる。
【０００８】
上記構成のデバイス監視制御装置によれば、代理デバイス決定時刻になった際において、監視情報記憶部に、管理サーバに送信すべき監視情報が記憶されている場合に、自らが内蔵されるデバイスと他のデバイスとの中から、所定の条件に基づき、代理デバイスを決定するようにしている。そして、代理デバイスに他のデバイスが決まった場合には、決定した他のデバイスに、デバイスの送信すべき監視情報及び他のデバイスの送信すべき監視情報を取りまとめて、管理サーバに送信させるための通知を行うようにしている。この場合、デバイス監視制御装置から上記通知を受けた他のデバイスは、代理デバイスとして、上記デバイスの送信すべき監視情報及び他のデバイスの送信すべき監視情報を取りまとめて、管理サーバに送信する。言い換えれば、デバイス監視制御装置は、代理デバイス決定時刻になっても、監視情報記憶部に、管理サーバに送信すべき監視情報が記憶されていない場合には、代理デバイスの決定を行わない。従って、このようにすれば、代理デバイス決定時刻になっても、代理デバイスを決定しない場合を生じさせることができる。その結果、代理デバイスによる管理サーバへの監視情報の送信が行われない場合を生じさせることができるので、デバイス監視制御装置（を内蔵したデバイス）または他のデバイスからの管理サーバへのアクセス頻度を低減させることができる。
【０００９】
なお、後述する実施例のようにデバイスとしてプリンタを用いる場合には、代理デバイスを、特に、代理プリンタと呼ぶ。さらに、この場合、代理デバイス決定時刻を代理プリンタ決定時刻と呼ぶ。
【００１０】
上記デバイス監視制御装置において、
前記代理デバイス決定部は、
前記所定の条件として、
前記デバイス及び前記他のデバイスにおける前記送信すべき監視情報の量、または、前記デバイス及び前記他のデバイスにおける印刷ジョブの量に基づいて、前記代理デバイスを決定するようにしてもよい。
【００１１】
この場合、例えば、デバイス及び他のデバイスにおいて、送信すべき監視情報が最も多いデバイスまたは他のデバイスを代理デバイスとして決定するようにしてもよい。このようにすれば、最も多い監視情報を保持するデバイスが代理デバイスとなるので、代理デバイスとして、自身以外のデバイスから送信すべき監視情報を収集する場合において、収集する監視情報を少なくすることができる。その結果、ネットワークのトラフィックを低減させることができる。また、例えば、デバイス及び他のデバイスにおいて、送信すべき監視情報が最も少ないデバイスまたは他のデバイスを代理デバイスとして決定するようにしてもよい。一般的に、監視情報の量が少ないデバイスは、比較的に処理能力に余裕があるデバイスであると考えられるので、このようにすれば、代理デバイスに決定したデバイスまたは他のデバイスは、効率的に代理デバイスとしての機能を果たすことができる。さらに、例えば、デバイス及び他のデバイスにおいて、印刷ジョブの保留量が最も少ないデバイスまたは他のデバイスを代理デバイスとして決定するようにしてもよい。このようにすれば、代理デバイスとして決定したデバイスまたは他のデバイスは、比較的に処理能力に余裕があると考えられるので、効率的に代理デバイスとしての機能を果たすことができる。
【００１２】
上記デバイス監視制御装置において、
前記代理デバイス決定部は、
前記判断部によって、前記監視情報記憶部に、前記送信すべき監視情報が記憶されていないと判断された場合には、前記代理デバイスを決定しないようにしてもよい。
【００１３】
このようにすれば、デバイス監視制御装置から管理サーバへのアクセス頻度を低減させることができる。
【００１４】
上記デバイス監視制御装置において、
前記代理デバイス決定部が、自身が内蔵される前記デバイスを前記代理デバイスに決定した場合、または、前記他のデバイスから前記代理デバイスに決定した旨の通知を受けた場合において、前記他のデバイスから、該他のデバイスが保持する前記送信すべき監視情報を収集する監視情報収集部と、
収集された前記監視情報、および、前記監視情報記憶部に記憶された前記送信すべき監視情報を、前記管理サーバに送信する送信部と、
を備えるようにしてもよい。
【００１５】
このようにすれば、デバイス監視制御装置は、自ら代理デバイスとして機能することができる。
【００１６】
上記デバイス監視制御装置において、
前記デバイス監視制御装置が内蔵された前記デバイスにおいて、所定のイベントが発生したか否かを判断するイベント発生判断部を備え、
前記監視情報収集部は、さらに、
前記イベント発生判断部によって、前記デバイスにおいて、前記所定のイベントが発生したと判断された場合には、前記他のデバイスから、該他のデバイスが保持する前記送信すべき監視情報を収集し、
前記送信部は、さらに、
収集された前記監視情報、および、前記監視情報記憶部に記憶された前記送信すべき監視情報を、前記管理サーバに送信するようにしてもよい。
【００１７】
所定のイベントとしては、例えば、管理サーバへの通知に緊急性を有する重大なイベントが挙げられる。この重大なイベントとしては、例えば、デバイスをプリンタとした場合、プリントエンジンの故障や、プリントコントローラにおいて色調整が行えないことなどが挙げられる。このようにすれば、デバイス監視制御装置から管理サーバへのアクセス頻度を低減するとともに、デバイスにおいて、例えば、管理サーバへの通知に緊急性を有するイベントが発生したときには、これを速やかに管理サーバに通知することができる。
【００１８】
上記デバイス監視制御装置において、
前記デバイス監視制御装置が内蔵された前記デバイスを識別するための識別情報を記憶する識別情報記憶部を備え、
前記監視情報収集部は、さらに、
前記他のデバイスから、該他のデバイスを識別するための識別情報を収集し、
前記送信部は、
前記収集された監視情報、および、前記監視情報記憶部に記憶された前記送信すべき監視情報を、前記収集された識別情報、および、前記識別情報記憶部に記憶された識別情報とそれぞれ対応付けて、前記管理サーバに送信するようにしてもよい。
【００１９】
識別情報としては、例えば、デバイスに付与された名前や、ＭＡＣアドレスや、ＩＰアドレスや、製造番号などを用いることができる。本発明によって、管理サーバ側で、各監視情報を出力したデバイスを容易に特定することができる。
【００２０】
上記デバイス監視制御装置において、
前記収集された監視情報、および、前記監視情報記憶部に記憶された前記送信すべき監視情報を、一体的に記録した監視情報ファイルを作成する監視情報ファイル作成部を備え、
前記送信部は、前記監視情報ファイルを、前記管理サーバに送信するようにしてもよい。
【００２１】
このようにすれば、複数のデバイスの監視情報を、管理サーバに一度に送信することができるので、ネットワークトラフィックの増大を抑制することができる。
【００２２】
上記デバイス監視制御装置において、
前記管理サーバから、前記監視情報の受信が完了したことを示す受信完了応答を受け付けるサーバ受信完了応答受付部と、
前記受信完了応答に応じて、前記監視情報記憶部に記憶されている、前記管理サーバに送信済みの前記監視情報を削除する監視情報削除部と、
を備えるようにしてもよい。
【００２３】
このようにすれば、監視情報記憶部に記憶されている監視情報は、全て管理サーバに送信すべき監視情報となるので、判断部は、監視情報記憶部に、管理サーバに送信すべき監視情報が記憶されているか否かを容易に判断することができる。
【００２４】
上記デバイス監視制御装置において、
前記送信部は、さらに、
前記受信完了応答に応じて、前記監視情報を収集した前記他のデバイスに、前記収集済みの監視情報の削除要求を送信するようにしてもよい。
【００２５】
このようにすれば、他のデバイスは、上記デバイス監視制御装置から受信した削除要求に従って、収集済みの監視情報を削除することができる。そして、他のデバイスが保持する監視情報は、全て管理サーバに送信すべき監視情報となるので、他のデバイスは、管理サーバに送信すべき監視情報を保持しているか否かを容易に判断することができる。
【００２６】
上記デバイス監視制御装置において、
前記他のデバイスから、前記送信すべき監視情報の送信要求を受け付ける送信要求受付部を備え、
受け付けた前記送信要求に応じて、前記監視情報記憶部に記憶された前記送信すべき監視情報を、前記送信要求の送信元の前記他のデバイスに送信する
【００２７】
このようにすれば、上記デバイス監視制御装置は、他のデバイスから受け付けた送信要求に従って、送信すべき監視情報を、他のデバイスに送信することができる。
【００２８】
上記デバイス監視制御装置において、
前記送信すべき監視情報を受信した前記他のデバイスから、前記監視情報の受信が完了したことを示す受信完了応答を受け付けるデバイス受信完了応答受付部と、
前記受信完了応答に応じて、前記監視情報記憶部に記憶されている、前記他のデバイスに送信済みの監視情報を削除する監視情報削除部と、
を備えるようにしてもよい。
【００２９】
このようにすれば、デバイス監視制御装置は、他のデバイスから受け付けた受信完了応答によって、他のデバイスに送信済みの監視情報を削除することができる。
【００３０】
上記デバイス監視制御装置において、
前記送信すべき監視情報を受信した前記他のデバイスから、該他のデバイスに送信済みの前記監視情報の削除要求を受け付ける削除要求受付部と、
前記削除要求に応じて、前記監視情報記憶部に記憶されている、前記他のデバイスに送信済みの監視情報を削除する監視情報削除部と、
を備えるようにしてもよい。
【００３１】
このようにすれば、デバイス監視制御装置は、他のデバイスから受け付けた削除要求に従って、他のデバイスに送信済みの監視情報を削除することができる。
【００３２】
本発明は、デバイスの発明として構成することもできる。すなわち、
本発明のデバイスは、
ネットワークに接続されるデバイスであって、
上述したいずれかのデバイス監視制御装置を備えることを要旨とする。
【００３３】
こうすることによって、先に説明したデバイス監視制御装置と同様に、デバイスからサーバへのアクセス頻度を低減することができる。
【００３４】
本発明は、デバイス管理システムの発明として構成することもできる。すなわち、
第１のデバイスと、少なくとも第２のデバイスを含む他のデバイスと、所定の管理サーバとを、所定のネットワークを介して、互いに接続することによって構成されたデバイス管理システムであって、
前記第１のデバイスは、該第１のデバイスに関する所定の監視情報を記憶する監視情報記憶部を備えており、
前記第１のデバイスは、
予め設定されたタイミングで、前記監視情報記憶部に、前記管理サーバに送信すべき前記監視情報が記憶されているか否かを判断し、
前記監視情報記憶部に、前記送信すべき監視情報が記憶されていると判断した場合において、前記第１のデバイス及び前記他のデバイスとの中から、所定の条件に基づいて、代理デバイスを決定し、
前記他のデバイスのうちの第２のデバイスを前記代理デバイスに決定した場合には、決定した前記第２のデバイスに代理デバイスに決定した旨を通知し、
前記第２のデバイスは、
前記第１のデバイスから前記代理デバイスに決定した通知を受けた場合には、
少なくとも前記第１のデバイスに、前記第１のデバイスが保持する前記送信すべき監視情報を送信するように求める送信要求を送信し、
前記第１のデバイスは、
前記第２のデバイスからの前記送信要求を受信した場合には、
前記監視情報記憶部に記憶されている前記送信すべき監視情報を前記第２のデバイスに送信し、
前記第２のデバイスは、
前記第１のデバイスから送信されてくる前記監視情報を受信し、受信した前記監視情報と自ら保持する送信すべき監視情報とを、前記管理サーバに送信することを要旨とする。
【００３５】
本発明において、第１のデバイス、および、第２のデバイスには、先に説明した本発明のデバイス監視制御装置が内蔵されている。この場合、あるデバイス（第１のデバイス）において、代理デバイス決定時刻になり、監視情報記憶部に、管理サーバに送信すべき監視情報が記憶されている場合には、代理デバイスを決定する。代理デバイスが第２のデバイスに決定すると、そのデバイスに、代理デバイスに決定した旨を通知する。その通知を受けた第２のデバイスは、第２のデバイス以外のデバイスから監視情報を収集させ、自身の送信すべき監視情報と共に、収集した監視情報を管理サーバに送信する。従って、この第２のデバイスにおいて、代理デバイス決定時刻になった場合に、管理サーバに送信すべき監視情報が第２のデバイスの監視情報記憶部に記憶されていない場合が生じることがある。この場合には、第２のデバイスは、代理デバイス決定時刻になっても、代理デバイスの決定を行わないので、その結果、代理デバイスによって、各デバイスの送信すべき監視情報を取りまとめて、管理サーバに送信することが行われない。従って、管理サーバへのアクセス頻度を低減することができる。また、本発明では、監視情報を収集して、管理サーバに送信するデバイスを固定せずに、いずれのデバイスも監視情報を収集して、管理サーバに送信する代理デバイスとなりうるので、稼働中のデバイスが保持する監視情報を確実にサーバに送信することができる。
【００３６】
なお、本発明は、上記した装置発明の態様に限ることなく、上述したデバイス監視制御装置を制御するための方法や上述したデバイス管理システムを制御するための方法などの方法発明としての態様で実現することも可能である。さらには、それら方法や装置を構築するためのコンピュータプログラムとしての態様や、そのようなコンピュータプログラムを記録した記録媒体としての態様や、上記コンピュータプログラムを含み搬送波内に具現化されたデータ信号など、種々の態様で実現することも可能である。
【００３７】
また、本発明をコンピュータプログラムまたはそのプログラムを記録した記録媒体等として構成する場合には、上記装置の動作を制御するプログラム全体として構成するものとしてもよいし、本発明の機能を果たす部分のみを構成するものとしてもよい。
【発明を実施するための最良の形態】
【００３８】
以下、本発明の実施の形態について、実施例に基づき以下の順序で説明する。
Ａ．デバイス管理システムの構成：
Ｂ．第１実施例：
Ｂ１．プリンタの構成：
Ｂ２．プリンタの動作処理：
Ｂ３．ＦＴＰコマンド処理：
Ｂ４．代理プリンタ決定処理：
Ｂ５．アップロード処理：
Ｃ．第２実施例：
Ｄ．第３実施例：
Ｅ．第４実施例：
Ｆ．変形例：
【００３９】
Ａ．デバイス管理システムの構成：
図１は、本発明の一実施例としてのデバイス管理システム１０００の概略構成を示す説明図である。このデバイス管理システム１０００は、企業内のローカルエリアネットワークＬＡＮと、管理センタの管理サーバＳＶとを、インターネットＩＮＴを介して接続することによって構成されている。ローカルエリアネットワークＬＡＮと、インターネットＩＮＴとの間には、ファイアウォールＦＷが設置されており、インターネットＩＮＴ側からローカルエリアネットワークＬＡＮへのアクセスは禁止されている。図示した例では、管理サーバＳＶに接続されるローカルエリアネットワークＬＡＮの数は１つとしたが、これに限られず、任意に設定可能である。
【００４０】
企業内のローカルエリアネットワークＬＡＮには、パーソナルコンピュータＰＣや、複数のプリンタＰＲＴ＃１〜ＰＲＴ＃ｎが接続されている（以下、プリンタＰＲＴ＃１〜ＰＲＴ＃ｎを総称して、プリンタＰＲＴとも呼ぶ）。図示した例では、パーソナルコンピュータＰＣの数は１台としたが、これに限られず、任意に設定可能である。
【００４１】
パーソナルコンピュータＰＣには、文書作成プログラム等のアプリケーションプログラムや、プリンタＰＲＴの動作を制御するためのプリンタドライバなどがインストールされており、パーソナルコンピュータＰＣから出力された印刷ジョブは、パーソナルコンピュータＰＣで設定されたいずれかのプリンタＰＲＴに受け渡され、印刷される。
【００４２】
各プリンタＰＲＴ＃１〜ＰＲＴ＃ｎには、それぞれカスタムネットワークボードＣＮＢ＃１〜ＣＮＢ＃ｎが内蔵されている（以下、カスタムネットワークボードＣＮＢ＃１〜ＣＮＢ＃ｎを総称して、カスタムネットワークボードＣＮＢとも呼ぶ）。このカスタムネットワークボードＣＮＢは、ローカルエリアネットワークＬＡＮや、インターネットＩＮＴを介して、印刷ジョブや、後述する監視情報などの各種データをやり取りするためのネットワークインタフェースである。また、カスタムネットワークボードＣＮＢは、後述するように、プリンタＰＲＴの動作を、印刷ジョブごとに監視し、その監視結果である監視情報を、管理サーバＳＶに通知する機能を有している。監視情報には、例えば、印刷枚数や、トナーの使用量や、エラー情報などの種々のログデータが含まれる。カスタムネットワークボードＣＮＢは、本発明におけるデバイス監視制御装置に相当する。
【００４３】
管理センタの管理サーバＳＶは、プリンタＰＲＴに内蔵されたカスタムネットワークボードＣＮＢから通知された監視情報を、図示しないデータベースに格納する。また、管理サーバＳＶには、ディスプレイＤＰや、マウスＭＳや、キーボードＫＢが接続されており、管理担当者がデータベースに格納された監視情報を閲覧したり、プリンタＰＲＴを管理するための各種設定を行ったりすることができる。
【００４４】
本実施例のデバイス管理システム１０００の動作概要は、以下の通りである。上述したように、各プリンタＰＲＴが接続されているローカルエリアネットワークＬＡＮは、ファイアウォールＦＷを介してインターネットＩＮＴに接続されている。このため、管理サーバＳＶ側からは、ファイアウォールＦＷを越えて各プリンタＰＲＴ側へ接続を要求して、各プリンタＰＲＴに蓄積されている管理情報を取得することができない。そこで、本実施例では、各プリンタＰＲＴ側から、管理サーバＳＶに接続し、監視情報をアップロードする。
【００４５】
また、本実施例では、各プリンタＰＲＴのうち、或るプリンタＰＲＴが、他のプリンタＰＲＴから監視情報を収集して、収集した監視情報と自身の保持する監視情報とをまとめて、他のプリンタＰＲＴに代わって管理サーバＳＶに送信（アップロード）するようにしている。このプリンタＰＲＴを、以下では、代理プリンタとも呼ぶ。一方、監視情報を収集されるプリンタＰＲＴを、以下では、被代理プリンタとも呼ぶ。本実施例では、各プリンタＰＲＴのうち、所定条件を満たした１つのプリンタが、代理プリンタとして機能するようになっている。
【００４６】
すなわち、本実施例では、各プリンタＰＲＴの各カスタムネットワークボードＣＮＢには、代理プリンタを決定するための時刻（以下では、代理プリンタ決定時刻と呼ぶ。）がそれぞれ設定されており、各プリンタＰＲＴは、この代理プリンタ決定時刻になると、それぞれ代理プリンタを決定するかどうかの判断を行う。以下では、このように、代理プリンタを決定するプリンタを、代理プリンタ決定プリンタとも呼ぶ。
【００４７】
そして、代理プリンタ決定プリンタは、所定の条件を考慮し、代理プリンタを決定すべきと判断した場合には、自己を含むローカルエリアネットワークＬＡＮに接続されるプリンタＰＲＴの中から、所定の条件に基づいて、上述した代理プリンタを決定する。代理プリンタ決定プリンタは、代理プリンタを決定すると、決定した代理プリンタに、代理プリンタ決定コマンドを送信する。
【００４８】
一方、代理プリンタ決定プリンタから、代理プリンタ決定コマンドを受信したプリンタＰＲＴは、自身が新たな代理プリンタに決定したと認識し、代理プリンタとして機能する。すなわち、この新たな代理プリンタは、他のプリンタＰＲＴに監視情報の送信要求を送信し、その応答として、他のプリンタＰＲＴから監視情報を収集して、自ら保持する監視情報と、他のプリンタＰＲＴから収集した監視情報とを、管理サーバＳＶにアップロードする。このように、本実施例のデバイス管理システム１０００において、他のプリンタＰＲＴから、監視情報を収集して、管理サーバＳＶにアップロードするプリンタＰＲＴ（代理プリンタ）は、固定されておらず、各プリンタＰＲＴの動作状況に応じて入れ替わる。なお、代理プリンタ決定プリンタは、自らが代理プリンタに決定した場合には、代理プリンタ決定コマンドは送信せず、自身が新たな代理プリンタとして機能する。図１に示した例では、プリンタＰＲＴ＃１が代理プリンタとして機能している場合の監視情報の流れを、破線矢印によって示している。これらの動作の詳細については、後述する。
【００４９】
また、本実施例では、各プリンタの各カスタムネットワークボードＣＮＢには、以下のごとく、上述の代理プリンタ決定時刻が設定されている。すなわち、或るプリンタＰＲＴにおいて、プリンタＰＲＴの電源が投入されてから所定の待ち時間αが経過すると、最初の代理プリンタ決定時刻となり、それ以降は、前の代理プリンタ決定時刻から周期的な待ち時間βが経過するたびに次の代理プリンタ決定時刻となる。このように、各プリンタの各カスタムネットワークボードＣＮＢの代理プリンタ決定時刻は、周期的に設定されており、すなわち、代理プリンタの決定も周期的に繰り返し行われる。なお、この待ち時間αと、待ち時間βは、プリンタＰＲＴに予め設定されていたり、ユーザが手動で行うようにしてもよいし、乱数を用いたり、管理サーバＳＶ側で決められた値を、管理サーバＳＶからダウンロードするようにしてもよい。
【００５０】
Ｂ．第１実施例：
Ｂ１．プリンタの構成：
図２は、プリンタＰＲＴの構成を示す説明図である。プリンタＰＲＴは、印刷を実行するプリンタ本体１００と、カスタムネットワークボードＣＮＢとを備えている。そして、プリンタ本体１００は、プリンタエンジン１１０と、プリンタコントローラ１２０とを備えている。
【００５１】
プリンタコントローラ１２０は、図示しないＣＰＵや、ＲＡＭや、ＲＯＭを備えるコンピュータであり、パーソナルコンピュータＰＣから、カスタムネットワークボードＣＮＢを介して印刷ジョブを受け取り、プリンタエンジン１１０を制御して、印刷を実行させる。また、プリンタコントローラ１２０は、監視部１２２を備えており、プリンタ本体１００に関する種々の監視情報を収集して、ＭＩＢ（Management Information Base）の形式で保存している。ＭＩＢには、プリンタ本体１００に関して予め規格で統一的に規定されている情報や、製造者によって独自に規定されている情報が含まれる。
【００５２】
カスタムネットワークボードＣＮＢは、ＣＰＵ１０と、メモリ２０と、タイマ３０とを備えている。メモリ２０は、揮発性メモリと、不揮発性メモリの両方を含んでいる。また、ＣＰＵ１０は、主制御部１５と、通信制御部１８とを備えている。これらの機能ブロックは、ＣＰＵ１０が、図示しないＲＯＭに記憶されている所定のコンピュータプログラムを、読み出して実行することによって、ソフトウェア的に構築されている。これらの機能ブロックの少なくとも一部を、ハードウェア的に構成するようにしてもよい。
【００５３】
主制御部１５は、メモリ２０への種々のデータの書き込みや、読み出しや、削除を行う。メモリ２０に記憶されるデータには、後述するように、プリンタコントローラ１２０から取得した自らの監視情報を記録した監視情報ファイルや、各プリンタＰＲＴから収集した監視情報ファイルや、管理サーバＳＶに送信すべきアップロードファイルなどが含まれる。また、主制御部１５は、後述する動作処理や、ＦＴＰコマンド処理や、代理プリンタ決定処理や、アップロード処理において、種々の判断を行う。この主制御部１５は、請求項における判断部と、代理デバイス決定部と、イベント発生判断部と、監視情報削除部とに相当する。また、メモリ２０は、請求項における監視情報記憶部と、識別情報記憶部とに相当する。
【００５４】
また、主制御部１５は、アップロードファイル作成部１６としても機能する。このアップロードファイル作成部１６は、メモリ２０に設定されたスプールディレクトリ２２に保存されている監視情報ファイルと、ｏｔｈｅｒディレクトリ２４に保存されている監視情報ファイルとを合成して、管理サーバＳＶに送信するためのアップロードファイルを作成する。アップロードファイル作成部１６は、請求における監視情報ファイル作成部に相当する。
【００５５】
通信制御部１８は、通信相手に応じて、通信プロトコルを切り換え、ローカルエリアネットワークＬＡＮや、インターネットＩＮＴを介して、パーソナルコンピュータＰＣや、他のプリンタＰＲＴや、管理サーバＳＶと通信を行い、種々のデータのやり取りを行う。なお、本実施例では、通信制御部１８は、管理サーバＳＶとは、ＨＴＴＰ（Hyper text transfer protocol）で通信を行い、他のプリンタＰＲＴとは、ＦＴＰ（File Transfer Protocol）で通信を行う。また、通信制御部１８は、プリンタコントローラ１２０とのデータのやり取りも行う。この場合、通信制御部１８は、例えば、ＳＮＭＰ（Simple Network Management Protocol）で通信を行う。通信制御部１８は、管理サーバＳＶとの通信を、セキュリティの確保のため、ＳＳＬ（Secure Socket Layer）を用いておこなうようにしてもよい。なお、通信制御部１８は、請求項における監視情報収集部と、送信部と、サーバ受信完了応答受付部と、デバイス受信完了応答受付部と、送信要求受付部と、削除要求受付部とに相当する。
【００５６】
タイマ３０は、プリンタＰＲＴの電源がオンされてからの時間を計測する。本実施例では、タイマ３０は、プリンタＰＲＴの電源がオンされてからの時間の計測、および、電源の投入回数のカウントを行う。
【００５７】
メモリ２０には、スプールディレクトリ２２と、ｏｔｈｅｒディレクトリ２４と、アップロードディレクトリ２６とが設定されている。スプールディレクトリ２２には、プリンタコントローラ１２０から受け取った監視情報が、ファイル形式で保存される。この監視情報ファイルは、管理サーバＳＶにアップロードすべき情報であるので、以下では、「アップロードすべき監視情報ファイル」とも呼ぶ。ｏｔｈｅｒディレクトリ２４には、他のプリンタＰＲＴから収集した監視情報ファイルが保存される。アップロードディレクトリ２６には、アップロードファイル作成部１６によって作成されたアップロードファイルが保存される。アップロードファイルは、管理サーバＳＶにアップロードされるファイルである。
【００５８】
図３は、アップロードファイルの生成について示す説明図である。図示するように、スプールディレクトリ２２には、監視情報ファイルＦａ１、Ｆａ２、Ｆａ３が保存されており、ｏｔｈｅｒディレクトリ２４には、監視情報ファイルＦｂ１、Ｆｂ２、Ｆｂ３、Ｆｃ１、Ｆｃ２、Ｆｃ３、...が保存されているものとする。これら各監視情報ファイルには、監視情報とともに、各プリンタＰＲＴの識別情報も記録されている。この識別情報としては、例えば、各プリンタＰＲＴに付与された名前や、ＭＡＣアドレスや、ＩＰアドレスや、製造番号などを用いることができる。また、各監視情報ファイルには、それぞれ監視情報ファイルが作成され、メモリ２０に記憶された時刻も記録されている。
【００５９】
アップロードファイル作成部１６は、図３に示すように、監視情報ファイルＦａ１、Ｆａ２、Ｆａ３と、監視情報ファイルＦｂ１、Ｆｂ２、Ｆｂ３、Ｆｃ１、Ｆｃ２、Ｆｃ３、...とを合成して、アップロードファイルＦｕを作成し、アップロードディレクトリ２６に保存する。こうすることによって、複数のプリンタＰＲＴの監視情報を、管理サーバＳＶに一度に送信することができるので、ネットワークトラフィックの増大を抑制することができる。また、各監視情報ファイルには、プリンタＰＲＴの識別情報も含まれているので、アップロードファイルＦｕを受信した管理サーバＳＶは、アップロードファイルＦｕの内容を解析することによって、各監視情報を出力したプリンタＰＲＴを容易に特定することができる。
【００６０】
Ｂ２．プリンタの動作処理：
図４は、プリンタＰＲＴの動作処理の流れを示すフローチャートである。
この動作処理は、各プリンタＰＲＴにおいて、電源がオンされてからオフされるまでの間、カスタムネットワークボードＣＮＢのＣＰＵ１０の各機能ブロックが継続して実行する処理である。
【００６１】
まず、通信制御部１８は、他のプリンタ、すなわち、代理プリンタから存在確認の問い合わせがあったかどうか、すなわち、ブロードキャストされたか否かを判断する（ステップＳ１００）。通信制御部１８は、ブロードキャストされた場合には（ステップＳ１００：ＹＥＳ）、自身が内蔵されたプリンタＰＲＴを被代理プリンタとして機能させ、ブロードキャストした代理プリンタに、自らの存在を示す応答を送信する（ステップＳ１１０）。ステップＳ１００の処理において、代理プリンタからブロードキャストされていない場合には（ステップＳ１００：ＮＯ）、ステップＳ１２０の処理に進む。
【００６２】
次に、通信制御部１８は、他のプリンタ、すなわち、代理プリンタからＦＴＰ接続要求を受信したか否かを判断する（ステップＳ１２０）。そして、通信制御部１８は、代理プリンタからＦＴＰ接続要求を受信した場合には（ステップＳ１２０：ＹＥＳ）、受信したＦＴＰコマンドに応じて、ＦＴＰコマンド処理を実行する（ステップＳ２００）。ＦＴＰコマンド処理が終了すると、被代理プリンタとしての役割も終了する。ＦＴＰコマンド処理については、後述する。ステップＳ１２０の処理において、代理プリンタからＦＴＰ接続要求を受信していない場合には（ステップＳ１２０：ＮＯ）、ステップＳ３００に進む。
【００６３】
次に、主制御部１５は、プリンタ本体１００において、重大なイベントが発生したか否かを判断する（ステップＳ３００）。重大なイベントとは、管理サーバＳＶへの通知に緊急性を有するイベントであり、例えば、プリンタエンジン１１０の故障や、プリンタコントローラ１２０において色調整が行えないことなどが挙げられる。この判断は、スプールディレクトリ２２に保存される監視情報ファイルの内容に基づいてなされる。主制御部１５は、プリンタ本体１００において、重大なイベントが発生したと判断した場合には（ステップＳ３００：ＹＥＳ）、自身が内蔵されるプリンタＰＲＴを代理プリンタとして機能させ、アップロード処理を実行する（ステップＳ６００）。このようにすれば、管理サーバＳＶへの通知に緊急性を有するイベントが発生したときには、これを速やかに管理サーバＳＶに通知することができる。アップロード処理については、後述する。アップロード処理が終了すると、代理プリンタとしての役割を終了し、ステップＳ１００の処理に戻る。
【００６４】
ステップＳ３００の処理において、主制御部１５は、プリンタ本体１００において、重大なイベントが発生していないと判断した場合には（ステップＳ３００：ＮＯ）、後述する代理プリンタコマンド受信しているかどうかを判断する（ステップＳ３５０）。主制御部１５は、代理プリンタコマンドを受信している場合には（ステップＳ３５０：ＹＥＳ）、自身が内蔵されるプリンタＰＲＴを代理プリンタとして機能させ、アップロード処理を実行する（ステップＳ６００）。アップロード処理については、後述する。アップロード処理が終了すると、代理プリンタとしての役割を終了し、ステップＳ１００の処理に戻る。
【００６５】
一方、主制御部１５は、代理プリンタコマンドを受信していない場合には（ステップＳ３５０：ＮＯ）、続いて、代理プリンタを決定する代理プリンタ決定処理を行う（ステップＳ４００）。この代理プリンタ決定処理についての詳細は、後述する。
【００６６】
続いて、主制御部１５は、この代理プリンタ決定処理において、自身が内蔵されるプリンタＰＲＴが代理プリンタに決定されたかどうかを判断する（ステップＳ５００）。主制御部１５は、自身が内蔵されるプリンタＰＲＴが代理プリンタに決定された場合には（ステップＳ５００：ＹＥＳ）、自身が内蔵されるプリンタＰＲＴを代理プリンタとして機能させ、アップロード処理を実行する（ステップＳ６００）。アップロード処理については、後述する。アップロード処理が終了すると、代理プリンタとしての役割を終了し、ステップＳ１００の処理に戻る。
【００６７】
主制御部１５は、自身が内蔵されるプリンタＰＲＴが代理プリンタに決定されていない場合には（ステップＳ５００：ＮＯ）、アップロード処理（ステップＳ６００）を行わず、ステップＳ１００の処理に戻る。
【００６８】
Ｂ３．ＦＴＰコマンド処理：
図５は、図４のステップ２００の処理におけるＦＴＰコマンド処理の流れを示す説明図である。この処理は、或るプリンタＰＲＴが被代理プリンタとして機能する場合に実行する処理である。この場合、被代理プリンタのＣＰＵ１０の各機能ブロックがこの処理を実行する。
【００６９】
或るプリンタＰＲＴが行う動作処理（図４）において、代理プリンタからＦＴＰ接続があると（ステップＳ１２０：ＹＥＳ）、まず、被代理プリンタとして、そのプリンタＰＲＴの通信制御部１８は、代理プリンタとのＦＴＰ接続が切断されたか否かを判断する（ステップＳ２１０）。ＦＴＰ接続が切断された場合には（ステップＳ２１０：ＹＥＳ）、このＦＴＰコマンド処理を終了し、動作処理にリターンする。
【００７０】
ステップＳ２１０の処理において、ＦＴＰ接続が切断されていない場合には（ステップＳ２１０：ＮＯ）、通信制御部１８は、代理プリンタから所定のＦＴＰコマンドを受信したか否かを判断する（ステップＳ２２０）。代理プリンタからＦＴＰコマンドを受信していない場合には（ステップＳ２２０：ＮＯ）、通信制御部１８は、ＦＴＰコマンドを受信するまで待機する。
【００７１】
ステップＳ２２０の処理において、代理プリンタからＦＴＰコマンドを受信した場合には（ステップＳ２２０：ＹＥＳ）、通信制御部１８は、受信したＦＴＰコマンドがファイル転送コマンド、ファイル削除コマンドおよびＦＴＰ終了コマンドのいずれであるかを判断する（ステップＳ２３０）。なお、通信制御部１８は、受信したＦＴＰコマンドが、これらのうちのいずれかのＦＴＰコマンドでない、他のＦＴＰコマンドの場合には、そのＦＴＰコマンドに基づいた処理を行う。例えば、他のＦＴＰコマンドとしては、パスワードの指定を求めるコマンドなどがある。そして、通信制御部１８は、次のＦＴＰコマンドを受信するまで待機する。
【００７２】
通信制御部１８は、受信したＦＴＰコマンドが、ファイル転送コマンドである場合には（ステップＳ２３０：ファイル転送）、スプールディレクトリ２２に保存されているアップロードすべき監視情報ファイルをコピーして、それをＦＴＰコマンドの送信元である代理プリンタへ送信する（ステップＳ２４０）。すなわち、通信制御部１８は、アップロードすべき監視情報ファイルを代理プリンタへ転送する。その後、通信制御部１８は、ステップＳ２１０の処理に戻る。
【００７３】
一方、受信したＦＴＰコマンドが、ファイル削除コマンドである場合には（ステップＳ２３０：ファイル削除）、主制御部１５は、スプールディレクトリ２２に保存されているアップロードすべき監視情報ファイルを削除する（ステップＳ２５０）。そして、通信制御部１８は、ＦＴＰコマンドの送信元である代理プリンタに、アップロードすべき監視情報ファイルの削除が完了したことを示す削除応答を送信する（ステップＳ２６０）。さらに、削除応答後、主制御部１５は、削除時刻Ｔｄをメモリ２０に保存する（ステップＳ２６５）。なお、この削除時刻Ｔｄは、後述する第３の実施例で、用いられる。その後、通信制御部１８は、ステップＳ２１０の処理に戻る。
【００７４】
また、通信制御部１８は、受信したＦＴＰコマンドが、ＦＴＰ終了コマンドである場合には（ステップＳ２３０：ＦＴＰ終了）、代理プリンタとのＦＴＰ接続を切断し（ステップＳ２７０）、このＦＴＰコマンド処理を終了し、動作処理にリターンする。そして、このプリンタＰＲＴは、被代理プリンタとしての役割を終了する。
【００７５】
Ｂ４．代理プリンタ決定処理：
図６は、図４のステップＳ４００の処理における代理プリンタ決定処理の流れを示すフローチャートである。この処理は、或るプリンタＰＲＴが、代理プリンタ決定時刻になり、所定の条件を満たした場合に、代理プリンタ決定プリンタとして機能し、ローカルエリアネットワークＬＡＮに接続されるプリンタＰＲＴの中から、代理プリンタを決定するための処理である。この場合、ＣＰＵ１０の各機能ブロックがこの処理を実行する。
【００７６】
代理プリンタ決定プリンタの主制御部１５は、まず、タイマ３０を参照して、代理プリンタ決定時刻になったかどうかを判断する（ステップＳ４２０）。主制御部１５は、代理プリンタ決定時刻になっていない場合には（ステップＳ４２０：ＮＯ）、代理プリンタを決定せず、動作処理（図４）のステップＳ１００の処理にリターンする。
【００７７】
主制御部１５は、代理プリンタ決定時刻になった場合には（ステップＳ４２０：ＹＥＳ）、続いて、スプールディレクトリ２２に、アップロードすべき監視情報ファイルが存在するか否かを判断する（ステップＳ４２５）。主制御部１５は、スプールディレクトリ２２に、アップロードすべき監視情報ファイルが存在しない場合には（ステップＳ４２５：ＮＯ）、代理プリンタを決定せず、動作処理（図４）のステップＳ１００の処理にリターンする。
【００７８】
主制御部１５が、スプールディレクトリ２２に、アップロードすべき監視情報ファイルが存在すると判断した場合には（ステップＳ４２５：ＹＥＳ）、続いて、通信制御部１８は、ローカルエリアネットワークＬＡＮに接続される他のプリンタＰＲＴの存在確認のためブロードキャストを行う（ステップＳ４３０）。
【００７９】
そして、通信制御部１８は、ブロードキャストにおいて、ブロードキャスト応答があった他のプリンタＰＲＴに対して、各プリンタＰＲＴに内蔵されるカスタムネットワークボードＣＮＢのスプールディレクトリに保存されているアップロードすべき監視情報ファイルのファイルサイズの問い合わせを行う（ステップＳ４４０）。代理プリンタ決定プリンタの通信制御部１８からこの問い合わせを受けた各プリンタＰＲＴの通信制御部は、問い合わせの応答として、代理プリンタ決定プリンタに、スプールディレクトリに保存されたアップロードすべき監視情報ファイルのファイルサイズを表わすファイルサイズ情報を送信する。
【００８０】
一方、代理プリンタ決定プリンタの通信制御部１８は、問い合わせ応答として、各プリンタＰＲＴからファイルサイズ情報を受信する（ステップＳ４５０）。そして、通信制御部１８が、ブロードキャスト応答があった全てのプリンタＰＲＴから、問い合わせ応答としてファイルサイズ情報を受信したと判断した場合（ステップＳ４６０：ＹＥＳ）、または、ブロードキャスト応答があった全てのプリンタＰＲＴから、問い合わせ応答としてファイルサイズ情報を受信していないが（ステップＳ４６０：ＮＯ）、所定の時間が経過したと判断した場合（ステップＳ４７０：ＹＥＳ）には、続いて、主制御部１５は、問い合わせ応答があったプリンタＰＲＴのうち、ファイルサイズ情報が表わす監視情報ファイルのファイルサイズが最も大きいプリンタＰＲＴを代理プリンタに決定する（ステップＳ４８０）。なお、通信制御部１８は、ブロードキャスト応答があった全てのプリンタＰＲＴから、問い合わせ応答としてファイルサイズ情報を受信しておらず、所定の時間が経過していない場合（ステップＳ４７０：ＮＯ）には、ステップＳ４５０の処理に戻り、ブロードキャスト応答があったプリンタＰＲＴからの問い合わせ応答を待つ。
【００８１】
続いて、通信制御部１８は、主制御部１５が代理プリンタとして決定したプリンタＰＲＴに、代理プリンタコマンドを送信する（ステップＳ４９０）。その後、動作処理（図４）にリターンする。
【００８２】
Ｂ５．アップロード処理：
図７、および、図８は、図４のステップ６００の処理におけるアップロード処理の流れを示すフローチャートである。この処理は、或るプリンタＰＲＴが代理プリンタとして機能する場合に実行する処理である。この場合、代理プリンタのＣＰＵ１０の各機能ブロックがこの処理を実行する。
【００８３】
まず、代理プリンタの通信制御部１８は、他のプリンタ、すなわち、ローカルエリアネットワークＬＡＮに接続されている全ての被代理プリンタに対して、存在確認のためのブロードキャストを行う（ステップＳ６１０）。そして、通信制御部１８は、ブロードキャストにおいて、ブロードキャスト応答があった被代理プリンタに対して、ＦＴＰ接続を行い、ＦＴＰコマンドであるファイル転送コマンドを送信する（ステップＳ６２０）。ファイル転送コマンドを受信した各被代理プリンタは、上述したＦＴＰコマンド処理（図５）を行い、各スプールディレクトリに保存されているアップロードすべき監視情報ファイルを代理プリンタへ転送する。
【００８４】
一方、代理プリンタの通信制御部１８は、各被代理プリンタから転送されてくるアップロードすべき監視情報ファイルを受信し、図３のごとく、ｏｔｈｅｒディレクトリ２４に保存する（ステップＳ６３０）。すなわち、各被代理プリンタから収集したアップロードすべき監視情報ファイルは、ｏｔｈｅｒディレクトリ２４に保存される。その後、通信制御部１８は、受信したアップロードすべき監視情報ファイルの送信元である被代理プリンタに、ＦＴＰ終了コマンドを送信し、ＦＴＰ接続を切断する（ステップＳ６３５）。そして、通信制御部１８は、ファイル転送コマンドを送信した（ブロードキャスト応答があった）全ての被代理プリンタから、アップロードすべき監視情報ファイルを受信した場合（ステップＳ６４０：ＹＥＳ）、または、ファイル転送コマンドを送信した（ブロードキャスト応答があった）すべての被代理プリンタから、アップロードすべき監視情報ファイルを受信していないが（ステップＳ６４０：ＮＯ）、所定の時間が経過した場合（ステップＳ６５０：ＹＥＳ）には、ステップＳ６７０の処理に進む。なお、代理プリンタの通信制御部１８は、ブロードキャスト応答があった全ての被代理プリンタから、アップロードすべき監視情報ファイルを受信しておらず（ステップＳ６４０：ＮＯ）、所定の時間が経過していない場合（ステップＳ６５０：ＮＯ）には、ステップＳ６３０の処理に戻り、ファイル転送コマンドを送信した被代理プリンタからのアップロードすべき監視情報が転送されてくるのを待つ。
【００８５】
ステップＳ６７０の処理において、アップロードファイル作成部１６は、図３のごとく、スプールディレクトリ２２に保存されているアップロードすべき監視情報ファイルと、ｏｔｈｅｒディレクトリ２４に保存されている監視情報ファイルとを合成して、アップロードファイルＦｕを作成して（ステップＳ６７０）、アップロードディレクトリ２６の保存し、このアップロードファイルＦｕを圧縮して、管理サーバＳＶにアップロードする（ステップＳ６８０）。なお、いずれの被代理プリンタからもブロードキャストに対する応答を受信がなかった場合や、各被代理プリンタから転送されてきたアップロードすべき監視情報ファイルがなかった場合では、アップロードファイル作成部１６は、被代理プリンタからアップロードすべき監視情報ファイルの収集を諦めて、スプールディレクトリ２２に保存されている自己のアップロードすべき監視情報ファイルのみを合成して、アップロードファイルＦｕを作成し、それを圧縮して、管理サーバＳＶにアップロードする。このようにすれば、代理プリンタ及び被代理プリンタのアップロードすべき監視情報を、管理サーバＳＶに一度にアップロード（送信）することができるので、ローカルエリアネットワークＬＡＮやインターネットＩＮＴのネットワークトラフィックの増大を抑制することができる。さらに、このようにすれば、代理プリンタ及び被代理プリンタのアップロードすべき監視情報をアップロードするために、代理プリンタのみが、管理サーバＳＶに接続すればよいので、被代理プリンタのそれぞれが管理サーバＳＶに接続する場合に比べて、接続に対する管理サーバＳＶの負担を軽減することができる。
【００８６】
一方、管理サーバＳＶは、アップロードが正常に行われた場合には、その受信完了応答を代理プリンタに送信する。
【００８７】
次に、代理プリンタの通信制御部１８は、アップロードに成功したか否かを判断する（ステップＳ６９０）。通信制御部１８は、この判断を、管理サーバＳＶから、アップロードに対する受信完了応答を受信したか否かに基づいて行う。通信制御部１８は、管理サーバＳＶから、アップロードに対する受信完了応答を受信した場合には、アップロードが成功したと判断し、受信完了応答を受信しない場合には、アップロードが失敗したと判断する。
【００８８】
ステップＳ６９０の処理において、アップロードに成功した場合（ステップＳ６９０：ＹＥＳ）には、通信制御部１８は、上述のステップＳ６３０の処理でアップロードすべき監視情報ファイルを受信した先の各被代理プリンタに対して、ＦＴＰ接続を行い、ファイル削除コマンドを送信する（ステップＳ７００）。ファイル削除コマンドを受信した各被代理プリンタは、上述したＦＴＰコマンド処理（図５）を行い、スプールディレクトリ２２に保存されたアップロードすべき監視情報ファイルを削除し、その後、代理プリンタへ削除応答を送信する（ステップＳ２６０）。このようにすれば、被代理プリンタのスプールディレクトリには、管理サーバＳＶに未送信の監視情報ファイルのみが残されるので、通信制御部１８は、後に、スプールディレクトリに未送信の監視情報ファイルが存在しているかどうかを容易に判断することができる。
【００８９】
一方、代理プリンタ決定プリンタの通信制御部１８は、各被代理プリンタからの削除応答を受信する（ステップＳ７０５）。その後、通信制御部１８は、受信した削除応答の送信元である被代理プリンタに、ＦＴＰ終了コマンドを送信し、ＦＴＰ接続を切断する（ステップＳ７０７）。そして、通信制御部１８は、ファイル削除コマンドを送信した全ての被代理プリンタから削除応答を受信した場合（ステップＳ７１０：ＹＥＳ）、または、ファイル削除コマンドを送信した全ての被代理プリンタから削除応答を受信していないが（ステップＳ７１０：ＮＯ）、所定の時間が経過した場合（ステップＳ７２０：ＹＥＳ）には、ステップＳ７４０の処理に進む。なお、代理プリンタの通信制御部１８は、ファイル削除コマンドを送信した全ての被代理プリンタから削除応答を受信しておらず（ステップＳ７１０：ＮＯ）、さらに、所定の時間が経過していない場合（ステップＳ７２０：ＮＯ）には、ステップＳ７０５の処理に戻り、ファイル削除コマンドを送信した被代理プリンタからの削除応答を待つ。
【００９０】
ステップＳ７４０の処理において、主制御部１５は、自身のスプールディレクトリ２２に保存されているアップロード済みの監視情報ファイルを削除する（ステップＳ７４０）。さらに、主制御部１５は、アップロードディレクトリ２６に保存されているアップロードファイルＦｕ、および、ｏｔｈｅｒディレクトリ２４に保存されている被代理プリンタから取得（受信）した監視情報ファイルを削除する（ステップＳ７５０）。
【００９１】
一方、ステップ６９０の処理において、アップロードに失敗した場合には（ステップＳ６９０：ＮＯ）、主制御部１５は、アップロードディレクトリ２６に保存されているアップロードファイルＦｕ、および、ｏｔｈｅｒディレクトリ２４に保存されている被代理プリンタから取得した監視情報ファイルを削除し（ステップＳ７５０）、スプールディレクトリ２２に保存されている監視情報ファイルは、いずれかのプリンタＰＲＴが代理プリンタとして、このアップロード処理を実行するときまで保持する。そして、アップロード処理を終了する。
【００９２】
以上のように説明した第１実施例のデバイス管理システム１０００では、各プリンタＰＲＴは、代理プリンタ決定処理（図６）において、代理プリンタ決定時刻になったときに、自己のスプールディレクトリ２２に、管理サーバＳＶに未送信のアップロードすべき監視情報ファイルが保存されている場合（ステップＳ４２５：ＹＥＳ）には、代理プリンタを決定し、そのプリンタＰＲＴに代理プリンタコマンドを送信するようにしている。代理プリンタコマンドを受信した代理プリンタは、被代理プリンタからアップロードすべき監視情報を収集し、自己のアップロードすべき監視情報と共に、管理サーバＳＶにアップロードする。言い換えれば、各プリンタＰＲＴは、代理プリンタ決定時刻になっても、自己のスプールディレクトリ２２に、管理サーバＳＶに未送信のアップロードすべき監視情報が保存されていなければ（ステップＳ４２５：ＮＯ）、代理プリンタの決定を行わない。従って、このようにすれば、代理プリンタ決定時刻になっても、代理プリンタを決定しない場合を生じさせることができる。その結果、代理プリンタによる管理サーバＳＶへの監視情報のアップロードが行われない場合を生じさせることができるので、各プリンタＰＲＴからの管理サーバへのアクセス頻度を低減させることができる。
【００９３】
また、第１実施例のデバイス管理システム１０００によれば、代理プリンタ決定処理（図６）において、ローカルエリアネットワークＬＡＮに接続され、ブロードキャストで応答があったプリンタＰＲＴの中から、それらのプリンタＰＲＴに内蔵されるカスタムネットワークボードＣＮＢのスプールディレクトリ２２に保存されているアップロードすべき監視情報ファイルのファイルサイズが最も大きいプリンタＰＲＴを、代理プリンタとして決定するようにしている。このようにすれば、最も大きいアップロードすべき監視情報ファイルを保持するプリンタが代理プリンタとなるので、代理プリンタとして、被代理プリンタからアップロードすべき監視情報ファイルを収集する場合において、収集する監視情報ファイルの量を軽減することができる。その結果、ローカルエリアネットワークＬＡＮ内のネットワークトラフィックを低減させることができる。
【００９４】
また、第１実施例のデバイス管理システム１０００によれば、代理プリンタを固定せずに、いずれのプリンタＰＲＴも代理プリンタとなりうる。そして、いずれかのプリンタＰＲＴが代理プリンタとなって、他のプリンタ（被代理プリンタ）が保持する監視情報を収集するので、それらを確実に管理サーバＳＶにアップロードすることができる。その結果、各プリンタＰＲＴからの管理サーバへのアクセス頻度を低減させることができる。
【００９５】
Ｃ．第２実施例：
第２実施例のデバイス管理システム１０００の構成は、第１実施例のデバイス管理システム１０００と同じである。また、第２実施例のプリンタＰＲＴの構成も、第１実施例のプリンタＰＲＴと同じである。ただし、第２実施例では、カスタムネットワークボードＣＮＢのＣＰＵ１０の各機能ブロックは、動作処理、代理プリンタ決定処理およびアップロード処理の一部において、第１実施例とは異なる処理を行う。以下、第１実施例と異なる点について説明する。
【００９６】
第２実施例では、代理プリンタの通信制御部１８は、後述するように、アップロード処理において、アップロードファイルＦｕの管理サーバＳＶへのアップロードが成功した場合に、被代理プリンタに対して、代理プリンタ決定延期要求を送信する。一方、被代理プリンタの通信制御部１８は、動作処理（図４）において、代理プリンタから代理プリンタ決定延期要求を受信したかどうかを判断し、代理プリンタから代理プリンタ決定延期要求を受信した場合には、主制御部１５は、タイマ３０を参照して、代理プリンタ決定延期要求を受信した時刻（以下、受信時刻Ｔｒと呼ぶ。）をメモリ２０に保存するようにしている。なお、この処理は、例えば、動作処理中のステップＳ２００の処理とステップＳ３００の処理の間に挿入される。
【００９７】
図９は、第２実施例における代理プリンタ決定処理の流れを示すフローチャートの一部を表わす図である。図９に示すフローチャートは、第１実施例における代理プリンタ決定処理（図６）において、ステップＳ４２０の処理の代わりに、挿入される処理である。
【００９８】
まず、代理プリンタ決定プリンタの通信制御部１８は、上述のごとく、動作処理において、他のプリンタＰＲＴ、すなわち、代理プリンタから代理プリンタ決定延期要求を受信しているか否かを判断する（ステップＳ４０５ａ）。
【００９９】
続いて、代理プリンタ決定プリンタの主制御部１５は、タイマ３０を参照して、代理プリンタ決定時刻になったかどうかを判断する（ステップＳ４１０ａ）。主制御部１５は、代理プリンタ決定時刻になっていない場合（ステップＳ４１０ａ：ＮＯ）には、代理プリンタを決定せずに、この代理プリンタ決定処理を終了し、動作処理（図４）のステップＳ１００の処理にリターンする。
【０１００】
一方、主制御部１５は、代理プリンタ決定時刻になった場合（ステップＳ４１０ａ：ＹＥＳ）には、タイマ３０から現在時刻Ｔｐを取得し、現在時刻Ｔｐが上述のステップＳ４０７ａの処理で保存した受信時刻Ｔｒから所定時間Ｔｃ経過しているかどうかを判断する（ステップＳ４１３ａ）。主制御部１５は、現在時刻Ｔｐが受信時刻Ｔｒから所定時間Ｔｃ経過していない場合（ステップＳ４１３ａ：ＮＯ）には、代理プリンタを決定せずに、この代理プリンタ決定処理を終了し、動作処理（図４）のステップＳ１００の処理にリターンする。なお、所定時間Ｔｃは、任意に設定可能である。
【０１０１】
一方、主制御部１５は、現在時刻Ｔｐが受信時刻Ｔｒから所定時間Ｔｃ経過している場合（ステップＳ４１３ａ：ＹＥＳ）には、スプールディレクトリ２２に保存される監視情報ファイルをすぐに管理サーバＳＶにアップロードすべきと判断し、代理プリンタを決定するために、ステップＳ４２５（図６）の処理へ進む。
【０１０２】
また、ステップＳ４０５ａの処理において、通信制御部１８が、代理プリンタから代理プリンタ決定延期要求を受信していない場合（ステップＳ４０５ａ：ＮＯ）には、続いて、主制御部１５は、タイマ３０を参照して、代理プリンタ決定時刻になったかどうかを判断する（ステップＳ４１５ａ）。主制御部１５は、代理プリンタ決定時刻になっていない場合（ステップＳ４１５ａ：ＮＯ）には、代理プリンタを決定せずに、この代理プリンタ決定処理を終了し、動作処理（図４）のステップＳ１００の処理にリターンする。一方、主制御部１５は、代理プリンタ決定時刻になった場合（ステップＳ４１５ａ：ＹＥＳ）には、ステップＳ４２５（図６）の処理へ進む。
【０１０３】
図１０は、第２実施例におけるアップロード処理の流れを示すフローチャートの一部を表わす図である。第２実施例におけるアップロード処理は、第１実施例におけるアップロード処理（図７、図８）の処理と一部が異なっている。すなわち、第２実施例におけるアップロード処理は、第１の実施例におけるアップロード処理のステップＳ７４０の処理とステップＳ７５０の処理との間に、ローカルエリアネットワークＬＡＮに接続されるすべての被代理プリンタに、代理プリンタ決定時刻になっても代理プリンタの決定を延期するように要求する上述の代理プリンタ決定延期要求を送信する処理（ステップＳ７４５ａ）が挿入されている。このようにすれば、代理プリンタ決定延期要求を受信した被代理プリンタは、上述した代理プリンタ決定処理（図９）において、自らに設定された代理プリンタ決定時刻になった時に、代理プリンタ決定延期要求を考慮して、代理プリンタになるかどうかを判断することができる。なお、第２実施例の他のアップロード処理は、第１実施例におけるアップロード処理と同じである。
【０１０４】
以上のように説明した第２実施例のデバイス管理システム１０００では、代理プリンタは、被代理プリンタから収集したアップロードすべき監視情報ファイルを管理サーバＳＶにアップロードした後、被代理プリンタに代理プリンタ決定延期要求を送信している。一方、各プリンタＰＲＴは、代理プリンタ決定時刻になったときに、代理プリンタから代理プリンタ決定延期要求を受信してから所定時間Ｔｃが経過していない場合には、自己のスプールディレクトリ２２に、管理サーバＳＶに未送信のアップロードすべき監視情報ファイルが存在する場合であっても、それを管理サーバＳＶにアップロードする必要がないと判断し、代理プリンタの決定を行わず、代理プリンタの決定を少なくとも次回の代理プリンタ決定時刻まで延期するようにしている。すなわち、各プリンタＰＲＴは、代理プリンタ決定延期要求を受信してから、少なくとも所定時間Ｔｃの間は、代理プリンタの決定を行わない。また、本実施例のデバイス管理システム１０００では、各プリンタＰＲＴが、個別にアップロード処理を行うのではなく、代理プリンタのみがアップロード処理を行う構成となっている。従って、これらのことから、各プリンタＰＲＴは、代理プリンタが被代理プリンタに代理プリンタ決定延期要求を送信してから、所定時間Ｔｃの間は、代理プリンタとしても個別にも管理サーバＳＶへのアップロード処理を行わないので、各プリンタＰＲＴから管理サーバＳＶへのアクセス頻度を、第１実施例のデバイス管理システム１０００よりも低減することができる。
【０１０５】
Ｄ．第３実施例：
第３実施例のデバイス管理システム１０００の構成は、第１実施例のデバイス管理システム１０００と同じである。また、第３実施例のプリンタＰＲＴの構成も、第１実施例のプリンタＰＲＴと同じである。ただし、第３実施例では、カスタムネットワークボードＣＮＢのＣＰＵ１０の各機能ブロックは、動作処理における代理プリンタ決定処理の一部において、第１実施例とは異なる処理を行う。以下、第１実施例と異なる点について説明する。
【０１０６】
図１１は、第３実施例における代理プリンタ決定処理の流れを示すフローチャートの一部を表わす図である。図１１に示すフローチャートは、第１実施例における代理プリンタ決定処理（図６）において、ステップＳ４２０の処理の代わりに、挿入される処理である。
【０１０７】
まず、代理プリンタ決定プリンタの主制御部１５は、上述したＦＴＰコマンド処理（図５）のステップＳ２６５の処理において、メモリ２０に削除時刻Ｔｄが保存されているかどうかを判断する（ステップＳ４０５ｂ）。この削除時刻Ｔｄは、上述したように、アップロードすべき監視情報ファイルを代理プリンタに送信し、その送信済みの監視情報ファイルを、前回に削除した時刻である。
【０１０８】
代理プリンタ決定プリンタの主制御部１５は、削除時刻Ｔｄが保存されている場合（ステップＳ４０５ｂ：ＹＥＳ）には、タイマ３０を参照して、代理プリンタ決定時刻になったかどうかを判断する（ステップＳ４１０ｂ）。主制御部１５は、代理プリンタ決定時刻になっていない場合（ステップＳ４１０ｂ：ＮＯ）には、代理プリンタを決定せずに、この代理プリンタ決定処理を終了し、動作処理（図４）のステップＳ１００の処理にリターンする。
【０１０９】
一方、主制御部１５は、代理プリンタ決定時刻になった場合（ステップＳ４１０ｂ：ＹＥＳ）には、タイマ３０から現在時刻Ｔｐを取得し、現在時刻Ｔｐが削除時刻Ｔｄから所定時間Ｔｃ経過しているかどうかを判断する（ステップＳ４１３ｂ）。主制御部１５は、現在時刻Ｔｐが削除時刻Ｔｄから所定時間Ｔｃ経過していない場合（ステップＳ４１３ｂ：ＮＯ）には、代理プリンタを決定せずに、この代理プリンタ決定処理を終了し、動作処理（図４）のステップＳ１００の処理にリターンする。なお、所定時間Ｔｃは、任意に設定可能である。
【０１１０】
一方、主制御部１５は、現在時刻Ｔｐが削除時刻Ｔｄから所定時間Ｔｃ経過している場合（ステップＳ４１３ｂ：ＹＥＳ）には、スプールディレクトリ２２に保存される監視情報ファイルをすぐに管理サーバＳＶにアップロードすべきと判断し、代理プリンタを決定するために、ステップＳ４２５（図６）の処理へ進む。
【０１１１】
また、ステップＳ４０５ｂの処理において、主制御部１５が、メモリ２０に削除時刻Ｔｄが保存されていないと判断した場合（ステップＳ４０５ｂ：ＮＯ）には、続いて、主制御部１５は、タイマ３０を参照して、代理プリンタ決定時刻になったかどうかを判断する（ステップＳ４１５ｂ）。主制御部１５は、代理プリンタ決定時刻になっていない場合（ステップＳ４１５ｂ：ＮＯ）には、代理プリンタを決定せずに、この代理プリンタ決定処理を終了し、動作処理（図４）のステップＳ１００の処理にリターンする。一方、主制御部１５は、代理プリンタ決定時刻になった場合（ステップＳ４１５ｂ：ＹＥＳ）には、スプールディレクトリ２２に保存される監視情報ファイルをすぐに管理サーバＳＶにアップロードすべきと判断し、代理プリンタを決定するために、ステップＳ４２５（図６）の処理へ進む。
【０１１２】
以上のように説明した第３実施例のデバイス管理システム１０００では、各プリンタＰＲＴは、代理プリンタからファイル削除コマンドを受信すると、代理プリンタに送信済みの監視情報ファイルを削除する。そして、各プリンタＰＲＴは、代理プリンタ決定時刻になったときに、前回に代理プリンタに送信済みの監視情報ファイルを削除してから、所定時間Ｔｃが経過していない場合には、スプールディレクトリ２２に、管理サーバＳＶに未送信のアップロードすべき監視情報ファイルが存在する場合であっても、それを管理サーバＳＶにアップロードする必要はないと判断し、代理プリンタの決定を行わず、代理プリンタの決定を少なくとも次回の代理プリンタ決定時刻まで延期するようにしている。すなわち、各プリンタＰＲＴは、代理プリンタからファイル削除コマンドを受信し、代理プリンタに送信済みの監視情報ファイルを削除してから、所定時間Ｔｃの間は、代理プリンタの決定を行わない。また、本実施例のデバイス管理システム１０００では、各プリンタＰＲＴが、個別にアップロード処理を行うのではなく、代理プリンタのみがアップロード処理を行う構成となっている。従って、これらのことから、各プリンタＰＲＴは、代理プリンタに送信済みの監視情報ファイルを削除してから、所定時間Ｔｃの間は、代理プリンタとしても個別にも管理サーバＳＶへのアップロード処理を行わないので、各プリンタＰＲＴから管理サーバＳＶへのアクセス頻度を、第１実施例のデバイス管理システム１０００よりも低減することができる。
【０１１３】
Ｅ．第４実施例：
第４実施例のデバイス管理システム１０００の構成は、第１実施例のデバイス管理システム１０００と同じである。また、第４実施例のプリンタＰＲＴの構成も、第１実施例のプリンタＰＲＴと同じである。ただし、第４実施例では、カスタムネットワークボードＣＮＢのＣＰＵ１０の各機能ブロックは、動作処理における代理プリンタ決定処理の一部において、第１実施例とは異なる処理を行う。以下、第１実施例と異なる点について説明する。
【０１１４】
図１２は、第４実施例における代理プリンタ決定処理の流れを示すフローチャートの一部を表わす図である。本実施例の代理プリンタ決定処理では、図１２に示すように、第１実施例における代理プリンタ決定処理（図７）において、ステップＳ４２５の処理の代わりにステップＳ４２５ｃの処理を行っている。なお、本実施例では、各プリンタＰＲＴは、この代理プリンタ決定処理において、スプールディレクトリ２２に保存されている各監視情報ファイルの保存時刻を利用する。
【０１１５】
代理プリンタ決定プリンタの主制御部１５は、タイマ３０を参照して、代理プリンタ決定時刻になったかどうかを判断する（ステップＳ４２０）。そして、主制御部１５は、代理プリンタ決定時刻になっていない場合には（ステップＳ４２０：ＮＯ）、代理プリンタを決定せず、この代理プリンタ決定処理を終了し、動作処理（図４）のステップＳ１００の処理にリターンする。
【０１１６】
主制御部１５は、代理プリンタ決定時刻になった場合には（ステップＳ４２０：ＹＥＳ）、続いて、スプールディレクトリ２２に、所定時間Ｔｃ以上前に保存された監視情報ファイルが存在するか否かを判断する（ステップＳ４２５ｃ）。所定時間Ｔｃは、任意に設定可能である。
【０１１７】
主制御部１５は、スプールディレクトリ２２に、所定時間Ｔｃ以上前に保存された監視情報ファイルが存在しない場合には（ステップＳ４２５ｃ：ＮＯ）、すぐに管理サーバＳＶにアップロードすべき監視情報ファイルはないものと判断し、代理プリンタを決定せず、この代理プリンタ決定処理を終了し、動作処理（図４）のステップＳ１００の処理にリターンする。
【０１１８】
一方、主制御部１５は、スプールディレクトリ２２に、所定時間Ｔｃ以上前に保存されたアップロードすべき監視情報ファイルが存在する場合には（ステップＳ４２５ｃ：ＹＥＳ）、この監視情報ファイルは、すぐに管理サーバＳＶにアップロードすべき監視情報ファイルであると判断し、代理プリンタを決定するために、ステップＳ４３０（図６）の処理に進む。
【０１１９】
以上のように説明した第４実施例のデバイス管理システム１０００では、各プリンタＰＲＴは、代理プリンタ決定時刻になったときに、自己のスプールディレクトリ２２に、所定時間Ｔｃ以上前に保存された未送信のアップロードすべき監視情報ファイルが存在していない場合には、未送信の監視情報ファイルが存在する場合であっても、それを管理サーバＳＶにアップロードする必要がないと判断し、代理プリンタの決定を行わず、代理プリンタの決定を少なくとも次回の代理プリンタ決定時刻まで延期するようにしている。すなわち、各プリンタＰＲＴは、自己のスプールディレクトリ２２に未送信のアップロードすべき監視情報ファイルが保存された後の所定時間Ｔｃの間、つまり、いずれかのプリンタＰＲＴが代理プリンタとしてアップロード処理を行った後の所定時間Ｔｃの間は、代理プリンタの決定を行わない。また、本実施例のデバイス管理システム１０００では、各プリンタＰＲＴが、個別にアップロード処理を行うのではなく、代理プリンタのみがアップロード処理を行う構成となっている。従って、これらのことから、各プリンタＰＲＴは、いずれかのプリンタＰＲＴが代理プリンタとしてアップロード処理を行った後の所定時間Ｔｃの間は、代理プリンタとしても個別にも管理サーバＳＶへのアップロード処理を行わないので、各プリンタＰＲＴから管理サーバＳＶへのアクセス頻度を、第１実施例のデバイス管理システム１０００よりも低減することができる。
【０１２０】
Ｆ．変形例：
以上、本発明のいくつかの実施の形態について説明したが、本発明はこのような実施の形態になんら限定されるものではなく、その要旨を逸脱しない範囲内において種々なる態様での実施が可能である。例えば、以下のような変形例が可能である。
【０１２１】
Ｆ１．変形例１：
上記実施例では、各プリンタＰＲＴは、タイマ３０を備えるものとしたが、本発明はこれに限られるものではない。例えば、タイマ３０の代わりに時計を備えるようにしてもよい。また、各プリンタＰＲＴは、インターネットＩＮＴ上に設置されたいわゆるＮＴＰサーバから、必要に応じて時刻を取得するようにしてもよい。
【０１２２】
Ｆ２．変形例２：
上記実施例では、全てのプリンタＰＲＴが、カスタムネットワークボードＣＮＢを備え、代理プリンタとして機能しうるものとしたが、少なくとも２台のプリンタＰＲＴが、このＰＲＴを代理プリンタとして機能させるカスタムネットワークボードＣＮＢを備えるようにすればよい。この場合、プリンタを代理プリンタとして機能させるカスタムネットワークボードＣＮＢを備えない他のプリンタは、代理プリンタからの要求に応じて、監視情報ファイルの転送や、削除等を行う機能を備えるようにすればよい。
【０１２３】
Ｆ３．変形例３：
上記実施例では、被代理プリンタは、代理プリンタからの削除要求に応じて、送信済みの監視情報ファイルの削除を行うものとしたが、本発明はこれに限られるものではない。例えば、被代理プリンタは、被代理プリンタが代理プリンタへアップロードすべき監視情報ファイルを送信した際に、代理プリンタから被代理プリンタへレスポンスとしての受信完了応答に応じて、送信済みの監視情報ファイルを削除するようにしてもよい。
【０１２４】
Ｆ４．変形例４：
上記第３実施例では、各プリンタＰＲＴ（代理プリンタ決定プリンタ）は、代理プリンタ決定処理において、監視情報ファイルの削除時刻Ｔｄを、メモリ２０に記憶し、この削除時刻Ｔｄに基づいて、代理プリンタを決定する処理に移行するか否かの判断を行ったが、本発明はこれに限られるものではない。例えば、削除時刻Ｔｄの代わりに、例えば、監視情報ファイルを代理プリンタに送信した時刻や、代理プリンタから、監視情報ファイルの受信応答を受信した時刻や、削除要求を受信した時刻に基づいて、代理プリンタを決定する処理に移行するか否かを判断するようにしてもよい。
【０１２５】
Ｆ５．変形例５：
上記第２ないし第４実施例のいずれかの実施例では、プリンタＰＲＴの動作処理において、スプールディレクトリ２２に、管理サーバＳＶに未送信の監視情報ファイルが存在するか否かを判断したが、この判断を行わないようにしてもよい。
【０１２６】
Ｆ６．変形例６：
上記実施例では、ネットワークに接続されるプリンタＰＲＴに、本発明のデバイス監視制御装置を適用した例を示したが、これに限られない。例えば、スキャナや、プロジェクタや、オーディオ装置や、家電機器や、クライアントコンピュータや、ＰＤＡ（Personal Digital Assistance）など、ネットワークに接続されて利用される種々のデバイスに、本発明のデバイス監視制御装置を適用するようしにてもよい。
【０１２７】
Ｆ７．変形例７：
上記実施例では、各プリンタＰＲＴ（代理プリンタ決定プリンタ）は、代理プリンタ決定処理において、ローカルエリアネットワークＬＡＮに接続され、ブロードキャストで応答があったプリンタＰＲＴの中から、それらのプリンタＰＲＴに内蔵されるカスタムネットワークボードＣＮＢのスプールディレクトリに保存されているアップロードすべき監視情報ファイルのファイルサイズが最も大きいプリンタＰＲＴを、代理プリンタとして決定するようにしているが、本発明はこれに限られるものではない。
【０１２８】
代理プリンタ決定プリンタは、例えば、ローカルエリアネットワークＬＡＮに接続され、ブロードキャストで応答があったプリンタＰＲＴの中から、それらのプリンタＰＲＴに内蔵されるカスタムネットワークボードＣＮＢのスプールディレクトリに保存されているアップロードすべき監視情報ファイルのファイルサイズが最も小さいプリンタＰＲＴを、代理プリンタとして決定するようにしてもよい。一般的に、監視情報ファイルのファイルサイズが小さいプリンタは、比較的に処理能力に余裕があるプリンタであると考えられるので、このようにすれば、代理プリンタに決定したプリンタＰＲＴは、効率的に代理デバイスとしての機能を果たすことができる。
【０１２９】
また、代理プリンタ決定プリンタは、例えば、ローカルエリアネットワークＬＡＮに接続され、ブロードキャストで応答があったプリンタＰＲＴの中から、印刷ジョブの保留量が最も少ないプリンタＰＲＴを代理プリンタとして決定するようにしてもよい。このようにすれば、代理プリンタとして決定したプリンタは、比較的に処理能力に余裕があると考えられるので、効率的に代理プリンタとしての機能を果たすことができる。
【０１３０】
さらに、代理プリンタ決定プリンタは、例えば、所定の乱数を用いて抽選により、ローカルエリアネットワークＬＡＮに接続され、ブロードキャストで応答があったプリンタＰＲＴの中から、代理プリンタを決定するようにしてもよい。また、代理プリンタ決定プリンタは、ローカルエリアネットワークＬＡＮに接続され、ブロードキャストで応答があったプリンタＰＲＴから、それぞれに割り当てられたＩＰアドレスや、それぞれのカスタムネットワークボードＣＮＢの所定のメモリに予め記憶されているＭＡＣアドレスを取得し、取得したＩＰアドレスやＭＡＣアドレスを用いて、それらのプリンタＰＲＴの中から、代理プリンタを決定するようにしてもよい。
【０１３１】
Ｆ８．変形例８：
上記第２実施例では、代理プリンタ決定プリンタは、動作処理（図４）において、代理プリンタから代理プリンタ決定延期要求を受信し、代理プリンタ決定処理（図９）において、代理プリンタ決定時刻になった場合に、代理プリンタ決定延期要求を受信してから所定時間Ｔｃを経過していないと、代理プリンタの決定を延期するようにしているが、本発明はこれに限られるものではない。例えば、代理プリンタ決定プリンタは、代理プリンタ決定処理において、代理プリンタ決定時刻なった場合に、動作処理で他のプリンタ（代理プリンタ）からブロードキャストを受けてから（ステップＳ１００）、所定時間Ｔｃを経過していないと、代理プリンタの決定を延期するようにしてもよい。このようにすれば、被代理プリンタは、代理プリンタからブロードキャストを受けただけで、代理プリンタ決定延期要求を受信した場合と同様に、代理プリンタを決定するか否かを判断することができる。その結果、代理プリンタは、代理プリンタ決定延期要求を被代理プリンタに送信しなくてよいので、処理の負担を軽減することができる。また、被代理プリンタも、代理プリンタ決定延期要求を受信する必要がないので処理の負担を軽減することができる。
【０１３２】
また、例えば、代理プリンタ決定プリンタは、代理プリンタ決定処理において、代理プリンタ決定時刻なった場合に、ＦＴＰコマンド処理（図５）で他のプリンタ（代理プリンタ）からファイル転送コマンドを受信し、アップロードすべき監視情報ファイルを代理プリンタに転送してから（ステップＳ２４０）、所定時間Ｔｃを経過していないと、代理プリンタの決定を延期するようにしてもよい。このようにすれば、被代理プリンタは、代理プリンタからファイル転送コマンドを受け、アップロードすべき監視情報ファイルを転送しただけで、代理プリンタ決定延期要求を受信した場合と同様に、代理プリンタを決定するか否かを判断することができる。その結果、代理プリンタは、代理プリンタ決定延期要求を被代理プリンタに送信しなくてよいので、処理の負担を軽減することができる。また、被代理プリンタも、代理プリンタ決定延期要求を受信する必要がないので処理の負担を軽減することができる。
【０１３３】
さらに、例えば、代理プリンタ決定プリンタは、代理プリンタ決定処理において、代理プリンタ決定時刻なった場合に、ＦＴＰコマンド処理（図５）でアップロードすべき監視情報ファイルを代理プリンタに転送し（ステップＳ２４０）、代理プリンタからその転送ファイルの受信完了応答を受信してから、所定時間Ｔｃを経過していないと、代理プリンタの決定を延期するようにしてもよい。このようにすれば、被代理プリンタは、アップロードすべき監視情報ファイルを代理プリンタに転送し、代理プリンタからの受信完了応答を受信しただけで、代理プリンタ決定延期要求を受信した場合と同様に、代理プリンタを決定するか否かを判断することができる。その結果、代理プリンタは、代理プリンタ決定延期要求を別途被代理プリンタに送信しなくてよいので、処理の負担を軽減することができる。また、被代理プリンタも、代理プリンタ決定延期要求を別途受信する必要がないので処理の負担を軽減することができる。
【図面の簡単な説明】
【０１３４】
【図１】本発明の一実施例としてのデバイス管理システム１０００の概略構成を示す説明図である。
【図２】プリンタＰＲＴの構成を示す説明図である。
【図３】アップロードファイルの生成について示す説明図である。
【図４】プリンタＰＲＴの動作処理の流れを示すフローチャートである。
【図５】図４のステップ２００の処理におけるＦＴＰコマンド処理の流れを示す説明図である。
【図６】図４のステップＳ４００の処理における代理プリンタ決定処理の流れを示すフローチャートである。
【図７】図４のステップ６００の処理におけるアップロード処理の流れを示すフローチャートである。
【図８】図４のステップ６００の処理におけるアップロード処理の流れを示すフローチャートである。
【図９】第２実施例における代理プリンタ決定処理の流れを示すフローチャートの一部を表わす図である。
【図１０】第２実施例におけるアップロード処理の流れを示すフローチャートの一部を表わす図である。
【図１１】第３実施例における代理プリンタ決定処理の流れを示すフローチャートの一部を表わす図である。
【図１２】第４実施例における代理プリンタ決定処理の流れを示すフローチャートの一部を表わす図である。
【符号の説明】
【０１３５】
１０...ＣＰＵ
１５...主制御部
１６...アップロードファイル作成部
１８...通信制御部
２０...メモリ
２２...スプールディレクトリ
２４...ｏｔｈｅｒディレクトリ
２６...アップロードディレクトリ
３０...タイマ
１００...プリンタ本体
１１０...プリンタエンジン
１２０...プリンタコントローラ
１２２...監視部
２００...ステップ
４６０...ステップ
６００...ステップ
１０００...デバイス管理システム
【図１】
2006215974.tif 000003
【図２】
2006215974.tif 000004
【図３】
2006215974.tif 000005
【図４】
2006215974.tif 000006
【図５】
2006215974.tif 000007
【図６】
2006215974.tif 000008
【図７】
2006215974.tif 000009
【図８】
2006215974.tif 000010
【図９】
2006215974.tif 000011
【図１０】
2006215974.tif 000012
【図１１】
2006215974.tif 000013
【図１２】
2006215974.tif 000014