以下に本発明の一実施形態を示す。以下で説明される個別の実施形態は、本発明の上位概念、中位概念及び下位概念など種々の概念を理解するために役立つであろう。また、本発明の技術的範囲は、特許請求の範囲によって確立されるのであって、以下の個別の実施形態によって限定されるわけではない。
<第1の実施形態>
<システムの構成>
以下では、本発明の第1の実施形態を説明する。まず、図1を参照して、本実施形態に係るシステムの構成例について説明する。本システムは、設定値管理サーバ110、MFP120a、及びMFP120bを含む。設定値管理サーバ110、MFP120a、及びMFP120bは、ネットワーク100を介して、相互通信可能に接続されている。本実施形態に係るシステムは、MFP120a、MFP120bの2つのMFPを含むが、3つ以上のMFPを含んで構成されてもよい。また、以下では、MFP120a、及びMFP120bを、MFP120として総称する。
MFP120のそれぞれは、複数種類の機能(コピー、FAX等)を有する画像形成装置等の情報処理装置であり、内部に当該装置を利用するユーザ毎の設定情報を記憶している。設定情報とは、MFP120等の情報処理装置が各種機能を実行する際に利用される情報であり、例えば、ディスプレイ等に表示する文字のフォントや大きさの情報、印刷処理に関する情報等である。本実施形態では、設定値管理サーバ110やMFP120は、設定情報をユーザ毎(個人毎)、グループ毎、デバイス毎等に管理している。以下では、ユーザ毎(個人毎)に管理される設定情報を、個人設定情報とする。
本実施形態では、システムはMFP120と設定値管理サーバ110との間で個人設定情報の同期処理を行う。設定情報の同期処理とは、MFP120が保持する設定情報と設定値管理サーバ110が保持する設定情報との何れかを、より新しい(最新の)設定情報である他方の設定情報に合わせて更新する処理である。
設定値管理サーバ110は、MFP120が利用する個人設定情報のマスタデータを管理しているPCやサーバ装置等の情報処理装置である。マスタデータとは、本システムが管理する設定情報の基本となるデータである。設定値管理サーバ110は、MFP120から個人設定情報の更新の確認があった場合、当該MFP120が保持している個人設定情報と異なる最新の個人設定情報があれば、ネットワーク100を介して、最新の個人設定情報をMFP120に送信する。MFP120は、保持している個人設定情報が変更された場合、変更後の個人設定情報を、設定値管理サーバ110にネットワーク100を介して送信する。設定値管理サーバ110は、MFP120から変更後の個人設定情報を受信した際に、個人設定情報のマスタデータの値を、受信した変更後の個人設定情報の値で更新する。また、MFP120が、設定値管理サーバ110から最新の設定情報を受信した際には、保持している個人設定情報の値を、ユーザ操作を阻害することなく、速やかにかつ好適に、受信した最新の個人設定情報の値で更新する。
例えば、MFP120aの個人設定情報が変更された場合、MFP120aは、設定値管理サーバ110に変更後の個人設定情報を送信する。そして、設定値管理サーバ110は、受信した変更後の個人設定情報で、個人設定情報のマスタデータを更新し、更新したマスタデータに対応する個人設定情報を、MFP120bに送信する。MFP120bは、受信した個人設定情報を保持している情報に反映する。
<MFPの構成>
次に、図2を参照して、本実施形態に係る本実施形態に係る情報処理装置であるMFP120のハードウェア構成例について説明する。MFP120は、図2に示される要素以外の他の構成要素(例えば、光ディスクドライブ、給紙装置等)を含んでもよい。また、MFP120のハードウェア構成は、本実施形態と同様の効果を奏する図2と異なるハードウェア構成であってもよい。
MFP120のそれぞれは、システム制御部200、タッチパネル218、ディスプレイ219、記憶装置220、スキャナ221、及びプリンタ222を備える。また、システム制御部200は、CPU211、RAM212、ROM213、入力制御I/F(インタフェース)214、表示制御I/F215、記憶装置I/F216、及び通信I/Fコントローラ217を含む。CPU211、RAM212、ROM213、入力制御I/F214、表示制御I/F215、記憶装置I/F216、及び通信I/Fコントローラ217は、システムバス210を介して相互通信可能に接続されている。また、システムバス210には、スキャナ221やプリンタ222が接続されている。システムバス210に接続される各要素は、システムバス210を介して互いにデータのやりとりを行うことができる。
CPU211は、MFP120の制御やデータの計算・加工等の処理を行うCentral Processing Unit等の中央演算装置である。RAM212は、Random Access Memory等の揮発性のメモリであり、CPU211の主メモリ、ワークエリア等の一時記憶領域として用いられる。ROM213は、Read Only Memory等の不揮発性のメモリであり、CPU211の動作に利用される各種プログラム、各種データ等を、それぞれ所定の領域に記憶する。
CPU211は、例えばROM213に記憶されるプログラムを実行することで、RAM212をワークメモリとして用いて、MFP120の各部を統括的に制御する。CPU211が実行するプログラムは、ROM213に記憶されているプログラムに限定されず、CPU211は、記憶装置220に記憶されているプログラムを実行してもよい。
入力制御I/F214は、タッチパネル218等の入力デバイスを介したユーザによる操作を受け付け、受け付けた操作に応じた制御信号を生成し、CPU211に供給する。例えば、入力制御I/F214は、ユーザ操作を受け付ける入力デバイスとして、キーボードといった文字情報入力デバイスや数値等を直接入力するためのハードキー、又はタッチパネル218といったポインティングデバイス等と接続される。タッチパネル218は、例えば、平面的に構成されており、接触された位置に応じた座標情報を出力する入力デバイスである。以下、本実施形態においては、MFP120は、入力デバイスとしてタッチパネル218と接続される構成について説明するが、キーボード等の他の入力デバイスと接続される構成としてもよい。CPU211は、入力デバイスに対してなされたユーザによる操作に応じて入力制御I/F214で生成され供給される制御信号に基づき、プログラムに従って、MFP120の各要素を制御する。これにより、CPU211は、ユーザの操作に応じた処理を行うことができる。
表示制御I/F215は、ディスプレイ219等の表示デバイス(表示部)に対して画像を表示させるための表示信号を出力する。例えば、CPU211は、プログラムに従い、生成した表示制御信号を表示制御I/F215に対して供給する。表示制御I/F215は、この表示制御信号に基づいて表示信号を生成し、ディスプレイ219に対して出力する。例えば、表示制御I/F215は、CPU211が生成する表示制御信号に基づき、GUI(Graphical User Interface)を構成するGUI画面をディスプレイ219に表示させる。
タッチパネル218は、ディスプレイ219と一体的に構成されていてもよい。例えば、タッチパネル218は、光の透過率がディスプレイ219の表示を妨げないように構成され、ディスプレイ219の表示面の上層に取り付けられてもよい。こうすることで、タッチパネル218における入力座標と、ディスプレイ219上の表示座標と、が対応付けられる。これにより、MFP120は、あたかもユーザがディスプレイ219上に表示された画面を直接的に操作可能であるかのようなGUIを構成することができる。
記憶装置I/F216には、例えばHDD(Hard Disk Drive)やフラッシュメモリ等で構成される記憶装置220が接続される。CPU211は、記憶装置220からデータの読み出しや、記憶装置220に対するデータの書き込みを行う。CPU211は、記憶装置220をRAM212やROM213の代わりに使用してもよい。また、記憶装置220は、1台に限らず複数台の異なる種類の記憶装置で構成されてもよい。
通信I/Fコントローラ217は、CPU211の制御に基づき、例えば、LANやインターネット、有線、無線等の各種ネットワークで構成されるネットワーク100に対する通信を行う。ネットワーク100には、PCや他のMFP、プリンタ、サーバ等、様々な装置がMFP120と通信可能に接続される。また、CPU211は、外部の認証サーバとの通信も通信I/Fコントローラ217を介して行う。
スキャナ221は、CPU211の制御に基づき、原稿を読み取り、読み取った原稿に対応する画像データを生成する。例えば、CPU211は、入力制御I/F214を介して入力されたユーザの指示により、スキャナ221に対してスキャン処理を指示する。スキャナ221は、原稿台やADF(Auto Document Feeder)に置かれた原稿を読み取り、デジタルデータ化し、画像データを生成する。そして、スキャナ221は、生成した画像データを記憶装置I/F216を介して記憶装置220に記憶する。
プリンタ222は、CPU211の制御に基づき、記憶装置220に保存された画像データを印刷処理する。例えば、CPU211は、入力制御I/F214を介して入力されたユーザの指示や、通信I/Fコントローラ217を介して外部装置から入力されたコマンドの指示によりプリンタ222に対して印刷処理を指示する。プリンタ222は、記憶装置220から画像データを読み出し、印刷可能なデータ形式に変換し、紙原稿に印字する。CPU211が、ROM213又は記憶装置220に記憶されたプログラムに基づき処理を実行することによって、後述するフローチャートの処理等が実現される。
<設定値管理サーバの構成>
次に、図3を参照して、本実施形態に係る設定値管理サーバ110のハードウェア構成例について説明する。設定値管理サーバ110は、図3に示されるハードウェア構成要素以外の他のハードウェア構成要素(例えば、光ディスクドライブ等)を含んでいてもよいし、図3と同様の効果のある図3と異なるハードウェア構成であってもよい。
設定値管理サーバ110は、システム制御部300、操作装置318、ディスプレイ319、及び記憶装置320を備える。システム制御部300は、CPU311、RAM312、ROM313、入力制御I/F314、表示制御I/F315、記憶装置I/F316、及び通信I/Fコントローラ317を含む。CPU311、RAM312、ROM313、入力制御I/F314、表示制御I/F315、記憶装置I/F316、及び通信I/Fコントローラ317は、システムバス310を介して、相互通信可能に接続される。
CPU311は、各装置の制御やデータの計算・加工を行う中央演算装置である。RAM312は、揮発性のメモリであり、CPU311の主メモリ、ワークエリア等の一時記憶領域として機能する。ROM313は、不揮発性のメモリであり、CPU311が実行する各種プログラムや各種データ等を、それぞれ設定された領域に記憶する。CPU311は、例えばROM313に記憶されるプログラムに従い、RAM312をワークメモリとして用いて、設定値管理サーバ110の各要素を制御する。CPU311は、ROM313に記憶されるプログラムだけでなく、記憶装置320に記憶されルプログラムを実行してもよい。CPU311が、ROM313又は記憶装置320に記憶されたプログラムに基づき処理を実行することによって、後述する機能や処理等が実現される。
入力制御I/F314は、操作装置318等の入力デバイスを介したユーザによる操作を受け付け、操作に応じた制御信号を生成し、CPU311に供給する。例えば、入力制御I/F314は、ユーザ操作を受け付ける入力デバイスとして、キーボードといった文字情報入力デバイスや数値等を直接入力するためのハードキー、又はタッチパネルといったポインティングデバイス等で構成される操作装置318と接続される。CPU311は、入力デバイスに対してなされたユーザ操作に応じて入力制御I/F314で生成され供給される制御信号に基づき、プログラムに従い設定値管理サーバ110の各要素を制御する。これにより、CPU311は、ユーザ操作に応じた処理を行うことができる。
表示制御I/F315は、ディスプレイ319等の表示デバイスに対して画像を表示させるための表示信号を出力する。例えば、CPU311は、プログラムに従い、生成した表示制御信号を表示制御I/F315に対して供給する。表示制御I/F315は、この表示制御信号に基づき表示信号を生成してディスプレイ319に対して出力する。例えば、表示制御I/F315は、CPU311が生成する表示制御信号に基づき、GUIを構成するGUI画面をディスプレイ319に表示させる。
記憶装置I/F316には、例えばHDDやフラッシュメモリ等で構成される記憶装置320が接続されている。CPU311は、記憶装置320からのデータの読み出しや、記憶装置320に対するデータの書き込みを行う。CPU311は、記憶装置320をRAM312やROM313の代わりに使用してもよい。
通信I/Fコントローラ317は、CPU311の制御に基づき、例えばLANやインターネット、有線、無線等の各種ネットワークで構成されるネットワーク100に対する通信を行う。ネットワーク100には、PCやMFP、プリンタ、サーバ等、様々な装置が設定値管理サーバ110と通信可能に接続される。
本実施形態では、設定値管理サーバ110は、サーバ装置として説明するが、MFP120と同様のハードウェア構成を有するMFPであってもよい。
<MFPの機能構成>
次に、図4を参照して、本実施形態に係るMFP120それぞれの機能構成等の一例について説明する。MFP120のそれぞれは、機能構成として、表示操作制御部401、認証制御部402、設定情報制御部403、及び通信制御部404を含む。MFP120それぞれの各機能構成要素は、互いに情報の受け渡しができる。MFP120は、図4に示される機能構成要素以外の機能構成要素(例えば、印刷処理等を制御する印刷制御部等)を含んでもよい。また、MFP120は、本実施形態のMFP120と同様の効果を奏する図4と異なる機能構成であってもよい。図4の各機能構成要素の機能を実現するためのプログラムは、ROM213等に記憶されており、起動や機能利用の際等に必要に応じてRAM212へ展開され、CPU211により実行される。また、MFP120は、コピー、スキャン、FAX等の1つ以上の機能を有している。MFP120のそれぞれの機能や動作は、その機能や動作を制御する機能構成要素により実現される。例えば、MFP120は、コピー、スキャン、情報の送信の各機能に対して、コピー制御部、スキャン制御部、送信制御部の機能構成要素を有する。MFP120は、図4に示す機能構成要素以外にも、MFP120の処理に関わる機能や動作に対する機能構成要素を含む。
表示操作制御部401は、CPU211の制御に基づき、入力制御I/F214や表示制御I/F215を制御する。例えば、表示操作制御部401は、他の機能構成要素からの指示に基づいて、表示制御I/F215を介して、ディスプレイ219に画像を表示したり、入力制御I/F214を介して、タッチパネル218にユーザが入力した操作情報を取得したりする。
認証制御部402は、CPU211の制御に基づき、ユーザを認証する認証処理を実行し、MFP120の操作者がMFP120の正当なユーザか否かの判断を行う。以下では、MFP120の操作者に対して認証処理を実行して、正当なユーザの場合にセッションを開始することを、ログインと称する。また、認証制御部402は、記憶装置220内に実装されるユーザ情報を記憶するデータベース(以下、ユーザ情報DB410と称する。)を管理する。ユーザ情報とは、ユーザを特定するための情報であり、ユーザ識別子、ユーザ名、ドメイン名、パスワードや、その他のユーザに付随する情報等である。
認証制御部402は、MFP120内部のユーザ情報DB410に記憶されるユーザ情報に基づいて、ユーザの認証を行うこととする。しかし、認証制御部402は、通信I/Fコントローラ217を介して、外部の認証サーバに接続し、接続された外部の認証サーバにユーザの認証処理を委託して、外部の認証サーバから認証結果を取得することで、ユーザの認証処理を実行してもよい。認証制御部402は、外部の認証サーバとの認証情報のやり取りを、公知の技術を用いて行う。
また、以下では、ユーザがMFP120を利用し終わった後に、そのユーザのセッションを終了することを、ログアウトと称する。また、認証制御部402は、ユーザの登録や削除、及びユーザ情報の更新を行う機能等の機能を提供する。更に、認証制御部402は、グループ機能を提供してもよい。グループとは、複数のユーザを集めたものであり、認証制御部402は、複数のグループを登録することができる。ユーザは、0個以上のグループに所属することができる。認証制御部402は、グループの登録や削除、グループ情報の更新、ユーザをグループに所属させる、ユーザをグループから脱退させる等といった機能も提供する。認証制御部402は、ユーザを一意に特定する識別子(以下では、ユーザ識別子)や、グループを一意に特定する識別子(以下では、グループ識別子)をユーザ情報DB410に記憶する。ユーザ情報DB410は、記憶装置220に記録されている。
設定情報制御部403は、デバイス設定情報、及び個人設定情報を登録、取得、変更等する機能を有する。デバイス設定情報とは、設定情報の種別の1つであり、全てのユーザに参照される設定情報である。一方、個人設定情報は、それぞれのユーザのみに参照される設定情報である。
設定情報制御部403は、グループ設定情報の登録、取得、変更等をする機能を有してもよい。グループ設定情報は、それぞれのグループに所属するユーザのみが参照できる設定情報である。設定情報制御部403は、例えば、各ユーザが所属するグループのグループ設定情報を、各ユーザの個人設定情報の代わりとしてもよい。また、設定情報制御部403は、個人設定情報、デバイス設定情報、及びグループ設定情報以外の種別の設定情報(例えば、クライアント装置のグループ毎に決定されるクライアントグループ設定情報等)を管理してもよい。
設定情報制御部403は、記憶装置220内に実装される設定情報を記憶するデータベース(以下、設定情報DB420)を管理する。設定情報制御部403は、タッチパネル218介したユーザからの入力や、通信制御部404等からの要求を受け付け、記憶装置220上の設定情報DB420に記憶されている設定情報にアクセスする。このとき、設定情報制御部403は、デバイス設定情報、個人設定情報、グループ設定情報の何れに対しての入力であるかに応じて、それぞれに対応した設定情報にアクセスする。
通信制御部404は、設定情報制御部403からの指示により、通信I/Fコントローラ217を介して設定値管理サーバ110に対する処理を行う。通信制御部404は、設定値管理サーバ110に記憶されている最新の設定情報の取得や、MFP120で更新された情報を設定値管理サーバ110に通知して、登録するための制御を行う。通信制御部404は、設定値管理サーバ110との通信に、例えば、WebAPI等の通信プロトコル等の公知の技術を利用して通信を行う。
<設定値管理サーバの機能構成>
次に、図5を参照して、本実施形態に係る設定値管理サーバ110の機能構成例について説明する。設定値管理サーバ110は、表示操作制御部501、マスタ設定情報制御部502、及び通信制御部503を含む。設定値管理サーバ110の各機能構成要素は、互いに情報の受け渡しができる。設定値管理サーバ110は、図5に示される機能構成要素以外の機能構成要素(例えば、入力デバイスからの入力を制御する操作入力制御部等)を含んでもよい。また、設定値管理サーバ110は、本実施形態の設定値管理サーバ110と同様の効果を奏する図5と異なる機能構成であってもよい。図5の各機能構成要素の機能を実現するためのプログラムは、ROM313等に記憶されており、起動や機能利用の際等に必要に応じてRAM312へ展開され、CPU311により実行される。設定値管理サーバ110は、図5に示す機能構成要素以外にも、設定値管理サーバ110の処理に関わる機能や動作に対する機能構成要素を含む。設定値管理サーバ110は、例えば、ユーザの認証処理を制御するための機能構成要素を含む。
表示操作制御部501は、CPU311の制御に基づき、入力制御I/F314や表示制御I/F315を制御する。例えば、表示操作制御部501は、他の機能構成要素からの指示に基づいて表示制御I/F315を介して、ディスプレイ319に画像を表示したり、入力制御I/F314を介して操作装置318にユーザが入力した情報を取得したりする。
マスタ設定情報制御部502は、クライアントであるMFP120で扱われる設定情報を統合して、登録、取得、変更するための機能を有する。マスタ設定情報制御部502は、記憶装置320内に実装される、全てのMFP120の設定情報のマスタデータを記憶するマスタ設定情報DB510を管理する。マスタ設定情報制御部502は、通信I/Fコントローラ317と通信制御部503とを介して、MFP120からの要求を受け付け、マスタ設定情報DB510に記憶されている設定情報にアクセスする。
通信制御部503は、マスタ設定情報制御部502からの指示により、通信I/Fコントローラ317を介してMFP120に対して、設定値管理サーバ110が記憶する最新の設定情報を送信する。また、通信制御部503は、MFP120で更新された設定情報をマスタ設定情報DB510に登録するための制御を行う。通信制御部503は、MFP120との通信において、例えば、WebAPI等の通信プロトコル等の公知の技術を利用する。
<設定情報管理テーブル>
次に、図6を参照して、本実施形態に係る設定情報DB420に記憶される設定情報管理テーブル600の一例について説明する。設定情報管理テーブル600は、ある対象についての設定情報を、その対象の情報と、何についての情報であるかを特定するキーと、情報の値との組として記憶している。MFP120は、図6のような設定情報管理テーブル600を用いて、設定情報を管理している。設定情報管理テーブル600に記憶される設定情報は、階層構造の情報で表現される。設定情報は、対象601、キー602、及び値603の階層構造の情報を含む。
対象601は、その設定情報がどの対象(所定のユーザ、デバイス、グループなど)に関する設定情報であるかを特定する情報である。また、対象601は、その設定情報がデバイス設定情報、個人設定情報、又はグループ設定情報であるか等のその設定情報の種別を特定する情報でもある。対象601は、個人設定情報の場合、個々のユーザを特定する識別子であるユーザ識別子、グループ設定の場合、個々のグループを特定する識別子であるグループ識別子となる。
図6の例は、ユーザAの個人設定情報、ユーザBの個人設定情報、デバイス設定情報、グループ1のグループ設定情報が記憶されている様子を示す。図6の例では、対象601は、ユーザA、Bのユーザ識別子がそれぞれ「ユーザA」、「ユーザB」、デバイスを特定する情報が「デバイス」、グループ1のグループ識別子が「グループ1」となっている。デバイスやユーザやグループの識別子は、「デバイス」「ユーザA」等のようなその対象の名称の記載に限られず、例えば、図6の「ユーザA」の下に記載する「a13ab」などの対象を一意に特定できる文字列等でもよい。ユーザ識別子が「a13ab」のような文字列である場合の処理の例については、図8の個人設定情報の取得処理と、個人設定情報の登録、更新処理とで後述する。
キー602は、設定情報がどの機能における何の設定に関する情報であるかを特定する情報である。対象601とキー602との組み合わせによって、設定情報が、どの主体(デバイス、ユーザ、グループ等)のどの機能の設定情報であるか特定される。対象601とキー602とに対応する設定情報の値が、値603に記憶されている。図6の例では、対象601「ユーザA」でキー602「表示設定―表示言語」に対する値603は、「日本語」となる。キー602「表示設定―表示言語」の設定情報の値が「日本語」であることは、デバイスがユーザに対して、表示部に日本語で情報を表示することを意味する。つまり、ユーザAに対して、デバイスが表示部に表示する表示言語は、日本語となる。また、対象601「ユーザB」でキー602「表示設定―表示言語」に対する値603は、「中国語」である。また、対象601「ユーザB」で、キー602「コピー―デフォルト設定」に対する値603は、「カラーモード:白黒、両面:両面→両面、原稿の種類:文字」である。ここで言う、コピーのデフォルト設定とは、コピーアプリケーションの操作を開始するときに、初期に設定される設定値を示す。
設定情報DB420は、個人設定情報を、ユーザの数だけ記憶している。一方、設定情報DB420は、デバイス設定情報を1つのみ記憶している。これは、MFP120のそれぞれにとって、利用するデバイス設定情報は、自身についてのデバイス設定情報だけであるためである。図6の例の場合、デバイス設定情報のキー602「表示設定―表示言語」に対する値603は、「英語」となる。
対象601「グループ1」のグループ設定情報について、キー602「グループアドレス帳―グループアドレス1」に対する値603は、「g1@abc.com」となる。例えば、グループ1にユーザAとユーザBとが所属しているとする。ユーザAとユーザBとは、ユーザA又はユーザBとしてMFP120にログインして、グループアドレス1を参照することができるが、グループ1に所属していないユーザCは、参照することができない。
個人設定情報のキー602とデバイス設定情報のキー602とで、共通するものと共通しないものとがある。個人設定情報とデバイス設定情報とが共通するキー602を持つ場合、設定情報制御部403は、個人設定情報のキー602に対応する値603の初期値として、デバイス設定情報のキー602に対応する値603を利用できる。また、設定情報制御部403は、新たに登録されたユーザの個人設定情報の初期値として、デバイス設定情報の値を利用することができる。図6を例にすると、ユーザCの個人設定情報が登録されておらず、設定情報制御部403が新たにユーザCの個人設定情報を登録することとする。その場合、設定情報制御部403は、ユーザCの個人設定情報のキー602「表示設定―表示言語」についての値603を、デバイス設定情報のキー602「表示設定―表示言語」についての値603である「英語」として決定することができる。
設定情報制御部403は、ユーザのログインの際に、ログインで特定されたユーザの識別子と同一の対象601を、設定情報管理テーブル600から検索する。そして、設定情報制御部403は、検索した個人設定情報を読み込み、読み込んだ個人設定情報を、MFP120の各機能・動作に反映させる。そのため、ユーザは、登録されたそのユーザ用の個人設定情報に合わせてカスタマイズされたMFP120を利用することができる。また、設定情報制御部403は、ユーザのログアウトの際に、設定情報管理テーブル600からデバイス設定情報を読み込み、MFP120の各機能・動作に反映する。そのため、MFP120は、ユーザが未ログインの状態では、デバイス設定情報が反映された各機能・動作を提供する。
<登録ユーザ管理テーブル>
次に、図7を参照して、本実施形態に係るMFP120に登録されているユーザを管理するための登録ユーザ管理テーブル700の一例について説明する。登録ユーザ管理テーブル700は、設定情報DB420に記憶される。設定情報制御部403は、ユーザがMFP120に登録されると、登録されたユーザの情報を登録ユーザ管理テーブル700に追加し、登録されたユーザについての個人設定情報を生成し、生成した個人設定情報を設定情報管理テーブル600に追加する。つまり、登録ユーザ管理テーブル700に登録されているユーザは、MFP120において、個人設定情報が記憶される対象のユーザとなる。登録ユーザ管理テーブル700は、ユーザ識別子701、最終同期日時702、サイズ703、ユーザ名704、ドメイン名705、及び最終ログイン日時706を含んで構成される。
ユーザ識別子701は、複数のMFP120に含まれるMFPの全てで他のユーザと重複することなく、ユーザを一意に特定する識別子である。設定情報制御部403は、例えば、ログインの際に入力された、ユーザ名及びドメイン名を結合した文字列や、ユーザ名及びドメイン名から生成されるハッシュ値等を、識別子として生成してもよい。
最終同期日時702は、登録されたユーザごとのユーザ識別子701に紐付けられ、通信制御部404が設定値管理サーバ110から各ユーザの最新の個人設定情報を取得して反映した日時の情報である。本実施形態では、設定値管理サーバ110やMFP120のそれぞれは、同期された時刻情報を用いている。また、本実施形態では、設定情報制御部403は、設定値管理サーバ110から設定情報を受信した日時を最終同期日時702としているが、他の日時を最終同期日時702としてもよい。例えば、設定情報制御部403は、設定値管理サーバ110から受信した設定情報に基づいて、設定情報管理テーブル600内の設定情報を更新した日時を、最終同期日時702としてもよい。
サイズ703は、各ユーザの個人設定情報のデータサイズを示す情報である。ユーザ名704、ドメイン名705、及び最終ログイン日時706は、それぞれユーザ識別子701に対応するユーザのユーザ名、ドメイン名、MFP120への最終ログイン日時の情報である。設定情報制御部403は、MFP120にログインが行われる度に、ログインしたユーザについての最終ログイン日時706を、ログインが行われた日時の情報で更新する。MFP120に登録だけされて、MFP120にログインしていないユーザについての最終ログイン日時706は、0となる。
本実施形態では、登録ユーザ管理テーブル700は、ユーザ名704及びドメイン名705を含む。しかし、設定情報制御部403は、例えば、ユーザ識別子がユーザ名及びドメイン名を結合した文字列である場合、ユーザ識別子からユーザ名及びドメイン名を取得することができる。また、設定情報制御部403は、認証制御部402にユーザ識別子に対応するユーザ名、ドメイン名を問い合わせることで、ユーザ名、ドメイン名を取得できる。このような場合、登録ユーザ管理テーブル700は、ユーザ名704、ドメイン名705を含まないこととしてもよい。
また、設定情報制御部403は、認証制御部402にユーザ名、ドメイン名に対する最終ログイン日時を問い合わせることで、最終ログイン日時706を取得してもよい。その場合、登録ユーザ管理テーブル700は、最終ログイン日時706を含まないこととしてもよい。また、登録ユーザ管理テーブル700がユーザ名704及びドメイン名705を含み、ユーザ識別子701を含まないこととして、設定情報制御部403は、ユーザ識別子が必要な際にユーザ名704、ドメイン名705から生成してもよい。また、設定情報制御部403は、ユーザ名704及びドメイン名705に基づいて、認証制御部402に、ユーザ識別子を問い合わせてもよい。
<マスタ設定情報管理テーブル>
次に、図8を参照して、本実施形態に係るマスタ設定情報管理テーブル800の一例について説明する。マスタ設定情報管理テーブル800は、設定情報のマスタデータを記憶するテーブルであり、設定値管理サーバ110のマスタ設定情報DB510に記憶される。マスタ設定情報管理テーブル800に記憶されている設定情報のマスタデータは、図6に示した設定情報管理テーブル600の設定情報と同様に、階層構造の情報で表現される。以下では、設定情報のマスタデータを、マスタ設定情報とする。マスタ設定情報は、対象601、キー602、及び値603にそれぞれ対応する、対象801、キー802、及び値803を含む。対象801、キー802、及び値803の詳細は、それぞれ対象601、キー602、値603と同様である。
マスタ設定情報管理テーブル800は、設定情報管理テーブル600と異なり、それぞれの値803が、いつ更新されたかを示す最終更新日時804をさらに含む。対象801の値は、「ユーザA」、「デバイス」等の対象の名称を示す文字列でもよいし、「a13ab」等の対象を一意に特定する文字列でもよいし、主体を一意に特定できる情報ならば任意のものでよい。対象801の値が「a13ab」である場合の処理を、以下の個人設定情報の取得処理、個人設定情報の登録、更新処理で説明する。
(個人設定情報の取得処理)
まず、MFP120が、設定値管理サーバ110に記憶された最新のユーザの個人設定情報を取得する処理について説明する。
ユーザがMFP120に、ユーザ名、パスワード等の認証に必要な情報を入力すると、認証制御部402は、入力された情報の正当性を確認する認証処理を行い、MFP120へのユーザのログイン処理を実行する。MFP120にログインしたユーザのユーザ識別子を「a13ab」であったとする。認証制御部402は、ユーザの正当性を確認し、ログイン処理を完了すると、設定情報制御部403に対して、ユーザ識別子「a13ab」の設定情報を要求する。
設定情報制御部403は、設定情報DB420に記憶された登録ユーザ管理テーブル700からユーザ識別子701「a13ab」に対応するユーザの最終同期日時702「2016/01/15 13:28:40」を取得する。設定情報制御部403は、通信制御部404に対して、設定値管理サーバ110から、ユーザ識別子「a13ab」のユーザの個人設定情報のうち、最終同期日時「2016/01/15 13:28:40」以降に更新されたものを取得するように指示する。通信制御部404は、通信I/Fコントローラ217を利用してネットワーク100経由で、以下の処理を行う。即ち、通信制御部404は、設定値管理サーバ110にユーザ識別子「a13ab」に対応するユーザAについて「2016/01/15 13:28:40」以降に更新された個人設定情報の取得を要求する。
設定値管理サーバ110の通信制御部503は、MFP120からの要求を受信すると、受信した要求の解析を行う。更に、通信制御部503は、マスタ設定情報制御部502に対して、ユーザ識別子「a13ab」の最終同期日時「2016/01/15 13:28:40」以降に更新された個人設定情報を返すように指示する。
マスタ設定情報制御部502は、ユーザ識別子「a13ab」の最終同期日時「2016/01/15 13:28:40」以降に更新された個人設定情報について、マスタ設定情報DB510に記憶されたマスタ設定情報管理テーブル800から検索を行う。ユーザ識別子「a13ab」のMFP120における最終更新日時は「2016/01/15 13:28:40」である。マスタ設定情報制御部502は、対象801が、「a13ab」を含み、最終更新日時804が、「2016/01/15 13:28:40」以降の対象801、キー802、及び値803の組を検索する。
図8の例では、マスタ設定情報制御部502は、対象801が「ユーザA(a13ab)」、キー802が「表示設定―初期画面」、及び値803が「コピー」の組を検索することとなる。マスタ設定情報制御部502は、条件が合致する組が複数存在する場合、複数の組を検索することとなる。また、指定された最終同期日時以降に更新されたデータが存在しなければ、マスタ設定情報制御部502による検索結果は、なしになる。
マスタ設定情報制御部502は、検索した対象801、キー802、及び値803の組と、検索処理を実行した時刻の日時の情報を、通信制御部503に送信する。例えば、マスタ設定情報制御部502による探索処理が実施された日時が2016/03/16 13:41:59とする。
通信制御部503は、マスタ設定情報制御部502から受信した情報に対応するユーザ識別子、キー、値、及び、検索日時の情報をMFP120に送信する。本実施形態では、MFP120に送信される情報は、ユーザ識別子が「a13ab」、キーが「表示設定―初期画面」、値が「コピー」、検索日時が「2016/03/16 13:41:59」となる。
MFP120では、通信制御部404は、設定値管理サーバ110からユーザ識別子、キー、値、及び、検索日時の情報を受信し、受信した情報の解析を行う。通信制御部404は、設定情報制御部403に設定値管理サーバ110から受信したユーザ識別子(a13ab)、キー(表示設定―初期画面)、値(コピー)、検索日時(2016/03/16 13:41:59)の情報を渡す。そして、通信制御部404は、設定情報制御部403に対して、個人設定情報の更新を指示する。
設定情報制御部403は、通信制御部404から渡された情報に基づいて、設定情報DB420に格納された設定情報管理テーブル600に記憶されている個人設定情報を更新する。設定情報制御部403は、例えば、通信制御部404から受け取ったユーザ識別(a13ab)、キー(表示設定―初期画面)に対応する値を、受け取った(コピー)で更新する。設定情報制御部403は、例えば、対象601が(a13ab)を含み、キー602が(表示設定―初期画面)である値603を、(コピー)で更新する。
通信制御部404は、更に、設定情報DB420に記憶された登録ユーザ管理テーブル700のユーザ識別子「a13ab」の最終同期日時を設定値管理サーバ110での検索日時(2016/03/16 13:41:59)に変更する。
以上により、MFP120aのユーザAの個人設定情報が設定値管理サーバ110の最新の状態と同期されて更新される。設定情報制御部403は、MFP120aの各機能に対する機能構成要素に対して、ユーザAの個人設定情報を渡して、表示操作制御部401に制御を移す。表示操作制御部401は、ユーザ識別子「a13ab」の個人設定情報が反映されたログイン後の画面表示を行う。
以上の処理は、ユーザがMFP120にログインした際に設定値管理サーバ110に記憶されているそのユーザの最新の個人設定情報をMFP120が取得する処理の一例である。また、MFP120は、例えば、個人設定情報を明示的に同期させることを設定値管理サーバ110に指示して、ログインが行われた場合以外の他のタイミングで設定値管理サーバ110から最新の設定情報を取得してもよい。また、設定値管理サーバ110は、例えば、個人設定情報を明示的に同期させることをMFP120に指示して、設定値管理サーバ110が最新の個人設定情報をMFP120に送信してもよい。
(個人設定情報の登録、更新処理)
次に、MFP120で更新されたユーザの個人設定情報を、設定値管理サーバ110が登録して更新する処理について説明する。以下で説明する処理においては、個人設定情報の取得処理で説明したユーザ識別子が「a13ab」のユーザのMFP120のログイン処理が完了している状態であるとする。このユーザがタッチパネル218を介して、このユーザの個人設定情報を変更する操作を実施した場合、設定情報制御部403は、実施された操作に基づいて、このユーザの個人設定情報を変更する。
設定情報制御部403は、例えば、以下のような処理により、個人設定情報を変更する。即ち、設定情報制御部403は、個人設定情報の変更に利用される、不図示の表示操作制御部401によって表示された個人設定情報の変更画面を介したユーザ操作に基づいて個人設定情報を変更する。例えば、設定情報制御部403は、当該ユーザ操作の情報に基づいて、ログイン後に表示される初期画面を変更したり、コピーの印刷設定を両面印刷設定に変更したりする。個人設定情報の変更画面は、例えば、変更可能な設定項目の名称と、各設定項目に対応する設定情報の複数の選択肢を示すラジオボタン等を含む画面である。ユーザは、個人設定情報の変更画面内のある設定項目の選択肢を示す複数のラジオボタンから1つを選択することで、その設定項目についての設定情報を変更することができる。
個人設定情報の変更を実施した機能構成要素について、設定情報制御部403には、表示操作制御部401から、変更を実施したユーザ識別子「a13ab」と、ユーザによって指定された値とが渡される。ここでユーザによって指定された値は、例えば、キー602、値603の組である。例として、ユーザ識別子が「a13ab」のユーザが、キー602として「個人アドレス帳―個人アドレス1」、値603として「xxx@yyy.co.jp」を指定したとする。設定情報制御部403は、登録ユーザ管理テーブル700にユーザ識別子「a13ab」が存在するか否かを確認する。設定情報制御部403は、登録ユーザ管理テーブル700にユーザ識別子「a13ab」が存在しない場合、登録ユーザ管理テーブル700にユーザ識別子「a13ab」のユーザの情報を登録する。このとき、設定情報制御部403は、登録されたユーザのユーザ識別子701、ユーザ名704、ドメイン名705、最終ログイン日時706を登録するが、これら以外の項目は、未確定のため空欄(又は、値0)とする。図7の例では、ユーザ識別子「a13ab」が登録ユーザ管理テーブル700に登録されているため、設定情報制御部403は、新たにユーザを登録することはしない。
更に、設定情報制御部403は、設定情報管理テーブル600に記憶されている対象601が「a13ab」の個人設定情報に、ユーザから指定されたキー602(個人アドレス帳―個人アドレス1)が存在するか否かを確認する。設定情報制御部403は、存在しないと確認した場合は、対象601が「a13ab」の個人設定情報に、キー602(個人アドレス帳―個人アドレス1)を登録する。図6の例では、対象601が「a13ab」の個人設定情報に「個人アドレス帳―個人アドレス1」のキー602が登録されているので、設定情報制御部403は、新たにキー602を登録しない。
そして、設定情報制御部403は、設定情報管理テーブル600内の対象601「a13ab」、キー602「個人アドレス帳―個人アドレス1」に対応する値603を、ユーザから指定された「xxx@yyy.co.jp」で更新する。図6の例では、設定情報制御部403は、対象601「a13ab」、キー602「個人アドレス帳―個人アドレス1」の値603を「aaa@abc.com」から「xxx@yyy.co.jp」に変更する。設定情報制御部403は、ユーザから指定された対象601、キー602の値が設定情報管理テーブル600に存在しない場合、新規に指定された情報を登録する。
設定情報制御部403は、設定情報管理テーブル600の更新処理を完了すると、更新の要求を行った機能構成要素に更新が完了したことを返答する。また、設定情報制御部403は、設定値管理サーバ110に対して、ユーザ識別子「a13ab」の「個人アドレス帳―個人アドレス1」の値が「xxx@yyy.co.jp」であることを示す情報を送信する。そして、設定情報制御部403は、設定値管理サーバ110に対して、送信した情報に基づいて、設定値管理サーバ110が管理する設定情報を更新するように指示する。
通信制御部404は、通信I/Fコントローラ217を利用してネットワーク100経由で以下の処理を行う。通信制御部404は、設定値管理サーバ110に対して、ユーザ識別子「a13ab」のキー「個人アドレス帳―個人アドレス1」の値を「xxx@yyy.co.jp」に更新する指示を送信する。
設定値管理サーバ110の通信制御部503は、MFP120からの設定情報の更新の指示を受信する。通信制御部503は、受信した要求の解析を行う。そして、通信制御部503は、マスタ設定情報制御部502に、マスタ設定情報管理テーブル800の対象801が「a13ab」のキー802が「個人アドレス帳―個人アドレス1」の値803を、「xxx@yyy.co.jp」に更新するよう指示する。マスタ設定情報制御部502は、マスタ設定情報DB510のマスタ設定情報管理テーブル800に対して、対象801(a13ab)、キー802(個人アドレス帳―個人アドレス1)に対応する値803を「xxx@yyy.co.jp」に更新する。ここでの更新は、MFP120での設定情報管理テーブル600の更新と同様の処理である。
マスタ設定情報制御部502は、マスタ設定情報管理テーブル800の対象801(a13ab)に対応する個人設定情報を更新した後に、以下の処理を行う。即ち、マスタ設定情報制御部502は、設定値管理サーバ110における現在時刻の取得を行い、取得した時刻の情報を、更新した値803に対応する最終更新日時804に追加する。マスタ設定情報制御部502は、更新処理が完了した旨を示す情報を通信制御部503に送信する。通信制御部503は、MFP120に設定値管理サーバ110の更新処理が完了したことを示す情報を送信する。
MFP120の通信制御部404は、設定値管理サーバ110から個人設定情報の更新が完了したことを示す情報を受信すると、更新処理を完了する。MFP120、設定値管理サーバ110は、設定情報の登録、更新、取得処理において、エラーが発生した場合、エラー処理として設定された処理を行ってもよい。例えば、MFP120、設定値管理サーバ110は、エラーが発生した場合、それぞれの表示部にエラー表示を行ってもよい。
<ログイン画面>
次に、図9を参照して、本実施形態に係るMFP120へのユーザのログインに利用されるログイン画面900の一例について説明する。表示操作制御部401は、ユーザのログインを受け付ける場合、ログイン画面900をディスプレイ219に表示する。
ログイン画面900は、ユーザ名入力フォーム901、パスワード入力フォーム902及びログインボタン903を含んで構成される。ユーザはタッチパネル218等を介してユーザ名入力フォーム901にユーザ名を入力し、パスワード入力フォーム902にパスワードを入力した後、ログインボタン903を選択する。
認証制御部402は、ログインボタン903の選択を検知すると、ユーザ名入力フォーム901、及びパスワード入力フォーム902に入力された文字列を表示操作制御部401から取得し、取得した文字列に基づいて、ユーザの認証処理を実施する。もちろん認証方法は、この限りではなく、非接触型のICカードからユーザ情報を取得する形態など他の認証方法でもよい。また、認証を実施する外部サーバを別途設け、取得したユーザ情報を当該外部サーバへ通知して、当該外部サーバで実施された認証結果を受信するようにしてもよい。
<メインメニュー画面>
次に、図10を参照して、本実施形態に係るメインメニュー画面の一例について説明する。表示操作制御部401は、ユーザのログインが確認されると、メインメニュー画面1000をディスプレイ219に表示する。
メインメニュー画面1000は、MFP120における各アプリケーションへのリンクボタン1001a〜1001hで構成される。つまり、リンクボタン1001a〜1001hは、MFP120がログインユーザに対して提供するサービスを選択するボタンである。表示操作制御部401は、当該リンクボタンへの操作を、タッチパネル218を介して受け付ける。なお、別途設けられたハードウェアボタンの方向キーや決定キー等を介してこれらの各アプリケーションを選択可能としてもよい。例えば、コピーアプリケーションへのリンクボタン1001aを選択した場合、後述するコピー画面1100がディスプレイ219に表示される。また、ログインユーザの権限や制限情報に応じて、選択可能なアプリケーションを変更するように表示してもよい。この場合、ログインユーザでは現状使用できないアプリケーションに対応するリンクボタンについてはグレー表示等で選択できないように表示してもよい。
また、左メニュー1002は、ユーザ情報表示エリア1003と各アプリケーションへのショートカットボタン1004で構成される。ユーザ情報表示エリア1003は、ログイン画面900においてログインに成功したユーザのユーザ識別情報を表示する領域である。図10の例では「ユーザB」がログイン中であることを示している。ショートカットボタン1004は、各アプリケーションへのリンクボタン1001a〜1001hと同様に選択することで各ファンクション画面へと遷移することが可能である。図10の例では、ショートカットボタンにショートカットボタン1004が登録されているが、左メニュー1002に登録できるショートカットボタンは、複数存在してもよい。
<コピー画面>
次に、図11を参照して、本発明の実施形態に係るコピー画面の一例である。表示操作制御部401は、例えばメインメニュー画面1000でリンクボタン1001aが選択されると、コピー画面1100、1110をディスプレイ219に表示する。
ユーザは、コピー画面1100、1110において、用紙に対する面付、ステイプルなどフィニッシャーの設定や濃度等の画質設定などの出力に関する印刷設定を指定することができる。図11の画面例では、設定が施されているキーは反転表示などで表現している。なお、本発明に直接関係のない各モードについては説明を省略する。
画面1100は、設定値管理サーバ110が管理するユーザBのコピーデフォルト設定の設定値を反映していないコピー画面の一例を示している。1101は仕上げキーであり、出力されたコピーの仕分けやホチキスなどの仕上げをサポートする機能である。画面1100では仕上げ機能に「グループ」が設定されており、キーが反転表示されていることを表現している。
画面1110は、設定値管理サーバ110で管理されている設定情報のうち、ユーザBのコピーデフォルト設定の設定値をMFP120に同期し、設定情報をディスプレイ219に反映した状態のコピー画面を示している。1102は両面キーであり、両面モードを設定する場合に使用する。画面1110では両面モードとして「両面から両面」が設定されており、キーが反転表示されていることを表現している。1103は、原稿の種類キーであり、最適な画像再現のため、原稿に応じた原稿のタイプを選択し、画像処理を変更する場合に使用する。また、画面1110では原稿の種類モードとして「文字」が設定されており、キーが反転表示されていることを表現している。
本実施形態によれば、例えば上記のようにログインユーザがユーザBである場合に、ユーザ操作を阻害することなく、速やかに、かつ好適に画面1110をディスプレイ219に表示する。例えば、ユーザが操作を開始している段階、例えばコピー設定を行っている操作中に、設定値管理サーバ110から取得したユーザB固有の設定情報をコピー画面に反映すると、それまでのユーザの操作が無駄になってしまう。或いは、ユーザの意図しないコピー結果を出力されてしまう。このようなユーザが意図しない動作・設定を回避すべく、本実施形態に係るMFP120は以下の制御を行う。
<同期制御>
次に、図12を参照して、本発明の実施形態に係る設定値管理サーバ110からMFP120へ設定情報の同期を行う処理を説明する。具体的には、ユーザBがログインした状態で、設定値管理サーバ110で管理されるマスタ設定情報管理テーブル800のうち、最終同期日時以降に更新のあったコピーのデフォルト設定をMFP120へと同期し、ディスプレイ219の表示へ反映する処理を例に説明する。図12のフローチャートに示す各動作は、MFP120のCPU211が制御プログラムを実行することにより実現される。本フローチャートは、入力制御I/F214を介してタッチパネル218からユーザの操作を受け付けられる状態で開始される。
S1201で、CPU211は、表示操作制御部401により、ディスプレイ219に表示されたログイン画面900よりユーザの認証操作を受け付け、認証制御部402によりログインに成功したか否かを判断する。ログインに成功した場合はS1202に処理を進める。一方、ログインに失敗した場合は、S1201に戻り処理を繰り返す。
S1202で、CPU211は、設定情報制御部403により、設定情報DB420に記憶されている登録ユーザ管理テーブル700から、S1201で認証されたユーザ識別子と同一のユーザ識別子701に対応する最終同期日時702の情報を取得する。例えば、S1201でユーザBのログインに成功した場合、S1202では、登録ユーザ管理テーブル700のユーザ識別子3c85eに対応する最終同期日時702として「2016/02/01 17:53:31」を取得する。
S1203で、CPU211は、設定情報制御部403により、通信制御部404を介して、設定値管理サーバ110へ個人設定情報の同期要求を行う。通信制御部404は、例えば、S1202で取得したユーザBの最終同期日時702の情報の取得要求を設定値管理サーバ110へ送信する。
S1204で、CPU211は、通信制御部404により、S1203で取得要求を行った設定情報を設定値管理サーバ110から受信し、MFP120への同期を開始する。受信した設定情報はMFP120の設定情報制御部403を介して、設定情報DB420へ格納される。具体的には、マスタ設定情報管理テーブル800のキー802(コピー―デフォルト設定)に対応する値803「カラーモード:白黒、両面:両面→両面、原稿の種類:文字」を設定値管理サーバ110から受信し、MFP120の設定情報DB420へ格納する。
S1205で、CPU211は、設定情報制御部403により、設定値管理サーバ110からMFP120への同期が完了したか否かを判断する。同期が完了した場合には、S1206へと処理を進める。一方、同期が完了していない場合には、同期が完了するまでS1205の処理を繰り返す。
S1206で、CPU211は、設定情報制御部403により、S1204でMFP120への同期処理によって設定情報DB420へと格納した設定情報を読み出し、設定情報の一時格納領域へ格納する。設定情報の一時格納領域は、設定情報をディスプレイ219に反映する際に、参照する設定情報を一時的に格納する領域である。設定情報の一時格納領域は、記憶装置220、RAM212、又はROM213を利用して確保されてもよい。具体的には、設定情報制御部403は、S1204の処理で設定情報DB420へ格納されたユーザBのコピーデフォルト設定を読み出し、設定情報の一時格納領域へと格納する。
S1207で、CPU211は、設定情報制御部403により、S1205で同期が完了した時点で、ディスプレイ219に同期された設定情報に関する画面の表示がされているかを確認する。同期された設定情報に関する画面が表示されている場合は、S1208に処理を進める。一方、同期された設定情報に関する画面が表示されていない場合、S1209に処理を進める。
同期された設定情報に関する画面の表示の確認方法は、ディスプレイ219に表示されている画面と、同期された設定情報の設定情報管理テーブル600のキー602のカテゴリが一致するかで判断を行う。具体的には、設定情報制御部403は、S1205で同期された設定情報がコピーのデフォルト設定である場合は、キー602のカテゴリが「コピー」であるため、ディスプレイ219に表示されている画面が「コピー」カテゴリであるかを判断する。例えば、同期完了時にディスプレイ219にコピー画面1100を表示している場合、コピーファンクションに関する画面のカテゴリは「コピー」と判断されるため、S1208へと処理を進める。一方で、ディスプレイ219にメインメニュー画面1000を表示している場合、コピーアプリケーションに関する画面ではないため、「コピー」のカテゴリには含まれないと判断され、S1209へと処理を進める。ここでは、同期した設定情報であるコピーのデフォルト設定に関する表示画面をコピー画面1100として挙げているが、同期された設定情報に関する表示はこの一画面に限らず、別の画面であってもよい。
S1208で、CPU211は、表示操作制御部401により、同期された設定情報に関する画面が表示中に画面の表示をリセットする操作が行われたか否かを判断する。リセット操作が行われた場合、S1210へと処理を進める。一方で、リセット操作が行われない場合、S1208の処理を繰り返す。ここで、リセット操作とは、ディスプレイ219に反映された設定情報を初期の値に戻す操作を表示する。例えば、MFP120の不図示の操作部に設けられたリセットキーのユーザによる押下や一定時経過後に設定情報の値を自動で初期値に設定する操作などを示す。なお、ここでは、リセットキーの押下を例に説明したが、本発明を限定する意図はなく、ユーザによる所定の操作を上記リセットキーの押下に対応する操作として適用してもよい。つまり、本発明では、同期が完了したタイミングで、同期された設定情報に関する画面(ここでは、コピー画面)が既に表示されていれば、ユーザによる所定の操作を受け付けて同期された設定情報を反映する、後述するS1210及びS1211の処理へ移行する。これは、ユーザが既に表示されている画面を介して設定操作を行っている可能性があり、意図しない動作や設定を回避するためにユーザ操作をトリガとするものである。したがって、同期された設定情報を反映するトリガとして、リセットキーの押下に限定する必要はなく、単なる一例として説明したものである。
S1209で、CPU211は、表示操作制御部401により、同期された設定情報に関する画面、即ち、ここではコピー画面の表示が開始されたか否かを判断する。同期された設定情報に関する画面の表示が開始された場合は、S1210へと処理を進める。一方で、同期された設定情報に関する画面の表示が開始されない場合は、S1209の処理を繰り返す。具体的には、メインメニュー画面1000を表示している状態でユーザがリンクボタン1001aを選択し、同期された設定情報であるコピーのデフォルト設定に関するコピー画面1100を表示した場合は、S1210へと処理を進める。一方で、コピー画面1100の表示が開始されない場合は、S1209の処理を繰り返す。ここでは、同期が完了したタイミングで、同期された設定情報に関する画面が表示されていないため、S1208のようにユーザからの所定の操作をトリガとする必要がない。したがって、同期された設定情報に関する画面を新たに表示する際に同期された設定情報を反映すればよいため、ユーザ操作を検知するのではなく当該画面の表示タイミングを判断している。
S1210で、CPU211は、設定情報制御部403により、S1206で設定情報の一時格納領域に格納した設定情報を取得する。続いて、S1211で、CPU211は、表示操作制御部401により、S1210で取得した同期された設定情報を反映したコピー画面をディスプレイ219に表示し、処理を終了する。具体的には、設定情報の一時格納領域より取得した「ユーザB」のコピーのデフォルト設定「カラーモード:白黒、両面:両面→両面、原稿の種類:文字」をディスプレイ219に反映したコピー画面1110の表示となる。なお、S1210で、CPU211は、反映が完了すると、取得した設定情報を一時格納領域から削除することが望ましい。
以上説明したように、本情報処理装置は、認証されたユーザに関わる同期データを外部装置である設定値管理サーバ110から取得し、同期データの取得が完了すると、同期データに関わる画面(機能の設定画面等)が表示部に表示されているか否かを判断する。さらに、情報処理装置は、同期データに関わる画面が表示部に表示されていれば、ユーザから所定の操作を受け付けると同期データを当該画面に反映する。一方、情報処理装置は、同期データに関わる画面が表示部に表示されていなければ、画面を表示部に表示する際に同期データを反映する。これにより、外部装置からユーザに対応する設定情報を取得可能なシステムにおいて、ユーザの操作を阻害することなく、速やかに、かつ、好適に設定情報の反映を行うことができる。ここでは、コピーの設定情報に関してのシステムについて説明を行ったが、別の設定情報の同期処理も同様に制御されうる。
<第2の実施形態>
以下では、本発明の第2の実施形態について説明する。本実施形態では、上記第1の実施形態の構成に加えて、同期が完了したタイミングをユーザに通知する構成を含む。まず、図13を参照して、本実施形態に係る設定値管理サーバ110からMFP120への同期完了時に表示する通知画面の一例について説明する。
通知画面1300は、設定情報の同期が完了したタイミングで、ディスプレイ219に表示される、同期の完了をユーザに通知するための画面である。メッセージ表示エリア1301は、同期完了の通知と同期されたデータがディスプレイ219の表示に反映されるタイミングをユーザに通知するためのメッセージを表示するエリアである。ここでは、リセットキーが押下されると同期データの反映が行われることを通知している。なお、ここでは、一例として同期データを反映するトリガをリセットキーの押下としているが、上記第1の実施形態と同様に、上記操作に限定する意図はなく、ユーザの意思が反映される手法であればよい。
<通知画面の表示制御>
次に、図14を参照して、上記第1の実施形態に加え、同期完了時に同期された設定情報に関する画面表示を行っている場合に、通知画面1300をディスプレイ219に表示する処理手順について説明する。図14のフローチャートに示す各動作は、MFP120のCPU211が制御プログラムを実行することにより実現される。以下では、上記第1の実施形態における図12のフローチャートと同様の処理については同一のステップ番号を付し、説明を省略する。
S1207で同期が完了した時点で、ディスプレイ219に同期された設定情報に関する画面の表示がされていると判定すると、S1401に処理を進める。S1401で、CPU211は、表示操作制御部401により、ディスプレイ219に通知画面1300を表示する。具体的には、表示操作制御部401は、同期された設定情報がコピーのデフォルト設定であり、同期された設定情報に関する画面としてコピー画面1100がディスプレイ219に表示されていれば、コピー画面1100の上に、通知画面1300を表示する。通知画面1300には、不図示の閉じるボタンが存在し、閉じるボタンを選択することで通知画面1300を閉じるように制御してもよい。或いは、通知画面1300を一定時間表示させた後に自動で通知画面1300を閉じるように制御してもよい。
以上説明したように、本実施形態に係るMFP120は、上記第1の実施形態の構成に加えて、さらに、ユーザに対して設定情報の同期が完了したことを通知する通知画面1300を同期完了の時点で表示する。これにより、よりユーザの意図に従って制御を行うことができる。なお、本実施形態では一例として、コピーの設定情報に関してのシステムについて説明を行ったが、別の設定情報の同期処理も同様であってよい。
<第3の実施形態>
以下では、本発明の第3の実施形態について説明する。上記実施形態では、設定情報の同期完了時にユーザの操作中である場合には設定情報の即時反映を行わず、ユーザの操作がリセットされた時点で同期された設定情報の反映を行う処理について説明した。具体例として、コピーのデフォルト設定をMFP120へ同期した場合に、ディスプレイ219にコピー画面1100を表示し、コピーに関する操作を行っている間は、同期されたコピーのデフォルト設定の反映を行わず、ユーザのリセット操作により反映を行う。これにより、ユーザの操作を阻害することなく、速やかに設定情報の反映を行うことができる。
一方で、設定情報の中には、ユーザが操作中であっても即時に反映すべき場合がある。例えば、表示言語に関する設定情報が、同期完了時に速やかに反映されない場合、ユーザは慣れない言語で操作を継続しなければならず、不便である。そのため、表示言語などの設定情報に関しては、同期完了時に即時に操作部への反映を行うことが望まれる。そこで、本実施形態では、同期された設定情報の種類が即時反映の対象であるかを判断し、即時反映すべき場合は同期完了時に操作部へ即時反映を行い、即時反映すべきでない場合は上記実施形態と同様に、例えば操作がリセットされた時点で反映を行う。
<即時反映の選択画面>
まず、図15を参照して、本実施形態に係る、設定情報を即時に反映するか否かをユーザ操作に従って選択するための選択画面の一例について説明する。選択画面1500は、同期された設定情報をディスプレイ219に即時反映させるか又はユーザによる所定操作時に反映させるかの同期タイミングを項目ごとにユーザに有効/無効を選択させる画面である。項目1501、1502は、即時反映の対象となる設定情報である。図15の例では、項目1501に表示言語、項目1502にアクセシビリティを一例として挙げているが、他の項目があってもよい。また、ここにない項目は、即時反映がOFFであるものとする。
項目1501、1502はそれぞれで即時反映のON(有効)又はOFF(無効)を選択可能である。また、項目を一括してON又はOFFを選択させるモードがあってもよい。図15の例では、項目1501は、即時反映ONが選択されている状態を表している。また、項目1502は即時反映OFFが選択されている状態を表している。ONが選択されると、同期タイミングとして、同期が完了したタイミングで即時反映する制御が選択される。一方、OFFが選択されると、同期タイミングとして、同期が完了した後にユーザからの所定の操作、ここではリセットキーの押下を受け付けると同期を行う制御が選択される。ここでは、即時反映の設定可否をユーザに選択させる方法を説明したが、同期対象の設定情報テーブル等で予め定義してもよい。
<同期制御>
次に、図16を参照して、本実施形態に係る同期完了時に設定情報が即時反映の対象であるか否かを判断し、判断結果に応じて、即時反映又はリセット時に反映を行う処理手順について説明する。図16のフローチャートに示す各動作は、MFP120のCPU211が制御プログラムを実行することにより実現される。以下では、上記第1の実施形態における図12のフローチャートと同様の処理については同一のステップ番号を付し、説明を省略する。
S1205で同期完了と判断されるとS1601に進み、CPU211は、設定情報制御部403により、同期された設定情報がディスプレイ219への即時反映の対象であるか否かを判断する。具体的には、設定情報制御部403は、上記選択画面1500で選択された項目ごとの同期タイミングを参照し、対象項目が即時反映の対象であるか否かを判断する。同期された設定情報が即時反映の対象でない場合、CPU211は、S1206へ処理を進める。一方で、同期された設定情報が即時反映の対象である場合、CPU211は、S1602へ処理を進める。例えば、選択画面1500の項目1501がONに設定されており、同期された設定情報が表示言語の場合は、即時反映の対象であると判断される。一方で、同期された設定情報がコピーの場合は、選択画面1500に定義されていないため、即時反映の対象ではないと判断される。
S1602で、CPU211は、同期された設定情報が即時反映の対象である場合に、設定情報制御部403により設定情報DB420から設定情報を取得する。そして、CPU211は、S1211に処理を進め、同期された設定情報をディスプレイ219の表示画面(ここでは、コピー画面)に反映し、処理を終了する。
以上説明したように、本実施形態に係るMFP120は、同期が完了した際に、同期対象の設定項目が即時対象の項目であるか、又は、ユーザから所定の操作を受け付けたタイミングで同期を行うかを判断して、同期制御を行う。これにより、設定項目に応じたより細かい同期制御を行うことができる。なお、本実施形態では、即時反映すべき設定情報として「表示言語」を例に説明をしてきたが、別の設定情報であってもよい。例えば、アクセシビリティに関する設定情報などは設定情報が反映されない状態での操作の継続が難しいため、同期完了時に設定情報の即時反映を行ってもよい。
<その他の実施形態>
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。