以下、本発明の実施の形態について図面を参照して説明する。以下の説明では同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがってそれらについての詳細な説明は繰返さない。
図1は、本発明の実施の形態の1つにおける画像処理システムの全体概要を示す図である。図1を参照して、画像処理システム1は、画像処理装置として機能する複合機(以下、「MFP」という)100と、無線局5と、携帯情報装置200,200A,200Bと、パーソナルコンピューター(以下、「PC」という)300と、を含む。MFP(Multi Function Peripheral)100、PC300および無線局5は、ネットワーク3に接続される。携帯情報装置200,200A,200Bは、無線局5を通して、ネットワーク3に接続される。
ネットワーク3は、ローカルエリアネットワーク(LAN)であり、接続形態は有線または無線を問わない。また、ネットワーク3は、LANに限らず、ワイドエリアネットワーク(WAN)、公衆交換電話網(PSTN)、インターネット等であってもよい。
PC300は、一般的なコンピューターである。PC300には、MFP100に対応するプリンタードライバープログラムがインストールされており、プリンタードライバープログラムを実行することにより、MFP100を制御して、MFP100に、画像形成処理、原稿読取処理等を実行させることが可能である。携帯情報装置200,200A,200Bのハードウェア構成および機能は同じなので、ここでは特に言及しない限り携帯情報装置200を例に説明する。なお、図1ではネットワーク3に1台のMFP100と、1台のPC300と、1台の無線局5が接続され、無線局5には、3台の携帯情報装置200,200A,200Bが接続される例を示しているが、MFP100、PC300、無線局5および携帯情報装置200,200A,200Bの数はこれに限定されるものではなく、それぞれ1台以上であればよい。また、画像処理装置の一例としてMFP100を説明するが、MFP100に代えて、コンピューター、スキャナ装置、プリンターを用いるようにしてもよい。
図2は、MFPの外観を示す斜視図である。図3は、MFPのハードウエア構成の一例を示すブロック図である。図2および図3を参照して、MFP100は、自動原稿搬送装置(以下「AFD」という)121と、原稿読取部123と、原稿読取部123が原稿を読み取って出力する画像データに基づいて用紙等に画像を形成する画像形成部125と、画像形成部125に用紙を供給する給紙部127と、画像が形成された用紙を処理する後処理部128と、ユーザーインターフェースとしての操作パネル129と、メイン回路110と、を含む。
ADF121は、原稿給紙トレイ上にセットされた複数枚の原稿を1枚ずつ自動的に原稿読取部123のプラテンガラス上に設定された所定の原稿読み取り位置まで搬送し、原稿読取部123により原稿画像が読み取られた原稿を原稿排紙トレイ上に排出する。原稿読取部123は、原稿読取位置に搬送されてきた原稿に光を照射する光源と、原稿で反射した光を受光する光電変換素子とを含み、原稿のサイズに応じて原稿画像を走査する。光電変換素子は、受光した光を電気信号である画像データに変換して、画像形成部125に出力する。給紙部127は、給紙トレイに収納された用紙を画像形成部125に搬送する。
画像形成部125は、周知の電子写真方式により画像を形成するものであって、外部から受信された画像データ、または、原稿読取部123から入力される画像データにシェーディング補正などの各種のデータ処理を施し、データ処理後の画像データに基づいて、給紙部127により搬送される用紙に画像を形成する。
後処理部128は、画像が形成された用紙を排紙する。後処理部128は、複数の排紙トレイを有し、画像が形成された用紙をソートして排紙することが可能である。また、後処理部128は、パンチ穴加工部、ステープル加工部を備えており、排紙された用紙にパンチ穴加工、またはステープル加工することが可能である。また、MFP100は、その上面にユーザーとのユーザーインターフェースとしての操作パネル129を備えている。
メイン回路110は、CPU111と、通信インターフェース(I/F)部112と、ROM(Read Only Memory)113と、RAM(Random Access Memory)114と、EEPROM(Electrically Erasable and Programmable ROM)115と、大容量記憶装置としてのハードディスクドライブ(HDD)116と、ファクシミリ部117と、CD(Compact Disk)−ROM119Aが装着される外部記憶装置119と、を含む。CPU111は、自動原稿搬送装置121、原稿読取部123、画像形成部125、給紙部127、後処理部128および操作パネル129と接続され、MFP100の全体を制御する。
ROM113は、CPU111が実行するプログラム、またはそのプログラムを実行するために必要なデータを記憶する。RAM114は、CPU111がプログラムを実行する際の作業領域として用いられる。また、RAM114は、原稿読取部123から連続的に送られてくる読取データ(画像データ)を一時的に記憶する。
操作パネル129は、MFP100の上面に設けられる。操作パネル129は、表示部131と操作部133とを含む。表示部131は、LCD、有機ELD(Electro−Luminescence Display)等のディスプレイであり、ユーザーに対する指示メニューや取得した画像データに関する情報等を表示する。操作部133は、複数のキーを備え、キーに対応するユーザーの操作による各種の指示、文字、数字などのデータの入力を受け付ける。操作部133は、表示部131の表示面の位置を検出するタッチパネル135をさらに含む。タッチパネル135は、表示部131の上面または下面に設けられ、ユーザーにより指示された位置の座標をCPU111に出力する。
通信I/F部112は、MFP100をネットワーク3に接続するためのインターフェースである。CPU111は、通信I/F部112を介してネットワーク3に接続されたPC300、携帯情報装置200,200A,200Bとの間で通信し、データを送受信する。また、通信I/F112は、ネットワーク3を介してインターネットに接続されたコンピューターと通信が可能である。
ファクシミリ部117は、公衆交換電話網(PSTN)に接続され、ファクシミリデータを送受信する。ファクシミリ部117は、原稿読取部123により読み取られた画像データまたはHDD116に記憶されたデータをファクシミリデータに変換して、PSTNに接続されたファクシミリ装置に送信する。また、ファクシミリ部117は、受信されたファクシミリデータをHDD116に記憶するか、画像形成部125にファクシミリデータの画像を用紙に形成させる。
外部記憶装置119は、CD−ROM119Aが装着される。CPU111は、外部記憶装置119を介してCD−ROM119Aにアクセス可能である。CPU111は、外部記憶装置119に装着されたCD−ROM119Aに記録されたプログラムをRAM114にロードして実行する。なお、CPU111が実行するプログラムは、CD−ROM119Aに記録されたプログラムに限られず、HDD116に記憶されたプログラムをRAM114にロードして実行するようにしてもよい。この場合、ネットワーク3に接続された他のコンピューターが、MFP100のHDD116に記憶されたプログラムを書き換える、または、新たなプログラムを追加して書き込むようにしてもよい。さらに、MFP100が、ネットワークに接続された他のコンピューターからプログラムをダウンロードして、そのプログラムをHDD116に記憶するようにしてもよい。ここでいうプログラムは、CPU111が直接実行可能なプログラムだけでなく、ソースプログラム、圧縮処理されたプログラム、暗号化されたプログラム等を含む。
携帯情報装置200,200A,200Bのハードウエア構成および機能は同じなので、ここでは携帯情報装置200を例に説明する。
図4は、携帯情報装置のハードウェア構成の一例を示すブロック図である。図4を参照して、携帯情報装置200は、携帯情報装置200の全体を制御するためのCPU201と、データを不揮発的に記憶するフラッシュメモリ203と、情報を表示する表示部205と、ユーザーの操作の入力を受け付ける操作部207と、通話部211と接続された無線通信部209と、無線LANI/F213と、を含む。
無線通信部209は、携帯電話網に接続された携帯電話用基地局と無線通信する。無線通信部209は、携帯情報装置200を携帯電話網に接続し、データ通信および通話部211を用いた通話を可能とする。無線通信部209は、データ通信する場合、携帯電話用基地局から受信した無線信号を復号したデータをCPU201に出力する。また、無線通信部209は、CPU201から入力されるデータを符号化し、携帯電話用基地局に送信する。
表示部205は、液晶表示装置(LCD)、有機ELD等の表示装置であり、ユーザに対する指示メニューや取得した画像データに関する情報等を表示する。操作部207は、複数のキーを備え、キーに対応するユーザの操作による各種の指示、文字、数字などのデータの入力を受け付ける。
無線LANI/F213は、無線局300と通信し、携帯情報装置200をネットワーク2に接続するためのインターフェースである。携帯情報装置200は、ネットワーク3に接続されたMFP100とデータの送受信が可能である。携帯情報装置200は、MFP100のIP(Internet Protocol)アドレスまたはMAC(Media Access Control)アドレスを予め登録しておき、IPアドレスまたはMACアドレスを用いてMFP100と通信する。
さらに、携帯情報装置200は、ブラウジングプログラムがインストールされており、無線LANI/F213を制御して、ネットワーク3に接続されたWebサーバーと通信し、WebサーバーからHTML(HyperText Markup Language)またはXML(Extensible Markup Language)等のマークアップ言語で記述されたWebページをダウンロードし、表示部205に表示することができる。また、携帯情報装置200は、表示部205にWebページが表示された状態で、ユーザーが操作部207に入力操作に従って、Webサーバーに第1の種類のコマンドを送信する。第1の種類のコマンドは、例えば、CGI(Common Gateway Interface)コマンド、HTTP(Hyper Text Transfer Protocol)コマンドである。
図5は、MFPが備えるCPUの機能の一例を示すブロック図である。図5に示す機能は、MFP100が備えるCPU111が、ROM113、HDD116またはCD−ROM119Aに記憶された遠隔操作方法通知プログラム、Webサーバープログラム、ブラウジングプログラム、および遠隔制御プログラムを実行することにより、CPU111に形成される機能である。図5を参照して、CPU111は、パネル制御部51と、通信制御部53と、基幹制御部53と、第2遠隔制御部57と、処理実行部61と、操作方法抽出部63と、優先順位情報生成部67と、通知部69と、を含む。
通信制御部53は、通信I/F部112を制御して、外部装置と通信する。通信制御部53は、複数の外部装置と並列で通信することが可能である。通信制御部53は、複数の外部装置と通信する場合、複数の外部装置それぞれとの間で確立された通信セッションに基づいて、通信相手の外部装置を識別する。本実施の形態においては、携帯情報装置200,200A,200Bが外部装置になり得る。以下、通信制御部53が携帯情報装置200,200A,200Bと通信セッションを確立し、携帯情報装置200,200A,200Bと通信する場合を例に説明する。
基幹制御部55は、CPU111がWebサーバープログラムを実行するタスクであり、Webサーバーとして機能する。基幹制御部55は、マークアップ言語で記述され、MFP100を操作するための第1の種類の操作画面をクライアントに出力し、クライアントから出力される第1の種類のコマンドが入力されると、第1の種類のコマンドに対応する処理を、処理実行部61に実行させる。クライアントから出力される第1の種類のコマンドは、例えば、CGIコマンド、HTTPコマンドである。基幹制御部55に接続されるクライアントは、1つに制限される。基幹制御部55が複数のクライアントと接続されると、複数のクライアントそれぞれに対応して、第1の種類の操作画面、設定値等のデータをRAM114に記憶しなければならず、RAM114の記憶容量が増加するからである。
基幹制御部55は、直接制御部71と、第1遠隔制御部73と、を含む。直接制御部71は、パネル制御部51をクライアントとし、第1の種類の操作画面をパネル制御部51に出力し、パネル制御部51から入力される第1の種類のコマンドを受け付ける。直接制御部71は、パネル制御部51から入力される第1の種類のコマンドに対応する処理を、処理実行部61に実行させる。
パネル制御部51は、ブラウジングプログラムを実行するタスクであり、操作パネル129を制御し、表示部131に直接制御部71から入力される第1の種類の操作画面の画像を表示し、ユーザーが操作部133に入力する操作に対応する第1の種類のコマンドを直接制御部71に出力する。。
第1遠隔制御部73は、通信制御部53が通信セッションを確立した外部装置であって、ブラウジングプログラムを実行する外部装置をクライアントとする。第1遠隔制御部73は、通信制御部53を介して第1の種類の操作画面を外部装置に送信し、通信制御部53が外部装置から受信する第1の種類のコマンドを受け付ける。第1遠隔制御部73が外部装置から受け付ける第1の種類のコマンドは第1の種類の遠隔操作である。
基幹制御部55に接続されるクライアントは1つなので、直接制御部71と第1遠隔制御部73のいずれか一方が能動化される。換言すれば、ユーザーが操作パネル129を使用している間は、第1遠隔制御部73は外部装置をクライアントとすることはできず、逆に、ユーザーが外部装置である携帯情報装置200にブラウジングプログラムを実行させ、Webサーバーである第1遠隔制御部73が携帯情報装置200をクライアントしている間は、ユーザーは操作パネル129を使用することができない。
また、ユーザーが操作パネル129を使用して処理実行部61に実行させることのできる処理の種類は、ユーザーがブラウジングプログラムを実行する外部装置を使用して処理実行部61に実行させることのできる処理の種類と同じである。
第2遠隔制御部57は、CPU111が遠隔制御プログラムを実行するタスクであり、遠隔制御サーバーとして機能する。第2遠隔制御部57は、通信制御部53が通信セッションを確立した外部装置であって、遠隔操作プログラムを実行する外部装置をクライアントとする。遠隔操作プログラムは、遠隔制御プログラムと対になるプログラムである。遠隔操作プログラムと遠隔制御プログラムとは、2つのプログラム間で予め定められた第2の種類のコマンドを2つの装置間で送受信することにより、外部装置からMFP100を遠隔操作するためのプログラムである。第2遠隔制御部57は、通信制御部53を介して第2の種類の操作画面を外部装置に送信し、通信制御部53が外部装置から受信する第2の種類のコマンドを受け付ける。第2遠隔制御部57が外部装置から受け付ける第2の種類のコマンドは、第2の種類の遠隔操作である。
第2遠隔制御部57が出力する第2の種類の操作画面は、基幹制御部55が出力する第1の種類の操作画面と異なる。第2遠隔制御部57は、CPU111が遠隔制御プログラムを実行するタスクなので、第2の種類の操作画面は、遠隔制御プログラムによって定まる。例えば、第2の種類の操作画面を画像とし、第2の種類のコマンドを第2の種類の操作画面中の位置を示す座標を含むようにしてもよい。なお、第2の種類の操作画面を、第1の種類の操作画面の画像と同じ画像としてもよい。
第2遠隔制御部57が処理実行部61に実行させることのできる処理は、遠隔制御プログラムによって定まる。このため、第2遠隔制御部57が処理実行部61に実行させることのできる処理は、基幹制御部55が処理実行部61に実行させることのできる処理の少なくとも一部である。
第2遠隔制御部57が、複数の外部装置をクライアントとすることができるようにしてもよい。また、異なる遠隔制御プログラムをインストールしておけば、第2遠隔制御部57を複数にしてもよい。これらの場合は、複数のユーザーが、同時にMFP100を遠隔操作することができる。
基幹制御部55はCPU111がWebサーバープログラムを実行するタスクであり、第2遠隔制御部57はCPU111が遠隔制御プログラムを実行するタスクであるので、基幹制御部55と第2遠隔制御部57とで同時に処理実行部61に処理を実行させることが可能である。このため、MFP100を複数のユーザーが同時に使用することができる。
例えば、ユーザーAが操作パネルを操作してMFP100を使用している間に、ユーザーBが携帯情報装置200に遠隔操作プログラムを実行させ、MFP100を遠隔操作することができる。さらに、ユーザーCが携帯情報装置200Aに遠隔操作プログラムを実行させ、MFP100を遠隔操作することができる。
また、ユーザーAが携帯情報装置200にブラウジングプログラムを実行させ、MFP100を遠隔操作している間に、ユーザーBが携帯情報装置200Aに遠隔操作プログラムを実行させ、MFP100を遠隔操作することができる。さらに、ユーザーCが携帯情報装置200Aに遠隔操作プログラムを実行させ、MFP100を遠隔操作することができる。
処理実行部61は、コピー処理、スキャン処理、FAX処理、BOX処理、ジョブリスト・履歴確認処理、宛先登録・編集処理、各種マシン設定確認処理、メンテナンス処理の各処理を実行する。
コピー処理は、原稿読取部123が原稿を読み取って得られる画像データの画像を画像形成部125が、媒体上に形成し、画像が形成された媒体を排出する処理である。スキャン処理は、原稿読取部123が原稿を読み取って得られる画像データをHDD116に記憶する処理である。FAX処理は、原稿読取部123が原稿を読み取って得られる画像データを、ファクシミリデータに変換し、ファクシミリ送信する処理である。BOX処理は、HDD116に記憶されたデータを処理対象に選択する処理、データを変更または削除する処理である。
ジョブリスト・履歴確認処理は、MFP100が実行中のジョブの一覧を表示する処理、または、MFP100が実行したジョブの一覧を表示する処理である。宛先登録・編集処理は、宛先のユーザごとに電子メールアドレスおよびファクシミリ番号を関連付けたアドレスレコードを含むアドレス帳を編集する処理である。各種マシン設定確認処理は、マシン設定値を表示または変更する処理である。マシン設定値は、MFP100に設定される基本的な設定値であり、例えば、MFP100に割り当てられたネットワークアドレス、ファクシミリ番号、表示言語等の値である。メンテナンス処理は、画像形成部125が備える現像器、感光体ドラム、定着器等の使用頻度、使用可能回数等を表示する処理である。
処理実行部61は、基幹制御部55により制御されて実行する処理と第2遠隔制御部57により制御されて実行する処理とが競合する場合、先に制御されて実行した処理を、後に制御されて実行する処理よりも優先して実行し、先に制御されて実行した処理の終了後に、後に制御されて実行する処理を実行する。
操作方法抽出部63は、通信I/F部112が外部装置から処理を識別するための処理識別情報を含む処理要求を受信することに応じて、HDD116に記憶されたマスターテーブルを参照して、基幹制御部55と第2遠隔制御部57とのうちから、処理要求に含まれる処理識別情報が示す処理を処理実行部61に実行させることが可能なものをすべて抽出する。操作方法抽出部63は、抽出結果を優先順位情報生成部67に出力する。
マスターテーブルは、基幹制御部55が処理実行部61に実行させることのできるすべての処理と、第2遠隔制御部57が処理実行部61に実行させることのできるすべての処理と、を定める。具体的には、マスターテーブルは、基幹制御部55を識別するためのプログラム識別情報と、基幹制御部55が処理実行部61に実行させることのできるすべての処理それぞれの処理機器別情報とを関連付ける。また、マスターテーブルは、第2遠隔制御部57を識別するためのプログラム識別情報と、第2遠隔制御部57が処理実行部61に実行させることのできるすべての処理それぞれの処理機器別情報とを関連付ける。
抽出結果は、基幹制御部55を識別するためのプログラム識別情報のみを含む場合と、基幹制御部55を識別するためのプログラム識別情報と第2遠隔制御部57を識別するためのプログラム識別情報とを含む場合とがある。処理要求に含まれる処理識別情報が示す処理を、基幹制御部55が処理実行部61に実行させることが可能であるが、第2遠隔制御部57が処理実行部61に実行させることができない場合、抽出結果は、基幹制御部55のプログラム識別情報のみを含む。処理要求に含まれる処理識別情報が示す処理を、基幹制御部55および第2遠隔制御部57のいずれかもが処理実行部61に実行させることが可能な場合、抽出結果は、基幹制御部55のプログラム識別情報と第2遠隔制御部57のプログラム識別情報とを含む。
優先順位情報生成部67は、操作方法抽出部63から抽出結果が入力される。優先順位情報生成部67は、抽出結果が基幹制御部55のプログラム識別情報のみを含む場合、基幹制御部55に対応するブラウジングプログラムのプログラム識別情報のみを含む優先順位情報を生成し、生成した優先順位情報を通知部69に出力する。CPU111がブラウジングプログラムを実行するタスクは、基幹制御部55が受け付け可能な第1の種類のコマンドを出力する。
優先順位情報生成部67は、抽出結果が基幹制御部55のプログラム識別情報と第2遠隔制御部57のプログラム識別情報とを含む場合、基幹制御部55の状態に基づいて、第1の種類のコマンドと第2の種類のコマンドとに優先順位を付与する。具体的には、直接制御部71が能動化され、パネル制御部51によって操作パネル126から操作が受け付けられている間、または第1遠隔制御部73が能動化され、第1遠隔制御部73が外部装置と通信している間は、第2遠隔制御部57を優先させるために、第1遠隔制御部73が受け付け可能な第1の種類のコマンドよりも第2遠隔制御部57が受け付け可能な第2の種類のコマンドの優先順位を高く設定した優先順位情報を生成する。
また、優先順位情報生成部67は、直接制御部71が能動化されておらず、パネル制御部51によって操作パネル126から操作が受け付けられていない間、または第1遠隔制御部73が能動化されておらず、第1遠隔制御部73が外部装置と通信していない間は、デフォルトで定められた優先順位を付与した優先順位情報を生成する。デフォルトで定められた優先順位は、第2の種類のコマンドと第1の種類のコマンドとのいずれか一方が他方よりも優先順位を高い。第2の種類のコマンドと第1の種類のコマンドとのいずれを高く設定するかは、予め定めておけばよい。
優先順位情報は、第1の種類のコマンドに対応するブラウジングプログラムを識別するためのプログラム識別情報と、第2の種類のコマンドに対応する遠隔操作プログラムを識別するためのプログラム識別情報と、を優先順位の高い順に並べた情報である。優先順位情報生成部67は、第1の種類のコマンドよりも第2の種類のコマンドの優先順位を高く設定する場合、遠隔操作プログラムのプログラム識別情報の次に、ブラウジングプログラムのプログラム識別情報を並べた優先順位情報を生成する。また、優先順位情報生成部67は、第2の種類のコマンドよりも第1の種類のコマンドの優先順位を高く設定する場合、ブラウジングプログラムのプログラム識別情報の次に、遠隔操作プログラムのプログラム識別情報を並べた優先順位情報を生成する。優先順位情報生成部67は、生成された優先順位情報を通知部69に出力する。
通知部69は、優先順位情報生成部67からブラウジングプログラムのプログラム識別情報のみを含む優先順位情報、または、ブラウジングプログラムのプログラム識別情報と遠隔操作プログラムのプログラム識別情報とを優先順位の高い順に並べた優先順位情報のいずれかが入力される。通知部69は、優先順位情報を処理要求の送信元の携帯情報装置200を操作するユーザーに通知する。具体的には、通知部69は、優先順位情報を、通信制御部55を介して、送信要求を送信してきた携帯情報装置200に送信する。
携帯情報装置200,200A,200Bの機能は同じである。ここでは、携帯情報装置200を例に説明する。
図6は、携帯情報装置が備えるCPUの機能の一例を示すブロック図である。図6に示す機能は、携帯情報装置200が備えるCPU201が、フラッシュメモリ203に記憶された遠隔操作方法選択プログラム、ブラウジングプログラムおよび遠隔操作プログラムを実行することにより、CPU201に形成される機能である。
図6を参照して、CPU201は、遠隔操作処理特定部251と、処理種別送信部253と、切換部255と、第1遠隔操作部257と、第2遠隔操作部259と、を含む。
遠隔操作処理特定部251は、CPU201が遠隔操作方法選択プログラムを実行するタスクであり、MFP100に実行させる処理を特定する。遠隔操作処理特定部251は、処理選択画面表示部261と、選択受付部263と、を含む。処理選択画面表示部261は、処理選択画面を表示部205に表示する。処理選択画面は、MFP100が実行可能なすべての処理をそれぞれ識別するための複数の処理識別情報を選択可能に表示する画面である。
選択受付部263は、表示部205に表示された処理選択画面に含まれる複数の処理識別情報のうちからユーザーによって選択された処理識別情報を受け付ける。選択受付部263は、受け付けられた処理識別情報を処理要求送信部253に出力する。処理要求送信部253は、選択受付部263から入力される処理識別情報を含む処理要求を、無線LANI/F213を介してMFP100に送信する。
第1の遠隔操作部257は、CPU201がブラウジングプログラムを実行するタスクである。第1遠隔操作部257は、無線LANI/F213を制御して、MFP100と通信し、MFP100からマークアップ言語で記述された第1の種類の操作画面をダウンロードし、表示部205に表示する。また、第1の遠隔操作部257は、表示部205に第1の種類の操作画面を表示した状態で、ユーザーが操作部207に操作を入力すると、操作に対応する第1の種類のコマンドを、MFP100に送信する。
第2の遠隔操作部259は、CPU201が遠隔操作プログラムを実行するタスクである。第2遠隔操作部259は、無線LANI/F213を制御して、MFP100から第2の種類の操作画面を受信することに応じて、受信された第2の種類の操作画面の画像を表示部205に表示する。また、第2の遠隔操作部259は、表示部205に第2の種類の操作画面の画像を表示した状態で、ユーザーが操作部207に操作を入力すると、操作に対応する第2の種類のコマンドを、無線LANI/F213を介してMFP100に送信する。
上述したように、携帯情報装置200から処理要求を受信するMFP100は、優先順位情報を返信する。優先順位情報は、ブラウジングプログラムのプログラム識別情報のみを含む優先順位情報と、ブラウジングプログラムのプログラム識別情報と遠隔操作プログラムのプログラム識別情報とを優先順位の高い順に並べた優先順位情報と、を含む。
切換部255は、MFP100から受信される優先順位情報に基づいて、第1遠隔操作部257と第2遠隔操作部259のいずれか一方を能動化する。切換部255は、優先順位受信部265と、種別選択部267と、を含む。優先順位受信部265は、無線LANI/F213を制御して、MFP100が処理要求を受信することに応じて返信する優先順位情報を受信する。優先順位受信部265は、受信した優先順位情報を種別選択部267に出力する。
種別選択部267は、優先順位受信部265から優先順位情報が入力される。種別選択部267は、優先順位情報がブラウジングプログラムのプログラム識別情報のみを含む場合、第1遠隔操作部257を能動化する。具体的には、種別選択部267は、ブラウジングプログラムを起動する。これにより、CPU201がブラウジングプログラムを実行するタスクとして第1の遠隔操作部257が形成される。また、種別選択部267は、ブラウジングプログラムを起動する際、MFP100の基幹制御部55が予め記憶する第1の種類の操作画面のURLを、ブラウジングプログラムを起動するコマンドの引数とする。第1遠隔操作部57は、引数として受け取るURLを含むGETコマンド(HTTPコマンド)を、MFP100に送信するので、MFP100は、URLで特定されるWebページである第1の種類の操作画面を返信する。第1遠隔操作部57は、MFP100から送信される第1の種類の操作画面を受信し、表示部205に表示する。
種別選択部267は、優先順位情報がブラウジングプログラムのプログラム識別情報と遠隔操作プログラムのプログラム識別情報とを優先順位の高い順に並べた優先順位情報の場合、遠隔操作方法選択画面を生成して、生成された遠隔操作方法選択画面を表示部205に表示する。遠隔操作方法選択画面は、ブラウジングプログラムのプログラム識別情報と、遠隔操作プログラムのプログラム識別情報とを含み、優先順位情報に従ってそれらを優先順位の高い順に並べた画面である。
種別選択部267は、優先順位情報が、ブラウジングプログラムのプログラム識別情報の次に遠隔操作プログラムのプログラム識別情報を並べる場合、ブラウジングプログラムのプログラム識別情報を、遠隔操作プログラムのプログラム識別情報よりも上に配置した遠隔操作方法選択画面を生成する。また、優先順位情報が、遠隔操作プログラムのプログラム識別情報の次にブラウジングプログラムのプログラム識別情報を並べる場合、遠隔操作プログラムのプログラム識別情報を、ブラウジングプログラムのプログラム識別情報よりも上に配置した遠隔操作方法選択画面を生成する。
なお、遠隔操作方法選択画面は、ブラウジングプログラムのプログラム識別情報と、遠隔操作プログラムのプログラム識別情報とを、文字のサイズを優先順位が高いほど、大きくした画面であってもよい。
図7は、遠隔操作方法選択画面の一例を示す第1の図である。図7を参照して、遠隔操作方法選択画面は、「1.ブラウジングプログラム」と、「2.遠隔操作プログラム」の選択肢を含む。「1.ブラウジングプログラム」の選択肢は、「2.遠隔操作プログラム」の選択肢よりも上に配置されており、「1.ブラウジングプログラム」の選択肢は、「2.遠隔操作プログラム」の選択肢よりも優先順位が高いことを示している。
図8は、遠隔操作方法選択画面の一例を示す第2の図である。図8を参照して、遠隔操作方法選択画面は、「1.遠隔操作プログラム」と、「2.ブラウジングプログラム」の選択肢を含む。「1.遠隔操作プログラム」の選択肢は、「2.ブラウジングプログラム」の選択肢よりも上に配置されており、「1.遠隔操作プログラム」の選択肢は、「2.ブラウジングプログラム」の選択肢よりも優先順位が高いことを示している。
図6に戻って、種別選択部267は、表示部205に表示された遠隔操作方法選択画面に従って、ユーザーが操作部207に入力する選択指示を受け付ける。種別選択部267は、ブラウジングプログラムのプログラム識別情報の選択指示を受け付ける場合、第1の遠隔操作部257を能動化し、遠隔制御プログラムのプログラム識別情報の選択指示を受け付ける場合、第2の遠隔操作部259を能動化する。種別選択部267が第1の遠隔操作部257を能動化する具体例は上述したので説明を繰り返さない。
種別選択部267は、第2の遠隔操作部259を能動化する場合、遠隔操作プログラムを起動する。これにより、CPU201が遠隔操作プログラムを実行するタスクとして第2の遠隔操作部259が形成される。種別選択部267は、遠隔操作プログラムを起動する際、MFP100のネットワークアドレスであるIP(Internet Protocol)アドレスを、遠隔操作プログラムを起動するコマンドの引数として渡す。これにより、第2の遠隔操作部57が、引数として受け取るIPアドレスに基づいてMFP100に接続要求を送信する。MFP100は、接続要求を受信すると遠隔制御プログラムを起動し、第2の種類の操作画面を返信するので、第2の遠隔操作部59は、MFP100から送信される第2の種類の操作画面を受信し、表示部205に表示する。
図9は、第1の種類の操作画面の一例を示す図である。図9を参照して、第1の種類の操作画面は、コピー、スキャン、FAX、BOX、ジョブリスト・履歴確認、宛先登録・編集、各種マシン設定確認、メンテナンス、の各項目を含む。第1の種類の操作画面に含まれる各項目は、MFP100にコピー処理、スキャン処理、FAX処理、BOX処理、ジョブリスト・履歴確認処理、宛先登録・編集処理、各種マシン設定確認処理、メンテナンス処理を、それぞれ実行させるためのメニュー画面である。
図10は、第2の種類の操作画面の一例を示す図である。図10を参照して、第2の種類の操作画面は、BOX、ジョブリスト・履歴確認、宛先登録・編集、各種マシン設定確認、メンテナンス、の各項目を含む。第2の種類の操作画面に含まれる各項目は、MFP100にBOX処理、ジョブリスト・履歴確認処理、宛先登録・編集処理、各種マシン設定確認処理、メンテナンス処理を、それぞれ実行させるためのメニュー画面である。第2の種類の操作画面は、図9に示した第1の種類の操作画面と比較して、コピー、スキャン、FAX、の項目を含まない。
図11は、遠隔操作方法選択処理の流れの一例を示すフローチャートである。遠隔操作方法選択処理は、携帯情報装置200のCPU201が遠隔操作方法選択プログラムを実行することにより、CPU201によって実行される処理である。
図11を参照して、CPU201は、処理選択画面を表示部205に表示する(ステップS01)。処理選択画面は、MFP100が実行可能なすべての処理にそれぞれ対応する複数の処理識別情報を選択可能に表示する画面である。次のステップS02においては、携帯情報装置200を操作するユーザーが、ステップS01で表示された処理選択画面に含まれる複数の処理識別情報のうちからいずれかの処理識別情報を選択したか否かを判定する。ユーザーが処理選択画面に含まれる複数の処理識別情報のいずれかを指示する操作を操作部207に入力すれば、指示された処理識別情報が選択されたと判断する。処理選択画面に含まれる複数の処理識別情報のうちからいずれかの処理識別情報を選択する操作を受け付けるまで待機状態となり(ステップS02でNO)、選択する操作を受け付けたならば(ステップS02でYES)、処理をステップS03に進める。ステップS03においては、ユーザーにより選択された処理識別情報を含む処理要求を、無線LANI/F213を介してMFP100に送信する。
次のステップS04においては、MFP100から優先順位情報を受信したか否かを判定する。優先順位情報を受信するまで待機状態となり(ステップS04でNO)、優先順位情報を受信したならば(ステップS04でYES)、処理をステップS05に進める。優先順位情報は、ブラウジングプログラムのプログラム識別情報のみを含む優先順位情報と、ブラウジングプログラムのプログラム識別情報と遠隔操作プログラムのプログラム識別情報とを優先順位の高い順に並べた優先順位情報と、を含む。
ステップS05においては、優先順位情報がブラウジングプログラムのプログラム識別情報のみを含むか否かを判断する。優先順位情報がブラウジングプログラムのプログラム識別情報のみを含むならば処理をステップS06に進めるが、そうでなければ処理をステップS07に進める。
処理がステップS07に進む場合、優先順位情報がブラウジングプログラムのプログラム識別情報と遠隔操作プログラムのプログラム識別情報とを優先順位の高い順に並べた優先順位情報の場合である。ステップS07においては、ステップS04において受信された優先順位情報を用いて、操作方法選択画面を生成する。優先順位情報が、ブラウジングプログラムのプログラム識別情報の次に遠隔操作プログラムのプログラム識別情報を並べる場合、ブラウジングプログラムのプログラム識別情報を、遠隔操作プログラムのプログラム識別情報よりも上に配置した遠隔操作方法選択画面を生成する。優先順位情報が、遠隔操作プログラムのプログラム識別情報の次にブラウジングプログラムのプログラム識別情報を並べる場合、遠隔操作プログラムのプログラム識別情報を、ブラウジングプログラムのプログラム識別情報よりも上に配置した遠隔操作方法選択画面を生成する。
次のステップS08においては、ステップS07において生成された操作方法選択画面を表示部205に表示する。ステップS09においては、ブラウジングプログラムと遠隔操作プログラムのいずれかの選択を受け付ける。携帯情報装置200を操作するユーザーが、表示部205に表示された操作方法選択画面に従って、ブラウジングプログラムのプログラム識別情報と遠隔操作プログラムのプログラム識別情報のいずれかを選択する操作を受け付ける。ブラウジングプログラムのプログラム識別情報を選択する操作を受け付けたならば処理をステップS06に進め、遠隔操作プログラムのプログラム識別情報を選択する操作を受け付けたならば処理をステップS10に進める。
ステップS06においては、ブラウジングプログラムを起動し、処理を終了する。具体的には、ブラウジングプログラムを起動する際、MFP100が予め記憶する第1の種類の操作画面のURLを、ブラウジングプログラムを起動するコマンドの引数とする。これにより、CPU201がブラウジングプログラムを実行するタスク(第1遠隔操作部57)は、引数として受け取るURLを含むGETコマンド(HTTPコマンド)を、MFP100に送信する。GETコマンドを受信するMFP100は、URLで特定されるWebページである第1の種類の操作画面を返信するので、CPU201がブラウジングプログラムを実行するタスク(第1遠隔操作部57)は、MFP100から送信される第1の種類の操作画面を受信し、表示部205に表示する。第1の種類の操作画面は、例えば、図9に示した画面である。
処理がステップS10に進む場合、遠隔操作プログラムのプログラム識別情報がユーザーにより選択された場合である。ステップS10においては、第1遠隔操作プログラムを起動し、処理を終了する。具体的には、遠隔操作プログラムを起動する際、MFP100のネットワークアドレスであるIPアドレスを、遠隔操作プログラムを起動するコマンドの引数として渡す。これにより、CPU201が遠隔操作プログラムを実行するタスク(第2の遠隔操作部57)が、引数として受け取るIPアドレスに基づいてMFP100に接続要求を送信する。MFP100は、接続要求を受信すると遠隔制御プログラムを起動し、第2の種類の操作画面を返信するので、CPU201が遠隔操作プログラムを実行するタスク(第2の遠隔操作部57)は、MFP100から送信される第2の種類の操作画面を受信し、表示部205に表示する。
図12は、遠隔操作方法通知処理の流れの一例を示すフローチャートである。遠隔操作方法通知処理は、MFP100が備えるCPU111が遠隔操作方法通知プログラムを実行することによりCPU111により実行される処理である。
MFP100が備えるCPU111は、外部装置から処理要求を受信したか否かを判定する(ステップS11)。外部装置から処理要求を受信するまで待機状態となり(ステップS11でNO)、外部装置から処理要求を受信すると(ステップS11でYES)、処理をステップS12に進める。
ステップS12においては、処理要求に含まれる処理識別情報で特定される処理をMFP100に実行させることが可能な操作方法を抽出する。具体的には、HDD116に記憶されたマスターテーブルを参照して、処理要求に含まれる処理識別情報で特定される処理をMFP100に実行させることが可能な操作可能な操作方法を抽出する。マスターテーブルは、Webサーバープログラムおよび遠隔制御プログラムそれぞれに対して、MFP100に実行させることのできるすべての処理の処理機器別情報を関連付ける。処理要求に含まれる処理識別情報が、Webサーバープログラムおよび遠隔制御プログラムに関連付けられる場合と、Webサーバープログラムのみに関連付けられる場合がある。処理要求に含まれる処理識別情報が、Webサーバープログラムのみに関連付けられる場合、Webサーバープログラムに対応するブラウジングプログラムを用いる操作方法を抽出する。処理要求に含まれる処理識別情報が、Webサーバープログラムおよび遠隔制御プログラムに関連付けられる場合、Webサーバープログラムに対応するブラウジングプログラムを用いる操作方法と、遠隔制御プログラムに対応する遠隔操作プログラムを用いる操作方法とを抽出する。
次のステップS13においては、ステップS12において抽出された操作方法がブラウジングプログラムを用いる操作方法のみか否かを判定する。ブラウジングプログラムを用いる操作方法のみならば、処理をステップS14に進めるが、そうでなければ処理をステップS16に進める。
ステップS14においては、ブラウジングプログラムのプログラム識別情報のみを含む優先順位情報を生成し、処理をステップS15に進める。ステップS15においては、ステップS14において生成された優先順位情報を、外部装置に送信し、処理を終了する。具体的には、ステップS11において受信された処理要求の送信元である外部装置、ここでは、携帯情報装置200に、通信I/F部112を介して優先順位情報を送信する。
処理がステップS16に進む場合、ステップS13において、Webサーバープログラムに対応するブラウジングプログラムを用いる操作方法と、遠隔制御プログラムに対応する遠隔操作プログラムを用いる操作方法とが抽出される場合である。ステップS16においては、優先順位決定処理を実行する。優先順位決定処理の詳細は後述するが、2つの操作方法に優先順位を付与した優先順位情報を生成する処理である。
ステップS17においては、ステップS16において操作方法に付与された優先順に従って、優先順位情報を生成し、処理をステップS15に進める。優先順位情報は、Webサーバープログラムに対応するブラウジングプログラムを用いる操作方法に対応するブラウジングプログラムを識別するためのプログラム識別情報と、遠隔制御プログラムに対応する遠隔操作プログラムを用いる操作方法に対応する遠隔操作プログラムを識別するためのプログラム識別情報と、を優先順位の高い順に並べた情報である。ステップS15においては、ステップS17において生成された優先順位情報を、外部装置に送信し、処理を終了する。
図13は、優先順位決定処理の流れの一例を示すフローチャートである。優先順位決定処理は、図12のステップS16において実行される処理である。
図13を参照して、CPU111は、操作パネル129が操作中であるか否かを判定する。操作部207で所定の時間以内にユーザによる操作を受け付けたならば操作パネル129が操作中と判断する。操作パネルが操作中と判断するならば、処理をステップS23に進めるが、そうでなければ処理をステップS22に進める。ステップS22においては、第1遠隔操作を受付中か否かを判断する。通信I/F部112が、外部装置から第1の種類のコマンドを所定の時間以内に受信しているならば第1遠隔操作を受付中と判断する。第1遠隔操作を受付中と判断するならば処理をステップS23に進めるが、そうでなければ処理をステップS24に進める。
ステップS23においては、遠隔制御プログラムに対応する遠隔操作プログラムを用いる操作方法の優先順位を、Webサーバープログラムに対応するブラウジングプログラムを用いる操作方法の優先順位よりも高く設定し、処理を遠隔操作方法通知処理に戻す。一方、ステップS24においては、デフォルトの優先順位を設定し、処理を遠隔操作方法通知処理に戻す。デフォルトの優先順位は、遠隔制御プログラムに対応する遠隔操作プログラムを用いる操作方法と、Webサーバープログラムに対応するブラウジングプログラムを用いる操作方法との優先順位を予め定めたものである。
<第1の変形例>
図14は、第1の変形例におけるMFPが備えるCPUの機能の一例を示すブロック図である。図14に示す機能は、図5のブロック図と異なる点は、履歴記憶部81および時間帯別稼働率算出部83が追加された点、優先順位情報生成部67および処理実行部61が優先順位情報生成部67Aおよび処理実行部61Aにそれぞれ変更された点である。以下の説明では、図5に示した機能と異なる点を主に説明する。
履歴記憶部81は、処理実行部61が実行した処理の履歴情報をHDD116に記憶する。履歴情報は、処理実行部61が実行した処理を識別するための処理識別情報と、その処理が実行された日時とを含む。
優先順位情報生成部67Aは、操作方法抽出部63から抽出結果が入力される。抽出結果が基幹制御部55のプログラム識別情報のみを含む場合の優先順位情報生成部67Aの動作は、優先順位情報生成部67の動作と同じなのでここでは説明を繰り返さない。優先順位情報生成部67Aは、携帯情報装置200から処理要求を受信すると、算出指示を時間帯別稼働率算出部83に出力する。
時間帯別稼働率算出部83は、優先順位情報生成部67Aから算出指示が入力されると、履歴記憶部81によってHDD116に記憶された履歴情報を参照して、算出指示が入力された時刻を含む時間帯の稼働率を算出する。稼働率は、所定の時間帯において処理を実行している時間の割合を、複数日で平均した値である。所定の時間帯は、特に限定するものではないが、例えば、10分とすることができる。例えば、ある時間帯において、過去5日間の稼働率の平均とすればよい。時間帯別稼働率算出部83は、算出した稼働率を優先順位情報生成部67Aに出力する。
優先順位情報生成部67Aは、時間帯別稼働率算出部83から入力される稼働率が所定の値以上の場合は、第2遠隔制御部57を優先させるために、第1遠隔制御部73が受け付け可能な第1の種類のコマンドよりも第2遠隔制御部57が受け付け可能な第2の種類のコマンドの優先順位を高く設定した優先順位情報を生成する。
稼働率が高い場合は、他人がMFP100を使用する確率が高いので、他人と同時にMFP100を操作可能とするためである。
図15は、第1の変形例における優先順位決定処理の流れの一例を示すフローチャートである。第1の変形例における優先順位決定処理は、図12のステップS16で実行される処理である。
図15を参照して、MFP100が備えるCPU111は、現在時刻を含む時間帯の稼働率を算出する(ステップS31)。HDD116に記憶された履歴情報を参照して、複数日における時間帯の稼働率の平均を、算出する。次のステップS32においては、ステップS31で算出された稼働率が所定値以上であるか否かを判定する。稼働率が所定値以上ならば処理をステップS33に進めるが、そうでなければ処理をステップS34に進める。
ステップS33においては、遠隔制御プログラムに対応する遠隔操作プログラムを用いる操作方法の優先順位を、Webサーバープログラムに対応するブラウジングプログラムを用いる操作方法の優先順位よりも高く設定し、処理を遠隔操作方法通知処理に戻す。一方、ステップS34においては、デフォルトの優先順位を設定し、処理を遠隔操作方法通知処理に戻す。デフォルトの優先順位は、遠隔制御プログラムに対応する遠隔操作プログラムを用いる操作方法と、Webサーバープログラムに対応するブラウジングプログラムを用いる操作方法との優先順位を予め定めたものである。
<第2の変形例>
図16は、第2の変形例におけるMFPが備えるCPUの機能の一例示すブロック図である。図16に示す機能が、図5に示した機能と異なる点は、外部装置検出部85が追加された点、優先順位情報生成部67が優先順位情報生成部67Bに変更された点である。その他の機能は、図5に示した機能と同じなので、ここでは説明は繰り返さない。
外部装置検出部85は、MFP100から所定の距離の範囲内に存在する外部装置を検出する。携帯情報装置200,200A,200Bそれぞれは、GPS(Global Positioning System)受信機を備えており、GPS衛星から受信した信号に基づいて、自装置の位置を検出する。携帯情報装置200,200A,200Bそれぞれは、MFP100から位置情報の送信を要求する要求信号を受信すると、検出された自装置の位置を含む位置情報を返信する。位置情報は、例えば、緯度および経度を含む。
外部装置検出部85は、携帯位置情報取得部87を含む。携帯位置情報取得部87は、通信I/F部112を介して、ブロードキャストで位置情報の送信を要求する要求信号を送信し、携帯情報装置200,200A,100Bから返信される位置情報を取得する。
外部装置検出部85は、携帯位置情報取得部87により取得された携帯情報装置200,200A,100Bそれぞれの位置情報と、MFP100の位置とから携帯情報装置200,200A,100Bそれぞれと、MFP100との間の距離を算出する。外部装置検出部85は、携帯情報装置200,200A,100Bのうちに、MFP100との間の距離が所定の距離以下である装置が存在すれば、その装置をMFP100から所定の距離の範囲内に存在する外部装置として検出する。外部装置検出部85は、検出した装置を識別するための装置識別情報を、優先順位情報生成部67Bに出力する。
なお、外部装置検出部85は、赤外線通信、またはBluetoot(登録商標)等の近距離無線通信装置を用いて、MFP100から所定の距離の範囲内に存在する外部装置を検出するようにしてもよい。この場合は、携帯情報装置200,200A,100BのうちMFP100が近距離無線通信装置で通信可能な装置を、MFP100から所定の距離の範囲内に存在する外部装置として検出する。
優先順位情報生成部67Bは、操作方法抽出部63から抽出結果が入力される。また、優先順位情報生成部67Bは、外部装置検出部85から装置識別情報が入力される場合がある。抽出結果が基幹制御部55のプログラム識別情報のみを含む場合の優先順位情報生成部67Bの動作は、優先順位情報生成部67の動作と同じなのでここでは説明を繰り返さない。
優先順位情報生成部67Bは、処理要求を受信した時点において、外部装置検出部85から装置識別情報が入力される場合、処理要求を送信してきた外部装置と、外部装置検出部85から入力される装置識別情報で特定される外部装置との異同に基づいて、第1の種類のコマンドと第2の種類のコマンドとに優先順位を付与する。
具体的には、優先順位情報生成部67Bは、処理要求を送信してきた外部装置の装置識別情報と、外部装置検出部85から入力される装置識別情報とを比較する。優先順位情報生成部67Bは、処理要求を送信してきた外部装置の装置識別情報と、外部装置検出部85から入力される装置識別情報とが異なる場合、第2の種類のコマンドよりも第1の種類のコマンドの優先順位を高く設定し、ブラウジングプログラムのプログラム識別情報の次に、遠隔操作プログラムのプログラム識別情報を並べた優先順位情報を生成する。優先順位情報生成部67は、生成された優先順位情報を通知部69に出力する。
例えば、ユーザーが携帯情報装置200を操作して、処理要求をMFP100に送信させた場合、携帯情報装置200AがMFP100から所定の範囲に存在する場合は、携帯情報装置200Aを操作するユーザーがMFP100を操作する確率が高い。この場合には、携帯情報装置200に遠隔操作プログラムを実行させることによってMFP100を遠隔操作すれば、携帯情報装置200を操作するユーザは、携帯情報装置200Aを操作擦るユーザーとともに、MFP100を操作することができる。
また、優先順位情報生成部67Bは、処理要求を送信してきた外部装置の装置識別情報と、外部装置検出部85から入力される装置識別情報とが同じ場合、第1の種類のコマンドよりも第2の種類のコマンドの優先順位を高く設定し、遠隔操作プログラムのプログラム識別情報の次に、ブラウジングプログラムのプログラム識別情報を並べた優先順位情報を生成する。
例えば、ユーザーが携帯情報装置200を操作して、処理要求をMFP100に送信させた場合であって、携帯情報装置200がMFP100から所定の範囲に存在する場合は、MFP100を操作するユーザーとしては、携帯情報装置200を操作するユーザーに限られる確率が高い。この場合には、携帯情報装置200にブラウジングプログラムを実行させることによってMFP100を遠隔操作すれば、携帯情報装置200を操作するユーザーは、MFP100が実行可能なすべての処理のうちから選択して、MFP100に処理を実行させることができる。
優先順位情報生成部67Bは、処理要求を受信した時点において、外部装置検出部85から装置識別情報が入力されない場合、第1の種類のコマンドよりも第2の種類のコマンドの優先順位を高く設定し、遠隔操作プログラムのプログラム識別情報の次に、ブラウジングプログラムのプログラム識別情報を並べた優先順位情報を生成する。
図17は、第2の変形例における優先順位決定処理の流れの一例を示すフローチャートである。第2の変形例における優先順位決定処理は、図12のステップS16で実行される処理である。
図17を参照して、MFP100が備えるCPU111は、所定の距離の範囲内に外部装置が存在するか否かを判断する(ステップS41)。携帯情報装置200,200A,200Bのいずれかから位置情報を取得し、MFP100との間の距離が所定の値以下の装置が存在するか否かを判断する。所定の距離の範囲内に外部装置が存在するならば処理をステップS42に進めるが、そうでなければ処理をステップS43に進める。
ステップS42においては、所定の範囲内に存在する外部装置と、処理要求を送信してきた外部装置とが同一か否かを判断する。所定の範囲内に存在する外部装置と、処理要求を送信してきた外部装置とが同一ならば処理をステップS43に進めるが、同一でなければ処理をステップS44に進める。
ステップS44においては、遠隔操作プログラムの優先順位を、ブラウジングプログラムより高く設定した優先順位情報を生成し、処理を遠隔操作方法通知処理に戻す。
ステップS43においては、ブラウジングプログラムの優先順位を、遠隔操作プログラムより高く設定した優先順位情報を生成し、処理を遠隔操作方法通知処理に戻す。
<第3の変形例>
図18は、第3の変形例におけるMFPが備えるCPUの機能の一例を示すブロック図である。図18に示す機能が図5に示した機能と異なる点は、第1遠隔制御部73、第2遠隔制御部57および優先順位情報生成部67が、第1遠隔制御部73A、第2遠隔制御部57Aおよび、優先順位情報生成部67Cにそれぞれ変更された点である。その他の機能は図5に示した機能と同じなのでここでは説明を繰り返さない。
第1遠隔制御部73Aは、第1遠隔制御部73と同様の機能を有するのに加えて、第1遠隔履歴記憶部75を含む。第1遠隔履歴記憶部75は、第1遠隔制御部73Aが第1の種類の遠隔操作に従って処理実行部61に処理を実行させることに応じて、第1の種類の遠隔操作と、その第1の種類の遠隔操作を送信してきた外部装置の装置識別情報と、処理を実行した日時とを含む第1の履歴情報をHDD116に記憶する。
第2遠隔制御部57Aは、第2遠隔制御部57と同様の機能を有するのに加えて、第2遠隔履歴記憶部59を含む。第2遠隔履歴記憶部59は、第2遠隔制御部57Aが第2の種類の遠隔操作に従って処理実行部61に処理を実行させることに応じて、第2の種類の遠隔操作と、その第1の種類の遠隔操作を送信してきた外部装置の装置識別情報と、処理を実行した日時とを含む第2の履歴情報をHDD116に記憶する。
優先順位情報生成部67Cは、操作方法抽出部63から抽出結果が入力される。抽出結果が基幹制御部55のプログラム識別情報のみを含む場合の優先順位情報生成部67Bの動作は、優先順位情報生成部67の動作と同じなのでここでは説明を繰り返さない。
優先順位付与部67Cは、HDD116に記憶された第1の履歴情報および第2の履歴情報に基づいて、第1の種類のコマンドと第2の種類のコマンドとに優先順位を付与する。具体的には、優先順位付与部67Cは、例えば携帯情報装置200から処理要求が受信される場合、携帯情報装置200の装置識別情報を含む第1の履歴情報および第2の履歴情報を抽出する。優先順位付与部67Cは、携帯情報装置200の装置識別情報を含む第1の履歴情報が抽出されるが、第2の履歴情報が抽出されない場合、第2の種類のコマンドよりも第1の種類のコマンドの優先順位を高く設定し、ブラウジングプログラムのプログラム識別情報の次に、遠隔操作プログラムのプログラム識別情報を並べた優先順位情報を生成する。
優先順位付与部67Cは、携帯情報装置200の装置識別情報を含む第2の履歴情報が抽出されるが、第1の履歴情報が抽出されない場合、第1の種類のコマンドよりも第2の種類のコマンドの優先順位を高く設定し、遠隔操作プログラムのプログラム識別情報の次に、ブラウジングプログラムのプログラム識別情報を並べた優先順位情報を生成する。
優先順位付与部67Cは、携帯情報装置200の装置識別情報を含む第1の履歴情報と第2の履歴情報とが抽出される場合、第1の履歴情報と第2の履歴情報のうち、処理を実行した日時が後のものを選択する。優先順位付与部67Cは、第1の履歴情報を選択する場合、第2の種類のコマンドよりも第1の種類のコマンドの優先順位を高く設定し、ブラウジングプログラムのプログラム識別情報の次に、遠隔操作プログラムのプログラム識別情報を並べた優先順位情報を生成する。優先順位付与部67Cは、第2の履歴情報を選択する場合、第1の種類のコマンドよりも第2の種類のコマンドの優先順位を高く設定し、遠隔操作プログラムのプログラム識別情報の次に、ブラウジングプログラムのプログラム識別情報を並べた優先順位情報を生成する。
優先順位付与部67Cは、携帯情報装置200の装置識別情報を含む第1の履歴情報と第2の履歴情報とのいずれも抽出されない場合、デフォルトの優先順位を設定した優先順位情報を生成する。
図19は、第3の変形例における優先順位決定処理の流れの一例を示すフローチャートである。第3の変形例における優先順位決定処理は、図12のステップS16において実行される処理である。
図19を参照して、MFP100が備えるCPU111は、処理要求を送信した外部装置を特定する(ステップS51)。次のステップS52においては、特定された外部装置に対応する履歴情報が存在するか否かを判断する。処理要求を送信した外部装置の装置識別情報を含む第1の履歴情報および第2の履歴情報の少なくとも1つがHDD116に記憶されているならば処理をステップS53に進めるが、そうでなければ処理をステップS61に進める。ステップS61においては、第2の種類のコマンドと第1の種類のコマンドとにデフォルトで定められた優先順位を設定し、処理を遠隔操作方法選択に戻す。
ステップS53においては、処理要求を送信した外部装置の装置識別情報を含む履歴情報が、第1の履歴情報のみか否かを判断する。第1の履歴情報のみならば処理をステップS54に進めるが、そうでなければ処理をステップS55に進める。ステップS54においては、ブラウジングプログラムの優先順位を高く設定し、処理を遠隔操作方法選択に戻す。具体的には、第2の種類のコマンドよりも第1の種類のコマンドの優先順位を高く設定する。
ステップS55においては、処理要求を送信した外部装置の装置識別情報を含む履歴情報が、第2の履歴情報のみか否かを判断する。第2の履歴情報のみならば処理をステップS56に進めるが、そうでなければ処理をステップS57に進める。ステップS56においては、遠隔操作プログラムの優先順位を高く設定し、処理を遠隔操作方法選択に戻す。具体的には、第1の種類のコマンドよりも第2の種類のコマンドの優先順位を高く設定する。
処理がステップS57に進む場合、ステップS52において、外部の装置識別情報を含む第1の履歴情報と第2の履歴情報とがHDD116に記憶されている場合である。ステップS57においては、第1の履歴情報と第2の履歴情報との実行日時を比較する。ステップS58においては、比較の結果、第1の履歴情報と第2の履歴情報のうち実行日時が最も後の履歴情報が第1の履歴情報ならば処理をステップS59に進め、第2の履歴情報ならば処理をステップS60に進める。ステップS59においては、ブラウジングプログラムの優先順位を高く設定し、処理を遠隔操作方法選択に戻す。具体的には、第2の種類のコマンドよりも第1の種類のコマンドの優先順位を高く設定する。ステップS60においては、遠隔操作プログラムの優先順位を高く設定し、処理を遠隔操作方法選択に戻す。具体的には、第1の種類のコマンドよりも第2の種類のコマンドの優先順位を高く設定する。
なお、第3の変形例においては、第1の履歴情報および第2の履歴情報に、外部装置の装置識別情報を含めるようにしたが、装置識別情報に代えて外部装置を操作するユーザーのユーザー識別情報を含めるようにしてもよい。この場合には、外部装置からそれを操作するユーザーのユーザー識別情報を受信することになる。この場合には、ユーザーが異なる外部装置を使用してMFP100を遠隔操作する場合に対応することができる。
以上説明したように、本実施形態におけるMFP100は、外部装置である携帯情報装置200から遠隔操作の対象となる処理の処理識別情報を含む処理要求を受信すると、優先順位情報を携帯情報装置200に送信する。優先順位情報は、第1の遠隔操作である第1の種類のコマンドに対応するブラウジングプログラムを識別するためのプログラム識別情報と、第2の遠隔操作である第2の種類のコマンドに対応する遠隔操作プログラムを識別するためのプログラム識別情報と、を優先順位の高い順に並べた情報である。このため、MFP100側で、携帯情報装置200を操作するユーザーが遠隔操作を希望する処理を実行するために、ブラウジングプログラムと遠隔操作プログラムのうち適切なものを決定することができる。従って、携帯情報装置200を操作するユーザーにブラウジングプログラムと遠隔操作プログラムのうちから適切な一方を選択して起動するための情報を提供することができる。
また、MFP100は、操作受付部51によって操作が受け付けられている間、または、第1遠隔制御部73により、処理要求を送信した携帯情報装置200とは別の携帯情報装置200Aまたは200Bから第1の種類のコマンド(第1の種類の遠隔操作)を受信している間は、遠隔操作プログラムのプログラム識別情報をブラウジングプログラムのプログラム識別情報よりも優先順位を高く設定した優先順位情報を送信する。第1の種類の遠隔コマンドを受信できない場合には、第2の種類の遠隔コマンドの優先順位を高く設定した優先順位情報が携帯情報装置200のユーザーに通知される。このため、携帯情報装置200のユーザーは、優先順位の高い遠隔操作プログラムを選択して起動することによって、MFP100を直ちに遠隔操作することができる。
また、MFP100は、携帯情報装置200から処理要求が受信された時点が属する時間帯の稼働率が所定の値以上の場合は、遠隔操作プログラムのプログラム識別情報をブラウジングプログラムのプログラム識別情報よりも優先順位を高く設定した優先順位情報を送信する。稼働率の高い時間帯は、他のユーザーがMFP100を使用する確率が高い。このため、携帯情報装置200のユーザーは、優先順位の高い遠隔操作プログラムを選択して起動することによって、MFP100を直ちに遠隔操作することができる。また、他のユーザーが、MFP100を操作パネル129を用いて操作することができる。
また、MFP100は、携帯情報装置200から処理要求が受信された時点において、MFP100から所定の距離の範囲内に別の携帯情報装置200Aまたは200Bが存在する場合、遠隔操作プログラムのプログラム識別情報をブラウジングプログラムのプログラム識別情報よりも優先順位を高く設定した優先順位情報を送信する。MFP100から所定の距離の範囲内に別の携帯情報装置200Aまたは200Bが存在する場合は、携帯情報装置200Aまたは200BのユーザーがMFP100を操作する確率が高い。このため、携帯情報装置200のユーザーは、優先順位の高い遠隔操作プログラムを選択して起動することによって、MFP100を直ちに遠隔操作することができる。また、携帯情報装置200Aまたは200Bのユーザーが、MFP100を操作パネル129を用いて操作することができる。
また、MFP100は、携帯情報装置200から処理要求が受信された時点において、MFP100から所定の距離の範囲内に携帯情報装置200が存在する場合、ブラウジングプログラムのプログラム識別情報を遠隔操作プログラムのプログラム識別情報よりも優先順位を高く設定した優先順位情報を送信する。MFP100から所定の距離の範囲内に携帯情報装置200が存在する場合は、携帯情報装置200Aまたは200BのユーザーがMFP100を操作する確率が低い。このため、携帯情報装置200のユーザーは、優先順位の高いブラウジングプログラムを選択して起動することによって、MFP100を直ちに遠隔操作することができる。また、ブラウジングプログラムを起動してMFP100を遠隔操作することのできる処理の種類は、遠隔操作プログラムを起動してMFP100を遠隔操作することのできる処理の種類よりも数が多いので、MFP100が実行可能な処理のすべてのうちから選択して処理を実行させることができる。
また、MFP100は、第1の種類のコマンドに従って処理を実行することに応じて第1の履歴情報をHDD116に記憶し、第2の種類のコマンドに従って処理を実行することに応じて第2の履歴情報をHDD116に記憶する。そして、携帯情報装置200から処理要求が受信された時点において、携帯情報装置200の装置識別情報を含む履歴情報のうち最も新しいものが第1の履歴情報ならば、ブラウジングプログラムのプログラム識別情報を遠隔操作プログラムのプログラム識別情報よりも優先順位を高く設定した優先順位情報を送信し、第2の履歴情報ならば遠隔操作プログラムのプログラム識別情報をブラウジングプログラムのプログラム識別情報よりも優先順位を高く設定した優先順位情報を送信する。携帯情報装置200のユーザーが最後に使用したものの優先順位を高く設定した優先順位情報が携帯情報装置200のユーザーに通知される。携帯情報装置200のユーザーが直前にMFP100に実行させた処理と、同じ処理を実行させる確率が高い。このため、携帯情報装置200のユーザーは、ブラウジングプログラムと遠隔操作プログラムのうちから使いなれた一方で、MFP100を遠隔操作することができる。
以上の説明では、基幹制御部55をCPU111がWebサーバープログラムを実行するタスクとし、第2遠隔制御部57をCPU111が遠隔制御プログラムを実行するタスクとしたが、基幹制御部55はCPU111が遠隔制御プログラムを実行するタスクとし、第2遠隔制御部57をCPU111がWebサーバープログラムを実行するタスクとしてもよい。いずれにしても、期間制御部55および第2遠隔制御部57は、サーバークライアントシステムにおけるサーバーであって、期間制御部55は単一のクライアントとしか対応することができないが、第2遠隔制御部57は複数のクライアントと対応することが可能である点で異なる。
また、以上の説明では、第2遠隔操作部259が実行可能な処理を示すメニューとして、図10を例示したが、これに限定されるものではない。例えば、HDD116の記憶領域であるBOX内のデータの操作に特化したアプリケーションプログラム、宛先登録・編集に特化したアプリケーションプログラム、なども第2遠隔制御部259とすることができる。複数の第2遠隔操作部259が存在した場合、それぞれの第2遠隔操作部259を複数のユーザーが同時に実行できるので、複数の第2遠隔操作部259の間での優先順位は同位である。
なお、上した実施の形態においては、画像処理システム1について説明したが、図11〜図13、図15、図17、図19に示した処理をMFP100に実行させる遠隔操作方法通知方法、また、その遠隔操作方法通知方法をMFP100が備えるCPU111に実行させる遠隔操作方法通知プログラムとして発明を捉えることができるのは言うまでもない。
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。