JP4090806B2 - Image information processing apparatus and application installation method - Google Patents
Image information processing apparatus and application installation method Download PDFInfo
- Publication number
- JP4090806B2 JP4090806B2 JP2002214463A JP2002214463A JP4090806B2 JP 4090806 B2 JP4090806 B2 JP 4090806B2 JP 2002214463 A JP2002214463 A JP 2002214463A JP 2002214463 A JP2002214463 A JP 2002214463A JP 4090806 B2 JP4090806 B2 JP 4090806B2
- Authority
- JP
- Japan
- Prior art keywords
- application
- external
- list
- network
- web
- 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 - Lifetime
Links
Images
Description
【0001】
【発明の属する技術分野】
この発明は、コピー、プリンタ、スキャナおよびファクシミリなどの画像情報処理にかかるユーザサービスを提供するとともに、インターネットに接続されたクライアント端末からWEBを介してアプリケーションのインストールやプログラムのカスタマイズを行うことができる画像情報処理装置およびアプリケーションインストール方法に関するものである。
【0002】
【従来の技術】
近年では、プリンタ、コピー、ファクシミリ、スキャナなどの各装置の機能を1つの筐体内に収納した画像形成装置(以下、「複合機」という。)が知られている。この複合機は、1つの筐体内に表示部、印刷部および撮像部などを設けるとともに、プリンタ、コピーおよびファクシミリ装置にそれぞれ対応した3種類のソフトウェアを設け、これらのソフトウェアを切り替えることによって、当該装置をプリンタ、コピー、スキャナまたはファクシミリ装置として動作させるものである。
【0003】
このような従来の複合機では、複合機の出荷後にサードベンダなどの第三者が新たなアプリケーションプログラムを開発して搭載したり、複合機で動作するアプリケーションプログラムをカスタマイズすることは想定されていない。
【0004】
また、従来の複合機は、ネットワークに接続することは可能ではあるが、プリンタサーバなどの管理サーバを利用してネットワーク機能を利用しており、複合機それ自体がPC(Personal Computer)などのように直接ネットワークの諸機能を実現可能とするものではない。
【0005】
【発明が解決しようとする課題】
ところで、このような従来の複合機では、プリンタ、コピー、スキャナおよびファクシミリ装置に対応するソフトウェアをそれぞれ別個に設けているため、各ソフトウェアの開発に多大の時間を要する。このため、出願人は、表示部、印刷部および撮像部などの画像形成処理で使用されるハードウェア資源を有し、プリンタ、コピーまたはファクシミリなどの各ユーザサービスにそれぞれ固有の処理を行うアプリケーションを複数搭載し、これらのアプリケーションとハードウェア資源との間に介在して、ユーザサービスを提供する際に、アプリケーションの少なくとも2つが共通的に必要とするハードウェア資源の管理、実行制御並びに画像形成処理を行う各種コントロールサービスからなるプラットホームを備えた画像形成装置(複合機)を発明した。
【0006】
このような新規な複合機では、アプリケーションと、ハードウェア資源にアクセスするような開発が難しい処理を行うコントロールサービスとを別個に設けているため、複合機の出荷後にユーザもしくは第三者であるサードベンダが画像形成処理などにかかるアプリケーションとして新規な外部アプリケーションを開発して複合機に搭載可能な構成となっている。
【0007】
このため、新規な複合機では、新たな機能を備えた外部アプリケーションを開発し、その外部アプリケーションを複合機に搭載したり、出荷当初から搭載されている既存の機能をカスタマイズする必要性が生じてくる。
【0008】
ここで、複合機には、利用者に対する各種画面の表示や、複合機のシステムに対する操作入力のインタフェースとして、オペレーションパネルの操作表示部が用意されている。しかしながら、このオペレーションパネルの操作表示部は、PCなどのコンピュータのディスプレイ画面などの表示装置と異なり、画面サイズが非常に狭いものとなっている。また、操作表示部に各種ボタンを描画したり、ソフトウェアキーボードを表示することによって、利用者による操作表示部からの入力操作が可能となっているが、コンピュータにおけるキーボード、マウスなどの入力装置に比べれば、自由な入力操作には限界がある。
【0009】
このように、新規な複合機には、外部アプリケーションのインストールや既存プログラムのカスタマイズを容易な操作で行う必要性が生じるという従来の複合機では問題とならなかった新規な課題が生じてくる。
【0010】
この発明は上記に鑑みてなされたもので、外部アプリケーションのインストールやプログラムのカスタマイズを容易な操作で行える画像情報処理装置およびアプリケーションインストール方法を得ることを目的とする。
【0011】
【課題を解決するための手段】
上記目的を達成するため、請求項1にかかる発明は、印刷部または撮像部を有するハードウェア資源を利用して画像情報処理にかかる外部アプリケーションを複数搭載可能とした画像情報処理装置であって、ネットワークに接続して各種データの送受信を制御する通信手段と、前記ネットワークに接続されたクライアント端末からの指示を受信した場合に、インストール可能な複数の外部アプリケーションの識別情報のそれぞれと複数のネットワーク上の保存領域のそれぞれとを対応付けた一覧であるアプリケーションリストを外部から取得して、前記複数の外部アプリケーションの識別情報を、前記通信手段を介して前記クライアント端末に表示されるWEBページに選択可能に表示し、前記クライアント端末から前記WEBページを介して選択された外部アプリケーションの識別情報に対応する前記ネットワーク上の保存領域から前記選択された外部アプリケーションを、前記通信手段を介して受信し、受信した外部アプリケーションをインストールするWEBサービス提供手段を備え、前記外部アプリケーションは、前記ハードウェア資源の制御のためのインタフェースであるアプリケーションプログラミングインタフェースに対して処理要求を行うことを特徴とする。
【0012】
この請求項1にかかる発明によれば、WEBサービス提供手段によって、ネットワークに接続されたクライアント端末からの指示を受信した場合に、インストール可能な複数の外部アプリケーションの識別情報のそれぞれと複数のネットワーク上の保存領域のそれぞれとを対応付けた一覧であるアプリケーションリストを外部から取得して、複数の外部アプリケーションの識別情報を、通信手段を介してクライアント端末に表示されるWEBページに選択可能に表示し、クライアント端末からWEBページを介して選択された外部アプリケーションの識別情報に対応するネットワーク上の保存領域から選択された外部アプリケーションを通信手段を介して受信し、受信した外部アプリケーションをインストールすることで、クライアント端末に表示されたWEBページからの容易な操作で外部アプリケーションを画像情報処理装置にインストールすることができ、外部アプリケーションを利用した多種多様な機能を容易な操作で画像情報処理装置に実現させることができる。また、この請求項1にかかる発明によれば、開発した外部アプリケーションを記憶媒体に格納してからインストールするなどの煩雑な作業を行う必要がなく、クライアント端末からの容易な操作でインターネット上の任意の領域にある外部アプリケーションを画像情報処理装置にインストールすることができる。また、この請求項1にかかる発明によれば、必要な機能を実現する外部アプリケーションのみをクライアント端末を利用して容易にインストールすることができる。また、この請求項1にかかる発明によれば、外部アプリケーションの選択を操作入力が容易なWEBページから行うことができ、必要な機能を有する外部アプリケーションをより容易にインストールすることができる。
【0015】
また、請求項2にかかる発明は、請求項1に記載の画像情報処理装置において、前記外部アプリケーションをインストール可能な形式で記憶したインストール記憶媒体から前記外部アプリケーションを読み出す記憶媒体インタフェース手段をさらに備え、前記WEBサービス提供手段は、さらに前記インストール記憶媒体から前記外部アプリケーションをインストールすることを特徴とする。
【0016】
この請求項2にかかる発明によれば、WEBサービス提供手段によって、インストール記憶媒体から記憶媒体インタフェース手段を利用して外部アプリケーションをインストールすることで、インストール記憶媒体を画像情報処理装置に装着していれば、画像情報処理装置から離れたクライアント端末からの容易な操作によってインストール記憶媒体の外部アプリケーションをインストールすることができる。
【0021】
また、請求項3にかかる発明は、請求項1または2に記載の画像情報処理装置において、前記WEBサービス提供手段は、前記通信手段を介して、前記アプリケーションリストの取得先を前記WEBページに表示し、前記クライアント端末によって指定された取得先から前記アプリケーションリストを取得して前記WEBページに表示することを特徴とする。
【0022】
この請求項3にかかる発明によれば、WEBサービス提供手段によって、通信手段を介して、アプリケーションリストの取得先をWEBページに表示し、クライアント端末によって指定された取得先からアプリケーションリストを取得してWEBページに表示することで、インストールする外部アプリケーションに関するアプリケーション情報が任意の場所にある場合でも、外部アプリケーションの保存場所を確実に入手して、外部アプリケーションを容易にインストールすることができる。
【0023】
また、請求項4にかかる発明は、請求項3に記載の画像情報処理装置において、前記WEBサービス提供手段は、前記アプリケーションリストの取得先としてネットワーク経由で取得する旨の指定を前記通信手段を介して前記WEBページに表示し、前記クライアント端末によって、前記取得先がネットワーク経由で取得する旨の指定がされた場合には、前記通信手段を介してネットワークに接続された所定の領域から前記アプリケーションリストを取得して前記WEBページに表示することを特徴とする。
【0024】
この請求項4にかかる発明によれば、WEBサービス提供手段によって、アプリケーションリストの取得先としてネットワーク経由で取得する旨の指定を通信手段を介してWEBページに表示し、クライアント端末によって、取得先がネットワーク経由で取得する旨の指定がされた場合には、通信手段を介してネットワークに接続された所定の領域から前記リケーションリストを取得してWEBページに表示することで、外部アプリケーションおよびアプリケーション情報がインターネット上にある場合でも、外部アプリケーションの保存場所を確実に入手して、外部アプリケーションを容易にインストールすることができる。
【0037】
また、請求項5にかかる発明は、請求項4のいずれか一つに記載の画像情報処理装置において、前記WEBサービス提供手段は、前記アプリケーションとして搭載されたWEBアプリであることを特徴とする。
【0038】
この請求項5にかかる発明によれば、WEBサービス提供手段がアプリケーションとして搭載されたWEBアプリであるので、WEBサーバとしての機能のみをWEBアプリに含め、ハードウェア資源に対するアクセスをコントロールサービスに委ねることができ、WEBアプリの開発を効率的に行うことができる。
【0039】
また、請求項6にかかる発明は、印刷部または撮像部を有するハードウェア資源を利用して画像情報処理にかかる外部アプリケーションを複数搭載可能とした画像情報処理装置で実行されるアプリケーションインストール方法であって、前記画像情報処理装置は、ネットワークに接続して各種データの送受信を制御する通信手段を備え、前記ネットワークに接続されたクライアント端末からの指示を受信した場合に、インストール可能な複数の外部アプリケーションの識別情報のそれぞれと複数のネットワーク上の保存領域のそれぞれとを対応付けた一覧であるアプリケーションリストを外部から取得するアプリケーションリスト取得ステップと、前記複数の外部アプリケーションの識別情報を、前記通信手段を介して前記クライアント端末に表示されるWEBページに選択可能に表示する表示ステップと、前記クライアント端末から前記WEBページを介して選択された外部アプリケーションの識別情報に対応する前記ネットワーク上の保存領域から前記選択された外部アプリケーションを前記通信手段を介して受信し、受信した外部アプリケーションをインストールするインストールステップと、を含み、前記外部アプリケーションは、前記ハードウェア資源の制御のためのインタフェースであるアプリケーションプログラミングインタフェースに対して処理要求を行うことを特徴とする。
【0040】
この請求項6にかかる発明によれば、ネットワークに接続されたクライアント端末からの指示を受信した場合に、インストール可能な複数の外部アプリケーションの識別情報のそれぞれと複数のネットワーク上の保存領域のそれぞれとを対応付けた一覧であるアプリケーションリストを外部から取得し、複数の外部アプリケーションの識別情報を、通信手段を介してクライアント端末に表示されるWEBページに選択可能に表示し、クライアント端末からWEBページを介して選択された外部アプリケーションの識別情報に対応するネットワーク上の保存領域から選択された外部アプリケーションを、通信手段を介して受信し、受信した外部アプリケーションをインストールすることで、クライアント端末に表示されたWEBページからの容易な操作で外部アプリケーションを画像情報処理装置にインストールすることができ、外部アプリケーションを利用した多種多様な機能を容易な操作で画像情報処理装置に実現させることができる。また、この請求項1にかかる発明によれば、開発した外部アプリケーションを記憶媒体に格納してからインストールするなどの煩雑な作業を行う必要がなく、クライアント端末からの容易な操作でインターネット上の任意の領域にある外部アプリケーションを画像情報処理装置にインストールすることができる。また、この請求項6にかかる発明によれば、必要な機能を実現する外部アプリケーションのみをクライアント端末を利用して容易にインストールすることができる。また、この請求項6にかかる発明によれば、外部アプリケーションの選択を操作入力が容易なWEBページから行うことができ、必要な機能を有する外部アプリケーションをより容易にインストールすることができる。
【0043】
また、請求項7にかかる発明は、請求項6に記載のアプリケーションインストール方法において、前記インストールステップは、さらに、前記外部アプリケーションをインストール可能な形式で記憶したインストール記憶媒体から前記外部アプリケーションを読み出してインストールすることを特徴とする。
【0044】
この請求項7にかかる発明によれば、インストールステップによって、インストール記憶媒体から外部アプリケーションをインストールすることで、インストール記憶媒体を画像情報処理装置に装着していれば、画像情報処理装置から離れたクライアント端末からの容易な操作によってインストール記憶媒体の外部アプリケーションをインストールすることができる。
【0049】
また、請求項8にかかる発明は、請求項6または7に記載のアプリケーションインストール方法において、前記アプリケーションリスト取得ステップは、前記通信手段を介して、前記アプリケーションリストの取得先を前記WEBページに表示し、前記クライアント端末によって指定された取得先から前記アプリケーションリストを取得することを特徴とする。
【0050】
この請求項8にかかる発明によれば、アプリケーションリスト取得ステップによって、通信手段を介して、アプリケーションリストの取得先をWEBページに表示し、指定された取得先からアプリケーションリストを取得することで、インストールする外部アプリケーションに関するアプリケーションリストが任意の場所にある場合でも、外部アプリケーションの保存場所を確実に入手して、外部アプリケーションを容易にインストールすることができる。
【0051】
また、請求項9にかかる発明は、請求項8に記載のアプリケーションインストール方法において、前記アプリケーションリスト取得ステップは、前記アプリケーションリストの取得先としてネットワーク経由で取得する旨の指定を前記通信手段を介して前記WEBページに表示し、前記クライアント端末によって、前記取得先がネットワーク経由で取得する旨の指定がされた場合には、前記通信手段を介してネットワークに接続された所定の領域から前記アプリケーション情報を取得することを特徴とする。
【0052】
この請求項9にかかる発明によれば、アプリケーションリスト取得ステップによって、アプリケーションリストの取得先としてネットワーク経由で取得する旨の指定を前記通信手段を介して前記WEBページに表示し、前記クライアント端末によって、前記取得先がネットワーク経由で取得する旨の指定がされた場合には、前記通信手段を介してネットワークに接続された所定の領域から前記アプリケーションリストを取得することで、外部アプリケーションおよびアプリケーションリストがインターネット上にある場合でも、外部アプリケーションの保存場所を確実に入手して、外部アプリケーションを容易にインストールすることができる。
【0065】
【発明の実施の形態】
以下に添付図面を参照して、この発明にかかる画像情報処理装置およびアプリケーションインストール方法の好適な実施の形態を詳細に説明する。
【0066】
(実施の形態1)
図1は、この発明の実施の形態1である画像形成装置(以下、「複合機」という)の主要部の構成とネットワーク構成を示すブロック図である。実施の形態1にかかる複合機100は、インターネットに接続され、当該インターネットに接続されたPC(Personal Computer)などのクライアント端末から複合機に外部アプリのインストールを行うことを可能としたものである。
【0067】
図1に示すように、本実施の形態では、複合機100と、PC(personal Computer)200と複数のftpサーバ250と、コンピュータ260がインターネット220に接続されている。これらの複合機100、PC200、複数のftpサーバ250、コンピュータ260それぞれの間の通信プロトコルはTCP/IPを利用している。
【0068】
複合機100は、WEBアプリ117と、VAS(Virtual Application Service:仮想アプリケーションサービス)118と、NCS(ネットワークコントロールサービス)128と、httpd(httpデーモン)106と、共有メモリ105とを主に備えた構成となっている。ここで、WEBアプリ117は、本発明におけるWEBサービス提供手段を構成する。
【0069】
WEBアプリ117は、インターネット220に接続されたクライアント端末としてのPC200に対してWEBサーバ(httpサーバ)として動作し、PC200上で動作するWEBブラウザに後述するインストール画面201を表示し、表示したインストール画面201からの操作入力や要求に応じたインストールに関する処理を行い、その結果をPC200に返すものである。
【0070】
ここで、インストール画面201は、本発明におけるWEBページを構成し、html形式(Hyper Text Markup Language)で記述されたファイル(install.htm)である。当該ファイルをPC200上のWEBブラウザによって表示することにより、インストール画面201がPC200で表示される。また、WEBアプリ117は、インストール画面201(install.htm)からの操作入力や要求に応じたインストールに関する処理を、CGI(Common Gateway Interface)、具体的にはinstall.cgiのスクリプトによって実行し、その処理結果をインストール画面201(install.htm)に反映して、PC200のWEBブラウザに返すようになっている。具体的には、WEBアプリ117は、インストールに関する処理の要求(ボタンのクリック操作等)があった場合には、install.cgiのスクリプトを実行する。なお、本実施の形態では、CGIスクリプトを実行することにより、WEBアプリ117による各処理を実行しているが、CGIスクリプトから呼び出される別のプログラムで実行するように構成しても良い。また、インストール画面を、XML形式(eXtensible Markup Language)で記述するように構成することも可能である。
【0071】
VAS118は、コントロールサービスとアプリケーションとの間に配置され、アプリケーションからのコントロールサービスに対するアクセス、またはコントロールサービスからのアプリケーションに対するアクセスを仲介するものである。また、VAS118は、NCS128から通知されたインターネット220経由のリクエストメッセージ受信の旨をWEBアプリ117に通知することも行う。
【0072】
NCS128は、ネットワークを制御するものであり、httpd106から通知されたリクエストメッセージ受信の旨をVAS118に通知することも行う。
【0073】
httpd106は、OSに含まれるプロセス(デーモン)であり、ポート80番を常時監視してリクエストメッセージの受信を行うとともに、レスポンスメッセージの送信を行うものである。なお、リクエストメッセージおよびレスポンスメッセージの構造は、通常のhttpプロトコルにおける各メッセージの構造と同様であり、各メッセージには、html形式で記述されたメッセージボディが含まれている。また、httpd106は、インターネット220経由で受信したリクエストメッセージ受信の旨をVAS118に通知するとともに、リクエストメッセージを共有メモリ105に格納する。
【0074】
この共有メモリ105は、httpd106とWEBアプリ117とのプロセス間通信に利用されるものであり、共有メモリ105を介してリクエストメッセージ、レスポンスメッセージなどの受け渡しを行う。
【0075】
複合機100には、ICカードインタフェース部230が設けられている。ICカードインタフェース部230は、ICカード240を挿入して、ICカード240とデータのやりとりを行うインタフェースである。ICカード240は、インストール記憶媒体として使用することができ、この場合には開発された外部アプリ242をインストール可能な形式で、例えば外部アプリ242を圧縮し、かつインストールの実行処理が記述されたインストールスクリプトファイル241とともにICカード240に格納する。また、ICカード240には、ICカード240内に保存されている外部アプリ242の一覧を示すアプリケーションリスト243が格納されている。
【0076】
PC200は、複合機100のWEBアプリ117をサーバとして、WEBアプリ117からのサービスの提供を受けるクライアント端末であり、PC200で実行されるWEBブラウザ上でインストール画面201やその他画面を表示し、操作入力を行うようになっている。
【0077】
ftpサーバ250は、外部アプリ242と上記インストールスクリプトファイル241を格納するインターネット上の保存領域である。このftpサーバ250は、任意の数を設けることができる。
【0078】
コンピュータ260には、アプリケーションリスト261が保存されている。アプリケーションリスト261は、外部アプリ242の保存場所の一覧を示すものである。なお、このアプリケーションリスト261は、複合機100のHDD103あるいはフラッシュメモリなどの記憶媒体に格納するように構成してもよい。
【0079】
次に、本実施の形態にかかる複合機100の全体の機能的構成について説明する。図2は、実施の形態1の複合機100の構成を示すブロック図である。図1に示すように、複合機100は、白黒レーザプリンタ(B&W LP)101と、カラーレーザプリンタ(Color LP)102と、ハードディスク装置(HDD)103と、スキャナ、ファクシミリ、メモリ、ネットワークインタフェースなどのハードウェアリソース104を有するとともに、プラットホーム120と、アプリケーション130とから構成されるソフトウェア群110とを備えている。
【0080】
プラットホーム120は、アプリケーションからの処理要求を解釈してハードウェア資源の獲得要求を発生させるコントロールサービスと、一または複数のハードウェア資源の管理を行い、コントロールサービスからの獲得要求を調停するシステムリソースマネージャ(SRM)123と、汎用OS121とを有する。
【0081】
コントロールサービスは、複数のサービスモジュールから形成され、SCS(システムコントロールサービス)122と、ECS(エンジンコントロールサービス)124と、MCS(メモリコントロールサービス)125と、OCS(オペレーションパネルコントロールサービス)126と、FCS(ファックスコントロールサービス)127と、NCS(ネットワークコントロールサービス)128とから構成される。このプラットホーム120は、あらかじめ定義された関数により前記アプリケーション130から処理要求を受信可能とするアプリケーションプログラムインタフェース(API)を有する。
【0082】
汎用OS121は、UNIX(登録商標)などの汎用オペレーティングシステムであり、プラットホーム120並びにアプリケーション130の各ソフトウェアをそれぞれプロセスとして並列実行する。
【0083】
SRM123のプロセスは、SCS122とともにシステムの制御およびリソースの管理を行うものである。SRM123のプロセスは、スキャナ部やプリンタ部などのエンジン、メモリ、HDDファイル、ホストI/O(セントロI/F、ネットワークI/F、IEEE1394 I/F、RS232C I/Fなど)のハードウェア資源を利用する上位層からの要求にしたがって調停を行い、実行制御する。
【0084】
具体的には、このSRM123は、要求されたハードウェア資源が利用可能であるか(他の要求により利用されていないかどうか)を判断し、利用可能であれば要求されたハードウェア資源が利用可能である旨を上位層に伝える。また、SRM123は、上位層からの要求に対してハードウェア資源の利用スケジューリングを行い、要求内容(例えば、プリンタエンジンにより紙搬送と作像動作、メモリ確保、ファイル生成など)を直接実施している。
【0085】
SCS122のプロセスは、アプリ管理、操作部制御、システム画面表示、LED表示、リソース管理、割り込みアプリ制御などを行う。
【0086】
ECS124のプロセスは、白黒レーザプリンタ(B&W LP)101、カラーレーザプリンタ(Color LP)102、スキャナ、ファクシミリなどからなるハードウェアリソース104のエンジンの制御を行う。
【0087】
MCS125のプロセスは、画像メモリの取得および解放、ハードディスク装置(HDD)の利用、画像データの圧縮および伸張などを行う。
【0088】
FCS127のプロセスは、システムコントローラの各アプリ層からPSTN/ISDN網を利用したファクシミリ送受信、BKM(バックアップSRAM)で管理されている各種ファクシミリデータの登録/引用、ファクシミリ読みとり、ファクシミリ受信印刷、融合送受信を行うためのAPIを提供する。
【0089】
NCS128のプロセスは、ネットワークI/Oを必要とするアプリケーションに対して共通に利用できるサービスを提供するためのプロセスであり、ネットワーク側から各プロトコルによって受信したデータを各アプリケーションに振り分けたり、アプリケーションからデータをネットワーク側に送信する際の仲介を行う。
【0090】
OCS126のプロセスは、オペレータ(ユーザ)と本体制御間の情報伝達手段となるオペレーションパネル(操作パネル)910の制御を行う。OCS126は、オペレーションパネルからキー押下(またはタッチ操作)をキーイベントとして取得し、取得したキーに対応したキーイベント関数をSCS122に送信するOCSプロセスの部分と、アプリケーション130またはコントロールサービスからの要求によりオペレーションパネルに各種画面を描画出力する描画関数やその他オペレーションパネルに対する制御を行う関数などがあらかじめ登録されたOCSライブラリの部分とから構成される。このOCSライブラリは、アプリケーション130およびコントロールサービスの各モジュールにリンクされて実装されている。なお、OCS126のすべてをプロセスとして動作させるように構成しても良く、あるいはOCS126のすべてをOCSライブラリとして構成しても良い。
【0091】
アプリケーション130は、ページ記述言語(PDL)、PCLおよびポストスクリプト(PS)を有するプリンタ用のアプリケーションであるプリンタアプリ111と、コピー用アプリケーションであるコピーアプリ112と、ファクシミリ用アプリケーションであるファックスアプリ113と、スキャナ用アプリケーションであるスキャナアプリ114と、ネットワークファイル用アプリケーションであるネットファイルアプリ115と、工程検査用アプリケーションである工程検査アプリ116と、上述のWEBアプリ117、VAS118とを有している。
【0092】
アプリケーション130の各プロセス、コントロールサービスの各プロセスは、関数呼び出しとその戻り値送信およびメッセージの送受信によってプロセス間通信を行いながら、コピー、プリンタ、スキャナ、ファクシミリなどの画像形成処理にかかるユーザサービスを実現している。
【0093】
このように、実施の形態1にかかる複合機100には、複数のアプリケーション130および複数のコントロールサービスが存在し、いずれもプロセスとして動作している。そして、これらの各プロセス内部には、一または複数のスレッドが生成されて、スレッド単位の並列実行が行われる。そして、コントロールサービスがアプリケーション130に対し共通サービスを提供しており、このため、これらの多数のプロセスが並列動作、およびスレッドの並列動作を行って互いにプロセス間通信を行って協調動作をしながら、コピー、プリンタ、スキャナ、ファクシミリなどの画像形成処理にかかるユーザサービスを提供するようになっている。
【0094】
また、複合機100には、複合機100の顧客、サードベンダなどの第三者がコントロールサービス層の上のアプリケーション層に外部アプリを開発して搭載することが可能となっている。
【0095】
なお、実施の形態1にかかる複合機100では、複数のアプリケーション130のプロセスと複数のコントロールサービスのプロセスとが動作しているが、アプリケーション130とコントロールサービスのプロセスがそれぞれ単一の構成とすることも可能である。また、各アプリケーション130は、アプリケーションごとに追加または削除することができる。
【0096】
次に、このように構成された複合機100のWEBアプリ117を利用したPC200からの外部アプリ242のインストール方法について説明する。まず、利用者は、PC200でWEBブラウザを起動し、複合機100のURLを指定して複合機100のWEBアプリ117にアクセスする。WEBブラウザからのアクセスを受けたWEBアプリ117は、インストール画面201(install.htm)をPC200のWEBブラウザに表示させる。
【0097】
図3(a)は、インストール画面201の内容の一例を示す説明図である。図3(a)に示すように、インストール画面201には、アプリケーションリストの取得元を指定するWEBボタンおよびICカードボタンが表示されている。
【0098】
利用者がWEBボタンをマウスなどでクリック操作すると、WEBアプリ117によって、インターネット上のコンピュータ260からアプリケーションリスト261が取得され、インストール可能な外部アプリ242の一覧として、取得されたアプリケーションリストから外部アプリ名を抽出し、アクティブアプリケーションの欄に一覧表示されるようになっている。install.htmにおいて、このアクティブアプリケーションの欄に相当するすべての行の先頭には、「application_list:」の文字列が記述されている。
【0099】
利用者がICカードボタンをマウスなどでクリック操作すると、WEBアプリ117によって、ICカード240からアプリケーションリスト243が読み込まれ、インストール可能な外部アプリ242の一覧として、読み込まれたアプリケーションリスト243から外部アプリ名を抽出し、アクティブアプリケーションの欄に一覧表示されるようになっている。
【0100】
利用者は、WEBボタンまたはICカードボタンのいずれかをクリック操作すると、複合機100にアプリケーションリスト取得のリクエストメッセージがinstall.htmの内容とともに送信される。
【0101】
ここで、リクエストメッセージを受信した複合機100における処理について説明する。図4は、リクエストメッセージを受信した複合機100における処理の手順を示すフローチャートである。
【0102】
httpd106は、ポート80番を常時監視しており、PC200からリクエストメッセージをポート80番で受信する(ステップS401)。そして、httpd106は、受信したリクエストメッセージを読み出し、リクエストメッセージを共有メモリ105に書き込む(ステップS402)。次に、httpd106は、リクエストメッセージ受信の旨をNCS128に通知する(ステップS403)。
【0103】
通知を受けたNCS128は、さらにリクエストメッセージ受信の旨をVAS118に通知する(ステップS404)。通知を受けたVAS118は、さらにリクエストメッセージ受信の旨をWEBアプリ117に通知する(ステップS405)。WEBアプリ117は、リクエストメッセージ受信の旨の通知を受けたことをトリガとして、共有メモリ105を参照して、リクエストメッセージを読み出す(ステップS406)。そして、リクエストメッセージの内容を解析して(ステップS407)、リクエストメッセージのメッセージボディに記述された内容に応じた処理を実行する(ステップS408)。このとき、メッセージボディにCGIを実行する旨が記述されていれば、対応するCGIを実行する。
【0104】
そして、WEBアプリ117は、処理の実行結果をレスポンスメッセージとして、httpd106経由でリクエストメッセージの送信元であるPC200に返信する(ステップS409)。
【0105】
本実施の形態の複合機100におけるWEBアプリ117では、図3(a)のインストール画面201(install.htm)において、アプリケーションリストの取得元のいずれかのボタンをクリック操作したときに、WEBブラウザから複合機100にリクエストメッセージにメッセージボディとしてinstall.htmが含められて送信される。このinstall.htmには、上記ボタンをクリックしたときにinstall.cgiを呼び出す旨が記述されており、このためリクエストメッセージを受信して解析を行ったWEBアプリ117は、install.cgiを実行する。
【0106】
図5は、WEBアプリ117によるinstall.cgiの処理の手順を示すフローチャートである。WEBアプリ117は、まずアプリケーションリストの取得元として、「WEB」、「ICカード」のいずれのボタンがクリック操作されたかを判断する(ステップS501)。
【0107】
そして、WEBボタンが指定されている場合には、インターネット220に接続されたコンピュータ260のURLを指定して、当該コンピュータ260に格納されているアプリケーションリスト261をダウンロードする(ステップS502)。一方、ICカードボタンが指定されている場合には、ICカードインタフェース部230によってICカード240にアクセスし、ICカード240に格納されているアプリケーションリスト243を読み出す(ステップS503)。
【0108】
図6は、アプリケーションリスト261の一例を示す説明図である。アプリケーションリスト261は、図6に示すように、外部アプリ名と、ftpサイトアドレスと、サイト内パス(ディレクトリ)から構成される。なお、ICカード240に格納されているアプリケーションリスト243は、外部アプリ名と、パスのみが設定されており、ftpサイトアドレスは設定されていない。
【0109】
次に、アプリケーションリストを格納するためのインストールデータファイルがすでにHDD103などの記憶媒体に存在するか否かを調べ(ステップS504)、存在しない場合には、空のインストールデータファイルをHDD103などに作成する(ステップS505)。そして、インストールデータファイルに取得したアプリケーションリスト243または261の内容を追加する(ステップS506)。
【0110】
次に、WEBアプリ117は、受信したリクエストメッセージの中のinstall.htmを先頭から一行づつ読み込む(ステップS507)。そして、読み込んだ行が「application_list:」の文字列を含むか否かを調べることにより、アクティブアプリケーションの欄か否かを判断する(ステップS508)。
【0111】
そして、アクティブアプリケーションの欄であると判断した場合には、インストールデータファイルからアプリケーションリストの中の外部アプリ名を取得し(ステップS509)、取得した外部アプリ名の前方にチェックボックスを付したものを一行とし(ステップS510)、この一行をPC200に送信する(ステップS511)。
【0112】
一方、ステップS508において、アクティブアプリケーションの欄でないと判断した場合には、ステップS507で読み込んだ一行をそのままPC200に送信する(ステップS511)。
【0113】
そして、ステップS507からS511までの処理を、install.htmのすべての行について繰り返し行う(ステップS512)。これにより、PC200のWEBブラウザには、install.cgiによる処理結果のinstall.htmが順次表示されることになる。
【0114】
図3(b)は、WEBアプリ117による処理結果のインストール画面201の一例を示す説明図である。図3(b)に示すように、外部アプリの一覧がアクティブアプリケーションリストの欄に表示されている。
【0115】
図3(b)に示すように、インストール画面201にインストール可能な外部アプリのリストが表示されている状態で、インストールを希望する外部アプリのチェックボックスにチェックをいれ、インストールボタンをクリック操作すると、チェックボックスで指定された外部アプリのインストールがWEBアプリ117によって行われる。
【0116】
図7は、図3(b)のインストール画面201でインストールボタンがクリックされた場合のPC200の処理の手順を示すフローチャートである。WEBブラウザに表示されているインストール画面201のinstall.htm中に記述されたJava(登録商標)スクリプトが実行されることによって、かかるPC200側での処理が実行される。
【0117】
まず、チェックボックスにチェックマークが付されている外部アプリ名を取得する(ステップS701)。そして、取得した外部アプリ名と、インストールのリクエストメッセージをWEBアプリ117に送信する(ステップS702)。これによって、複合機100では、WEBアプリ117がリクエストメッセージを受信して解析した後、インストールが行われる。
【0118】
図8は、WEBアプリ117によるインストール処理の手順を示すフローチャートである。WEBアプリ117は、リクエストメッセージを受信すると、まずインストールデータを参照し、PC200から通知された外部アプリ名の保存先を取得する(ステップS801)。ここで、保存先は、インターネット上のftpサイトアドレス、サイト内パス、あるいはICカード内のパス(ディレクトリ)である。
【0119】
そして、WEBアプリ117は、取得した保存先にアクセスし、その保存先に格納されている外部アプリ242とインストールスクリプトを取得する(ステップS802)。ここで、外部アプリ242がftpサーバ250にある場合には、ftpプロトコルによって外部アプリ242を複合機100のHDD103などの記憶媒体にダウンロードする。一方、外部アプリがICカード240にある場合には、ICカード240から外部アプリ242を読み出す。
【0120】
次に、WEBアプリ117は、取得したインストールスクリプトを実行し、取得した外部アプリ242をインストールする(ステップS803)。インストールスクリプトとは、インストールの手順を記述したスクリプトファイルであり、かかるスクリプトを実行することによって、実際のインストール処理が行われる。
【0121】
このようなステップS801からS803までの処理を、PC200から通知されたすべての外部アプリについて繰り返し行う(ステップS804)。これによって、PC200のWEBブラウザに表示されたインストール画面201で指定されたすべての外部アプリ242のインストールが完了する。
【0122】
次に、本実施の形態の複合機100のハードウェア構成について説明する。図9は、図1に示した実施の形態1の複合機100のハードウェア構成図である。図9に示すように、この複合機100は、CPU902、SDRAM903、SRAM908、フラッシュメモリ(フラッシュROM)210、ICカードインタフェース部230およびHDD103などをASIC901に接続したコントローラボード900と、オペレーションパネル910と、ファックスコントロールユニット(FCU)920と、USB930と、IEEE1394 940と、プリンタ950とから構成されている。オペレーションパネル910はASIC901に直接接続され、FCU920、USB930、IEEE1394 940およびプリンタ950はPCIバスを介してASIC901に接続されている。
【0123】
ICカードインタフェース部230は、ICカード240を挿入して、ICカード240とデータのやりとりを行うインタフェースである。ICカード240は、インストール記憶媒体として使用することもでき、この場合には開発された外部アプリ242をICカード240に格納する。
【0124】
このように実施の形態1にかかる複合機100では、WEBアプリ117によって、インターネット220に接続されたクライアント端末であるPC200のWEブラウザからの要求に応じて外部アプリ242をインストールしているので、PC200からの容易な操作で外部アプリ242を複合機100にインストールすることができ、外部アプリ242を利用した多種多様な機能を容易な操作で複合機100に実現させることができる。
【0125】
(実施の形態2)
実施の形態1にかかる複合機100は、WEBアプリ117によって外部アプリ242のインストールをPC200から行うものであったが、この実施の形態2にかかる複合機は、WEBアプリによって複合機で動作するプログラムのカスタマイズをインターネットに接続されたPCから行うものである。
【0126】
図10は、実施の形態2にかかる複合機の主要構成およびネットワーク構成を示すブロック図である。図10に示すように、本実施の形態では、複合機1000と、PC(personal Computer)200とがインターネット220に接続されている。複合機1000およびPC200の間の通信プロトコルはTCP/IPを利用している。
【0127】
複合機1000は、図10に示すように、WEBアプリ1117と、VAS118と、NCS128と、httpd106と、複合機初期化部129と、プログラム起動部131と、汎用OS121内のインタプリタ(シェル)134と、共有メモリ105と、HDD103とを主に備えた構成となっている。ここで、WEBアプリ1117は、本発明におけるWEBサービス提供手段を構成し、シェル134は、本発明におけるプログラム実行手段を構成する。
【0128】
WEBアプリ1117は、インターネット220に接続されたクライアント端末としてのPC200に対してWEBサーバ(httpサーバ)として動作し、PC200上で動作するWEBブラウザに後述するプログラミング画面1001を表示し、このプログラミング画面1001からオペレーションパネル910の操作表示部のカスタマイズプログラムを入力させるものである。また、WEBアプリ1117は、PC200から入力されたカスタマイズプログラムをHDD103のカスタマイズ領域として作成されたカスタマイズディレクトリに保存する。さらに、WEBアプリ1117は、複合機1000上でカスタマイズプログラムが実行されるように、後述する起動設定ファイルにカスタマイズプログラムを登録する。
【0129】
ここで、プログラミング画面1001は、本発明におけるWEBページを構成し、html形式(Hyper Text Markup Language)で記述されたファイル(debug.htm)である。当該ファイルをPC200上でWEBブラウザによって表示することにより、プログラミング画面1001がPC200で表示される。また、WEBアプリ1117は、プログラミング画面(debug.htm)からの操作入力や要求に応じたカスタマイズプログラムの入力に関する処理等を、CGI(Common Gateway Interface)のスクリプトを実行し、その処理結果をプログラミング画面(debug.htm)に反映して、PC200のWEBブラウザに返すようになっている。具体的には、WEBアプリ1117は、カスタマイズプログラムの入力処理等の要求(ボタンのクリック操作等)があった場合には、debug.cgiのスクリプトを実行する。なお、本実施の形態では、CGIスクリプトを実行することにより、WEBアプリ1117による各処理を実行しているが、CGIスクリプトから呼び出される別のプログラムで実行するように構成しても良い。なお、プログラミング画面を、XML形式(eXtensible MarkupLanguage)で記述するように構成することも可能である。
【0130】
また、プログラミング画面1001から入力するカスタマイズプログラムは、インタプリタで解釈可能な言語で記述され、具体的には、汎用OS121がUNIX(登録商標)の場合、シェルスクリプトなどである。
【0131】
インタプリタ134は、カスタマイズプログラムをステップごとに解析し逐次実行するものであり、本実施の形態では、シェルスクリプトを実行するシェル(bsh,cshなど)である。このシェル134は、汎用OS121としてのUNIX(登録商標)にOSのカーネル135とは別個に存在するものである。
【0132】
プログラム起動部131は、HDD103の診断結果が正常である場合に、HDD103にインストールされている外部アプリ242を起動するものである。また、プログラム起動部131は、ICカード240などの記憶媒体に保存された外部アプリ242を起動する。
【0133】
複合機初期化部129は、汎用OS121の上で最初に起動されるプロセスであり、コントロールサービスやアプリケーション130(外部アプリを除く)の起動およびプログラム起動部131の起動を行うものである。
【0134】
HDD103には、起動設定ファイル211とが格納され、またHDD103のカスタマイズディレクトリ212にカスタマイズプログラムが格納されるようになっている。
【0135】
なお、VAS118、NCS128、httpd106および共有メモリ105の機能は、実施の形態1の複合機100と同様である。
【0136】
PC200は、複合機1000のWEBアプリ1117をサーバとして、WEBアプリ1117からのサービスの提供を受けるクライアント端末であり、PC200で実行されるWEBブラウザ上でプログラミング画面1001やその他画面を表示し、操作入力を行うようになっている。
【0137】
次に、本実施の形態にかかる複合機1000の全体の機能的構成について説明する。図11は、実施の形態2の複合機1000の構成を示すブロック図である。本実施の形態の複合機1000が実施の形態1の複合機100と異なる点は、複合機初期化部129と、プログラム起動部131と、インタプリタ(シェル)134を備えている点であり、その他の構成は実施の形態1の複合機100と同様である。
【0138】
次に、このように構成された複合機1000のWEBアプリ1117を利用したPC200からのオペレーションパネル910の操作表示部のカスタマイズ方法について説明する。まず、利用者は、PC200でWEBブラウザを起動し、複合機1000のURLを指定して複合機1000のWEBアプリ1117にアクセスする。WEBブラウザからのアクセスを受けたWEBアプリ1117は、プログラミング画面1001(debug.htm)をPC200のWEBブラウザに表示させる。
【0139】
図12は、プログラミング画面1001の内容の一例を示す説明図である。図12に示すように、プログラミング画面1001には、プログラム入力フィールドと、参照ボタンと、アップロードボタンと、保存ボタンと、消去ボタンと、テスト実行ボタンと、実行設定ボタンが表示される。
【0140】
参照ボタンは、ブラウザが動作しているPC200の記憶領域に格納されたカスタマイズプログラムを参照するためのボタンであり、この参照ボタンを押下すると、PC200上のディレクトリが表示され、所望のディレクトリに存在するカスタマイズプログラムを指定すると、ファイル名フィールドに指定されたカスタマイズプログラムのファイル名が表示される。なお、参照ボタンを押下したときに、複合機1000のHDD103などの記憶媒体のディレクトリを参照するように構成しても良い。
【0141】
アップロードボタンは、参照ボタンで指定したカスタマイズプログラムあるいは入力フィールドに入力したカスタマイズプログラムを、複合機1000に転送(アップロード)するためにクリック操作するものである。
【0142】
プログラム入力フィールドは、カスタマイズプログラムを入力する領域である。このプログラム入力フィールドには、PC200のキーボードなどの入力装置からカスタマイズプログラムを直接入力する他、上述のように参照ボタンをクリック操作することによってPC200の所望のディレクトリに存在する既存のプログラムファイルを指定することによってカスタマイズプログラムを入力する。debug.htmにおいて、このプログラム入力フィールドに相当するすべての行の先頭には、「program_list:」の文字列が記述されている。
【0143】
保存ボタンは、入力したカスタマイズプログラムを複合機1000にアップロードした後に、カスタマイズディレクトリに格納する場合にクリック操作するものである。消去ボタンは、入力フィールドに入力されたカスタマイズプログラムを消去する際にクリック操作するものである。
【0144】
実行設定ボタンは、カスタマイズディレクトリに保存されたカスタマイズプログラムを複合機1000で実行できるように、カスタマイズプログラムとカスタマイズプログラムを実行させるボタンを対応づける際にクリック操作するものである。この実行設定ボタンが押下されると、WEBアプリ1117は、カスタマイズプログラム中で指定されたボタン(キー)を、カスタマイズディレクトリに存在する画面ファイル中のボタン(キー)からキーコードに基づいて検索し、カスタマイズプログラムとボタン(キー)との対応付けを行い、カスタマイズプログラムの名称とボタン(キー)のキーコードのキー対応付けテーブルを生成してHDD103またはフラッシュメモリなどに当該テーブルを格納する。
【0145】
テスト実行ボタンは、入力されたカスタマイズプログラムを試験的に実行する際にクリック操作するものである。
【0146】
図13は、入力するカスタマイズプログラムの内容の一例を示す説明図である。図13に示すように、本実施の形態では、UNIX(登録商標)のシェルスクリプトを入力するようになっている。入力されたシェルスクリプトは、汎用OS121(UNIX(登録商標))のコマンド・インタプリタであるシェルによってステップごとに逐次実行され、このため、入力したカスタマイズプログラムのコンパイルおよびリンクは不要となっている。
【0147】
また、シェルスクリプトには、開発ライブラリで提供される複合機専用コマンドを指定できるようになっている。図13のスクリプトは、原稿をスキャナで読み込み(scanimage)、読み込み時にTIF形式に圧縮された画像データを伸長し(decomp)、伸長した画像データに対し文字認識処理を行う(ocr)。そして、文字認識処理による認識結果をテキストデータとしてメール送信(mail)する例を示している。このスクリプトの中では、scanimage,decomp,ocrの各コマンドが開発ライブラリで提供されるコマンドである。
【0148】
PC200のWEBブラウザに表示されているプログラミング画面1001(debug.htm)において、参照ボタンをクリックしてPC200に格納されているカスタマイズプログラムを指定し、あるいはプログラム入力フィールドに直接カスタマイズプログラムを入力し、アップロードボタンをクリック操作した場合、WEBブラウザから複合機100のWEBアプリ1117に対しリクエストメッセージが送信される。このリクエストメッセージのメッセージボディにはdebug.htmが含められており、このdebug.htmには、アップロードボタンをクリック操作したときにdebug.cgiを呼び出す旨が記述されている。このためリクエストメッセージを受信して解析を行ったWEBアプリ1117は、debug.cgiを実行する。
【0149】
図14は、WEBアプリ1117によるdebug.cgiの処理の手順を示すフローチャートである。WEBアプリ1117は、指定されたカスタマイズプログラムのプログラムファイルを複合機1000にアップロードする。あるいは受信したリクエストメッセージの中のdebug.htmのプログラム入力フィールドに直接入力されたカスタマイズプログラムをプログラムファイルにした後、このプログラムファイルを複合機1000にアップロードする(ステップS1401)。
【0150】
次に、WEBアプリ1117は、debug.htmを先頭から一行づつ読み込む(ステップS1402)。そして、読み込んだ行が「program_list:」の文字列を含むか否かを調べることにより、プログラム入力フィールドか否かを判断する(ステップS1403)。
【0151】
そして、プログラム入力フィールドであると判断した場合には、アップロードされたプログラムファイルを読み込んで(ステップS1404)、プログラムファイルの内容、すなわちカスタマイズプログラムをPC200に送信する(ステップS1405)。
【0152】
一方、ステップS1403において、プログラム入力フィールドでないと判断した場合には、ステップS1402で読み込んだ一行をそのままPC200に送信する(ステップS1406)。
【0153】
そして、ステップS1402からS1406までの処理を、debug.htmのすべての行について繰り返し行う(ステップS1407)。これにより、PC200のWEBブラウザには、debug.cgiによる処理結果のdebug.htmが順次表示されることになる。
【0154】
このようにプログラミング画面1001から入力されたカスタマイズプログラムが複合機1000にアップロードされ、プログラム入力フィールドにアップロード後のカスタマイズプログラムが表示された後、保存ボタン、実行設定ボタン、テスト実行ボタンのクリック操作が可能となる。これらのいずれかのボタンをクリック操作した場合におけるWEBアプリ1117の処理について説明する。
【0155】
図15は、プログラミング画面1001において、保存ボタン、実行設定ボタン、テスト実行ボタンのいずれかのクリック操作が行われた場合のWEBアプリ1117の処理の手順を示すフローチャートである。
【0156】
まず、WEBアプリ1117は、クリック操作されたボタンの種類を判断する(ステップS1501)。
【0157】
プログラミング画面1001で保存ボタンがクリックされた場合には、WEBアプリ1117は、ファイル名称を利用者に指定させ、カスタマイズプログラムを指定された名称で複合機1000のHDD103のカスタマイズディレクトリに格納する(ステップS1502)。
【0158】
図16は、カスタマイズディレクトリに格納されたカスタマイズプログラムの名称の一例を示す説明図である。図16に示すように、複合機1000のHDD103のカスタマイズディレクトリは、hdd/xxx/opepaneとなっており、このカスタマイズディレクトリにカスタマイズプログラムであるshell1,shell2,shell3が格納されている。
【0159】
一方、プログラミング画面1001で実行設定ボタンがクリックされた場合には、WEBアプリ1117は、カスタマイズプログラムとボタンとの対応付けを行う(ステップS1503)。図17は、キー対応付けテーブルの内容の一例を示す説明図である。図17に示すように、キー対応付けテーブルには、ボタンのキーコードとカスタマイズプログラム名称が対応付けられる。
【0160】
また、プログラミング画面1001でテスト実行ボタンが押下された場合には、WEBアプリ1117は、入力されたカスタマイズプログラムのテスト実行を行い、オペレーションパネル910に表示される画面と同一の画面をPC200で動作しているWEBブラウザに表示する(ステップS1504)。
【0161】
次に、このようにして生成されたカスタマイズプログラムの実行処理について説明する。図18は、複合機1000の電源投入が行われてから、カスタマイズプログラムの実行が可能となるまでの一連の処理の手順を示すフローチャートである。
【0162】
カスタマイズプログラムのカスタマイズディレクトリへの保存および起動設定ファイル211への設定が完了したら、利用者は複合機1000の電源を再投入する。このとき複合機1000では、ROMモニタ(図示せず)によってハードウェアの診断処理を行い(ステップS1801)、その後汎用OS121を起動し(ステップS1802)、さらに複合機初期化部129を起動する(ステップS1803)。複合機初期化部129は、まずコントロールサービスの起動を行い(ステップS1804)、続いてコピーアプリ112、プリンタアプリ111などの複合機1000の出荷時に提供されている既存アプリを起動し(ステップS1805)、さらに出荷後新たに開発された外部アプリなどのプログラムを起動するためにプログラム起動部131を起動する(ステップS1806)。
【0163】
プログラム起動部131は、まずHDD103の起動設定ファイル211を参照し(ステップS1807)、起動すべきプログラムの名称を取得する。
【0164】
図19は、起動設定ファイル211の一例を示す説明図である。図19に示すように、起動設定ファイル211には、「プログラム名称 カスタマイズプログラム名」の形式で、プログラム起動部131によって起動されるプログラムが登録されている。図19の例では、シェルスクリプトであるシェルのプログラムが最初に登録され、その後に、外部アプリとしてXXXアプリが登録されている。
【0165】
このため、プログラム起動部131は、まずシェルを起動し(ステップS1808)、次いで、外部アプリであるXXXアプリを順に起動する(ステップS1809)。
【0166】
従って、オペレーションパネル910の操作表示部に表示されたボタン(キー)の中で、カスタマイズプログラムが割り付けられたボタン(キー)をクリックすると、シェルスクリプトで記述されたカスタマイズプログラムがシェルによって実行されることになる。
【0167】
このように実施の形態2にかかる複合機1000では、WEBアプリ1117によって、オペレーションパネル910の操作表示部のカスタマイズプログラムを、インターネット220に接続されたPC200からWEBページであるプログラミング画面を介して入力させているので、PC200に表示されるプログラミング画面からの容易な操作で操作表示部のカスタマイズプログラムを作成することができ、カスタマイズを利用した多種多様な機能を容易な操作で複合機1000に実現させることができる。
【0168】
なお、実施の形態2にかかる複合機1000では、WEBアプリ1117によって、オペレーションパネル910の操作表示部のプログラムのカスタマイズを行っているが、複合機1000に搭載されている機能を実現するプログラムであれば、いずれのプログラムのカスタマイズに本発明を適用することも可能である。
【0169】
また、実施の形態2にかかる複合機1000では、カスタマイズプログラムとしてシェルスクリプトを利用しているが、この他、Visual Basic(登録商標)やJava(登録商標)言語を使用してもよい。この場合には、インタプリタは、汎用OS121に含まれず、汎用OS121の配下で動作するように構成する必要がある。
【0170】
また、実施の形態1および2にかかる複合機100,1000では、本発明のWEBサービス提供手段を構成するWEBアプリ117,1117をアプリケーション層に設けているが、同様の機能を有するプロセスをコントロールサービス層に設ける構成とすることも可能である。
【0171】
【発明の効果】
以上説明したように、請求項1にかかる発明によれば、クライアント端末に表示されたWEBページからの容易な操作で外部アプリケーションを画像情報処理装置にインストールすることができ、外部アプリケーションを利用した多種多様な機能を容易な操作で画像情報処理装置に実現させることができるという効果を奏する。
【0172】
また、請求項1にかかる発明によれば、開発した外部アプリケーションを記憶媒体に格納してからインストールするなどの煩雑な作業を行う必要がなく、クライアント端末からの容易な操作でインターネット上の任意の領域にある外部アプリケーションを画像情報処理装置にインストールすることができるという効果を奏する。また、請求項1にかかる発明によれば、必要な機能を実現する外部アプリケーションのみをクライアント端末を利用して容易にインストールすることができるという効果を奏する。また、請求項1にかかる発明によれば、外部アプリケーションの選択を操作入力が容易なWEBページから行うことができ、必要な機能を有する外部アプリケーションをより容易にインストールすることができるという効果を奏する。
【0173】
また、請求項2にかかる発明によれば、インストール記憶媒体を画像情報処理装置に装着していれば、画像情報処理装置から離れたクライアント端末からの容易な操作によってインストール記憶媒体の外部アプリケーションをインストールすることができるという効果を奏する。
【0176】
また、請求項3にかかる発明によれば、インストールする外部アプリケーションに関するアプリケーションリストが任意の場所にある場合でも、外部アプリケーションの保存場所を確実に入手して、外部アプリケーションを容易にインストールすることができるという効果を奏する。
【0177】
また、請求項4にかかる発明によれば、外部アプリケーションおよびアプリケーション情報がインターネット上にある場合でも、外部アプリケーションの保存場所を確実に入手して、外部アプリケーションを容易にインストールすることができるという効果を奏する。
【0184】
また、請求項5にかかる発明によれば、WEBサーバとしての機能のみをWEBアプリに含め、ハードウェア資源に対するアクセスをコントロールサービスに委ねることができ、WEBアプリの開発を効率的に行うことができるという効果を奏する。
【0185】
また、請求項6にかかる発明によれば、クライアント端末に表示されたWEBページからの容易な操作で外部アプリケーションを画像情報処理装置にインストールすることができ、外部アプリケーションを利用した多種多様な機能を容易な操作で画像情報処理装置に実現させることができるという効果を奏する。
【0186】
また、請求項6にかかる発明によれば、開発した外部アプリケーションを記憶媒体に格納してからインストールするなどの煩雑な作業を行う必要がなく、クライアント端末からの容易な操作でインターネット上の任意の領域にある外部アプリケーションを画像情報処理装置にインストールすることができるという効果を奏する。また、請求項6にかかる発明によれば、必要な機能を実現する外部アプリケーションのみをクライアント端末を利用して容易にインストールすることができるという効果を奏する。また、請求項6にかかる発明によれば、外部アプリケーションの選択を操作入力が容易なWEBページから行うことができ、必要な機能を有する外部アプリケーションをより容易にインストールすることができるという効果を奏する。
【0187】
また、請求項7にかかる発明によれば、インストール記憶媒体を画像情報処理装置に装着していれば、画像情報処理装置から離れたクライアント端末からの容易な操作によってインストール記憶媒体の外部アプリケーションをインストールすることができるという効果を奏する。
【0190】
また、請求項8にかかる発明によれば、インストールする外部アプリケーションに関するアプリケーションリストが任意の場所にある場合でも、外部アプリケーションの保存場所を確実に入手して、外部アプリケーションを容易にインストールすることができるという効果を奏する。
【0191】
また、請求項9にかかる発明によれば、外部アプリケーションおよびアプリケーション情報がインターネット上にある場合でも、外部アプリケーションの保存場所を確実に入手して、外部アプリケーションを容易にインストールすることができるという効果を奏する。
【図面の簡単な説明】
【図1】実施の形態1にかかる複合機の主要部の構成とネットワーク構成を示すブロック図である。
【図2】実施の形態1の複合機の構成を示すブロック図である。
【図3】インストール画面の内容の一例を示す説明図である。
【図4】リクエストメッセージを受信した複合機における処理の手順を示すフローチャートである。
【図5】WEBアプリによるinstall.cgiの処理の手順を示すフローチャートである。
【図6】アプリケーションリストの一例を示す説明図である。
【図7】インストール画面でインストールボタンがクリックされた場合のPCの処理のの手順を示すフローチャートである。
【図8】WEBアプリによるインストール処理の手順を示すフローチャートである。
【図9】実施の形態1の複合機のハードウェア構成図である。
【図10】実施の形態2にかかる複合機の主要構成およびネットワーク構成を示すブロック図である。
【図11】実施の形態2の複合機の構成を示すブロック図である。
【図12】プログラミング画面の内容の一例を示す説明図である。
【図13】入力するカスタマイズプログラムの内容の一例を示す説明図である。
【図14】WEBアプリによるdebug.cgiの処理の手順を示すフローチャートである。
【図15】プログラミング画面において、保存ボタン、実行設定ボタン、テスト実行ボタンのいずれかのクリック操作が行われた場合のWEBアプリの処理の手順を示すフローチャートである。
【図16】カスタマイズディレクトリに格納されたカスタマイズプログラムの名称の一例を示す説明図である。
【図17】キー対応付けテーブルの内容の一例を示す説明図である。
【図18】複合機の電源投入が行われてから、カスタマイズプログラムの実行が可能となるまでの一連の処理の手順を示すフローチャートである。
【図19】起動設定ファイルの内容の一例を示す説明図である。
【符号の説明】
100,1000 複合機
101 白黒レーザプリンタ
102 カラーレーザプリンタ
103 HDD
104 ハードウェアリソース
105 共有メモリ
106 httpd
110 ソフトウェア群
111 プリンタアプリ
112 コピーアプリ
113 ファックスアプリ
114 スキャナアプリ
115 ネットファイルアプリ
116 工程検査アプリ
117,1117 WEBアプリ
118 VAS
120 プラットホーム
121 汎用OS
122 SCS
123 SRM
124 ECS
125 MCS
126 OCS
127 FCS
128 NCS
129 複合機初期化部
130 アプリケーション
131 プログラム起動部
134 インタプリタ(シェル)
135 カーネル
200 PC
201 インストール画面
211 起動設定ファイル
212 カスタマイズ領域(カスタマイズディレクトリ)
220 インターネット
230 ICカードインタフェース部
240 ICカード
241 インストールスクリプトファイル
242 外部アプリ
243,261 アプリケーションリスト
250 ftpサーバ
260 コンピュータ
900 コントローラボード
901 ASIC
902 CPU
903 SDRAM(RAM)
210 フラッシュメモリ(ROM)
908 SRAM
910 オペレーションパネル
930 USB
940 IEEE1394
950 プリンタ
1001 プログラミング画面[0001]
BACKGROUND OF THE INVENTION
The present invention is a copy, printer, scanner, facsimile, etc. Image information processing In addition to providing user services, application installation and program customization can be performed via a WEB from a client terminal connected to the Internet. Image information processing apparatus and How to install application To the law It is related.
[0002]
[Prior art]
In recent years, there has been known an image forming apparatus (hereinafter referred to as “multifunction machine”) in which functions of apparatuses such as a printer, a copy machine, a facsimile machine, and a scanner are housed in one casing. This multifunction device is provided with a display unit, a printing unit, an imaging unit, and the like in one casing, and is provided with three types of software respectively corresponding to a printer, a copy machine, and a facsimile machine, and by switching these software, Are operated as a printer, a copy, a scanner, or a facsimile machine.
[0003]
In such a conventional MFP, it is not assumed that a third party such as a third vendor develops and installs a new application program or customizes an application program that operates on the MFP after the MFP is shipped. .
[0004]
In addition, although a conventional multifunction device can be connected to a network, it uses a network function by using a management server such as a printer server, and the multifunction device itself is a PC (Personal Computer) or the like. It is not possible to realize various network functions directly.
[0005]
[Problems to be solved by the invention]
By the way, in such a conventional multi-function machine, software corresponding to a printer, a copy, a scanner, and a facsimile apparatus is provided separately, so that development of each software requires a lot of time. For this reason, the applicant has hardware resources used in image forming processing such as a display unit, a printing unit, and an imaging unit, and has an application that performs processing specific to each user service such as a printer, copy, or facsimile. When a user service is provided by interposing between these applications and hardware resources, hardware resource management, execution control, and image formation processing that are commonly required by at least two of the applications are provided. Invented an image forming apparatus (multifunction machine) equipped with a platform comprising various control services.
[0006]
In such a new multi-function peripheral, an application and a control service that performs processing that is difficult to develop such as access to hardware resources are provided separately. A configuration is such that a vendor can develop a new external application as an application related to image forming processing and mount it on a multifunction peripheral.
[0007]
For this reason, it is necessary to develop an external application with a new function in a new multifunction device and to install the external application in the multifunction device or customize the existing functions that have been installed from the beginning of shipment. come.
[0008]
Here, an operation display section of an operation panel is prepared in the multifunction device as an interface for displaying various screens for the user and operating input to the system of the multifunction device. However, the operation display section of the operation panel has a very narrow screen size unlike a display device such as a display screen of a computer such as a PC. In addition, by drawing various buttons on the operation display unit or displaying a software keyboard, the user can perform input operations from the operation display unit. However, compared with input devices such as a keyboard and mouse in a computer. For example, there are limits to free input operations.
[0009]
As described above, the new multi-function peripheral has a new problem that is not a problem in the conventional multi-function peripheral, in which it is necessary to install an external application or customize an existing program with an easy operation.
[0010]
The present invention has been made in view of the above, and allows easy installation of external applications and customization of programs. Image information processing apparatus and How to install application The law The purpose is to obtain.
[0011]
[Means for Solving the Problems]
In order to achieve the above object, an invention according to
[0012]
According to the invention of
[0015]
Claims 2 The invention according to
[0016]
This claim 2 According to the invention, the installation storage medium is installed by installing the external application from the installation storage medium using the storage medium interface unit by the WEB service providing unit. Image information processing If attached to the device, Image information processing An external application on the installation storage medium can be installed by an easy operation from a client terminal remote from the apparatus.
[0021]
According to a third aspect of the present invention, in the image information processing apparatus according to the first or second aspect, the WEB service providing unit includes the application via the communication unit. list The acquisition destination is displayed on the WEB page, and the application from the acquisition destination designated by the client terminal is displayed. list Is acquired and displayed on the WEB page.
[0022]
According to the invention of claim 3, the application is provided by the WEB service providing means via the communication means. list The acquisition destination is displayed on the WEB page, and the application from the acquisition destination specified by the client terminal is displayed. list By acquiring the URL and displaying it on the WEB page, even if there is application information regarding the external application to be installed at an arbitrary location, it is possible to reliably obtain the storage location of the external application and easily install the external application. .
[0023]
According to a fourth aspect of the present invention, in the image information processing apparatus according to the third aspect, the WEB service providing means includes the application list When the client terminal indicates that the acquisition destination is acquired via the network, the specification indicating that the acquisition destination is acquired via the network is displayed on the WEB page via the communication means. The application from a predetermined area connected to the network via the communication means list Is acquired and displayed on the WEB page.
[0024]
According to the invention of claim 4, the application is provided by the WEB service providing means. list If the client terminal specifies that the acquisition destination is to be acquired via the network, the specification indicating that the acquisition destination is acquired via the network is displayed on the WEB page via the communication means. The application from a predetermined area connected to the network list Is acquired and displayed on the WEB page, even when the external application and the application information are on the Internet, the storage location of the external application can be reliably obtained and the external application can be easily installed.
[0037]
Claims 5 The invention according to claim 4 As described in any one of Image information processing device The WEB service providing means is a WEB application installed as the application.
[0038]
This claim 5 According to the invention, since the WEB service providing means is a WEB application mounted as an application, only the function as the WEB server can be included in the WEB application, and access to hardware resources can be entrusted to the control service. You can develop apps efficiently.
[0039]
The invention according to claim 6 is an application installation method that is executed by an image information processing apparatus in which a plurality of external applications related to image information processing can be mounted using hardware resources having a printing unit or an imaging unit. The image information processing apparatus includes a communication unit that is connected to a network and controls transmission / reception of various data, When receiving an instruction from a client terminal connected to the network, Installable Double Number of external application identifiers Each of When plural Storage area on the network Each of And It is a list application list The From outside Application to get list Acquisition step and before Writing A number of external application identification information before the communication means Writing On the client terminal Is displayed A display step for selectively displaying on the WEB page; and the communication means for displaying the selected external application from the storage area on the network corresponding to the identification information of the external application selected from the client terminal via the WEB page. And installing the received external application, and the external application makes a processing request to an application programming interface that is an interface for controlling the hardware resource. And
[0040]
According to the invention of claim 6, When an instruction is received from a client terminal connected to the network, Installable Double Number of external application identifiers Each of When plural Storage area on the network Each of And It is a list application list The From outside Acquired, Duplicate A number of external application identification information via communication means The On the client terminal Is displayed The external application selected from the storage area on the network corresponding to the identification information of the external application selected from the client terminal via the WEB page is displayed to be selectable on the WEB page. , By installing the received external application received via the communication means, it is possible to install the external application on the image information processing apparatus with an easy operation from the WEB page displayed on the client terminal, and use the external application The various functions can be realized in the image information processing apparatus by an easy operation. Further, according to the first aspect of the present invention, there is no need to perform complicated operations such as installing the developed external application after storing it in a storage medium, and any operation on the Internet can be easily performed from a client terminal. Can be installed in the image information processing apparatus. According to the invention of claim 6, it is possible to easily install only an external application that realizes a necessary function using a client terminal. According to the sixth aspect of the present invention, the external application can be selected from the WEB page where the operation input is easy, and the external application having a necessary function can be installed more easily.
[0043]
Claims 7 The invention according to claim 6 In the application installation method according to
[0044]
This claim 7 According to the invention, the installation storage medium is installed by installing the external application from the installation storage medium in the installation step. Image information processing If attached to the device, Image information processing An external application on the installation storage medium can be installed by an easy operation from a client terminal remote from the apparatus.
[0049]
The invention according to claim 8 is the application installation method according to claim 6 or 7, wherein Application list acquisition step Through the communication means, the application list The acquisition destination is displayed on the WEB page, and the application from the acquisition destination designated by the client terminal is displayed. list Get Do It is characterized by that.
[0050]
According to the invention of claim 8, Application list acquisition step By the application via communication means list The acquisition source is displayed on the WEB page, and the application from the specified acquisition source list Get Do Application related to the external application to be installed list Even if it is in an arbitrary location, it is possible to reliably obtain the storage location of the external application and easily install the external application.
[0051]
The invention according to claim 9 is the application installation method according to claim 8, wherein Application list acquisition step The application list When the client terminal indicates that the acquisition destination is acquired via the network, the specification indicating that the acquisition destination is acquired via the network is displayed on the WEB page via the communication means. Obtaining the application information from a predetermined area connected to the network via the communication means Do It is characterized by that.
[0052]
According to the invention of claim 9, Application list acquisition step By the application list When the client terminal indicates that the acquisition destination is acquired via the network, the specification indicating that the acquisition destination is acquired via the network is displayed on the WEB page via the communication means. The application from a predetermined area connected to the network via the communication means list Get Do By external applications and applications list Even when the computer is on the Internet, it is possible to reliably obtain the storage location of the external application and easily install the external application.
[0065]
DETAILED DESCRIPTION OF THE INVENTION
The present invention will be described below with reference to the accompanying drawings. Image information processing apparatus and How to install application Law The preferred embodiment will be described in detail.
[0066]
(Embodiment 1)
FIG. 1 is a block diagram showing a configuration of a main part and a network configuration of an image forming apparatus (hereinafter referred to as “multifunction device”) according to
[0067]
As shown in FIG. 1, in this embodiment, a
[0068]
The
[0069]
The
[0070]
Here, the
[0071]
The
[0072]
The
[0073]
The
[0074]
The shared
[0075]
The
[0076]
The
[0077]
The
[0078]
An
[0079]
Next, the overall functional configuration of the multifunction peripheral 100 according to the present embodiment will be described. FIG. 2 is a block diagram illustrating a configuration of the multifunction peripheral 100 according to the first embodiment. As shown in FIG. 1, a
[0080]
The platform 120 interprets a processing request from an application and generates a hardware resource acquisition request, and a system resource manager that manages one or a plurality of hardware resources and arbitrates the acquisition request from the control service. (SRM) 123 and a general-
[0081]
The control service is formed of a plurality of service modules, and includes an SCS (system control service) 122, an ECS (engine control service) 124, an MCS (memory control service) 125, an OCS (operation panel control service) 126, and an FCS. (Fax Control Service) 127 and NCS (Network Control Service) 128. The platform 120 has an application program interface (API) that enables a processing request to be received from the
[0082]
The general-
[0083]
The process of the
[0084]
Specifically, the
[0085]
The process of the
[0086]
The process of the
[0087]
The
[0088]
The
[0089]
The
[0090]
The process of the
[0091]
The
[0092]
Each process of the
[0093]
As described above, the
[0094]
Also, in the
[0095]
In the
[0096]
Next, a method for installing the
[0097]
FIG. 3A is an explanatory diagram illustrating an example of the contents of the
[0098]
When the user clicks the WEB button with a mouse or the like, the
[0099]
When the user clicks the IC card button with a mouse or the like, the
[0100]
When the user clicks either the WEB button or the IC card button, a request message for obtaining an application list is displayed in the
[0101]
Here, a process in the
[0102]
The
[0103]
The
[0104]
Then, the
[0105]
In the
[0106]
FIG. 5 shows install. It is a flowchart which shows the procedure of the process of cgi. First, the
[0107]
If the WEB button is designated, the URL of the
[0108]
FIG. 6 is an explanatory diagram showing an example of the
[0109]
Next, it is checked whether or not an installation data file for storing the application list already exists in a storage medium such as the HDD 103 (step S504). If it does not exist, an empty installation data file is created in the
[0110]
Next, the
[0111]
If it is determined that the field is an active application column, the external application name in the application list is acquired from the installation data file (step S509), and the acquired external application name is added with a check box in front of it. One line is set (step S510), and this one line is transmitted to the PC 200 (step S511).
[0112]
On the other hand, if it is determined in step S508 that the field is not an active application column, the line read in step S507 is transmitted to the
[0113]
Then, the processing from steps S507 to S511 is performed using install. It repeats about all the lines of htm (step S512). As a result, the WEB browser of the
[0114]
FIG. 3B is an explanatory diagram illustrating an example of an
[0115]
As shown in FIG. 3B, when a list of external applications that can be installed is displayed on the
[0116]
FIG. 7 is a flowchart showing a processing procedure of the
[0117]
First, an external application name with a check mark in the check box is acquired (step S701). The acquired external application name and installation request message are transmitted to the WEB application 117 (step S702). Thus, in the
[0118]
FIG. 8 is a flowchart showing a procedure of installation processing by the
[0119]
Then, the
[0120]
Next, the
[0121]
Such processes from step S801 to S803 are repeated for all external applications notified from the PC 200 (step S804). Thereby, the installation of all the
[0122]
Next, a hardware configuration of the multifunction peripheral 100 according to the present embodiment will be described. FIG. 9 is a hardware configuration diagram of the multifunction peripheral 100 according to the first embodiment illustrated in FIG. As shown in FIG. 9, the multifunction peripheral 100 includes a controller board 900 in which a
[0123]
The IC
[0124]
As described above, in the
[0125]
(Embodiment 2)
The
[0126]
FIG. 10 is a block diagram of a main configuration and a network configuration of the MFP according to the second embodiment. As shown in FIG. 10, in the present embodiment, a
[0127]
As shown in FIG. 10, the
[0128]
The
[0129]
Here, the
[0130]
The customization program input from the
[0131]
The
[0132]
The
[0133]
The
[0134]
The
[0135]
The functions of the
[0136]
The
[0137]
Next, the overall functional configuration of the
[0138]
Next, a method for customizing the operation display unit of the
[0139]
FIG. 12 is an explanatory diagram showing an example of the content of the
[0140]
The browse button is a button for referring to the customization program stored in the storage area of the
[0141]
The upload button is a click operation for transferring (uploading) the customization program specified by the reference button or the customization program input in the input field to the multi-function peripheral 1000.
[0142]
The program input field is an area for inputting a customization program. In this program input field, in addition to directly inputting a customization program from an input device such as a keyboard of the
[0143]
The save button is clicked when the input customization program is uploaded to the
[0144]
The execution setting button is a click operation when associating the customization program with a button for executing the customization program so that the customization program stored in the customization directory can be executed by the multi-function peripheral 1000. When this execution setting button is pressed, the
[0145]
The test execution button is clicked when the inputted customization program is experimentally executed.
[0146]
FIG. 13 is an explanatory diagram showing an example of the contents of the customization program to be input. As shown in FIG. 13, in this embodiment, a UNIX (registered trademark) shell script is input. The input shell script is sequentially executed step by step by the shell, which is a command interpreter of the general-purpose OS 121 (UNIX (registered trademark)), and thus the input customized program does not need to be compiled and linked.
[0147]
In addition, a special command for the multifunction machine provided in the development library can be specified in the shell script. The script shown in FIG. 13 reads a document with a scanner (scanning), decompresses image data compressed in the TIF format at the time of reading (decomp), and performs character recognition processing on the decompressed image data (ocr). Then, an example is shown in which the result of recognition by the character recognition process is mailed as text data. In this script, commands of scanimage, decomp, and ocr are commands provided by the development library.
[0148]
On the programming screen 1001 (debug.htm) displayed on the WEB browser of the
[0149]
FIG. 14 shows a debug. It is a flowchart which shows the procedure of the process of cgi. The
[0150]
Next, the
[0151]
If it is determined that the field is a program input field, the uploaded program file is read (step S1404), and the contents of the program file, that is, the customization program is transmitted to the PC 200 (step S1405).
[0152]
On the other hand, if it is determined in step S1403 that the field is not a program input field, the one line read in step S1402 is directly transmitted to the PC 200 (step S1406).
[0153]
Then, the processing from steps S1402 to S1406 is performed as debug. It repeats about all the lines of htm (step S1407). As a result, the Debug. debug. of processing result by cgi. The htm is displayed sequentially.
[0154]
In this way, the customization program input from the
[0155]
FIG. 15 is a flowchart illustrating a processing procedure of the
[0156]
First, the
[0157]
When the save button is clicked on the
[0158]
FIG. 16 is an explanatory diagram showing an example of the name of the customization program stored in the customization directory. As shown in FIG. 16, the customization directory of the
[0159]
On the other hand, when the execution setting button is clicked on the
[0160]
When the test execution button is pressed on the
[0161]
Next, the execution process of the customization program generated in this way will be described. FIG. 18 is a flowchart illustrating a series of processing procedures from when the
[0162]
When the storage of the customization program in the customization directory and the setting in the
[0163]
The
[0164]
FIG. 19 is an explanatory diagram showing an example of the
[0165]
Therefore, the
[0166]
Therefore, when the button (key) to which the customization program is assigned is clicked among the buttons (keys) displayed on the operation display section of the
[0167]
As described above, in the
[0168]
In the
[0169]
In the
[0170]
In the
[0171]
【The invention's effect】
As described above, according to the first aspect of the present invention, an external application can be easily operated from the WEB page displayed on the client terminal. Image information processing It can be installed on the device, and various functions using external applications can be easily operated. Image information processing There is an effect that it can be realized in the apparatus.
[0172]
[0173]
Claims 2 According to the invention concerning the installation storage medium, Image information processing If attached to the device, Image information processing There is an effect that an external application of the installation storage medium can be installed by an easy operation from a client terminal remote from the apparatus.
[0176]
Moreover, according to the invention concerning Claim 3, the application regarding the external application to install list Even if it exists in arbitrary places, there exists an effect that the preservation | save place of an external application can be acquired reliably and an external application can be installed easily.
[0177]
Claims 4 According to the invention, even when the external application and the application information are on the Internet, there is an effect that the storage location of the external application can be reliably obtained and the external application can be easily installed.
[0184]
Claims 5 According to the invention, only the function as the WEB server is included in the WEB application, and access to hardware resources can be entrusted to the control service, so that the WEB application can be efficiently developed.
[0185]
Claims 6 According to the invention, the external application can be easily operated from the WEB page displayed on the client terminal. Image information processing It can be installed on the device, and various functions using external applications can be easily operated. Image information processing There is an effect that it can be realized in the apparatus.
[0186]
Further, according to the invention of claim 6, there is no need to perform a complicated operation such as installing the developed external application after storing it in a storage medium, and any operation on the Internet can be easily performed from the client terminal. There is an effect that an external application in the area can be installed in the image information processing apparatus. Moreover, according to the invention concerning Claim 6, Inevitably Only an external application that realizes a necessary function can be easily installed using a client terminal. In addition, according to the invention of claim 6, it is possible to select an external application from a WEB page that allows easy operation input, and it is possible to more easily install an external application having a necessary function. .
[0187]
Claims 7 According to the invention concerning the installation storage medium, Image information processing If attached to the device, Image information processing There is an effect that an external application of the installation storage medium can be installed by an easy operation from a client terminal remote from the apparatus.
[0190]
Moreover, according to the invention concerning Claim 8, the application regarding the external application to install list Even if it exists in arbitrary places, there exists an effect that the preservation | save place of an external application can be acquired reliably and an external application can be installed easily.
[0191]
Claims 9 According to the invention, even when the external application and the application information are on the Internet, there is an effect that the storage location of the external application can be reliably obtained and the external application can be easily installed.
[Brief description of the drawings]
FIG. 1 is a block diagram illustrating a configuration of a main part and a network configuration of a multifunction peripheral according to a first embodiment.
FIG. 2 is a block diagram illustrating a configuration of the multifunction machine according to the first embodiment.
FIG. 3 is an explanatory diagram showing an example of the contents of an installation screen.
FIG. 4 is a flowchart illustrating a processing procedure in a multi-function peripheral that has received a request message.
FIG. 5 shows install. It is a flowchart which shows the procedure of the process of cgi.
FIG. 6 is an explanatory diagram showing an example of an application list.
FIG. 7 is a flowchart showing a procedure of processing of a PC when an install button is clicked on the install screen.
FIG. 8 is a flowchart showing a procedure of installation processing by a WEB application.
FIG. 9 is a hardware configuration diagram of the multifunction machine according to the first embodiment.
FIG. 10 is a block diagram illustrating a main configuration and a network configuration of a multifunction peripheral according to a second embodiment.
FIG. 11 is a block diagram illustrating a configuration of a multifunction machine according to a second embodiment.
FIG. 12 is an explanatory diagram showing an example of the contents of a programming screen.
FIG. 13 is an explanatory diagram showing an example of the contents of a customization program to be input.
FIG. 14 is a view of debug. It is a flowchart which shows the procedure of the process of cgi.
FIG. 15 is a flowchart illustrating a processing procedure of a WEB application when a save button, an execution setting button, or a test execution button is clicked on a programming screen.
FIG. 16 is an explanatory diagram illustrating an example of a name of a customization program stored in a customization directory.
FIG. 17 is an explanatory diagram illustrating an example of the contents of a key association table.
FIG. 18 is a flowchart illustrating a series of processing procedures from when the MFP is turned on until the customization program can be executed.
FIG. 19 is an explanatory diagram showing an example of the contents of a startup setting file.
[Explanation of symbols]
100, 1000 MFP
101 Black and white laser printer
102 color laser printer
103 HDD
104 Hardware resources
105 Shared memory
106 httpd
110 Software group
111 Printer app
112 Copy application
113 Fax application
114 Scanner app
115 Net file application
116 Process inspection application
117,1117 WEB application
118 VAS
120 platform
121 General-purpose OS
122 SCS
123 SRM
124 ECS
125 MCS
126 OCS
127 FCS
128 NCS
129 MFP initialization section
130 applications
131 Program starter
134 Interpreter (shell)
135 kernel
200 PC
201 Installation screen
211 Startup configuration file
212 Customization area (Customization directory)
220 Internet
230 IC card interface
240 IC card
241 Installation script file
242 External application
243,261 Application list
250 ftp server
260 computers
900 Controller board
901 ASIC
902 CPU
903 SDRAM (RAM)
210 Flash memory (ROM)
908 SRAM
910 Operation Panel
930 USB
940 IEEE 1394
950 printer
1001 Programming screen
Claims (9)
ネットワークに接続して各種データの送受信を制御する通信手段と、
前記ネットワークに接続されたクライアント端末からの指示を受信した場合に、インストール可能な複数の外部アプリケーションの識別情報のそれぞれと複数のネットワーク上の保存領域のそれぞれとを対応付けた一覧であるアプリケーションリストを外部から取得して、前記複数の外部アプリケーションの識別情報を、前記通信手段を介して前記クライアント端末に表示されるWEBページに選択可能に表示し、前記クライアント端末から前記WEBページを介して選択された外部アプリケーションの識別情報に対応する前記ネットワーク上の保存領域から前記選択された外部アプリケーションを、前記通信手段を介して受信し、受信した外部アプリケーションをインストールするWEBサービス提供手段を備え、
前記外部アプリケーションは、前記ハードウェア資源の制御のためのインタフェースであるアプリケーションプログラミングインタフェースに対して処理要求を行うことを特徴とする画像情報処理装置。An image information processing apparatus capable of mounting a plurality of external applications related to image information processing using hardware resources having a printing unit or an imaging unit,
A communication means for connecting to a network and controlling transmission and reception of various data;
When receiving an instruction from a client terminal connected to the network, the application list is a list that associates each respectively conserved regions on multiple network identification information installable multiple external applications acquires from outside, the identification information of the external applications before Kifuku number, then selectably displayed on the WEB page displayed before chrysanthemum client terminal via the communication means, the WEB page from the client terminal the selected external application from the storage area on the network corresponding to the identification information of the selected external application via, received via the communication means, a WEB service providing means for installing an external application that received Prepared,
The image information processing apparatus, wherein the external application makes a processing request to an application programming interface that is an interface for controlling the hardware resource.
前記WEBサービス提供手段は、さらに、前記インストール記憶媒体から前記外部アプリケーションをインストールすることを特徴とする請求項1に記載の画像情報処理装置。Storage medium interface means for reading out the external application from an installation storage medium storing the external application in a form that can be installed;
The image information processing apparatus according to claim 1, wherein the WEB service providing unit further installs the external application from the installation storage medium.
前記画像情報処理装置は、ネットワークに接続して各種データの送受信を制御する通信手段を備え、
前記ネットワークに接続されたクライアント端末からの指示を受信した場合に、インストール可能な複数の外部アプリケーションの識別情報のそれぞれと複数のネットワーク上の保存領域のそれぞれとを対応付けた一覧であるアプリケーションリストを外部から取得するアプリケーションリスト取得ステップと、
前記複数の外部アプリケーションの識別情報を、前記通信手段を介して前記クライアント端末に表示されるWEBページに選択可能に表示する表示ステップと、
前記クライアント端末から前記WEBページを介して選択された外部アプリケーションの識別情報に対応する前記ネットワーク上の保存領域から前記選択された外部アプリケーションを、前記通信手段を介して受信し、受信した外部アプリケーションをインストールするインストールステップと、を含み、
前記外部アプリケーションは、前記ハードウェア資源の制御のためのインタフェースであるアプリケーションプログラミングインタフェースに対して処理要求を行うことを特徴とするアプリケーションインストール方法。An application installation method executed by an image information processing apparatus capable of mounting a plurality of external applications related to image information processing using hardware resources having a printing unit or an imaging unit,
The image information processing apparatus includes a communication unit that is connected to a network and controls transmission / reception of various data,
When receiving an instruction from a client terminal connected to the network, the application list is a list that associates each respectively conserved regions on multiple network identification information installable multiple external applications An application list acquisition step for acquiring the application from outside ,
The identification information of the external applications before Kifuku number, a display step of selectably displayed on the WEB page displayed before chrysanthemum client terminal via the communication means,
The selected external application from the storage area on the network corresponding to the identification information of the external application from the client terminal selected through the WEB page, received via the communication means, the received external application An installation step to install, and
The application installation method, wherein the external application makes a processing request to an application programming interface that is an interface for controlling the hardware resource.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002214463A JP4090806B2 (en) | 2002-07-23 | 2002-07-23 | Image information processing apparatus and application installation method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002214463A JP4090806B2 (en) | 2002-07-23 | 2002-07-23 | Image information processing apparatus and application installation method |
Related Child Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007188551A Division JP4500333B2 (en) | 2007-07-19 | 2007-07-19 | Image information processing apparatus, installation method, program, and recording medium |
JP2007287627A Division JP4340704B2 (en) | 2007-11-05 | 2007-11-05 | Image information processing apparatus and application installation method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004054791A JP2004054791A (en) | 2004-02-19 |
JP4090806B2 true JP4090806B2 (en) | 2008-05-28 |
Family
ID=31936783
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002214463A Expired - Lifetime JP4090806B2 (en) | 2002-07-23 | 2002-07-23 | Image information processing apparatus and application installation method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4090806B2 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008004105A (en) * | 2007-07-19 | 2008-01-10 | Ricoh Co Ltd | Image information processor and customization program generation method |
JP2010206802A (en) * | 2010-03-15 | 2010-09-16 | Ricoh Co Ltd | Image information processing apparatus, customized program generation method, image information processing system, program, and recording medium |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4861765B2 (en) | 2005-08-04 | 2012-01-25 | 株式会社リコー | Apparatus, information processing method, information processing program, and recording medium |
JP2007053556A (en) * | 2005-08-17 | 2007-03-01 | Fuji Xerox Co Ltd | Composite machine |
JP4407595B2 (en) * | 2005-08-17 | 2010-02-03 | 富士ゼロックス株式会社 | Compound machine |
JP4407594B2 (en) * | 2005-08-17 | 2010-02-03 | 富士ゼロックス株式会社 | Compound machine |
US20080165381A1 (en) * | 2007-01-05 | 2008-07-10 | Andrew Rodney Ferlitsch | Methods and Systems for Controlling an Imaging Device |
JP2008177683A (en) | 2007-01-16 | 2008-07-31 | Kyocera Mita Corp | Data providing system, data receiving system, data providing method, data providing program and data receiving program |
JP5200639B2 (en) * | 2008-04-09 | 2013-06-05 | 株式会社リコー | Image forming apparatus, information processing method, and program |
JP5732824B2 (en) * | 2010-01-05 | 2015-06-10 | 株式会社リコー | Image forming apparatus, information processing system, and information processing method |
JP2014021693A (en) | 2012-07-18 | 2014-02-03 | Konica Minolta Inc | Image forming apparatus, application execution method, and application execution program |
US10931762B2 (en) | 2014-09-17 | 2021-02-23 | Convida Wireless, Llc | Systems and methods for enabling access to third party services via a service layer |
JP6878934B2 (en) * | 2017-02-10 | 2021-06-02 | オムロン株式会社 | Information processing equipment, information processing system, user interface creation method, and user interface creation program |
JP6929160B2 (en) * | 2017-08-10 | 2021-09-01 | キヤノン株式会社 | Image forming device and its control method and program |
-
2002
- 2002-07-23 JP JP2002214463A patent/JP4090806B2/en not_active Expired - Lifetime
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008004105A (en) * | 2007-07-19 | 2008-01-10 | Ricoh Co Ltd | Image information processor and customization program generation method |
JP4500333B2 (en) * | 2007-07-19 | 2010-07-14 | 株式会社リコー | Image information processing apparatus, installation method, program, and recording medium |
JP2010206802A (en) * | 2010-03-15 | 2010-09-16 | Ricoh Co Ltd | Image information processing apparatus, customized program generation method, image information processing system, program, and recording medium |
Also Published As
Publication number | Publication date |
---|---|
JP2004054791A (en) | 2004-02-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1650953B1 (en) | Image forming apparatus, a print process method, a computer program and a computer readable storage medium | |
JP4090806B2 (en) | Image information processing apparatus and application installation method | |
JP2004110779A (en) | Image forming apparatus | |
JP4344203B2 (en) | Image forming apparatus and information display method | |
JP5370439B2 (en) | Apparatus, request processing method, program, and recording medium | |
US10455101B2 (en) | Server, image processing unit, and non-transitory recording medium for displaying error screen | |
JP4394740B2 (en) | Image forming apparatus, method, and program | |
JP4500333B2 (en) | Image information processing apparatus, installation method, program, and recording medium | |
JP4128506B2 (en) | Image forming apparatus and application information acquisition method | |
JP4340704B2 (en) | Image information processing apparatus and application installation method | |
JP2004185593A (en) | Image forming apparatus and application execution method | |
JP2004185594A (en) | Image forming apparatus and program execution method | |
JP5655726B2 (en) | Image information processing apparatus, image information processing system, image information processing method, program, and recording medium | |
JP2003274100A (en) | Image forming apparatus, remote image forming control method, and program for allowing computer to perform the method | |
JP4676977B2 (en) | Image forming apparatus, application information acquisition method, and program | |
JP4133085B2 (en) | Image forming apparatus and customized program test method | |
JP5858089B2 (en) | Image information processing apparatus, image information processing system, image information processing method, program, and recording medium | |
JP5267624B2 (en) | Information processing apparatus, display control method, program, and recording medium | |
JP4136738B2 (en) | Image forming apparatus having Web service function | |
JP2010206802A (en) | Image information processing apparatus, customized program generation method, image information processing system, program, and recording medium | |
JP4677054B2 (en) | Image forming apparatus, program, recording medium, and method | |
JP2009064422A (en) | Image forming apparatus and program execution method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050208 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070511 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070522 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070719 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20070904 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20071105 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20071218 |
|
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: 20080226 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080227 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 4090806 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110307 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120307 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130307 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140307 Year of fee payment: 6 |
|
EXPY | Cancellation because of completion of term |