(57)【要約】      （修正有）【課題】中央集権型のサーバを利用せずにネットワークを介して接続された他の情報処理装置と情報を共有することができる情報処理装置を提供する。【解決手段】各情報処理装置１０（Ａ，Ｂ、Ｃ）の記憶装置２８にはネットワークに接続された他の情報処理装置１０との間で共有する共有情報が記憶されている。ある情報処理装置１０（Ａ）で記憶装置２８に記憶された共有情報の少なくとも一部が変更された場合に、該共有情報を変更するための変更情報を含む変更要求メッセージをネットワーク１６を介して他の情報処理装置１０（Ｂ）に送信する。変更要求メッセージを受信した情報処理装置１０（Ｂ）は更に他の情報処理装置１０（Ｃ）に該受信した変更要求メッセージを転送する。これにより、ネットワーク１６に接続され共有情報を共有する各情報処理装置１０に変更情報が送信される。変更情報を受信した情報処理装置１０は該変更情報に基づいて共有情報を変更する。【選択図】図２
2006268587.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークに接続された情報処理装置であって、
前記ネットワークに接続された他の情報処理装置との間で共有する共有情報を記憶した記憶手段と、
前記記憶手段に記憶された共有情報を変更する変更手段と、
前記記憶手段に記憶された共有情報の少なくとも一部が前記変更手段により変更された場合に、該共有情報を変更するための変更情報を前記ネットワークを介して前記他の情報処理装置に送信する送信手段と、
を含む情報処理装置。
【請求項２】
前記変更手段は、前記ネットワークを介して前記変更情報を受信した場合、または前記ネットワークを介さずに共有情報の少なくとも一部を変更する指示が入力された場合に、前記記憶手段に記憶された共有情報を変更する請求項１記載の情報処理装置。
【請求項３】
前記記憶手段は、前記共有情報を共有する情報処理装置を示す情報の一覧を更に記憶し、
前記送信手段は、前記一覧の情報が示す全ての情報処理装置で前記変更情報が受信されるように前記変更情報を送信する請求項１または請求項２記載の情報処理装置。
【請求項４】
前記送信手段は、前記ネットワークに接続された他の情報処理装置であって自装置と関連のある他の情報処理装置に対して、前記変更情報を送信する請求項１または請求項２記載の情報処理装置。
【請求項５】
前記ネットワークに接続された他の情報処理装置であって自装置と関連のある他の情報処置装置の前記変更情報を受信する受信手段を更に備えた請求項１または請求項２記載の情報処理装置。
【請求項６】
前記送信手段は、前記ネットワークに接続された他の情報処理装置であって、文書データに関して所定の処理を行うサービスをネットワーク上で連携して処理をするための指示情報によって自装置と連携された他の情報処理装置に対して、前記変更情報を送信する請求項１または請求項２記載の情報処理装置。
【請求項７】
前記ネットワークに接続された他の情報処理装置であって、文書データに関して所定の処理を行うサービスをネットワーク上で連携して処理をするための指示情報によって自装置と連携された他の情報処理装置の前記変更情報を受信する受信手段を更に備えた請求項１または請求項２記載の記載の情報処理装置。
【請求項８】
前記共有情報は、前記ネットワークに接続された情報処理装置を使用するユーザに関するユーザ情報、及び前記ネットワークに接続された情報処理装置が提供する機能を実現するためのマシン情報の少なくとも一方を含む請求項１乃至請求項７のいずれか１項記載の記載の情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークに接続され、かつ該ネットワークに接続された他の情報処理装置と情報を共有する情報処理装置に関するものである。
【背景技術】
【０００２】
複数の情報処理装置間でユーザ情報やマシン情報を共有する、すなわち、１台の情報処理装置に設定されたユーザ情報やマシン情報と同じ情報を他の情報処理装置にも設定するにより、ユーザは、複数の情報処理装置を同じ条件で使用することができる。
【０００３】
複数の情報処理装置に同一のユーザ情報やマシン情報（以下、共有情報）を設定するための最も単純な方法としては、１台の情報処理装置に対して該情報処理装置に設けられた入出力手段を介して手動で変更された共有情報を何らかの記憶媒体に格納し、該記憶媒体を他の情報処理装置の１つ１つに接続して共有情報を設定する方法がある。
【０００４】
しかしながら、このような方法では、共有情報を全ての情報処理装置に設定するのに手間がかかる。従って、変更された共有情報を自動的に転送する方法が提案されている。例えば、固定的なサーバを設置して、該サーバに共有情報を格納し、各情報処理装置は該サーバから共有情報を取得し、共有情報が変更されたときには、サーバに格納されている情報を変更する中央集権型の情報機器ネットワークシステムが知られている（例えば、特許文献１参照。）。
【０００５】
一方、ネットワークに接続された他の情報処理装置と指示情報により連携させることができる装置が提案されている。（例えば、特許文献２参照）
【特許文献１】特開２０００−２０４７１公報
【特許文献２】特開２００４−１６３９９７公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、上述した中央集権型のシステムでは、サーバに障害が発生した場合には、各情報処理装置は共有情報を取得することができない、という問題がある。また、サーバとのコネクションを確認するためのプローブ・メッセージの送信によりネットワーク・トラフィックが増大したり、サーバに負荷が集中したりする、という問題も発生する。
【０００７】
本発明は、上述した問題を解決するためになされたものであり、中央集権型のサーバを利用せずにネットワークを介して接続された他の情報処理装置と情報を共有することができる情報処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するために本発明の情報処理装置は、ネットワークに接続された情報処理装置であって、前記ネットワークに接続された他の情報処理装置との間で共有する共有情報を記憶した記憶手段と、前記記憶手段に記憶された共有情報を変更する変更手段と、前記記憶手段に記憶された共有情報の少なくとも一部が前記変更手段により変更された場合に、該共有情報を変更するための変更情報を前記ネットワークを介して前記他の情報処理装置に送信する送信手段と、を含んで構成されている。
【０００９】
情報処理装置の記憶手段には、ネットワークに接続された他の情報処理装置との間で共有する共有情報が記憶されている。変更手段は、記憶手段に記憶された共有情報を変更する。
【００１０】
ネットワークに複数の情報処理装置が接続されているときに、該ネットワーク接続されたある情報処理装置で記憶手段に記憶された共有情報の少なくとも一部が変更手段により変更された場合には、該共有情報が変更された情報処理装置の送信手段は、該共有情報を変更するための変更情報をネットワークを介して他の情報処理装置に送信する。
【００１１】
これにより、ネットワークに接続され共有情報を共有する他の情報処理装置に変更情報が送信される。
【００１２】
従って、本発明の情報処理装置によれば、中央集権型のサーバを利用せずにネットワークを介して接続された他の情報処理装置と情報を共有することができる。
【００１３】
また、前記変更手段は、前記ネットワークを介して前記変更情報を受信した場合、または前記ネットワークを介さずに共有情報の少なくとも一部を変更する指示が入力された場合に、前記記憶手段に記憶された共有情報を変更することができる。
【００１４】
これにより、情報処理装置は、例えば、ネットワークを介さずに変更指示が入力された場合だけでなく、他の情報処理装置から送信された変更情報を受信した場合にも、記憶手段に記憶された共有情報を変更することができるため、複数台の情報処理装置に記憶された共有情報を変更する場合に、ユーザの負担を軽減することができる。
【００１５】
また、前記記憶手段は、前記共有情報を共有する情報処理装置を示す情報の一覧を更に記憶し、前記送信手段は、前記一覧の情報が示す全ての情報処理装置で前記変更情報が受信されるように前記変更情報を送信することができる。
【００１６】
これにより、情報処理装置は、記憶手段に記憶された共有情報の一部が変更された場合に、共有情報を共有する情報処理装置に確実に変更情報を送信することができる。
【００１７】
また、前記送信手段は、前記ネットワークに接続された他の情報処理装置であって自装置と関連のある他の情報処理装置に対して、前記変更情報を送信することができる。さらにまた、前記ネットワークに接続された他の情報処理装置であって自装置と関連のある他の情報処置装置の前記変更情報を受信する受信手段を更に設けることもできる。
【００１８】
なお自装置と関連のある他の情報処理装置は、自装置と同一機能をもつものとしてもよいし、グループ分けされたものとしてもよい。また、関連のあるなしは、送信時に判断してもよいし、送信時ではなく受信時に判断してもよい。これにより、ネットワークに接続された情報処理装置の中から、変更情報を受信することが必要な情報処理装置に対して共有情報を送信または受信することができ、必要のない情報配信でユーザの負担を増やすことを防止できる。
【００１９】
また、前記送信手段は、前記ネットワークに接続された他の情報処理装置であって、文書データに関して所定の処理を行うサービスをネットワーク上で連携して処理をするための指示情報によって自装置と連携された他の情報処理装置に対して、前記変更情報を送信することができる。さらにまた、前記ネットワークに接続された他の情報処理装置であって、文書データに関して所定の処理を行うサービスをネットワーク上で連携して処理をするための指示情報によって自装置と連携された他の情報処理装置の前記変更情報を受信する受信手段を更に設けることもできる。
【００２０】
このように、ネットワークに接続された情報処理装置が、ネットワークに接続された他の情報処理装置と指示情報によって連携されている場合には、送信手段は、該指示情報によって連携された他の情報処理装置に変更情報を送信することができる。なお、指示情報によって連携されているかは送信時に判断してもよいし、送信時でなく受信時に判断してもよい。
【００２１】
これにより、ネットワークに接続された情報処理装置の連携が効率よく行われる。
【００２２】
なお、前記共有情報は、前記ネットワークに接続された情報処理装置を使用するユーザに関するユーザ情報、及び前記ネットワークに接続された情報処理装置が提供する機能を実現するためのマシン情報の少なくとも一方を含むことができる。
【発明の効果】
【００２３】
以上説明したように、本発明の情報処理装置は、共有情報の少なくとも一部が変更された場合に、共有情報を変更するための変更情報を共有情報を共有する他の情報処理装置に送信するため、中央集権型のサーバを利用せずにネットワークを介して接続された他の情報処理装置と情報を共有することができる、という優れた効果を奏する。
【発明を実施するための最良の形態】
【００２４】
以下、図面を参照して、本発明の実施の形態について詳細に説明する。
【００２５】
図１に示すように、本発明の実施の形態に係る情報処理装置１０Ａ、１０Ｂ、１０Ｃは、ネットワーク１６を介して接続されている。この情報処理装置１０Ａ、１０Ｂ、１０Ｃは、コピー機能、スキャン機能、プリント機能等、様々な機能を備えた複合機であり、操作者が後述する表示装置３６を介して入力した指示情報に応じて動作することができる。また、本実施の形態では、パーソナルコンピュータ（ＰＣ）１４もネットワーク１６に接続されており、情報処理装置１０Ａ、１０Ｂ、１０Ｃは、ＰＣ１４から送信された各種データや命令を受信し、それに応じて動作することができる。
【００２６】
次に、情報処理装置１０Ａ、１０Ｂ、１０Ｃの構成について説明する。なお、各情報処理装置１０Ａ、１０Ｂ、１０Ｃは同一の構成であるので、以下、情報処理装置１０Ａ、１０Ｂ、１０Ｃを区別しないで説明するときは単に情報処理装置１０と呼称して説明する。図２に示すように、情報処理装置１０は、ＣＰＵ２２、ＲＯＭ２４、ＲＡＭ２６、記憶装置２８、処理部３０、ネットワークインターフェイス（Ｉ／Ｆ）３２、入出力Ｉ／Ｆ３４、および表示装置３６がバス３８を介して相互に接続されて構成されている。
【００２７】
ＣＰＵ２２は、ＲＯＭ２４に記憶されたプログラムを実行することにより情報処理装置１０全体の動作を制御する。ＲＯＭ２４には、ＣＰＵ２２が実行するプログラム等が記憶されている。ＲＡＭ２６は、ワークメモリである。
【００２８】
記憶装置２８は、ハードディスクドライブ（ＨＤＤ）等から構成されている。記憶装置２８には、ネットワーク１６に接続された各情報処理装置１０で共有するユーザ情報やマシン情報が記憶されている。
【００２９】
ユーザ情報は、各情報処理装置１０を使用するユーザに関する情報である。ユーザ情報は、例えば、ユーザ毎に各情報処理装置１０で使用できる機能を限定する場合には、ユーザを識別するための識別情報と、使用できる機能とが対応付けられた情報とすることができる。また、ユーザを識別するための識別情報と、情報処理装置１０の全ての機能の使用を許可するか否かを示す許可情報とが対応付けられた情報であってもよい。このような情報を記憶しておくことにより、ＣＰＵ２２は、特定のユーザのみに情報処理装置１０の使用許可を与えたり、使用できる機能を制限したりすることができる。
【００３０】
マシン情報は、各情報処理装置１０が提供する機能を実現するための情報である。マシン情報は、例えば、起動時の初期画面や所定のメニュー画面を各情報処理装置１０で同一にする場合には、該初期画面やメニュー画面を表示するための表示情報とすることもできるし、エラー発生時に行われる処理を同一にするには、該エラー発生時に起動するプログラムとすることもできる。このような情報を記憶しておくことにより、各情報処理装置１０で提供される機能を統一することができる。
【００３１】
なお、ユーザ情報及びマシン情報は、各情報処理装置１０で共有して使用されるため、これらを総称して共有情報と呼称する。
【００３２】
また、記憶装置２８には、各情報処理装置１０から受信したメッセージのメッセージＩＤを登録しておくためのＩＤテーブルが記憶されている。このＩＤテーブルを参照することにより、同一のメッセージを重複して受信しないように処理することができる。メッセージ及びメッセージＩＤについては後述する。なお、メッセージＩＤは一定期間ＩＤテーブルに保持された後、ＩＤテーブルから消去される。これにより、記憶装置２８を効率的に利用できる。
【００３３】
さらにまた、記憶装置２８には、ネットワーク１６に接続され、上記共有情報を共有する情報処理装置を示す情報の一覧が記憶されている。なお、この一覧は、予め記憶装置２８に記憶しておいてもよいし、所定のタイミングで所定のコンピュータから取得するようにしてもよい。
【００３４】
また、共有情報がネットワーク１６を介さずに手動で変更されたときには、情報処理装置１０は、共有情報を変更するための変更情報を含む変更要求メッセージ（後述）を送信するが、このとき、上記一覧が示す各情報処理装置と、応答メッセージの受信状況を示すフラグが対応したテーブルを記憶装置２８の所定エリアに生成する。この応答テーブルは、送信した変更要求メッセージに対する上記一覧が示す全情報処理装置からの応答メッセージの受信状況を示す。各フラグの初期状態は「０」であり、他の情報処理装置１０から変更要求メッセージに対する応答メッセージを受信したときには、該情報処理装置１０に対応するフラグを「１」にする。応答テーブルのフラグが全て「１」になったときに、変更要求メッセージがネットワーク１６に接続された他の情報処理装置１０全てに送信されたことが確認でき、該応答テーブルは記憶装置２８を抹消する。
【００３５】
処理部３０は、原稿の画像を読み取るスキャナ部（イメージインプットターミナル：ＩＩＴ）や、印刷材を用いて印刷するプリント部（イメージアウトプットターミナル：ＩＯＴ）により構成され、ＣＰＵ２２の制御によりコピー機能、スキャン機能、プリント機能等、様々な機能を実行する。
【００３６】
入出力Ｉ／Ｆ３４は、例えば、着脱可能な記憶機器やＰＤＡ等のコンピュータを情報処理装置１０に直接接続することができるインタフェースであり、接続された機器とネットワーク１６を介さずに直接データの送受信を行うことができる。
【００３７】
表示装置３６は、タッチパネル機能付液晶ディスプレイから構成されている。表示装置３６には、各種情報やメッセージ等が表示されると共に、操作者の指先等によって接触指示されることにより各種情報が指示入力される。
【００３８】
ネットワークＩ／Ｆ３２は、ネットワーク１６に接続され、ネットワーク１６に接続された他の装置との間で各種データの送受信を行う。
【００３９】
各情報処理装置１０間の通信は、所定のプロトコルを用いて行われる。また、本実施の形態では、各情報処理装置１０間の通信では、図３に示されるようなデータ形式のメッセージがやりとりされる。同図に示されるように、メッセージは、メッセージ種別４０、メッセージＩＤ４１、転送回数４２、メッセージ長４３、送信元アドレス４４、送信先アドレス４５、及び処理内容４６から構成されている。
【００４０】
メッセージ種別４０は、メッセージの種別を表す情報である。メッセージの種別には、例えば他の情報処理装置との間でピアツーピアの接続を要求する「接続要求」、共有情報を変更するように要求する「変更要求」、各種要求に応答する「応答」、ピアツーピアの接続を確立するための「接続確認」がある。
【００４１】
メッセージＩＤ４１は、各メッセージ毎に付与される各メッセージに固有のＩＤである。情報処理装置１０では、メッセージを受信したときに、受信したメッセージに含まれるメッセージＩＤ４１が上記記憶装置２８に記憶したＩＤテーブルに登録されているか否かを確認することにより、同一のメッセージを重複して処理しないようにすることができる。
【００４２】
転送回数４２は、メッセージをバケツリレー式に転送するために指定され、該転送回数４２に指定された回数だけメッセージが転送される。なお、転送される毎に該転送回数４２はデクリメントされ、転送回数４２が０になった時点で、メッセージの転送が終了する。なお、本実施の形態において、メッセージ種別が「変更要求」以外のメッセージの場合には、転送回数４２に０が指定される。
【００４３】
メッセージ長４３は、メッセージ全体の長さを表している。ここで、メッセージ種別４０、メッセージＩＤ４１、転送回数４２、メッセージ長４３、送信元アドレス４４、及び送信先アドレス４５は固定長であるが、処理内容４６は可変長のデータであるため、このメッセージ長４３を参照することによって、単一のメッセージに含まれる処理内容４６を確実に読み出して処理することができる。
【００４４】
送信元アドレス４４は、メッセージの送信元の情報処理装置１０のアドレスであり、具体的には、送信元のＩＰアドレスとポート番号が含まれる。
【００４５】
送信先アドレス４５は、メッセージの送信先の情報処理装置１０のアドレスであり、具体的には、送信先のＩＰアドレスとポート番号が含まれる。本実施の形態では、ピアツーピア接続の確立以降、送信先アドレス４５として、該接続が確立した相手装置のＩＰアドレスとポート番号が書込まれる。なお、ピアツーピアの接続が確立する前に他の情報処理装置に接続要求メッセージをブロードキャストする場合には、ここでは、allあるいはanyとして、送信先を指定しないようにする。
【００４６】
処理内容４６は、各メッセージ種別４０に応じて異なる。例えば、メッセージ種別４０が「接続要求」である場合には、ピアツーピアの接続を要求するためのデータが含まれる。
メッセージ種別４０が「変更要求」である場合には、共有情報を変更するための変更情報が含まれる。メッセージ種別４０が「応答」である場合には、どのメッセージに対する応答かを示すための情報、ここでは、応答対象のメッセージを識別するためのメッセージＩＤを含んで構成される。また、メッセージ種別４０が「確認」である場合には、ピアツーピアの接続が確立した旨を示すデータが含まれる。
【００４７】
次に、図４を参照しながら、本実施の形態において、１台の情報処理装置１０で共有情報の少なくとも一部が変更された場合に行われる、変更要求メッセージの転送処理について簡単に説明する。なお、図４では、情報処理装置１０Ａを単にＡとして図示し、情報処理装置１０Ｂを単にＢとして図示し、情報処理装置１０Ｃを単にＣとして図示した。
【００４８】
操作者により情報処理装置１０Ａに記憶されている共有情報の少なくとも一部が変更された場合に、図４に示されるように、情報処理装置１０Ａは、該共有情報の変更がネットワーク１６に接続され共有情報を共有する他の情報処理装置１０Ｂ、１０Ｃに反映されるように、共有情報を変更するための変更情報を含む変更要求メッセージを生成して、ネットワーク１６を介して情報処理装置１０Ｂ及び１０Ｃに伝達する。例えば、情報処理装置１０Ａから送信された変更要求メッセージは、まず情報処理装置１０Ｂにより受信され（図４の（１））、情報処理装置１０Ｂでは、該変更要求メッセージに含まれる変更情報に基づいて共有情報を変更する。更に情報処理装置１０Ｂは、該変更要求メッセージに対する応答メッセージを情報処理装置１０Ａに送信する（図４（２））。
【００４９】
また、情報処理装置１０Ｂは、変更要求メッセージを、情報処理装置１０Ｃに転送する（図４（３））。情報処理装置１０Ｃでは、該変更要求メッセージに含まれる変更情報に基づいて共有情報を変更する。また、情報処理装置１０Ｃは変更要求メッセージに対して応答メッセージを送信する（図４（４））。情報処理装置１０Ｃからの該応答メッセージを受信した情報処理装置１０Ｂは、該応答メッセージを情報処理装置１０Ａに転送する（図４（４））。情報処理装置１０Ａは、応答メッセージを受信すると、記憶装置２８に記憶された共有情報を共有する情報処理装置１０を示す情報の一覧を参照し、ネットワーク１６に接続された情報処理装置１０に変更要求メッセージが転送されたことを確認する。なお、ここで説明した各メッセージの送受信及び転送は、ピアツーピア接続で行われる。
【００５０】
次に、図５乃至図９を参照しながら図４で説明した変更要求メッセージの転送処理について詳細に説明する。
【００５１】
まず、図５を参照しながら、２台の情報処理装置１０間でピアツーピアの接続が確立されるまでの動作について簡単に説明する。
【００５２】
図５（Ａ）は、ピアツーピアの接続確立動作を説明する説明図であり、図５（Ｂ）は、ピアツーピアの接続確立プロセスを示したシーケンス図である。ここでは、情報処理装置１０Ａと情報処理装置１０Ｂとが接続確立する場合を例に挙げて説明する。なお、図５（Ａ）及び図５（Ｂ）では、情報処理装置１０Ａを単にＡとして図示し、情報処理装置１０Ｂを単にＢとして図示した。
【００５３】
まず、図５（Ｂ）のステップ５０で、情報処理装置１０Ａから、接続要求メッセージ（Join）をブロードキャストする（図５（Ａ）の（１）も参照）。ステップ５２では、該ブロードキャストされた接続要求メッセージを受信した情報処理装置１０Ｂから、該接続要求メッセージに対する応答メッセージ（Join Response）を、情報処理装置１０ＡのＩＰアドレスやポート番号を送信先アドレス４４に指定して送信する。また、情報処理装置１０Ｂは情報処理装置１０Ａと直接通信するための情報（自装置のＩＰアドレスやポート番号）を該応答メッセージの送信元アドレス４５に指定して情報処理装置１０Ａに送信する。この応答メッセージを受信した情報処理装置１０Ａは、該応答メッセージに含まれる情報を利用して、接続確認メッセージ（Hello）を情報処理装置１０Ｂに送信する（図５（Ａ）の（２）参照）。これにより、ステップ５６で、情報処理装置１０Ａと情報処理装置１０Ｂとの間でピアツーピアの接続が確立される（図５（Ａ）の（３）参照）。
【００５４】
なお、ここでは、情報処理装置１０は、送信した接続要求メッセージに対して最も早く応答してきた他の情報処理装置１０と接続を確立する。また、接続要求メッセージには、該メッセージの生存時間を設定しておくこともでき、接続要求メッセージ送信から該生存時間が経過するまでに接続要求メッセージに対する応答メッセージを受信できなかった時には、新たな接続要求メッセージを送信することができる。
【００５５】
以上のようにピアツーピアの接続が確立された後は、該ピアツーピアの接続が確立された情報処理装置１０間で、変更要求メッセージや変更要求メッセージに対する応答メッセージ等の送受信を行うことができる。
【００５６】
次に、変更要求メッセージの転送処理について、図６から図９のフローチャートを用いて、詳細に説明する。
【００５７】
図６は、情報処理装置１０にネットワーク１６を介さずに共有情報の少なくとも一部を変更する指示が入力された場合に起動される処理ルーチンの流れを示したフローチャートである。この指示は、例えば、入出力Ｉ／Ｆ３４に接続されたＰＤＡ等のコンピュータからネットワーク１６を介さずに直接変更の指示が入力された場合、あるいは、表示装置３６から直接変更の指示が入力された場合に起動される。
【００５８】
ステップ１００では、入力された指示に従って、記憶装置２８に記憶されたユーザ情報・マシン情報（共有情報）の少なくとも一部を変更する。
【００５９】
ステップ１０２では、共有情報の変更に従って、該変更がネットワーク１６に接続され共有情報を共有する他の情報処理装置１０の共有情報に反映されるように、該共有情報を変更するための変更情報を生成し、上記ピアツーピア接続確立を行って該変更情報を処理内容４６に含めた変更要求メッセージをネットワーク１６に接続された他の情報処理装置１０に送信する。このとき、上述した応答テーブルを記憶装置２８の所定のエリアに生成する。
【００６０】
なお、変更要求メッセージのメッセージＩＤ４１には上述したように、固有のＩＤが付与される。変更要求メッセージの転送回数４２には予め定められた回数を指定する。ここでは、ネットワーク１６に接続された情報処理装置１０の台数を指定する。変更要求メッセージの送信元アドレス４４には、自装置のアドレスを指定し、送信先アドレス４５には、ピアツーピアで接続された相手装置のアドレスを指定する。
【００６１】
ステップ１０４では、相手装置から変更要求メッセージに対する応答メッセージを受信したか否かを判断する。応答メッセージが受信された場合には、処理を終了してピアツーピア接続を切断する。
【００６２】
図７及び図８は、他の情報処理装置１０とピアツーピアで接続が確立された情報処理装置１０であって、接続要求メッセージを受信した側の情報処理装置１０で実行されるメッセージ受信処理ルーチンの流れを示したフローチャートである。
【００６３】
ステップ２００では、メッセージの受信待ちを行い、メッセージを受信した場合には、ステップ２０２で、メッセージ種別を判断する。メッセージ種別４０が「変更要求」であった場合には、受信したメッセージは共有情報を変更するための変更要求メッセージであると判断して、ステップ２０４に移行する。ステップ２０４では、該変更要求メッセージのメッセージＩＤ４１を読み出し、記憶装置２８に記憶されているＩＤテーブルを検索し、該メッセージＩＤ４１がＩＤテーブルに登録されているか否かを確認する。
【００６４】
ステップ２０６では、ＩＤテーブルの検索結果から、受信した変更要求メッセージが以前受信した変更要求メッセージであるか否かを判断する。該メッセージＩＤ４１が、ＩＤテーブルに登録されていれば、受信した変更要求メッセージが以前受信した変更要求メッセージであると判断し、該変更要求メッセージに対する処理は何も行わずに終了する。また、該メッセージＩＤ４１が、ＩＤテーブルに登録されていなければ、受信した変更要求メッセージは以前受信した変更要求メッセージではない、すなわち初めて受信した変更要求メッセージであると判断して、ステップ２０８に移行し、メッセージＩＤ４１をＩＤテーブルに登録する。
【００６５】
ステップ２１０では、受信した変更要求メッセージに対して、該変更要求を受信した旨を示す応答メッセージをピアツーピアで接続されている相手装置に送信する。なお、この応答メッセージの処理内容４６には、どの変更要求メッセージに対する応答かを示すための情報、すなわち、該変更要求メッセージのメッセージＩＤ４１と、変更要求メッセージを受信した情報処理装置１０（自装置）を示す情報（アドレス等）を含んで構成する。
【００６６】
ステップ２１２では、受信した変更要求メッセージから転送回数４２を読み出し、受信した変更要求メッセージが指定された転送回数だけ転送済みか否かを判断する。ここでは、読み出した転送回数４２が０であれば、指定された転送回数だけ転送済みであり、０より大きければ、受信した変更要求メッセージは指定された転送回数だけ転送されていないと判断する。
【００６７】
ステップ２１２で、受信した変更要求メッセージが指定された転送回数だけ転送されていないと判断した場合には、ステップ２１４で該変更要求メッセージの転送回数４２をデクリメントし、ステップ２１６で、現在のピアツーピアの接続が切断された後に該変更要求メッセージを転送するための転送予約をする。
【００６８】
一方ステップ２１２で、受信した変更要求メッセージが指定された転送回数だけ転送済みであれば、ステップ２１８に移行する。
【００６９】
ステップ２１８では、受信した変更要求メッセージの処理内容４６に含まれる変更情報を読み出し、該変更情報に基づいて自装置の共有情報が変更可能か否かを判断する。例えば、共有情報の中の、何らかの情報についてその情報処理装置１０独自の情報が設定されており、その情報だけは変更できない場合がある。従って、変更要求メッセージを受信した情報処理装置１０において、該変更要求メッセージに含まれる変更情報が、独自の設定がなされている情報についての変更であった場合には、変更不可能であると判断することができる。
【００７０】
ステップ２１８で、変更不可能であると判断した場合には、ステップ２４０に移行し、変更できない旨の応答メッセージをピアツーピアで接続されている相手装置に送信する。この応答メッセージの処理内容４６も、上記変更要求メッセージのメッセージＩＤ４１及び、変更要求メッセージを受信した情報処理装置１０（自装置）を示す情報を含んで構成する。応答メッセージ送信の後は、ピアツーピア接続を切断して、この処理ルーチンを終了する。
【００７１】
一方、ステップ２１８で、変更可能であると判断した場合には、ステップ２２０に移行し、現在、自装置で変更対象の共有情報を用いた処理を実行中であるか否かを判断する。ここで、変更対象の共有情報を用いた処理を実行中であると判断した場合には、ステップ２２２で、該変更を予約する。このとき、図９に示される予約処理ルーチンのプログラムが別に起動され開始される。予約処理ルーチンでは、ステップ２８０で、処理の終了待ちを行い、処理が終了したと判断した場合には、ステップ２８２で、上記変更情報に従って共有情報の少なくとも一部を変更する。この予約処理ルーチンは、図７及び図８の処理ルーチンとは独立に行われる。
【００７２】
図８のステップ２２２の後は、ステップ２２４で、変更を予約した旨の応答メッセージをピアツーピアで接続されている相手装置に送信する。この応答メッセージの処理内容４６も、上記変更要求メッセージのメッセージＩＤ４１及び変更要求メッセージを受信した情報処理装置１０（自装置）を示す情報を含んで構成する。応答メッセージ送信の後はピアツーピア接続を切断して、この処理ルーチンを終了する。
【００７３】
また、ステップ２１８で、変更対象の共有情報を用いた処理の実行中でないと判断した場合には、ステップ２５０で、上記変更情報に従って共有情報の少なくとも一部を変更し、ステップ２５２で変更した旨の応答メッセージをピアツーピアで接続されている相手装置に送信する。この応答メッセージの処理内容４６も、上記変更要求メッセージのメッセージＩＤ４１及び変更要求メッセージを受信した情報処理装置１０（自装置）を示す情報を含んで構成する。応答メッセージ送信の後はピアツーピア接続を切断して、この処理ルーチンを終了する。
【００７４】
一方、ステップ２０２で、受信したメッセージのメッセージ種別４０が「応答」であった場合には、受信したメッセージは何らかの変更要求メッセージに対する応答メッセージであると判断して、ステップ２３０に移行し、該応答メッセージが自装置への応答メッセージであるか否かを判断する。具体的には、該応答メッセージの処理内容４６に含まれるメッセージＩＤ４１を読み出し、該読み出したメッセージＩＤ４１が自装置から送信された変更要求メッセージのメッセージＩＤ４１であれば、自装置への応答メッセージであると判断することができ、該読み出したメッセージＩＤ４１が自装置から送信された変更要求メッセージのメッセージＩＤ４１でなければ、自装置への応答メッセージではないと判断することができる。
【００７５】
ステップ２３０で、受信した応答メッセージが自装置への応答メッセージでないと判断した場合には、ステップ２３４に移行し、現在のピアツーピアの接続が切断された後に該応答メッセージを転送するための転送予約をし、ピアツーピア接続を切断して、この処理ルーチンを終了する。
【００７６】
また、ステップ２３０で、受信した応答メッセージが自装置への応答メッセージであると判断した場合には、ステップ２３２に移行し、該応答メッセージを処理する。具体的には、該応答メッセージの処理内容４６に含まれる情報から、どの情報処理装置１０からの応答メッセージであるかを確認し、記憶装置２８に生成された応答テーブルの該情報処理装置１０に対応するフラグを「１」にする。この後、ピアツーピア接続を切断して、この処理ルーチンを終了する。
【００７７】
なお、上記ステップ２１６またはステップ２３４で転送予約されたメッセージは、ＣＰＵ２２の制御により、新たに他の情報処理装置１０とピアツーピアの接続確立が行われて、他の情報処理装置１０に転送される。
【００７８】
上記のように変更要求メッセージの転送がバケツリレー式に他の情報処理装置１０に転送されることによって、変更要求メッセージを共有情報を共有する全ての情報処理装置に転送することができる。
【００７９】
なお、最初に変更要求メッセージを生成して送信した情報処理装置１０には、各情報処理装置１０から応答メッセージが転送される。この情報処理装置１０は、該応答メッセージを受信したときに、上記記憶装置２８に記憶された応答テーブルの該当のフラグを「１」にして（上記ステップ２３２参照）、全てのフラグが「１」になるまで待機する。全てのフラグが「１」になった時点で、応答テーブルを抹消する。これにより、最初に変更要求メッセージを生成して送信した情報処理装置１０は、共有情報を共有する全ての情報処理装置１０に変更要求メッセージが送信されたことを確認することができる。
【００８０】
また、何らかの障害が発生して、全ての情報処理装置１０から応答メッセージを受信できなかった場合には、エラーメッセージを表示装置３６に表示することができる。
【００８１】
以上説明したように、共有情報の少なくとも一部が変更された場合に、共有情報を変更するための変更情報を共有情報を共有する他の情報処理装置に送信するようにしたため、該変更情報を受信した情報処理装置で該変更情報に基づいて共有情報の少なくとも一部を変更することができ、これにより、中央集権型のサーバを利用せずに複数の情報処理装置間で共有情報を利用することができる。
【００８２】
また、上記実施の形態では、各情報処理装置が、サーバ、クライアントあるいはルーターとして振舞うことができるので、特定のサーバを必要とする中央集権型のシステムに比較してシステム全体のアベイラビリティが高い。特に、中央集権型のサーバを用いた中央集権型のシステムでは、該サーバに障害が発生すると情報処理装置が共有情報を取得することができなくなる可能性が高いが、上記説明したように、共有情報が変更された情報処理装置が、共有情報を変更するための変更情報を他の情報処理装置に送信するようにしたため、中央集権型システムで発生するような問題は回避できる。また、特定の情報処理装置に負荷がかからないので、負荷分散が可能になる。また、ユーザ情報やマシン情報等の共有情報の変更を容易に行うことができるので、ユーザの負担を軽減することができる。
【００８３】
また、各情報処理装置間で送受信されるメッセージは、上記実施の形態で説明した構成に限定されず、例えば、メッセージに生存時間を指定できるようにしてもよい。
【００８４】
例えば、変更要求メッセージを送信した時に、電源が切断されていたり、何らかの障害が発生して通信が不能となった情報処理装置が存在していた場合には、該情報処理装置に該変更要求メッセージを伝達することはできず、長い時間無駄に転送処理が繰り返される場合がある。従って、変更要求メッセージに生存時間を指定しておけば、指定時間後に該変更要求メッセージの転送を終了させることができ、変更要求メッセージを受信できなかった情報処理装置の電源が投入される時あるいは障害が復旧する時を見計らって、所定時間経過後に該変更要求メッセージを再送するようにすることもできる。これにより、確実に全ての情報処理装置１０に変更情報を送信することができる。
【００８５】
また、上記実施の形態では、変更情報（変更情報を含む変更要求メッセージ）を順次転送することによって、変更情報を他の全ての情報処理装置１０に伝達する例について説明したが、最初に共有情報が変更された情報処理装置１０から他の全ての情報処理装置１０に送信するようにしてもよい。
【００８６】
また、上記実施の形態では、３台の情報処理装置１０がネットワークに接続され、共有情報を共有する場合を例に挙げて説明したが、これに限定されず、２台であってもよいし、４台以上であっても上記と同様に処理することができる。
【００８７】
また、上記実施の形態において、ネットワークに接続された情報処理装置１０のうち、自装置と関連のある他の情報処理装置１０に対して変更情報が送信されるようにしてもよい。また、関連のある他の情報処理装置１０からの変更情報を受信して、該変更情報に基づいて共有情報の少なくとも一部を変更するようにしてもよい。関連のある他の情報処理装置１０とは、自装置と同一機能を有する装置であってもよいし、同一のグループＩＤを有する装置とすることもできる。
【００８８】
関連の有無については、予め装置にグループＩＤ等を設定しておいてもよいし、送受信の際に、関連の有無（例えば同一機能を有するか否か）を確認することにより、関連のある情報処理装置間で変更情報の送受信を行うことができる。
【００８９】
また、本発明は上記実施の形態に限定されるものではなく、例えば、ネットワークに接続された情報処理装置であって、文書データに関して所定の処理を行うサービスをネットワーク上で連携して処理をするための指示情報によって連携された他の情報処理装置との間で、共有情報を共有すると共に変更情報を送受信するようにしてもよい。
【００９０】
図１０は、情報処理装置が指示情報によって連携された文書処理システムの構成を示すブロック図である。
【００９１】
文書管理システム１は、様々なサービスやアプリケーションがネットワーク５を介して接続されたものである。ここで、サービスとは外部からの要求に応じて、文書に関する利用可能な機能をいう。
【００９２】
この文書処理システム１は、複合機６５と、ユーザの所望のサービスを検索するサービス検索サーバ６６と、指示情報としての指示書を作成する指示書エディタ６７と、指示書を管理する指示書管理サーバ６８と、連携処理を実行する連携処理サーバ６９と、を備えている。また、文書データを編集する文書編集サーバ６１、文書データを管理する文書管理サーバ６２、文書データを承認する承認処理サーバ６３、スキャンサービスを行うスキャンサーバ６４、第１のサービス処理を行う第１のサービス処理装置７０と、第２のサービス処理を行う第２のサービス処理装置８０と、を備えている。これら各装置の構成は、図２と同様であり、各々ネットワーク５を介して接続されている。
【００９３】
ここで、指示書は、一連の処理を複数の機能的な処理に分解した場合において、各機能の関係を表す情報と、各機能を呼び出すための情報と等を含んでいる。また連携とは、あるサービスの結果が以降に起動するサービスを決定したり、あるいは、以降のサービス動作に影響を与える等、サービス間の関係を有することをいう。
【００９４】
ここで、第１のサービス処理装置７０で共有情報に変更があった場合に、第１のサービス処理装置７０が指示書によって連携しているのがサービス検索サーバ６６のみだった場合は、第１のサービス処理装置７０は、該サービス検索サーバ６６に対して変更情報を通知する。また、第１のサービス処理装置７０が、第２のサービス処理装置８０とも指示書によって連携されている場合、例えば、第１のサービス処理装置７０の処理結果に基づいて第２のサービス処理を行う場合には、第１のサービス処理装置７０の変更情報は第２のサービス処理装置８０にも通知される。
【００９５】
送信された変更情報は、指示書によって連携されたサービス検索サーバや第２のサービス処理装置によって受信され、該変更情報に従って共有情報の少なくとも一部が変更される。
【００９６】
これによっても、中央集権型のサーバを利用せずに複数の情報処理装置間で共有情報を利用することができる。
【図面の簡単な説明】
【００９７】
【図１】本実施の形態にかかる複数の情報処理装置とパーソナルコンピュータとがネットワークを介して接続された状態を示した図である。
【図２】情報処理装置の構成図である。
【図３】情報処理装置間で送受信されるメッセージのデータ形式の一例である。
【図４】１台の情報処理装置で共有情報が変更された場合に行われる、変更要求メッセージの転送処理について説明する説明図である。
【図５】（Ａ）は、ピアツーピアの接続確立動作を説明する説明図であり、（Ｂ）は、ピアツーピアの接続確立プロセスを示したシーケンス図である。
【図６】情報処理装置にネットワークを介さずに共有情報の少なくとも一部を変更する指示が入力された場合に起動される処理ルーチンの流れを示したフローチャートである。
【図７】他の情報処理装置とピアツーピアで接続が確立された情報処理装置であって、接続要求メッセージを受信した側の情報処理装置で実行されるメッセージ受信処理ルーチンの流れを示したフローチャートである。
【図８】他の情報処理装置とピアツーピアで接続が確立された情報処理装置であって、接続要求メッセージを受信した側の情報処理装置で実行されるメッセージ受信処理ルーチンの流れを示したフローチャートである。
【図９】予約処理ルーチンの流れを示したフローチャートである。
【図１０】情報処理装置が指示情報によって連携された文書処理システムの構成を示すブロック図である。
【符号の説明】
【００９８】
１０  情報処理装置
１６  ネットワーク
２２  ＣＰＵ
２４  ＲＯＭ
２６  ＲＡＭ
２８  記憶装置
３２  ネットワークインタフェース
３４  入出力インタフェース
３６  表示装置
【図１】
2006268587.tif 000003
【図２】
2006268587.tif 000004
【図３】
2006268587.tif 000005
【図４】
2006268587.tif 000006
【図５】
2006268587.tif 000007
【図６】
2006268587.tif 000008
【図７】
2006268587.tif 000009
【図８】
2006268587.tif 000010
【図９】
2006268587.tif 000011
【図１０】
2006268587.tif 000012