JP5500128B2 - アプリ連携システムおよびアプリ連携方法 - Google Patents

アプリ連携システムおよびアプリ連携方法 Download PDF

Info

Publication number
JP5500128B2
JP5500128B2 JP2011155445A JP2011155445A JP5500128B2 JP 5500128 B2 JP5500128 B2 JP 5500128B2 JP 2011155445 A JP2011155445 A JP 2011155445A JP 2011155445 A JP2011155445 A JP 2011155445A JP 5500128 B2 JP5500128 B2 JP 5500128B2
Authority
JP
Japan
Prior art keywords
screen
internal
server
unit
image data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2011155445A
Other languages
English (en)
Other versions
JP2013021630A (ja
Inventor
亮二 板東
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Konica Minolta Inc
Original Assignee
Konica Minolta Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Konica Minolta Inc filed Critical Konica Minolta Inc
Priority to JP2011155445A priority Critical patent/JP5500128B2/ja
Priority to US13/541,201 priority patent/US9578198B2/en
Priority to CN201210239444.1A priority patent/CN102883089B/zh
Publication of JP2013021630A publication Critical patent/JP2013021630A/ja
Application granted granted Critical
Publication of JP5500128B2 publication Critical patent/JP5500128B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00962Input arrangements for operating instructions or parameters, e.g. updating internal software
    • H04N1/00973Input arrangements for operating instructions or parameters, e.g. updating internal software from a remote device, e.g. receiving via the internet instructions input to a computer terminal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/14Tree-structured documents
    • G06F40/143Markup, e.g. Standard Generalized Markup Language [SGML] or Document Type Definition [DTD]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00127Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture
    • H04N1/00204Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server
    • H04N1/00244Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server with a server, e.g. an internet server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/0035User-machine interface; Control console
    • H04N1/00405Output means
    • H04N1/00408Display of information to the user, e.g. menus
    • H04N1/00411Display of information to the user, e.g. menus the display also being used for user input, e.g. touch screen
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/0035User-machine interface; Control console
    • H04N1/00405Output means
    • H04N1/00408Display of information to the user, e.g. menus
    • H04N1/0044Display of information to the user, e.g. menus for image preview or review, e.g. to help the user position a sheet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/0035User-machine interface; Control console
    • H04N1/00405Output means
    • H04N1/00408Display of information to the user, e.g. menus
    • H04N1/00464Display of information to the user, e.g. menus using browsers, i.e. interfaces based on mark-up languages
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/0035User-machine interface; Control console
    • H04N1/00405Output means
    • H04N1/00474Output means outputting a plurality of functional options, e.g. scan, copy or print
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/0035User-machine interface; Control console
    • H04N1/00405Output means
    • H04N1/00482Output means outputting a plurality of job set-up options, e.g. number of copies, paper size or resolution
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/0008Connection or combination of a still picture apparatus with another apparatus
    • H04N2201/0034Details of the connection, e.g. connector, interface
    • H04N2201/0037Topological details of the connection
    • H04N2201/0039Connection via a network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/0077Types of the still picture apparatus
    • H04N2201/0094Multifunctional device, i.e. a device capable of all of reading, reproducing, copying, facsimile transception, file transception

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Facsimiles In General (AREA)

Description

この発明は、アプリ連携システムおよびアプリ連携方法に関し、特に、サーバーと、そのサーバーと連携して処理を実行するアプリケーションプログラムがインストールされる画像処理装置とを含むアプリ連携システムおよびそのアプリ連携システムにより実行されるアプリ連携方法に関する。
複合機(以下「MFP」という)で実行できない処理を、サーバーが提供するサービス、例えば、SaaS(Software as a Service)を使用することにより実行することができる。この場合、通常は、サーバーがWebサーバーとして機能し、MFPがクライアントとして機能するサーバクライアントシステムが用いられ、Webサーバーで処理を実行した後のデータがMFPで受信され、出力される(例えば、特許文献1〜3)。
しかしながら、従来のサーバクライアントシステムにおいては、ユーザーがMFPを操作するためにMFPに表示される操作画面は、サーバーによって生成され、サーバーから受信された操作画面である。このため、サーバーから受信された操作画面からMFP側でスキャンしたデータに対して、MFP側で画像処理を実行させる指示をすることができない。MFP側でスキャンしたデータに対して、MFP側で画像処理を実行させるためには、MFPに予め準備された操作画面を表示させなければならず、サーバーから受信された操作画面と、MFPに準備された操作画面とを、切り替えなければならないといった問題があった。
また、特開2005−167988号公報には、インターネットに接続されたMFPと所定の処理サービスを提供する1つまたは複数のサービスプロバイダからなる画像処理システムにおいて、MFPのコントローラが複数のサービスプロバイダから提供可能な処理機能情報を取得し、該取得される処理機能情報に基づく第1の処理機能とMFPで実行可能な第2の処理機能とをMFPの操作部に択一的に表示させる画像処理システムが記載されている。しかしながら、従来の画像処理システムは、複数のサービスプロバイダが提供可能な処理機能情報に基づく第1の処理機能とMFPで実行可能な第2の処理機能とのいずれか一方を実行することができるが、1つの操作画面で、サービスプロバイダが提供可能な処理機能情報に基づく第1の処理機能とMFPで実行可能な第2の処理機能との双方を実行させることはできない。
特開2006−237705号公報 特開2007−060556号公報 特開2008−086028号公報 特開2005−167988号公報
この発明は上述した問題点を解決するためになされたもので、この発明の目的の一つは、自装置と外部サーバーとのいずれで処理されるかをユーザーに意識させることなく処理を実行することが可能なアプリ連携システムを提供することである。
この発明の他の目的は、自装置と外部サーバーとのいずれで処理されるかをユーザーに意識させることなく処理を実行することが可能なアプリ連携方法を提供することである。
上述した目的を達成するためにこの発明のある局面によれば、アプリ連携システムは、原稿を読み取って画像データを出力する原稿読取手段と、マークアップ言語で記述されたページを記憶する記憶手段と、マークアップ言語で記述されたページを要求し、要求に応じて受信されるページを表示するブラウジング手段と、ブラウジング手段からの要求に応じて記憶手段に記憶されたページを出力する内部サーバー手段と、ブラウジング手段、内部サーバー手段および外部サーバーとを連携させる連携制御手段と、を備え、連携制御手段は、ブラウジング手段を起動して、外部サーバーに記憶されたスキャン指示画面を含むページを表示させる指示画面表示制御手段と、表示されたスキャン指示画面に基づいてユーザーにより入力されるスキャン指示を受け付けることに応じて、原稿読取手段を制御して、原稿読取手段が出力する画像データを記憶手段に記憶するスキャン制御手段と、ユーザーの指示を受け付ける領域と、ユーザーの指示を受け付ける領域に割り当てられ、外部サーバーに所定の処理を実行させるためのサーバー制御コマンドと、を含む外部画面を外部サーバーから受信し、記憶手段に記憶する外部画面受信手段と、ユーザーの指示を受け付ける領域と、ユーザーの指示を受け付ける領域に割り当てられ、内部サーバー手段に所定の処理を実行させるための内部制御コマンドと、記憶された画像データを表示する領域と、を含む内部画面を生成する内部画面生成手段と、内部画面と記憶された外部画面とを合成した統合画面を生成し、生成された統合画面を内部サーバー手段に出力する統合画面生成手段と、内部サーバー手段から統合画面のネットワークアドレスを取得し、外部サーバーに送信する位置情報通知手段と、を含み、外部サーバーは、ブラウジング手段にスキャン指示画面を送信した後、ブラウジング手段から次画面の送信を要求する送信リクエストを受信することに応じて、統合画面のネットワークアドレスを含むリダイレクト情報をブラウジング手段に返信する。
この局面に従えば、外部サーバーは、ブラウジング手段から次画面の送信を要求する送信リクエストを受信することに応じて、統合画面のネットワークアドレスを含むリダイレクト情報をブラウジング手段に返信するので、ブラウジング手段は内部サーバー手段に統合画面の送信リクエストを送信する。その結果、内部サーバー手段から統合画面がブラウジング手段に出力され、ブラウジング手段により統合画面が表示される。統合画面は、内部画面と外部画面を含み、内部画面は、内部サーバー手段に所定の処理を実行させるための内部制御コマンドを含み、外部画面は所定の処理を外部サーバーに実行させるためのサーバー制御コマンドを含むので、ユーザーは、統合画面から内部サーバー手段と外部サーバーとのいずれかに処理の実行を指示することができる。したがって、ユーザーは、自装置と外部サーバーとのいずれで処理が実行されるかを意識する必要がない。その結果、自装置と外部サーバーとのいずれで処理されるかをユーザーに意識させることなく処理を実行することが可能なアプリ連携システムを提供することができる。
この発明の他の局面によれば、アプリ連携システムは、原稿を読み取って画像データを出力する原稿読取手段と、マークアップ言語で記述されたページを記憶する記憶手段と、マークアップ言語で記述されたページを要求し、要求に応じて受信されるページを表示するブラウジング手段と、ブラウジング手段からの要求に応じて記憶手段に記憶されたページを出力する内部サーバー手段と、ブラウジング手段、内部サーバー手段および外部サーバーとの連携させる連携制御手段と、を備え、連携制御手段は、ブラウジング手段を起動して、外部サーバーに記憶されたスキャン指示画面を含むページを表示させる指示画面表示制御手段と、表示されたスキャン指示画面に基づいてユーザーにより入力されるスキャン指示を受け付けることに応じて、原稿読取手段を制御して、原稿読取手段が出力する画像データを記憶手段に記憶するスキャン制御手段と、ユーザーの指示を受け付ける領域と、ユーザーの指示を受け付ける領域に割り当てられ、内部サーバー手段に所定の処理を実行させるための内部制御コマンドと、記憶された画像データを表示する領域と、を含む内部画面を生成し、生成された内部画面を内部サーバー手段に出力するする内部画面生成手段と、内部サーバー手段から内部画面のネットワークアドレスを取得し、内部画面のネットワークアドレスを外部サーバーに送信する位置情報通知手段と、を含み、外部サーバーは、内部画面のネットワークアドレスを受信することに応じて、ユーザーの指示を受け付ける領域と、ユーザーの指示を受け付ける領域に割り当てられ、外部サーバーに所定の処理を実行させるためのサーバー制御コマンドと、受信されたネットワークアドレスで特定される内部画面を表示する部分表示領域と、を含む統合画面であって、部分表示領域に内部画面を表示するために、受信されたネットワークアドレスを含む送信リクエストを送信するコマンドを記述した統合画面を生成する統合画面生成手段を含み、ブラウジング手段にスキャン指示画面を送信した後、ブラウジング手段から次画面の送信を要求する送信リクエストを受信することに応じて、統合画面を返信する。
この局面に従えば、外部サーバーは、ブラウジング手段から次画面の送信を要求する送信リクエストを受信することに応じて、統合画面をブラウジング手段に返信するので、ブラウジング手段は統合画面を表示する。統合画面は、部分表示領域に内部画面を表示するために、内部画面のネットワークアドレスを含む送信リクエストを送信するコマンドが記述されているので、ブラウジング手段は、内部サーバー手段に内部画面の送信リクエストを送信し、内部サーバー手段から受信される内部画面を部分表示領域に表示する。統合画面は、内部画面と外部画面を含み、内部画面は、内部サーバー手段に所定の処理を実行させるための内部制御コマンドを含み、外部画面は所定の処理を外部サーバーに実行させるためのサーバー制御コマンドを含むので、ユーザーは、統合画面から内部サーバー手段と外部サーバーとのいずれかに処理の実行を指示することができる。したがって、ユーザーは、自装置と外部サーバーとのいずれで処理が実行されるかを意識する必要がない。その結果、自装置と外部サーバーとのいずれで処理されるかをユーザーに意識させることなく処理を実行することが可能なアプリ連携システムを提供することができる。
好ましくは、連携制御手段は、記憶された画像データの位置を示すネットワークアドレスを外部サーバーに送信する位置情報通知手段をさらに含み、外部サーバーは、ブラウジング手段からサーバー制御コマンドが受信されることに応じて、位置情報通知手段から受信される画像データのネットワークアドレスで特定される画像データを取得し、画像データに受信されたサーバー制御コマンドで特定される画像処理を実行し、画像処理後の画像データで、画像データを更新する外部更新手段と、外部更新手段により記憶された画像データが更新された後に、ブラウジング手段に更新リクエストを出力する更新リクエスト出力手段と、さらに備える。
好ましくは、内部サーバー手段にブラウジング手段から内部制御コマンドが入力されることに応じて、内部画面で特定される画像データに受信された内部制御コマンドで特定される画像処理を実行し、画像処理された画像データで、画像データを更新する内部更新手段と、内部更新手段により記憶された画像データが更新された後に、更新後の画像データを含む統合画面をブラウジング手段に返信する。
好ましくは、連携制御手段は、画像データを縮小したプレビュー画像を生成し、記憶された画像データを生成されたプレビュー画像で更新するプレビュー画像生成手段を、さらに備える。
この局面に従えば、画像データを縮小したプレビュー画像で画像データが更新されるので、外部サーバーが画像データを処理する際に、外部サーバーとの間で送受信されるデータ量を少なくすることできる。その結果、ネットワークの負荷を低減させることができる。
好ましくは、内部画面生成手段は、外部サーバーから内部画面のスタイルを定める画面情報を受信し、受信された画面情報にしたがって内部画面を生成する。
この発明の他の局面によれば、アプリ連携方法は、画像処理装置と外部サーバーとを含むアプリ連携システムで実行されるアプリ連携方法であって、画像処理装置は、原稿を読み取って画像データを出力する原稿読取手段と、マークアップ言語で記述されたページを記憶する記憶手段と、マークアップ言語で記述されたページを要求し、要求に応じて受信されるページを表示するブラウジング手段と、ブラウジング手段からの要求に応じて記憶手段に記憶されたページを出力する内部サーバー手段と、を備え、ブラウジング手段を起動して、外部サーバーに記憶されたスキャン指示画面を含むページを表示させるステップと、表示されたスキャン指示画面に基づいてユーザーにより入力されるスキャン指示を受け付けることに応じて、原稿読取手段を制御して、原稿読取手段が出力する画像データを記憶手段に記憶するステップと、ユーザーの指示を受け付ける領域と、ユーザーの指示を受け付ける領域に割り当てられ、外部サーバーに所定の処理を実行させるためのサーバー制御コマンドと、を含む外部画面を外部サーバーから受信し、記憶手段に記憶するステップと、ユーザーの指示を受け付ける領域と、ユーザーの指示を受け付ける領域に割り当てられ、内部サーバー手段に所定の処理を実行させるための内部制御コマンドと、記憶された画像データを表示する領域と、を含む内部画面を生成するステップと、内部画面と記憶された外部画面とを合成した統合画面を生成し、生成された統合画面を内部サーバー手段に出力するステップと、内部サーバー手段から統合画面のネットワークアドレスを取得し、外部サーバーに送信するステップと、を画像処理装置に実行させ、ブラウジング手段にスキャン指示画面を送信した後、ブラウジング手段から次画面の送信を要求する送信リクエストを受信することに応じて、統合画面のネットワークアドレスを含むリダイレクト情報をブラウジング手段に返信するステップを外部サーバーに実行させる。
この局面に従えば、自装置と外部サーバーとのいずれで処理されるかをユーザーに意識させることなく処理を実行することが可能なアプリ連携方法を提供することができる。
この発明のさらに他の局面によれば、アプリ連携方法は、画像処理装置と外部サーバーとを含むアプリ連携システムで実行されるアプリ連携方法であって、画像処理装置は、原稿を読み取って画像データを出力する原稿読取手段と、マークアップ言語で記述されたページを記憶する記憶手段と、マークアップ言語で記述されたページを要求し、要求に応じて受信されるページを表示するブラウジング手段と、ブラウジング手段からの要求に応じて記憶手段に記憶されたページを出力する内部サーバー手段と、を備え、ブラウジング手段を起動して、外部サーバーに記憶されたスキャン指示画面を含むページを表示させるステップと、表示されたスキャン指示画面に基づいてユーザーにより入力されるスキャン指示を受け付けることに応じて、原稿読取手段を制御して、原稿読取手段が出力する画像データを記憶手段に記憶するステップと、ユーザーの指示を受け付ける領域と、ユーザーの指示を受け付ける領域に割り当てられ、内部サーバー手段に所定の処理を実行させるための内部制御コマンドと、記憶された画像データを表示する領域と、を含む内部画面を生成するステップと、生成された内部画面を内部サーバー手段に出力するステップと、内部サーバー手段から内部画面のネットワークアドレスを取得し、内部画面のネットワークアドレスを外部サーバーに送信するステップと、を画像処理装置に実行させ、内部画面のネットワークアドレスを受信することに応じて、ユーザーの指示を受け付ける領域と、ユーザーの指示を受け付ける領域に割り当てられ、外部サーバーに所定の処理を実行させるためのサーバー制御コマンドと、受信されたネットワークアドレスで特定される内部画面を表示する部分表示領域と、を含む統合画面であって、部分表示領域に内部画面を表示するために、受信されたネットワークアドレスを含む送信リクエストを送信するコマンドを記述した統合画面を生成するステップと、ブラウジング手段にスキャン指示画面を送信した後、ブラウジング手段から次画面の送信を要求する送信リクエストを受信することに応じて、統合画面を返信するステップと、を外部サーバーに実行させる。
この局面に従えば、自装置と外部サーバーとのいずれで処理されるかをユーザーに意識させることなく処理を実行することが可能なアプリ連携方法を提供することができる。
本発明の実施の形態におけるアプリ連携システムの全体概要を示す図である。 MFPの外観を示す斜視図である。 MFPのハードウエア構成の一例を示すブロック図である。 外部サーバーのハードウエア構成の一例を示すブロック図である。 MFPが備えるCPUが有する機能の概要の一例を示すブロック図である。 連携制御部の詳細な機能の一例をHDDに記憶されるデータとともに示す図である。 第1の実施の形態における統合画面の一例を示す図である。 内部更新制御部の詳細な機能の一例を示す図である。 外部更新制御部の詳細な機能の一例を示す図である。 第1の実施の形態におけるブラウジング部、内部サーバー部、連携制御部および外部サーバーそれぞれの処理の流れの関係を示す第1のフローチャートである。 第1の実施の形態におけるブラウジング部、内部サーバー部、連携制御部および外部サーバーそれぞれの処理の流れの関係を示す第2のフローチャートである。 第2の実施の形態におけるMFPが備えるCPUの機能の一例を示す図である。 第2の実施の形態における連携制御部の詳細な機能の一例をHDDに記憶されるデータとともに示す図である。 第2の実施の形態における外部サーバーが備えるCPUが有する機能の一例をHDDに記憶されるデータとともに示すブロック図である。 第2の実施の形態における統合画面の一例を示す図である。 第2の実施の形態におけるブラウジング部、内部サーバー部、連携制御部および外部サーバーそれぞれの処理の流れの関係を示す第1のフローチャートである。 第2の実施の形態におけるブラウジング部、内部サーバー部、連携制御部および外部サーバーそれぞれの処理の流れの関係を示す第2のフローチャートである。
以下、本発明の実施の形態について図面を参照して説明する。以下の説明では同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがってそれらについての詳細な説明は繰り返さない。
<第1の実施の形態>
図1は、本発明の実施の形態におけるアプリ連携システムの全体概要を示す図である。図1を参照して、アプリ連携システム1は、それぞれがネットワーク3に接続された複合機(Multi Function Peripheral)(以下、「MFP」という)100,100A〜100Dと、インターネット5に接続された外部サーバー200と、を含む。
ネットワーク3は、ローカルエリアネットワーク(LAN)であり、有線および無線の別を問わない。MFP100,100A〜100Dそれぞれは、ネットワーク3を介して互いに通信可能であり、さらに、インターネット5を介して接続された外部サーバー200と通信可能である。なお、ネットワーク3は、LANに限らず、インターネット、ワイドエリアネットワーク(WAN)または公衆交換電話網等であってもよい。
外部サーバー200は、一般的なコンピュータであり、データ処理サービスを提供する。外部サーバー200が提供するデータ処理サービスは、外部からデータを受信し、受信されたデータに処理を実行して、データ処理を実行した後の処理後データを返信するサービスである。データ処理は、入力される画像データに実行される処理であり、例えば、文字認識(OCR)して文字のデータに変換する文字認識処理、文字を翻訳する翻訳処理、データ中の画像の領域の色を変換する色変換処理、データ中の画像の領域の輪郭を強調する輪郭強調処理、データのフォーマットを変換するフォーマット変換処理等を含む。なお、外部サーバー200が提供するデータ処理サービスは、これらに限定されることなく、データに対して実行する処理であればよい。
外部サーバー200が提供するデータ処理サービスは、MFP100,100A〜100Dのいずれかで利用可能なように、MFP100,100A〜100D各々において、外部サーバー200が提供するデータ処理サービスを利用することが可能なように設定されている。
MFP100,100A〜100Dは、画像処理装置の一例であり、スキャナ機能、プリンタ機能、コピー機能、ファクシミリ機能等の複数の機能を備える。また、MFP100,100A〜100D各々は、CGI(Common Gateway Interface)を備えており、インターネットウェブサーバー(以下「IWS」)として機能する。ここでは、MFP100,100A〜100D各々がIWSとして機能する部分を、内部サーバーという。
さらに、CGIを起動するための関数としてのAPI(Application Program Interface)が公開されており、ユーザーは、そのAPIを用いてアプリケーションプログラムを開発し、MFP100,100A〜100Dにインストールすることができる。ここでは、MFP100,100A〜100Dを、外部サーバー200が提供するデータ処理サービスを利用することが可能なように設定する場合、MFP100,100A〜100D各々にアプリ連携プログラムがインストールされる。アプリ連携プログラムは、外部サーバー200と連携して処理を実行するためのアプリケーションプログラムであり、MFP100,100A〜100D各々のCGIを起動するための関数としての公開されたAPIを用いて開発されたアプリケーションプログラムである。
さらに、MFP100,100A〜100D各々には、マークアップ言語で記述されたWebページを要求し、受信されるWebページを表示する処理をコンピュータに実行させるブラウジングプログラムがインストールされている。MFP100,100A〜100D各々が備えるCPU(中央演算装置)によりブラウジングプログラムが実行され、CPUにブラウジングプログラムを実行するタスクが形成される。このCPUに形成されるブラウジングプログラムを実行するタスクは、IWSとして機能するMFP100,100A〜100Dおよび外部サーバー200のユーザーインターフェースとして機能する。例えば、MFP100で説明すると、MFP100が有するCPUがブラウジングプログラムを実行するタスクが、IWSとして機能するためのプログラムを実行するタスクまたは外部サーバー200のユーザーインターフェースとして機能する。
MFP100,100A〜100Dは、それぞれが備える機能は同じであってもよく異なっていてもよいが、基本的には、原稿を読み取って画像データを出力する原稿読取機能を少なくとも有し、付加的に、画像データの画像を用紙に形成する画像形成機能、画像データを処理する画像処理機能、画像形成後の用紙にパンチ穴加工、ソート処理等する後処理機能、ファクシミリ送受信機能のいずれかを含んでもよい。
MFP100,100A〜100D各々が有する機能は同じではない場合があるが、ここではMFP100が、他のMFP100A〜100Dのいずれかが有する機能を有している場合を例に説明する。
図2は、MFPの外観を示す斜視図である。図2を参照して、MFP100は、自動原稿搬送装置(ADF)21と、画像読取部22と、画像処理部23(図3参照)と、画像形成部24と、給紙部25と、後処理部26とを含む。また、MFP100は、その上面にユーザーインターフェースとして用いられる操作パネル11を備えている。
図3は、MFPのハードウエア構成の一例を示すブロック図である。図3を参照して、MFP100は、情報処理部101と、ADF21と、画像読取部22と、画像処理部23と、画像形成部24と、給紙部25と、後処理部26と、ファクシミリ部27と、を含む。情報処理部101は、CPU111と、CPU111が実行するプログラム等を記憶するROM(Read Only Memory)112と、CPU111の作業領域として使用されるRAM(Random Access Memory)113と、データを不揮発的に記憶するためのハードディスクドライブ(HDD)114と、表示部115と、操作部116と、ネットワークインターフェース(I/F)117と、外部記憶装置118とを含む。
CPU111は、ROM112、RAM113、HDD114、表示部115、操作部116、ネットワークI/F117および外部記憶装置118とそれぞれ接続され、情報処理部101の全体を制御する。また、CPU111は、ADF21、画像読取部22、画像処理部23、画像形成部24、給紙部25、後処理部26およびファクシミリ部27と接続され、MFP100の全体を制御する。
ADF21は、原稿台に搭載された複数枚の原稿をさばいて1枚ずつ順に、画像読取部22に搬送する。ADF21は、原稿の片面を画像読取部22に読み取らせる場合、原稿を画像読取部22に搬送して表面を読み取らせる。さらに、ADF21は、原稿の両面を画像読取部22に読み取らせる場合、原稿を画像読取部22に搬送して表面を読み取らせた後、原稿を裏返して画像読取部22に搬送して裏面を読み取らせる。画像読取部22は、写真、文字、絵等の画像情報を原稿から光学的に読み取って画像データを取得し、画像処理部23に出力する。
画像処理部23は、CPU111により制御され、CPU111からの指示に基づき画像データを画像処理する。画像データは、画像読取部22が原稿を読み取って出力する画像データ、ネットワークI/F117により他のコンピュータから受信されるプリントジョブに含まれる画像データ、ネットワークI/F117により他のMFP100A〜100Dのいずれかから受信される画像データ、HDD114に記憶されている画像データを含む。画像処理は、例えば、画像を拡大する拡大処理、画像を縮小する縮小処理、複数の画像を合成して1つの画像を生成する合成処理、画像を回転させて方向を変換する回転処理等である。
給紙部25は、複数の給紙トレイを有し、指定された給紙トレイに格納した用紙を1枚ずつ画像形成部24に供給する。複数の給紙トレイそれぞれは、複数のサイズの用紙のうちから選ばれたサイズの用紙を、複数の方向のうちから選ばれた方向に収納する。
画像形成部24は、画像データに基づき、給紙部25から搬送される用紙に画像を形成する。
後処理部26は、画像が形成された用紙を排紙する。後処理部26は、複数の排紙トレイを有し、ソート部、パンチ穴加工部、ステープル加工部を備えている。ソート部は、画像が形成された複数の用紙を複数の排紙トレイにソートして出力する。パンチ穴加工部は、用紙にパンチ穴を開ける。ステープル加工部は、画像が形成された複数の用紙をまとめるためにステープル加工する。
表示部115は、液晶表示装置(LCD)、有機ELD(Electro Luminescence Display)等の表示装置であり、ユーザーに対する指示メニューや取得した画像データに関する情報等を表示する。操作部116は、複数のキーを備え、キーに対応するユーザーの操作による各種の指示、文字、数字などのデータの入力を受け付ける。操作部116は、表示部115上に設けられたタッチパネルをさらに含む。表示部115と操作部116とで、操作パネル11を構成する。
ネットワークI/F117は、TCP(Transmission Control Protocol)またはUDP(User Datagram Protocol)等の通信プロトコルで通信するためのインターフェースであり、ネットワーク3およびインターネット5を介して外部サーバー200と通信する。また、ネットワーク3に接続された他のMFP100A〜100Dと通信する。
外部記憶装置118は、CD−ROM(Compact Disk Read Only Memory)119が装着される。CPU111は、外部記憶装置118を介してCD−ROM119にアクセス可能であり、CD−ROM119に記憶されたプログラムをRAM113にロードして実行可能である。なお、CPU111が実行するプログラムは、CD−ROM119に記憶されたプログラムに限られず、他の記憶媒体に記憶されたプログラムでもよく、HDD114に記憶されたプログラムであってもよく、さらに、ネットワークI/F117を介してネットワーク3に接続された他のコンピュータによりHDD114に書込みされたプログラムであってもよい。
なお、プログラムを記憶する記憶媒体としては、CD−ROM119に限られず、光ディスク(MO(Magnetic Optical Disc)/MD(Mini Disc)/DVD(Digital Versatile Disc))、ICカード、光カード、マスクROM、EPROM(Erasable Programmable ROM)、EEPROM(Electrically Erasable and Programmable ROM)などの半導体メモリでもよい。
ファクシミリ部27は、公衆電話回線網(PSTN)に接続され、PSTNにファクシミリデータを送信する、またはPSTNからファクシミリデータを受信する。ファクシミリ部27は、受信したファクシミリデータを、画像形成部24がプリント可能なプリントデータに変換して、画像形成部24に出力する。これにより、画像形成部24によりファクシミリデータの画像が用紙に形成される。また、ファクシミリ部27は、HDD114に記憶されたデータをファクシミリデータに変換して、PSTNに接続されたファクシミリ装置に送信する。
図4は、外部サーバーのハードウエア構成の一例を示すブロック図である。図4を参照して、外部サーバー200は、外部サーバー200の全体を制御するためのCPU201と、CPU201が実行するプログラム等を記憶するためのROM202と、CPU201の作業領域として用いられるRAM203と、外部サーバー200をネットワークに接続するためのネットワークI/F204と、大容量記憶装置としてのHDD205と、表示部206と、ユーザーの操作の入力を受け付ける操作部207と、CD−ROM209が装着される外部記憶装置208と、を含む。
外部記憶装置208には、CD−ROM209が装着される。CD−ROM209には、CPU201が実行可能なプログラムが記憶されており、CPU201は、外部記憶装置208を制御して、CD−ROM209からプログラムを読出し、読み出したプログラムをRAM203にロードして実行する。
なお、プログラムを記憶する記録媒体としては、CD−ROM209に限られず、フレキシブルディスク、カセットテープ、光ディスク(MO/MD/DVD)、ICカード、光カード、マスクROM、EPROM、EEPROMなどの半導体メモリでもよい。さらに、CPU201がインターネット5に接続された他のコンピュータからプログラムをダウンロードしてHDD205に記憶する、または、他のコンピュータがプログラムをHDD205に書込みするようにして、HDD205に記憶されたデータ処理プログラムをRAM203にロードしてCPU201で実行するようにしてもよい。ここでいうプログラムは、CPU201により直接実行可能なプログラムだけでなく、ソースプログラム、圧縮処理されたプログラム、暗号化されたプログラム等を含む。
図5は、MFPが備えるCPUが有する機能の概要の一例を示すブロック図である。図5に示す機能は、MFP100が備えるCPU111が、ROM112、HDD114またはCD−ROM119に記憶されたプログラムを実行することにより、CPU111に形成される。
図5を参照して、CPU111は、ブラウジング部31と、内部サーバー部41と、連携制御部51と、を含む。ブラウジング部31は、CPU111が、ブラウジングプログラムを実行することにより、CPU111に形成される。内部サーバー部41は、CPU111が、IWSの機能を実現するためのIWSプログラムを実行することにより、CPU111に形成される。連携制御部51は、アプリ連携プログラムを実行することにより、CPU111に形成される。ブラウジング部31および内部サーバー部41の機能は、周知なのでここでは説明を繰り返さない。
MFP100のユーザーが、アプリ連携プログラムをMFP100にインストールする際に、アプリ連携プログラムに対して予め定められた外部サーバー200が登録される。具体的には、外部サーバー200が提供するデータ処理サービスを実行するために外部サーバー200に記憶されたスキャン指示画面を含むWebページのネットワークアドレスであるURL(Uniform Resource Locator)91が、HDD114に記憶される。アプリ連携プログラムにスキャン指示画面を含むWebページのURLが予め記載されており、そのURLがHDD114に記憶される。
さらに、アプリ連携プログラムがMFP100にインストールされると、アプリ連携プログラムをCPU111に実行させためのボタンがメニュー画面に追加される。ユーザーがメニュー画面においてアプリ連携プログラムをCPU111に実行させためのボタンを指示すれば、CPU111はアプリ連携プログラムを実行する。CPU111がアプリ連携プログラムを実行すると連携制御部51がCPU111に形成される。
図6は、連携制御部の詳細な機能の一例を、HDD114に記憶されるデータとともに示す図である。図6を参照して、連携制御部51は、起動部53と、画像読取部22を制御するスキャン制御部55と、スキャンして得られる画像データからプレビュー画像を生成するプレビュー画像生成部57と、内部画面生成部59と、外部サーバー200から外部画面を受信する外部画面受信部63と、内部画面と外部画面とを含む統合画面を生成する統合画面生成部61と、統合画面のネットワークアドレスを外部サーバー200に通知する第1位置情報通知部65と、内部更新制御部71と、外部更新制御部81と、を含む。
起動部53は、ブラウジング部31を起動して、外部サーバー200に記憶されたスキャン指示画面を含むWebページを表示させる。具体的には、起動部53は、CPU111にブラウジングプログラムを実行させる。これにより、ブラウジング部31がCPU111に形成される。起動部53は、HDD114に記憶されたURL91を読み出し、読み出されたURL91をブラウジング部31に出力する。これにより、ブラウジング部31は、起動部53から入力されるURL91で特定されるWebページを取得し、表示部115に、取得されたWebページを表示する。URL91で特定されるWebページは、外部サーバー200に記憶されたスキャン指示画面である。
スキャン指示画面は、MFP100に原稿を読み取る指示を入力するためのスキャン指示ボタンを含む。スキャン指示ボタンは、外部サーバー200に、スキャン指示の操作が受け付けられたことを通知するCGIコマンドと、次画面の送信を要求する送信リクエストコマンドとが関連付けられている。ブラウジング部31は、スキャン指示ボタンが指示されると、スキャン指示ボタンに関連付けられたCGIコマンドをネットワークI/F117を介して外部サーバー200に送信した後に、次画面要求をネットワークI/F117を介して外部サーバー200に送信する。
外部サーバー200は、MFP100からスキャン指示ボタンに関連付けられたCGIコマンドを受信すると、MFP100にスキャン指示コマンドを返信するとともに、外部画面および画面情報をMFP100に送信する。外部画面および画面情報については後述する。スキャン指示コマンドは、MFP100のAPIで記述され、MFP100にスキャンを実行させるためのAPIコマンドを含む。
スキャン制御部55は、ネットワークI/F117が外部サーバー200からスキャン指示コマンドを受信すると、スキャン指示コマンドを受け付ける。スキャン制御部55は、スキャン指示コマンドを受け付けると、画像読取部22を制御して、画像読取部22に原稿を読み取らせ、画像読取部22が出力する画像データを取得する。スキャン制御部55は、取得された画像データをHDD114に記憶する。これにより、HDD114に画像データ92が記憶される。さらに。スキャン制御部55は、HDD114に記憶された画像データ92をプレビュー画像生成部57に出力するとともに、HDD114に記憶された画像データ92のネットワークアドレス(URL)を第1位置情報通知部65に出力する。
プレビュー画像生成部57は、HDD114に記憶された画像データ92からプレビュー画像を生成する。プレビュー画像は、後述する内部画面に含まれる画像であって、後述する内部画面によってサイズが定まる。このため、プレビュー画像生成部57は、内部画面により定められるサイズに、画像データ92を縮小し、縮小した画像データをプレビュー画像とし、HDD114に記憶する。これによりHDD114にプレビュー画像93が記憶される。プレビュー画像生成部57は、HDD114に記憶されたプレビュー画像93のファイル名を、内部画面生成部59に出力する。
内部画面生成部59は、外部サーバー200からスキャン指示コマンドとともに受信される画面情報に基づいて、内部画面を生成する。画面情報は、CSS(Cascading Style Sheets)等のスタイルシートであり、内部画面のサイズ、文字のフォントサイズ、背景の色、ボタンの色等を定める情報である。内部画面は、マークアップ言語で記述され、プレビュー画像93のURLと、プレビュー画像に対する画像処理を指示するボタンとを含む。画像処理を指示するボタンは、CGIコマンドと関連付けられている。CGIコマンドは、内部サーバー部41が実行するCGIコマンドであり、MFP100のAPIコマンドである。ここでは、内部画面が、プレビュー画像を回転させる画像処理、プレビュー画像を縮小する画像処理およびプレビュー画像を拡大する画像処理を指示するAPIコマンドとそれぞれ関連付けられた3つのボタンを含む場合を例に説明する。
内部画面生成部59は、生成された内部画面をHDD114に記憶する。これにより、HDD114に内部画面94が記憶される。また、内部画面生成部59は、HDD114に記憶された内部画面94のファイル名を統合画面生成部61に出力する。
外部画面受信部63は、ネットワークI/F117が、外部サーバー200からスキャン指示コマンドとともに送信される外部画面を受信すると、外部画面を取得する。外部画面は、マークアップ言語で記述され、外部サーバー200が提供するデータ処理サービスの実行を指示するボタンを含む。データ処理サービスの実行を指示するボタンは、外部サーバー200のCGIコマンドと関連付けられている。外部画面受信部63は、取得された外部画面をHDD114に記憶する。これにより、HDD114に外部画面96が記憶される。また、外部画面受信部63は、HDD114に記憶された外部画面のファイル名を統合画面生成部61に出力する。
統合画面生成部61は、内部画面生成部59から内部画面のファイル名が入力され、外部画面受信部63から外部画面のファイル名が入力される。統合画面生成部61は、HDD114に記憶された内部画面94と、外部画面96とを読み出し、それらを含む統合画面を生成し、生成された統合画面を、内部サーバー部41に出力する。内部サーバー部41は、統合画面が入力されると、統合画面をWebページとして出力可能な状態でHDD114に記憶する。これにより、HDD114に統合画面95が内部サーバー41が出力可能なWebページとして記憶される。統合画面生成部61は、内部サーバー部41からHDD114に記憶された統合画面95のネットワークアドレス(URL)を取得し、取得された統合画面95のネットワークアドレスを第1位置情報通知部65に出力する。
第1位置情報通知部65は、スキャン制御部55から画像データ92のURLが入力され、統合画面生成部61から統合画面95のURLが入力される。第1位置情報通知部65は、画像データ92のURLと統合画面95のURLとを、ネットワークI/F117を介して外部サーバー200に送信する。
外部サーバー200は、第1位置情報通知部65が送信する統合画面95のURLを受信すると、次画面要求を送信してきた装置に、統合画面95のURLを含むリダイレクト情報を送信する。外部サーバー200が送信するリダイレクト情報は、ネットワークI/F117により受信される。ブラウジング部31は、ネットワークI/F117によりリダイレクト情報が入力されると、リダイレクト情報に含まれるURLを含む送信リクエストを出力する。ここで、リダイレクト情報に含まれるURLは、HDD114に記憶された統合画面95のURLである。このため、送信リクエストは、統合画面95のURLを含み、内部サーバー部41に出力される。内部サーバー部41は、送信リクエストが入力されると、送信リクエストに含まれるURLで特定される統合画面95を読出し、ブラウジング部31に出力する。ブラウジング部31は、内部サーバー部41から入力される統合画面95を表示部115に表示する。これにより、表示部115に統合画面95が表示される。統合画面は、内部画面94と、外部画面96とを含み、内部画面94は、内部サーバー部41に画像処理の実行を指示するボタンを含み、外部画面96は、外部サーバー200が提供するデータ処理サービスの実行を指示するボタンを含む。
図7は、第1の実施の形態における統合画面の一例を示す図である。図7を参照して、統合画面95は、内部画面94と、外部画面96と、を含む。内部画面94は、プレビュー画面を表示する領域311と、3つの画像処理を指示するボタン313,314,315と、を含む。ボタン313は、プレビュー画像を拡大する画像処理を指示するCGIコマンドが関連付けられており、ボタン314は、プレビュー画像を縮小する画像処理を指示するCGIコマンドが関連付けられており、ボタン315は、プレビュー画像を回転する画像処理を指示するCGIコマンドが関連付けられている。
外部画面96は、2つのデータ処理を指示するボタン321,322を含む。ボタン321は、プレビュー画像を色変換するデータ処理を指示するCGIコマンドが関連付けられており、ボタン322は、プレビュー画像を輪郭補正するデータ処理を指示するCGIコマンドが関連付けられている。
図6に戻って、ユーザーは、内部画面94に含まれる画像処理を指示するボタン313,314,315、または、データ処理サービスの実行を指示するボタン321,322のいずれかを指示することができる。ユーザーが、内部画面94に含まれる画像処理を指示するボタン313,314,315のいずれかを指示すれば、ブラウジング部31は、ボタン313,314,315のうち指示されたボタンに関連付けられたCGIコマンドを内部サーバー部41に出力する。ユーザーが、外部画面96に含まれるボタン321,322のいずれかを指示すれば、ブラウジング部31は、ボタン321,322のうち指示されたボタンに関連付けられたCGIコマンドを、ネットワークI/F117を介して外部サーバー200に送信する。
<内部サーバーによる画像処理>
内部サーバー部41は、ブラウジング部31から指示されたボタンに関連付けられたCGIコマンドが入力されると、CGIコマンドで定まる画像処理を実行する指示を、連携制御部51に出力する。ここでは、画像処理は、拡大処理、縮小処理および回転処理のいずれかである。
図8は、内部更新制御部の詳細な機能の一例を示す図である。図8を参照して、内部更新制御部71は、画像処理部73と、プレビュー画像更新部75と、を含む。
画像処理部73は、内部サーバー部41から画像処理を実行する指示が入力されると、HDD114に記憶された画像データ92に対して入力される指示により定まる画像処理を実行し、処理後の画像データ92で更新する。ここでは、画像処理は、縮小処理、拡大処理、回転処理のいずれかである。画像処理部73は、画像処理が終了すると、更新指示をプレビュー画像更新部75に出力する。
プレビュー画像更新部75は、更新指示が入力されると、HDD114に記憶されている更新後の画像データ92からプレビュー画像を生成し、生成されたプレビュー画像でHDD114に記憶されているプレビュー画像93を更新する。プレビュー画像更新部75は、プレビュー画像93を更新すると、更新完了信号を内部サーバー部41に出力する。内部サーバー部41は、統合画面95を読出し、読み出された統合画面95をブラウジング部31に出力する。統合画面95は、内部画面94内にプレビュー画像93のURLを含む。ブラウジング部31が統合画面95を表示する時点において、プレビュー画像93は、内部更新制御部71によって更新されている。このため、更新後のプレビュー画像93を含む統合画面95が表示部115に表示される。
<外部サーバーによるデータ処理>
外部サーバー200は、MFP100のブラウジング部31が送信するCGIコマンドが受信される前に、統合画面95のURLとともに画像データ92のURLが受信されている。外部サーバー200は、MFP100のブラウジング部31が送信するCGIコマンドが受信されると、先に受信されているURLに基づいてMFP100から画像データ92を取得し、取得された画像データにCGIコマンドで特定されるデータ処理を実行する。ここでは、データ処理は、色変換処理または輪郭補正処理である。外部サーバー200は、URLとデータ処理後の画像データとを含みURLで特定される画像データ92をデータ処理後の画像データで更新する処理の実行を依頼するコマンドを、MFP100に送信する。また、外部サーバー200は、画像データ92の更新が終了すると、更新リクエストをMFP100に送信する。
図9は、外部更新制御部の詳細な機能の一例を示す図である。図9を参照して、外部更新制御部81は、更新リクエスト受信部83と、更新リクエスト出力部85と、画像データ更新部87と、プレビュー画像更新部89と、を含む。画像データ更新部87は、外部サーバー200から画像データ92のURLを受信すると、画像データ92をHDD114から読出し、外部サーバー200に送信する。画像データ更新部87は、外部サーバー200からURLとデータ処理後の画像データとを受信すると、URLで特定される画像データ92をデータ処理後の画像データで更新する。これにより、HDD114に記憶されている画像データが、外部サーバー200によりデータ処理された後の画像データで更新される。画像データ更新部87は、画像データが更新されると、更新指示をプレビュー画像更新部89に出力する。
プレビュー画像更新部89は、更新指示が入力されると、HDD114に記憶されている更新後の画像データ92からプレビュー画像を生成し、生成されたプレビュー画像でHDD114に記憶されているプレビュー画像93を更新する。
更新リクエスト受信部83は、ネットワークI/F117が外部サーバー200が送信する更新リクエストを受信すると、更新リクエストを取得し、更新リクエスト出力部85に更新リクエストを出力する。更新リクエスト出力部85は、更新リクエストが入力されると、ブラウジング部31に更新リクエストを出力する。
ブラウジング部31は、更新リクエストが入力されると、内部サーバー部41に更新リクエストを出力する。内部サーバー部41は更新リクエストが入力されると、HDD114から統合画面95を読出し、読み出された統合画面95をブラウジング部31に出力する。統合画面95は、内部画面94内にプレビュー画像93のURLを含む。ブラウジング部31が統合画面95を表示する時点において、プレビュー画像93は、外部更新制御部81のプレビュー画像更新部89によって更新されている。このため、外部サーバー200によりデータ処理が実行されて更新後のプレビュー画像93を含む統合画面95が表示部115に表示される。
図10は、第1の実施の形態におけるブラウジング部、内部サーバー部、連携制御部および外部サーバーそれぞれの処理の流れの関係を示す第1のフローチャートである。図10を参照して、ユーザーがアプリ連携プログラムを起動すると、CPU111にアプリ連携プログラムを実行するタスクである連携制御部51が形成される。連携制御部51は、ユーザーにより起動されると、スキャン指示画面のURL91をHDD114から読み出す(ステップS01)。そして、読み出されたURL91を引数としてブラウジングプログラムを起動する(ステップS02)。ブラウジングプログラムを起動することによりCPU111にブラウジングプログラムを実行するタスクであるブラウジング部31が形成される。
ブラウジング部31は、連携制御部51から引数として入力されるURL91を含む送信リクエストを、ネットワークI/F117を介して外部サーバー200に送信する(ステップS03)。外部サーバー200においては、送信リクエストを受信すると、URL91で特定されるスキャン指示画面を返信する(ステップS04)。ブラウジング部31は、外部サーバー200が返信するスキャン指示画面を受信すると、受信されたスキャン指示画面を表示部115に表示する(ステップS05)。
ユーザーが、表示部115に表示されたスキャン指示画面に含まれるスキャン指示ボタンを指示すれば、スキャン指示を受け付け、スキャン指示ボタンに関連付けられたCGIコマンドをネットワークI/F117を介して、外部サーバー200に送信する(ステップS06)。
外部サーバー200は、MFP100からスキャン指示ボタンに関連付けられたCGIコマンドを受信すると、MFP100にスキャン指示コマンドを返信する(ステップS07)。スキャン指示コマンドは、MFP100のAPIで記述され、MFP100にスキャンを実行させるためのAPIコマンドである。
そして、外部サーバー200は、外部画面および画面情報をMFP100に送信する(ステップS10)。外部画面は、マークアップ言語で記述され、外部サーバー200が提供するデータ処理サービスの実行を指示するボタンを含む。データ処理サービスの実行を指示するボタンは、外部サーバー200のCGIコマンドと関連付けられている。
連携制御部51は、ネットワークI/F117が外部サーバー200からスキャン指示コマンドを受信すると、画像読取部22を制御して、画像読取部22に原稿を読み取らせ、画像読取部22が出力する画像データを取得する(ステップS08)。そして、取得された画像データをHDD114に記憶する(ステップS09)。これにより、HDD114に画像データ92が記憶される。
次に連携制御部51は、ネットワークI/F117が、外部サーバー200から外部画面と画面情報を受信すると、外部画面をHDD114に記憶する(ステップS11)。そして、HDD114に記憶された画像データ92からプレビュー画像を生成し、HDD114に記憶する(ステップS12)。これによりHDD114にプレビュー画像93が記憶される。プレビュー画像は、内部画面に含まれる画像であって、ステップS11で受信された画面情報によってサイズが定まる。このため、プレビュー画像生成部57は、内部画面により定められるサイズに、画像データ92を縮小し、縮小した画像データをプレビュー画像とし、HDD114に記憶する。
次のステップS13においては、連携制御部51は、画面情報に基づいて、内部画面を生成する。そして、生成された内部画面をHDD114に記憶する(ステップS14)。これにより、HDD114に内部画面94が記憶される。画面情報は、CSS(Cascading Style Sheets)等のスタイルシートであり、内部画面のサイズ、文字のフォントサイズ、背景の色、ボタンの色等を定める情報である。内部画面は、マークアップ言語で記述され、プレビュー画像93のURLと、プレビュー画像に対する画像処理を指示するボタンとを含む。
次に、連携制御部51は、ステップS11において記憶された外部画面と、ステップS14において記憶された内部画面とを読み出し、それらを含む統合画面を生成する(ステップS15)。そして、生成された統合画面を内部サーバー部41に出力する(ステップS16)。
内部サーバー部41は、連携制御部51から受信される統合画面をHDD114にWebページとして記憶し、統合画面95のURLを連携制御部51に出力する(ステップS17)。そして、連携制御部51は、内部サーバー部41から受信される統合画面95のURL1を、ネットワークI/F117を介して外部サーバー200に送信する(ステップS18)。さらに、連携制御部51は、HDD114に記憶された画像データ92のURL2をネットワークI/F117を介して外部サーバー200に送信する(ステップS20)。
外部サーバー200においては、受信される統合画面95のURL1を記憶し(ステップS19)、受信される画像データ92のURL2を記憶する(ステップS21)。そして、ブラウジング部31が、ステップS06においてスキャン指示のCGIを送信した後に、次画面要求を送信すると、次画面要求を送信してきたブラウジング部31に、統合画面95のURLを含むリダイレクト情報を返信する(ステップS23)。外部サーバー200が送信するリダイレクト情報は、ブラウジング部31により受信される。ブラウジング部31は、ネットワークI/F117によりリダイレクト情報が入力されると、リダイレクト情報に含まれるURLを含む送信リクエストを、内部サーバー部41に出力する(ステップS24)。ここで、リダイレクト情報に含まれるURLは、HDD114に記憶された統合画面95のURLである。このため、送信リクエストは、統合画面95のURLを含み、内部サーバー部41に出力される。内部サーバー部41は、送信リクエストが入力されると、送信リクエストに含まれるURLで特定される統合画面95を、HDD114から読出し(ステップS25)、ブラウジング部31に出力する(ステップS26)。
ブラウジング部31は、内部サーバー部41から入力される統合画面95を表示部115に表示する(ステップS27)。これにより、表示部115に統合画面95が表示される。統合画面は、内部画面94と、外部画面96とを含み、内部画面94は、画像処理を指示するボタンを含み、外部画面96は、外部サーバー200が提供するデータ処理サービスの実行を指示するボタンを含む。
図11は、第1の実施の形態におけるブラウジング部、内部サーバー部、連携制御部および外部サーバーそれぞれの処理の流れの関係を示す第2のフローチャートである。図11を参照して、ユーザーが、表示部115に表示された統合画面95の外部画面96に含まれる指示ボタン321,322のいずれかを指示すれば、指示されたボタンに関連付けられたCGIコマンドをネットワークI/F117を介して外部サーバー200に送信する(ステップS31)。
外部サーバー200は、ブラウジング部31からCGIコマンドを受信すると、URL2の画像データの送信をMFP100の連携制御部51に要求する(ステップS32)。連携制御部51は、URL2を含む送信要求を受信すると、URL2で特定される画像データ92をHDD114から読出し、返信する(ステップS33)。外部サーバー200は、画像データを受信すると、ステップS32で受信されたCGIにより特定されるデータ処理を受信された画像データに実行する(ステップS34)。ここでは、データ処理は、色変換処理または輪郭補正処理である。外部サーバー200は、URLとデータ処理後の画像データとを含みURLで特定される画像データ92をデータ処理後の画像データで更新する処理の実行を依頼するコマンドを、MFP100に送信し(ステップS35)、更新リクエストをMFP100に送信する(ステップS37)。
連携制御部51は、外部サーバー200から受信されるURLで特定される画像データ92を、データ処理後の画像データ92で更新する(ステップS36)。そして、外部サーバー200から受信される更新リクエストを、ブラウジング部31に転送する(ステップS38)。
ブラウジング部31は、連携制御部51から更新リクエストが入力されると、その時点で表示されている統合画面95を更新する(ステップS39)。具体的には、その時点で表示している統合画面95を送信してきた内部サーバー部41に更新リクエストを出力する。内部サーバー部41は、更新リクエストが入力されると、HDD114に記憶されている統合画面95を読出し(ステップS40)、読み出された統合画面95を、ブラウジング部31に出力する(ステップS41)。
ブラウジング部31は、内部サーバー部41から受信される統合画面95を表示部115に表示する。ブラウジング部31が統合画面95を表示する時点において、HDD114に記憶される画像データ92は、外部サーバー200によってデータ処理された後の画像データで更新されているので、プレビュー画像は更新された後の画像データから生成されている。このため、外部サーバー200によりデータ処理が実行されて更新後のプレビュー画像93を含む統合画面95が表示部115に表示される。
次に、ユーザーが、表示部115に表示された統合画面95の内部画面94に含まれる指示ボタン313,314,315のいずれかを指示すれば、ブラウジング部31は、指示されたボタンに関連付けられたCGIコマンドを内部サーバー部41に出力する(ステップS51)。
内部サーバー部41は、ブラウジング部31から指示されたボタンに関連付けられたCGIコマンドが入力されると、CGIコマンドで定まる画像処理を実行する指示を、連携制御部51に出力する(ステップS52)。ここでは、画像処理は、拡大処理、縮小処理および回転処理のいずれかである。
連携制御部51は、内部サーバー部41から画像処理を実行する指示が入力されると、HDD114に記憶された画像データ92に対して入力される指示により定まる画像処理を実行し(ステップS53)、処理後の画像データ92で更新する(ステップS54)。ここでは、画像処理は、縮小処理、拡大処理、回転処理のいずれかである。さらに、HDD114に記憶されている更新後の画像データ92からプレビュー画像を生成し、生成されたプレビュー画像でHDD114に記憶されているプレビュー画像93を更新する。そして、連携制御部51は、更新完了信号を内部サーバー部41に出力する(ステップS54)。
内部サーバー部41は、更新完了信号が入力されると、HDD114から統合画面95を読出し、読み出された統合画面95をブラウジング部31に出力する(ステップS55)。統合画面95は、内部画面94内にプレビュー画像93のURLを含む。
ブラウジング部31は、内部サーバー部41から統合画面95が入力されると、統合画面を表示部115に表示する(ステップS56)。ブラウジング部31が統合画面95を表示する時点において、プレビュー画像93は、ステップS54において連携制御部51によって更新されている。このため、更新後のプレビュー画像93を含む統合画面95が表示部115に表示される。
第1の実施の形態におけるアプリ連携システム1は、MFP100において画像読取部22において原稿を読み取った画像データ92がHDD114に記憶され、HDD114に記憶された画像データ92MFP100または外部サーバー200において画像処理され、更新される。アプリ連携システム1においては、ユーザーが操作部116が備えるスタートキーを指示すれば、処理対象とされている画像データ92の画像が画像形成部24により用紙に形成され、画像データ92の画像が形成された用紙が出力される。なお、アプリ連携システム1に、画像データ92を出力する機能を付加するようにしてもよい。この場合は、スキャン指示画面と同様に、出力指示画面を外部サーバー200からMFP100に送信するようにして、MFP100に処理を実行させればよい。ここでの出力処理は、画像形成部24による画像形成、HDD114に記憶するデータ保存、またはネットワークI/F117を介してプレビュー画像を添付した電子メールを送信する電子メール送信、ネットワークI/F117を介して他のMFP100A〜100Dまたはコンピュータにプレビュー画像を送信するファイル転送等のデータ送信を含む。さらに、MFP100から画像データ92を、外部サーバー200に送信するようにして、外部サーバー200で画像データ92を出力する処理を実行するようにしても良い。
以上説明したように第1の実施の形態におけるアプリ連携システム1は、外部サーバー200は、MFP100のブラウジング部31から次画面の送信を要求する送信リクエストを受信することに応じて、統合画面のネットワークアドレスを含むリダイレクト情報をブラウジング部31に返信するので(S23)、ブラウジング部31は内部サーバー部41に統合画面の送信リクエストを送信する(S24)。その結果、内部サーバー部41から統合画面がブラウジング部31に出力され(S26)、ブラウジング部31により統合画面が表示される(S27)。統合画面95は、内部画面94と外部画面96を含み、内部画面94は、内部サーバー部41に所定の処理を実行させるためのCGIコマンド(内部制御コマンド)を含み、外部画面96は所定の処理を外部サーバーに実行させるためのCGIコマンド(サーバー制御コマンド)を含むので、ユーザーは、統合画面95から内部サーバー部41と外部サーバー200とのいずれかに画像データに対して処理の実行を指示することができる。その結果、ユーザーは、MFP100と外部サーバー200とのいずれに処理させるかを意識することなく、MFP100と外部サーバー200とのいずれかに画像データに対して処理を実行させることができる。
また、連携制御部51は、HDD114に記憶された画像データ92の位置を示すURLを送信する第1位置情報通知部65をさらに含み、外部サーバー200は、ブラウジング部31からCGIコマンド(外部制御コマンド)が受信されることに応じて、受信される画像データのURLで特定される画像データ92を取得し(S32)、画像データ92に受信されたCGIコマンド(外部制御コマンド)で特定される画像処理を実行し(S34)、画像処理後の画像データで、画像データを更新し(S35)と、画像データ92が更新された後に、ブラウジング部31に更新リクエストを出力する(S37)。このため、外部サーバー200で画像データを処理した後の画像データを、MFP100に表示することができる。
また、内部サーバー部41にブラウジング部31からCGIコマンド(内部制御コマンド)が入力されることに応じて、内部画面94で特定される画像データ92に受信されたCGIコマンド(内部制御コマンド)で特定される画像処理を実行し(53)、画像処理された画像データで、画像データを更新する内部更新制御部63と、内部更新制御部63により記憶された画像データが更新された後に、更新後の画像データを含む統合画面をブラウジング部31に返信する(S55)。このため、MFP100で画像データ92を処理した後の画像データを、MFP100に表示することができる。
さらに、内部画面生成部59は、外部サーバー200から画面情報を受信し、画面情報にしたがって内部画面を生成する(S13)。このため、内部画面において、文字のサイズ、色、背景の色等の表示態様を、外部画面と同じにすることができ、統合画面95において、内部画面94と外部画面96とを識別困難な統一された画面にすることができる。
<第2の実施の形態>
第1の実施の形態におけるアプリ連携システム1においては、MFP100において統合画面を生成し、MFP100のHDD114に統合画面を記憶するようにした。第2の実施の形態におけるアプリ連携システムにおいては、統合画面を、外部サーバー200が生成し、外部サーバー200に記憶するようにした点で、第1の実施の形態におけるアプリ連携システム1と異なる。以下、第2の実施の形態におけるアプリ連携システム1Aについて、第1の実施の形態におけるアプリ連携システム1と異なる点を主に説明する。
第2の実施の形態におけるアプリ連携システム1Aのハードウエア構成は、図1〜図4に示したのと同じである。
図12は、第2の実施の形態におけるMFPが備えるCPU111の機能の一例を示す図である。図5に示した機能と異なる点は、連携制御部51が連携制御部51Aに変更された点である。
図13は、第2の実施の形態における連携制御部の詳細な機能の一例を、HDD114に記憶されるデータとともに示す図である。図13を参照して、第2の実施の形態における連携制御部51Aは、図6に示した連携制御部51と異なる点は、第1位置情報通知部65および内部画面生成部59が第2位置情報通知部65Aおよび内部画面生成部59Aにそれぞれ変更された点、統合画面生成部61および外部画面受信部63が削除された点である。さらに、HDD114には、統合画面95および外部画面96は記憶されない。その他の機能は、図6に示した機能と同じなので、ここでは説明を繰り返さない。
内部画面生成部59Aは、外部サーバー200からスキャン指示コマンドとともに受信される画面情報に基づいて、内部画面を生成する。画面情報は、CSS(Cascading Style Sheets)等のスタイルシートであり、内部画面のサイズ、文字のフォントサイズ、背景の色、ボタンの色等を定める情報である。内部画面は、マークアップ言語で記述され、プレビュー画像93のURLと、プレビュー画像に対する画像処理を指示するボタンとを含む。画像処理を指示するボタンは、CGIコマンドと関連付けられている。CGIコマンドは、内部サーバー部41が実行するCGIコマンドであり、MFP100のAPIコマンドである。ここでは、内部画面が、プレビュー画像を回転させる画像処理、プレビュー画像を縮小する画像処理およびプレビュー画像を拡大する画像処理を指示するAPIコマンドとそれぞれ関連付けられた3つのボタンを含む場合を例に説明する。
内部画面生成部59Aは、生成された内部画面を内部サーバ41に出力する。内部サーバー部41は、内部画面生成部59Aから入力される内部画面を、HDD114にWebページとして記憶し、内部画面94のURLを内部画面生成部59Aに出力する。これにより、HDD114に内部画面94が内部サーバー41が出力可能なWebページとして記憶される。また、内部画面生成部59Aは、内部サーバー41から入力される内部画面94のURLを第2位置情報通知部65Aに出力する。
第2位置情報通知部65Aは、スキャン制御部55から画像データ92のURLが入力され、内部画面生成部59から内部画面94のURLが入力される。第2位置情報通知部65Aは、画像データ92のURLと内部画面94のURLとを、ネットワークI/F117を介して外部サーバー200に送信する。
図14は、第2の実施の形態における外部サーバーが備えるCPUが有する機能の一例をHDDに記憶されるデータとともに示すブロック図である。図14を参照して、外部サーバー200が備えるCPU201は、位置情報受信部211と、統合画面生成部213とを含む。HDD205には、外部画面96Aが予め記憶されている。位置情報受信部211は、ネットワークI/F204がMFP100から画像データ92のURLと内部画面94のURLとを受信すると、それらを受け付ける。位置情報受信部211は、受信された画像データ92のURLと内部画面94のURLとを、統合画面生成部213に出力する。
統合画面生成部213は、HDD205に予め記憶されている外部画面221を読み出し、位置情報受信部211から入力される内部画面94のURLと、外部画面221とから統合画面を生成し、統合画面をHDD205に記憶する。統合画面223は、外部画面96Aと、内部画面94を表示する領域をインラインフレーム(Iフレーム)として含む。このため、統合画面223に含まれるIフレームには、内部画面94が表示されるように位置情報受信部211から入力される内部画面94のURLが設定される。
図15は、第2の実施の形態における統合画面の一例を示す図である。図15を参照して、統合画面223は、外部画面96Aと、内部画面94を表示するためのIフレーム94Aと、を含む。ここでは、Iフレーム94Aに、内部画面94が表示された状態を示している。内部画面94は、プレビュー画面を表示する領域311と、3つの画像処理を指示するボタン313,314,315と、を含むため、Iフレーム94Aにはそれらが表示される。ボタン313は、プレビュー画像を拡大する画像処理を指示するCGIコマンドが関連付けられており、ボタン314は、プレビュー画像を縮小する画像処理を指示するCGIコマンドが関連付けられており、ボタン315は、プレビュー画像を回転する画像処理を指示するCGIコマンドが関連付けられている。
外部画面96Aは、2つのデータ処理を指示するボタン321,322を含む。ボタン321は、プレビュー画像を色変換するデータ処理を指示するCGIコマンドが関連付けられており、ボタン322は、プレビュー画像を輪郭補正するデータ処理を指示するCGIコマンドが関連付けられている。
図16は、第2の実施の形態におけるブラウジング部、内部サーバー部、連携制御部および外部サーバーそれぞれの処理の流れの関係を示す第1のフローチャートである。図16を参照して、図10に示したフローチャートと異なる点は、ステップS10〜ステップS27の処理が、ステップS71〜ステップS84の処理に変更された点である。ステップS01〜ステップS09までの処理は、図10に示した処理と同じなので、ここでは説明を繰り返さない。
外部サーバー200は、ステップS07において、MFP100にスキャン指示コマンドを返信した後、画面情報をMFP100に送信する(ステップS71)。画面情報は、CSS(Cascading Style Sheets)等のスタイルシートであり、内部画面のサイズ、文字のフォントサイズ、背景の色、ボタンの色等を定める情報である。
連携制御部51は、ネットワークI/F117が、外部サーバー200から画面情報を受信すると、HDD114に記憶された画像データ92からプレビュー画像を生成し、HDD114に記憶する(ステップS72)。これによりHDD114にプレビュー画像93が記憶される。プレビュー画像は、内部画面に含まれる画像であって、外部サーバー200から受信される画面情報によってサイズが定まる。このため、プレビュー画像生成部57は、画面情報により定められるサイズに、画像データ92を縮小し、縮小した画像データをプレビュー画像93とし、HDD114に記憶する。
次のステップS73においては、連携制御部51は、画面情報に基づいて、内部画面を生成する。そして、生成された内部画面を内部サーバー部41に出力する(ステップS74)。内部サーバー部41は、連携制御部51から受信される内部画面をHDD114にWebページとして記憶し、内部画面94のURLを連携制御部51に出力する(ステップS75)。これにより、HDD114に内部画面94が記憶される。内部画面は、マークアップ言語で記述され、プレビュー画像93のURLと、プレビュー画像に対する画像処理を指示するボタンとを含む。
次に、連携制御部51は、内部サーバー部41から入力される内部画面94のURL1を、ネットワークI/F117を介して外部サーバー200に送信する(ステップS76)。さらに、連携制御部51は、HDD114に記憶された画像データ92のURL2をネットワークI/F117を介して外部サーバー200に送信する(ステップS78)。
外部サーバー200においては、受信される内部画面94のURL1をIフレームに含む統合画面を生成する(ステップS77)。そして、受信される画像データ92のURL2を記憶する(ステップS79)。さらに、ブラウジング部31が、ステップS06においてスキャン指示のCGIを送信した後に、次画面要求を送信すると(ステップS80)、次画面要求を送信してきたブラウジング部31に、ステップS77において生成された統合画面95を返信する(ステップS81)。外部サーバー200が送信する統合画面は、URL1で特定される内部画面を表示するためのIフレームを含むので、ブラウジング部31は、URL1を含む送信リクエストを内部サーバー部41に出力する(ステップS82)。
内部サーバー部41は、URL1を含む送信リクエストを受信すると、URL1で特定される内部画面94をHDD114から読み出し(ステップS83)、読み出された内部画面94をブラウジング部31に出力する(ステップS84)。ブラウジング部31は、内部サーバー部41から内部画面94が入力されると、ステップS81において外部サーバー200から受信される統合画面95を表示部115に表示するとともに、統合画面95のIフレーム部分に内部画面94を表示する(ステップS85)。これにより、表示部115に内部画面94を含む統合画面95が表示される。統合画面95は、内部画面94と、外部画面96とを含み、内部画面94は、プレビュー画像と画像処理を指示するボタンとを含み、外部画面96は、外部サーバー200が提供するデータ処理サービスの実行を指示するボタンを含む。
図17は、第2の実施の形態におけるブラウジング部、内部サーバー部、連携制御部および外部サーバーそれぞれの処理の流れの関係を示す第2のフローチャートである。図17を参照して、図11に示したフローチャートと異なる点は、ステップS40〜ステップS42、ステップS55およびステップS56が、ステップS40A〜ステップS42A、ステップS55AおよびステップS56Aにそれぞれ変更された点である。その他の処理は、図11に示した処理と同じなので、ここでは説明を繰り返さない。
内部サーバー部41は、ステップS40Aにおいて、ブラウジング部31から更新リクエストを受信すると、内部画面94をHDD114から読み出す。そして、読み出された内部画面94をブラウジング部31に返信する(ステップS41A)。
ブラウジング部31は、内部サーバー部41から受信される内部画面94で、表示部115に表示されている統合画面95のIフレーム94Aを更新する(ステップS42A)。ブラウジング部31が内部画面94を統合画面95のIフレーム94Aに表示する時点において、HDD114に記憶される画像データ92は、外部サーバー200によってデータ処理がされた後の画像データで更新されているので、プレビュー画像93は更新された後の画像データから生成されている。このため、外部サーバー200によりデータ処理が実行されて更新後のプレビュー画像93を含む統合画面95が表示部115に表示される。
次に、ユーザーが、表示部115に表示された統合画面95の内部画面94に含まれる指示ボタン313,314,315のいずれかを指示すれば、ブラウジング部31は、指示されたボタンに関連付けられたCGIコマンドを内部サーバー部41に出力する(ステップS51)。
内部サーバー部41は、ブラウジング部31から指示されたボタンに関連付けられたCGIコマンドが入力されると、CGIコマンドで定まる画像処理を実行する指示を、連携制御部51に出力する(ステップS52)。ここでは、画像処理は、拡大処理、縮小処理および回転処理のいずれかである。
連携制御部51は、内部サーバー部41から画像処理を実行する指示が入力されると、HDD114に記憶された画像データ92に対して入力される指示により定まる画像処理を実行し(ステップS53)、処理後の画像データ92で更新する(ステップS54)。さらに、HDD114に記憶されている更新後の画像データ92からプレビュー画像を生成し、生成されたプレビュー画像でHDD114に記憶されているプレビュー画像93を更新する。そして、連携制御部51は、更新完了信号を内部サーバー部41に出力する(ステップS54)。
内部サーバー部41は、更新完了信号が入力されると、HDD114から内部画面94を読出し、読み出された内部画面94をブラウジング部31に出力する(ステップS55A)。
ブラウジング部31は、内部サーバー部41から内部画面94が入力されると、表示部115に表示されている統合画面95のIフレーム94Aを、入力される内部画面94で更新する(ステップS56A)。ブラウジング部31が統合画面95を更新する時点において、プレビュー画像93は、連携制御部51によって更新されている。このため、更新後のプレビュー画像93を含む統合画面95が表示部115に表示される。
第2の実施の形態におけるアプリ連携システム1Aは、外部サーバー200は、MFP100のブラウジング部31から次画面の送信を要求する送信リクエストを受信することに応じて、統合画面をブラウジング部31に返信するので(S81)、ブラウジング部31は統合画面85を表示する。統合画面81は、Iフレーム94A(部分表示領域)に内部画面94を表示するために、内部画面94のURLを含む送信リクエストを送信するコマンドが記述されているので、ブラウジング部31は、内部サーバー部41に内部画面の送信リクエストを送信し(S82)、内部サーバー部41から受信される内部画面94をiフレーム94Aに表示する。統合画面95は、内部画面94と外部画面96を含み、内部画面94は、内部サーバー部41に所定の処理を実行させるためのCGIコマンド(内部制御コマンド)を含み、外部画面96は所定の処理を外部サーバー200に実行させるためのCGIコマンド(サーバー制御コマンド)を含むので、ユーザーは、統合画面95から内部サーバー部41と外部サーバー200とのいずれかに処理の実行を指示することができる。その結果、ユーザーは、MFP100と外部サーバー200とのいずれに処理させるかを意識することなく、MFP100と外部サーバー200とのいずれかに処理を実行させることができる。
なお、上述した第1および第2の実施の形態においては、外部サーバー200においてデータ処理を実行する際に、MFP100に記憶された画像データ92を処理対象としたが、プレビュー画像93を処理対象とするようにしてもよい。この場合、プレビュー画像生成部57が、プレビュー画像93でHDD114に記憶された画像データ92を更新するようにし、画像データ92に代えてプレビュー画像93を処理対象とすればよい。プレビュー画像93は、画像データ92を縮小した画像なので、画像データ92に比較してデータ量が小さい。このため、外部サーバー200がプレビュー画像を処理するためにネットワーク3を介してプレビュー画像93が送受信される(ステップS34、S35)が、プレビュー画像のデータ量が小さいため、ネットワーク3の負荷を少なくすることができる。この場合には、連携制御部51において実行される画像処理(ステップS53)の対象となるデータは、ブレビュー画像93であり、アプリ連携システムによって処理された後に、出力の対象となるデータも、プレビュー画像93である。
また、上述した実施の形態においてはアプリ連携システム1,1Aについて説明したが、図11、図12、図16、図17に示した処理をコンピュータに実行させるためのアプリ連携方法またはアプリ連携プログラムとして発明を捉えることができるのは言うまでもない。
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
1,1A アプリ連携システム、3 ネットワーク、5 インターネット、11 操作パネル、21 ADF、22 画像読取部、23 画像処理部、24 画像形成部、25 給紙部、26 後処理部、27 ファクシミリ部、31 ブラウジング部、41 内部サーバー部、51,51A 連携制御部、53 起動部、55 スキャン制御部、57 プレビュー画像生成部、59 内部画面生成部、61 統合画面生成部、63 外部画面受信部、65,65A 位置情報通知部、71 内部更新制御部、73 画像処理部、75 プレビュー画像更新部、81 外部更新制御部、83 更新リクエスト受信部、85 更新リクエスト出力部、87 画像データ更新部、89 プレビュー画像更新部、91 URL、92 画像データ、93 プレビュー画像、94 内部画面、94A Iフレーム、95 統合画面、96,96A 外部画面、100,100A〜100D MFP、101 情報処理部、111 CPU、112 ROM、113 ROM、114 HDD、115 表示部、116 操作部、117 ネットワークI/F、118 外部記憶装置、119 CD−ROM、200 外部サーバー、201 CPU、202 ROM、203 RAM、204 ネットワークI/F、205 HDD、206 表示部、207 操作部、208 外部記憶装置、211 位置情報受信部、213 統合画面生成部、223 統合画面。




Claims (8)

  1. 原稿を読み取って画像データを出力する原稿読取手段と、
    マークアップ言語で記述されたページを記憶する記憶手段と、
    マークアップ言語で記述されたページを要求し、前記要求に応じて受信されるページを表示するブラウジング手段と、
    前記ブラウジング手段からの要求に応じて前記記憶手段に記憶されたページを出力する内部サーバー手段と、
    前記ブラウジング手段、前記内部サーバー手段および外部サーバーとを連携させる連携制御手段と、を備え、
    前記連携制御手段は、前記ブラウジング手段を起動して、前記外部サーバーに記憶されたスキャン指示画面を含むページを表示させる指示画面表示制御手段と、
    前記表示されたスキャン指示画面に基づいてユーザーにより入力されるスキャン指示を受け付けることに応じて、前記原稿読取手段を制御して、前記原稿読取手段が出力する画像データを前記記憶手段に記憶するスキャン制御手段と、
    ユーザーの指示を受け付ける領域と、前記ユーザーの指示を受け付ける領域に割り当てられ、前記外部サーバーに所定の処理を実行させるためのサーバー制御コマンドと、を含む外部画面を前記外部サーバーから受信し、前記記憶手段に記憶する外部画面受信手段と、
    ユーザーの指示を受け付ける領域と、前記ユーザーの指示を受け付ける領域に割り当てられ、前記内部サーバー手段に所定の処理を実行させるための内部制御コマンドと、前記記憶された画像データを表示する領域と、を含む内部画面を生成する内部画面生成手段と、
    前記内部画面と前記記憶された外部画面とを合成した統合画面を生成し、前記生成された統合画面を前記内部サーバー手段に出力する統合画面生成手段と、
    前記内部サーバー手段から前記統合画面のネットワークアドレスを取得し、前記外部サーバーに送信する位置情報通知手段と、を含み、
    前記外部サーバーは、前記ブラウジング手段に前記スキャン指示画面を送信した後、前記ブラウジング手段から次画面の送信を要求する送信リクエストを受信することに応じて、前記統合画面のネットワークアドレスを含むリダイレクト情報を前記ブラウジング手段に返信する、アプリ連携システム。
  2. 原稿を読み取って画像データを出力する原稿読取手段と、
    マークアップ言語で記述されたページを記憶する記憶手段と、
    マークアップ言語で記述されたページを要求し、前記要求に応じて受信されるページを表示するブラウジング手段と、
    前記ブラウジング手段からの要求に応じて前記記憶手段に記憶されたページを出力する内部サーバー手段と、
    前記ブラウジング手段、前記内部サーバー手段および外部サーバーとを連携させる連携制御手段と、を備え、
    前記連携制御手段は、前記ブラウジング手段を起動して、前記外部サーバーに記憶されたスキャン指示画面を含むページを表示させる指示画面表示制御手段と、
    前記表示されたスキャン指示画面に基づいてユーザーにより入力されるスキャン指示を受け付けることに応じて、前記原稿読取手段を制御して、前記原稿読取手段が出力する画像データを前記記憶手段に記憶するスキャン制御手段と、
    ユーザーの指示を受け付ける領域と、前記ユーザーの指示を受け付ける領域に割り当てられ、前記内部サーバー手段に所定の処理を実行させるための内部制御コマンドと、前記記憶された画像データを表示する領域と、を含む内部画面を生成し、前記生成された内部画面を前記内部サーバー手段に出力するする内部画面生成手段と、
    前記内部サーバー手段から前記内部画面のネットワークアドレスを取得し、前記内部画面のネットワークアドレスを前記外部サーバーに送信する位置情報通知手段と、を含み、
    前記外部サーバーは、前記内部画面のネットワークアドレスを受信することに応じて、ユーザーの指示を受け付ける領域と、前記ユーザーの指示を受け付ける領域に割り当てられ、前記外部サーバーに所定の処理を実行させるためのサーバー制御コマンドと、前記受信されたネットワークアドレスで特定される前記内部画面を表示する部分表示領域と、を含む統合画面であって、前記部分表示領域に前記内部画面を表示するために、前記受信されたネットワークアドレスを含む送信リクエストを送信するコマンドを記述した統合画面を生成する統合画面生成手段を含み、前記ブラウジング手段に前記スキャン指示画面を送信した後、前記ブラウジング手段から次画面の送信を要求する送信リクエストを受信することに応じて、前記統合画面を返信する、アプリ連携システム。
  3. 前記連携制御手段は、前記記憶された画像データの位置を示すネットワークアドレスを前記外部サーバーに送信する位置情報通知手段をさらに含み、
    前記外部サーバーは、前記ブラウジング手段から前記サーバー制御コマンドが受信されることに応じて、前記位置情報通知手段から受信される前記画像データのネットワークアドレスで特定される前記画像データを取得し、前記画像データに前記受信されたサーバー制御コマンドで特定される画像処理を実行し、前記画像処理後の画像データで、前記画像データを更新する外部更新手段と、
    前記外部更新手段により前記記憶された画像データが更新された後に、前記ブラウジング手段に更新リクエストを出力する更新リクエスト出力手段と、さらに備えた請求項1または2に記載のアプリ連携システム。
  4. 前記内部サーバー手段に前記ブラウジング手段から前記内部制御コマンドが入力されることに応じて、前記内部画面で特定される前記画像データに前記受信された内部制御コマンドで特定される画像処理を実行し、前記画像処理された画像データで、前記画像データを更新する内部更新手段と、
    前記内部更新手段により前記記憶された画像データが更新された後に、前記統合画面を前記ブラウジング手段に返信する、請求項1〜3のいずれかに記載のアプリ連携システム。
  5. 前記連携制御手段は、前記画像データを縮小したプレビュー画像を生成し、前記記憶された画像データを前記生成されたプレビュー画像で更新するプレビュー画像生成手段を、さらに備えた請求項1〜4のいずれかに記載のアプリ連携システム。
  6. 前記内部画面生成手段は、前記外部サーバーから前記内部画面のスタイルを定める画面情報を受信し、前記受信された画面情報にしたがって前記内部画面を生成する、請求項1〜5のいずれかに記載のアプリ連携システム。
  7. 画像処理装置と外部サーバーとを含むアプリ連携システムで実行されるアプリ連携方法であって、
    前記画像処理装置は、
    原稿を読み取って画像データを出力する原稿読取手段と、
    マークアップ言語で記述されたページを記憶する記憶手段と、
    マークアップ言語で記述されたページを要求し、前記要求に応じて受信されるページを表示するブラウジング手段と、
    前記ブラウジング手段からの要求に応じて前記記憶手段に記憶されたページを出力する内部サーバー手段と、を備え、
    前記ブラウジング手段を起動して、前記外部サーバーに記憶されたスキャン指示画面を含むページを表示させるステップと、
    前記表示されたスキャン指示画面に基づいてユーザーにより入力されるスキャン指示を受け付けることに応じて、前記原稿読取手段を制御して、前記原稿読取手段が出力する画像データを前記記憶手段に記憶するステップと、
    ユーザーの指示を受け付ける領域と、前記ユーザーの指示を受け付ける領域に割り当てられ、前記外部サーバーに所定の処理を実行させるためのサーバー制御コマンドと、を含む外部画面を前記外部サーバーから受信し、前記記憶手段に記憶するステップと、
    ユーザーの指示を受け付ける領域と、前記ユーザーの指示を受け付ける領域に割り当てられ、前記内部サーバー手段に所定の処理を実行させるための内部制御コマンドと、前記記憶された画像データを表示する領域と、を含む内部画面を生成するステップと、
    前記内部画面と前記記憶された外部画面とを合成した統合画面を生成し、前記生成された統合画面を前記内部サーバー手段に出力するステップと、
    前記内部サーバー手段から前記統合画面のネットワークアドレスを取得し、前記外部サーバーに送信するステップと、を前記画像処理装置に実行させ、
    前記ブラウジング手段に前記スキャン指示画面を送信した後、前記ブラウジング手段から次画面の送信を要求する送信リクエストを受信することに応じて、前記統合画面のネットワークアドレスを含むリダイレクト情報を前記ブラウジング手段に返信するステップを前記外部サーバーに実行させる、アプリ連携方法。
  8. 画像処理装置と外部サーバーとを含むアプリ連携システムで実行されるアプリ連携方法であって、
    前記画像処理装置は、
    原稿を読み取って画像データを出力する原稿読取手段と、
    マークアップ言語で記述されたページを記憶する記憶手段と、
    マークアップ言語で記述されたページを要求し、前記要求に応じて受信されるページを表示するブラウジング手段と、
    前記ブラウジング手段からの要求に応じて前記記憶手段に記憶されたページを出力する内部サーバー手段と、を備え、
    前記ブラウジング手段を起動して、前記外部サーバーに記憶されたスキャン指示画面を含むページを表示させるステップと、
    前記表示されたスキャン指示画面に基づいてユーザーにより入力されるスキャン指示を受け付けることに応じて、前記原稿読取手段を制御して、前記原稿読取手段が出力する画像データを前記記憶手段に記憶するステップと、
    ユーザーの指示を受け付ける領域と、前記ユーザーの指示を受け付ける領域に割り当てられ、前記内部サーバー手段に所定の処理を実行させるための内部制御コマンドと、前記記憶された画像データを表示する領域と、を含む内部画面を生成するステップと、
    前記生成された内部画面を前記内部サーバー手段に出力するステップと、
    前記内部サーバー手段から前記内部画面のネットワークアドレスを取得し、前記内部画面のネットワークアドレスを前記外部サーバーに送信するステップと、を前記画像処理装置に実行させ、
    前記内部画面のネットワークアドレスを受信することに応じて、ユーザーの指示を受け付ける領域と、前記ユーザーの指示を受け付ける領域に割り当てられ、前記外部サーバーに所定の処理を実行させるためのサーバー制御コマンドと、前記受信されたネットワークアドレスで特定される前記内部画面を表示する部分表示領域と、を含む統合画面であって、前記部分表示領域に前記内部画面を表示するために、前記受信されたネットワークアドレスを含む送信リクエストを送信するコマンドを記述した統合画面を生成するステップと、
    前記ブラウジング手段に前記スキャン指示画面を送信した後、前記ブラウジング手段から次画面の送信を要求する送信リクエストを受信することに応じて、前記統合画面を返信するステップと、を前記外部サーバーに実行させる、アプリ連携方法。
JP2011155445A 2011-07-14 2011-07-14 アプリ連携システムおよびアプリ連携方法 Expired - Fee Related JP5500128B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2011155445A JP5500128B2 (ja) 2011-07-14 2011-07-14 アプリ連携システムおよびアプリ連携方法
US13/541,201 US9578198B2 (en) 2011-07-14 2012-07-03 Application cooperation system including server and image processing apparatus, and application cooperation method
CN201210239444.1A CN102883089B (zh) 2011-07-14 2012-07-11 应用协作系统及应用协作方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011155445A JP5500128B2 (ja) 2011-07-14 2011-07-14 アプリ連携システムおよびアプリ連携方法

Publications (2)

Publication Number Publication Date
JP2013021630A JP2013021630A (ja) 2013-01-31
JP5500128B2 true JP5500128B2 (ja) 2014-05-21

Family

ID=47484217

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011155445A Expired - Fee Related JP5500128B2 (ja) 2011-07-14 2011-07-14 アプリ連携システムおよびアプリ連携方法

Country Status (3)

Country Link
US (1) US9578198B2 (ja)
JP (1) JP5500128B2 (ja)
CN (1) CN102883089B (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6155899B2 (ja) * 2012-07-12 2017-07-05 株式会社リコー 情報処理システム、情報処理装置、機器、情報処理方法、及びプログラム
JP6061882B2 (ja) * 2014-02-26 2017-01-18 京セラドキュメントソリューションズ株式会社 画像形成装置及び画像形成装置のアプリケーション画面表示方法
US9544473B2 (en) * 2014-10-20 2017-01-10 Ricoh Company, Ltd. Information processing system and information processing method
JP6492711B2 (ja) * 2015-02-04 2019-04-03 富士ゼロックス株式会社 中継装置、操作画面提供装置及びプログラム
CN105989075A (zh) * 2015-02-10 2016-10-05 深圳中兴网信科技有限公司 一种浏览器显示图像的方法、装置和系统
US20160255169A1 (en) * 2015-02-27 2016-09-01 Futurewei Technologies, Inc. Method and system for smart object eviction for proxy cache
JP6418123B2 (ja) * 2015-10-07 2018-11-07 セイコーエプソン株式会社 情報処理装置、テープ印刷装置および情報処理装置の表示制御方法
JP6720795B2 (ja) * 2016-09-16 2020-07-08 株式会社リコー 機器、情報処理装置、情報処理システム、情報処理方法、及びプログラム
JP7143701B2 (ja) * 2018-09-20 2022-09-29 富士フイルムビジネスイノベーション株式会社 画像処理システムおよびプログラム
JP2023069494A (ja) 2021-11-05 2023-05-18 コニカミノルタ株式会社 画像処理装置、連携処理実行方法および連携処理実行プログラム

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6873841B1 (en) * 1999-12-16 2005-03-29 Koninklijke Philips Electronics N.V. Shared address-data service for personal CE equipment
JP2004320277A (ja) * 2003-04-15 2004-11-11 Sony Corp プリント用端末、プリントシステム、記憶媒体及びプログラム
JP4566679B2 (ja) 2003-11-13 2010-10-20 キヤノン株式会社 画像形成装置および制御方法およびプログラム
JP2006237705A (ja) 2005-02-22 2006-09-07 Canon Inc 文書閲覧印刷システム
JP4115474B2 (ja) 2005-08-26 2008-07-09 キヤノン株式会社 画像形成装置及び画像形成装置の制御方法、画像形成システム、プログラム及び記憶媒体
JP2007122656A (ja) 2005-10-31 2007-05-17 Toshiba Corp 印刷データ処理装置
JP4302710B2 (ja) 2006-04-11 2009-07-29 シャープ株式会社 画像処理装置制御システム
JP4455640B2 (ja) 2007-10-09 2010-04-21 キヤノン株式会社 画像形成装置、画像形成装置の制御方法、画像形成システム、プログラム及び記憶媒体
US20090268229A1 (en) * 2008-04-23 2009-10-29 Tanna Marie Richardson Multifunction Peripheral Browser Control for Application Integration
JP4569685B2 (ja) * 2008-08-13 2010-10-27 コニカミノルタビジネステクノロジーズ株式会社 画像形成装置、アドレス記憶方法、およびアドレス記憶プログラム
JP5528018B2 (ja) * 2009-06-23 2014-06-25 キヤノン株式会社 画像処理装置、画像処理装置の制御方法、及びプログラム
JP5489555B2 (ja) * 2009-06-25 2014-05-14 キヤノン株式会社 情報処理装置、情報処理装置の制御方法、及びプログラム
JP4890605B2 (ja) 2009-12-08 2012-03-07 シャープ株式会社 複合機、複合機制御システム、プログラムおよび記録媒体
JP5451372B2 (ja) * 2009-12-28 2014-03-26 キヤノン株式会社 情報処理システム、情報処理方法、及びプログラム

Also Published As

Publication number Publication date
US20130019160A1 (en) 2013-01-17
CN102883089A (zh) 2013-01-16
CN102883089B (zh) 2015-09-30
US9578198B2 (en) 2017-02-21
JP2013021630A (ja) 2013-01-31

Similar Documents

Publication Publication Date Title
JP5500128B2 (ja) アプリ連携システムおよびアプリ連携方法
JP4890605B2 (ja) 複合機、複合機制御システム、プログラムおよび記録媒体
JP5195861B2 (ja) 情報処理システム
JP5573860B2 (ja) 画像形成システム、画像形成装置およびプログラム
JP2011124721A (ja) 複合機、プログラムおよび記録媒体
JP5541403B2 (ja) サービス処理システム
JP4329825B2 (ja) 情報処理装置、代行処理実行方法および代行処理実行プログラム
JP5062007B2 (ja) 画像形成装置、表示制御方法および表示制御プログラム
JP5163720B2 (ja) 情報処理装置、ログ記録方法およびログ記録プログラム
JP2004289500A (ja) 画像処理装置、画像処理方法及びプログラム
EP3873078B1 (en) Device, process execution system, process execution method, and carrier means
JP2008113440A (ja) 画像処理装置および方法
JP4420125B1 (ja) 画像処理システム、画像処理装置、画像処理方法および画像処理プログラム
JP2009044478A (ja) 画像処理装置、ヘルプ文書生成方法およびヘルプ文書生成プログラム
JP5299068B2 (ja) Webサーバ、画像形成装置、プレゼンテーション支援システム、制御方法及びコンピュータプログラム
JP4957421B2 (ja) 情報処理装置、情報処理プログラムおよび情報処理方法
JP2012058853A (ja) アプリケーション共有システム
JP5585603B2 (ja) 画像処理装置、画像処理方法および画像処理プログラム
JP5248643B2 (ja) 複合機、複合機制御システム、複合機の制御方法、プログラムおよびその記録媒体
JP6801258B2 (ja) 情報処理装置、動作更新方法および動作更新プログラム
JP7422471B2 (ja) 情報処理装置、情報処理装置の制御方法、及びプログラム
JP7380072B2 (ja) 表示システム
JP5083136B2 (ja) 画像形成システム、制御装置、その制御装置で実行されるドライバプログラムおよびプリント制御方法
JP6992557B2 (ja) 画像形成装置及びプログラム
JP5298963B2 (ja) 情報処理装置、設定方法および設定プログラム

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20130417

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130619

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131031

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131203

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140121

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: 20140212

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140225

R150 Certificate of patent or registration of utility model

Ref document number: 5500128

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees