説明

画像処理装置及び画像処理方法

【課題】本発明では、装置内の状態通知を行う機能の開発・追加に関し効率良く行うことができる画像処理装置を提供することを目的とする。
【解決手段】開示の画像処理装置の一形態は、装置内で発生したイベントを検知する検知手段と、装置内で発生するイベントと該装置内において取られるべき措置とを対応付けて保持される情報の中から、前記検知手段により検知された前記イベントに対応する措置を選択する措置選択手段と、前記措置選択手段により選択された前記措置を実行する措置実行手段と、を有し、前記装置内において取られるべき措置は、前記イベントが発生した旨を該装置の外部に通知することであることを特徴とする。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像処理装置における装置状態の通知処理の技術に関する。
【背景技術】
【0002】
画像処理装置の内部において、エラー発生やメンテナンス要求などのイベントが発生した場合、ネットワーク上のサーバやユーザ端末に対し、電子メールなどの通知手段を用いて情報通知を行うことが行われる。そして、上記の情報通知を行うために、装置内部で発生したイベントをトリガとして通知手段が起動される。
【発明の概要】
【発明が解決しようとする課題】
【0003】
従来、画像処理装置の情報通知システムにおいて、情報通知の方法は予め当該情報通知システムが備える通知手段に限られる。従って、新規プロトコルへの対応により通知手段を追加する場合、当該情報通知システムを修正し、装置内のソフトウェア全体を更新する必要があるという問題点があった。
【0004】
また、同一の条件での情報通知であっても、通知手段毎に管理する必要があり、実装に重複が多くなるという問題点があった。つまり、どのようなイベントを検知し、検知されたイベント毎にどのような処理を行うかについて通知手段毎に実装する必要があり、開発効率が悪いという問題点があった。
【0005】
そこで、本発明では、装置内の状態通知を行う機能の開発・追加に関し効率良く行うことができる画像処理装置を提供することを目的とする。
【課題を解決するための手段】
【0006】
開示の画像処理装置は、装置内の情報通知システムをフレームワーク化し、イベントトリガー管理手段の一括管理と、イベント通知の手段や送信方法をプラグインで動的に追加及び削除とを容易にすることで、装置内の状態通知を行う機能の開発・追加に関し効率良く行うことができる。
【発明の効果】
【0007】
開示の画像処理装置では、装置内の状態通知を行う機能の開発・追加に関し効率良く行うことができる。
【図面の簡単な説明】
【0008】
【図1】本実施の形態に係る画像処理装置を含むシステムの概要図である。
【図2】本実施の形態に係る画像処理装置のハードウェア構成の一例を示す図である。
【図3】本実施の形態に係る画像処理装置のソフトウェア構成の一例を示す図である。
【図4】本実施の形態に係る機器管理モジュールの機能ブロック図である。
【図5】本実施の形態に係るイベントトリガー管理部で保持するイベントトリガーのテーブル情報の一例である。
【図6】本実施の形態に係る画像処理装置にクライアントモジュールをプラグインする際のシーケンス図である。
【図7】本実施の形態に係る送信用プラグイン管理部で保持する情報の一例を示す図である。
【図8】本実施の形態に係る画像処理装置におけるイベント通知発生時のシーケンス図である。
【図9】本実施の形態に係る画像処理装置におけるイベント通知発生時のシーケンス図である(イベント発生条件のAND条件によるイベント通知発生時)。
【発明を実施するための形態】
【0009】
図面を参照しながら、本発明を実施するための最良の形態について説明する。
(画像処理装置を含むシステムの概要)
図1を用いて、本実施の形態に係る画像処理装置100を含むシステムの概要について説明する。画像処理装置100は、ネットワークNWに接続されている。ネットワークNWは、オフィス内に限定したローカルネットワーク(LAN:Local Area Network)のみで構成されていても良いし、インターネットのような公衆回線及びそれに接続されるLANという構成でも良い。
【0010】
ネットワークNWにはネットワークサーバ900a〜900nが接続されている。ネットワークサーバ900a〜900nは、画像処理装置100からの情報通知を受け取る受信手段をそれぞれ備えている。ここで受信手段は、電子メールを受け取るメールサーバ機能、MIB(Management Information Base)情報を受け取るSNMP(Simple Network Management Protocol)マネージャ機能、SOAP(Simple Object Access Protocol)やREST(Representational State Transfer)に準拠したXML(Extensible Markup Language)メッセージを受け取るWebサーバ機能などがある。
【0011】
ネットワークサーバ900a〜900nそれぞれは、1つ以上の受信手段を備えている。また、画像処理装置100は、ネットワークサーバ900a〜900nの備える受信手段に対応した情報通知手段を備えている。画像処理装置100が情報通知手段により情報を送信すると、情報はネットワークNWを通過し、ネットワークサーバ900a〜900nによって受信される。ネットワークサーバ900a〜900nは、受信した情報に応じてそれぞれ処理を行う。
【0012】
(画像処理装置のハードウェア構成)
図2を用いて、画像処理装置100のハードウェア構成について説明する。図2は、画像処理装置100のハードウェア構成の一例を示す図である。画像処理装置100は、オペレーションパネル210、ファクス制御220、エンジン部250とコントローラ110のASIC(Application Specific Integrated Circuit)180とをPCI(Peripheral Component Interconnect)バス等で接続した構成である。
【0013】
コントローラ110は、ASIC180にRAM(Random Access Memory)170、HDD(Hard Disk Drive)200等を接続すると共に、このASIC180とCPU120とをCPU(Central Processing Unit)チップセットのNB(North Bridge)140を介して接続している。このように、NB140を介して接続する理由は、CPU120自体のインタフェースが公開されていないためである。
【0014】
ここで、ASIC180及びNB140は、単にPCIを介して接続されているのではなく、AGP(Accelerated Graphics Port)160を介して接続されている。このようにAGP160を介して接続することとした理由は、画像処理装置100が後述するプラットフォーム450やアプリケーション430を形成する複数のプロセスを実行制御する関係上、これらの低速のPCIを接続したのでは、パフォーマンスが低下するためである。
【0015】
CPU120は、画像処理装置100の全体制御を行うものであり、具体的には、後述するOS380上でアプリケーション430、サービス440を起動して実行させる。NB140は、CPU120とRAM170、シリアルバス150、ASIC180及びLANポート190とを接続するためのブリッジであり、RAM170は、画像処理装置100の描画用メモリなどとして使用するシステムメモリである。
【0016】
シリアルバス150は、NB140とPCIデバイス、周辺デバイスとを接続するためのブリッジである。RAM170は、コピー用画像バッファ、符号バッファとして使用するローカルメモリであり、ASIC180は、画像処理用のハードウェア要素を有する画像処理用途向けのICである。LANポート190は、ネットワークを介して他の画像処理装置と通信するためのLANケーブルを接続するためのI/F(Interface)である。
【0017】
HDD200は、画像データの蓄積、プログラムの蓄積、フォントデータの蓄積及びフォームの蓄積を行うためのストレージであり、オペレーションパネル210は、操作者からの入力操作の受け付け並びに操作者に向けた表示を行う操作部である。
【0018】
従って、ASIC180には、RAM170を接続するためのRAMインタフェースと、HDD200を接続するためのハードディスクインタフェースが設けられ、これらの記憶部に対して画像データの入出力を行う場合には、入出力先がRAMインタフェースまたはハードディスクインタフェースに切替えられる。
【0019】
AGP160は、グラフィック処理を高速化するために提案されたグラフィックスアクセラレータカード用のバスインタフェースであり、システムメモリに高スループットで直接アクセスすることにより、グラフィックスアクセラレータカードを高速にする。
【0020】
(画像処理装置のソフトウェア構成)
図3を用いて、画像処理装置100のソフトウェア構成について説明する。図3は、画像処理装置100のソフトウェア構成の一例を示す図である。画像処理装置100は、プロッタ400と、スキャナ410と、ファクシミリ220等のハードウェアリソース420等を有すると共に、プラットフォーム450とアプリケーション430とから構成されるソフトウェア群270と、起動部260とを備えている。
【0021】
起動部260は、画像処理装置100の電源投入時に先ず始めに実行され、プラットフォーム450やアプリケーション430を起動する。プラットフォーム450は、OS(Operating System)380とアプリケーション430が装置100内のハードウェア資源を意識しないで処理を実行し、アプリケーション430が共通で使用する機能の提供を行うためのサービス440を有する。
【0022】
サービス440は、複数のサービスモジュールにより形成され、具体的には機器管理モジュール330、コンポーネント管理340、履歴情報サービス350、機内設定アクティビティ360及び機内監視コンポーネント370がある。なお、このプラットフォーム450は、あらかじめ定義された関数により前記アプリケーションからの処理要求を受信可能とするアプリケーションプログラムインタフェースを有する。
【0023】
OS380は、UNIX(登録商標)等のオペレーティング・システムであり、プラットフォーム450及びアプリケーション430の各ソフトウェアをそれぞれプロセスとして並列実行する。オープンソースのUNIX(登録商標)を用いることにより、プログラムの安全性を確保できるとともに、ネットワーク対応可能となり、ソースコードの入手も容易になる。さらに、OS、TCP/IP(Transmission Control Protocol / Internet Protocol)のロイヤリティが不要であり、アウトソーシングも容易となる。
【0024】
コンポーネント管理340は、画像処理装置100にインストールされたコンポーネントを管理する。各コンポーネントの起動・停止や、コンポーネントの情報収集を行う。
【0025】
履歴情報コンポーネント350は、ログやカウンタを管理する。ログには、画像処理装置100にログインやネットワークによるアクセスがあったことを示すアクセスログ、画像処理装置100で発生したジョブの履歴を示すジョブログなどがある。カウンタには、課金対象となるカウンタを示す課金カウンタ、消耗品の使用頻度をカウントするモードカウンタなどがある。
【0026】
機内設定アクティビティ360は、画像処理装置100の各種設定値を参照、設定するためのモジュールである。機内監視コンポーネント370は、画像処理装置100の状態や構成を管理するモジュールである。
【0027】
機器管理モジュール330は、サービス440の各モジュールのI/Fを隠蔽することで、アプリケーション430の各モジュールが画像処理装置100の保持する情報を利用し易くするためのモジュールである。アプリケーション430の各モジュールが自身で利用したい情報を定義し、機器管理モジュール330に登録することで、サービス440の各モジュールが管理する様々な情報を意味のある単位で取得することが可能となる。機器管理モジュール330については、後ほど詳しく説明する。
【0028】
アプリケーション430は、ページ記述言語(PDL:Page Description Language)、PCL(Printer Command Language)及びポストスクリプト(Postscript)を有するプリンタ用のアプリケーションであるプリンタアプリ280、コピー用アプリケーションであるコピーアプリ290、ファクシミリ用アプリケーションであるファクスアプリ300、スキャナ用アプリケーションであるスキャナアプリ310、情報通知を行う通知クライアント320などを有する。なお、画像処理装置100に接続されたネットワークを介して新たなアプリケーションをネットワーク経由で搭載することもできる。また、各アプリケーションはアプリケーション毎に追加または削除することができる。
【0029】
通知クライアント320は、機器管理モジュールから情報通知の依頼を受けて、ネットワーク上のサーバ(ネットワークサーバ900a〜900n)に情報通知を行うモジュールである。通知モジュールは通知手段毎に別のモジュールとして作成され、登録される。通知クライアント320については後ほど詳しく説明する。
【0030】
(機器管理モジュールの機能)
図4で、通知クライアント320の例として、MIBモジュール460、SOAP Webサービスクライアント470、REST Webサービスクライアント480、Email送信490を示す。また、図4には、機器管理モジュール330とシステムに関連するモジュールとして、コンポーネント管理340、履歴情報コンポーネント350、機内設定アクティビティ360、機内監視コンポーネント370を抜粋し記載している。また、SPやカウンタのデータを永続化し保管するためのモジュールとして、永続情報保管部550を示している。
【0031】
機器管理モジュール330は、プラグイン用I/F500、イベント送信用I/F510、送信用プラグイン管理部520、イベントトリガー管理部530、情報収集部540で構成される。
【0032】
プラグイン用I/F500は、画像処理装置100にプラグインされるクライアントモジュールとのI/Fとなる。プラグイン用I/F500を通じて、機器管理モジュール330が実行するイベント通知の各種クライアントを追加できる。MIBモジュール460、SOAP Webサービスクライアント470、REST Webサービスクライアント480、Email送信490は画像処理装置100にプラグインされるクライアントモジュールであり、プラグイン用I/F500を通じて機器管理モジュール330にこれらを登録することで、MIB、電子メール、Webサービスといった汎用的なネットワークI/Fを利用したイベント通知が可能となる。
【0033】
イベント送信用I/F510は、プラグイン用I/F500で登録したクライアントモジュールに対し、イベント通知の送信依頼を行うためのインタフェースである。汎用的なインタフェースであり、どのクライアントモジュールに対しても共通のパラメータを使って送信依頼を行うことが可能である。
【0034】
送信用プラグイン管理部520は、プラグイン用I/F500で登録されたクライアントモジュールの管理を行う。機器管理モジュール330に登録されているクライアントモジュール及びそのクライアントモジュールに対して送信依頼を行うイベント通知の管理を行い、図7で示すような構造の情報を保持している。イベントトリガー管理部530から、イベントトリガー発生の通知を受け、そのイベントによるイベント送信を必要とするクライアントモジュールを判断し、そのクライアントモジュールに対してイベント送信I/F510を通じて送信依頼を行う。
【0035】
イベントトリガー管理部530は、機器管理モジュール330が送信可能な全イベント通知の管理を行う。管理対象となるイベント通知毎に、イベントの識別子や発生条件等を図5で示すようなテーブル形式で保持している。イベントトリガー管理部530は、情報収集部540から画像処理装置100で発生した事象等を受取り、イベント通知の発生条件を満たした段階で送信用プラグイン管理部520にその旨を通知する。情報収集部540は、機内監視コンポーネント370などの画像処理装置100の各モジュールから装置100内で発生した事象を収集する。
【0036】
(イベントトリガー管理部で保持するテーブル)
図5を用いて、イベントトリガー管理部104で保持するテーブルについて説明する。イベント種別は、電源ONや電力モードなど画像処理装置100のシステム全般に関わるイベント、SC(サービスマンコール)などのエラーのイベント、トナーなどの消耗品の情報など画像処理装置100のメンテナンスに関するイベントなどの種別を表す。イベントIDは、各イベントを一意に識別するための識別子となる。トリガ名は、各イベントの意味を表すイベント通知の名称である。発生条件は、そのイベントのトリガとなる条件を表す。画像処理装置100内のどのモジュールからの情報であるかを表すモジュール名とそのモジュールからの通知及びそのパラメータを対で保持している。例えば、「電源ON」の場合、コンポーネント管理モジュール340から全コンポーネントの起動が通知された段階で、「電源ON」のイベント通知を発生させる。
【0037】
また、「SC発生(SC100)」のように、サービスマンコール100番台が発生した際に送信するイベント通知の場合など、100番台全ての通知を発生条件に記載してOR条件で出すこともできる。同様に、「カートリッジ消耗」のようにAND条件で出すことも可能である。
【0038】
(通知クライアントモジュールの追加)
図6を用いて、通知クライアントモジュール320の追加について説明する。図6は、画像処理装置100にクライアントモジュールをプラグインした場合のシーケンス図である。ここでは、MIBモジュール460がプラグインで追加された場合を例にして説明する。
【0039】
S10でMIBモジュール460が機器管理モジュール330のプラグイン用I/F500に対しプラグイン追加を要求する。その際、プラグインの識別子となるプラグインID、プラグイン名及び送信したいイベント通知のトリガのリストをパラメータとする。イベント通知のトリガのリストに含める情報は、図5で示したテーブルのイベントIDである。
【0040】
次に、S20でプラグイン用I/F500が、送信用プラグイン管理部520に対し、プラグイン情報の追加を要求する。送信用プラグイン管理部103は、機器管理モジュール330に登録された新たなプラグイン情報を図7に示すような形式で保持し、保持に成功した段階でプラグイン用I/F500に登録の成否を含んだ応答を返す。プラグイン用I/F500は応答を受けて、MIBモジュール460にプラグイン登録の成否を含んだ応答を返す。
【0041】
(送信用プラグイン管理部で保持する情報)
図7を用いて、送信用プラグイン管理部520で保持する情報について説明する。図7は、送信用プラグイン管理部520で保持する情報を示した図である。送信用プラグイン管理部520で、機器管理モジュール330に登録されているクライアントモジュールの情報及びそのクライアントモジュールの送信対象となるイベント通知の種類を管理している。
【0042】
プラグインIDは、プラグインを一意に識別する識別子である。プラグインIDとプラグイン名は、図6中のS10で示すように、プラグイン時にパラメータとして渡される。イベントは、そのプラグインが送信対象とするイベント通知の種類を表す。種類は、図5で示すイベントトリガー管理部530で保持するイベントで示すイベントIDであり、それをリストとして保持する。プラグインの情報とセットでこのリストを保持する。上記のようにすることで、使用するプラグインを常に決まった方法で決定することができ、システムをシンプルにすることができる。
【0043】
(イベント通知発生時の処理)
図8を用いて、機器100内部で発生した事象に基づいたイベント通知送信実行について説明する。図8は、イベント通知発生時のシーケンス図である。図8では、例として「電源ON」のイベント通知の送信時のシーケンスを示す。はじめに、S30でコンポーネント管理340が、画像処理装置100内の全コンポーネントの起動完了を検知し、機器管理モジュール1216の情報収集部540に全コンポーネントの起動を通知する。
【0044】
次に、S40で情報収集部540がコンポーネント管理340から全コンポーネントの起動の通知があった旨を、イベントトリガー管理部530に通知する。S50でイベントトリガー管理部530が、コンポーネント管理550からの全コンポーネントの起動について、図5で示すテーブルに基づきイベント通知「電源ON」のトリガであることを判断し、送信用プラグイン管理部520に「電源ON」のイベント発生を通知する。
【0045】
S60・S80で送信用プラグイン管理部520が、「電源ON」のイベント通知について、図7で示す情報に基づき「MIB」及び「REST Webサービス」のクライアントで送信が必要なことを判断し、イベント送信用I/F510に送信依頼を出す。S70・S90でイベント送信用I/F510が、送信依頼に含まれるプラグイン情報に基づき、該当クライアントモジュールに「電源ON」のイベント通知を実行するよう通知する。上記処理のように、画像処理装置100は、発生させるイベントの選択を常に決まった方法で行うことができ、システムをシンプルにすることができる。
【0046】
(AND条件によるイベント通知発生時の処理)
図9を用いて、装置100内部で発生した事象に基づいたイベント通知送信実行について説明する。図9は、イベント発生条件のAND条件によるイベント通知発生時のシーケンス図である。図9では、例として「カートリッジ消耗」のイベント通知の送信時のシーケンスを示す。はじめに、S100で機内監視コンポーネント580が、廃トナー残量が「0」となったことを検知し、機器管理モジュール330の情報収集部540にその旨を通知する。
【0047】
次に、S110で情報収集部540が機内監視コンポーネント580から廃トナー残量が「0」であることを知らせる通知があった旨を、イベントトリガー管理部530に通知する。イベントトリガー管理部530は、機内監視コンポーネント580からの廃トナー残量が「0」であることの通知は、図5で示すテーブルに基づきイベント通知「カートリッジ消耗」のトリガの一部であることを判断する。AND条件のため、このタイミングではまだイベント通知は行わない。
【0048】
その後、S120で機内設定アクティビティ570が、あるSP番号の値が50に変更されたことを検知し、機器管理モジュール330の情報収集部540にその旨を通知する。次に、S130で情報収集部540が機内設定アクティビティ570から通知があった旨を、イベントトリガー管理部530に通知する。イベントトリガー管理部104は、機内設定アクティビティ1219からあるSP番号の値が50に変更された旨の通知について、図5で示すテーブルに基づきイベント通知「カートリッジ消耗」のトリガの一部であることを判断する。
【0049】
これで条件が満たされたため、S140でイベントトリガー管理部530が送信用プラグイン管理部103に「カートリッジ消耗」のイベント発生を通知する。S150で送信用プラグイン管理部520が、「カートリッジ消耗」のイベント通知は、図7で示す情報に基づきREST Webサービスクライアント480で送信が必要なことを判断し、イベント送信用I/F510に送信依頼を出す。S160でイベント送信用I/F510が、送信依頼に含まれるプラグイン情報に基づき、該当クライアントモジュールに「カートリッジ消耗」のイベント通知を実行するよう通知する。上記処理のように、柔軟な条件記述が可能になり、情報通知の利便性が向上する。
【0050】
以上、本発明の実施の形態について詳述したが、本発明は係る特定の実施の形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲において、種々の変形・変更が可能である。
【符号の説明】
【0051】
100 画像処理装置、110 コントローラ、120 CPU、130 RAM、140 NB、150 シリアルバス、160 AGP、170 RAM、180 ASIC、190 LANポート、200 HDD、210 操作部(オペレーションパネル)、220 ファクス制御、230 プロッタ、240 スキャナ、250 エンジン部、260 起動部、270 ソフトウェア群、280 プリンタアプリ、290 コピーアプリ、300 ファクスアプリ、310 スキャナアプリ、320 通知クライアント、330 機器管理モジュール、340 コンポーネント管理、350 履歴情報コンポーネント、360 機内設定アクティビティ、370 機内監視コンポーネント、380 OS、390 エンジンI/F、400 プロッタ、410 スキャナ、420 その他ハードウェアリソース、430 アプリケーション、440 サービス、450 プラットフォーム、460 MIBモジュール、470 SOAP Webサービスクライアント、480 REST Webサービスクライアント、490 Email送信、500 プラグインI/F、510 イベント送信I/F、520 送信用プラグイン管理部、530 イベントトリガー管理部、540 情報収集部、550 永続情報保管部、900a〜900n ネットワークサーバ、NW ネットワーク
【先行技術文献】
【特許文献】
【0052】
【特許文献1】特開2005−301999号公報

