JP2014092996A - 情報処理装置、その制御方法、及びプログラム - Google Patents

情報処理装置、その制御方法、及びプログラム Download PDF

Info

Publication number
JP2014092996A
JP2014092996A JP2012243850A JP2012243850A JP2014092996A JP 2014092996 A JP2014092996 A JP 2014092996A JP 2012243850 A JP2012243850 A JP 2012243850A JP 2012243850 A JP2012243850 A JP 2012243850A JP 2014092996 A JP2014092996 A JP 2014092996A
Authority
JP
Japan
Prior art keywords
screen
web browser
key
operation unit
information processing
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
Application number
JP2012243850A
Other languages
English (en)
Inventor
Kosuke Nakajima
康輔 中島
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.)
Canon Inc
Original Assignee
Canon 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 Canon Inc filed Critical Canon Inc
Priority to JP2012243850A priority Critical patent/JP2014092996A/ja
Priority to RU2013148952A priority patent/RU2611962C2/ru
Priority to GB1319422.0A priority patent/GB2508981B/en
Priority to US14/071,256 priority patent/US9244640B2/en
Publication of JP2014092996A publication Critical patent/JP2014092996A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • 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/00352Input means
    • H04N1/00384Key input means, e.g. buttons or keypads
    • H04N1/00387Multiple functions per key
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1236Connection management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1204Improving or facilitating administration, e.g. print management resulting in reduced user or operator actions, e.g. presetting, automatic actions, using hardware token storing data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1253Configuration of print job parameters, e.g. using UI at the client
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1296Printer job scheduling or printer resource handling
    • 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/00413Display of information to the user, e.g. menus using menus, i.e. presenting the user with a plurality of selectable options
    • 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/00962Input arrangements for operating instructions or parameters, e.g. updating internal software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1297Printer code translation, conversion, emulation, compression; Configuration of printer parameters
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • 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/0074Arrangements for the control of a still picture apparatus by the connected apparatus
    • H04N2201/0075Arrangements for the control of a still picture apparatus by the connected apparatus by a user operated remote control device, e.g. receiving instructions from a user via a computer terminal or mobile telephone handset
    • 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

Abstract

【課題】Webアプリケーションにおいて、ハードウェアキーとソフトウェアキーとの両方を使用可能なネイティブアプリケーションと同様の操作性を実現する仕組みを提供する。
【解決手段】本情報処理装置は、Webアプリケーションの画面情報であって、複数の処理が定義されたスクリプトを含む前記画面情報をサーバから取得し、取得した画面情報に従って操作部に画面を表示し、取得した画面情報に含まれるスクリプトを実行して、操作部に設けられた所定のハードウェアキーの制御を登録し、画面情報に従ってサーバが提供するアプリケーションの画面を操作部に表示している間に、所定のハードウェアキーが押下されると、登録した制御を実行する。また、所定のハードウェアキーの制御は、操作部に表示した画面に含まれるソフトウェアキーに関連付けて登録される。
【選択図】図8

Description

本発明は、サーバとネットワークを介して接続され、サーバにより提供される操作画面を表示するブラウザを備える情報処理装置、その制御方法、及びプログラムに関するものである。
PCなどの情報処理装置がネットワーク上のWebサーバに接続され、Webサーバにより提供される操作画面を、情報処理装置が備えるWebブラウザ上に表示することが知られている。この場合、まず情報処理装置のWebブラウザが、Webサーバに対して操作画面を要求(リクエスト)する。そして、Webサーバ上のWebアプリケーションが情報処理装置からの要求に応えて、Webブラウザに操作画面を表示させるためのHTMLデータを情報処理装置に応答(レスポンス)する。情報処理装置のWebブラウザは、受信したHTMLデータを解析し、HTMLデータの記述に基づいた操作画面を表示する。更に、Webブラウザに表示された操作画面を介してユーザが指示を入力すると、入力された指示をWebブラウザがWebサーバに対して通知する。そして、この通知を受けたWebサーバ上のWebアプリケーションは、入力された指示に従って処理を実行する。
最近ではスキャナやプリンタを備えたMFP(Multi Function Peripheral)の中にも、上述したようなWebブラウザを備えているものがある。例えば、特許文献1には、MFPが備える各機能を利用するための操作画面を、Webサーバが提供することが提案されている。即ち、MFPのユーザは、Webブラウザ上に表示された操作画面を介して、MFPに対する指示を入力する。そして、入力された指示は、MFPのWebブラウザによってWebサーバに通知される。通知を受けたWebサーバは、ユーザから入力された指示の内容に従って、MFPに対して各種処理の実行を依頼する。そして、この依頼を受けたMFPは、依頼された処理を実行する。これにより、MFPを操作するための全メニューデータをMFP内で保持しておく必要がなくなり、またメニューデータの変更もWebサーバ上で容易に行うことができるようになる。
また、特許文献2には、MFPに搭載されたハードウェアキー(スタートキー)の入力をWebブラウザ上に表示された操作画面より受け付けて、MFPに対する読み込みや出力などの処理を実現している。これにより、Webアプリケーションであっても通常のMFPと同じ操作性を提供することが可能になる。
特開2006−127503号公報 特開2011−130123号公報
しかしながら、上記従来技術には以下に記載する問題がある。例えば上記特許文献2の技術を採用したとしても、Webアプリケーションは、MFPに予め組み込まれているアプリケーション(以下では、ネイティブアプリケーションと称する。)で使用可能なハードウェアキー(スタートキー)とソフトウェアキーの関連付けを制御できない。そのため、Webアプリケーションの操作画面の中に複数のソフトウェアキーが含まれる場合、ユーザに対して通常のネイティブアプリケーションと同じ操作性を提供することが困難であった。
本発明は、上述の問題に鑑みて行われたものであり、Webアプリケーションにおいて、ハードウェアキーとソフトウェアキーとの両方を使用可能なネイティブアプリケーションと同様の操作性を実現する仕組みを提供することを目的とする。
本発明は、サーバが提供するアプリケーションを実行する情報処理装置であって、前記アプリケーションの画面情報であって、複数の処理が定義されたスクリプトを含む前記画面情報を前記サーバから取得する取得手段と、前記取得手段によって取得した前記画面情報に従って操作部に画面を表示する表示制御手段と、前記取得手段によって取得した前記画面情報に含まれる前記スクリプトを実行して、前記操作部に設けられた所定のハードウェアキーの制御を登録する登録手段と、前記画面情報に従って前記サーバが提供するアプリケーションの画面を前記操作部に表示している間に、前記所定のハードウェアキーが押下されると、前記登録手段によって登録した制御を実行する実行手段とを備え、前記登録手段は、前記操作部に表示した画面に含まれるソフトウェアキーに関連付けて前記所定のハードウェアキーの制御を登録することを特徴とする。
本発明は、Webアプリケーションにおいて、ハードウェアキーとソフトウェアキーとの両方を使用可能なネイティブアプリケーションと同様の操作性を実現する仕組みを提供できる。
MFP101とサーバ102とを含む情報処理システムの全体構成を示す図。 MFP101のハードウェア構成を示すブロック図。 操作部219の外観構成を示す図である。 サーバ102のハードウェア構成を示すブロック図。 MFP101のソフトウェア構成を示すブロック図。 サーバ102のソフトウェア構成を示すブロック図。 MFP101の操作部219に表示される画面の遷移を示す図。 情報処理システムで実行される処理のシーケンスを示す図。 スキャン設定画面701のHTMLデータの一例を示す図。 スキャン要求メッセージの一例を示す図。 SOAP要求メッセージの一例を示す図。 Webブラウザ500が実行するスキャン準備完了処理の手順を示すフローチャート。 Webブラウザ500がスタートキー303の入力を受け付けたときに実行する処理の手順を示すフローチャート。 Webブラウザ500がWebブラウザ500とその他の画面間で画面遷移したときに実行する処理の手順を示すフローチャート。 第2の実施形態に係るMFP101のソフトウェア構成を示すブロック図。 第2の実施形態に係る情報処理システムで実行される処理のシーケンスを示す図。 第2の実施形態に係るスキャン設定画面701のHTMLデータの一例を示す図。
以下、本発明を実施するための形態について図面を用いて説明する。なお、以下の実施形態は特許請求の範囲に係る発明を限定するものでなく、また実施形態で説明されている特徴の組み合わせの全てが発明の解決手段に必須のものとは限らない。
<第1の実施形態>
<情報処理システムの構成>
以下では、図1乃至図14を参照して、本発明の第1の実施形態について説明する。まず、図1を参照して、情報処理システムの全体構成について説明する。図1に示すように、LAN110には、MFP101と、サーバ102とが互いに通信可能に接続されている。なお、本実施形態では、情報処理システムに上記2つの装置が含まれることを前提として説明するが、本発明はこれに限定されず、複数の他のMFPや、複数の他のサーバを含んでもよい。MFP101は、Webブラウザ機能を有し、サーバ102が提供するWebアプリケーションを実行する。即ち、MFP101のWebブラウザは、サーバ102から提供される画面情報に従ってMFP101の操作部にWebアプリケーションの画面を表示する。なお、本実施形態では、情報処理装置として、MFP101を一例として説明する。本発明に適用可能な情報処理装置として、他の画像形成装置や、画像読取装置等が適用されてもよい。
ここで、Webアプリケーションとは、サーバ102が提供するアプリケーションを示す。一方、MFP101が予めインストールしているアプリケーションをネイティブアプリケーションと称する。本実施形態では、Webアプリケーションの操作性を、できるだけネイティブアプリケーションの操作性に近づけるための仕組みを提案する。
<MFPのハードウェア構成>
次に、図2を参照して、MFP101のハードウェア構成について説明する。MFP101は、制御部210、操作部219、プリンタ220、及びスキャナ221を備える。また、制御部210は、CPU211、ROM212、RAM213、HDD214、操作部I/F215、プリンタI/F216、スキャナI/F217、及びネットワークI/F218を備える。制御部210は、MFP101全体の動作を制御する。
CPU211は、ROM212に記憶された制御プログラムを読み出して読取制御や送信制御などの各種制御を行う。RAM213は、CPU211の主メモリ、ワークエリア等の一時記憶領域として用いられる。HDD214は、画像データや各種プログラムを記憶する。操作部I/F215は、操作部219と制御部210とを接続する。操作部219には、タッチパネル機能を有する液晶表示部やハードウェアキーなどが備えられている。また、MFP101には後述するWebブラウザ機能が備えられており、MFP101のWebブラウザは、サーバ102から受信したHTMLデータを解析し、受信したHTMLデータの記述に基づく操作画面を操作部219の液晶表示部に表示する。
プリンタI/F216は、プリンタ220と制御部210とを接続する。プリンタ220で印刷すべき画像データはプリンタI/F216を介して制御部210から転送され、プリンタ220において記録媒体上に印刷される。スキャナI/F217は、スキャナ221と制御部210とを接続する。スキャナ221は、原稿上の画像を読み取って画像データを生成し、スキャナI/F217を介して制御部210に入力する。ネットワークI/F218は、制御部210(MFP101)をLAN110に接続する。ネットワークI/F218は、LAN110上の外部装置(例えば、サーバ102)に画像データや情報を送信したり、LAN110上の外部装置から各種情報を受信したりする。
<操作部の構成>
次に、図3を参照して、操作部219の構成について説明する。図3に示すように、操作部219は、LCD上にタッチパネルシート302が貼られている液晶表示部301を有する。この液晶表示部301には、後述するネイティブ機能モジュールやWebブラウザが表示する操作画面及びソフトウェアキーが表示されるとともに、表示されているキーが押されると、押された位置を示す位置情報をCPU211に伝える。
また、操作部219には、スタートキー303、ストップキー304、リセットキー305、ガイドキー306、トップメニューキー307、及び数値キー308の各種ハードウェアキーが設けられている。スタートキー303は、画像処理装置の処理の開始を指示するためのキーであり、スタートキー303の中央部には、LED表示部309が設けられている。LED表示部309は、LED点灯状態によってスタートキー303が使用可能な状態にあるか否かを表す。ストップキー304は、稼働中の動作を止めるためのキーである。リセットキー305は設定を初期化するときに用いられるキーである。ガイドキー306は、MFP101の使用方法を表示するためのキーである。トップメニューキー307はMFP101の機能を選択させるためのトップメニュー画面を表示するためのキーである。数値キー308は数値を入力するためのキーである。本実施形態に係るMFP101では、Webアプリケーションにおいても、上記ハードウェアキーを使用することを可能とする。
<サーバのハードウェア構成>
次に、図4を参照して、サーバ102のハードウェア構成について説明する。サーバ102は、制御部410を備える。制御部410は、CPU411、ROM412、RAM413、HDD414、及びネットワークI/F415を備える。制御部410は、サーバ102全体の動作を制御する。
CPU411は、ROM412に記憶された制御プログラムを読み出して各種制御処理を実行する。RAM413は、CPU411の主メモリ、ワークエリア等の一時記憶領域として用いられる。HDD414は、画像データや各種プログラムを記憶する。ネットワークI/F415は、制御部410(サーバ102)をLAN110に接続する。ネットワークI/F415は、LAN110上の他の装置との間で各種情報を送受信する。
<MFPのソフトウェア構成>
次に、図5を参照して、MFP101のソフトウェア構成について説明する。図5に示す各機能部は、MFP101が有しているCPU211が制御プログラムを実行することにより実現される。MFP101は、Webブラウザ500、HTTPサーバ510、デバイス制御部520、及びジョブ制御部530を含む。
Webブラウザ500は、サーバ102に対して、HTTPのプロトコルに従ってリクエスト(以下、HTTPリクエスト)を送信するとともに、そのリクエストに対するレスポンス(以下、HTTPレスポンス)を受信する。そして、受信したHTTPレスポンスを解析して、操作画面を表示したり、受信したレスポンスに含まれるJavaScript(登録商標)(スクリプト)を処理したりする。スクリプトには、処理を実行するための複数の命令が含まれる。Webブラウザ500は、JavaScriptを処理することにより、操作画面を書き換えたり、操作部219の各種ハードウェアキーからの入力を受け付けたり、デバイス制御部520へLED表示部309の点灯又は消灯を指示したりすることができる。なお、
HTTPサーバ510は、Webブラウザ500からのHTTPリクエストを受信して、指定されたWebサービスへHTTPリクエストを割り当てる。HTTPサーバ510が公開するWebサービスには、ジョブ制御部530がある。
デバイス制御部520は、MFP101の各種デバイスを制御する。例えば、デバイス制御部520は、操作部I/F215を介して操作部219のLED表示部309の点灯及び消灯を制御する。デバイス制御部520は、Webブラウザ500からLED表示部309の点灯又は消灯指示を受け付けると、LED表示部309の点灯又は消灯する。なお、Webブラウザ500は、LED表示部309を点灯しているときはスタートキー303を使用可能に制御し、消灯しているときはスタートキー303を使用不可に制御する。
ジョブ制御部530は、スキャナ221による読取処理、プリンタ220による印刷処理、ネットワークI/F218を介した送信処理を含むジョブを実行する。ジョブ制御部530は、後述するWebアプリケーション610からSOAPリクエストを受信すると、SOAPリクエストを解釈してジョブを実行する。そして、ジョブ制御部530は、ジョブ実行結果を含むSOAPレスポンスをWebアプリケーション610へ送信する。また、ジョブ制御部530は、ユーザからのジョブ制御操作を受け付けるための操作画面を操作部219へ表示する。なお、本実施形態では、MFP101で実行されるジョブの一例として、原稿を読み取ってファイルを生成し、サーバ102にファイルを送信するジョブについて説明するが、他にもプリンタ220による印刷処理などを実行するジョブにも適用することができる。
<サーバのソフトウェア構成>
次に、図6を参照して、サーバ102のソフトウェア構成について説明する。図6に示す各機能部は、サーバ102が有しているCPU411が制御プログラムを実行することにより実現される。サーバ102は、HTTPサーバ600、Webアプリケーション610、及びデータベース620を含む。
HTTPサーバ600は、Webブラウザ500からのHTTPリクエストを受信すると、URLで指定されたWebアプリケーション610へ、そのHTTPリクエストを割り当てる。Webアプリケーション610は、Webブラウザ500からのHTTPリクエストに応じて、Webブラウザ500で表示すべきHTMLデータを生成する。そして、Webアプリケーション610は、生成したHTMLデータをHTTPレスポンスとしてWebブラウザ500へ送信する。また、Webアプリケーション610は、ジョブ制御部530から送信されるファイルアップロード要求を処理して、要求されたデータをデータベース620に登録する。
<画面遷移>
次に、図7を参照して、本情報処理システムにおいて、MFP101のWebブラウザ500がスキャン処理を開始する際の画面遷移の一例について説明する。図7に含まれる画面の内、原稿読込画面703を除く各画面は、Webブラウザ500が、Webアプリケーション610が応答するHTMLデータを処理した結果、操作部219へ表示する画面である。一方、原稿読込画面703は、ジョブ制御部530が、ジョブ制御操作を受け付けるために操作部219へ表示する画面である。つまり、原稿読込画面703は、ネイティブアプリケーションが提供する画面であり、原稿読込画面703以外の画面は、Webアプリケーションが提供する画面である。
メニュー画面700は、MFP101の機能を利用するに当たりどの機能を選択するかを選択する画面である。この画面において機能を選択すると、選択した機能に対応した画面に遷移する。例えば、Webブラウザ500は、表示制御手段として機能し、スキャン機能を選択するためのスキャンボタンが押下されると、続いてスキャン設定画面701を操作部219へ表示する。
スキャン設定画面701は、スキャン設定を入力するための画面である。スキャン設定画面701は、読み込みカラーを選択するためのラジオボタン、画像ファイルのフォーマットを選択するためのラジオボタン、スキャン開始を指示するためのスキャン開始ボタン及びメニュー画面700へ戻るためのキャンセルボタンを含む。読み込みカラーを選択するためのラジオボタンには、“カラー”、“グレースケール”、及び“白黒”の選択肢が含まれる。また、画像ファイルのフォーマットを選択するためのラジオボタンには、“PDF”、及び“XPS”の選択肢が含まれる。スキャン設定画面701において、スキャン開始ボタンは選択不可状態になっている。選択不可状態の場合は、図7に示すように、グレーアウトで表示される。その後、Webブラウザ500は、読み込みカラー及びフォーマットが選択されると、スキャン開始画面702を操作部219へ表示する。一方、Webブラウザ500は、キャンセルボタンが押下されると、メニュー画面700を操作部219へ表示する。
スキャン開始画面702は、スキャンの開始を指示するための画面である。スキャン開始画面702は、スキャン設定画面701と同様に、読み込みカラーを選択するためのラジオボタン、画像ファイルのフォーマットを選択するためのラジオボタン、スキャン開始を指示するためのスキャン開始ボタン及びメニュー画面700へ戻るためのキャンセルボタンを含む。スキャン開始画面702において、スキャン開始ボタンは選択可能状態になっている。スキャン開始ボタンが押下されると、ジョブ制御部530が原稿読込画面703を操作部219へ表示する。一方、キャンセルボタンが押下されると、Webブラウザ500はメニュー画面700を操作部219へ表示する。
原稿読込画面703は、原稿読取操作を指示するための画面である。原稿読込画面703は、読込終了ボタン及び中止ボタンを含む。読込終了ボタン又は中止ボタンが押下されると、ジョブ制御部530は、Webブラウザ500の操作画面を操作部219へ表示する。この結果、Webブラウザ500は処理中画面704を操作部219へ表示する。
処理中画面704は、ジョブ処理中を表す画面である。ジョブ制御部530がスキャン画像のWebアプリケーション610への送信を完了すると、Webブラウザ500は送信完了画面705を操作部219へ表示する。一方、ジョブ制御部530がスキャン処理を中止すると、Webブラウザ500は処理中止画面706を表示する。
送信完了画面705は、スキャン画像をWebアプリケーション610へ送信完了したことを表す画面である。送信完了画面705は、スキャン設定画面701へ遷移するための戻るボタンを含む。Webブラウザ500は、戻るボタンが押下されると、スキャン設定画面701を表示する。処理中止画面706は、スキャン処理を中止したことを表す画面である。処理中画面704は、スキャン設定画面701へ遷移するための戻るボタンを含む。Webブラウザ500は、戻るボタンが押下されると、スキャン設定画面701を操作部219へ表示する。
<処理シーケンス>
次に、図8を参照して、情報処理システムにより実行される処理シーケンスについて説明する。図8に示す処理シーケンスは、Webブラウザ500にメニュー画面700のURLが入力されてページを開くよう指示されると、S801の処理を開始する。なお、以下で説明する処理は、MFP101のCPU211、又は、サーバ102のCPU411が、ROM212、412から制御プログラムをRAM213、413に読み出して実行することによって実現される。具体的には、CPU211は、Webブラウザ500、HTTPサーバ510、デバイス制御部520、及びジョブ制御部530の処理を制御する。一方、CPU411は、Webアプリケーション610、及びHTTPサーバ600の処理を制御する。
S801において、Webブラウザ500は、入力されたURLに従って、メニュー画面700の取得を要求するHTTPリクエストをHTTPサーバ600へ送信する。続いて、S802において、HTTPサーバ600は、Webアプリケーション610へメニュー画面700の画面情報の取得を要求する。S803において、Webアプリケーション610は、HTTPサーバ600へメニュー画面700の画面情報を送信することによって応答する。S804において、HTTPサーバ600は、受信したメニュー画面700の画面情報を送信するためのHTTPレスポンスをWebブラウザ500へ送信する。
Webブラウザ500は、受信したメニュー画面HTMLを解釈してメニュー画面700を表示する。Webブラウザ500は、メニュー画面700に含まれるスキャンボタンが押下されるとS805に処理を進める。S805において、Webブラウザ500は、スキャン設定画面701の取得を要求するHTTPリクエストをHTTPサーバ600へ送信する。S806において、HTTPサーバ600は、Webアプリケーション610へスキャン設定画面701の画面情報の取得を要求する。ステップ807において、Webアプリケーション610は、HTTPサーバ600へスキャン設定画面701の画面情報を送信することによって応答する。S808において、HTTPサーバ600は、スキャン設定画面701の画面情報を送信するためのHTTPレスポンスをWebブラウザ500へ送信する。
図9は、Webアプリケーション610が送信するスキャン設定画面701の画面情報を示すHTMLデータ(以下、スキャン設定画面HTML900と称する。)の一例を示す。スキャン設定画面HTML900は、head部にデバイス制御JavaScript(スクリプト)910、及びスキャン設定確認部920を含み、body部にスキャン設定フォーム930を含む。
デバイス制御JavaScript910には、スキャン準備完了を指示するメソッドである“Scan.ready”関数が定義されている。このような関数には、処理を実行するための命令が定義されている。具体的には、Webブラウザ500は、“Scan.ready”関数を呼び出すと、スタートキー303の入力を受け付けて、更にデバイス制御部520へLED表示部309の点灯を指示する。“Scan.ready”関数の内部処理の詳細については、図12乃至図14に記載のフローチャートを用いて後述する。また、デバイス制御JavaScript910は外部ファイル参照されている。したがって、Webブラウザ500は、スキャン設定画面HTML900を受信すると、デバイス制御JavaScript910をHTTPサーバ600より取得する。
スキャン設定確認部920には、スキャン設定画面701において読み込みカラー及びフォーマットが選択されている場合に、Webブラウザ500がスキャン開始画面702を表示してLEDを点灯するための処理が記述されている。具体的には、読み込みカラー又はフォーマットが選択されると、Webブラウザ500は“selectColor”関数又は“selectFormat”関数を呼び出す。更にWebブラウザ500は“selectColor”関数又は“selectFormat”関数から“enable”関数を呼び出す。“enable”関数では、読み込みカラー及びフォーマットの両方が設定されている場合、Webブラウザ500がスキャン設定画面701のメッセージを“スキャンできます”に設定し、かつスキャン開始ボタンの“disabled”属性を“false”に設定する。この結果、スキャン設定画面701はスキャン開始画面702へ変更される。更に、Webブラウザ500は、“Scan.ready”関数を呼び出す。“Scan.ready”関数の第1引数“start”はスタートキー303と関連付けるボタンIDを表し、第2引数“true”はLED表示部309を点灯することを表す。Webブラウザ500は、“Scan.ready”関数を処理した結果、スタートキー303の入力を受け付けるとスタートボタンを押下するように関連付け、かつLED表示部309を点灯するようデバイス制御部520へ指示する。
スキャン設定フォーム930には、読み込みカラー及びフォーマットを選択してWebアプリケーション610へスキャン開始を要求するためのフォームが記述されている。具体的には、読み込みカラーを選択するためのラジオボタン“color”、フォーマットを選択するためのラジオボタン“format”、スキャン開始を指示するsubmitボタン“start”及びキャンセルを指示するsubmitボタン“cancel”が記述されている。Webブラウザ500は、ラジオボタン“color”が選択されると、スキャン設定確認部920で定義されている“selectColor”関数を呼び出す。また、Webブラウザ500は、ラジオボタン“format”が選択されると、スキャン設定確認部920で定義されている“selectFormat”関数を呼び出す。そしてWebブラウザ500は、submitボタン“start”又は“cancel”が押下されると、ラジオボタン及びsubmitボタンの値をWebアプリケーション610へ送信する。
図8のフローチャートの説明に戻る。S809において、Webブラウザ500は、デバイス制御JavaScript910の取得を要求するHTTPリクエストをHTTPサーバ600へ送信する。S810において、HTTPサーバ600は、デバイス制御JavaScript910の取得をWebアプリケーション610へ要求する。S811において、Webアプリケーション610は、デバイス制御JavaScript910をHTTPサーバ600へ送信することによって応答する。S812において、HTTPサーバ510は、デバイス制御JavaScript910を含むHTTPレスポンスをWebブラウザ500へ送信する。
Webブラウザ500は、スキャン設定画面701のカラー読み込み設定及びフォーマット設定が選択されると、S813の処理を実行する。S813において、Webブラウザ500は、スキャン設定確認部920に記述されたJavaScriptを処理して、スキャン開始画面702を操作部219に表示する。S814において、Webブラウザ500は、デバイス制御JavaScript910に定義された“Scan.ready”関数を処理した結果、デバイス制御部520へLED表示部309の点灯を指示する。デバイス制御部520は、スタートキー303のLED表示部309を点灯させる。
その後、Webブラウザ500は、スタートキー303の入力を受け付けると、S815の処理を実行する。S815において、Webブラウザ500は、スキャン開始画面702のスキャン設定フォーム930のsubmitボタン“start”が押下されたものとしてフォームをsubmitする。さらに、S816において、Webブラウザ500は、スキャン設定フォーム930をsubmitした結果、スキャン開始を要求するHTTPリクエストをHTTPサーバ600へ送信する。図10は、スキャン開始を要求するHTTPリクエストの一例を示す。図10の場合、読み込みカラーに“fullcolor”、生成する画像ファイルのフォーマットに“pdf”を指定してスキャンを開始することを表している。
次に、S817において、HTTPサーバ600は、Webアプリケーション610へスキャン開始を要求する。S818において、Webアプリケーション610は、スキャン開始を要求するSOAPリクエストをMFP101のHTTPサーバ510へ送信する。図11は、S818でWebアプリケーション610が送信するSOAPリクエストの一例を示す。具体的には、原稿をスキャンしPDFファイルに変換後、Webアプリケーション610へ送信することを指示している。スキャン設定には解像度300×300及びフルカラーを指定し、文書設定にはPDFフォーマットを指定し、送信設定にはホスト名“xxx.yyy.zzz”及びパス名“upload/test”を指定している。
次に、S819において、HTTPサーバ510は、ジョブ制御部530へスキャンジョブの生成を要求する。ジョブ制御部530は、SOAPリクエストを解釈すると、スキャンジョブを生成する。S820において、ジョブ制御部530は、原稿読込画面703を操作部219へ表示する。S821において、ジョブ制御部530は、HTTPサーバ600へジョブ生成成功を表すSOAPレスポンスを送信することにより応答する。S822において、HTTPサーバ510は、ジョブ生成成功を表すSOAPレスポンスをWebアプリケーション610へ送信する。
S823において、Webアプリケーション610は、HTTPサーバ600へ処理中画面704の画面情報を送信する。続いて、S824において、HTTPサーバ600は、処理中画面704の画面情報を含むHTTPレスポンスをWebブラウザ500へ送信する。このとき、S820の処理によって操作部219には原稿読込画面703が表示されており、処理中画面704は表示されていない。
ジョブ制御部530は、原稿読込画面703の読込終了ボタンが押下されると原稿の読み込みを終了し、S825の処理を実行する。S825において、ジョブ制御部530がLED表示部309に消灯を指示する。さらに、S826において、ジョブ制御部530は、Webブラウザ500を操作部219に表示する。この結果、操作部219には、S824で取得した情報に基づいて処理中画面704が表示される。
S827において、Webブラウザ500は、ジョブ結果を取得するためのHTTPリクエストをHTTPサーバ600へ送信する。具体的には、処理中画面HTMLには、Webアプリケーション610へHTTPリクエストを繰り返し送信する処理がJavaScriptで記述されている。Webブラウザ500は、JavaScriptを処理することによって、ジョブ完了応答を受信するまで繰り返しジョブ結果取得要求を送信する。
S828において、HTTPサーバ600は、ジョブ結果の取得をWebアプリケーション610へ要求する。S829において、Webアプリケーション610は、ジョブがまだ完了していなければ、ジョブ処理中をHTTPサーバ600へ応答する。S830において、HTTPサーバ600は、ジョブ処理中を示すHTTPレスポンスをWebブラウザ500へ送信する。Webブラウザ500は、S827の処理を、ジョブ完了応答を受信するまで繰り返し実行する。したがって、S830では、処理中を示す応答を受信しているため、その後も定期的にS827の処理を繰り返し実行する。
ジョブ制御部530は、原稿の読み込みを終了して画像ファイルを生成すると、S831の処理を開始する。S831において、ジョブ制御部530は、画像ファイルを含むHTTPリクエストをHTTPサーバ600へ送信する。S832において、HTTPサーバ600は、スキャン画像をWebアプリケーション610へ送信する。S833において、Webアプリケーション610は、スキャン画像送信成功をHTTPサーバ600へ送信することによって応答する。S834において、HTTPサーバ600は、スキャン画像送信成功を示すHTTPレスポンスをジョブ制御部530へ送信する。
また、ジョブ制御部530は、スキャン画像を送信すると、S835の処理を実行する。S835において、ジョブ制御部530は、ジョブ完了を通知するためのHTTPリクエストをHTTPサーバ600へ送信する。S836において、HTTPサーバ600は、ジョブ完了をWebアプリケーション610へ通知する。S837において、Webアプリケーション610は、ジョブ完了通知成功をHTTPサーバ600へ送信することによって応答する。S838において、HTTPサーバ600は、ジョブ完了通知成功を応答するためのHTTPレスポンスをジョブ制御部530へ送信する。
S839乃至S842の処理は、S827からS830の処理と同様に、Webブラウザ500が処理中画面HTMLに記述されたJavaScriptを処理することによって実行される。S839において、Webブラウザ500は、ジョブ結果を取得するためのHTTPリクエストをHTTPサーバ600へ送信する。S840において、HTTPサーバ600は、ジョブ結果の取得をWebアプリケーション610へ要求する。S841において、Webアプリケーション610は、HTTPサーバ600へジョブ完了を送信することによって応答する。S842において、HTTPサーバ600は、Webブラウザ500へジョブ完了を応答するHTTPレスポンスを送信する。
Webブラウザ500は、ジョブ完了を受信すると、S843の処理を実行する。S843において、Webブラウザ500は、処理中画面HTMLに記述されたJavaScriptを処理することによって、送信完了画面705を表示する。
<処理手順>
続いて、図12乃至図14に示すフローチャートを参照して、本実施形態におけるWebブラウザ500の処理手順について説明する。以下で説明する処理は、CPU211がROM212に記憶された制御プログラムをRAM213に読み出して実行することにより実現される。図12は、Webブラウザ500がスキャン準備完了を指示する“Scan.ready”関数を実行する処理手順を示す。具体的には、スキャン開始画面702において読み込みカラー及びフォーマットが指定されると、S1201の処理を開始する。
S1201において、Webブラウザ500は、LED表示部309を点灯するか否かを判定する。具体的には、“Scan.ready”関数の第2引数で“true”が指定されていればLED表示部309を点灯すると判定し、“false”が指定されていればLED表示部309を消灯すると判定する。LED表示部309を点灯すると判定した場合はS1202の処理へ進み、消灯すると判定した場合S1212の処理へ進む。
S1202において、Webブラウザ500は、スキャン設定画面701の中から指定されたボタンを探索する。具体的には、“Scan.ready”関数の第1引数で指定された“start”をID属性に持つ要素、即ち、スタートボタンを探索する。続いて、S1203において、Webブラウザ500は、スタートボタンにclickイベントリスナを登録する。この結果、Webブラウザ500は、スキャン設定画面701においてスタートボタンが押下されると、clickイベントを発行し、スタートボタンへ通知する。そして、Webブラウザ500は、登録されたリスナ処理を実行する。clickイベントリスナの処理の内容については図13を用いて後述する。その後、Webブラウザ500は、S1204の処理へ進む。
S1204において、Webブラウザ500は、スタートボタンにkeyイベントリスナを登録する。この結果、Webブラウザ500は、スタートキー303の入力を受け付けると、keyイベントを発行しスタートボタンへ通知する。そして、Webブラウザ500は登録されたリスナ処理を実行する。keyイベントリスナの処理の内容については図13を用いて後述する。その後、Webブラウザ500は、S1205の処理へ進む。
S1205において、Webブラウザ500は、ウィンドウにfocusイベントリスナを登録する。この結果、Webブラウザ500は、Webブラウザ500が操作部219へ表示されると、focusイベントを発行しウィンドウへ通知する。そして、Webブラウザ500は登録されたリスナ処理を実行する。focusイベントリスナの処理の内容については図14を用いて後述する。その後、Webブラウザ500は、S1206の処理へ進む。
S1206において、Webブラウザ500は、ウィンドウにblurイベントリスナを登録する。Webブラウザ500は、Webブラウザ500以外の画面が操作部219へ表示されると、blurイベントを発行しウィンドウへ通知する。そして、Webブラウザ500は登録されたリスナ処理を実行する。blurイベントリスナの処理の内容については図14を用いて後述する。その後、Webブラウザ500は、S1207の処理へ進む。
S1207において、Webブラウザ500は、ウィンドウにunloadイベントリスナを登録する。Webブラウザ500は、異なるURLのページを開くときやページを更新するときにドキュメントをアンロードする。Webブラウザ500は、ドキュメントをアンロードするときに、unloadイベントを発行しウィンドウへ通知する。そして、Webブラウザ500は登録されたリスナ処理を実行する。unloadイベントリスナの処理の内容については図13を用いて後述する。その後、Webブラウザ500は、S1208の処理へ進む。
S1208において、Webブラウザ500は、デバイス制御部520にLED表示部309の点灯を指示し、処理をS1209に進める。一方、S1201で消灯と判定した場合、S1212において、Webブラウザ500は、デバイス制御部520にLED表示部309の消灯を指示し、処理をS1209に進める。
S1209において、Webブラウザ500は、RAM213又はHDD214に、LED表示部309の点灯状態を記憶する。具体的には、S1208でLED表示部309を点灯した場合は、LEDを点灯していることを記憶する。一方、S1209でLED表示部309を消灯した場合は、LEDを消灯していることを記憶する。Webブラウザ500は、S1209の処理を終了するとスキャン準備完了処理を終了する。
次に、図13及び図14のフローチャート1300乃至1320及び1400乃至1410を参照して、Webブラウザ500の処理手順について説明する。各フローチャートは、S1203乃至S1207で登録した処理を示す。以下で説明する処理は、CPU211がROM212に記憶された制御プログラムをRAM213に読み出して実行することにより実現される。まず、フローチャート1300を参照して、Webブラウザ500がスタートキー303の入力を受け付けたときの処理手順について説明する。Webブラウザ500は、keyイベントが通知されると、S1301の処理を開始する。
S1301において、Webブラウザ500は、キーコードがスタートキーか否かを判定する。キーコードがスタートキーであればS1302の処理へ進み、スタートキー以外のハードウェアキーであれば、処理を終了する。S1302において、Webブラウザ500は、スタートキーに関連付けられたスタートボタンにclickイベントを発行して、処理を終了する。このように、スタートキーの入力を受け付けると、JavaScriptの記述によって予め指定されたボタン(ソフトウェアキー)を押下したことと同様の処理を実行することができる。つまり、本実施形態によれば、スクリプトによって、所定のハードウェアキーが押下された場合の処理として、Webアプリケーションが提供するWebブラウザ500の画面に表示されたソフトウェアキーに関連付けられた処理が登録される。例えば、本実施形態では、スタートキー303は、スキャン開始画面702のスキャンボタンに関連付けられる。このように制御することで、本実施形態に係る情報処理装置は、ネイティブアプリケーションと同等の操作性をWebアプリケーションで実現する。
次に、フローチャート1310を参照して、Webブラウザ500における、スタートボタンが押下されたときの処理手順について説明する。Webブラウザ500は、スタートボタンへclickイベントが通知されると、S1303の処理を開始する。
S1303において、Webブラウザ500は、スタートボタンが押下されたことを記憶して、処理を終了する。具体的には、スキャン開始画面702でスタートキーが入力されたりスタートボタンが押下されたりした場合は、Webブラウザ500はS1303の処理を実行する。一方、スキャン開始画面702でキャンセルボタンが押下された場合は、Webブラウザ500は処理を終了する。
次に、フローチャート1320を参照して、Webブラウザ500がドキュメントをアンロードする(スキャン開始画面702を閉じる)ときの処理手順について説明する。Webブラウザ500は、ウィンドウへunloadイベントが通知されると、S1304の処理を開始する。
S1304において、Webブラウザ500は、スタートボタンが押下されたか否かを判定する。具体的には、S1303の処理が実行されている場合は、スタートボタンが押下されたと判定し、処理をS1306に進める。一方、S1303の処理が実行されていない場合は、スタートボタンが押下されていないと判定し、処理をS1305に進める。S1305において、Webブラウザ500は、デバイス制御部520にLED表示部309の消灯を指示する。例えば、スキャン開始画面702のキャンセルボタンが押下されて処理中画面704へ遷移する場合、LED表示部309が消灯し、処理をS1306へ進める。
S1306において、Webブラウザ500は、S1203乃至S1207で登録したイベントリスナを解除して処理を終了する。このように、Webブラウザ500は、スタートキー303が入力されたりスタートボタンが押下されたりした場合は、LED表示部309を点灯したまま別ページへ遷移する。一方、Webブラウザ500は、キャンセルボタンが押下されたり、URL入力欄にURLが入力されたり、更新が指示されたりした場合は、LED表示部309を消灯して別ページへ遷移する。点灯したLED表示部309は、原稿読込画面703で読込終了ボタン又は中止ボタンが押下されると、ジョブ制御部530が消灯する。
次に、フローチャート1400を参照して、操作部219へWebブラウザ500以外の画面を表示したときのWebブラウザ500の処理手順について説明する。具体的には、操作部219へWebブラウザ500が表示されているときに、ガイドキー306やトップメニューキー307が押下されて、操作部219へガイド画面やトップメニュー画面を表示されたときのWebブラウザ500の処理手順を示す。Webブラウザ500は、操作部219にWebブラウザ500以外の画面が表示されると、blurイベントを発行してウィンドウへ通知する。Webブラウザ500は、ウィンドウへblurイベントが通知されると、S1401の処理を開始する。
S1401において、Webブラウザ500は、LED点灯状態を取得する。LED点灯状態は上記S1209においてRAM213又はHDD214に記憶されている。Webブラウザ500は、S1401の処理を終了するとS1402の処理へ進む。S1402において、Webブラウザ500は、LED表示部309が点灯しているか否かを判定する。具体的には、S1401において取得したLED点灯状態が点灯を示せば、LED表示部309は点灯していると判定する。一方、LED点灯状態が消灯を示すか、又は、情報が記憶されていない場合は、LED表示部309が消灯していると判定する。Webブラウザ500は、LED表示部309が点灯していると判定した場合、S1403の処理へ進み、LED表示部309が消灯していると判定した場合は処理を終了する。
S1403において、Webブラウザ500は、LED表示部309の消灯をデバイス制御部520へ指示し、処理を終了する。このように、Webブラウザ500がスキャン開始画面702を表示してLED表示部309が点灯している状態で、ガイド画面やトップメニューへ遷移すると、Webブラウザはスタートキー303のLED表示部309を消灯する。このように、本実施形態によれば、Webブラウザ500の画面が操作部219においてアクティブ画面でない場合、即ち、他の画面が上面に表示されている場合は、スタートキー303による処理の実行開始指示を受け付けないように制御する。
次に、フローチャート1410を参照して、操作部219へWebブラウザ500を表示したときのWebブラウザの処理手順について説明する。具体的には、操作部219にガイド画面が表示されているときにガイドキー306が押下されて、操作部219へWebブラウザ500が再表示されたときのWebブラウザ500の処理手順を示す。Webブラウザ500は、操作部219にWebブラウザ500が表示されると、focusイベントを発行してウィンドウへ通知する。Webブラウザ500は、ウィンドウへイベントがfocus通知されると、S1404の処理を開始する。
S1404において、Webブラウザ500は、LED点灯状態を取得する。LED点灯状態は上記S1209においてRAM213又はHDD214に記憶されている。続いて、S1405において、Webブラウザ500は、LED表示部309は点灯すべきか否かを判定する。具体的には、S1404において取得したLED点灯状態が点灯を示せば、LED表示部309が既に点灯しているため点灯する必要なしと判定する。一方、LED点灯状態が消灯を示すか、又は、記憶されていない場合は、LED表示部309が点灯していないため点灯すべきと判定する。
Webブラウザ500は、LED表示部309を点灯すべきと判定した場合、S1406の処理へ進む。一方、LED表示部309を点灯する必要なしと判定した場合、処理を終了する。S1406において、Webブラウザ500は、LED表示部309の点灯をデバイス制御部520へ指示し、処理を終了する。このように、Webブラウザ500がガイド画面を表示している状態でスキャン開始画面702へ遷移すると、即ち、再びスキャン開始画面702が最上面に表示されると、Webブラウザ500はLED表示部309を再点灯する。
このように本発明によれば、Webブラウザ500がJavaScriptの記述に従ってハードウェアキーやLEDを制御することによって、通常のMFP機能と同等の操作性でジョブ制御を実施することができる。
<第2の実施形態>
以下では、図15乃至図17を参照して、本発明に係る第2の実施形態について説明する。上記第1の実施形態との差異は、Webブラウザ500がスキャン設定画面HTML900に記述されたJavaScriptを処理することによってジョブ制御を実現する点である。なお、以下では、第1の実施形態との差異について主に説明する。
<MFPのソフトウェア構成>
まず、図15を参照して、本実施形態におけるMFP101のソフトウェア構成について説明する。第1の実施形態におけるMFP101のソフトウェア構成との差異は、MFP101がHTTPサーバ510を備えていない点である。第2の実施形態では、Webブラウザ500がデバイス制御部520及びジョブ制御部530を直接制御する構成である。デバイス制御部520及びジョブ制御部530は、HTTPサーバ510より割り当てられたHTTPリクエストを受信してHTTPレスポンスを応答することはしない。
<処理シーケンス>
次に、図16を参照して、本実施形態における情報処理システムにおいて実行される処理シーケンスをについて説明する。第1の実施形態との差異は、S1601に示す処理である。図8に示したように、第1の実施形態のS818乃至S822では、Webアプリケーション610が、HTTPサーバ510へSOAPリクエストを送信することによって、ジョブ制御部530へスキャンジョブ生成を要求した。
一方、本実施形態では、S1601において、Webブラウザ500が、スキャン設定画面HTML1700に記述されたJavaScriptを処理することによって、ジョブ制御部530へスキャンジョブ生成を要求する。
<スキャン設定画面HTML>
次に、図17を参照して、本実施形態におけるスキャン設定画面HTML1700の一例について説明する。第1の実施形態との差異は、デバイス・ジョブ制御JavaScript1710及びスキャンジョブ実行部1730である。
第1の実施形態のデバイス制御JavaScript910には、デバイス制御部520へLED表示部309の点灯及び消灯を指示するためのスクリプトが定義されていた。一方、本実施形態のデバイス・ジョブ制御JavaScript1710には、デバイス制御部520へLED表示部309の点灯及び消灯を指示するスクリプトに加えて、ジョブ制御部530へジョブ実行を指示するためのスクリプトが定義されている。さらに、スキャンジョブ実行部1730には、スキャン設定フォーム1740に設定された読み込みカラー及び生成フォーマットをスキャン設定として、ジョブ制御部530へジョブ生成を要求するJavaScriptが記述されている。
<その他の実施例>
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(又はCPUやMPU等)がプログラムを読み出して実行する処理である。

