JP5127414B2 - サービス提供装置及びその制御方法、コンピュータプログラム - Google Patents

サービス提供装置及びその制御方法、コンピュータプログラム Download PDF

Info

Publication number
JP5127414B2
JP5127414B2 JP2007300758A JP2007300758A JP5127414B2 JP 5127414 B2 JP5127414 B2 JP 5127414B2 JP 2007300758 A JP2007300758 A JP 2007300758A JP 2007300758 A JP2007300758 A JP 2007300758A JP 5127414 B2 JP5127414 B2 JP 5127414B2
Authority
JP
Japan
Prior art keywords
service
service providing
providing apparatus
external device
regular
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2007300758A
Other languages
English (en)
Other versions
JP2009129014A (ja
JP2009129014A5 (ja
Inventor
貴史 水野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2007300758A priority Critical patent/JP5127414B2/ja
Priority to US12/266,238 priority patent/US20090132707A1/en
Publication of JP2009129014A publication Critical patent/JP2009129014A/ja
Publication of JP2009129014A5 publication Critical patent/JP2009129014A5/ja
Application granted granted Critical
Publication of JP5127414B2 publication Critical patent/JP5127414B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5055Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering software capabilities, i.e. software resources associated or available to the machine

Description

本発明は、自身の持つ機能をサービスとして提供する機能を備えたサービス提供装置及びその制御方法、コンピュータプログラムに関するものである。
画像形成装置が高機能、多機能化してきており、ネットワークに接続されて、PCや他の画像形成装置などネットワーク上の装置から様々な機能が利用されるようになってきている。今までは、ステイプルを行うフィニッシャーや新規の用紙サイズなど、画像形成装置のハードウェア的に追加されたオプション機能をネットワーク上の他の装置から利用することが主であった。しかし、近年では、画像の色変換やフォーマット変換などを行う画像処理や、インターネットFAX送信などソフトウェア的な機能を画像形成装置がサービスとして提供し、他の装置から利用させる機会が増えている。高機能なサービスを提供する画像形成装置の機能を、当該機能を持たない他の画像形成装置から利用することで、当該機能を持たない他の画像形成装置からも、より高度な機能が利用できるようになる。
更には、画像形成装置内で処理を行うためのCPUなどのプロセッサの機能が向上している。従来であれば、専用半導体チップで処理していたものが、処理をソフトウェアとして画像形成装置内に保持しておき、ソフトウェアによって、汎用的なCPUを用いて処理を行うようになってきている。例えば、今までは、フォーマット変換のために画像処理を高速に行うための専用の半導体チップが用意され、それを用いてフォーマット変換処理を行っていた。しかし、近年では、フォーマット変換処理をソフトウェアとして画像形成装置内に保持しておき、汎用的なCPUを用いてフォーマット変換処理を実行する。
このようなソフトウェアは、ファームウェアとして組込まれたり、追加的なアプリケーションソフトウェアとして画像形成装置内のフラッシュメモリやハードディスクに記憶される。そのため、ハードウェア的な機能向上に比べ、ファームウェアやソフトウェアのバージョンアップ(更新)、追加インストールによって簡易に機能向上や新機能追加が行われる。
複数の画像形成装置がネットワークに接続された環境において、全ての機器のファームウェアやソフトウェアのバージョンアップを一括して行わないことがある。これは、動作している以前の環境を全て変える前に、限定した範囲内でのみバージョンアップを行って、安定して稼動するかを確認したい場合が考えられる。即ち、一台、あるいは一部の機器だけバージョンアップを行い、一定期間経た後に、全ての機器にバージョンアップを適用するといった場合であえる。また、有償の新機能の追加であって、当面は一部機器のみに新機能を追加して、後から他の機器にも適用すると言った場合もある。このように、ネットワーク上に複数の画像形成装置が存在する場合に、ファームウェアやソフトウェアのバージョンアップ、追加インストールによって、機器間で、機能の能力差が生じる場合がある。このような場合に、利用者は、機能の高い機器を利用しようとして、サービスとして提供される機能が高い特定の機器に集中してアクセスするようになる。そこで、特定の機器に負荷が集中しないように、複数の機器に負荷を分散させる仕組みが必要となる。
具体的な例を図5を用いて説明する。501、502、503は、サービスを提供する画像形成装置である。以下、自身の保有する機能をサービスとして提供する画像形成装置を「サービス提供装置」と呼ぶ。504、505、506、507、508、509は機能が限定された画像形成装置であり、サービス提供装置が提供しているサービスを利用する。このような、サービス提供装置で提供しているサービスを利用する画像形成装置を、以下、「サービス利用装置」と呼ぶ。図5は、これら画像形成装置501〜509がネットワークを介して互いに通信可能に接続された画像形成システムである。通常、サービス提供装置は、サービスを利用するサービス利用装置と共にグループ化される。利用者が、サービス提供装置で印刷した場合に印刷物を取りに行くことなどから、物理的に近いもの同士でグループ化される場合が多い。あるいは、負荷を分散するためにグループ化することもある。図5では、グループ510、511、512がある。グループ510は、サービス提供装置501とサービス利用装置504、505からなる。グループ511は、サービス提供装置502とサービス利用装置506、507からなる。グループ512は、サービス提供装置503とサービス利用装置508、509からなる。以下、図5と同一構成のものについては、同一符号を与える。
図5に示す画像形成システムにおいて、例えば、サービス提供装置501、502、503のファームウェア、あるいはソフトウェアがバージョン1.0であったとする。バージョン1.0とは、フォーマット変換機能として、スキャナで読み取った画像をPDFフォーマットに変換する機能をサービスとして提供可能であることを表す。このような場合であれば、各サービス利用装置は、それぞれのグループ内のサービス提供装置の機能を利用することになる。ここで、サービス提供装置501のファーウェアあるいはソフトウェアだけをバージョンアップして、バージョン2.0にしたとする。バージョン2.0では、新たに暗号化に対応したPDFを作成できるようになる。この場合、グループ511に含まれるサービス利用装置506の利用者は、暗号化に対応したPDFを作成しようとした場合、暗号化PDFの機能をサービスとして提供するサービス提供装置501へ接続する(図6 601)。即ち、サービス利用装置506が本来利用すべきサービス提供装置502ではないサービス提供装置を利用することになる。その後、サービス利用装置506の本来の接続先であるサービス提供装置502が、バージョンアップによって、ファームウェア(ソフトウェア)バージョン2.0になり、暗号化PDFの機能を利用できるようになったとする。しかし、この場合でも、サービス利用装置506の利用者は、サービス提供装置501を利用し続けることがある(図7 701)。なぜなら、利用者が、サービス提供装置502がバージョンアップされたことに気付かない可能性があるからである。その結果、ある画像形成装置に負荷が集中してしまう。
この問題に対して、画像形成装置の負荷を分散するために、全ての接続を受け付けるサーバ振り分け装置を用意し、サービス利用者のサービス利用実績に基づいて、サービス提供サーバを選択すると言うものがある。(例えば、特許文献1)。
特開2002−7749公報
しかしながら、上述した従来技術は、サービスを提供する装置以外に、別途管理サーバを用意する必要がある。また、装置間で、サービスの機能差が生じた場合に、機能が高い装置をユーザが意図して利用することができなくなる。即ち、装置間の機能差が無くなるまでの期間だけ、一時的に特定の装置のみを使わせた後に、機能差が無くなった時点で、元の接続先の装置に戻すといった制御ができない。
本発明は、このような問題を解決するためになされたものであり、サービスを提供するサービス提供装置が複数存在する場合に、特定のサービス提供装置にアクセスが集中してしまうことを防ぐことを目的とする。更に、特定のサービス提供装置のみが提供しているサービスがある場合には、サービス利用装置は、一時的に、そのサービス提供装置を利用することができるようにすることを目的とする。
上述した課題を解決するために、本発明は、外部装置にサービスを提供するサービス提供装置であって、前記サービス提供装置がサービスを提供すべき装置の情報をグループとして管理する管理手段と、外部装置から送信されたサービス要求を受信する受信手段と、前記受信手段が前記サービス要求を受信した場合に、前記外部装置が前記グループに含まれる装置であるか否かを判定する第1の判定手段と、前記第1の判定手段によって前記外部装置が前記グループに含まれると判定された場合に、前記サービス要求が示すサービスを前記外部装置に提供するサービス提供手段と、前記第1の判定手段によって前記外部装置が前記グループに含まれないと判定された場合に、前記外部装置にサービスを提供すべき正規のサービス提供装置が存在するか否かを判定する第2の判定手段とを備え、前記第判定手段によって前記正規のサービス提供装置存在しない判定された場合に、前記サービス要求が示すサービスを前記サービス提供手段が前記外部装置に提供し、前記第判定手段によって前記正規のサービス提供装置存在する判定された場合に、前記サービス要求が示すサービスを前記サービス提供手段が前記外部装置に提供しないことを特徴とする。
本発明によって、サービスを提供するサービス提供装置が複数存在する場合に、特定のサービス提供装置にアクセスが集中してしまうことを回避することが可能となる。また、特定のサービス提供装置のみが提供しているサービスがある場合に、サービス利用装置は、一時的にそのサービス提供装置を利用することが可能となる。
(実施例1)
以下、本発明の実施例1について図面を参照して詳細に説明する。
図1は、本発明の実施例を示す画像形成システムの全体の構成を説明するブロック図である。画像形成装置100は、画像入力デバイスであるスキャナ部2070、画像出力デバイスであるプリンタ部2095、Controller Unit 2000、ユーザーインターフェースである操作部2012から構成される。スキャナ部2070、プリンタ部2095、操作部2012は、それぞれController Unit 2000に接続され、Controller Unit 2000は、LAN 2011などのネットワーク伝送手段、公衆回線等に接続されている。公衆回線からはカラー画像送信を含むG3、G4ファックスによる送受信が可能である。また、LAN 2011には、画像形成装置100と同様の機器構成をもつ他の画像形成装置120、130が接続されえている。また、パーソナルコンピュータ(以下PC)140が接続されていて、FTP、SMBプロトコルなどを使用したファイルの送受信、電子メールの送受信ができる。画像形成装置120、130は、それぞれスキャナ部2270、2370、プリンタ部2295、2395、操作部2212、2312を持ち、それらがController Unit 2200、2300に接続されている。
図2は、画像形成装置の構成を説明するブロック図である。Controller Unit 2000は画像情報やデバイス情報の入出力を行う為のコントローラである。Controller Unit 2000は、画像入力デバイスであるスキャナ2070や画像出力デバイスであるプリンタ2095と接続され、一方ではLAN2011や公衆回線(WAN)2051と接続される。CPU2001はシステム全体を制御するコントローラである。RAM2002はCPU2002が動作するためのシステムワークメモリであり、画像データを一時記憶するための画像メモリでもある。また、オペレーティングシステムやシステムソフトウェア、アプリケーショソフトウェアなどのプログラムを動作させるために配置されることもある。ROM2003はブートROMであり、システムのブートプログラムが格納されている。また、システムプログラムやアプリケーションプログラムが格納されている場合もある。HDD2004はハードディスクドライブで、システムソフトウェア、アプリケーションソフトウェア、画像データ等を格納する。また、これらに限らず、画像管理のためのデータなどの画像以外の一般データファイルや画像形成装置で管理するデータを格納することができる。画像形成装置で管理するデータとしては、例えば、どの利用者が、いつ、どのような機能を利用したかを記録する「接続ログ」などがある。操作部I/F2006は操作部(UI)2012とインターフェース部で、操作部2012に表示する画像データを操作部2012に対して出力する。また、操作部2012から本システム使用者が入力した情報を、CPU2001に伝える役割をする。Network2010はLAN2011に接続し、情報の入出力を行う。Modem2050は公衆回線2051に接続し、画像情報の入出力を行う。以上のデバイスがシステムバス2007上に配置される。Image Bus I/F2005はシステムバス2007と画像データを高速で転送する画像バス2008を接続し、データ構造を変換するバスブリッジである。画像バス2008は、PCIバスなどで構成される。画像バス2008上には以下のデバイスが配置される。ラスターイメージプロセッサ(RIP)2060はPDLコードをビットマップイメージに展開する。デバイスI/F部2020は、画像入出力デバイスであるスキャナ2070やプリンタ2095とコントローラ2000を接続し、画像データの同期系/非同期系の変換を行う。スキャナ画像処理部2080は、入力画像データに対し補正、加工、編集を行う。また入力された画像がカラー原稿か白黒原稿かを画像の彩度信号から判断しその結果を保持する機能を有する。プリンタ画像処理部2090は、出力画像データに対し補正、加工、編集を行う。画像回転2030はスキャナ画像処理と連携して、スキャナからの画像読み込みと同時に画像を回転しメモリ上に格納する。また、メモリ上にある画像を回転し、メモリ上に格納、もしくはメモリ上にある画像をプリンタ画像処理部と連携して回転しながら印字出力することができる。解像度変換2031はメモリ上にある画像を解像度変換処理し、メモリ上に格納する。色空間変換2032はマトリクス演算により、たとえばメモリ上にあるYUV画像をLab画像に変換し、メモリ上に格納する。階調変換2033はたとえばメモリ上にある8bit、256階調の画像を誤差拡散処理などの手法により1bit、2階調に変換し、メモリ上に格納する。画像圧縮部2040は、多値画像データはJPEG、2値画像画像データはJBIG、MMR、MR、MHの圧縮伸張処理を行う。画像回転2030、解像度変換2031、色空間変換2032、階調変換2033、画像圧縮2040はそれぞれ連結して動作することが可能で、たとえばメモリ上の画像を画像回転、解像度変換する場合は、両処理をメモリを介さずに行うことができる。
ここで、上記の説明においては、画像回転などの画像処理は、画像バス2008に接続されたデバイスで行っている。ただし、HDD2004やROM2003に画像処理のソフトウェアを格納しておき、RAM2002に読み込んで、CPU2001で実行するようにしてもよい。なお、実行するソフトウェアは、画像処理に限らず、画像形成装置で必要となる他の処理でも構わないのは、言うまでもない。また、ROM2003に格納されたプログラムは、RAM2002に読み込まずに実行してもよい。
画像形成装置の外観図を図3に示す。画像入力デバイスであるスキャナ部2070は、原稿となる紙上の画像を照明し、CCDラインセンサ(図示せず)を走査することで、ラスターイメージデータ2071として電気信号に変換する。原稿用紙は原稿フィーダ2072のトレイ2073にセットされる。装置使用者が操作部2012から読み取り起動指示をすると、コントローラCPU2001はスキャナ2070に指示を与え(2071)。そして、フィーダ2072は原稿用紙を1枚ずつフィードし原稿画像の読み取り動作を行う。画像出力デバイスであるプリンタ部2095は、ラスターイメージデータ2096を用紙上の画像に変換する部分である。その方式は感光体ドラムや感光体ベルトを用いた電子写真方式、微少ノズルアレイからインクを吐出して用紙上に直接画像を印字するインクジェット方式等があるが、どの方式でも構わない。プリント動作の起動は、コントローラCPU2001からの指示2096によって開始する。プリンタ部2095には、異なる用紙サイズまたは異なる用紙向きを選択できるように複数の給紙段を持ち、それに対応した用紙カセット2101、2102、2103、2104がある。また、排紙トレイ2111は印字し終わった用紙を受けるものである。
操作部2012の構成を図4に示す。LCD表示部2013は、LCD上にタッチパネルシート2019が貼られており、システムの操作画面およびソフトキーを表示するとともに、表示してあるキーが押されるとその位置情報をコントローラCPU2001に伝える。スタートキー2014は原稿画像の読み取り動作を開始する時などに用いる。スタートキー2014中央部には、緑と赤の2色LED2018があり、その色によってスタートキー2014が使える状態にあるかどうかを示す。ストップキー2015は稼働中の動作を止める働きをする。IDキー2016は、使用者のユーザーIDを入力する時に用いる。リセットキー2017は操作部からの設定を初期化する時に用いる。当然ながら、画像形成装置の構成は、本発明の要件を満たすものであれば、図2、図3、図4に記載されたものに限定されるものではない。
ここで、画像形成装置の性能を向上させたり、機能を追加するために実行されるファームウェア、ソフトウェアのバージョンアップについて述べる。本発明においては、ファームウェアとソフトウェアは、ともに機能を実現するためのプログラムであり、同義のものとする。以下においては、ソフトウェアと呼んで説明するが、ファームウェアとしてもよい。バージョンアップするソフトウェアは、ROM2003やHDD2004に格納されている。ここで、ROM2003は、書き換え可能なEEPROM(Electronically Erasable and Programmable Read Only Memory)などであるとする。ネットワーク2010で接続された外部サーバなどや、不図示である外部との接続I/Fに接続された機器経由で、アップデータを受け取り、ROM2003やHDD2004に格納されているソフトウェアを上書きして、更新する。あるいは、機能追加の場合であれば、新たにソフトウェアを追加する。
本発明におけるサービス提供装置について説明する。サービス提供装置は、自身の持つ機能をサービスとして他の機器に対して提供する装置であり、MFPやプリンタ等の画像形成装置や、PC等の情報処理装置である。本実施例では、サービス提供装置が画像形成装置の場合を例に説明するが、サービス提供装置はPC等の情報処理装置であっても構わない。サービス提供装置は、サービスの依頼をネットワークから受け付ける。これは、例えば、WebServiceなどの技術を用いても構わないし、独自のプロトコルを用いてもよい。サービスとは、サービス提供装置が備える機能のうち外部に提供している機能である。つまり、ソフトウェアによって提供されるサービスもあれば、ハードウェアによって提供されるサービスも存在する。即ち、PDF変換等の画像処理機能もサービスであり、ファクシミリ送受信機能やステイプル機能、両面印刷機能もサービスの一種である。以下において、機能のバージョンとサービスのバージョンは同義であり、これは、サービス提供装置が有するソフトウェアのバージョンと同義である。サービス提供装置は、他の機器に対してサービスを利用させた場合、提供したサービス毎に、サービスを利用したサービス利用装置を特定する識別情報と、利用した日時を「接続ログ」に記録する。サービス利用装置とは、サービス提供装置が提供するサービスを利用する装置であり、MFPやプリンタ等の画像形成装置や、PC等の情報処理装置である。本実施例では、サービス利用装置が画像形成装置の場合を例に説明するが、サービス利用装置はPC等の情報処理装置であっても構わない。サービス利用装置を特定する識別情報とは、例えばIPアドレスやMACアドレスなどである。なお、接続ログに記録する項目は、この限りでなく他の項目を含んでも構わない。具体的な例については、後述する。
サービス提供装置は、サービス利用装置から特定のサービスに対して利用要求を受けたとき、当該サービスに対する自身の接続ログを確認する。
そして、当該サービス利用装置から当該サービスに対して、以前に利用があったかを判定する。利用されたことが無ければ、ネットワーク上の他のサービス提供装置に対して、当該サービス利用装置の識別情報と、当該サービスの利用の有無とをブロードキャストを利用して問い合わせる。問い合わせの方法は、ブロードキャストに限らず、予め指定された機器に問い合わせるなど、問い合わせを行うことが可能であれば他の方法でも構わない。
問い合わせの結果、当該サービス利用装置が当該サービスを利用したことがある他のサービス提供装置がネットワーク上に存在した場合には、当該サービスのバージョンを比較する。他のサービス提供装置の方が当該サービスのバージョンが低い場合には、自身が当該サービス利用装置にサービスを提供する。一方、他のサービス提供装置が当該サービスのバージョンが同等又は高かった場合には、サービス利用装置に対して、当該他のサービス提供装置を利用させる。以下、図を用いて具体的に例を挙げて説明する。
図8を用いて、サービス利用装置が、他のグループのサービス提供装置の機能を利用する場合についての一例について説明する。図8は、サービス利用装置506がサービス提供装置501でサービスとして提供されている機能を利用する場合の図である。
まず、801で示すように、サービス利用装置506からサービス提供装置501に対して、利用したいサービスを指定して、サービスの実行を依頼する。このときに、サービス実行の依頼を受けた、サービス提供装置501は、サービス利用装置506を特定する識別情報として、ネットワークカードに割当てられたMACアドレスを得る。なお、識別情報は、サービス利用装置を一意に特定できるものであれば、MACアドレスに限らず他の情報でも構わないことは言うまでもない。
サービス提供装置501は、当該サービスに対する接続ログを確認し、当該サービス利用装置のMACアドレスで接続されたことがあるかを判定する。接続されたことがあれば、グループ内の機器であると判定して、サービス利用装置に対して、要求されたサービスを利用させる。その後、当該サービスの接続ログに、サービス利用装置の識別情報と利用日時を正規の利用として記録する。
図8の例は、サービス利用装置506からのサービスの要求であるが、他のサービス利用装置からのサービスの要求に対しても、サービス提供装置は同様に動作する。例えば、サービス利用装置504からの要求であり、以前に接続があった場合、サービス提供装置501の当該サービスの接続ログに、サービス利用装置504の識別情報と利用日時を正規の利用として記録する。
接続ログに記録する内容は、一例であり、この限りではない。図12に、当該サービスの接続ログの記載の一例を挙げる。例えば、1201は、サービスを利用した接続元の機器(サービス利用装置)を識別できる情報であり、この例においては、MACアドレスが記載されている。以下、図中では、本情報を接続元識別情報とする。1202には、サービスを利用した日時が記されている。1203は、後述する一時利用であるかどうかを判別するフラグである。1204は、1201で示される接続元識別情報のサービス利用装置が本来利用すべきサービス提供装置の識別情報が記載される。1204の情報については、以下、図中では、正規接続先識別情報とする。図12の例では、グループ内の機器からのアクセスで、以前に利用があったので、一時的な利用ではない。そのため、このフラグは「オフ(−)」となり、本来利用すべき正規サービス提供装置の識別情報は記載されない(1205)。
なお、本実施例では、サービス毎に接続ログを持っているが、この限りでない。利用したサービス、サービス利用装置を特定できる識別情報、サービス利用日時、及び、一時的な利用かどうかを判別できるフラグ、本来利用すべき正規サービス提供装置の識別情報を取得できるものであればよい。例えば、全ての接続について記録する接続ログを持っていて、その項目として、サービスを特定できる情報が記載される形態でも構わない。あるいは、本来利用すべき正規サービス提供装置の識別情報の記載の有無で、利用が一時的な利用かどうかを判別できるフラグにするような仕組みでも構わない。
サービス提供装置501において、サービス利用装置506から要求されたサービスに対する接続ログが確認される。その結果、サービス利用装置506のMACアドレスが当該サービスの接続ログに含まれていなければ、接続されたことが無いと判定される。すると、サービス提供装置501は、ネットワーク上の他のサービス提供装置に対して、当該サービスがサービス利用装置506から利用されたことがあるか否かを問い合わせる(802)。
問い合わせを受けた他のサービス提供装置502、503は、それぞれ、自身の当該サービスの接続ログを確認して、サービス利用装置506のMACアドレスが当該サービスの接続ログに含まれているか否かを判定する。そして、判定の結果を問い合わせの依頼のあったサービス提供装置501へ返す。このとき、応答を行ったサービス提供装置のMACアドレスやIPアドレスなどの識別情報、及び当該サービスにおける接続の有無だけなく、当該サービスのバージョンも同時に返される。図8の例では、サービス提供装置502が、サービス利用装置506からの接続があり、サービスのバージョンは、1.0であることを返信している(803)。また、サービス提供装置503は、サービス利用装置506からの接続が無かったことを返信している(804)。
次に、当該サービスでサービス利用装置の利用の有無が問い合わせられた結果、複数のサービス提供装置からサービス利用装置からの利用があった旨の応答があった場合について、図17を用いて説明する。
本実施例では、複数のサービス提供装置の中から使用するサービス提供装置を特定する方法の一例として、バージョン番号、接続頻度、最終アクセス日時を元に決めるものとして説明する。なお、図17において、図8と同等である部分については、図8と同じ符号を付しており、説明は省略する。
図17の802において当該サービスでサービス利用装置506の利用の有無が問い合わされると、他のサービス提供装置502、503は、それぞれ自身の当該サービスの接続ログを確認する。そして、当該サービス利用装置506のMACアドレスからの接続の有無を判定する。そして、判定の結果を問い合わせの依頼のあったサービス提供装置501へ返す。このとき、応答を行ったサービス提供装置の識別情報、及び当該サービスにおける接続の有無、当該サービスのバージョンに加えて、当該サービスの接続頻度(使用回数)、最終アクセス日時が返される。図17の例では、サービス提供装置502が、当該サービスでの接続があり、サービスのバージョンは、1.0であり、接続頻度は15回、最終アクセス日時は、2007年5月1日14時21分43秒である(1701)。サービス提供装置503は、当該サービスでの接続があり、サービスのバージョンは、1.0であり、接続頻度は24回、最終アクセス日時は、2007年2月3日19時53分11秒である(1702)。
図17の例では、サービス提供装置502、503共にバージョン1.0を返しているが、もしバージョンが異なる場合は、より高いバージョンのサービスを提供するサービス提供装置が選択されることになる。1701、1702に示したように同一のバージョンの場合には、接続頻度または最終アクセス日時またはその両方によって、サービス利用装置に対する正規の接続先を決定する。例えば、接続頻度によって決定するのであれば、1702にあるようにサービス提供装置503が24回と多いため、サービス提供装置503が選択される。また、最終アクセス日時によって決定するのであれば、1701にあるようにサービス提供装置502が2007年6月11日5月1日14時21分43秒と一番最近アクセスされたため、サービス提供装置502が選択される。また、頻度や日時に対して閾値を設けて、それ以上(日時であればそれ以後)であるサービス提供装置を優先して選択してもよい。または、頻度と日時に関して重み付けを行ったアクセス度数を表す関数を定義して、その値に応じて接続先のサービス提供装置を決定してもよい。アクセス度数の計算式として、例えば、
Figure 0005127414
のようなものを利用してもよい。現在時刻やアクセス日時は、例えば、公知の方法である1970年1月1日からの通算秒で表すような仕組みなどを用いる。
図9では、サービスに対してサービス利用装置が利用したことのある他のサービス提供装置(すなわち、正規サービス提供装置)が存在するが、提供するサービスのバージョンが古い場合について説明する。サービス提供装置501は、サービス提供装置502から前述した803の返答を受信すると、提供しているサービスのバージョンが異なることを判別する。つまり、サービス利用装置506からサービスの依頼のあったサービス提供装置501のサービスに対応する機能のソフトウェアのバージョンは、2.0である。一方、サービス利用装置506から当該サービスで接続されたことがあるサービス提供装置502のサービスに対応する機能のソフトウェアのバージョンは、1.0であり、バージョンが異なっている。サービス提供装置501は、自身のバージョンの方が高いため、サービス提供装置502に対して、当該サービスのバージョンアップが行われたら、サービス提供装置501に通知するように指示する(901)。そして、サービス利用装置506には、自身のサービスを一時利用として使用させる(902)。サービス提供装置501は、サービス利用装置506に、当該サービスを一時的に利用させているだけである。従って、サービス提供装置501の当該サービスの接続ログに、サービス利用装置の識別情報と利用日時と共に、一時利用であることを記録する。図13に、この場合のサービス提供装置506の接続ログの例を示す。サービスを利用した接続元を特定できる識別情報(接続元識別情報)、サービス利用日時に関する情報は、それぞれ1301、1302である。一時利用フラグは、1303で示すように「オン(○)」となり、サービス利用装置506が本来利用すべき正規サービス提供装置502の識別情報(正規接続先識別情報)が1304に記載される。1304では、一例として、サービス提供装置502のMACアドレスが記載される。
ここで、サービス提供装置502は、当該サービスのバージョンアップ時にその旨をサービス提供装置501に通知するために、図11に示すテーブルを管理している。即ち、通知すべきサービスの名称1103、バージョン番号1104、通知先のサービス提供装置を示すIPアドレス1105を管理する。図11には、1101と1102の2つの設定がある。
1101は、サービス提供装置501がサービス提供装置502に対して、サービス「PDF変換」のバージョンが「2.0」以上であるときに、通知を依頼していることを示している。ここで、サービス提供装置501のIPアドレスは、「172.16.10.153」であるとする。サービス提供装置502は、1101に従って、「PDF変換」のバージョンが「2.0」以上であるときに、通知先「172.16.10.153」にその旨を通知することになる。なお、設定項目は、この限りでなく、例えば、サービス名称でなく、サービスを一意に特定できるサービスIDでも構わないし、通知先を特定できる情報も一意に特定できるものであれば構わない。サービスも一つだけなく、複数、システム全体のバージョンアップなどでも構わない。あるいは、通知先を複数登録できるようになっていても構わない。バージョン番号も指定した番号以上、指定した番号以下、指定したものと同一番号、範囲指定などバージョン番号の条件を設けても構わない。これを実現するためには、例えば、図11において、バージョン番号の指定に加えて、条件指定のフィールドを設けることで実現できる。すなわち、本発明では、機能のバージョンが更新されたことを通知できる仕組みであれば構わない。なお、図11の例では、バージョン番号の条件についての指定が無いが、指定した番号以上のものとしている。
図10では、正規サービス提供装置のバージョンが上がった場合についての処理の一例について説明する。前述の図9の901で記したように、サービス提供装置502には、当該サービスのバージョンが更新されたときに、サービス提供装置501へ通知するように設定されている。従って、サービス提供装置502の当該バージョンが上がったとき、サービス提供装置502は、バージョンが更新された旨のメッセージをサービス提供装置501へ送信する(1001)。メッセージの内容は、サービス名称、当該サービスのソフトウェアのバージョン番号、メッセージ送信元を識別できる情報(例えば、MACアドレスなど)である。当該サービス、当該サービスのソフトウェアのバージョン番号、メッセージ送信元を識別できる情報であれば、これらに限らないのは言うまでもない。
当該サービスのソフトウェアのバージョンがアップしたときの確認は、先に図11で示した通知先設定を確認し、対応するサービスのバージョンが通知すべきバージョンに達していたら、通知先にメッセージを送ることになる。例えば、1101に示される要件(「PDF変換」のソフトウェアがバージョン「2.0」以上である)をサービス提供装置502が満たしたときに、IPアドレスの172.16.10.153宛てに、メッセージの送信を行う。メッセージ通信の仕組みは、本実施例の本質ではないため詳細な説明は省略するが、メッセージ交換が行えるプロトコルを用いればよい。サービス提供装置502は、バージョンアップのメッセージを受信したことに対する応答をサービス提供装置501から受信する(1002)。その後、サービス提供装置502は、当該サービスに対する情報を図11の通知先設定から削除する。図11の例においては、1101が削除される。なお、サービス提供装置501から応答メッセージが無い場合は、通知先設定から削除せずに、一定時間毎にバージョンアップ通知のメッセージの再送信を行う。電源が切れていたり、ネットワーク等の障害などによって、サービス提供装置501がバージョンアップ通知のメッセージを受信していない可能性があるためである。
バージョンアップ通知のメッセージを受け取ったサービス提供装置501は、メッセージに含まれる当該サービス名称から接続ログを特定し、メッセージに含まれる識別情報が当該サービスに対する接続ログに含まれるか検索する。このときに、接続ログの一時利用フラグが「オン(○)」であるものが検索対象となる。例えば、図13であれば、1305がマッチする。その後、接続ログ中の、サービスを利用したサービス利用装置の接続元識別情報を用いて、サービス利用装置506に対して、当該サービスの接続先の変更を依頼する(1003)。即ち、サービス利用装置506に対して、当該サービスを利用するための接続先を、サービス提供装置501からサービス提供装置502に変更するように依頼する。これを受けたサービス利用装置506は、当該サービスの接続先を自動的に変更する。または、接続先変更の問い合わせの画面を図4に示したLCD表示部に表示して、利用者に選択させるようにしても構わない。つまり、このときだけ、一時的に利用して、その後の接続先は、変更するようにしてもよい。
サービス利用装置506では、当該サービスの接続先変更処理を実行すると、変更完了通知をサービス提供装置501へ送信する(1004)。サービス提供装置501では、変更完了通知によって、当該サービスの接続ログの一時利用フラグを「接続先変更完了(×)」と変更する。これにより、以後の接続ログの検索において、当該サービスのログを検索対象とならないようにする(図14の1401)。本実施例では、接続ログ中の識別情報として、MACアドレスを用いており、IPアドレスへの変換処理を行っているが、IPアドレスを識別情報として用いたり、MACアドレスと共にIPアドレスを記録するようにしてもよい。また、接続ログの一時利用フラグを確認して、正規サービス提供装置、及び、サービスの変更先通知を行うサービス利用装置を特定しているが、別途対応を記載したテーブルを用意して、管理するようにしてもよい。
次に、先に説明した図8中の802の問合せの結果、他の全てのサービス提供装置から、サービス利用装置506からの利用が無いと返答された場合について説明する。この場合は、サービス利用装置506が、ネットワークでアクセスできる範囲内の当該サービスを提供しているサービス提供装置の当該サービスの機能を初めて利用することになる。サービス提供装置501は、サービス利用装置506に、自身のサービスを使用させる。ここで、サービス提供装置501の当該サービスの接続ログに、サービス利用装置の識別情報と利用日時とを記録する。先の図9の902で示した例と異なり、この場合は、一時利用で無く、正式な利用となる。接続ログは、先の図12の1205で示したものと同様に、一時的な利用ではないため、このフラグは「オフ(−)」となり、本来利用すべき正規サービス提供装置の識別情報は記載されない。
更に別の例として、説明した図8中の802の問合せの結果、サービス提供装置502が、当該サービスでの接続があり、サービスのバージョンは、2.0であると返答した場合について説明する。尚、サービス提供装置503は、当該サービスでの接続が無かったと返答する。この場合は、サービス利用画像提供装置506が、以前にサービス提供画像装置502の当該サービスの機能を利用していた場合である。且つ、サービス利用画像提供装置506の要求してきたサービス提供装置501と同一バージョンの機能を提供しているケースである。つまり、この場合は、サービス利用装置506は、サービス提供装置502を利用しなければならない。そのため、サービス提供装置501は、サービス利用装置506に対して、当該サービスの接続先の変更を依頼する。サービス利用装置506では、当該サービスの接続先変更処理を実行して、変更完了通知をサービス提供装置501へ送信する。ここで、サービス利用装置506は、当該サービスの接続先を自動的に変更する。または、接続先変更の問い合わせの画面を図4に示したLCD表示部に表示して、利用者に選択させるようにしても構わない。つまり。このときだけ、一時的に利用して、その後の接続先は、変更するようにしてもよい。なお、この例では、問い合わせを行ったサービス提供装置501と問い合わせに対して返答したサービス提供装置502が同一バージョンであるものであったが、より高いバージョンであった場合も同様である。
図15を用いて、本実施例におけるサービス提供装置の動作を示すフローチャートを説明する。図15に示す各ステップは、サービス提供装置のControl Unit2200が備えるCPU2001が、メモリに記憶されたプログラムを実行することによって行なわれる。
S1501では、サービス提供装置は、所定のサービスが指定されたサービス要求をサービス利用装置から受信する。S1502では、サービス提供装置は、サービス提供装置自身がS1501で指定されたサービスを提供しているか否か判定する。提供していれば、S1504へ進み、提供していなければ、S1503へ進む。S1503では、サービス提供装置は、指定されたサービスを提供していないため、接続の拒否をサービス利用装置へ返答して、処理を終了する。S1504では、サービス提供装置は、S1501で受信した接続要求に含まれる、サービス利用装置を特定する識別情報を取得する。この識別情報は、例えば、サービス利用装置のIPアドレスやMACアドレスなどである。
S1505では、サービス提供装置は、自身で管理している接続ログのうちS1501で指定されたサービスの接続ログに、S1504で取得したサービス利用装置の識別情報が含まれるか判断する。含まれていれば、S1519へ進み、含まれていなければ、S1506へ進む。S1506では、サービス提供装置は、S1504で取得した識別情報で特定されるサービス利用装置からの利用があったどうかを、ネットワーク上の他のサービス提供装置に対して問い合わせる。具体的には、S1501で指定されたサービス、S1504で取得した識別情報を、ネットワーク上の他のサービス提供装置に送信する。
S1507では、サービス提供装置は、S1506における問い合わせに対する他のサービス提供装置からの応答を受ける。応答には、応答したサービス提供装置のMACアドレスやIPアドレスなどの識別情報、当該サービスにおける接続の有無、及び当該サービスのバージョンが含まれる。なお、問い合わせを受ける一例として、問い合わせた全てのサービス提供装置からの応答を待ったり、あるいは、一定時間のタイムアウトを設けることで応答を受信する。
S1508では、サービス提供装置は、S1507で返された全ての応答を確認する。そして、他のサービス提供装置のうちで、S1504で取得した識別情報で特定されるサービス利用装置からの利用があったサービス提供装置があるかどうかを判断する。即ち、S1504で取得した識別情報で特定されるサービス利用装置に対する正規サービス提供装置が存在するか否かを判断する。
そして、存在すれば、S1509へ進み、存在しなければ、S1520へ進む。
S1520では、サービス提供装置は、自身が管理する接続ログの接続元識別情報の欄に、S1504で取得した識別情報を書込む。また、アクセス日時を書込む。また、この場合は、サービス提供装置自身が、このサービス利用装置の正規サービス提供装置となるので、一時利用フラグの欄には、「オフ(−)」が書込まれる。S1520の処理の後、S1519へと進む。S1509では、サービス提供装置は。S1508で見つけた正規サービス提供装置の、S1501で指定されたサービスのバージョンが、自身のサービスのバージョンと同じ或いは高いか否かを判断する。そして、同じ又は高い場合にはS1510へ進み、低い場合にはS1514へと進む。
S1510では、サービス提供装置は、S1508で見つけられた正規サービス提供装置が2台以上存在するかどうか判定する。2台以上存在する場合には、S1511へ進み、1台のみの場合は、S1512へ進む。S1511では、サービス提供装置は、先に説明したように、当該サービスのバージョンや接続頻度、最終アクセス日時などの基準に基づいて、接続先のサービス提供装置を選択し、S1512へ進む。S1512では、サービス提供装置は、サービス利用装置に対して、接続先をS1508で見つけられた又はS1511で選択された正規サービス提供装置に変更しても構わないかどうかを問い合わせる。サービス利用装置が本来接続すべき正規サービス提供装置が、サービス利用装置が所望するサービスを提供しているためである。S1513では、サービス提供装置は、S1512の問い合わせに対するサービス利用装置からの応答を受信する。接続先変更が許諾された場合は処理を終了し、一方、接続先変更が拒否されれば、S1518へ進む。
S1518では、サービス提供装置は、自身が管理する接続ログに、S1504で取得した識別情報と一時利用である旨を書込み、接続ログを更新する。具体的には、一時利用のフラグは「接続先変更完了(×)」となり、正規接続先識別情報の欄には、S1508で見つかった、又はS1511で選択されたサービス提供装置の識別情報が書込まれる。また、アクセス日時を書込む。また、この場合は、ユーザが意図的に正規サービス提供装置以外のサービス提供装置を使おうとする場合であるので、正規サービス提供装置からのバージョンアップ通知は必要ない。
S1514では、サービス提供装置は、S1508で見つけられた正規サービス提供装置が2台以上存在するかどうか判定する。2台以上存在する場合には、S1515へ進み、1台のみの場合は、S1516へ進む。S1515では、サービス提供装置は、先に説明したように、当該サービスのバージョンや接続頻度、最終アクセス日時などの基準に基づいて、接続先のサービス提供装置を選択し、S1516へ進む。S1516では、サービス提供装置は、S1508で見つかった、又はS1515で選択された正規サービス提供装置に対して、当該サービスのバージョンアップ時に通知するように依頼を行う。具体的には、正規サービス提供装置に対して、通知すべきサービスの情報と通知すべきバージョンを示す情報を送信する。これを受けた正規サービス提供装置では、該当するサービスのバージョンが、指定されたバージョンになった場合に、サービス提供装置に対してバージョンアップの通知を送信することになる。
S1517では、サービス提供装置は、自身が管理する接続ログに、S1504で取得した識別情報と一時利用である旨を書き込み、接続ログを更新する。具体的には、一時利用のフラグは「オン(○)」となり、正規接続先識別情報の欄には、S1508で見つかった、又はS1515で選択されたサービス提供装置の識別情報が書込まれる。また、アクセス日時を書込む。S1519では、サービス提供装置は、要求されたサービスをサービス利用装置に対して提供する。
図16は、サービス提供装置が、バージョンアップ通知をサービス利用装置の本来の接続先である正規サービス提供装置から受け取った場合の処理について説明したフローチャートである。図16に示す各ステップも、図15と同様、サービス提供装置のControl Unit2200が備えるCPU2001が、メモリに記憶されたプログラムを実行することによって行なわれる。
S1601では、サービス提供装置は、特定のサービスに関してのバージョンアップ通知を当該サービスの本来の接続先である正規サービス提供装置から受信する。なお、バージョンアップの通知は、先に説明した図15のS1516での登録に従って行われる。
S1602では、サービス提供装置は、自身が管理する接続ログを参照し、当該サービスに対するサービス利用装置を特定する。具体的には、図13の接続ログにおいて、一時利用フラグが「○」であるものの中から、S1601のバージョンアップ通知の送信元が正規接続先識別情報である接続元識別情報に対応するサービス利用装置を特定する。
S1603では、サービス提供装置は、S1602で特定されたサービス利用装置に対して、接続先変更要求を送信する。これは、このサービス利用装置が本来使用していたサービス提供装置が、当該サービスにおいてもバージョンがアップしたことにより、使用可能になったことを通知するものである。
S1604では、サービス提供装置は、S1603の要求に対して、サービス利用装置において接続先変更が許可されたか否かを判断する。ここでは、S1603において送信された要求に対する応答が返ってきたことによって、許可されたとみなしてもよい。又は、S1603において送信された要求によって、サービス利用装置において接続先変更の許可/禁止を選択させる画面を表示し、ユーザの選択に応じて、許可又は禁止を示す応答をサービス利用装置が送信するものとする。その結果をもって、許可/禁止を判断するようにしてもよい。また、S1603において要求が送信されてから、一定時間応答がなかった場合には、接続先変更が許可されなかったものと判断してもよい。
S1604において接続先の変更が許可されたと判断された場合、S1605に進み、サービス提供装置は、自身が管理する接続ログを更新する。具体的には、図13に示す一時利用フラグ「○」1303を、図14に示すように接続先変更完了を示す「×」1401に更新する。
尚、一時利用させたサービス提供装置の機能のバージョンがより高く上がることがある。例えば、図6の例において、サービス提供装置501のバージョンが2.0、サービス提供装置502のバージョンが1.0である。このようなときに、本実施例では、サービス利用装置506がサービス提供装置501の機能をサービスとして利用している。そして、サービス提供装置502には、図11の1104で示すように当該サービス(機能)のバージョンが上がったら通知されるようにテーブルとして設定されている。このような場合に、更にサービス提供装置501のバージョンが上がり、3.0になってしまうような場合がある。このような場合には、サービス提供装置501が、ブロードキャストなどを利用して、他のサービス提供装置に対して、自身のバージョンアップを通知する。そして、この通知を受けたサービス提供装置501正規サービス提供装置(この例では、502)が、通知用のテーブルを書き換えるようにする。例えば、図18の1801のようにバージョンを書き換える。
以上説明したように、本実施例では、サービス提供装置は、サービス利用装置からのサービス要求に対して、当該サービス利用装置が本来使用するべき他のサービス提供装置へ接続先を変更することができる。また、サービス利用装置が要求するサービスのバージョンが当該サービス利用装置が本来使用するべきサービス提供装置よりも高い場合には、一時的にサービス提供装置を使用させることもできる。
これにより、サービス利用装置からのサービスの利用が、一部のサービス提供装置に偏ってしまうことを防ぐことができる。更に、各サービス提供装置の機能に差がある場合には、一時的に高機能のサービス提供装置をサービス利用装置に利用させることもできる。
(実施例2)
上記第1の実施例では、サービス提供装置は、サービス利用装置から要求されたサービスに関して、接続ログを参照し、過去に使用されたことがあるかどうかを判断していた。つまり、サービス利用装置から要求されたサービスを使用されたことがないサービス提供装置は、たとえその他のサービスを使用されたことがあっても、正規サービス提供装置とはならなかった。
第2の実施例においては、サービス利用装置から要求されたサービスを使用されたことはないものの、他のサービスは当該サービス利用装置から使用されたことがあるようなサービス提供装置が存在する場合を考える。
例えば、有償で提供される機能をある特定のサービス提供装置にのみインストールしているような場合、特定のサービス提供装置しかその機能をサービスとして提供していないため、そのサービス提供装置にアクセスが集中する。しかし、他のサービス提供装置が、そのサービスの機能を提供すれば、接続先を変えるべき正規サービス提供装置が存在することになる。つまり本来の接続先の正規サービス提供装置に機能が提供される前の状態であると、サービス毎の接続ログには、サービス利用装置からのアクセスの記録が残らないため、接続先を変更することができない。本実施例は、このようなケースに対応するための方法について示したものである。
本実施例におけるシステム構成及びサービス提供装置、サービス利用装置の構成は、第1の実施例と同様のため、説明を省略する。
図19は、本実施例におけるサービス提供装置の動作を示すフローチャートである。図19の各ステップは、サービス提供装置のControl Unit2200が備えるCPU2001が、メモリに記憶されたプログラムを実行することによって行なわれる。なお、図19において、図15のフローチャートと同等の部分については、同一符号を付与して、説明は省略する。
図19のS1508において、サービス提供装置は、S1507で返された全ての応答を確認する。そして、他のサービス提供装置のうちで、S1504で取得した識別情報で特定されるサービス利用装置からの利用があったサービス提供装置があるかどうかを判断する。あった場合にはS1509へと進み、実施例1と同様である。一方、なかった場合には、実施例1では、S1520へと進んだが、本実施例では、S1901へと進む。
S1901では、サービス提供装置は、ネットワーク上の他のサービス提供装置に対して、サービスの種類によらず、S1504で取得した識別情報で特定されるサービス利用装置からの利用があったかを問い合わせる。この問い合わせには、S1504で取得した識別情報が含まれる。この問い合わせを受信した他のサービス提供装置では、自身が提供する全てのサービスそれぞれの接続ログを参照し、少なくともいずれかに当該識別情報が含まれているかが判断される。
S1902では、サービス提供装置は、S1901における問い合わせに対する応答を受信する。応答には、応答を行ったサービス提供装置のMACアドレスやIPアドレスなどの識別情報、当該サービスにおける接続の有無、及び当該サービスのバージョンが含まれる。なお、問い合わせを受ける一例として、問い合わせた全てのサービス提供装置からの応答を待つことを行ったり、あるいは、一定時間のタイムアウトを設けることで応答を行う。
S1903では、サービス提供装置は、S1902で受信した応答を確認し、他のサービス提供装置の中に、S1504で特定された識別情報のサービス利用装置から利用されたサービス提供装置が存在するか確認する。その結果、存在する場合にはS1517へと進み、存在しない場合にはS1520へと進む。
尚、S1903において、複数のサービス提供装置が該当した場合には、第1の実施例のように、接続頻度や最終アクセス日時の情報に基づいて、使用するサービス提供装置を選択するようにしてもよい。又は、指定した特定のサービスを利用しているものを優先して選択するようにしてもよい。あるいは、サービス種別、接続頻度、アクセス日時のそれぞれについて重み付けを行う計算式を用意して、アクセス度数を求めて、それによって選択するようにしてもよい。
以上説明したように、本実施例によれば、サービス利用装置から要求されたサービスを使用されたことはないものの、他のサービスは当該サービス利用装置から使用されたことがあるようなサービス提供装置を選択することができる。
(実施例3)
上記第1の実施例及び第2の実施例では、サービスのバージョンが低い正規サービス提供装置に対して、バージョンアップを通知すべきサービスのバージョンを通知していた。そして、正規サービス提供装置は図11に示すテーブルを管理し、サービスのバージョンが通知すべきバージョンになった際に、バージョンアップ通知を行うようにしていた。
本実施例では、サービス提供装置は、正規サービス提供装置に、通知すべきサービスのバージョンを通知するのではなく、サービスのみを通知する。そして、バージョンアップ通知を受信したサービス提供装置側で、通知されたバージョンが所定のバージョンに達しているかを判断するものとする。
図20を用いて、本実施例の特徴部分について説明する。本実施例におけるシステム構成及びサービス提供装置、サービス利用装置の構成は、第1の実施例と同様のため、説明を省略する。
図20は、本実施例に置いて、サービス利用装置からサービス要求を受信したサービス提供装置が、正規サービス提供装置からバージョンアップ通知を受信した場合の処理を示すフローチャートである。図20に示す各ステップは、サービス提供装置のControl Unit2200が備えるCPU2001が、メモリに記憶されたプログラムを実行することによって行なわれる。なお、図20において、図16のフローチャートと同等の部分については、同一符号を付与して、説明は省略する。
図20のS1601において、サービス提供装置は、正規サービス提供装置から、バージョンアップ通知を受信する。バージョンアップ通知には、サービスを示す情報と、当該サービスのバージョンが含まれている。
S2001では、サービス提供装置は、S1601で受信したサービスのバージョンと、自身の当該サービスのバージョンとを比較する。その結果、受信したバージョンの方が高い、又は同じバージョンであれば、S1602へと進む。低ければ、S2002へと進む。
S1602以降の処理は、図16で説明した処理と同様である。S2002では、サービス提供装置は、正規サービス提供装置に対して、接続先が変更されていないことを通知する。これは、正規サービス提供装置のサービスのバージョンが低かったか、又は高い(又は同じ)場合でもサービス利用装置において接続先の変更が許可されなかった場合である。この通知を受信した正規サービス提供装置は、以降、当該サービスのバージョンがアップした場合に、再度、サービス提供装置にその旨を通知することになる。
なお、S1602でサービス利用装置の対象が複数台に渡る場合は、S1603で、サービス提供装置は、対象の複数台のサービス利用装置に対して、接続先変更要求を送信する。S1604では、サービス提供装置は、依頼を行ったサービス利用装置からの返答を待つ。このとき、依頼を行った全てのサービス利用装置からの返答を待ってもよいし、タイムアウトを設けて、返答が無いものを対象から外したり、一定期間後に接続先変更依頼を再送信する仕組みにしても構わない。
(その他の実施例)
上記実施例1乃至実施例3では、複数のサービス提供装置のうちで、最初にサービス利用装置からサービス要求を受信したサービス提供装置が、そのサービス利用装置に対する正規サービス提供装置になっていた。つまり、サービス提供装置は、サービス利用装置からサービス要求を受信した際に、他に正規サービス提供装置がいない場合には、自身が正規サービス提供装置となっていた。
これに対して、予め各サービス提供装置に、管理対象とするサービス利用装置を登録してもよい。つまり、予め各サービス提供装置に、当該サービス提供装置がサービスを提供するサービス利用装置を登録しておく。そして、任意のサービス利用装置からサービス要求を受信すると、自身が管理対象とするサービス利用装置であるか否かを判断する。自身が管理対象とするサービス利用装置でないと判断された場合には、他のサービス提供装置に対して、当該サービス利用装置を管理対象としているか否かを問い合わせる。このとき、サービス利用装置から要求されているサービスのバージョンも問い合わせる。他のサービス提供装置の中に、当該サービス利用装置を管理対象としているサービス提供装置があった場合には、そのサービス提供装置のサービスのバージョンと、自身のサービスのバージョンを比較する。
この場合、サービス提供装置は、自身が管理対象とするサービス利用装置のリストをデータとして保持しておく。このデータは、サービス提供装置のROM2003やHDD2004等の記憶部に記憶される。この場合の、サービス提供装置の動作は、図15とほぼ同様であるが、以下のステップが異なる。まず、S1505では、サービス提供装置は、S1504で取得した識別情報が自身が管理対象とするサービス利用装置のリストに含まれているか否かを判断する。含まれている場合はS1520へ進み、含まれていない場合には、S1506へ進む。
このように、各サービス提供装置に、それぞれが管理対象とするサービス利用装置を登録しておけば、より確実に、サービス提供装置及びサービス利用装置が接続されたシステムのグループ管理を行なうことができるようになる。
なお、サービス提供装置側にではなく、サービス利用装置側に、それぞれのサービス利用装置が、使用するべきサービス提供装置を登録しておく構成にしてもよい。この場合は、サービス利用装置がサービス要求を送信する際に、登録されたサービス提供装置を示す情報を付加して送信することになる。
尚、上記実施例においては、自身の保有する機能をサービスとして提供する画像形成装置を「サービス提供装置」、サービス提供装置で提供しているサービスを利用する画像形成装置を「サービス利用装置」として説明した。ただし、本発明において、サービス提供装置およびサービス利用装置は、プリンタや複写機、複合機、スキャナ、FAX等の画像形成装置に限らず、サーバやPC、携帯端末等の情報処理装置であってもよい。
また、本発明は、複数の機器から構成されるシステムに適用しても、1つの機器からなる装置に適用してもよい。
また、本発明は、前述した実施例のフローチャートを実現するソフトウェアのコンピュータプログラムコードを記録した記憶媒体を、システムあるいは装置に供給してもよい。そして、そのシステムあるいは装置のコンピュータ(CPUやMPU)が記憶媒体に格納されたプログラムコードを読み出し実行することによっても達成され得る。
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
プログラムコードを供給するための記憶媒体としては、例えば、フロッピディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、DVD−ROM、磁気テープ、不揮発性のメモリカード、ROMなどを用いることができる。
本実施例における画像形成システムの全体構成を示す図 本実施例における画像形成装置の全体構成を示す図 本実施例における画像形成装置の入出力デバイス外観図 本実施例における画像形成装置の表示部の外観図 グループ化された画像形成システムの動作の例 グループ化された画像形成システムの動作の例 グループ化された画像形成システムの動作の例 グループ化された画像形成システムの動作の例 グループ化された画像形成システムの動作の例 グループ化された画像形成システムの動作の例 本実施例におけるバージョンアップ時の通知先設定のテーブルの一例 本実施例におけるサービス提供装置が管理する接続ログの記載の一例 本実施例におけるサービス提供装置が管理する接続ログの記載の一例 本実施例におけるサービス提供装置が管理する接続ログの記載の一例 本実施例におけるサービス提供装置の動作を示すフローチャート 本実施例におけるサービス提供装置の動作を示すフローチャート グループ化された画像形成システムの動作の例 本実施例におけるバージョンアップ時の通知先設定のテーブルの一例 本実施例におけるサービス提供装置の動作を示すフローチャート 本実施例におけるサービス提供装置の動作を示すフローチャート
符号の説明
2000 コントローラユニット
2001 CPU
2002 RAM
2003 ROM
2004 HDD
2070 スキャナ
2080 プリンタ
2012 操作部

Claims (12)

  1. 外部装置にサービスを提供するサービス提供装置であって、
    前記サービス提供装置がサービスを提供すべき装置の情報をグループとして管理する管理手段と、
    部装置から送信されたサービス要求を受信する受信手段と、
    前記受信手段が前記サービス要求を受信した場合に、前記外部装置が前記グループに含まれる装置であるか否かを判定する第1の判定手段と、
    前記第1の判定手段によって前記外部装置が前記グループに含まれると判定された場合に、前記サービス要求が示すサービスを前記外部装置に提供するサービス提供手段と、
    前記第1の判定手段によって前記外部装置が前記グループに含まれないと判定された場合に、前記外部装置にサービスを提供すべき正規のサービス提供装置が存在するか否かを判定する第2の判定手段とを備え、
    前記第判定手段によって前記正規のサービス提供装置存在しない判定された場合に、前記サービス要求が示すサービスを前記サービス提供手段が前記外部装置に提供し、
    前記第判定手段によって前記正規のサービス提供装置存在する判定された場合に、前記サービス要求が示すサービスを前記サービス提供手段が前記外部装置に提供しないことを特徴とするサービス提供装置。
  2. 前記第判定手段によって前記正規のサービス提供装置存在すると判断された場合に、前記外部装置の接続先を前記サービス提供装置から前記正規のサービス提供装置に変更することを許可するか否かを前記外部装置に問い合わせる問い合わせ手段を更に備え
    前記外部装置の接続先を前記サービス提供装置から前記正規のサービス提供装置に変更することを前記外部装置が許可する場合に、前記サービス提供手段は前記サービス要求が示すサービスを前記外部装置に提供せず、前記外部装置の接続先を前記サービス提供装置から前記正規のサービス提供装置に変更することを前記外部装置が許可しない場合に、前記サービス提供手段は前記サービス要求が示すサービスを前記外部装置に提供することを特徴とする請求項1に記載のサービス提供装置。
  3. 前記第2の判定手段によって前記正規のサービス提供装置が存在すると判定された場合に、前記サービス要求が示すサービスを前記正規のサービス提供装置が提供できるか否かを判定する第3の判定手段を更に備え、
    前記第3の判定手段によって前記サービス要求が示すサービスを前記正規のサービス提供装置が提供できると判定された場合に、前記サービス提供手段は前記サービス要求が示すサービスを前記外部装置に提供せず、前記第3の判定手段によって前記サービス要求が示すサービスを前記正規のサービス提供装置が提供できないと判定された場合に、前記サービス提供手段は前記サービス要求が示すサービスを前記外部装置に提供することを特徴とする請求項1に記載のサービス提供装置。
  4. 前記第判定手段は、前記正規のサービス提供装置が提供するサービスのバージョンに基づいて、前記サービス要求が示すサービスを前記正規のサービス提供装置が提供できるか否かを判定することを特徴とする請求項に記載のサービス提供装置。
  5. 前記第2の判定手段は、ネットワーク上の他のサービス提供装置に問い合わせを行うことで、前記外部装置にサービスを提供すべき正規のサービス提供装置が存在するか否かを判定することを特徴とする請求項1乃至4のいずれか1項に記載のサービス提供装置。
  6. 前記第2の判定手段は、前記外部装置の識別情報を前記他のサービス提供装置に送信することで問い合わせを行うことを特徴とする請求項5に記載のサービス提供装置。
  7. 前記識別情報は、前記外部装置のIPアドレス又はMACアドレスであることを特徴とする請求項6に記載のサービス提供装置。
  8. 前記サービスは、画像をPDFフォーマットに変換するサービスであることを特徴とする請求項1乃至のいずれか1項に記載のサービス提供装置。
  9. 前記サービスは、画像を暗号化に対応したPDFフォーマットに変換するサービスであることを特徴とする請求項1乃至のいずれか1項に記載のサービス提供装置。
  10. 前記サービスは、FAX送信であることを特徴とする請求項1乃至のいずれか1項に記載のサービス提供装置。
  11. 外部装置にサービスを提供するサービス提供装置の制御方法であって、
    前記サービス提供装置がサービスを提供すべき装置の情報をグループとして管理する管理ステップと、
    部装置から送信されたサービス要求を受信する受信ステップと、
    前記受信ステップで前記サービス要求を受信した場合に、前記外部装置が前記グループに含まれる装置であるか否かを判定する第1の判定ステップと、
    前記第1の判定ステップで前記外部装置が前記グループに含まれると判定された場合に、前記サービス要求が示すサービスを前記外部装置に提供するサービス提供ステップと、
    前記第1の判定ステップで前記外部装置が前記グループに含まれないと判定された場合に、前記外部装置にサービスを提供すべき正規のサービス提供装置が存在するか否かを判定する第2の判定ステップとを備え、
    前記第2の判定ステップによって前記正規のサービス提供装置が存在しない判定された場合に、前記サービス要求が示すサービスを前記外部装置に提供し、
    前記第2の判定ステップによって前記正規のサービス提供装置が存在する判定された場合に、前記サービス要求が示すサービスを前記外部装置に提供しないことを特徴とするサービス提供装置の制御方法
  12. 請求項11に記載のサービス提供装置の制御方法をコンピュータに実行させるためのプログラム。
JP2007300758A 2007-11-20 2007-11-20 サービス提供装置及びその制御方法、コンピュータプログラム Expired - Fee Related JP5127414B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2007300758A JP5127414B2 (ja) 2007-11-20 2007-11-20 サービス提供装置及びその制御方法、コンピュータプログラム
US12/266,238 US20090132707A1 (en) 2007-11-20 2008-11-06 Service providing apparatus, control method thereof, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007300758A JP5127414B2 (ja) 2007-11-20 2007-11-20 サービス提供装置及びその制御方法、コンピュータプログラム

Publications (3)

Publication Number Publication Date
JP2009129014A JP2009129014A (ja) 2009-06-11
JP2009129014A5 JP2009129014A5 (ja) 2011-01-13
JP5127414B2 true JP5127414B2 (ja) 2013-01-23

Family

ID=40643157

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007300758A Expired - Fee Related JP5127414B2 (ja) 2007-11-20 2007-11-20 サービス提供装置及びその制御方法、コンピュータプログラム

Country Status (2)

Country Link
US (1) US20090132707A1 (ja)
JP (1) JP5127414B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101590034B1 (ko) * 2009-11-18 2016-02-01 삼성전자주식회사 인쇄 제어 단말장치, 화상형성장치, 화상형성시스템, 및 화상형성방법
JP5605076B2 (ja) * 2010-08-18 2014-10-15 コニカミノルタ株式会社 プリンタドライバ更新プログラムおよびプリンタドライバ更新方法
JP5746955B2 (ja) * 2011-11-25 2015-07-08 株式会社沖データ 画像形成装置、画像形成システム及び画像形成方法
JP2016163981A (ja) * 2015-03-06 2016-09-08 シャープ株式会社 情報処理装置、及び情報処理システム

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09311843A (ja) * 1996-05-24 1997-12-02 Oki Electric Ind Co Ltd クライアントサーバ型通信方法及びクライアントサーバ型通信装置
JPH10320323A (ja) * 1997-05-15 1998-12-04 Hewlett Packard Japan Ltd サーバコンピュータ、サーバコンピュータの制御方法、およびサーバコンピュータを制御するためのプログラムを記録した記録媒体
GB0213073D0 (en) * 2002-06-07 2002-07-17 Hewlett Packard Co Method of maintaining availability of requested network resources
TWI349204B (en) * 2003-01-10 2011-09-21 Panasonic Corp Group admission system and server and client therefor
US7689601B2 (en) * 2004-05-06 2010-03-30 Oracle International Corporation Achieving web documents using unique document locators
US7562358B2 (en) * 2004-10-04 2009-07-14 United Parcel Service Of America, Inc. Controlled deployment of software in a web-based architecture
JP2006164173A (ja) * 2004-12-10 2006-06-22 Canon Inc 画像形成装置
JP4838564B2 (ja) * 2005-10-06 2011-12-14 キヤノン株式会社 ネットワークデバイス、その制御方法およびプログラム
US20080140857A1 (en) * 2006-03-21 2008-06-12 Conner Peter A Service-oriented architecture and methods for direct invocation of services utilizing a service requestor invocation framework
US8364711B2 (en) * 2006-05-09 2013-01-29 John Wilkins Contact management system and method

Also Published As

Publication number Publication date
US20090132707A1 (en) 2009-05-21
JP2009129014A (ja) 2009-06-11

Similar Documents

Publication Publication Date Title
JP4033857B2 (ja) プリントシステムおよび印刷管理サーバおよび印刷方法および印刷管理方法およびプログラム
US8347308B2 (en) Information processing apparatus, information processing method, and storage medium
JP4317162B2 (ja) プリントサーバおよび印刷管理サーバおよび印刷装置およびプリントシステムおよび印刷データ蓄積方法および印刷管理方法および印刷方法およびプログラム
JP5473267B2 (ja) ワークフロー実行システム及びワークフロー実行方法
US20060178924A1 (en) Information processing system, image processing system, execution control apparatus, execution control method, and computer product
US8867051B2 (en) Printing system, image forming apparatus, print data managing method thereof, and program
US20100185750A1 (en) Reading device and communication system
JP2009239973A (ja) 画像処理装置及びその制御方法
JP2006109459A (ja) 印刷支援装置、印刷処理装置、文書処理システム、印刷支援装置の制御方法、印刷支援制御プログラム、およびコンピュータ読み取り可能な記録媒体
US20100115470A1 (en) Image processing apparatus, method of controlling the same and storage medium
US20140195585A1 (en) Process executing system, process executing method, and information processing device
CN101068301B (zh) 图像处理装置、信息管理装置、信息管理系统以及信息管理方法
US20100149584A1 (en) Method and system for print queue management
JP5424619B2 (ja) ワークフロー実行システム、ワークフロー実行装置およびその制御方法、プログラム、記憶媒体
US7826080B2 (en) Print system, print method, information processing apparatus and method of controlling the information processing apparatus
JP2006318123A (ja) ログ情報管理装置、ログ情報発生装置、文書管理システム、ログ情報管理方法、ログ情報送信方法、及びプログラム
US8127178B2 (en) Image forming apparatus, method of controlling image forming apparatus, program, and storage medium
JP5127414B2 (ja) サービス提供装置及びその制御方法、コンピュータプログラム
JP5215637B2 (ja) ファクシミリ装置、その制御方法及びプログラム
JP4078201B2 (ja) 配信システム及びその制御方法、プログラム
US8363256B2 (en) Image processing apparatus, image processing system and image processing method
JP4697713B2 (ja) プリントシステムおよび印刷管理サーバおよび印刷方法および印刷管理方法およびプログラム
US20110063687A1 (en) Controlling image processing for data transmission
US20080140673A1 (en) Service retrieval method
JP4480037B2 (ja) 印刷管理サーバおよび印刷装置および印刷管理方法および印刷方法およびプログラムおよび記録媒体

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20100201

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20100630

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101117

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20101117

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120207

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120228

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120427

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20121002

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121030

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20151109

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees