JP5072499B2 - 画像形成装置、データ通信装置、データ通信方法、及びデータ通信プログラム - Google Patents

画像形成装置、データ通信装置、データ通信方法、及びデータ通信プログラム Download PDF

Info

Publication number
JP5072499B2
JP5072499B2 JP2007238267A JP2007238267A JP5072499B2 JP 5072499 B2 JP5072499 B2 JP 5072499B2 JP 2007238267 A JP2007238267 A JP 2007238267A JP 2007238267 A JP2007238267 A JP 2007238267A JP 5072499 B2 JP5072499 B2 JP 5072499B2
Authority
JP
Japan
Prior art keywords
function
image forming
forming apparatus
external device
message
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.)
Expired - Fee Related
Application number
JP2007238267A
Other languages
English (en)
Other versions
JP2009071612A (ja
Inventor
耕作 中原
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2007238267A priority Critical patent/JP5072499B2/ja
Publication of JP2009071612A publication Critical patent/JP2009071612A/ja
Application granted granted Critical
Publication of JP5072499B2 publication Critical patent/JP5072499B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Facsimiles In General (AREA)

Description

本発明は、外部機器から要求された所定の処理を行う画像形成装置、外部機器から要求された所定の処理を行う画像形成装置と外部機器との間でデータ通信を行うデータ通信装置、データ通信方法、及びデータ通信プログラムに関するものである。
画像形成装置は、PC(Personal Computer)などの外部機器とネットワークなどの所定のデータ通信手段を介して受け付けた動作要求に応じて、画像形成装置が搭載する機能により要求された処理を行っている。
例えば、特許文献1には、「画像形成装置において、ネットワークに接続された管理サーバからのログ情報の送信要求を、XML(Extensible Markup Language)を利用したSOAP(Simple Object Access Protocol)により受信し、SOAPリスナにより受信した送信要求を解析し、SOAPプロキシにより解析の結果を管理サーバに対してSOAPにより送信する」という画像形成装置が開示されている。
画像形成装置が、外部機器からの要求に応じた情報を応答するケースは、特許文献1に開示されているログ情報のような画像形成装置内で収集された情報の提供や、画像形成装置の電源投入時に行われる画像形成装置が有する機能などの機器情報の提供などがある。
上記情報提供などの所定の処理を、外部機器から画像形成装置に対して要求する場合には、特許文献1に開示されているように、外部機器からの動作要求などを所定の形式で定義した構造化データ(以下、「SOAPメッセージ」という。)を外部機器から画像形成装置へ送信し、画像形成装置が要求に応じて処理を行った後に、その結果をまとめたSOAPデータを外部機器へ送信するというSOAPを利用したメッセージ交換方式が採用されている。
上記「SOAP」とは、XMLをベースとしたメッセージ交換のためのプロトコル仕様で、HTTP(HyperText Transfer Protocol)やSMTP(Simple Mail Transfer Protocol)といったプロトコルの上位に位置し、そのパケットの中で、オブジェクト呼び出しに必要なSOAPメッセージの交換を行うためのプロトコルである。SOAPは、ネットワークなどの電気通信回線を介して、アプリケーションを構成するコンポーネント同士を容易に連携させることを目的としている。また、SOAPは、送受信するSOAPメッセージに、IPアドレスやポート番号などの宛先情報、また所定の処理を指示するアクション情報などのXML文書本体以外の付加情報を付加できる。
このことから、機器同士のメッセージ交換にSOAPを利用することで、例えば、複合機(MFP)が有する機器情報提供機能や、コピー、ファクシミリ、プリンタ、スキャナなどの機能を、外部機器が有する機能と連携するメッセージ交換機能を実現することができる。
特開2004―215309号公報
しかしながら、複合機などのような複数の機能を有する画像形成装置では、各機能が動作するときに使用するメモリ空間が異なるように、それぞれ別のプロセスで動作するように設計されている。このようなマルチプロセス環境では、SOAPモジュールが機能ごとに実装され、メッセージ交換機能を実現している。このような場合、外部装置では、画像形成装置で動作するSOAPモジュールの数だけ宛先情報を管理しなければならない。また、連携対象の画像形成装置の台数によっては、更に多くの宛先情報を管理しなければならない。
このように、従来のメッセージ交換機能では、メッセージ交換のための行う外部機器と画像形成装置との接続が複雑化するという問題点がある。
また、従来のメッセージ交換機能では、SOAPモジュールが機能ごとに実装されていることから、画像形成装置が有するメモリなどの記憶領域を余分に消費してしまっていた(ハードウェア資源を余分に消費してしまっていた)。
本発明では、上記従来技術の問題点に鑑み、データ通信機能によるリソースの消費を軽減し、外部機器が有する機能と画像形成装置が有する機能とを連携することができる画像形成装置、データ通信装置、データ通信方法、及びデータ通信プログラムを提供することを目的とする。
上記目的を達成するため、本発明の画像形成装置は、外部機器からの要求に応じて、当該画像形成装置が有するアプリケーションの情報を含む機器情報を前記外部機器に提供する第1の機能と、前記外部機器からの要求を受け付けた前記アプリケーションにより処理を実行する少なくとも1つ以上の第2の機能とを有する画像形成装置であって、前記外部機器から送信された前記第1の機能又は前記第2の機能に対して処理を要求する要求メッセージを、前記第1の機能及び前記第2の機能とを含む複数の機能に共通して受信する受信手段と、前記第1の機能と前記第2の機能が別のプロセスで動作するマルチプロセス環境において、前記受信手段により受信された前記要求メッセージの所定の情報に基づいて、前記要求メッセージにより要求された処理を行う前記第1の機能又は前記第2の機能のどちらか一方を特定し、特定された前記第1の機能又は前記第2の機能に対して前記要求メッセージの要求内容を通知するメッセージ制御手段とを有することを特徴とする。
また、上記目的を達成するため、本発明の画像形成装置は、前記メッセージ制御手段において、前記要求メッセージの宛先に関する情報及び/又は前記要求メッセージにより要求される処理に関する情報に基づいて、要求された処理を行う前記第1の機能又は前記第2の機能のどちらか一方を特定することを特徴とする。
また、上記目的を達成するため、本発明の画像形成装置は、前記受信手段及び前記メッセージ制御手段を実現するソフトウェア部品が、当該画像形成装置が有する前記第1の機能及び前記第2の機能が動作するプロセスとは別のプロセスで動作することを特徴とする。
また、上記目的を達成するため、本発明の画像形成装置は、前記受信手段及び前記メッセージ制御手段を実現するソフトウェア部品が、同じプロセスで動作することを特徴とする。
また、上記目的を達成するため、本発明の画像形成装置は、前記受信手段において、前記外部機器から送信された前記要求メッセージをSOAP(Simple Object Access Protocol)により受信することを特徴とする。
これによって、本発明の画像形成装置は、外部機器と双方向でメッセージ交換を行うデータ送受信機能を画像形成装置が有する各機能に対して共通化し(各機能に対してSOAPモジュールを共通化し)、共通化されたデータ送受信機能により受信されたメッセージの内容に基づいて、要求された処理を行う機能を特定し、特定された機能に対して要求内容を通知する構成により、ネットワークに接続される複数の外部機器に対して、共通したデータ送受信機能を提供する(データ通信のときに使用するポートを一元化する)ことができ、データ通信機能によるリソースの消費を軽減し、外部機器が有する機能と画像形成装置が有する機能とを連携することができる。
上記目的を達成するため、本発明のデータ通信装置は、外部機器からの要求に応じて、当該画像形成装置が有するアプリケーションの情報を含む機器情報を前記外部機器に提供する第1の機能と、前記外部機器からの要求を受け付けた前記アプリケーションにより処理を実行する少なくとも1つ以上の第2の機能とを有する画像形成装置と、前記外部機器との間で、双方向のデータ通信を行うデータ通信装置であって、前記外部機器から送信された前記第1の機能又は前記第2の機能に対して処理を要求する要求メッセージを受信する受信手段と、前記第1の機能と前記第2の機能とが別のプロセスで動作するマルチプロセス環境において、前記受信手段により受信された前記要求メッセージの所定の情報に基づいて、前記要求メッセージにより要求された処理を行う前記画像形成装置並びに前記画像形成装置が有する前記第1の機能又は前記第2の機能のどちらか一方を特定し、特定された前記画像形成装置が有する前記第1の機能又は前記第2の機能に対して前記要求メッセージの要求内容を通知するメッセージ制御手段とを有することを特徴とする。
また、上記目的を達成するため、本発明のデータ通信装置は、前記メッセージ制御手段において、前記要求メッセージの通知先に関する情報及び/又は前記要求メッセージにより要求される処理に関する情報に基づいて、要求された処理を行う前記画像形成装置並びに前記画像形成装置が有する前記第1の機能又は前記第2の機能のどちらか一方を特定することを特徴とする。
また、上記目的を達成するため、本発明のデータ通信装置は、前記受信手段において、前記外部機器から送信された先記要求メッセージをSOAPにより受信することを特徴とする。
これによって、本発明のデータ通信装置は、外部機器と画像形成装置との間で、双方向のメッセージ交換を行うデータ送受信機能を有し(SOAPモジュールを外部機器や画像形成装置と異なる装置に実装し)、データ送受信機能により外部機器から受信されたメッセージの内容に基づいて、要求された処理を行う画像形成装置とその機能を特定し、特定された画像形成装置の機能に対して要求内容を通知する構成により、ネットワークに接続される複数の外部機器に対して、共通したデータ送受信機能を提供する(データ通信のときに使用するポートを一元化する)ことができ、データ通信機能によるリソースの消費を軽減し、外部機器が有する機能と画像形成装置が有する機能とを連携することができる。
上記目的を達成するため、本発明のデータ通信方法は、外部機器からの要求に応じて、当該画像形成装置が有するアプリケーションの情報を含む機器情報を前記外部機器に提供する第1の機能と、前記外部機器からの要求を受け付けた前記アプリケーションにより処理を実行する少なくとも1つ以上の第2の機能とを有する画像形成装置と、前記外部機器との間で、双方向のデータ通信を行うデータ通信方法であって、前記外部機器から送信された前記第1の機能又は前記第2の機能に対して処理を要求する要求メッセージを、前記第1の機能及び前記第2の機能とを含む複数の機能に共通して受信する受信手順と、前記第1の機能と前記第2の機能とが別のプロセスで動作するマルチプロセス環境において、前記受信手順により受信された前記要求メッセージの所定の情報に基づいて、前記要求メッセージにより要求された処理を行う前記第1の機能又は前記第2の機能のどちらか一方を特定し、特定された前記第1の機能又は前記第2の機能に対して前記要求メッセージの要求内容を通知するメッセージ制御手順とを有することを特徴とする。
また、上記目的を達成するため、本発明のデータ通信方法は、前記メッセージ制御手順において、前記要求メッセージの宛先に関する情報及び/又は前記要求メッセージにより要求される処理に関する情報に基づいて、要求された処理を行う前記第1の機能又は前記第2の機能のどちらか一方を特定することを特徴とする。
また、上記目的を達成するため、本発明のデータ通信方法は、前記受信手順において、前記外部機器から送信された前記要求メッセージをSOAPにより受信することを特徴とする。
これによって、本発明のデータ通信方法は、外部機器と双方向でメッセージ交換を行うデータ送受信機能を画像形成装置が有する各機能に対して共通化し(各機能に対してSOAPモジュールを共通化し)、共通化されたデータ送受信機能により受信されたメッセージの内容に基づいて、要求された処理を行う機能を特定し、特定された機能に対して要求内容を通知することで、ネットワークに接続される複数の外部機器に対して、共通したデータ送受信機能を提供する(データ通信のときに使用するポートを一元化する)ことができ、データ通信機能によるリソースの消費を軽減し、外部機器が有する機能と画像形成装置が有する機能とを連携することができる。
上記目的を達成するため、本発明のデータ通信プログラムは、外部機器からの要求に応じて、当該画像形成装置が有するアプリケーションの情報を含む機器情報を前記外部機器に提供する第1の機能と、前記外部機器からの要求を受け付けた前記アプリケーションにより処理を実行する少なくとも1つ以上の第2の機能とを有する画像形成装置と、前記外部機器との間で、双方向のデータ通信を行うデータ通信プログラムであって、コンピュータを、前記外部機器から送信された前記第1の機能又は前記第2の機能に対して処理を要求する要求メッセージを受信する受信手段と、前記第1の機能と前記第2の機能とが別のプロセスで動作するマルチプロセス環境において、前記受信手段により受信された前記要求メッセージの所定の情報に基づいて、前記要求メッセージにより要求された処理を行う前記第1の機能又は前記第2の機能のどちらか一方を特定し、特定された前記第1の機能又は前記第2の機能に対して前記要求メッセージの要求内容を通知するメッセージ制御手段として機能させる。

これによって、本発明のデータ通信プログラムは、コンピュータを、外部機器と双方向でメッセージ交換を行うデータ送受信機能を画像形成装置が有する各機能に対して共通化し(各機能に対してSOAPモジュールを共通化し)、共通化されたデータ送受信機能により受信されたメッセージの内容に基づいて、要求された処理を行う機能を特定し、特定された機能に対して要求内容を通知するように機能させることができる。
よって、本発明のデータ通信プログラムは、ネットワークに接続される複数の外部機器に対して、共通したデータ送受信機能を提供する(データ通信のときに使用するポートを一元化する)ことができ、データ通信機能によるリソースの消費を軽減し、外部機器が有する機能と画像形成装置が有する機能とを連携することができるデータ通信機能を実現することができる。
本発明によれば、データ通信機能によるリソースの消費を軽減し、外部機器が有する機能と画像形成装置が有する機能とを連携することができる画像形成装置、データ通信装置、データ通信方法、及びデータ通信プログラムを提供することができる。
以下、本発明の好適な実施の形態(以下、「実施形態」という。)について、図面を用いて詳細に説明する。
[第1の実施形態]
<ハードウェア構成>
では、本実施形態に係る画像形成装置100のハードウェア構成について、図1を用いて説明する。図1は、本発明の第1の実施形態に係る画像形成装置100のハードウェア構成の一例を示す図である。
本実施形態に係る画像形成装置100は、操作パネル11と、記憶メディアI/F12と、コントローラ13と、データ通信I/F14と、HDD(Hard Disk Drive)17と、スキャナ15と、プロッタ16とから構成され、それぞれ相互に接続されている。
操作パネル11は、入力装置11aと表示装置11bとを有しており、入力装置11aは、ハードウェアキーなどで構成され、画像形成装置100に各操作信号を入力するのに用いられる。また、表示装置11bは、ディスプレイなどで構成され、例えば画像形成動作に関する各種情報を表示する。データ通信I/F14は、インタフェース装置14aを有しており、画像形成装置100をネットワークなどのデータ伝送路に接続するインタフェースである。HDD17は、画像形成装置100で取り扱われる受信文書データや読み取り画像データなどの各種データを格納している。また、HDD17は、これらの各種データを、所定のファイルシステムやDB(Data Base)により管理している。
HDD17に格納される各種データの中には、例えば、デジタルカメラなどの外部機器によって記録された電子データも含まれる。このような場合には、メモリカードなどの記録媒体12bによって画像形成装置100に提供されるか、データ伝送路であるネットワークなどを通じてアップロードされる。記録媒体12bは、記憶メディアI/F12が有するドライブ装置12aにセットされ各種データが記録媒体12bからドライブ装置12aを介してHDD17に格納される。
コントローラ13は、ROM(Read Only Memory)13a、RAM(Random Access Memory)13b、及びCPU(Central Processing Unit)13cとを有しており、ROM13aは、画像形成装置100が起動されるときに実行されるプログラムや各種データを格納している。また、RAM13bは、ROM13aやHDD17から読み出された各種プログラムやデータを一時保持する。更に、CPU13cは、RAM13bが一時保持しているプログラムを実行する。コントローラ13は、例えば、データ通信I/F14を介して印刷データを受信した場合に、ROM13aからRAM13b上に読み出された、PDL(Page Description Language)を解釈可能なプログラム(PDLパーサ)をCPU13cにより実行し、印刷データを解釈してビットマップイメージを生成する。
スキャナ15は、画像読取装置15aを有しており、読み取り面に配置された原稿を光学的に読み取り画像データを生成する。プロッタ16は、印刷装置16aを有しており、例えば、電子写真プロセス方式によってビットマップイメージを記録紙に印刷する。
このように、本実施形態に係る画像形成装置100では、上記ハードウェア構成により、コピー、プリンタ、ファクシミリ、スキャナなどの複数の機能を実現している。
<ソフトウェア構成>
次に、本実施形態に係る画像形成装置100のソフトウェア構成について、図2を用いて説明する。図2は、本発明の第1の実施形態に係る画像形成装置100のソフトウェア構成の一例を示す図である。
<<画像形成装置>>
本実施形態に係る画像形成装置100は、図1に示したプロッタ16と、スキャナ15と、ファクシミリやHDD17などのハードウェアリソース101などを有するとともに、起動部140により起動されるプラットホーム120とアプリケーション130とから構成されるソフトウェア群110とを備えている。
プラットホーム120は、アプリケーション130からの処理要求を解釈してハードウェア資源の獲得要求を発生させるコントロールサービス150と、1つ以上のハードウェア資源の管理を行い、コントロールサービス150からの獲得要求を調停するSRM(System Resource Manager)123と、OS(Operating System)121とを有する。
コントロールサービスは、複数のサービスモジュールから形成され、SCS(System Control Service)122と、ECS(Engine Control Service)124と、MCS(Memory Control Service)125と、OCS(Operation panel Control Service)126と、FCS(FAX Control Service)127と、NCS(Network Control Service)128とから構成される。
なお、このプラットホーム120は、予め定義されたメソッドによりアプリケーション130から処理要求を受信可能とするAPI(Application Program Interface)103と、プロッタ16やスキャナ15、またその他のハードウェアリソース101などを、ハードウェア資源を利用する上位層からの要求に従ってOS121を介して制御するときのインタフェースであるエンジンI/F102を有する。
OS121は、UNIX(登録商標)などの汎用オペレーティングシステムであり、プラットホーム120並びにアプリケーション130の各ソフトウェアをそれぞれプロセスとして並列実行する。
SRM123は、SCS122とともにシステムの制御およびリソースの管理を行うものであり、プロッタ16やスキャナ15などのエンジン、メモリ、HDDファイル、ホストI/O(例えば、セントロI/F、ネットワークI/F、IEEE1394 I/F、RS232C I/Fなど。)のハードウェア資源を利用する上位層からの要求に従って調停を行い、実行制御する。
具体的には、このSRM123は、要求されたハードウェア資源が利用可能であるか(他の要求により利用されていないかどうか)を判断し、利用可能であれば要求されたハードウェア資源が利用可能である旨を上位層に伝える。また、SRM123は、上位層からの要求に対してハードウェア資源の利用スケジューリングを行い、要求内容(例えば、プリンタエンジンにより紙搬送と作像動作、メモリ確保、ファイル生成など。)を直接実施している。
SCS122は、アプリ管理、操作部制御、システム画面表示、LED(Light Emitting Diode)表示、リソース管理、割り込みアプリ制御を行うものである。ECS124は、プロッタ16、スキャナ15などから構成されるハードウェア資源のエンジンを制御するものである。
MCS125は、画像メモリの取得および解放、HDDの利用、画像データの圧縮および伸張などを行うものである。OCS126は、オペレータと本体制御間の情報伝達手段となる操作パネル11を制御するモジュールである。
FCS127は、システムコントローラの各アプリ層からPSTN(Public Switched Telephone Networks)/ISDN(Integrated Services Digital Network)を利用したファクシミリ送受信、BKM(バックアップSRAM:Static Random Access Memory)で管理されている各種ファクシミリデータの登録/引用、ファクシミリ読みとり、ファクシミリ受信印刷、融合送受信を行うためのAPIを提供するものである。FCS127には、そのサブプロセスであるFCUハンドラ(FCUH)が起動される。このFCUHは、FCS127からの指令によりファクシミリ送受信のときにファクシミリエンジンのデバイスドライバを制御するものである。
NCS128は、ネットワークI/Oを必要とするアプリケーション130に対して共通に利用できるサービスを提供するためのモジュール群である。
本実施形態に係るデータ通信機能は、NCS128が有している。NCS128を構成する具体的なソフトウェア部品(プログラム)については、以降に示す図3を用いて説明する。
アプリケーション130は、PCLやポストスクリプト(PS)などのPDLパーサを有するプリンタ用のアプリケーションであるプリンタアプリ111と、コピー用アプリケーションであるコピーアプリ112と、ファクシミリ用アプリケーションであるファックスアプリ113と、スキャナ用アプリケーションであるスキャナアプリ114と、ネットワークファイル用アプリケーションであるネットファイルアプリ115と、工程検査用アプリケーションである工程検査アプリ116と、配信用のアプリケーションである配信アプリ117とを有している。
これらの各コントロールサービスとSRM123と各アプリケーション130とは、1つ以上のメソッドを有するオブジェクトであり、このオブジェクトを起動することによりそれぞれプロセスとしてOS121上に生成されて実行される。そして、各プロセス内部には、複数のスレッドが起動され、OS121の管理下でこれらのスレッドのCPU占有時間を切り替えることにより並列実行が実現されている。このため、プロセス切り替えによる並列実行と比較して、並列実行時の処理速度の向上が図られている。
各アプリプロセスと各コントロールサービスプロセスとは、メソッドの実行によるプロセス間通信によってメッセージの送受信が行われる。
<<NCS>>
ここからは、本実施形態に係るデータ通信機能を有するNCS128について、図3及び図4を用いて説明する。
(ソフトウェア構成の概要)
図3は、本発明の第1の実施形態に係るNCS128のソフトウェア構成の一例を示す図である。
本実施形態に係るNCS128のソフトウェア構成は、主に、各プロトコルによって受信したデータを各アプリケーション130に振り分けたり、アプリケーション130からデータをネットワーク側に送信する際の仲介を行うモジュール群で構成される。そのモジュール群の中に、本実施形態に係るWS−MFPモジュール群20がある。
ここで上記の「WS」とは、World Wide Web Consortium(W3C)のワーキンググループ(WG)により進められているXMLをベースとした標準化Webサービスの意味である。「WS」については、その詳細が開示されている公開文献「Devices Profile for Web Services」を開示し、ここでの説明を省略する。公開文献の入手先URLは、"http://specs.xmlsoap.org/ws/2006/02/devprof/devicesprofile.pdf"である。また、以降の説明の中で、「WS」がつく機能名やモジュール名は、この標準化Webサービスに準拠して設計された機能やモジュールである。例えば、WS−MFPモジュール群20は、標準化Webサービスに準拠して設計された複合機用のモジュール群を示している。
図3に示すWS−MFPモジュール群20は、外部機器と画像形成装置100が有するプリンタアプリ111との間でプリンタ関連のデータを取り扱うWS−Printer21pや、外部機器と画像形成装置100が有するスキャナアプリ114との間でスキャナ関連のデータを取り扱うWS−Scanner21sと、外部機器と画像形成装置100との間で機器関連のデータを取り扱うDFMモジュール22とから構成され、上記各ソフトウェア部品は、それぞれ別のプロセスで起動され動作するように実装される。
例えば、WS−Printer21pは、DFMモジュール22からのプリンタアプリ111に関する情報の取得要求に応答したり、外部機器からの印刷要求をプリンタアプリ111に通知したりする機能である。DFMモジュール22は、WS−Printer21pやWS−Scanner21sなどからプリンタアプリ111やスキャナアプリ114などのアプリケーション情報を取得し、取得した情報を基に外部機器に対して、画像形成装置100が提供可能な標準化Webサービスに関する情報を含む機器情報を送信する。上記において、DFMモジュール22からWS−Printer21pが保有するプリンタ関連の情報を取得する場合について説明を行ったが、互いに別のプロセスによって動作しているため、プロセス間通信によりデータの送受信を行う。
このように、本実施形態に係る画像形成装置100は、上記構成によるNCS128を有することにより、外部機器と画像形成装置100との間でデータの送受信を行うことができる。
(ソフトウェア構成の詳細)
図4は、本発明の第1の実施形態に係るWS−MFPモジュール群20及びSOAP50のソフトウェア構成の一例を示す図である。
図4に示すように、本実施形態に係るNCS128は、WS−MFPモジュール群20のDFMモジュール22、WS−Printer21p及びWS−Scanner21sに加え、SOAP50とディスパッチャ60とから構成され、上記各ソフトウェア部品は、それぞれ別のプロセスで起動され動作するように実装される。
以下に、DFMモジュール22、WS−Printer21p、WS−Scanner21s、SOAP50、及びディスパッチャ60それぞれを構成する主なソフトウェア部品について説明する。
WS−Printer21pは、PrinterDCP41pとWS−Eventing42pとから構成される。
PrinterDCP41pは、プリンタ機能を利用する外部機器が有する機能(例えばプリンタドライバなど)と画像形成装置100が有するプリンタアプリ111との間で、プリンタ関連のデータを送受信する。また、WS−Eventing42pは、プリンタ機能を利用する外部機器が有する機能から送信された印刷要求などの処理要求イベントを画像形成装置100が有するプリンタアプリ111に通知する。
WS−Printer21pは、このような機能構成により、例えば、外部機器からの印刷要求に従って、画像形成装置100が有するプリンタアプリ111により、受信した画像データの印刷を行い、印刷が完了した旨を外部機器へ通知する処理を実現する。
WS−Scanner21sは、ScannerDCP41sとWS−Eventing42sとから構成される。ScannerDCP41sは、スキャナ機能を利用する外部機器が有する機能(例えば文書管理ソフトウェアなど)と画像形成装置100が有するスキャナアプリ114との間で、スキャナ関連のデータを送受信する。また、WS−Eventing42sは、スキャナ機能を利用する外部機器が有する機能から送信された画像読み取り要求などの処理要求イベントを画像形成装置100が有するスキャナアプリ114に通知する。
WS−Scanner21sは、上記機能構成により、例えば、外部機器からの画像読み取り要求に従って、画像形成装置100が有するスキャナアプリ114により、原稿の読み取りを行い、読み取りが完了した旨を外部機器へ通知する処理を実現する。
DFMモジュール22は、WS−Discovery31と、WS−Transfer32と、WS−MetadataExchenge33と、WSD−Manager34とから構成される。
WS−Discovery31は、標準化Webサービスにより、搭載するアプリケーション機能を提供可能な装置(WS−Device)がネットワークに参加したことを、外部機器が有する機能が検知するためのメッセージを、外部機器と画像形成装置100との間で送受信する。
WS−Transfer32は、画像形成装置100が提供可能な標準化Webサービスに関する情報(機器情報)を通知するメッセージを、外部機器と画像形成装置100との間で送受信する。また、WS−Transfer32は、UDP(User Datagram Protocol)により、外部機器に対して、画像形成装置100がネットワーク200に参加した旨を知らせる(例えば「Hello」コマンドをネットワーク200に接続される全ての外部機器に対してマルチキャストする)。
WS−MetadataExchenge33は、WS−Printer21p及びWS−Scanner21sから取得した各アプリケーションに関する情報などを基に、画像形成装置100が提供可能な標準化Webサービスに関する情報のデータを生成する。
WSD−Manager34は、WS−Discovery31、WS−Transfer32、及びWS−MetadataExchenge33、並びに、WS−Printer21p及びWS−Scanner21sが有する各DCP41p及び41sなどの動作制御・管理を行う。
DFMモジュール22は、上記機能構成により、例えば、標準化Webサービスにより、搭載するアプリケーション機能を提供可能な画像形成装置100の自動検知機能を実現している。
SOAP50は、SOAPメッセージ送受信51と、SOAPメッセージ生成52とから構成される。
SOAPメッセージ送受信51は、下位層にあたるHTTPやSMTPなどの通信プロトコルによりネットワーク200を介して、外部機器と画像形成装置100との間で、SOAPメッセージを送受信する。また、SOAPメッセージ生成52は、WS−MetadataExchange33により生成されたデータを基にSOAPメッセージを生成する。
SOAP50は、このような機能構成により、DFMモジュール22、WS−Printer21p、及びWS−Scanner21sなどから受け取った通信データをSOAPメッセージに変換し、外部機器と画像形成装置100との間のメッセージ交換機能を実現している。また、本実施形態では、SOAP50にオープンソースの「gSOAP」を採用し、WS−MFPモジュール群20が動作するプロセスとは異なるプロセスで動作するように実装する。「gSOAP」については、その詳細が開示されている開発元の公式サイトである「gSOAP:C/C++ Web Services and Clients」へのURL(http://www.cs.fsu.edu/~engelen/soap.html)を開示し、ここでの説明は省略する。
ディスパッチャ60は、SOAPメッセージ受信51を介して外部機器から受信したSOAPメッセージを、SOAPメッセージの内容に応じて、DFMモジュール22、WS−Printer21p、又はWS−Scanner21sに振り分ける(メッセージ内容を通知する)。また、その逆に、DFMモジュール22、WS−Printer21p、又はWS−Scanner21sから受け付けたメッセージ生成要求に従って、SOAP50が有するSOAPメッセージ生成52へデータを送信する。
このように、ディスパッチャ60は、SOAP50を介して、外部機器が有する機能と画像形成装置100が有するWS−MFPモジュール群20との間のSOAPメッセージのディスパッチ機能を実現している。また、本実施形態では、ディスパッチャ60をSOAP50と同一のプロセスで動作するように実装する。
また、ディスパッチャ60の実装により、SOAP50は、DFMモジュール22、WS−Printer21p、及びWS−Scanner21sに対して共通のデータ送受信機能を実現している。
本実施形態に係る画像形成装置100は、上記のようなソフトウェア構成によるNCS128を有しており、外部機器とのメッセージ交換などのデータ通信を行う。
<データ通信機能>
次に、これまで説明を行ってきたハードウェア及びソフトウェア構成を踏まえ、本実施形態に係る画像形成装置100が有する「データ通信機能」について、図5を用いて説明する。図5は、本発明の第1の実施形態に係るデータ通信機能の機能構成の一例を示す図である。
<<機能構成の概要>>
本実施形態に係る画像形成装置100は、主に、外部機器と画像形成装置100との間のSOAPメッセージを送受信するメッセージ送受信部71(受信手段)と、画像形成装置100から外部機器に、標準化Webサービスに関する情報を含む機器情報を提供する機器情報提供部72と、画像形成装置100が有するコピー、ファックス、プリンター、スキャナなどのアプリケーション130に関連する機能を管理するアプリケーション管理部73と、外部機器が有する機能と画像形成装置100が有する機器情報提供部72又はアプリケーション管理部73との間で交換される各種メッセージの振り分けや、メッセージ送受信部71に対して機器情報管理部72又はアプリケーション管理部73からの処理要求を伝達するなどの制御を行うメッセージ制御部74(メッセージ制御手段)とから構成されている。
また、上記各機能部は、図4において説明を行った以下に挙げるソフトウェア部品が、画像形成装置100が有するコントローラ13に配置されたROM13aからRAM13b上に読み出され、CPU13cで実行されることで実現される機能である。
メッセージ送受信部71は、SOAP50が有するSOAPメッセージ送受信51によって実現される機能である。機器情報提供部72は、DFMモジュール22が有する各ソフトウェア部品(WS−Discovery31、WS−Transfer32、WS−MetadataExchange33、及びWSD−Manager34)によって実現される機能である。
また、アプリケーション管理部73は、画像形成装置100が有する基本機能である入力・出力機能に対応する入力部73aと出力部73bとから構成され、入力部73aはWS−Scanner21s、出力部73bはWS−Printer21pによって実現される機能である。メッセージ制御部74は、ディスパッチャ60により実現される機能である。
<<動作概要>>
次に、上記各機能部による本実施形態に係る「データ通信機能」の動作について、「外部機器が標準化Webサービスにより、搭載するアプリケーション機能を提供可能な画像形成装置100を検知する」という動作例を基に説明する。
(1)自動検知コマンドの発行:画像形成装置側
まず、画像形成装置100は、機器情報提供部72により、ネットワーク200に接続される外部機器に対して、標準化Webサービスにより、搭載するアプリケーション機能を提供可能な装置として検知してもらうために、自動検知コマンドを送信する。より具体的には、自動検知コマンド(例えば「Hello」)をUDPによりマルチキャストする。
(2)提供サービスの詳細情報の取得要求:外部機器側
外部機器は、ネットワーク200を介して送信された自動検知コマンドをデータ通信手段により受信すると、画像形成装置100が提供可能なサービスの詳細情報(以下、「提供サービス情報」という。)の取得を要求する要求メッセージ(SOAPメッセージ)を、送信元の画像形成装置100に対して送信する。
(3)提供サービス情報の生成:画像形成装置側
画像形成装置100は、ネットワーク200を介して外部機器から送信された要求メッセージをメッセージ送受信部71により受信する。画像形成装置100は、受信した要求メッセージをメッセージ制御部71により解析し、提供サービス情報を収集可能な機能部を特定する。本実施形態の場合は、画像形成装置100が提供可能な標準化Webサービスに関する情報を含む機器情報を収集可能な機器情報提供部72に、外部機器からの処理要求を通知する。
その結果、画像形成装置100は、機器情報提供部72により、アプリケーション管理部73から提供可能な入出力機能に関する情報を取得し、取得した提供可能な入出力機能に関する情報と他の取得情報(例えば、OS121を介して取得したハードウェア資源に関する情報など。)とを基に機器情報を生成する。
次に、画像形成装置100は、機器情報提供部72により生成された機器情報を、メッセージ制御部74を介してメッセージ送受信部71へ渡す。画像形成装置100は、受け取った機器情報を基に、メッセージ送受信部71により外部機器に提供サービス情報として応答するためのSOAPメッセージを生成する。
(4)提供サービス情報の応答:画像形成装置側
画像形成装置100は、メッセージ送受信部71により、生成したSOAPメッセージを、要求元の外部装置に送信する。
<データ通信機能の詳細>
本実施形態に係る「データ通信機能」において、上記動作の中で、「どのようにして外部機器から送信されたメッセージの要求内容を、該当する要求処理を行う機能部へディスパッチしているのか(振り分けているか)」について詳細に説明する。
本実施形態に係る画像形成装置100では、メッセージ制御部74により、メッセージ送受信部71により受信された要求メッセージの所定の情報に基づいて、要求された所定の処理を行う機能部(機器情報提供部72又はアプリケーション管理部73のどちらか一方)を特定し、特定された機能に対して要求メッセージの要求内容を通知することにより実現している。
<<データ構成>>
メッセージ制御部74が、機能部を特定するときに解析を行う、外部機器から送信されるSOAPメッセージについて、図6を用いて説明する。
図6は、本発明の第1の実施形態に係るSOAPメッセージ81及び82の一例を示す図である。図6(a)には、「WS−Transfer Getメッセージ」の例が示されており、図6(b)には、「WS−Eventing Subscribeメッセージ」の例が示されている。
本実施形態で想定しているXMLベースのSOAPメッセージの構造について簡単に説明する。
(メッセージ構造)
XMLベースのSOAPメッセージの構造において特徴的なのは、「エンベロープ」と言われる構造化定義である。この「エンベロープ」には、Headerタグ(<SOAP−ENV:Header>)によって付帯情報が定義され、SOAPメッセージの通知先の機能部を指定する宛先情報(例えば、「IPアドレス」や「ポート番号」などの文字列データ。)や、要求に応じて処理される所定の処理に関する情報であるアクション情報(例えば、「transfer」や「eventing」などの文字列データ)などが記述されている。後は、その要素として記述されているBobyタグ(<SOAP−ENV:Body>)によってSOAPメッセージ本体が定義され、その中に、XMLエンコードされたメッセージ名とデータが記述されている。よって、このBodyタグの中に要求に応じて所定の処理を行う機能部の呼び出しに必要なパラメータなどが記述されることになる。このように、本実施形態で想定しているSOAPメッセージは、XMLベースであることから、構造化されたデータ形式となっている。このXMLベースのSOAPメッセージは、現在W3CにW3C Noteとして提出され、標準化が進められている。
図6(a)に示すSOAPメッセージ81には、Headerタグ内の文字列"<wsa:Action>http://schemas.xmlsoap.org/ws/2004/09/transfer/Get</wsa:Action>"により、「WS−Transfer Get」の処理に関する情報が記述されている。このSOAPメッセージ81は、画像形成装置100が自動検知コマンドを発行したときに外部機器から送信されるメッセージである。
また、図6(b)に示すSOAPメッセージ82には、Headerタグ内の文字列"<wsa:Action>http://schemas.xmlsoap.org/ws/2004/08/eventing/Subscribe</wsa:Action>"により、「WS−Eventing Subscribe」の処理に関する情報が記述されている。このSOAPメッセージ82は、例えば、画像形成装置100に対して印刷要求を行うときに外部機器から送信されるメッセージである。
<<ディスパッチ処理(メッセージ内容に応じた機能部の特定)>>
以降に、本実施形態に係るメッセージ制御部74で行う、メッセージ内容に応じて機能部を特定するディスパッチ処理について、図6及び図7を用いて説明する。
(メッセージ内容の解析)
本実施形態に係るメッセージ制御部74は、メッセージ送受信部71により受信されたSOAPメッセージ81及び82内に記述された構造化データを解析する。メッセージ制御部74は、予めメッセージ解析用に保持しておいた宛先情報やアクション情報を示す文字列(例えば、IPアドレスを示す"http://192.168"、ポート番号を示す"53"、要求する処理を示す"transfer/Get"、及び"eventing/Subscribe"など。)を基に、構造化データ内に宛先情報及び/又はアクション情報(宛先情報やアクション情報を示す文字列など)が含まれているか否かを検索する。その結果、メッセージ制御部74は、宛先情報及び/又はアクション情報を見つけると、その情報に基づいて、要求された所定の処理を行う機能部(機器情報提供部72又はアプリケーション管理部73のどちらか一方)を特定する。
(解析結果から機能部を特定)
メッセージ制御部74が、図6(a)に示すSOAPメッセージ81を解析した場合、メッセージ内の文字列"<wsa:Action>http://schemas.xmlsoap.org/ws/2004/09/transfer/Get</wsa:Action>"から、アクション情報に該当する文字列"transfer/Get"(図中の破線枠A)を見つけ、要求された処理を行う機器情報提供部72を特定する。
また、図6(b)に示すSOAPメッセージ82を解析した場合、メッセージ内の文字列"<wsa:Action>http://schemas.xmlsoap.org/ws/2004/08/eventing/Subscribe</wsa:Action>"から、アクション情報に該当する文字列"eventing/Subscribe"(図中の破線枠B2)を見つける。
しかし、SOAPメッセージ82のような「WS−Eventing Subscribeメッセージ」の場合には、上記に説明を行ったアクション情報だけでは、最終的な機能部を特定することができない。なぜなら、画像形成装置100が、出力部73aと入力部73bのように、「WS−Eventing Subscribeメッセージ」により要求される機能を複数有する場合がある。このような場合には、メッセージ制御部74は、外部機器から「入力部73a又は出力部73bのどちらの機能部に対して処理要求を行ったのか」を特定しなければならない。そこで、本実施形態では、図7に示すようなデータを予め保持している。
図7は、本発明の第1の実施形態に係る関連付けデータ91のデータ構成の一例を示す図である。図7には、外部機器と画像形成装置100との間でデータを送受信するときのプロトコルの種別を示す「プロトコル種別」と、データ送受信するときに指定されるポートを示す「ポート番号」と、ポート番号に割り当てられた機能部を示す「割り当てアプリ」とから構成される関連付けデータ91の例が示されている。このように、本実施形態では、指定されたポートによりデータの送受信を行う固有の機能部を、図7に示すように、予めテーブル化しデータとして保持しておく。
これによって、メッセージ制御部74は、メッセージ内の文字列"<wsa:To>http://192.168.xxx.xxx:53XX1</wsa:To>"から、宛先情報に該当する文字列"53XX1"(図中の破線枠B1)を見つけると、この文字列を参照キーにして、図7に示す関連付けデータ91を参照し(図中の破線枠C)、該当する「割り当てアプリ」の情報項目に設定されている機能名(図中の"WS-Printer")から、要求された処理を行う出力部73bを特定する。
メッセージ制御部74は、SOAPメッセージ81及び82による要求内容を、特定した各機能部に対して通知する。
このように、本実施形態に係る画像形成装置100は、上記に説明を行った各機能部による構成により、外部機器と双方向でメッセージ交換を行うデータ送受信機能(メッセージ送受信部71)を画像形成装置100が有する各機能(機器情報提供部72及びアプリケーション管理部73)に対して共通化し(各機能に対してSOAPモジュールを共通化し)、共通化されたデータ送受信機能(メッセージ送受信部71)により受信されたメッセージ(SOAPメッセージ81及び82)の内容に基づいて、要求された処理を行う機能(機器情報提供部72、アプリケーション管理部73が有する入力部73a、又は出力部73bのいずれか1つの機能部)を特定し、特定された機能に対して要求内容を通知する。
その結果、画像形成装置100は、ネットワーク200に接続される複数の外部機器に対して、共通したデータ送受信機能を提供する(データ通信のときに使用するポートを一元化する)ことができ、データ通信機能によるリソースの消費を軽減し、自らが搭載した機能と外部機器が有する機能とを連携することができる「データ通信機能」を実現している。
<処理手順>
上記に説明を行った本実施形態に係る「データ通信機能」の具体的な処理手順について図8を用いて説明する。以下に説明する処理手順は、主に、画像形成装置100が有するコントローラ13に配置されたCPU13cで実行されるデータ通信プログラムによって行われる処理である。また、以下の処理手順では、画像形成装置100がプリンタ、また外部機器がクライアント端末300である場合を例に説明する。
<<基本処理手順>>
図8は、本発明の第1の実施形態に係るデータ通信機能の基本処理手順の一例を示すシーケンス図である。
プリンタ100は、ネットワーク200に参加したとき(例えば、「ネットワークケーブルが接続されたとき」や、「ネットワークケーブルが接続された状態で電源が投入されたとき」など。)に、WS−Printer21pにより、DFMモジュール22に提供サービス情報通知が要求し(ステップS101)、要求を受け付けたDFMモジュール22により、ネットワーク200に接続される全てのクライアント端末300に対して自動検知コマンドが送信される(ステップS102)。
クライアント端末300は、自動検知コマンドを、ネットワーク200を介して受信し、送信元のプリンタ100に提供サービス情報の取得を要求するSOAPメッセージ81(「WS−Transfer Getメッセージ」)を発行する(ステップS103)。
プリンタ100は、SOAP50によりクライアント端末300から送信されたSOAPメッセージ81を受信し、受信したSOAPメッセージ81をディスパッチャ60へ渡す(ステップS104)。SOAPメッセージ81を受け取った(Getメッセージのディスパッチ・通知指定を受け取った)ディスパッチャ60は、メッセージを解析し、データ内に含まれる宛先情報及び/又はアクション情報に基づいて、要求された提供サービス情報を収集するDFMモジュール22を特定し、特定されたDFMモジュール22に提供サービス情報の収集要求(Getメッセージを受信した旨)を通知する(ステップS105)。
プリンタ100は、DFMモジュール22により、ステップS101において収集した提供サービス情報を含む機器情報が、ディスパッチャ60を介してSOAP50に渡されることで、クライアント端末300へ応答するための提供サービス情報のメタデータの生成を要求する(ステップS106及びS107)。
プリンタ100は、SOAP50により、要求に応じてメタデータを生成し(ステップS108)、生成したメタデータをディスパッチャ60に渡し、応答するメタデータのディスパッチ及び応答通知を指示する(ステップS109)。ディスパッチャ60により、メタデータを受け取ったディスパッチャ60は、メタデータを解析し、データ内に含まれる宛先情報及び/又はアクション情報に基づいて、メタデータの生成を要求したDFMモジュール22を特定し、特定されたDFMモジュール22にメタデータを生成した旨を通知する(ステップS110)。
プリンタ100は、DFMモジュール22により、GetResponse応答が、ディスパッチャ60を介してSOAP50に渡されることで、クライアント端末300に提供サービス情報の応答を要求する(ステップS111及びS112)。
プリンタ100は、SOAP50により、要求に応じて、提供サービス情報のSOAPメッセージ(「WS−Transfer GetResponseメッセージ」)がクライアント端末300に送信される(ステップS113)。
これによって、クライアント端末300が有する機能とプリンタ100が有する機能とが連携する。
連携後、クライアント端末300は、プリンタ100に、例えば「印刷」などのプリンタ関連処理の要求イベント登録を要求するSOAPメッセージ82(「WS−Eventing Subscribeメッセージ」)を発行する(ステップS114)。
プリンタ100は、SOAP50によりクライアント端末300から送信されたSOAPメッセージ82を受信し、受信したSOAPメッセージ82をディスパッチャ60へ渡す(ステップS115)。SOAPメッセージ82を受け取った(Subscribeメッセージのディスパッチ・通知指定を受け取った)ディスパッチャ60は、メッセージを解析し、データ内に含まれる宛先情報及び/又はアクション情報に基づいて、要求されたプリンタ関連処理要求イベントを登録するWS−Printer21pを特定し、特定されたWS−Printer21pに処理要求イベントの登録要求(Subscribeメッセージを受信した旨)を通知する(ステップS116)。
プリンタ100は、WS−Printer21pによりイベント登録が終了すると、登録応答が発行され、発行された登録応答がディスパッチャ60を介してSOAP50に渡されることで、クライアント端末300にプリンタ関連処理要求イベントの登録応答を要求する(ステップS117及びS118)。
プリンタ100は、SOAP50により、要求に応じて、登録応答のSOAPメッセージ(「Subscribe Responseメッセージ」)がクライアント端末300に送信される(ステップS119)。
これによって、クライアント端末300からプリンタ100に対して画像データの印刷実行を指示する。
クライアント端末300は、ネットワーク200を介してプリンタ100から登録応答を受信すると、印刷可能であると判断し、プリンタ100に、「印刷」を要求するSOAPメッセージ(「Create PrintJobメッセージ」)を発行する(ステップS120)。
プリンタ100は、SOAP50によりクライアント端末300から送信されたSOAPメッセージを受信し、受信したSOAPメッセージをディスパッチャ60へ渡す(ステップS121)。SOAPメッセージを受け取った(Create PrintJobメッセージのディスパッチ・通知指定を受け取った)ディスパッチャ60は、メッセージを解析し、データ内に含まれる宛先情報及び/又はアクション情報に基づいて、要求された画像データの印刷をプリンタアプリ111に実行指示するWS−Printer21pを特定し、特定されたWS−Printer21pに印刷実行の指示要求(Create PrintJobメッセージを受信した旨)を通知する(ステップS122)。
プリンタ100は、プリンタアプリ111により画像データの印刷が行われると、WS−Printer21pにより印刷開始応答(Job ID)が発行され、発行された印刷開始応答がディスパッチャ60を介してSOAP50に渡されることで、クライアント端末300に画像データ印刷の開始応答を要求する(ステップS123及びS124)。
プリンタ100は、SOAP50により、要求に応じて、印刷開始応答のSOAPメッセージ(「Create PrintJobメッセージ(Job ID)」)がクライアント端末300に送信される(ステップS125)。
このように、本実施形態に係るデータ通信プログラムは、本実施形態に係る画像形成装置100において、DFMモジュール22又はWS−Printer21pに対して外部機器から送信されたメッセージを、SOAP50により共通して受信し、ディスパッチャ60により、SOAP50で受信したSOAPメッセージ81及び82を解析し、メッセージの内容に応じて要求内容を通知する機能部を特定するように機能させることができる。
<まとめ>
以上のように、本発明の第1の実施形態によれば、本実施形態に係る画像形成装置100は、外部機器と双方向でメッセージ交換を行うデータ送受信機能を画像形成装置100が有する各機能に対して共通化し(各機能に対してSOAPモジュールを共通化し)、共通化されたデータ送受信機能により受信されたメッセージの内容に基づいて、要求された処理を行う機能を特定し、特定された機能に対して要求内容を通知する。
これによって、本実施形態に係る画像形成装置100は、ネットワーク200に接続される複数の外部機器に対して、共通したデータ送受信機能を提供する(データ通信のときに使用するポートを一元化する)ことができ、データ通信機能によるリソースの消費を軽減し、外部機器が有する機能と画像形成装置100が有する機能とを連携することができる「データ通信機能」を提供することができる。
[第2の実施形態]
本実施形態では、搭載メモリなどのデータ通信プログラムを動作させる資源が少ない画像形成装置の場合を考慮し、データ通信機能によるリソースの消費を軽減し、外部機器が有する機能とローエンドの画像形成装置が有する機能とを連携することができる「データ通信機能」を有するデータ通信装置について説明する。
第1の実施形態に係る画像形成装置では、画像形成装置が有するコントローラに配置されたROMからデータ通信プログラムをRAM上に読み出し、CPUで実行することにより、外部機器が有する機能と画像形成装置が有する機能との連携を実現していた。しかし、本実施形態では、第1の実施形態に係るデータ通信プログラムのうち、SOAPモジュール群を別の装置において実装し、ローエンドの画像形成装置(スペックが低いハードウェアを搭載した画像形成装置)と外部機器との間に上記データ通信装置を配置する構成としたことにより、ローエンドの画像形成装置においても、ネットワークに接続される複数の外部機器に対して、共通したデータ送受信機能を提供する(データ通信のときに使用するポートを一元化する)ことができ、データ通信機能によるリソースの消費を軽減し、外部機器が有する機能とローエンドの画像形成装置が有する機能とを連携することができる。
以降に、本実施形態に係る画像形成装置100a〜nについて、図9及び図10を用いて説明する。また、第1の実施形態と同様の技術的事項については、第1の実施形態で説明を行った図面及び参照符号を用いて本実施形態においての説明を省略する。
<データ通信システム>
図9は、本発明の第2の実施形態に係る画像形成装置100a〜nとデータ通信装置400とから構成されるシステムの一例を示す図である。
図9に示すように、本実施形態に係るデータ通信システムでは、SOAP50(メッセージ送受信部71)及びディスパッチャ60(メッセージ制御部74)の機能を有するデータ通信装置400が、ネットワーク200を介して接続される外部機器と画像形成装置100a〜nとの間に配置される構成となっている。また、データ通信装置400は、複数の画像形成装置100a〜nが接続されることを考慮し、外部機器が接続されるネットワーク200上を流れるデータを、画像形成装置100a〜nが接続されるデータ通信装置400からのネットワークに中継するルーティング機能も有している。
<データ通信機能の詳細>
本実施形態に係るデータ通信装置400が有する「データ通信機能」において行うディスパッチ処理について、図10を用いて説明する。
<<ディスパッチ処理(メッセージ内容に応じた機能部の特定)>>
本実施形態と第1の実施形態との違いは、SOAPメッセージ82である「WS−Eventing Subscribeメッセージ」を受信した場合の処理である。
(解析結果から機能部を特定)
図10は、本発明の第2の実施形態に係るSOAPメッセージ81及び82の一例を示す図である。
メッセージ制御部74が、図10(a)に示すSOAPメッセージ81を解析した場合、メッセージ内の文字列"<wsa:Action>http://schemas.xmlsoap.org/ws/2004/09/transfer/Get</wsa:Action>"から、アクション情報に該当する文字列"transfer/Get"(図中の破線枠A)を見つけ、要求された処理を行う機器情報提供部72を特定する。
また、図10(b)に示すSOAPメッセージ82を解析した場合、メッセージ内の文字列"<wsa:Action>http://schemas.xmlsoap.org/ws/2004/08/eventing/Subscribe</wsa:Action>"から、アクション情報に該当する文字列"eventing/Subscribe"(図中の破線枠B2)を見つける。
しかし、SOAPメッセージ82のような「WS−Eventing Subscribeメッセージ」の場合には、上記に説明を行ったアクション情報だけでは、最終的な機能部を特定することができない。なぜなら、「WS−Eventing Subscribeメッセージ」により要求される機能を有する複数の画像形成装置100a〜nがデータ通信装置400に接続される場合がある。このような場合には、メッセージ制御部74は、外部機器から「どの画像形成装置100a〜nが有する入力部73a又は出力部73bに対して処理要求を行ったのか」を特定しなければならない。そこで、本実施形態に係るデータ通信装置400では、第1の実施形態と同様の関連付けデータ91を予め保持している。
これによって、メッセージ制御部74は、メッセージ内の文字列"<wsa:To>http://192.168.xxx.xxx:53XX1</wsa:To>"から、まず、宛先情報の文字列"http://192.168.xxx.xxx"(図中の破線枠B1a)を見つけると、この文字列を参照キーにして、ルーティング機能で用いるルーティングテーブル(非図示)を参照し、該当するIPアドレスから画像形成装置100a〜nを特定する。更に、メッセージ制御部74は、宛先情報の文字列"53XX1"(図中の破線枠B1b)を見つけると、この文字列を参照キーにして、図7に示す関連付けデータ91を参照し(図中の破線枠C)、該当する「割り当てアプリ」の情報項目に設定されている機能名(図中の"WS-Printer")から、要求された処理を行う出力部73bを特定する。
メッセージ制御部74は、SOAPメッセージ82による要求内容を、特定した画像形成装置100a〜nの各機能部に対して通知する。
このように、本実施形態に係るデータ通信装置400は、上記に説明を行ったメッセージ制御部74を有する構成により、データ通信機能によるリソースの消費を軽減し、外部機器が有する機能とローエンドの画像形成装置100a〜nが有する機能とを連携することができる「データ通信機能」を実現している。
<まとめ>
以上のように、本発明の第2の実施形態によれば、本実施形態に係るデータ通信装置400は、外部機器と双方向でメッセージ交換を行うデータ送受信機能を、複数の画像形成装置100が有する各機能に対して共通化し(各機能に対してSOAPモジュールを共通化し)、共通化されたデータ送受信機能により受信されたメッセージの内容に基づいて、要求された処理を行う画像形成装置100a〜nとその装置が有する機能を特定し、特定された機能に対して要求内容を通知する。
これによって、本実施形態に係るデータ通信装置400は、ネットワーク200に接続される複数の外部機器に対して、共通したデータ送受信機能を提供する(データ通信のときに使用するポートを一元化する)ことができ、データ通信機能によるリソースの消費を軽減し、外部機器が有する機能とローエンドの画像形成装置100が有する機能とを連携することができる「データ通信機能」を提供することができる。
ここまで、上記第1及び第2の実施形態に基づき本発明の説明を行ってきたが、本発明の各実施形態に係る画像形成装置100が有する「データ通信機能」は、図8に示した処理手順を含む本実施形態に係るデータ通信プログラムを、画像形成装置100が有するコントローラ13に配置されたCPU13cで実行することで実現することができる。よって、本発明の各実施形態に係る画像形成装置100が有するデータ通信プログラムは、画像形成装置100が読み取り可能な記録媒体12bに格納することができる。
各実施形態に係るデータ通信プログラムは、フロッピー(登録商標)ディスク、CD(Compact Disc)、DVD(Digital Versatile Disk)などの記録媒体12bに記憶させることによって、これらの記録媒体12bを読み取り可能なドライブ装置12aを有する記憶メディアI/F12を介して、記録媒体12bから画像形成装置100にインストールすることができる。また、画像形成装置100は、インタフェース装置14aを有するデータ通信I/F14を備えていることから、インターネットなどの電気通信回線を用いてデータ通信プログラムをダウンロードし、インストールすることも可能である。
また、上記第2の実施形態において説明を行った外部機器と連携する装置については、画像形成装置に限定されるものではない。画像形成装置100a〜nは、連携対象の装置の一例であって、標準化Webサービスにより、搭載するアプリケーション機能を提供可能な装置であればよい。また、上記第2の実施形態において説明を行ったデータ通信機能を有する装置については、第2の実施形態に挙げるデータ通信機能専用の装置でなくてもよく、例えば、プリントサーバや電源管理装置であってもよく、第2の実施形態に係るデータ通信機能を実現するプログラムをインストール・実行可能な環境を有し、ネットワーク200に接続可能なハードウェアを備えた装置であればよい。
最後に、上記各実施形態に挙げた形状に、その他の要素との組み合わせなど、ここで示した要件に、本発明が限定されるものではない。これらの点に関しては、本発明の主旨をそこなわない範囲で変更することが可能であり、その応用形態に応じて適切に定めることができる。
本発明の第1の実施形態に係る画像形成装置のハードウェア構成の一例を示す図である。 本発明の第1の実施形態に係る画像形成装置のソフトウェア構成の一例を示す図である。 本発明の第1の実施形態に係るNCSのソフトウェア構成の一例を示す図である。 本発明の第1の実施形態に係るWS−MFPモジュール群とSOAPのソフトウェア構成の一例を示す図である。 本発明の第1の実施形態に係るデータ通信機能の機能構成の一例を示す図である。 本発明の第1の実施形態に係るSOAPメッセージの一例を示す図である。 本発明の第1の実施形態に係る関連付けデータのデータ構成の一例を示す図である。 本発明の第1の実施形態に係るデータ通信機能の基本処理手順の一例を示すシーケンス図である。 本発明の第2の実施形態に係る画像形成装置とデータ通信装置とから構成されるシステムの一例を示す図である。 本発明の第2の実施形態に係るSOAPメッセージの一例を示す図である。
符号の説明
11 操作パネル
11a 入力装置
11b 表示装置
12 記憶メディアI/F
12a ドライブ装置
12b 記録媒体
13 コントローラ
13a ROM
13b RAM
13c CPU
14 データ通信I/F
14a インタフェース装置
15 スキャナ
15a 画像読取装置
16 プロッタ
16a 印刷装置
17 HDD
20 WS−MFPモジュール群
21p WS−Printer
21s WS−Scanner
22 DFMモジュール
31 WS−Discovery
32 WS−Transfer
33 WS−MetadataExchange
34 WSD−Manager
41p PrinterDCP
41s ScannnerDCP
42 WS−Eventing
50 SOAP
51 SOAPメッセージ送受信
52 SOAPメッセージ生成
60 ディスパッチャ
71 メッセージ送受信部
72 機器情報提供部
73 アプリケーション管理部
73a 出力部
73b 入力部
74 メッセージ制御部
81 WS−Transfer Getメッセージ
82 WS−Eventing Subscribeメッセージ
91 関連付けデータ
100、100a〜n 画像形成装置
101 ハードウェアリソース
102 エンジンI/F
103 API
110 ソフトウェア群
111 プリンタアプリ
112 コピーアプリ
113 ファクスアプリ
114 スキャナアプリ
115 ネットファイルアプリ
116 工程検査アプリ
117 配信アプリ
120 プラットフォーム
121 OS
122 SCS
123 SRM
124 ECS
125 MCS
126 OCS
127 FCS
128 NCS
129 IMH
130 アプリケーション
140 起動部
150 コントロールサービス
200 ネットワーク
300 クライアント端末(PC)
400 データ通信装置

Claims (12)

  1. 外部機器からの要求に応じて、当該画像形成装置が有するアプリケーションの情報を含む機器情報を前記外部機器に提供する第1の機能と、前記外部機器からの要求を受け付けた前記アプリケーションにより処理を実行する少なくとも1つ以上の第2の機能とを有する画像形成装置であって、
    前記外部機器から送信された前記第1の機能又は前記第2の機能に対して処理を要求する要求メッセージを、前記第1の機能及び前記第2の機能とを含む複数の機能に共通して受信する受信手段と、
    前記第1の機能と前記第2の機能が別のプロセスで動作するマルチプロセス環境において、前記受信手段により受信された前記要求メッセージの所定の情報に基づいて、前記要求メッセージにより要求された処理を行う前記第1の機能又は前記第2の機能のどちらか一方を特定し、特定された前記第1の機能又は前記第2の機能に対して前記要求メッセージの要求内容を通知するメッセージ制御手段とを有することを特徴とする画像形成装置。
  2. 前記メッセージ制御手段は、
    前記要求メッセージの宛先に関する情報及び/又は前記要求メッセージにより要求される処理に関する情報に基づいて、要求された処理を行う前記第1の機能又は前記第2の機能のどちらか一方を特定することを特徴とする請求項1に記載の画像形成装置。
  3. 前記受信手段及び前記メッセージ制御手段を実現するソフトウェア部品は、
    当該画像形成装置が有する前記第1の機能及び前記第2の機能が動作するプロセスとは別のプロセスで動作することを特徴とする請求項1又は2に記載の画像形成装置。
  4. 前記受信手段及び前記メッセージ制御手段を実現するソフトウェア部品は、
    同じプロセスで動作することを特徴とする請求項3に記載の画像形成装置。
  5. 前記受信手段は、
    前記外部機器から送信された前記要求メッセージをSOAP(Simple Object Access Protocol)により受信することを特徴とする請求項1ないし4のいずれか一項に記載の画像形成装置。
  6. 外部機器からの要求に応じて、当該画像形成装置が有するアプリケーションの情報を含む機器情報を前記外部機器に提供する第1の機能と、前記外部機器からの要求を受け付けた前記アプリケーションにより処理を実行する少なくとも1つ以上の第2の機能とを有する画像形成装置と、前記外部機器との間で、双方向のデータ通信を行うデータ通信装置であって、
    前記外部機器から送信された前記第1の機能又は前記第2の機能に対して処理を要求する要求メッセージを受信する受信手段と、
    前記第1の機能と前記第2の機能とが別のプロセスで動作するマルチプロセス環境において、前記受信手段により受信された前記要求メッセージの所定の情報に基づいて、前記要求メッセージにより要求された処理を行う前記画像形成装置並びに前記画像形成装置が有する前記第1の機能又は前記第2の機能のどちらか一方を特定し、特定された前記画像形成装置が有する前記第1の機能又は前記第2の機能に対して前記要求メッセージの要求内容を通知するメッセージ制御手段とを有することを特徴とするデータ通信装置。
  7. 前記メッセージ制御手段は、
    前記要求メッセージの通知先に関する情報及び/又は前記要求メッセージにより要求される処理に関する情報に基づいて、要求された処理を行う前記画像形成装置並びに前記画像形成装置が有する前記第1の機能又は前記第2の機能のどちらか一方を特定することを特徴とする請求項6に記載のデータ通信装置。
  8. 前記受信手段は、
    前記外部機器から送信された先記要求メッセージをSOAP(Simple Object Access Protocol)により受信することを特徴とする請求項6又は7に記載のデータ通信装置。
  9. 外部機器からの要求に応じて、当該画像形成装置が有するアプリケーションの情報を含む機器情報を前記外部機器に提供する第1の機能と、前記外部機器からの要求を受け付けた前記アプリケーションにより処理を実行する少なくとも1つ以上の第2の機能とを有する画像形成装置と、前記外部機器との間で、双方向のデータ通信を行うデータ通信方法であって、
    前記外部機器から送信された前記第1の機能又は前記第2の機能に対して処理を要求する要求メッセージを、前記第1の機能及び前記第2の機能とを含む複数の機能に共通して受信する受信手順と、
    前記第1の機能と前記第2の機能とが別のプロセスで動作するマルチプロセス環境において、前記受信手順により受信された前記要求メッセージの所定の情報に基づいて、前記要求メッセージにより要求された処理を行う前記第1の機能又は前記第2の機能のどちらか一方を特定し、特定された前記第1の機能又は前記第2の機能に対して前記要求メッセージの要求内容を通知するメッセージ制御手順とを有することを特徴とするデータ通信方法。
  10. 前記メッセージ制御手順は、
    前記要求メッセージの宛先に関する情報及び/又は前記要求メッセージにより要求される処理に関する情報に基づいて、要求された処理を行う前記第1の機能又は前記第2の機能のどちらか一方を特定することを特徴とする請求項9に記載のデータ通信方法。
  11. 前記受信手順は、
    前記外部機器から送信された前記要求メッセージをSOAP(Simple Object Access Protocol)により受信することを特徴とする請求項9又は10に記載のデータ通信方法。
  12. 外部機器からの要求に応じて、当該画像形成装置が有するアプリケーションの情報を含む機器情報を前記外部機器に提供する第1の機能と、前記外部機器からの要求を受け付けた前記アプリケーションにより処理を実行する少なくとも1つ以上の第2の機能とを有する画像形成装置と、前記外部機器との間で、双方向のデータ通信を行うデータ通信プログラムであって、
    コンピュータを、
    前記外部機器から送信された前記第1の機能又は前記第2の機能に対して処理を要求する要求メッセージを受信する受信手段と、
    前記第1の機能と前記第2の機能とが別のプロセスで動作するマルチプロセス環境において、前記受信手段により受信された前記要求メッセージの所定の情報に基づいて、前記要求メッセージにより要求された処理を行う前記第1の機能又は前記第2の機能のどちらか一方を特定し、特定された前記第1の機能又は前記第2の機能に対して前記要求メッセージの要求内容を通知するメッセージ制御手段として機能させるデータ通信プログラム。
JP2007238267A 2007-09-13 2007-09-13 画像形成装置、データ通信装置、データ通信方法、及びデータ通信プログラム Expired - Fee Related JP5072499B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007238267A JP5072499B2 (ja) 2007-09-13 2007-09-13 画像形成装置、データ通信装置、データ通信方法、及びデータ通信プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007238267A JP5072499B2 (ja) 2007-09-13 2007-09-13 画像形成装置、データ通信装置、データ通信方法、及びデータ通信プログラム

Publications (2)

Publication Number Publication Date
JP2009071612A JP2009071612A (ja) 2009-04-02
JP5072499B2 true JP5072499B2 (ja) 2012-11-14

Family

ID=40607411

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007238267A Expired - Fee Related JP5072499B2 (ja) 2007-09-13 2007-09-13 画像形成装置、データ通信装置、データ通信方法、及びデータ通信プログラム

Country Status (1)

Country Link
JP (1) JP5072499B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022055518A (ja) 2020-09-29 2022-04-08 株式会社リコー 機器管理システム、遠隔管理装置、遠隔管理方法及びプログラム

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003308264A (ja) * 2002-02-15 2003-10-31 Hitachi Ltd ネットワーク装置とネットワーク装置制御方法
JP4291856B2 (ja) * 2002-03-25 2009-07-08 株式会社リコー Webサービス機能を有する画像形成装置
JP4251958B2 (ja) * 2003-10-22 2009-04-08 株式会社リコー 画像形成装置、情報処理装置、情報処理方法、情報処理プログラム、及び記録媒体

Also Published As

Publication number Publication date
JP2009071612A (ja) 2009-04-02

Similar Documents

Publication Publication Date Title
JP6481724B2 (ja) 画像取扱装置、画像取扱方法及びプログラム
US8947701B2 (en) Server apparatus, terminal apparatus, and printing system and data conversion method thereof
JP4759436B2 (ja) 画像取扱装置、画像処理システム、画像処理制御方法、及び画像処理制御プログラム
JP5370439B2 (ja) 装置、要求処理方法、プログラム、及び記録媒体
JP2009255390A (ja) 画像形成装置、機能連携制御方法、及び機能連携制御プログラム
EP1439684B1 (en) Apparatus, method and system for providing information in accordance with one of a plurality of protocols
JP4291856B2 (ja) Webサービス機能を有する画像形成装置
JP4079722B2 (ja) ネットワークを介して装置間で連携する画像形成装置
JP5072499B2 (ja) 画像形成装置、データ通信装置、データ通信方法、及びデータ通信プログラム
JP4141209B2 (ja) Webサービス機能を有する画像形成装置
JP4130108B2 (ja) Webサービス機能を有する画像形成装置
JP4291855B2 (ja) Webサービス機能を有する画像形成装置
JP2007230244A (ja) Webサービス機能を有する画像形成装置
JP4136738B2 (ja) Webサービス機能を有する画像形成装置
JP2009278336A (ja) 画像形成装置、提供機能制御方法、及び提供機能制御プログラム
JP5046818B2 (ja) 画像形成装置、画像形成装置内のデータ処理方法、及びデータ処理プログラム
JP5211634B2 (ja) 画像処理装置及び優先順位決定方法
JP2006020341A (ja) Webサービス機能を有する画像形成装置
JP4141210B2 (ja) Webサービス機能を有する画像形成装置
JP2009111785A (ja) 画像処理装置及び処理振分け方法
JP4857211B2 (ja) 画像形成装置、分散印刷システム、分散印刷方法、プログラムおよび記録媒体
JP4373692B2 (ja) Webサービス機能を有する画像形成装置
JP2009248527A (ja) 画像処理装置及び機器状態監視方法
JP4291854B2 (ja) Webサービス機能を有する画像形成装置
JP4130109B2 (ja) Webサービス機能を有する画像形成装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100420

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20111006

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111122

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120113

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120724

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120821

R150 Certificate of patent or registration of utility model

Ref document number: 5072499

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150831

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees