(57)【要約】      （修正有）【課題】プラグインにより情報処理装置の機能を拡張するに際し、種々の機能を追加付与する際のコストを軽減できる情報処理装置及び画像処理装置を提供する。【解決手段】画像処理装置において、制御装置は、データを出力するデータ出力機器の種類に応じて用意され、このデータ出力機器から出力されたデータを収集する一または複数のデータ収集プラグイン１２４と、データ収集プラグイン１２４からデータを受け取り、管理サーバへ転送する一または複数のデータ送信プラグイン１２５と、データ収集プラグイン１２４およびデータ送信プラグイン１２５の起動および停止を制御するプラグイン制御部１２０と、を備える。【選択図】図６
2020047004.tif 000002
【特許請求の範囲】
【請求項１】
データを出力するデータ出力機器の種類に応じて用意され、当該データ出力機器から出力されたデータを収集する一または複数の第１プラグインと、
前記第１プラグインからデータを受け取り、外部装置へ転送する一または複数の第２プラグインと、
前記第１プラグインおよび前記第２プラグインの起動および停止を制御するプラグイン管理手段と、
を備えることを特徴とする、情報処理装置。
【請求項２】
前記第１プラグインは、
前記データ出力機器からデータを取得するデータ取得機能と、
取得したデータの種類に応じて予め定められた処理を行う処理機能と、
を備えることを特徴とする、請求項１に記載の情報処理装置。
【請求項３】
前記第１プラグインは、前記処理機能による処理の状況に応じて前記データ取得機能によるデータの取得を行うことを特徴とする、請求項２に記載の情報処理装置。
【請求項４】
前記第１プラグインは、前記処理機能による処理に用いられるハードウェア資源の状態に応じて当該処理を実行することを特徴とする、請求項２に記載の情報処理装置。
【請求項５】
前記第２プラグインは、
前記第１プラグインからデータを受信し、受信したデータを蓄積する蓄積機能と、
前記蓄積機能により蓄積されたデータを前記外部装置へ送信する送信機能と、
を備えることを特徴とする、請求項１に記載の情報処理装置。
【請求項６】
前記第２プラグインは、前記送信機能によりデータを送信するまで前記蓄積機能により当該データを蓄積することを特徴とする、請求項５に記載の情報処理装置。
【請求項７】
前記第２プラグインは、前記送信機能によりデータを送信した後に前記蓄積機能により蓄積された当該データを消去することを特徴とする、請求項６に記載の情報処理装置。
【請求項８】
前記第２プラグインは、前記送信機能により、予め定められた時期的条件にしたがって、前記蓄積機能により蓄積されたデータを送信することを特徴とする、請求項５に記載の情報処理装置。
【請求項９】
前記第１プラグインは、取得したデータの種類に応じて、当該データに対する予め定められた処理を実行することを特徴とする、請求項１に記載の情報処理装置。
【請求項１０】
前記プラグイン管理手段は、用意された前記第１プラグインの数に応じて、予め定められた条件にしたがって、当該第１プラグインの起動順を制御することを特徴とする、請求項１に記載の情報処理装置。
【請求項１１】
画像処理を行う画像処理手段と、
前記画像処理手段による画像処理に関するログデータを蓄積するログデータ蓄積手段と、
通信機器から送信されたデータを受信する受信手段と、
データの種類ごとに用意された第１プラグインにより実現され、前記ログデータ蓄積手段に蓄積されたログデータおよび前記受信手段により受信したデータを収集するデータ収集手段と、
前記第１プラグインとは別の第２プラグインにより実現され、前記データ収集手段からデータを受け取り、外部装置へ転送する転送手段と、
を備えることを特徴とする、画像処理装置。
【請求項１２】
前記データ収集手段は、収集したデータの種類に応じて予め定められた処理を行い、
前記転送手段は、前記データ収集手段から前記処理が行われたデータを受け取り、外部装置へ転送することを特徴とする、請求項１１に記載の画像処理装置。
【請求項１３】
前記画像処理手段は、実行した処理のジョブ・ログデータを出力し、
前記ログデータ蓄積手段は、前記ジョブ・ログデータを蓄積し、
前記データ収集手段は、前記ログデータ蓄積手段から収集した前記ジョブ・ログデータの少なくとも一部をハッシュ値に置き換え、
前記転送手段は、少なくとも一部がハッシュ値に置き換えられた前記ジョブ・ログデータを外部装置へ転送することを特徴とする、請求項１１に記載の画像処理装置。
【請求項１４】
前記画像処理手段は、実行した処理の対象である画像のイメージデータを含むイメージ・ログデータを出力し、
前記ログデータ蓄積手段は、前記イメージ・ログデータを蓄積し、
前記データ収集手段は、前記ログデータ蓄積手段から収集した前記イメージ・ログデータに対してＯＣＲ処理を行ってテキストデータを取得し、
前記転送手段は、前記テキストデータを外部装置へ転送することを特徴とする、請求項１２に記載の画像処理装置。
【請求項１５】
前記データ収集手段は、取得した前記テキストデータを対象として予め定められた統計処理を行い、
前記転送手段は、前記統計処理の結果を外部装置へ転送することを特徴とする、請求項１４に記載の画像処理装置。
【請求項１６】
前記データ収集手段は、前記受信手段により受信したデータのうち、少なくとも当該データを送信した前記通信機器を特定するデータを除去し、
前記転送手段は、少なくとも一部が除去されたデータを外部装置へ転送することを特徴とする、請求項１２に記載の画像処理装置。
【請求項１７】
前記データ収集手段は、前記画像処理手段による画像処理が行われていないときに、収集したデータに対して予め定められた処理を行い、
前記転送手段は、前記データ収集手段から前記処理が行われたデータを受け取り、外部装置へ転送することを特徴とする、請求項１１に記載の画像処理装置。
【請求項１８】
前記転送手段は、前記データ収集手段から受け取ったデータを蓄積し、予め定められた時期的条件にしたがって、蓄積した当該データを外部装置へ送信することを特徴とする、請求項１７に記載の画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置および画像処理装置に関する。
【背景技術】
【０００２】
画像形成装置に蓄積されるジョブログを分析し、利用の状況に応じた画像形成装置の台数や機種を提案するサービス（ＭＰＳ：Managed Print Service）がある。下記の特許文献１には、各画像処理装置においてログが記録され、サーバにおいて収集される技術が開示されている。また今日、プラグインの提供により、装置に新たな機能を付与することが行われる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１５−１３５６６３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、付与したい機能は、装置の使用目的や使用環境等に応じて様々であり、種々の機能追加に柔軟に対応することが要請される。
【０００５】
本発明は、情報を収集してサーバへ送信する機能を一つのプラグインで提供する構成と比較して、種々の機能を追加付与する際のコストを軽減させることを目的とする。
【課題を解決するための手段】
【０００６】
請求項１に係る本発明は、
データを出力するデータ出力機器の種類に応じて用意され、当該データ出力機器から出力されたデータを収集する一または複数の第１プラグインと、
前記第１プラグインからデータを受け取り、外部装置へ転送する一または複数の第２プラグインと、
前記第１プラグインおよび前記第２プラグインの起動および停止を制御するプラグイン管理手段と、
を備えることを特徴とする、情報処理装置。
請求項２に係る本発明は、
前記第１プラグインは、
前記データ出力機器からデータを取得するデータ取得機能と、
取得したデータの種類に応じて予め定められた処理を行う処理機能と、
を備えることを特徴とする、請求項１に記載の情報処理装置である。
請求項３に係る本発明は、
前記第１プラグインは、前記処理機能による処理の状況に応じて前記データ取得機能によるデータの取得を行うことを特徴とする、請求項２に記載の情報処理装置である。
請求項４に係る本発明は、
前記第１プラグインは、前記処理機能による処理に用いられるハードウェア資源の状態に応じて当該処理を実行することを特徴とする、請求項２に記載の情報処理装置である。
請求項５に係る本発明は、
前記第２プラグインは、
前記第１プラグインからデータを受信し、受信したデータを蓄積する蓄積機能と、
前記蓄積機能により蓄積されたデータを前記外部装置へ送信する送信機能と、
を備えることを特徴とする、請求項１に記載の情報処理装置である。
請求項６に係る本発明は、
前記第２プラグインは、前記送信機能によりデータを送信するまで前記蓄積機能により当該データを蓄積することを特徴とする、請求項５に記載の情報処理装置である。
請求項７に係る本発明は、
前記第２プラグインは、前記送信機能によりデータを送信した後に前記蓄積機能により蓄積された当該データを消去することを特徴とする、請求項６に記載の情報処理装置である。
請求項８に係る本発明は、
前記第２プラグインは、前記送信機能により、予め定められた時期的条件にしたがって、前記蓄積機能により蓄積されたデータを送信することを特徴とする、請求項５に記載の情報処理装置である。
請求項９に係る本発明は、
前記第１プラグインは、取得したデータの種類に応じて、当該データに対する予め定められた処理を実行することを特徴とする、請求項１に記載の情報処理装置である。
請求項１０に係る本発明は、
前記プラグイン管理手段は、用意された前記第１プラグインの数に応じて、予め定められた条件にしたがって、当該第１プラグインの起動順を制御することを特徴とする、請求項１に記載の情報処理装置である。
請求項１１に係る本発明は、
画像処理を行う画像処理手段と、
前記画像処理手段による画像処理に関するログデータを蓄積するログデータ蓄積手段と、
通信機器から送信されたデータを受信する受信手段と、
データの種類ごとに用意された第１プラグインにより実現され、前記ログデータ蓄積手段に蓄積されたログデータおよび前記受信手段により受信したデータを収集するデータ収集手段と、
前記第１プラグインとは別の第２プラグインにより実現され、前記データ収集手段からデータを受け取り、外部装置へ転送する転送手段と、
を備えることを特徴とする、画像処理装置である。
請求項１２に係る本発明は、
前記データ収集手段は、収集したデータの種類に応じて予め定められた処理を行い、
前記転送手段は、前記データ収集手段から前記処理が行われたデータを受け取り、外部装置へ転送することを特徴とする、請求項１１に記載の画像処理装置である。
請求項１３に係る本発明は、
前記画像処理手段は、実行した処理のジョブ・ログデータを出力し、
前記ログデータ蓄積手段は、前記ジョブ・ログデータを蓄積し、
前記データ収集手段は、前記ログデータ蓄積手段から収集した前記ジョブ・ログデータの少なくとも一部をハッシュ値に置き換え、
前記転送手段は、少なくとも一部がハッシュ値に置き換えられた前記ジョブ・ログデータを外部装置へ転送することを特徴とする、請求項１１に記載の画像処理装置である。
請求項１４に係る本発明は、
前記画像処理手段は、実行した処理の対象である画像のイメージデータを含むイメージ・ログデータを出力し、
前記ログデータ蓄積手段は、前記イメージ・ログデータを蓄積し、
前記データ収集手段は、前記ログデータ蓄積手段から収集した前記イメージ・ログデータに対してＯＣＲ処理を行ってテキストデータを取得し、
前記転送手段は、前記テキストデータを外部装置へ転送することを特徴とする、請求項１２に記載の画像処理装置である。
請求項１５に係る本発明は、
前記データ収集手段は、取得した前記テキストデータを対象として予め定められた統計処理を行い、
前記転送手段は、前記統計処理の結果を外部装置へ転送することを特徴とする、請求項１４に記載の画像処理装置である。
請求項１６に係る本発明は、
前記データ収集手段は、前記受信手段により受信したデータのうち、少なくとも当該データを送信した前記通信機器を特定するデータを除去し、
前記転送手段は、少なくとも一部が除去されたデータを外部装置へ転送することを特徴とする、請求項１２に記載の画像処理装置である。
請求項１７に係る本発明は、
前記データ収集手段は、前記画像処理手段による画像処理が行われていないときに、収集したデータに対して予め定められた処理を行い、
前記転送手段は、前記データ収集手段から前記処理が行われたデータを受け取り、外部装置へ転送することを特徴とする、請求項１１に記載の画像処理装置である。
請求項１８に係る本発明は、
前記転送手段は、前記データ収集手段から受け取ったデータを蓄積し、予め定められた時期的条件にしたがって、蓄積した当該データを外部装置へ送信することを特徴とする、請求項１７に記載の画像処理装置である。
【発明の効果】
【０００７】
請求項１の発明によれば、情報を収集して外部装置（サーバ）へ送信する機能を一つのプラグインで提供する構成と比較して、種々のデータの収集機能を追加付与する際のコストを軽減させることができる。
請求項２の発明によれば、単に情報を収集する機能のみを有するプラグインを提供する構成と比較して、取得するデータの種類に応じて個別に対応して一次処理を実行することができる。
請求項３の発明によれば、起動すると直ちにデータを収集するようにプラグインを制御する構成と比較して、処理機能による処理の実行状況に基づいて要求されるタイミングでデータの収集を行うことができる。
請求項４の発明によれば、データを取得した後、直ちに処理機能による処理を実行する構成と比較して、情報処理装置のハードウェアの負荷を軽減させることができる。
請求項５の発明によれば、情報を収集して外部装置（サーバ）へ送信する機能を一つのプラグインで提供する構成と比較して、複数のプラグインで収集されたデータの送信タイミングを制御することができる。
請求項６の発明によれば、収集したデータを直ちに外部装置（サーバ）へ送信する構成と比較して、データの収集と送信とを非同期に実行することができる。
請求項７の発明によれば、蓄積したデータを保持し続ける構成と比較して、蓄積機能の負荷を軽減し、さらに新たなデータの収集を行う余地を拡大することができる。
請求項８の発明によれば、収集したデータを順次送信する構成と比較して、データの種類や外部装置（サーバ）の状況に応じて柔軟にデータ送信を行うことができる。
請求項９の発明によれば、単に情報を収集する機能のみを有するプラグインを提供する構成と比較して、取得されるデータの種類に応じた処理を個別に設定することができる。
請求項１０の発明によれば、固定的な特定の順番でプラグインを起動させる構成と比較して、プラグインの数に応じてデータ転送効率を向上させることができる。
請求項１１の発明によれば、情報を収集して外部装置（サーバ）へ送信する機能を一つのプラグインで提供する構成と比較して、種々のデータの収集機能を追加付与する際のコストを軽減させることができる。
請求項１２の発明によれば、プラグインごとに単に情報を収集する機能を提供する構成と比較して、取得するデータの種類に応じて個別に対応して一次処理を実行することができる。
請求項１３の発明によれば、収集したデータをそのまま外部装置（サーバ）へ送信する構成と比較して、ジョブ・ログデータの情報量を削減することができる。
請求項１４の発明によれば、収集したデータをそのまま外部装置（サーバ）へ送信する構成と比較して、イメージ・ログデータから得られるテキストを外部装置（サーバ）にて処理可能とすることができる。
請求項１５の発明によれば、収集したデータをそのまま外部装置（サーバ）へ送信する構成と比較して、イメージ・ログデータを読み取ったテキストから得られた統計データを外部装置（サーバ）にて処理可能とすることができる。
請求項１６の発明によれば、収集したデータをそのまま外部装置（サーバ）へ送信する構成と比較して、データの情報量を削減することができる。
請求項１７の発明によれば、データを取得した後、直ちに処理を実行する構成と比較して、画像処理装置のＣＰＵの負荷を軽減することができる。
請求項１８の発明によれば、収集したデータを直ちに外部装置（サーバ）へ送信する構成と比較して、データの収集と転送を非同期に実行可能とすることができる。
【図面の簡単な説明】
【０００８】
【図１】本実施形態が適用される情報処理システムの全体構成を示す図である。
【図２】画像処理装置の構成を示す図である。
【図３】制御装置の機能構成を示す図である。
【図４】管理サーバの機能構成を示す図である。
【図５】プラグイン配信サーバの機能構成を示す図である。
【図６】プラグイン制御部の機能構成を示す図である。
【図７】プラグイン制御部のプラグイン実行時の動作を示すフローチャートである。
【発明を実施するための形態】
【０００９】
以下、添付図面を参照して、本発明の実施の形態について詳細に説明する。
【００１０】
＜システム構成＞
図１は、本実施形態が適用される情報処理システムの全体構成を示す図である。情報処理システムは、情報処理装置の一例としての画像処理装置１００と、管理サーバ２００と、プラグイン配信サーバ３００とを備える。画像処理装置１００と、管理サーバ２００およびプラグイン配信サーバ３００とは、ネットワーク４００を介して接続されている。
【００１１】
画像処理装置１００は、画像の入出力を行うと共に、データ化された画像の処理や通信を行う装置である。また、画像処理装置１００は、自装置や外部装置において取得されるデータを収集し、管理サーバ２００へ送信する。画像処理装置１００は、プラグイン（プログラム）の追加により機能を追加、拡張可能な装置である。
【００１２】
管理サーバ２００は、画像処理装置１００において収集されたデータを受信して保持すると共に、受信したデータを用いて統計処理等の種々のデータ処理を行うサーバである。プラグイン配信サーバ３００は、画像処理装置１００に機能を付加するプラグインを提供するサーバである。
【００１３】
ネットワーク４００は、各装置の間のデータ通信に用いられる通信ネットワークであれば特に限定されず、例えばＬＡＮ（Local Area Network）、ＷＡＮ（Wide Area Network）、インターネット等として良い。データ通信に用いられる通信回線は、有線か無線かを問わず、これらを併用しても良い。また、ゲートウェイ装置やルータ等の中継装置を用い、複数のネットワークや通信回線を介して各装置を接続するように構成しても良い。
【００１４】
＜画像処理装置の構成＞
図２は、画像処理装置１００の構成を示す図である。画像処理装置１００は、画像入力装置１０１と、画像出力装置１０２と、ユーザ・インターフェイス部１０３と、通信インターフェイス部１０４と、記憶装置１０５と、制御装置１１０とを備える。
【００１５】
画像入力装置１０１は、ＩＩＴ（Image Input Terminal）である。画像入力装置１０１は、いわゆるスキャナ装置により構成され、セットされた原稿上の画像を光学的に読み取り、読み取り画像（画像データ）を生成する。画像の読み取り方式としては、例えば、光源から原稿に照射した光に対する反射光をレンズで縮小してＣＣＤ（Charge Coupled Devices）で受光するＣＣＤ方式や、ＬＥＤ（Light Emitting Diode）光源から原稿に順に照射した光に対する反射光をＣＩＳ（Contact Image Sensor）で受光するＣＩＳ方式が用いられる。
【００１６】
画像出力装置１０２は、ＩＯＴ（Image Output Terminal）である。画像出力装置１０２は、いわゆるプリンタ装置により構成され、記録材の一例である用紙に対して、画像形成材を用いて画像データに基づく画像を形成する。記録材に画像を形成する方式としては、例えば、感光体に付着させたトナーを記録材に転写して像を形成する電子写真方式や、インクを記録材上に吐出して像を形成するインクジェット方式等が用いられる。
【００１７】
ユーザ・インターフェイス（ＵＩ）部１０３は、操作画面や情報提示画面等の画面を表示する表示手段と、操作者による入力操作が行われる入力手段とを備える。表示手段に表示された操作画面にしたがって入力手段による入力操作が行われることにより、各種の制御命令や制御データが入力される。表示手段としては、例えば液晶ディスプレイが用いられる。入力手段としては、例えばハードウェア・キーやタッチセンサが用いられる。一例として、表示手段である液晶ディスプレイと入力手段であるタッチセンサとを組み合わせたタッチ・パネルを用いても良い。
【００１８】
通信インターフェイス部１０４は、ネットワーク４００を介して管理サーバ２００やプラグイン配信サーバ３００等の外部機器と接続してデータ交換を行うための接続手段である。特に区別しないが、通信手段の種類に応じて、イーサネット（Ethernet）（登録商標）のネットワーク・ポート、ＵＳＢ（Universal Serial Bus）ポート、無線ＬＡＮ接続やBluetooth（登録商標）による接続のための無線通信装置などが設けられる。通信インターフェイス部１０４は、受信手段の一例である。
【００１９】
記憶装置１０５は、画像入力装置１０１や画像出力装置１０２で用いられる画像データを保持したり、自装置や外部装置から収集されたデータを保持する装置である。また、記憶装置１０５は、後述するログデータを保持し蓄積する。記憶装置１０５は、ログデータ蓄積手段の一例である。記憶装置１０５は、磁気ディスク装置や不揮発性メモリを用いて構成される。
【００２０】
制御装置１１０は、画像処理装置１００の各機能部を制御するコントローラである。制御装置１１０は、情報処理装置の一例である。制御装置１１０は、演算装置であるＣＰＵ（Central Processing Unit）と、各制御機能を実現するプログラムを格納したＲＯＭ（Read Only Memory）と、作業領域として用いられるＲＡＭ（Random Access Memory）とを備えて構成される。制御装置１１０は、初期的に設けられた、画像入力装置１０１、画像出力装置１０２、ユーザ・インターフェイス部１０３、通信インターフェイス部１０４、記憶装置１０５等を制御する基本機能に加え、プラグインにより追加される拡張機能に関する制御を行う。拡張機能の一例として、自装置や外部装置からデータを収集する機能、収集したデータに対する処理を行う機能、収集したデータを管理サーバ２００へ送信する機能等がある。次に、制御装置１１０の機能について詳細に説明する。
【００２１】
＜制御装置の構成＞
図３は、制御装置１１０の機能構成を示す図である。制御装置１１０は、システム制御部１１１と、ジョブ制御部１１２と、ログ管理部１１３と、画像処理部１１４と、プラグイン制御部１２０とを備える。
【００２２】
システム制御部１１１は、画像処理装置１００全体の動作を制御する。すなわち、システム制御部１１１は、画像入力装置１０１、画像出力装置１０２、ユーザ・インターフェイス部１０３、通信インターフェイス部１０４、記憶装置１０５等の動作を制御する。
【００２３】
ジョブ制御部１１２は、画像入力装置１０１や画像出力装置１０２により実行されるジョブの開始、中止、完了を制御する。具体的には、ジョブ制御部１１２は、例えばコピー、プリント、スキャン等のジョブを制御する。
【００２４】
ログ管理部１１３は、画像入力装置１０１や画像出力装置１０２により実行されるジョブのログデータ（ジョブ・ログデータ、以下、ジョブログ）、画像入力装置１０１や画像出力装置１０２により処理された画像ファイルのログデータ（イメージ・ログデータ、以下、イメージログ）を管理する。ジョブログおよびイメージログは、ログ管理部１１３に管理されて記憶装置１０５に保持される。
【００２５】
画像処理部１１４は、画像入力装置１０１や画像出力装置１０２の処理において画像の形成に必要な各種の処理を実行する。画像の形成に必要な処理としては、例えば色補正や階調補正などが挙げられる。画像処理部１１４（制御装置１１０）と、画像入力装置１０１および画像出力装置１０２とは、画像処理手段の一例である。
【００２６】
プラグイン制御部１２０は、プラグイン配信サーバ３００から受信したプラグインの登録、削除、実行を制御する。プラグインは、ファームウェアとは異なるプログラムであり、共通の機能を提供するファームウェアに個別の機能を追加する場合に使用される。プラグイン制御部１２０は、プラグインを動作させるためのプラットフォームも含まれる。例えばＪａｖａ（登録商標） ＶＭ（Virtual Machine）は、Ｊａｖａ言語で記述されたプラグインを動作させるプラットフォームである。プラグイン制御部１２０の機能および本実施形態におけるプラグインの詳細については後述する。
【００２７】
＜管理サーバの構成＞
図４は、管理サーバ２００の機能構成を示す図である。管理サーバ２００は、通信インターフェイス部２０１と、記憶部２０２と、処理部２０３とを備える。通信インターフェイス部２０１は、ネットワーク４００を介して画像処理装置１００と接続してデータ交換を行うための接続手段である。記憶部２０２は、画像処理装置１００から取得したデータを保持する。処理部２０３は、画像処理装置１００から取得したデータを用いた処理を実行する。管理サーバ２００は、単体のサーバマシンにて実現しても良いし、各機能を複数のサーバマシンに分散させて実現しても良い。また、機能の一部あるいは全部をいわゆるクラウド・システムとして構成しても良い。
【００２８】
＜プラグイン配信サーバの構成＞
図５は、プラグイン配信サーバ３００の機能構成を示す図である。プラグイン配信サーバ３００は、通信インターフェイス部３０１と、プラグイン記憶部３０２と、送受信制御部３０３とを備える。通信インターフェイス部３０１は、ネットワーク４００を介して画像処理装置１００と接続してデータ交換を行うための接続手段である。プラグイン記憶部３０２は、画像処理装置１００において登録、実行可能なプラグインを保持する。送受信制御部３０３は、画像処理装置１００から受信した要求に応じて、プラグイン記憶部３０２からプラグインを読み出し、画像処理装置１００へ返送する。
【００２９】
＜プラグイン制御部の構成＞
図６は、プラグイン制御部１２０の機能構成を示す図である。プラグイン制御部１２０は、実行制御部１２１と、管理部１２２と、取得部１２３とを備える。また、プラグイン制御部１２０は、管理部１２２により管理され実行制御部１２１により実行されるプラグインとして、データ収集プラグイン１２４およびデータ送信プラグイン１２５を保持している。なお、以下の説明において、データ収集プラグイン１２４とデータ送信プラグイン１２５とを区別しない場合は、プラグイン１２４、１２５と記載する。
【００３０】
実行制御部１２１は、各プラグインの起動、停止、処理の実行を制御する。すなわち、実行制御部１２１は、個々のプラグイン１２４、１２５ごとの起動条件およびプラグイン１２４、１２５全体に対する制御条件に応じて各プラグイン１２４、１２５を起動させ、個々のプラグイン１２４、１２５ごとの停止条件に応じて各プラグイン１２４、１２５を停止させ、個々のプラグイン１２４、１２５ごとの実行条件およびプラグイン１２４、１２５全体に対する制御条件に応じて各プラグイン１２４、１２５による処理を実行する。実行制御部１２１は、プラグイン管理手段の一例である。
【００３１】
管理部１２２は、プラグイン配信サーバ３００から取得したプラグイン１２４、１２５を登録し、状態を管理する。管理部１２２は、実行制御部１２１から各プラグイン１２４、１２５の動作状態の情報を取得し、プラグイン１２４、１２５ごとに管理しても良い。
【００３２】
取得部１２３は、プラグイン配信サーバ３００からプラグイン１２４、１２５を取得する。取得部１２３は、ユーザ・インターフェイス部１０３により受け付けたユーザによる操作等に応じて必要なプラグインの取得要求をプラグイン配信サーバ３００に送信し、プラグイン配信サーバ３００からの応答により要求したプラグイン１２４、１２５を取得する。取得されたプラグイン１２４、１２５は、管理部１２２により管理される。
【００３３】
データ収集プラグイン１２４は、自装置や外部装置からデータを収集する機能を担うプラグインである。データ収集プラグイン１２４は、第１プラグインの一例であり、データ収集手段の一例である。データ収集プラグイン１２４は、収集されるデータの種類やデータを出力する機器（データ出力機器）の種類に応じて一または複数用意される。収集対象のデータには、例えば、自装置の動作に基づいて収集されるデータとして、実行ジョブの履歴であるジョブログや画像処理の対象である画像のイメージログ等がある。すなわち、画像処理装置１００内のデータ出力機器の一例として、制御装置１１０のログ管理部１１３および記憶装置１０５が挙げられる。
【００３４】
また、外部装置から収集されるデータとして、いわゆるＩｏＴ（Internet of Things）機器等の外部装置にてセンサにより取得されたデータ等がある。外部装置は、データ出力機器の一例であり、通信機器の一例である。外部装置からデータを受信するための通信方式は特に限定されないが、通信方式に応じて個別にプラグインが用意される。例えば、ＢＬＥ（Bluetooth Low Energy）通信によりデータを受信する場合は、ＢＬＥ通信を制御するプラグインが用意され、Ｗｉ−Ｆｉ通信によりデータを受信する場合は、Ｗｉ−Ｆｉ通信を制御するプラグインが用意される。なお、データを収集するために使用される通信方式は、画像処理装置１００の通信インターフェイス部１０４が対応している通信方式に限定される。
【００３５】
図６に示す構成例では、自装置からデータを収集する機能を実現するデータ収集プラグイン１２４として、ジョブログ収集プラグイン１２４ａとイメージログ収集プラグイン１２４ｂとが示されている。また、外部機器からデータを収集する機能を実現するデータ収集プラグイン１２４として、ＢＬＥ通信によりデータを収集するＢＬＥ情報収集プラグイン１２４ｃが示されている。
【００３６】
データ送信プラグイン１２５は、データ収集プラグイン１２４により収集されたデータを管理サーバ２００へ送信する機能を担うプラグインである。データ送信プラグイン１２５は、第２プラグインの一例であり、転送手段の一例である。図６に示す構成例において、データ送信プラグイン１２５は、一つのみが示されているが、複数設けても良い。ただし、本実施形態では、データ収集機能を担うプラグイン（データ収集プラグイン１２４）と分けてデータ送信機能を担うプラグイン（データ送信プラグイン１２５）を設けたことにより、複数のデータ収集プラグイン１２４により収集されたデータを単一の（またはデータ収集プラグイン１２４よりも少ない数の）データ送信プラグイン１２５により管理サーバ２００へ送信することができる。このため、収集されるデータの種類やデータを出力する機器（データ出力機器）の種類に応じて用意されるプラグインにおいて、情報を収集して管理サーバ２００へ送信する機能を一つのプラグインで提供する構成と異なり、データ収集機能を追加するだけで、新たな対象データを収集して管理サーバ２００へ送信することが可能となる。そのため、機能を追加付与する際のコストが軽減される。データ収集プラグイン１２４およびデータ送信プラグイン１２５の詳細については後述する。
【００３７】
＜データ収集プラグインの機能＞
各データ収集プラグイン１２４は、データ取得機能と、処理機能とを有し、実行制御部１２１の制御により、これらの機能による処理を実行する。データ収集プラグイン１２４は、データ取得機能により、対象のデータ出力機器からデータを取得する。例えば、図６に示したジョブログ収集プラグイン１２４ａは、データ取得機能により、制御装置１１０のログ管理部１１３に管理されているジョブログを記憶装置１０５から読み出して取得する。また、図６に示したイメージログ収集プラグイン１２４ｂは、データ取得機能により、制御装置１１０のログ管理部１１３に管理されているイメージログを記憶装置１０５から読み出して取得する。また、図６に示したＢＬＥ情報収集プラグイン１２４ｃは、データ取得機能により、外部機器からＢＬＥ通信にて情報を取得する。
【００３８】
また、各データ収集プラグイン１２４は、処理機能により、収集したデータの種類に応じて予め定められた処理を行う。例えば、図６に示したジョブログ収集プラグイン１２４ａは、処理機能により、ジョブログに記録されたデータの少なくとも一部をハッシュ値に置き換える。置き換え対象のデータとしては、例えば、ユーザＩＤ、ＵＲＬ（Uniform Resource Locator）、ファイル名等が挙げられる。また、図６に示したイメージログ収集プラグイン１２４ｂは、処理機能により、イメージログに記録された画像に含まれるテキストに対してＯＣＲ（Optical Character Recognition）処理を行ってテキストデータを取得する。また、図６に示したイメージログ収集プラグイン１２４ｂは、処理機能により、ＯＣＲ処理で取得したテキストデータに対し、さらに特定の用語（キーワード）や表現の出現状態を調べる統計処理等を行っても良い。また、図６に示したイメージログ収集プラグイン１２４ｂは、処理機能により、外部機器から取得したデータからメーカ名やモデル名等のデータを送信した通信機器を特定する情報を除去する。
【００３９】
データ収集プラグイン１２４は、実行制御部１２１の制御により、処理機能による処理の状況に応じてデータ取得機能によるデータの取得を行うようにしても良い。例えば、処理機能による処理の実行中は、データ出力機器からのアクセス要求を受け付けたり、データを収集する時期的条件を満足しても、データ取得機能によるデータの取得を行わず、処理機能による処理が終了してから新たなデータの取得を行うようにしても良い。
【００４０】
また、データ収集プラグイン１２４は、実行制御部１２１の制御により、処理機能による処理に用いられるハードウェア資源の状態に応じて処理を実行するようにしても良い。例えば、処理機能による処理に制御装置１１０のＣＰＵを使用する場合、画像処理部１１４による画像処理の実行中（ＣＰＵの使用中）はデータ収集プラグイン１２４の処理機能による処理を実行せず、画像処理部１１４による画像処理が行われていないときにデータ収集プラグイン１２４の処理機能による処理を実行するようにしても良い。
【００４１】
＜データ送信プラグインの機能＞
データ送信プラグイン１２５は、蓄積機能と、送信機能とを有し、実行制御部１２１の制御により、これらの機能による処理を実行する。データ送信プラグイン１２５は、蓄積機能により、データ収集プラグイン１２４により収集され、処理されたデータを蓄積する。データは、例えば制御装置１１０のＲＡＭや記憶装置１０５に蓄積される。
【００４２】
また、データ送信プラグイン１２５は、送信機能により、蓄積機能にて蓄積したデータを管理サーバ２００へ送信する。ここで、送信されるデータは、データ収集プラグイン１２４により処理が行われていた場合、処理されたデータとなる。例えば、上記の処理の例に応じて、一部がハッシュ値に置き換えられたジョブログ、ＯＣＲ処理されたテキストデータを含むイメージログ、テキストデータに対して行われた統計処理の結果、通信機器を特定する情報が除去されたデータ等が送信される。
【００４３】
また、データ送信プラグイン１２５は、実行制御部１２１の制御により、予め定められた時期的条件にしたがって、管理サーバ２００へ送信しても良い。時期的条件としては、ＲＴＣ（Real Time Clock）等で特定される具体的な時間であっても良い。また、予め定められた時間間隔により定期的に送信するようにしても良い。また、管理サーバ２００の状態に応じて送信のタイミングを定めるようにしても良い。例えば、管理サーバ２００において負荷が大きい等の理由によりデータの送信を受け付けられない場合、データ送信プラグイン１２５は、一定時間経過後に改めてデータを送信するようにしても良い。
【００４４】
また、データ送信プラグイン１２５は、送信機能によりデータを管理サーバ２００へ送信するまで蓄積機能によりデータを蓄積し、送信機能によりデータを送信した後、そのデータを消去する。
【００４５】
上記のように、プラグイン１２４、１２５の機能による動作制御の他、実行制御部１２１は、取得部１２３により取得され、管理部１２２により管理されているデータ収集プラグイン１２４の数に応じて、予め定められた条件にしたがって、データ収集プラグイン１２４の起動順を制御しても良い。例えば、ジョブログやイメージログのように即時性が重要でないデータを収集するデータ収集プラグイン１２４に関しては、起動順を後に回し、外部機器から取得されるデータを収集するデータ収集プラグイン１２４の起動を先に行うようにしても良い。その他、ラウンドロビン方式や待ち行列による順序制御等、既存の種々の手法を用いてデータ収集プラグイン１２４の起動順を制御して良い。
【００４６】
＜プラグイン制御部の動作＞
図７は、プラグイン制御部１２０のプラグイン１２４、１２５実行時の動作を示すフローチャートである。プラグイン制御部１２０の実行制御部１２１は、起動条件を満足したデータ収集プラグイン１２４を起動する（Ｓ７０１、Ｓ７０２）。起動条件は、データ収集プラグイン１２４ごとに個別に設定しても良いし、統括的な規則として定めても良い。また、上述したように、管理部１２２により管理されているデータ収集プラグイン１２４の数に応じて起動条件（起動順等）を定めても良い。その他、種々の条件を設定し得る。なお、データ送信プラグイン１２５は、各データ収集プラグイン１２４で収集したデータを送信するので、常時起動した状態であっても良いし、データ収集プラグイン１２４が起動されるたびに一緒に起動する等の制御を行っても良い。
【００４７】
次に、実行制御部１２１は、起動したデータ収集プラグイン１２４によるデータ収集の実行条件が満足したならば、データの収集を行う（Ｓ７０３、Ｓ７０４）。実行条件は、例えば上述したように、データ収集プラグイン１２４自身の処理機能による処理の状況に基づいて定められる。また、他のデータ収集プラグイン１２４の動作状態等、種々の条件を設定し得る。
【００４８】
次に、実行制御部１２１は、起動したデータ収集プラグイン１２４において処理機能による処理を実行する場合（実行すべき処理がある場合）、処理の実行条件を満足したならば、処理機能による処理を実行する（Ｓ７０５、Ｓ７０６、Ｓ７０７）。実行条件は、例えば上述したように、画像処理装置１００のハードウェア資源の状態に基づいて定めても良い。その他、種々の条件を設定し得る。なお、データ収集プラグイン１２４の種類や収集されるデータの種類によっては、処理機能による処理を行うことなく、データ取得機能により取得したデータをそのままデータ送信プラグイン１２５に渡す場合もある。
【００４９】
次に、実行制御部１２１は、データ送信プラグイン１２５の蓄積機能により、データ収集プラグイン１２４で収集したデータ（処理機能による処理が行われた場合は処理済みのデータ）を蓄積する（Ｓ７０８）。そして、実行制御部１２１は、蓄積したデータの送信条件を満足したならば、データ送信プラグイン１２５の送信機能により、データを管理サーバ２００へ送信する（Ｓ７０９、Ｓ７１０）。送信条件としては、例えば上述したように、送信データやデータ送信プラグイン１２５ごとに定められた時期的条件や、管理サーバ２００の状態に基づく条件等を定め得る。その他、種々の条件を設定し得る。
【００５０】
この後、実行制御部１２１は、データ送信プラグイン１２５の蓄積機能により蓄積されているデータのうち、送信したデータを消去する（Ｓ７１１）。また、これら一連の動作とは別に、起動したプラグイン１２４、１２５のうち、予め定められた停止条件を満足したプラグイン１２４、１２５を停止させる。
【００５１】
以上、本発明の実施形態について説明したが、本発明の技術的範囲は上記実施形態には限定されない。本発明の技術思想の範囲から逸脱しない様々な変更や構成の代替は、本発明に含まれる。
【符号の説明】
【００５２】
１００…画像処理装置、１０１…画像入力装置、１０２…画像出力装置、１０３…ユーザ・インターフェイス部、１０４…通信インターフェイス部、１０５…記憶装置、１１０…制御装置、１１１…システム制御部、１１２…ジョブ制御部、１１３…ログ管理部、１１４…画像処理部、１２０…プラグイン制御部、１２１…実行制御部、１２２…管理部、１２３…取得部、１２４…データ収集プラグイン、１２５…データ送信プラグイン、２００…管理サーバ、３００…プラグイン配信サーバ、４００…ネットワーク
【図１】
2020047004.tif 000003
【図２】
2020047004.tif 000004
【図３】
2020047004.tif 000005
【図４】
2020047004.tif 000006
【図５】
2020047004.tif 000007
【図６】
2020047004.tif 000008
【図７】
2020047004.tif 000009