(57)【要約】【課題】プリンタが印刷サービスを利用するシステムにおいて、印刷サービスを適切に利用できるファームウェアがプリンタにダウンロードされる仕組みを提供すること。【解決手段】印刷システム１０００は、印刷サービス装置１３０に画像形成装置１１０の情報が登録される際、または印刷サービス装置１３０に既に登録済みの画像形成装置１１０の情報が更新される際、画像形成装置１１０にインストールされているファームウェアが印刷サービス装置１３０に対応しているか否かを判定し、対応していないと判定された場合、配信サーバ１４０が配信している画像形成装置１１０のファームウェアの中に印刷サービス装置１３０に対応しているファームウェアが存在するか否かを判定し、存在すると判定された場合、配信サーバ１４０から対象のファームウェアが画像形成装置１１０に配信されたことに応じて、配信されたファームウェアのインストールを行う。【選択図】  図１
2014232512.tif 000002
【特許請求の範囲】
【請求項１】
印刷サービスを提供する印刷サービス装置と、前記印刷サービス装置と連携する画像形成装置と、前記印刷サービス装置に対応するファームウェアを配信する配信サーバとを有する印刷システムであって、
前記印刷サービス装置に前記画像形成装置の情報が登録される際、または前記印刷サービス装置に既に登録済みの前記画像形成装置の情報が更新される際、前記画像形成装置にインストールされているファームウェアが前記印刷サービス装置に対応しているか否かを判定する第１の判定手段と、
前記第１の判定手段により対応していないと判定された場合、前記配信サーバが配信している前記画像形成装置のファームウェアの中に前記印刷サービス装置に対応しているファームウェアが存在するか否かを判定する第２の判定手段と、
前記第２の判定手段により存在すると判定された場合、前記配信サーバから対象のファームウェアが前記画像形成装置に配信されたことに応じて、配信された前記ファームウェアのインストールを行う制御手段と、を備える
ことを特徴とする印刷システム。
【請求項２】
前記第１の判定手段は、前記画像形成装置にインストールされているファームウェアが対応するＡＰＩバージョンと前記印刷サービス装置が提供しているＡＰＩバージョンとを比較することにより、前記画像形成装置にインストールされているファームウェアが前記印刷サービス装置に対応しているか否かを判定し、
前記第２の判定手段は、前記配信サーバが配信しているファームウェアが対応するＡＰＩバージョンと前記印刷サービス装置が提供しているＡＰＩバージョンとを比較することにより、前記配信サーバが配信しているファームウェアの中に前記印刷サービス装置に対応しているファームウェアが存在するか否かを判定し、
前記第２の判定により存在すると判定された場合、前記制御手段は、前記配信サーバから前記印刷サービス装置のＡＰＩバージョンに対応する前記ファームウェアが前記画像形成装置に配信されたことに応じて、配信された前記ファームウェアのインストールを行う
ことを特徴とする請求項１に記載の印刷システム。
【請求項３】
前記第２の判定手段が前記画像形成装置のファームウェアの中に、前記印刷サービス装置に対応しているファームウェアが存在しないと判断した場合に、前記印刷サービス装置を利用できないことを示す情報が前記画像形成装置の画面上に表示される
ことを特徴とする請求項１または２に記載の印刷システム。
【請求項４】
前記第２の判定手段が、前記対応情報に基づいて、前記印刷サービス装置が提供しているＡＰＩバージョンが存在する場合であって、かつ、印刷サービス装置が提供しているＡＰＩバージョンに対応するファームウェアが特殊用途向けであると判定した場合に、前記印刷サービス装置を利用できないことを示す情報が前記画像形成装置の画面上に表示される
ことを特徴とする請求項１乃至３のいずれか一項に記載の印刷システム。
【請求項５】
前記画像形成装置を管理するユーザ装置をさらに備え、
前記第１の判定手段は、前記ユーザ装置に紐づけられた画像形成装置を記憶手段から抽出し、前記抽出された各々の画像形成装置にインストールされているファームウェアが前記印刷サービスに対応しているか否かを判定し、
対応していない画像形成装置が存在した場合に、前記第２の判定手段は、前記対応していない各々の画像形成装置について、前記配信サーバが配信している前記画像形成装置のファームウェアの中に、前記印刷サービスに対応しているファームウェアが存在するか否かを判定し、
存在すると判定された場合、前記制御手段は、前記印刷サービスに対応しているファームウェアが存在する画像形成装置を前記ユーザ装置に通知し、
前記通知された画像形成装置と、前記ファームウェアのインストール対象とする画像形成装置を選択するための選択画面が前記ユーザ装置に表示される
ことを特徴とする請求項１乃至４のいずれか一項に記載の印刷システム。
【請求項６】
前記第１の判定手段、前記第２の判定手段、および前記制御手段のうちの全てまたはいずれかは、前記印刷サービ装置または前記画像形成装置に備えられている
ことを特徴とする請求項１乃至５のいずれか一項に記載の印刷システム。
【請求項７】
前記印刷サービス装置に対応するためのファームウェアを配信する配信サーバと、前記配信サーバから前記ファームウェアを受信する画像形成装置と通信し、前記画像形成装置に印刷サービスを提供する印刷サービス装置であって、
前記画像形成装置の情報を登録する要求を受信した際、または前記印刷サービス装置に既に登録済みの前記画像形成装置の情報を更新する際、前記画像形成装置にインストールされているファームウェアが前記印刷サービス装置に対応しているか否かを判定する第１の判定手段と、
前記第１の判定手段により対応していないと判定された場合、前記配信サーバが配信している前記画像形成装置のファームウェアの中に前記印刷サービス装置に対応しているファームウェアが存在するか否かを判定する第２の判定手段と、
前記第２の判定手段により存在すると判定された場合、前記配信サーバから対象のファームウェアをインストールするように前記画像形成装置に通知する通知手段と、を備える
ことを特徴とする印刷サービス装置。
【請求項８】
ユーザ装置に紐付けて前記画像形成装置を登録する記憶手段をさらに備え、
前記第１の判定手段は、前記印刷サービス装置が提供している複数のＡＰＩバージョンのうち提供を廃止するＡＰＩバージョンが存在する場合に、前記ユーザ装置に紐づけられた画像形成装置であって、廃止対象のバージョンに対応するファームウェアをインストールしている画像形成装置を前記記憶手段から取得し、
前記第２の判定手段は、前記取得された各々の画像形成装置について、前記配信サーバが配信している前記画像形成装置のファームウェアの中に前記印刷サービス装置に対応しているファームウェアが存在するか否かを判定し、
存在すると判定された場合、前記通知手段は、前記廃止対象のバージョンに対応するファームウェアをインストールしている画像形成装置を前記ユーザ装置に通知し、
前記通知を受けて、前記廃止対象のバージョンをインストールしている画像形成装置であって、前記印刷サービス装置に対応するファームウェアをインストール対象とする画像形成装置を選択するための選択画面が前記ユーザ装置に表示される
ことを特徴とする請求項７に記載の印刷サービス装置。
【請求項９】
前記画像形成装置を機種毎に選択し、前記選択された機種の画像形成装置にインストールされているファームウェアが前記印刷サービス装置に対応しているか否かを判定する第３の判定手段をさらに備え、
前記第３の判定手段が、前記選択した機種の画像形成装置にインストールされているファームウェアが前記印刷サービス装置に対応していないと判定した場合、前記第２の判定手段は、前記配信サーバが配信しているファームウェアが対応するＡＰＩバージョンに関する情報を取得し、前記取得した情報に基づいて、前記配信サーバが配信している前記画像形成装置のファームウェアの中に前記印刷サービス装置に対応しているファームウェアが存在するか否かを判定する
ことを特徴とする請求項７または８に記載の印刷サービス装置。
【請求項１０】
印刷サービスを提供する印刷サービス装置と、前記印刷サービス装置に対応するファームウェアを配信する配信サーバと通信する画像形成装置であって、
前記印刷サービス装置に前記画像形成装置の情報を登録する際、または前記印刷サービス装置に既に登録済みの前記画像形成装置の情報が更新される際、前記画像形成装置にインストールされているファームウェアが前記印刷サービス装置に対応しているか否かを判定する第１の判定手段と、
前記第１の判定手段により対応していないと判定された場合、前記配信サーバが配信している前記画像形成装置のファームウェアの中に前記印刷サービス装置に対応しているファームウェアが存在するか否かを判定する第２の判定手段と、
前記第２の判定手段により存在すると判定された場合、前記配信サーバから対象のファームウェアをインストールする制御手段と、を備える
ことを特徴とする画像形成装置。
【請求項１１】
前記第２の判定手段が前記印刷サービス装置に対応しているファームウェアが複数存在していると判定した場合に、前記複数のファームウェアのうち一または複数のファームウェアを選択するための選択画面を表示する表示手段をさらに備える
ことを特徴とする請求項１０に記載の画像形成装置。
【請求項１２】
印刷サービスを提供する印刷サービス装置と、前記印刷サービス装置と連携する画像形成装置と、前記印刷サービス装置に対応するファームウェアを配信する配信サーバとを有する印刷システムの制御方法であって、
前記印刷サービス装置に前記画像形成装置の情報が登録される際、または前記印刷サービス装置に既に登録済みの前記画像形成装置の情報が更新される際、前記画像形成装置にインストールされているファームウェアが前記印刷サービス装置に対応しているか否かを判定する第１の判定工程と、
前記第１の判定工程で対応していないと判定された場合、前記配信サーバが配信している前記画像形成装置のファームウェアの中に前記印刷サービス装置に対応しているファームウェアが存在するか否かを判定する第２の判定工程と、
前記第２の判定工程で存在すると判定された場合、前記配信サーバから対象のファームウェアが前記画像形成装置に配信されたことに応じて、配信された前記ファームウェアのインストールを行う工程とを備える
ことを特徴とする制御方法。
【請求項１３】
請求項１２に記載の制御方法をコンピュータにより実行させることを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷システム、印刷サービス装置、画像形成装置、制御方法およびコンピュータプログラムに関する。
【背景技術】
【０００２】
クライアントからサーバに対して印刷指示を送信し、印刷指示を受信したサーバが印刷対象のコンテンツを印刷データに変換する印刷サービスを提供する印刷システムが提供されている。近年、クラウドコンピューティングの概念が注目されているが、これも前述のシステム同様、サーバがクライアントにサービスを提供する形態の一つと捉えることができる。
【０００３】
クラウドコンピューティングは、多くのコンピューティング・リソースを用いてデータ変換やデータ処理を分散実行し、多くのクライアントからの要求を同時に処理することが主な特徴である。現在、このクラウドコンピューティングを実現するクラウドコンピューティング環境上に実装された複数のＷｅｂサービスを利用し、多種多様な印刷サービス、ドキュメントソリューションを提供するベンダーが現れてきている。また、クラウドコンピューティング環境上に実装された各Ｗｅｂサービスのアップデートに合わせ、それを利用するプリンタ等のデバイスのファームウェア、アプリケーションもアップデートをするケースがある。従来には、デバイスに実装されるファームウェアやアプリケーションのアップデート方法として様々なものがあった。
【０００４】
１つ目の例として次のようなものがある。ファームウェアやアプリケーションを配信する配信サーバがユーザに最新ファームウェアやアプリケーションのリリースを通知する。そして、通知を受けたユーザが配信サーバからファームウェアやアプリケーションをダウンロードしてアップデートするというものである。
【０００５】
２つ目の例として次のようなものがある。プリンタのファームウェアを配信する配信サーバが、自サーバが保有しているファームウェアのバージョンとプリンタに搭載されているファームウェアバージョンを比較する。そして、プリンタのファームウェアが古い場合、配信サーバはプリンタにファームウェアのダウンロードを指示するという方法である（特許文献１参照）。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０００−１９４５４４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
従来の技術では、プリンタなどのデバイスベンダーサーバが、デバイスに対し適切に利用可能なファームウェアやアプリケーションを提供していた。ところが、近年では印刷サービスやドキュメントソリューションを提供するベンダーと、印刷サービスなどのＷｅｂサービスを利用するデバイスのベンダーが異なるケースが多くなっている。これにより、多種多様なＷｅｂサービスのアップデートに合わせて、Ｗｅｂサービスを利用するデバイスのファームウェア、アプリケーションが適切に提供されないケースもある。
【０００８】
例えば次のようなケースがある。Ｇｏｏｇｌｅ（登録商標）などのサービスプロバイダが提供するクラウドコンピューティング環境上の印刷サービスは、様々なプリンタベンダーが提供するプリンタを登録することができる。印刷サービスを利用するユーザは、登録したプリンタを指定して文書や画像を印刷することができる。印刷サービスはサービスプロバイダが提供しているが、プリンタのファームウェアはプリンタベンダーが提供している。このため、印刷サービスにおけるＷｅｂサービスのアップデートに対し、他者であるプリンタベンダーがＷｅｂサービスのアップデートに合わせたファームウェアを作成する。そして、ファームウェアは印刷サービスとは別のプリンタベンダーのファームウェア配信用のサーバ（ベンダーサーバと呼ぶ）から提供される。
【０００９】
プリンタは、印刷サービスが提供しているＷｅｂサービスのＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍｉｎｇ  Ｉｎｔｅｒｆａｃｅ）を利用することにより、印刷サービスに特化したプリンタ登録や印刷実行などを実現することが可能となる。ＡＰＩは、一般的に機能追加やセキュリティ対策などを目的としてアップデートされる。印刷サービスのＡＰＩがアップデートされる場合、次のようなことが起こりうる。印刷サービスでは円滑なサービス運用を維持するため、古いＡＰＩを即座に廃止できない。このため、印刷サービスは複数のバージョンのＡＰＩを管理することになる。しかし、運用コストやセキュリティ維持を目的として、やがて古いＡＰＩは廃止される場合もある。一方で、プリンタベンダーでは印刷サービスによるＡＰＩ変更に即座に対応できない場合がある。よって、ベンダーサーバが提供するファームウェアは、必ずしも印刷サービスの最新ＡＰＩに対応できているファームウェアであるとは限らない。さらにベンダーサーバに複数のファームウェアが登録されている場合、ユーザは自分が使っているプリンタに適したファームウェアで、かつ、印刷サービスに適したＡＰＩに対応したファームウェアであるかを調べてダウンロードしなければならない。
【００１０】
上述した技術では、プリンタは、配信サーバから最新のファームウェアをダウンロードすることができるが、プリンタが印刷サービスを利用している場合、ダウンロードするファームウェアが印刷サービスに適したＡＰＩに対応しているのかが判別できない。本発明は、プリンタが印刷サービスを利用するシステムにおいて、印刷サービスを適切に利用できるファームウェアがプリンタにダウンロードされる仕組みを提供することを目的とする。
【課題を解決するための手段】
【００１１】
本発明の一実施形態の印刷システムは、印刷サービスを提供する印刷サービス装置と、前記印刷サービス装置と連携する画像形成装置と、前記印刷サービス装置に対応するためのファームウェアを配信する配信サーバとを備える。前記印刷システムは、前記印刷サービス装置に前記画像形成装置の情報が登録される際、または前記印刷サービス装置に既に登録済みの前記画像形成装置の情報が更新される際、前記画像形成装置にインストールされているファームウェアが前記印刷サービス装置に対応しているか否かを判定する第１の判定手段と、第１の判定手段により対応していないと判定された場合、前記配信サーバが配信している前記画像形成装置のファームウェアの中に前記印刷サービス装置に対応しているファームウェアが存在するか否かを判定する第２の判定手段と、第２の判定手段により存在すると判定された場合、前記配信サーバから対象のファームウェアが前記画像形成装置に配信されたことに応じて、配信された前記ファームウェアのインストールを行う制御手段と、を備える。
【発明の効果】
【００１２】
本発明の印刷システムによれば、プリンタが印刷サービスを利用するシステムにおいて、印刷サービスを適切に利用できるファームウェアをプリンタにダウンロードさせることが可能となる。
【図面の簡単な説明】
【００１３】
【図１】印刷システムの構成例を示す図である。
【図２】印刷システムを構成する各装置、および各サーバのハードウェア構成例を示す図である。
【図３】印刷システムを構成する各装置、および各サーバのソフトウェア構成例を示す図である。
【図４】印刷サービスの情報格納部に格納されるデータを説明する図である。
【図５】印刷サービスの情報格納部に格納されるデータを説明する図である。
【図６】プリンタの情報格納部に格納されるデータを説明する図である。
【図７】ベンダーサーバの情報格納部に格納されるデータを説明する図である。
【図８】実施例１のシーケンスを説明する図である。
【図９】第一のＡＰＩバージョンチェックを示すフロー図である。
【図１０】プリンタのパネル上に表示される画面例である。
【図１１】プリンタのパネル上に表示される画面例である。
【図１２】第二のＡＰＩバージョンチェックを示すフローである。
【図１３】実施例１のプリンタによる処理のフローチャートである（前半）。
【図１４】プリンタによる処理のフローチャートである（後半）。
【図１５】実施例１の印刷サービスによる処理を説明するフローチャートである。
【図１６】実施例１のベンダーサーバによる処理を説明するフローチャートである。
【図１７】実施例２の第二のＡＰＩバージョンチェックを示すフローである。
【図１８】印刷サービスがユーザ端末に提供するプリンタ管理画面例である。
【図１９】印刷サービスがユーザ端末に提供するプリンタ管理画面例である。
【図２０】実施例４のシーケンスを説明するための図である。
【図２１】実施例４のクライアント端末の処理を説明するフローチャートである。
【図２２】実施例５のシーケンスを説明するための図である。
【図２３】印刷サービスの第三ＡＰＩバージョンチェックのフローチャートである。
【図２４】実施例９のシーケンスを説明する図である。
【発明を実施するための形態】
【００１４】
（実施例１）
始めに、実施例１における印刷システム１０００の構成について説明する。図１は、印刷システム１０００の構成例を示す図である。印刷システム１０００は、プリンタ群１１０、クライアント１２０、印刷サーバ群１３０、ベンダーサイトサーバ群１４０を備える。プリンタ群１１０およびクライアント１２０はユーザ環境に配置された装置であり、ネットワーク１００を介して接続可能であり、互いにデータ通信することができる。ネットワーク１００はインターネット１０１に接続されている。なお、プリンタ群１１０、クライアント１２０はインターネット１０１を介して接続されていてもよい。印刷システム１０００を構成する各装置、および各サーバ群は、インターネット１０１を介して接続可能であり、互いにデータ通信することができる。なお、クライアント１２０は複数台あっても良い。また、プリンタ群１１０、印刷サーバ群１３０、ベンダーサイトサーバ群１４０は複数台で構成されても１台で構成されてもよい。
【００１５】
次に、図２を参照して印刷システム１０００を構成する各装置・各サーバのハードウェア構成について説明する。各装置・各サーバ２０１は、ＣＰＵ２０２、ＲＯＭ２０３、ＲＡＭ２０４、Ｉｎｐｕｔ/Ｏｕｔｐｕｔインタフェース２０５、ＮＩＣ２０６を備える。ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２０２は、各種プログラムを実行し、様々な機能を実現するユニットである。ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）２０３は、各種プログラムを記憶するユニットである。ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）２０４は、ＣＰＵ２０２の一時的な作業記憶領域としても利用されるユニットである。ＣＰＵ２０２は、ＲＯＭ２０３に記憶されているプログラムをＲＡＭ２０４にロードしプログラムを実行することにより、各装置・各ユニットが備える機能を実現する。
【００１６】
Ｉｎｐｕｔ／Ｏｕｔｐｕｔインタフェース２０５は、各装置、および各サーバに接続されているディスプレイ（不図示）にデータを送信する他、ポインティングデバイスなど（不図示）からデータを受信するインタフェースユニットである。ＮＩＣ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄ）２０６は、印刷システム１０００を構成する各装置、および各サーバをネットワーク１００に接続するためのユニットである。
【００１７】
以上説明してきたユニットは、バス２０７を介してデータの送受信を行うことが可能である。また、プリンタ群１１０に含まれる各印刷制御部は、印刷ユニット（不図示）を搭載しており、印刷ユニットは、バス２０７を介して各ユニットとデータを送受信することが可能である。なお、印刷ユニットは、ラスターイメージを記録媒体に印刷することが可能なユニットである。
【００１８】
次に、図３を参照して印刷システム１０００を構成する各装置、および各サーバのソフトウェア構成について説明する。図３に示す各ソフトウェア構成の機能を実現するプログラムは、各装置・各サーバ２０１のＲＯＭ２０３に記憶されており、ＣＰＵ２０２がＲＡＭ２０４にプログラムをロードし実行することで、これらの機能を実現する。
【００１９】
印刷サーバ群１３０は、複数台のサーバを仮想化して１台のサーバとみなし、その１台のサーバで印刷サービス３３０の機能を実現する印刷サービス装置である。なお、印刷サーバ群１３０は、その１台のサーバ内に複数のバーチャルマシンを起動し、各々のバーチャルマシンに対して印刷サービス３３０の機能を実現させている。図３に示す印刷サービス３３０は、その内の１台を示したものである。
【００２０】
印刷サービス３３０は、例えばクラウド・プリントサービスを提供する。印刷サービス３３０は、Ｗｅｂアプリケーション３３１、サービス制御部３３２、プリンタ管理部３３３、情報格納部３３４、ユーザ管理部３３５、メール管理部３３６、印刷管理部３３７を備える。Ｗｅｂアプリケーション３３１はＷｅｂブラウザ３２０からの各種要求を受け付け、印刷サービス３３０のログイン画面やプリンタ管理画面をＷｅｂブラウザ３２０に提供する。Ｗｅｂアプリケーション３３１はＷｅｂサーバの機能も備えるものとする。サービス制御部３３２は印刷サービス３３０が提供するＡＰＩを制御する。また、サービス制御部３３２は、印刷サービス３３０を構成する各部の連携を制御することにより印刷サービス３３０を実現する。プリンタ管理部３３３は、印刷サービス３３０を利用するプリンタ群１１０の登録や削除を管理する。情報格納部３３４は、登録されたプリンタやユーザの情報を保存するデータベースである。ユーザ管理部３３５は、印刷サービス３３０を利用するユーザの情報を管理する。メール管理部３３６は、メールクライアント３２１に対してメールを送信する。印刷管理部３３７は、Ｗｅｂブラウザ３２０からの印刷指示に対する印刷ジョブの生成や、指定されたプリンタへの印刷ジョブ送信を管理する。
【００２１】
クライアント１２０は、Ｗｅｂブラウザ３２０とメールクライアント３２１を有するユーザにより利用されるユーザ装置である。Ｗｅｂブラウザ３２０は、印刷サーバ群１３０のＷｅｂアプリケーション３３１と通信して、印刷サービス３３０のログイン画面やプリンタ管理画面を取得し、各種操作を実現する。メールクライアント３２１は電子メールの送受信を実現するためのソフトウェアであり、印刷サーバ群１３０からのメールによる通知を受信する。
【００２２】
プリンタ群１１０は、印刷サービス３３０を利用した印刷を実行し、ベンダーサイトサーバ群１４０からファームウェアを取得してインストールすることが可能な画像形成装置である。プリンタ群１１０の各プリンタは、プリンタ登録部３１０、情報格納部３１１、ファームウェア管理部３１２、印刷制御部３１３、操作部３１４を備える。プリンタ登録部３１０は、印刷サービス３３０へのプリンタ情報の登録や更新をしたり、印刷サービス３３０が提供するＡＰＩのバージョン情報を取得したりする。情報格納部３１１は、プリンタの管理情報、印刷サービス３３０を利用するための情報、ファームウェアの管理情報を格納するデータベースである。ファームウェア管理部３１２は、プリンタが利用しているファームウェア情報を管理し、ファームウェア更新のための制御を行う。ファームウェア管理部３１２は、ファームウェアを入手するためベンダーサイトサーバ群１４０との通信も制御する。印刷制御部３１３は、印刷サービス３３０から受信した印刷データを印刷する処理を制御する。操作部３１４はプリンタのパネルや操作ボタンである。なお、各実施例の説明において、プリンタ群１１０のプリンタをプリンタ１１０と表記して説明する場合もある。
【００２３】
ベンダーサイトサーバ群１４０（以下、ベンダーサーバ１４０と表記する）は、プリンタベンダーが管理する情報提供サイトを実現する配信サーバである。ベンダーサーバ１４０は、情報提供サイトを実現し、インターネット１０１を介してプリンタ製品情報やファームウェア情報を提供する。ベンダーサーバ１４０は、Ｗｅｂアプリケーション３４０、ファームウェア管理部３４１、情報格納部３４２を備える。Ｗｅｂアプリケーション３４０は、プリンタ群１１０のプリンタやクライアント１２０からの通信を制御し、製品情報やファームウェア情報を送信する。ファームウェア管理部３４１は、プリンタ群１１０のプリンタやクライアント１２０からのＷｅｂアプリケーション３４０経由のファームウェア取得要求に対し、保持しているファームウェアとファームウェア情報を提供する。ファームウェア情報はリリース情報を含む情報である。情報格納部３４２はファームウェア、ファームウェア情報、ベンダーサーバ１４０が提供するコンテンツなどを格納するデータベースである。
【００２４】
本実施例の印刷サービス３３０では、最初にユーザ情報が登録される。次に、ユーザ情報に紐付けてプリンタが登録される。印刷サービス３３０に登録されたユーザ情報およびプリンタ情報は、情報格納部３３４に格納される。図４は、情報格納部３３４に格納される各データを説明する図であり、情報格納部３３４は図４（Ａ）、図４（Ｂ）、図４（Ｃ）に例示するデータを格納する。
【００２５】
図４（Ａ）は、印刷サービス３３０を利用しているユーザのユーザ情報のデータを示す。ユーザ情報のデータはユーザアカウント４０１、パスワード４０２、通知先メールアドレス４０３によって構成される。ユーザアカウント４０１は、ユーザが印刷サービス３３０を利用するときに用いるユーザ識別情報である。パスワード４０２は、ユーザアカウント４０１に対応したパスワード情報である。ユーザは印刷サービス３３０を利用するとき、ユーザアカウント４０１とパスワード４０２を用いて印刷サービス３３０にログオンする。通知先メールアドレス４０３は、印刷サービス３３０からユーザへの通知に利用するためのメールアドレスである。
【００２６】
図４（Ｂ）は、印刷サービス３３０に登録されているプリンタ情報のデータを示す。プリンタ情報のデータはプリンタ名４１１、プリンタＩＤ４１２、ＩＰアドレス４１３、プリンタ機種名４１４、ファームウェアバージョン４１５、ＡＰＩバージョン４１６、ベンダーＵＲＬ４１７、管理者ユーザアカウント４１８によって構成される。プリンタ名４１１は印刷サービス３３０に登録されたプリンタの名称であり、プリンタを呼称するときに用いる。なお、プリンタ名は識別情報と異なり、他のプリンタと同一である場合もある。プリンタＩＤ４１２は印刷サービス３３０でプリンタを一義的に識別するためのプリンタ識別情報である。プリンタＩＤはＵＵＩＤやＭａｃアドレスなど、プリンタを一意に識別することが可能であれば任意のプリンタＩＤが使用されてよい。ＩＰアドレス４１３はプリンタのネットワーク上の住所（アドレッシング）を示す情報である。プリンタ機種名４１４はプリンタの機種を表す名称である。
【００２７】
ファームウェアバージョン４１５は、プリンタに搭載されているファームウェアのバージョン情報である。ＡＰＩバージョン４１６は、プリンタに搭載されているファームウェアが適用可能な印刷サービス３３０のＡＰＩのバージョンである。ベンダーＵＲＬ４１７は、プリンタに紐付くプリンタベンダーのベンダーサーバ１４０のＵＲＬである。印刷サービス３３０は、プリンタからベンダーＵＲＬを取得して、ベンダーサーバ１４０にアクセスし、様々な情報を得ることができる。管理者ユーザアカウント４１８は、プリンタに対し管理者の立場で印刷サービス３３０に登録されているユーザアカウントである。
【００２８】
図４（Ｃ）は、印刷サービス３３０が提供しているＡＰＩのバージョン情報のデータである。印刷サービス３３０のＡＰＩバージョン情報はサービスＡＰＩリスト４２１として管理される。印刷サービスでは、円滑なサービス運用を維持するため、複数のバージョンのＡＰＩを管理する。図５に示す各データについては後述する。
【００２９】
図６は、プリンタ１１０の情報格納部３１１が格納するデータを示す。本実施例の印刷サービス３３０を利用するプリンタ群１１０の各プリンタは情報格納部３１１に図６（Ａ）、図６（Ｂ）、図６（Ｃ）、図６（Ｄ）、図６（Ｅ）に例示するデータを格納する。図６（Ａ）は、プリンタの管理情報のデータである。このデータは、プリンタ名５０１、プリンタＩＤ５０２、ＩＰアドレス５０３、プリンタ機種名５０４、ベンダーＵＲＬ５０５によって構成される。図６（Ａ）のデータは、印刷サービス３３０にプリンタを登録する時にプリンタから印刷サービス３３０へ渡される情報でもある。プリンタ名５０１、プリンタＩＤ５０２、ＩＰアドレス５０３、プリンタ機種名５０４は、図４（Ｂ）に示す符号４１１、プリンタＩＤ４１２、ＩＰアドレス４１３、プリンタ機種名４１４、ベンダーＵＲＬ４１７と同じである。
【００３０】
図６（Ｂ）は、プリンタがサービスを利用する際に使用されるデータを示す。本実施例では、プリンタ１１０は、印刷サービス３３０にプリンタ登録を要求すると、印刷サービスから図６（Ｂ）に示すデータを取得する。図６（Ｂ）に示すデータはサービス名５１１、サービスＵＲＬ５１２、サービスＡＰＩバージョン５１３によって構成される。サービス名５１１は、プリンタが利用可能なサービスの名称である。本実施例ではサービス名は印刷サービスとなる。サービスＵＲＬ５１２は、プリンタがサービスを利用するときのアクセス先のＵＲＬである。サービスＡＰＩバージョン５１３は、サービスが提供するＡＰＩの情報であり、利用可能なＡＰＩのバージョンが格納される。サービスＡＰＩ５１３は印刷サービス３３０からプリンタ１１０が受信するサービスＡＰＩリスト４２１のデータである。サービスＡＰＩ５１３は複数存在する場合もある。
【００３１】
図６（Ｃ）は、プリンタのファームウェア情報のデータを示す。ファームウェア情報のデータは、プリンタ機種名５２１、ファームウェアバージョン５２２、利用可能サービス名５２３、対応サービスＡＰＩバージョン５２４を備える。また、ファームウェア情報のデータは、適切ファームウェアバージョン５２５、適切ファームウェアの利用可能サービス名５２６、適切ファームウェアの対応サービスＡＰＩバージョン５２７を備える。プリンタ機種名５２１はプリンタ機種名５０４と同じである。ファームウェアバージョン５２２は、プリンタに搭載されているファームウェアのバージョンであり、印刷サービス３３０が管理する図４（Ｂ）で示すファームウェアバージョン４１５と同じである。利用可能サービス名５２３はプリンタに搭載されているファームウェアによって利用可能なサービスの名称である。このサービス名は図６（Ｂ）のサービス名５１１と同じである。対応サービスＡＰＩバージョン５２４はプリンタに搭載されているファームウェアが利用可能なサービスのＡＰＩのバージョンであり、図４（Ｂ）で示すＡＰＩバージョン４１６と同じである。
【００３２】
図６（Ｃ）に示す符号５２５、５２６、５２７は、プリンタ１１０がベンダーサーバ１４０からファームウェアの情報を取得した後に格納されるデータである。具体的には、後述する第二のＡＰＩバージョンチェック後にこれらのデータは登録される。適切ファームウェアバージョン５２５は、ベンダーサーバ１４０に登録されているファームウェアの中で、印刷サービス３３０が提供しているＡＰＩに適切に対応できているファームウェアのバージョン情報である。適切ファームウェアバージョン５２５は複数存在する場合もある。適切ファームウェアの利用可能サービス名５２６は、適切ファームウェアバージョン５２５のファームウェアが適切に利用可能なＡＰＩを備えているサービスの名称である。適切ファームウェアの利用可能サービス名５２６は、１つの適切ファームウェアバージョン５２５に対し複数存在する場合もある。適切ファームウェアの対応サービスＡＰＩバージョン５２７は、適切ファームウェアの利用可能サービス名５２６のサービスが提供するＡＰＩのうち、適切ファームウェアが対応しているＡＰＩのバージョンである。
【００３３】
図６（Ｄ）は、プリンタ１１０が実施したＡＰＩバージョンチェックの結果のデータを示す。チェック結果データは、サービス名５３１、第一のＡＰＩバージョンチェック５３２、第二のＡＰＩバージョンチェック５３３によって構成される。サービス名５３１はＡＰＩを提供しているサービスの名称であり、図６（Ｂ）のサービス名５１１と同じである。第一のＡＰＩバージョンチェック５３２は第一のＡＰＩバージョンチェックの結果情報である。結果情報はＴｒｕｅかＦａｌｓｅが登録される。プリンタに搭載されているファームウェアが対応している印刷サービス３３０のＡＰＩが、印刷サービス３３０が提供している適切なＡＰＩである場合、Ｔｒｕｅが登録される。適切なＡＰＩでなければ、Ｆａｌｓｅが登録される。
【００３４】
第二のＡＰＩバージョンチェック５３３は、第二のＡＰＩバージョンチェックの結果情報である。ベンダーサーバ１４０に登録されているファームウェアが対応している印刷サービス３３０のＡＰＩが、印刷サービス３３０が提供している適切なＡＰＩである場合、Ｔｒｕｅが登録される。適切なＡＰＩでなければ、Ｆａｌｓｅが登録される。第一のＡＰＩバージョンチェックと第二のＡＰＩバージョンチェックについては図８、図９、図１０の説明で詳述する。また、プリンタの情報格納部３１１は、その他にも印刷枚数や稼働ログ等のデータも格納するが、本発明の必須構成ではないため説明を省略する。
【００３５】
図６（Ｅ）は、ベンダーサーバ１４０に登録されているファームウェアとサービスのＡＰＩバージョンの対応情報である。このファームウェア情報にはプリンタ１１０が各種サービスを利用するに当たり不適切なファームウェアの情報も含まれる。プリンタ機種名５４１は図６（Ａ）のプリンタ機種名５０４と同じである。ファームウェアバージョン５４２はベンダーサーバ１４０に登録されているプリンタ機種名５４１のプリンタ向けのファームウェアのバージョンである。対応ＡＰＩバージョン５４３はベンダーササーバ１４０に登録されているファームウェアが対応しているサービスのＡＰＩのバージョンである。プリンタ１１０の情報格納部３１１は、サービス毎にこのファームウェア情報を格納する。
【００３６】
図７は、ベンダーサーバ１４０の情報格納部３４２が格納するデータを示す。本実施例のベンダーサーバ１４０はプリンタ群１１０の各プリンタによるファームウェアのダウンロードを実現するために、情報格納部３４２に図７（Ａ）、図７（Ｂ）、図７（Ｃ）に例示するデータを格納する。
【００３７】
図７（Ａ）は、ベンダーサーバ１４０が提供するファームウェアのデータである。このデータはファームウェア６０１、リリース情報ファイル６０２によって構成される。ファームウェア６０１はファームウェアの実体である。プリンタ群１１０のプリンタはファームウェア６０１をダウンロードして利用する。リリース情報ファイル６０２はベンダーサーバ１４０がリリースしているファームウェアの情報をまとめたファイルである。このファイルには、各種サービスが提供するＡＰＩバージョン（例えば６０３）と、該ＡＰＩバージョンに対応するファームウェアバージョンが記載された対応情報が含まれる。
【００３８】
図７（Ｂ）は、リリース情報ファイル６０２である。リリース情報ファイルには、ファームウェアが対応しているプリンタ機種名、ファームウェアバージョン、ＡＰＩを利用できるサービス名、利用可能なサービスのＡＰＩバージョン６０３の情報が記述されている。リリース情報ファイル６０２は、ファームウェア毎に用意されても、１つのファイルに複数のファームウェア情報が記述される形式で用意されてもよい。
【００３９】
図７（Ｃ）は、リリース情報ファイル６０２の別例である。リリース情報ファイル６０２には、図７（Ｂ）で説明したリリース情報ファイル６０２が備える情報のほかに、特殊用途向けファームウェアであるか、一般用途向けの標準ファームウェアであるかを判別するための識別情報６０４が記述されている。図７（Ｃ）では、一般用途向けの標準ファームウェアであることを示すために、リリース情報ファイル６０２は識別情報６０４としてＧｅｎｅｒａｌという文字列を保持する。特殊用途向けのファームウェアである場合、識別情報６０４にはＳｐｅｃｉａｌという文字列が記述される。
【００４０】
次に、図８を参照して、プリンタ１１０から印刷サービス３３０に対し該プリンタを新規登録する時に行う処理を説明する。実施例１では、プリンタ１１０が主体となる。プリンタ１１０は、新規登録時に、適切なＡＰＩに対応していないかを判定し、ベンダーサーバ１４０に登録されているファームウェアを調査し、適切なファームウェアを特定してダウンロードする。図８に示す処理は、各装置・各サーバ２０１のＣＰＵ２０２が、ＲＯＭ２０３に記憶されているプログラムをＲＡＭ２０４にロードしプログラムを実行することにより、実現される。なお、プリンタ１１０の管理者は事前に印刷サービス３３０のユーザとして管理者ユーザアカウント４１８を登録しているものとする。さらに、管理者は事前に管理者ユーザアカウント４１８が紐付く印刷サービス３３０への登録用チケットを入手しているものとする。
【００４１】
Ｓ１００１で、プリンタ１１０はサービスＵＲＬ５１２（図６（Ｂ））を利用して印刷サービス３３０に接続する。Ｓ１００２で、印刷サービス３３０はプリンタ１１０の接続を許可する。Ｓ１００３で、プリンタ１１０は登録用チケットを利用して印刷サービス３３０にプリンタ１１０の登録を要求する。このとき、プリンタ１１０は登録情報を情報格納部３１１から取得し、プリンタ登録部３１０を介して印刷サービス３３０のＷｅｂアプリケーション３３１に対し送信する。登録情報は、プリンタ名５０１、プリンタＩＤ５０２、ＩＰアドレス５０３、プリンタ機種名５０４、ベンダーＵＲＬ５０５、搭載ファームウェアバージョン５２２、対応サービスＡＰＩバージョン５２４である。
【００４２】
Ｓ１００４で、印刷サービス３３０はＷｅｂアプリケーション３３１を介してプリンタ１１０から登録情報を受信する。印刷サービス３３０は、登録情報をサービス制御部３３２の指示で情報格納部３３４に格納する（図４（Ｂ））。このとき、印刷サービス３３０は登録用チケットを利用することにより、受信したプリンタ情報と管理者ユーザアカウント４１８を紐付ける。Ｓ１００５で印刷サービス３３０は、情報格納部３３４に格納されているサービスＡＰＩリスト４２１（図４（Ｃ））を取得し、Ｓ１００６でプリンタ１１０にサービスＡＰＩリスト４２１を送信する。
【００４３】
プリンタ１１０は、プリンタ登録部３１０を介して印刷サービス３３０からサービスＡＰＩリスト４２１を受信し、情報格納部３１１に格納する。このデータは図６（Ｂ）のサービスＡＰＩバージョン５１３として格納される。Ｓ１００７でプリンタ１１０は、第１の判定として第一のＡＰＩバージョンチェックを実施する。第一のＡＰＩバージョンチェックとは、現在プリンタに搭載されているファームウェアが利用可能なサービスのＡＰＩバージョンとサービスが提供しているＡＰＩバージョンを比較し、プリンタが適切なＡＰＩを使用しているか否かを確認するものである。なお、プリンタ１１０が印刷サービス３３０の適切なＡＰＩを使用していると判定した場合、処理はＳ１０１６に遷移する。第一のＡＰＩバージョンチェックの詳細は図９を用いて後述する。Ｓ１００８で、プリンタ１１０が印刷サービス３３０の適切なＡＰＩを使用していないと判定された場合、プリンタ１１０は操作部３１４のパネル上に確認指示画面を表示する。
【００４４】
Ｓ１００９で、プリンタ１１０はベンダーサーバ１４０へアクセスし、登録されているファームウェア情報を問い合わせる。プリンタ１１０によるベンダーサーバ１４０へのアクセスを実現するためにファームウェア管理部３１２はベンダーＵＲＬ５０５（図６（Ａ））を利用する。ベンダーサーバ１４０は、図７（Ａ）に示すファームウェア６０１とＡＰＩバージョン６０３の情報を含むリリース情報ファイル６０２を保持している。ベンダーサーバ１４０は、ファームウェア管理部３４１から図７（Ｂ）に示すリリース情報ファイル６０２を取得し、プリンタ１１０に対し送信する（Ｓ１０１０）。プリンタ１１０は、リリース情報ファイル６０２を受信すると、図６（Ｅ）に示すようにデータを格納する。
【００４５】
Ｓ１０１１で、プリンタ１１０は第２の判定として第二のＡＰＩバージョンチェックを実施する。プリンタ１１０は、リリース情報（図６（Ｅ））に示すプリンタ機種名５４１、ファームウェアバージョン５４２、対応ＡＰＩバージョン５４３の情報を利用可能なサービスごとに抽出する。第二のＡＰＩバージョンチェックでは、プリンタ１１０は、印刷サービス３３０が提供しているＡＰＩのバージョンとベンダーサーバ１４０がリリースしているファームウェアが対応しているサービスのＡＰＩバージョンを比較する。この比較により、プリンタ１１０はベンダーサーバ１４０上のファームウェアがサービスに適したＡＰＩを利用可能であるか否かを確認する。ベンダーサーバ１４０からＮ個のファームウェアの情報が取得されたら、第二のＡＰＩバージョンチェックではＮ個分のチェックが実施される。第二のＡＰＩバージョンチェックの詳細は図１２を用いて後述する。
【００４６】
Ｓ１０１２で、プリンタ１１０はＳ１０１１の判定結果に応じて操作部３１４のパネルにファームウェア更新確認画面を表示する。Ｓ１０１３で、ユーザがファームウェア更新確認画面を介してファームウェアの更新要求を行うと、プリンタ１１０は選択されたファームウェアを指定してベンダーサーバ１４０へファームウェアの取得を要求する。Ｓ１０１４で、ベンダーサーバ１４０は要求されたファームウェアをプリンタ１１０へ送信する。
【００４７】
Ｓ１０１５で、プリンタ１１０はファームウェアを受信し、アップデートする。アップデートが完了したら、プリンタ１１０は図６（Ｃ）の適切ファームウェアバージョン５２５、適切ファームウェアの利用可能サービス名５２６、適切ファームウェアの対応サービスＡＰＩバージョン５２７を更新する。Ｓ１０１６で、プリンタ１１０は最新のプリンタ情報を印刷サービス３３０へ通知する。通知される情報は、適切ファームウェアバージョン５２５、適切ファームウェアの利用可能サービス名５２６、適切ファームウェアの対応サービスＡＰＩバージョン５２７の情報を含む。なお、ファームウェアの更新がなかった場合、これらの情報は通知されなくてもよい。Ｓ１０１７で、印刷サービス３３０は、プリンタ１１０から受信した情報をサービス制御部３３２の指示で情報格納部３３４に格納する（図４（Ｂ））。Ｓ１０１８で印刷サービス３３０はプリンタ１１０に対し、受信したプリンタ情報の登録が完了したことを通知し、図８のシーケンスは終了する。印刷サービス３３０は最新のプリンタ登録情報をメール管理部３３６によってメールクライアント３２１に通知してもよい。
【００４８】
図９は、図８のＳ１００７の処理における第一のＡＰＩバージョンチェックのフローを示す。Ｓ１１０１で、プリンタ１１０のファームウェア管理部３１２は、図６（Ｃ）に示す対応サービスＡＰＩバージョン５２４を取得する。ここでは現在のファームウェアが対応している印刷サービス３３０のＡＰＩバージョン（２．０）が取得される。Ｓ１１０２で、ファームウェア管理部３１２は、図６（Ｂ）に示すサービスＡＰＩバージョン５１３を取得する。ここでは、Ｓ１００６で印刷サービスが送信したＡＰＩのバージョン（２．８，２．９，３．０）が取得される。
【００４９】
Ｓ１１０３で、ファームウェア管理部３１２は、印刷サービス３３０が提供しているＡＰＩを使用しているかを判定する。本実施例では、ファームウェア管理部３１２は、ＡＰＩバージョン（２．０）とＡＰＩのバージョン（２．８，２．９，３．０）との比較の結果、適切なバージョンのＡＰＩを使用していないと判定し、処理はＳ１１０５に遷移する。Ｓ１１０３の判定でプリンタ１１０が適切なＡＰＩを使用している場合、処理はＳ１１０４に遷移する。Ｓ１１０４で、ファームウェア管理部３１２は、「適切なＡＰＩが使用されている」という情報（Ｔｒｕｅ）を図６（Ｄ）に示す第一のＡＰＩバージョンチェック５３２に格納する。Ｓ１１０５で、ファームウェア管理部３１２は、「適切なＡＰＩが使用されていない」という情報（Ｆａｌｓｅ）を図６（Ｄ）に示す第一のＡＰＩバージョンチェック５３２に格納する。Ｓ１１０４またはＳ１１０５の処理が完了したら、プリンタ１１０は処理を終了する。
【００５０】
図１０（Ａ）は、Ｓ１００８の処理でプリンタ１１０がパネル上に表示するファームウェア確認画面を示す。プリンタ１１０が印刷サービス３３０の適切なＡＰＩを使用していないと判定した場合、ベンダーサーバ１４０に登録されているファームウェアの確認をユーザに促すため、図１０（Ａ）の画面を表示する。図１０（Ａ）は、ユーザへのメッセージと、確認することを指示する確認ボタン９０１、確認しないことを指示する確認保留ボタン９０２を表示する。確認ボタン９０１が押下された場合、プリンタ１１０のファームウェア管理部３１２は、ベンダーサーバ１４０からリリース情報ファイル６０２を取得する。確認保留ボタン９０２が押下された場合、プリンタ１１０はＳ１０１６の処理を実施する。
【００５１】
図１２は、図８のＳ１０１１の処理における、第二のＡＰＩバージョンチェックのフローを示す。プリンタ１１０は、ベンダーサーバ１４０から取得・格納した図６（Ｅ）に示す対応情報を使って、以下に示す第二のＡＰＩバージョンチェックを実施する。プリンタ１１０が各種サービスを利用するのに適切であると判定された情報は、図６（Ｃ）の符号５２５、５２６、５２７に格納される。
【００５２】
図１２のフローで処理が開始されると、Ｓ１２０１で、プリンタ１１０のファームウェア管理部３１２は、図６（Ｂ）に示すサービスＡＰＩバージョン５１３を取得する。ここでは、Ｓ１００６で印刷サービスが送信したＡＰＩバージョン（２．８，２．９，３．０）が取得される。Ｓ１２０２で、プリンタ１１０は、図６（Ｅ）に示す対応情報を取得する。
【００５３】
Ｓ１２０３で、ファームウェア管理部３１２は、ベンダーサーバ１４０が登録しているファームウェアは印刷サービス３３０のＡＰＩに対応しているかを判定する。本実施例では、ファームウェア管理部３１２は、対応ＡＰＩバージョン５４３の中に、ＡＰＩバージョン（２．８，２．９，３．０）が含まれているレコードを抽出する。対応ＡＰＩバージョン５４３がＶ３．０であれば、印刷サービス３３０が対応しているＡＰＩバージョンに一致する。ここでは、ファームウェア管理部３１２は、ファームウェアバージョン５４２がＶ７０．１とＶ７０．０であるレコードを抽出する。次に、ファームウェア管理部３１２は、抽出したファームウェアバージョン（Ｖ７０．１，Ｖ７０．０）と図６（Ｃ）に示す搭載ファームウェアバージョン５２２（６０．０）を比較する。本実施例では、抽出したファームウェアバージョンと搭載ファームウェアバージョンは一致しないため、ファームウェア管理部３１２は、Ｓ１２０３の処理で非対応であると判定し、処理はＳ１２０５に遷移する。
【００５４】
Ｓ１２０３の判定で、ベンダーサーバ１４０がリリースしているファームウェアが、印刷サービス３３０が提供しているＡＰＩに対応していた場合、処理はＳ１２０４に遷移する。Ｓ１２０４で、ファームウェア管理部３１２は、図６（Ｃ）に示すように、適切ファームウェアバージョン５２５、適切ファームウェアの利用可能サービス名５２６、適切ファームウェアの対応サービスＡＰＩバージョン５２７を格納する。ここでは、ファームウェア管理部３１２は、複数のファームウェアバージョンが存在するため、最新のファームウェアバージョン（７０．１）を格納する。また、ファームウェア管理部３１２は、「ベンダーサイト上のファームウェアは適切なＡＰＩを利用できる」という情報（Ｔｒｕｅ）を図６（Ｄ）に示す第二のＡＰＩバージョンチェック５３３に格納する。Ｓ１２０５で、ファームウェア管理部３１２は、「ベンダーサイト上のファームウェアは適切なＡＰＩを利用できない」という情報（Ｆａｌｓｅ）を図６（Ｄ）に示す第二のＡＰＩバージョンチェック５３３格納する。Ｓ１２０４またはＳ１２０５の処理が完了したら、プリンタ１１０は処理を終了する。
【００５５】
図１０（Ｂ）、図１０（Ｃ）、図１０（Ｄ）は、Ｓ１０１２の処理でプリンタ１１０がパネル上に表示する画面を示す。Ｓ１０１１に第二のＡＰＩバージョンチェックの判定結果に応じて、プリンタ１１０は操作部３１４のパネルにファームウェア更新確認画面（図１０（Ｂ）、図１０（Ｃ）、図１０（Ｄ））を表示する。操作部３１４は、判定結果がＴｒｕｅであった場合、図１０（Ｂ）の画面を表示する。図１０（Ｂ）の画面では、ベンダーサイト上に適切なＡＰＩに対応したファームウェアをダウンロードできるメッセージと、更新ボタン９０３と、保留ボタン９０４とが表示される。
【００５６】
更新ボタン９０３が押下された場合、プリンタ１１０は抽出したファームウェアバージョンのうち最新のファームウェア（Ｖ７０．１）をベンダーサーバ１４０から取得する。保留ボタン９０４が押下された場合、プリンタ１１０は印刷サービス３３０に現在搭載しているファームウェアのＡＰＩバージョン（Ｖ２．０）を通知する。代替的に、抽出したファームウェアバージョンが複数存在する場合、図１０（Ｃ）に示すようにインストール対象とする複数のファームウェアバージョンがリストされた選択画面を表示し、ユーザによって選択可能な画面としてもよい。この場合、プリンタ１１０は、ファームウェアバージョン７０．０に関するデータも図６（Ｃ）に示すデータに格納しておくことになる。
【００５７】
図１０（Ｃ）に示す更新画面は、更新ボタン９０５、保留ボタン９０６を備える。ユーザは、更新ボタン９０５を介してダウンロードするファームウェアを具体的に指定することができる。更新ボタン９０５が押下された場合、プリンタ１１０は選択されたいずれかのファームウェアをベンダーサーバ１４０からダウンロードする。保留ボタン９０６は図１０（Ｂ）の保留ボタン９０４と同じである。
【００５８】
一方で、プリンタ１１０が第二のＡＰＩバージョンチェックで「ベンダーサイト上のファームウェアは適切なＡＰＩを利用できない」と判定した場合、プリンタ１１０は図１０（Ｄ）の画面を表示する。プリンタ１１０は、図１０（Ｄ）に示す画面を表示し、印刷サービス３３０のＡＰＩに適したファームウェアがベンダーサーバ１４０に登録されていないことを通知する。図１０（Ｄ）に示す画面には、通知日やベンダーサーバ１４０でのファームウェア更新予定日などが表示されてもよい。図１０（Ｄ）に示す画面はＯＫボタン９０７を備え、ＯＫボタン９０７が押下されると、プリンタ１１０は初期画面（不図示）を表示する。
【００５９】
図１３および図１４は、実施例１のプリンタ１１０が行う処理を説明するフローチャートである。処理が開始され、図１３のＳ１３０１で、プリンタ１１０は、プリンタ登録部３１０を介して印刷サービス３３０のＷｅｂアプリケーション３３１に接続要求する。プリンタ１１０は、情報格納部３１１に保持している図６（Ｂ）に示すサービスＵＲＬ５１２を用いて印刷サービス３３０にアクセスする。Ｓ１３０２で、プリンタ１１０は印刷サービス３３０から接続許可を受信する。Ｓ１３０３で、プリンタ１１０は印刷サービス３３０にプリンタ１１０の登録を要求する。このとき送信するプリンタ１１０のデータは図６（Ａ）に示すデータと図６（Ｃ）の５２１〜５２４に示すデータである。Ｓ１３０４で、プリンタ１１０は印刷サービス３３０から印刷サービス３３０を利用することができるＡＰＩバージョンの情報を取得する。つまり、プリンタ１１０は、図６（Ｂ）に示すデータを取得し、情報格納部３１１に格納する。
【００６０】
Ｓ１３０５で、プリンタ１１０はファームウェア管理部３１２の処理により、図９で説明した第一のＡＰＩバージョンチェックを実施する。Ｓ１３０６で、プリンタ１１０は現在搭載しているファームウェアが対応するＡＰＩを用いて、印刷サービス３３０のＡＰＩを適切に利用できるかを判定する。利用できる（適切）と判定した場合、プリンタ１１０の処理はＳ１３２１へ遷移する。利用できない（不適切）と判定した場合、プリンタ１１０の処理はＳ１３０７へ遷移する。Ｓ１３０７で、プリンタ１１０は操作部３１４のパネル上に図１０（Ａ）に示すファームウェア確認指示画面を表示する。Ｓ１３０８で、プリンタ１１０はパネル操作でボタン押下されるとユーザの指示を検知する。Ｓ１３０９で、プリンタ１１０はＳ１３０８で検知した指示情報によりベンダーサーバ１４０に登録されているファームウェアを確認するかを判定する。確認しないという指示であった場合、処理はＳ１３２１へ遷移する。確認するという指示であった場合、処理はＳ１３１０へ遷移する。
【００６１】
図２０のＳ１３１０で、プリンタ１１０はベンダーＵＲＬ５０５（図６（Ａ））を用いて、ベンダーサーバ１４０に登録されているファームウェアと、登録ファームウェアが対応しているサービスのＡＰＩバージョンの対応情報を要求する。これにより、プリンタ１１０はベンダーサーバ１４０からリリース情報ファイル６０２を取得する。Ｓ１３１１で、プリンタ１１０は図６（Ｅ）に示す格納された対応情報を抽出する。Ｓ１３１２で、プリンタ１１０はファームウェア管理部３１２の処理により、図１２で説明した第二のＡＰＩバージョンチェックを実施する。
【００６２】
Ｓ１３１３で、プリンタ１１０は、印刷サービス３３０を利用できるＡＰＩバージョンに対応するファームウェア（適切なファームウェア）が、ベンダーサーバ１４０に登録されているかを判定する。適切なファームウェアがないと判定した場合、処理はＳ１３２０に遷移し、プリンタ１１０はベンダーサーバ１４０上に適切なＡＰＩのファームウェアがないことを表示する（図１０（Ｄ））。Ｓ１３２０の処理を実施したプリンタ１１０はＳ１３２１の処理を実施する。Ｓ１３１３で適切なファームウェアがあると判定した場合、Ｓ１３１４でプリンタ１１０は、操作部３１４のパネル上に図１０（Ｂ）または図１０（Ｃ）に例示するファームウェア更新確認画面を表示する。プリンタ１１０は、適切なファームウェアの情報を図６（Ｃ）の符号５２５〜５２７の各カラムに保持する。
【００６３】
Ｓ１３１５で、プリンタ１１０はパネル操作によるユーザの指示を検知する。Ｓ１３１６で、プリンタ１１０は検知したユーザ指示情報より、プリンタ１１０のファームウェアを更新するかを判定する。ファームウェアを更新しない場合、プリンタ１１０はＳ１３２１の処理を行う。ファームウェアを更新する場合、Ｓ１３１７でプリンタ１１０は、ベンダーサーバ１４０にファームウェアを要求する。このとき、図１０（Ｂ）がパネル上に表示された場合、プリンタ１１０は最新のファームウェアを要求し、図１０（Ｃ）が表示された場合、プリンタ１１０は選択されたファームウェアを要求する。Ｓ１３１８で、プリンタ１１０はベンダーサーバ１４０から取得対象のファームウェアをダウンロードする。
【００６４】
Ｓ１３１９で、プリンタ１１０は取得したファームウェアを利用してファームウェアを更新する。Ｓ１３２１で、プリンタ１１０は印刷サービス３３０に最新のプリンタ情報を送信する。プリンタ情報は図６（Ａ）のデータや図６（Ｃ）の符号５２１〜５２４に示すデータである。Ｓ１３２２でプ、リンタ１１０は印刷サービス３３０から登録完了通知を受信し、処理を終了する。
【００６５】
図１５は、実施例１の印刷サービス３３０が行う処理を説明するフローチャートである。処理が開始されると、印刷サービス３３０はＷｅｂアプリケーション３３１を介して、プリンタ１１０から接続要求を受け（Ｓ１４０１）、Ｓ１４０２で接続を許可する。Ｓ１４０３で、印刷サービス３３０はプリンタ１１０からプリンタ情報を受信する。Ｓ１４０４で、印刷サービス３３０は受信したプリンタ情報を情報格納部３３４の図４（Ｂ）に示すデータを確認し、プリンタ１１０を登録する。そして、Ｓ１４０５で印刷サービス３３０は情報格納部３３４からサービスＡＰＩリスト４２１（図４（Ｃ））を取得し、Ｓ１４０６の処理でプリンタ１１０にサービスＡＰＩリスト４２１を送信する。
【００６６】
Ｓ１４０７で、印刷サービス３３０はプリンタ１１０から最新のプリンタ情報を受信する。このとき受信するデータは、図６（Ｃ）の符号５２５〜５２７に示すデータである。Ｓ１４０８で印刷サービス３３０は、受信したプリンタに該当する、図４（Ｂ）に示すプリンタのレコードを取得した最新のプリンタ情報を用いて更新する。Ｓ１４０９で印刷サービス３３０はプリンタ１１０に登録完了通知を送信し、処理を終了する。
【００６７】
図１６は、実施例１のベンダーサーバ１４０が行う処理を説明するフローチャートである。処理が開始され、Ｓ１５０１でベンダーサーバ１４０は、Ｗｅｂアプリケーション３４０の処理により、登録しているファームウェアとサービスのＡＰＩバージョンの対応情報の要求をプリンタ１１０から受信する。Ｓ１５０２で、ベンダーサーバ１４０はファームウェア管理部３４１の処理により、リリース情報ファイル６０２を情報格納部３４２から取得する。Ｓ１５０３で、ベンダーサーバ１４０はリリース情報ファイル６０２をプリンタ１１０へ送信する。
【００６８】
Ｓ１５０４で、ベンダーサーバ１４０はプリンタ１１０からファームウェア取得要求を受信する。ファームウェア取得要求では、プリンタ機種名、ファームウェアバージョンが指定される。Ｓ１５０５で、ベンダーサーバ１４０はファームウェア管理部３４１の処理により、プリンタ１１０から要求されたファームウェアを情報格納部３４２から取得する。Ｓ１５０６でベンダーサーバ１４０はプリンタ１１０へ取得したファームウェアを送信し、処理を終了する。
【００６９】
なお、プリンタ登録時ではなく、プリンタ１１０がプリンタ情報の更新時に第一および第二のＡＰＩバージョンチェックの処理を行う場合もある。プリンタ情報更新のタイミングはプリンタ１１０が定期的に印刷サービス３３０にプリンタ情報を通知する時や、印刷サービス３３０とプリンタ１１０の間で印刷処理が実施される時がある。その他にも、プリンタ１１０のステータスやカウンタ情報がプリンタ１１０から印刷サービス３３０に通知される時のように、プリンタ１１０と印刷サービス３３０との間で通信が発生するタイミングであってもよい。プリンタ情報の更新時における処理では、Ｓ１００３のステップを除いて実施例１（図８）のＳ１００１からＳ１０１８までの処理と同じである。Ｓ１００３の処理だけがプリンタ登録時と異なる。図８のＳ１００３の処理では、プリンタの新規登録処理に代えて、プリンタ情報の更新処理が行われる。
【００７０】
プリンタ１１０の処理はＳ１３０３のステップを除いて図１３のフローチャートと同じである。Ｓ１３０３の処理だけが登録時の処理の場合と異なり、プリンタ情報の更新処理になる。印刷サービス３３０の処理はＳ１４０４のステップを除いて図１５のフローチャートと同じである。Ｓ１４０４の処理だけが登録時の処理の場合と異なり、プリンタ情報の更新処理になる。なお、ベンダーサーバ１４０の処理は図１６で示す処理と同じである。
【００７１】
上述したように、実施例１の印刷システムによれば、プリンタ１１０が第一のＡＰＩバージョンチェックと第二のＡＰＩバージョンチェックを実施する。これにより、印刷サービス３３０のＡＰＩに適したファームウェアがベンダーサーバ１４０に登録されているかが判定可能となる。従って、プリンタが印刷サービスを利用するシステムにおいて、印刷サービスを適切に利用できるファームウェアをプリンタにダウンロードさせることが可能となる。従って、印刷サービス３３０でＡＰＩが追加されたり、廃止されたりした場合に、ユーザがベンダーサーバ１４０から最新ファームウェアを取得してプリンタ１１０を更新しても、適切なＡＰＩを利用できないような不便を回避できるようになる。
【００７２】
なお、本実施例ではプリンタ１１０のパネルに図１０（Ａ）〜（Ｅ）の画面を表示し、ユーザによるベンダーサーバ１４０へのファームウェア確認やファームウェアのダウンロードの指示を可能とした。しかし、実施例１の構成に限られず、図１０に示す画面を表示せずに、プリンタ１１０がベンダーサーバ１４０へのファームウェア確認やファームウェアのダウンロードの処理をすべて自動で実行できる構成としてもよい。例えば、Ｓ１００７でプリンタ１１０が印刷サービス３３０の適切なＡＰＩを使用していないと判定した場合、プリンタ１１０はＳ１００８で図１０（Ａ）を表示せずに処理をＳ１００９へ遷移させ、ベンダーサーバからファームウェア情報を取得してもよい。また、Ｓ１０１１で「ベンダーサイト上のファームウェアは適切なＡＰＩを利用できる」と判断された場合、プリンタ１１０はＳ１０１２で図１０（Ｂ）や図１０（Ｃ）を表示せずに処理をＳ１０１３へ遷移させる。そして、適切なファームウェアが複数あった場合には、プリンタ１１０は適切なファームウェアのうち最新のものを指定してベンダーサーバ１４０にファームウェア取得を要求すればよい。
【００７３】
（実施例２）
図１から図１６を用いて実施例１を説明したが、ベンダーサーバ１４０によっては、特殊な用途向けのファームウェアを提供している場合もある。あるプリンタ機種向けのファームウェアであっても、ファームウェアバージョンによって機能が制限されていたり、特定の顧客向けのファームウェアであったりする。この場合、ファームウェアが印刷サービス３３０を利用できるＡＰＩバージョンに適していても、印刷サービス３３０を利用できないことになる。プリンタ１１０は、印刷サービス３３０のＡＰＩに対応したファームウェアであって、かつ、特殊な用途向けでないファームウェアをベンダーサーバ１４０からダウンロードする必要がある。この課題を解決するための方法を図７（Ｃ）、図１７、図１１（Ａ）を用いて説明する。
【００７４】
図１７は、実施例２においてプリンタ１１０が行う第二のＡＰＩバージョンチェックのフローチャートである。図１７の第二のＡＰＩバージョンチェックは、図１２の第二のＡＰＩバージョンチェックに対し、ベンダーサーバ１４０上のファームウェアが特殊用途向けのファームウェアであるかの判定が追加されている。図１７に示す第二のＡＰＩバージョンチェックにおいて、Ｓ１６０１からＳ１６０３の処理は図１２で説明したＳ１２０１からＳ１２０３の処理と同じである。
【００７５】
Ｓ１６０３で、プリンタ１１０がベンダーサーバ１４０に登録されているファームウェアが、印刷サービス３３０のＡＰＩバージョンに対応していないと判定した場合、処理はＳ１６０７へ遷移する。Ｓ１６０７の処理は、Ｓ１２０５の処理と同じである。Ｓ１６０３で、ベンダーサーバ１４０に登録されているファームウェアが印刷サービス３３０のＡＰＩバージョンに対応していると判定した場合、Ｓ１６０４で、プリンタ１１０はベンダーサーバ１４０上のファームウェアは特殊用途向けであるかを判定する。特殊用途向けのファームウェアであった場合、プリンタ１１０はＳ１６０５の処理を実施する。一般用途向けの標準ファームウェアであった場合、プリンタ１１０はＳ１６０６の処理を実施する。
【００７６】
Ｓ１６０５で、プリンタ１１０は「ベンダーサーバ１４０上のファームウェアが特殊用途向けファームウェアであるため利用できない」という情報を情報格納部３１１に記録する。Ｓ１６０５とＳ１６０７を区別するために、プリンタ１１０は図６（Ｄ）の５３３に対し、Ｓ１６０７の結果としてＦａｌｓｅ＿１を、Ｓ１６０５の結果としてＦａｌｓｅ＿２を格納する。Ｓ１６０６では、ベンダーサーバ１４０に登録されているファームウェアは標準ファームウェアであり印刷サービス３３０のＡＰＩも利用可能となるため、Ｓ１２０４と同じ処理を実施する。
【００７７】
図１１（Ａ）は、図１７で説明した第二のＡＰＩバージョンチェック後にプリンタ１１０のパネルに表示される画面である。この画面の構成は図１０（Ｄ）と同様であり、ＯＫボタン９０８を備える。ＯＫボタン９０８が押下されると、プリンタ１１０は初期画面（図示しない）を表示する。図１１（Ａ）の画面には、ベンダーサーバ１４０上に印刷サービス３３０向けの適切なファームウェアがまだ登録（リリース）されていないことを示すメッセージが表示される。
【００７８】
上述したように、プリンタ１１０が第一のＡＰＩバージョンチェックと第二のＡＰＩバージョンチェックを実施することにより、ベンダーサーバ１４０上に印刷サービス３３０のＡＰＩに適したファームウェアが登録されているかが判定可能となる。さらに、プリンタ１１０は、印刷サービス３３０のＡＰＩに対応したファームウェアであって、かつ、特殊な用途向けでないファームウェアをベンダーサーバ１４０からダウンロードすることが可能となり、ユーザビリティーが向上する。
【００７９】
（実施例３）
実施例３では、印刷サービス３３０が第一のＡＰＩバージョンチェックを実施し、印刷サービス３３０からの通知を受けてプリンタ１１０が第二のＡＰＩバージョンチェックを実施する。印刷サービス３３０が第一のＡＰＩバージョンチェックを実施するために、印刷システム１０００におけるソフトウェア構成は図３に示す構成と異なる構成になる。実施例３では、印刷サーバ群１３０もファームウェア管理部３３８を備える（不図示）。印刷サービス３３０のファームウェア管理部３３８は、第一のＡＰＩバージョンチェックを実施する。
【００８０】
実施例３のシーケンスを説明する。印刷サービス３３０が提供するＡＰＩが追加対象または廃止対象となった場合に、印刷サービス３３０はイベントを発生させて処理を開始する。まず、印刷サービス３３０は、図４（Ｂ）に示すデータを参照し、登録されているプリンタ１１０から１台を抽出して、第一のＡＰＩバージョンチェックを実施する。第一のＡＰＩバージョンチェックは図９に示すフローになるが、実施例３では印刷サービス３３０が実施されるため次のようになる。
【００８１】
図９のＳ１１０１で、印刷サービス３３０はファームウェア管理部３３８の処理により、抽出したプリンタ１１０のＡＰＩバージョン４１６を取得する。Ｓ１１０２で、印刷サービス３３０はファームウェア管理部３３８の処理によって、サービスＡＰＩリスト４２１（図４（Ｃ））を取得する。Ｓ１１０３で、印刷サービス３３０はファームウェア管理部３３８の処理によってプリンタ１１０が適切なＡＰＩを使用しているかを判定する。
【００８２】
判定結果は図５（Ａ）に示すデータとして格納される。つまり、実施例３では、プリンタが保持する図６（Ｄ）に示すチェック結果に類似するデータ（図５（Ａ））が印刷サービス３３０によって保持され、プリンタ毎の第一のＡＰＩバージョンチェック結果が格納される。図５（Ａ）は、プリンタ名４３１、第一のＡＰＩバージョンチェック４３２、第二のＡＰＩバージョンチェック４３３によって構成される。しかし、実施例３では第二のＡＰＩバージョンチェック４３３は使用しない。プリンタ名４３１は図４（Ａ）のプリンタ名４１１と同じである。第一のＡＰＩバージョンチェック４３２は第一のＡＰＩバージョンチェックの結果である。第二のＡＰＩバージョンチェック４３３は第二のＡＰＩバージョンチェックの結果である（データなし）。
【００８３】
Ｓ１１０４およびＳ１１０５で、印刷サービス３３０はファームウェア管理部３３８の処理によって情報格納部３３４の図５（Ａ）の第一のＡＰＩバージョンチェック４３２に結果を格納する。例えば、プリンタＡのＡＰＩバージョン４１６（２．０）を抽出した場合、印刷サービス３３０は図４（Ｃ）に示すサービスＡＰＩリストと比較する。ＡＰＩのバージョン（２．８，２．９，３．０）との比較の結果、適切なバージョンのＡＰＩを使用していないと判定し、処理はＳ１１０５に遷移する。Ｓ１１０３の判定でプリンタ１１０が適切なＡＰＩを使用している場合、処理はＳ１１０４に遷移する。Ｓ１１０４で、ファームウェア管理部３３８は、「適切なＡＰＩが使用されている」という情報（Ｔｒｕｅ）を図５（Ａ）の第一のＡＰＩバージョンチェック４３２に格納する。Ｓ１１０５で、ファームウェア管理部３３８は、「適切なＡＰＩが使用されていない」という情報（Ｆａｌｓｅ）を図５（Ａ）の第一のＡＰＩバージョンチェック４３２に格納する。
【００８４】
ファームウェア管理部３３８が、プリンタ１１０は適切なＡＰＩを使用していないと判定した場合、印刷サービス３３０はＩＰアドレス４１３（図４（Ｂ））を利用してプリンタ１１０にサービスＡＰＩリスト４２１を通知する。通知を受けてプリンタ１１０は、図１０（Ａ）のファームウェア確認指示画面を表示し、ファームウェア確認指示を検知する。次に、プリンタ１１０はベンダーサーバ１４０に、登録されているファームウェアとサービスのＡＰＩバージョンの対応情報を要求する。ベンダーサーバ１４０がリリース情報ファイル６０２をプリンタ１１０へ送信することで、ファームウェアとサービスのＡＰＩバージョンの対応情報がプリンタ１１０に通知される。ここで、プリンタ１１０は第二のＡＰＩバージョンチェックを実施する（実施例１のＳ１０１１と同じ）。ベンダーサーバ１４０に印刷サービス３３０で適切に利用できるファームウェアがあると判定した場合、プリンタ１１０はファームウェア更新確認画面を表示する（実施例１のＳ１０１２と同じ）。プリンタ１１０がファームウェア更新指示を検知した後の処理は、実施例１に示したＳ１０１３からＳ１０１８までの処理と同じである。
【００８５】
一方、実施例３のプリンタ１１０は、印刷サービス３３０から利用可能なサービスＡＰＩリスト（図４（Ｃ））を受信する。この後の処理は実施例１で説明したプリンタ１１０のＳ１３０７からＳ１３２２までの処理と同じである。実施例３でプリンタ１１０は第二のＡＰＩバージョンチェックを実施する。実施例３におけるベンダーサーバ１４０の処理は実施例１で説明した図１６で示す処理と同じである。
【００８６】
上述したように実施例３では、印刷サービス３３０が第一のＡＰＩバージョンチェックを実施し、プリンタ１１０が第二のＡＰＩバージョンチェックを実施する。これにより、ベンダーサーバ１４０に印刷サービス３３０のＡＰＩに適したファームウェアが登録されているかが判定可能となる。そして、印刷サービス３３０でＡＰＩが追加されたり、廃止されたりした場合に、ユーザがベンダーサーバ１４０から最新ファームウェアを取得してプリンタ１１０を更新しても、適切なＡＰＩを利用できないような不便を回避できるようになる。また、プリンタは第二のＡＰＩバージョンチェックだけを行えばよく、負担が軽減される。
【００８７】
（実施例４）
実施例４では、印刷システム１０００は、プリンタ１１０、クライアント端末１２０、印刷サーバ群１３０、ベンダーサイトサーバ群１４０から構成される。実施例４では、印刷サービス３３０が第一のＡＰＩバージョンチェックを実施し、クライアント端末にプリンタ管理画面（図１８（Ａ））を表示し、適切なＡＰＩに対応していないプリンタを通知する。そして、プリンタ管理画面からファームウェア確認指示を受けた印刷サービス３３０がプリンタ１１０に該指示を通知し、プリンタ１１０が第二のＡＰＩバージョンチェックを実施する。実施例４の印刷サービス３３０におけるソフトウェア構成は実施例３と同じである。
【００８８】
図１８（Ａ）は、印刷サービス３３０から送信されてクライアント１２０の画面上に表示される、ファームウェア確認指示のためのプリンタ管理画面である。印刷サービス３３０は、同一の管理者ユーザアカウントに紐付けて登録された全てのプリンタについて第一のＡＰＩバージョンチェックを実施すると、図１８（Ａ）に示す画面をクライアント１２０に送信する。図１８（Ａ）のプリンタ管理画面は、印刷サービス３３０からのメッセージのほかにプリンタ選択部１４０１、確認ボタン１４０２、確認保留ボタン１４０３を備える。プリンタ選択部１４０１は、ベンダーサーバ１４０に印刷サービス３３０に対応したＡＰＩを備えるファームウェアが登録されているかを確認するためのプリンタを選択するためのものである。確認ボタン１４０２はベンダーサーバ１４０のファームウェアを確認するための指示を出すためのボタンである。確認保留ボタン１４０３はベンダーサーバ１４０のファームウェアを確認しないことを指示するためのボタンである。
【００８９】
図２０は、実施例４のシーケンスを説明するための図である。印刷サービス３３０でＡＰＩの追加、ＡＰＩの廃止などのイベントが発生することにより印刷サービス３３０は処理を開始する。Ｓ１７０１で、印刷サービス３３０は登録済みのプリンタに対し第一のＡＰＩバージョンチェックを実施する。本実施例では、図１８（Ａ）のプリンタ管理画面にてユーザ単位でファームウェアの確認指示ができるように、第一のＡＰＩバージョンチェックはプリンタを管理するユーザアカウントごとに関連付けられているプリンタに対し順番に実施される。例えば、印刷サービス３３０は、図４（Ｂ）に示すデータに基づいて、ユーザＡに紐付けて登録されたプリンタＡ，Ｂ，Ｃを抽出する。Ｓ１７０２で、印刷サービス３３０は不適切なＡＰＩを使用しているプリンタを抽出する。図４（Ｂ）に示すデータ例では、サービスＡＰＩリスト４２１を用いた第一のＡＰＩバージョンチェックの結果、プリンタＡ，Ｂ，ＣのＡＰＩバージョンは１．０，１．２，２．０であり、不適切なＡＰＩを使用しているプリンタであると判定される。
【００９０】
次に、Ｓ１７０３で、クライアント端末１２０からプリンタ管理画面へログインが実施される。Ｓ１７０４で、印刷サービス３３０は図１８（Ａ）に示すプリンタ管理画面をクライアント端末１２０に返す。Ｓ１７０５で、クライアント端末１２０によりプリンタ管理画面のプリンタ選択部１４０１でプリンタが選択され、確認ボタン１４０２が押下されたら、Ｓ１７０６でクライアント端末１２０は印刷サービス３３０にファームウェア確認指示を送信する。Ｓ１７０５で、確認保留ボタン１４０３の押下が検知された場合、Ｓ１７０６でクライアント端末１２０は印刷サービス３３０にファームウェア確認指示を送信しない。
【００９１】
Ｓ１７０７で、印刷サービス３３０は、Ｓ１７０５で選択されたプリンタ１１０へファームウェア確認指示を送信する。このとき、印刷サービス３３０は、第一のＡＰＩバージョンチェック結果４３２と、サービスＡＰＩリスト４２１も一緒にプリンタ１１０に送信する。プリンタ１１０によるＳ１７０８からＳ１７１０までの処理は実施例１のＳ１００９からＳ１０１１までの処理と同じである。Ｓ１７１１で、プリンタ１１０は第二のＡＰＩバージョンチェックの結果をファームウェア情報として印刷サービス３３０へ送信する。
【００９２】
Ｓ１７１２で、印刷サービス３３０はベンダーサーバ１４０上のファームウェア情報を図１８（Ｂ）のプリンタ管理画面をクライアント端末１２０へ送信する。図１８（Ｂ）はファームウェア更新を指示するためのプリンタ管理画面である。図１８（Ｂ）のプリンタ管理画面は、印刷サービス３３０からのメッセージの他にプリンタ選択部１４０４、ダウンロードボタン１４０５、ダウンロード保留ボタン１４０６を備える。プリンタ選択部１４０４は、ベンダーサーバ１４０からプリンタ上にダウンロードする対象のプリンタを選択するためのものである。ダウンロードボタン１４０５は、ベンダーサーバ１４０のファームウェアをダウンロードするための指示を出すためのボタンである。ダウンロード保留ボタン１４０６は、ベンダーサーバ１４０のファームウェアをダウンロードしないことを指示するためのボタンである。選択されたプリンタに複数の適切なファームウェアが存在した場合、最新の適切なファームウェアが自動的に選択される。もしも、複数の適切なファームウェアからダウンロード対象のファームウェアをユーザが選択するならば、次のようになる。
【００９３】
図１８（Ｂ）でプリンタＣが選択されダウンロードボタン１４０５が押下された場合、印刷サービス３３０は図１８（Ｃ）のプリンタ管理画面をクライアント端末１２０へ送信する。図１８（Ｃ）のプリンタ管理画面はファームウェア選択部１４０７、選択ボタン１４０８、キャンセルボタン１４０９を備える。ファームウェア選択部１４０７でプリンタＣに対してダウンロードするファームウェアが選択され、選択ボタン１４０８によってファームウェア更新が指示される。キャンセルボタン１４０９が押下された場合は、図１８（Ｂ）へ戻る。
【００９４】
Ｓ１７１０で、ベンダーサーバ１４０上に適切なＡＰＩに対応したファームウェアがないと判定された場合、Ｓ１７１２で印刷サービス３３０は、図１８（Ｄ）のプリンタ管理画面をクライアント端末１２０へ送信する。図１８（Ｄ）は、印刷サービス３３０のＡＰＩに適したファームウェアがベンダーサーバ１４０に登録されていないことを通知する。図１８（Ｄ）には通知日が表示されてもよい。図１８（Ｄ）はＯＫボタン１４１０を備え、ＯＫボタン１４１０が押下されると、プリンタ管理画面は初期画面（図１８（Ｆ））を表示する。図１８（Ｆ）は印刷ボタン１４１２、削除ボタン１４１３、詳細ボタン１４１４、プリンタ選択部１４１５を備える。
【００９５】
図２０のＳ１７１４で、クライアント端末１２０は印刷サービス３３０にプリンタを指定したファームウェア更新指示を送信する。Ｓ１７１５で、印刷サービス３３０は指定されたプリンタ１１０にファームウェア更新指示を送信する。その後のＳ１７１６からＳ１７２１までの処理は実施例１のＳ１０１３からＳ１０１８までの処理と同じである。Ｓ１７２２で、印刷サービス３３０はクライアント端末１２０にプリンタ１１０のファームウェア更新結果を通知する。更新結果の画面例を図１８（Ｅ）に示す。図１８（Ｅ）のプリンタ管理画面は、印刷サービス３３０からのメッセージのほかにＯＫボタン１４１１を備える。ＯＫボタン１４１１が押下されると、プリンタ管理画面は初期画面（図１８（Ｆ））を表示する。Ｓ１７２３でクライアント端末１２０がプリンタ管理画面からログアウトしたら、処理は終了する。
【００９６】
図２１は、実施例４のクライアント端末１２０による処理を説明するフローチャートを示す。Ｓ１８０１で、クライアント端末１２０は、Ｗｅｂブラウザ３２０を介して印刷サービス３３０が提供するプリンタ管理画面へアクセスする。Ｓ１８０２で、クライアント端末１２０はプリンタ管理画面（図１８（Ａ））を取得する。Ｓ１８０３で、クライアント端末１２０はプリンタ１１０を指定したファームウェア確認指示を検知する。Ｓ１８０４でクライアント端末１２０は印刷サービス３３０へプリンタ１１０を指定してファームウェア確認指示を送信する。
【００９７】
Ｓ１８０５で、クライアント端末１２０は印刷サービス３３０からプリンタ１１０に適したファームウェア情報を受信する。Ｓ１８０６で、クライアント端末１２０はプリンタ１１０に対するファームウェアを指定したファームウェア更新指示を検知する。Ｓ１８０７で、クライアント端末１２０は印刷サービス３３０へプリンタ１１０のファームウェアを指定したファームウェア更新指示を送信する。Ｓ１８０８で、クライアント端末１２０は印刷サービス３３０からプリンタ１１０のファームウェア更新結果を受信する。Ｓ１８０９で、クライアント端末１２０はプリンタ管理画面をログアウトし、処理を終了する。
【００９８】
実施例４のプリンタ１１０による処理を説明する。プリンタ１１０は印刷サービス３３０から第一のＡＰＩバージョンチェック結果、サービスＡＰＩリスト４２１、およびファームウェア確認指示を受信する。プリンタ１１０は、情報格納部３１１からベンダーＵＲＬ５０５を取得し、ベンダーサーバ１４０へアクセスし、プリンタ１１０向けファームウェアが対応している印刷サービス３３０のＡＰＩバージョンを問い合わせる。プリンタ１１０は、リリース情報ファイル６０２を受信してファームウェアが対応している印刷サービス３３０のＡＰＩバージョンを取得する。プリンタ１１０は第二のＡＰＩバージョンチェックを実施する。
【００９９】
プリンタ１１０は、プリンタ１１０が印刷サービス３３０を利用するのに適切なＡＰＩを備えるファームウェアがベンダーサーバ１４０にあるかを判定する。適切なファームウェアがある場合、プリンタ１１０は適切なＡＰＩに対応したファームウェアの情報を抽出し、図６（Ｃ）、図６（Ｄ）に示すように各データを格納する。適切なファームウェアがない場合、プリンタ１１０はファームウェア情報がないことを図６（Ｄ）に示す第二のＡＰＩバージョンチェック５３３に格納する。そして、プリンタ１１０はベンダーサーバ１４０上のファームウェア情報を印刷サービス３３０へ送信する。その後、プリンタ１１０は印刷サービス３３０からファームウェアを指定したファームウェア更新指示を受信する。これ以降の処理は実施例１のＳ１３１７からＳ１３１９、そしてＳ１３２１、Ｓ１３２２までの処理と同じである。実施例４のユーザの意思による操作指示はクライアント端末１２０によって実施されるため、プリンタ１１０のパネル上に画面表示しなくてよい。実施例４におけるベンダーサーバ１４０の処理は実施例１で説明した図１６で示す処理と同じである。
【０１００】
上述したように実施例４では印刷サービス３３０が第一のＡＰＩバージョンチェックを行い、プリンタ１１０が第二のＡＰＩバージョンチェックを実施する。そして、クライアント端末１２０がベンダーサーバ１４０上のファームウェアの確認やプリンタ１１０のファームウェア更新指示を実施する。これにより、ベンダーサーバ１４０上に印刷サービス３３０のＡＰＩに適したファームウェアが登録されているかが判定可能となる。これにより、印刷サービス３３０でＡＰＩが追加されたり、廃止されたりした場合に、ユーザがベンダーサーバ１４０から最新ファームウェアを取得してプリンタ１１０を更新しても、適切なＡＰＩを利用できないような不便を回避できるようになる。
【０１０１】
（実施例５）
実施例５では、プリンタ１１０による印刷サービス３３０へのプリンタ登録時に、印刷サービス３３０が第一のＡＰＩバージョンチェックと第二のＡＰＩバージョンチェックを実施する。本実施例では、印刷システム１０００は印刷サーバ群１３０、プリンタ１１０、ベンダーサイトサーバ群１４０から構成される。印刷サービス３３０はプリンタ１１０が印刷サービス３３０を利用するのに適切なファームウェアを利用していないと判断し、さらに、ベンダーサーバ１４０に適切なファームウェアがあると判断した場合、プリンタ１１０にファームウェアの更新を促す。印刷システム１０００におけるソフトウェア構成は、印刷サービス３３０が第二のＡＰＩバージョンチェックを実施するために、図３に対し機能が追加される。印刷サーバ群１３０はファームウェア管理部３３８（図示しない）を備える。ファームウェア管理部３３８はベンダーサーバ１４０のＷｅｂアプリケーション３４０と通信可能である。
【０１０２】
図２２を用いて、実施例５のシーケンスを説明する。Ｓ１００１〜Ｓ１００５までの処理は、図８を用いて説明した処理と同様であるため、説明を省略する。Ｓ２１０１で、印刷サービス３３０が、図９を用いて説明した第一のＡＰＩバージョンチェックを実施する。第一のＡＰＩバージョンチェックの結果、プリンタ１１０に搭載されているファームウェアが適切であると判定された場合、印刷サービス３３０はプリンタ登録完了の通知をプリンタ１１０へ送信する。第一のＡＰＩバージョンチェックの結果、プリンタ１１０のファームウェアが適切でなかった場合、Ｓ２１０２で、印刷サービス３３０はプリンタ１１０から受信して保持しているベンダーＵＲＬ５０５を利用して、ベンダーサーバ１４０にアクセスする。
【０１０３】
印刷サービス３３０はベンダーサーバ１４０に対し、登録されているファームウェアのＡＰＩバージョンを問い合わせる。つまり、実施例５では、印刷サービス３３０がリリース情報ファイル６０２を要求する。Ｓ２１０３で、ベンダーサーバ１４０は、印刷サービス３３０に対してリリース情報ファイル６０２（図７（Ａ））を送信する。ファームウェアのＡＰＩバージョンはリリース情報ファイル６０２に含まれている。印刷サービス３３０は、情報格納部３３４にリリース情報ファイル６０２の情報を格納する。実施例５においては、印刷サービス３３０が図５（Ｃ）に示すデータを格納する。ここでは、印刷サービス３３０は、プリンタ名４５１、プリンタ機種名４５２、適切ファームウェアバージョン４５３、対応ＡＰＩバージョン４５４を格納する。適切なファームウェアが複数存在した場合、情報格納部３３４は適切ファームウェアバージョン４５３と対応ＡＰＩバージョン４５４を複数格納できる。
【０１０４】
Ｓ２１０４で、印刷サービス３３０が、図１２を用いて説明した第二のＡＰＩバージョンチェックを実施する。具体的には、図１２のＳ１２０１で、印刷サービス３３０は、ファームウェア管理部３３８の処理によりサービスＡＰＩリスト４２１を取得する。Ｓ１２０２で、印刷サービス３３０はベンダーサーバ１４０に登録されているファームウェアが対応している印刷サービス３３０のＡＰＩバージョン（４５４）を取得する。Ｓ１２０３で、印刷サービス３３０はファームウェア管理部３３８の処理により、ベンダーサーバ１４０に登録されているファームウェアは印刷サービス３３０が提供するＡＰＩに対応しているかを判定する。
【０１０５】
Ｓ１２０４およびＳ１２０５で、印刷サービス３３０はファームウェア管理部３３８の処理によって情報格納部３３４の図５（Ａ）に示す第二のＡＰＩバージョンチェック４３３に結果を格納する。Ｓ１２０３の判定でベンダーサーバ１４０に登録されているファームウェアが印刷サービス３３０のＡＰＩに対応していた場合、Ｓ１２０４で「ベンダーサイト上のファームウェアは適切なＡＰＩを利用できる」という情報（Ｔｒｕｅ）が格納される。印刷サービス３３０は、図５（Ｂ）に示す適切ファームウェアバージョン４４２、適切ファームウェアの対応サービスＡＰＩバージョン４４３を格納する。印刷サービス３３０は、登録したプリンタのプリンタ機種名４４１も図５（Ｂ）に示すように格納する。
【０１０６】
Ｓ１２０３の判定で、ベンダーサーバ１４０に登録されているファームウェアが印刷サービス３３０のＡＰＩに対応していなかった場合、Ｓ１２０５で「ベンダーサイト上のファームウェアは適切なＡＰＩを利用できない」という情報（Ｆａｌｓｅ）が格納される。Ｓ１２０４またはＳ１２０５の処理が完了したら、印刷サービス３３０による第二のＡＰＩバージョンチェックは終了する。
【０１０７】
Ｓ２１０５で、印刷サービス３３０はプリンタ１１０に判定結果を通知するメッセージを送信する。プリンタ１１０が印刷サービス３３０から受信した内容がファームウェア更新指示に関するものであった場合、プリンタ１１０はファームウェア更新確認画面（図１０（Ｃ））を表示し、ユーザによる操作指示を検知する。ユーザによる操作指示がファームウェア更新を指示する内容であった場合、実施例５のシーケンスは実施例１のＳ１０１３からＳ１０１８までの処理と同じ処理を実施する。なお、印刷サービス３３０が実施したプリンタへの通知内容はクライアント端末１２０に対してメール通知されてもよい。
【０１０８】
なお、実施例５では、プリンタは３通りの通知を印刷サービス３３０から受信することとなる。第一の通知はファームウェア更新を実施するかを確認する通知である。第二の通知はプリンタ１１０のファームウェアが不適切であること、または適切なファームウェアがベンダーサイトに登録されておらずファームウェア更新できないことを伝える通知である。第三の通知は印刷サービス３３０におけるプリンタ情報の登録完了通知である。第一の通知であると判定した場合、プリンタ１１０はパネルにファームウェア更新確認画面（図１０（Ｂ））を表示する。第二の通知であると判定した場合、プリンタ１１０はパネルに第二の通知の内容を表示し、ベンダーサーバ１４０に印刷サービス３３０を利用するのに適したＡＰＩに対応したファームウェアが登録されていないことを通知する（図１１（Ｂ））。
【０１０９】
上述したように実施例５では印刷サービス３３０が第一のＡＰＩバージョンチェックと第二のＡＰＩバージョンチェックを実施する。そして、ベンダーサーバ１４０上に印刷サービス３３０のＡＰＩに適したプリンタ１１０のファームウェアが登録されているかが判定可能となる。これにより、印刷サービス３３０でＡＰＩが追加されたり、廃止されたりした場合に、ユーザがベンダーサーバ１４０から最新ファームウェアを取得してプリンタ１１０を更新しても、適切なＡＰＩを利用できないような不便を回避できるようになる。
【０１１０】
（実施例６）
なお、印刷サービス３３０がプリンタ情報を更新する時に、プリンタ１１０のＡＰＩが印刷サービス３３０のＡＰＩに適合しているかを判定してファームウェアを更新することも可能である。実施例６の印刷システムは、プリンタ１１０、クライアント端末１２０、印刷サーバ群１３０、ベンダーサーバ１４０から構成される。実施例６における実施例５との差異は、印刷サービス３３０が第一および第二のＡＰＩバージョンチェック処理を起動するタイミングと、クライアント端末１２０が追加されていることである。実施例５がプリンタ新規登録時の処理であるのに対し、実施例６は印刷サービス３３０に登録されているプリンタ１１０のプリンタ情報の更新時の処理になる。プリンタ情報更新のタイミングはプリンタ１１０が定期的に印刷サービス３３０にプリンタ情報を通知する時や、印刷サービス３３０とプリンタ１１０の間で印刷処理が実施される時がある。その他にもプリンタ１１０のステータスやカウンタ情報がプリンタ１１０から印刷サービス３３０に通知される時のようにプリンタ１１０と印刷サービス３３０との間で通信が発生するタイミングであってもよい。
【０１１１】
実施例６のプリンタ１１０による処理を説明する。実施例５の説明でプリンタ１１０は最初に実施例１の図１３で説明したＳ１３０１からＳ１３０３までの処理を実施すると述べた。実施例６ではＳ１３０３のステップがプリンタ情報の更新処理になる。その他の処理は実施例５の処理と同じである。
【０１１２】
実施例６の印刷サービス３３０による処理を説明する。実施例５の説明で印刷サービス３３０は最初に実施例１の図１５で説明したＳ１４０１からＳ１４０４までの処理を実施すると述べた。実施例６ではＳ１４０４のステップがプリンタ情報の更新になる。その他の処理は実施例５と同じである。実施例６におけるベンダーサーバ１４０の処理は実施例５で説明した処理と同じである。
【０１１３】
上述したように実施例６では印刷サービス３３０が第一のＡＰＩバージョンチェックと第二のＡＰＩバージョンチェックを実施する。そして、ベンダーサーバ１４０上に印刷サービス３３０のＡＰＩに適したプリンタ１１０のファームウェアが登録されているかが判定可能となる。これにより、印刷サービス３３０でＡＰＩが追加されたり、廃止されたりした場合に、ユーザがベンダーサーバ１４０から最新ファームウェアを取得してプリンタ１１０を更新しても、適切なＡＰＩを利用できないような不便を回避できるようになる。
【０１１４】
（実施例７）
実施例７では、印刷サービス３３０が第一のＡＰＩバージョンチェックと第二のＡＰＩバージョンチェックを実施する。実施例７の印刷システムの構成は実施例６と同様である。実施例６と異なり、印刷サービス３３０は、図１８（Ａ）に示す画面は表示せず、図１８（Ｂ）のプリンタ管理画面を用意し、適切なＡＰＩのファームウェアを搭載していないプリンタ１１０をユーザに知らせる。クライアント端末１２０を用いたプリンタ管理画面経由のユーザからのファームウェア更新指示に基づき、印刷サービス３３０はプリンタ１１０にファームウェア更新を指示する。
【０１１５】
実施例７のシーケンスを説明する。印刷サービス３３０がＡＰＩの追加や廃止などのイベントを発生させることにより印刷サービス３３０は処理を開始する。印刷サービス３３０は、実施例６と同様、登録済みのプリンタに対し第一のＡＰＩバージョンチェックを実施する。印刷サービス３３０は不適切なファームウェアを利用しているプリンタ１１０について、第二のＡＰＩバージョンチェックを実施する。次に、クライアント端末１２０からプリンタ管理画面へログインが実施される。印刷サービス３３０は第一および第二のＡＰＩバージョンチェックの結果に応じてプリンタ管理画面を設定する。ユーザに紐付くプリンタ管理画面に表示されるプリンタがすべて適切なファームウェアを利用している場合、印刷サービス３３０は図１８（Ｆ）に示す通常のプリンタ管理画面を設定する。
【０１１６】
プリンタ管理画面に表示されるプリンタが不適切なファームウェアを利用していて、ベンダーサーバ１４０に適切なファームウェアが登録されている場合、印刷サービス３３０は図１８（Ｂ）に示すプリンタ管理画面をクライアント端末１２０に送信する。プリンタ管理画面に表示されるプリンタが不適切なファームウェアを利用していて、ベンダーサーバ１４０に適切なファームウェアが登録されていない場合、印刷サービス３３０は図１９（Ａ）に示すプリンタ管理画面をクライアント端末１２０に送信する。
【０１１７】
図１９（Ａ）は、ベンダーサーバ１４０に適切なファームウェアが登録されていないことを通知するプリンタ管理画面である。図１９（Ａ）は、印刷サービス３３０からのメッセージのほかに印刷ボタン１４１６、削除ボタン１４１７、詳細ボタン１４１８、プリンタ選択部１４１９を備える。ここでは、印刷サービス３３０はクライアント端末１２０に図１８（Ｂ）に示すプリンタ管理画面を送信するものとする。クライアント端末１２０は図１８（Ｂ）に示すプリンタ管理画面を表示し、ユーザ操作によるプリンタ１１０を指定したファームウェア更新指示を検知する。クライアント端末１２０は、プリンタ１１０を指定したファームウェア更新指示を印刷サービス３３０へ送信する。
【０１１８】
受信した指示がファームウェア更新指示であった場合、印刷サービス３３０はクライアント端末１２０にファームウェア更新処理の開始を通知する（図１９（Ｂ））。図１９（Ｂ）では、ファームウェア更新処理中のプリンタは処理できないことが明示される。印刷サービス３３０は、プリンタ１１０へファームウェアの更新を指示する。クライアント端末１２０の操作により複数のプリンタ１１０が指定されていた場合、複数のプリンタ１１０に対してファームウェア更新の処理が実施される。これ以降の処理は実施例４の図２０で説明したＳ２３１５からＳ２３２１までの処理と同じである。印刷サービス３３０は、ファームウェ更新処理が完了したことを図１９（Ｃ）のプリンタ管理画面を送信することによりクライアント端末１２０へ通知する。
【０１１９】
上述したように実施例７では印刷サービス３３０が第一のＡＰＩバージョンチェックと第二のＡＰＩバージョンチェックを実施する。実施例６と異なり、第一、第二のＡＰＩバージョンチェック後に、プリンタ管理画面（図１８（Ｂ））が表示される。印刷サービス３３０で利用できるＡＰＩバージョンに対応するファームウェアが存在するプリンタだけが表示されるため、上述してきた各実施例の効果に加え、ユーザの操作が簡易になりユーザビリティーが向上する効果が得られる。
【０１２０】
（実施例８）
実施例８では、印刷サービス３３０が第一のＡＰＩバージョンチェックと第二のＡＰＩバージョンチェックを実施する。印刷サービス３３０はプリンタ１１０が印刷サービス３３０を利用するのに適切なファームウェアを利用していないと判断し、さらに、ベンダーサーバ１４０に適切なファームウェアがあると判断した場合、プリンタ１１０にファームウェアの更新を促す。実施例８の印刷システム１０００におけるソフトウェア構成は実施例５と同じである。
【０１２１】
実施例８のシーケンスを説明する。印刷サービス３３０がＡＰＩの追加や廃止などのイベントを発生させることにより、印刷サービス３３０は処理を開始する。実施例７と同様に、印刷サービス３３０は第一のＡＰＩバージョンチェックと第二のＡＰＩバージョンチェックを実施する。その後、印刷サービス３３０が抽出した各プリンタ１１０にファームウェア更新を指示する。ここまでの処理は、図２２を用いて説明した実施例５のＳ２１０５までの処理と同じである。実施例８では、更新指示を受けたプリンタ１１０が、ファームウェア更新確認画面（図１０（Ｃ））をパネルに表示し、ユーザ操作を待つ。このため、プリンタ１１０のパネルにファームウェア更新確認画面（図１０（Ｃ））が表示されることをユーザに通知する仕組みが必要である。印刷サービス３３０は第二のＡＰＩバージョンチェックが完了した段階で、図１９（Ｄ）や図１９（Ｅ）のようなプリンタ管理画面を作成し、ユーザに通知する。
【０１２２】
図１９（Ｄ）は、プリンタ１１０のファームウェア更新を促すメッセージを表示するプリンタ管理画面の図である。図１９（Ｅ）は古いＡＰＩが使用できなくなることとともにファームウェアの更新を促すメッセージを表示するプリンタ管理画面の図である。また、シーケンスが終了するとき、印刷サービス３３０はファームウェアの更新が完了したことを図１９（Ｆ）のプリンタ管理画面を作成することによりユーザに通知してもよい。なお、ファームウェア更新確認画面（図１０（Ｃ））を表示せずに、自動的にファームウェア取得を開始してもよい。自動的にファームウェアを更新した場合も、印刷サービス３３０は図１９（Ｆ）のプリンタ管理画面を作成して、ユーザに通知する。印刷サービス３３０はこれらのメッセージを電子メールでユーザに対し通知してもよい。
【０１２３】
実施例８の印刷サービス３３０による処理を説明する。印刷サービス３３０はＡＰＩの追加や廃止などのイベントを発生させることにより処理を開始する。印刷サービス３３０は、実施例７の処理と同様に第一のＡＰＩバージョンチェックと第二のＡＰＩバージョンチェックを実施する。抽出した、適切なＡＰＩを利用していない各プリンタに対する処理は実施例５や実施例６における印刷サービス３３０の処理と同じである。印刷サービス３３０は、第二のＡＰＩバージョンチェックが完了した段階で、図１９（Ｄ）や図１９（Ｅ）のようなプリンタ管理画面を作成し、ユーザに通知する。
【０１２４】
実施例８のプリンタ１１０による処理を説明する。プリンタ１１０は印刷サービス３３０から更新指示を受け、ファームウェア更新確認画面（図１０（Ｃ））を表示する。受信情報は適切なファームウェア情報を添えたファームウェア更新確認画面の生成指示であってもよい。プリンタ１１０はパネルにファームウェア更新確認画面（図１０（Ｃ））を表示する。ファームウェア更新確認画面（図１０（Ｃ））の表示以降のプリンタ１１０の処理は実施例５におけるプリンタ１１０の処理と同じである。実施例８におけるベンダーサーバ１４０の処理は実施例５で説明した処理と同じである。
【０１２５】
上述したように実施例８では印刷サービス３３０が第一のＡＰＩバージョンチェックと第二のＡＰＩバージョンチェックを実施する。そして、ベンダーサーバ１４０上に印刷サービス３３０のＡＰＩに適したプリンタ１１０のファームウェアが登録されているかが判定可能となる。これにより、印刷サービス３３０でＡＰＩが追加されたり、廃止されたりした場合に、ユーザがベンダーサーバ１４０から最新ファームウェアを取得してプリンタ１１０を更新しても、適切なＡＰＩを利用できないような不便を回避できるようになる。
【０１２６】
（実施例９）
実施例８では印刷サービス３３０が登録されている個々のプリンタごとに第二のＡＰＩバージョンチェックを実施していた。実施例９では第二のＡＰＩバージョンチェックを実施する前の第一のＡＰＩバージョンチェックを、個々のプリンタごとではなくプリンタ機種毎に実施する。このＡＰＩバージョンチェックを第三のＡＰＩバージョンチェック（第３の判定）と呼ぶ。印刷サービスのＡＰＩに対応するファームウェアを搭載している機種については、ベンダーサーバ１４０から対応情報を取得する必要はない。従って、ベンダーサーバ１４０へのアクセス数を低減させることができる。
【０１２７】
印刷サービス３３０は、情報格納部３３４に機種ごとのファームウェア管理テーブル（図５（Ｄ））を保持する。図５（Ｄ）はプリンタ機種名４６１、ファームウェバージョン４６２、ＡＰＩウェアバージョン４６３、ベンダーＵＲＬ４６４、第三のＡＰＩバージョンチェック４６５によって構成される。プリンタ機種名４６１、ファームウェバージョン４６２、ＡＰＩウェバージョン４６３は図４（Ｂ）、ベンダーＵＲＬ４６４は図４（Ｂ）の符号４１４〜４１７に示すデータと同じである。
【０１２８】
第三のＡＰＩバージョンチェック４６５は、実施例９で印刷サービス３３０が行う第三のＡＰＩバージョンチェックの結果である。印刷サービス３３０は、第三のＡＰＩバージョンチェックで適切なＡＰＩに対応していないファームウェアを判定する。次に、適切でないファームウェアのプリンタ機種に対し、印刷サービス３３０はベンダーサーバ１４０上に適切なＡＰＩに対応したファームウェアが登録されていないかを第二のＡＰＩバージョンチェックで確認する。そして、印刷サービス３３０はベンダーサーバ１４０に適切なＡＰＩ対応のファームウェアがあるが適切でないファームウェアを搭載しているプリンタを抽出し、プリンタ１１０に対し適切なファームウェアへの更新を促す通知を送信する。実施例９の印刷システム１０００におけるソフトウェア構成は実施例５と同じである。
【０１２９】
図２３は、実施例９の印刷サービス３３０による第三のＡＰＩバージョンチェックのフローチャートである。Ｓ１９０１で、印刷サービス３３０は機種ごとのファームウェア管理テーブル（図５（Ｄ））から各ファームウェアが対応するＡＰＩバージョン４６３を取得する。Ｓ１９０２で、印刷サービス３３０はサービスＡＰＩリスト４２１を取得する。Ｓ１９０３で、印刷サービス３３０は各ファームウェアが適切なバージョンのＡＰＩに対応しているかを判定する。例えば、プリンタ機種名ＡＡＡ−Ｐｒｉｎｔ−２００のＡＰＩバージョンは、２．０である。従って、印刷サービス３３０は、サービスＡＰＩリスト４２１（３．０，２．９，２．８）との比較の結果、ＡＡＡ−Ｐｒｉｎｔ−２００のＡＰＩバージョンは適切なＡＰＩバージョンに対応していないと判定する。Ｓ１９０３で適切と判定された場合、印刷サービス３３０は適切なＡＰＩを使用していることを示す情報（Ｔｒｕｅ）を第三のＡＰＩバージョンチェック４６５に格納する（Ｓ１９０４）。Ｓ１９０３で、不適切と判定された場合、印刷サービス３３０は、適切なＡＰＩを使用していないことを示す情報（Ｆａｌｓｅ）を第三のＡＰＩバージョンチェック４６５に格納する（Ｓ１９０５）。
【０１３０】
図２４は、実施例９のシーケンスを説明するフローチャートである。印刷サービス３３０は、ＡＰＩの追加や廃止などのイベントを発生させることにより処理を開始する。Ｓ２００１で、印刷サービス３３０は、機種ごとのファームウェア情報（図５（Ｄ））を取得する。Ｓ２００２で、印刷サービス３３０は第三のＡＰＩバージョンチェックを実施する。不適切なＡＰＩバージョンであれば、Ｓ２００３で印刷サービス３３０は、抽出された１機種のプリンタのプリンタ情報からベンダーＵＲＬ４６４を取得し、ベンダーサーバ１４０から該当機種用のファームウェア対応情報を取得する。
【０１３１】
Ｓ２００４で、印刷サービス３３０はベンダーサーバ１４０からリリース情報ファイル６０２を受信する。Ｓ２００５で印刷サービス３３０は第二のＡＰＩバージョンチェックを実施する。第二のＡＰＩバージョンチェックの結果、適切なＡＰＩを利用できるファームウェアが存在する場合、図５（Ｅ）に示すようにファームウェア情報が追加される。追加されたファームウェアの第三のＡＰＩバージョンチェック４６５には適切なファームウェアであるという情報（Ｔｒｕｅ）が記録される。印刷サービス３３０は、適切なＡＰＩを利用できるファームウェアが見つからなかった場合、情報は更新しない。
【０１３２】
Ｓ２００５が完了したら印刷サービス３３０はベンダーサーバ１４０に適切なＡＰＩ対応のファームウェアがあるが適切でないファームウェアを搭載しているプリンタを抽出する。この抽出方法は第一のＡＰＩバージョンチェックでよい（Ｓ２００６）。Ｓ２００７で印刷サービス３３０は抽出したプリンタ１１０に対し適切なファームウェアへの更新を促す通知を送信する。Ｓ２００８でプリンタ１１０は、パネルにファームウェア更新確認画面（図１０（Ｃ））を表示するが、Ｓ２００８以降の処理は実施例５で説明した処理の流れと同じである。実施例８と同様に実施例９でもプリンタ１１０のパネルにファームウェア更新確認画面（図１０（Ｃ））が表示されることをユーザに通知する仕組みが必要である。ユーザに通知する仕組みは実施例８で説明した方法と同じでよい。なお、実施例８と同様にファームウェア更新確認画面（図１０（Ｃ））を表示せずに、自動的にファームウェア取得を開始してもよい。実施例９のプリンタ１１０の処理は実施例８のプリンタ１１０の処理と同じである。実施例９におけるベンダーサーバ１４０の処理は実施例５で説明した処理と同じである。
【０１３３】
上述したように実施例９では印刷サービス３３０が第一のＡＰＩバージョンチェック、第二のＡＰＩバージョンチェック、第三のＡＰＩバージョンチェックを実施する。そして、ベンダーサーバ１４０上に印刷サービス３３０のＡＰＩに適したプリンタ１１０のファームウェアが登録されているかが判定可能となる。これにより、印刷サービス３３０でＡＰＩが追加されたり、廃止されたりした場合に、ユーザがベンダーサーバ１４０から最新ファームウェアを取得してプリンタ１１０を更新しても、適切なＡＰＩを利用できないような不便を回避できるようになる。
【０１３４】
（実施例１０）
実施例１０では、第一のＡＰＩバージョンチェックと第二のＡＰＩバージョンチェックをベンダーサーバ１４０が行う。実施例１０の印刷システム１０００の構成は、実施例５の印刷システムと同様である。図２２を用いて、実施例５の相違点を中心に実施例１０のシーケンスを説明する。
【０１３５】
Ｓ１００１〜Ｓ１００５までの処理は実施例５と同様である。印刷サービス３３０は、プリンタ１１０を登録後、プリンタ１１０の情報（図４（Ｂ））と、サービスＡＰＩリスト４２１（図４（Ｃ））をベンダーサーバ１４０に送信する。ベンダーサーバ１４０は、ファームウェア管理部３４１の処理によって、プリンタ１１０の情報とサービスＡＰＩリストを受け取ると、図９で説明した第一のＡＰＩバージョンチェックを行う。ベンダーサーバ１４０が適切なＡＰＩバージョンを使用していると判定した場合、図５（Ａ）に示す第一のＡＰＩバージョンチェック４３２にＴｒｕｅを格納する。ベンダーサーバ１４０が適切なＡＰＩバージョンを使用していないと判定した場合、図５（Ａ）に示す第一のＡＰＩバージョンチェック４３２にＦａｌｓｅを格納する。つまり、実施例１０では、ベンダーサーバ１４０が図５（Ａ）に示すデータを情報格納部３４２に格納することになる。
【０１３６】
ベンダーサーバ１４０が適切なＡＰＩバージョンを使用していないと判定した場合、第二のＡＰＩバージョンチェックを行う。具体的には、ベンダーサーバ１４０は情報格納部３４２から図７（Ａ）に示すリリース情報ファイル６０２を取得し、サービスＡＰＩリスト４２１にリストされたＡＰＩバージョンが存在するか否かを判定する。存在すると判定した場合、ベンダーサーバ１４０は、図５（Ａ）に示す第二のＡＰＩバージョンチェックにＴｒｕｅを、存在しないと判定した場合はＦａｌｓｅを格納する。ベンダーサーバ１４０は存在すると判定した場合、サービスＡＰＩリスト４２１にリストされたＡＰＩバージョンに対応するファームウェアバージョンを取得する。ベンダーサーバ１４０は、第一のＡＰＩバージョンチェックと第二のＡＰＩバージョンチェックの結果に基づき、以下の情報を印刷サービス３３０に送信する。すなわち、プリンタ１１０が現在搭載しているファームウェアは印刷サービスのＡＰＩバージョンに対応していないことを示す情報、ベンダーサーバ１４０は印刷サービスのＡＰＩバージョンに対応するファームウェアを登録していることを示す情報を送信する。上記二つの情報を取得した印刷サービス３３０は、図１０（Ｂ）または図１０（Ｃ）に示すファームウェア更新確認画面を生成し、プリンタ１１０に送信する。以降、Ｓ１０１２〜Ｓ１０１８の処理は実施例５と同様の処理が行われる。
【０１３７】
上述したように、実施例１０では印刷サービス３３０が第一のＡＰＩバージョンチェック、第二のＡＰＩバージョンチェックを実施する。これにより、印刷サービス３３０でＡＰＩが追加されたり、廃止されたりした場合に、ユーザがベンダーサーバ１４０から最新ファームウェアを取得してプリンタ１１０を更新しても、適切なＡＰＩを利用できないような不便を回避できるようになる。
【０１３８】
（その他の実施形態）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（コンピュータプログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給する。そしてそのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。
【図１】
2014232512.tif 000003
【図２】
2014232512.tif 000004
【図３】
2014232512.tif 000005
【図４】
2014232512.tif 000006
【図５】
2014232512.tif 000007
【図６】
2014232512.tif 000008
【図７】
2014232512.tif 000009
【図８】
2014232512.tif 000010
【図９】
2014232512.tif 000011
【図１０】
2014232512.tif 000012
【図１１】
2014232512.tif 000013
【図１２】
2014232512.tif 000014
【図１３】
2014232512.tif 000015
【図１４】
2014232512.tif 000016
【図１５】
2014232512.tif 000017
【図１６】
2014232512.tif 000018
【図１７】
2014232512.tif 000019
【図１８】
2014232512.tif 000020
【図１９】
2014232512.tif 000021
【図２０】
2014232512.tif 000022
【図２１】
2014232512.tif 000023
【図２２】
2014232512.tif 000024
【図２３】
2014232512.tif 000025
【図２４】
2014232512.tif 000026