(57)【要約】【課題】データベースの更新の高速化を図る。【解決手段】データベースを有するデバイスを管理するデバイス管理装置であって、前記データベースの状態情報を前記デバイスから取得する取得部と、前記データベースを更新するための更新データを前記デバイスへ送信し、前記更新データにより前記データベースを更新させる更新部と、を備え、前記更新部は、前記状態情報に基づいて、前記更新データの部分データを前記デバイスへ順次送信することにより前記部分データ単位での前記データベースの更新をさせる第１更新と、前記更新データを前記デバイスへ一括送信することにより前記データベースを一括更新させる第２更新と、のいずれかの実行を選択する。【選択図】図５
2018046457.tif 000002
【特許請求の範囲】
【請求項１】
データベースを有するデバイスを管理するデバイス管理装置であって、
前記データベースの状態情報を前記デバイスから取得する取得部と、
前記データベースを更新するための更新データを前記デバイスへ送信し、前記更新データにより前記データベースを更新させる更新部と、を備え、
前記更新部は、前記状態情報に基づいて、前記更新データの部分データを前記デバイスへ順次送信することにより前記部分データ単位での前記データベースの更新をさせる第１更新と、前記更新データを前記デバイスへ一括送信することにより前記データベースを一括更新させる第２更新と、のいずれかの実行を選択することを特徴とするデバイス管理装置。
【請求項２】
前記更新部は、前記状態情報に基づき、前記データベースの少なくとも一部の領域がロックされているか否かを判定し、前記データベースの少なくとも一部の領域がロックされている場合には前記第１更新を実行することにより、前記データベースのうちロックされていない領域を前記部分データにより更新させ、前記データベースにロックされている領域が無い場合には前記第２更新を実行することを特徴とする請求項１に記載のデバイス管理装置。
【請求項３】
前記データベースは、情報送信の宛先を複数記述した宛先帳であり、前記デバイスが有する情報送信機能による送信先に設定されている宛先が、前記ロックされた領域であることを特徴とする請求項２に記載のデバイス管理装置。
【請求項４】
前記更新部は、前記デバイスが前記第２更新のための通信に用いられる所定のプロトコルに対応しているか否かを判定し、前記デバイスが前記プロトコルに対応している場合に、前記状態情報に基づいて前記第１更新または前記第２更新の実行を選択することを特徴とする請求項１〜請求項３のいずれかに記載のデバイス管理装置。
【請求項５】
前記更新部は、前記第１更新のための通信にＳＮＭＰ（Simple Network Management Protocol）を用い、前記第２更新のための通信にＨＴＴＰ（Hyper Text Transfer Protocol）を用いることを特徴とする請求項１〜請求項４のいずれかに記載のデバイス管理装置。
【請求項６】
前記更新データを生成する更新データ生成部を備え、
前記取得部は、前記データベースを前記デバイスから取得し、
前記更新データ生成部は、前記取得された前記データベースを所定の画面に表示させて前記データベースに対する編集を受け付け、受け付けた前記編集に従って前記更新データを生成することを特徴とする請求項１〜請求項５のいずれかに記載のデバイス管理装置。
【請求項７】
前記更新データ生成部は、前記状態情報に基づき前記データベースにおいてロックされていると判定できる領域であるロック領域に対する前記編集の内容は、前記更新データに反映させることなく記憶し、当該記憶後に前記取得部により前記デバイスから取得された新たな前記状態情報に基づき、前記データベースにおいて前記ロック領域のロックが解除されていると判定した場合、前記ロック領域に対する前記編集の内容が記憶されている旨を外部へ通知することを特徴とする請求項６に記載のデバイス管理装置。
【請求項８】
データベースを有するデバイスの管理をコンピューターに実行させるデバイス管理プログラムであって、
前記データベースの状態情報を前記デバイスから取得する取得機能と、
前記データベースを更新するための更新データを前記デバイスへ送信し、前記更新データにより前記データベースを更新させる更新機能と、を実行させ、
前記更新機能は、前記状態情報に基づいて、前記更新データの部分データを前記デバイスへ順次送信することにより前記部分データ単位での前記データベースの更新をさせる第１更新と、前記更新データを前記デバイスへ一括送信することにより前記データベースを一括更新させる第２更新と、のいずれかの実行を選択することを特徴とするデバイス管理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デバイス管理装置およびデバイス管理プログラムに関する。
【背景技術】
【０００２】
デバイスが有するデータベースは更新の対象となり得る。
関連技術として、宛先帳管理アプリケーションは、電子メールソフトウェアが受信した電子メールからメール送信元のファクス番号および宛先名を抽出し、このファクス番号および宛先名をファクシミリ装置の宛先帳に登録する宛先帳管理装置が知られている（特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０‐１９９６７１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
データベースの更新をより高速に実行することが求められていた。
本発明は上述の課題に鑑みてなされたものであり、データベースの更新の高速化に寄与するデバイス管理装置およびデバイス管理プログラムを提供する。
【課題を解決するための手段】
【０００５】
本発明の態様の１つは、データベースを有するデバイスを管理するデバイス管理装置であって、前記データベースの状態情報を前記デバイスから取得する取得部と、前記データベースを更新するための更新データを前記デバイスへ送信し、前記更新データにより前記データベースを更新させる更新部と、を備え、前記更新部は、前記状態情報に基づいて、前記更新データの部分データを前記デバイスへ順次送信することにより前記部分データ単位での前記データベースの更新をさせる第１更新と、前記更新データを前記デバイスへ一括送信することにより前記データベースを一括更新させる第２更新と、のいずれかの実行を選択する。
【０００６】
当該構成によれば、更新部は、データベースの状態情報に基づいて第２更新の実行を選択したとき、更新データをデバイスへ一括送信することによりデータベースを一括更新させるため、データベースの状態に応じた適切な更新方法によりデータベースを高速に（短時間で）更新することができる。
【０００７】
本発明の態様の１つは、前記更新部は、前記状態情報に基づき、前記データベースの少なくとも一部の領域がロックされているか否かを判定し、前記データベースの少なくとも一部の領域がロックされている場合には前記第１更新を実行することにより、前記データベースのうちロックされていない領域を前記部分データにより更新させ、前記データベースにロックされている領域が無い場合には前記第２更新を実行するとしてもよい。
当該構成によれば、データベースにロックされている領域が無い状況では、第２更新を実行することによりデータベースの更新を高速化することができる。
【０００８】
本発明の態様の１つは、前記データベースは、情報送信の宛先を複数記述した宛先帳であり、前記デバイスが有する情報送信機能による送信先に設定されている宛先が、前記ロックされた領域であるとしてもよい。
当該構成によれば、デバイスの情報送信機能による送信先に設定されている宛先が宛先帳（データベース）に存在する場合に、データベース全体を一括更新して当該機能を不安定にさせることを、回避することができる。
【０００９】
本発明の態様の１つは、前記更新部は、前記デバイスが前記第２更新のための通信に用いられる所定のプロトコルに対応しているか否かを判定し、前記デバイスが前記プロトコルに対応している場合に、前記状態情報に基づいて前記第１更新または前記第２更新の実行を選択するとしてもよい。
当該構成によれば、更新部は、デバイスが第２更新のための通信に用いられる所定のプロトコルに対応しているか否かを先に判定することで、データベースの状態情報に基づく前記選択が無駄になることを防ぐことができる。
前記更新部は、例えば、前記第１更新のための通信にＳＮＭＰ（Simple Network Management Protocol）を用い、前記第２更新のための通信にＨＴＴＰ（Hyper Text Transfer Protocol）を用いるとしてもよい。
【００１０】
本発明の態様の１つは、デバイス管理装置は、前記更新データを生成する更新データ生成部を備え、前記取得部は、前記データベースを前記デバイスから取得し、前記更新データ生成部は、前記取得された前記データベースを所定の画面に表示させて前記データベースに対する編集を受け付け、受け付けた前記編集に従って前記更新データを生成するとしてもよい。
当該構成によれば、容易にユーザーからデータベースに対する編集を受け付け、受け付けた編集をデータベースの更新に反映させることができる。
【００１１】
本発明の態様の１つは、前記更新データ生成部は、前記状態情報に基づき前記データベースにおいてロックされていると判定できる領域であるロック領域に対する前記編集の内容は、前記更新データに反映させることなく記憶し、当該記憶後に前記取得部により前記デバイスから取得された新たな前記状態情報に基づき、前記データベースにおいて前記ロック領域のロックが解除されていると判定した場合、前記ロック領域に対する前記編集の内容が記憶されている旨を外部へ通知するとしてもよい。
当該構成によれば、ユーザーがデータベースを編集しようとして入力したがデータベースの更新には反映されなかった編集内容が記憶され、その後、データベースにおいて採用可能な状況になった場合にその旨をユーザーに知らせることができる。
【００１２】
本発明の技術的思想は、デバイス管理装置というカテゴリー以外によっても実現される。例えば、当該装置が実行する工程を含んだ方法（デバイス管理方法）や、これら工程をコンピューターに実行させるプログラム（デバイス管理プログラム）を夫々に発明として捉えることが可能である。また、デバイス管理装置とデバイスを含むシステムや、デバイス管理装置によって管理されるデバイスも、それぞれ発明として捉えることができる。
【図面の簡単な説明】
【００１３】
【図１】システムの構成を簡易的に示す図。
【図２】データベース取得処理を示すフローチャート。
【図３】データベースの一部分を例示する図。
【図４】データベース編集処理を示すフローチャート。
【図５】データベース更新処理を示すフローチャート。
【発明を実施するための形態】
【００１４】
以下、各図を参照しながら本発明の実施形態を説明する。なお各図は、本実施形態を説明するための例示に過ぎない。
１．システムの概略的説明：
図１は、本実施形態にかかるシステム１の主要な構成をブロック図により例示している。システム１を、デバイス管理システム、データベース（以下、ＤＢ）管理システム、等と呼んでもよい。システム１は、デバイス２０と、これを管理するデバイス管理装置１０とを含んで構成される。デバイス２０は、更新の対象となるＤＢ２７を有する装置である。デバイス２０は、例えば、印刷機能や、画像読取機能や、ファクス通信機能や、電子メール通信機能等の複数の機能を備えた複合機である。従って、デバイス２０を、プリンター、スキャナー、ファクス、通信機器等と呼んでもよい。
【００１５】
デバイス管理装置１０は、例えば、サーバー、パーソナルコンピューター（ＰＣ）、スマートフォン、タブレット型端末、携帯電話機等によって実現される。システム１を構成するデバイス管理装置１０とデバイス２０とは、有線あるいは無線により通信可能に接続している。デバイス管理装置１０とデバイス２０とは、ネットワーク（インターネットやＬＡＮ）を介して接続していてもよい。
【００１６】
図１の例では、デバイス管理装置１０は、制御部１１、表示部１３、操作受付部１４等を含んでいる。制御部１１は、例えば、ＣＰＵ、ＲＯＭ、ＲＡＭ等を有するＩＣや、その他の記憶媒体等を含んで構成される。制御部１１では、ＣＰＵが、ＲＯＭ等に保存されたプログラム（例えば、管理プログラム１２）に従った演算処理を、ＲＡＭ等をワークエリアとして用いて実行する。また、デバイス管理装置１０は、通信インターフェイス（ＩＦ）１５を有する。通信ＩＦ１５は、外部（デバイス２０等）との通信のための各種通信規格に対応しており、例えばＬＡＮ等のネットワークを介してデバイス２０と接続される。
【００１７】
制御部１１は、管理プログラム１２を実行することにより、データ取得部１２ａ、更新データ生成部１２ｂ、ＤＢ更新部１２ｃ等の各種機能を実現する。
表示部１３は、視覚的情報を表示するための手段であり、例えば、液晶ディスプレイ（ＬＣＤ）や、有機ＥＬディスプレイ等により構成される。表示部１３は、ディスプレイと、当該ディスプレイを駆動するための駆動回路とを含む構成であってもよい。
【００１８】
操作受付部１４は、ユーザーによる操作を受け付けるための手段であり、例えば、物理的なボタンや、タッチパネルや、マウスや、キーボード等によって実現される。むろん、タッチパネルは、表示部１３の一機能として実現されるとしてもよい。また、表示部１３および操作受付部１４を含めて操作パネル等と呼ぶことができる。
【００１９】
一方、デバイス２０は、制御部２１、記憶部２２、表示部２３、操作受付部２４、動作部２５等を含んでいる。制御部２１は、例えば、ＣＰＵ、ＲＯＭ、ＲＡＭ等を有するＩＣや、その他の記憶媒体等を含んで構成される。制御部２１では、ＣＰＵが、ＲＯＭ等に保存されたプログラムに従った演算処理を、ＲＡＭ等をワークエリアとして用いて実行する。記憶部２２には、ＤＢ２７や、デバイス管理情報２８等が記憶されている。記憶部２２は、制御部２１の一部であってもよい。表示部２３および操作受付部２４については、表示部１３および操作受付部１４についての前記説明を準用することができる。さらに、デバイス２０は、外部（デバイス管理装置１０等）との通信のための各種通信規格に対応した通信ＩＦ２６を有する。
【００２０】
動作部２５は、デバイス２０の機能を具体的に実現するための構成の総称である。例えば、動作部２５は、外部からの印刷命令に応じて印刷媒体への印刷を実行する印刷部２５ａや、原稿を光学的に読み取って読取結果（画像データ）を生成する読取部２５ｂや、ファクシミリ送受信を実行するファクス通信部２５ｄや、電子メールの送受信を実行するメール通信部２５ｃ等、様々な機構、構成（アプリケーション等を含んだ構成）を有し得る。
【００２１】
なお、図１では省略しているが、デバイス管理装置１０の通信ＩＦ１５に対して接続するデバイスは、図に示す一台（デバイス２０）に限定されないことは言うまでもない。また当然に、デバイス２０は、通信ＩＦ２６を介してデバイス管理装置１０以外の外部の装置（ＰＣやファクス等）とも通信可能に接続していてもよい。
【００２２】
２．ＤＢ取得処理：
図２は、制御部１１が管理プログラム１２を実行することにより実現するＤＢ取得処理をフローチャートにより示している。
当該ＤＢ取得処理を開始するにあたり、制御部１１は、ＤＢ取得の対象とする外部のデバイスを特定済みである。例えば、制御部１１は、所定のユーザーインターフェイス（ＵＩ）画面を表示部１３に表示させる。そして、制御部１１は、現在、デバイス管理装置１０が通信ＩＦ１５を介して認識可能なデバイスの中から、ＤＢ取得の対象とするデバイスの選択を、ＵＩ画面を通じてユーザーの操作（操作受付部１４を用いた操作）により受け付ける。これにより、制御部１１は、例えば、デバイス２０をＤＢ取得の対象として特定する。
【００２３】
ステップＳ１００では、制御部１１（データ取得部１２ａ）は、ＤＢ取得の対象として特定したデバイス（デバイス２０）から通信サポート情報を取得する。通信サポート情報とは、デバイス２０がどのような通信プロトコルに対応しているかを少なくとも示す情報である。本実施形態では、ある通信プロトコルを第１通信プロトコルと呼んだとき、第１通信プロトコルよりも短時間で大量のデータを通信可能なプロトコルを第２通信プロトコルと呼ぶ。一例として、第１通信プロトコルは、ＳＮＭＰ（Simple Network Management Protocol）であり、第２通信プロトコルは、ＨＴＴＰ（Hyper Text Transfer Protocol）である。ＳＮＭＰは、ＴＣＰ／ＩＰ（Transmission Control Protocol/Internet Protocol ）ネットワークに接続されたデバイス（ＳＮＭＰエージェント）を、ＳＮＭＰマネージャーが管理するためのプロトコルである。
【００２４】
本実施形態の前提として、デバイス管理装置１０は、第１通信プロトコルおよび第２通信プロトコルのいずれにも対応する通信装置である。また、デバイス２０は、少なくとも第１通信プロトコルには対応する通信装置である。従って、通信サポート情報は、デバイス２０が第２通信プロトコルに対応しているか否かを示す情報であるとも言える。
【００２５】
ステップＳ１００では、データ取得部１２ａは、第１通信プロトコルを用いた通信により通信ＩＦ１５を介してデバイス２０に対して通信サポート情報を要求する。通信サポート情報は、例えば、ＭＩＢ（Management Information Base）に含まれている情報である。ＭＩＢとは、ＳＮＭＰエージェント（この場合、デバイス２０）が有する自身の機器情報であり、オブジェクトという単位でアクセス可能な情報群である。記憶部２２に記憶されたデバイス管理情報２８は、このようなＭＩＢであると言える。デバイス２０は、前記要求に対し、第１通信プロトコルを用いて通信ＩＦ２６を介して自身の通信サポート情報を要求発信元のＳＮＭＰマネージャー（この場合、デバイス管理装置１０）へ送信する。この結果、データ取得部１２ａは、デバイス２０の通信サポート情報を取得することができる。
【００２６】
上述の通信サポート情報は、例えば、デバイス２０が第２通信プロトコルに対応しているか否かを示すフラグである。あるいは、上述の通信サポート情報は、例えば、ＭＩＢに記述された特定のＵＲＬ（Uniform Resource Locator）を含む。当該ＵＲＬは、デバイス管理装置１０がデバイス２０のＤＢ２７を取得するためにＨＴＴＰ（第２通信プロトコル）によりアクセスするＤＢ２７の所在を示している。従って、通信サポート情報にこのようなＵＲＬが含まれていれば、デバイス２０は第２通信プロトコルに対応していると言える。
【００２７】
ステップＳ１１０では、データ取得部１２ａは、ステップＳ１００で取得した通信サポート情報に基づいて、デバイス２０が第２通信プロトコルに対応しているか否かを判定する。そして、データ取得部１２ａは、デバイス２０が第２通信プロトコルに対応していれば（ステップＳ１１０において“Ｙｅｓ”）、ステップＳ１２０へ進み、デバイス２０が第２通信プロトコルに対応していなければ（ステップＳ１１０において“Ｎｏ”）、ステップＳ１３０へ進む。
【００２８】
ステップＳ１２０では、データ取得部１２ａは、第２通信プロトコルを用いて通信ＩＦ１５を介してデバイス２０と通信することにより、デバイス２０が有するＤＢ２７の全体を一括取得する。この場合、データ取得部１２ａは、例えばＨＴＴＰを使用する一種のブラウザーとして働き、前記ＵＲＬにより指定されたデバイス２０に接続し、ＤＢ２７を取得するためのコマンド（Ｇｅｔメソッド）を送信する。デバイス２０は、当該コマンドへの応答として、ＤＢ２７を表現したＨＴＭＬ（Hyper Text Markup Language）等のファイルをデバイス管理装置１０へ一括して送信する。この結果、データ取得部１２ａは、デバイス２０のＤＢ２７を一括取得することができる。
【００２９】
デバイス２０が有するＤＢ２７とは、例えば、情報送信の宛先を複数記述した宛先帳である。情報送信の宛先には、例えば、電子メールのアドレス（メールアドレス）や、ファクス番号や、デバイス２０やデバイス管理装置１０やこれら以外の外部の装置の記憶媒体に確保されたフォルダのパス等が該当する。宛先帳を、アドレス帳、宛先名簿、等と呼んでもよい。
【００３０】
図３は、ＤＢ２７の一部分を例示している。図３では、ＤＢ２７をテキストベースのフォーマットにより例示している。図３の例では、情報送信先毎に、宛名（"Name"）、宛先（"Address"）やその他の属性情報が記述されている。ＤＢ２７は、例えば、数千件といった数多くの宛名分の情報を有している。
【００３１】
一方、ステップＳ１３０では、データ取得部１２ａは、第１通信プロトコルを用いて通信ＩＦ１５を介してデバイス２０と通信することにより、デバイス２０が有するＤＢ２７を一部分ずつ取得する。例えば、第１通信プロトコルとしてＳＮＭＰを用いる場合、デバイス管理装置１０とデバイス２０との間では、２５５バイト以下程度の比較的小さいデータサイズを単位として繰り返しデータを送受信する。そのため、データ取得部１２ａは、ＤＢ２７を構成する情報の部分的な情報をデバイス２０から順次受信することにより最終的にＤＢ２７を取得する。
【００３２】
ステップＳ１２０，Ｓ１３０では、データ取得部１２ａは、ＤＢ２７の取得だけでなく、ＤＢ２７の状態情報の取得も実行する。ＤＢ２７の状態情報とは、ＤＢ２７に登録されている情報（例えば、宛先）毎にロック状態であるか否かを示した情報である。例えば、宛先帳としてのＤＢ２７に宛先が２０００件登録されていれば、ＤＢ２７の状態情報は、当該２０００件の宛先それぞれについてロック状態であるか否かを規定している。ＤＢ２７の状態情報も、デバイス管理情報２８（ＭＩＢ）の一部である。
【００３３】
ある宛先が、デバイス２０が有する情報送信機能による送信先に設定されている場合に、当該宛先がロック状態であると表現する。例えば、デバイス２０は、ファクス自動転送機能を有する。ファクス自動転送機能によれば、ファクス通信部２５ｄがファクス信号を外部から受信した時、受信された内容を予め転送先に設定したメールアドレスへメール通信部２５ｃが自動的に送信する。また、ファクス自動転送機能によれば、ファクス通信部２５ｄがファクス信号を外部から受信した時、受信した内容を予め転送先に設定したファクス番号へ自動的にファクス送信する。また例えば、デバイス２０は、スキャン自動転送機能を有する。スキャン自動転送機能によれば、読取部２５ｂが原稿を読み取って生成した画像データを、予め転送先に設定したフォルダへ自動的に送信する。このようにファクス自動転送機能の実現のために予め転送先に設定されたメールアドレスやファクス番号、スキャン自動転送機能の実現のために予め転送先に設定されたフォルダのパス等が、ロック状態の宛先の一例に該当する。
【００３４】
言い換えると、デバイス２０においては、ＤＢ２７に登録されているある宛先がデバイス２０の情報送信機能による送信先に設定されたとき、当該宛先が非ロック状態からロック状態へ切り替わったことを示す情報をデバイス管理情報２８（ＭＩＢ）にＤＢ２７の状態情報の一種として記述する。また、デバイス２０においては、ＤＢ２７に登録されているある宛先がデバイス２０の情報送信機能による送信先の設定から外されたとき、当該宛先がロック状態から非ロック状態へ切り替わったことを示す情報をデバイス管理情報２８（ＭＩＢ）にＤＢ２７の状態情報の一種として記述する。ロック状態とは、変更が禁止された状態であるとも表現できる。データ取得部１２ａは、ステップＳ１２０，Ｓ１３０におけるＤＢ２７の状態情報の取得は、第１通信プロトコルを用いて通信ＩＦ１５を介してデバイス２０と通信することにより実行する。ＤＢ２７の状態情報は、デバイス管理情報２８（ＭＩＢ）の一部であるから、データ取得部１２ａは、第１通信プロトコルに則った通信をデバイス２０との間で実行することにより、ＭＩＢから必要な情報（ＤＢ２７の状態情報）を一部分ずつ順次取得する。
【００３５】
ステップＳ１２０またはステップＳ１３０の実行後、データ取得部１２ａはＤＢ取得処理を終える。データ取得部１２ａは、ステップＳ１２０またはステップＳ１３０でデバイス２０から取得したデータをデバイス管理装置１０が有する所定の記憶領域へ記憶させる。
【００３６】
３．ＤＢ編集処理：
図４は、制御部１１が管理プログラム１２を実行することにより実現するＤＢ編集処理をフローチャートにより示している。ＤＢ編集処理は、ＤＢ取得処理（図２）に続いて実行される。
ステップＳ２００では、制御部１１（更新データ生成部１２ｂ）は、ＤＢ取得処理のステップＳ１２０またはステップＳ１３０により取得されたＤＢ２７を編集するための編集画面を、表示部１３に表示させる。更新データ生成部１２ｂは、例えば、ＤＢ２７の内容を表形式で示した編集画面を表示させる。編集画面もＵＩ画面の一種である。
【００３７】
次に、更新データ生成部１２ｂは、ＤＢ２７に対する編集を受け付ける（ステップＳ２１０）。つまりユーザーは、操作受付部１４を操作することにより、表示部１３に表示された編集画面に対して入力を行い、現在のＤＢ２７の内容を任意に編集する。ただし、更新データ生成部１２ｂは、ＤＢ２７に含まれる情報のうちロック状態の情報（ロック状態の宛先）に対する編集は受け付けない。いずれの宛先がロック状態であるかは、上述のように取得したＤＢ２７の状態情報に基づいて判断することができる。例えば、更新データ生成部１２ｂは、表示部１３に表示した編集画面のうちロック状態の宛名を示す欄についてはグレーアウト表示する等により、ユーザーからの入力を無効にする。
【００３８】
更新データ生成部１２ｂは、ステップＳ２１０において受け付けた編集に従って、更新データを生成する（ステップＳ２２０）。ここでは、ステップＳ２１０において受け付けた編集内容を現在デバイス管理装置１０が記憶するＤＢ２７へ上書きする。これにより、編集後のＤＢ２７つまり更新データが生成される。この結果、デバイス管理装置１０が記憶するＤＢ２７は、ロック状態ではない幾つかの宛先（ファクス番号やメールアドレス）等が変更される。
【００３９】
４．ＤＢ更新処理：
図５は、制御部１１が管理プログラム１２を実行することにより実現するＤＢ更新処理をフローチャートにより示している。ＤＢ更新処理は、ＤＢ編集処理（図４）に続いて実行される。
ステップＳ３００では、制御部１１（ＤＢ更新部１２ｃ）は、ステップＳ１００（図２）で既に取得されている通信サポート情報に基づいて、デバイス２０が第２通信プロトコルに対応しているか否かを判定する。つまり、ステップＳ３００では、ステップＳ１１０（図２）と同様の判定を行う。そして、ＤＢ更新部１２ｃは、デバイス２０が第２通信プロトコルに対応していれば（ステップＳ３００において“Ｙｅｓ”）、ステップＳ３１０へ進み、デバイス２０が第２通信プロトコルに対応していなければ（ステップＳ３００において“Ｎｏ”）、ステップＳ３３０へ進む。
【００４０】
ステップＳ３１０では、ＤＢ更新部１２ｃは、ステップＳ１２０またはステップＳ１３０（図２）のいずれかで既に取得されているＤＢ２７の状態情報に基づいて、ＤＢ２７にロック状態の情報（宛先）が少なくとも一つ以上有るか否かを判定する。そして、ＤＢ２７にロック状態の情報（宛先）が少なくとも一つ以上有れば（ステップＳ３１０において“Ｙｅｓ”）、ステップＳ３３０へ進み、ＤＢ２７にロック状態の情報（宛先）が無ければ（ステップＳ３１０において“Ｎｏ”）、ステップＳ３２０へ進む。
【００４１】
ステップＳ３３０では、ＤＢ更新部１２ｃは、第１通信プロトコルを用いて通信ＩＦ１５を介してデバイス２０と通信することにより、ステップＳ２２０（図４）で生成済みの更新データを一部分ずつ、つまり更新データの部分データを、デバイス２０へ順次送信する。ここでは、更新データ（編集後のＤＢ２７）のうちステップＳ２１０で受け付けた編集により実際に上書きされた領域を部分データと呼ぶ。このように部分データをデバイス２０へ順次送信することにより、部分データ単位でデバイス２０にＤＢ２７を更新させることができる。デバイス２０は、第１通信プロトコルによりデバイス管理装置１０から送信される部分データを受信する度に、現在自らが保持するＤＢ２７を部分データにより更新（上書き）することを繰り返す。このような部分データによるＤＢ２７の更新を第１更新と呼ぶ。
【００４２】
なお、ＤＢ編集処理（図４）では、ＤＢ２７のうちロック状態の情報は編集の対象とならない。そのため更新データの部分データは、ＤＢ２７のうちロック状態ではない領域の編集後のデータである。従って、第１更新によれば、デバイス管理装置１０は、更新データの部分データをデバイス２０へ順次送信することにより、デバイス２０にＤＢ２７のうちロック状態ではない領域を部分データにより更新させることになる。
【００４３】
一方、ステップＳ３２０では、ＤＢ更新部１２ｃは、第２通信プロトコルを用いて通信ＩＦ１５を介してデバイス２０と通信することにより、ステップＳ２２０（図４）で生成済みの更新データの全体をデバイス２０へ一括送信する。このように更新データを一括でデバイス２０へ送信することにより、デバイス２０にＤＢ２７の全体を一括更新させることができる。つまりデバイス２０は、第２通信プロトコルによりデバイス管理装置１０から送信された更新データを、現在自らが保持するＤＢ２７に対してそのまま上書きする。このような更新データによるＤＢ２７全体の更新を第２更新と呼ぶ。なお、デバイス２０が有するＤＢ２７の全体を更新データにより一括更新するといっても、結果的には、デバイス２０が有するＤＢ２７のうち、ＤＢ編集処理（図４）で編集された情報に対応する領域だけが変化することになる。
【００４４】
５．まとめ：
このように本実施形態によれば、ＤＢ２７を有するデバイス２０を管理するデバイス管理装置１０は、ＤＢ２７の状態情報をデバイス２０から取得するデータ取得部１２ａと、ＤＢ２７を更新するための更新データをデバイス２０へ送信し、更新データによりＤＢ２７を更新させるＤＢ更新部１２ｃとを備え、ＤＢ更新部１２ｃは、前記状態情報に基づいて（ステップＳ３１０の判定により）、更新データの部分データをデバイス２０へ順次送信することにより部分データ単位でのＤＢ２７の更新をさせる第１更新（ステップＳ３３０）と、更新データをデバイス２０へ一括送信することによりＤＢ２７を一括更新させる第２更新（ステップＳ３２０）と、のいずれかの実行を選択する。従って、前記状態情報に基づいて第２更新の実行を選択した場合には、高速な第２通信プロトコルを用いて更新データをデバイスへ一括送信してＤＢ２７を一括更新させることができるため、多くの場合データサイズが大きいＤＢ２７を高速に（短時間で）更新することが可能となる。
【００４５】
また本実施形態によれば、ＤＢ更新部１２ｃは、前記状態情報に基づきＤＢ２７の少なくとも一部の領域がロックされているか否かを判定し（ステップＳ３１０）、ＤＢ２７の少なくとも一部の領域がロックされている場合には（ステップＳ３１０において“Ｙｅｓ”）、第１更新を実行することによりＤＢ２７のうちロックされていない領域を部分データにより更新させ、ＤＢ２７にロックされている領域が無い場合には（ステップＳ３１０において“Ｎｏ”）、第２更新を実行すると言える。当該構成によれば、ＤＢ２７にロックされている領域が無い状況では、第２更新（ステップＳ３２０）を実行することによりＤＢ２７の更新を高速化することができる。すなわち、ＤＢ２７の更新処理を、ＤＢ２７の状態に応じて適宜高速化することができる。
【００４６】
また本実施形態によれば、ＤＢ２７は、情報送信の宛先を複数記述した宛先帳であり、デバイス２０が有する情報送信機能による送信先に設定されている宛先が前記ロックされた領域である。ＤＢ２７にロックされている領域が有ると判定できる状況において（ステップＳ３１０において“Ｙｅｓ”）、仮に第２更新（ステップＳ３２０）を実行すると、変更すべきでない宛先（デバイス２０が有する情報送信機能による送信先に設定されている宛先）に不測の変更が生じて当該情報送信機能の働きが不安定になる虞があるが、本実施形態によればこのような情報送信機能の働きが不安定化することを回避できる。
【００４７】
また本実施形態によれば、ＤＢ更新部１２ｃは、デバイス２０が第２更新のための通信に用いられる所定のプロトコル（第２通信プロトコル）に対応しているか否かを判定し（ステップＳ３００）、デバイス２０が第２通信プロトコルに対応している場合に（ステップＳ３００において“Ｙｅｓ”）、ＤＢ２７の状態情報に基づいて第１更新または第２更新の実行を選択する（ステップＳ３１０）。当該構成によれば、ＤＢ更新部１２ｃは、デバイス２０が第２通信プロトコルに対応しているか否かの判定を、ＤＢ２７の状態情報に基づく前記選択（ステップＳ３１０）よりも先に実行することにより、ＤＢ２７の状態情報に基づく前記選択（ステップＳ３１０）が無駄になることを防ぐことができる。
【００４８】
また本実施形態によれば、デバイス管理装置１０は、更新データを生成する更新データ生成部１２ｂを備え、データ取得部１２ａは、ＤＢ２７をデバイス２０から取得し（図１）、更新データ生成部１２ｂは、取得されたＤＢ２７を所定の画面（編集画面）に表示させてＤＢ２７に対する編集を受け付け、受け付けた編集に従って更新データを生成する（図４）。当該構成によれば、容易にユーザーからＤＢ２７に対する編集を受け付け、受け付けた編集をＤＢ２７の更新に反映させることができる。
【００４９】
６．他の実施形態：
本発明は上述の実施形態に限られず、後述するような様々な実施形態を採用可能である。
更新データ生成部１２ｂは、編集画面を介してＤＢ２７に対する編集を受け付ける際（ステップＳ２１０）、ＤＢ２７のうち前記状態情報に基づきロック状態と判定できる領域（ロック領域）に対する編集は上述したように受け付けない。ただし、更新データ生成部１２ｂは、このようなロック領域に対する編集内容はステップＳ２２０で生成する更新データに反映させることなく、記憶するとしてもよい。そして、当該記憶後に、ＤＢ取得処理（図２）が再び実行され、データ取得部１２ａによりデバイス２０から新たに状態情報が取得されたとする。更新データ生成部１２ｂは、このようにデバイス２０から改めて取得されたＤＢ２７の状態情報に基づき、これまでＤＢ２７においてロック領域に該当していた領域のロックが解除されていると判定した場合、当該ロック領域（これまでＤＢ２７においてロック領域に該当していた領域）に対する編集内容が記憶されている旨を外部（ユーザー）へ通知する。
【００５０】
前記ユーザーへの通知は、編集画面上で所定のメッセージを表示することによる通知や、例えばデバイス管理装置１０が有する不図示のスピーカからの音声出力による通知が考えられる。ユーザーは、このような通知を認識したとき、デバイス管理装置１０により現在記憶されている、ＤＢ２７の前回の編集時には受け付けられなかった編集内容を、編集画面上で視認し、この編集内容を現在の編集画面に入力する操作を行うことができる。これにより、ユーザーは、ＤＢ２７の前回の編集処理時には更新データに反映させられなかった内容を、今回のＤＢ２７の編集処理では更新データに反映させることができるようになる。
【００５１】
第１通信プロトコル、第２通信プロトコルは、上述の具体例（ＳＮＭＰ、ＨＴＴＰ）に限定されない。例えば、第２通信プロトコルは、ＨＴＴＰＳ（Hyper Text Transfer Protocol Secure）であってもよいし、大容量データの高速転送に適した他のプロトコルであってもよい。
【００５２】
ＤＢ更新処理（図５）において、ＤＢ更新部１２ｃが、ステップＳ３００で“Ｙｅｓ”の判定をし、かつステップＳ３１０で“Ｙｅｓ”の判定をした場合に、ステップＳ３２０，Ｓ３３０ではない第３の選択肢が実行されるとしてもよい。当該第３の選択肢においては、ＤＢ更新部１２ｃは、第２通信プロトコルを用いて通信ＩＦ１５を介してデバイス２０と通信することにより、ステップＳ２２０（図４）で生成済みの更新データの全体をデバイス２０へ一括送信する。そして、一括で送信された更新データを受信したデバイス２０は、この更新データに含まれる部分データに基づいて、現在自らが保持するＤＢ２７を部分的に（ロック状態の領域は避けて）上書きするとしてもよい。このような更新データのデバイス２０への一括送信と、デバイス２０における部分データによるＤＢ２７の部分的な更新とを組み合わせた態様を第３更新と呼んでもよい。
【００５３】
上述の実施形態では、ＣＰＵ、ＲＯＭ、ＲＡＭ等を有する制御部１１が、管理プログラム１２を実行することにより、データ取得部１２ａ、更新データ生成部１２ｂ、ＤＢ更新部１２ｃ等の各種機能をソフトウェアにより実現したが、これらの機能の少なくとも一部をハードウェアで実現する構成としてもよい。
【符号の説明】
【００５４】
１…システム、１０…デバイス管理装置、１１…制御部、１２…管理プログラム、１２ａ…データ取得部、１２ｂ…更新データ生成部、１２ｃ…ＤＢ更新部、１３…表示部、１４…操作受付部、１５…通信ＩＦ、２０…デバイス、２１…制御部、２２…記憶部、２３…表示部、２４…操作受付部、２５…動作部、２５ａ…印刷部、２５ｂ…読取部、２５ｃ…メール通信部、２５ｄ…ファクス通信部、２６…通信ＩＦ、２７…ＤＢ、２８…デバイス管理情報
【図１】
2018046457.tif 000003
【図２】
2018046457.tif 000004
【図３】
2018046457.tif 000005
【図４】
2018046457.tif 000006
【図５】
2018046457.tif 000007