Claims (10)

  1. サーバが提供するアプリケーションを実行する情報処理装置であって、
    前記アプリケーションの画面情報であって、複数の処理が定義されたスクリプトを含む前記画面情報を前記サーバから取得する取得手段と、
    前記取得手段によって取得した前記画面情報に従って操作部に画面を表示する表示制御手段と、
    前記取得手段によって取得した前記画面情報に含まれる前記スクリプトを実行して、前記操作部に設けられた所定のハードウェアキーの制御を登録する登録手段と、
    前記画面情報に従って前記サーバが提供するアプリケーションの画面を前記操作部に表示している間に、前記所定のハードウェアキーが押下されると、前記登録手段によって登録した制御を実行する実行手段と
    を備え、
    前記登録手段は、前記操作部に表示した画面に含まれるソフトウェアキーに関連付けて前記所定のハードウェアキーの制御を登録することを特徴とする情報処理装置。
  2. 前記登録手段は、
    前記表示制御手段によって前記操作部に表示されている前記アプリケーションの画面より上に他の画面が表示された場合に、該所定のハードウェアキーを使用不可に登録することを特徴とする請求項1に記載の情報処理装置。
  3. 前記登録手段は、
    前記表示制御手段によって前記操作部に表示されている前記アプリケーションの画面より上に他の画面が表示された状態から、再び該アプリケーションの画面が最上面に表示された場合に、該所定のハードウェアキーを使用可能に登録することを特徴とする請求項2に記載の情報処理装置。
  4. 前記登録手段は、
    前記表示制御手段によって前記操作部に表示されている前記アプリケーションの画面が閉じられる場合に、該所定のハードウェアキーを使用不可に登録することを特徴とする請求項1乃至3の何れか1項に記載の情報処理装置。
  5. 前記登録手段は、
    前記所定のハードウェアキーを使用可能に登録する際には、該所定のハードウェアキーに設けられたLED表示部を点灯させ、
    前記所定のハードウェアキーを使用不可に登録する際には、前記LED表示部を消灯させることを特徴とする請求項2乃至4の何れか1項に記載の情報処理装置。
  6. 前記所定のハードウェアキーの制御とは、該所定のハードウェアキーが押下された際に、関連付けられた前記ソフトウェアキーが押下されたときと同じ情報を前記サーバに通知する制御であることを特徴とする請求項1乃至5の何れか1項に記載の情報処理装置。
  7. 前記所定のハードウェアキーの制御とは、該所定のハードウェアキーが押下された際に、関連付けられた前記ソフトウェアキーが押下されたときと同じ情報を、前記アプリケーションを介して提供する前記情報処理装置の処理を実行する手段に通知する制御であることを特徴とする請求項1乃至5の何れか1項に記載の情報処理装置。
  8. 前記所定のハードウェアキーとは、スタートキーであり、
    前記アプリケーションは、前記スタートキーが押下されると、該アプリケーションを介して提供する前記情報処理装置の処理を開始させることを特徴とする請求項1乃至7の何れか1項に記載の情報処理装置。
  9. サーバが提供するアプリケーションを実行する情報処理装置の制御方法であって、
    取得手段が、前記アプリケーションの画面情報であって、複数の処理が定義されたスクリプトを含む前記画面情報を前記サーバから取得する取得ステップと、
    表示制御手段が、前記取得ステップにおいて取得した前記画面情報に従って操作部に画面を表示する表示制御ステップと、
    登録手段が、前記取得ステップにおいて取得した前記画面情報に含まれる前記スクリプトを実行して、前記操作部に設けられた所定のハードウェアキーの制御を登録する登録ステップと、
    実行手段が、前記画面情報に従って前記サーバが提供するアプリケーションの画面を前記操作部に表示している間に、前記所定のハードウェアキーが押下されると、前記登録ステップにおいて登録した制御を実行する実行ステップと
    を実行し、
    前記登録ステップは、前記操作部に表示した画面に含まれるソフトウェアキーに関連付けて前記所定のハードウェアキーの制御を登録することを特徴とする情報処理装置の制御方法。
  10. 請求項9に記載された情報処理装置の制御方法における各ステップを、コンピュータに実行させるためのプログラム。
