JP2004046469A - 周辺装置 - Google Patents
周辺装置 Download PDFInfo
- Publication number
- JP2004046469A JP2004046469A JP2002202041A JP2002202041A JP2004046469A JP 2004046469 A JP2004046469 A JP 2004046469A JP 2002202041 A JP2002202041 A JP 2002202041A JP 2002202041 A JP2002202041 A JP 2002202041A JP 2004046469 A JP2004046469 A JP 2004046469A
- Authority
- JP
- Japan
- Prior art keywords
- script
- unit
- user
- peripheral device
- interpreter
- 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
Landscapes
- Accessory Devices And Overall Control Thereof (AREA)
- Devices For Executing Special Programs (AREA)
- Information Transfer Between Computers (AREA)
Abstract
【課題】同じ周辺装置であっても、その使用形態などにより頻繁に利用される処理項目は異なる。従って機器ごとに操作インタフェースをカスタマイズすることが出来れば非常に便利である。しかし、従来はあらかじめ装置に用意されたプログラムで処理を行うように構成されているため、ユーザによるカスタマイズを行うことは難しかった。本発明では、ユーザによる操作インタフェースのカスタマイズを容易に行えるようにすることを目的とする。
【解決手段】本発明の装置はネットワーク接続手段、Webサーバ手段、インタプリタ手段、装置制御手段、およびスクリプトを記憶する記憶装置を持ち、ネットワーク上のWebブラウザからの要求に基づいてスクリプトで記述された処理を実行することが可能であるように構成されている。また、新規スクリプト受付手段をもつことで、ユーザが新規スクリプトを装置に導入してカスタマイズすることが可能になる。
【選択図】 図1
【解決手段】本発明の装置はネットワーク接続手段、Webサーバ手段、インタプリタ手段、装置制御手段、およびスクリプトを記憶する記憶装置を持ち、ネットワーク上のWebブラウザからの要求に基づいてスクリプトで記述された処理を実行することが可能であるように構成されている。また、新規スクリプト受付手段をもつことで、ユーザが新規スクリプトを装置に導入してカスタマイズすることが可能になる。
【選択図】 図1
Description
【0001】
【発明の属する技術分野】
本発明は、ネットワークを介して制御可能な周辺装置に関するものである。
【0002】
【従来の技術】
今日、さまざまな周辺装置が広範な用途に用いられている。例えば、プリンタはデータを印刷するために使用され、スキャナはデータの入力、ファクスはデータの送信に利用されている。またこれらの機能を全て持った複合機も登場している。
【0003】
これらの周辺装置では、その周辺装置に付属している操作パネルを用いる他に、ネットワークを介して接続されたコンピュータを用いることで操作可能である。コンピュータからこれらの周辺装置を制御する場合には、通常その周辺装置専用のドライバを経由して所望の動作をさせる。従って、そのドライバが組み込まれたコンピュータでなければ制御することは不可能であるという問題があった。
【0004】
これに対して最近は、周辺装置にWebサーバの機能を持たせたものが出現している。
【0005】
このような周辺装置では専用の特別なドライバを必要とせず、一般のWebブラウザを用いて制御することが可能である。図9にWebサーバ機能を持った周辺装置の構成例を示す。この周辺装置にアクセスするために、ユーザはURL(Uniform Resource Locator)を直接ウェブブラウザに入力するか、URLが埋め込まれたリンクを選択する。Webブラウザは、所望のURLを指定するHTTPコマンドをネットワークを介して送信する。周辺装置のWebサーバは、このHTTPコマンドを受け取り、これを解析し、それに応じた動作を行う。Webブラウザからの要求が周辺装置に対する動作要求であった場合、対応するCGI(Common Gateway Interface)プログラムの処理が行われる。CGIプログラムはあらかじめコンピュータで処理可能な形式にコンパイルされて周辺装置内に用意されており、周辺装置の情報の取得・設定や、プリント出力等の動作を実行できる。ユーザがフォームに入力するなどしてWebブラウザから指定した値は、WebサーバからCGIプログラムに渡され、制御パラメータなどとして利用される。
【0006】
【発明が解決しようとする課題】
同じ周辺装置であっても、その設置場所や使用形態などにより頻繁に利用する処理項目は異なる。特に複合機などのように多種類の処理が可能である場合、あらかじめ周辺装置に組み込まれたCGIプログラムが用意する操作インタフェースでは、所望の処理を行う為の階層が深く操作が面倒であったり、ユーザによっては不要な項目が多かったりするケースがある。従って個々の機器ごとにインタフェースをカスタマイズすることができれば非常に便利である。しかしながら上記従来の技術では、あらかじめ機器に用意されたプログラムで処理を行うように構成されているため、ユーザによるカスタマイズを行うことは難しかった。
【0007】
本発明はこの課題に鑑みなされたものであり、ネットワークを介して制御可能な周辺装置において操作インタフェースのカスタマイズを容易にすることを目的とする。
【0008】
【課題を解決するための手段】
上記目的を達成するため、請求項1記載の発明は、
ネットワーク接続手段と、ネットワーク接続手段を介してネットワーク上のクライアントからアクセス可能であるサーバ手段と、サーバ手段が受け取ったクライアントからの要求に基づいて少なくとも一つの動作を実行する装置制御手段を有し、クライアントから操作が可能である周辺装置において、実行すべき処理手順を記述したスクリプトを記憶する記憶装置と、前記要求に基づいて前記記憶装置からスクリプトを読み込んで解釈しその手順に従って処理を実行するインタプリタ手段を有することを特徴とする。
【0009】
上記構成によって、周辺装置にあらかじめ組み込まれたプログラムだけではなく、ASCII文字列で処理手順が記述されたスクリプトによって装置操作を行うことが可能となる。スクリプトの記述は一般のテキストエディタを用いれば良く、特別なツール等を必要としないとうい利点がある。
【0010】
請求項2記載の発明は、
請求項1記載の周辺装置においてユーザから要求があった時にスクリプトを受け取って前記記憶装置に記憶する新規スクリプト受付手段もち、その後、前記インタプリタ手段はこの新規スクリプトを実行することが可能になることを特徴とする。上記構成によって、ユーザが新たなスクリプトを装置に組み込むことができ、インタフェースのカスタマイズをすることが可能となる。
【0011】
請求項3記載の発明は、
請求項1記載の周辺装置において前記インタプリタ手段は、前記要求スクリプトの解釈段階または実行段階においてエラーが発生した場合に、エラー発生を前記Webサーバ手段に知らせるステップをもつことを特徴とする。ユーザが導入したスクリプトには文法等に誤りがある場合が考えられるが、上記構成によってエラーが発生したことをユーザに通知することが可能となる。
【0012】
【発明の実施の形態】
図1は本発明を示す図である。図1において周辺装置100はネットワーク接続手段101、Webサーバ手段102、インタプリタ手段103、装置制御手段104、新規スクリプト受付手段105、及びスクリプトを記憶するための記憶装置106を持つ。107はネットワークである。ネットワーク107にはWebブラウザ108が接続されている。ネットワーク107にはWebブラウザ108が複数接続されていても良いし、周辺装置100と同様の周辺装置が複数接続されていても良い。
【0013】
ネットワーク接続手段101はネットワーク107に接続され、ネットワーク107との間でデータの送受信を行う。このようなネットワーク接続の確立は従来技術で周知である。Webサーバ手段102はHTTP(Hyper Text Transfer Protocol)による通信が可能なサーバで、HTTP要求の内容に対応して動作する。インタプリタ手段103は前記Webサーバ手段が受け取ったHTTPの要求がスクリプトの実行であった場合に、要求スクリプトを記憶装置106から読み込み、解釈し、実行する。ここで処理されるスクリプトはあらかじめ記憶装置に用意されているものでも良いし、後述する新規スクリプト受付手段でユーザによって追加された新しいスクリプトであっても良い。
【0014】
スクリプトはあらかじめ定められた文法規則に従って、実行すべき処理の手順を記述したテキストファイルである。前記文法規則はPerlのように一般に知られた言語を用いても良いし、周辺装置専用の新たな言語を用いても良い。また複数の言語を処理できるように構成されていても良い。
【0015】
スクリプトには装置制御手段104にアクセスするための書式が用意されており、インタプリタ手段103は、装置制御手段104にアクセスして、周辺装置100の情報を取得・設定あるいは動作を行わせることができる。装置制御手段104はインタプリタ手段103からの要求に応じて周辺装置100を動作させたり、周辺装置100の情報をインタプリタ手段103に通知したり、設定したりする。
【0016】
新規スクリプト受付手段105は、ユーザによる新しいスクリプトを周辺装置100に導入するよう動作する。本実施例において、スクリプト受付手段は周辺装置内にFTP(File Transfer Protocol)サーバを持つことで実現される。FTPサーバは、File Transfer Protocol でネットワーク上のクライアントと通信し、ファイルの送受信を行うプログラムである。ユーザは新しいスクリプトを導入するためにFTPクライアントプログラムで周辺装置にアクセスする。周辺装置のFTPサーバがこれに応答し、ユーザが作成した新規スクリプトファイルを周辺装置の記憶装置に記憶する。
【0017】
次に図2に基づいてWebサーバ手段の動作について説明する。ステップ200からスタートする。ステップ201において、ネットワーク接続手段を介してWebブラウザからのHTTP要求を受け取る。ステップ202において受け取った要求の解析が行われる。解析の結果要求がスクリプトの実行でなかった場合、要求に応じた処理が行われる。要求がスクリプトの実行であった場合、ステップ203においてインタプリタ処理が実行される。インタプリタ処理の詳細については後述する。インタプリタ処理の結果がエラー応答であった場合、ステップ204においてエラー処理が行われる。エラー処理は例えばエラーの原因をユーザに知らせるための応答を生成する処理を行う。ステップ205においてWebブラウザに対して応答送信を行う。
【0018】
次に図3に基づいてインタプリタ手段の動作について説明する。ステップ300からスタートする。ステップ301において、スクリプトが記憶装置から読み込まれる。ステップ302において、読み込まれたスクリプトの解析を行い、続く実行ステップで処理できる中間コードを生成する。ステップ303では、ステップ302で生成された中間コードから実際に処理が行われる。ここで実行される処理は、制御手段にアクセスして周辺装置の制御を行う処理、および周辺装置の状態に応じた応答を作成する処理を含む。ステップ304においてサーバ手段に応答を返す。ステップ305では、ステップ302のスクリプト解析段階またはステップ303の実行段階においてエラーが起きた場合、エラーが起こったことをエラー応答としてサーバ手段に伝える。
【0019】
本発明の第二の実施例では、第一の実施例におけるインタプリタ手段を、図4のように1行ずつ解析・実行を繰り返すように構成する。インタプリタ手段はステップ400からスタートする。ステップ401において、スクリプトが記憶装置から読み込まれる。ステップ402において、読み込まれたスクリプトを1行解析する。ステップ403では、解析した結果にもとづいて実際に処理が行われる。全ての行の解析・実行が終わっていればステップ405に進み、そうでなければステップ402に戻って処理を繰り返す。
【0020】
本発明の第三の実施例では、第一の実施例における新規スクリプト受付手段をフロッピーディスク(登録商標)などの補助記憶媒体を通じて受け取るように構成する。この実施例において周辺装置は補助記憶媒体を読み取るための読み取り装置を持つ。ユーザは作成した新規スクリプトを補助記憶媒体に保存し、周辺装置の読み取り装置にその内容を読み取らせる。新規スクリプト受付手段は、補助記憶媒体から読み取ったスクリプトを記憶装置106に記憶し、その後インタプリタ手段103が読み込んで実行することが出来るようにする。
【0021】
次に本発明を、スキャナ機能、プリンタ機能、ファクス機能をもつ複合機に適用した例を示す。
【0022】
図5はこの適用例の形態の構成を示すブロック図である。本適用例は、図5に示すように、画像入力デバイスであるスキャナ2070および画像出力デバイスであるプリンタ2095が接続されるとともに、LAN2011および公衆回線(WAN)2051が接続され、コピー機能、LAN2011を介して外部から供給されるデータをプリント出力するプリンタ機能、公衆回線(WAN)2051を介したファクシミリ機能を含む通信機能を有する複合装置からなり、この複合装置は、装置全体の制御を行うとともに画像情報やデバイス情報の入出力に関する制御を行うコントローラユニット2000を備える。
【0023】
コントローラユニット2000は、ROM2003に格納されているブートプログラムに基づきシステムを起動し、このシステム上でHDD(ハードディスク装置)2004に格納されている各種制御プログラムを読み出してRAM2002をワークエリアとして所定の処理を実行するCPU2001を有する。HDD2004には、上記各種プログラムが格納されるとともに、画像データが格納される。
【0024】
CPU2001には、RAM2002、ROM2003、HDD2004とともに、操作部I/F(操作部インタフェース)2006、LANI/F(LANインタフェース)2010、モデム2050、イメージバスI/F(イメージバスインタフェース)2005がシステムバス2007を介して接続されている。
【0025】
操作部I/F2006は、操作部2012とのインタフェースであって、操作部2012に表示する画像データの操作部2012への転送、操作部2012における操作入力により発生した信号のCPU2001への転送などを行う。操作部2012は、画像処理に関する各機能における現在の設定状態、各機能に関する設定情報を入力するための情報入力画面などを表示するための表示部、各機能に対する設定情報を入力するキーなどを含む入力部などを有する。
【0026】
LANI/F2010は、LAN2011に接続され、LAN2011を介した情報の入出力を行う。モデム2050は、公衆回線(WAN)2051に接続され、公衆回線2051を介した情報の入出力を行う。イメージバスI/F2005は、画像バス2008とシステムバス2007とを接続し、データ構造を変換するするバスブリッジからなる。画像バス2008は、画像データを高速で転送可能なPCIバスまたはIEEE1394規格に従うバスから構成される。
【0027】
画像バス2008には、RIP(ラスタイメージプロセッサ)2060、デバイスI/F(デバイスインタフェース)2020、スキャナ画像処理部2080、プリンタ画像処理部2090、画像回転部2030および画像圧縮部2040が接続されている。
【0028】
RIP2060は、PDLコードをビットマップイメージに展開する。デバイスI/F2020は、画像入出力デバイスであるスキャナ2070やプリンタ2095とコントローラユニット2000とを接続し、画像データの同期系/非同期系の変換を行う。ここでは、デバイスI/F2020とスキャナ2070とがケーブル2071を介して、デバイスI/F2020とプリンタ2095とがケーブルとがケーブル2096を介して接続されている。スキャナ画像処理部2080は、入力画像データに対し補正、加工、編集を行う。プリンタ画像処理部2090は、プリント出力画像データに対して、プリンタの補正、解像度変換などを行う。画像回転部2030は画像データの回転処理を行う。画像圧縮部2040は、多値画像データに対してはJPEG、二値画像画像データに対してJBIG、MMR、MHの圧縮伸張処理を行う。
【0029】
このように、コントローラユニット2000のCPU2001は、各制御プログラムに基づきシステムバス2007に接続される各種デバイスとのアクセスを総括的に制御するとともに、デバイスI/F2020を介してスキャナ2070から画像情報を読み込み、読み込んだ画像情報に対して所定の処理を施した後に該画像情報をデバイスI/F2020を介してプリンタ2095に出力するなどの制御を行う。
【0030】
本実施例において、Webサーバ手段、インタプリタ手段、新規スクリプト受付手段等は、CPU2001がHDD2004に格納されている各プログラムを読み出して実行することによって実現される。また、この実施例においてはスクリプトはHDD2004に格納される。
【0031】
図6にユーザによるカスタマイズ画面例を示す。ここで文字列601はこの周辺装置に登録されている装置名称、602はこの複合機のプリンタ機能が現在使用可能ならば「現在プリンタは使用可能です」、使用不可能ならば「現在プリンタは使用できません」という文字列を表示する。603はプリンタ機能が使用可能な場合に表示される文字列で、プリンタを使用する画面へのリンクになっている。
【0032】
図6のカスタマイズを行うため、ユーザはまず任意のテキストエディタで図7に示すスクリプトを入力し、適当な名前で保存する。701のGetValue(DEVICE_NAME)は装置制御手段にアクセスして周辺装置に登録されている装置名称を取得するための書式であり、同様に702のGetValue(PRINTER_STATUS)は現在のプリンタの状態を取得するための書式である。703のifは条件判断処理のための書式であり条件式が満たされた場合にそれに続く{}の中の処理が行われ、条件式が満たされない場合、704のelse{}の中の処理が行われる。printは応答をWebサーバ手段に出力するための書式であり、Webサーバ手段は受け取った応答をネットワークを介してWebブラウザに送信する。
【0033】
ユーザはこのスクリプトを新規スクリプト受け付け手段を用いて記憶部に記憶させる。その後ユーザがWebブラウザにこのスクリプトを示すURLを入力することによって、Webブラウザに図6の画面が表示される。
【0034】
さらにユーザがプリンタ部を使用しようとする場合、603の部分をクリックすることによりuse_printer。plというスクリプトが実行され、プリンタを使用するための画面が表示されるので、周辺装置にプリント処理をさせることができる。
【0035】
もし図7のスクリプトにおいて、ユーザが誤っての最初の行のpを消してしまって、
rint ”Content−Type: text/html¥n¥n”;
としたファイルを記憶させてしまった場合は、エラー処理ステップによってWebブラウザには図8のような画面が表示される。これによってユーザが自分のスクリプトの書式に誤りがあったことを容易に知ることができる。
【0036】
本実施の形態は各種の周辺装置へ応用できる。たとえば、本実施の形態をデジタルカメラ、マイクロホン、遠隔ビデオカメラ等に応用することができる。いずれの場合もユーザは自分の使いやすいインタフェースにカスタマイズしてWebブラウザから操作することができる。
【0037】
【発明の効果】
以上説明したように、請求項1記載の発明によれば、
ネットワーク接続手段と、ネットワーク接続手段を介してネットワーク上のクライアントからアクセス可能であるWebサーバ手段と、Webサーバ手段が受け取ったクライアントからの要求に基づいて少なくとも一つの動作を実行する処理手段を有し、クライアントから操作が可能である周辺装置において、実行すべき処理手順を記述したスクリプトを記憶する記憶装置と、前記要求に基づいて前記記憶装置からスクリプトを読み込んで解釈しその手順に従って処理を実行するインタプリタ手段を有するので、装置の制御をあらかじめ組み込まれたプログラムだけではなく、ASCII文字列で処理手順が記述されたスクリプトによって行うことが可能となる。スクリプトの記述は一般のテキストエディタを用いれば良く、特別なツール等を必要としないため容易に行える。
【0038】
請求項2記載の発明によれば、
請求項1記載の周辺装置においてスクリプトを受け取って前記記憶装置に記憶する受け付手段を有することを特徴とするので、ユーザが新たなスクリプトを装置に組み込んで操作インタフェースのカスタマイズをすることが可能となる。
【0039】
請求項3記載の発明によれば、
請求項1記載の周辺装置において前記インタプリタ手段は、前記要求スクリプトの解釈段階または実行段階においてエラーが発生した場合に、エラー発生を前記Webサーバ手段に知らせるステップをもつことを特徴とするので、ユーザが導入したスクリプトに文法等の誤りがあった場合、ユーザは容易にスクリプトの誤りを知ることができる。
【図面の簡単な説明】
【図1】本発明の全体のブロック図
【図2】Webサーバ手段の動作を表すフローチャート
【図3】インタプリタ手段の第一の実施形の動作を表すフローチャート
【図4】インタプリタ手段の第二の実施形の動作を表すフローチャート
【図5】本発明を複合機に適用した場合の構成を表すブロック図
【図6】ユーザによるカスタマイズを行った画面例を表す図
【図7】ユーザによるカスタマイズを行うためのスクリプト例
【図8】エラー画面例
【図9】従来例を説明する図
【符号の説明】
100 周辺装置
103 インタプリタ手段
104 新規スクリプト受付手段
【発明の属する技術分野】
本発明は、ネットワークを介して制御可能な周辺装置に関するものである。
【0002】
【従来の技術】
今日、さまざまな周辺装置が広範な用途に用いられている。例えば、プリンタはデータを印刷するために使用され、スキャナはデータの入力、ファクスはデータの送信に利用されている。またこれらの機能を全て持った複合機も登場している。
【0003】
これらの周辺装置では、その周辺装置に付属している操作パネルを用いる他に、ネットワークを介して接続されたコンピュータを用いることで操作可能である。コンピュータからこれらの周辺装置を制御する場合には、通常その周辺装置専用のドライバを経由して所望の動作をさせる。従って、そのドライバが組み込まれたコンピュータでなければ制御することは不可能であるという問題があった。
【0004】
これに対して最近は、周辺装置にWebサーバの機能を持たせたものが出現している。
【0005】
このような周辺装置では専用の特別なドライバを必要とせず、一般のWebブラウザを用いて制御することが可能である。図9にWebサーバ機能を持った周辺装置の構成例を示す。この周辺装置にアクセスするために、ユーザはURL(Uniform Resource Locator)を直接ウェブブラウザに入力するか、URLが埋め込まれたリンクを選択する。Webブラウザは、所望のURLを指定するHTTPコマンドをネットワークを介して送信する。周辺装置のWebサーバは、このHTTPコマンドを受け取り、これを解析し、それに応じた動作を行う。Webブラウザからの要求が周辺装置に対する動作要求であった場合、対応するCGI(Common Gateway Interface)プログラムの処理が行われる。CGIプログラムはあらかじめコンピュータで処理可能な形式にコンパイルされて周辺装置内に用意されており、周辺装置の情報の取得・設定や、プリント出力等の動作を実行できる。ユーザがフォームに入力するなどしてWebブラウザから指定した値は、WebサーバからCGIプログラムに渡され、制御パラメータなどとして利用される。
【0006】
【発明が解決しようとする課題】
同じ周辺装置であっても、その設置場所や使用形態などにより頻繁に利用する処理項目は異なる。特に複合機などのように多種類の処理が可能である場合、あらかじめ周辺装置に組み込まれたCGIプログラムが用意する操作インタフェースでは、所望の処理を行う為の階層が深く操作が面倒であったり、ユーザによっては不要な項目が多かったりするケースがある。従って個々の機器ごとにインタフェースをカスタマイズすることができれば非常に便利である。しかしながら上記従来の技術では、あらかじめ機器に用意されたプログラムで処理を行うように構成されているため、ユーザによるカスタマイズを行うことは難しかった。
【0007】
本発明はこの課題に鑑みなされたものであり、ネットワークを介して制御可能な周辺装置において操作インタフェースのカスタマイズを容易にすることを目的とする。
【0008】
【課題を解決するための手段】
上記目的を達成するため、請求項1記載の発明は、
ネットワーク接続手段と、ネットワーク接続手段を介してネットワーク上のクライアントからアクセス可能であるサーバ手段と、サーバ手段が受け取ったクライアントからの要求に基づいて少なくとも一つの動作を実行する装置制御手段を有し、クライアントから操作が可能である周辺装置において、実行すべき処理手順を記述したスクリプトを記憶する記憶装置と、前記要求に基づいて前記記憶装置からスクリプトを読み込んで解釈しその手順に従って処理を実行するインタプリタ手段を有することを特徴とする。
【0009】
上記構成によって、周辺装置にあらかじめ組み込まれたプログラムだけではなく、ASCII文字列で処理手順が記述されたスクリプトによって装置操作を行うことが可能となる。スクリプトの記述は一般のテキストエディタを用いれば良く、特別なツール等を必要としないとうい利点がある。
【0010】
請求項2記載の発明は、
請求項1記載の周辺装置においてユーザから要求があった時にスクリプトを受け取って前記記憶装置に記憶する新規スクリプト受付手段もち、その後、前記インタプリタ手段はこの新規スクリプトを実行することが可能になることを特徴とする。上記構成によって、ユーザが新たなスクリプトを装置に組み込むことができ、インタフェースのカスタマイズをすることが可能となる。
【0011】
請求項3記載の発明は、
請求項1記載の周辺装置において前記インタプリタ手段は、前記要求スクリプトの解釈段階または実行段階においてエラーが発生した場合に、エラー発生を前記Webサーバ手段に知らせるステップをもつことを特徴とする。ユーザが導入したスクリプトには文法等に誤りがある場合が考えられるが、上記構成によってエラーが発生したことをユーザに通知することが可能となる。
【0012】
【発明の実施の形態】
図1は本発明を示す図である。図1において周辺装置100はネットワーク接続手段101、Webサーバ手段102、インタプリタ手段103、装置制御手段104、新規スクリプト受付手段105、及びスクリプトを記憶するための記憶装置106を持つ。107はネットワークである。ネットワーク107にはWebブラウザ108が接続されている。ネットワーク107にはWebブラウザ108が複数接続されていても良いし、周辺装置100と同様の周辺装置が複数接続されていても良い。
【0013】
ネットワーク接続手段101はネットワーク107に接続され、ネットワーク107との間でデータの送受信を行う。このようなネットワーク接続の確立は従来技術で周知である。Webサーバ手段102はHTTP(Hyper Text Transfer Protocol)による通信が可能なサーバで、HTTP要求の内容に対応して動作する。インタプリタ手段103は前記Webサーバ手段が受け取ったHTTPの要求がスクリプトの実行であった場合に、要求スクリプトを記憶装置106から読み込み、解釈し、実行する。ここで処理されるスクリプトはあらかじめ記憶装置に用意されているものでも良いし、後述する新規スクリプト受付手段でユーザによって追加された新しいスクリプトであっても良い。
【0014】
スクリプトはあらかじめ定められた文法規則に従って、実行すべき処理の手順を記述したテキストファイルである。前記文法規則はPerlのように一般に知られた言語を用いても良いし、周辺装置専用の新たな言語を用いても良い。また複数の言語を処理できるように構成されていても良い。
【0015】
スクリプトには装置制御手段104にアクセスするための書式が用意されており、インタプリタ手段103は、装置制御手段104にアクセスして、周辺装置100の情報を取得・設定あるいは動作を行わせることができる。装置制御手段104はインタプリタ手段103からの要求に応じて周辺装置100を動作させたり、周辺装置100の情報をインタプリタ手段103に通知したり、設定したりする。
【0016】
新規スクリプト受付手段105は、ユーザによる新しいスクリプトを周辺装置100に導入するよう動作する。本実施例において、スクリプト受付手段は周辺装置内にFTP(File Transfer Protocol)サーバを持つことで実現される。FTPサーバは、File Transfer Protocol でネットワーク上のクライアントと通信し、ファイルの送受信を行うプログラムである。ユーザは新しいスクリプトを導入するためにFTPクライアントプログラムで周辺装置にアクセスする。周辺装置のFTPサーバがこれに応答し、ユーザが作成した新規スクリプトファイルを周辺装置の記憶装置に記憶する。
【0017】
次に図2に基づいてWebサーバ手段の動作について説明する。ステップ200からスタートする。ステップ201において、ネットワーク接続手段を介してWebブラウザからのHTTP要求を受け取る。ステップ202において受け取った要求の解析が行われる。解析の結果要求がスクリプトの実行でなかった場合、要求に応じた処理が行われる。要求がスクリプトの実行であった場合、ステップ203においてインタプリタ処理が実行される。インタプリタ処理の詳細については後述する。インタプリタ処理の結果がエラー応答であった場合、ステップ204においてエラー処理が行われる。エラー処理は例えばエラーの原因をユーザに知らせるための応答を生成する処理を行う。ステップ205においてWebブラウザに対して応答送信を行う。
【0018】
次に図3に基づいてインタプリタ手段の動作について説明する。ステップ300からスタートする。ステップ301において、スクリプトが記憶装置から読み込まれる。ステップ302において、読み込まれたスクリプトの解析を行い、続く実行ステップで処理できる中間コードを生成する。ステップ303では、ステップ302で生成された中間コードから実際に処理が行われる。ここで実行される処理は、制御手段にアクセスして周辺装置の制御を行う処理、および周辺装置の状態に応じた応答を作成する処理を含む。ステップ304においてサーバ手段に応答を返す。ステップ305では、ステップ302のスクリプト解析段階またはステップ303の実行段階においてエラーが起きた場合、エラーが起こったことをエラー応答としてサーバ手段に伝える。
【0019】
本発明の第二の実施例では、第一の実施例におけるインタプリタ手段を、図4のように1行ずつ解析・実行を繰り返すように構成する。インタプリタ手段はステップ400からスタートする。ステップ401において、スクリプトが記憶装置から読み込まれる。ステップ402において、読み込まれたスクリプトを1行解析する。ステップ403では、解析した結果にもとづいて実際に処理が行われる。全ての行の解析・実行が終わっていればステップ405に進み、そうでなければステップ402に戻って処理を繰り返す。
【0020】
本発明の第三の実施例では、第一の実施例における新規スクリプト受付手段をフロッピーディスク(登録商標)などの補助記憶媒体を通じて受け取るように構成する。この実施例において周辺装置は補助記憶媒体を読み取るための読み取り装置を持つ。ユーザは作成した新規スクリプトを補助記憶媒体に保存し、周辺装置の読み取り装置にその内容を読み取らせる。新規スクリプト受付手段は、補助記憶媒体から読み取ったスクリプトを記憶装置106に記憶し、その後インタプリタ手段103が読み込んで実行することが出来るようにする。
【0021】
次に本発明を、スキャナ機能、プリンタ機能、ファクス機能をもつ複合機に適用した例を示す。
【0022】
図5はこの適用例の形態の構成を示すブロック図である。本適用例は、図5に示すように、画像入力デバイスであるスキャナ2070および画像出力デバイスであるプリンタ2095が接続されるとともに、LAN2011および公衆回線(WAN)2051が接続され、コピー機能、LAN2011を介して外部から供給されるデータをプリント出力するプリンタ機能、公衆回線(WAN)2051を介したファクシミリ機能を含む通信機能を有する複合装置からなり、この複合装置は、装置全体の制御を行うとともに画像情報やデバイス情報の入出力に関する制御を行うコントローラユニット2000を備える。
【0023】
コントローラユニット2000は、ROM2003に格納されているブートプログラムに基づきシステムを起動し、このシステム上でHDD(ハードディスク装置)2004に格納されている各種制御プログラムを読み出してRAM2002をワークエリアとして所定の処理を実行するCPU2001を有する。HDD2004には、上記各種プログラムが格納されるとともに、画像データが格納される。
【0024】
CPU2001には、RAM2002、ROM2003、HDD2004とともに、操作部I/F(操作部インタフェース)2006、LANI/F(LANインタフェース)2010、モデム2050、イメージバスI/F(イメージバスインタフェース)2005がシステムバス2007を介して接続されている。
【0025】
操作部I/F2006は、操作部2012とのインタフェースであって、操作部2012に表示する画像データの操作部2012への転送、操作部2012における操作入力により発生した信号のCPU2001への転送などを行う。操作部2012は、画像処理に関する各機能における現在の設定状態、各機能に関する設定情報を入力するための情報入力画面などを表示するための表示部、各機能に対する設定情報を入力するキーなどを含む入力部などを有する。
【0026】
LANI/F2010は、LAN2011に接続され、LAN2011を介した情報の入出力を行う。モデム2050は、公衆回線(WAN)2051に接続され、公衆回線2051を介した情報の入出力を行う。イメージバスI/F2005は、画像バス2008とシステムバス2007とを接続し、データ構造を変換するするバスブリッジからなる。画像バス2008は、画像データを高速で転送可能なPCIバスまたはIEEE1394規格に従うバスから構成される。
【0027】
画像バス2008には、RIP(ラスタイメージプロセッサ)2060、デバイスI/F(デバイスインタフェース)2020、スキャナ画像処理部2080、プリンタ画像処理部2090、画像回転部2030および画像圧縮部2040が接続されている。
【0028】
RIP2060は、PDLコードをビットマップイメージに展開する。デバイスI/F2020は、画像入出力デバイスであるスキャナ2070やプリンタ2095とコントローラユニット2000とを接続し、画像データの同期系/非同期系の変換を行う。ここでは、デバイスI/F2020とスキャナ2070とがケーブル2071を介して、デバイスI/F2020とプリンタ2095とがケーブルとがケーブル2096を介して接続されている。スキャナ画像処理部2080は、入力画像データに対し補正、加工、編集を行う。プリンタ画像処理部2090は、プリント出力画像データに対して、プリンタの補正、解像度変換などを行う。画像回転部2030は画像データの回転処理を行う。画像圧縮部2040は、多値画像データに対してはJPEG、二値画像画像データに対してJBIG、MMR、MHの圧縮伸張処理を行う。
【0029】
このように、コントローラユニット2000のCPU2001は、各制御プログラムに基づきシステムバス2007に接続される各種デバイスとのアクセスを総括的に制御するとともに、デバイスI/F2020を介してスキャナ2070から画像情報を読み込み、読み込んだ画像情報に対して所定の処理を施した後に該画像情報をデバイスI/F2020を介してプリンタ2095に出力するなどの制御を行う。
【0030】
本実施例において、Webサーバ手段、インタプリタ手段、新規スクリプト受付手段等は、CPU2001がHDD2004に格納されている各プログラムを読み出して実行することによって実現される。また、この実施例においてはスクリプトはHDD2004に格納される。
【0031】
図6にユーザによるカスタマイズ画面例を示す。ここで文字列601はこの周辺装置に登録されている装置名称、602はこの複合機のプリンタ機能が現在使用可能ならば「現在プリンタは使用可能です」、使用不可能ならば「現在プリンタは使用できません」という文字列を表示する。603はプリンタ機能が使用可能な場合に表示される文字列で、プリンタを使用する画面へのリンクになっている。
【0032】
図6のカスタマイズを行うため、ユーザはまず任意のテキストエディタで図7に示すスクリプトを入力し、適当な名前で保存する。701のGetValue(DEVICE_NAME)は装置制御手段にアクセスして周辺装置に登録されている装置名称を取得するための書式であり、同様に702のGetValue(PRINTER_STATUS)は現在のプリンタの状態を取得するための書式である。703のifは条件判断処理のための書式であり条件式が満たされた場合にそれに続く{}の中の処理が行われ、条件式が満たされない場合、704のelse{}の中の処理が行われる。printは応答をWebサーバ手段に出力するための書式であり、Webサーバ手段は受け取った応答をネットワークを介してWebブラウザに送信する。
【0033】
ユーザはこのスクリプトを新規スクリプト受け付け手段を用いて記憶部に記憶させる。その後ユーザがWebブラウザにこのスクリプトを示すURLを入力することによって、Webブラウザに図6の画面が表示される。
【0034】
さらにユーザがプリンタ部を使用しようとする場合、603の部分をクリックすることによりuse_printer。plというスクリプトが実行され、プリンタを使用するための画面が表示されるので、周辺装置にプリント処理をさせることができる。
【0035】
もし図7のスクリプトにおいて、ユーザが誤っての最初の行のpを消してしまって、
rint ”Content−Type: text/html¥n¥n”;
としたファイルを記憶させてしまった場合は、エラー処理ステップによってWebブラウザには図8のような画面が表示される。これによってユーザが自分のスクリプトの書式に誤りがあったことを容易に知ることができる。
【0036】
本実施の形態は各種の周辺装置へ応用できる。たとえば、本実施の形態をデジタルカメラ、マイクロホン、遠隔ビデオカメラ等に応用することができる。いずれの場合もユーザは自分の使いやすいインタフェースにカスタマイズしてWebブラウザから操作することができる。
【0037】
【発明の効果】
以上説明したように、請求項1記載の発明によれば、
ネットワーク接続手段と、ネットワーク接続手段を介してネットワーク上のクライアントからアクセス可能であるWebサーバ手段と、Webサーバ手段が受け取ったクライアントからの要求に基づいて少なくとも一つの動作を実行する処理手段を有し、クライアントから操作が可能である周辺装置において、実行すべき処理手順を記述したスクリプトを記憶する記憶装置と、前記要求に基づいて前記記憶装置からスクリプトを読み込んで解釈しその手順に従って処理を実行するインタプリタ手段を有するので、装置の制御をあらかじめ組み込まれたプログラムだけではなく、ASCII文字列で処理手順が記述されたスクリプトによって行うことが可能となる。スクリプトの記述は一般のテキストエディタを用いれば良く、特別なツール等を必要としないため容易に行える。
【0038】
請求項2記載の発明によれば、
請求項1記載の周辺装置においてスクリプトを受け取って前記記憶装置に記憶する受け付手段を有することを特徴とするので、ユーザが新たなスクリプトを装置に組み込んで操作インタフェースのカスタマイズをすることが可能となる。
【0039】
請求項3記載の発明によれば、
請求項1記載の周辺装置において前記インタプリタ手段は、前記要求スクリプトの解釈段階または実行段階においてエラーが発生した場合に、エラー発生を前記Webサーバ手段に知らせるステップをもつことを特徴とするので、ユーザが導入したスクリプトに文法等の誤りがあった場合、ユーザは容易にスクリプトの誤りを知ることができる。
【図面の簡単な説明】
【図1】本発明の全体のブロック図
【図2】Webサーバ手段の動作を表すフローチャート
【図3】インタプリタ手段の第一の実施形の動作を表すフローチャート
【図4】インタプリタ手段の第二の実施形の動作を表すフローチャート
【図5】本発明を複合機に適用した場合の構成を表すブロック図
【図6】ユーザによるカスタマイズを行った画面例を表す図
【図7】ユーザによるカスタマイズを行うためのスクリプト例
【図8】エラー画面例
【図9】従来例を説明する図
【符号の説明】
100 周辺装置
103 インタプリタ手段
104 新規スクリプト受付手段
Claims (3)
- ネットワーク接続手段と、前記ネットワーク接続手段を介してネットワーク上のWebクライアントからのアクセスを可能にするWebサーバ手段と、前記Webサーバ手段が受け取ったWebクライアントからの要求に基づいて少なくとも一つの動作を実行する装置制御手段を有し、前記Webクライアントから操作が可能である周辺装置において、
処理手順をテキスト(ASCII文字列)で記述したファイル(スクリプト)を記憶する記憶装置と、前記要求に基づいて前記記憶装置から前記スクリプトを読み込んで解釈しその手順に従って順次処理を実行するインタプリタ手段を有することを特徴とする周辺装置。 - ユーザから要求があった時にスクリプトを受け取って前記記憶装置に記憶する新規スクリプト受付手段をもち、その後前記インタプリタ手段はこの新規スクリプトを実行することが可能になることを特徴とする請求項1記載の周辺装置。
- 前記インタプリタ手段は、前記スクリプトの解釈段階または実行段階においてエラーが発生した場合に、エラー発生を前記Webサーバ手段に知らせるステップをもつことを特徴とする請求項1記載の周辺装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002202041A JP2004046469A (ja) | 2002-07-11 | 2002-07-11 | 周辺装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002202041A JP2004046469A (ja) | 2002-07-11 | 2002-07-11 | 周辺装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004046469A true JP2004046469A (ja) | 2004-02-12 |
Family
ID=31708338
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002202041A Pending JP2004046469A (ja) | 2002-07-11 | 2002-07-11 | 周辺装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004046469A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012507060A (ja) | 2008-10-27 | 2012-03-22 | サトーホールディングス株式会社 | プログラムスクリプト言語を用いたラベルプリンタapi |
-
2002
- 2002-07-11 JP JP2002202041A patent/JP2004046469A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012507060A (ja) | 2008-10-27 | 2012-03-22 | サトーホールディングス株式会社 | プログラムスクリプト言語を用いたラベルプリンタapi |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5539043B2 (ja) | 情報送信装置、情報送信装置の制御方法及びコンピュータプログラム | |
US8817300B2 (en) | Method and apparatus to edit and print documents using a web browser | |
US7373347B2 (en) | Information processing apparatus and information processing method | |
US9069504B2 (en) | Printing apparatus and method for increasing storage area | |
US8132107B2 (en) | Multifunctional apparatus, method for controlling multifunctional apparatus, control apparatus, method for controlling control apparatus, system for controlling multifunctional apparatus, control program, and computer-readable storage medium | |
US9025172B2 (en) | Printing setting apparatus, computer readable recording medium, and image forming system for generating printing setting information described in one data format included in plural types of data formats and submitting a printing job to an image forming apparatus capable of executing a printing job based on printing setting information described in the plural types of data formats | |
JP4348151B2 (ja) | 情報処理装置及び情報処理方法 | |
US6928462B2 (en) | System and method for distributed processing of non-processable elements of a document to be rendered on a client | |
JP2008047120A (ja) | ワークフロー・ユーザ・インターフェイスをカスタム化するシステムおよび方法 | |
JP2009038526A (ja) | 印刷サーバ装置 | |
US20040190046A1 (en) | Service processor, service processing system and source data storing method for service processing system | |
JP2010108379A (ja) | 画像処理装置、画像処理装置の制御方法、記憶媒体及びプログラム | |
US8848908B2 (en) | Image processing apparatus and control method thereof | |
JP4154316B2 (ja) | 画像処理システム、制御方法、画像処理装置、プログラムおよび記憶媒体 | |
JP2008084312A (ja) | リモート画像処理ジョブを第三者が制御するための方法およびシステム | |
US10627986B2 (en) | Information processing apparatus, method for controlling information processing apparatus, and program | |
JP2007280028A (ja) | 情報処理装置及びショートカットキーの設定・変更方法 | |
JP2998668B2 (ja) | ファクシミリ装置 | |
JP2007183922A (ja) | 情報処理装置、及びアプリケーションインストール方法 | |
JP2008211747A (ja) | 画像処理装置、サーバ装置、タスク処理方法、記憶媒体、プログラム | |
JP2004046469A (ja) | 周辺装置 | |
JP2004318644A (ja) | ネットワーク端末装置 | |
JP5930602B2 (ja) | 情報処理システム、情報処理装置、及びそれらの制御方法 | |
JP4463282B2 (ja) | 情報管理装置および方法 | |
JP2004080388A (ja) | ネットワークファクシミリ装置 |