(57)【要約】【課題】  Ｗｅｂサービスの変動に容易に対応すること。【解決手段】  中継サーバは、複数のＷｅｂサーバそれぞれが提供するＷｅｂサービスを利用するための複数の操作それぞれに対し、ＭＦＰと中継サーバとの間で機能を実行させるために予め定義された複数の操作のうち対応する操作を関連付けた関連付テーブルを記憶するＨＤＤと、ＭＦＰと中継サーバとの間で予め定義された複数の操作を含むメッセージを受信するメッセージ受信部５１と、メッセージを関連付テーブルを用いて変換する変換部５３と、変換されたメッセージをメッセージで特定される機能を実行可能なＷｅｂサーバに送信し、変換されたメッセージに従って機能を実行させる機能実行指示部５５と、Ｗｅｂサーバから機能の実行結果を受信する実行結果受信部５７と、受信された実行結果をＭＦＰに送信する実行結果送信部５９と、を備える。【選択図】        図４
2010026562.tif 000002
【特許請求の範囲】
【請求項１】
それぞれがＷｅｂサービスを提供する複数のＷｅｂサーバおよび情報処理装置と通信可能な中継サーバであって、
前記複数のＷｅｂサーバそれぞれが提供するＷｅｂサービスを利用するための複数の操作それぞれに対し、前記情報処理装置と前記中継サーバとの間で機能を実行させるために予め定義された複数の操作のうち対応する操作を関連付けた関連付テーブルを記憶する関連付テーブル記憶手段と、
前記情報処理装置から前記情報処理装置と前記中継サーバとの間で予め定義された複数の操作を含むメッセージを受信するメッセージ受信手段と、
前記メッセージを前記関連付テーブルを用いて変換する変換手段と、
前記変換されたメッセージを前記複数のＷｅｂサーバのうち前記メッセージで特定される機能を実行可能なＷｅｂサーバに送信し、前記変換されたメッセージに従って機能を実行させる機能実行指示手段と、
前記Ｗｅｂサーバから機能の実行結果を受信する実行結果受信手段と、
前記受信された実行結果を前記情報処理装置に送信する実行結果送信手段と、を備えた中継サーバ。
【請求項２】
前記複数のＷｅｂサーバのうちで同種の機能を実行する複数のＷｅｂサーバが存在する場合、同種の機能を実行する複数のＷｅｂサーバを所定の条件に従って並べ替えたリスト情報を前記情報処理装置に送信するリスト情報送信手段と、
前記情報処理装置から同種の機能を実行する複数のＷｅｂサーバのうちから選択された１つのＷｅｂサーバを特定する情報を受信する特定情報受信手段と、をさらに備え、
前記機能実行指示手段は、前記特定されたＷｅｂサーバに前記変換されたメッセージを送信する、請求項１に記載の中継サーバ。
【請求項３】
前記複数のＷｅｂサーバのうちで同種のＷｅｂサービスを提供する複数のＷｅｂサーバが存在する場合、同種のＷｅｂサービスを提供する複数のＷｅｂサーバのうちから１つを選択する選択手段をさらに備え、
前記機能実行指示手段は、前記特定されたＷｅｂサーバに前記変換されたメッセージを送信する、請求項１に記載の中継サーバ。
【請求項４】
メッセージ受信手段は、前記複数のＷｅｂサーバのうちで異なる機能を実行する第１および第２のＷｅｂサーバが存在する場合、前記情報処理装置から前記異なる機能それぞれを実行させるためのメッセージを受信し、
前記変換手段は、前記メッセージを前記関連付テーブルを用いて第１のＷｅｂサーバに対して送信するための第１のメッセージと、第２のＷｅｂサーバに送信するための第２のメッセージとに変換し、
前記機能実行指示手段は、前記第１のメッセージを前記第１のＷｅｂサーバに送信し、前記実行結果受信手段が前記第１のＷｅｂサーバから実行結果を受信した後に、第２のメッセージを前記第２のＷｅｂサーバに送信する、請求項１に記載の中継サーバ。
【請求項５】
前記複数のＷｅｂサーバのうち少なくとも１つは認証情報に基づいて認証する認証手段を含み、該少なくとも１つのＷｅｂサーバは、該認証手段により認証されることを条件に機能を実行し、
前記中継サーバは、前記情報処理装置に代わって前記少なくとも１つのＷｅｂサーバに対して認証情報を送信する代行認証手段をさらに備える、請求項１に記載の中継サーバ。
【請求項６】
新たなＷｅｂサーバが有するＷｅｂサービスを提供するための機能を利用するための複数の操作を定義するプロファイルを取得するプロファイル取得手段と、
前記取得されたプロファイルに基づいて、前記関連付テーブルを更新する更新手段と、をさらに備えた請求項１に記載の中継サーバ。
【請求項７】
それぞれがＷｅｂサービスを提供する複数のＷｅｂサーバおよび情報処理装置と通信可能な中継サーバで実行される中継方法であって、
前記複数のＷｅｂサーバそれぞれが有するＷｅｂサービスを提供するための機能を利用するための複数の操作それぞれに対し、前記情報処理装置と前記中継サーバとの間で予め定められた機能を利用するために定義された複数の操作のうち対応する操作を関連付けた関連付テーブルを記憶するステップと、
前記情報処理装置から前記情報処理装置と前記中継サーバとの間で予め定められた機能を実行させるためのメッセージを受信するステップと、
前記メッセージを前記関連付テーブルを用いて変換するステップと、
前記複数のＷｅｂサーバのうち前記受信されたメッセージで特定される機能を実行可能なＷｅｂサーバに前記変換されたメッセージに従って機能を実行させるために、前記複数のＷｅｂサーバのうち前記受信されたメッセージで特定される機能を実行可能なＷｅｂサーバに前記変換されたメッセージを送信するステップと、
前記Ｗｅｂサーバから機能の実行結果を受信するステップと、
前記受信された実行結果を前記情報処理装置に送信するステップと、を含む中継方法。
【請求項８】
それぞれがＷｅｂサービスを提供する複数のＷｅｂサーバおよび情報処理装置と通信可能な中継サーバで実行される中継プログラムであって、
前記複数のＷｅｂサーバそれぞれが有するＷｅｂサービスを提供するための機能を利用するための複数の操作それぞれに対し、前記情報処理装置と前記中継サーバとの間で予め定められた機能を利用するために定義された複数の操作のうち対応する操作を関連付けた関連付テーブルを記憶するステップと、
前記情報処理装置から前記情報処理装置と前記中継サーバとの間で予め定められた機能を実行させるためのメッセージを受信するステップと、
前記メッセージを前記関連付テーブルを用いて変換するステップと、
前記複数のＷｅｂサーバのうち前記受信されたメッセージで特定される機能を実行可能なＷｅｂサーバに前記変換されたメッセージに従って機能を実行させるために、前記複数のＷｅｂサーバのうち前記受信されたメッセージで特定される機能を実行可能なＷｅｂサーバに前記変換されたメッセージを送信するステップと、
前記Ｗｅｂサーバから機能の実行結果を受信するステップと、
前記受信された実行結果を前記情報処理装置に送信するステップと、を前記中継サーバに実行させる中継プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、中継サーバ、中継方法および中継プログラムに関し、特にＷｅｂサービスを提供するＷｅｂサーバと情報処理装置とを中継する中継サーバ、その中継サーバで実行される中継方法および中継プログラムに関する。
【背景技術】
【０００２】
近年、Ｗｅｂサービスを提供するＷｅｂサーバが登場している。特開２００５−３２１９９５号公報には、ネットワークを介してＷｅｂサーバより提供されるＷｅｂサービスに関する情報を格納し、要求に応じて該Ｗｅｂサービスに関する情報の検索を行う情報処理装置が記載されている。
【０００３】
しかしながら、Ｗｅｂサーバが提供するＷｅｂサービスを利用するためには、ＷｅｂサーバがＷＳＤＬ（Ｗｅｂ  Ｓｅｒｖｉｃｅｓ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）で公開するプロファイルを取得し、そのプロファイルに定義された操作を記述したメッセージをＷｅｂサーバに与えなければならない。このため、複数のＷｅｂサーバが存在し、複数種類のＷｅｂサービスが提供されている場合、複数のＷｅｂサーバそれぞれに対応したメッセージを生成しなければならない。したがって、Ｗｅｂサービスが変更、追加等されて変動する場合に、その変動に応じたメッセージを生成しなければならないといった問題があった。また、同種のＷｅｂサービスを提供する複数のＷｅｂサーバが存在する場合には、いずれのＷｅｂサービスの提供を受けるかをユーザが判断しなければならないといった問題がある。さらに、複数のＷｅｂサービスの利用を望む場合には、複数のＷｅｂサービスを提供する複数のＷｅｂサーバに順にメッセージを送信しなければならないといった問題があった。
【特許文献１】特開２００５−３２１９９５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
この発明は上述した問題点を解決するためになされたもので、この発明の目的の１つは、Ｗｅｂサービスの変動に容易に対応することが可能な中継装置を提供することである。
【０００５】
この発明の他の目的は、Ｗｅｂサービスの変動に容易に対応することが可能な中継方法を提供することである。
【０００６】
この発明のさらに他の目的は、Ｗｅｂサービスの変動に容易に対応することが可能な中継プログラムを提供することである。
【課題を解決するための手段】
【０００７】
上述した目的を達成するためにこの発明のある局面によれば、中継サーバは、それぞれがＷｅｂサービスを提供する複数のＷｅｂサーバおよび情報処理装置と通信可能な中継サーバであって、複数のＷｅｂサーバそれぞれが提供するＷｅｂサービスを利用するための複数の操作それぞれに対し、情報処理装置と中継サーバとの間で機能を実行させるために予め定義された複数の操作のうち対応する操作を関連付けた関連付テーブルを記憶する関連付テーブル記憶手段と、情報処理装置から情報処理装置と中継サーバとの間で予め定義された複数の操作を含むメッセージを受信するメッセージ受信手段と、メッセージを関連付テーブルを用いて変換する変換手段と、変換されたメッセージを複数のＷｅｂサーバのうちメッセージで特定される機能を実行可能なＷｅｂサーバに送信し、変換されたメッセージに従って機能を実行させる機能実行指示手段と、Ｗｅｂサーバから機能の実行結果を受信する実行結果受信手段と、受信された実行結果を情報処理装置に送信する実行結果送信手段と、を備える。
【０００８】
この局面に従えば、複数のＷｅｂサーバそれぞれが提供するＷｅｂサービスを利用するための複数の操作それぞれに対し、情報処理装置と中継サーバとの間で機能を実行させるために予め定義された複数の操作のうち対応する操作を関連付けた関連付テーブルが記憶されており。情報処理装置から受信されるメッセージを関連付テーブルを用いて変換し、変換されたメッセージが複数のＷｅｂサーバのうちメッセージで特定される機能を実行可能なＷｅｂサーバに送信され、Ｗｅｂサーバから受信される機能の実行結果が情報処理装置に送信される。このため、情報処理装置においては、複数のＷｅｂサーバそれぞれが提供するＷｅｂサービスを利用するための複数の操作に関係なく、中継サーバとの間で機能を実行させるために予め定義された複数の操作を含むメッセージを生成できればよい。このため、Ｗｅｂサービスの変動に対して、情報処理装置で生成されるメッセージを変更する必要がない。その結果、Ｗｅｂサービスの変動に容易に対応することが可能な中継装置を提供することができる。
【０００９】
好ましくは、複数のＷｅｂサーバのうちで同種の機能を実行する複数のＷｅｂサーバが存在する場合、同種の機能を実行する複数のＷｅｂサーバを所定の条件に従って並べ替えたリスト情報を情報処理装置に送信するリスト情報送信手段と、情報処理装置から同種の機能を実行する複数のＷｅｂサーバのうちから選択された１つのＷｅｂサーバを特定する情報を受信する特定情報受信手段と、をさらに備え、機能実行指示手段は、特定されたＷｅｂサーバに変換されたメッセージを送信する。
【００１０】
この局面に従えば、同種の機能を実行する複数のＷｅｂサーバを所定の条件に従って並べ替えたリスト情報が情報処理装置に送信されるので、情報処理装置のユーザは、リスト情報を見て機能を実行させるＷｅｂサーバを決定することができる。このため、機能を実行させるＷｅｂサーバを容易に決定することが可能となる。
【００１１】
好ましくは、複数のＷｅｂサーバのうちで同種のＷｅｂサービスを提供する複数のＷｅｂサーバが存在する場合、同種のＷｅｂサービスを提供する複数のＷｅｂサーバのうちから１つを選択する選択手段をさらに備え、機能実行指示手段は、特定されたＷｅｂサーバに変換されたメッセージを送信する。
【００１２】
この局面に従えば、同種のＷｅｂサービスを提供する複数のＷｅｂサーバのうちから１つが選択される。このため、情報処理装置のユーザは、複数のＷｅｂサーバがそれぞれ提供する複数のＷｅｂサービスを知る必要がなく、Ｗｅｂサービスの提供を受けることができる。
【００１３】
好ましくは、メッセージ受信手段は、複数のＷｅｂサーバのうちで異なる機能を実行する第１および第２のＷｅｂサーバが存在する場合、情報処理装置から異なる機能それぞれを実行させるためのメッセージを受信し、変換手段は、メッセージを関連付テーブルを用いて第１のＷｅｂサーバに対して送信するための第１のメッセージと、第２のＷｅｂサーバに送信するための第２のメッセージとに変換し、機能実行指示手段は、第１のメッセージを第１のＷｅｂサーバに送信し、実行結果受信手段が第１のＷｅｂサーバから実行結果を受信した後に、第２のメッセージを第２のＷｅｂサーバに送信する。
【００１４】
この局面に従えば、異なる機能それぞれを実行させるためのメッセージが情報処理装置から受信されると、受信されたメッセージが、関連付テーブルを用いて第１のＷｅｂサーバに対して送信するための第１のメッセージと、第２のＷｅｂサーバに送信するための第２のメッセージとに変換され、第１のメッセージが第１のＷｅｂサーバに送信され、第１のＷｅｂサーバから実行結果が受信された後に、第２のメッセージが第２のＷｅｂサーバに送信される。このため、情報処理装置において、１つのメッセージを送信するだけで、複数のＷｅｂサービスを利用することができる。
【００１５】
好ましくは、複数のＷｅｂサーバのうち少なくとも１つは認証情報に基づいて認証する認証手段を含み、該少なくとも１つのＷｅｂサーバは、該認証手段により認証されることを条件に機能を実行し、中継サーバは、情報処理装置に代わって少なくとも１つのＷｅｂサーバに対して認証情報を送信する代行認証手段をさらに備える。
【００１６】
この局面に従えば、情報処理装置に代わってＷｅｂサーバに対して認証情報が送信されるので、情報処理装置のユーザは、認証情報を入力する必要がなく、Ｗｅｂサーバを意識する必要がない。
【００１７】
好ましくは、新たなＷｅｂサーバが有するＷｅｂサービスを提供するための機能を利用するための複数の操作を定義するプロファイルを取得するプロファイル取得手段と、取得されたプロファイルに基づいて、関連付テーブルを更新する更新手段と、をさらに備える。
【００１８】
この局面に従えば、関連付テーブルが更新されるので、Ｗｅｂサービスの変動に対応することができる。
【００１９】
この発明の他の局面に従えば、中継方法は、それぞれがＷｅｂサービスを提供する複数のＷｅｂサーバおよび情報処理装置と通信可能な中継サーバで実行される中継方法であって、複数のＷｅｂサーバそれぞれが有するＷｅｂサービスを提供するための機能を利用するための複数の操作それぞれに対し、情報処理装置と中継サーバとの間で予め定められた機能を利用するために定義された複数の操作のうち対応する操作を関連付けた関連付テーブルを記憶するステップと、情報処理装置から情報処理装置と中継サーバとの間で予め定められた機能を実行させるためのメッセージを受信するステップと、メッセージを関連付テーブルを用いて変換するステップと、複数のＷｅｂサーバのうち受信されたメッセージで特定される機能を実行可能なＷｅｂサーバに変換されたメッセージに従って機能を実行させるために、複数のＷｅｂサーバのうち受信されたメッセージで特定される機能を実行可能なＷｅｂサーバに変換されたメッセージを送信するステップと、Ｗｅｂサーバから機能の実行結果を受信するステップと、受信された実行結果を情報処理装置に送信するステップと、を含む。
【００２０】
この局面に従えば、Ｗｅｂサービスの変動に容易に対応することが可能な中継方法を提供することができる。
【００２１】
この発明のさらに他の局面によれば、中継プログラムは、それぞれがＷｅｂサービスを提供する複数のＷｅｂサーバおよび情報処理装置と通信可能な中継サーバで実行される中継プログラムであって、複数のＷｅｂサーバそれぞれが有するＷｅｂサービスを提供するための機能を利用するための複数の操作それぞれに対し、情報処理装置と中継サーバとの間で予め定められた機能を利用するために定義された複数の操作のうち対応する操作を関連付けた関連付テーブルを記憶するステップと、情報処理装置から情報処理装置と中継サーバとの間で予め定められた機能を実行させるためのメッセージを受信するステップと、メッセージを関連付テーブルを用いて変換するステップと、複数のＷｅｂサーバのうち受信されたメッセージで特定される機能を実行可能なＷｅｂサーバに変換されたメッセージに従って機能を実行させるために、複数のＷｅｂサーバのうち受信されたメッセージで特定される機能を実行可能なＷｅｂサーバに変換されたメッセージを送信するステップと、Ｗｅｂサーバから機能の実行結果を受信するステップと、受信された実行結果を情報処理装置に送信するステップと、を中継サーバに実行させる。
【００２２】
この局面に従えば、Ｗｅｂサービスの変動に容易に対応することが可能な中継プログラムを提供することができる。
【発明を実施するための最良の形態】
【００２３】
以下、本発明の実施の形態について図面を参照して説明する。以下の説明では同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがってそれらについての詳細な説明は繰返さない。
【００２４】
図１は、本発明の実施の形態における情報処理システムの全体概要を示す図である。図１を参照して、情報処理システム１は、ネットワーク２にそれぞれ接続された複合機（以下、「ＭＦＰ」という）１００，１００Ａ，１００Ｂ，１００Ｃと、中継サーバ２００と、を含む。ＭＦＰ１００，１００Ａ，１００Ｂおよび１００Ｃは、情報処理装置の一例であり、スキャナ機能、プリンタ機能、コピー機能、ファクシミリ機能等の複数の機能を備える。
【００２５】
ネットワーク２は、ローカルエリアネットワーク（ＬＡＮ）であり、接続形態は有線または無線を問わない。また、ネットワーク２は、ＬＡＮに限らず、ワイドエリアネットワーク（ＷＡＮ）、公衆交換電話網（ＰＳＴＮ）等であってもよい。ネットワーク２は、ゲートウェイを介してインターネット３に接続されており、ＭＦＰ１００，１００Ａ，１００Ｂ，１００Ｃそれぞれは、インターネット３に接続されたＷｅｂサーバ７，７Ａと通信可能である。
【００２６】
Ｗｅｂサーバ７，７Ａは、Ｗｅｂサービスを提供する。Ｗｅｂサービスは、Ｗｅｂサーバ７．７Ａが、それぞれが有する機能を実行することにより提供される。具体的には、Ｗｅｂサービスを利用するために、サービスリクエスタは、機能を実行させるための操作を含む要求をＷｅｂサーバ７，７ＡのうちＷｅｂサービスの提供を受けようとするものに送信する。Ｗｅｂサーバ７，７Ａは、サービスリクエスタからの要求に応じて、サービスリクエスタから受信される操作に従って機能を実行し、実行結果を返信する。サービスリクエスタは、ＭＦＰ１００，１００Ａ，１００Ｂ，１００Ｃおよび中継サーバ２００のいずれかである。Ｗｅｂサーバ７，７ＡがＷｅｂサービスを提供するために実行する機能は、例えば、翻訳処理、文字認識処理、技術計算処理、画像処理等のデータに対する処理を実行する機能と、データベース等を検索する機能と、を含む。操作は、Ｗｅｂサーバ７，７Ａが、機能を実行するために必要な設定条件を含む。
【００２７】
中継サーバ２００は、サービスリクエスタであるＭＦＰ１００，１００Ａ，１００Ｂ，１００Ｃと、Ｗｅｂサーバ７，７Ａとの間に設置され、Ｗｅｂサービスを中継する。サービスリクエスタであるＭＦＰ１００，１００Ａ，１００Ｂ，１００Ｃは、中継サーバ２００に対して要求を送信する。この際、ＭＦＰ１００，１００Ａ，１００Ｂ，１００Ｃそれぞれが送信する要求は、中継サーバ２００との間で予め定められた機能を実行させるための操作を含む。したがって、中継サーバ２００は、ＭＦＰ１００，１００Ａ，１００Ｂ，１００Ｃに対してＷｅｂサービスを提供するサービスプロバイダーとして機能する。中継サーバ２００は、ＭＦＰ１００，１００Ａ，１００Ｂ，１００Ｃそれぞれが送信する要求を、サービスプロバイダであるＷｅｂサーバ７，７Ａに適した要求に変換し、変換した要求をＷｅｂサーバ７，７Ａに送信する。したがって、中継サーバ２００は、Ｗｅｂサーバ７，７Ａに対してサービスリクエスタとして機能する。
【００２８】
なお、本実施の形態においては情報処理装置の一例としてＭＦＰ１００，１００Ａ，１００Ｂ，１００Ｃを例に説明するが、ＭＦＰ１００，１００Ａ，１００Ｂ，１００Ｃに代えて、たとえば、パーソナルコンピュータ、スキャナ、プリンタ、ファクシミリ等であってもよい。なお、ＭＦＰ１００，１００Ａ，１００Ｂ，１００Ｃ各々が有する機能は同じなので、ここではＭＦＰ１００を例に説明する。
【００２９】
図２は、中継サーバのハードウェア構成の一例を示すブロック図である。図２を参照して、中継サーバ２００は、それぞれがバス２０８に接続され、中継サーバ２００の全体を制御するためのＣＰＵ２０１と、ＣＰＵ２０１が実行するプログラム等を記憶するためのＲＯＭ２０２と、ＣＰＵ２０１の作業領域として用いられるＲＡＭ２０３と、中継サーバ２００をネットワークに接続するためのネットワークＩ／Ｆ２０４と、大容量記憶装置としてのＨＤＤ２０５と、表示部２０６と、ユーザの操作の入力を受付ける操作部２０７と、外部記憶装置２０９と、を含む。
【００３０】
外部記憶装置２０９は、中継プログラムを記憶したＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ−ＲＯＭ）２０９Ａが装着される。ＣＰＵ２０１は、外部記憶装置２０９を介してＣＤ−ＲＯＭ２０９Ａに記憶された中継プログラムをＲＡＭ２０３にロードし、実行する。なお、中継プログラムを記憶する記録媒体としては、ＣＤ−ＲＯＭ２０９Ａに限られず、フレキシブルディスク、カセットテープ、光ディスク（ＭＯ（Ｍａｇｎｅｔｉｃ  Ｏｐｔｉｃａｌ  Ｄｉｓｃ）／ＭＤ（Ｍｉｎｉ  Ｄｉｓｃ）／ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ））、ＩＣカード、光カード、マスクＲＯＭ、ＥＰＲＯＭ（、ＥＥＰＲＯＭなどの半導体メモリ等でもよい。また、ＨＤＤ２０５に記憶された中継プログラムをＲＡＭ２０３にロードして実行するようにしてもよい。この場合、中継サーバ２００が、インターネット３に接続された他のコンピュータから中継プログラムをダウンロードして、その中継プログラムをＨＤＤ２０５に記憶するようにしてもよい。ここでいうプログラムは、ＣＰＵ２０１が直接実行可能なプログラムだけでなく、ソースプログラム、圧縮処理されたプログラム、暗号化されたプログラム等を含む。
【００３１】
図３は、ＭＦＰの機能の一例を示す機能ブロック図である。図３を参照して、ＭＦＰ１００は、メイン回路１０１と、ファクシミリ部１２２と、通信制御部１２３と、自動原稿搬送装置（ＡＤＦ）１０と、画像読取部２０と、画像形成部３０と、給紙部４０と、を含む。
【００３２】
ＡＤＦ１０は、原稿給紙トレイ１１上にセットされた複数枚の原稿を１枚ずつ自動的に画像読取部２０のプラテンガラス上に設定された所定の原稿読み取り位置まで搬送し、画像読取部２０により原稿画像が読み取られた原稿を原稿排紙トレイ上に排出する。画像読取部２０は、原稿読取位置に搬送されてきた原稿に光を照射する光源と、原稿で反射した光を受光する光電変換素子とを含み、原稿のサイズに応じた原稿画像を走査する。光電変換素子は、受光した光を電気信号である画像データに変換して、画像形成部３０に出力する。給紙部４０は、給紙トレイに収納された用紙を画像形成部３０に搬送する。
【００３３】
画像形成部３０は、周知の電子写真方式により画像を形成するものであって、画像読取部２０から入力される画像データにシェーディング補正などの各種のデータ処理を施し、データ処理後の画像データに基づいて、給紙部４０により搬送される用紙に画像を形成する。
【００３４】
メイン回路１０１は、ＣＰＵ１１１と、ＣＰＵ１１１の作業領域として使用されるＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１１２と、ＣＰＵ１１１が実行するプログラム等を記憶するためのフラッシュメモリ１１３と、表示部１１４と、操作部１１５と、大容量記憶装置としてのハードディスクドライブ（ＨＤＤ）１１６と、データ通信制御部１１７と、を含む。
【００３５】
ＣＰＵ１１１は、フラッシュメモリ１１３に記憶されたプログラムを実行して、各種の処理を実行する。フラッシュメモリ１１３は、ＥＥＰＲＯＭ（Ｅｌｅｃｔｒｏｎｉｃａｌｌｙ  Ｅｒａｓａｂｌｅ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）である。
【００３６】
ＣＰＵ１１１は、表示部１１４、操作部１１５、ＨＤＤ１１６およびデータ通信制御部１１７と、それぞれ接続され、メイン回路１０１の全体を制御する。また、ＣＰＵ１１１は、ファクシミリ部１２２、通信制御部１２３、ＡＤＦ１０、画像読取部２０、画像形成部３０、給紙部４０と接続され、ＭＦＰ１００の全体を制御する。
【００３７】
表示部１１４は、液晶表示装置（ＬＣＤ）、有機ＥＬＤ（Ｅｌｅｃｔｒｏ  Ｌｕｍｉｎｅｓｃｅｎｃｅ  Ｄｉｓｐｌａｙ）等の表示装置であり、ユーザに対する指示メニューや取得した画像データに関する情報等を表示する。操作部１１５は、複数のキーを備え、キーに対応するユーザの操作による各種の指示、文字、数字などのデータの入力を受付ける。操作部１１５が備える複数のキーは、スイッチを備えたハードキーである。操作部１１５は、表示部１１４上に設けられたタッチパネルを含む。タッチパネルの方式は、特に限定するものではないが、例えば、抵抗膜方式または表面弾性波方式などであればよい。タッチパネルは、指またはスタイラスペンで指示された位置を検出し、検出した位置の座標をＣＰＵ１１１に出力する。表示部１１４と、操作部１１５とで、ＭＦＰ１００の上面に設けられる操作パネル９が構成される。
【００３８】
データ通信制御部１１７は、ＴＣＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ）またはＵＤＰ（Ｕｓｅｒ  Ｄａｔａｇｒａｍ  Ｐｒｏｔｏｃｏｌ）等の通信プロトコルで通信するためのインターフェースであるＬＡＮ端子１１８と、シリアル通信のためのシリアル通信インターフェース端子１１９とを有する。データ通信制御部１１７は、ＣＰＵ１１１からの指示に従って、ＬＡＮ端子１１８またはシリアル通信インターフェース端子１１９に接続された外部の機器との間でデータを送受信する。
【００３９】
ＬＡＮ端子１１８に、ネットワーク２に接続するためのＬＡＮケーブルが接続される場合、データ通信制御部１１７は、ＬＡＮ端子１１８を介して接続された他のＭＦＰ１００Ａ，１００Ｂ，１００Ｃまたは中継サーバ２００と通信する。さらに、データ通信制御部１１７は、インターネット３に接続されたＷｅｂサーバ７，７Ａと通信する。
【００４０】
ＣＰＵ１１１は、データ通信制御部１１７を制御して、ネットワーク２またはインターネット３に接続されたコンピュータからプログラムをダウンロードし、フラッシュメモリ１１３に記憶することにより、プログラムを更新することが可能である。
【００４１】
シリアル通信インターフェース端子１１９には、フラッシュメモリを内蔵したメモリカード１１９Ａが接続可能である。ＣＰＵ１１１は、データ通信制御部１１７を制御して、メモリカード１１９ＡからＣＰＵ１１１が実行するためのプログラムを読出し、フラッシュメモリ１１３に記憶することにより、プログラムを更新することが可能である。
【００４２】
なお、ＣＰＵ１１１が実行するためのプログラムを記憶する記録媒体としては、メモリカード１１９Ａに限られず、フレキシブルディスク、カセットテープ、光ディスク（ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ−Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）／ＭＯ（Ｍａｇｎｅｔｉｃ  Ｏｐｔｉｃａｌ  Ｄｉｓｃ）／ＭＤ（Ｍｉｎｉ  Ｄｉｓｃ）／ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ））、ＩＣカード（メモリカードを含む）、光カード、マスクＲＯＭ、ＥＰＲＯＭ（Ｅｒａｓａｂｌｅ  Ｐｒｏｇｒａｍｍａｂｌｅ  ＲＯＭ）、ＥＥＰＲＯＭなどの半導体メモリ等の媒体でもよい。
【００４３】
さらに、ＣＰＵ１１１がネットワーク２に接続されたコンピュータからプログラムをダウンロードしてフラッシュメモリ１１３に記憶する、または、ネットワーク２に接続されたコンピュータがプログラムをフラッシュメモリ１１３に書込みするようにして、フラッシュメモリ１１３に記憶されたプログラムをＲＡＭ１１２にロードしてＣＰＵ１１１で実行するようにしてもよい。ここでいうプログラムは、ＣＰＵ１１１により直接実行可能なプログラムだけでなく、ソースプログラム、圧縮処理されたプログラム、暗号化されたプログラム等を含む。
【００４４】
通信制御部１２３は、ＣＰＵ１１１を公衆交換電話網（ＰＳＴＮ）７に接続するためのモデムである。ＭＦＰ１００には、ＰＳＴＮ７における電話番号が予め割り当てられており、ＰＳＴＮ７に接続されたファクシミリ装置からＭＦＰ１００に割り当てられた電話番号に発呼があると、通信制御部１２３がその発呼を検出する。通信制御部１２３は、発呼を検出すると通話を確立し、ファクシミリ部１２２に通信させる。
【００４５】
ファクシミリ部１２２は、ＰＳＴＮ７に接続され、ＰＳＴＮ７にファクシミリデータを送信する、またはＰＳＴＮ７からファクシミリデータを受信する。
【００４６】
図４は、中継サーバのＣＰＵの機能の概要を示す機能ブロック図である。図４を参照して、ＣＰＵ２０１は、ＭＦＰ１００，１００Ａ，１００Ｂ，１００Ｃのいずれかからメッセージを受信するメッセージ受信部５１と、Ｗｅｂサーバ７，７Ａのうちから受信されたメッセージにより特定される機能を実行させるものを選択する選択部６１と、受信されたメッセージをＷｅｂサーバに対応したメッセージに変換する変換部５３と、選択部６１により選択されたＷｅｂサーバに認証確認をする代行認証部６３と、選択部６１により選択されたＷｅｂサーバに機能を実行させる機能実行指示部５５と、機能の実行結果を受信する実行結果受信部５７と、ＭＦＰ１００，１００Ａ，１００Ｂ，１００Ｃのうちメッセージを送信してきたものに実行結果を送信する実行結果送信部５９と、Ｗｅｂサーバからプロファイルを取得するプロファイル取得部６５と、関連付テーブルを更新する更新部６７と、を含む。
【００４７】
メッセージ受信部５１は、ＭＦＰ１００，１００Ａ，１００Ｂ，１００Ｃのいずれかからメッセージを受信する。ここでは、ＭＦＰ１００からメッセージを受信する場合を例に説明する。メッセージは、ＭＦＰ１００，１００Ａ，１００Ｂ，１００Ｃと中継サーバ２００との間で機能を実行させるために予め定義された複数の操作のうちから選ばれた少なくとも１つの操作を含む。メッセージ受信部５１は、受信したメッセージを選択部６１および変換部５３に出力する。メッセージは、ここでは、ＳＯＡＰ（Ｓｉｍｐｌｅ  Ｏｂｊｅｃｔ  Ａｃｃｅｓｓ  Ｐｒｏｔｏｃｏｌ）の通信プロトコルにより受信される。
【００４８】
選択部６１は、Ｗｅｂサーバ７，７Ａのうちから受信されたメッセージにより特定される機能を実行させるものを選択する。ＨＤＤ２０５には、Ｗｅｂサーバ７，７Ａそれぞれが実行可能な機能を定義した機能定義テーブルが記憶されている。選択部６１は、機能定義テーブルを参照し、Ｗｅｂサーバ７，７Ａのうちからメッセージにより特定される機能を実行可能なものを決定する。メッセージより特定される機能は、メッセージに記述されている操作に基づき定まる。ここでは、Ｗｅｂサーバ７が選択される場合を例に説明する。選択部６１は、メッセージにより特定される機能を実行可能なＷｅｂサーバ７を識別するためのＷｅｂサーバ識別情報を代行認証部６３および変換部５３に出力する。なお、機能定義テーブルを用いることなく、後述する関連付テーブルからＷｅｂサーバ７，７Ａそれぞれが実行可能な機能を特定するようにしてもよい。
【００４９】
選択部６１は、メッセージにより特定される機能実行可能なＷｅｂサーバが複数ある場合、複数のＷｅｂサーバのうちから１つを選択する。この場合における選択基準は、予め中継サーバに定めておくようにすればよい。たとえば、機能定義テーブルにおいて、Ｗｅｂサービスごとのコストを設定しておくようにし、コストの最も安いものを選択基準として定めることにより１つのＷｅｂサーバを選択することができる。または、メッセージにより特定される機能を実行可能な複数のＷｅｂサーバを識別するためのＷｅｂサーバ識別情報を、コストの安いものから順に列挙したリストをメッセージを送信してきたＭＦＰ１００に送信するようにし、ＭＦＰ１００のユーザにより選択させるようにしてもよい。この場合、リストにはＷｅｂサーバごとにコストを併記するのが好ましい。
【００５０】
変換部５３は、入力されるメッセージを、関連付テーブルを参照して選択部６１により選択されたＷｅｂサーバに対応したメッセージに変換する。ＨＳＳ２０５は、関連付テーブルを記憶する。関連付テーブルは、Ｗｅｂサーバ７，７Ａそれぞれが提供するＷｅｂサービスを利用するための複数の操作それぞれに対し、ＭＦＰ１００，１００Ａ，１００Ｂ，１００Ｃと中継サーバ２００との間で機能を実行させるために予め定義された複数の操作のうち対応する操作を関連付ける。以下、Ｗｅｂサーバ７，７Ａそれぞれが提供するＷｅｂサービスを利用するための複数の操作を複数のＷｅｂ操作といい、ＭＦＰ１００，１００Ａ，１００Ｂ，１００Ｃと中継サーバ２００との間で機能を実行させるために予め定義された複数の操作を、複数のローカル操作という。
【００５１】
図５は、関連付テーブルの一例を示す図である。ここでは、Ｗｅｂサーバ７が提供する翻訳のＷｅｂサービスに対する関連付テーブルの一部を示している。ローカル操作およびＷｅｂ操作それぞれは、少なくとも１つのタグとパラメータとからなる。例えば、ローカル操作の１つである「コントロール１」に対しては、タグ「コントロール１名」とパラメータ「読取言語」の組と、タグ「コントロール１タイプ」とパラメータ「選択肢」の組と、タグ「コントロール１範囲」とパラメータ「日本語、英語、韓国語」の組の３つの組を含む。この「コントロール１」のローカル操作に対して、Ｗｅｂ操作として、タグ「コントロール１名」とパラメータ「入力言語」の組と、タグ「コントロール１タイプ」とパラメータ「数値」の組と、タグ「コントロール１範囲」とパラメータ「１：英語、２：韓国語、３：日本語」との組が、それぞれ関連付けられる。
【００５２】
関連付テーブルは、複数のローカル操作それぞれに対して、対応するＷｅｂ操作を関連付けるが、Ｗｅｂ操作に存在しないローカル操作については、ローカル操作に何も関連付けられない。例えば、ローカル操作の１つである「コントロール３」に対しては、タグ「コントロール３名」、タグ「コントロール３タイプ」、タグ「コントロール３範囲」の３つのタグを含むが、ローカル操作の１つである「コントロール３」に対するＷｅｂ操作が存在しないので、「コントロール３」のローカル操作に対するＷｅｂ操作には何も関連付けれない。
【００５３】
図６は、メッセージの一例を示す図である。図６に示すメッセージは、ＭＦＰ１００が送信するメッセージである。図７は、変換後のメッセージの一例を示す図である。図７に示す変換後のメッセージは、Ｗｅｂサーバ７で受信されるメッセージであり、図６に示すメッセージが図５に示した関連付テーブルに従って変換されている。
【００５４】
図４に戻って、代行認証部６３は、ＭＦＰ１００，１００Ａ，１００Ｂ，１００Ｃのうちメッセージを送信してきたＭＦＰに代わって、Ｗｅｂサーバ７，７Ａに認証情報を送信し、認証させる。まず、代行認証部６３は、選択部６１により選択されたＷｅｂサーバが提供するＷｅｂサービスを利用する権限があるか否かを判断する。このためＨＤＤ２０５に、認証テーブルを予め記憶している。認証テーブルは、ＭＦＰ１００，１００Ａ，１００Ｂ，１００Ｃごとに、利用可能なＷｅｂサービスを提供するＷｅｂサーバのサーバ識別情報と、認証情報とを関連付ける。代行認証部６３は、ＭＦＰ１００，１００Ａ，１００Ｂ，１００Ｃのうちメッセージを送信してきたＭＦＰが、選択部６１により選択されたＷｅｂサーバのサーバ識別情報と対応つけられているか否かを判断する。対応付けられていれば、認証テーブルによりそのＭＦＰとＷｅｂサーバとの組に関連付けられた認証情報を、Ｗｅｂサーバに送信し、Ｗｅｂサーバに認証させるが、対応付けられていなければエラー信号を返信する。代行認証部６３は、Ｗｅｂサーバにおいて認証が成功すると、実行指示を機能実行指示部５５に出力する。
【００５５】
このように、中継サーバ２００において、ＭＦＰ１００，１００Ａ，１００Ｂ，１００ＣごとにあるＷｅｂサービスを利用可能なものと利用不可能なものとを認証テーブルに設定することができる。また、認証テーブルに利用可能としてＭＦＰを操作するユーザは、認証情報を入力する必要がないので便利である。
【００５６】
機能実行指示部５５は、代行認証部６３から実行指示が入力されると、変換部５３から入力されるメッセージを、選択部６１により選択されたＷｅｂサーバ７に送信する。Ｗｅｂサーバ７においては、受信されるメッセージにしたがって、機能を実行する。中継サーバ２００が送信するメッセージは、Ｗｅｂサーバ７から取得されるプロファイルに基づき生成された関連付テーブルを用いて変換されているため、Ｗｅｂサーバ７が要求するメッセージのフォーマットに適合している。このため、Ｗｅｂサーバ７において解釈されて、機能が実行される。Ｗｅｂサーバ７は、機能を実行した結果である実行結果を中継サーバ２００に送信する。
【００５７】
実行結果受信部５７は、Ｗｅｂサーバ７が送信する実行結果を受信し、受信した実行結果を実行結果送信部５９に出力する。実行結果送信部５９は、入力される実行結果を、ＭＦＰ１００，１００Ａ，１００Ｂ，１００Ｃのうちメッセージを送信してきたもの、ここではＭＦＰ１００に送信する。これにより、ＭＦＰ１００にいおては、中継サーバ２００に、その中継サーバ２００との間で予め定められた機能を実行するための操作を含むメッセージを送信すれば、Ｗｅｂサーバ７が提供するＷｅｂサービスを利用することができる。ＭＦＰ１００のユーザは、Ｗｅｂサーバ７，７Ａが提供するＷｅｂサービスを意識する必要がなく、それらが提供するＷｅｂサービスを利用することができる。また、新たなＷｅｂサービスを提供する新たなＷｅｂサーバについて、関連付テーブルおよび認証テーブルに登録することによって、ＭＦＰ１００，１００Ａ，１００Ｂ，１００Ｃの少なくとも１つのユーザに新たなＷｅｂサービスを利用させることができる。
【００５８】
また、ＭＦＰ１００，１００Ａ，１００Ｂ，１００Ｃぞれぞれに対して利用可能なＷｅｂサービスを、認証テーブルに設定することができるので、中継サーバ２００において一括して管理することができる。
【００５９】
プロファイル取得部６５は、新たなＷｅｂサービスを提供するＷｅｂサーバからプロファイルを取得する。新たなＷｅｂサーバは、Ｗｅｂサーバ７，７Ａであってもよいし、それらとは異なるＷｅｂサーバであってもよい。プロファイル取得部６５は、中継サーバ２００の管理者が、新たなＷｅｂサーバのプロファイルを取得する指示を入力すると、新たなＷｅｂサーバからプロファイルを取得する。プロファイル取得部６５は、取得されたプロファイルを更新部６７に出力する。
【００６０】
更新部６７は、プロファイル取得部６５から入力されるプロファイルを解析し、プロファイルに設定されている少なくとも１つの操作（コントロール）それぞれを、ＭＦＰ１００，１００Ａ，１００Ｂ，１００Ｃと中継サーバ２００との間で機能を実行させるために予め定義された複数の操作のいずれか１つに対応付けた関連付レコードを生成し、生成した関連付レコードを、ＨＤＤ２０５に記憶されている関連付テーブルに追加することにより、関連付テーブルを更新する。
【００６１】
図８は、プロファイルの一例を示す図である。図８に示すプロファイルは、Ｗｅｂサーバ７から取得されるプロファイルを示す。図８に示したプロファイルが受信されると、図４に示した関連付データが生成される。
【００６２】
図９は、メッセージ中継処理の流れの一例を示すフローチャートである。メッセージ中継処理は、中継サーバ２００が備えるＣＰＵ２０１が中継プログラムを実行することによりＣＰＵ２０１により実行される処理である。図９を参照して、ＣＰＵ２０１は、ＭＦＰ１００，１００Ａ，１００Ｂ，１００Ｃのいずれかからメッセージを受信したか否かを判断する。メッセージを受信するまで待機状態となり（ステップＳ０１でＮＯ）、メッセージを受信したならば処理をステップＳ０２に進める。
【００６３】
ステップＳ０２においては、Ｗｅｂサーバを選択する。具体的には、ＨＤＤ２０５に記憶されている機能定義テーブルを参照し、Ｗｅｂサーバ７，７ＡのうちからステップＳ０１において受信されたメッセージに記述されている操作に基づき定まる機能を実行可能なものを決定する。ここでは、Ｗｅｂサーバ７を選択する場合を例に説明する。
【００６４】
次のステップＳ０３においては、ステップＳ０１において受信されたメッセージを、ＨＤＤ２０５に記憶された関連付テーブルを参照して、ステップＳ０２において選択されたＷｅｂサーバ７に対応したメッセージに変換する。
【００６５】
次のステップＳ０４においては、認証確認を行う。ステップＳ０１において受信されたメッセージを送信してきたＭＦＰ１００が、ＨＤＤ２０５に記憶されている認証テーブルを参照して、ステップＳ０２において選択されたＷｅｂサーバ７が提供するＷｅｂサービスを利用可能か否かを確認する。
【００６６】
メッセージを送信してきたＭＦＰ１００が、認証テーブルにおいて、Ｗｅｂサーバ７が提供するＷｅｂサービスを利用可能であれば処理をステップＳ０５に進め、そうでなければ処理を終了する。処理を終了する場合、メッセージを送信してきたＭＦＰ１００に対してエラーメッセージを送信する。
【００６７】
ステップＳ０５においては、メッセージを送信してきたＭＦＰ１００と選択されたＷｅｂサーバ７との組に、認証テーブルにより関連付けられた認証を情報をＷｅｂサーバ７に送信し、Ｗｅｂサーバ７に認証させ、Ｗｅｂサーバ７から認証結果を受信する。次のステップＳ０６においては、認証結果が認証ＯＫを示すならば処理をステップＳ０７に進め、そうでなければ処理を終了する。処理を終了する場合、エラーメッセージをメッセージを送信してきたＭＦＰ１００に送信する。
【００６８】
次のステップＳ０７においては、ステップＳ０３において変換された変換メッセージをＷｅｂサーバ７に送信し、Ｗｅｂサーバ７に変換メッセージに従って機能を実行させる。変換メッセージを受信するＷｅｂサーバ７は、変換メッセージに従って機能を実行し、その実行結果を返信する。
【００６９】
ステップＳ０８においては、実行結果を受信するまで待機状態となり、実行結果を受信すると処理をステップＳ０９に進める。ステップＳ０９においては、Ｗｅｂサーバ７より受信された実行結果を、ステップＳ０１において受信されたメッセージを送信してきたＭＦＰ１００に送信する。
【００７０】
図１０は、関連付テーブル更新処理の流れの一例を示すフローチャートである。関連付テーブル更新処理は、中継サーバ２００が備えるＣＰＵ２０１が中継プログラムを実行することによりＣＰＵ２０１により実行される処理である。
図１０を参照して、ＣＰＵ２０１は、新規Ｗｅｂサーバの指定を受け付けたか否かを判断する（ステップＳ２１）。新規Ｗｅｂサーバの指定を受け付けるまで待機状態となり（ステップＳ２１でＮＯ）、新規Ｗｅｂサーバの指定を受け付けると（ステップＳ２１でＹＥＳ）、処理をステップＳ２２に進める。
【００７１】
ステップＳ２２においては、指定された新規Ｗｅｂサーバからプロファイルを取得する。そして、取得されたプロファイルに含まれる複数のコントロールのうちから１つを選択する（ステップＳ２３）。次に、ＨＤＤ２０５に記憶されている関連付テーブルを参照し、ステップＳ２３において選択されたコントロールが既に設定されているか否かの判断する（ステップＳ２４）。関連付テーブルに既に設定されているならば処理をステップＳ２５に進め、そうでなければ処理をステップＳ２７に進める。ステップＳ２５においては、ステップＳ２３において選択したコントロールに、それに対応する既存のＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍ  Ｉｎｔｅｒｆａｃｅ）を関連付ける。
【００７２】
ステップＳ２６においては、プロファイル中に未選択のコントロールが存在するか否かを判断する。未選択のコントロールが存在するならば処理をステップＳ２３に進め、存在しなければ処理を終了する。
【００７３】
一方、ステップＳ２７においては、ユーザによる手動変換を受け付ける。すなわち、プロファイルに含まれるコントロールに対応する新たなＡＰＩを関連付ける操作を受け付ける。そして、受け付け得られた新たなＡＰＩを関連付テーブルに追加して記憶し（ステップＳ２８）、処理をステップＳ２６に進める。
【００７４】
＜変形例＞
上述した実施の形態においては、１つのメッセージで１つのＷｅｂサービスを利用するものであったが、変形例における情報処理システムにおいては、１つのメッセージで複数のＷｅｂサービスを利用可能とするものである。具体的には、ＭＦＰ１００から送信されるメッセージが複数の機能に関する操作を含む場合である。この場合、複数の機能をそれぞれ実行するＷｅｂサービスを提供する複数のＷｅｂサーバが存在する場合がある。ここでは、複数の機能として文字認識と翻訳を例に説明し、Ｗｅｂサーバ７が翻訳する機能を実行するＷｅｂサービスを提供し、Ｗｅｂサーバ７Ａが文字認識する機能実行するＷｅｂサービスを提供する場合を例に説明する。
【００７５】
図１１は、変形における中継サーバ２００が備えるＣＰＵ２０１Ａの機能の概要を示す機能ブロック図である。図４に示した機能ブロック図と異なる点は、選択部６１Ａ、変換部５３Ａ、機能実行指示部５５Ａおよび実行結果受信部５７Ａが異なる点である。その他の機能は図４に示した機能ブロック図と同じなのでここでは説明を繰り返さない。
【００７６】
図１１を参照して、選択部６１Ａは、機能定義テーブルを参照し、Ｗｅｂサーバ７，７ＡのうちからＭＦＰ１００から受信するメッセージにより特定される文字認識する機能を実行可能なＷｅｂサーバ７Ａおよび翻訳する機能を実行可能なＷｅｂサーバ７を選択する。選択部６１Ａは、メッセージにより特定される機能を実行可能なＷｅｂサーバ７，７Ａを識別するためのＷｅｂサーバ識別情報を代行認証部６３および変換部５３Ａに出力する。
【００７７】
変換部５３Ａは、第１メッセージ変換部８１と、第２メッセージ変換部８２とを含む。第１メッセージ変換部８１は、メッセージ受信部５７より入力されるメッセージのうちＷｅｂサーバ７Ａが提供する文字認識する機能に関するコントロールを、関連付テーブルを参照してＷｅｂサーバ７Ａに対応したメッセージに変換し、変換した第１変換メッセージを機能実行指示部５５Ａに出力する。第２メッセージ変換部８２は、メッセージ受信部５７より入力されるメッセージのうちＷｅｂサーバ７が提供する翻訳する機能に関するコントロールを、関連付テーブルを参照してＷｅｂサーバ７に対応したメッセージに変換し、変換した第２変換メッセージを機能実行指示部５５Ａに出力する。
【００７８】
機能実行指示部５５Ａは、第１機能実行指示部８３と、第２機能実行指示部８４とを含む。第１機能実行指示部８３は、第１メッセージ変換部８１より第１変換メッセージが入力され、第１変換メッセージを選択部６１Ａにより選択されたＷｅｂサーバ７Ａに送信する。Ｗｅｂサーバ７Ａにおいては、受信される第１変換メッセージに従って、文字認識する機能を実行し、実行結果を中継サーバ２００に送信する。
【００７９】
実行結果受信部５７Ａは、第１実行結果受信部８５と第２実行結果受信部８６とを含む。第１実行結果受信部８５は、Ｗｅｂサーバ７Ａが送信する実行結果を受信し、受信した実行結果を第２機能実行指示部８４に出力する。
【００８０】
第２機能実行指示部８４は、第２メッセージ変換部８２より第２変換メッセージが入力され、第１実行結果受信部８５より実行結果が入力され、入力される第２変換メッセージおよび実行結果をＷｅｂサーバ７に送信する。Ｗｅｂサーバ７においては、受信される第２変換メッセージに従って、受信される実行結果に対して翻訳する機能を実行し、実行結果を中継サーバ２００に送信する。第２実行結果受信部８６は、Ｗｅｂサーバ７が送信する実行結果を受信し、受信した実行結果を実行結果送信部５９に出力する。
【００８１】
図１２は、変形例におけるメッセージ中継処理の流れの一例を示すフローチャートである。変形例におけるメッセージ中継処理は、変形例における中継サーバ２００が備えるＣＰＵ２０１Ａが中継プログラムを実行することによりＣＰＵ２０１Ａにより実行される処理である。図１２を参照して、ＣＰＵ２０１Ａは、ＭＦＰ１００，１００Ａ，１００Ｂ，１００Ｃのいずれかからメッセージを受信したか否かを判断する（ステップＳ３１）。メッセージを受信するまで待機状態となり（ステップＳ３１でＮＯ）、メッセージを受信したならば（ステップＳ３１でＮＯ）、処理をステップＳ３２に進める。
【００８２】
ステップＳ３２においては、複数のＷｅｂサーバを選択する。具体的には、ＨＤＤ２０５に記憶されている機能定義テーブルを参照し、Ｗｅｂサーバ７，７ＡのうちからステップＳ３１において受信されたメッセージに記述されている操作に基づき定まる機能を実行可能なものを決定する。ここでは、翻訳する機能を実行するＷｅｂサービスを提供するＷｅｂサーバ７と、文字認識する機能を実行するＷｅｂサービスを提供するＷｅｂサーバ７Ａを選択する場合を例に説明する。
【００８３】
次のステップＳ３３においては、ステップＳ３１において受信されたメッセージを、ＨＤＤ２０５に記憶された関連付テーブルを参照して、ステップＳ３２において選択されたＷｅｂサーバ７，７Ａそれぞれに対応した複数のメッセージに変換し、処理をステップＳ３４に進める。
【００８４】
次のステップＳ３４においては、認証確認を行う。ステップＳ３１において受信されたメッセージを送信してきたＭＦＰ１００が、ＨＤＤ２０５に記憶されている認証テーブルを参照して、ステップＳ３２において選択されたＷｅｂサーバ７，７Ａそれぞれが提供するＷｅｂサービスを利用可能か否かを確認する。メッセージを送信してきたＭＦＰ１００が、認証テーブルにおいて、Ｗｅｂサーバ７、７Ａそれぞれが提供するＷｅｂサービスをともに利用可能であれば処理をステップＳ３５に進め、そうでなければ処理を終了する。Ｗｅｂサーバ７、７Ａそれぞれが提供するＷｅｂサービスの少なくとも１つでも利用可能でなければ処理を終了する。１の機能でも利用できなければメッセージに設定された操作で定まるすべての機能を実行できないからである。処理を終了する場合、メッセージを送信してきたＭＦＰ１００に対してエラーメッセージを送信する。
【００８５】
ステップＳ３５においては、メッセージを送信してきたＭＦＰ１００と選択されたＷｅｂサーバ７との組に、認証テーブルにより関連付けられた認証情報をＷｅｂサーバ７に送信し、Ｗｅｂサーバ７に認証させ、Ｗｅｂサーバ７から認証結果を受信するとともに、ＭＦＰ１００と選択されたＷｅｂサーバ７Ａとの組に、認証テーブルにより関連付けられた認証情報をＷｅｂサーバ７Ａに送信し、Ｗｅｂサーバ７Ａに認証させ、Ｗｅｂサーバ７から認証結果を受信する。ステップＳ３５においては、Ｗｅｂサーバ７，７Ａのすべてで認証結果が認証ＯＫを示すならば処理をステップＳ３６に進め、そうでなければ処理を終了する。Ｗｅｂサーバ７、７Ａの１つでも認証さればければ、メッセージに設定された操作で定まるすべての機能を実行できないからである。処理を終了する場合、エラーメッセージをメッセージを送信してきたＭＦＰ１００に送信する。
【００８６】
次のステップＳ３６においては、ステップＳ３３において変換された複数の変換メッセージのうちから１つのメッセージを選択する。そして、選択されたメッセージを対応するＷｅｂサーバに送信し、メッセージに従って機能を実行させる（ステップＳ３７）。ここではＷｅｂサーバ７Ａに送信し、Ｗｅｂサーバ７Ａに選択されたメッセージに従って機能を実行させる。メッセージを受信するＷｅｂサーバ７Ａは、メッセージに従って文字認識する機能を実行し、その実行結果を返信する。
【００８７】
ステップＳ３８においては、実行結果を受信するまで待機状態となり、実行結果を受信すると処理をステップＳ３９に進める。ここでは、画像を文字認識した実行結果として英語のテキストデータを受信する。
【００８８】
ステップＳ３９においては、ステップＳ３３において変換された複数の変換メッセージのうちから次の順番のメッセージを選択する。そして、ステップＳ３８において受信された実行結果と、ステップＳ３９において選択されたメッセージとを対応するＷｅｂサーバに送信し、メッセージに従って機能を実行させる（ステップＳ４０）。ここではＷｅｂサーバ７に送信し、Ｗｅｂサーバ７に、実行結果である英語のテキストデータに対して選択されたメッセージに従って翻訳する機能を実行させる。メッセージを受信するＷｅｂサーバ７は、メッセージに従って英語のテキストデータに基づいて翻訳する機能を実行し、その実行結果である日本語のテキストデータを返信する。
【００８９】
ステップＳ４１においては、実行結果を受信するまで待機状態となり、実行結果を受信すると処理をステップＳ４２に進める。ここでは、実行結果として、英文字が表された画像を文字認識し、文字認識された英文字を日本語に翻訳した日本語のテキストデータを受信する。次のステップＳ４２においては、ステップＳ３３において変換された複数のメッセージのうちに未選択のメッセージが存在するか否かを判断する。未選択のメッセージが存在すれば処理をステップＳ３９に戻すが、存在しなければ処理をステップＳ４３に進める。
【００９０】
ステップＳ４３においては、Ｗｅｂサーバ７より受信された実行結果を、ステップＳ３１において受信されたメッセージを送信してきたＭＦＰ１００に送信する。
【００９１】
以上説明したように本実施の形態における中継サーバ２００は、複数のＷｅｂサーバ７，７Ａそれぞれが提供するＷｅｂサービスを利用するための複数の操作それぞれに対し、ＭＦＰ１００，１００Ａ，１００Ｂ，１００Ｃと中継サーバ２００との間で機能を実行させるために予め定義された複数の操作のうち対応する操作を関連付けた関連付テーブルをＨＤＤ２０５に記憶しており、ＭＦＰ１００，１００Ａ，１００Ｂ，１００ＣのいずれかからＭＦＰ１００，１００Ａ，１００Ｂ，１００Ｃと中継サーバ２００との間で予め定義された複数の操作を含むメッセージを受信すると、メッセージを関連付テーブルを用いて変換し、変換されたメッセージを複数のＷｅｂサーバのうちメッセージで特定される機能を実行可能なＷｅｂサーバに送信し、変換されたメッセージに従って機能を実行させる。そして、メッセージを送信したＷｅｂサーバから機能の実行結果を受信し、受信された実行結果をＭＦＰ１００，１００Ａ，１００Ｂ，１００Ｃのうちメッセ維持を送信してきたものに送信する。このため、ＭＦＰ１００，１００Ａ，１００Ｂ，１００Ｃにおいては、複数のＷｅｂサーバ７，７Ａそれぞれが提供するＷｅｂサービスを利用するための複数の操作に関係なく、中継サーバ２００との間で機能を実行させるために予め定義された複数の操作を含むメッセージを生成できればよい。このため、新たなＷｅｂサーバが追加される場合等のＷｅｂサービスの変動に対して、ＭＦＰ１００，１００Ａ，１００Ｂ，１００Ｃで生成されるメッセージを変更する必要がない。その結果、Ｗｅｂサービスの変動に容易に対応することができる。
【００９２】
また、同種の機能を実行する複数のＷｅｂサーバを所定の条件に従って並べ替えたリスト情報がＭＦＰ１００，１００Ａ，１００Ｂ，１００Ｃのうちメッセージを送信してきたものに送信されるので、ＭＦＰ１００，１００Ａ，１００Ｂ，１００Ｃのユーザは、リスト情報を見て機能を実行させるＷｅｂサーバを決定することができる。このため、機能を実行させるＷｅｂサーバを容易に決定することが可能となる。
【００９３】
また、複数のＷｅｂサーバ７，７Ａのうちで同種のＷｅｂサービスを提供する複数のＷｅｂサーバが存在する場合、同種のＷｅｂサービスを提供する複数のＷｅｂサーバのうちから１つを選択する。例えば、コストの安いＷｅｂサービスを提供するＷｅｂサーバを選択する。このため、ＭＦＰ１００，１００Ａ，１００Ｂ，１００Ｃのユーザは、複数のＷｅｂサーバ７，７Ａがそれぞれ提供する複数のＷｅｂサービスを知る必要がなく、Ｗｅｂサービスの提供を受けることができる。
【００９４】
さらに、ＭＦＰ１００，１００Ａ，１００Ｂ，１００Ｃのいずれかから文字認識と翻訳の機能それぞれを実行させるためのメッセージを受信し、メッセージを関連付テーブルを用いてＷｅｂサーバ７Ａに対して送信するための第１のメッセージと、Ｗｅｂサーバ７に送信するための第２のメッセージとに変換し、第１のメッセージを文字認識する機能を実行可能なＷｅｂサーバ７Ａに送信し、Ｗｅｂサーバ７Ａから実行結果を受信した後に、実行結果と第２のメッセージとを翻訳する機能を実行可能なＷｅｂサーバ７に送信する。このため、ＭＦＰ１００，１００Ａ，１００Ｂ，１００Ｃにおいて、１つのメッセージを送信するだけで、複数のＷｅｂサービスを利用することができる。
【００９５】
さらに、ＭＦＰ１００，１００Ａ，１００Ｂ，１００Ｃに代わってＷｅｂサーバ７，７Ａに対して認証情報が送信されるので、ＭＦＰ１００，１００Ａ，１００Ｂ，１００Ｃのユーザは、認証情報を入力する必要がなく、Ｗｅｂサーバ７，７Ａを意識する必要がない。
【００９６】
また、新たなＷｅｂサーバが有するＷｅｂサービスを提供するための機能を利用するための複数の操作を定義するプロファイルが取得されると、取得されたプロファイルに基づいて、関連付テーブルを更新する。このため、Ｗｅｂサービスの変動に対応することができる。
【００９７】
なお、上述した実施の形態においては、情報処理システム１について説明したが、図９、図１０および図１２に示した処理を実行するための中継方法、および中継方法をコンピュータに実行させるための中継プログラムとして発明を捉えることができるのは言うまでもない。
【００９８】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【図面の簡単な説明】
【００９９】
【図１】本発明の実施の形態における情報処理システムの全体概要を示す図である。
【図２】中継サーバのハードウェア構成の一例を示すブロック図である。
【図３】ＭＦＰの機能の一例を示す機能ブロック図である。
【図４】中継サーバのＣＰＵの機能の概要を示す機能ブロック図である。
【図５】関連付テーブルの一例を示す図である。
【図６】メッセージの一例を示す図である。
【図７】変換後のメッセージの一例を示す図である。
【図８】プロファイルの一例を示す図である。
【図９】メッセージ中継処理の流れの一例を示すフローチャートである。
【図１０】関連付テーブル更新処理の流れの一例を示すフローチャートである。
【図１１】変形における中継サーバが備えるＣＰＵの機能の概要を示す機能ブロック図である。
【図１２】変形例におけるメッセージ中継処理の流れの一例を示すフローチャートである。
【符号の説明】
【０１００】
７，７Ａ  サーバ、５１  メッセージ受信部、５３，５３Ａ  変換部、５５，５５Ａ  機能実行指示部、５７，５７Ａ  実行結果受信部、５９  実行結果送信部、６１，６１Ａ  選択部、６３  代行認証部、６５  プロファイル取得部、６７  更新部、８１  第１メッセージ変換部、８２  第２メッセージ変換部、８３  第１機能実行指示部、８４  第２機能実行指示部、８５  第１実行結果受信部、８６  第２実行結果受信部、２００  中継サーバ、２０１  ＣＰＵ、２０２  ＲＯＭ、２０３  ＲＡＭ、２０４  ネットワークＩ／Ｆ、２０５  ＨＤＤ、２０６  表示部、２０７  操作部、２０８  バス、２０９  外部記憶装置。
【図１】
2010026562.tif 000003
【図２】
2010026562.tif 000004
【図３】
2010026562.tif 000005
【図４】
2010026562.tif 000006
【図５】
2010026562.tif 000007
【図６】
2010026562.tif 000008
【図７】
2010026562.tif 000009
【図８】
2010026562.tif 000010
【図９】
2010026562.tif 000011
【図１０】
2010026562.tif 000012
【図１１】
2010026562.tif 000013
【図１２】
2010026562.tif 000014