(57)【要約】      （修正有）【課題】画像形成装置における拡張機能の、サブスクリプションモデルでの購入にあたって、ライセンスの期限が切れた際に、商品の利用を再開できる仕組みを提供する。【解決手段】システム管理者の権限を有さないユーザに対して、ライセンスの有効期限が切れた商品が存在することを通知し、ユーザ自らにライセンスを更新させることで、商品の利用を再開する。【選択図】図７
2017151944.tif 000002
【特許請求の範囲】
【請求項１】
ライセンスを生成するライセンス管理サーバと通信可能であり、前記ライセンスを適用することで前記ライセンスに対応するアプリケーションを有効化する画像形成装置であって、
現在のタイミングが適用済みの前記アプリケーションのライセンスに設定されたタイミングを超えているか否かを判定する判定手段と、
前記判定手段により超えていると判定されたことに応じて、前記アプリケーションのライセンスを更新するため、前記アプリケーションの新たなライセンスを前記ライセンス管理サーバに要求する要求手段と、
前記要求手段による要求の結果、前記ライセンス管理サーバから前記新たなライセンスを取得したことに応じて、取得した前記新たなライセンスを適用する適用手段と、
前記適用手段による前記新たなライセンスの適用が行われておらず、適用済みの前記アプリケーションのライセンスの有効期限が切れてしまった場合、ライセンスを更新する指示をユーザから受け付けるための画面に前記アプリケーションを追加する追加手段と、を有し、
前記要求手段は、前記判定手段による判定の結果に応じたライセンスの要求とは別に、前記画面を介し前記アプリケーションのライセンスの更新が指示されたことに応じて、前記新たなライセンスの要求を行うことを特徴とする画像形成装置。
【請求項２】
前記適用手段による前記新たなライセンスの適用が行われず、適用済みの前記アプリケーションのライセンスの有効期限が切れた場合、前記画面を表示するためのアイコンをアプリケーション選択画面に表示する表示手段を有する請求項１に記載の画像形成装置。
【請求項３】
前記表示手段は、適用された全てのアプリケーションのライセンスの有効期限が切れていない場合、前記画面を表示するためのアイコンをアプリケーション選択画面に表示しないことを特徴とする請求項２に記載の画像形成装置。
【請求項４】
前記要求手段は、前記適用手段による前記新たなライセンスの適用が行われておらず、前記適用済みのライセンスの有効期限が切れた場合、ライセンスを更新する指示を受け付けない限り、前記新たなライセンスを前記ライセンス管理サーバに要求しないことを特徴とする請求項１乃至３の何れか１項に記載の画像形成装置。
【請求項５】
前記要求手段による要求の結果、前記ライセンス管理サーバから前記新たなライセンスと前記アプリケーションのライセンスを要求しないようにするための情報とを受信した場合、前記適用手段は、前記新たなライセンスを適用し、その後、前記要求手段は前記アプリケーションの新たなライセンスを要求せず、前記表示手段は適用された前記新たなライセンスの有効期限が切れたとしても前記画面を表示するためのアイコンをアプリケーション選択画面に表示しないことを特徴とする請求項２または３に記載の画像形成装置。
【請求項６】
前記要求手段が前記画面を介し前記アプリケーションのライセンスの更新が指示されたことに応じて前記新たなライセンスの要求を行った結果、前記新たなライセンスを取得できなかった場合、ライセンスの更新に失敗したことを示す画面を表示させ、前記要求手段が前記判定手段による判定に応じて前記新たなライセンスの要求を行った結果、前記新たなライセンスを取得できなかった場合、前記ライセンスの更新に失敗したことを示す画面を表示させないことを特徴とする請求項１乃至５の何れか１項に記載の画像形成装置。
【請求項７】
前記適用手段による前記新たなライセンスの適用が行われておらず、適用済みの前記アプリケーションのライセンスの有効期限が切れてしまった際に、前記判定手段は、ログインしているユーザが管理者権限を有しているか否かの判定、および前記アプリケーションはユーザからの停止の指示によって停止したアプリケーションであるか否かの判定を行い、前記判定手段によりログインしているユーザが管理者権限を有しておらず、かつ前記アプリケーションはユーザからの停止の指示によって停止したアプリケーションであると判定された場合、前記追加手段は、前記画面に前記アプリケーションを追加しないことを特徴とする請求項１乃至６の何れか１項に記載の画像形成装置。
【請求項８】
ライセンスを生成するライセンス管理サーバと、前記ライセンスを適用することで前記ライセンスに対応するアプリケーションを有効化する画像形成装置とから構成されるシステムであって、
現在のタイミングが適用済みの前記アプリケーションのライセンスに設定されたタイミングを超えているか否かを判定する判定手段と、
前記判定手段により超えていると判定されたことに応じて、前記アプリケーションのライセンスを更新するため、前記アプリケーションの新たなライセンスを前記ライセンス管理サーバに要求する要求手段と、
前記要求手段による要求の結果、前記ライセンス管理サーバから前記新たなライセンスを取得したことに応じて、取得した前記新たなライセンスを適用する適用手段と、
前記適用手段による前記新たなライセンスの適用が行われておらず、適用済みの前記アプリケーションのライセンスの有効期限が切れてしまった場合、ライセンスを更新する指示をユーザから受け付けるための画面に前記アプリケーションを追加する追加手段と、を有し、
前記要求手段は、前記判定手段による判定の結果に応じたライセンスの要求とは別に、前記画面を介し前記アプリケーションのライセンスの更新が指示されたことに応じて、前記新たなライセンスの要求を行うことを特徴とするシステム。
【請求項９】
ライセンスを生成するライセンス管理サーバと通信可能であり、前記ライセンスを適用することで前記ライセンスに対応するアプリケーションを有効化する画像形成装置を制御する方法であって、
判定手段は、現在のタイミングが適用済みの前記アプリケーションのライセンスに設定されたタイミングを超えているか否かを判定し、
要求手段は、前記判定手段により超えていると判定されたことに応じて、前記アプリケーションのライセンスを更新するため、前記アプリケーションの新たなライセンスを前記ライセンス管理サーバに要求し、
適用手段は、前記要求手段による要求の結果、前記ライセンス管理サーバから前記新たなライセンスを取得したことに応じて、取得した前記新たなライセンスを適用し、
追加手段は、前記適用手段による前記新たなライセンスの適用が行われておらず、適用済みの前記アプリケーションのライセンスの有効期限が切れてしまった場合、ライセンスを更新する指示をユーザから受け付けるための画面に前記アプリケーションを追加し、
前記要求手段は、前記判定手段による判定の結果に応じたライセンスの要求とは別に、前記画面を介し前記アプリケーションのライセンスの更新が指示されたことに応じて、前記新たなライセンスの要求を行うことを特徴とする方法。
【請求項１０】
ライセンスを生成するライセンス管理サーバと通信可能であり、前記ライセンスを適用することで前記ライセンスに対応するアプリケーションを有効化する画像形成装置を制御するプログラムであって、
現在のタイミングが適用済みの前記アプリケーションのライセンスに設定されたタイミングを超えているか否かを判定する判定ステップと、
前記判定ステップにおいて超えていると判定されたことに応じて、前記アプリケーションのライセンスを更新するため、前記アプリケーションの新たなライセンスを前記ライセンス管理サーバに要求する要求ステップと、
前記要求ステップにおける要求の結果、前記ライセンス管理サーバから前記新たなライセンスを取得したことに応じて、取得した前記新たなライセンスを適用する適用ステップと、
前記適用ステップにおいて前記新たなライセンスの適用が行われておらず、適用済みの前記アプリケーションのライセンスの有効期限が切れてしまった場合、ライセンスを更新する指示をユーザから受け付けるための画面に前記アプリケーションを追加する追加ステップと、を含み、
前記要求ステップは、前記判定ステップにおける判定の結果に応じたライセンスの要求とは別に、前記画面を介し前記アプリケーションのライセンスの更新が指示されたことに応じて、前記新たなライセンスの要求を行うことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
ライセンスを適用しアプリケーションを有効化する画像形成装置、システム、方法およびプログラムに関する。
【背景技術】
【０００２】
画像形成装置はコピー、プリント、およびスキャン機能など基本機能は標準で搭載されているが、オプションとして拡張機能が用意されていることがある。拡張機能を利用したいユーザは拡張機能の商品を購入することでライセンスを受け、商品を利用することができる（特許文献１を参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１２−２２１０５４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
拡張機能の商品の購入にあたって、利用料金を定期的に支払い続けることで契約した期間の間に機能を利用できるサブスクリプションのモデルでの購入が考えられる。このモデルの場合、未支払いの期間に商品が利用できないようにするため、支払われた利用料金に対応する期間だけ有効なライセンスを発行していくことで、契約した期間の間にライセンスを何回か更新していく形態が考えられる。しかしながら、その何回かの更新の最中において、何らかの理由で幾度目かのライセンス更新作業を画像形成装置が行わなかった場合、ユーザが所望の拡張機能を利用することができない状況が発生する。本発明はこの問題に鑑み、サブスクリプションのモデルを適用した商品を運用するシステムにおいて、ユーザが自らライセンスを更新することで商品の利用を再開できる仕組みを提供することを目的とする。
【課題を解決するための手段】
【０００５】
本発明の一実施形態に係る画像形成装置は、ライセンスを生成するライセンス管理サーバと通信可能であり、前記ライセンスを適用することで前記ライセンスに対応するアプリケーションを有効化する画像形成装置であって、現在のタイミングが適用済みの前記アプリケーションのライセンスに設定されたタイミングを超えているか否かを判定する判定手段と、前記判定手段により超えていると判定されたことに応じて、前記アプリケーションのライセンスを更新するため、前記アプリケーションの新たなライセンスを前記ライセンス管理サーバに要求する要求手段と、前記要求手段による要求の結果、前記ライセンス管理サーバから前記新たなライセンスを取得したことに応じて、取得した前記新たなライセンスを適用する適用手段と、前記適用手段による前記新たなライセンスの適用が行われておらず、適用済みの前記アプリケーションのライセンスの有効期限が切れてしまった場合、ライセンスを更新する指示をユーザから受け付けるための画面に前記アプリケーションを追加する追加手段と、を有し、前記要求手段は、前記判定手段による判定の結果に応じたライセンスの要求とは別に、前記画面を介し前記アプリケーションのライセンスの更新が指示されたことに応じて、前記新たなライセンスの要求を行うことを特徴とする。
【発明の効果】
【０００６】
本発明により、サブスクリプションのモデルを適用した商品を運用するシステムにおいて、ユーザが自らライセンスを更新することで商品の利用を再開できる。
【図面の簡単な説明】
【０００７】
【図１】ライセンスシステムの全体構成を示す図。
【図２】画像形成装置のハードウェア構成を示す図。
【図３】ライセンスシステムのソフトウェア構成を示す図。
【図４】ライセンスの内容を示す図。
【図５】アプリケーションの選択画面。
【図６】ライセンスの有効期限が切れたアプリケーションを一覧表示する画面。
【図７】ライセンスの期限切れを示すアイコンを表示する仕組みを示すシーケンス図。
【図８】ライセンスの更新を指示した際に表示する画面。
【図９】ライセンスの更新処理のフローチャート。
【図１０】システム管理者の権限を有するユーザが操作するアプリケーション管理画面。
【図１１】アプリケーションを停止する処理のフローチャート。
【図１２】アプリケーションを開始する処理のフローチャート。
【図１３】ライセンスの期限切れを示すアイコンを表示する仕組みを示す追加のシーケンス図。
【図１４】ライセンス要求処理のフローチャート。
【図１５】ライセンスの期限が切れる前に警告を表示するライセンスの内容を示す図。
【図１６】ライセンスの確認が必要なことを示すアイコンを表示するアプリケーションの選択画面。
【図１７】ライセンスの確認が必要なアプリケーションを一覧表示する画面。
【図１８】ライセンスの確認が必要なことを示すアイコンを表示する仕組みを示すシーケンス図。
【発明を実施するための形態】
【０００８】
以下、本発明を実施するための形態について図面を用いて説明する。
【実施例１】
【０００９】
図１は、本実施の形態を説明するためのネットワーク構成図であり、ライセンスシステムの全体図である。画像形成装置１０１は、複合機に代表される、画像を形成する機能を有する装置である。ライセンス管理サーバ１０２は、画像形成装置１０１上で動作するアプリケーションを有効化するためのライセンスを管理するサーバである。アプリケーションとは、画像形成装置１０１上で拡張機能および／または標準機能を利用できるようにするためのソフトウェアプログラムのことである。アプリケーションを利用する権利があることを証明するデータがライセンスであり、ライセンスが画像形成装置１０１に正しく適用されると、ライセンスに対応するアプリケーションが有効化される。ユーザは有効化されたアプリケーションを利用することができる。ライセンスの適用方法としては、画像形成装置１０１へのライセンスのインストールが考えられる。
【００１０】
アプリケーションを動作させるための実行ファイルは、画像形成装置１０１のファームウェアにあらかじめ組み込まれていても良いし、後から画像形成装置１０１にダウンロードする形式であっても良い。ライセンス管理サーバ１０２は、特定のサーバでなくてもよく、例えばクラウド基盤のような不定のサーバ上に存在するライセンス管理サービスであってもよい。ライセンス管理サーバ１０２が提供する機能については、図３で詳しく説明する。
【００１１】
情報端末１０３は、パソコンに代表される情報処理装置である。キーボードやマウスとディスプレイ、もしくはタッチパネルを介してウェブブラウザを操作することができる。ＬＡＮ１１０は、画像形成装置１０１と外部のインターネット１１１をつなぐネットワーク回線である。インターネット１１１は、前述した画像形成装置１０１、ライセンス管理サーバ１０２、情報端末１０３が通信可能となるネットワーク回線である。ＬＡＮ１１０およびインターネット１１１を介して、画像形成装置１０１や情報端末１０３はライセンス管理サーバ１０２と通信を行うことができる。
【００１２】
図２は、画像形成装置１０１のハードウェア構成図である。ＣＰＵ２０１は、プログラムの実行や、様々な処理の制御を行う。不揮発性メモリ２０２は、ＲＯＭから構成され、機器の起動処理において初期段階に必要なプログラムやデータが格納されている。揮発性メモリ２０３は、ＲＡＭから構成され、プログラム、データの一時的な格納場所として利用される。補助記憶装置２０４は、ハードディスクやＲＡＭドライブ等の大容量記憶装置から構成され、大容量データの保管、プログラムの実行コードの保持、画像形成装置１０１の設定値の保持を行う。揮発性メモリ２０３と比較して、長時間保持する必要があるデータを記憶する。補助記憶装置２０４は不揮発性の記憶装置であるため、画像形成装置１０１の電源が切られてもデータを記憶し続けることができる。ディスプレイ２０５は、利用者に情報を伝えるための表示装置である。
【００１３】
入力装置２０６は、利用者の選択指示を受け付け、内部バス２１０を介してプログラムに伝達するための装置である。ネットワーク通信装置２０７は、画像形成装置１０１がネットワークを介して別の情報機器と通信することを可能とするための装置である。内部バス２１０は、各ハードウェア装置を画像形成装置１０１内で通信可能な状態に接続する通信バスである。ライセンス管理サーバ１０２および情報端末１０３のハードウェア構成は図２の構成と同様であり、画像形成装置１０１は不図示の印刷ユニットおよび／またはスキャナユニットを備えている。
【００１４】
図３は、ライセンスシステムを構成する画像形成装置１０１とライセンス管理サーバ１０２のソフトウェア構成図である。画像形成装置１０１が保持する各ソフトウェア部は、画像形成装置１０１において不揮発性メモリ２０２もしくは補助記憶装置２０４に保存され、ＣＰＵ２０１にて実行されることで機能を発揮する。また、実行時に使用する各種情報は画像形成装置１０１において、揮発性メモリ２０３もしくは補助記憶装置２０４に保持してソフトウェア間で各種情報のやりとりを行う。ライセンス管理サーバ１０２が保持する各ソフトウェアも、同様にライセンス管理サーバ１０２が保持する不図示の不揮発性メモリや補助記憶装置に保存され、ＣＰＵ２０１と同様のＣＰＵによって実行されることで機能を発揮する。また、実行時に使用する各種情報はライセンス管理サーバ１０２が保持する不図示の不揮発性メモリもしくは補助記憶装置に保持してソフトウェア間で各情報のやり取りを行う。
【００１５】
以下に画像形成装置１０１が保持する各ソフトウェア部を説明する。適用後ライセンス記憶部３０１は、画像形成装置１０１上で動作するアプリケーションに対し、適用されたライセンスを補助記憶装置２０４に記憶する機能を有する。表１の適用後ライセンス情報テーブルは、適用後ライセンス記憶部３０１に記憶された適用後ライセンス情報を示す表である。
【００１６】
【表１】
2017151944.tif 000003
アプリケーション識別子とは、画像形成装置１０１上で動作するアプリケーションを一意に識別する為の識別子である。この例では単純な整数で表しているが、より複雑な文字列や、ＵＵＩＤを用いてもよい。ライセンスタイプとは、適用済みライセンスのタイプを示す情報である。表１では、”自動更新”と”固定”の２種類が示されている。”自動更新”のライセンスタイプは、画像形成装置１０１とライセンス管理サーバ１０２の相互通信によってアプリケーションのライセンスを自動的に更新するタイプのライセンスである。“自動更新”のライセンスは、所謂サブスクリプションモデルを適用した商品に分類されるアプリケーションのライセンスであり、ユーザからの指示がなくともライセンスを自動的に更新するのが特徴である。”固定”のライセンスタイプは、自動的に更新されないライセンスであり、一度商品を購入してしまえば、その商品に分類されるアプリケーションのライセンスを更新することなくアプリケーションを継続して利用できる。“固定”のライセンスは、画像形成装置１０１にインストールされた後は、ユーザからの指示がない限り自動的にライセンスが更新されることはない。なお、“固定”のライセンスであってもライセンスに有効期間を含むことは可能であるため、“固定”のライセンスの自動更新処理が行われないようにするためにも、ライセンスタイプを設定することは実施例１における重要な処理である。
【００１７】
利用開始日とは、画像形成装置１０１上で動作するアプリケーションが利用できるようになる日を示している。利用終了日とは、画像形成装置１０１上で動作するアプリケーションを利用できなくなる日を示しており、ライセンスに記載された利用終了日が設定される。更新確認日とは、適用されたライセンスを自動的に更新する日を示しており、ライセンスを新たなライセンスに更新する処理を開始する日にちであるが、詳細は後述する。
【００１８】
ステータスとは、ライセンスタイプが”自動更新”のライセンスにおいて、ライセンスの自動更新を続けるか否かを示す情報である。”継続”は、画像形成装置１０１とライセンス管理サーバ１０２とが通信を行い、アプリケーションのライセンスの自動更新を続けることを示している情報である。”終了”は、アプリケーションのライセンスの自動更新を行う必要がないことを示している情報であり、画像形成装置１０１とライセンス管理サーバ１０２とが自動的に通信を行いライセンスを更新することがなくなる。適用後ライセンス情報テーブルの情報がどのように登録されるかは、後述するライセンス適用部３０３の説明において示す。適用後ライセンス情報テーブルは、後述するアプリケーションによって参照され、アプリケーションの振る舞いが決定される。詳細は後述する。
【００１９】
ライセンス要求部３０２は、画像形成装置１０１上で動作するアプリケーションのライセンスをライセンス管理サーバ１０２に要求する機能を有する。ライセンスの要求は、前述のＬＡＮ１１０やインターネット１１１を介してライセンス管理サーバ１０２に対して行われる。ＬＡＮ１１０を介して通信可能な別の管理サーバが仲介する形式であってもよい。要求に際しては、ライセンスを必要とするアプリケーションのアプリケーション識別子と、画像形成装置１０１のデバイス識別子を送付する。ライセンス管理サーバ１０２から配信されるライセンスは、ファイル形式であっても良いし、バイナリデータであっても良い。
【００２０】
図４に、ライセンスの例を示す。ライセンス４０１はファイル形式のライセンスであり、ライセンス４０１によって証明されるアプリケーションの利用権限を特定するための情報が含まれている。アプリケーション識別子、ライセンスタイプ、利用開始日、利用終了日、更新確認日は、表１で説明した情報と同じである。表１はライセンス４０１の情報で確定される。デバイス識別子は、ライセンス４０１を利用する画像形成装置１０１を一意に識別する為の識別子である。電子署名は、ライセンス４０１の正当性を検証するための証明書である。なお、ライセンスはライセンス４０１のファイル形式でなくてもよく、電子データで表現されるアプリケーション有効化のための全ての情報を実施例１ではライセンスと称している。
【００２１】
ライセンス適用部３０３は、ライセンス要求部３０２によって得られたライセンスを画像形成装置１０１に適用する機能を有する。ライセンスが画像形成装置１０１に適用されると、適用後ライセンス記憶部３０１が保持する適用後ライセンス情報テーブルが更新される。ライセンス適用部３０３は、ライセンスにあるデバイス識別子が合致しているか確認した上で、同じアプリケーション識別子のレコードに対して、ライセンスタイプ、利用開始日、利用終了日、更新確認日を上書き保存する。ステータスは、ライセンスが保持する情報ではなく、ライセンス要求部３０２がライセンス要求に対する結果コードとして受信する情報である。その情報をライセンス適用部３０３が受け取り、適用後ライセンス情報テーブルに登録する。結果コードはライセンスとともに受信する情報であり、アプリケーションのライセンスを適用する際に、結果コードに基づきステータスの更新を行う。同じアプリケーション識別子のレコードがなければ、新規にレコードを追加する。ライセンスが適用されることでライセンスが画像形成装置１０１に適用されアプリケーションの利用が可能となる。アプリケーションは商品を構成する一部であり、画像形成装置１０１でアプリケーションが利用できる状態になることで、ユーザに商品が提供されたことになる。
【００２２】
ライセンス要求判定部３０４は、ライセンス管理サーバ１０２にライセンスを要求する必要があるか否かを判定する機能を有する。ライセンスの要求は、ライセンスタイプが”自動更新”であり、現在の日付が更新確認日から利用終了日の間であって、ステータスが”継続”である場合にライセンスの要求を行うと判定される。ライセンス要求判定部３０４により、ライセンス管理サーバ１０２にライセンスを要求するタイミングや回数をコントロールすることができるようになる。また、ライセンス管理サーバ１０２がライセンス生成部３１２によって生成するライセンスによって、これらの情報が画像形成装置１０１に伝えられるようになる。ライセンス要求判定部３０４が行う処理の詳細は、図８を用いて後で詳しく説明する。
【００２３】
アプリケーション部３０５は、画像形成装置１０１上で動作するアプリケーションであり、拡張機能および／または標準機能を提供する。アプリケーションの動作はライセンスによって制御されており、適用後ライセンス記憶部３０１によって記憶された適用後ライセンス情報テーブルに有効なライセンスがある場合にのみアプリケーションは動作する。有効なライセンスがあるか否かの判定方法は、自らのアプリケーション識別子に該当するレコードを検索し、現在の日付が利用開始日と利用終了日の間であるかによって判定される。利用開始日と利用終了日の指定がない場合は有効であると判定する。利用開始日と利用終了日の指定がないということは、サブスクリプションの商品に分類されるアプリケーションではないということである。自らのアプリケーション識別子に該当するレコードがない場合は、有効でないと判定する。
【００２４】
アプリケーション制御部３０６は、画像形成装置１０１上で動作するアプリケーションのライフサイクルを管理する手段である。アプリケーション制御部３０６は、画像形成装置１０１上で動作するアプリケーションについて、アプリケーションのバージョンや製品名などの情報、開始中や停止中の状態を管理している。また、アプリケーション制御部３０６は、システム管理者が利用するためのアプリケーションの管理画面を提供しており、システム管理者は管理画面を介してアプリケーションの開始や停止、アンインストール、ならびにライセンスの適用をおこなうことが出来る。アプリケーションの管理画面については図１０で詳しく説明する。さらに、アプリケーション制御部３０６は、画像形成装置１０１上で動作するアプリケーションの情報および状態と、適用後ライセンス記憶部３０１によって記憶された適用後ライセンス情報テーブルから取得したライセンス情報を合わせてリストで返すＡｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍｍｉｎｇ  Ｉｎｔｅｒｆａｃｅ（以降ＡＰＩと記す）を提供する。加えて、アプリケーション制御部３０６は、画像形成装置１０１上で動作するアプリケーションの開始や停止といった動作、更に適用後ライセンス記憶部３０１にライセンスを適用するＡＰＩを提供する。
【００２５】
アプリケーションの動作はライセンスによって制御されており、適用後ライセンス記憶部３０１によって記憶された適用後ライセンス情報テーブルに有効なライセンスがある場合にのみ、アプリケーション制御部３０６はアプリケーションを動作させる。有効なライセンスがあるか否かの判定方法は、アプリケーション識別子に該当するレコードを検索し、現在の日付が利用開始日と利用終了日の間であるかによって判定される。利用開始日と利用終了日の指定がない場合は有効であると判定する。利用開始日と利用終了日の指定がないということは、サブスクリプションの商品に分類されるアプリケーションではないということである。また、アプリケーション識別子に該当するレコードがない場合は、有効でないと判定する。
【００２６】
表１の例で、現在の日付が２０１５／１／２０である場合には、アプリケーション識別子１から６は有効なライセンスがあると判定され、該当する拡張機能が提供される（以降、その提供された状態にすることをアプリケーションの開始と記す）。アプリケーション識別子７は利用終了日を過ぎているため、有効なライセンスがないと判定され、該当する拡張機能を利用することができない（以降、その利用出来ない状態にすることをアプリケーションの停止と記す）。実施例１では、アプリケーション制御部３０６がライセンスの有効性を判定する構成としたが、例えばアプリケーション自らがライセンスの有効性を判定することもできる。この場合は、アプリケーションによって、アプリケーションが提供する拡張機能が有効化、無効化される。
【００２７】
ライセンス状態監視部３０７は、画像形成装置１０１上で動作するアプリケーションのライセンスの状態を監視する手段である。ライセンス状態監視部３０７は、アプリケーション制御部３０６のイベント通知機能を利用して、アプリケーションの開始や停止などの状態変化、ライセンスの適用やライセンスの有効期限切れなどの状態変化に係るイベントの通知を受け取る。ライセンス状態監視部３０７は、それらのイベントの通知を受け取った際、ライセンスの有効期限切れのアプリケーションが存在した場合はユーザにその状態を知らせる。ユーザに状態を知らせる機能については、図５で詳しく説明する。また、ライセンス状態監視部３０７は、ライセンスの有効期限切れのアプリケーションについて、ライセンスの更新指示と、アプリケーションの開始指示を受け付ける画面を提供する。この画面については、図６乃至図９で詳しく説明する。
【００２８】
次に、ライセンス管理サーバ１０２が保持する各ソフトウェア部を説明する。利用情報登録部３１０は、情報端末１０３からアプリケーションの利用情報を登録する機能を有する。具体的には、情報端末１０３が保持するウェブブラウザを用いて、インターネット１１１経由でアクセスし、利用情報登録部３１０が提供する利用情報登録画面を介して利用情報を登録する。
【００２９】
利用情報とは、アプリケーションを利用できる範囲や条件を決める情報である。アプリケーション識別子、デバイス識別子、利用開始日、利用終了日は、表１で説明した情報と同タイプの値が設定される。なお、表２の利用終了日はアプリケーションが利用できる最終の日付であって、表１の利用終了日とはライセンスに設定された値であり、今回のライセンスでアプリケーションが利用できる最終の日付である。表１と表２、２つの表における利用終了日は異なることに留意されたい。締め日は、利用情報を変更できる毎月の期限であって、締め日までに利用情報を変更すれば、翌月以降のライセンスには変更した内容が反映される。今回の例では締め日を２０日としているため、１９日までに登録された利用情報を元に、翌月のライセンスが生成されることを想定している。利用情報を登録する主体は、アプリケーションを顧客に販売したアプリケーション販売者であることを想定している。また、実施例１ではウェブブラウザから手動で利用情報を登録する例を説明したが、別のシステムで管理する利用情報をシステム間連携によって通知する構成であってもよい。
【００３０】
利用情報記憶部３１１は、利用情報登録部３１０によって登録された利用情報を記憶する機能を有する。表２の利用情報テーブルは、利用情報記憶部３１１に記憶された利用情報の一例を示す表である。
【００３１】
【表２】
2017151944.tif 000004
ライセンス生成予定日は、締め日を元に決定する次回のライセンス更新に向け、事前にライセンスを生成する日付のことである。詳細は後述するが、締め日を基にライセンスに設定した更新確認日よりも前に、ライセンスは生成される。表２の例では、締め日をそのままライセンス生成予定日としているが、例えばライセンス管理サーバ１０２の事情によっては、締め日の翌日以降またはそれよりも前の日にしても良い。締め日の翌日以降になる理由としては、ユーザのアプリケーションに対する課金が行われなかったため、ライセンスの自動発行を一時的に停止させたい等の理由が考えられる。
【００３２】
ここで利用情報に関する別の形態について説明する。利用情報を管理する表２の利用情報テーブルは、ライセンス生成予定日の項目を設定せず、締め日のみでライセンスの生成予定日を決定する形態であってもよい。また、必ずしも締め日という形態のみでライセンスの自動生成を行うタイミングを決定する必要はない。締め日を導入することで一定間隔でのライセンスの生成が可能になるが、利用終了日内の任意のタイミングでライセンスを複数回生成することができればどのような形態であってもよい。例えば、図５の締め日の代わりに経過日数の指定が考えられ、その場合、月の決まった日にライセンスが更新されるわけではなく、ユーザから指定された日数が経過したことでライセンスが更新されることになる。そこで、本実施例では、ライセンス生成部３１２がライセンスを利用終了日までの間に何度か生成し、ライセンス配信部３１４が生成されたライセンスを画像形成装置１０１に更新させるタイミングを決定するための情報を期間情報と定義する。
【００３３】
なお、利用情報を登録したユーザ等が、利用登録したアプリケーションの課金が行われなかった等の理由からアプリケーションの利用を一時的に停止する指示をライセンス管理サーバ１０２に送信した場合、ライセンス生成部３１２はライセンスを生成しない。これを達成するために、本願では停止する指示を受け付けたことに応じて、利用情報記憶部３１１がライセンス生成予定日に日付を入力しない形態を取っている。無論、この形態に縛られる必要はなく、例えば、ライセンス生成をするか否かを決定する項目を利用情報テーブルに追加しても良い。ライセンス管理サーバ１０２がライセンスの生成を停止する指示を受け付けた場合、現在の日付が利用終了日に至っていない場合でもライセンスの生成が行われることがなくなる。生成済みライセンスの利用終了日は、後述するライセンス生成部３１２によって生成されたライセンスの利用終了日であり、生成された最新のライセンスの利用終了日である。生成済みライセンスの利用終了日は、次回以降のライセンスを発行するか否かを判定する為に利用される。詳細は、図７を用いて後で説明する。
【００３４】
ライセンス生成部３１２は、利用情報記憶部３１１に記憶された情報を元に、画像形成装置１０１に配信するライセンスを生成する機能を有する。生成されるライセンスの例は、図４にて説明した通りである。ライセンスの各情報をどのように設定するか説明する。アプリケーション識別子、デバイス識別子は、利用情報テーブルの情報を用いる。ライセンスタイプは自動更新が設定されるが、利用情報テーブルには自動更新のライセンスタイプで運用される商品のアプリケーションの場合のみ登録されるためである。別の実施の形態として、自動更新のライセンスタイプでない利用情報も利用情報テーブルに記憶し、ライセンスタイプの情報も含めて管理する構成であってもよい。
【００３５】
ライセンス４０１の利用開始日は、ライセンスを生成した日付を登録する。通常、画像形成装置１０１に適用済みのライセンスは、生成済みライセンスの利用終了日まで有効である。そのため、ライセンスを生成するときに、利用開始日を生成済みライセンスの利用終了日に設定する構成でもよい。しかし、画像形成装置１０１の保守作業などでライセンスが適用されていない状態から、新しいライセンスを要求される場合が考えられる。この場合に、利用開始日が生成済みライセンスの利用終了日に設定されているとライセンスを適用した日から利用開始日までの間アプリケーションが利用できなくなる恐れがある。そのため、利用開始日にライセンスを生成した日付に設定する構成のほうがよい。結果的に、ライセンス生成部３１２が生成するライセンスの有効期間は、ライセンス生成予定日から生成済みライセンスの利用終了日までの間、有効期間が重複するように生成される。
【００３６】
ライセンス４０１の利用終了日は利用情報テーブルの利用終了日を超えなければ翌月の月末、越えるようなら利用情報テーブルの利用終了日を設定する。利用終了日を翌月の月末に設定するのは、ライセンス管理サーバ１０２が保持する長期間のアプリケーションの有効期間に対し、短期間のライセンスを定期的に画像形成装置１０１に適用したいからである。その理由は、アプリケーション販売者とアプリケーション利用者との合意のもとで利用情報が変更されることがあるためである。利用情報が変更されて利用終了日が変わったときに、画像形成装置１０１に長期間のライセンスが適用されているとそのまま不正利用されてしまい、アプリケーション販売者の利益を損ねる恐れがある。そこで本実施例のように、長期間の利用情報に対して、短期間のライセンスを画像形成装置１０１に適用することが行われている。
【００３７】
更新確認日は、利用終了日を越えなければ翌月の締め日に設定する。翌月の締め日が利用終了日を超える場合には、更新確認が行われないので空の値を設定する。なお、締め日ではない期間情報、例えば、経過日数の形態の場合、ライセンスを生成した日に経過日数を考慮した値を更新確認日とすることになる。何れにせよ、ライセンスに含まれる更新確認日は、利用情報として登録された期間情報を基に決定される。電子署名は任意の値を使って生成する。
【００３８】
ここまでの説明は、１カ月単位でライセンスを自動更新したい状況を前提に説明したが、上述した通りこの形態でなくても良い。先のライセンス情報テーブルの説明時には、経過日数を基に締め日および／またはライセンス生成予定日、および更新確認日を決定する例を説明した。その他、例えば、３カ月単位でライセンスを自動更新したい場合、利用終了日を３カ月後の月末、更新確認日を３カ月後の締め日に設定することで実現できる。１年単位であっても同様の考え方で実現が可能である。これらの更新単位を自由に変更したい場合は、ライセンスを自動更新する単位を利用情報登録画面で入力させたうえで、利用情報テーブルに記憶するなどの仕組みによって実現できる。ライセンスを生成する条件については、図７を用いて後で説明する。
【００３９】
配信用ライセンス記憶部３１３は、ライセンス生成部３１２によって生成されたライセンスを記憶する機能を有する。なお、ライセンスの生成は、次回のライセンスの更新日よりも前に行われ、画像形成装置１０１からのライセンスの要求タイミングよりも前のタイミングで生成されていることは、停止と言う例外を除き本実施例の特徴である。表３の配信用ライセンス情報テーブルは、配信用ライセンス記憶部３１３に記憶された配信用ライセンス情報の一例を示す表である。
【００４０】
【表３】
2017151944.tif 000005
ライセンスは、ライセンス４０１であり、デバイス識別子とアプリケーション識別子によって特定される画像形成装置１０１上のアプリケーションを動作させるためにインストールされるライセンスである。ライセンスの実体は、ライセンス管理サーバ１０２が動作するクラウド基盤、もしくはサーバが持つファイルシステム上の所定の場所に保管されている。
【００４１】
ステータスは、現在生成されているライセンスに含まれる利用終了日でアプリケーションの利用終了日を迎えるためライセンスの更新を終了させるか否かの情報を保持している。”継続”であれば、ライセンスの更新が行われる可能性がある。”終了”であれば、ライセンスの更新が行われないことが確定したと判断できる。なお、表３には記載されていないが、ライセンスが登録されていない状態もある。その状態は上述したライセンスの停止の指示を受け付けた際に発生する。その状態ではライセンスが生成されないので、表３の対象レコードのライセンス項目は空白とするが、ライセンスの停止の解除が指示され再びライセンスが生成されることを想定し、ステータス項目は継続を設定することを想定している。無論、ステータス項目を終了としても良い。ライセンスとステータスとを関連付けることでライセンス管理サーバ１０２は、画像形成装置１０１のアプリケーションの有効化とともに、ライセンスの要求処理の停止を同時に実行させることが可能になる。配信用ライセンス情報テーブルの情報は、ライセンス生成部３１２によってライセンスを生成する際に更新される。詳細は、図７にて説明する。
【００４２】
ライセンス配信部３１４は、画像形成装置１０１からのライセンスの更新要求を受けて、配信用ライセンス情報テーブルに保持した適切なライセンスを配信する機能を有する。ライセンス要求部３０２からは、デバイス識別子とアプリケーション識別子を含む更新要求を受信する。ライセンス配信部３１４は、配信用ライセンス記憶部３１３が保持する配信用ライセンス情報テーブルを参照し、要求されたデバイス識別子とアプリケーション識別子を持つレコードを検索する。要求されたデバイス識別子とアプリケーション識別子を持つレコードがあったら、ライセンス名を取得して、所定の場所にあるライセンスを取得する。要求されたデバイス識別子とアプリケーション識別子を持つレコードがなければ、利用情報記憶部３１１が保持する利用情報テーブルを参照する。利用情報テーブルに対しても、要求されたデバイス識別子とアプリケーション識別子を持つレコードを検索し、その結果を要求元の画像形成装置１０１に返す。
【００４３】
図１４は、画像形成装置１０１のライセンス要求処理の流れを説明する為のフローチャートである。Ｓ１４０１は、ライセンス要求部３０２が日付の変更を検知するステップである。先にも述べた通り、ライセンスの更新頻度は設定期間によって変動する。よって、更新頻度が高い場合は日時や時分を考慮することになり、更新頻度が低い場合は月を考慮することになる。また、経過日数でライセンスを発行するライセンスシステムであれば、画像形成装置１０１も経過日数を基に更新を行う必要がある。即ち、本ステップでは現在のタイミングがライセンスの更新確認が必要となるタイミングであるか否かを検知しているのである。
【００４４】
Ｓ１４０２は、ライセンス要求部３０２が適用後ライセンス情報テーブルの全てのレコードに対してＳ１４０３以降の処理が完了したかを判定するステップである。全てのレコードに対して処理が終わっていれば本フローチャートの処理を終了する。未処理のレコードがある場合、Ｓ１４０３に進む。なお、後述するステータスが“終了”であるレコードに関しては、処理済みのレコードとみなされ、Ｓ１４０３以降の処理対象とはならない。結果、該当するアプリケーションのライセンスを今後はライセンス管理サーバ１０２へ要求しないことになる。
【００４５】
Ｓ１４０３は、ライセンス要求部３０２が適用後ライセンス情報テーブルの未処理のレコードを１つ選択するステップである。Ｓ１４０４は、ライセンス要求部３０２が、Ｓ１４０３で選択したレコードのライセンスタイプが”自動更新”であるか判定するステップである。ライセンスタイプが”自動更新”であればＳ１４０５に進む。“自動更新”でない場合は、Ｓ１４０２に戻る。表１の例であれば６番目のレコードはライセンスタイプが”固定”なので、Ｓ１４０４の判定の結果Ｓ１４０２に戻る。それ以外のレコードであれば、Ｓ１４０３に進む。なお、Ｓ１４０４の判定を行わない実施の形態も可能であり、“固定”のライセンスタイプのライセンスを考慮しない形態の他、別のライセン部テーブルで管理する形態等により実施可能である。
【００４６】
Ｓ１４０５は、ライセンス要求部３０２が、現在の日付が利用終了日を過ぎているか判定するステップである。現在の日付が利用終了日を過ぎているということは、既に対象アプリケーションは利用できない状態になっているということであり、自動更新する必要がないと判定する。利用情報がライセンス管理サーバ１０２に登録されないまま利用終了日を過ぎてしまう等の例外ケースでライセンス管理サーバ１０２へのライセンス要求が継続されてしまうため、本実施の形態では判定する例を説明した。しかし、Ｓ１４０５の判定を行わない実施の形態も可能である。現在の日付が利用終了日を過ぎている場合、Ｓ１４０２へ戻る。現在の日付が利用終了日を過ぎていない場合、Ｓ１４０６へ進む。
【００４７】
Ｓ１４０６は、ライセンス要求部３０２が、現在の日付が更新確認日を過ぎているか判定するステップである。現在の日付がライセンス４０１に設定されていた更新確認日を過ぎていれば、ライセンス管理サーバ１０２で新しいライセンスが生成されているため、ライセンス要求を行う必要がある。現在の日付が更新確認日を過ぎている場合、Ｓ１４０７へ進む。現在の日付が更新確認日を過ぎていない場合、Ｓ１４０２に戻る。
【００４８】
Ｓ１４０７は、ライセンス要求部３０２が、適用後ライセンス情報テーブルのステータスが“終了”以外のステータスであるか否かを判定するステップである。”終了”の場合は、例えばライセンス管理サーバ１０２で保持する利用終了日までのライセンスが適用済みであり、ライセンスを要求する必要がないと判断できる。ステータスが“終了”以外のステータス、具体的には”継続”と“利用情報未登録”の何れかである場合、Ｓ１４０８へ進む。ステータスが”終了”の場合、Ｓ１４０２に戻る。
【００４９】
基本的には、Ｓ１４０１のステップが定期的に実行され、Ｓ１４０８以降のライセンス要求によって、画像形成装置１０１からライセンス管理サーバ１０２に対してポーリングが行われる。しかし、Ｓ１４０４からＳ１４０７の判断ステップにより、ライセンスを更新する必要があるアプリケーションがあるときのみライセンス要求を行うようにできるため、無駄なライセンス要求が行われることがなくなる。
【００５０】
Ｓ１４０８は、ライセンス要求部３０２が、ライセンス要求を行うステップである。ライセンス要求の詳細は、ライセンス要求部３０２の説明において説明済みであるため、ここでは割愛する。Ｓ１４０９は、ライセンス適用部３０３がＳ１４０８で得られたライセンスと結果コードを適用するステップである。ライセンスが発行されていない場合、即ち、結果コードとして“利用情報未登録”を受信した場合は、ライセンスを適用することなく、該当するアプリケーションのレコードを“利用情報未登録”として保存する。また、ライセンスが適用されないことにより、ライセンス情報テーブルの更新確認日は更新されることはないため、Ｓ１４０８の再度ライセンス要求をライセンス管理サーバ１０２に行うことになる。つまり、ライセンス要求部３０２は、利用終了日までライセンス要求を繰り返し行うポーリング処理を行うのである。なお、利用終了日を超えてもライセンスを取得できなかった場合、ライセンス要求部３０２はＳ１４０５によりライセンス要求を行わなくなる。即ち、ライセンス要求部３０２はポーリング処理を停止することになる。
【００５１】
表１に示した適用後ライセンス情報テーブルを保持した状態で、２０１５／１／２０になり、表３を保持したライセンス管理サーバ１０２にライセンス要求を行った結果の適用後ライセンス情報テーブルを表４に示す。
【００５２】
【表４】
2017151944.tif 000006
表５の配信用ライセンス情報テーブルに示すように、ライセンスが生成されているものは、利用開始日、利用終了日、更新確認日が更新される。また、ステータスに変更があるものは、結果コードとして画像形成装置１０１に通知され、適用後ライセンス情報テーブルのステータスが更新されている。
【００５３】
図１４のフローチャートで示した手順によって、現在の日付が更新確認日を過ぎた場合、ライセンス要求部３０２がライセンス管理サーバ１０２にライセンスを要求し、有効なライセンスがあればライセンス適用部３０３によって適用される。しかし、料金未払いやライセンス管理サーバ１０２のライセンス生成バッチの不調等の理由で、有効なライセンスが生成されていない場合は、現在のライセンスで指定された利用終了日まで、繰り返しポーリングが行われることになる。その後、利用終了日までライセンスが生成されなかった場合はポーリングを終了し、アプリケーション制御部３０６で説明したとおり、アプリケーションが停止されることになる。
【００５４】
図５は、画像形成装置１０１のディスプレイ２０５に表示するアプリケーションの選択画面５００の例を示す。アプリケーション選択画面は不図示の画面表示制御部によって表示される画面であり、画面表示制御部は図３で示す各部と同様にＣＰＵにより実行されることで実現される。ＩＤ５０１は、画像形成装置１０１にログインした認証済みのユーザの識別コードを表示する。アイコン５０２〜５０５は、画像形成装置１０１において利用可能なアプリケーションのアイコンである。各アイコンは、揮発性メモリ２０３に記憶されたアイコンの表示対象となるアプリケーションの情報に基づき表示される。アプリケーションをアイコンの表示対象とするためには、アプリケーションの選択画面５００にアプリケーションに対応するアイコンの登録処理が必要になる。
【００５５】
図５のアイコン５０２を選択すると、揮発性メモリ２０３に記憶されたコピーを実行するアプリケーションの画面（不図示）を表示する。ログアウトボタン５０６は、画像形成装置１０１にログインした認証済みのユーザをログアウトさせるボタンである。ログアウトをおこなうと、アプリケーションの選択画面５００は非表示となり、不図示の認証画面を表示する。アイコン５０７は、ライセンスの有効期限が切れたアプリケーションが存在することを示すアイコンである。アイコン５０７を選択すると、揮発性メモリ２０３に記憶された、図６で説明するライセンスの有効期限が切れたアプリケーションをリストで表示する画面６００を表示する。なお、詳細は後述するが、アイコン５０７はサブスクリプションモデルに分類されるアプリケーションのライセンスの内、有効期限切れのライセンスがある場合のみ表示される。ステータスバー５０８は、画像形成装置１０１において発生した、紙詰まりや用紙切れ、トナー切れなどの警告やメッセージを表示する領域であり、この図の例では、ライセンスの有効期限が切れたアプリケーションが存在することを示すメッセージを表示している。アイコン５０７を表示する方法、またステータスバー５０８にメッセージを表示する方法について、後述の図７にて詳細に示す。
【００５６】
図６は、画像形成装置１０１のディスプレイ２０５に表示するアプリケーションの選択画面５００において、アイコン５０７を選択した時に表示する、ライセンスの有効期限が切れたアプリケーションをリスト表示する画面である。リスト部６０１は、ライセンスの有効期限が切れたアプリケーションの製品名称、ライセンスの利用開始日と利用終了日を一覧で表示する。また、リスト部６０１に表示されたアプリケーションを選択すると、図８で説明するライセンス更新の実行を確認する画面８００（ａ）を表示する。リスト部６０１にアプリケーションのリストを表示する方法について、図７にて詳細に示す。
【００５７】
図７は画像形成装置１０１のディスプレイ２０５に表示するアプリケーションの選択画面５００におけるアイコン５０７の表示とステータスバー５０８のメッセージ表示、リスト部６０１のリスト表示に係る処理の流れを示すフローチャートである。ステップＳ７０１において、ライセンス状態監視部３０７は、アプリケーション制御部３０６のイベント通知機能を利用し、アプリケーションの開始や停止などの状態変化、ライセンスの適用やライセンスの有効期限切れなどの状態変化に係るイベントを検知する。
【００５８】
ステップＳ７０２において、ステップＳ７０１において通知されたイベントが、ライセンスの適用、またはライセンスの有効期限切れに係るイベントに該当する場合は、ステップＳ７０３に遷移し、いずれのイベントにも該当しない場合は処理を終了する。ここで、いずれのイベントにも該当しない場合に処理を終了する理由であるが、ライセンスの状態変化が発生していない間は、既にユーザへ通知されている通知内容に変更がないためである。なお、画像形成装置１０１の起動処理においては、ステップＳ７０１ならびにステップＳ７０２の処理は実行せず、ステップＳ７０３以降の処理を実行する。ここで、ステップＳ７０１ならびにステップＳ７０２の処理を実行しない理由について述べる。画像形成装置１０１の起動処理において、アプリケーション制御部３０６のイベント通知に関係なく、画像形成装置１０１に適用されている全てのライセンスの状態を取得し、ユーザに通知する必要があるか否かを判定する必要があるためである。
【００５９】
ステップＳ７０３において、ライセンス状態監視部３０７は、アプリケーション制御部３０６が提供するＡＰＩを利用し、画像形成装置１０１上で動作するアプリケーションの情報および状態と、適用後ライセンス記憶部３０１によって記憶された適用後ライセンス情報テーブルから取得したライセンス情報をリストで取得する。そして、リストの先頭行から処理を開始する。ステップＳ７０４において、ライセンス状態監視部３０７は、ライセンスタイプが”自動更新”ではないと判定した場合は、リストの処理対象を次行に移し、ステップＳ７０４に遷移し、”自動更新”であると判定した場合は、ステップＳ７２１に遷移する。
【００６０】
ステップＳ７２１において、ライセンス状態監視部３０７は、適用後ライセンス情報テーブルのステータスが”終了”以外であるか否かを判定する。現在の行のアプリケーションが、Ｓ１４０９にて結果コードとして“終了”を受信し、適用後ライセンス情報テーブルのステータスを“終了”としたアプリケーションであれば、次行のアプリケーションのチェックのためステップＳ７０４へ遷移する。現在の行のアプリケーションのステータスが”終了”以外であればＳ７０５に進む。なお、実施例１ではＳ７２１をＳ７０５のステップより先に実施することで、ライセンスの有効期限が切れたとしても図５のアプリケーション選択画面にアイコン５０７を表示しないように制御している。有効期限が切れたことを確認した後に、適用後ライセンス情報テーブルのステータスが“終了”であるか否かの判定を行う形態でも良い。
【００６１】
ステップＳ７０５において、ライセンス状態監視部３０７は、記憶された適用後ライセンス情報テーブルに有効期限が切れたライセンスである場合はステップＳ７０６に遷移し、有効期限が切れたライセンスでない場合はステップＳ７０７に遷移する。
【００６２】
ライセンス要求部３０２は、図１４で説明したように更新確認日になるとライセンス管理サーバ１０２に対してライセンスを要求するが、ライセンスが生成されていない場合、現在適用済みのライセンスで指定された利用終了日まで繰り返しポーリングを行う。その後、利用終了日までライセンスが生成されなかった場合はポーリングを終了し、アプリケーション制御部３０６によってアプリケーションが停止される。そのようなアプリケーションのライセンスが、ステップＳ７０５で言うところの有効期限切れの状態ということになる。
【００６３】
ステップＳ７０６において、ライセンス状態監視部３０７は、有効なライセンスがないアプリケーションについて、アプリケーション識別子や製品の名称、利用開始日と終了日といった情報を揮発性メモリ２０３に記憶し、ステップＳ７０７に遷移する。この時、既にリストの前行に対してステップＳ７０６の処理が行われていた場合は、上書きではなく追加の情報として記憶する。詳細は後述するが、揮発性メモリ２０３に追加されたアプリケーションが図６の画面に表示されることになる。
【００６４】
ステップＳ７０７において、ライセンス状態監視部３０７は、リストの最終行であるかどうかを確認し、対象行が残っている場合は、ステップＳ７０４に戻り、次の行に対して処理を実施し、対象行が残っていない場合は、ステップＳ７０８に遷移する。ステップＳ７０８において、ライセンス状態監視部３０７は、ステップＳ７０６で記憶したアプリケーション情報が揮発性メモリ２０３に存在するか否かを判定し、存在する場合はステップＳ７１５に遷移し、存在しない場合はステップＳ７０９に遷移する。
【００６５】
ステップＳ７０９において、ライセンス状態監視部３０７は、アイコン５０７が登録されているか否かを判定し、登録されている場合はステップＳ７１０に遷移し、登録されていない場合は処理を終了する。何れのステップに遷移したとしても、サブスクリプションに分類されるアプリケーションであって、有効なライセンスが適用されていないアプリケーションが存在しなければ、図６の画面を起動するためのアイコンはアプリケーション選択画面に表示されない。
【００６６】
ステップＳ７１０において、ライセンス状態監視部３０７は、ライセンスの有効期限が切れたアプリケーションをリスト表示する画面６００を表示中であるかを判定する。そして、表示中であると判定された場合はステップＳ７１３に遷移し、表示中ではないと判定された場合はステップＳ７１１に遷移する。ステップＳ７１１において、ライセンス状態監視部３０７は、ライセンスの有効期限が切れたアプリケーションをリスト表示する画面６００を揮発性メモリ２０３から削除し、ステップＳ７１２に遷移する。ステップＳ７１２において、ライセンス状態監視部３０７は、アプリケーションの選択画面５００のアイコン５０７を削除し、ステップＳ７１４に遷移する。
【００６７】
ステップＳ７１３において、ライセンス状態監視部３０７は、ライセンスの有効期限が切れたアプリケーションをリスト表示する画面６００のリスト部６０１のリストをクリアし、ステップＳ７１４に遷移する。なお、画面６００を表示中にステップＳ７１１とステップＳ７１２を行わない理由は、ユーザが操作している間に有効期限が切れたアプリケーションが画面６００から突然消えてしまうことを回避するためである。その後ライセンスの有効期限が切れたアプリケーションをリスト表示する画面６００からアプリケーションの選択画面５００に遷移するなどした際、その状態をライセンス状態監視部３０７が検知し、ステップＳ７１１とステップＳ７１２をおこなう。
【００６８】
ステップＳ７１４において、ライセンス状態監視部３０７は、ステータスバー５０８にライセンス状態監視部３０７が表示したメッセージを消去する。ステップＳ７１５において、ライセンス状態監視部３０７は、アイコン５０７が登録されているかを判定し、登録されている場合はステップＳ７１６に遷移し、登録されていない場合はステップＳ７１７に遷移する。何れのステップに遷移したとしても、サブスクリプションに分類されるアプリケーションであって、有効なライセンスが適用されていないアプリケーションが存在すれば、図６の画面を起動するためのアイコンはアプリケーション選択画面に表示される。
【００６９】
ステップＳ７１６において、ライセンス状態監視部３０７は、ステップＳ７０６で揮発性メモリ２０３に記憶した、有効なライセンスがないアプリケーションの情報を取得し、リスト部６０１の表示を更新し、処理を終了する。即ち、ライセンスの適用が行われず、既に適用済みのライセンスの有効期限が切れたアプリケーションは、図６のリストに追加されユーザの選択対象となる。ステップＳ７１７において、ライセンス状態監視部３０７は、ステップＳ７０６で揮発性メモリ２０３に記憶した、有効なライセンスがないアプリケーションの情報を取得する。更に取得した情報をリスト部６０１に設定したライセンスの有効期限が切れたアプリケーションをリスト表示する画面６００を揮発性メモリ２０３に登録し、ステップＳ７１８に遷移する。
【００７０】
ステップＳ７１８において、ライセンス状態監視部３０７は、アプリケーションの選択画面５００にアイコン５０７を登録し、ステップＳ７１９に遷移する。
【００７１】
ステップＳ７１９において、ライセンス状態監視部３０７は、ステータスバー５０８に、ライセンスの有効期限が切れたアプリケーションが存在することを示すメッセージを表示し、処理を終了する。このように実施例１では、有効期限が切れたライセンスは図１４のフローにより自動更新が行われないように制御される。結果、図７のステップによりライセンスの更新の指示をユーザから受け付けない限り、ライセンス要求部３０２はライセンスの要求を行わないことになる。
【００７２】
図８（ａ）は、ライセンスの有効期限が切れたアプリケーションをリスト表示する画面６００において、リスト部６０１に表示されたアプリケーションを選択した時に表示されるライセンス更新の実行を確認する画面８００ａの例を示す。メッセージ表示部８０１は、現在インストールされているアプリケーションの製品名、ライセンスの利用開始日と利用終了日を表示する。ボタン８０２は、ライセンス更新を開始するボタンである。ボタン８０２を押下すると、図８（ｂ）で説明する、ライセンスの更新中であることを示す画面８００ｂを表示し、図９で詳しく説明するライセンスのアップデート処理を開始する。ボタン８０３は、ライセンス更新を中止するボタンである。ボタン８０３を押下すると、ライセンス更新の実行を確認する画面８００ａを非表示にし、ライセンスの有効期限が切れたアプリケーションをリスト表示する画面６００を表示する。
【００７３】
図８（ｂ）は、ライセンス更新の実行を確認する画面８００ａにおいて、ボタン８０２を押下した時に表示する、ライセンスの更新中であることを示す画面８００ｂの例を示す。ライセンスの更新が成功した場合は、ライセンスの更新中であることを示す画面８００ｂを非表示にし、図８（ｃ）で説明する、ライセンスの更新が正常に完了したことを示す画面８００ｃを自動的に表示する。一方、ライセンスの更新が失敗した場合は、ライセンスの更新中であることを示す画面８００ｂを非表示にし、図８（ｄ）で説明する、ライセンスの更新に失敗したことを示す画面８００ｄを自動的に表示する。
【００７４】
図８（ｃ）は、ライセンスの更新中であることを示す画面８００ｂにおいて、ライセンスの更新が正常に完了した場合に自動的に表示する、ライセンスの更新が成功したことを示す画面８００ｃの例を示す。メッセージ表示部８０４は、インストールされているアプリケーションの製品名、更新後のライセンスの利用開始日と利用終了日を表示する。ボタン８０５は、ライセンスの更新が成功したことを示す画面８００ｃを閉じるボタンである。ボタン８０５を押下すると、ライセンスの更新が成功したことを示す画面８００ｃを非表示にし、ライセンスの有効期限が切れたアプリケーションをリスト表示する画面６００を表示する。
【００７５】
図８（ｄ）は、ライセンスの更新中であることを示す画面８００ｂにおいて、ライセンスの更新が失敗した場合に自動的に表示する、ライセンスの更新が失敗したことを示す画面８００ｄの例を示す。メッセージ表示部８０４は、インストールされているアプリケーションの製品名、更新後のライセンスの利用開始日と利用終了日を表示する。ボタン８０５は、ライセンスの更新が異常終了したことを示す画面８００ｄを閉じるボタンである。ボタン８０５を押下すると、ライセンスの更新が失敗したことを示す画面８００ｄを非表示にし、ライセンスの有効期限が切れたアプリケーションをリスト表示する画面６００を表示する。
【００７６】
図９は、画面８００ａを介してライセンスの更新が指示された際に実施される、画像形成装置１０１のライセンスアップデート処理の流れを説明する為のフローチャートである。ステップＳ９０１において、ライセンス状態監視部３０７は、ライセンス要求部３０２を利用し、ライセンス管理サーバ１０２にライセンスを要求し、ステップＳ９０２に遷移する。
【００７７】
ステップＳ９０２において、ライセンス要求部３０２は、ステップＳ９０１のライセンス要求が成功した場合はステップＳ９０３に遷移し、ライセンス要求が失敗した場合はステップＳ９０８に遷移する。ステップＳ９０３において、ライセンス適用部３０３は、ステップＳ９０１で取得したライセンスを適用しステップＳ９０４に遷移する。ステップＳ９０４において、ライセンス適用部３０３は、ステップＳ９０３のライセンス適用に成功したか否かを判定し、適用に成功した場合は、ステップＳ９０５に遷移し、適用に失敗した場合は、ステップＳ９０８に遷移する。
【００７８】
ステップＳ９０５において、ライセンス状態監視部３０７は、アプリケーション制御部３０６が提供するアプリケーションを開始するためのＡＰＩを利用し、アプリケーションの開始要求を実施し、ステップＳ９０６に遷移する。
【００７９】
ステップＳ９０６において、ライセンス状態監視部３０７は、ステップＳ９０５のアプリケーションの開始に成功したか否かを判定し、開始に成功した場合は、ステップＳ９０７に遷移し、適用に失敗した場合は、ステップＳ９０８に遷移する。ステップＳ９０７において、ライセンス状態監視部３０７は、ライセンスの更新が成功したことを示す画面８００ｃを表示し、処理を終了する。ステップＳ９０８において、ライセンス状態監視部３０７は、ライセンスの更新が失敗したことを示す画面８００ｄを表示し、処理を終了する。画面８００ｄは、図６の画面を介してライセンスの更新を行った結果、新たなライセンスの取得に失敗した際に表示される画面であって、図１４で示したライセンスの自動更新による新たなライセンスの取得に失敗した際には本画面は表示されない。理由は、自動更新に失敗した場合、その後、新たなライセンスを更新する試みが何度かあるため本画面を表示する必要がないからである。
【００８０】
以上、実施例１によって、ユーザはライセンスの有効期限が切れた商品が存在することを把握することが出来る。更に、ライセンス管理サーバに有効なライセンスが存在する場合は、ユーザ自らライセンスを更新し、拡張機能の商品を再開することが可能となる。
【実施例２】
【００８１】
実施例２では、システム管理者が意図的に停止させたアプリケーションのライセンスの有効期限が切れたときのことを考える。ライセンスの有効期限が切れた際、システム管理者の権限を有さないユーザが自らライセンスを更新し、アプリケーションを開始することが可能になった場合、システム管理者が意図的に停止させていたアプリケーションも開始できてしまうという課題がある。
【００８２】
図１０は、アプリケーション制御部３０６が提供するアプリケーションの管理画面１０００の例を示す。アプリケーションの管理画面１０００は、情報端末１０３が保持するウェブブラウザを用いて、インターネット１１１経由でアクセスする画面である。アプリケーションの管理画面１０００を利用する際、不図示の認証画面においてユーザ識別ＩＤやパスワードなどを入力し、システム管理者の権限を有すると判定された場合のみ、利用することが可能となる。
【００８３】
ＩＤ１００１は、画像形成装置１０１にログインした認証済みのユーザの識別コードを表示する。アプリケーション名１００２は、画像形成装置１０１上で動作するアプリケーションの製品名を表示する。アプリケーション識別子１００３は、アプリケーションを識別するＩＤを表示する。動作状態１００４は、アプリケーションの状態を表示する。この例では、アプリケーションの動作状態が開始中であることを示す。ライセンス状態１００５は、アプリケーションのライセンスの状態を表示する。この例では、ライセンスの状態が有効期限切れであることを示す。開始ボタン１００６は、アプリケーションの開始を指示するためのボタンである。開始ボタン１００６を押下したとき、有効なライセンスがあると判定された場合のみ、アプリケーションが開始される。なお、開始ボタン１００６が押下されたときの処理については、後述の図１２にて詳細に示す。アンインストールボタン１００７は、アプリケーションのアンインストールを指示するためのボタンである。アンインストールボタン１００７を押下したとき、アプリケーションがアンインストールされる。停止ボタン１００８は、アプリケーションを意図的に停止させるためのボタンである。停止ボタン１００８が押下されると、ライセンスの有効期限が切れていない場合であってもアプリケーションが停止される。なお、停止ボタン１００８が押下されたときの処理については、後述の図１１にて詳細に示す。
【００８４】
図１１は、管理画面１０００を介し特定のアプリケーションに対してユーザが停止の指示を行った際に実行されるアプリケーションの停止処理の流れを示すフローチャートである。ステップＳ１１０１において、アプリケーション制御部３０６は、アプリケーションの停止処理を実施し、ステップＳ１１０２に遷移する。ステップＳ１１０２において、アプリケーション制御部３０６は、ステップＳ１１０１のアプリケーションの停止処理が成功したか判定し、成功した場合はステップＳ１１０４に遷移し、失敗した場合はステップＳ１１０３に遷移する。ステップＳ１１０３において、アプリケーション制御部３０６は、不図示の異常終了画面を表示し、処理を終了する。
【００８５】
ステップＳ１１０４において、アプリケーション制御部３０６は、アプリケーションの停止要求がライセンスの有効期限切れによる停止要求か否かを判定する。期限切れによる停止要求の場合はステップＳ１１０８に遷移し、期限切れによる停止要求ではない場合はステップＳ１１０５に遷移する。期限切れによる停止要求か否かは、適用後ライセンス記憶部３０１によって記憶された適用後ライセンス情報テーブルに有効なライセンスがない場合に、アプリケーション制御部３０６がアプリケーションの停止をおこなったか否かで判定される。
【００８６】
ステップＳ１１０５において、アプリケーション制御部３０６は、アプリケーションの停止要求が意図的な停止要求であるか否かを判定し、意図的な停止要求の場合はステップＳ１１０７に遷移し、意図的な停止要求ではない場合はステップＳ１１０６に遷移する。意図的な停止要求か否かは、アプリケーションの管理画面１０００において、停止ボタン１００８を押下した際の処理かどうかで判定される。ステップＳ１１０６において、アプリケーション制御部３０６は、停止対象のアプリケーションについて、その他の理由で停止されたことを補助記憶装置２０４に記憶し処理を終了する。その他の理由というのは、本実施例では詳細な説明を省略するが、例えばアプリケーションに何らかの問題がありアプリケーション制御部３０６がアプリケーションを停止させた場合などが挙げられる。なお、ここで記憶した情報は、以降「アプリケーションの停止理由」と記す。
【００８７】
ステップＳ１１０７において、アプリケーション制御部３０６は、停止対象のアプリケーションについて、意図的に停止させたことをアプリケーションの停止理由として補助記憶装置２０４に記憶し、処理を終了する。ステップＳ１１０８において、アプリケーション制御部３０６は、停止対象のアプリケーションについて、ライセンスの有効期限切れで停止させたことをアプリケーションの停止理由として補助記憶装置２０４に記憶し、処理を終了する。
【００８８】
図１２は、アプリケーションの開始処理の流れを示すフローチャートである。ステップＳ１２０１において、アプリケーション制御部３０６は、アプリケーションの開始処理を実施し、ステップＳ１２０２に遷移する。ステップＳ１２０２において、アプリケーション制御部３０６は、ステップＳ１２０１のアプリケーションの開始処理が成功したか否かを判定し、成功した場合はステップＳ１２０３に遷移し、失敗した場合はステップＳ１２０４に遷移する。ステップＳ１２０３において、アプリケーション制御部３０６は、不図示の異常終了画面を表示し、処理を終了する。ステップＳ１２０４において、アプリケーション制御部３０６は、開始対象のアプリケーションについて、補助記憶装置２０４に記憶されたアプリケーションの停止理由をクリアし、処理を終了する。
【００８９】
図１３は、画像形成装置１０１のディスプレイ２０５に表示するアプリケーションの選択画面５００における、アイコン５０７の表示とステータスバー５０８のメッセージ表示、リスト部６０１のリスト表示に係る処理の流れを示すフローチャートである。ステップＳ１３０１において、ライセンス状態監視部３０７は、アプリケーション制御部３０６のイベント通知機能を利用して、アプリケーションの開始や停止などの状態変化、ライセンスの適用やライセンスの有効期限切れなどの状態変化に係るイベントの通知を受け、本フローチャートの処理を開始し、ステップＳ１３０２に遷移する。ステップＳ１３０２〜ステップＳ１３０４およびＳ１３２２の処理については、図７で示したステップＳ７０２〜ステップＳ７０４およびＳ７２１と同じ説明であるので省略する。
【００９０】
ステップＳ１３０５において、ライセンス状態監視部３０７は、記憶された適用後ライセンス情報テーブルに有効なライセンスがない場合、ステップＳ１３０６に遷移し、有効なライセンスがある場合、ステップＳ１３０９に遷移する。ステップＳ１３０６において、ライセンス状態監視部３０７は、画像形成装置１０１にログインした認証済みのユーザがシステム管理者権限を有しているか否かを判定する。ログインした認証済みのユーザがシステム管理者権限を有している場合はステップＳ１３０８に遷移し、有していない場合はステップＳ１３０７に遷移する。
【００９１】
ステップＳ１３０７において、ライセンス状態監視部３０７は、補助記憶装置２０４に記憶されたアプリケーションの停止理由が意図的に停止されたものであるか否かを判定する。ライセンス状態監視部３０７は、意図的な停止である場合はステップＳ１３０９に遷移し、意図的な停止ではない場合は、ステップＳ１３０８に遷移する。Ｓ１３０９に遷移すると言うことは、ログインしているユーザが一般管理者であり、管理者権限を有するユーザが意図的に停止したアプリケーションのライセンスが更新されないように制御されたことになる。
【００９２】
ステップＳ１３０８において、ライセンス状態監視部３０７は、有効なライセンスがないアプリケーションについて、アプリケーション識別子や製品の名称、利用開始日と終了日といった情報を揮発性メモリ２０３に記憶し、ステップＳ１３０９に遷移する。この時、既にリストの前行に対してステップＳ１３０８の処理が行われていた場合は、上書きではなく追加の情報として記憶する。
【００９３】
ステップＳ１３０９において、ライセンス状態監視部３０７は、リストの最終行であるかどうかを確認し、対象行が残っている場合は、ステップＳ１３０４に戻り、次の行に対して処理を実施し、対象行が残っていない場合は、ステップＳ１３０８に遷移する。ステップＳ１３１０〜ステップＳ１３２１の処理については、図７で示したステップＳ７０８〜ステップＳ７１９と同じ説明であるので省略する。以上、実施例２の形態の説明を終わる。
【実施例３】
【００９４】
実施例３では、ユーザが知らぬ間に意図せずライセンスの有効期限が切れて、アプリケーションが使用出来なくなったときのことを考える。例えば、ＬＡＮ１１０の不調等により、実施例１で説明したライセンス管理サーバ１０２への問い合わせに失敗し、期間内にライセンスが更新出来なかったケースである。実施例１で説明したとおり、ライセンスの有効期限が切れるとアプリケーションは自動的に停止し、画像形成装置１０１のディスプレイ２０５にアイコン５０７、およびステータスバー５０８にメッセージを表示する。従って、ユーザはアプリケーションが停止した後に、アイコン５０７もしくはステータスバー５０８のメッセージが表示されることで初めてライセンスの有効期限が切れたことを知るという課題がある。加えて、実施例１では、ライセンスタイプが“自動更新”のライセンスのみを対象として、画像形成装置１０１のディスプレイ２０５にアイコン５０７、およびステータスバー５０８にメッセージを表示するか否かを判定する。しかしながら、表１で説明したように“固定”のライセンスであってもライセンスに有効期間を含むことは可能である。また、”固定”のライセンスタイプは、自動的に更新されないライセンスである。従って、有効期限を含んだ”固定”のライセンスタイプのライセンスは、ライセンスの有効期限が切れることでアプリケーションが自動的に停止したとしても、ユーザはその状態になったことを知ることが出来ず、またその状態を回復することも出来ないという課題がある。
【００９５】
図１５に、ライセンスの期限が切れる前に警告を表示するライセンスの例を示す。ライセンス１５００（ａ）は、図４で説明したライセンス４０１に期限切れ警告開始日の情報を追加したものである。期限切れ警告開始日は、ユーザに対してライセンスの有効期限がまもなく切れる旨の警告を開始する日であり、更新確認日から利用終了日の間で設定される。なお、ここでは日付を指定する形態で説明したが、後述のライセンス１５００（ｂ）における期限切れ警告開始日数のように、利用終了日の何日前から警告を開始するかの日数を設定する形態であってもよい。ライセンス１５００（ｂ）は、ライセンスタイプが”固定”のライセンスであり、ライセンスの自動更新処理が行われないタイプの例を示したものである。ライセンス１５００（ｂ）は、ライセンス１５００（ａ）と異なり、利用開始日と利用終了日、更新確認日といった情報は設定せず、代わりに利用可能日数の情報を設定する。利用可能日数とは、ライセンスの有効期限が切れる迄の残りの日数であり、画像形成装置１０１へのライセンスのインストールが行われたとき、現在の日付に利用可能日数を加算した日付がライセンス１５００（ａ）で言うところの利用終了日になる。以降、利用終了日と説明する個所は、ライセンス１５００（ａ）の利用終了日に加えて、ライセンス１５００（ｂ）を画像形成装置１０１にインストールしたときの現在日付に利用可能日数を加算した日付を指すものとする。また、ライセンス１５００（ｂ）のライセンスが有効であるか否かは、現在の日付が利用終了日より前であるかによって判定される。期限切れ警告開始日数は、ユーザに対してライセンスの有効期限がまもなく切れる旨の警告を、利用終了日の何日前から開始するかを設定する日数であり、利用可能日数を下回る値で設定される。なお、ライセンス１５００（ａ）とライセンス１５００（ｂ）は共に、有効期限がまもなく切れる旨の警告を開始する日付、乃至日数をライセンスの情報として指定する形態を説明したが、これは拡張機能の商品を販売する国や地域によって、電力事情やネットワーク事情、文化や習慣に違いがあるため、ディーラーや販売会社がライセンスにより柔軟に指定出来ることを鑑みたものである。他の形態として、ユーザ自身がライセンスの有効期限の警告を開始する日数を指定したいといった要望も考えられるため、例えばアプリケーション制御部３０６が提供する管理画面（不図示）で、ユーザが日数を指定する形態であってもよい。
【００９６】
表５は、表１で説明した適用後ライセンス情報テーブルに、期限切れ警告開始日の情報を追加したものであり、ライセンス１５００（ａ）とライセンス１５００（ｂ）の情報が記録された例を示している。なお、ここでは期限切れ警告開始日に日付を記録する形態で説明したが、期限切れ警告開始日数などの列名で、利用終了日の何日前から警告を開始するかの日数を記録する形態であってもよい。
【００９７】
【表５】
2017151944.tif 000007
図１６は、画像形成装置１０１のディスプレイ２０５に表示するアプリケーションの選択画面１６００（ａ）の例を示す。アイコン１６０１は、ライセンスの確認が必要なアプリケーションが存在することを示すアイコンである。アイコン１６０１を選択すると、揮発性メモリ２０３に記憶された、図１７で説明するライセンスの確認が必要なアプリケーションをリストで表示する画面１７００（ａ）を表示する。なお、詳細は後述するが、アイコン１６０１は常にアプリケーションの選択画面１６００（ａ）に表示され、有効期限を含んだライセンスを持つアプリケーションの内、有効期限が切れたものや、まもなく有効期限が切れるライセンスがある場合のみ、使用可能な状態になる。一方、対象のライセンスが無い場合は、図１６００（ｂ）のアイコン１６０３で示すとおり、使用不可能な状態になる。ステータスバー１６０２は、画像形成装置１０１において発生した、紙詰まりや用紙切れ、トナー切れなどの警告やメッセージを表示する領域であり、この図の例では、ライセンスの確認が必要なアプリケーションが存在することを示すメッセージを表示している。アイコン１６０１を使用可能または使用不可能にする方法、更にステータスバー１６０２にメッセージを表示する方法について、後述の図１８にて詳細に示す。
【００９８】
図１７は、画像形成装置１０１のディスプレイ２０５に表示するアプリケーションの選択画面１６００（ａ）において、アイコン１６０１を選択した時に表示する、ライセンスの確認が必要なアプリケーションをリスト表示する画面である。リスト部１７０１は、ライセンスの有効期限が切れた、若しくは有効期限がまもなく切れるアプリケーションの製品名称、ライセンスの利用開始日と利用終了日を一覧で表示する。なお、“固定”のライセンスの場合、利用開始日は空、利用終了日は画像形成装置１０１にライセンスをインストールした時の現在日付に有効期限の日数を加算した日付を表示する。なお、利用開始日は空で表示するとしたが、画像形成装置１０１にライセンスをインストールした時の現在日付を表示する形態であってもよい。また、“固定”や“自動更新”といったライセンスタイプをリスト部１７０１に表示する形態であってもよい。
【００９９】
リスト部１７０１にアプリケーションのリストを表示する方法について、後述の図１８にて詳細に説明する。リスト部１７０１に表示されたアプリケーションを選択すると、ライセンスタイプが“自動更新”のライセンスの場合は、図８で説明したライセンス更新の実行を確認する画面８００（ａ）を表示する。なお、ライセンスの更新に係る処理については、図８〜図９で説明済みであるため、ここでは省略する。補足として、未だ有効期限が切れていないライセンスの場合、ライセンス管理サーバ１０２にライセンスが未だ用意出来ていない可能性も考えられる。この場合、図９のステップＳ９０８において、画面８００（ｄ）で説明した有効なライセンスが無いことを示すエラー画面が表示されるため、ユーザは日を改めて操作をすることになる。一方、リスト部１７０１に表示されたアプリケーションを選択したとき、ライセンスタイプが“固定”の場合は、エラー画面１７００（ｂ）を表示する。エラー画面１７００（ｂ）は、ライセンス管理サーバ１０２にライセンスを問い合わせるタイプのライセンスではないことを示すエラー画面である。エラー画面１７００（ｂ）が表示された場合、ユーザはシステム管理者に連絡する必要がある。連絡を受けたシステム管理者は、アプリケーション制御部３０６が提供するライセンスのアップデート画面（不図示）を用いて手動でライセンスを更新する、若しくはアプリケーションの管理画面１０００を用いてアプリケーションをアンインストールするなどの操作が想定される。
【０１００】
ボタン１７０２は、エラー画面１７００（ｂ）を閉じるボタンである。ボタン１７０２を押下すると、画面１７００（ｂ）を非表示にし、ライセンスの確認が必要なアプリケーションをリスト表示する画面１７００（ａ）を表示する。
【０１０１】
図１８は画像形成装置１０１のディスプレイ２０５に表示するアプリケーションの選択画面１６００（ａ）におけるアイコン１６０１の使用可能状態または使用不可能状態の制御、ステータスバー１６０２のメッセージ表示、リスト部１７０１のリスト表示に係る処理の流れを示すフローチャートである。ステップＳ１８０１〜ステップＳ１８０３は図７のステップＳ７０１〜ステップＳ７０３、ステップＳ１８０４は図７のステップＳ７２１と同じ処理であるため、説明を省略する。
【０１０２】
ステップＳ１８０５において、ライセンス状態監視部３０７は、現在日付が適用後ライセンス情報テーブルの期限警告開始日を過ぎているライセンスであるか否かを判定し、期限警告開始日を過ぎたライセンスである場合はステップＳ１８０９に遷移し、期限警告開始日を過ぎたライセンスでない場合はステップＳ１８０６に遷移する。なお、ここでは適用後ライセンス情報テーブルの期限警告開始日で判定する形態で説明したが、適用後ライセンス情報テーブルに利用終了日の何日前から警告を開始するかの日数が記録されている形態の場合は、利用終了日からその日数を減算した日付で判定する方法であってもよい。例えば、利用終了日が２０１６／０４／２２で、警告を開始する日数が２日の場合、現在日付が２０１６／０４／２０を過ぎた場合に、期限警告開始日を過ぎているライセンスと判定する。
【０１０３】
ステップＳ１８０６において、ライセンス状態監視部３０７は、適用後ライセンス情報テーブルのライセンスタイプの種類を判定し、”固定”のライセンスである場合はステップＳ１８０７に遷移し、”自動更新”のライセンスである場合はステップＳ１８０８に遷移する。
【０１０４】
ステップＳ１８０７において、ライセンス状態監視部３０７は、現在日付が適用後ライセンス情報テーブルの利用終了日以前のライセンスであるかを判定し、利用終了日以前ではない場合（つまり有効期限切れの場合）、ステップＳ１８０９に遷移し、利用終了日以前の場合はステップＳ１８１０に遷移する。
【０１０５】
ステップＳ１８０８において、ライセンス状態監視部３０７は、現在日付が適用後ライセンス情報テーブルの利用開始日と利用終了日の間のライセンスであるかを判定し、利用開始日と利用終了日の間にない場合（つまり有効期限切れの場合）、ステップＳ１８０９に遷移し、利用開始日と利用終了日の間の場合はステップＳ１８１０に遷移する。
【０１０６】
ステップＳ１８０９において、ライセンス状態監視部３０７は、有効期限が切れた、若しくは期限警告開始日を過ぎたライセンスのアプリケーションについて、アプリケーション識別子や製品の名称、利用開始日と終了日といった情報を揮発性メモリ２０３に記憶し、ステップＳ１８１０に遷移する。この時、既にリストの前行に対してステップＳ１８０９の処理が行われていた場合は、上書きではなく追加の情報として記憶する。詳細は後述するが、揮発性メモリ２０３に追加されたアプリケーションが１７００（ａ）のリスト１７０１に表示されることになる。
【０１０７】
ステップＳ１８１０において、ライセンス状態監視部３０７は、リストの最終行であるかどうかを確認し、対象行が残っている場合は、ステップＳ１８０４に戻り、次の行に対して処理を実施し、対象行が残っていない場合は、ステップＳ１８１１に遷移する。
【０１０８】
ステップＳ１８１１において、ライセンス状態監視部３０７は、ステップＳ１８０９で記憶したアプリケーション情報が揮発性メモリ２０３に存在するか否かを判定し、存在する場合はステップＳ１８１６に遷移し、存在しない場合はステップＳ１８１２に遷移する。
【０１０９】
ステップＳ１８１２において、ライセンス状態監視部３０７は、ライセンス確認が必要なアプリケーションをリスト表示する画面１７００（ａ）のリスト部１７０１のリストをクリアし、ステップＳ１８１３に遷移する。
【０１１０】
ステップＳ１８１３において、ライセンス状態監視部３０７は、ステータスバー１６０２にライセンス状態監視部３０７が表示したメッセージを消去し、ステップＳ１８１４に遷移する。
【０１１１】
ステップＳ１８１４において、ライセンス状態監視部３０７は、アイコン１６０１が使用可能な状態であるか否かを判定し、使用可能な状態である場合はステップＳ１８１５に遷移し、使用不可能な状態である場合は処理を終了する。
【０１１２】
ステップＳ１８１５において、ライセンス状態監視部３０７は、アイコン１６０１を使用不可能な状態に設定し、処理を終了する。
【０１１３】
ステップＳ１８１６において、ライセンス状態監視部３０７は、ステップＳ１８０９で揮発性メモリ２０３に記憶した、有効期限が切れた、若しくは期限警告開始日を過ぎたライセンスのアプリケーションの情報を取得し、リスト部１７０１の表示を更新し、ステップＳ１８１７に遷移する。即ち、ライセンスの適用が行われず、既に適用済みのライセンスの有効期限が切れたアプリケーションとまもなく有効期限を迎えるアプリケーションは、画面１７００（ａ）のリスト部１７０１に追加されユーザの選択対象となる。
【０１１４】
ステップＳ１８１７において、ライセンス状態監視部３０７は、ステータスバー１６０２に、ライセンスの確認が必要なアプリケーションが存在することを示すメッセージを表示し、ステップＳ１８１８に遷移する。
【０１１５】
ステップＳ１８１８において、ライセンス状態監視部３０７は、アイコン１６０１が使用可能な状態であるか否かを判定し、使用不可能な状態である場合はステップＳ１８１９に遷移し、使用可能な状態である場合は処理を終了する。
【０１１６】
ステップＳ１８１９において、ライセンス状態監視部３０７は、アイコン１６０１を使用可能な状態に設定し、処理を終了する。
【０１１７】
このように実施例３では、ライセンスが有効期限切れになったことに加えて、まもなく有効期限が切れるライセンスについてもユーザに通知するように制御される。従って、ライセンスの有効期限が切れる前に、ユーザが気付いたタイミングで余裕を持ってライセンスを更新することが可能となる。また、サブスクリプションモデルに分類されないアプリケーションのライセンスの場合であっても、ユーザはライセンスが有効期限切れになったことに加えて、まもなく有効期限が切れる状態であることをユーザに通知するように制御される。従って、そのようなライセンスであっても、ユーザが管理者に連絡することで、ライセンスの更新などの対処を講じてもらうことが可能となる。
【０１１８】
［その他の実施例］
実施例１から実施例３では、アプリケーションの利用開始タイミングと利用終了タイミング、および画像形成装置１０１にインストールされたアプリケーションに基づき設定される利用開始タイミングと利用終了タイミングを年月日で表現した。しかしながら、夫々のタイミングは年月日のみならず時分を考慮してそれらの日を決めても良いし、年月だけで決めても良い。タイミングの決め方に限定はない。
【０１１９】
本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施例の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【符号の説明】
【０１２０】
１０１  画像形成装置
１０２  ライセンス管理サーバ
１０３  情報端末
３０１  適用後ライセンス記憶部
３０２  ライセンス要求部
３０３  ライセンス適用部
３０４  ライセンス要求判定部
３０５  アプリケーション部
３０６  アプリケーション制御部
３０７  ライセンス状態監視部
３１０  利用情報登録部
３１１  利用情報記憶部
３１２  ライセンス生成部
３１３  配信用ライセンス記憶部
３１４  ライセンス配信部
【図１】
2017151944.tif 000008
【図２】
2017151944.tif 000009
【図３】
2017151944.tif 000010
【図４】
2017151944.tif 000011
【図５】
2017151944.tif 000012
【図６】
2017151944.tif 000013
【図７】
2017151944.tif 000014
【図８】
2017151944.tif 000015
【図９】
2017151944.tif 000016
【図１０】
2017151944.tif 000017
【図１１】
2017151944.tif 000018
【図１２】
2017151944.tif 000019
【図１３】
2017151944.tif 000020
【図１４】
2017151944.tif 000021
【図１５】
2017151944.tif 000022
【図１６】
2017151944.tif 000023
【図１７】
2017151944.tif 000024
【図１８】
2017151944.tif 000025