【特許請求の範囲】
【請求項1】
装置内で発生したイベントを検知する検知手段と、
装置内で発生するイベントと該装置が取るべき措置とを対応付けて保持される情報の中から、前記検知手段により検知された前記イベントに対応する措置を選択する措置選択手段と、
前記措置選択手段により選択された前記措置を実行する措置実行手段と、を有し、
前記装置が取るべき措置は、前記イベントが発生した旨を該装置の外部に通知することであることを特徴とする画像処理装置。
【請求項2】
前記検知手段は、複数の前記イベントを検知し、
前記措置選択手段は、前記複数のイベントに対応する措置を選択することを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記措置実行手段は、当該装置に登録されたプラグインによる制御によって前記措置を実行することを特徴とする請求項1又は2に記載の画像処理装置。
【請求項4】
前記措置選択手段は、前記検知手段により検知されたイベントに対応する措置として、複数の措置を選択することを特徴とする請求項1乃至3の何れか一に記載の画像処理装置。
【請求項5】
検知手段が、装置内で発生したイベントを検知するステップと、
措置選択手段が、装置内で発生するイベントと該装置が取るべき措置とを対応付けて保持される情報の中から、前記検知手段により検知された前記イベントに対応する措置を選択するステップと、
措置実行手段が、前記措置選択手段により選択された前記措置を実行するステップと、を含み、
前記装置が取るべき措置は、前記イベントが発生した旨を該装置の外部に通知することであることを特徴とする画像処理方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate


【公開番号】特開2011−114408(P2011−114408A)
【公開日】平成23年6月9日(2011.6.9)
【国際特許分類】
【出願番号】特願2009−266732(P2009−266732)
【出願日】平成21年11月24日(2009.11.24)
【出願人】(000006747)株式会社リコー (37,907)
【Fターム(参考)】