(57)【要約】  【課題】サービスが無秩序に増減する環境に適応させることのできる画像処理システムを提供する。  【解決手段】複合機では、ディレクトリサーバにより照会を受けたサービス定義情報に基づき、サービス選択用画面を表示させることで（ｓ１１６）、機能サーバに提供を要求するサービスをユーザに指定させる。このようにサービス定義情報がディレクトリサーバから通知されることで機能サーバが提供可能なサービスを複合機側で把握できるため、サービスが無秩序に増減する環境でも複合機の負担を抑えられる。また、サービス選択用画面は、複数の異なるディレクトリサーバにおける同一カテゴリの同一サービスが削除された状態で表示され、同じサービスそれぞれが選択肢として表示されないため、ユーザに無用な混乱を与えることはない。【選択図】図５
2006135695.tif 000002
【特許請求の範囲】
【請求項１】
画像を読み取りその画像を表す画像データを生成する機能および画像データの表す画像を印刷する機能のうち少なくとも一方の機能を有する画像処理装置と、
該画像処理装置からの要求に応じて、該画像処理装置の有する機能により生成された画像データおよび印刷される画像を示す画像データのうち少なくとも一方に関するサービスを提供するサービス提供手段と、
それぞれが該サービス提供手段により提供可能なサービスを前記画像処理装置に通知可能な複数の特定情報通知手段と、
を備えた画像処理システムであって、
前記特定情報通知手段において、
前記サービス提供手段が提供可能なサービスを特定可能なサービス特定情報を前記画像処理装置に通知する情報通知手段が備えられており、
前記画像処理装置において、
前記特定情報通知手段の備える情報通知手段により通知されたサービス特定情報に基づき、該サービス特定情報で特定されるサービスのサービスリストを作成するリスト作成手段と、
該リスト作成手段により作成されたサービスリストを当該画像処理装置の備える表示部に表示させるリスト表示手段と、
該リスト表示手段により表示されたサービスリストにおけるサービスのうち、前記サービス提供手段に提供を要求すべきサービスをユーザに指定させるサービス指定手段と、
該サービス指定手段により指定されたサービスの提供を前記サービス提供手段に対して要求する提供要求手段と、
当該画像処理装置の有する機能を、前記提供要求手段による要求を受けた前記サービス提供手段によりサービスの提供を受けて実現する機能実現手段と、が備えられており、
前記サービス提供手段において、
前記画像処理装置の備える提供要求手段による要求を受けた際に、該画像処理装置に対してサービスを提供するための処理を実行する提供実行手段が備えられている
ことを特徴とする画像処理システム。
【請求項２】
前記画像処理装置において、
前記リスト作成手段は、前記特定情報通知手段の備える情報通知手段によりそれぞれ通知されたサービス特定情報に基づき、該サービス特定情報で特定される全てのサービスのうち、それぞれ異なるサービスのみからなるサービスリストを作成する
ことを特徴とする請求項１に記載の画像処理システム。
【請求項３】
前記画像処理装置において、
前記リスト作成手段は、前記特定情報通知手段の備える情報通知手段により通知されたサービス特定情報に基づき、該サービス特定情報で特定されるサービスを所定の規則に従って並び替えてなるサービスリストを作成する
ことを特徴とする請求項１または請求項２に記載の画像処理システム。
【請求項４】
前記画像処理装置において、
前記リスト作成手段は、前記複数の特定情報通知手段のうち、所定の作成条件を満たす前記特定情報通知手段の備える情報通知手段により通知されたサービス特定情報に基づき、該サービス特定情報で特定されるサービスのサービスリストを作成する
ことを特徴とする請求項１から３のいずれかに記載の画像処理システム。
【請求項５】
前記画像処理装置において、
前記リスト作成手段は、前記複数の特定情報通知手段のうち、ネットワーク的な距離が最も近い距離となっている前記特定情報通知手段について、該特定情報通知手段の備える情報通知手段により通知されたサービス特定情報に基づき、該サービス特定情報で特定されるサービスのサービスリストを作成する
ことを特徴とする請求項４に記載の画像処理システム。
【請求項６】
前記画像処理装置において、
前記特定情報通知手段の備える情報通知手段によりそれぞれ通知されたサービス特定情報から前記特定情報通知手段それぞれについてネットワーク的な距離を推定する第１距離推定手段が備えられており、
前記リスト作成手段は、前記第１距離推定手段により推定されたネットワーク的な距離が最も近い距離となっている前記特定情報通知手段により通知されたサービス特定情報に基づき、該サービス特定情報で特定されるサービスのサービスリストを作成する
ことを特徴とする請求項５に記載の画像処理システム。
【請求項７】
前記画像処理装置において、
前記特定情報通知手段に対し、前記サービス特定情報の通知を要求する通知要求手段が備えられており、
前記特定情報通知手段において、
前記情報通知手段は、前記画像処理装置の備える通知要求手段による要求を受けた際に、前記サービス特定情報を前記画像処理装置に通知する、ように構成されている
ことを特徴とする請求項１から５のいずれかに記載の画像処理システム。
【請求項８】
前記画像処理装置において、
前記通知要求手段は、１以上の前記特定情報通知手段が登録されてなる通知手段リストに基づいて、該通知手段リストに登録されている最も優先順位の高い前記特定情報通知手段に対して前記サービス特定情報の通知を要求する
ことを特徴とする請求項７に記載の画像処理システム。
【請求項９】
前記画像処理装置において、
前記複数の特定情報通知手段とのデータ通信を経て該特定情報通知手段それぞれについてのネットワーク的な距離を推定する第２距離推定手段と、
該第２距離推定手段により推定されたネットワーク的な距離が最も近い距離となっている前記特定情報通知手段が最も優先順位の高い前記特定情報通知手段となるように、前記通知手段リストに登録されている前記特定情報通知手段の優先順位を変更する第１順位変更手段と、が備えられている
ことを特徴とする請求項８に記載の画像処理システム。
【請求項１０】
前記画像処理装置において、
前記通知要求手段は、前記サービス特定情報の通知を要求した前記特定情報通知手段の備える情報通知手段から正常に前記サービス特定情報が通知されなかった場合、該特定情報通知手段以外の前記特定情報通知手段に対し、前記サービス特定情報の通知を要求する
ことを特徴とする請求項８または請求項９に記載の画像処理システム。
【請求項１１】
前記画像処理装置において、
前記通知要求手段により前記サービス特定情報を要求された前記特定情報通知手段の備える情報通知手段から正常に前記サービス特定情報が通知されなかった場合、該特定情報通知手段以外の前記特定情報通知手段の優先順位が高くなるように、前記通知手段リストにおける優先順位を変更する第２順位変更手段が備えられている
ことを特徴とする請求項８から１０のいずれかに記載の画像処理システム。
【請求項１２】
前記特定情報通知手段において、
前記情報通知手段は、所定の通知条件を満たす前記画像処理装置の備える通知要求手段による要求を受けた際に、前記サービス特定情報を前記画像処理装置に通知する、ように構成されている
ことを特徴とする請求項７から１１のいずれかに記載の画像処理システム。
【請求項１３】
前記特定情報通知手段において、
前記情報通知手段は、ネットワーク的な距離が最も近い距離となっている前記画像処理装置の備える通知要求手段による要求を受けた際に、前記サービス特定情報を前記画像処理装置に通知する、ように構成されている
ことを特徴とする請求項１２に記載の画像処理システム。
【請求項１４】
画像を読み取りその画像を表す画像データを生成する機能および画像データの表す画像を印刷する機能のうち少なくとも一方の機能を有する画像処理装置であって、
当該画像処理装置の有する機能により生成された画像データおよび印刷される画像を示す画像データのうち少なくとも一方に関するサービスを提供するサービス提供サーバに対して要求するサービスを特定可能なサービス特定情報の通知を、それぞれが該特定情報を前記画像処理装置に通知可能な複数の情報通知サーバから受け、該通知されたサービス特定情報に基づき、該サービス特定情報で特定されるサービスのサービスリストを作成するリスト作成手段と、
該リスト作成手段により作成されたサービスリストを当該画像処理装置の備える表示部に表示させるリスト表示手段と、
該リスト表示手段により表示されたサービスリストにおけるサービスのうち、前記サービス提供サーバに提供を要求すべきサービスをユーザに指定させるサービス指定手段と、
該サービス指定手段により指定されたサービスの提供を前記サービス提供サーバに対して要求する提供要求手段と、
当該画像処理装置の有する機能を、前記提供要求手段による要求を受けた前記サービス提供サーバによりサービスの提供を受けて実現する機能実現手段と、が備えられている
ことを特徴とする画像処理装置。
【請求項１５】
請求項１から１３のいずれかに記載の画像処理システムを構成するサービス提供手段として機能する
ことを特徴とするサーバ。
【請求項１６】
請求項１から１３のいずれかに記載の画像処理システムを構成する特定情報通知手段として機能する
ことを特徴とするサーバ。
【請求項１７】
請求項１から１３のいずれかに記載の画像処理システムとして機能させるための各種処理手順を、コンピュータシステムに実行させるためのプログラム。
【請求項１８】
請求項１から１３のいずれかに記載の画像処理装置として機能させるための各種処理手順を、コンピュータシステムに実行させるためのプログラム。
【請求項１９】
請求項１から１３のいずれかに記載のサービス提供手段として機能させるための各種処理手順を、コンピュータシステムに実行させるためのプログラム。
【請求項２０】
請求項１から１３のいずれかに記載の特定情報通知手段として機能させるための各種処理手順を、コンピュータシステムに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像に関する処理を行うための画像処理システム、画像処理システムを構成する画像処理装置及びサーバ、並びに、サーバの処理を実現するプログラムに関する。
【背景技術】
【０００２】
従来、デジタル複写機が備えていない機能を、ネットワークを介して接続されたホストコンピュータに備えるようにしたシステムが提案されている（特許文献１参照。）。
すなわち、このシステムでは、デジタル複写機からホストコンピュータへ、制御用のコマンドコードや画像の濃度データなどのビットデータを送信し、ホストコンピュータが、受信した制御用コマンドコードの内容を解析して、画像データに対して指定されている画像編集機能により画像処理を行う。こうしてホストコンピュータにより処理された画像データはデジタル複写機に返送され、デジタル複写機で印刷される。
【０００３】
また、このシステムでは、ホストコンピュータに新規機能が追加されると、ホストコンピュータからデジタル複写機へ新規機能の内容が送信され、デジタル複写機では、本デジタル複写機に登録したい新規機能をユーザに選択させる。つまり、このシステムでは、新規機能のうちユーザが使用したいものをデジタル複写機へ登録することにより、その機能が利用可能となる。
【特許文献１】特開平９−２３８２１５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、上述したシステムは、インターネット上の一般サーバのように日々サービスが無秩序に増減する環境には適さないという問題がある。
すなわち、上記システムでは、ホストコンピュータに新規機能が追加された場合に、その機能をデジタル複写機へ登録することにより利用可能となるが、例えば、インターネット上の一般サーバのように多種多様なサービスが頻繁に増減する環境においては、デジタル複写機への登録作業も頻繁に行う作業が生じ、また、登録する情報量も膨大となる。
【０００５】
本発明は、こうした問題にかんがみてなされたものであり、インターネット上の一般サーバのように日々サービスが無秩序に増減する環境に適応させることのできる画像処理システムを提供することを目的としている。
【課題を解決するための手段】
【０００６】
上記課題を解決するため請求項１に記載の画像処理システムは、画像を読み取りその画像を表す画像データを生成する機能および画像データの表す画像を印刷する機能のうち少なくとも一方の機能を有する画像処理装置と、該画像処理装置からの要求に応じて、該画像処理装置の有する機能により生成された画像データおよび印刷される画像を示す画像データのうち少なくとも一方に関するサービスを提供するサービス提供手段と、それぞれが該サービス提供手段により提供可能なサービスを前記画像処理装置に通知可能な複数の特定情報通知手段と、を備えた画像処理システムである。そして、前記特定情報通知手段において、前記サービス提供手段が提供可能なサービスを特定可能なサービス特定情報を前記画像処理装置に通知する情報通知手段が備えられている。また、前記画像処理装置において、前記特定情報通知手段の備える情報通知手段により通知されたサービス特定情報に基づき、該サービス特定情報で特定されるサービスのサービスリストを作成するリスト作成手段と、該リスト作成手段により作成されたサービスリストを当該画像処理装置の備える表示部に表示させるリスト表示手段と、該リスト表示手段により表示されたサービスリストにおけるサービスのうち、前記サービス提供手段に提供を要求すべきサービスをユーザに指定させるサービス指定手段と、該サービス指定手段により指定されたサービスの提供を前記サービス提供手段に対して要求する提供要求手段と、当該画像処理装置の有する機能を、前記提供要求手段による要求を受けた前記サービス提供手段によりサービスの提供を受けて実現する機能実現手段と、が備えられている。また、前記サービス提供手段において、前記画像処理装置の備える提供要求手段による要求を受けた際に、該画像処理装置に対してサービスを提供するための処理を実行する提供実行手段が備えられている。
【０００７】
このように構成された画像処理システムにおいて、画像処理装置は、特定情報通知手段が備える情報通知手段により通知されたサービス特定情報（サービス提供手段が提供可能なサービスを特定可能な情報）に基づき、サービス提供手段に要求するサービスを決定する（ユーザに指定させる）。これにより、本画像処理システムによれば、インターネット上の一般サーバのように日々サービスが無秩序に増減する環境にも適応させることができる。
【０００８】
仮に、従来の構成のように、サービス特定情報に相当する情報を画像処理装置に登録しておく構成とした場合、サービスが無秩序に増減する環境においては、その都度、情報を登録しなければならず、画像処理装置側の負担が大きくなってしまうため、望ましいことではない。これに対し、本画像処理システムでは、サービス特定情報が特定情報通知手段から通知され、これにより、画像処理装置側でサービス提供手段が提供可能なサービスを把握することができるため、サービスが無秩序に増減する環境においても、画像処理装置の負担を抑えることができる。
【０００９】
さらに、この構成においては、複数の特定情報通知手段それぞれから通知されたサービス特定情報それぞれにより特定されるサービスのリスト（サービスリスト）を作成したうえ、このリストに基づいてサービス提供手段に提供を要求すべきサービスをユーザに指定させることができる。そのため、ユーザは、このリストに基づいて容易にサービスを指定することができる。
【００１０】
なお、この構成において、画像処理装置の備えるリスト作成手段は、特定情報通知手段から通知されたサービス特定情報に基づき、このサービス特定情報で特定されるサービスのサービスリストを作成する手段であり、こうして作成される具体的なサービスリストの内容については特に限定されない。
【００１１】
ただ、このリスト作成手段を、複数の特定情報通知手段それぞれから通知されたサービス特定情報に基づいてサービスリストを作成する構成とした場合、例えば、複数のサービス特定情報それぞれで示されるサービスの中に同一のサービスが含まれていると、これらがサービスリスト化された際、同じサービスであるにも拘わらず、それぞれ別のサービスが登録されているかのように見えるリストが作成されてしまう。そのため、このようなサービスリストを表示させた際、複数の同じサービスが同時に表示されてしまうと、それらが同じサービスであるにも拘わらず、それぞれ別のサービスであると誤信させてしまい、ユーザに無用な混乱を与えてしまう虞がある。また、この場合、画像処理装置の備える表示部が充分な表示領域を有していないと、そのような狭い表示領域に複数の同じサービスが表示されてしまった場合に、複数の異なるサービスを表示させるだけための無用な操作負担（例えば、画面をスクロールさせる）が発生してしまう。
【００１２】
そのため、サービスリスト中に複数の同じサービスが含まれないようにすることが望ましく、このためには、例えば、請求項２に記載のように、前記リスト作成手段は、前記特定情報通知手段の備える情報通知手段によりそれぞれ通知されたサービス特定情報に基づき、該サービス特定情報で特定される全てのサービスのうち、それぞれ異なるサービスのみからなるサービスリストを作成する、とよい。
【００１３】
このように構成すれば、リスト作成手段により作成されるサービスリストは、それぞれ異なるサービスのみが登録された状態となるため、同じサービスそれぞれが登録された状態になることはない。そのため、このようなサービスリストを表示させた場合には、複数の同じサービスが同時に表示されてしまうことはなく、ユーザに無用な混乱を与えてしまう虞はない。また、同じサービスが登録された状態にはならないため、充分な表示領域を有さない表示部にサービスリストを表示させた場合でも、そのような狭い領域に同じサービスが表示された状態となることはないため、無用な操作負担が発生することもない。
【００１４】
また、リスト作成手段がサービスリストを作成する際には、特定情報通知手段から通知されたサービス特定情報で特定されるサービスをランダムに配列したものとすればよいが、所定の規則により配列したものとしてもよい。
【００１５】
この後者の場合には、例えば、請求項３に記載のように、前記リスト作成手段は、前記特定情報通知手段の備える情報通知手段により通知されたサービス特定情報に基づき、該サービス特定情報で特定されるサービスを所定の規則に従って並び替えてなるサービスリストを作成する、ように構成すればよい。
【００１６】
このように構成すれば、リスト作成手段により作成されるサービスリストは、所定の規則に従って並び替えられたものとなるため、その規則によってはユーザにとって視認性のよいものとすることができ、これにより、サービスを指定する際の操作性をも向上させることができる。
【００１７】
ここでいう「所定の規則」とは、どのような規則であってもよいが、ユーザにとって視認性のよいものとするためには、例えば、サービスを五十音順やアルファベット順といった規則の他、サービスの内容毎に並び替えるといった規則などが考えられる。
【００１８】
また、上述のリスト作成手段については、複数の特定情報通知手段それぞれから通知されたサービス特定情報のうち、特定の特定情報通知手段から通知されたサービス特定情報のみに基づいてサービスリストを作成する構成とすることも考えられ、この場合、例えば、請求項４に記載のように、前記リスト作成手段は、前記複数の特定情報通知手段のうち、所定の作成条件を満たす前記特定情報通知手段の備える情報通知手段により通知されたサービス特定情報に基づき、該サービス特定情報で特定されるサービスのサービスリストを作成する、ように構成するとよい。
【００１９】
このように構成すれば、所定の作成条件を満たすような特定情報通知手段の備える情報通知手段により通知されたサービス特定情報に基づき、サービスリストが作成されるため、この作成条件に応じた適切な特定情報通知手段のみをサービス特定情報の取得元とすることができる。
【００２０】
この構成における「作成条件」とは、例えば、画像処理装置側で登録された特定の特定情報通知手段から通知されたこと、画像処理装置との間で所定の認証手順に従って認証できた特定情報通知手段から通知されたこと、などが考えられる。また、別の条件として、画像処理装置との通信状況が良好な特定情報通知手段であること、などが考えられる。
【００２１】
この後者のためには、例えば、請求項５に記載のように、前記画像処理装置において、前記リスト作成手段は、前記複数の特定情報通知手段のうち、ネットワーク的な距離が最も近い距離となっている前記特定情報通知手段について、該特定情報通知手段の備える情報通知手段により通知されたサービス特定情報に基づき、該サービス特定情報で特定されるサービスのサービスリストを作成する、ように構成すればよい。
【００２２】
このように構成すれば、ネットワーク的な距離が最も近い距離となっている特定情報通知手段の備える情報通知手段により通知されたサービス特定情報に基づき、サービスリストが作成されるため、ネットワーク的な距離が近いことにより通信状況が最も良好であると推定される特定情報通知手段のみをサービス特定情報の取得元とすることができる。
【００２３】
また、この構成において、ネットワーク的な距離が最も近い特定情報通知手段を特定するための構成としては、例えば、請求項６に記載のような構成を考えることができる。
請求項６に記載の画像処理システムは、前記画像処理装置において、前記特定情報通知手段の備える情報通知手段によりそれぞれ通知されたサービス特定情報から前記特定情報通知手段それぞれについてネットワーク的な距離を推定する第１距離推定手段が備えられており、前記リスト作成手段は、前記第１距離推定手段により推定されたネットワーク的な距離が最も近い距離となっている前記特定情報通知手段により通知されたサービス特定情報に基づき、該サービス特定情報で特定されるサービスのサービスリストを作成する、ことを特徴とする。
【００２４】
このように構成すれば、画像処理装置側では、複数の特定情報通知手段から通知されたサービス特定情報それぞれに基づいて、これら特定情報通知手段のネットワーク的な距離を推定し、最もネットワーク的な距離が近いと推定された特定情報通知手段から通知されたサービス特定情報で特定されるサービスのサービスリストを作成することができる。
【００２５】
なお、この構成において、第１距離推定手段でネットワーク的な距離を推定するための方法は特に限定されないが、例えば、特定情報通知手段から通知されたサービス特定情報のヘッダに含まれるＴＴＬ（Time To Live）などから推定することが考えられる。このＴＴＬは、特定情報通知手段から送信された情報が画像処理装置に至るまでの間で中継装置（例えば、ルータなど）を通過した際に減算されるものであるため、このＴＴＬの値に応じてネットワーク的な距離が近いと推定することができる。また、上述した「ネットワーク的な距離」としては、例えば、ＩＣＭＰ（Internet Control Message Protocol ）によるエコーリクエストを特定情報通知手段に送信した後、この特定情報通知手段からエコーリプライが返信されてくるまでの時間に応じて、ネットワーク的な距離が遠いと推定することも考えられる。
【００２６】
ところで、上述した特定情報通知手段によるサービス特定情報の通知は、例えば、定期的に行うなど特定情報通知手段側の都合で行うように構成すればよいが、画像処理装置（もしくは画像処理装置のユーザ）側の都合で行うように構成してもよい。
【００２７】
この後者のためには、画像処理装置側からサービス特定情報の通知を要求できるように構成すればよく、具体的な構成としては、例えば、請求項７に記載のように、前記画像処理装置において、前記特定情報通知手段に対し、前記サービス特定情報の通知を要求する通知要求手段が備えられており、前記特定情報通知手段において、前記情報通知手段は、前記画像処理装置の備える通知要求手段による要求を受けた際に、前記サービス特定情報を前記画像処理装置に通知する、ように構成すればよい。
【００２８】
このように構成すれば、画像処理装置においては、通知要求手段により特定情報通知手段にサービス特定情報の通知を要求したタイミングで、特定情報通知手段からのサービス特定情報の通知を受けることができる。
【００２９】
この構成における特定情報通知手段は、画像処理装置側で特定の処理が行われた際に要求を行うように構成すればよいが、ユーザによる操作を受けて行うように構成してもよく、この後者の場合であれば、ユーザが任意のタイミングでサービス特定情報の通知を受けることができる。
【００３０】
また、この特定情報通知手段による要求は、全ての特定情報通知手段に対して行うように構成すればよいが、特定の特定情報通知手段に対してのみ行うように構成してもよく、この後者のためには、例えば、特定の要求条件を満たす特定情報通知手段に対してサービス特定情報の通知を要求するように構成することが考えられる。
【００３１】
また、請求項８に記載のように、前記通知要求手段は、１以上の前記特定情報通知手段が登録されてなる通知手段リストに基づいて、該通知手段リストに登録されている最も優先順位の高い前記特定情報通知手段に対して前記サービス特定情報の通知を要求する、ように構成することも考えられる。
【００３２】
このように構成すれば、通知手段リストに最も優先順位の高いものとして登録されている特定情報通知手段から通知されたサービス特定情報に基づき、サービスリストが作成されるため、この通知手段リストにおいて優先順位の高い特定情報通知手段をサービス特定情報の取得元とすることができる。
【００３３】
また、この構成における「優先順位」については、あらかじめ通知手段リストに登録したものとすればよいが、所定の条件に応じて随時変更されるものとしてもよい。ここでいう条件としては、例えば、画像処理装置との通信状況が良好な特定情報通知手段ほど優先順位が高くなるようにすることが考えられる。このためには、例えば、請求項９に記載のように、前記画像処理装置において、前記複数の特定情報通知手段とのデータ通信を経て該特定情報通知手段それぞれについてのネットワーク的な距離を推定する第２距離推定手段と、該第２距離推定手段により推定されたネットワーク的な距離が最も近い距離となっている前記特定情報通知手段が最も優先順位の高い前記特定情報通知手段となるように、前記通知手段リストに登録されている前記特定情報通知手段の優先順位を変更する第１順位変更手段と、が備えられている、とよい。
【００３４】
このように構成すれば、ネットワーク的な距離が最も近い距離となっている特定情報通知手段の通知手段リストにおける優先順位が高くなるように変更されるため、このように、ネットワーク的な距離が近いことにより通信状況が最も良好であると推定される特定情報通知手段に対してサービス特定情報を要求できるようになる。これにより、ネットワーク的な距離が近いことにより通信状況が最も良好であると推定される特定情報通知手段をサービス特定情報の取得元とすることができる。
【００３５】
この構成における第２距離推定手段は、複数の特定情報通知手段とのデータ通信を経て、これら特定情報通知手段それぞれについてのネットワーク的な距離を推定する手段であるが、この推定方法としては、例えば、ＩＣＭＰによるエコーリクエストを特定情報通知手段に送信した後、この特定情報通知手段からエコーリプライが返信されてくるまでの時間に応じて、ネットワーク的な距離が遠いと推定する方法が考えられる。
【００３６】
また、このように優先順位の高い特定情報通知手段に対してサービス特定情報を要求する構成においては、そのような優先順位の高い特定情報通知手段が何らかの原因によりサービス特定情報を正常に通知してこないことも想定できるため、この場合の対策として、例えば、請求項１０に記載のような構成が考えられる。
【００３７】
請求項１０に記載の画像処理システムは、前記画像処理装置において、前記通知要求手段は、前記サービス特定情報の通知を要求した前記特定情報通知手段の備える情報通知手段から正常に前記サービス特定情報が通知されなかった場合、該特定情報通知手段以外の前記特定情報通知手段に対し、前記サービス特定情報の通知を要求する、ことを特徴とする。
【００３８】
このように構成すれば、優先順位の高い特定情報通知手段が何らかの原因によりサービス特定情報を正常に通知してこなかった場合であっても、別の特定情報通知手段からサービス特定情報を取得することができる。
【００３９】
また、上述した「正常にサービス特定情報が通知されなかった場合」とは、特定情報通知手段側でサービス特定情報を通知する機能が停止されていることにより通知が行われなかった場合、特定情報通知手段側にサービス特定情報が記憶（管理）されていないことにより通知が行われなかった場合、などのことである。
【００４０】
また、上述のように優先順位の高い特定情報通知手段に対してサービス特定情報を要求する構成においては、そのような優先順位の高い特定情報通知手段が何らかの原因によりサービス特定情報を正常に通知してこなかった場合には、この特定情報通知手段とのデータ通信が安定して行えなくなっている虞があるにも拘わらず、優先順位が高いままであると、以降もサービス特定情報を正常に取得できなくなってしまう虞がある。
【００４１】
そこで、請求項１１に記載のように、前記画像処理装置において、前記通知要求手段により前記サービス特定情報を要求された前記特定情報通知手段の備える情報通知手段から正常に前記サービス特定情報が通知されなかった場合、該特定情報通知手段以外の前記特定情報通知手段の優先順位が高くなるように、前記通知手段リストにおける優先順位を変更する第２順位変更手段が備えられている、とよい。
【００４２】
このように構成すれば、画像処理装置においては、正常にサービス特定情報が通知されなかった場合に、この特定情報通知手段以外の特定情報通知手段の優先順位が高くなるように通知手段リストの登録内容を変更するため、以降は、この他の特定情報通知手段からサービス特定情報を取得できるようになる。
【００４３】
また、上述したように、画像処理装置が通知要求手段により特定情報通知手段に対して通知を要求する構成において、特定情報通知手段は、どのような画像処理装置からの要求であっても、サービス特定情報を通知するように構成すればよいが、本画像処理システムにおいて、複数の画像処理装置が存在する状況となった際には、サービス特定情報を通知する画像処理装置を制限できることがセキュリティーの観点から望ましいといえる。
【００４４】
そこで、請求項１２に記載のように、前記特定情報通知手段において、前記情報通知手段は、所定の通知条件を満たす前記画像処理装置の備える通知要求手段による要求を受けた際に、前記サービス特定情報を前記画像処理装置に通知する、ように構成されている、とよい。
【００４５】
このように構成すれば、特定情報通知手段は、所定の通知条件を満たす画像処理装置からの要求でなければ、サービス特定情報を通知することはないため、正規の画像処理装置からの要求のみが通知条件を満たすように構成しておくことにより、例えば、不正にサービス特定情報を取得することを目的とした要求に対してサービス特定情報を通知してしまう、といったことを防止できる。
【００４６】
なお、この構成における「通知条件」としては、例えば、特定情報通知手段側で登録された特定の画像処理装置からの要求であること、特定情報通知手段との間で所定の認証手順に従って認証できた画像処理装置からの要求であること、などが考えられる。また、別の条件として、特定情報通知手段との通信状況が良好な画像処理装置であること、などが考えられる。
【００４７】
この後者のためには、例えば、請求項１３に記載のように、前記特定情報通知手段において、前記情報通知手段は、ネットワーク的な距離が最も近い距離となっている前記画像処理装置の備える通知要求手段による要求を受けた際に、前記サービス特定情報を前記画像処理装置に通知する、ように構成することが考えられる。
【００４８】
このように構成すれば、特定情報通知手段は、ネットワーク的な距離が最も近い距離となっている画像処理装置の備える通知要求手段による要求を受けた際に、サービス特定情報を通知するため、ネットワーク的な距離が近いことにより通信状況が最も良好であると推定される画像処理装置のみにサービス特定情報を通知することができる。
【００４９】
なお、この構成における「ネットワーク的な距離が最も近い距離」とは、例えば、画像処理装置と特定情報通知手段との間の通信経路や、両者間に存在する中継装置（例えば、ルータなど）の数（ホップ数）などで特定されるものである。ここで、通信経路については、例えば、ＩＣＭＰによるエコーリクエストを画像処理装置に送信した後、この画像処理装置からエコーリプライが返信されてくるまでの時間に応じてネットワーク的な距離が遠いと推定することが考えられる。また、ホップ数については、例えば、画像処理装置から受けた要求となる情報のヘッダに含まれるＴＴＬに応じてネットワーク的な距離が近いと推定することが考えられる。
【００５０】
また、請求項１４に記載の画像処理装置は、画像を読み取りその画像を表す画像データを生成する機能および画像データの表す画像を印刷する機能のうち少なくとも一方の機能を有する画像処理装置である。そして、当該画像処理装置の有する機能により生成された画像データおよび印刷される画像を示す画像データのうち少なくとも一方に関するサービスを提供するサービス提供サーバに対して要求するサービスを特定可能なサービス特定情報の通知を、それぞれが該特定情報を前記画像処理装置に通知可能な複数の情報通知サーバから受け、該通知されたサービス特定情報に基づき、該サービス特定情報で特定されるサービスのサービスリストを作成するリスト作成手段と、該リスト作成手段により作成されたサービスリストを当該画像処理装置の備える表示部に表示させるリスト表示手段と、該リスト表示手段により表示されたサービスリストにおけるサービスのうち、前記サービス提供サーバに提供を要求すべきサービスをユーザに指定させるサービス指定手段と、該サービス指定手段により指定されたサービスの提供を前記サービス提供サーバに対して要求する提供要求手段と、当該画像処理装置の有する機能を、前記提供要求手段による要求を受けた前記サービス提供サーバによりサービスの提供を受けて実現する機能実現手段と、が備えられている。
【００５１】
このように構成された画像処理装置によれば、請求項１に記載の画像処理システムの一部（画像処理装置）を構成することができる。
なお、この画像処理装置においては、請求項２から１３のいずれかに記載の画像処理装置の備える全ての手段を備えた構成とすることもでき、このような構成とすれば、この請求項２から１３のいずれかに記載の画像処理装置と同様の作用，効果を得ることができる。
【００５２】
また、請求項１５に記載のサーバは、請求項１から１３のいずれかに記載の画像処理システムを構成するサービス提供手段として機能する、ことを特徴とするサーバである。
このように構成されたサーバによれば、請求項１から１３のいずれかに記載の画像処理システムの一部（サービス提供手段）を構成することができる。
【００５３】
また、請求項１６に記載のサーバは、請求項１から１３のいずれかに記載の画像処理システムを構成する特定情報通知手段として機能する、ことを特徴とするサーバである。
このように構成されたサーバによれば、請求項１から１３のいずれかに記載の画像処理システムの一部（特定情報通知手段）を構成することができる。
【００５４】
また、請求項１７に記載のプログラムは、請求項１から１３のいずれかに記載の画像処理システムとして機能させるための各種処理手順を、コンピュータシステムに実行させるためのプログラムである。
【００５５】
このようなプログラムを実行するコンピュータシステムによれば、請求項１から１３のいずれかに記載の画像処理システムの一部を構成することができる。
また、請求項１８に記載のプログラムは、請求項１から１３のいずれかに記載の画像処理装置として機能させるための各種処理手順を、コンピュータシステムに実行させるためのプログラムである。
【００５６】
このようなプログラムを実行するコンピュータシステムによれば、請求項１から１３のいずれかに記載の画像処理システムの一部（画像処理装置）を構成することができる。
また、請求項１９に記載のプログラムは、請求項１から１３のいずれかに記載のサービス提供手段として機能させるための各種処理手順を、コンピュータシステムに実行させるためのプログラムである。
【００５７】
このようなプログラムを実行するコンピュータシステムによれば、請求項１から１３のいずれかに記載の画像処理システムの一部（サービス提供手段）を構成することができる。
【００５８】
また、請求項２０に記載のプログラムは、請求項１から１３のいずれかに記載の特定情報通知手段として機能させるための各種処理手順を、コンピュータシステムに実行させるためのプログラムである。
【００５９】
このようなプログラムを実行するコンピュータシステムによれば、請求項１から１３のいずれかに記載の画像処理システムの一部（特定情報通知手段）を構成することができる。
【００６０】
なお、上述した各プログラムは、コンピュータによる処理に適した命令の順番付けられた列からなるものであって、例えば、ＦＤ，ＣＤ−ＲＯＭ，メモリーカードなどの記録媒体やインターネットなどの通信回線網を介して、各装置（画像処理装置やサーバ），または，各装置を利用するユーザに提供されるものである。また、これらプログラムをユーザに提供する形態としては、各装置のハードディスクやメモリにプレインストールされた状態で提供する形態であってもよい。
【発明を実施するための最良の形態】
【００６１】
以下、本発明が適用された実施形態について、図面を用いて説明する。
［第１実施形態］
（１）全体構成
画像処理システムは、図１に示すように、複合機１０，ディレクトリサーバ２０，機能サーバ３０などからなり、これらがネットワーク（本実施形態ではインターネット等の広域ネットワーク（ＷＡＮ：Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）１を介してデータ通信可能に接続されている。具体的にいうと、複合機１０，ディレクトリサーバ２０および機能サーバ３０は、それぞれルータ（Ｒ；周知のブロードバンドルータ）２〜６を介してネットワーク１と接続されている。
【００６２】
複合機１０は、制御部１１，操作部１２，読取部１３，記録部１４，通信部１５，記憶部１６，音入力部１７および音出力部１８などを備えている。
これらのうち、制御部１１は、ＣＰＵ，ＲＯＭ，ＲＡＭ等を備え、このＣＰＵが、ＲＯＭに記憶されているプログラムに従って複合機１０全体を統括制御する。
【００６３】
また、操作部１２は、図２に示すように、コピーキー４１，スキャナキー４２，ＦＡＸキー４３，サービスキー４４，設定キー４５，上下左右の方向キー４６〜４９，ＯＫキー５０およびキャンセルキー５１，ディスプレイ５２などからなるユーザインタフェースとして構成されている。
【００６４】
また、読取部１３は、スキャナとしての機能を実現するための入力デバイスであり、用紙等のシート状記録媒体に記録（例えば印刷）された画像を読み取り、その画像を表す画像データを生成する。
【００６５】
また、記録部１４は、プリンタとしての機能を実現するための出力デバイスであり、画像データの表す画像を用紙等のシート状記録媒体に印刷する。
また、通信部１５は、複合機１０をネットワーク１に接続すると共に、このネットワーク１を介してデータを送受信するための処理を行う。
【００６６】
また、記憶部１６は、図示しない不揮発性ＲＡＭを備えており、この不揮発性ＲＡＭにデータを記憶可能に構成されている。
また、音入力部１７は、本複合機１０が備える図示しないハンドセット（受話器）に設けられたマイクから音を入力し、その音を表す音データ（ＰＣＭデータ）を生成する。
【００６７】
そして、音出力部１８は、音データ（ＰＣＭデータ）の表す音を、図示しないハンドセットに設けられたスピーカ、又は、複合機本体に設けられた図示しないスピーカから出力する。
【００６８】
ディレクトリサーバ２０には、それぞれ制御部２１，通信部２２および記憶部２３などを備えるディレクトリサーバＡ，Ｂ，Ｃ，Ｄがある（以降、特に明示しない限り、ディレクトリサーバ２０はディレクトリサーバＡを指すものとする）。
【００６９】
これらのうち、制御部２１は、ＣＰＵ，ＲＯＭ，ＲＡＭ等を備え、このＣＰＵが、ＲＯＭまたはＲＡＭに記憶されているプログラムに従ってディレクトリサーバ２０全体を統括制御する。
【００７０】
また、通信部２２は、ディレクトリサーバ２０をネットワーク１に接続すると共に、このネットワーク１を介してデータを送受信するための処理を行う。
そして、記憶部２３は、図示しないハードディスクを備えており、このハードディスクにデータを記憶する。この記憶部２３には、後述するサービス定義情報２５を記憶するためのサービス定義情報記憶部２４が設けられている。このサービス定義情報２５は、ＸＭＬ（eXtensible Markup Language）により記述されたＸＭＬデータであり、この記述内容に従って後述するサービス選択用画面を表示することで（図１１（ａ）参照）、機能サーバ３０が提供可能なサービス一覧（各サービスの種類及び要求先アドレス（ＵＲＬ；Uniform Resource Locator）を提供することができる。なお、このサービス定義情報２５における各タグの定義付けを図３に示す。
【００７１】
機能サーバ３０は、制御部３１，通信部３２および記憶部３３などを備えている。
これらのうち、制御部３１は、ＣＰＵ，ＲＯＭ，ＲＡＭ等を備え、このＣＰＵが、ＲＯＭまたはＲＡＭに記憶されているプログラムに従って機能サーバ３０全体を統括制御する。なお、この制御部３１は、複合機１０の制御部１１に比べて充分に高性能な構成とされており、複合機１０の制御部１１では実行困難な処理についてもそれを行うことができる。
【００７２】
また、通信部３２は、機能サーバ３０をネットワーク１に接続すると共に、このネットワーク１を介してデータを送受信するための処理を行う。
そして、記憶部３３は、図示しないハードディスクを備えており、このハードディスクにデータを記憶する。この記憶部３３は、後述するサービスＩ／Ｆ情報３６を記憶するためのサービスＩ／Ｆ情報記憶部３４と、それぞれ異なるサービスを提供するための処理を実行するサービスソフトウェア３７を記憶するためのサービスソフト記憶部３５と、からなる。このサービスＩ／Ｆ情報３６は、ＸＭＬにより記述されたＸＭＬデータであり、この記述内容に従って後述するパラメータ入力用画面を表示することで（図１８参照）、機能サーバ３０に対してサービスの提供を要求するための情報（サービスの内容及び要求先アドレス）を提供することができる。なお、このサービスＩ／Ｆ情報３６における各タグの定義付けを図４に示す。
（２）複合機１０による処理
以下に、複合機１０の制御部１１により実行される各種処理について説明する。
（２−１）複合機処理
はじめに、複合機１０が起動された以降、繰り返し実行される処理である複合機処理を図５に基づいて説明する。
【００７３】
この複合機処理が起動されたら、まず、初期化処理を行う（ｓ１０２）。
この初期化処理を終えた後、外部からの指令，例えば、操作部１２への入力操作やネットワーク１を介した指令信号の入力などが発生したら（ｓ１０４）、この入力が動作モードをサービスモードへ移行させるための内容であるか否かをチェックする（ｓ１０６）。ここでは、ｓ１０４による入力が操作部１２のサービスキー４４を押下する操作であれば、サービスモードへ移行させるための内容であると判定する。なお、この「サービスモード」とは、以下の処理で示すように、機能サーバ３０に対してサービスの提供を要求するための処理を実行するための動作モードである。
【００７４】
このｓ１０６で、サービスモードへ移行させるための内容でないと判定されたら（ｓ１０６：ＮＯ）、その入力内容に応じて他の動作モードに対する処理（その他のモードの処理）を行った後（ｓ１０８）、ｓ１０４へ戻る。
【００７５】
一方、ｓ１０６で、サービスモードへ移行させるための内容であると判定されたら（ｓ１０６：ＹＥＳ）、機能サーバ３０に要求すべきサービスを指定する方法をユーザに指定させる（ｓ１１０）。ここでは、図６に示す方法選択画面をディスプレイ５２に表示させ、サービスをリストから指定するか（図６における「リストから選択」）、要求先アドレスを直接入力により指定するか（図６における「直接入力」）の選択を促す。この選択画面が表示された後、ユーザは、操作部１２により、いずれにより指定するかの選択を行うことができる。
【００７６】
このｓ１１０で、リストから指定する旨が選択されたら（ｓ１１０：ＹＥＳ）、ディレクトリサーバリストの先頭に登録（記憶）されているディレクトリサーバ２０を以下の処理の処理対象とした後（ｓ１１１）、処理対象のディレクトリサーバ２０にサービス一覧の照会を要求する（ｓ１１２）。この「ディレクトリサーバリスト」とは、図７に示すように、ｓ１１２によりサービス一覧の照会を要求するディレクトリサーバ２０のアドレスが１以上登録された状態で記憶されているリストである。そして、このｓ１１２では、処理対象となっているディレクトリサーバ２０のアドレス宛に、ＨＴＴＰ１．１（ＨＴＴＰ：HyperText Transfer Protocol ）に基づくＨＴＴＰリクエスト（以降、単に「ＨＴＴＰリクエスト」という）を送信することにより、サービス一覧の照会を要求する。このアドレスに基づいてアクセスを受けたディレクトリサーバ２０は、後述するようにサービス定義情報２５を、ＨＴＴＰ１．１に基づくＨＴＴＰレスポンス（以降、単に「ＨＴＴＰレスポンス」という）により返信してくる。なお、この「サービス定義情報２５」には、「データ保存サービス」，「印刷サービス」，「コピー応用サービス」といったカテゴリそれぞれにおけるサービスの選択を促すサービス選択用画面を表示させるためのもの（トップサービス定義情報２５）と、カテゴリの選択を促すサービス選択用画面を表示させるためのもの（カテゴリサービス定義情報２５）と、があり、このｓ１１２では、全てのサービス定義情報２５それぞれにアクセスするための各アドレス宛にＨＴＴＰリクエストを送信する。なお、図８，図９に、トップのサービス定義情報２５，および，各カテゴリの選択を促すためのサービス定義情報２５のＸＭＬによる記述内容の例を示す（図８はディレクトリサーバＡ，図９はディレクトリサーバＢからのもの）。
【００７７】
次に、こうしてｓ１１２にてサービス一覧の照会を要求したディレクトリサーバ２０からサービス定義情報２５を受信してサービス定義情報格納メモリに格納（保存）する（ｓ１１３）。ここでは、受信したサービス定義情報２５の各情報を、サービス定義情報格納用の記憶領域に登録する処理を行う。
【００７８】
具体的な例として、あるディレクトリサーバ２０（ディレクトリサーバＡ）から、図８に示すサービス定義情報２５それぞれを受信した場合を例示すると、まず、サービス定義情報２５を受信したディレクトリサーバ２０の名前，トップサービス定義情報２５のメニュー数（図１０における「Ｍｅｎｕ数」参照），トップサービス定義情報２５で用いられている言語（図１０における「Ｌａｎｇ」参照），および，トップサービス定義情報２５により選択を促される各カテゴリ名をそれぞれ登録する。ここでは、ディレクトリサーバ２０の名前としてディレクトリサーバＡが登録され、メニュー数として「Ｎｕｍ＿Ｌｉｎｋ」タグの値が登録され、言語として「Ｌａｎｇｕａｇｅ」タグの値が登録され、カテゴリ名として「Ｌｉｎｋ＿Ｔｉｔｌｅ」の値それぞれが登録される。そして、カテゴリそれぞれにおけるサービスの提供を受けるためのアドレスを、各サービス名に対応づけて登録する。ここでは、カテゴリサービス定義情報２５における「Ｌｉｎｋ＿Ｌｏｃａｔｉｏｎ」タグの値が、「Ｌｉｎｋ＿Ｔｉｔｌｅ」タグの値に対応づけられた状態で「ＳＵＢ−ＭＥＮＵアドレス」として登録される（図１０参照）。
【００７９】
次に、ディレクトリリストに登録されている全てのディレクトリサーバ２０に対するｓ１１２〜ｓ１１４の処理が完了したか否かをチェックし（ｓ１１４）、完了していないと判定された場合（ｓ１１４：ＮＯ）、次のディレクトリサーバを処理対象とした後（ｓ１１５）、ｓ１１２へ戻る。
【００８０】
こうして、ｓ１１２〜ｓ１１５を、ディレクトリサーバリストに登録されている全てのディレクトリサーバ２０に対する処理が完了したら（ｓ１１４：ＹＥＳ）、この時点でサービス定義情報格納メモリに格納されているサービス定義情報２５に基づいて、サービス選択用画面を生成してディスプレイ５２に表示させる（ｓ１１６）。ここでは、後述するサービス選択用画面生成処理を行うことにより、サービス選択用画面を生成し、このサービス選択用画面をディスプレイ５２に表示させる。
【００８１】
ここでは、このｓ１１６が本複合機処理の起動後、最初に行われる場合には、例えば、図１１（ａ）に示すように、表示用タイトル（Ｔｉｔｌｅ）として「ディレクトリサービス」の文字がディスプレイ５２の表示領域上部に配置され、選択可能なカテゴリを表す項目である「データ保存サービス」，「印刷サービス」および「コピー応用サービス」の文字が表示領域下部に配置されてなるサービス選択用画面の表示が行われる。また、ｓ１１６の処理が以降の処理（ｓ１３０）から戻ってきた際に行われる場合には、例えば、図１１（ｂ），図１１（ｃ）に示すように、表示用タイトル（Ｔｉｔｌｅ）として「コピー応用サービス」の文字が表示領域上部に配置され、選択可能なサービスを表す項目である「すかし入りコピー」，「翻訳コピー」，「原稿読み上げ」および「音声テキスト変換」の文字が表示領域下部に配置されてなるサービス選択用画面の表示が行われる。なお、本実施形態において、表示領域の制約上、すべての項目を一度に表示することができない場合には、画面をスクロールさせることで各項目の配置が上下に移動するように構成されており、図１１（ｂ），図１１（ｃ）では、そのようなスクロール前後の状態を示している。また、この場合のサービス選択用画面には、サービスに対応する別のサービス定義情報２５のＩＤがリンク先として割り当てられており（図８，図９における「Ｌｉｎｋ＿Ｌｏｃａｔｉｏｎ」参照）、いずれかの項目が選択された際に、その項目に対応するＩＤのサービスの提供が機能サーバ３０に要求されることになる。
【００８２】
また、上述したｓ１１０で、要求先アドレスを直接入力により指定する旨が選択された場合には（ｓ１１０：ＮＯ）、要求先アドレスを入力するための図示しないアドレス入力画面をディスプレイ５２に表示させた後（ｓ１１８）、次の処理（ｓ１２０）へ移行する。
【００８３】
こうして、サービス選択用画面またはアドレス入力画面が表示された以降、ユーザは、操作部１２により、いずれかの項目を選択する操作（アドレスを入力する操作），または，サービスモードを終了する操作（停止操作）を行うことができる。
【００８４】
次に、ユーザによる操作部１２への入力操作を受け付け（ｓ１２０）、こうして行われた入力操作がリンクを選択する操作であるか否かをチェックする（ｓ１２２）。ここでは、ｓ１１６にて表示されたサービス選択用画面における項目を選択する操作，または，ｓ１１８にて表示されたアドレス入力画面にアドレスを入力する操作が入力操作として行われた場合に、リンクを選択する操作であると判定する。
【００８５】
このｓ１２２で、リンクを選択する操作でないと判定された場合（ｓ１２２：ＮＯ）、その入力操作が停止操作であれば（ｓ１２４：ＹＥＳ）、ｓ１０４へ戻ることによりサービスモードとしての処理を終了する一方、入力操作が停止操作でなければ（ｓ１２４：ＮＯ）、拒否音（ブザー音など）を鳴動させた後（ｓ１２６）、ｓ１２０へ戻る。
【００８６】
また、ｓ１２２で、入力操作がリンクを選択する操作であると判定された場合（ｓ１２２：ＹＥＳ）、その選択されたリンクがサービスへのリンク，つまり機能サーバ３０にサービスの提供を要求するためのＩＤであるか否かをチェックする（ｓ１２８）。
【００８７】
このｓ１２８で、サービスへのリンクでないと判定された場合，つまり別のサービス定義情報２５のＩＤである場合には（ｓ１２８：ＮＯ）、ディレクトリサーバ２０に対してサービス一覧の照会を要求し、該当するサービス定義情報２５を受信した後（ｓ１３０）、ｓ１１６へ戻ってサービス選択用画面をディスプレイ５２に表示させる。
【００８８】
そして、ｓ１２８で、サービスへのリンクであると判定された場合には（ｓ１２８：ＹＥＳ）、後述するセッション処理（図１４，図１５）を行った後（ｓ１３２）、ｓ１０４へ戻ることによりサービスモードとしての処理を終了する。
（２−２）サービス選択用画面生成処理
続いて、図５におけるｓ１１６であるサービス選択用画面生成処理の詳細な処理手順を図１２に基づいて説明する。
【００８９】
このサービス選択用画面生成処理が起動されると、まず、サーバアドレステーブルを記憶するための記憶領域を確保した後（ｓ２００２）、サービス定義情報格納メモリに登録されている情報のうち、先頭に登録されている情報を以降の処理を行う際の処理対象とする（ｓ２００４）。この「サービス定義情報格納メモリ」は、図５におけるｓ１１３にてサービス定義情報２５の情報が登録されたものであり、このＳ２００４では、これらの情報のうち、ディレクトリサーバ２０の名前が登録されている項目からカテゴリ名が登録されている項目（次のディレクトリサーバ２０の名前が登録されている直前の項目）までを処理対象とする。
【００９０】
次に、この時点で処理対象となっている情報に、ディレクトリサーバ２０の名前として「ＮＵＬＬ」がセットされている、つまり、その処理対象とすべき情報が登録されていないか否かをチェックする（ｓ２００６）。
【００９１】
このｓ２００６で、ディレクトリサーバ２０の名前として「ＮＵＬＬ」がセットされていない，つまりディレクトリサーバ２０の名前が登録されていれば（ｓ２００６：ＮＯ）、そのディレクトリサーバ２０の名前を読み出し、表示データ記憶部に格納する（ｓ２００８）。この表示データ記憶部は、ディスプレイ５２に表示させる情報を格納するためのメモリ領域であり、この領域に格納された情報がディスプレイ５２に表示されることとなる。
【００９２】
次に、処理対象となっている情報のうち、ディレクトリサーバ２０の名前と対応づけて登録されているメニュー数の値を読み出してその値を変数Ｎにセット（Ｎ←Ｍｅｎｕ数）する（ｓ２０１０）。
【００９３】
次に、この時点での変数Ｎの値が「０」より大きい（Ｎ＞０）値となっているか否かをチェックし（ｓ２０１２）、「０」より大きい値となっていれば（ｓ２０１２：ＹＥＳ）、処理対象となっている情報からカテゴリ名を読み出して、上述したｓ２００８と同様、その情報を表示データ記憶部に格納する（ｓ２０１４）。
【００９４】
次に、処理対象となっている情報からＳＵＢ−ＭＥＮＵアドレスを読み出して、これらＳＵＢ−ＭＥＮＵアドレスについて以下の処理を行う際の処理対象を、先頭のＳＵＢ−ＭＥＮＵアドレスとする（ｓ２０１６）。
【００９５】
次に、ｓ２０１６で処理対象とされたＳＵＢ−ＭＥＮＵアドレスのアドレス（サービスにおける「Ｌｉｎｋ＿Ｌｏｃａｔｉｏｎ」の値）を読み出し（ｓ２０１８）、そのアドレスが上述したサーバアドレステーブルに登録された他のアドレスと同一でなければ（ｓ２０２０：ＮＯ）、そのアドレスをサーバアドレステーブルに登録した後（ｓ２０２２）、ｓ２０１６で処理対象とされたＳＵＢ−ＭＥＮＵアドレスのサービス名（「Ｌｉｎｋ＿Ｔｉｔｌｅ」の値）を読み出し、上述したｓ２００８と同様、表示データ記憶部に格納したうえで（ｓ２０２４）、次の処理（ｓ２０２６）へ移行する。
【００９６】
一方、ｓ２０２０でサーバアドレステーブルに登録された他のアドレスと同一であれば（ｓ２０２０：ＹＥＳ）、ｓ２０２２，ｓ２０２４を行うことなく、次の処理（ｓ２０２６）へ移行する。
【００９７】
次に、ｓ２０１６で処理対象とされたＳＵＢ−ＭＥＮＵアドレスのサービス名として「ＮＵＬＬ」がセットされている、つまり、その処理対象とすべき情報が登録されていないか否かをチェックし（ｓ２０２６）、登録されていれば（ｓ２０２６：ＮＯ）、ｓ２０１８へ戻り、以降、ｓ２０１８〜ｓ２０２６を繰り返すことにより、全てのＳＵＢ−ＭＥＮＵアドレスに対する処理が行われる。
【００９８】
こうして、全てのＳＵＢ−ＭＥＮＵアドレスに対する処理が行われたら、ｓ２０２６にて対象とすべき情報が登録されていると判定し（ｓ２０２６：ＹＥＳ）、その後、変数Ｎから「１」を減算（Ｎ＝Ｎ−１）して（ｓ２０２８）、ｓ２０１２へ戻り、以降、ｓ２０１２〜ｓ２０２８を繰り返すことにより、サービス定義情報格納メモリに登録されている情報のうちの処理対象とされている全ての情報に対する処理が行われる。
【００９９】
そして、処理対象とされている全ての情報に対する処理が行われたら、ｓ２０１２にて変数Ｎの値が「０」以下の値となっていると判定し（ｓ２１０２：ＮＯ）、その後、サービス定義情報格納メモリに登録されている情報のうち、次に登録されている情報を処理対象とした後（ｓ２０３０）、ｓ２００６へ戻り、以降、ｓ２００６〜ｓ２０３０を繰り返すことにより、サービス定義情報格納メモリに登録されている全ての情報に対する処理が行われる。
【０１００】
この後、全ての情報に対する処理が行われたら、ｓ２００６にてディレクトリサーバ２０の名前として「ＮＵＬＬ」がセットされていると判定し（ｓ２００６：ＹＥＳ）、ｓ２００２にて確保した記憶領域を開放した後（ｓ２０３２）、本サービス選択用画面生成処理を終了する。このように、本サービス選択用画面生成処理を経てディスプレイ５２に表示されるサービス選択用画面は、図１３に示すように、複数の異なるディレクトリサーバ２０における同一カテゴリの同一サービスが削除された状態のリストとなる。この図１３では、図１０におけるディレクトリサーバＢの新聞配信およびコピー応用サービスのすかし入りコピーが、ディレクトリサーバＡと同一アドレスであるために、削除された状態となっている。
（２−３）セッション処理
続いて、図５におけるｓ１３２であるセッション処理の詳細な処理手順を図１４，図１５に基づいて説明する。
【０１０１】
このセッション処理では、まず、利用するサービスを選択し、サービス定義情報２５のＬｉｎｋ＿Ｌｏｃａｔｉｏｎ（アドレスを直接入力した場合には、そのアドレス）に基づきサービスを起動する（ｓ２０２）。つまり、サービスのアドレス宛にサービス起動指令をＨＴＴＰリクエストにより送信することで、ユーザに選択されたサービスを機能サーバ３０側において起動させる。このサービス起動指令を受信した機能サーバ３０からは、セッションＩＤがＨＴＴＰレスポンスにより返信されてくる。
【０１０２】
次に、ｓ２０４によるサービス起動指令に応じて機能サーバ３０から返信されてくるセッションＩＤを受信する（ｓ２０４）。なお、以降の処理で送信するＨＴＴＰリクエストおよびＨＴＴＰレスポンスには、特に明示しない限り、全てセッションＩＤが含まれた状態で送信されることとし、このＨＴＴＰリクエストを受信した機能サーバ３０側では、このセッションＩＤに基づいて通信中のデバイスを管理（周知のセッション管理）するように構成されている。
【０１０３】
次に、複合機１０に対する指令の有無を問い合わせるための「複合機指令問合せ」をＨＴＴＰリクエストにより機能サーバ３０へ送信する（ｓ２０６）。この「複合機指令問合せ」を受信した機能サーバ３０は、複合機１０に対する指令が発生していれば、その内容を示す指令（指令が発生していない場合には「指令なし」を示す指令）をＨＴＴＰレスポンスにより返信してくる。
【０１０４】
次に、ｓ２０６による問い合わせにより返信されてくる指令（複合機指令）を受信したら（ｓ２０８）、その指令がジョブ起動指令であるか否かを判定する（ｓ２１０）。この「ジョブ起動指令」とは、後述のように、ｓ２０２にてサービス起動指令を送信した以降、機能サーバ３０側で発生する指令であり、そのタイミングやサービスの内容に応じて「ＵＩジョブ」，「入力ジョブ（スキャンジョブまたはボイスジョブ）」，「出力ジョブ（プリントジョブまたはスピーカジョブ）」のいずれかの起動を指令する内容となっている。なお、このジョブ起動指令には、起動すべきジョブのジョブＩＤ，ジョブの種類（ＵＩジョブ，入力ジョブ（スキャンジョブまたはボイスジョブ）または出力ジョブ（プリントジョブまたはスピーカジョブ））およびジョブの通信先アドレスが付加されている。
【０１０５】
このｓ２１０で、ジョブ起動指令であると判定された場合（ｓ２１０：ＹＥＳ）、ジョブの起動に必要なリソースを確保した後（ｓ２１２）、以下に示すｓ２５２〜ｓ２６６によりジョブ起動指令で指令されたジョブの起動を行う。
【０１０６】
以下に、このｓ２５２〜ｓ２６６について図１５に基づいて説明する。
ここでは、まず、ジョブ起動指令で指令されたジョブがＵＩジョブであるか否かをチェックし（ｓ２５２）、ＵＩジョブであると判定された場合には（ｓ２５２：ＹＥＳ）、ジョブ起動指令に付加されたジョブＩＤおよび通信先アドレスに基づいてＵＩジョブを起動した後（ｓ２５４）、次の処理（図１４におけるｓ２１４）へ移行する。このＵＩジョブは、このｓ２５４の処理で起動された以降、他の処理と並行して実行されるものであり、これについては、後述する「ＵＩジョブ」（図１６）において詳述する。
【０１０７】
また、ジョブ起動指令で指令されたジョブがＵＩジョブでないと判定された場合（ｓ２５２：ＮＯ）、その指令されたジョブが入力ジョブの一種であるスキャンジョブ（ｓ２５６：ＹＥＳ）またはボイスジョブ（ｓ２５６：ＮＯ，ｓ２５８：ＹＥＳ）であれば、ジョブ起動指令に付加されたジョブＩＤおよび通信先アドレスに基づいて入力ジョブを起動した後（ｓ２６０）、次の処理（図１４におけるｓ２１４）へ移行する。この入力ジョブは、このｓ２６０の処理で起動された以降、他の処理と並行して実行されるものであり、これについては、後述する「入力ジョブ」（図１９）において詳述する。
【０１０８】
また、ジョブ起動指令で指令されたジョブが上述したいずれのジョブでないと判定された場合（ｓ２５８：ＮＯ）、その指令されたジョブが出力ジョブの一種であるプリントジョブ（ｓ２６２：ＹＥＳ）またはスピーカジョブ（ｓ２６２：ＮＯ，ｓ２６４：ＹＥＳ）であれば、ジョブ起動指令に付加されたジョブＩＤおよび通信先アドレスに基づいて出力ジョブを起動した後（ｓ２６６）、次の処理（図１４におけるｓ２１４）へ移行する。この出力ジョブは、このｓ２６６の処理で起動された以降、他の処理と並行して実行されるものであり、これについては、後述する「出力ジョブ」（図２０）において詳述する。
【０１０９】
なお、ジョブ起動指令で指令されたジョブが上述したいずれのジョブでもないと判定された場合（ｓ２６４：ＮＯ）、ジョブの起動を行うことなく、次の処理（図１４におけるｓ２１４）へ移行する。
【０１１０】
こうして、ジョブの起動を行った後、図１４へ戻り、所定インターバル待機した後（ｓ２１４）、ｓ２０６へ戻る。
また、上述したｓ２１０で、ジョブ起動指令でないと判定された場合（ｓ２１０：ＮＯ）、ｓ２０８で受信した指令がジョブ終了指令であるか否かをチェックする（ｓ２１６）。この「ジョブ終了指令」とは、後述のように、図１５における各処理でジョブを起動した以降、このジョブが終了した際に機能サーバ３０側で発生する指令である。なお、このジョブ終了指令には、その終了したジョブのジョブＩＤが付加されている。
【０１１１】
このｓ２１６で、ジョブ終了指令であると判定された場合（ｓ２１６：ＹＥＳ）、このジョブ終了指令に付加されたジョブＩＤのジョブを停止させる（該当するジョブに対して終了指示を渡す）と共に、このジョブを起動する前にＳ２１２にて確保したリソースを解放した後（ｓ２１８）、ｓ２１４へ移行する。
【０１１２】
また、上述したｓ２１６で、ジョブ終了指令でないと判定された場合（ｓ２１６：ＮＯ）、「指令なし」を示すものであるか否かをチェックし（ｓ２２０）、「指令なし」を示すものであれば（ｓ２２０：ＹＥＳ）、ｓ２１４へ移行する一方、「指令なし」を示すものでなければ（ｓ２２０：ＮＯ）、セッション終了指令であるか否かを判定する（ｓ２２２）。この「セッション終了指令」とは、この複合機１０に対するサービスの提供が終了した際に機能サーバ３０側で発生する処理である。
【０１１３】
そして、このｓ２２２で、セッション終了指令であると判定された場合（ｓ２２２：ＹＥＳ）、本セッション処理を終了する一方、ｓ２０８で受信した指令が上述したいずれの指令でもない場合（ｓ２２２：ＮＯ）、エラーを報知するための処理（指令エラーの処理）を行った後（ｓ２２４）、本セッション処理を終了する。このｓ２２４では、エラーである旨のメッセージをディスプレイ５２に表示させることによりエラーを報知する。
（２−４）ＵＩジョブ
続いて、図１５におけるｓ２５４にて起動されるＵＩジョブの処理手順を図１６に基づいて説明する。
【０１１４】
このＵＩジョブが開始されると、まず、複合機１０に対する指令の問合せである複合機ジョブ指令問合せを送信用データ格納領域にセットする（ｓ３００）。ここでは、複合機指令問合せを、制御部１１の備えるＲＡＭに確保された送信用データの格納領域に書き込むことにより、複合機ジョブ指令問合せを送信用データ格納領域にセットする。こうしてセットされた情報は、後述する処理（ｓ３１２）でセッションＩＤ及びジョブＩＤとともに機能サーバ３０へ送信されることとなる。なお、こうして「複合機ジョブ指令問合せ」が送信されると、この送信用データを受信した機能サーバ３０は、後述のように、本ＵＩジョブに対する指令が発生していれば、その内容を示す複合機指令（指令が発生していない場合には「指令なし」を示す複合機指令）をＨＴＴＰレスポンスにより返信してくる。
【０１１５】
次に、上述したセッション処理からの終了指示があったか否かを判定する（ｓ３０２）。この終了指示は、上述したｓ２１８にてセッション処理から渡される指令である。
このｓ３０２で、セッション処理からの終了指示があったと判定された場合には（ｓ３０２：ＹＥＳ）、セッション処理に対してセッション終了指令を渡すことにより、ＵＩジョブの終了を通知した後（ｓ３０４）、本ＵＩジョブを終了する。なお、このセッション終了指令は、上述したｓ２１８における処理の中で受信される。ｓ２１８の内部では、この指令を受信することによりジョブが完全に停止したと判断し、以降の手順を実施するのである。
【０１１６】
一方、セッション処理からの終了指示がないと判定された場合には（ｓ３０２：ＮＯ）、操作部１２がビジー状態であるか否かを判定する（ｓ３０６）。ここでは、各ジョブの起動中に立つ（「１」がセットされる）ように設定されたビジーフラグＦｕに基づき、ビジーフラグＦｕが立っていればビジー状態であると判定し、ビジーフラグＦｕが下りて（「０」がセットされて）いればビジー状態でないと判定する。
【０１１７】
このｓ３０６で、ビジー状態であると判定された場合には（ｓ３０６：ＹＥＳ）、操作部１２のビジー状態が解除されるまで，つまりビジーフラグＦｕが下りるまで待機した後（ｓ３０８）、ｓ３０６へ戻る一方、ビジー状態でないと判定した場合には（ｓ３０６：ＮＯ）、ビジーフラグＦｕを立てて（ｓ３１０）、本ＵＩジョブにより操作部１２がビジー状態になっているものとする。
【０１１８】
次に、送信用データ格納領域に格納されている情報を、セッションＩＤおよびジョブＩＤと共にＨＴＴＰリクエストとして機能サーバ３０へ送信する（ｓ３１２）。
次に、ｓ３１２による問い合わせにより返信されてくる複合機指令を受信したら（ｓ３１４）、その指令がパラメータ要求であるか否かを判定する（ｓ３１６）。この「パラメータ要求」とは、後述のように、複合機ジョブ指令問合せを受信した機能サーバ３０側で発生する指令であり、このパラメータ要求に付加されたサービスＩ／Ｆ情報３６（図１７参照；翻訳コピーの場合）に基づき、パラメータの指定を複合機１０に対して要求するための指令である。
【０１１９】
このｓ３１６で、パラメータ要求であると判定された場合（ｓ３１６：ＹＥＳ）、このパラメータ要求に付加されたサービスＩ／Ｆ情報３６に基づき、パラメータ入力用画面をディスプレイ５２に表示させ、パラメータの設定をするための入力操作をユーザに促す（ｓ３１８）。
【０１２０】
ここで、サービスＩ／Ｆ情報３６のうち、翻訳コピーサービスに対応するサービスＩ／Ｆ情報３６を例示してパラメータ入力画面が表示される様子について説明する。なお、翻訳コピーサービスとは、複合機１０における読取部１３で読み取られた画像データに基づき、機能サーバ３０が、この画像データで表される画像に対してＯＣＲ（Optical Character Recognition ）処理でテキストを認識し、そのテキストを所定の言語に翻訳した内容の画像を表す画像データを生成して提供することにより、この画像データで表される画像を複合機１０における記録部１４に印刷させるサービスである。
【０１２１】
まず、図１７に示すようなサービスＩ／Ｆ情報３６（ＸＭＬの記述）に従って、図１８（ａ）に示すように、表示用タイトル（Ｔｉｔｌｅ）として「翻訳コピー」の文字が表示領域上部に配置され、その下に入力項目（Ｄｉｓｐ＿Ｎａｍｅ）として「言語選択」の文字が配置され、さらにその下に入力項目「言語選択」について選択可能なパラメータを表す項目（Ｄｉｓｐ＿Ｓｅｌｅｃｔ）である「英語→日本語」及び「日本語→英語」の文字が配置されたパラメータ入力用画面を表示させる。ここで、「翻訳コピー」に関する入力項目（Ｄｉｓｐ＿Ｎａｍｅ）としては、上記表示されている「言語選択」に加え、「スキャナ設定」，「印刷設定」及び「コメント」があるが、この時点では、「言語選択」についての入力項目のみが表示される。これは、単にディスプレイ５２の大きさの制限によるものであり、この状態から左右の方向キー４８，４９を押下（後述の切替操作）することで、表示領域下部に表示される入力項目を「スキャナ設定」，「印刷設定」及び「コメント」を含む４種類の中から切り替えることができる。
【０１２２】
これら入力項目について選択可能なパラメータについて説明すると、「スキャナ設定」について選択可能なパラメータを表す項目（Ｄｉｓｐ＿Ｓｅｌｅｃｔ）としては、「普通の文字」及び「細かい文字」の文字が表示されることとなる（図１８（ｂ）参照）。ここでいう「普通の文字」とは、読取部１３のパラメータである解像度（読取解像度）を３００×３００ｄｐｉに設定することを意味し、「細かい文字」とは、解像度を６００×６００ｄｐｉに設定することを意味する。
【０１２３】
また、「印刷設定」について選択可能なパラメータを表す項目（Ｄｉｓｐ＿Ｓｅｌｅｃｔ）としては、「印刷速度優先」，「普通」及び「高精細」の文字が表示されることとなる。なお、ディスプレイ５２の大きさの制限により、「高精細」については、初めは表示されていないが（図１８（ｃ）参照）、画面をスクロールさせることで表示される（図１８（ｄ）参照）。ここでいう「印刷速度優先」とは、記録部１４のパラメータである解像度（印刷解像度）を２００×２００ｄｐｉに設定することを意味し、「普通」とは、解像度を３００×３００ｄｐｉに設定することを意味し、「高精細」とは、解像度を６００×６００ｄｐｉに設定することを意味する。
【０１２４】
そして、「コメント」については、「コメント」の文字の下に、コメントの入力欄が表示され、設定されている文字列（Ｄｅｆａｕｌｔ＿Ｓｔｒｉｎｇ）が入力された状態となる（図１８（ｅ）参照）。こうして、コメントとして入力欄に入力された文字列は、例えば、印刷画像のヘッダやフッタに記載されるという形で利用されるものである。
【０１２５】
こうして、ディスプレイ５２にパラメータ入力画面が表示された以降、ユーザは、ディスプレイ５２における表示領域の制限から表示しきれていない別の項目に表示内容を切り替える切替操作（左右の方向キー４８，４９の押下により第ｎ−１，第ｎ＋１番目の項目に切り替える），パラメータを指定する指定操作（上下の方向キー４６，４７の押下により指定されたパラメータ（図１８における波線の四角参照）を指定する），ディスプレイ５２に表示しきれていない他のパラメータを表示させるためのスクロール操作（指定操作を続けることで表示されていないパラメータを表示させると共に、そのパラメータを指定する），パラメータの設定を完了するための完了操作（ＯＫキー５０の押下）などを行うことにより、各項目それぞれのパラメータを指定することができる。
【０１２６】
このｓ３１８にてパラメータ入力画面を表示した以降、ユーザによりパラメータの設定を完了するための完了操作が行われたら、全ての項目のパラメータを送信用データ格納領域にセットした後（ｓ３２０）、ｓ３１０にて立てたビジーフラグＦｕを下げて（ｓ３２２）、ｓ３０２へ戻る。これらのパラメータは、その後、セッションからの終了指示がなく（ｓ３０２：ＮＯ）、操作パネルがビジーではない（ｓ３０６：ＮＯ）状態になると、ｓ３１２の処理にて機能サーバ３０へ送信される。なお、本実施形態においては、後述する処理で複合機１０の有する入出力デバイスに応じた内容のサービスＩ／Ｆ情報３６がパラメータ要求と共に送信されてくることになるが、このとき、複合機１０の有する入出力デバイスだけで機能サーバ３０によるサービスの提供を受けられない場合には、図１８（ｆ）に示すようなエラーメッセージをディスプレイ５２に表示させた後、ｓ３２０を行うことなく、ｓ３２２へ戻る。
【０１２７】
また、上述したｓ３１２による問い合わせにより返信されてくる複合機指令が、パラメータ要求でないと判定された場合には（ｓ３１６：ＮＯ）、ｓ３１４にて受信した複合機指令がサービス状態情報であるか否かを判定する（ｓ３２４）。この「サービス状態情報」とは、後述のように、複合機ジョブ指令問合せ，または，以降の処理（ｓ３３０）で送信される複合機状態情報を受信した機能サーバ３０側で発生する指令であり、問題なくサービスに関わる処理が実行されていること，問題がありサービスを停止することなどを報知するための指令である。
【０１２８】
このｓ３２４で、サービス状態情報であると判定されたら（ｓ３２４：ＹＥＳ）、このサービス状態情報に基づく表示をディスプレイ５２に行わせ（ｓ３２６）、サービスの稼働状態の情報を要求するサービス状態情報要求を送信用データ格納領域にセットした後（ｓ３２７）、Ｓ３２２へ移行する。
【０１２９】
また、ｓ３２４で、サービス状態情報でないと判定されたら（ｓ３２４：ＮＯ）、ｓ３１４にて受信した複合機指令が状態情報要求であるか否かをチェックする（ｓ３２８）。この「状態情報要求」とは、後述のように、複合機１０の状態に関する情報の送信を要求するための指令である。
【０１３０】
このｓ３２８で、状態情報要求であると判定されたら（ｓ３２８：ＹＥＳ）、複合機１０の状態に関する情報である複合機状態情報をＨＴＴＰリクエストとして機能サーバ３０へ送信した後（ｓ３３０）、ｓ３２２へ移行する。ここでは、用紙なし，カバーオープンなどを示す情報を複合機状態情報として機能サーバ３０へ送信する。
【０１３１】
また、ｓ３２８で、状態情報要求でないと判定されたら（ｓ３２８：ＮＯ）、Ｓ３１４にて受信した複合機指令がサーバ受取状況であるか否かをチェックする（ｓ３３２）。この「サーバ受取状況」とは、後述のように、機能サーバ３０が複合機１０からの情報を正常に受け取ることができたか否かを通知するために送信する指令である。
【０１３２】
このｓ３３２で、サーバ受取状況であると判定されたら（ｓ３３２：ＹＥＳ）、このサーバ受取状況の内容が異常受取（ＮＧ）を表すものである場合（ｓ３３４：ＹＥＳ）、このサーバ受取状況を送信する契機となった情報を送信用データ格納領域に再度セットした後（ｓ３３６）、ｓ３２２へ移行する一方、異常受取（ＮＧ）を表すものでない場合（ｓ３３４：ＮＯ）、サービスの稼動状態の情報を要求する指令であるサービス状態情報要求を送信用データ格納領域にセットした後（ｓ３３７）、ｓ３２２へ移行する。
【０１３３】
そして、ｓ３３２で、サーバ受取状況でないと判定されたら（ｓ３３２：ＮＯ）、Ｓ３１４にて受信した複合機指令が「指令なし」を示すものか否かをチェックし（ｓ３３８）、「指令なし」を示すものであれば（ｓ３３８：ＹＥＳ）、ｓ３００と同様、複合機ジョブ指令問合せを送信用データ格納領域にセットした後（ｓ３３９）、ｓ３２２へ移行する。一方、「指令なし」を示すものでなければ（ｓ３３８：ＮＯ）、エラー処理（指定エラーの処理）を行い（ｓ３４０）、ｓ３００と同様、複合機ジョブ指令問合せを送信用データ格納領域にセットした後（ｓ３４５）、ｓ３２２へ移行する。
（２−５）入力ジョブ
続いて、図１５におけるｓ２６０にて起動される入力ジョブの処理手順を図１９に基づいて説明する。この入力ジョブは、上述したセッション処理およびＵＩジョブと並列動作する処理である。
【０１３４】
この入力ジョブが開始されると、まず、入力デバイスがビジー状態であるか否かを判定する（ｓ４０２）。ここでは、入力デバイスがビジー状態である場合に立つ（「１」がセットされる）ように設定されたビジーフラグＦｉに基づき、ビジーフラグＦｉが立っていればビジー状態であると判定し、ビジーフラグＦｉが下りて（「０」がセットされて）いればビジー状態でないと判定する。なお、ここでいう「入力デバイス」とは、読取部１３で生成された画像データに関するサービスの提供を受ける場合であれば読取部１３であり、音入力部１７で生成された音データに関するサービスを受ける場合であれば音入力部１７のことである。
【０１３５】
このｓ４０２で、入力デバイスがビジー状態であると判定された場合には（ｓ４０２：ＹＥＳ）、入力デバイスのビジー状態が解除されるまで待機した後（ｓ４０４）、ｓ４０２の処理へ戻る一方、入力デバイスがビジー状態ではないと判定された場合には（ｓ４０２：ＮＯ）、ビジーフラグＦｉを立てる（ｓ４０６）。
【０１３６】
次に、複合機１０の状態に関する情報である複合機状態情報を、セッション処理におけるｓ２６０にて渡されたジョブＩＤと共に、ＨＴＴＰリクエストにより機能サーバ３０へ送信する（ｓ４０８）。この複合機状態情報を受信した機能サーバ３０は、後述のように、図１６におけるｓ３２０にて送信用データ格納領域にセットしてから同図ｓ３１２にて機能サーバ３０に送信しておいたパラメータに基づく情報である複合機パラメータをＨＴＴＰレスポンスにより返信してくる。
【０１３７】
次に、ｓ４０８にて送信した複合機状態情報に対して複合機パラメータが返信されてきたら（ｓ４１０）、セッション処理から終了指示が渡されたか否か（セッションからの終了指示があるか）を判定する（ｓ４１２）。この終了指示は、図１４におけるｓ２１８により終了するジョブが入力ジョブである場合において、セッション処理から本入力ジョブに渡される指示である。
【０１３８】
このｓ４１２で、セッション処理から終了指示が渡されていないと判定された場合には（ｓ４１２：ＮＯ）、ｓ４１０にて返信されてきた複合機パラメータを正常に受信できていなければ（ｓ４１４：ＮＯ）、機能サーバ３０からの情報を正常に受け取ることができない旨（異常受取（ＮＧ）である旨）を通知するための複合機受取状況を、セッション処理におけるｓ２６０にて渡されたジョブＩＤと共に、ＨＴＴＰリクエストにより機能サーバ３０へ送信する（ｓ４１６）。この複合機受取状況を受信した機能サーバ３０は、後述のように、再度、複合機パラメータをＨＴＴＰレスポンスとして返信してくるため、このｓ４１６の後、ｓ４１０へ戻る。
【０１３９】
一方、ｓ４１０にて複合機パラメータを正常に受信できていれば（ｓ４１４：ＹＥＳ）、機能サーバ３０からの情報を正常に受け取ることができた旨（正常受取（ＯＫ）である旨）を通知するための複合機受取状況を、セッション処理におけるｓ２６０にて渡されたジョブＩＤと共に、ＨＴＴＰリクエストにより機能サーバ３０へ送信する（ｓ４１８）。この複合機受取状況を受信した機能サーバ３０は、後述のように、機能サーバ３０側で処理すべきデータの送信を要求するための入力データ要求を返信してくる。
【０１４０】
次に、複合機受取状況を受信した機能サーバ３０から入力データ要求が返信されてきたら（ｓ４２０）、ｓ４１２と同様に、セッション処理から終了指示が渡されたか否かを判定する（ｓ４２２）。
【０１４１】
このｓ４２２で、セッション処理から終了指示が渡されていないと判定された場合には（ｓ４２２：ＮＯ）、ｓ４２０にて返信されてきた入力データ要求を正常に受信できていなければ（ｓ４２４：ＮＯ）、ｓ４１６と同様に、異常受取（ＮＧ）である旨を通知するための複合機受取状況を機能サーバ３０へ送信する（ｓ４２６）。この複合機受取状況を受信した機能サーバ３０は、後述のように、再度、入力データ要求を返信してくるため、このｓ４２６の後、ｓ４２０へ戻る。
【０１４２】
一方、ｓ４２０にて返信されてきた入力データ要求を正常に受信できていれば（ｓ４２４：ＹＥＳ）、機能サーバ３０側で処理させるべき入力データを、セッション処理におけるｓ２６０にて渡されたジョブＩＤと共に、ＨＴＴＰリクエストにより機能サーバ３０へ送信する（ｓ４２８）。ここでは、まず、入力デバイスの設定値をｓ４１０にて受信した複合機パラメータで示されるパラメータに変更した後、機能サーバ３０側で処理させるべきデータの入力を促すためのデータ入力画面をディスプレイ５２に表示させることにより、データを複合機１０に入力するための操作をユーザに促す。その後、ユーザによりデータを入力するための操作が行われることにより取得したデータ（入力データ）を、セッション処理におけるｓ２６０にて渡されたジョブＩＤと共に、ＨＴＴＰリクエストにより機能サーバ３０へ送信する。具体的な例としては、例えば、「原稿をセットしてＯＫキーを押してください」，「受話器をとって音声を入力してください」などのメッセージをディスプレイ５２に表示し、この後、読取部１３または音入力部１７により取得されるデータを機能サーバ３０へ順次送信する。この入力データを受信した機能サーバ３０は、この入力データに基づくデータ処理が正常に終了したか否かを通知するためのサービス状態情報を返信してくる、といった構成が考えられる。
【０１４３】
なお、この処理におけるデータの取得方法については、図示されないメモリカードスロットにセットされたメモリーカードから読み出したり、記憶部１６における特定の記憶領域から読み出すといった方法であってもよく、その場合には、データの取得先となる記憶領域を指定すべきメッセージをディスプレイ５２に表示させればよい。
【０１４４】
こうして、入力データを機能サーバ３０へ送信した後、ｓ４２８の処理で変更された入力デバイスの設定値を元に戻し（ｓ４３０）、その後、機能サーバ３０から返信されるサービス状態情報を受信する（ｓ４３２）。
【０１４５】
そして、ｓ４３２にてサービス情報を受信した後、または、ｓ４１２，ｓ４２２でセッション処理から終了指示が渡されていると判定された場合には（ｓ４１２：ＹＥＳ，ｓ４２２：ＹＥＳ）、ｓ４０６にて立てたビジーフラグＦｉを下ろした後（ｓ４３４）、セッション処理におけるｓ２６０にて渡されたジョブＩＤと共にセッション処理へ入力ジョブの終了を通知して（ｓ４３６）、本入力ジョブを終了する。この入力ジョブの終了の通知は、上述したｓ２１８における処理の中で受信される。ｓ２１８の内部では、この指令を受信することでジョブが完全に停止したと判断し、以降の手順を実施するのである。
（２−６）出力ジョブ
最後に、図１５におけるｓ２６６にて起動される出力ジョブの処理手順を図２０に基づいて説明する。この入力ジョブは、上述したセッション処理およびＵＩジョブと並列動作する処理である。
【０１４６】
この出力ジョブが開始されると、まず、出力デバイスがビジー状態であるか否かを判定する（ｓ５０２）。ここでは、出力デバイスがビジー状態である場合に立つ（「１」がセットされる）ように設定されたビジーフラグＦｏに基づき、ビジーフラグＦｏが立っていればビジー状態であると判定し、ビジーフラグＦｏが下りて（「０」がセットされて）いればビジー状態でないと判定する。なお、ここでいう「出力デバイス」とは、記録部１４で印刷する画像データに関するサービスの提供を受ける場合であれば記録部１４であり、音出力部１８から出力する音データに関するサービスの提供を受ける場合であれば音出力部１８のことである。
【０１４７】
このｓ５０２で、出力デバイスがビジー状態であると判定された場合には（ｓ５０２：ＹＥＳ）、出力デバイスのビジー状態が解除されるまで待機した後（ｓ５０４）、ｓ５０２の処理へ戻る一方、出力デバイスがビジー状態ではないと判定された場合には（ｓ５０２：ＮＯ）、ビジーフラグＦｏを立てる（ｓ５０６）。
【０１４８】
次に、複合機１０の状態に関する情報である複合機状態情報を、セッション処理におけるｓ２６６にて渡されたジョブＩＤと共に、ＨＴＴＰリクエストにより機能サーバ３０へ送信する（ｓ５０８）。この複合機状態情報を受信した機能サーバ３０は、後述のように、図１６におけるｓ３２０にて送信用データ格納領域にセットしてから同図ｓ３１２にて機能サーバ３０に送信しておいたパラメータに基づく情報である複合機パラメータをＨＴＴＰレスポンスにより返信してくる。
【０１４９】
次に、ｓ５０８にて送信した複合機状態情報に対して複合機パラメータが返信されてきたら（ｓ５１０）、セッション処理から終了指示が渡されたか否か（セッションからの終了指示があるか）を判定する（ｓ５１２）。この終了指示は、図１４におけるｓ２１８により終了するジョブが出力ジョブである場合において、セッション処理から本出力ジョブに渡される指示である。
【０１５０】
このｓ５１２で、セッション処理から終了指示が渡されていないと判定された場合には（ｓ５１２：ＮＯ）、ｓ５１０にて返信されてきた複合機パラメータを正常に受信できていなければ（ｓ５１４：ＮＯ）、機能サーバ３０からの情報を正常に受け取ることができない旨（異常受取（ＮＧ）である旨）を通知するための複合機受取状況を、セッション処理におけるｓ２６６にて渡されたジョブＩＤと共に、ＨＴＴＰリクエストにより機能サーバ３０へ送信する（ｓ５１６）。この複合機受取状況を受信した機能サーバ３０は、後述のように、再度、複合機パラメータを返信してくるため、このｓ５１６の後、ｓ５１０へ戻る。
【０１５１】
一方、ｓ５１０にて複合機パラメータを正常に受信できていれば（ｓ５１４：ＹＥＳ）、機能サーバ３０からの情報を正常に受け取ることができた旨（正常受取（ＯＫ）である旨）を通知するための複合機受取状況を、セッション処理におけるｓ２６６にて渡されたジョブＩＤと共に、ＨＴＴＰリクエストにより機能サーバ３０へ送信する（ｓ５１８）。この複合機受取状況を受信した機能サーバ３０は、後述のように、図１９におけるｓ４２８にて送信した入力データに基づいて処理してなるデータ（出力データ）を返信してくる。
【０１５２】
次に、複合機受取状況を受信した機能サーバ３０から出力データが返信されてきたら（ｓ５２０）、ｓ５１２と同様に、セッション処理から終了指示が渡されたか否かを判定する（ｓ５２２）。
【０１５３】
このｓ５２２で、セッション処理から終了指示が渡されていないと判定された場合には（ｓ５２２：ＮＯ）、ｓ５２０にて返信されてきた出力データを正常に受信できていなければ（ｓ５２４：ＮＯ）、ｓ５１６と同様に、異常受取（ＮＧ）である旨を通知するための複合機受取状況を機能サーバ３０へ送信する（ｓ５２６）。この複合機受取状況を受信した機能サーバ３０は、後述のように、再度、出力データを返信してくるため、このｓ５２６の後、ｓ５２０へ戻る。
【０１５４】
一方、ｓ５２０にて返信されてきた出力データを正常に受信できていれば（ｓ５２４：ＹＥＳ）、この出力データを出力デバイスにより出力する（ｓ５２８）。ここでは、まず、出力デバイスの設定値をｓ５１０にて受信した複合機パラメータで示されるパラメータに変更した後、この出力デバイスにより出力データを出力（例えば、画像データが表す画像の印刷や、音データが表す音声の出力）する。
【０１５５】
こうして、出力データの出力デバイスによる出力を終えた後、ｓ５２８で変更された出力デバイスの設定値を元に戻し（ｓ５３０）、複合機１０の状態に関する情報である複合機状態情報を、セッション処理におけるｓ２６６にて渡されたジョブＩＤと共に、ＨＴＴＰリクエストにより機能サーバ３０へ送信する（ｓ５３２）。この複合機状態情報を受信した機能サーバ３０は、後述のように、サービス状態情報を返信してくる。
【０１５６】
そして、機能サーバ３０から返信されるサービス状態情報を受信した後（ｓ５３４）、または、ｓ５１２，ｓ５２２でセッション処理から終了指示が渡されていると判定された場合には（ｓ５１２：ＹＥＳ，ｓ５２２：ＹＥＳ）、ｓ４０６にて立てたビジーフラグＦｏを下ろした後（ｓ５３６）、セッション処理におけるｓ２６６にて渡されたジョブＩＤと共にセッション処理へ入力ジョブの終了を通知して（ｓ５３８）、本入力ジョブを終了する。この入力ジョブの終了の通知は、上述したｓ２１８における処理の中で受信される。ｓ２１８の内部では、この指令を受信することでジョブが完全に停止したと判断し、以降の手順を実行するのである。
（３）機能サーバ３０による処理
以下に、機能サーバ３０の制御部３１により実行される各種処理について説明する。
（３−１）機能サーバ処理
はじめに、ＨＴＴＰリクエストが受信される毎に行われる機能サーバ処理の処理手順を図２１，図２２に基づいて説明する。
【０１５７】
この機能サーバ処理が起動されると、まず、受信したＨＴＴＰリクエストがサービス起動指令であるか否かをチェックする（ｓ７０２）。この「サービス起動指令」は、図１４におけるｓ２０２にて複合機１０により送信されるものである。
【０１５８】
このｓ７０２で、サービス起動指令であると判定された場合には（ｓ７０２：ＹＥＳ）、このサービス起動指令が、何らかの異常により起動すべきサービスが特定できない（指定サービスなし）状態となっていれば（ｓ７０４：ＹＥＳ）、エラー通知を行うための情報（エラー通知情報）を生成した後（ｓ７０６）、次の処理（ｓ７３４）へ移行する。一方、起動すべきサービスが特定できない状態となっていなければ（ｓ７０４：ＮＯ）、セッションＩＤを生成し、このセッションＩＤを示す送信データを生成すると共に、サービスの実行のためのリソースを確保して該当するプロセスを起動した後（ｓ７０８）、次の処理（ｓ７３４）へ移行する。ここで起動するプロセスとは、後述するセッション処理（図２３）のことである。
【０１５９】
また、ｓ７０２で、サービス起動指令でないと判定された場合には（ｓ７０２：ＮＯ）、ＨＴＴＰリクエストがサービス終了指令であるか否かをチェックする（ｓ７１０）。この「サービス終了指令」は、複合機１０のキャンセルキー５１押下などの操作によりサービスの実行の停止が指示されることにより、複合機１０側から送信されるものである。
【０１６０】
このｓ７１０で、サービス終了指令であると判定された場合には（ｓ７１０：ＹＥＳ）、セッションＩＤおよびｓ７０８にて確保されたリソースを解放した後（ｓ７１２）、次の処理（ｓ７１６）へ移行する。一方、サービス終了指令ではないと判定された場合には（ｓ７１０：ＮＯ）、サービス（セッション又はジョブ）に関する情報が含まれているか否か，具体的には複合機１０がセッション処理またはジョブ（ＵＩジョブ，入力ジョブ，出力ジョブ）において送信してきたＨＴＴＰリクエストであるか否かをチェックする（ｓ７１４）。
【０１６１】
このｓ７１４で、サービスに関する情報が含まれていると判定された場合には（ｓ７１４：ＹＥＳ）、そのＨＴＴＰリクエストを送信してきたプロセス（セッション処理，ＵＩジョブ，入力ジョブ，出力ジョブのいずれか）を特定する（ｓ７１６）。
【０１６２】
このｓ７１６によりプロセスを特定できなければ（ｓ７１８：ＹＥＳ）、エラーを通知するための情報（エラー通知情報）を生成した後（ｓ７２０）、次の処理（ｓ７３４）へ移行する。
【０１６３】
一方、ｓ７１６によりプロセスを特定できれば（ｓ７１８：ＮＯ）、その特定したプロセスにＨＴＴＰリクエストにて送信されてきた情報を渡す（ｓ７２２）。
こうして、ｓ７２２を終えた後、または、ｓ７１４にてサービスに関する情報が含まれていないと判定された場合（ｓ７１４：ＮＯ）、セッションＩＤまたはジョブＩＤに対応する情報の記憶領域を特定する（ｓ７２４）。
【０１６４】
このｓ７２４により記憶領域を特定できなければ（ｓ７２６：ＹＥＳ）、ｓ７２０へ移行してエラー通知情報を生成して次の処理（ｓ７３４）へ移行する。一方、記憶領域を特定できれば（ｓ７２６：ＮＯ）、この記憶領域に複合機１０へ返信すべき情報が存在しているか否かをチェックする（ｓ７２８）。
【０１６５】
そして、このｓ７２８で、返信すべき情報が存在していないと判定されたら（ｓ７２８：ＮＯ）、「指令なし」の情報を生成した後（ｓ７３０）、次の処理（ｓ７３４）へ移行する一方、送信すべき情報が存在していると判定されたら（ｓ７２８：ＹＥＳ）、その返信情報に基づいて複合機制御指令を生成した後（ｓ７３２）、次の処理（ｓ７３４）へ移行する。
【０１６６】
こうして、ｓ７０８，ｓ７１２，ｓ７２０．ｓ７３０，ｓ７３２にて生成した情報をＨＴＴＰレスポンスとして複合機１０へ返信する（ｓ７３４）。ここで返信されるＨＴＴＰレスポンスのうち、ｓ７０８にて生成された送信データは、図１４におけるｓ２０４にて複合機１０が受信するものである。また、ｓ７１２にて生成されたサービス終了を表す送信データは、図１４におけるｓ２０８にて複合機１０が受信し、ｓ２２２にて「ＹＥＳ」と判定されるものである。また、ｓ７２０にて生成されたエラー通知情報は、図１４におけるｓ２０８にて複合機１０が受信し、ｓ２２２にて「ＮＯ」と判定され、ｓ２２４が実施されるものである。また、ｓ７３０にて生成された「指令なし」の情報は、図１４におけるｓ２０８にて複合機１０が受信し、ｓ２２０にて「ＹＥＳ」と判定されるものである。そして、ｓ７３２にて生成された複合機制御指令は、後述する各ジョブにおいて異なる内容のものとなり、それぞれ複合機１０側で対応するジョブにおいて受信されるものである。
【０１６７】
そして、サービス制御情報処理が実施されたら（ｓ７３６：ＹＥＳ）、セッションＩＤ又はジョブＩＤに対応するメモリアドレスに「送信済み」をセットした後（ｓ７３８）、本機能サーバ処理を終了する一方、サービス制御情報処理が実施されていなければ（ｓ７３６：ＮＯ）、メモリアドレスのセットを行うことなく、本機能サーバ処理を終了する。このサービス制御情報処理とは、ｓ７１４〜ｓ７３２に記載の複合機１０と機能サーバ３０のセッション，ジョブとの情報授受の処理を指す。
（３−２）セッション処理
続いて、機能サーバ処理と並行して実行されるセッション処理の処理手順を図２３，図２４に基づいて説明する。なお、本実施形態においては、翻訳コピーのサービスについてのセッション処理を例に説明する。
【０１６８】
このセッション処理が開始されると、まず、初期化処理を行う（ｓ８０２）。
次に、サービス側ＵＩジョブを起動する（ｓ８０４）。このＵＩジョブ（ＵＩジョブ１またはＵＩジョブ２）は、本セッション処理と並行して実行される処理であって、詳細な処理手順は後述する。
【０１６９】
次に、ＵＩジョブの起動指令を複合機指令として出力する（ｓ８０６）。ここでは、ジョブＩＤおよび通信先アドレスと共にＵＩジョブの起動指令を、返信情報を格納する記憶領域に書き込む処理を行う。これに基づいて、図２１におけるｓ７３２にて複合機制御指令が生成され、図２２におけるｓ７３４にて複合機１０側に起動指令として送信されることとなる。この起動指令は、図１４におけるｓ２０８にて複合機１０側で受信され、これに基づいて、複合機１０側においてＵＩジョブが起動されることとなる（同図ｓ２５４）。
【０１７０】
次に、複合機１０側からのパラメータの入力が完了したか否かをチェックする（ｓ８０８）。上述したｓ８０４にて起動したＵＩジョブにおいては、後述のように、複合機１０側からパラメータを取得し、その旨を本セッション処理に対して通知してくるように構成されている。そのため、このｓ８０８では、このＵＩジョブからのパラメータ取得の通知がなされた場合に、複合機１０側からのパラメータの入力が完了したと判定する。
【０１７１】
このｓ８０８で、パラメータの入力が完了していないと判定された場合には（ｓ８０８：ＮＯ）、ＵＩジョブが停止したか否かをチェックする（ｓ８１０）。上述したｓ８０４にて起動したＵＩジョブにおいては、後述のように、複合機１０側からのパラメータの取得が正常に行われなかった場合に、ＵＩジョブ自体を停止（終了）すると共に、その旨を本セッション処理に対して通知してくるように構成されている。そのため、このｓ８１０では、このＵＩジョブからの停止の通知がなされた場合に、ＵＩジョブが停止したと判定する。
【０１７２】
このｓ８１０で、ＵＩジョブが停止していないと判定された場合（ｓ８１０：ＮＯ）、ｓ８０８へ戻る一方、ＵＩジョブが停止していると判定された場合（ｓ８１０：ＹＥＳ）、後述するｓ８４８へ移行する。
【０１７３】
また、ｓ８０８で、パラメータの入力が完了していると判定された場合には（ｓ８０８：ＹＥＳ）、サービス側入力ジョブの一種であるスキャンジョブを起動する（ｓ８１２）。このスキャンジョブは、本セッション処理と並行して実行される処理であって、詳細な処理手順は後述する。
【０１７４】
次に、スキャン（入力）ジョブの起動指令を複合機指令として出力する（ｓ８１４）。ここでは、ジョブＩＤおよび通信先アドレスと共にスキャンジョブの起動指令を、返信情報を格納する記憶領域に書き込む処理を行う。これに基づいて、図２３におけるｓ７３２にて複合機制御指令が生成され、図２２におけるｓ７３４にて複合機１０側に起動指令として送信されることとなる。この起動指令は、図１４におけるｓ２０８にて複合機１０側で受信され、これに基づいて、複合機１０側において入力ジョブが起動されることとなる。
【０１７５】
次に、複合機１０側でスキャナ（読取部１３）の準備が完了したか否かをチェックする（ｓ８１６）。上述したｓ８１２にて起動したスキャンジョブにおいては、後述のように、複合機１０側においてスキャナの準備が完了したことの通知を受け、その旨を本セッション処理に通知してくるように構成されている。そのため、このｓ８１６では、このスキャンジョブからのスキャナの準備が完了したことの通知がなされた場合に、複合機１０側でスキャナの準備が完了したと判定する。
【０１７６】
このｓ８１６で、複合機１０側でスキャナの準備が完了していないと判定された場合には（ｓ８１６：ＮＯ）、スキャンジョブが停止したか否かをチェックする（ｓ８１８）。上述したｓ８１２にて起動したスキャンジョブにおいては、後述のように、複合機１０側からスキャナの準備が完了したことの通知を正常に受けられなかった場合に、スキャンジョブ自体を停止（終了）すると共に、その旨を本セッション処理に対して通知してくるように構成されている。そのため、このｓ８１８では、このスキャンジョブからの停止の通知がなされた場合に、スキャンジョブが停止したと判定する。
【０１７７】
このｓ８１８で、スキャンジョブが停止していないと判定された場合（ｓ８１８：ＮＯ）、ｓ８１６へ戻る一方、スキャンジョブが停止していると判定された場合（ｓ８１８：ＹＥＳ）、後述するｓ８４４へ移行する。
【０１７８】
また、ｓ８１６で、スキャナの準備が完了していると判定された場合には（ｓ８１６：ＹＥＳ）、サービス側出力ジョブの一種である印刷ジョブを起動する（ｓ８２０）。この印刷ジョブは、本セッション処理と並行して実行される処理であって、詳細な処理手順は後述する。
【０１７９】
次に、印刷（出力）ジョブの起動指令を複合機指令として出力する（ｓ８２２）。ここでは、ジョブＩＤおよび通信先アドレスと共に印刷ジョブの起動指令を、返信情報を格納する記憶領域に書き込む処理を行う。これに基づいて、図２３におけるｓ７３２にて複合機制御指令が生成され、図２２におけるｓ７３４にて複合機１０側に起動指令として送信されることとなる。この起動指令は、図１４におけるｓ２０８にて複合機１０側で受信され、これに基づいて、複合機１０側において出力ジョブが起動されることとなる（同図ｓ２６６）。
【０１８０】
次に、複合機１０側で印刷準備（記録部１４）の準備が完了したか否かをチェックする（ｓ８２４）。上述したｓ８２０にて起動した印刷ジョブにおいては、後述のように、複合機１０側において印刷準備が完了したことの通知を受け、その旨を本セッション処理に通知してくるように構成されている。そのため、このｓ８２４では、この印刷ジョブからの印刷準備が完了したことの通知がなされた場合に、複合機１０側で印刷準備が完了したと判定する。
【０１８１】
このｓ８２４で、複合機１０側で印刷準備が完了していないと判定された場合には（ｓ８２４：ＮＯ）、印刷ジョブが停止したか否かをチェックする（ｓ８２６）。上述したｓ８２０にて起動した印刷ジョブにおいては、後述のように、複合機１０側から印刷準備が完了したことの通知を正常に受けられなかった場合に、印刷ジョブ自体を停止（終了）すると共に、その旨を本セッション処理に対して通知してくるように構成されている。そのため、このｓ８２６では、この印刷ジョブからの停止の通知がなされた場合に、印刷ジョブが停止したと判定する。
【０１８２】
このｓ８２６で、印刷ジョブが停止していないと判定された場合（ｓ８２６：ＮＯ）、ｓ８２４へ戻る一方、印刷ジョブが停止していると判定された場合（ｓ８２６：ＹＥＳ）、後述するｓ８４０へ移行する。
【０１８３】
また、ｓ８２４で、印刷準備が完了していると判定された場合には（ｓ８２４：ＹＥＳ）、複合機１０側から取得された入力データを読み出す（ｓ８２８）。上述したｓ８１２にて起動したスキャンジョブにおいては、後述のように、複合機１０から、この複合機１０の読取部１３にて読み取られた画像データを取得するように構成されているため、このｓ８２８では、こうして取得されて所定の記憶領域に格納されたデータ（入力データ）のうち、１頁分に相当するデータ領域を読み出す。
【０１８４】
次に、ｓ８２８にて読み出された入力データに対してＯＣＲ，翻訳，印刷レイアウトなどの処理を施してなる画像データを生成する（ｓ８３０）。ここでは、まず、ｓ８２８にて読み出された入力データに対してＯＣＲ処理を施すことにより、この入力データで表される画像に含まれるテキスト部分を認識する。次に、このテキスト部分に対して翻訳処理を行うことによりテキスト部分を所定の言語で表現されたテキストに変換する。なお、ここでの翻訳処理は、上述したｓ８０４にて起動したＵＩジョブにおいて取得されるパラメータに基づいて行われるものであり、このパラメータで示される言語への変換が行われることとなる。そして、こうして認識されたテキスト部分について、所定の印刷レイアウトを設定してなる印刷用の画像データを生成する。
【０１８５】
次に、ｓ８３０にて生成された画像データを出力する（ｓ８３２）。ここでは、ジョブＩＤおよび通信先アドレスと共にｓ８３０にて生成された画像データを、印刷ジョブにわたすために記憶領域に書き込む処理を行う。これに基づいて後述する図２７のｓ１１２０にて複合機１０に適合した印刷コマンドを作成し、複合機１０へ送信する。
【０１８６】
次に、ｓ８２８にて全ての入力データ（全ページ分のデータ領域）についての読み出しが完了したか否かをチェックし（ｓ８３４）、完了していなければ（ｓ８３４：ＮＯ）、ｓ８２８へ戻る一方、完了していれば（ｓ８３４：ＹＥＳ）、ｓ８３２による出力データの出力（記憶領域への書き込み）が終了したか否かをチェックする（ｓ８３６）。
【０１８７】
このｓ８３６で、出力データの出力が完了していなければ（ｓ８３６：ＮＯ）、ｓ８２８へ戻る一方、出力データの出力が完了していれば（ｓ８３６：ＹＥＳ）、印刷（出力）ジョブの終了指令を複合機指令として出力する（ｓ８３８）。ここでは、ジョブＩＤと共に印刷ジョブの終了指令を、返信情報を格納する記憶領域に書き込む処理を行う。これに基づいて、図２３におけるｓ７３２にて複合機制御指令が生成され、図２２におけるｓ７３４にて複合機１０側に終了指令として送信されることとなる。この終了指令は、図１４におけるｓ２０８にて複合機１０側で受信され、これに基づいて、複合機１０側において出力ジョブが停止（終了）されることとなる（同図ｓ２１８）。
【０１８８】
こうして、印刷ジョブの終了指令を出力した後、または、上述したｓ８２６で印刷ジョブが停止されたと判定された場合（ｓ８２６：ＹＥＳ）、ｓ８２０で起動させたサービス側印刷ジョブを終了させる（ｓ８４０）。
【０１８９】
次に、スキャン（入力）ジョブの終了指令を複合機指令として出力する（ｓ８４２）。ここでは、ジョブＩＤと共にスキャンジョブの終了指令を、返信情報を格納する記憶領域に書き込む処理を行う。これに基づいて、図２３におけるｓ７３２にて複合機制御指令が生成され、図２２におけるｓ７３４にて複合機１０側に終了指令として送信されることとなる。この終了指令は、図１４におけるｓ２０８にて複合機１０側で受信され、これに基づいて、複合機１０側において入力ジョブが停止（終了）されることとなる（同図ｓ２１８）。
【０１９０】
こうして、スキャンジョブの終了指令を出力した後、または、上述したｓ８１８でスキャンジョブが停止されたと判定された場合（ｓ８１８：ＹＥＳ）、ｓ８１２で起動させたサービス側スキャンジョブを終了させる（ｓ８４４）。
【０１９１】
次に、ＵＩジョブの終了指令を複合機指令として出力する（ｓ８４６）。ここでは、ジョブＩＤと共にスキャンジョブの終了指令を、返信情報を格納する記憶領域に書き込む処理を行う。これに基づいて、図２３におけるｓ７３２にて複合機制御指令が生成され、図２２におけるｓ７３４にて複合機１０側に終了指令として送信されることとなる。この終了指令は、図１４におけるｓ２０８にて複合機１０側で受信され、これに基づいて、複合機１０側においてＵＩジョブが停止（終了）されることとなる（同図ｓ２１８）。
【０１９２】
そして、各ジョブにおいて確保されていたリソースを解放するなどの終了処理を行った後（ｓ８５０）、サービスの終了指令を複合機指令として出力した後（ｓ８５２）、本セッション処理を終了する。このｓ８４８では、サービスの終了指令を、返信情報を格納する記憶領域に書き込む処理を行う。これに基づいて、図２３におけるｓ７３２にて複合機制御指令が生成され、図２２におけるｓ７３４にて複合機１０側に終了指令として送信されることとなる。この終了指令は、図１４におけるｓ２０８にて複合機１０側で受信され、これに基づいて、複合機１０側においてセッション処理が終了されることとなる（同図ｓ２２２）。
（３−３）ＵＩジョブ
続いて、図２３におけるｓ８０４にて起動されるＵＩジョブの処理手順を図２５に基づいて説明する。
【０１９３】
このＵＩジョブが開始されると、まず、複合機１０から複合機ジョブ指令問合せを受信するまで待機し、この複合機ジョブ指令問合せを受信したら（ｓ９０２）、サービスの実行に必要なパラメータの設定を要求するためのパラメータ要求指令を複合機指令として複合機１０へ返信する（ｓ９０４）。このｓ９０２において受信する「複合機ジョブ指令問合せ」とは、図１６におけるｓ３１２にて複合機１０から送信されるＨＴＴＰリクエストである。また、ｓ９０４にて送信する複合機指令とは、同図ｓ３１４にて複合機１０に受信されるＨＴＴＰレスポンスであり、サービスＩ／Ｆ情報３６（例えば、翻訳コピーのサービスに対応するもの）が付加されたものである。この複合機指令を受信した複合機１０は、同図ｓ３１６〜ｓ３２０にてパラメータを送信用データ格納領域にセットしてからｓ３１２にてこのパラメータをＨＴＴＰリクエストにより送信してくる。
【０１９４】
次に、エラーカウントを初期化する（ｓ９０６）。ここでは、後述のようにパラメータを正常に受信できない自体が連続して発生した回数をカウントするためのカウンタをリセット（「０」をセット）する。
【０１９５】
次に、ｓ９０４にて送信した複合機指令を受信した複合機１０からパラメータが送信されてくるまで待機し、パラメータを受信したら（ｓ９０８）、このパラメータを正常に受信できているか否かをチェックする（ｓ９１０）。
【０１９６】
このｓ９１０にてパラメータが正常に受信できていないと判定された場合には（ｓ９１０：ＮＯ）、このような正常に受信できない状況が所定の回数（本実施形態においては２回）連続して発生しているか否かをエラーカウントによるカウント値に基づいてチェックし（ｓ９１２）、所定の回数連続して発生していなければ（ｓ９１２：ＮＯ）、パラメータを正常に受信できなかった旨（サーバ受取ＮＧ；異常受取）を通知するためのサーバ受取状況を出力し（ｓ９１４）、エラーカウントをカウントアップした後（ｓ９１６）、ｓ９０８へ戻る。このｓ９１４では、サーバ受取状況を、返信情報を格納する記憶領域に書き込む処理を行う。これに基づいて、図２３におけるｓ７３２にて複合機制御指令が生成され、図２２におけるｓ７３４にて複合機１０側にサーバ受取状況として送信されることとなる。このサーバ受取状況は、図１４におけるｓ２０８にて複合機１０側で受信され、これに基づいて、複合機１０側においてパラメータの再送信が行われることとなる（図１６におけるｓ３３４，ｓ３３６，ｓ３１２）
また、ｓ９１２で、正常に受信できない状況が所定の回数連続して発生していたら（ｓ９１２：ＹＥＳ）、セッション処理に対してＵＩジョブの停止（終了）を通知した後（ｓ９１８）、本ＵＩジョブ１を終了する。このｓ９１８による通知は、図２３におけるｓ８１０にてセッション処理が受けるものである。
【０１９７】
また、上述したｓ９１０で、パラメータが正常に受信できていると判定された場合には（ｓ９１０：ＹＥＳ）、パラメータを正常に受信できた旨（サーバ受取ＯＫ；正常受取）を通知するためのサーバ受取状況を出力する（ｓ９２０）。ここでは、サーバ受取状況を、返信情報を格納する記憶領域に書き込む処理を行う。これに基づいて、図２３におけるｓ７３２にて複合機制御指令が生成され、図２２におけるｓ７３４にて複合機１０側にサーバ受取状況として送信されることとなる。このサーバ受取状況は、図１４におけるｓ２０８にて複合機１０側で受信され、これに基づいて、複合機１０側においてパラメータの再送信が必要ないことが確認される（同図ｓ３３４）。
【０１９８】
次に、セッション処理に対してパラメータの入力が完了（パラメータを取得）した旨を通知する（ｓ９２２）。ここでの通知は、図２３におけるｓ８０８にてセッション処理が受けるものである。
【０１９９】
そして、このｓ９２２を終えた以降、複合機１０から複合機ジョブ指令問合せを受信するまで待機し、この複合機ジョブ指令問合せを受信したら（ｓ９２４）、サービス状態情報を出力する（ｓ９２６）、といった処理を、他の処理（例えば、図２０におけるｓ８４６）により本ＵＩジョブが停止（終了）されるまで繰り返し行う。このｓ９２６では、サービス状態情報を、返信情報を格納する記憶領域に書き込む処理を行う。これに基づいて、図２３におけるｓ７３２にて複合機制御指令が生成され、図２２におけるｓ７３４にて複合機１０側にサービス状態情報として送信されることとなる。
（３−４）スキャンジョブ
続いて、図２３におけるｓ８１２にて起動されるスキャンジョブの処理手順を図２６に基づいて説明する。
【０２００】
このスキャンジョブが開始されると、まず、複合機１０から複合機状態情報を受信するまで待機し、この複合機状態情報を受信したら（ｓ１００２）、図２５におけるｓ９０６と同様にエラーカウントを初期化した後（ｓ１００４）、複合機パラメータを出力する（ｓ１００６）。このｓ１００２にて受信される複合機状態情報は、図１９におけるｓ４０８にて複合機１０から送信されてくるＨＴＴＰリクエストであり、これに応答する形でｓ１００６にて複合機パラメータをＨＴＴＰレスポンスとして返信する。この複合機パラメータは、図２５におけるｓ９０８にて受信されたものであって、ｓ１００２にて受信された複合機状態情報の送信元である複合機１０に対応するパラメータである。
【０２０１】
この複合機パラメータを受信した複合機１０からは、この複合機パラメータを正常に受信できたか否かを示す複合機受取状況が送信されてくるため、この複合機受取状況に基づいて複合機１０側で正常に受け取ることができたか否かをチェックする（ｓ１００８）。具体的には、複合機受取状況が、異常受取（ＮＧ）である旨の内容であれば正常に受け取ることができていないと判定し、正常受取（ＯＫ）である旨の内容であれば正常に受け取ることができていると判定する。
【０２０２】
このｓ１００８で、複合機１０側で複合機パラメータを正常に受け取ることができていないと判定された場合（ｓ１００８：ＮＯ）、このような正常に受信できない状況が所定の回数（本実施形態においては２回）連続して発生しているか否かをエラーカウントによるカウント値に基づいてチェックし（ｓ１０１０）、所定の回数連続して発生していなければ（ｓ１０１０：ＮＯ）、エラーカウントをカウントアップした後（ｓ１０１２）、ｓ１００６へ戻る。
【０２０３】
また、ｓ１０１０で、正常に受信できない状況が所定の回数連続して発生していたら（ｓ１０１０：ＹＥＳ）、セッション処理に対してスキャンジョブの停止（終了）を通知した後（ｓ１０１４）、異常終了を通知するための通知指令をサービス状態情報として出力する（ｓ１０１６）。このｓ１０１４による通知は、図２３におけるｓ８１８にてセッション処理が受けるものである。また、ｓ１０１６では、通知指令を、返信情報を格納する記憶領域に書き込む処理を行う。これに基づいて、図２３におけるｓ７３２にて複合機制御指令が生成され、図２２におけるｓ７３４にて複合機１０側に通知指令として送信されることとなる。この通知指令は、図１９におけるｓ４３２にて複合機１０側で受信される。
【０２０４】
また、上述のｓ１００８で、複合機１０側で複合機パラメータを正常に受け取ることができていると判定された場合（ｓ１００８：ＹＥＳ）、複合機パラメータの受信をもって複合機１０側でスキャナ（読取部１３）の準備が完了しているものとし、セッション処理に対してスキャナの準備完了を通知する。この通知は、図２３におけるｓ８１６にてセッション処理が受けるものである。
【０２０５】
次に、機能サーバ３０側で処理すべきデータの送信を要求するための入力データ要求を出力する（ｓ１０１８）。ここでは、入力データ要求を、返信情報を格納する記憶領域に書き込む処理を行う。これに基づいて、図２３におけるｓ７３２にて複合機制御指令が生成され、図２２におけるｓ７３４にて複合機１０側に入力データ要求として送信されることとなる。この入力データ要求は、図１９におけるｓ４２０にて複合機１０側で受信され、これにより、ユーザの操作を受けて入力データが送信されてくる。
【０２０６】
こうして、入力データ要求を受信した複合機１０から入力データを受信したら（ｓ１０２２）、この入力データの受信が正常に終了していれば（ｓ１０２４：ＹＥＳ）、正常終了を通知するための通知指令をサービス状態情報として出力した後（ｓ１０２６）、本スキャンジョブを終了する。このｓ１０２６では、通知指令を、返信情報を格納する記憶領域に書き込む処理を行う。これに基づいて、図２３におけるｓ７３２にて複合機制御指令が生成され、図２２におけるｓ７３４にて複合機１０側に通知指令として送信されることとなる。この通知指令は、図１９におけるｓ４３２にて複合機１０側で受信される。
【０２０７】
一方、入力データの受信が正常に終了しなければ（ｓ１０２４：ＮＯ）、ｓ１０１６へ移行し、異常終了を通知するための通知指令をサービス状態情報として出力した後、本スキャンジョブを終了する。
（３−５）印刷ジョブ
続いて、図２３におけるｓ８２０にて起動される印刷ジョブの処理手順を図２７に基づいて説明する。
【０２０８】
この印刷ジョブが開始されると、まず、複合機１０から複合機状態情報を受信するまで待機し、この複合機状態情報を受信したら（ｓ１１０２）、図２５におけるｓ９０６と同様にエラーカウントを初期化した後（ｓ１１０４）、複合機パラメータを出力する（ｓ１１０６）。このｓ１１０２にて受信される複合機状態情報は、図２０におけるｓ５０８にて複合機１０から送信されてくるＨＴＴＰリクエストであり、これに応答する形でｓ１１０６にて複合機パラメータをＨＴＴＰレスポンスとして返信する。この複合機パラメータは、図２５におけるｓ９０８にて受信されたものであって、ｓ１１０２にて受信された複合機状態情報の送信元である複合機１０に対応するパラメータである。
【０２０９】
この複合機パラメータを受信した複合機１０からは、この複合機パラメータを正常に受信できたか否かを示す複合機受取状況が送信されてくるため、図２６におけるｓ１００８と同様、この複合機受取状況に基づいて複合機１０側で正常に受け取ることができたか否かをチェックする（ｓ１１０８）。
【０２１０】
このｓ１１０８で、複合機１０側で複合機パラメータを正常に受け取ることができていないと判定された場合（ｓ１１０８：ＮＯ）、このような正常に受信できない状況が所定の回数（本実施形態においては２回）連続して発生しているか否かをエラーカウントによるカウント値に基づいてチェックし（ｓ１１１０）、所定の回数連続して発生していなければ（ｓ１１１０：ＮＯ）、エラーカウントをカウントアップした後（ｓ１１１２）、ｓ１１０６へ戻る。
【０２１１】
また、ｓ１１１０で、正常に受信できない状況が所定の回数連続して発生していたら（ｓ１１１０：ＹＥＳ）、セッション処理に対して印刷ジョブの停止（終了）を通知した後（ｓ１１１４）、異常終了を通知するための通知指令をサービス状態情報として出力する（ｓ１１１６）。このｓ１１１４による通知は、図２３におけるｓ８２６にてセッション処理が受けるものである。また、ｓ１１１６では、通知指令を、返信情報を格納する記憶領域に書き込む処理を行う。これに基づいて、図２３におけるｓ７３２にて複合機制御指令が生成され、図２２におけるｓ７３４にて複合機１０側に通知指令として送信されることとなる。この通知指令は、図１９におけるｓ５３４にて複合機１０側で受信される。
【０２１２】
また、上述のｓ１１０８で、複合機１０側で複合機パラメータを正常に受け取ることができていると判定された場合（ｓ１１０８：ＹＥＳ）、複合機パラメータの受信をもって複合機１０側で印刷（記録部１４）の準備が完了しているものとし、セッション処理に対して印刷の準備完了を通知する。この通知は、図２３におけるｓ８２４にてセッション処理が受けるものである。セッション処理では、この通知を受けて、図２４におけるｓ８２８〜ｓ８３６を行い、印刷データの送信を行うこととなる。
【０２１３】
次に、セッション処理にて生成された印刷データ（図２４におけるｓ８３２）を複合機１０が処理可能な印刷データに変換してなるデータを、返信情報を格納する記憶領域に書き込む処理を行う（ｓ１１２０）。これに基づいて図２１におけるｓ７３２にて複合機制御指令が生成され、図２２におけるｓ７３４にて複合機１０側に通知指令として送信される。この通知指令は、図２０におけるｓ５２０にて複合機１０側で受信される。
【０２１４】
こうして、送信される印刷データを受信した複合機１０は、図２０におけるｓ５３２にて複合機状態情報をＨＴＴＰリクエストにより送信してくる。
こうして、印刷データを受信した複合機１０から複合機状態情報を受信したら（ｓ１１２２）、この複合機状態情報の受信が正常に終了していれば（ｓ１１２４：ＹＥＳ）、正常終了を通知するための通知指令をサービス状態情報として出力した後（ｓ１１２６）、本印刷ジョブを終了する。このｓ１１２６では、通知指令を、返信情報を格納する記憶領域に書き込む処理を行う。これに基づいて、図２３におけるｓ７３２にて複合機制御指令が生成され、図２２におけるｓ７３４にて複合機１０側に通知指令として送信されることとなる。この通知指令は、図２０におけるｓ５３２にて複合機１０側で受信される。
【０２１５】
一方、複合機状態情報の受信が正常に終了しなければ（ｓ１１２４：ＮＯ）、ｓ１１１６へ移行し、異常終了を通知するための通知指令をサービス状態情報として出力した後、本印刷ジョブを終了する。
（４）ディレクトリサーバ２０による処理
以下に、ディレクトリサーバ２０の制御部２１により実行される各種処理について説明する。
（４−１）ディレクトリサーバ処理
ディレクトリサーバ２０が起動した以降、ＨＴＴＰリクエストを受信することで起動されるディレクトリサーバ処理の処理手順を図２８に基づいて説明する。なお、本ディレクトリサーバ処理は、ディレクトリサーバ２０がＨＴＴＰリクエストを受信することにより開始される。なお、本ディレクトリサーバ処理は、本来、全てのＨＴＴＰリクエストに応じてＨＴＴＰレスポンスをも返信する処理であるが、ここでは、本発明に関連するＨＴＴＰリクエストに限定して説明するものとする。
【０２１６】
このディレクトリサーバ処理が起動された後、ＨＴＴＰリクエストを受信したら（ｓ６０２）、そのＨＴＴＰリクエストがサービス一覧照会の要求であるか否かをチェックする（ｓ６０４）。このサービス一覧照会の要求は、図５におけるｓ１１２にて複合機１０が送信するものである。
【０２１７】
このｓ６０４で、サービス一覧照会の要求であると判定されたら（ｓ６０４：ＹＥＳ）、記憶部２３のサービス定義情報記憶部２４からトップサービス定義情報２５を読み出した後（ｓ６０６）、この読み出したサービス定義情報２５をＨＴＴＰレスポンスとして複合機１０へ送信する（ｓ６０８）。
【０２１８】
また、ｓ６０４で、サービス一覧照会の要求ではないと判定されたら（ｓ６０４：ＮＯ）、ＨＴＴＰリクエストがサービス照会の要求であるか否かをチェックする（ｓ６１０）。このサービス照会の要求は、図５におけるｓ１３０にて複合機１０が送信するものである。
【０２１９】
このｓ６１０で、サービス照会の要求であると判定されたら（ｓ６１０：ＹＥＳ）、記憶部２３のサービス定義情報記憶部２４からＩＤ又はＵＲＬで指定されたサービス定義情報２５を読み出し（ｓ６１２）、ｓ６０８へ移行して、この読み出したサービス定義情報２５をＨＴＴＰレスポンスとして複合機１０へ送信する。
【０２２０】
そして、ｓ６１０で、サービス照会の要求でないと判定されたら（ｓ６１０：ＮＯ）、ｓ６０８へ移行し、その要求に応じたＨＴＴＰレスポンスを複合機１０へ送信する。
［第１実施形態の効果］
このように構成された画像処理システムにおいて、複合機１０側では、図５におけるｓ１１６にてディレクトリサーバ２０により照会を受けたサービス定義情報２５に基づき、サービス選択用画面を表示させることにより、ディレクトリサーバ２０により照会を受けたサービス定義情報２５に基づき、機能サーバ３０に提供を要求するサービスをユーザに指定させることができる。これにより、本画像処理システムによれば、インターネット上の一般サーバのように日々サービスが無秩序に増減する環境にも適応させることができる。
【０２２１】
仮に、従来の構成のように、サービス特定情報に相当する情報を複合機１０に登録しておく構成とした場合、サービスが無秩序に増減する環境においては、その都度、情報を登録しなければならず、複合機１０側の負担が大きくなってしまうため、望ましいことではない。これに対し、本画像処理システムでは、サービス定義情報２５がディレクトリサーバ２０から通知され、これにより、複合機１０側で機能サーバ３０が提供可能なサービスを把握することができるため、サービスが無秩序に増減する環境においても、複合機１０の負担を抑えることができる。
【０２２２】
さらに、この構成においては、複数のディレクトリサーバ２０それぞれから通知されたサービス定義情報２５それぞれにより特定されるサービスのリストを示すサービス選択用画面を作成したうえ、この画面を表示させた後で提供を要求すべきサービスをユーザに指定させることができる。そのため、ユーザは、このサービス選択用画面に基づいて容易にサービスを指定することができる。
【０２２３】
また、図５におけるｓ１１６にてディスプレイ５２に表示されるサービス選択用画面は、図１２のサービス選択用画面生成処理において、複数の異なるディレクトリサーバ２０における同一カテゴリの同一サービスが削除された状態で表示される。そのため、サービス選択用画面には、それぞれ異なるサービスのみが選択肢として表示されるため、同じサービスそれぞれが選択肢として同時に表示されることはない。よって、このようなサービス選択用画面を表示させた場合には、複数の同じサービスが選択肢として表示させることでユーザに無用な混乱を与えてしまう虞はない。また、同じサービスが表示されないため、充分な表示領域を有さないディスプレイ５２にサービスリストを表示させた場合でも、そのような狭い領域に必ず異なるサービスが表示されることから、無用な操作負担が発生することもない。
【０２２４】
また、複合機１０は、図５におけるｓ１１０にて機能サーバ３０に要求すべきサービスを指定する方法をユーザに指定させたタイミングで、同図ｓ１１１〜ｓ１１５を繰り返してディレクトリサーバ２０からのサービス定義情報２５の通知を受けることができる。
［第２実施形態］
本実施形態の画像処理システムは、第１実施形態の画像処理システムと同様の構成であって、図１２におけるサービス選択用画面生成処理の処理手順が異なっているだけであるため、この相違点であるサービス画面生成処理の処理手順についてのみ説明する。
（１）サービス選択用画面生成処理
図２におけるｓ１１６であるサービス選択用画面生成処理の処理手順を図２９に基づいて説明する。
【０２２５】
このサービス選択用画面生成処理が起動されると、まず、サービス定義情報並び替え記憶領域を確保した後（ｓ２１０２）、図１２におけるｓ２００２と同様、サービス定義情報格納メモリに登録されている情報のうち、先頭に登録されている情報を以降の処理を行う際の処理対象とする（ｓ２１０４）。
【０２２６】
次に、この時点で処理対象となっている情報に、ディレクトリサーバ２０の名前として「ＮＵＬＬ」がセットされており、つまり、その処理対象とすべき情報が登録されていないか否かをチェックする（ｓ２１０６）。
【０２２７】
このｓ２００６で、ディレクトリサーバ２０の名前として「ＮＵＬＬ」がセットされていなければ（ｓ２１０６：ＮＯ）、そのディレクトリサーバ２０の名前を読み出し、一時記憶する（ｓ２１０８）。
【０２２８】
次に、処理対象となっている情報のうち、ディレクトリサーバ２０の名前と対応づけて登録されているメニュー数の値を読み出してその値を変数Ｎにセットする（ｓ２１１０）。
【０２２９】
次に、変数Ｎの値が「０」より大きい（Ｎ＞０）値となっているか否かをチェックし（ｓ２１１２）、「０」より大きい値となっていれば（ｓ２１１２：ＹＥＳ）、処理対象となっている情報からカテゴリ名を読み出す（ｓ２１１４）。
【０２３０】
次に、ｓ２１１４にて読み出されたカテゴリ名が上述したサービス定義情報並び替え記憶領域に格納された他のカテゴリ名と同一でなければ（ｓ２１１６：ＮＯ）、そのカテゴリ名をサービス定義情報並び替え記憶領域に格納すると共に（ｓ２１１８）、対応するＳＵＢ−ＭＥＮＵアドレスを読み出してサービス定義情報並び替え記憶領域に格納する（ｓ２１２０）。ここでは、サービス定義情報並び替え記憶領域における新たな列の情報として、カテゴリ名，ＳＵＢ−ＭＥＮＵアドレスが一列に格納される（例えば、図３０における“データ保存サービス”参照）。
【０２３１】
一方、カテゴリ名が上述したサービス定義情報並び替え記憶領域に格納された他のカテゴリ名と同一であれば（ｓ２１１６：ＹＥＳ）、対応するＳＵＢ−ＭＥＮＵアドレスを読み出し、その同一と判定されたカテゴリ名につながる（カテゴリ名と同じ列となるように）サービス定義情報並び替え記憶領域に格納する（ｓ２１２２）。ここでは、サービス定義情報並び替え記憶領域における新たな列の情報として、ＳＵＢ−ＭＥＮＵアドレスが同一のカテゴリ名の列につなげられるように格納される（例えば、図３０における“印刷サービス”、“コピー応用サービス”参照）。
【０２３２】
こうして、ｓ２１２０，ｓ２１２２で情報の格納を行った後、対応するディレクトリサーバ名を読み出し、このディレクトリ名をｓ２１２０，ｓ２１２２にて格納した情報と同じ列となるようにサービス定義情報並び替え記憶領域に格納する（ｓ２１２４）。
【０２３３】
そして、変数Ｎから「１」を減算（Ｎ＝Ｎ−１）して（ｓ２１２８）、ｓ２１１２へ戻り、以降、ｓ２１１２〜ｓ２１２８を繰り返すことにより、サービス定義情報格納メモリに登録されている情報のうちの処理対象とされている全ての情報に対する処理が行われる。
【０２３４】
こうして、全ての情報に対する処理が行われたら、ｓ２１１２にて変数Ｎの値が「０」以下の値となっていると判定し（ｓ２１１２：ＮＯ）、その後、サービス定義情報格納メモリに登録されている情報のうち、次に登録されている情報を処理対象とした後（ｓ２１３０）、ｓ２１０６へ戻り、以降、ｓ２１０６〜ｓ２１３０を繰り返すことにより、サービス定義情報格納メモリに登録されている全ての情報に対する処理が行われる。
【０２３５】
この後、全ての情報に対する処理が行われたら、ｓ２１０６にてディレクトリサーバ２０の名前として「ＮＵＬＬ」がセットされていると判定し（ｓ２１０６：ＹＥＳ）、ここまでの処理でサービス定義情報並び替え記憶領域に格納された情報に基づいてサービス選択用画面をディスプレイ５２に表示させた後（ｓ２１３２）、本サービス選択用画面生成処理を終了する。このように、本サービス選択用画面生成処理を経てディスプレイ５２に表示されるサービス選択用画面は、図３１に示すように、複数の異なるディレクトリサーバにおける同一カテゴリの同一サービスが同じサービス毎に配列し直された状態のリストとなる。さらに、ｓ２１２２の処理の前に、第１実施形態で説明したようにサービスのサーバアドレスに同一のアドレスがあるかの判定を行い、同一アドレスがあればサービス定義情報ソート記憶領域に格納させない構成であってもよい。
［第２実施形態の効果］
このように構成された画像処理システムにおいては、第１実施形態と同様の構成から得られる作用，効果以外に、以下に示すような作用，効果を得ることができる。
【０２３６】
例えば、図５におけるｓ１１６にてディスプレイ５２に表示されるサービス選択用画面は、図２９のサービス選択用画面生成処理において、複数の異なるディレクトリサーバ２０における同一カテゴリの同一サービスが同じサービス毎に配列し直された状態で表示される。そのため、サービス選択用画面には、ユーザにとって視認性のよいものとすることができ、これにより、サービスを指定する際の操作性をも向上させることができる。
［第３実施形態］
本実施形態の画像処理システムは、第１実施形態の画像処理システムと同様の構成であって、図５における複合機処理の処理手順が異なっているだけであるため、この相違点である複合機処理の処理手順についてのみ説明する。
（１）複合機処理
まず、複合機処理が起動したら、図３２に示すように、まず、図５におけるｓ１０２〜ｓ１１０と同様の処理を行った後、このｓ１１０にて「ＹＥＳ」と判定されたら、優先度フラグが未更新であるか否かをチェックする（ｓ２２０２）。この「優先度フラグ」とは、上述したディレクトリサーバリストに登録されたディレクトリサーバそれぞれに対して優先度（図７参照）が設定されていない場合に「０」つまり未更新である状態となり、優先度が設定されている場合に「１」つまり更新済みである状態となるものである。
【０２３７】
このｓ２２０２で未更新であると判定されたら（ｓ２２０２：ＹＥＳ）、後述するサーバ優先度更新処理により優先度の設定を行った後で（ｓ２２０４）、次の処理（ｓ２２０６）へ移行する一方、更新済みであると判定されたら（ｓ２２０２：ＮＯ）、サーバ優先度更新処理を行うことなく次の処理（ｓ２２０６）へ移行する。
【０２３８】
次に、ディレクトリサーバリストに登録されているディレクトリサーバ２０のうち、優先度が最も高く（大きな値が）設定されているディレクトリサーバ２０を以下の処理を行う処理対象とする（ｓ２２０６）。
【０２３９】
次に、この時点で処理対象とされているディレクトリサーバ２０に対して応答要求（本実施形態においてはｐｉｎｇコマンドの発行および送信）を行う（ｓ２２０８）。
このｓ２２０８による応答要求に対して返答があった場合（ｓ２２１０：ＹＥＳ）、その返答をしてきたディレクトリサーバ２０，つまり処理対象とされているディレクトリサーバ２０を選択し（ｓ２２１２）、こうして選択したディレクトリサーバ２０に対してサービス一覧の照会を要求する（ｓ２２１４）。ここでは、ディレクトリサーバ２０に対してトップサービス定義情報２５の送信を要求するためのＨＴＴＰリクエストを送信することにより、サービス一覧の照会を要求する。このアドレスに基づいてアクセスを受けたディレクトリサーバ２０は、トップサービス定義情報２５をＨＴＴＰレスポンスにより返信してくる。
【０２４０】
こうして、サービス一覧の照会を要求した後、ディレクトリサーバ２０から返信されたトップサービス定義情報２５を受信したら（ｓ２２１６）、ｓ１１６へ移行して、このサービス定義情報２５に基づいてサービス選択用画面をディスプレイ５２に表示させた後、図５におけるｓ１２０〜ｓ１３２の処理を行う。
【０２４１】
また、上述のｓ２２１０にて応答要求に対して返答がなかった場合（ｓ２２１０：ＮＯ）、ディレクトリサーバリストに登録されている全てのディレクトリサーバ２０に対する処理が終了しているか否かをチェックする（ｓ２２１８）。
【０２４２】
このｓ２２１８で全てのディレクトリサーバ２０に対する処理が終了していなければ（ｓ２２１８：ＮＯ）、次に優先順位の高いディレクトリサーバ２０を処理対象とした後（ｓ２２２０）でｓ２２０８へ戻る一方、全てのディレクトリサーバ２０に対する処理が終了していれば（ｓ２２１８：ＹＥＳ）、サーバ選択エラーに対するエラー処理を行った後（ｓ２２２２）、図５におけるｓ１０４へ戻る。
（２）サーバ優先度更新処理
続いて、図３２におけるｓ２２０４であるサーバ優先度更新処理の処理手順を図３３に基づいて説明する。
【０２４３】
このサーバ優先度更新処理が起動されると、まず、ディレクトリサーバリストに登録されたディレクトリサーバ２０のうち、先頭に登録されているディレクトリサーバ２０を以降の処理の処理対象とする（ｓ２３０２）。
【０２４４】
次に、この時点で処理対象となっているディレクトリサーバ２０に対して応答要求（本実施形態においてはｐｉｎｇコマンドの発行および送信）を行う（ｓ２３０４）。
このｓ２３０４による応答要求に対して返答があった場合（ｓ２３０４：ＹＥＳ）、その返答してきた情報（ＴＣＰパケット）のヘッダに含まれるＴＴＬ（Time To Live）の値を抽出し、このＴＴＬの値を処理対象となっているディレクトリサーバ２０に対応づけた状態で記憶した後（ｓ２３０８）、次の処理（ｓ２３１２）へ移行する一方、ｓ２３０４による応答要求に対して返答がなかった場合（ｓ２３０４：ＮＯ）、ＴＴＬの値を「０」とし、このＴＴＬの値と処理対象となっているディレクトリサーバ２０を対応づけた状態で記憶した後（ｓ２３１０）、次に処理（ｓ２３１２）へ移行する。
【０２４５】
次に、ディレクトリサーバリストに登録された全てのディレクトリサーバ２０に対する処理が終了しているか否かをチェックし（ｓ２３１２）、全てのディレクトリサーバ２０に対する処理が終了していなければ（ｓ２３１２：ＮＯ）、次のディレクトリサーバ２０を処理対象とした後（ｓ２３１４）、ｓ２３０４へ戻る。
【０２４６】
一方、ｓ２３１２で全てのディレクトリサーバ２０に対する処理が終了していたら（ｓ２３１２：ＹＥＳ）、この時点におけるディレクトリサーバリストに登録された各ディレクトリサーバ２０に対して、ＴＴＬの値が大きなものほど優先順位が高くなるように優先順位を設定して登録（記憶）する（ｓ２３１６，図７参照）。
【０２４７】
そして、優先度フラグを更新に設定した後（ｓ２３１８）、本サーバ優先度更新処理を終了して図３２におけるｓ２２０６へ移行する。
［第３実施形態の効果］
このように構成された画像処理システムにおいては、上述した各実施形態と同様の構成から得られる作用，効果以外に、以下に示すような作用，効果を得ることができる。
【０２４８】
例えば、図３２におけるｓ１１６にてディスプレイ５２に表示されるサービス選択用画面を、同図ｓ２２０６〜ｓ２２１２にて選択されたディレクトリサーバ２０から通知されたサービス定義情報２５のみに基づいて作成することができる。このｓ２２０６〜ｓ２２１２では、応答要求に対して返答することのできるディレクトリサーバ２０の中から最も優先順位の高いディレクトリサーバ２０が選択されることとなるため、このような条件を満たす適切なディレクトリサーバ２０のみをサービス定義情報２５の取得元とすることができる。
【０２４９】
また、このディレクトリサーバ２０を選択する際の基準となる「優先順位」は、図３２におけるｓ２２０４（図３３のサーバ優先度更新処理）により決定され、ここでは、図３３におけるｓ２３０４にて応答要求に対する返答の情報のうち、この情報のヘッダ情報に含まれるＴＴＬが大きいものほど、同図２１１６にて優先順位が高く設定されるように構成されている。このＴＴＬは、通常、一方のデバイスから送信された情報が他方のデバイスに到達するまでに経由してきた中継装置（例えば、ルータなど）を推測する基準となる値であり、この値が大きいほど到達までの中継回数が少ないと推定することができる。このように中継回数が少ない通信経路，つまりネットワーク的な距離が近くなっていれば、何らかの要因で情報が消失してしまう可能性が低く、比較的通信状況が良好であるといえる。そのため、上述したようにＴＴＬに応じて優先順位を設定することにより、このような優先順位が高く通信状態が良好であると推定されるディレクトリサーバ２０のみをサービス定義情報２５の取得元とすることができる。そして、図３２におけるｓ１１６にてディスプレイ５２に表示されるサービス選択用画面は、最もネットワーク的な距離が近いと推定されたディレクトリサーバ２０から通知されたサービス定義情報２５に基づいてサービスリストを作成することができる。
［第４実施形態］
本実施形態の画像処理システムは、第１実施形態の画像処理システムと同様の構成であって、図５における複合機処理の処理手順が異なっているだけであるため、この相違点である複合機処理の処理手順についてのみ説明する。
（１）複合機処理
この複合機処理が起動されると、図３４に示すように、まず、図５におけるｓ１０２〜ｓ１１２と同様の処理を行った後、このｓ１１２にて要求したサービス定義情報２５の受信がエラーとなったか否かをチェックする（ｓ２４０２）。ここでは、ディレクトリサーバ２０側において、ｓ１１２にて要求した種類のサービス定義情報２５がディレクトリサーバ２０側に記憶されていない場合には、それらの旨を通知するための情報がディレクトリサーバ２０から送信されてくるため、この情報を受信した場合に、サービス定義情報２５が受信エラーとなったと判定する。
【０２５０】
このｓ２４０２にてサービス定義情報２５の受信がエラーとなっていれば（ｓ２４０２）、ｓ１１２にてサービス一覧の照会を要求したディレクトリサーバ２０に対してリダイレクト先とすべき他のディレクトリサーバ２０のアドレスを問い合わせた後（アドレスの照会を要求する）（ｓ２４０４）、ｓ１１２へ戻って、こうして問い合わせたディレクトリサーバ２０に対してサービス一覧の照会を要求する。本実施形態において、ディレクトリサーバ２０は、自身がサービス一覧を照会できない場合にリダイレクトすべき他のディレクトリサーバ２０のアドレスを記憶しており、このｓ２４０４の問い合わせを受けた際に、その記憶しておいたアドレスを通知するように構成されている。
【０２５１】
そして、上述したｓ２４０２にてサービス定義情報２５の受信がエラーとなっていなければ（ｓ２４０２：ＮＯ）、図５におけるｓ１１３に移行する。なお、ｓ１１３以降の処理については、図５の複合機処理と同様であるため説明を省略する。
【０２５２】
また、本実施形態においては、ｓ２４０４でリダイレクト先とすべき他のディレクトリサーバ２０のアドレスを問い合わせた後でｓ１１２へ戻るように構成されているが、図３５に示すように、このｓ２４０４の前に、ディレクトリサーバに登録されているディレクトリサーバ２０のうち、ｓ１１２にてサービス一覧の照会を要求したディレクトリサーバ２０を削除した後で（ｓ２４０３）、ｓ１１２へ戻るように構成してもよい。また、ｓ２４０３において、ｓ１１２にてサービス一覧の照会を要求したディレクトリサーバ２０を削除すると共に、問い合わせたディレクトリサーバ２０のアドレスを新たにディレクトリサーバリストに登録するように構成してもよい。
［第４実施形態の効果］
このように構成された画像処理システムにおいては、上述した各実施形態と同様の構成から得られる作用，効果以外に、以下に示すような作用，効果を得ることができる。
【０２５３】
例えば、図３４におけるｓ１１２にて照会を要求したディレクトリサーバ２０から正常にサービス定義情報２５を取得できなかった場合に、ｓ２４０４にてディレクトリサーバ２０にリダイレクト先とすべき他のディレクトリサーバ２０のアドレスの照会を受けることができ、この後、このディレクトリサーバ２０に対してサービス一覧の照会を要求することができる。
【０２５４】
特に、図３５においては、ｓ１１２にて照会を要求したディレクトリサーバ２０から正常にサービス定義情報２５を取得できなかった場合、このディレクトリサーバ２０をディレクトリサーバリストから削除したうえで、ｓ２４０４にてディレクトリサーバ２０にリダイレクト先とすべき他のディレクトリサーバ２０のアドレスの照会を受けることができる。このように、必要とするサービス定義情報２５を取得できないディレクトリサーバ２０をディレクトリサーバリストから削除することにより、以降もサービス定義情報２５を正常に取得できないディレクトリサーバ２０に対してサービス一覧の照会を要求してしまう、といったことを防止できる。
【０２５５】
［変形例］
以上、本発明の実施の形態について説明したが、本発明は、上記実施形態に何ら限定されることはなく、本発明の技術的範囲に属する限り種々の形態をとり得ることはいうまでもない。
【０２５６】
例えば、上記実施形態においては、本発明における画像処理装置として、複合機１０を適用した構成を例示したが、機能サーバ３０により提供されるサービスを受けて機能を実現できる画像処理装置であれば、複合機以外の装置として、例えば、プリンタ装置，スキャナ装置，ファクシミリ装置などに適用することも可能である。
【０２５７】
また、本発明においては、図１２におけるｓ３１４にて受信されたパラメータ要求に付加されたサービスＩ／Ｆ情報３６、および、図１５におけるｓ３６０，ｓ３６４にて生成されるパラメータ入力画面が本発明におけるパラメータリストに相当する構成を例示した。しかし、パラメータリストに相当するものとしては、上述した以外のものであってもよい。
【０２５８】
また、本発明においては、図１５におけるｓ３６２，ｓ３６４で示した方法によりパラメータ入力画面を生成するように構成されたものを例示したが、ここでのパラメータ入力画面を生成する方法については、この方法に限定されるものではない。
【０２５９】
また、本発明においては、図２９におけるｓ９５２〜ｓ９６４で示した方法によりパラメータ入力画面を生成するように構成されたものを例示したが、ここでのパラメータ入力画面を生成する方法については、この方法に限定されるものではない。
【０２６０】
また、上記実施形態において、機能サーバ３０が、図２６，図２７におけるｓ９０４でパラメータ要求指令をサービスＩ／Ｆ情報３６と共に送信する構成を例示した。しかし、このように、パラメータ要求指令およびサービスＩ／Ｆ情報３６を送信する処理については、機能サーバ３０と別体の装置（単体の装置または連携して動作する複数の装置）により実現するように構成してもよい。
【０２６１】
また、上記実施形態において、複合機１０は、ディレクトリサーバ２０のサービス定義情報記憶部２４に記憶されている複数のサービス定義情報２５のうち、まずトップのサービス定義情報２５を受信してカテゴリを選択し、次に、その選択したカテゴリに対応するサービス定義情報２５を受信してサービスを選択するようにしているが、これに限ったものではない。すなわち、ディレクトリサーバ２０のサービス定義情報記憶部２４に記憶されている複数の（例えばすべての）サービス定義情報２５を一度に受信するようにしてもよい。
【０２６２】
また、サービスＩ／Ｆ情報３６が設定を要求するパラメータとしては、上記実施形態で例示したもの（解像度等）に限らず、サービスの内容に応じて様々なものが考えられる。例えば、モノクロ／カラーの選択、トナーの濃さ（印刷濃度）、音声のボリューム（音量）等が挙げられる。
【０２６３】
また、上記実施形態の画像処理システムでは、複合機１０、ディレクトリサーバ２０及び機能サーバ３０をそれぞれ１台ずつ備えた構成を例示しているが、このような構成はあくまでも説明を容易にするための構成例にすぎず、本発明の画像処理システムは、これ以外にも様々な構成をとることが可能である。すなわち、本発明の画像処理システムにおいて、複合機１０は複数設けられていてもよい。具体的には、複数の複合機１０が、共通のディレクトリサーバ２０からのサービス定義情報２５を受信し、共通の機能サーバ３０にサービスを要求するようにすることができる。
【０２６４】
また、本発明の画像処理システムにおいて、ディレクトリサーバ２０は、例えば、トップのサービス定義情報２５を送信するディレクトリサーバ２０と、各カテゴリのサービス定義情報２５を送信するディレクトリサーバ２０とを、別々のサーバで構成する、といったように記憶内容に応じて複数設けられていてもよい。
【０２６５】
また、本発明の画像システムにおいて、機能サーバ３０は複数設けられていてもよい。具体的には、例えば、サービスＩ／Ｆ情報３６を送信する機能サーバ３０と、サービスを実行する機能サーバ３０とを、別々のサーバで構成することも可能である。また、サービスを実行する機能サーバ３０についても、例えば、セッション処理を実行する機能サーバ３０と、ジョブ処理を実行する機能サーバ３０とを、別々のサーバで構成することも可能である。一方、例えば、複数種類のサービスについて、サービスＡを実行する機能サーバ３０、サービスＢ〜Ｄを実行する機能サーバ３０、サービスＥ，Ｆを実行する機能サーバ３０、というように、複数の機能サーバ３０が各自のサービスを実行するというように構成することもできる。この場合、サービスＩ／Ｆ情報３６は、例えば、サービスを実行する機能サーバ３０がそのサービスに対応するサービスＩ／Ｆ情報３６を送信するようにしてもよく、サービスを実行する機能サーバ３０とは別の機能サーバ３０が送信するようにしてもよい。
【０２６６】
また、ディレクトリサーバ２０またはディレクトリサーバ２０の一部構成要素，および，機能サーバ３０または機能サーバ３０の一部構成要素が、単一の装置として構成されていてもよい。
【０２６７】
また、ディレクトリサーバ２０（またはディレクトリサーバ２０の一部構成要素）や機能サーバ３０（または機能サーバ３０の一部構成要素）が、本画像処理システムを構成する複合機１０に備えられた構成としてもよい。
【０２６８】
また、上記第２実施形態においては、図５におけるｓ１１６にてディスプレイ５２に表示されるサービス選択用画面が、複数の異なるディレクトリサーバ２０における同一カテゴリの同一サービスが同じサービス毎に配列し直された状態のリストとなるように構成されたものを例示した。しかし、同処理による配列し直しの規則については、他の規則を採用しても良い。例えば、ランダムに配列する，カテゴリまたはサービスを五十音やアルファベット順に配列する，あらかじめ定められたサービスの内容毎に配列する、などといった規則が考えられる。
【０２６９】
また、上述した第３実施形態においては、応答要求に対して返答することのでき、かつ、設定されている優先順位が最も高いことを条件にディレクトリサーバ２０を選択するように構成されたものを例示した。しかし、このディレクトリサーバ２０を選択する条件としては、別の条件を採用することができ、例えば、あらかじめ定められた特定のディレクトリサーバ２０であること、複合機１０との間で所定の認証手順に従って認証できたディレクトリサーバ２０であること、などが考えられる。
【０２７０】
また、上記第３実施形態においては、図３３におけるｓ２３０８にて応答要求に対する返答のヘッダ情報に含まれるＴＴＬの値を記憶しておき、このＴＴＬの値が大きいほど優先順位が高く設定されるように構成されたものを例示した。しかし、この優先順位を設定する際のパラメータとしては、ＴＴＬ以外のパラメータを使用してもよい。例えば、ＩＣＭＰによるエコーリクエスト（応答要求）をディレクトリサーバ２０に送信した後、このディレクトリサーバ２０からエコーリプライ（返答）が返信されてくるまでの返信時間を使用することが考えられる。この返信時間は、通常、短い時間であるほど両者間の通信障害が少なく良好な通信状況であると推定できる。そのため、同図ｓ２３０８では返信時間を記憶し、同図ｓ２３１０では充分に大きな値を記憶しておき、同図ｓ２３１６では、返信時間が短いほど優先順位を高く設定するように構成すればよい。また、優先順位は、ネットワーク距離に限られず、例えば、ユーザが任意に決定したものを記憶させるように構成してもよい。
【０２７１】
また、上記第３，第４実施形態を組み合わせた構成，つまり図３６，図３７に示すように、図３２におけるｓ２２０２〜ｓ２２１６にて優先順位の高いディレクトリサーバ２０に対してサービス一覧の参照を要求すると共に、この要求に対して正常にサービス定義情報２５が送信されてこなかった場合にリダイレクト先となる他のディレクトリサーバ２０のアドレスを問い合わせる、といった構成とすることも考えられる。
【０２７２】
このように構成すれば、優先順位の高いディレクトリサーバ２０が何らかの原因によりサービス定義情報２５を正常に通知してこなかった場合であっても、別のディレクトリサーバ２０からサービス定義情報２５を取得することができる。特に、図３７のように、サービス定義情報２５を正常に通知してこなかったディレクトリサーバ２０をディレクトリサーバリストから削除する構成であれば、正常にサービス定義情報２５が通知されなかった場合に、このディレクトリサーバ２０以外のディレクトリサーバ２０の優先順位が実質的に高くなるため、以降は、この他のディレクトリサーバ２０からサービス定義情報２５を取得できるようになる。
【０２７３】
また、上記実施形態において、ディレクトリサーバ２０は、複合機１０からのサービス一覧の照会を要求された際に、この要求に係るサービス定義情報２５の送信が可能であれば、何ら制限なくサービス定義情報２５を送信するように構成されたものを例示した。しかし、本画像処理システムにおいて、複合機１０に相当する複数のデバイスが存在する状況となった際には、サービス定義情報２５を通知するデバイスを制限できることがセキュリティーの観点から望ましいといえる。そこで、ディレクトリサーバ２０は、所定の通知条件を満たすディレクトリからの要求に対してのみ、サービス定義情報２５を送信するように構成するとよい。このように構成すれば、ディレクトリサーバ２０は、所定の通知条件を満たすデバイスからの要求でなければ、サービス定義情報２５を送信することはないため、正規のデバイスからの要求のみが通知条件を満たすように構成しておくことにより、例えば、不正にサービス定義情報２５を取得することを目的とした要求に対してサービス定義情報２５を送信してしまう、といったことを防止できる。
【０２７４】
なお、この構成における「通知条件」としては、例えば、ディレクトリサーバ２０側で登録された特定のデバイスからの要求であること、ディレクトリサーバ２０との間で所定の認証手順に従って認証できたデバイスからの要求であること、などが考えられる。また、別の条件として、ディレクトリサーバ２０との通信状況が良好なデバイスであること、などが考えられる。この後者のためには、例えば、ディレクトリサーバ２０が、ネットワーク的な距離が最も近い距離となっているデバイスによる要求を受けた際に、サービス定義情報２５をデバイスに送信する、ように構成することが考えられる。
【０２７５】
このように構成すれば、ディレクトリサーバ２０は、ネットワーク的な距離が最も近い距離となっているデバイスによる要求を受けた際にサービス特定定義を通知するため、ネットワーク的な距離が近いことにより通信状況が最も良好であると推定されるデバイスのみにサービス特定情報を通知することができる。
【０２７６】
［本発明との対応関係］
以上説明した実施形態において、複合機１０が本発明における画像処理装置であり、機能サーバ３０が本発明におけるサービス提供手段およびサービス提供サーバであり、ディレクトリサーバ２０が本発明における特定情報通知手段および情報通知サーバである。
【０２７７】
また、サービス定義情報２５が本発明におけるサービス特定情報であり、サービス選択用画面が本発明におけるサービスリストである。
また、図２８におけるｓ６０８は、本発明における情報通知手段である。
【０２７８】
また、図５におけるｓ１１２，ｓ１３０は、本発明における通知要求手段であり、図１２におけるｓ２００２〜ｓ２０３０は、本発明におけるリスト作成手段およびリスト表示手段であり、図１６におけるｓ３１６〜ｓ３３６は、本発明におけるサービス指定手段であり、図１９におけるｓ４０８，図２０におけるｓ５０８は、本発明における提供要求手段であり、図１９におけるｓ４２８，図２０における５２８は、本発明における機能実現手段であり、図３４におけるｓ２３０２〜ｓ２３１８は、本発明における第１距離推定手段，第２距離推定手段であり、図３６におけるｓ２４０３は、本発明における第１順位変更手段，第２順位変更手段である。
【０２７９】
また、図２６におけるｓ８２８〜ｓ８３２，図２８におけるｓ１０１８〜ｓ１０２２，図２９におけるｓ１１１８〜ｓ１１２２は、本発明における提供実行手段である。
【図面の簡単な説明】
【０２８０】
【図１】画像処理システムの構成を示すブロック図
【図２】操作部の構成を示す図
【図３】サービス定義情報における各タグの定義付けを示す図
【図４】サービスＩ／Ｆ情報における各タグの定義付けを示す図
【図５】複合機による複合機処理を示すフローチャート
【図６】方法選択画面を示す図
【図７】ディレクトリサーバリストのデータ構造を示す図
【図８】サービス定義情報のデータ構造を示す図（１）
【図９】サービス定義情報のデータ構造を示す図（２）
【図１０】サービス定義情報格納用の記憶領域に情報が登録される様子を示す図
【図１１】サービス選択用画面を示す図（１）
【図１２】第１実施形態におけるサービス選択用画面生成処理を示すフローチャート
【図１３】サービス選択用画面を示す図（２）
【図１４】複合機によるセッション処理を示すフローチャート（１／２）
【図１５】複合機によるセッション処理を示すフローチャート（２／２）
【図１６】複合機によるＵＩジョブを示すフローチャート
【図１７】サービスＩ／Ｆ情報のデータ構造を示す図
【図１８】パラメータ入力用画面を示す図
【図１９】複合機による入力ジョブを示すフローチャート
【図２０】複合機による出力ジョブを示すフローチャート
【図２１】機能サーバによる機能サーバ処理を示すフローチャート（１／２）
【図２２】機能サーバによる機能サーバ処理を示すフローチャート（２／２）
【図２３】機能サーバによるセッション処理を示すフローチャート（１／２）
【図２４】機能サーバによるセッション処理を示すフローチャート（２／２）
【図２５】機能サーバによるＵＩジョブを示すフローチャート
【図２６】機能サーバによるスキャンジョブを示すフローチャート
【図２７】機能サーバによる印刷ジョブを示すフローチャート
【図２８】ディレクトリサーバによるディレクトリサーバ処理を示すフローチャート
【図２９】第２実施形態におけるサービス選択用画面生成処理を示すフローチャート
【図３０】サービス定義情報並び替え記憶領域に情報が格納される様子を示す図
【図３１】サービス選択用画面を示す図（３）
【図３２】第３実施形態における複合機による複合機処理を示すフローチャート
【図３３】第３実施形態における複合機によるサーバ優先度更新処理を示すフローチャート
【図３４】第４実施形態における複合機による複合機処理を示すフローチャート
【図３５】第４実施形態における複合機による複合機処理を示すフローチャート
【図３６】別の実施形態における複合機による複合機処理を示すフローチャート
【図３７】別の実施形態における複合機による複合機処理を示すフローチャート
【符号の説明】
【０２８１】
１０…複合機、１１…制御部、１２…操作部、１３…読取部、１４…記録部、１５…通信部、１６…記憶部、１７…音入力部、１８…音出力部、２０…ディレクトリサーバ、２１…制御部、２２…通信部、２３…記憶部、２４…サービス定義情報記憶部、２５…サービス定義情報、３０…機能サーバ、３１…制御部、３２…通信部、３３…記憶部、３４…サービスＩ／Ｆ情報記憶部、３５…サービスソフト記憶部、３６…サービスＩ／Ｆ情報、３７…サービスソフトウェア、４１…コピーキー、４２…スキャナキー、４３…ＦＡＸキー、４４…サービスキー、４５…設定キー、４６…方向キー、４８…方向キー、４９…右キー、５０…ＯＫキー、５１…キャンセルキー、５２…ディスプレイ。
【図１】
2006135695.tif 000003
【図３】
2006135695.tif 000004
【図４】
2006135695.tif 000005
【図５】
2006135695.tif 000006
【図６】
2006135695.tif 000007
【図７】
2006135695.tif 000008
【図８】
2006135695.tif 000009
【図９】
2006135695.tif 000010
【図１０】
2006135695.tif 000011
【図１１】
2006135695.tif 000012
【図１２】
2006135695.tif 000013
【図１３】
2006135695.tif 000014
【図１４】
2006135695.tif 000015
【図１５】
2006135695.tif 000016
【図１６】
2006135695.tif 000017
【図１７】
2006135695.tif 000018
【図１８】
2006135695.tif 000019
【図１９】
2006135695.tif 000020
【図２０】
2006135695.tif 000021
【図２１】
2006135695.tif 000022
【図２２】
2006135695.tif 000023
【図２３】
2006135695.tif 000024
【図２４】
2006135695.tif 000025
【図２５】
2006135695.tif 000026
【図２６】
2006135695.tif 000027
【図２７】
2006135695.tif 000028
【図２８】
2006135695.tif 000029
【図２９】
2006135695.tif 000030
【図３０】
2006135695.tif 000031
【図３１】
2006135695.tif 000032
【図３２】
2006135695.tif 000033
【図３３】
2006135695.tif 000034
【図３４】
2006135695.tif 000035
【図３５】
2006135695.tif 000036
【図３６】
2006135695.tif 000037
【図３７】
2006135695.tif 000038
【図２】
2006135695.tif 000039