JP2017097797A - 通信装置、情報処理方法及びプログラム - Google Patents
通信装置、情報処理方法及びプログラム Download PDFInfo
- Publication number
- JP2017097797A JP2017097797A JP2015232332A JP2015232332A JP2017097797A JP 2017097797 A JP2017097797 A JP 2017097797A JP 2015232332 A JP2015232332 A JP 2015232332A JP 2015232332 A JP2015232332 A JP 2015232332A JP 2017097797 A JP2017097797 A JP 2017097797A
- Authority
- JP
- Japan
- Prior art keywords
- synchronization
- synchronization request
- unit
- job
- setting value
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Accessory Devices And Overall Control Thereof (AREA)
- Facsimiles In General (AREA)
Abstract
【課題】同期要求に問題が生じた場合であっても、同期を継続する技術を提供することを目的とする。
【解決手段】設定値の同期要求をサーバ装置に送信する送信手段と、サーバ装置より同期要求の同期処理結果を受信する受信手段と、同期処理結果に基づき同期要求の処理を省略する対象のエラーであると判定された場合、同期要求の処理を省略し、同期要求の後に続く同期要求の処理を行う制御手段と、を有することによって課題を解決する。
【選択図】図7
【解決手段】設定値の同期要求をサーバ装置に送信する送信手段と、サーバ装置より同期要求の同期処理結果を受信する受信手段と、同期処理結果に基づき同期要求の処理を省略する対象のエラーであると判定された場合、同期要求の処理を省略し、同期要求の後に続く同期要求の処理を行う制御手段と、を有することによって課題を解決する。
【選択図】図7
Description
本発明は、通信装置、情報処理方法及びプログラムに関する。
複数の画像形成装置とネットワーク接続されたサーバとが連携して、設定データを含む様々な種別のデータを装置間で同期する技術が存在する。この技術では、特定の画像形成装置で変更した設定内容をサーバ側で閲覧することや、サーバ側で設定を変更することで特定の画像形成装置の設定に同期させることができる。これにより複数の画像形成装置を一元管理することができ、管理コストを低減できる。また、1つの画像形成装置にユーザーがログインして設定した内容を、サーバに通知し、その他の画像形成装置はその設定を取得することでどの装置でも同じユーザー専用の設定で使用できることを実現している。
特許文献1には、設定値変更の依頼を受け付けた場合に、変更された設定値内容をジョブとして保存して、管理サーバとの通信状態に関わらずジョブを読み出し設定値の同期を行う装置が開示されている。
特許文献1には、設定値変更の依頼を受け付けた場合に、変更された設定値内容をジョブとして保存して、管理サーバとの通信状態に関わらずジョブを読み出し設定値の同期を行う装置が開示されている。
上記の背景技術では、管理サーバとの通信が不可能な状態で複数回設定値変更の依頼を受けた場合の動作が想定されておらず、ジョブが複数ある場合の動作については記載されていない。また、上記の背景技術では、保存したジョブの同期要求に問題が発生した場合の制御についても再度実行することしか想定されていない。したがって、複数あるジョブのうち、特定のジョブの同期処理で問題が発生した場合に、問題が発生したジョブの実行と失敗とを繰り返し、その他のジョブの同期要求を実行できなくなってしまう課題がある。
そこで、本発明は通信装置であって、設定値の同期要求をサーバ装置に送信する送信手段と、前記サーバ装置より前記同期要求の同期処理結果を受信する受信手段と、前記同期処理結果に基づき同期要求の処理を省略する対象のエラーであると判定された場合、前記同期要求の処理を省略し、前記同期要求の後に続く同期要求の処理を行う制御手段と、を有する。
本発明によれば、同期要求に問題が生じた場合であっても、同期を継続する技術を提供することができる。
以下、本発明の実施形態について図面に基づいて説明する。
<実施形態1>
図1は、設定値同期システムのシステム構成の一例を示す図である。ネットワーク100には、複合機110、複合機111、サーバ120が接続されている。複合機は、画像形成装置の一例である。
複合機110、複合機111は、複数種類の機能、例えばコピーやFAX等を実現する装置で有り、内部にはそれら機能を実行するときに利用する設定値を記憶している。複合機110、複合機111は、ユーザーのログインを受けつけたとき、そのユーザー用の設定を使用することができる。
サーバ120は、複合機110や複合機111のユーザー用の設定値を一元管理する。これによりユーザーはどの複合機にログインしても同じユーザー用の設定値を使用できる。
図1は、設定値同期システムのシステム構成の一例を示す図である。ネットワーク100には、複合機110、複合機111、サーバ120が接続されている。複合機は、画像形成装置の一例である。
複合機110、複合機111は、複数種類の機能、例えばコピーやFAX等を実現する装置で有り、内部にはそれら機能を実行するときに利用する設定値を記憶している。複合機110、複合機111は、ユーザーのログインを受けつけたとき、そのユーザー用の設定を使用することができる。
サーバ120は、複合機110や複合機111のユーザー用の設定値を一元管理する。これによりユーザーはどの複合機にログインしても同じユーザー用の設定値を使用できる。
図2は、複合機110とサーバ120とのハードウェア構成の一例を示す図である。
コントローラユニット200は、CPU(Central Processing Unit)201を有している。CPU201は、ROM(Read Only Memory)202に格納されているブートプログラムによりOS(Operating System)のプログラムを起動する。CPU201は、このOS上で、HDD(Hard Disk Drive)204に格納されているアプリケーションプログラムを実行し、これによって各種処理を実行する。このCPU201の作業領域としてはRAM(Random Access Memory)204が用いられる。また、RAM203は、作業領域を提供すると共に、画像データを一時記憶するための画像メモリ領域を提供する。HDD204は、上記アプリケーションプログラムや画像データ、各種設定値を格納する。複合機110における設定値の管理方法については後述する。
CPU201には、システムバス209を介して、ROM202及びRAM203と共に、操作部I/F206、デバイスI/F208、Network205、画像処理部207が接続される。操作部I/F206は、タッチパネルを有する操作部210とのインタフェースであり、操作部210に表示すべき画像データを操作部210に対して出力する。また、操作部I/F206は、操作部210によってユーザーにより入力された情報をCPU201に送出する。デバイスI/F208には、スキャナ211及びプリンタ212が接続され、デバイスI/F208は、画像データの同期系/非同期系の変換を行う。Network205は、ネットワーク100に接続され、ネットワーク100を介してネットワーク100上の各装置との間で情報の入出力を行う。画像処理部207では、スキャナからの入力画像処理やプリンタへの出力画像処理、画像回転、画像圧縮、解像度変換、色空間変換、階調変換等の処理を行う。CPU201がROM202又はHDD204に記憶されているプログラムに基づき処理を実行することにより、後述する図3の複合機110のソフトウェア構成及び後述する複合機110のフローチャートの処理が実現される。
複合機110は、コントローラユニット200、操作部210、スキャナ211、プリンタ212を含んでいる。コントローラユニット200には、操作部210が接続されると共に、画像入力デバイスであるスキャナ211や画像出力デバイスであるプリンタ212が接続される。
コントローラユニット200は、CPU(Central Processing Unit)201を有している。CPU201は、ROM(Read Only Memory)202に格納されているブートプログラムによりOS(Operating System)のプログラムを起動する。CPU201は、このOS上で、HDD(Hard Disk Drive)204に格納されているアプリケーションプログラムを実行し、これによって各種処理を実行する。このCPU201の作業領域としてはRAM(Random Access Memory)204が用いられる。また、RAM203は、作業領域を提供すると共に、画像データを一時記憶するための画像メモリ領域を提供する。HDD204は、上記アプリケーションプログラムや画像データ、各種設定値を格納する。複合機110における設定値の管理方法については後述する。
CPU201には、システムバス209を介して、ROM202及びRAM203と共に、操作部I/F206、デバイスI/F208、Network205、画像処理部207が接続される。操作部I/F206は、タッチパネルを有する操作部210とのインタフェースであり、操作部210に表示すべき画像データを操作部210に対して出力する。また、操作部I/F206は、操作部210によってユーザーにより入力された情報をCPU201に送出する。デバイスI/F208には、スキャナ211及びプリンタ212が接続され、デバイスI/F208は、画像データの同期系/非同期系の変換を行う。Network205は、ネットワーク100に接続され、ネットワーク100を介してネットワーク100上の各装置との間で情報の入出力を行う。画像処理部207では、スキャナからの入力画像処理やプリンタへの出力画像処理、画像回転、画像圧縮、解像度変換、色空間変換、階調変換等の処理を行う。CPU201がROM202又はHDD204に記憶されているプログラムに基づき処理を実行することにより、後述する図3の複合機110のソフトウェア構成及び後述する複合機110のフローチャートの処理が実現される。
複合機110は、コントローラユニット200、操作部210、スキャナ211、プリンタ212を含んでいる。コントローラユニット200には、操作部210が接続されると共に、画像入力デバイスであるスキャナ211や画像出力デバイスであるプリンタ212が接続される。
サーバ120は、コントローラユニット220、操作部229、表示部230を含んでいる。コントローラユニット220は、CPU(Central Processing Unit)221を有している。CPU221は、ROM(Read Only Memory)222に格納されているブートプログラムによりOS(Operating System)のプログラムを起動する。
CPU221は、このOS上で、HDD(Hard Disk Drive)224に格納されているアプリケーションプログラムを実行し、これによって各種処理を実行する。このCPU221の作業領域としてはRAM(Random Access Memory)223が用いられる。
HDD224は、上記アプリケーションプログラムと複合機110の設定値の仮想デバイス設定値等とを格納する。仮想デバイス設定の管理方法に関する詳細については後述する。
CPU221には、システムバス228を介して、ROM222及びRAM223と共に、操作部I/F225、表示部I/F226、Network227が接続される。操作部I/F225は、マウス、キーボード等から成る操作部229とのインタフェースであり、操作部229によってユーザーにより入力された情報をCPU221に送出する。表示部I/F226は、ディスプレイ等から成る表示部230に表示すべき画像データを表示部230に対して出力する。また、Network227は、ネットワーク100に接続され、ネットワーク100を介してネットワーク100上の各装置との間で情報の入出力を行う。CPU221がROM222又はHDD224に記憶されているプログラムに基づき処理を実行することにより、後述する図3のサーバ120のソフトウェア構成及び後述するサーバ120のフローチャートの処理が実現される。
CPU221は、このOS上で、HDD(Hard Disk Drive)224に格納されているアプリケーションプログラムを実行し、これによって各種処理を実行する。このCPU221の作業領域としてはRAM(Random Access Memory)223が用いられる。
HDD224は、上記アプリケーションプログラムと複合機110の設定値の仮想デバイス設定値等とを格納する。仮想デバイス設定の管理方法に関する詳細については後述する。
CPU221には、システムバス228を介して、ROM222及びRAM223と共に、操作部I/F225、表示部I/F226、Network227が接続される。操作部I/F225は、マウス、キーボード等から成る操作部229とのインタフェースであり、操作部229によってユーザーにより入力された情報をCPU221に送出する。表示部I/F226は、ディスプレイ等から成る表示部230に表示すべき画像データを表示部230に対して出力する。また、Network227は、ネットワーク100に接続され、ネットワーク100を介してネットワーク100上の各装置との間で情報の入出力を行う。CPU221がROM222又はHDD224に記憶されているプログラムに基づき処理を実行することにより、後述する図3のサーバ120のソフトウェア構成及び後述するサーバ120のフローチャートの処理が実現される。
図3は、複合機110とサーバ120とのソフトウェア構成の一例を示す図である。まず、複合機110が備える複合機ファームウェア300の各部について説明する。
同期制御部301は、サーバ120との間でのデータ同期するタイミングと同期内容とを制御する。同期には、複合機110で変更された内容をサーバに伝え同期をする更新同期と、サーバ120で変更された内容を取得し複合機110に反映する取得同期とがある。同期制御部301は、サーバ120と複合機110との間でデータを同期すべきタイミングと同期内容とから取得同期と更新同期との何れかの同期を行うかを判断する。同期制御部301が、データ同期部308を呼び出すタイミングは、一定時間毎、同期要求受け付け時、デバイス動作発生時(ユーザーログイン/ログアウト時、複合機110起動時や、スリープ移行、スリープ復帰時等)である。例えば、同期制御部301は、複合機が起動したとき、デバイス構成情報管理部302にデバイス構成情報の更新を依頼し、その後にデバイス構成情報の同期をデータ同期部308に依頼する。そして、同期制御部301は、複合機起動後は定期的にデータ同期部308にデータの更新差分を同期する依頼をする等の制御を行う。また、同期制御部301は、複合機110の同期開始と同期終了とを制御する。同期開始と、同期終了とは例えば操作部210等から同期制御部301が指示を受け付けることで実行する。複合機110が、データ同期サービス320と同期をしていない状態で同期開始の指示を受け付けた場合、同期制御部301は、同期開始処理を実行する。複合機110が、データ同期サービス320と同期をしている状態で同期終了の指示を受け付けた場合、同期制御部301は、同期終了処理を実行する。
同期制御部301は、サーバ120との間でのデータ同期するタイミングと同期内容とを制御する。同期には、複合機110で変更された内容をサーバに伝え同期をする更新同期と、サーバ120で変更された内容を取得し複合機110に反映する取得同期とがある。同期制御部301は、サーバ120と複合機110との間でデータを同期すべきタイミングと同期内容とから取得同期と更新同期との何れかの同期を行うかを判断する。同期制御部301が、データ同期部308を呼び出すタイミングは、一定時間毎、同期要求受け付け時、デバイス動作発生時(ユーザーログイン/ログアウト時、複合機110起動時や、スリープ移行、スリープ復帰時等)である。例えば、同期制御部301は、複合機が起動したとき、デバイス構成情報管理部302にデバイス構成情報の更新を依頼し、その後にデバイス構成情報の同期をデータ同期部308に依頼する。そして、同期制御部301は、複合機起動後は定期的にデータ同期部308にデータの更新差分を同期する依頼をする等の制御を行う。また、同期制御部301は、複合機110の同期開始と同期終了とを制御する。同期開始と、同期終了とは例えば操作部210等から同期制御部301が指示を受け付けることで実行する。複合機110が、データ同期サービス320と同期をしていない状態で同期開始の指示を受け付けた場合、同期制御部301は、同期開始処理を実行する。複合機110が、データ同期サービス320と同期をしている状態で同期終了の指示を受け付けた場合、同期制御部301は、同期終了処理を実行する。
デバイス構成情報管理部302は、複合機110のデバイス構成情報を収集し、デバイス構成情報保持部303に格納を指示する。収集するデバイス構成情報は、機種を識別するための機種コードや、ファームウェアバージョン、アクセサリ構成、ソフトウェアライセンス等を含んでいる。デバイス構成情報管理部302は、デバイス構成情報に含まれる情報が更新された際には、新たな情報を収集する。そして、デバイス構成情報管理部302は、デバイス構成情報保持部303に格納を指示する。このデバイス構成情報は、後述するデバイス構成情報DB412に格納されるデバイス構成情報と同一の体系で構成される情報である。
デバイス構成情報保持部303は、デバイス構成情報管理部302から指示を受けデバイス構成情報をRAM203、又はHDD204に格納することで保持する。デバイス構成情報保持部303は、デバイス構成情報管理部302から指示を受けデバイス構成情報の更新と、デバイス構成情報の読出しを行う。
デバイス構成情報保持部303は、デバイス構成情報管理部302から指示を受けデバイス構成情報をRAM203、又はHDD204に格納することで保持する。デバイス構成情報保持部303は、デバイス構成情報管理部302から指示を受けデバイス構成情報の更新と、デバイス構成情報の読出しを行う。
データ管理部304は、複合機110内で使用するデバイス設定データや、ユーザーデータ等様々な種別の設定データの取得、更新を管理する。データ管理部304は、複合機110内から設定データの取得要求を受け付けた場合、データ保持部305より該当の設定データを取得し、返却する。データ管理部304は、設定データの変更要求を受け付けた場合、データ保持部305の該当設定データの更新をすると共に、同期制御部301に設定データの更新が発生したことと更新されるデータ種別と更新される設定データの内容とを同期要求として通知する。同期要求はデータ管理部304が設定データの変更要求を受け付けたデータの種別毎に同期要求を通知する。例えば複合機を使用するあるユーザーが後述する表5に記載のユーザー機器設定の内表示言語を切り替え、そして後述する表3に含まれる複合機のスリープまでの時間を設定するsettings.common.sleep_timeを変更したとする。このときデータ管理部304は、データ種別がユーザー機器設定の変更を一つの同期要求として通知し、そしてデータ種別がデバイス設定値であるスリープまでの時間の変更を別の同期要求として通知する。また、同じデータ種別の設定データが連動して複数個変更される場合等には、データ管理部304は、それら複数個の変更を1つの同期要求として通知する。連動する設定の例を後述する表3に含まれる設定から示す。ユーザー個別使用を可能にする設定であるsettings.auth.personalizeがONに変更された場合はユーザーを特定する認証機能が必要となる。そのため連動してsettings.auth.auth_modeもONに変更される。このときデータ管理部304は、ユーザー個別使用設定と、認証機能設定と、の変更は1つの同期要求として通知する。
データ保持部305は、複合機110内で使用する設定データを、記憶部であるHDD204に保持する。複合機110は、データ保持部305によって保持された設定データをデータ管理部304から読出して、その読み出した設定データに基づいて動作の振る舞いを切り替える。設定データに含まれる様々な種別のデータの例は表を用いて後述する。
データ保持部305は、複合機110内で使用する設定データを、記憶部であるHDD204に保持する。複合機110は、データ保持部305によって保持された設定データをデータ管理部304から読出して、その読み出した設定データに基づいて動作の振る舞いを切り替える。設定データに含まれる様々な種別のデータの例は表を用いて後述する。
同期要求ジョブ管理部306は、同期制御部301から受け付けた同期要求を同期要求ジョブとして管理する。同期要求ジョブ管理部306では、受け付けた同期要求を同期要求ジョブとして生成し、同期要求ジョブ保持部307に記録するように依頼する。それと共に、同期要求ジョブ管理部306は、受け付けた同期要求ジョブの順番を制御するため、受け付けた順番に同期要求ジョブリストに登録する。同期要求ジョブ管理部306は、同期要求ジョブの取得を要求された場合、管理する同期要求ジョブリストより要求された同期要求ジョブを取得し、要求元に受け渡す。また、同期要求ジョブ管理部306は、同期要求ジョブの削除要求を受け付けた場合には、該当の同期要求ジョブを同期要求ジョブリストから削除し、同期要求ジョブ保持部307に記録した同期要求ジョブの削除を依頼する。
同期要求ジョブ保持部307は、同期要求ジョブ管理部306から受け付けた同期要求ジョブを記録する。同期要求ジョブ保持部307は、同期要求ジョブをファイルとして生成し、HDD204に保存する。また、同期要求ジョブ保持部307は、同期要求ジョブの削除要求を受け付けた場合、該当の同期要求ジョブのファイルをHDD204から削除する。
同期要求ジョブ保持部307は、同期要求ジョブ管理部306から受け付けた同期要求ジョブを記録する。同期要求ジョブ保持部307は、同期要求ジョブをファイルとして生成し、HDD204に保存する。また、同期要求ジョブ保持部307は、同期要求ジョブの削除要求を受け付けた場合、該当の同期要求ジョブのファイルをHDD204から削除する。
データ同期部308は、同期制御部301から受け付けた同期要求を処理する。データ同期部308は、データ種別毎に受け付けた同期要求の処理を実行する。データ同期部308は、更新同期を受け付けた場合には、同期するデータ種別と、データを確定させ、同期通信部309に更新同期通信を要求する。そして、データ同期部308は、同期通信部309から通信結果を受け付けたら、同期結果として同期制御部301に通知する。データ同期部308は、取得同期を受け付けた場合には、同期するデータ種別の最終更新時刻を取得し、同期通信部309に更新同期通信を要求する。そしてデータ同期部308は、同期通信部309から通信結果を受け付けたら、取得した内容を反映するため、データ管理部304に更新内容を通知する。そしてデータ同期部308は、データ管理部304でデータの更新結果を受けて、同期結果として同期制御部301に通知する。
同期通信部309は、複合機110とサーバ120のデータ同期のための情報を通信する。同期通信部309は、データ同期部308から同期通信の要求を受け付ける。同期通信部309は、取得同期を受け付けた場合には、同期するデータ種別のデータの最終更新時刻を通知し、その最終更新時刻以降に変更された差分データをサーバ120に要求するリクエストを送信する。そして、同期通信部309は、サーバ120からレスポンスを受信し、レスポンスに含まれる応答内容を同期結果通知としてデータ同期部308に通知する。
同期通信部309は、更新同期を受け付けた場合には、更新したいデータ種別のデータを取得し、そのデータが更新された時刻を付与しサーバ120にリクエストを送信する。そして、同期通信部309は、サーバ120からレスポンスを受信しレスポンスに含まれる応答内容を同期結果通知としてデータ同期部308に通知する。
操作部制御部310は、同期制御部301からの要求に応じて操作部210を制御し、操作部210に画面を表示したり、表示した画面を介して入力された情報を同期制御部301に通知したりする。
同期通信部309は、複合機110とサーバ120のデータ同期のための情報を通信する。同期通信部309は、データ同期部308から同期通信の要求を受け付ける。同期通信部309は、取得同期を受け付けた場合には、同期するデータ種別のデータの最終更新時刻を通知し、その最終更新時刻以降に変更された差分データをサーバ120に要求するリクエストを送信する。そして、同期通信部309は、サーバ120からレスポンスを受信し、レスポンスに含まれる応答内容を同期結果通知としてデータ同期部308に通知する。
同期通信部309は、更新同期を受け付けた場合には、更新したいデータ種別のデータを取得し、そのデータが更新された時刻を付与しサーバ120にリクエストを送信する。そして、同期通信部309は、サーバ120からレスポンスを受信しレスポンスに含まれる応答内容を同期結果通知としてデータ同期部308に通知する。
操作部制御部310は、同期制御部301からの要求に応じて操作部210を制御し、操作部210に画面を表示したり、表示した画面を介して入力された情報を同期制御部301に通知したりする。
次にサーバ120が備えるデータ同期サービス320の各部について説明する。各部で保持するデータベースの詳細については、表を用いて詳細に後述する。
データ同期サービス320は、複合機110の設定データを管理する機能を提供するサービスで、本実施形態では、サーバ120で提供される例を示す。なお、図3等ではサーバ120と複合機110とが接続される構成を示しているが、構成はこれに限定するものでは無い。例えば、複合機110にてデータ同期サービス320を提供し、その複合機110に別の複合機111を接続してもよい。この場合、複合機111は、画像形成装置の一例となり、複合機110は、サーバ装置、又は他の画像形成装置の一例となる。
同期通信部321は、複合機110からの同期通信リクエストを受け付け、同期処理をし、複合機110に同期通信レスポンスを送信する。同期通信部321は、同期通信リクエストがデバイス構成情報に関するリクエストだった場合には、受け付けたリクエスト内容をデバイス管理部322に通知する。同期通信部321は、同期通信リクエストがデータ同期要求だった場合には、データ管理部324に同期要求を伝え、同期処理を依頼する。そして同期通信部321は、データ管理部324から同期処理結果を受け付け、複合機110にレスポンスを送信する。また同期通信部321は、データ管理部324から通信の要求内容の応答情報を受け付け、要求元の複合機110に応答通信を実行する。
データ同期サービス320は、複合機110の設定データを管理する機能を提供するサービスで、本実施形態では、サーバ120で提供される例を示す。なお、図3等ではサーバ120と複合機110とが接続される構成を示しているが、構成はこれに限定するものでは無い。例えば、複合機110にてデータ同期サービス320を提供し、その複合機110に別の複合機111を接続してもよい。この場合、複合機111は、画像形成装置の一例となり、複合機110は、サーバ装置、又は他の画像形成装置の一例となる。
同期通信部321は、複合機110からの同期通信リクエストを受け付け、同期処理をし、複合機110に同期通信レスポンスを送信する。同期通信部321は、同期通信リクエストがデバイス構成情報に関するリクエストだった場合には、受け付けたリクエスト内容をデバイス管理部322に通知する。同期通信部321は、同期通信リクエストがデータ同期要求だった場合には、データ管理部324に同期要求を伝え、同期処理を依頼する。そして同期通信部321は、データ管理部324から同期処理結果を受け付け、複合機110にレスポンスを送信する。また同期通信部321は、データ管理部324から通信の要求内容の応答情報を受け付け、要求元の複合機110に応答通信を実行する。
デバイス管理部322は、データ同期サービス320に接続している複合機110のデバイス構成情報を管理する。デバイス管理部322は、データ同期を要求してくる複合機110のデバイス構成情報を受け付け、デバイス情報保持部323を更新する。また、デバイス管理部322は、同期通信部321から同期要求リクエストを受け付けた複合機110が既に同期を開始しているか否かの確認を受け付け、デバイス情報保持部323に該当の複合機110のデバイス構成情報が含まれているかを判断する。受け付けたリクエストが、新規にデータ同期サービス320に接続してきた複合機110からのリクエストだった場合には、デバイス管理部322は、デバイス情報保持部323に新規にデバイス構成情報を記録する。既に同期実行しており、デバイス情報保持部323にデバイス構成情報が記録されている複合機110からの要求だった場合は、デバイス管理部322は、受け付けたデータでデバイス構成情報を更新するようデバイス情報保持部323に依頼する。デバイス管理部322は、データ同期サービス320の使用を終了する要求を受け付けた場合には、要求してきた複合機110のデバイス構成情報を削除するようにデバイス情報保持部323に依頼する。
デバイス情報保持部323は、データ同期サービス320に接続している複合機110のデバイス構成情報を管理するデバイス構成情報管理DBを保持する。デバイス情報保持部323は、デバイス構成情報の取得・更新要求を受け付け、デバイス構成情報管理DBを更新する。デバイス情報保持部323は、デバイス構成情報管理DBを更新する際には、更新内容と合わせて最終更新時刻を記録する。
デバイス情報保持部323は、データ同期サービス320に接続している複合機110のデバイス構成情報を管理するデバイス構成情報管理DBを保持する。デバイス情報保持部323は、デバイス構成情報の取得・更新要求を受け付け、デバイス構成情報管理DBを更新する。デバイス情報保持部323は、デバイス構成情報管理DBを更新する際には、更新内容と合わせて最終更新時刻を記録する。
データ管理部324は、データ保持部325が保持している設定データ管理DBを管理する。データ管理部324は、同期通信部321から取得同期の要求を受け付けた場合、要求に含まれているデータ種別と最終更新時刻以降とを指定してデータ保持部325から更新データを取得し、同期通信部321に返却する。データ管理部324は、更新要求を受け付けた場合には、データ保持部325に要求に含まれているデータ種別と更新時刻とを指定して、要求に含まれている全ての更新データでデータ更新を要求し、結果を同期通信部321に返却する。
データ保持部325は、設定データ管理DBを保持する。設定データ管理DBはデータ種別毎の設定データから構成されている。データ保持部325は、データ種別毎に設定データの取得・更新要求を受け付け、設定データ管理DBを更新する。データ保持部325は、データ種別、更新データ内容と合わせて更新時刻を指定したデータを受け付けることで設定データ管理DBを更新する。また、データ保持部325は、データ種別と時刻を指定したデータを受け付けることで、指定されたデータ種別のデータの内指定時刻以降に更新されたデータを取得し返却することができる。データ管理DBの中身は後述する。
以上説明したファームウェアの各部で実施している通信は、複合機110のNetwork205と、サーバ120のNetwork227とがネットワーク100を介して行う。
データ保持部325は、設定データ管理DBを保持する。設定データ管理DBはデータ種別毎の設定データから構成されている。データ保持部325は、データ種別毎に設定データの取得・更新要求を受け付け、設定データ管理DBを更新する。データ保持部325は、データ種別、更新データ内容と合わせて更新時刻を指定したデータを受け付けることで設定データ管理DBを更新する。また、データ保持部325は、データ種別と時刻を指定したデータを受け付けることで、指定されたデータ種別のデータの内指定時刻以降に更新されたデータを取得し返却することができる。データ管理DBの中身は後述する。
以上説明したファームウェアの各部で実施している通信は、複合機110のNetwork205と、サーバ120のNetwork227とがネットワーク100を介して行う。
図4は、データ同期サービス320が管理するデータの構成の一例を示す図である。
サーバ管理データ400は、デバイス管理DB410と、設定データDB420と、設定値情報DB450とから構成される。デバイス管理DB410は、登録デバイス管理DB411と、デバイス構成情報DB412と、から構成される。デバイス構成情報DB412は、データ同期サービス320に接続している複合機110に対応付いており、1台につき1つのデータが記録されている。設定データDB420は、データ同期サービス320が管理する各データ種別の設定データにより構成される。本実施形態では、設定データDB420が、デバイス設定管理DB430、ユーザーデータ管理DB440から構成される例を示す。
デバイス設定管理DB430は、データ同期サービス320に接続している複合機110に対応するデバイス設定DB431から構成される。デバイス設定DB431は、複合機110内に記録されているデバイス設定と同期するため、複合機110内と同じ構成のデバイス設定が記録されているDBである。
ユーザーデータ管理DB440は、データ同期サービス320に接続している複合機110を使用しているユーザーの設定であるユーザーデータDB441で構成される。ユーザーデータDB441は、ユーザー毎のそのユーザー専用の設定であるユーザーデータから構成されている。ユーザーデータは、表示や環境を設定する機器の設定値、コピーやFAX機能の動作の設定を読み出す簡易設定、FAX等の送付先を登録するアドレス帳から構成される。
設定値情報DB450は、データ同期サービス320で管理する各設定に関するメタデータを格納するデータベースである。
サーバ管理データ400は、デバイス管理DB410と、設定データDB420と、設定値情報DB450とから構成される。デバイス管理DB410は、登録デバイス管理DB411と、デバイス構成情報DB412と、から構成される。デバイス構成情報DB412は、データ同期サービス320に接続している複合機110に対応付いており、1台につき1つのデータが記録されている。設定データDB420は、データ同期サービス320が管理する各データ種別の設定データにより構成される。本実施形態では、設定データDB420が、デバイス設定管理DB430、ユーザーデータ管理DB440から構成される例を示す。
デバイス設定管理DB430は、データ同期サービス320に接続している複合機110に対応するデバイス設定DB431から構成される。デバイス設定DB431は、複合機110内に記録されているデバイス設定と同期するため、複合機110内と同じ構成のデバイス設定が記録されているDBである。
ユーザーデータ管理DB440は、データ同期サービス320に接続している複合機110を使用しているユーザーの設定であるユーザーデータDB441で構成される。ユーザーデータDB441は、ユーザー毎のそのユーザー専用の設定であるユーザーデータから構成されている。ユーザーデータは、表示や環境を設定する機器の設定値、コピーやFAX機能の動作の設定を読み出す簡易設定、FAX等の送付先を登録するアドレス帳から構成される。
設定値情報DB450は、データ同期サービス320で管理する各設定に関するメタデータを格納するデータベースである。
各DBの格納されるデータの例を以下に示す。
表1は登録デバイス管理DB411に格納されるデータを表している。登録デバイス管理DB411は、サーバ120によってデータを同期する複合機110の個体を管理するデータベースである。登録デバイス管理DB411には、同期する複合機110を一意に識別するためのデバイスIDや、複合機110の個体を識別する個体識別子等が格納される。
表1は登録デバイス管理DB411に格納されるデータを表している。登録デバイス管理DB411は、サーバ120によってデータを同期する複合機110の個体を管理するデータベースである。登録デバイス管理DB411には、同期する複合機110を一意に識別するためのデバイスIDや、複合機110の個体を識別する個体識別子等が格納される。
表2はデバイス構成情報DB412で管理される複合機の個体毎のデバイス構成情報の内容を表している。デバイス構成情報DB412は、デバイス構成情報を格納・管理するデータベースである。デバイス構成情報は、複合機110の個体を識別する個体識別子、機種名、ファームウェアのバージョン、利用可能な機能を表すライセンス情報、個体が同期しているか一時停止中かを表す同期稼働状態等を含んでいる。なお、機種名、ファームウェアのバージョン、ライセンス等は、後述する設定値情報DB450に格納されているものと同一の体系をもつ。
表3は、複合機110と対応付いているデバイス設定DB431の構成の一例を表している。デバイス設定DB431は複合機110で使用する設定値を格納するデータベースである。デバイス設定DB431に格納される設定値は、設定値を識別するための設定値識別子、設定値の値、初期値、値域、表示条件等の要素から構成される。これらの要素は複合機110内のHDD内で管理されているデバイス設定と同一の体系で構成する。サーバ120又は複合機110において設定値が変更された場合、サーバ120及び複合機110は、後述する表7に示されるデータのうち少なくとも設定値識別子及び値を通信することにより設定値を同期する。
次にユーザーデータ管理DB440に格納されるデータについて表4〜8を用いて説明する。本実施形態では、ユーザー情報としてユーザー名称で特定する例を示しているが、名称では無く、ID等を使用してもよい。
表4は、ユーザーデータDB441に含まれるユーザーデータ項目について記載している。ユーザーデータDB441は、ユーザー名称で特定される機器設定、簡易設定、アドレス帳から構成される。機器設定、簡易設定、アドレス帳はそれぞれ表5〜7で説明する。
表4は、ユーザーデータDB441に含まれるユーザーデータ項目について記載している。ユーザーデータDB441は、ユーザー名称で特定される機器設定、簡易設定、アドレス帳から構成される。機器設定、簡易設定、アドレス帳はそれぞれ表5〜7で説明する。
表5は、ユーザーデータDB441に含まれるユーザー機器設定項目について記載した表である。ユーザー毎に設定できる項目は、表示言語、復帰後の画面、画面色、音量、音声速度から構成される。各項目は、ユーザーがログインしていない場合に使用される機器内の設定項目と同等であり、ユーザーログイン時にユーザー毎の設定として読み出し使用する項目である。各設定項目は、設定値を変更した日時を最終更新時刻として記録する。
表6は、ユーザーデータDB441に含まれるユーザー簡易設定項目について記載した表である。ユーザー簡易設定機能は、複合機の各機能の設定を読み出し、すぐに機能を使用できるようにする機能である。ユーザー簡易設定項目は、簡易設定の名称、コピー、FAX等の機能分類、各機能で変更する設定項目とその設定値、最終更新時刻から構成される。例えば、No.2の簡易設定は、コピー機能の簡易設定であり、名称をエコ設定で登録し、カラー設定をモノクロ、割り付け設定を2in1、面付け設定を片面から両面、部数を10と登録されている。最終更新時刻は簡易設定の新規作成又は、最後に変更した時刻である。
表7は、ユーザーデータDB441に含まれるユーザードレス帳項目について記載した表である。アドレス帳は、FAX送信先や、E−mail送信先を登録でき、機能使用時に読み出すことができる。アドレス帳の各項目は、E−mail、FAX等を設定する分類、宛先の名称、送信先のメールアドレス又はFAX番号の送信先、最終更新日時から構成される。
表8は設定値情報DB450に格納されるデータを表した表である。設定値情報DB450はサーバ120で管理する各設定値に関するメタデータを格納するデータベースである。設定値情報DB450には、複合機110と通信を行う際に設定値を識別するための設定値識別子、初期値、値域、適応機種/バージョン、設定値の使用条件、ポリシー、連動仕様が格納される。設定値情報DB450で管理する各設定値は、複合機110の機種やファームウェアのバージョンに依存して、設定値が存在するかどうか・設定値の値域や初期値が異なることがある。表1では、設定値識別子が"settings.common.sleep_time"で表される設定値は、全ての個体に存在していることを表している。また、設定値識別子が"settings.print.density"で表される設定値は、機種Bではインストールされているファームウェアのバージョンにより設定値の値域や初期値が異なることを表している。
設定値の使用条件が設定された設定値は、デバイス構成情報を基に使用条件を満たしているか判定される項目である。表1では、設定値識別子が"settings.send.compress_ratio"で表される設定値は、送信ライセンスをもつデバイスでのみ使用できることを表している。本実施形態では使用条件を満たしていない場合は初期値として設定する例で説明するが、設定値同期システムは、使用条件が満たされていない設定値は、非表示するか、初期値として設定するか、設定項目自体をもたないか等の処理を行ってもよい。
図5は、同期要求ジョブに記録される同期内容を表した図である。同期要求ジョブに記録される内容は、更新したい設定値とその変更する値とを含んでおり、本実施形態ではXML形式で記録される例を示す。更新したい設定値はnodesタグのnodeタグで指定される。更新したい設定値ではデータ種別をdatatypeタグで指定し、要求時刻をrequestタグで指定する。pathタグで設定値を一意に指定する設定値パスを指定し、node_configタグで変更したい値を指定する。1つの設定値を変更した際に連動して変更される設定値等が含まれる場合には複数の設定値をまとめて同期したい場合がある。このように1度の同期要求で複数の設定値を同期する場合には、設定値の数だけnodeタグが複数記載される。
図5の例はデバイス設定値の言語設定を初期値に変更した場合の同期要求ジョブに記載されるXMLの例である。この例ではdatatypeタグにdeviceconfigurationが指定され、pathタグに/device_id/common_setup/lang_selectが指定される。
本実施形態ではXML形式で記載する例を示したが、同期要求ジョブの記載はこれに限ったものではなく、変更する設定値を特定するキーと、変更する値のバリューを記載してあればよい。
図5の例はデバイス設定値の言語設定を初期値に変更した場合の同期要求ジョブに記載されるXMLの例である。この例ではdatatypeタグにdeviceconfigurationが指定され、pathタグに/device_id/common_setup/lang_selectが指定される。
本実施形態ではXML形式で記載する例を示したが、同期要求ジョブの記載はこれに限ったものではなく、変更する設定値を特定するキーと、変更する値のバリューを記載してあればよい。
以下では複合機110がサーバ120と同期を開始する同期処理において複合機110が実行する処理について図6、図7の左側、図8のフローチャートを用いて説明する。また同期接続処理においてサーバ120が実行する処理について図7の右側のフローチャートを用いて説明する。
本実施形態において、複合機110のプログラムに基づきCPU201が実行するフローチャートとサーバ120のプログラムに基づきCPU221が実行するフローチャートについて説明する。複合機110のフローチャートの各ステップは、複合機110が備えるCPU201がROM202等のメモリに格納されたプログラムをRAM203に展開して実行することによって実現される。サーバ120のフローチャートの各ステップは、サーバ120が備えるCPU221がROM222等のメモリに格納されたプログラムをRAM223に展開して実行することによって実現される。
本実施形態において、複合機110のプログラムに基づきCPU201が実行するフローチャートとサーバ120のプログラムに基づきCPU221が実行するフローチャートについて説明する。複合機110のフローチャートの各ステップは、複合機110が備えるCPU201がROM202等のメモリに格納されたプログラムをRAM203に展開して実行することによって実現される。サーバ120のフローチャートの各ステップは、サーバ120が備えるCPU221がROM222等のメモリに格納されたプログラムをRAM223に展開して実行することによって実現される。
図6は、複合機で設定値が変更され、同期要求ジョブを保存してデータ保持部305が保持する設定値を書き換えるまでの情報処理を記載したフローチャートである。このフローチャートの処理は、複合機110において設定値が変更され同期制御部301が呼び出された時点から開始される。
S601で、データ管理部304は、データ保持部305が保持している設定値DBへの変更要求を受け付け、S602へ移行する。
S602で、データ管理部304は、同期制御部301へ受け付けた設定変更内容を通知する。同期制御部301は、受け付けた設定変更内容を同期要求ジョブとして保存するよう同期要求ジョブ管理部306へ依頼する。同期要求ジョブ管理部306は、受け付けた同期要求ジョブの内容を内部の同期要求ジョブリストに登録し、同期要求ジョブ保持部307に同期要求ジョブの保存を指示する。同期要求ジョブ保持部307は、受け付けた同期要求ジョブを静的に保存し、S603へ移行する。
S603で、同期要求ジョブ管理部306は、同期要求ジョブ保持部307が同期要求ジョブの保存に成功したか否かを判定する。同期要求ジョブ管理部306は、成功した場合にはS604へ移行し、失敗した場合にはS605へ移行する。
S604で、同期制御部301は、データ管理部304に同期要求の受付を成功したことを通知する。データ管理部304は、同期要求の受け付け成功を受信したら受け付けていた変更要求で設定値DBに書き換え、S605へ移行する。
S605で、データ管理部304は、変更要求に対して設定値変更結果を応答し、図6に示すフローチャートの処理を終了する。
S601で、データ管理部304は、データ保持部305が保持している設定値DBへの変更要求を受け付け、S602へ移行する。
S602で、データ管理部304は、同期制御部301へ受け付けた設定変更内容を通知する。同期制御部301は、受け付けた設定変更内容を同期要求ジョブとして保存するよう同期要求ジョブ管理部306へ依頼する。同期要求ジョブ管理部306は、受け付けた同期要求ジョブの内容を内部の同期要求ジョブリストに登録し、同期要求ジョブ保持部307に同期要求ジョブの保存を指示する。同期要求ジョブ保持部307は、受け付けた同期要求ジョブを静的に保存し、S603へ移行する。
S603で、同期要求ジョブ管理部306は、同期要求ジョブ保持部307が同期要求ジョブの保存に成功したか否かを判定する。同期要求ジョブ管理部306は、成功した場合にはS604へ移行し、失敗した場合にはS605へ移行する。
S604で、同期制御部301は、データ管理部304に同期要求の受付を成功したことを通知する。データ管理部304は、同期要求の受け付け成功を受信したら受け付けていた変更要求で設定値DBに書き換え、S605へ移行する。
S605で、データ管理部304は、変更要求に対して設定値変更結果を応答し、図6に示すフローチャートの処理を終了する。
図7は、複合機110において、同期制御部301が同期要求ジョブをチェックし、同期要求を実行する処理と、データ同期サービス320が同期要求を受け付けた時の処理を記載したフローチャートである。このフローチャートの処理は、複合機110において同期を開始する際に実行される。なお、本フローチャートでは複数のデータ種別の同期要求を実行してもよいし、同期するデータ種別毎に複数実行し、データ種別毎に同期要求を実行してもよい。
S701で、同期制御部301は、同期要求ジョブ管理部306に同期要求ジョブがあるかないかを判定する。同期制御部301は、同期要求ジョブがある場合はS702へ移行し、ジョブが無い場合はS701へ再度移行する。
S702で、同期要求ジョブ管理部306は、同期要求ジョブリストの先頭にある同期要求ジョブを読み出し、S703へ移行する。
S703で、同期要求ジョブ管理部306は、同期要求ジョブの読出しに成功したか否かを判定する。同期要求ジョブ管理部306は、同期要求ジョブの読出しに成功した場合は同期制御部301に読出した同期要求ジョブ内容を通知しS704へ移行し、失敗した場合はS717へ移行する。
S704で、同期制御部301は、読み出した同期要求ジョブをデータ同期部308に通知する。データ同期部308は、受け付けた同期要求ジョブから要求された同期内容を読出し、同期通信部309を通じてサーバ120に同期要求を送信し、S705へ移行する。
S701で、同期制御部301は、同期要求ジョブ管理部306に同期要求ジョブがあるかないかを判定する。同期制御部301は、同期要求ジョブがある場合はS702へ移行し、ジョブが無い場合はS701へ再度移行する。
S702で、同期要求ジョブ管理部306は、同期要求ジョブリストの先頭にある同期要求ジョブを読み出し、S703へ移行する。
S703で、同期要求ジョブ管理部306は、同期要求ジョブの読出しに成功したか否かを判定する。同期要求ジョブ管理部306は、同期要求ジョブの読出しに成功した場合は同期制御部301に読出した同期要求ジョブ内容を通知しS704へ移行し、失敗した場合はS717へ移行する。
S704で、同期制御部301は、読み出した同期要求ジョブをデータ同期部308に通知する。データ同期部308は、受け付けた同期要求ジョブから要求された同期内容を読出し、同期通信部309を通じてサーバ120に同期要求を送信し、S705へ移行する。
S705で、データ同期サービス320の同期通信部321は、複合機110からの同期要求を受信し、S706へ移行する。
S706で、同期通信部321は、受信内容を解析し、受信内容に含まれる同期要求を特定する。同期要求を特定し解析したら、S707へ移行する。
S707で、同期通信部321は、同期要求解析した結果を判定する。同期通信部321は、成功の場合はS708へ移行し、失敗の場合にはS709へ移行する。
S708で、同期通信部321は、同期要求解析結果から同期要求がデバイス管理情報への要求の場合はデバイス管理部322へ、同期要求がそれ以外のデータの場合にはデータ管理部324に同期処理実行を依頼する。依頼を受け付けたデバイス管理部322又はデータ管理部324は、受け付けた同期要求から、設定値の内容を読み出しそれぞれのデータ保持部325が保持する設定データDB420への書込みを実行する。同期処理が終了したらS710へ移行する。
S709で、同期通信部321は、応答の同期処理結果に同期要求の読出しに失敗したことによるパースエラーを登録し、S713へ移行する。
S710で、同期通信部321は、同期処理の結果が成功したか否かを判定する。同期通信部321は、同期処理の結果が成功した場合にはS711へ移行し、失敗した場合にはS712へ移行する。
S711で、同期通信部321は、応答の同期処理結果に同期処理成功を登録し、S713へ移行する。
S712で、同期通信部321は、応答の同期処理結果に同期処理失敗を登録し、S713へ移行する。
S713で、同期通信部321は、登録された応答を複合機110に送信し、S714へ移行する。
S706で、同期通信部321は、受信内容を解析し、受信内容に含まれる同期要求を特定する。同期要求を特定し解析したら、S707へ移行する。
S707で、同期通信部321は、同期要求解析した結果を判定する。同期通信部321は、成功の場合はS708へ移行し、失敗の場合にはS709へ移行する。
S708で、同期通信部321は、同期要求解析結果から同期要求がデバイス管理情報への要求の場合はデバイス管理部322へ、同期要求がそれ以外のデータの場合にはデータ管理部324に同期処理実行を依頼する。依頼を受け付けたデバイス管理部322又はデータ管理部324は、受け付けた同期要求から、設定値の内容を読み出しそれぞれのデータ保持部325が保持する設定データDB420への書込みを実行する。同期処理が終了したらS710へ移行する。
S709で、同期通信部321は、応答の同期処理結果に同期要求の読出しに失敗したことによるパースエラーを登録し、S713へ移行する。
S710で、同期通信部321は、同期処理の結果が成功したか否かを判定する。同期通信部321は、同期処理の結果が成功した場合にはS711へ移行し、失敗した場合にはS712へ移行する。
S711で、同期通信部321は、応答の同期処理結果に同期処理成功を登録し、S713へ移行する。
S712で、同期通信部321は、応答の同期処理結果に同期処理失敗を登録し、S713へ移行する。
S713で、同期通信部321は、登録された応答を複合機110に送信し、S714へ移行する。
S714で、データ同期部308は、同期通信部309を通じて同期処理結果を受信し、S715へ移行する。
S715で、データ同期部308は、受信した同期処理結果を解析し、同期処理の結果を特定する。データ同期部308は、特定した同期処理結果内容を同期制御部301に通知し、S716へ移行する。
S716で、同期制御部301は、受け付けた同期処理結果を判定する。同期制御部301は、同期処理結果が成功だった場合にはS718へ移行し、スキップ対象エラーだった場合にはS717に移行し、リトライエラーだった場合にはS719へ移行する。例えば、同期制御部301は、同期処理結果がパースエラーだった場合に、スキップ対象エラーと判定する。但し、同期制御部301は、同一の同期要求の同期処理結果が複数回連続でパースエラーだった場合に、スキップ対象エラーと判定してもよい。この場合、何回連続した場合にパースエラーと判定するかの情報は、HDD204等に記憶されている設定ファイル等に記述されているものとする。同期制御部301は、この設定ファイルに記載されている情報に基づき、設定されている回数、連続してパースエラーだった場合に、スキップ対象エラーと判定する。例えば、設定されている回数が3回であった場合、S716で、同期制御部301は、1回目、2回目は、同期処理結果がパースエラーであった場合は、スキップ対象エラーであるとは判定せず、S704等に移行する。そして、S716で、同期制御部301は、3回目の同期処理結果もパースエラーであった場合に、スキップ対象エラーであると判定し、S717に移行する。また、同期制御部301は、操作部210等を介した操作に応じて、設定ファイルに記述されている情報を修正、変更するようにしてもよい。
S717で、同期制御部301は、同期要求スキップ処理を実行する。同期要求スキップ処理の詳細は図8を用いて詳細に説明する。同期制御部301は、同期要求スキップ処理が終了したら、後に続く同期要求ジョブ(例えば、次の順番の同期要求ジョブ)の処理を行うため、S701へ移行する。
S718で、同期制御部301は、同期に成功した同期要求ジョブの削除を同期要求ジョブ管理部306に依頼する。同期要求ジョブ管理部306は、削除を要求された同期要求ジョブを同期要求ジョブリストから削除し、同期要求ジョブ保持部307を通じて保存した同期要求ジョブを削除する。同期制御部301は、操作部制御部310を介して操作部210に同期処理失敗を通知している場合には同期処理失敗の通知取り下げを要求し、S701へ移行する。
S719で、同期制御部301は、同期処理に失敗したことを操作部210に通知するため、操作部制御部310へ同期処理失敗を通知する。操作部制御部310は、同期処理失敗を受け付け、図9に示す通り同期失敗を操作部に表示し、S701へ移行する。
S715で、データ同期部308は、受信した同期処理結果を解析し、同期処理の結果を特定する。データ同期部308は、特定した同期処理結果内容を同期制御部301に通知し、S716へ移行する。
S716で、同期制御部301は、受け付けた同期処理結果を判定する。同期制御部301は、同期処理結果が成功だった場合にはS718へ移行し、スキップ対象エラーだった場合にはS717に移行し、リトライエラーだった場合にはS719へ移行する。例えば、同期制御部301は、同期処理結果がパースエラーだった場合に、スキップ対象エラーと判定する。但し、同期制御部301は、同一の同期要求の同期処理結果が複数回連続でパースエラーだった場合に、スキップ対象エラーと判定してもよい。この場合、何回連続した場合にパースエラーと判定するかの情報は、HDD204等に記憶されている設定ファイル等に記述されているものとする。同期制御部301は、この設定ファイルに記載されている情報に基づき、設定されている回数、連続してパースエラーだった場合に、スキップ対象エラーと判定する。例えば、設定されている回数が3回であった場合、S716で、同期制御部301は、1回目、2回目は、同期処理結果がパースエラーであった場合は、スキップ対象エラーであるとは判定せず、S704等に移行する。そして、S716で、同期制御部301は、3回目の同期処理結果もパースエラーであった場合に、スキップ対象エラーであると判定し、S717に移行する。また、同期制御部301は、操作部210等を介した操作に応じて、設定ファイルに記述されている情報を修正、変更するようにしてもよい。
S717で、同期制御部301は、同期要求スキップ処理を実行する。同期要求スキップ処理の詳細は図8を用いて詳細に説明する。同期制御部301は、同期要求スキップ処理が終了したら、後に続く同期要求ジョブ(例えば、次の順番の同期要求ジョブ)の処理を行うため、S701へ移行する。
S718で、同期制御部301は、同期に成功した同期要求ジョブの削除を同期要求ジョブ管理部306に依頼する。同期要求ジョブ管理部306は、削除を要求された同期要求ジョブを同期要求ジョブリストから削除し、同期要求ジョブ保持部307を通じて保存した同期要求ジョブを削除する。同期制御部301は、操作部制御部310を介して操作部210に同期処理失敗を通知している場合には同期処理失敗の通知取り下げを要求し、S701へ移行する。
S719で、同期制御部301は、同期処理に失敗したことを操作部210に通知するため、操作部制御部310へ同期処理失敗を通知する。操作部制御部310は、同期処理失敗を受け付け、図9に示す通り同期失敗を操作部に表示し、S701へ移行する。
図7に示すフローチャートでは、複合機の同期要求に失敗した場合に、失敗した内容に応じて処理を切り替えている。同期に失敗した場合であっても再度同期要求を実行することで同期に成功する可能性がある場合には、同一の同期要求を再度実行し、再度実行しても成功しない同期要求はスキップし、次の同期要求を処理している。これによりできる限りサーバと設定値を同期している状態を取ることができる。また、データ種別毎にフローチャートを実行するため、データ種別毎に同期要求を処理することができる。そのためあるデータ種別の同期処理でリトライエラーやスキップ対象エラーが発生している状態であっても、他のデータ種別の同期制御は実行可能である。
図8は、図7のS717で実行される同期要求スキップ処理の詳細を記載したフローチャートである。このフローチャートの処理は、同期制御部301がS717を実行する際に、実行される。
S801で、同期制御部301は、同期要求ジョブ管理部306に同期要求スキップの対象になった同期要求を特定するよう要求し、S802へ移行する。
S802で、同期要求ジョブ管理部306は、特定したスキップ対象となる同期要求ジョブを待避領域に複製し、S803へ移行する。
S803で、同期要求ジョブ管理部306は、特定した同期要求ジョブを削除し、図8に示すフローチャートの処理を終了する。
S801で、同期制御部301は、同期要求ジョブ管理部306に同期要求スキップの対象になった同期要求を特定するよう要求し、S802へ移行する。
S802で、同期要求ジョブ管理部306は、特定したスキップ対象となる同期要求ジョブを待避領域に複製し、S803へ移行する。
S803で、同期要求ジョブ管理部306は、特定した同期要求ジョブを削除し、図8に示すフローチャートの処理を終了する。
図9は、本実施形態にかかる同期処理失敗時の通知画面を表した図である。同期処理失敗通知画面900は操作部制御部310が同期制御部301から同期処理に失敗した通知を受け付けた際に操作部210に表示する。同期処理失敗通知画面900は、ユーザー操作部901と、通知部902と、から構成されている。ユーザー操作部901は、ユーザーからの操作を受け付ける部分であり、設定値の変更やコピーの実行等を指示する画面を表示する。図9では一例として設定の変更画面の印刷設定のうちのセキュリティ設定の地紋印刷の設定を変更する画面を例に示している。ここでユーザーが地紋印刷の設定を変更しOKを押すことでデータ管理部304に設定変更要求が通知され、図6のフローチャートが実行される。通知部902は、複合機110の状態を表示する部分であり、ここでは同期処理に失敗した通知を受け付け、サーバ120との同期に失敗したことを伝えるメッセージが表示されている。本実施形態では、通知部902にはユーザー操作部901に表示する画面にかかわらず常にメッセージが表示されており、複合機110の状態を示す例を示している。しかし、操作部制御部310は、通知部902にユーザー操作部901に特定の画面が表示されている場合のみ表示していてもよい。また、操作部制御部310は、通知部902に表示する指示を受け付けた場合にのみ表示してもよい。
以上説明したように、本実施形態によれば、複合機110が受け付けた同期要求のうちある1つの同期要求ジョブが何らかの原因で使用できなくなった場合に、同期を継続する技術を提供することができる。
<実施形態2>
複合機110がサーバ120との同期結果をエラースキップ処理と判定した場合に、スキップ処理を実行するか否かをユーザーからの判定を受けて判断するエラースキップ制御の実行する例について説明する。
なお本実施形態においては、実施形態1と同一部分に関する説明は省略し、本実施形態にかかる部分のみを説明する。
本実施形態において、複合機110とサーバ120との同期処理は実施形態1と同様に図7に示すフローチャートで実行する。但し、S717の同期要求スキップ処理に関しては、図10に詳細を示す同期要求スキップ処理を実行する。
複合機110がサーバ120との同期結果をエラースキップ処理と判定した場合に、スキップ処理を実行するか否かをユーザーからの判定を受けて判断するエラースキップ制御の実行する例について説明する。
なお本実施形態においては、実施形態1と同一部分に関する説明は省略し、本実施形態にかかる部分のみを説明する。
本実施形態において、複合機110とサーバ120との同期処理は実施形態1と同様に図7に示すフローチャートで実行する。但し、S717の同期要求スキップ処理に関しては、図10に詳細を示す同期要求スキップ処理を実行する。
図10は、複合機110においてサーバ120との同期処理を実行する場合に、スキップ対象エラーが発生した際の同期要求スキップ処理について記載したフローチャートである。
S1001で、同期制御部301は、同期処理に失敗したことを操作部に通知するため、操作部制御部310へ同期処理失敗を通知する。操作部制御部310は、同期処理失敗を受け付け、同期失敗を操作部210に表示し、S1002へ移行する。
S1002で、同期制御部301は、同期要求ジョブ管理部306に同期要求スキップの対象になった同期要求を特定するよう要求し、S1003へ移行する。
S1003で、同期制御部301は、操作部制御部310にスキップ実行判定画面を操作部210に表示するよう依頼する。操作部制御部310は操作部210に後述する図11に示すスキップ実行判定画面1100を表示し、S1004へ移行する。
S1004で、操作部制御部310は、スキップ実行判定画面1100の何れかのボタンが押されたことを検知し、検知した内容を同期制御部301に通知する。操作部制御部310は、何れかのボタンが押されたことを検知したらスキップ実行判定画面1101の表示を終了する。同期制御部301は、通知された内容がスキップ要求の場合にはS1005へ移行し、キャンセルの場合には図10に示すフローチャートの処理を終了する。
S1005で、同期要求ジョブ管理部306は、特定したスキップ対象となる同期要求ジョブを待避領域に複製し、S1006へ移行する。
S1006で、同期要求ジョブ管理部306は、特定した同期要求ジョブを削除し、S1007へ移行する。
S1007で、同期制御部301は、操作部210に通知していた同期処理エラーの通知を取り下げ、図10に示すフローチャートの処理を終了する。
S1001で、同期制御部301は、同期処理に失敗したことを操作部に通知するため、操作部制御部310へ同期処理失敗を通知する。操作部制御部310は、同期処理失敗を受け付け、同期失敗を操作部210に表示し、S1002へ移行する。
S1002で、同期制御部301は、同期要求ジョブ管理部306に同期要求スキップの対象になった同期要求を特定するよう要求し、S1003へ移行する。
S1003で、同期制御部301は、操作部制御部310にスキップ実行判定画面を操作部210に表示するよう依頼する。操作部制御部310は操作部210に後述する図11に示すスキップ実行判定画面1100を表示し、S1004へ移行する。
S1004で、操作部制御部310は、スキップ実行判定画面1100の何れかのボタンが押されたことを検知し、検知した内容を同期制御部301に通知する。操作部制御部310は、何れかのボタンが押されたことを検知したらスキップ実行判定画面1101の表示を終了する。同期制御部301は、通知された内容がスキップ要求の場合にはS1005へ移行し、キャンセルの場合には図10に示すフローチャートの処理を終了する。
S1005で、同期要求ジョブ管理部306は、特定したスキップ対象となる同期要求ジョブを待避領域に複製し、S1006へ移行する。
S1006で、同期要求ジョブ管理部306は、特定した同期要求ジョブを削除し、S1007へ移行する。
S1007で、同期制御部301は、操作部210に通知していた同期処理エラーの通知を取り下げ、図10に示すフローチャートの処理を終了する。
図11は、本実施形態にかかる同期処理でスキップ対象エラーが発生した場合に表示するスキップ実行判定画面を表した図である。スキップ実行判定画面1100は図10のフローチャートのS1003で操作部制御部310が同期制御部301から同期処理に失敗しスキップ対象エラーが発生した通知を受け付けた際に操作部210に表示する。スキップ実行判定画面1100は、ユーザー操作部901と、通知部902と、から構成されており、ユーザー操作部901にはスキップ実行判定画面1101が表示される。スキップ実行判定画面1101は、ユーザーからスキップを実行するか否かを受け付ける部分であり、実行ボタン1102とキャンセルボタン1103とから構成され、それぞれのボタンへの指示を受け付ける。ボタンへの指示の受け付けはS1004で実行され、操作部制御部310は、受け付けた内容を同期制御部301へ通知し指示の判定が行われる。
以上説明したように、本実施形態によれば、同期処理結果としてスキップ対象のエラーが発生した場合に、失敗した同期処理を継続して実行するか、その時点で同期処理をスキップし後続の同期を継続するかをユーザーに判断させることができる。
これにより、ユーザーは、同期処理に失敗した場合にその時点の複合機110の設定を確認することができ、どの設定値の変更で問題が発生したか確認した上でスキップを実行する等、対策をすることができる。
これにより、ユーザーは、同期処理に失敗した場合にその時点の複合機110の設定を確認することができ、どの設定値の変更で問題が発生したか確認した上でスキップを実行する等、対策をすることができる。
<実施形態3>
本実施形態では、複合機110がサーバ120と同期処理をしている場合において、スキップ対象エラーが発生した場合の不整合を解消する方法を説明する。本実施形態によれば、スキップ対象エラーが発生した場合にエラーが発生した複合機110とサーバ120との設定値の不整合状態を解消することができる。
なお、本実施形態においては、実施形態1と同一部分に関する説明は省略し、本実施形態にかかる部分のみを説明する。
本実施形態において、複合機110とサーバ120との同期処理は実施形態1と同様に図7に示すフローチャートで実行する。但し、S717の同期要求スキップ処理に関しては、図12に詳細を示す同期要求スキップ処理を実行する。
本実施形態では、複合機110がサーバ120と同期処理をしている場合において、スキップ対象エラーが発生した場合の不整合を解消する方法を説明する。本実施形態によれば、スキップ対象エラーが発生した場合にエラーが発生した複合機110とサーバ120との設定値の不整合状態を解消することができる。
なお、本実施形態においては、実施形態1と同一部分に関する説明は省略し、本実施形態にかかる部分のみを説明する。
本実施形態において、複合機110とサーバ120との同期処理は実施形態1と同様に図7に示すフローチャートで実行する。但し、S717の同期要求スキップ処理に関しては、図12に詳細を示す同期要求スキップ処理を実行する。
図12は、複合機110においてサーバ120との同期処理を実行する場合に、スキップ対象エラーが発生した際の同期要求スキップ処理について記載したフローチャートである。
S1201で、同期制御部301は、同期処理に失敗したことを操作部210に通知するため、操作部制御部310へ同期処理失敗を通知する。操作部制御部310は、同期処理失敗を受け付け、同期失敗を操作部210に表示し、S1202へ移行する。
S1202で、同期制御部301は、同期要求ジョブ管理部306に同期要求スキップの対象になった同期要求を特定するよう要求し、S1203へ移行する。
S1203で、同期制御部301は、操作部制御部310に再同期確認画面を操作部210に表示するよう依頼する。操作部制御部310は操作部210に後述する図15に示す再同期確認画面1500を表示し、S1204へ移行する。
S1204で、操作部制御部310は、再同期確認画面1500の何れかのボタンが押されたことを検知し、検知した内容を同期制御部301に通知する。操作部制御部310は、何れかのボタンが押されたことを検知したら再同期確認画面1500の表示を終了する。同期制御部301は、通知された内容が複合機基準再同期の場合にはS1205へ移行し、サーバ基準再同期の場合にはS1206へ移行し、キャンセルの場合には図12に示すフローチャートの処理を終了する。
S1205で、同期制御部301は、複合機基準再同期処理を実行する。複合機基準再同期処理の詳細は図13のフローチャートを用いて詳細に説明する。複合機基準再同期処理が終了したら、同期制御部301は、S1207へ移行する。
S1206で、同期制御部301は、サーバ基準再同期処理を実行する。サーバ基準再同期処理の詳細は図14のフローチャートを用いて詳細に説明する。サーバ基準再同期処理が終了したら、同期制御部301は、S1207へ移行する。
S1207で、同期制御部301は、操作部210に通知していた同期処理エラーの通知を取り下げ、図12に示すフローチャートの処理を終了する。
S1201で、同期制御部301は、同期処理に失敗したことを操作部210に通知するため、操作部制御部310へ同期処理失敗を通知する。操作部制御部310は、同期処理失敗を受け付け、同期失敗を操作部210に表示し、S1202へ移行する。
S1202で、同期制御部301は、同期要求ジョブ管理部306に同期要求スキップの対象になった同期要求を特定するよう要求し、S1203へ移行する。
S1203で、同期制御部301は、操作部制御部310に再同期確認画面を操作部210に表示するよう依頼する。操作部制御部310は操作部210に後述する図15に示す再同期確認画面1500を表示し、S1204へ移行する。
S1204で、操作部制御部310は、再同期確認画面1500の何れかのボタンが押されたことを検知し、検知した内容を同期制御部301に通知する。操作部制御部310は、何れかのボタンが押されたことを検知したら再同期確認画面1500の表示を終了する。同期制御部301は、通知された内容が複合機基準再同期の場合にはS1205へ移行し、サーバ基準再同期の場合にはS1206へ移行し、キャンセルの場合には図12に示すフローチャートの処理を終了する。
S1205で、同期制御部301は、複合機基準再同期処理を実行する。複合機基準再同期処理の詳細は図13のフローチャートを用いて詳細に説明する。複合機基準再同期処理が終了したら、同期制御部301は、S1207へ移行する。
S1206で、同期制御部301は、サーバ基準再同期処理を実行する。サーバ基準再同期処理の詳細は図14のフローチャートを用いて詳細に説明する。サーバ基準再同期処理が終了したら、同期制御部301は、S1207へ移行する。
S1207で、同期制御部301は、操作部210に通知していた同期処理エラーの通知を取り下げ、図12に示すフローチャートの処理を終了する。
図13は、複合機110において同期制御部301が複合機の設定値を基準としてサーバと再同期要求を実行する処理と、データ同期サービス320が同期要求を受け付けたときの処理と、を記載したフローチャートである。このフローチャートの処理は、複合機110において図12のS1205により実行される。
図13のフローチャートのうち、実施形態1の図7のフローチャートと同様の処理を実行する部分に関する説明は省略する。
S1301で、同期制御部301は、同期要求ジョブ管理部306に同期要求ジョブが存在するか否かを確認する。同期制御部301は、同期ジョブが存在する場合にはS1302へ移行し、同期ジョブが存在しない場合にはS1303へ移行する。
S1302で、同期制御部301は、同期要求ジョブ管理部306に全ての同期要求ジョブの削除を指示する。同期要求ジョブ管理部306は、同期要求ジョブリストに含まれる全ての同期要求ジョブを削除し、同期要求ジョブ保持部307を通じて全ての同期要求ジョブを削除する。同期制御部301は、全ての同期要求ジョブを削除が完了したらS1303へ移行する。
S1303で、同期制御部301は、全設定値再同期要求を同期要求ジョブとして保存するよう同期要求ジョブ管理部306へ依頼する。同期要求ジョブ管理部306は、受け付けた同期要求ジョブの内容を内部の同期要求ジョブリストに登録し、同期要求ジョブ保持部307に同期要求ジョブの保存を指示する。同期要求ジョブ保持部307は、受け付けた同期要求ジョブを保存し、S1304へ移行する。
S1304で、同期制御部301は、同期要求ジョブ管理部306に同期要求ジョブの読み出しを指示する。同期要求ジョブ管理部306は、同期要求ジョブリストの先頭にある同期要求ジョブを読み出し、S1305へ移行する。
S1305で、同期要求ジョブ管理部306は、同期要求ジョブの読み出しに成功したか否かを判定する。同期要求ジョブ管理部306は、判定に成功した場合は同期制御部301に読み出した同期要求ジョブの内容を通知してS704へ移行し、読み出しに失敗した場合にはS1301へ移行する。
図13のフローチャートのうち、実施形態1の図7のフローチャートと同様の処理を実行する部分に関する説明は省略する。
S1301で、同期制御部301は、同期要求ジョブ管理部306に同期要求ジョブが存在するか否かを確認する。同期制御部301は、同期ジョブが存在する場合にはS1302へ移行し、同期ジョブが存在しない場合にはS1303へ移行する。
S1302で、同期制御部301は、同期要求ジョブ管理部306に全ての同期要求ジョブの削除を指示する。同期要求ジョブ管理部306は、同期要求ジョブリストに含まれる全ての同期要求ジョブを削除し、同期要求ジョブ保持部307を通じて全ての同期要求ジョブを削除する。同期制御部301は、全ての同期要求ジョブを削除が完了したらS1303へ移行する。
S1303で、同期制御部301は、全設定値再同期要求を同期要求ジョブとして保存するよう同期要求ジョブ管理部306へ依頼する。同期要求ジョブ管理部306は、受け付けた同期要求ジョブの内容を内部の同期要求ジョブリストに登録し、同期要求ジョブ保持部307に同期要求ジョブの保存を指示する。同期要求ジョブ保持部307は、受け付けた同期要求ジョブを保存し、S1304へ移行する。
S1304で、同期制御部301は、同期要求ジョブ管理部306に同期要求ジョブの読み出しを指示する。同期要求ジョブ管理部306は、同期要求ジョブリストの先頭にある同期要求ジョブを読み出し、S1305へ移行する。
S1305で、同期要求ジョブ管理部306は、同期要求ジョブの読み出しに成功したか否かを判定する。同期要求ジョブ管理部306は、判定に成功した場合は同期制御部301に読み出した同期要求ジョブの内容を通知してS704へ移行し、読み出しに失敗した場合にはS1301へ移行する。
S704からS715までのサーバとの同期処理は実施形態1の図7のフローチャートと同等の処理である。S707で、同期通信部321は、同期要求解析に成功した場合にはS1306へ移行する。データ同期部308は、S715の処理を実行したらS1307へ移行する。
S1306で、同期通信部321は、解析した同期要求に含まれる全設定値を設定データDB420に登録するようにデータ管理部324に処理を依頼する。データ管理部324は、データ保持部325を通じて受け付けた全設定値の登録を実行し、処理結果を同期通信部321に応答する。同期通信部321は、処理結果から同期処理に成功したか否かを判定し、S710へ移行する。
S1307で、同期制御部301は、受け付けた同期処理結果を判定する。同期制御部301は、同期処理結果が成功だった場合にはS1309へ移行し、スキップ対象エラーだった場合にはS1301へ移行し、リトライエラーだった場合にはS1308へ移行する。なお、同期制御部301は、受け付けた同期処理結果を判定で、同一の同期要求の同期処理結果が複数回連続でパースエラーだった場合に、スキップ対象エラーと判定してもよい。
S1308で、同期制御部301は、同期処理に失敗したことを操作部210に通知するため、操作部制御部310へ同期処理失敗を通知する。操作部制御部310は、同期処理失敗を受け付け、図9の通知部902に同期エラーを表示し、S1304へ移行する。
S1309で、同期制御部301は、同期に成功した同期要求ジョブの削除を同期要求ジョブ管理部306に依頼する。同期要求ジョブ管理部306は、削除を要求された同期要求ジョブを同期要求ジョブリストから削除し、同期要求ジョブ保持部307を通じて保存した同期要求ジョブを削除する。同期制御部301は、操作部210に同期処理失敗を通知している場合には同期処理失敗の通知取り下げを要求し、図13のフローチャートの処理を終了する。
S1306で、同期通信部321は、解析した同期要求に含まれる全設定値を設定データDB420に登録するようにデータ管理部324に処理を依頼する。データ管理部324は、データ保持部325を通じて受け付けた全設定値の登録を実行し、処理結果を同期通信部321に応答する。同期通信部321は、処理結果から同期処理に成功したか否かを判定し、S710へ移行する。
S1307で、同期制御部301は、受け付けた同期処理結果を判定する。同期制御部301は、同期処理結果が成功だった場合にはS1309へ移行し、スキップ対象エラーだった場合にはS1301へ移行し、リトライエラーだった場合にはS1308へ移行する。なお、同期制御部301は、受け付けた同期処理結果を判定で、同一の同期要求の同期処理結果が複数回連続でパースエラーだった場合に、スキップ対象エラーと判定してもよい。
S1308で、同期制御部301は、同期処理に失敗したことを操作部210に通知するため、操作部制御部310へ同期処理失敗を通知する。操作部制御部310は、同期処理失敗を受け付け、図9の通知部902に同期エラーを表示し、S1304へ移行する。
S1309で、同期制御部301は、同期に成功した同期要求ジョブの削除を同期要求ジョブ管理部306に依頼する。同期要求ジョブ管理部306は、削除を要求された同期要求ジョブを同期要求ジョブリストから削除し、同期要求ジョブ保持部307を通じて保存した同期要求ジョブを削除する。同期制御部301は、操作部210に同期処理失敗を通知している場合には同期処理失敗の通知取り下げを要求し、図13のフローチャートの処理を終了する。
図14は、複合機110において同期制御部301がサーバの設定値を基準としてサーバと再同期要求を実行する処理と、データ同期サービス320が同期要求を受け付けたときの処理と、を記載したフローチャートである。このフローチャートは、複合機110において図12のS1206により実行される。
図14のフローチャートのうち、実施形態1の図7のフローチャートと同様の処理を実行する部分に関する説明は省略する。
S1401で、同期制御部301は、同期要求ジョブ管理部306に同期要求ジョブが存在するか否かを確認する。同期制御部301は、同期ジョブが存在する場合にはS1402へ移行し、同期ジョブが存在しない場合にはS1403へ移行する。
S1402で、同期制御部301は、同期要求ジョブ管理部306に全ての同期要求ジョブの削除を指示する。同期要求ジョブ管理部306は、同期要求ジョブリストに含まれる全ての同期要求ジョブを削除し、同期要求ジョブ保持部307を通じて全ての同期要求ジョブを削除する。同期制御部301は、全ての同期要求ジョブを削除が完了したらS1403へ移行する。
S1403で、同期制御部301は、全設定値取得要求を同期要求ジョブとして保存するよう同期要求ジョブ管理部306へ依頼する。同期要求ジョブ管理部306は、受け付けた同期要求ジョブの内容を内部の同期要求ジョブリストに登録し、同期要求ジョブ保持部307に同期要求ジョブの保存を指示する。同期要求ジョブ保持部307は、受け付けた同期要求ジョブを保存し、S1404へ移行する。
S1404で、同期制御部301は、同期要求ジョブ管理部306に同期要求ジョブの読み出しを指示する。同期要求ジョブ管理部306は、同期要求ジョブリストの先頭にある同期要求ジョブを読み出し、S1405へ移行する。
S1405で、同期要求ジョブ管理部306は、同期要求ジョブの読み出しに成功したか否かを判定する。同期要求ジョブ管理部306は、判定に成功した場合は同期制御部301に読み出した同期要求ジョブの内容を通知し、S704へ移行し、読み出しに失敗した場合にはS1401へ移行する。
図14のフローチャートのうち、実施形態1の図7のフローチャートと同様の処理を実行する部分に関する説明は省略する。
S1401で、同期制御部301は、同期要求ジョブ管理部306に同期要求ジョブが存在するか否かを確認する。同期制御部301は、同期ジョブが存在する場合にはS1402へ移行し、同期ジョブが存在しない場合にはS1403へ移行する。
S1402で、同期制御部301は、同期要求ジョブ管理部306に全ての同期要求ジョブの削除を指示する。同期要求ジョブ管理部306は、同期要求ジョブリストに含まれる全ての同期要求ジョブを削除し、同期要求ジョブ保持部307を通じて全ての同期要求ジョブを削除する。同期制御部301は、全ての同期要求ジョブを削除が完了したらS1403へ移行する。
S1403で、同期制御部301は、全設定値取得要求を同期要求ジョブとして保存するよう同期要求ジョブ管理部306へ依頼する。同期要求ジョブ管理部306は、受け付けた同期要求ジョブの内容を内部の同期要求ジョブリストに登録し、同期要求ジョブ保持部307に同期要求ジョブの保存を指示する。同期要求ジョブ保持部307は、受け付けた同期要求ジョブを保存し、S1404へ移行する。
S1404で、同期制御部301は、同期要求ジョブ管理部306に同期要求ジョブの読み出しを指示する。同期要求ジョブ管理部306は、同期要求ジョブリストの先頭にある同期要求ジョブを読み出し、S1405へ移行する。
S1405で、同期要求ジョブ管理部306は、同期要求ジョブの読み出しに成功したか否かを判定する。同期要求ジョブ管理部306は、判定に成功した場合は同期制御部301に読み出した同期要求ジョブの内容を通知し、S704へ移行し、読み出しに失敗した場合にはS1401へ移行する。
S704からS715までのサーバとの同期処理は実施形態1の図7のフローチャートと同等の処理である。S707で、同期通信部321は、同期要求解析した結果、成功した場合はS1406へ移行する。
S1406で、同期通信部321は、データ管理部324に受け付けた全設定値取得要求に含まれる設定値データの取得を要求し、S1407へ移行する。
S1407で、同期通信部321は、S1406で実行した設定値取得要求が成功したか否かを判定する。同期通信部321は、設定値取得要求が成功した場合はS1408へ移行し、失敗した場合にはS712へ移行する。
S1408で、同期通信部321は、S1406で取得した設定値データを同期処理結果の応答に登録し、S713へ移行する。
S1406で、同期通信部321は、データ管理部324に受け付けた全設定値取得要求に含まれる設定値データの取得を要求し、S1407へ移行する。
S1407で、同期通信部321は、S1406で実行した設定値取得要求が成功したか否かを判定する。同期通信部321は、設定値取得要求が成功した場合はS1408へ移行し、失敗した場合にはS712へ移行する。
S1408で、同期通信部321は、S1406で取得した設定値データを同期処理結果の応答に登録し、S713へ移行する。
データ同期部308は、S715を実行したらS1409へ移行する。S1409で、同期制御部301は、受け付けた同期処理結果を判定する。同期制御部301は、受け付けた同期処理結果が成功だった場合にはS1411へ移行し、スキップ対象エラーだった場合にはS1401へ移行し、リトライエラーだった場合にはS1410へ移行する。なお、同期制御部301は、受け付けた同期処理結果を判定で、同一の同期要求の同期処理結果が複数回連続でパースエラーだった場合に、スキップ対象エラーと判定してもよい。
S1410で、同期制御部301は、同期処理に失敗したことを操作部210に通知するため、操作部制御部310へ同期処理失敗を通知する。操作部制御部310は、同期処理失敗を受け付け、図9の通知部902に同期エラーを表示し、S1404へ移行する。
S1411で、同期制御部301は、受け付けた同期処理結果に含まれるサーバから受信した全設定値をデータ管理部304に通知する。データ管理部304は、データ保持部305を通じて受け付けた全設定値を反映するよう設定値DBを書き換える。同期制御部301は、設定値の反映が終了したらS1412に移行する。
S1412で、同期制御部301は、同期に成功した同期要求ジョブの削除を同期要求ジョブ管理部306に依頼する。同期要求ジョブ管理部306は、削除を要求された同期要求ジョブを同期要求ジョブリストから削除し、同期要求ジョブ保持部307を通じて保存した同期要求ジョブを削除する。同期制御部301は、操作部210に同期処理失敗を通知している場合には同期処理失敗の通知取り下げを要求し、図14に示すフローチャートの処理を終了する。
S1410で、同期制御部301は、同期処理に失敗したことを操作部210に通知するため、操作部制御部310へ同期処理失敗を通知する。操作部制御部310は、同期処理失敗を受け付け、図9の通知部902に同期エラーを表示し、S1404へ移行する。
S1411で、同期制御部301は、受け付けた同期処理結果に含まれるサーバから受信した全設定値をデータ管理部304に通知する。データ管理部304は、データ保持部305を通じて受け付けた全設定値を反映するよう設定値DBを書き換える。同期制御部301は、設定値の反映が終了したらS1412に移行する。
S1412で、同期制御部301は、同期に成功した同期要求ジョブの削除を同期要求ジョブ管理部306に依頼する。同期要求ジョブ管理部306は、削除を要求された同期要求ジョブを同期要求ジョブリストから削除し、同期要求ジョブ保持部307を通じて保存した同期要求ジョブを削除する。同期制御部301は、操作部210に同期処理失敗を通知している場合には同期処理失敗の通知取り下げを要求し、図14に示すフローチャートの処理を終了する。
図15は、同期処理でスキップ対象エラーが発生した場合に表示する再同期確認画面を表した図である。再同期確認画面1500は図12のフローチャートのS1203で操作部制御部310が同期制御部301から同期処理に失敗しスキップ対象エラーが発生した通知を受け付けた際に操作部210に表示する。
再同期確認画面1500は、ユーザー操作部901と、通知部902と、から構成されており、ユーザー操作部901には再同期実行判定画面1501が表示される。再同期実行判定画面1501は、ユーザーからサーバと複合機との何れの設定値を基準として再同期を実行するかを受け付ける画面である。再同期実行判定画面1501には、複合機ボタン1502と、サーバーボタン1503と、キャンセルボタン1504と、から構成され、それぞれのボタンへの指示を受け付ける。各ボタンへの指示の受け付けはS1204で実行される。S1204で、操作部制御部310は、受け付けた内容を同期制御部301へ通知し、指示の判定が行われる。
再同期確認画面1500は、ユーザー操作部901と、通知部902と、から構成されており、ユーザー操作部901には再同期実行判定画面1501が表示される。再同期実行判定画面1501は、ユーザーからサーバと複合機との何れの設定値を基準として再同期を実行するかを受け付ける画面である。再同期実行判定画面1501には、複合機ボタン1502と、サーバーボタン1503と、キャンセルボタン1504と、から構成され、それぞれのボタンへの指示を受け付ける。各ボタンへの指示の受け付けはS1204で実行される。S1204で、操作部制御部310は、受け付けた内容を同期制御部301へ通知し、指示の判定が行われる。
本実施形態では、同期要求スキップ処理の中で再同期確認画面を表示し、サーバ基準で再同期を図るか、複合機基準で再同期を図るか選択できる例を示したが、確認を求めずサーバ基準又は複合機基準で再同期を実行してもよい。例えば、同期制御部301は、HDD204等に記憶されている設定ファイルの設定に基づき、確認を求めずサーバ基準又は複合機基準で再同期を実行してもよい。同期制御部301は、操作部210等を介した操作に応じて、設定ファイルの設定を変更するようにしてもよい。
以上説明したように、本実施形態によれば、同期要求をスキップした場合に発生する不整合状態を解消することができる。
以上説明したように、本実施形態によれば、同期要求をスキップした場合に発生する不整合状態を解消することができる。
<その他の実施形態>
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給する。そして、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読み出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給する。そして、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読み出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
以上、本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではない。上述した各実施形態を任意に組み合わせて実施してもよい。また、上述した複合機、サーバのソフトウェア構成の全て又は一部をハードウェア構成として複合機、サーバに実装するようにしてもよい。また、複合機、サーバは、複数のCPUやROM、HDD、Networkを有していてもよい。
上述した各実施系他によれば、同期要求に問題が生じた場合であっても、同期を継続する技術を提供することができる。
110 複合機
111 複合機
120 サーバ
201 CPU
221 CPU
111 複合機
120 サーバ
201 CPU
221 CPU
Claims (14)
- 設定値の同期要求をサーバ装置に送信する送信手段と、
前記サーバ装置より前記同期要求の同期処理結果を受信する受信手段と、
前記同期処理結果に基づき同期要求の処理を省略する対象のエラーであると判定された場合、前記同期要求の処理を省略し、前記同期要求の後に続く同期要求の処理を行う制御手段と、
を有する通信装置。 - 前記同期処理結果に基づき同期要求の処理を省略する対象のエラーであるか否かの判定を行う判定手段を更に有し、
前記制御手段は、前記判定手段により前記対象のエラーであると判定された場合、前記同期要求の処理を省略し、前記同期要求の後に続く同期要求の処理を行う請求項1記載の通信装置。 - 前記判定手段は、前記同期処理結果がパースエラーであった場合、同期要求の処理を省略する対象のエラーであると判定する請求項2記載の通信装置。
- 前記判定手段は、同一の同期要求の同期処理結果が設定された回数、連続してパースエラーであった場合、同期要求の処理を省略する対象のエラーであると判定する請求項2記載の通信装置。
- 前記同期処理結果に基づき同期要求の処理を省略する対象のエラーであると判定された場合、前記同期要求の処理を省略するか否かを問い合わせる画面を表示する表示手段を更に有し、
前記制御手段は、前記画面を介して前記同期要求の処理を省略する旨が選択された場合、前記同期要求の処理を省略し、前記同期要求の後に続く同期要求の処理を行う請求項1乃至4何れか1項記載の通信装置。 - 設定値の変更を受け付けた場合、設定値の変更内容を同期要求ジョブとしてジョブリストに順番に登録する登録手段と、
前記ジョブリストに同期要求ジョブがある場合、前記ジョブリストより同期要求ジョブを読み出す読出手段と、
を更に有し、
前記送信手段は、前記読出手段による同期要求ジョブの読出しに成功した場合、前記同期要求ジョブの同期要求を前記サーバに送信し、
前記制御手段は、前記対象のエラーであると判定された場合、前記同期要求ジョブの同期要求の処理を省略し、前記読出手段に、前記同期要求ジョブの後に続く同期要求ジョブを前記ジョブリストより読み出させる処理を行わせる請求項1乃至5何れか1項記載の通信装置。 - 前記制御手段は、前記読出手段による同期要求ジョブの読出しに失敗した場合、前記同期要求ジョブの同期要求の処理を省略し、前記読出手段に前記同期要求ジョブの後に続く同期要求ジョブを前記ジョブリストより読み出させる処理を行わせる請求項6記載の通信装置。
- 通信装置であって、
設定値の同期要求をサーバ装置に送信する送信手段と、
前記サーバ装置より前記同期要求の同期処理結果を受信する受信手段と、
前記同期処理結果に基づき同期要求の処理を省略する対象のエラーであると判定された場合、前記通信装置の設定値で前記サーバ装置と同期を取り直すか、前記サーバ装置の設定値で前記通信装置と同期を取り直すかを問い合わせる画面を表示する表示手段と、
前記画面を介して前記通信装置の設定値で前記サーバ装置と同期を取り直す旨が選択された場合は、前記通信装置の設定値で前記サーバ装置と同期を取り直し、前記画面を介して前記サーバ装置の設定値で前記通信装置と同期する旨が選択された場合は、前記サーバ装置の設定値で前記通信装置と同期を取り直す制御手段と、
を有する通信装置。 - 前記送信手段は、前記設定値のデータ種別ごとに前記同期要求を前記サーバ装置に送信する請求項1乃至8何れか1項記載の通信装置。
- 前記通信装置は、画像形成装置である請求項1乃至9何れか1項記載の通信装置。
- 前記サーバ装置は、他の画像形成装置である請求項10記載の通信装置。
- 通信装置が実行する情報処理方法であって、
設定値の同期要求をサーバ装置に送信する送信ステップと、
前記サーバ装置より前記同期要求の同期処理結果を受信する受信ステップと、
前記同期処理結果に基づき同期要求の処理を省略する対象のエラーであると判定された場合、前記同期要求の処理を省略し、前記同期要求の後に続く同期要求の処理を行う制御ステップと、
を含む情報処理方法。 - 通信装置が実行する情報処理方法であって、
設定値の同期要求をサーバ装置に送信する送信ステップと、
前記サーバ装置より前記同期要求の同期処理結果を受信する受信ステップと、
前記同期処理結果に基づき同期要求の処理を省略する対象のエラーであると判定された場合、前記通信装置の設定値で前記サーバ装置と同期を取り直すか、前記サーバ装置の設定値で前記通信装置と同期を取り直すかを問い合わせる画面を表示する表示ステップと、
前記画面を介して前記通信装置の設定値で前記サーバ装置と同期を取り直す旨が選択された場合は、前記通信装置の設定値で前記サーバ装置と同期を取り直し、前記画面を介して前記サーバ装置の設定値で前記通信装置と同期する旨が選択された場合は、前記サーバ装置の設定値で前記通信装置と同期を取り直す制御ステップと、
を含む情報処理方法。 - コンピュータを、請求項1乃至11何れか1項記載の各手段として機能させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015232332A JP2017097797A (ja) | 2015-11-27 | 2015-11-27 | 通信装置、情報処理方法及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015232332A JP2017097797A (ja) | 2015-11-27 | 2015-11-27 | 通信装置、情報処理方法及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2017097797A true JP2017097797A (ja) | 2017-06-01 |
Family
ID=58804920
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015232332A Pending JP2017097797A (ja) | 2015-11-27 | 2015-11-27 | 通信装置、情報処理方法及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2017097797A (ja) |
-
2015
- 2015-11-27 JP JP2015232332A patent/JP2017097797A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5025342B2 (ja) | 画像処理装置、画像処理システム、画像処理装置の制御方法及びプログラム | |
JP6355330B2 (ja) | ネットワークデバイス、ネットワークデバイスの制御方法およびそのプログラム | |
US10264153B2 (en) | Information processing apparatus, method for controlling information processing apparatus, image forming apparatus, method for controlling image forming apparatus, and information processing system | |
JP6376935B2 (ja) | ネットワークデバイス、ネットワークデバイスの制御方法およびそのプログラム | |
JP2014148064A (ja) | 画像形成装置及びその制御方法、並びにプログラム | |
US20160165077A1 (en) | Information processing apparatus, management apparatus, method of controlling information processing apparatus, method of controlling management apparatus, and storage medium | |
JP2010061562A (ja) | 機器動作履歴記録システム | |
JP2020065124A (ja) | 通信システム、情報処理装置、およびその制御方法、プログラム | |
CN106797402B (zh) | 信息系统、信息处理装置及其控制方法、计算机可读介质 | |
JP2014067126A (ja) | 情報処理装置及び印刷システム | |
JP2016083870A (ja) | 画像形成装置及びその制御方法、システム | |
KR102143411B1 (ko) | 화상 형성 장치, 화상 형성 장치의 제어 방법, 및 저장 매체 | |
US20180357135A1 (en) | Information processing apparatus that manages data on client, backup method therefor, control method therefor, and storage medium | |
JP6329429B2 (ja) | 情報処理装置、制御方法およびプログラム | |
JP6482698B2 (ja) | ネットワークデバイス、ネットワークデバイスの制御方法、及びプログラム | |
JP2018011183A (ja) | 情報処理装置、サーバ装置、システム、情報処理方法及びプログラム | |
JP7022519B2 (ja) | 携帯端末とその制御方法、及び記憶媒体 | |
JP4929142B2 (ja) | データ処理装置及びその制御方法、コンピュータプログラム | |
JP2017097797A (ja) | 通信装置、情報処理方法及びプログラム | |
JP2018045307A (ja) | サーバ装置、情報処理方法及びプログラム | |
JP2018011182A (ja) | 情報処理装置、システム、情報処理方法及びプログラム | |
JP6605077B2 (ja) | 情報処理装置、情報処理装置の制御方法およびそのプログラム | |
JP2020052777A (ja) | ネットワークデバイス、方法、及びプログラム | |
JP2016081161A (ja) | 管理装置管理装置の制御方法、及びプログラム | |
JP2021177356A (ja) | 情報処理装置、情報処理装置の制御方法およびプログラム |