JP2012243850A 2012-11-05 2012-11-05 情報処理装置、その制御方法、及びプログラム Pending JP2014092996A (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2012243850A JP2014092996A (ja) 2012-11-05 2012-11-05 情報処理装置、その制御方法、及びプログラム
RU2013148952A RU2611962C2 (ru) 2012-11-05 2013-11-01 Устройство обработки изображения, способ обработки изображения, вебсервер, способ управления им и носитель хранения данных
GB1319422.0A GB2508981B (en) 2012-11-05 2013-11-04 Image reading apparatus, image reading method, computer program and storage medium
US14/071,256 US9244640B2 (en) 2012-11-05 2013-11-04 Image processing apparatus, image processing method, web server, control method for the same, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012243850A JP2014092996A (ja) 2012-11-05 2012-11-05 情報処理装置、その制御方法、及びプログラム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2017116071A Division JP6383463B2 (ja) 2017-06-13 2017-06-13 情報処理装置、その制御方法、及びプログラム

Publications (1)

Publication Number Publication Date
JP2014092996A true JP2014092996A (ja) 2014-05-19

Family

ID=49767602

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012243850A Pending JP2014092996A (ja) 2012-11-05 2012-11-05 情報処理装置、その制御方法、及びプログラム

Country Status (4)

Country Link
US (1) US9244640B2 (ja)
JP (1) JP2014092996A (ja)
GB (1) GB2508981B (ja)
RU (1) RU2611962C2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016014921A (ja) * 2014-06-30 2016-01-28 キヤノン株式会社 情報処理装置、情報処理方法、およびプログラム
JP2018136852A (ja) * 2017-02-23 2018-08-30 株式会社リコー アプリケーション提供システム、及びユーザ管理方法
JP2019140601A (ja) * 2018-02-14 2019-08-22 コニカミノルタ株式会社 画像処理装置 および プログラム

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6464712B2 (ja) * 2013-12-19 2019-02-06 株式会社リコー 情報処理装置および情報処理方法
JP2016143212A (ja) * 2015-02-02 2016-08-08 キヤノン株式会社 情報処理装置、情報処理装置の制御方法、及び制御プログラム
JP6424745B2 (ja) * 2015-06-09 2018-11-21 株式会社リコー 画像形成装置、画像形成方法およびプログラム
CN106339153B (zh) * 2015-07-06 2020-12-15 普源精电科技股份有限公司 具有显示切换键的测试测量仪器及其显示方法
CN105224099A (zh) * 2015-09-17 2016-01-06 广州市久邦数码科技有限公司 一种基于输入法的搜索方法及其系统
US20180198930A1 (en) * 2017-01-10 2018-07-12 Ricoh Company, Ltd. Input/output device and information processing system
JP7242351B2 (ja) * 2019-03-11 2023-03-20 キヤノン株式会社 起動時にソフトウェアの改ざん検知処理を省略することが可能な電子機器
JP7435227B2 (ja) * 2020-05-12 2024-02-21 セイコーエプソン株式会社 印刷システム、印刷装置、サーバー、及び、印刷方法
CN113254888B (zh) * 2021-06-11 2021-11-09 统信软件技术有限公司 获取硬件信息的方法、授权控制系统及计算设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006020272A (ja) * 2004-05-31 2006-01-19 Sharp Corp 携帯通信端末
JP2009296409A (ja) * 2008-06-06 2009-12-17 Sharp Corp 画像処理装置
JP2011130123A (ja) * 2009-12-16 2011-06-30 Canon Inc 画像処理装置
JP2011239336A (ja) * 2010-05-13 2011-11-24 Canon Inc 情報処理装置、情報処理装置の制御方法、及び制御プログラム

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8018610B2 (en) 2004-10-08 2011-09-13 Sharp Laboratories Of America, Inc. Methods and systems for imaging device remote application interaction
JP4666027B2 (ja) * 2008-08-29 2011-04-06 コニカミノルタビジネステクノロジーズ株式会社 画像処理装置およびサーバ
JP2010109967A (ja) * 2008-10-01 2010-05-13 Canon Inc 画像処理装置、方法、及び、プログラム
JP4849122B2 (ja) * 2008-12-16 2012-01-11 コニカミノルタビジネステクノロジーズ株式会社 画像処理装置およびサーバ装置
JP5460150B2 (ja) 2009-07-06 2014-04-02 キヤノン株式会社 情報処理装置、情報処理装置の制御方法、及び、プログラム
JP4987950B2 (ja) * 2009-12-09 2012-08-01 シャープ株式会社 複合機、プログラムおよび記録媒体
JP5591040B2 (ja) * 2009-12-11 2014-09-17 キヤノン株式会社 画像処理装置、画像処理装置の制御方法、及びプログラム
JP5929399B2 (ja) * 2012-03-26 2016-06-08 富士ゼロックス株式会社 情報提供装置、情報提供システム及びプログラム
JP6110616B2 (ja) 2012-08-29 2017-04-05 キヤノン株式会社 情報処理装置、情報処理方法、及びプログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006020272A (ja) * 2004-05-31 2006-01-19 Sharp Corp 携帯通信端末
JP2009296409A (ja) * 2008-06-06 2009-12-17 Sharp Corp 画像処理装置
JP2011130123A (ja) * 2009-12-16 2011-06-30 Canon Inc 画像処理装置
JP2011239336A (ja) * 2010-05-13 2011-11-24 Canon Inc 情報処理装置、情報処理装置の制御方法、及び制御プログラム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016014921A (ja) * 2014-06-30 2016-01-28 キヤノン株式会社 情報処理装置、情報処理方法、およびプログラム
JP2018136852A (ja) * 2017-02-23 2018-08-30 株式会社リコー アプリケーション提供システム、及びユーザ管理方法
JP2019140601A (ja) * 2018-02-14 2019-08-22 コニカミノルタ株式会社 画像処理装置 および プログラム

Also Published As

Publication number Publication date
US9244640B2 (en) 2016-01-26
GB2508981A (en) 2014-06-18
GB2508981B (en) 2017-07-12
RU2611962C2 (ru) 2017-03-01
US20140126021A1 (en) 2014-05-08
RU2013148952A (ru) 2015-05-10
GB201319422D0 (en) 2013-12-18

Similar Documents

Publication Publication Date Title
JP2014092996A (ja) 情報処理装置、その制御方法、及びプログラム
JP5591040B2 (ja) 画像処理装置、画像処理装置の制御方法、及びプログラム
CN110262725B (zh) 信息处理装置、信息处理装置的控制方法和存储介质
JP5346059B2 (ja) 多機能画像形成装置
US10607123B2 (en) Remotely-operated apparatus remotely operated by external terminal using a browser use mode or a transmitted image use mode, remote operation system including the same, and recording medium
JP5436187B2 (ja) 画像処理装置及びその制御方法とプログラム
US9160873B2 (en) Information processing system controlling image processing apparatus to display screen information, control method therefor, external control apparatus, information provision apparatus, image processing apparatus, and storage medium storing program
JP2007323366A (ja) 複合機、複合機の制御方法、制御装置、制御装置の制御方法、複合機制御システム、制御プログラム、およびコンピュータ読み取り可能な記録媒体
US9087206B2 (en) Information processing apparatus, system, method, and storage medium for executing control operation and indicating completion
JP5701025B2 (ja) 画像処理装置、画像処理システム、画像処理装置の制御方法、及びプログラム
JP5669562B2 (ja) 画像処理装置、サーバ装置、それらの制御方法、及びプログラム
US20110231774A1 (en) Image processing apparatus, data processing method therefor, and recording medium
JP2012038094A (ja) 画像形成装置、情報処理方法及びプログラム
US8879079B2 (en) Information processing apparatus that displays web page, method of controlling information processing apparatus, and storage medium
JP2009239362A (ja) 情報処理装置、画像読取装置及びプログラム
US20110279845A1 (en) Information processing apparatus, and control method and storage medium therefor
JP6383463B2 (ja) 情報処理装置、その制御方法、及びプログラム
JP2011128732A (ja) 情報処理装置と当該装置の制御方法及びプログラム
JP5853999B2 (ja) 画像形成システム、画像形成装置、遠隔操作装置およびプログラム
JP7240246B2 (ja) 画像形成装置、その制御方法と画像形成システム、およびプログラム
JP2018181375A (ja) 情報処理装置、その制御方法、及びプログラム
JP2013005341A (ja) 画像送信装置、情報処理装置、画像送信方法および画像送信プログラム
JP6213297B2 (ja) 画像形成システム、画像形成装置、遠隔操作装置およびプログラム
JP4830713B2 (ja) 指示情報処理装置およびその制御方法
JP2013105357A (ja) サーバ装置、情報処理装置、サーバ装置の制御方法及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20151021

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160829

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160909

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161101

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20170313