(57)【要約】【課題】機器情報の更新を効率的に検知すること。【解決手段】電子機器であって、当該電子機器の機器情報を当該電子機器より取得する機器情報取得手段と、前記機器情報のハッシュ値を生成するハッシュ値生成手段と、算出されたハッシュ値と、ハッシュ値記憶手段に記憶されているハッシュ値とを比較することにより前記機器情報の更新を検知する更新検知手段と、前記機器情報の更新が検知された場合に、前記ハッシュ値記憶手段に記録されているハッシュ値を生成されたハッシュ値によって更新し、機器情報更新有無判別情報記憶手段に記録されている機器情報更新有無判別情報の値を更新する更新手段とを有する。【選択図】図３
2011044035.tif 000002
【特許請求の範囲】
【請求項１】
電子機器であって、
当該電子機器の機器情報を当該電子機器より取得する機器情報取得手段と、
前記機器情報のハッシュ値を生成するハッシュ値生成手段と、
算出されたハッシュ値と、ハッシュ値記憶手段に記憶されているハッシュ値とを比較することにより前記機器情報の更新を検知する更新検知手段と、
前記機器情報の更新が検知された場合に、前記ハッシュ値記憶手段に記録されているハッシュ値を生成されたハッシュ値によって更新し、機器情報更新有無判別情報記憶手段に記録されている機器情報更新有無判別情報の値を更新する更新手段とを有する電子機器。
【請求項２】
前記更新検知手段は、前記機器情報取得手段によって取得された前記一部のパラメータの値を、特定パラメータ記憶手段に記録されている値と比較することにより前記一部のパラメータの値の更新を検知し、
前記更新手段は、前記一部のパラメータの値の更新が検知された場合に、前記特定パラメータ記憶手段に記録されている値を前記機器情報取得手段によって取得された値によって更新し、前記機器情報更新有無判別情報の値を更新する請求項１記載の電子機器。
【請求項３】
前記更新手段は、前記一部のパラメータの値の更新が検知された場合に、前記ハッシュ値に基づいて前記機器情報の更新が検知された場合に比べて大きな変更量によって前記機器情報更新有無判別情報としての数値を変更する請求項２記載の電子機器。
【請求項４】
前記機器情報更新有無判別情報を含む情報をネットワークに送出する広告手段を有し、
前記更新検知手段は、前記機器情報取得手段によって取得された前記一部のパラメータの値を、前記ハッシュ値生成手段によるハッシュ値の算出が行われる前に前記特定パラメータ記憶手段に記録されている値と比較し、
前記広告手段は、前記更新検知手段によって前記一部のパラメータの値の更新が検知された場合は、前記ハッシュ値生成手段によるハッシュ値の算出が行われる前に前記機器情報更新有無判別情報を送出する請求項２又は３記載の電子機器。
【請求項５】
前記機器情報更新有無判別情報を含む情報をネットワークに送出する広告手段と、
前記機器情報に含まれるパラメータを複数に分類する分類情報を記憶する分類情報記憶手段とを有し、
前記ハッシュ値生成手段は、前記分類ごとにハッシュ値を生成し、
前記更新検知手段は、分類ごとに算出されたハッシュ値を、ハッシュ値記憶手段に記憶されている同一分類に対応するハッシュ値と順番に比較することにより前記機器情報の更新を検知する更新検知手段と、
前記更新手段は、前記機器情報の更新が検知された場合に、前記ハッシュ値記憶手段に記録されているハッシュ値を生成されたハッシュ値によって更新し、機器情報更新有無判別情報記憶手段に記録されている機器情報更新有無判別情報の値を更新し、
前記広告手段は、前記更新検知手段によって前記機器情報の更新が検知された場合に、全ての前記ハッシュ値に関する比較が完了していなくても前記機器情報更新有無判別情報を送出する請求項１乃至４いずれか一項記載の電子機器。
【請求項６】
電子機器が実行する情報処理方法であって、
当該電子機器の機器情報を当該電子機器より取得する機器情報取得手順と、
前記機器情報のハッシュ値を生成するハッシュ値生成手順と、
算出されたハッシュ値と、ハッシュ値記憶手段に記憶されているハッシュ値とを比較することにより前記機器情報の更新を検知する更新検知手順と、
前記機器情報の更新が検知された場合に、前記ハッシュ値記憶手段に記録されているハッシュ値を生成されたハッシュ値によって更新し、機器情報更新有無判別情報記憶手段に記録されている機器情報更新有無判別情報の値を更新する更新手順とを有する情報処理方法。
【請求項７】
電子機器に、
当該電子機器の機器情報を当該電子機器より取得する機器情報取得手順と、
前記機器情報のハッシュ値を生成するハッシュ値生成手順と、
算出されたハッシュ値と、ハッシュ値記憶手段に記憶されているハッシュ値とを比較することにより前記機器情報の更新を検知する更新検知手順と、
前記機器情報の更新が検知された場合に、前記ハッシュ値記憶手段に記録されているハッシュ値を生成されたハッシュ値によって更新し、機器情報更新有無判別情報記憶手段に記録されている機器情報更新有無判別情報の値を更新する更新手順とを実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子機器、情報処理方法、及びプログラムに関する。
【背景技術】
【０００２】
近年、ネットワーク上の機器において提供されているＷｅｂサービスを利用するための標準仕様（ＷＳ−Ｄｉｓｃｏｖｅｒｙ、ＷＳ−Ｔｒａｎｓｆｅｒ等）が定められている。当該仕様によれば、クライアント側は、機器のベンダや機種等に依存した仕様を意識することなく、各機器において提供されているＷｅｂサービスを利用することができる。したがって、クライアント側においては、開発工数の削減が期待でき、ユーザにおいては、利用する機器の選択肢が広がるといったメリットがある。
【０００３】
例えば、ＷＳ−Ｄｉｓｃｏｖｅｒｙでは、ネットワーク上の機器を動的に検索するための仕様である。ＷＳ−Ｄｉｓｃｏｖｅｒｙでは、ネットワーク上においてサービスを提供可能となった機器は、自らの存在を通知するためのＨｅｌｌｏメッセージを広告することが規定されている。
【０００４】
Ｈｅｌｌｏメッセージに含まれるパラメータとして、ＭｅｔａｄａｔａＶｅｒｓｉｏｎが有る。ＭｅｔａｄａｔａＶｅｒｓｉｏｎは、その名の通り、Ｍｅｔａｄａｔａ（機器情報）のバージョンであり、機器情報を構成するいずれかのパラメータの値が変更された場合に変更される数値である。
【０００５】
したがって、Ｈｅｌｌｏメッセージを受信したクライアント装置（ＰＣ（Personal Computer）等）は、ＭｅｔａｄａｔａＶｅｒｓｉｏｎを参照することで、機器情報の更新の有無を判定することができ、機器情報の取得の要否等を判定することができる。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
一方、機器側において、ＭｅｔａｄａｔａＶｅｒｓｉｏｎを更新するためには、前回の広告時（Ｈｅｌｌｏメッセージ送信時）における機器情報と、今回の広告時における機器情報との相違の有無を判定する必要がある。そのための方法として、前回の広告時における機器情報を記憶装置内に保存しておくことが考えられる。しかし、記憶装置の容量の増加が機器全体のコストに大きく影響する組み込み機器においては、このような方法は採用しがたい。
【０００７】
本発明は、上記の点に鑑みてなされたものであって、機器情報の更新を効率的に検知することのできる電子機器、情報処理方法、及びプログラムの提供を目的とする。
【課題を解決するための手段】
【０００８】
そこで上記課題を解決するため、本発明は、電子機器であって、当該電子機器の機器情報を当該電子機器より取得する機器情報取得手段と、前記機器情報のハッシュ値を生成するハッシュ値生成手段と、算出されたハッシュ値と、ハッシュ値記憶手段に記憶されているハッシュ値とを比較することにより前記機器情報の更新を検知する更新検知手段と、前記機器情報の更新が検知された場合に、前記ハッシュ値記憶手段に記録されているハッシュ値を生成されたハッシュ値によって更新し、機器情報更新有無判別情報記憶手段に記録されている機器情報更新有無判別情報の値を更新する更新手段とを有する。
【発明の効果】
【０００９】
本発明によれば、機器情報の更新を効率的に検知することができる。
【図面の簡単な説明】
【００１０】
【図１】本発明の実施の形態におけるネットワークシステムの構成例を示す図である。
【図２】本発明の実施の形態における複合機のハードウェア構成例を示す図である。
【図３】本発明の実施の形態における複合機の機能構成例を示す図である。
【図４】ネットワークシステムにおける処理手順を説明するためのシーケンス図である。
【図５】Ｈｅｌｌｏメッセージの例を示す図である。
【図６】Ｇｅｔメッセージの例を示す図である。
【図７】ＧｅｔＲｅｓｐｏｎｓｅメッセージの例を示す図である。
【図８】機器情報のクライアントＰＣにおける表示例を示す図である。
【図９】広告送信時に複合機において実行される処理の処理手順を説明するためのフローチャートである。
【図１０】パラメータ分類情報記憶部の構成例を示す図である。
【図１１】本実施の形態の効果を説明するための図である。
【発明を実施するための形態】
【００１１】
以下、図面に基づいて本発明の実施の形態を説明する。図１は、本発明の実施の形態におけるネットワークシステムの構成例を示す図である。図１においてネットワークシステム１は、複合機１０ａ、１０ｂ、１０ｃ、及び１０ｄ等の一台以上の複合機（以下、総称する場合「複合機１０」という。）と、一台以上のクライアントＰＣ２０等より構成される。複合機１０とクライアントＰＣ２０とは、ＬＡＮ（Local Area Network）等のネットワーク３０（有線又は無線の別は問わない）を介して接続されている。
【００１２】
複合機１０は、電子機器の具体例であり、コピー、ファクス、スキャナ、及びプリンタ等の複数の機能を一台の筐体において実現する画像形成装置である。複合機１０には、各種のソフトウェアが実装されており、当該ソフトウェアによって実現されるＷｅｂサービスを、Ｗｅｂサービスに関する標準仕様に従ったインタフェースによってネットワーク３０上（クライアントＰＣ２０）に提供する。
【００１３】
クライアントＰＣ２０は、一般的なＰＣ（Personal Computer）等のコンピュータであり、複合機１０のＷｅｂサービスを利用可能なソフトウェアが実装されている。
【００１４】
図２は、本発明の実施の形態における複合機のハードウェア構成例を示す図である。同図において、複合機１０は、コントローラ１１、スキャナ１２、プリンタ１３、モデム１４、操作パネル１５、ネットワークインタフェース１６、及びＳＤカードスロット１７等のハードウェアを有する。
【００１５】
コントローラ１１は、ＣＰＵ１１１、ＲＡＭ１１２、ＲＯＭ１１３、ＨＤＤ（Hard Disk Drive）１１４、及びＮＶＲＡＭ（Non-volatile RAM）１１５等を有する。ＲＯＭ１１３には、各種のプログラムやプログラムによって利用されるデータ等が記録されている。ＲＡＭ１１２は、プログラムをロードするための記憶領域や、ロードされたプログラムのワーク領域等として用いられる。ＣＰＵ１１１は、ＲＡＭ１１２にロードされたプログラムを処理することにより、各種の機能を実現する。ＨＤＤ１１４には、プログラムやプログラムが利用する各種のデータ等が記録される不揮発性の記録媒体である。ＮＶＲＡＭ１１５には、プログラムが利用する各種のデータの中でも、より高い安全性が必要とされるデータ等が記録される不揮発性の記録媒体である。
【００１６】
スキャナ１２は、原稿より画像データを読み取るためのハードウェアである。プリンタは１３、印刷データを印刷用紙に印刷するためのハードウェアである。モデム１４は、電話回線に接続するためのハードウェアであり、ＦＡＸ通信による画像データの送受信を実行するために用いられる。操作パネル１５は、ユーザからの入力の受け付けを行うめのボタン等の入力手段や、液晶パネル等の表示手段を備えたハードウェアである。ネットワークインタフェース１６は、ＬＡＮ等のネットワーク（有線又は無線の別は問わない。）に接続するためのハードウェアである。ＳＤカードスロット１７は、ＳＤカード８０に記録されたプログラムを読み取るために利用される。すなわち、複合機１０では、ＲＯＭ１１３に記録されたプログラムだけでなく、ＳＤカード８０に記録されたプログラムもＲＡＭ１１２にロードされ、実行されうる。
【００１７】
図３は、本発明の実施の形態における複合機の機能構成例を示す図である。同図において、複合機１０は、機器情報取得部１２１、ハッシュ値生成部１２２、更新検知部１２３、保持情報更新部１２４、広告部１２５、機器情報提供部１２６、パラメータ分類情報記憶部１３１、ハッシュ値記憶部１３２、特定パラメータ記憶部１３３、及び更新有無判別情報記憶部１３４等を有する。これら各部は、複合機１０にインストールされたプログラムが、ＣＰＵ１１１に実行させる処理により実現される。
【００１８】
機器情報取得部１２１は、複合機１０の属性情報（以下、「機器情報」という。）を複合機１０より取得する。機器情報には、複合機１０を識別するための情報（ＩＰアドレス等）、複合機１０の能力を示す情報（複合機１０が備えるソフト的又はハード的な機能を示す情報）、及び複合機１０に対する設定情報等を構成するパラメータ（データ項目）が含まれうる。機器情報の取得先は、パラメータに応じて異なる。例えば、ＲＯＭ１１３、ＨＤＤ１１４、又はＮＶＲＡＭ１１５における所定の記憶領域や、複合機１０において動作中のプログラムよりパラメータの値は取得される。なお、機器情報に含まれるパラメータのうち、少なくとも一部のパラメータの値は、ユーザによる指示に応じて、又は自動的に更新されうる。
【００１９】
ハッシュ値生成部１２２は、機器情報取得部１２１によって取得された機器情報（複数のパラメータ値の集合）に対して所定のハッシュ関数を適用し、当該機器情報のハッシュ値を生成する。なお、ハッシュ値生成部１２２は、一部のパラメータ（以下、「特定パラメータ」という。）については、ハッシュ値に含めない。特定パラメータであるか否かは、パラメータ分類情報記憶部１３１に基づいて判定される。パラメータ分類情報記憶部１３１は、例えば、ＮＶＲＡＭ１１５又はＨＤＤ１１４において、機器情報を構成するパラメータを重要度によって分類する情報（パラメータ分類情報）を記憶する記憶領域である。
【００２０】
更新検知部１２３は、機器情報取得部１２１によって取得された機器情報に含まれる特定パラメータの値と、特定パラメータ記憶部１３３に記録されている特定パラメータとの値の比較、又はハッシュ値生成部１２２によって生成されたハッシュ値とハッシュ値記憶部１３２に記憶されているハッシュ値との比較に基づいて機器情報の更新を検知する。特定パラメータ記憶部１３３は、ＮＶＲＡＭ１１５又はＨＤＤ１１４において、過去に取得された機器情報に含まれていた特定パラメータの値を記憶する記憶領域である。ハッシュ値記憶部１３２は、ＮＶＲＡＭ１１５又はＨＤＤ１１４において、過去にハッシュ値生成部１２２によって生成されたハッシュ値を記憶する記憶領域である。
【００２１】
保持情報更新部１２４は、更新検知部１２３によって機器情報の更新が検知された場合に、特定パラメータ記憶部１３３の記憶内容又はハッシュ値記憶部１３２の記憶内容を更新する。保持情報更新部１２４は、また、更新検知部１２３によって機器情報の更新が検知された場合、更新有無判別情報記憶部１３４の記憶内容をも更新する。更新有無判別情報記憶部１３４は、ＮＶＲＡＭ１１５又はＨＤＤ１１４において、機器情報の更新の有無を判別させるための情報（更新有無判別情報）を記憶した記憶領域である。
【００２２】
広告部１２５は、複合機１０の存在を通知するための広告をネットワーク３０上に送出する。当該広告には、更新有無判別情報が含まれる。
【００２３】
機器情報提供部１２６は、広告を受信したクライアントＰＣ２０から送信される、機器情報の取得要求に応じ、機器情報を提供（返信）する。
【００２４】
以下、ネットワークシステム１の処理手順について説明する。図４は、ネットワークシステムにおける処理手順を説明するためのシーケンス図である。
【００２５】
例えば、複合機１０は、起動に応じ（電源の供給に応じ）、ネットワーク３０上に広告をマルチキャストする（Ｓ１１）。本実施の形態において、広告は、ＷＳ−Ｄｉｓｃｏｖｅｒｙ（Web Services Dynamic Discovery）の仕様に準拠した形式によって送出される。ＷＳ−Ｄｉｓｃｏｖｅｒｙにおいて、広告に対応するメッセージはＨｅｌｌｏメッセージである。したがって、ステップＳ１１では、Ｈｅｌｌｏメッセージがマルチキャストされる。なお、ＷＳ−Ｄｉｓｃｏｖｅｒｙは、主としてマルチキャストによって所望のＷｅｂサービスの検索するためのプロトコルを定義する仕様であり、その内容は、「http://specs.xmlsoap.org/ws/2005/04/discovery/ws-discovery.pdf」に詳しい。
【００２６】
図５は、Ｈｅｌｌｏメッセージの例を示す図である。図５のＨｅｌｌｏメッセージ５１０において、記述５１１における「Ｈｅｌｌｏ」により、Ｈｅｌｌｏメッセージ５１０がＨｅｌｌｏメッセージであることであることが識別される。
【００２７】
Ｔｙｐｅ要素５１２の値における「Ｄｅｖｉｃｅ」は、複合機１０の存在を示す記述であり、「ｗｐｒｔ：ＰｒｉｎｔＤｅｖｉｃｅＴｙｐｅ」は、複合機１０が提供可能なＷｅｂサービスの識別名を示す。ＸＡｄｄｒｓ要素５１３の値は、複合機１０のアドレス情報（ＵＲＬ（Uniform Resource Locator））を示す。ＭｅｔａｄａｔａＶｅｒｓｉｏｎ要素５１４の値（「４３５」）は、本実施の形態において更新有無判別情報に相当する。後述されるように、ＭｅｔａｄａｔａＶｅｒｓｉｏｎ要素５１４の値（以下、単に「ＭｅｔａｄａｔａＶｅｒｓｉｏｎの値」という。）は、機器情報の更新に応じて更新される。したがって、クライアントＰＣ２０は、複合機１０が前回の起動時に発行したＨｅｌｌｏメッセージ５１０に含まれていたＭｅｔａｄａｔａＶｅｒｓｉｏｎの値と、今回の起動時に発行したＨｅｌｌｏメッセージ５１０に含まれているＭｅｔａｄａｔａＶｅｒｓｉｏｎの値とを比較することにより、複合機１０の機器情報の更新の有無を判別することができる。なお、ＭｅｔａｄａｔａＶｅｒｓｉｏｎの値は、複合機１０ごとに異なる。したがって、例えば、クライアントＰＣ２０は、ＸＡｄｄｒｓ要素５１３の値（以下、単に「アドレス情報」という。）とＭｅｔａｄａｔａＶｅｒｓｉｏｎの値とを関連付けて管理しておけばよい。そうすることにより、クライアントＰＣ２０は、各複合機１０のＭｅｔａｄａｔａＶｅｒｓｉｏｎの値を区別することができる。
【００２８】
例えば、クライアントＰＣ２０は、ＭｅｔａｄａｔａＶｅｒｓｉｏｎの値が前回と異なっている場合、更新後の機器情報を取得すべく、機器情報の取得要求を複合機１０に対して送信する（Ｓ１２）。機器情報の取得要求の送信先の複合機１０は、Ｈｅｌｌｏメッセージ５１０に含まれているアドレス情報に基づいて判定される。本実施の形態において、機器情報の取得要求は、ＷＳ−Ｔｒａｎｓｆｅｒ（Web Service Transfer）の仕様に準拠する。ＷＳ−Ｔｒａｎｓｆｅｒにおいて、機器情報の取得要求に対応するメッセージはＧｅｔメッセージ（Ｇｅｔリクエスト）である。したがって、ステップＳ１２では、Ｇｅｔメッセージが送信される。なお、ＷＳ−Ｔｒａｎｓｆｅｒは、ＷｅｂサービスベースのリソースのＸＭＬ表現にアクセスするためのプロトコルを定義する仕様であり、その内容は、「http://www.w3.org/Submission/WS-Transfer/」に詳しい。
【００２９】
図６は、Ｇｅｔメッセージの例を示す図である。図６のＧｅｔメッセージ５２０において、記述５２１の「Ｇｅｔ」によって、Ｇｅｔメッセージ５２０がＧｅｔメッセージであることが識別される。また、Ａｄｄｒｅｓｓ要素５２２の値は、Ｇｅｔメッセージ５２０に対する応答の送信先（すなわち、クライアントＰＣ２０）のＵＲＬ（Uniform Resource Locator）を示す。
【００３０】
Ｇｅｔメッセージ５１０の受信に応じ、複合機１０の機器情報提供部１２６は、Ｇｅｔメッセージ５１０に対する応答（すなわち、機器情報）をクライアントＰＣ２０に返信する（Ｓ１３）。ＷＳ−Ｔｒａｎｓｆｅｒにおいて、Ｇｅｔメッセージに対する応答は、ＧｅｔＲｅｓｐｏｎｓｅメッセージである。したがって、ステップＳ１３では、ＧｅｔＲｅｓｐｏｎｓｅメッセージが返信される。
【００３１】
図７は、ＧｅｔＲｅｓｐｏｎｓｅメッセージの例を示す図である。図７のメッセージ５３０において、記述５３１の「ＧｅｔＲｅｓｐｏｎｓｅ」によって、ＧｅｔＲｅｓｐｏｎｓｅメッセージ５３０がＧｅｔＲｅｓｐｏｎｓｅメッセージであることが識別される。
【００３２】
ＧｅｔＲｅｓｐｏｎｓｅメッセージ５３０において複合機１０の各種情報は、＜ＭｅｔａｄａｔａＳｅｃｔｉｏｎ＞タグによって囲まれたＭｅｔａｄａｔａＳｅｃｔｉｏｎ要素ごとに記述されている。例えば、ＭｅｔａｄａｔａＳｅｃｔｉｏｎ要素５３２には、機器（複合機１０）に関する情報が記述されている。例えば、ＦｒｉｅｎｄｌｙＮａｍｅ要素５３２１の値は、機器の名前（機器名）を示す。ＦｉｒｍｗａｒｅＶｅｒｓｉｏｎ要素５３２２の値は、ファームウェアのバージョンを示す。ＳｅｒｉａｌＮｕｍｂｅｒ要素５３２３の値は、機器のシリアル番号を示す。
【００３３】
また、ＭｅｔａｄａｔａＳｅｃｔｉｏｎ要素５３３には、モデル（機種）に関する情報が記述されている。例えば、Ｍａｎｕｆａｃｔｕｒｅｒ要素５３３１の値は、製造元の名前を示す。ＭａｎｕｆａｃｔｕｒｅｒＵｒｌ要素５３３２の値は、製造元のＵＲＬを示す。ＭｏｄｅｌＮａｍｅ要素の値は、モデル名を示す。ＭｏｄｅｌＮｕｍｂｅｒ要素の値は、モデル番号を示す。ＭｏｄｅｌＵｒｌ５３３４の値は、モデルのＷｅｂサイトのＵＲＬを示す。また、ＰｒｅｓｅｎｔａｔｉｏｎＵｒｌ５３３５の値は、機器のＷｅｂサイトのＵＲＬを示す。
【００３４】
また、ＭｅｔａｄａｔａＳｅｃｔｉｏｎ要素５３４には、サービスに関する情報が記述されている。例えば、Ａｄｄｒｅｓｓ要素５３４１の値は、サービスの場所を示すＵＲＬ又はＩＰアドレスを示す。Ｔｙｐｅｓ要素５３４２の値は、サービスの識別名を示す。
【００３５】
ＧｅｔＲｅｓｐｏｎｓｅメッセージ５３０を受信したクライアントＰＣ２０は、ＧｅｔＲｅｓｐｏｎｓｅメッセージに含まれている機器情報（メタ情報）を、例えば、ユーザによる指示入力に応じて表示させる。
【００３６】
図８は、機器情報のクライアントＰＣにおける表示例を示す図である。同図では、製造元の名前、製造元のＵＲＬ、モデルの名前、モデルのＷｅｂサイトのＵＲＬ、モデル番号、機器のＷｅｂサイトのＵＲＬ等が表示された例が示されている。
【００３７】
続いて、ステップＳ１１の詳細について説明する。図９は、広告送信時に複合機において実行される処理の処理手順を説明するためのフローチャートである。
【００３８】
ステップＳ１１０１において、機器情報取得部１２１は、複合機１０より機器情報を取得する。機器情報として取得されるパラメータは、ＧｅｔＲｅｓｐｏｎｓｅメッセージ５３０において送信対象とされるものであればよい。続いて、更新検知部１２３は、特定パラメータについて、現在値（ステップＳ１１０１において取得された値）と、過去の値（特定パラメータ記憶部１３３に記録されている値）とを比較することにより、特定パラメータの更新の有無を判定する（Ｓ１１０２）。機器情報に含まれるパラメータの中で、いずれが特定パラメータであるかについては、パラメータ分類情報記憶部１３１を用いて判定される。
【００３９】
図１０は、パラメータ分類情報記憶部の構成例を示す図である。同図二示されるように、パラメータ分類情報記憶部１３１には、機器情報のパラメータ名（項目名）ごとに重要度が記録（設定）されている。すなわち、パラメータ分類情報記憶部１３１では、パラメータが重要度によって分類されている。同図におけるパラメータ名は、ＧｅｔＲｅｓｐｏｎｓｅメッセージ５３０（図７）における各パラメータのタグ名と一致する。図１０では、便宜上、一部のパラメータについては省略されている。重要度は、高いものか順に「高」、「中」、「低」の３段階に分類されている。ＦｉｒｍｗａｒｅＶｅｒｓｉｏｎの重要度を「高」としたのは、複合機１０におけるファームウェアバージョンの変更は、他のパラメータの変更に比べてユーザに対する影響が最も大きいと考えるからである。また、ＦｒｉｅｎｄｌｙＮａｍｅ（機器名）及びＡｄｄｒｅｓｓ（ＩＰアドレス）の重要度を「中」としたのは、ユーザによって変更可能な値であるからである。他のパラメータの重要度を「低」としたのは、これらのパラメータは基本的にユーザによって変更されるものではないからである。
【００４０】
本実施の形態では、重要度が「高」であるパラメータが特定パラメータとして判定される。図１０の例に基づけば、ＦｉｒｍｗａｒｅＶｅｒｓｉｏｎ（ファームウェアバージョン）が特定パラメータであると判定される。したがって、ステップＳ１１０２では、取得された機器情報に含まれるＦｉｒｍｗａｒｅＶｅｒｓｉｏｎの値と、特定パラメータ記憶部１３３に記録されているＦｉｒｍｗａｒｅＶｅｒｓｉｏｎの値とが比較される。
【００４１】
比較された値が異なる場合（Ｓ１１０３でＹｅｓ）、更新検知部１２３は、特定パラメータの更新を検知する。そこで、保持情報更新部１２４は、更新有無判別情報記憶部１３４に記録されている更新有無判別情報（すなわち、ＭｅｔａｄａｔａＶｅｒｓｉｏｎ）の値を更新する（Ｓ１１０４）。具体的には、ＭｅｔａｄａｔａＶｅｒｓｉｏｎの値に所定値が加算される。当該所定値は、例えば、パラメータ分類情報記憶部１３１において、特定パラメータに関連付けられて記録されていてもよいし、他の記憶領域において管理されていてもよい。当該所定値は、少なくともハッシュ値に基づいて更新が検知された場合に比べて大きな値である。すなわち、本実施の形態では、重要度が高いパラメータの値の変更が検知された場合、ＭｅｔａｄａｔａＶｅｒｓｉｏｎの変更量は大きくされる。
【００４２】
続いて、広告部１２５は、更新後のＭｅｔａｄａｔａＶｅｒｓｉｏｎの値を含むＨｅｌｌｏメッセージ５１０をマルチキャストする（Ｓ１１０５）。続いて、保持情報更新部１２４は、特定パラメータ記憶部１３３に記録されている値を、現在値（ステップＳ１１０１において取得された値）によって更新する（置換する）（Ｓ１１０６）。
【００４３】
ステップＳ１１０３でＮｏの場合、又はステップＳ１１０６に続いて、ハッシュ値生成部１２２は、機器情報のハッシュ値を生成する（Ｓ１１０７）。ここでは、特定パラメータを除く全てのパラメータに基づいて、一つのハッシュ値が生成される。続いて、更新検知部１２３は、機器情報の現在値に基づくハッシュ値（ステップＳ１１０７において生成されたハッシュ値）と、機器情報の過去の値に基づくハッシュ値（ハッシュ値記憶部１３２に記録されているハッシュ値とを比較することにより機器情報の更新の有無を判定する（Ｓ１１０８）。
【００４４】
比較された値が異なる場合（Ｓ１１０８でＹｅｓ）、更新検知部１２３は、機器情報の更新を検知する。そこで、特定パラメータの更新の検知に応じてＨｅｌｌｏメッセージ５１０が送信済みでない場合（Ｓ１１０９でＮｏ）、保持情報更新部１２４は、更新有無判別情報記憶部１３４に記録されている更新有無判別情報（すなわち、ＭｅｔａｄａｔａＶｅｒｓｉｏｎ）の値を更新する（Ｓ１１１０）。ここでは、例えば、ＭｅｔａｄａｔａＶｅｒｓｉｏｎの値に１が加算される。但し、加算値は１に限定されない。続いて、広告部１２５は、更新後のＭｅｔａｄａｔａＶｅｒｓｉｏｎの値を含むＨｅｌｌｏメッセージ５１０をマルチキャストする（Ｓ１１１１）。続いて、保持情報更新部１２４は、ハッシュ値記憶部１３２に記録されているハッシュ値を、現在値（ステップＳ１１０７において生成されたハッシュ値）によって更新する（置換する）（Ｓ１１１２）。なお、ハッシュ値の更新は、特定パラメータの更新の検知に応じてＨｅｌｌｏメッセージ５１０が送信された場合（Ｓ１１０９でＹｅｓ）にも行われる。
【００４５】
一方、比較されたハッシュ値が一致する場合（Ｓ１１０８でＮｏ）、更新検知部１２３は、機器情報は更新されていないと判定する。但し、ネットワーク３０上に複合機１０の存在を通知する必要は有る。そこで、特定パラメータの更新の検知に応じてＨｅｌｌｏメッセージ５１０が送信済みでない場合（Ｓ１１１３でＮｏ）、広告部１２５は、更新有無判別情報記憶部１３４に記録されているＭｅｔａｄａｔａＶｅｒｓｉｏｎの値を含むＨｅｌｌｏメッセージ５１０をマルチキャストする（Ｓ１１１４）。
【００４６】
上述したように、本実施の形態の複合機１０によれば、機器情報のハッシュ値を利用して機器情報の更新の有無を効率的に判定することができる。この点について、図１１を用いて説明する。
【００４７】
図１１は、本実施の形態の効果を説明するための図である。同図において、（Ａ）は、ハッシュ値を用いない場合の、更新の有無の検知方法を示した図である。この場合、過去の機器情報の全てのパラメータを記憶しておく必要がある。また、パラメータごとに値を比較する必要がある。
【００４８】
一方、（Ｂ）のように、ハッシュ値によって比較する場合、過去の機器情報についてはハッシュ値を記憶しておけばよい。したがって、過去の機器情報に関して必要な記憶容量を大幅に削減することができる。また、値の比較回数も大幅に削減することができる。
【００４９】
また、本実施の形態では、特定パラメータ（重要度の高いパラメータ）については、別個に（独立）して管理することができる。したがって、更新されたパラメータを特定することができないという、ハッシュ値の比較によって生じうる不都合を補完することができる。
【００５０】
また、特定パラメータの更新が検知された場合は、相対的にＭｅｔａｄａｔａＶｅｒｓｉｏｎの変更量は大きくされる。したがって、ＭｅｔａｄａｔａＶｅｒｓｉｏｎの変更量によって、単なる機器情報が変更されたことだけでなく、重要なパラメータの変更の有無等も通知することができる。
【００５１】
また、特定パラメータの更新が検知された時点でＨｅｌｌｏメッセージ５１０が送信される。換言すれば、特定パラメータの更新が検知された場合、ハッシュ値の生成やハッシュ値の比較等を待つことなく、Ｈｅｌｌｏメッセージ５１０の送信が実行される。その結果、複合機１０の存在をクライアント側に早期に通知することができる（ハッシュ値の生成のための演算による遅延を回避することができる）。なお、広告部１２５によるＨｅｌｌｏメッセージ５１０の送信処理は、別スレッドにより、他の処理と並列的に実行するようにしてもよい。
【００５２】
なお、本実施の形態では、特定パラメータ以外のパラメータについては、一つのハッシュ値とする例を説明したが、例えば、重要度ごとにハッシュ値が生成されてもよい。本実施の形態の場合、重要度が「高」のパラメータについてはハッシュ値は生成されない。したがって、重要度が「中」のパラメータ群に基づくハッシュ値、重要度が「低」のパラメータ群に基づくハッシュ値の二つのハッシュ値が生成されることになる。この場合、図９において、ステップＳ１１０７〜Ｓ１１１４の処理が、ハッシュ値ごとに順番に実行される。重要度が「中」のハッシュ値に関する処理を先に実行するとよい。重要度が「中」のパラメータの方が少数であり、したがって、ハッシュ値の生成処理も高速である可能性が高いからである。その結果、早期にＨｅｌｌｏメッセージ５１０を送信できる可能性が高まるからである。また、本実施の形態では、重要度が「中」のパラメータの方が更新される可能性が高いという点においても、重要度が「中」のハッシュ値に関する処理を先に実行する意義は有る。また、重要度が高いハッシュ値の比較に基づいて機器情報の更新が検知された場合は、ＭｅｔａｄａｔａＶｅｒｓｉｏｎの値の変更量を相対的に大きくしてもよい。
【００５３】
一方で、特定パラメータは、存在しなくてもよい。換言すれば、機器情報に属する全てのパラメータに基づいて一つのハッシュ値が生成され、当該ハッシュ値のみに基づいて機器情報の更新が検知されてもよい。この場合であっても、機器情報の更新を検知するための記憶容量の削減は図ることができるからである。
【００５４】
なお、本実施の形態では、ＷＳ−ＤｉｓｃｏｖｅｒｙやＷＳ−Ｔｒａｎｓｆｅｒの仕様に準拠した例を説明した。しかし、本発明を適用可能な範囲は、これらの仕様に準拠したシステムに限られない。所定の更新有無判別識別情報をクライアント側に通知し、当該更新有無判別識別情報に基づいて、機器情報の取得の有無を判定するといった手順を有する各種システムに対して、本発明は有効に適用されうる。
【００５５】
以上、本発明の実施例について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【符号の説明】
【００５６】
１            ネットワークシステム
１０          複合機
２０          クライアントＰＣ
３０          ネットワーク
１１          コントローラ
１２          スキャナ
１３          プリンタ
１４          モデム
１５          操作パネル
１６          ネットワークインタフェース
１７          ＳＤカードスロット
８０          ＳＤカード
１１１        ＣＰＵ
１１２        ＲＡＭ
１１３        ＲＯＭ
１１４        ＨＤＤ
１１５        ＮＶＲＡＭ
１２１        機器情報取得部
１２２        ハッシュ値生成部
１２３        更新検知部
１２４        保持情報更新部
１２５        広告部
１２６        機器情報提供部
１３１        パラメータ分類情報記憶部
１３２        ハッシュ値記憶部
１３３      特定パラメータ記憶部
１３４      更新有無判別情報記憶部
【先行技術文献】
【特許文献】
【００５７】
【特許文献１】特開２００７−１０２８０２号公報
【特許文献２】特開２００７−１４８８２８号公報
【非特許文献】
【００５８】
【非特許文献１】"Ｗｅｂ  Ｓｅｒｖｉｃｅ  Ｄｙａｎａｍｉｃ  Ｄｉｓｃｏｖｅｒｙ（ＷＳ−Ｄｉｓｃｏｖｅｒｙ）"、 [online]、[平成２１年８月３日検索]、< http://specs.xmlsoap.org/ws/2005/04/discovery/ws-discovery.pdf>
【非特許文献２】"Ｗｅｂ  Ｓｅｒｖｉｃｅ  Ｔｒａｎｓｆｅｒ（ＷＳ−Ｔｒａｎｓｆｅｒ）"、 [online]、[平成２１年８月３日検索]、<http://www.w3.org/Submission/WS-Transfer/>
【図１】
2011044035.tif 000003
【図２】
2011044035.tif 000004
【図３】
2011044035.tif 000005
【図４】
2011044035.tif 000006
【図５】
2011044035.tif 000007
【図６】
2011044035.tif 000008
【図７】
2011044035.tif 000009
【図８】
2011044035.tif 000010
【図９】
2011044035.tif 000011
【図１０】
2011044035.tif 000012
【図１１】
2011044035.tif 000013