JP2009111785A - Image processor and processing distributing method - Google Patents
Image processor and processing distributing method Download PDFInfo
- Publication number
- JP2009111785A JP2009111785A JP2007282455A JP2007282455A JP2009111785A JP 2009111785 A JP2009111785 A JP 2009111785A JP 2007282455 A JP2007282455 A JP 2007282455A JP 2007282455 A JP2007282455 A JP 2007282455A JP 2009111785 A JP2009111785 A JP 2009111785A
- Authority
- JP
- Japan
- Prior art keywords
- message
- processing
- external device
- service
- requested
- 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
Abstract
Description
本発明は、画像処理装置及び処理振分け方法に係り、特に外部の機器からのメッセージを解析して処理を実施する画像処理装置及びその画像処理装置における処理振分け方法に関する。 The present invention relates to an image processing apparatus and a processing distribution method, and more particularly to an image processing apparatus that analyzes a message from an external device and performs processing, and a processing distribution method in the image processing apparatus.
画像処理装置はPC(Personal Computer)等の外部機器(外部の機器)とネットワークなどの所定のデータ通信手段を介して受け付けた動作要求に応じて、画像処理装置が搭載する機能(搭載機能)により、要求された処理を行っている。従来の画像処理装置には外部の機器からXML(Extensible Markup Language)を利用したSOAP(Simple Object Access Protocol)により要求を受信するものがあった。 The image processing apparatus has a function (installed function) installed in the image processing apparatus in response to an operation request received via an external device (external device) such as a PC (Personal Computer) and a predetermined data communication means such as a network. The requested process is being performed. Some conventional image processing apparatuses receive a request from an external device using SOAP (Simple Object Access Protocol) using XML (Extensible Markup Language).
外部の機器から所定の処理を画像処理装置に対して要求する場合には、外部の機器からの要求を所定の形式で定義した構造化データ(以下、SOAPメッセージという)により画像処理装置へ送信し、画像処理装置が要求に応じて処理を行った後に、その結果をまとめたSOAPデータを外部の機器へ送信するというSOAPを利用したメッセージ交換方式が広く採用されている(例えば引用文献1参照)。 When a predetermined process is requested from an external device to the image processing apparatus, the request from the external apparatus is transmitted to the image processing apparatus by structured data (hereinafter referred to as a SOAP message) defined in a predetermined format. A message exchange method using SOAP, in which the image processing apparatus performs processing according to a request and then transmits SOAP data in which the results are collected to an external device, is widely adopted (see, for example, cited document 1). .
SOAPとは、XMLをベースとしたメッセージ交換の為のプロトコル仕様で、HTTP(Hypertext Transfer Protocol)やSMTP(Simple Mail Transfer Protocol)などのプロトコルの上位に位置し、そのパケットの中でSOAPメッセージの交換を行うためのプロトコルである。SOAPは、送受信するSOAPメッセージにIPアドレスやポート番号などの宛先情報や所定の処理を指示するアクション情報などのXML文書本体以外の付加情報を付加できる。 SOAP is a protocol specification for exchanging messages based on XML. It is positioned above protocols such as HTTP (Hypertext Transfer Protocol) and SMTP (Simple Mail Transfer Protocol), and exchange of SOAP messages in the packet. Is a protocol for performing SOAP can add additional information other than the XML document body, such as destination information such as an IP address and a port number, and action information for instructing predetermined processing, to a SOAP message to be transmitted and received.
このように、外部の機器とのメッセージ交換にSOAPを利用することで、画像処理装置は自機の情報を外部の機器に提供したり、外部の機器からの要求に応じてプロッタやスキャナ等の搭載機能により処理を行ったりすることができる。複合機は外部の機器から受信したSOAPメッセージを解析し、実施する処理の切り分けを行っていた。
しかしながら、複合機のような複数の機能を有する画像処理装置では、各機能が動作するときに使用するメモリ空間が異なるように、それぞれ別のプロセスで動作するように設計されている。このようなマルチプロセス環境では、SOAPを利用したメッセージ交換を行うモジュールが機能ごとに実装されている。このような場合、従来の画像処理装置はSOAPを利用したメッセージ交換を行うモジュール毎に通信ポートを用意しなければならないという問題があった。 However, an image processing apparatus having a plurality of functions such as a multifunction peripheral is designed to operate in different processes so that the memory space used when each function operates is different. In such a multi-process environment, a module for exchanging messages using SOAP is installed for each function. In such a case, the conventional image processing apparatus has a problem that a communication port must be prepared for each module that performs message exchange using SOAP.
また、従来の画像処理装置はSOAPを利用したメッセージ交換を行うモジュールが機能ごとに実装されることから、機能を増やす毎に、SOAPを利用したメッセージ交換を行うモジュールのサイズが増大し、メモリなどの記憶領域を余分に消費してしまうという問題があった。 In addition, since the conventional image processing apparatus is equipped with a module for exchanging messages using SOAP for each function, the size of the module for exchanging messages using SOAP increases each time the function is increased. There has been a problem of consuming an extra storage area.
このように、従来の画像処理装置は、提供する機能を増やしていくと、通信ポートや記憶領域などのハードウェア資源を余分に消費してしまうという問題があった。 As described above, the conventional image processing apparatus has a problem in that extra hardware resources such as a communication port and a storage area are consumed as the functions to be provided are increased.
本発明は、上記の点に鑑みなされたもので、機能の増加によるハードウェア資源の消費を軽減しつつ、外部の機器からのメッセージを解析して処理を実施する画像処理装置及び処理振分け方法を提供することを目的とする。 The present invention has been made in view of the above points, and provides an image processing apparatus and a processing distribution method that perform processing by analyzing a message from an external device while reducing consumption of hardware resources due to an increase in functions. The purpose is to provide.
上記の課題を解決するため、本発明は、外部の機器から所定のメッセージを受信し、前記メッセージを解析して前記メッセージに応じた処理を実施する画像処理装置であって、前記外部の機器との間で前記メッセージを送受信するメッセージ送受信手段と、前記外部の機器から前記メッセージ送受信手段が受信した前記メッセージに含まれる所定の情報に基づき、前記メッセージにより要求された処理を特定し、特定した処理に応じて前記メッセージの送信先を決定して、前記送信先へ前記メッセージを送信するメッセージ制御手段と、前記メッセージにより要求された処理を実施する1つ以上の処理実施手段とを有することを特徴とする。 In order to solve the above-described problem, the present invention provides an image processing apparatus that receives a predetermined message from an external device, analyzes the message, and performs a process according to the message. A message transmission / reception unit that transmits / receives the message between, and a process requested by the message based on predetermined information included in the message received by the message transmission / reception unit from the external device. The message control means for determining the transmission destination of the message according to the message and transmitting the message to the transmission destination, and one or more processing execution means for executing the processing requested by the message. And
なお、本発明の構成要素、表現または構成要素の任意の組合せを、方法、装置、システム、コンピュータプログラム、記録媒体、データ構造などに適用したものも本発明の態様として有効である。 In addition, what applied the component, expression, or arbitrary combination of the component of this invention to a method, an apparatus, a system, a computer program, a recording medium, a data structure, etc. is also effective as an aspect of this invention.
本発明によれば、機能の増加によるハードウェア資源の消費を軽減しつつ、外部の機器からのメッセージを解析して処理を実施する画像処理装置及び処理振分け方法を提供可能である。 According to the present invention, it is possible to provide an image processing apparatus and a processing distribution method that perform processing by analyzing a message from an external device while reducing consumption of hardware resources due to an increase in functions.
次に、本発明を実施するための最良の形態を、以下の実施例に基づき図面を参照しつつ説明していく。実施例では、画像処理装置の一例としての複合機を例に説明するが、如何なる画像処理装置であってもよい。 Next, the best mode for carrying out the present invention will be described based on the following embodiments with reference to the drawings. In the embodiment, a multifunction peripheral as an example of an image processing apparatus will be described as an example. However, any image processing apparatus may be used.
(ハードウェア構成)
本発明による複合機100のハードウェア構成について図1を用いて説明する。図1は本発明による複合機のハードウェア構成図である。図1の複合機100は、操作パネル11と、記憶メディアI/F12と、コントローラ13と、データ通信I/F14と、HDD(Hard Disk Drive)17と、スキャナ15と、プロッタ16とが、それぞれ相互に接続されるように構成されている。
(Hardware configuration)
A hardware configuration of the
操作パネル11は入力装置11aと表示装置11bとを有している。入力装置11aはハードウェアキーなどで構成されており、複合機100に各操作信号を入力するのに用いられる。また、表示装置11bは、ディスプレイなどで構成され、例えば画像形成動作に関する各種情報を表示する。データ通信I/F14は、インタフェース装置14aを有しており、複合機100をデータ伝送路であるネットワークなどに接続するインタフェースである。HDD17は複合機100で取り扱われる受信文書データや読み取り画像データなどの各種データを格納している。また、HDD17は、これらの各種データを、所定のファイルシステムやDB(Data Base)により管理している。
The
HDD17に格納される各種データの中には、例えば、デジタルカメラ等の外部の機器によって記録された電子データも含まれる。このような場合、電子データはメモリカードなどの記録媒体12bによって複合機100に提供されるか、データ伝送路であるネットワークなどを通じてアップロードされる。記録媒体12bは、記憶メディアI/F12が有するドライブ装置12aにセットされ、各種データが記録媒体12bからドライブ装置12aを介してHDD17に格納される。
Various data stored in the HDD 17 includes electronic data recorded by an external device such as a digital camera, for example. In such a case, the electronic data is provided to the
コントローラ13はROM(Read Only Memory)13a,RAM(Random Access Memory)13b及びCPU(Central Processing Unit)13cを有している。ROM13aは複合機100が起動されるときに実行されるプログラムや各種データを格納している。また、RAM13bは、ROM13aやHDD17から読み出された各種プログラムやデータを一時保持する。更に、CPU13cは、RAM13bが一時保持しているプログラムを実行する。
The
コントローラ13は、例えば、データ通信I/F14を介して印刷データを受信した場合に、ROM13aからRAM13b上に読み出された、PDL(Page Description Language)を解釈可能なプログラム(PDLパーサ)をCPU13cにより実行し、印刷データを解釈してビットマップイメージを生成する。
For example, when the print data is received via the data communication I /
スキャナ15は画像読取装置15aを有しており、読み取り面に配置された原稿を光学的に読み取り画像データを生成する。プロッタ16は印刷装置16aを有しており、例えば電子写真プロセス方式によってビットマップイメージを記録紙に印刷する。本発明による複合機100では、上記したハードウェア構成により、コピー、プリンタ、ファクシミリ又はスキャナなどの複数の機能を実現している。
The
(ソフトウェア構成)
本発明による複合機100のソフトウェア構成について図2を用いて説明する。図2は本発明による複合機のソフトウェア構成図である。
(Software configuration)
A software configuration of the multifunction peripheral 100 according to the present invention will be described with reference to FIG. FIG. 2 is a software configuration diagram of the multifunction machine according to the present invention.
図2の複合機100は、図1に示したプロッタ16と、スキャナ15と、ファクシミリやHDD17などのハードウェアリソース101とを有するとともに、起動部140により起動されるプラットフォーム120及びアプリケーション130を含むように構成されるソフトウェア群110とを備えている。
2 includes the
プラットフォーム120は、アプリケーション130からの処理要求を解釈してハードウェア資源の獲得要求を発生させるコントロールサービス150と、1つ以上のハードウェア資源の管理を行い、コントロールサービス150からの獲得要求を調停するSRM(System Resource Manager)123と、OS(Operating System)121とを有する。
The
コントロールサービス150は、複数のサービスモジュールから形成され、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とを有するように構成される。
The
なお、このプラットホーム120は、予め定義されたメソッドによりアプリケーション130から処理要求を受信可能とするAPI(Application Program Interface)103と、プロッタ16やスキャナ15、その他のハードウェアリソース101等をハードウェア資源を利用する上位層からの要求に従ってOS121を介して制御するときのインタフェースであるエンジンI/F102を有する。
Note that the
OS121は、UNIX(登録商標)などの汎用オペレーティングシステムであり、プラットフォーム120並びにアプリケーション130の各ソフトウェアをそれぞれプロセスとして並列実行する。
The OS 121 is a general-purpose operating system such as UNIX (registered trademark), and executes the software of the
SRM123は、SCS122とともにシステムの制御およびリソースの管理を行うものであり、プロッタ16やスキャナ15などのエンジン、メモリ、HDDファイル、ホストI/O(例えば、セントロI/F、ネットワークI/F、IEEE1394 I/F、RS232C I/Fなど)のハードウェア資源を利用する上位層からの要求に従って調停を行い、実行制御する。
The SRM 123, together with the
具体的には、このSRM123は要求されたハードウェア資源が利用可能であるか(他の要求により利用されていないかどうか)を判断し、利用可能であれば要求されたハードウェア資源が利用可能である旨を上位層に伝える。また、SRM123は、上位層からの要求に対してハードウェア資源の利用スケジューリングを行い、要求内容(例えば、プリンタエンジンにより紙搬送と作像動作、メモリ確保、ファイル生成など。)を直接実施している。
Specifically, the
SCS122は、アプリ管理、操作部制御、システム画面表示、LED(Light Emitting Diode)表示、リソース管理、割り込みアプリ制御を行うものである。ECS124は、プロッタ16、スキャナ15などから構成されるハードウェア資源のエンジンを制御するものである。
The
MCS125は、画像メモリの取得および解放、HDDの利用、画像データの圧縮および伸張などを行うものである。OCS126は、オペレータと本体制御間の情報伝達手段となる操作パネル11を制御するモジュールである。
The
FCS127は、システムコントローラの各アプリ層からPSTN(Public Switched Telephone Networks)/ISDN(Integrated Services Digital Network)を利用したファクシミリ送受信、BKM(バックアップSRAM:Static Random Access Memory)で管理されている各種ファクシミリデータの登録/引用、ファクシミリ読みとり、ファクシミリ受信印刷、融合送受信を行うためのAPIを提供するものである。FCS127には、そのサブプロセスであるFCUハンドラ(FCUH)が起動される。このFCUHは、FCS127からの指令によりファクシミリ送受信のときにファクシミリエンジンのデバイスドライバを制御するものである。
The
NCS128は、ネットワークI/Oを必要とするアプリケーション130に対して共通に利用できるサービスを提供するためのモジュール群である。
The
本発明によるデータ通信機能は、NCS128が有している。NCS128を構成する具体的なソフトウェア部品(プログラム)については、後述の図3を用いて説明する。
The
アプリケーション130は、PCLやポストスクリプト(PS)などのPDLパーサを有するプリンタ用のアプリケーションであるプリンタアプリ111と、コピー用アプリケーションであるコピーアプリ112と、ファクシミリ用アプリケーションであるファックスアプリ113と、スキャナ用アプリケーションであるスキャナアプリ114と、ネットワークファイル用アプリケーションであるネットファイルアプリ115と、工程検査用アプリケーションである工程検査アプリ116と、配信用のアプリケーションである配信アプリ117とを有している。
The
これらの各コントロールサービスとSRM123と各アプリケーション130とは1つ以上のメソッドを有するオブジェクトであり、このオブジェクトを起動することによりそれぞれプロセスとしてOS121上に生成されて実行される。そして、各プロセス内部には複数のスレッドが起動され、OS121の管理下でこれらのスレッドのCPU占有時間を切り替えることにより並列実行が実現されている。このため、複合機100はプロセス切り替えによる並列実行と比較して、並列実行時の処理速度の向上が図られている。
Each of these control services, the
なお、各アプリプロセスと各コントロールサービスプロセスとは、メソッドの実行によるプロセス間通信によってメッセージの送受信が行われる。ここからは、複合機100に含まれるNCS128の詳細について説明する。
Each application process and each control service process transmit and receive messages by inter-process communication by executing methods. From here, the details of the
図3は、本発明による複合機に含まれるNCSのソフトウェア構成図である。図3に示したNCS128のソフトウェア構成は、主に、各プロトコルによって受信したデータを各アプリケーション130に振り分け、各アプリケーション130から受信したデータをネットワーク側に送信する際の仲介を行うモジュール群で構成される。そのモジュール群の中には、WS−MFPモジュール群20がある。
FIG. 3 is a software configuration diagram of the NCS included in the MFP according to the present invention. The software configuration of the
ここで上記の「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サービスに準拠して設計された複合機用のモジュール群を示している。
Here, the above-mentioned “WS” means a standardized Web service based on XML that is being promoted by a working group (WG) of the World Wide Web Consortium (W3C). As for “WS”, an open document “Devices Profile for Web Services” in which the details are disclosed is disclosed, and the description thereof is omitted here. The URL for obtaining the published document is “http://specs.xmlsoap.org/ws/2006/02/devprof/devicesprofile.pdf”. In the following description, function names and module names with “WS” are functions and modules designed in accordance with this standardized Web service. For example, the WS-
図3に示したWS−MFPモジュール群20は、外部の機器と複合機100が有するプリンタアプリ111との間で、プリンタ関連のデータを取り扱うWS−Printer21pや、外部機器と複合機100が有するスキャナアプリ114との間でスキャナ関連のデータを取り扱うWS−Scanner21s、外部機器と複合機100との間で機器関連のデータを取り扱うDFMモジュール22等のソフトウェア部品から構成される。上記各ソフトウェア部品は、それぞれ別プロセスで起動され、動作するように実装される。
The WS-
例えば、WS−Printer21pは、DFMモジュール22からのプリンタアプリ111に関する情報の取得要求に応答したり、外部機器からの印刷要求をプリンタアプリ111に通知したりする機能である。DFMモジュール22は、WS−Printer21pやWS−Scanner21sなどからプリンタアプリ111やスキャナアプリ114などのアプリケーション情報を取得し、取得した情報を基に外部機器に対して、複合機100が提供可能な標準化Webサービスに関する情報を含む機器情報を送信する。
For example, the WS-
上記において、DFMモジュール22がWS−Printer21pの保有するプリンタ関連の情報を取得する場合について説明したが、DFMモジュール22及びWS−Printer21pは互いに別のプロセスによって動作しているため、プロセス間通信によりデータの送受信を行う。このように、複合機100は、上記構成によるNCS128を有することにより、外部の機器との間でデータの送受信を行うことができる。
In the above description, the case where the
ここで、本発明の理解を容易とするため、従来の複合機100におけるWS−MFPモジュール群20及び各アプリケーション130により生成されるプロセスの関係について説明する。
Here, in order to facilitate understanding of the present invention, a relationship between processes generated by the WS-
図4は従来の複合機におけるWS−MFPモジュール群及び各アプリケーションにより生成されるプロセスの関係を表した構成図である。図4において、wsdevd41はDFMモジュール22により生成されるプロセス(デーモン)である。Scannerアプリ42はスキャナアプリ114により生成されるプロセスである。Printerアプリ43はプリンタアプリ111により生成されるプロセスである。
FIG. 4 is a block diagram showing the relationship between WS-MFP module groups and processes generated by each application in a conventional multi-function peripheral. In FIG. 4,
また、wsscnd44sはWS−Scanner21sにより生成されるプロセスである。wsprnd44pはWS−Printer21pにより生成されるプロセスである。
Wsscnd44s is a process generated by WS-
wsscnd44sは、WS−Scanner処理部分45s,ws−addressing46s,ws−eventing47s,gSOAP48sを含むように構成されている。wsprnd44pは、WS−Printer処理部分45p,ws−addressing46p,ws−eventing47p,gSOAP48pを含むように構成されている。
The
Scannerアプリ42及びwsscnd44sはスキャナサービス(機能)を提供する。Printerアプリ43及びwsprnd44pはプリンタサービス(機能)を提供する。
The
WS−Scanner処理部分45sはWS−Scanner21sに対応した処理を行うものである。WS−Printer処理部分45pはWS−Printer21pに対応した処理を行うものである。ws−addressing46s及び46pは例えばSOAPメッセージの信頼性を確保するものである。ws−eventing47s及び47pはスキャナ機能又は印刷機能を利用する外部機器から送信された画像読み取り要求又は印刷要求などの処理要求イベントを複合機100が有するスキャナアプリ114又はプリンタアプリ111に通知する。
The WS-
gSOAP48s及び48pはSOAPメッセージ送受信機能と、SOAPメッセージ生成機能とを含むように構成される。gSOAP48s及び48pは、下位層にあたるHTTPやSMTP等の通信プロトコルにより、外部の機器との間で、SOAPメッセージを送受信する。また、gSOAP48s及び48pはScannerアプリ42又はPrinterアプリ43から受信したデータを基にSOAPメッセージを生成する。
The gSOAPs 48s and 48p are configured to include a SOAP message transmission / reception function and a SOAP message generation function. The gSOAPs 48s and 48p transmit and receive SOAP messages to and from external devices using a communication protocol such as HTTP or SMTP corresponding to the lower layer. The gSOAPs 48s and 48p generate a SOAP message based on the data received from the
gSOAP48s及び48pはScannerアプリ42又はPrinterアプリ43から受け取ったデータをSOAPメッセージに変換し、外部の機器との間のメッセージ交換を実現している。gSOAP48s及び48pについては、その詳細が開示されている開発元の公式サイトである「gSOAP:C/C++ Web Services and Clients」へのURL(http://www.cs.fsu.edu/~engelen/soap.html)を開示し、ここでの説明を省略する。
The gSOAPs 48s and 48p convert the data received from the
図4に示すように従来の複合機100はスキャナサービスのws−addressing46s,ws−eventing47s,gSOAP48sと、プリンタサービスのws−addressing46p,ws−eventing47p,gSOAP48pとが重複している。また、従来の複合機100はスキャナサービス及びプリンタサービス毎に外部の機器との通信に必要な通信ポートをオープンしている。
As shown in FIG. 4, in the conventional multifunction peripheral 100, the scanner services ws-addressing 46s, ws-
次に、例えば図4に示す従来の複合機100へ新たなカメラサービスを追加した例について説明する。図5は従来の複合機にサービスを追加した例を表す構成図である。図5では図4に示した従来の複合機100の構成に、Cameraアプリ51,wscmrd44cが追加されている。
Next, an example in which a new camera service is added to the conventional multifunction peripheral 100 shown in FIG. 4 will be described. FIG. 5 is a configuration diagram showing an example in which a service is added to a conventional multifunction peripheral. In FIG. 5, a
Cameraアプリ51はカメラアプリにより生成されるプロセスである。wscmrd44cはWS−Camera処理部分45c,ws−addressing46c,ws−eventing47c,gSOAP48cを含むように構成されている。Cameraアプリ51及びwscmrd44cはカメラサービス(機能)を提供する。
The
図5に示すように、従来の複合機100はカメラサービスのws−addressing46c,ws−eventing47c,gSOAP48cが更に必要となり、メモリなどの記憶領域を余分に消費してしまう。また、従来の複合機100はカメラサービスも外部の機器との通信に必要な通信ポートを独自にオープンする為、カメラサービス用の通信ポートを新たに用意しなければならない。結果として、従来の複合機100は、動的にサービスを追加することができなかった。
As shown in FIG. 5, the conventional
そこで、本発明による複合機100は図6に示すような構成とした。図6は本発明による複合機のWS−MFPモジュール群及び各アプリケーションにより生成されるプロセスの関係を表した構成図である。
Therefore, the
図6の構成図は、図4に示したwsscnd44s及びwsprnd44pが一つのWSデーモン61として構成されている。図6のWSデーモン61は、WS−Scanner処理部分45s,WS−Printer処理部分45p,ws−addressing46,ws−eventing47,gSOAP48及びAction Dispatcher62を含むように構成されている。
In the configuration diagram of FIG. 6, the
図6のWSデーモン61は、Action Dispatcher62を追加する構成としたことにより、スキャナサービス等の各種サービス間でws−addressing46,ws−eventing47,gSOAP48を共通化でき、メモリなどの記憶領域が余分に消費されることを防止できる。また、図6のWSデーモン61は各種サービス間で外部の機器との通信に必要な通信ポートも共通化できる。
The
なお、Scannerアプリ42及びPrinterアプリ43はAction Dispatcher62に対して後述のようにサービスの登録を行う。サービスの登録が行われることにより、Action Dispatcher62はSOAPメッセージに含まれる「Action」からサービスを判断し、SOAPメッセージにより要求された処理をサービスに振り分ける。
Note that the
Action Dispatcher62は、gSOAP48を介して外部の機器から受信したSOAPメッセージを、SOAPメッセージの内容に応じて、スキャナサービス又はプリンタサービスに振り分ける(メッセージ内容を通知する)。また、その逆に、Scannerアプリ42及びPrinterアプリ43から受け付けたデータをgSOAP48へ送信する。
The
このように、Action Dispatcher62は、gSOAP48を介して外部の機器と複合機100が有する各種サービスとの間で行うSOAPメッセージのディスパッチ機能を実現している。なお、Action Dispatcher62の処理の詳細は後述する。
As described above, the
次に、例えば図6に示す本発明による複合機100へ新たなカメラサービスを追加した例について説明する。図7は本発明による複合機にサービスを追加した例を表す構成図である。図7では図6に示した本発明による複合機100の構成に、Cameraアプリ51及びWS−Camera処理部分45cが追加されている。
Next, an example in which a new camera service is added to the multifunction peripheral 100 according to the present invention shown in FIG. 6 will be described. FIG. 7 is a configuration diagram showing an example in which a service is added to the multifunction machine according to the present invention. In FIG. 7, a
Cameraアプリ51はカメラアプリにより生成されるプロセスである。WS−Camera処理部分45cはWSデーモン61に含まれるように構成されている。Cameraアプリ51及びWS−Camera処理部分45cはカメラサービス(機能)を提供する。
The
図7に示すように、本発明による複合機100はスキャナサービス,プリンタサービス及びカメラサービスにより、ws−addressing46,ws−eventing47,gSOAP48を共通化できるので、メモリなどの記憶領域が余分に消費されることを防止できる。また、本発明による複合機100はスキャナサービス,プリンタサービス及びカメラサービスにより外部の機器との通信に必要な通信ポートも共通化できる。結果として、本発明による複合機100は動的なサービスの追加が容易である。
As shown in FIG. 7, the
次に、Action Dispatcher62の処理の詳細について説明する。図8はAction Dispatcherの処理内容を表した模式図である。図8のAction Dispatcher62は、レスポンスのキューイングと送信とを行う処理部71と、イベントの振分け処理部72と、サービスの登録処理部73とを行う。
Next, the details of the
サービスの登録処理部73は、アプリケーション130からのサービスの登録を受信するとイベントの振分け処理部72へサービスの登録通知を送信する。イベントの振分け処理部72は、サービスの登録通知により、スキャナサービス等の各種サービスとSOAPメッセージに含まれる「Action」とが対応付けられた図9のテーブルをサービスの登録通知に従って更新する。図9はSOAPメッセージにより要求された処理をサービスに振り分ける為のテーブルを表した一例の構成図である。
Upon receiving the service registration from the
例えばカメラサービスの登録通知を受信すると、イベントの振分け処理部72はカメラサービスと、SOAPメッセージに含まれる「Action」である「GetCameraElements」とを対応付けるように図9のテーブルを更新する。
For example, when a camera service registration notification is received, the event
イベントの振分け処理部72は、gSOAP48を介して外部の機器から図10のようなXMLを受信すると、XMLの「Action」が記載されている部分81から「GetPrinterElements」を特定し、図9のテーブルを参照して「GetPrinterElements」に対応するプリンタサービスをSOAPメッセージの送信先に決定する。
When the event
なお、イベントの振分け処理部72は、特定した「Action」が図9のテーブルに無ければサービス要求レスポンスをレスポンスのキューイングと送信とを行う処理部71に送信する。また、アプリケーション130はレスポンスのキューイングと送信とを行う処理部71にデータを送信する。
The event
レスポンスのキューイングと送信とを行う処理部71はイベントの振分け処理部72から受信したサービス要求レスポンス及びアプリケーション130から受信したデータをレスポンスとしてgSOAP48経由で外部の機器に送信する。
The
図11はイベントの振分け処理部の処理を表した一例のフローチャートである。XMLを受信すると、イベントの振分け処理部72はステップS1に進み、XMLの「Action」を特定し、図9のようなテーブルを参照して、XMLの「Action」に対応するサービスを決定する。
FIG. 11 is a flowchart illustrating an example of processing performed by the event distribution processing unit. When the XML is received, the event
ステップS1に進み、決定したサービスがプリンタサービスであれば、イベントの振分け処理部72はSOAPメッセージの送信先をプリンタサービスに決定し、そのSOAPメッセージをプリンタサービスに振り分ける。
In step S1, if the determined service is a printer service, the event
ステップS2に進み、決定したサービスがスキャナサービスであれば、イベントの振分け処理部72はSOAPメッセージの送信先をスキャナサービスに決定し、そのSOAPメッセージをスキャナサービスに振り分ける。
In step S2, if the determined service is the scanner service, the event
また、ステップS3に進み、決定したサービスがカメラサービスであれば、イベントの振分け処理部72はSOAPメッセージの送信先をカメラサービスに決定し、そのSOAPメッセージをカメラサービスに振り分ける。なお、ステップS3に進み、イベントの振分け処理部72は決定したサービスがカメラサービスでなければ、サービス要求レスポンスを、レスポンスのキューイングと送信とを行う処理部71に送信する。上記したサービス要求レスポンスにより、ユーザは必要なサービスがない場合に、必要なサービスを動的に複合機10へインストールすることができる。
In step S3, if the determined service is a camera service, the event
次に、従来の複合機100の処理について通信ポートに着目して説明する。図12は従来の複合機の処理について通信ポートに着目して説明する為の説明図である。図12に示すように、従来の複合機100はプリンタサービス,スキャナサービス及びカメラサービス毎に通信ポートを別々にオープンしている。つまり、従来の複合機100はサービスを追加する毎に新たに通信ポートを用意しなければならない。
Next, the processing of the conventional multifunction peripheral 100 will be described with a focus on communication ports. FIG. 12 is an explanatory diagram for explaining the processing of a conventional multi-function peripheral with a focus on communication ports. As shown in FIG. 12, the conventional
図13は本発明による複合機の処理について通信ポートに着目して説明する為の説明図である。図13に示すように、本発明による複合機100はプリンタサービス,スキャナサービス及びカメラサービスで1つの通信ポートをオープンすればよい。つまり、本発明による複合機100はプリンタサービス,スキャナサービス及びカメラサービスで外部の機器との通信に必要な通信ポートを共通化できる。
FIG. 13 is an explanatory diagram for explaining the processing of the multi-function peripheral according to the present invention by paying attention to the communication port. As shown in FIG. 13, the
各種サービスで通信ポートを共通化することにより、本発明による複合機100は悪意のあるポートスキャンによる脆弱性に対し、1つの通信ポートでアクセスコントロールすることにより効率的に対処できる。
By sharing a communication port for various services, the
また、本発明による複合機100は前述したように、SOAPメッセージにより要求された処理に対応するサービスが無ければ、サービス要求レスポンスを外部の機器に送信してSOAPメッセージにより要求された処理に対応するサービスを図14に示すように動的にインストールさせることができる。
In addition, as described above, if there is no service corresponding to the process requested by the SOAP message, the
図14は複合機に各種サービスを動的に導入するシステムの一例の構成図である。図14に示したシステムは、複合機100,外部の機器としてのクライアント200,サービスセンター300がデータ通信可能に接続された構成である。
FIG. 14 is a configuration diagram of an example of a system that dynamically introduces various services to the multifunction peripheral. The system shown in FIG. 14 has a configuration in which a multifunction peripheral 100, a
ステップS11に進み、複合機100はクライアント200からサポートされていないサービス(インストールされていないサービス)への要求を受信する。複合機100はクライアント200からサポートされていないサービスへの要求を受信した為、前述したようにサービス要求レスポンス(URL)をクライアント200へ送信する。
In step S11, the
ステップS13に進み、クライアント200は複合機100から受信したサービス要求レスポンス(URL)により、必要に応じて複合機100へのサービスの導入(ファームウェアの更新)をサービスセンター300へ要求する。
In step S <b> 13, the
ステップS14に進み、サービスセンター300は、クライアント200から受信したサービス要求レスポンス(URL)により、複合機100のファームウェアを更新することで複合機100へサービスを動的に導入する。ステップS15に進み、複合機100はファームウェアの更新が終了すると、クライアント200へアップデート完了通知を送信する。これにより、クライアント200は新たなサービスがサポートされたことを認識できる。
In step S <b> 14, the
また、本発明による複合機100は各種サービスの削除や更新を自機の操作パネルから行うことができる。図15は各種サービスの削除や更新を複合機の操作パネルから行う手順を表したイメージ図である。 In addition, the multifunction peripheral 100 according to the present invention can delete and update various services from its own operation panel. FIG. 15 is an image diagram showing a procedure for deleting and updating various services from the operation panel of the multifunction peripheral.
ユーザは複合機100の操作パネルに表示された機能選択画面400から削除又は更新を行いたいスキャナサービス等のサービスを選択する。サービスが選択されると、複合機100は作業画面401を操作パネルに表示する。作業画面401はファームウェア削除又はファームウェア更新を選択するものである。
The user selects a service such as a scanner service to be deleted or updated from the
作業画面401からファームウェア削除又はファームウェア更新が選択されると、複合機100は操作パネルに確認画面402を表示する。確認画面402は作業画面401から選択されたファームウェア削除又はファームウェア更新を処理するか否かをユーザに確認するものである。
When firmware deletion or firmware update is selected from the
確認画面402から「はい」が選択されると、複合機100は操作パネルに処理中画面403を表示し、処理が終了すると、機能選択画面400を操作パネルに表示する。確認画面402から「いいえ」が選択されると、複合機100は操作パネルに再び作業画面401を表示する。
When “Yes” is selected from the
なお、ファームウェア削除時、複合機100は対応するアプリケーション130を削除する。また、ファームウェア更新時、複合機100は再びサービスセンター300から動的にファームウェアを取得する。
When the firmware is deleted, the
以上、本発明による複合機100は、各種サービスを増やしても通信ポートや記憶領域などのハードウェア資源を余分に消費してしまうことも無く、各種サービスの増加によるハードウェア資源の消費を軽減できる。本発明による複合機100は各種サービスの増加によるハードウェア資源の消費を軽減できるので、動的に各種サービスを導入できる。 As described above, the multifunction peripheral 100 according to the present invention does not consume extra hardware resources such as communication ports and storage areas even if various services are increased, and can reduce the consumption of hardware resources due to the increase in various services. . Since the multifunction peripheral 100 according to the present invention can reduce consumption of hardware resources due to an increase in various services, various services can be dynamically introduced.
本発明は、具体的に開示された実施例に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。 The present invention is not limited to the specifically disclosed embodiments, and various modifications and changes can be made without departing from the scope of the claims.
11 操作パネル
12 記憶メディアI/F
13 コントローラ
14 データ通信I/F
15 スキャナ
16 プロッタ
17 HDD
20 WS−MFPモジュール群
21p WS−Printer
21s WS−Scanner
22 DFMモジュール
41 wsdevd
42 Scannerアプリ
43 Printerアプリ
44s wsscnd
44p wsprnd
44c wscmrd
45s WS−Scanner処理部分
45p WS−Printer処理部分
45c WS−Camera処理部分
46s,46p,46c,46 WS−addressing
47s,47p,47c,47 WS−Eventing
48s,48p,48c,48 gSOAP
51 Cameraアプリ
61 WSデーモン
62 Action Dispatcher
71 レスポンスのキューイングと送信とを行う処理部
72 イベントの振分け処理部
73 サービスの登録処理部
100 複合機
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 サービスセンター
11
13
15
20 WS-
21s WS-Scanner
22
42
44p wsprnd
44c wscmrd
45s WS-
47s, 47p, 47c, 47 WS-Eventing
48s, 48p, 48c, 48g SOAP
51
71 Processing unit that performs response queuing and
103 API
110
122 SCS
123 SRM
124 ECS
125 MCS
126 OCS
127 FCS
128 NCS
129 IMH
130
Claims (10)
前記外部の機器との間で前記メッセージを送受信するメッセージ送受信手段と、
前記外部の機器から前記メッセージ送受信手段が受信した前記メッセージに含まれる所定の情報に基づき、前記メッセージにより要求された処理を特定し、特定した処理に応じて前記メッセージの送信先を決定して、前記送信先へ前記メッセージを送信するメッセージ制御手段と、
前記メッセージにより要求された処理を実施する1つ以上の処理実施手段と
を有することを特徴とする画像処理装置。 An image processing apparatus that receives a predetermined message from an external device, analyzes the message, and performs processing according to the message,
Message transmitting and receiving means for transmitting and receiving the message to and from the external device;
Based on the predetermined information included in the message received by the message transmission / reception means from the external device, identify the process requested by the message, determine the transmission destination of the message according to the identified process, Message control means for transmitting the message to the destination;
One or more processing execution means for executing processing requested by the message.
前記外部の機器との間で前記メッセージを送受信するメッセージ送受信手段により前記メッセージを受信するメッセージ受信ステップと、
前記メッセージ送受信手段から前記メッセージを受信したメッセージ制御手段が、前記メッセージに含まれる所定の情報に基づき、前記メッセージにより要求された処理を特定する処理特定ステップと、
前記メッセージ制御手段が、前記特定した処理に応じて前記メッセージの送信先を決定して、前記送信先へ前記メッセージを送信するメッセージ送信ステップと、
1つ以上の処理実施手段が、前記メッセージにより要求された処理を実施する処理実施ステップと
を有することを特徴とする処理振分け方法。 A processing distribution method in an image processing apparatus that receives a predetermined message from an external device, analyzes the message, and performs processing according to the message,
A message receiving step of receiving the message by message transmitting / receiving means for transmitting / receiving the message to / from the external device;
A message specifying unit that receives the message from the message transmitting / receiving unit, specifies a process requested by the message based on predetermined information included in the message, and
A message transmission step in which the message control means determines a transmission destination of the message according to the specified process, and transmits the message to the transmission destination;
One or more process execution means includes a process execution step for executing a process requested by the message.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007282455A JP2009111785A (en) | 2007-10-30 | 2007-10-30 | Image processor and processing distributing method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007282455A JP2009111785A (en) | 2007-10-30 | 2007-10-30 | Image processor and processing distributing method |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009111785A true JP2009111785A (en) | 2009-05-21 |
Family
ID=40779784
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007282455A Pending JP2009111785A (en) | 2007-10-30 | 2007-10-30 | Image processor and processing distributing method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2009111785A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013152706A (en) * | 2011-12-26 | 2013-08-08 | Ricoh Co Ltd | Information processing apparatus, information processing method, and program |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10198532A (en) * | 1997-01-13 | 1998-07-31 | Canon Inc | Printing device and printing system and method for controlling them |
JP2002368954A (en) * | 2001-06-07 | 2002-12-20 | Matsushita Electric Ind Co Ltd | Program acquisition system |
JP2003143340A (en) * | 2001-10-31 | 2003-05-16 | Fuji Xerox Co Ltd | Information processor |
JP2003308264A (en) * | 2002-02-15 | 2003-10-31 | Hitachi Ltd | Network equipment and method for controlling network equipment |
JP2007135238A (en) * | 2002-03-25 | 2007-05-31 | Ricoh Co Ltd | Image forming apparatus having web service function |
-
2007
- 2007-10-30 JP JP2007282455A patent/JP2009111785A/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10198532A (en) * | 1997-01-13 | 1998-07-31 | Canon Inc | Printing device and printing system and method for controlling them |
JP2002368954A (en) * | 2001-06-07 | 2002-12-20 | Matsushita Electric Ind Co Ltd | Program acquisition system |
JP2003143340A (en) * | 2001-10-31 | 2003-05-16 | Fuji Xerox Co Ltd | Information processor |
JP2003308264A (en) * | 2002-02-15 | 2003-10-31 | Hitachi Ltd | Network equipment and method for controlling network equipment |
JP2007135238A (en) * | 2002-03-25 | 2007-05-31 | Ricoh Co Ltd | Image forming apparatus having web service function |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013152706A (en) * | 2011-12-26 | 2013-08-08 | Ricoh Co Ltd | Information processing apparatus, information processing method, and program |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4070693B2 (en) | Image forming apparatus and scan data processing method | |
JP2008071085A (en) | Image processor and log transfer method | |
JP2010157027A (en) | Image forming apparatus, information processing apparatus, print processing control method, and program | |
JP2009255390A (en) | Image forming apparatus, functional cooperation control method, and functional cooperation control program | |
JP4291856B2 (en) | Image forming apparatus having Web service function | |
JP2006092182A (en) | Image processor, its control method and control program | |
JP2007214853A (en) | Image processor | |
JP2006285840A (en) | Document management system | |
JP4451737B2 (en) | Document editing system | |
JP4079722B2 (en) | Image forming apparatus that cooperates between apparatuses via a network | |
JP2019160278A (en) | Information processor, information processing system, workflow processing method and program | |
JP4141209B2 (en) | Image forming apparatus having Web service function | |
JP2009111785A (en) | Image processor and processing distributing method | |
JP4130108B2 (en) | Image forming apparatus having Web service function | |
JP5928156B2 (en) | E-mail processing system and e-mail processing method | |
JP4291855B2 (en) | Image forming apparatus having Web service function | |
JP2007230244A (en) | Image-forming apparatus having web service function | |
JP5096114B2 (en) | Image processing apparatus and scan data distribution method | |
JP6074923B2 (en) | Information processing apparatus, network system, operation information capturing method, and operation information capturing program | |
JP5211634B2 (en) | Image processing apparatus and priority determination method | |
JP4141210B2 (en) | Image forming apparatus having Web service function | |
JP5072499B2 (en) | Image forming apparatus, data communication apparatus, data communication method, and data communication program | |
JP2013214319A (en) | Print system, image forming apparatus, and printing method | |
US11843737B2 (en) | Information processing apparatus, control method therefor, and storage medium | |
JP2009278336A (en) | Image forming apparatus, provided function control method, and provided function control program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100803 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20111107 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120110 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20120508 |