(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-09-05
(45)【発行日】2022-09-13
(54)【発明の名称】電子機器、情報処理システム及び終了操作抑制方法
(51)【国際特許分類】
H04N 1/00 20060101AFI20220906BHJP
G06F 3/12 20060101ALI20220906BHJP
B41J 29/38 20060101ALI20220906BHJP
【FI】
H04N1/00 350
H04N1/00 127Z
G06F3/12 387
G06F3/12 303
G06F3/12 359
B41J29/38
(21)【出願番号】P 2018185998
(22)【出願日】2018-09-28
【審査請求日】2021-07-12
(73)【特許権者】
【識別番号】000006747
【氏名又は名称】株式会社リコー
(72)【発明者】
【氏名】井上 洋之
【審査官】野口 俊明
(56)【参考文献】
【文献】特開2011-142608(JP,A)
【文献】特開2015-222872(JP,A)
【文献】特開2017-151550(JP,A)
【文献】国際公開第2014/106882(WO,A1)
【文献】特開2016-177796(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 1/00
G06F 3/12
B41J 29/38
(57)【特許請求の範囲】
【請求項1】
Webブラウザで動作するWebアプリケーションがライブラリを利用してジョブ実行
部にジョブを実行させる電子機器であって、
前記ライブラリを利用して前記ジョブ実行部にジョブの開始を指示するジョブ開始指示
手段と、
前記ジョブ実行部によるジョブの実行状態を通知するジョブ実行状態通知手段と、
開始を指示したジョブが終了するまでの間、前記Webブラウザに表示されている前記
Webアプリケーションの終了操作を抑制する終了操作抑制手段とを有し、
前記終了操作抑制手段は、前記Webアプリケーションから前記終了操作の抑制を指示
された前記ライブラリが行う前記終了操作を抑制する指示に応じて、前記Webブラウザ
に表示されている前記Webアプリケーションの終了操作を抑制すること
を特徴とする電子機器。
【請求項2】
前記終了操作抑制手段は、前記Webアプリケーションのメニュー表示を行わないこと
で前記Webアプリケーションの終了操作を抑制すること
を特徴とする請求項
1記載の電子機器。
【請求項3】
前記終了操作抑制手段は、前記Webアプリケーションのメニュー表示をユーザからの
操作を受け付けない状態で行うことにより、前記Webアプリケーションの終了操作を抑
制すること
を特徴とする請求項
1記載の電子機器。
【請求項4】
前記終了操作抑制手段は、前記Webアプリケーションのメニュー表示の操作をユーザ
から受け付けるボタンを非表示とすることで前記Webアプリケーションの終了操作を抑
制すること
を特徴とする請求項
1記載の電子機器。
【請求項5】
前記終了操作抑制手段は、前記Webアプリケーションのパラメータ設定画面の表示の
操作をユーザから受け付けてから、前記開始を指示したジョブが終了するまでの間、前記
Webアプリケーションの終了操作を抑制すること
を特徴とする請求項
1記載の電子機器。
【請求項6】
前記終了操作抑制手段は、前記開始を指示したジョブのキャンセルが選択されると、前
記Webアプリケーションの終了操作の抑制を解除すること
を特徴とする請求項
1記載の電子機器。
【請求項7】
ジョブ実行部を有する電子機器と、Webブラウザで動作するWebアプリケーション
がライブラリを利用して前記電子機器のジョブ実行部にジョブを実行させる情報処理端末
と、を有する情報処理システムであって、
前記ライブラリを利用して前記ジョブ実行部にジョブの開始を指示するジョブ開始指示
手段と、
前記ジョブ実行部によるジョブの実行状態を通知するジョブ実行状態通知手段と、
開始を指示したジョブが終了するまでの間、前記Webブラウザに表示されている前記
Webアプリケーションの終了操作を抑制する終了操作抑制手段と、
を有する情報処理システム。
【請求項8】
Webブラウザで動作するWebアプリケーションがライブラリを利用してジョブ実行
部にジョブを実行させる電子機器の終了操作抑制方法であって、
前記ライブラリを利用して前記ジョブ実行部にジョブの開始を指示するジョブ開始指示
ステップと、
前記ジョブ実行部によるジョブの実行状態を通知するジョブ実行状態通知ステップと、
開始を指示したジョブが終了するまでの間、前記Webブラウザに表示されている前記
Webアプリケーションの終了操作を抑制する終了操作抑制ステップと、
前記終了操作抑制ステップは、前記Webアプリケーションから前記終了操作の抑制を指
示された前記ライブラリが行う前記終了操作を抑制する指示に応じて、前記Webブラウ
ザに表示されている前記Webアプリケーションの終了操作を抑制することを含む
ことを特徴とする終了操作抑制方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、電子機器、情報処理システム及び終了操作抑制方法に関する。
【背景技術】
【0002】
近年、スキャナ機能やプリンタ機能等を備えた複合機(MFP:Multifunction Peripheral)はWebブラウザを搭載しているものがある。Webブラウザを搭載する複合機には、Webブラウザで動作するWebアプリケーションから複合機の機能を利用するものがあった。
【0003】
例えばMFPの提供する機能にアクセス制限を実施する際、MFP上で実装されている機能だけではなく、Webアプリケーションにより実現されている機能に対してもユーザ権限に応じてアクセス制限を行う情報処理装置が従来から知られている。この情報処理装置はユーザによるWebアプリケーションの実行が許可されていると判定された場合、Webアプリケーションの実行を指示するための画面を表示部に表示していた(例えば特許文献1参照)。
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、Webアプリケーションが複合機の備える機能を利用してジョブを実行させる場合は、ジョブの実行中にWebアプリケーションが終了されると、実行中のジョブが継続できなくなるという問題があった。
【0005】
本発明の実施の形態は、上記の点に鑑みてなされたもので、Webアプリケーションが実行させたジョブが終了するまでの間、Webアプリケーションの終了操作を抑制する電子機器を提供することを目的とする。
【課題を解決するための手段】
【0006】
かかる目的を達成するため、本発明の実施の形態は、Webブラウザで動作するWebアプリケーションがライブラリを利用してジョブ実行部にジョブを実行させる電子機器であって、前記ライブラリを利用して前記ジョブ実行部にジョブの開始を指示するジョブ開始指示手段と、前記ジョブ実行部によるジョブの実行状態を通知するジョブ実行状態通知手段と、開始を指示したジョブが終了するまでの間、前記Webブラウザに表示されている前記Webアプリケーションの終了操作を抑制する終了操作抑制手段と、を有し、
前記終了操作抑制手段は、前記Webアプリケーションから前記終了操作の抑制を指示された前記ライブラリが行う前記終了操作を抑制する指示に応じて、前記Webブラウザに表示されている前記Webアプリケーションの終了操作を抑制することすることを特徴とする。
【発明の効果】
【0007】
本発明の実施の形態によれば、Webアプリケーションが実行させたジョブが終了するまでの間、Webアプリケーションの終了操作を抑制できる。
【図面の簡単な説明】
【0008】
【
図1】本実施形態に係る情報処理システムの一例の構成図である。
【
図2】本実施形態に係る画像処理装置の一例のハードウェア構成図である。
【
図3】本実施形態に係る画像処理装置の操作装置及び本体装置に含まれるソフトウェア群の階層構造の一例を示す図である。
【
図4】本実施形態に係る画像処理装置の一例のソフトウェア構成図である。
【
図5】本実施形態に係る情報処理システムの処理手順を表した一例のシーケンス図である。
【
図6】Webアプリケーション画面の一例のイメージ図である。
【
図7】本実施形態に係る情報処理システムの処理手順を表した一例のシーケンス図である。
【
図8】本実施形態に係る情報処理システムのメニューの表示/非表示処理の手順を表した一例のシーケンス図である。
【
図9】メニューが表示されたWebアプリケーション画面の一例のイメージ図である。
【
図10A】本実施形態に係る情報処理システムの処理手順を表した一例のシーケンス図(1/2)である。
【
図10B】本実施形態に係る情報処理システムの処理手順を表した一例のシーケンス図(2/2)である。
【
図11】ジョブエラー画面が表示されたWebアプリケーション画面の一例のイメージ図である。
【
図12】本実施形態に係る情報処理システムの処理手順を表した一例のシーケンス図である。
【
図13】ジョブのパラメータ設定画面が表示されたWebアプリケーション画面の一例のイメージ図である。
【
図14】ジョブのパラメータ設定を行うジョブのパラメータ設定画面の一例のイメージ図である。
【
図15】ジョブのパラメータ設定を行うジョブのパラメータ設定画面の一例のイメージ図である。
【
図16】本実施形態に係る画像処理装置の他の例のソフトウェア構成図である。
【
図17】本実施形態に係る情報処理システムの処理手順を表した他の例のシーケンス図である。
【
図18】本実施形態に係る情報処理システムの他の例の構成図である。
【発明を実施するための形態】
【0009】
以下、本発明の実施形態について、図面を参照しながら説明する。
【0010】
[第一の実施形態]
<全体構成例>
まず、本実施形態に係る情報処理システム1の全体構成について、
図1を参照しながら説明する。
図1は、本実施形態に係る情報処理システムの一例の構成図である。
【0011】
図1に示すように、本実施形態に係る情報処理システム1は、1以上の画像処理装置10と、1以上のWebサーバ20とが含まれ、例えばインターネット等のネットワークNを介して通信可能に接続されている。
【0012】
画像処理装置10は、Webブラウザ300が搭載された電子機器の一例である。画像処理装置10のユーザは、Webブラウザ300を用いて、Webサーバ20が提供するWebアプリケーションを利用できる。Webアプリケーションを利用することで、画像処理装置10のユーザは、例えば、所定のサーバ等からダウンロードした電子ファイルを印刷したり、スキャンにより生成した画像データを添付したメールを指定した宛先に送信したりすることができる。
【0013】
Webサーバ20は、ネットワークNを介して、Webアプリケーションを提供するコンピュータ又はコンピュータシステムである。Webサーバ20により提供されるWebアプリケーションは、画像処理装置10を製造する企業(製造元ベンダ)により開発及び提供される他、製造元ベンダとは異なるサードベンダにより開発及び提供される。
【0014】
Webアプリケーションは、Webサーバ20から提供されたWebコンテンツが、画像処理装置10に搭載されたWebブラウザ300上で解釈や実行等されることで実現される。Webコンテンツとは、例えば、HTML(HyperText Markup Language)やJavaScript(登録商標)、CSS(Cascading Style Sheets)、各種画像ファイル等が挙げられる。
【0015】
なお、Webアプリケーションは、上記の構成の他、Webアプリケーションそのものを画像処理装置10に送らずに、Webサーバ20上で動作させて、Webサーバ20から画像形成ジョブを実行するための実行指示情報(例えば画像処理装置10の各種機能を利用するAPI(Application Programming Interface)を呼び出すための情報)だけを画像処理装置10に送るシステム構成であっても良い。
【0016】
このように、Webサーバ20により提供されるWebアプリケーションは画像処理装置10の各種機能を利用したWebサービスを提供することができる。画像処理装置10の各種機能には、例えば、スキャン機能、プリント機能、コピー機能、FAX機能等の各種画像処理機能、認証機能、アドレス帳機能、メール送信機能等が挙げられる。
【0017】
なお、
図1に示す情報処理システム1の構成は一例である。例えば画像処理装置10は電子機器の一例であって、プロジェクタ、電子黒板、デジタルサイネージ、ヘッドアップディスプレイ、産業機械、製造装置、撮像装置、集音装置、医療機器、ネットワーク家電などであってもよい。電子黒板は、相互通信が可能な電子式の黒板機能を有する電子機器である。デジタルサイネージは出力機能を有する電子機器の一例である。
【0018】
また、電子機器はパーソナルコンピュータ、携帯電話、スマートフォン、タブレット端末、ゲーム機、PDA(Personal Digital Assistant)、デジタルカメラ、ウェアラブル端末などであってもよい。すなわち、電子機器はWebブラウザ300が搭載された各種電子機器であれば良い。
【0019】
<ハードウェア構成例>
次に、本実施形態に係る画像処理装置10のハードウェア構成について、
図2を参照しながら説明する。
図2は、本実施形態に係る画像処理装置の一例のハードウェア構成図である。
図2に示すように、本実施形態に係る画像処理装置10は、操作装置11と、本体装置12とを有している。
【0020】
操作装置11は、本体装置12に実行させる画像処理機能の選択、画像処理機能を実行させるための各種設定値(パラメータ)の入力、画像処理機能の実行を開始させるための実行指示の入力、表示画面の切り替え等、ユーザが各種操作を行う際に用いられる。本体装置12は、操作装置11におけるユーザの各種操作に応じて、画像処理機能の実行等の各種の処理を実行する。
【0021】
図2に示すように、画像処理装置10の操作装置11は、CPU(Central Processing Unit)111と、ROM(Read Only Memory)112と、RAM(Random Access Memory)113とを有している。また、操作装置11は、フラッシュメモリ114と、操作パネル115と、接続I/F116と、通信I/F117とを有している。これら各ハードウェアは、バス118を介して相互に接続されている。
【0022】
CPU111は、RAM113をワークエリアとしてROM112又はフラッシュメモリ114に記憶された各種プログラムを実行することで、操作装置11全体を制御する演算装置である。ROM112は、電源を切ってもデータを保持することができる不揮発性の半導体メモリ(記憶装置)である。RAM113は、プログラムやデータを一時保持する揮発性の半導体メモリ(記憶装置)である。
【0023】
フラッシュメモリ114は、不揮発性の記憶装置であり、CPU111が実行する各種プログラム(例えば、Webブラウザ300等)や各種データを記憶する。操作パネル115は、ユーザが各種操作を行う際に用いられる。また、操作パネル115は、ユーザに対して各種画面等を表示する。
【0024】
また、接続I/F116は、通信路13を介して本体装置12と通信するためのインタフェースである。接続I/F116には、例えばUSB(Universal Serial Bus)規格のインタフェースが用いられる。
【0025】
通信I/F117は、他の機器等と通信するためのインタフェースである。通信I/F117には、例えば、Wi-Fi規格の無線LAN(Local Area Network)等が用いられる。
【0026】
同様に、画像処理装置10の本体装置12は、CPU121と、ROM122と、RAM123とを有している。また、本体装置12は、HDD(Hard Disk Drive)124と、画像処理エンジン125と、接続I/F126と、通信I/F127とを有している。これら各ハードウェアは、バス128を介して相互に接続されている。
【0027】
CPU121は、RAM123をワークエリアとしてROM122又はHDD124に記憶された各種プログラムを実行することで、本体装置12全体を制御する演算装置である。ROM122は、電源を切ってもデータを保持することができる不揮発性の半導体メモリ(記憶装置)である。RAM123は、プログラムやデータを一時保持する揮発性の半導体メモリ(記憶装置)である。HDD124は、不揮発性の記憶装置であり、CPU121が実行する各種プログラム(例えば、本実施形態を実現するプログラム等)や各種データを記憶する。
【0028】
画像処理エンジン125は、プリント機能、スキャン機能、コピー機能、及びFAX機能等の各種の画像処理機能を実現するための画像処理を行うハードウェアである。画像処理エンジン125には、例えば、用紙等のシート材への印刷を行うプロッタ、原稿を光学的に読み取って画像データを生成するスキャナ、及びFAX通信を行うFAX通信装置等が含まれる。また、画像処理エンジン125には、例えば印刷済みのシート材を仕分けるフィニッシャや原稿を自動給送するADF(自動原稿給送装置)等が含まれてもよい。
【0029】
接続I/F126は通信路13を介して操作装置11と通信するためのインタフェースである。接続I/F126には、例えば、USB規格のインタフェースが用いられる。通信I/F127は、他の機器等と通信するためのインタフェースである。通信I/F127には、例えば、Wi-Fi規格の無線LAN等が用いられる。
【0030】
本実施形態に係る画像処理装置10は、
図2に示すハードウェア構成を有することにより、後述する各種処理を実現することができる。なお、
図2では、画像処理装置10が操作装置11を有している構成を一例として示したが、これに限られず、例えばタブレット端末、スマートフォン、携帯電話、PDA等の情報処理端末が画像処理装置10の操作装置として機能してもよい。
【0031】
すなわち、これらの情報処理端末は、操作装置11の通信I/F117又は本体装置12の通信I/F127を介して画像処理装置10と通信することにより、当該画像処理装置10を制御することができてもよい。なお、Webサーバ20のハードウェア構成については説明を省略するが、一般的なコンピュータシステムにより実現される。
【0032】
<画像処理装置10のソフトウェア群の階層構造>
次に、本実施形態に係る画像処理装置10の操作装置11及び本体装置12に含まれるソフトウェア群の階層構造について、
図3を参照しながら説明する。
図3は、本実施形態に係る画像処理装置10の操作装置11及び本体装置12に含まれるソフトウェア群の階層構造の一例を示す図である。
図3は、操作装置11に含まれるソフトウェア群の階層構造と、本体装置12に含まれるソフトウェア群の階層構造とを示している。
【0033】
まず、本体装置12に含まれるソフトウェア群(すなわち、本体装置12のROM122やHDD124に記憶されているプログラム群)の階層構造について説明する。
図3の本体装置12に含まれるソフトウェア群は、アプリケーション層221と、サービス層222と、OS層223とに大別することができる。
【0034】
アプリケーション層221に区分されるソフトウェアは、ハードウェア資源を動作させて画像処理機能を実現させるためのソフトウェアである。具体的にアプリケーション層221に区分されるソフトウェアは印刷アプリケーション、スキャンアプリケーション、コピーアプリケーション、及びFAXアプリケーション等が挙げられる。
【0035】
サービス層222に区分されるソフトウェアは、アプリケーション層221とOS層223との間を介在するソフトウェアである。当該ソフトウェアは、本体装置12が備えるハードウェア資源を、アプリケーション層221のソフトウェアが利用したり、本体装置12が備えるハードウェア資源の状態を通知したりするインタフェースとしての役割を果たす。
【0036】
具体的には、ハードウェア資源に対する実行要求(ジョブ実行部へのジョブの開始指示)を受け付けたり、受け付けた実行要求の調停を行ったりする。サービス層222が受け付ける実行要求には、画像処理エンジン125による画像処理の実行要求(スキャナによるスキャン実行要求やプロッタによる印刷実行要求等)が含まれる。
【0037】
なお、サービス層222に区分されるソフトウェアが果たす上記インタフェースとしての役割は、操作装置11のアプリケーション層211に対しても同様である。すなわち、操作装置11のアプリケーション層211に区分されるソフトウェアも、サービス層222にアクセスすることにより、本体装置12のハードウェア資源を動作させて、画像処理機能を実現させることができる。
【0038】
OS層223に区分されるソフトウェアは、基本ソフトウェア(OS:Operating System)と呼ばれるプログラムであり、本体装置12が有するハードウェア資源を制御する基本機能を提供する。OS層223に区分されるソフトウェアは、アプリケーション層221に区分されるソフトウェアからのハードウェア資源に対する実行要求を、サービス層222に区分されるソフトウェアを介して受け付けて、当該実行要求に応じた処理を実行する。
【0039】
次に、操作装置11に含まれるソフトウェア群(すなわち、操作装置11のROM112やフラッシュメモリ114に記憶されているプログラム群)の階層構造について説明する。本体装置12と同様、操作装置11に含まれるソフトウェア群も、アプリケーション層211と、サービス層212と、OS層213とに大別することができる。
【0040】
ただし、アプリケーション層211に区分されるソフトウェアが提供する機能やサービス層212が受け付け可能な実行要求の種類は、本体装置12とは異なる。操作装置11のアプリケーション層211に区分されるソフトウェアは、主として、各種操作や表示を行うためのユーザインタフェース機能を提供する。なお、Webブラウザ300もアプリケーション層211に区分されるソフトウェアである。
【0041】
また、本実施形態では、操作装置11と本体装置12とで、OSは独立して動作するものとする。また、操作装置11と本体装置12とが相互に通信可能であれば、OSが同じ種類である必要はない。例えば、操作装置11のOSにAndroid(登録商標)を用いる一方で、本体装置12のOSにLinux(登録商標)を用いることも可能である。
【0042】
このように、本実施形態に係る画像処理装置10は、操作装置11と本体装置12とが異なるOSにより制御される。このため、操作装置11と本体装置12との間の通信は一装置内のプロセス間通信ではなく、異なる情報処理装置間の通信として行われる。
【0043】
ただし、本実施形態に係る画像処理装置10は、操作装置11と本体装置12とで異なる種類のOSが動作している場合に限られず、操作装置11と本体装置12とで同一種類のOSが動作していても良い。また、本実施形態に係る画像処理装置10は、操作装置11と本体装置12とでOSが独立して動作している場合に限られず、操作装置11及び本体装置12上で一のOSが動作していても良い。
【0044】
<ソフトウェア構成例>
次に、本実施形態に係る画像処理装置10のソフトウェア構成について、
図4を参照しながら説明する。
図4は、本実施形態に係る画像処理装置の一例のソフトウェア構成図である。
【0045】
図4に示すように、本実施形態に係る画像処理装置10の操作装置11はブラウザ制御部310と、Webアプリケーション320とを有する。これら各部はWebブラウザ300がCPU111に実行させる処理により実現される。また、Webアプリケーション320は、Webサーバ20から提供されたWebコンテンツ(例えばJavaScript等)をWebブラウザ300上で実行させることにより実現される。また、操作装置11は記憶部410を有する。記憶部410は例えばフラッシュメモリ114やRAM113等を用いて実現可能である。
【0046】
本実施形態に係る画像処理装置10の本体装置12は、WebAPI510と、ジョブ実行状態通知部531と、ジョブ実行部530とを有する。これら各部は、本体装置12にインストールされた1以上のプログラムがCPU121に実行させる処理により実現される。
【0047】
Webアプリケーション320は、Webサーバ20から提供されたWebコンテンツがWebブラウザ300上で実行されることにより実現される。Webアプリケーション320には、JavaScriptライブラリ330が含まれる。
【0048】
JavaScriptライブラリ330は画像処理装置10の各種機能を利用するAPI集である。JavaScriptライブラリ330は例えば製造元ベンダが開発及び提供する。Webアプリケーション320はJavaScriptライブラリ330を利用して、画像処理装置10の各種機能を利用する。
【0049】
JavaScriptライブラリ330には、ジョブ開始指示部331及びメニューの表示/非表示指示部332が含まれる。ジョブ開始指示部331はWebAPI510を利用して本体装置12にジョブの開始を指示する。また、メニューの表示/非表示指示部332は、Webアプリケーション320のメニューの表示/非表示情報の記憶部410への記憶を指示する。
【0050】
ブラウザ制御部310は、Webコンテンツの解釈や表示等のWebブラウザが備える種々の機能を実現するための種々の処理を実行する。ブラウザ制御部310には、UI部311と、メニューの表示/非表示記憶要求部312と、本体要求部313とが含まれている。
【0051】
UI部311は、Webコンテンツに応じたWebページの表示を行う。また、UI部311は、Webページ対するユーザの各種操作(例えば、ボタンの押下操作等)を受け付ける。メニューの表示/非表示記憶要求部312は、Webアプリケーション320のメニューの表示/非表示情報を記憶部410に記憶する。本体要求部313は、本体装置12のWebAPI510を介して、本体装置12に各種要求を行う。
【0052】
WebAPI510は、操作装置11が本体装置12に対して各種要求を行うためのAPIである。ジョブ実行部530に対するジョブの開始の指示など、ジョブ実行部530に対する機能の実行要求等は、WebAPI510を介して行われる。
【0053】
ジョブ実行部530は、各種機能を利用したジョブの開始の指示を受け付け、ジョブの実行を行う。ジョブ実行状態通知部531はジョブ実行部530によるジョブの実行状態を操作装置11に通知する。ジョブ実行状態通知部531により通知されるジョブの実行状態は、ジョブの開始、終了、エラー発生等である。
【0054】
<処理の詳細>
次に、本実施形態に係る情報処理システム1の処理の詳細について説明する。本実施形態に係る画像処理装置10は例えば
図5に示す処理により、Webアプリケーション320が開始を指示したジョブの実行中に、Webアプリケーション320が終了されないようにする。
図5は本実施形態に係る情報処理システムの処理手順を表した一例のシーケンス図である。
【0055】
Webサーバ20から提供されたWebコンテンツがWebブラウザ300上で実行されることで、Webアプリケーション320は実現されているものとする。例えばWebサーバ20から提供されるWebコンテンツのURL(Uniform Resource Locator)を示すショートカットアイコン等がユーザにより押下されることで、WebコンテンツはWebブラウザ300により、Webサーバ20から取得(ダウンロード)される。また、ユーザは、Webブラウザ300のアドレスバー等に対して、WebコンテンツのURLを直接指定しても良い。
【0056】
WebコンテンツがWebブラウザ300上で実行されることで、操作装置11の操作パネル115には例えば
図6に示すようなWebアプリケーション画面1000が表示される。ユーザはWebアプリケーション画面1000のスタートボタン1002を押下することでジョブの開始をWebアプリケーション320に指示できる。
【0057】
ステップS101においてユーザはWebアプリケーション画面1000のスタートボタン1002を押下する。スタートボタン1002の押下をブラウザ制御部310のUI部311から通知されたWebアプリケーション320はステップS102においてJavaScriptライブラリ330にメニュー非表示指示を行う。具体的には、Webアプリケーション320を実現するWebコンテンツに記述されたJavaScriptがJavaScriptライブラリ330のメニュー非表示指示のAPIを呼び出す操作である。JavaScriptライブラリ330のメニューの表示/非表示指示部332はステップS103に進み、Webブラウザ300にメニュー非表示指示を行う。
【0058】
ステップS104に進み、Webブラウザ300は記憶部410にメニューの非表示情報を記憶させる。記憶部410にメニューの非表示情報が記憶されている間は、後述するようにWebアプリケーション320の終了操作が抑制される。
【0059】
ステップS105に進み、Webアプリケーション320はJavaScriptライブラリ330にジョブの開始を指示する。ステップS106において、JavaScriptライブラリ330のジョブ開始指示部331はWebAPI510を利用してジョブ実行部530にジョブの開始を指示する。ステップS107に進み、ジョブ実行部530はジョブの実行を開始する。
【0060】
ステップS108において、本体装置12のジョブ実行状態通知部531はジョブの実行状態として「開始」をWebブラウザ300に通知する。ジョブの実行状態「開始」はステップS109~S110においてWebアプリケーション320に通知される。
【0061】
ステップS111において、ジョブ実行部530はジョブの実行を終了する。ステップS112において、本体装置12のジョブ実行状態通知部531はジョブの実行状態として「終了」をWebブラウザ300に通知する。ジョブの実行状態「終了」はステップS113~S114においてWebアプリケーション320に通知される。
【0062】
ジョブの実行状態「終了」を通知されたWebアプリケーション320はステップS115においてJavaScriptライブラリ330にメニュー表示指示を行う。JavaScriptライブラリ330のメニューの表示/非表示指示部332はステップS116に進み、Webブラウザ300にメニュー表示指示を行う。
【0063】
ステップS117に進み、Webブラウザ300は記憶部410にメニューの表示情報を記憶させる。記憶部410にメニューの表示情報が記憶されている間は、後述するようにWebアプリケーション320の終了操作が抑制されない。また、
図5のシーケンス図の処理によれば、Webアプリケーション320は、Webアプリケーション320の終了操作の抑制を開始/終了するタイミングを決定できる。
【0064】
つまり、サードベンダの望むタイミングでWebアプリケーション320の終了操作の抑制を開始/終了できる。例えばサードベンダは、ジョブを実行するタイミングだけでなく、他のタイミングでも柔軟にWebアプリケーション320の終了操作の抑制を開始/終了できる。
【0065】
図5のシーケンス図はWebアプリケーション320がメニューの表示/非表示の判断を行う例である。メニューの表示/非表示の判断は
図7に示すようにJavaScriptライブラリ330が行ってもよい。
図7は本実施形態に係る情報処理システムの処理手順を表した一例のシーケンス図である。なお、
図7のシーケンス図は一部を除いて
図5のシーケンス図と同一であるため、適宜説明を省略する。
【0066】
ステップS201においてユーザはWebアプリケーション画面1000のスタートボタン1002を押下する。スタートボタン1002の押下をブラウザ制御部310のUI部311から通知されたWebアプリケーション320はステップS202においてJavaScriptライブラリ330にジョブ開始指示を行う。具体的には、Webアプリケーション320を実現するWebコンテンツに記述されたJavaScriptがJavaScriptライブラリ330のジョブ開始指示のAPIを呼び出す操作である。
【0067】
ジョブ開始指示を受け付けるとJavaScriptライブラリ330のメニューの表示/非表示指示部332はステップS203に進み、Webブラウザ300にメニュー非表示指示を行う。ステップS204に進み、Webブラウザ300はメニューの非表示情報を記憶部410に記憶させる。記憶部410にメニューの非表示情報が記憶されている間は、後述するようにWebアプリケーション320の終了操作が抑制される。
【0068】
Webブラウザ300に対してメニュー非表示指示が行われたあと、ステップS205に進み、JavaScriptライブラリ330のジョブ開始指示部331はWebAPI510を利用してジョブ実行部530にジョブの開始を指示する。ステップS206に進み、ジョブ実行部530はジョブの実行を開始する。
【0069】
ステップS207において、本体装置12のジョブ実行状態通知部531はジョブの実行状態として「開始」をWebブラウザ300に通知する。ジョブの実行状態「開始」はステップS208~S209においてWebアプリケーション320に通知される。
【0070】
ステップS210において、ジョブ実行部530はジョブの実行を終了する。ステップS211において、本体装置12のジョブ実行状態通知部531はジョブの実行状態として「終了」をWebブラウザ300に通知する。ジョブの実行状態「終了」はステップS212~S213においてWebアプリケーション320に通知される。
【0071】
ステップS214に進み、ジョブの実行状態「終了」を通知されたJavaScriptライブラリ330のメニューの表示/非表示指示部332はWebブラウザ300にメニュー表示指示を行う。
【0072】
ステップS215に進み、Webブラウザ300は記憶部410にメニューの表示情報を記憶させる。記憶部410にメニューの表示情報が記憶されている間は、後述するようにWebアプリケーション320の終了操作が抑制されない。
図7のシーケンス図の処理によれば、JavaScriptライブラリ330は、Webアプリケーション320の終了操作の抑制を開始/終了するタイミングを決定できる。つまり、製造元ベンダの望むタイミングでWebアプリケーション320の終了操作の抑制を開始/終了できる。
【0073】
図8は本実施形態に係る情報処理システムのメニューの表示/非表示処理の手順を表した一例のシーケンス図である。ステップS301においてユーザは例えば
図6のWebアプリケーション画面1000のメニューボタン1003を押下する。メニューボタン1003の押下により、Webブラウザ300ではメニューの表示イベントが発生する。
【0074】
例えばOSの一例であるAndroid(登録商標)で動作するWebブラウザ300の場合、ユーザによるメニューボタン1003の押下をOSが検知し、OSからWebブラウザ300へメニューの表示イベントが通知される。
【0075】
メニューの表示イベントが発生するとWebブラウザ300はステップS303~S304において、記憶部410にメニューの表示情報が記憶されているか、メニューの非表示情報が記憶されているか、を確認する。
【0076】
記憶部410にメニューの表示情報が記憶されていれば、Webアプリケーション320の終了操作が抑制された状態ではないため、Webブラウザ300はステップS305において操作パネル115にメニュー表示を指示する。ステップS306において操作パネル115はWebアプリケーション画面1000に例えば
図9のようなメニュー1004を表示する。
【0077】
記憶部410にメニューの非表示情報が記憶されていれば、Webアプリケーション320の終了操作が抑制された状態であるため、Webブラウザ300はステップS307において拒否音を鳴動させ、操作パネル115にメニュー表示を指示しない。
【0078】
なお、
図8ではWebアプリケーション320の終了操作を抑制する処理の一例としてメニューの非表示の例を示したが、ユーザによるWebアプリケーション320を終了させる操作を抑制する処理であればよい。Webアプリケーション320の終了操作を抑制する処理には別のWebページへの遷移(URL入力、ブックマークの利用、進むボタンや戻るボタンの押下など)が行われるユーザの操作の抑制の他、リロードボタンの押下の抑制、Webブラウザ300の終了操作の抑制も含まれる。
【0079】
このように、
図8のシーケンス図では、記憶部410にメニューの非表示情報が記憶されている間、Webアプリケーション320の終了操作が行われる可能性のあるイベントが発生しても、そのイベントの処理が行われない。
【0080】
したがって、本実施形態に係る情報処理システム1によれば、Webアプリケーション320が実行させたジョブが終了するまでの間、Webアプリケーション320の終了操作を抑制することができる。このように、ジョブの実行中のWebアプリケーション320の終了操作(ユーザによる不用意な操作)を抑制できるので、ジョブの実行中にWebアプリケーション320が終了されて、実行中のジョブが継続できなくなるという問題を解消できる。
【0081】
なお、本実施形態ではメニューボタン1003が押下されてもメニュー1004を表示しない例を説明したが、メニュー1004をユーザからの操作を受け付けないグレーアウト表示してもよい。また、メニューボタン1003を非表示にしたり、グレーアウト表示にしたりすることで、ユーザからメニューボタン1003の押下を受け付けないようにしてもよい。
【0082】
このような場合は、メニューボタン1003を非表示にするJavaScriptライブラリ330と、メニュー1004をユーザからの操作を受け付けないグレーアウト表示に対応したJavaScriptライブラリ330と、を用意する。このように、異なる処理を行うJavaScriptライブラリ330を準備しておくことで、Webアプリケーション320の開発及び提供を行うサードベンダなどは、使い分けができる。
【0083】
図5及び
図7のシーケンス図は、開始したジョブにエラーが発生することなく正常終了する例である。開始したジョブにエラーが発生し、ユーザによりジョブがキャンセルされた場合は
図10A及び
図10Bに示すようにメニューの非表示を解除する。
【0084】
図10A及び
図10Bは本実施形態に係る情報処理システムの処理手順を表した一例のシーケンス図である。なお、
図10A及び
図10Bのシーケンス図は一部を除いて
図7のシーケンス図と同一であるため、適宜説明を省略する。ステップS401~S409は
図7のステップS201~S209と同一である。
【0085】
ステップS410において、ジョブ実行部530は実行中のジョブに紙なしエラーが発生している。ステップS411において、本体装置12のジョブ実行状態通知部531はジョブの実行状態として「エラー:紙なし」をWebブラウザ300に通知する。ジョブの実行状態「エラー:紙なし」はステップS412においてJavaScriptライブラリ330に通知される。ステップS413に進み、JavaScriptライブラリ330は
図11のようなジョブエラー画面1005をWebアプリケーション画面1000に表示する。
【0086】
ジョブエラー画面1005の表示中に、キャンセルボタン1006が押下された場合はステップS414~S422の処理が行われる。また、用紙が補給された場合はステップS423以降の処理が行われる。
【0087】
ジョブをキャンセルしたいユーザはステップS414において、キャンセルボタン1006を押下することでジョブのキャンセルを選択できる。キャンセルボタン1006の押下を検知したJavaScriptライブラリ330はステップS330に進み、
図11のジョブエラー画面1005を消去する。
【0088】
ステップS416に進み、JavaScriptライブラリ330はWebAPI510を利用してジョブ実行部530にジョブのキャンセルを指示する。ステップS417に進み、ジョブ実行部530はジョブの実行を終了する。ステップS418において、本体装置12のジョブ実行状態通知部531はジョブの実行状態として「終了」をWebブラウザ300に通知する。ジョブの実行状態「終了」はステップS419~S420においてWebアプリケーション320に通知される。
【0089】
ステップS421に進み、ジョブの実行状態「終了」を通知されたJavaScriptライブラリ330のメニューの表示/非表示指示部332はWebブラウザ300にメニュー表示指示を行う。
【0090】
ステップS422に進み、Webブラウザ300は記憶部410にメニューの表示情報を記憶させる。したがって、ユーザがジョブのキャンセルを選択した場合は、Webアプリケーション320の終了操作が抑制されない状態となる。
【0091】
一方、ジョブを継続したいユーザは、用紙を補給することで紙なしエラーの原因を解消する。ステップS423において、ジョブ実行部530は用紙の補給を検知する。用紙の補給を検知したジョブ実行部530はステップS424に進み、自動でジョブの実行を再開する。
【0092】
ステップS425において、本体装置12のジョブ実行状態通知部531はジョブの実行状態として「再開」をWebブラウザ300に通知する。ジョブの実行状態「再開」はステップS425~S426において、JavaScriptライブラリ330に通知される。
【0093】
ステップS421に進み、ジョブの実行状態「再開」を通知されたJavaScriptライブラリ330は
図11のジョブエラー画面1005を消去する。ステップS428以降の処理はステップS417~S422と同一であるため、説明を省略する。
【0094】
図10A及び
図10Bによれば、ジョブのキャンセルによりメニューの非表示を解除できるので、メニューの非表示の解除忘れを防止できる。また、
図10A及び
図10BはJavaScriptライブラリ330がメニューの表示/非表示の判断を行う例について説明したが、
図5に示すようなWebアプリケーション320がメニューの表示/非表示の判断を行う例にも適用できる。
【0095】
図5、
図7、
図10A及び
図10Bのシーケンス図はスタートボタン1002の押下後にメニュー1004が表示されないようにしている。
図12はジョブのパラメータ設定ボタン1007の押下後にメニュー1004が表示されないようにしている。
【0096】
図12は本実施形態に係る情報処理システムの処理手順を表した一例のシーケンス図である。なお、
図12のシーケンス図は
図5のシーケンス図と同一な処理を含むため、適宜説明を省略する。
【0097】
ステップS501においてユーザはWebアプリケーション画面1000のパラメータ設定ボタン1007を押下する。パラメータ設定ボタン1007の押下をブラウザ制御部310のUI部311から通知されたWebアプリケーション320はステップS502においてJavaScriptライブラリ330にメニュー非表示指示を行う。JavaScriptライブラリ330のメニューの表示/非表示指示部332はステップS503に進み、Webブラウザ300にメニュー非表示指示を行う。
【0098】
ステップS504に進み、Webブラウザ300は記憶部410にメニューの非表示情報を記憶させる。記憶部410にメニューの非表示情報が記憶されている間は、Webアプリケーション320の終了操作が抑制される。ステップS505に進み、Webアプリケーション320は
図13のようなジョブのパラメータ設定画面1008をWebアプリケーション画面1000に表示する。
【0099】
ステップS506~S507に進み、ユーザは
図14及び
図15のようにジョブのパラメータ設定画面1008でジョブのパラメータ設定を行う。ジョブのパラメータ設定が終了したユーザはステップS508においてスタートボタン1002を押下する。
【0100】
ステップS509に進み、Webアプリケーション320はJavaScriptライブラリ330にジョブの開始を指示する。ステップS502でJavaScriptライブラリ330にメニュー非表示指示を行っているため、スタートボタン1002が押下されたタイミングでは、JavaScriptライブラリ330にメニュー非表示指示を行わない。
【0101】
ステップS509~S521の処理は
図1のステップS105~S117と同一であるため、説明を省略する。
図12はWebアプリケーション320がメニューの表示/非表示の判断を行う例について説明したが、
図7に示すようなJavaScriptライブラリ330がメニューの表示/非表示の判断を行う例にも適用できる。
【0102】
[第二の実施形態]
第一の実施形態はWebアプリケーション320またはJavaScriptライブラリ330がメニューの表示/非表示の判断を行う。第二の実施形態はWebブラウザ300がメニューの表示/非表示の判断を行う例である。
【0103】
図16は、本実施形態に係る画像処理装置の他の例のソフトウェア構成図である。
図16の画像処理装置10は、
図4のメニューの表示/非表示指示部332の替わりに、ブラウザ制御部310のメニューの表示/非表示指示部314が設けられている。ブラウザ制御部310のメニューの表示/非表示指示部314はメニューの表示/非表示記憶要求部312にメニューの表示/非表示情報の記憶部410への記憶を指示する。
【0104】
図17は本実施形態に係る情報処理システムの処理手順を表した他の例のシーケンス図である。ステップS601においてユーザはWebアプリケーション画面1000のスタートボタン1002を押下する。スタートボタン1002の押下をブラウザ制御部310のUI部311から通知されたWebアプリケーション320はステップS602においてJavaScriptライブラリ330にメニュー非表示指示を行う。
【0105】
また、ステップS603において、JavaScriptライブラリ330のジョブ開始指示部331はWebAPI510を利用してジョブ実行部530にジョブの開始を指示する。ステップS604に進み、ジョブ実行部530はジョブの実行を開始する。
【0106】
ステップS605において、本体装置12のジョブ実行状態通知部531はジョブの実行状態として「開始」をWebブラウザ300に通知する。ステップS606に進み、Webブラウザ300は記憶部410にメニューの非表示情報を記憶させる。記憶部410にメニューの非表示情報が記憶されている間は、Webアプリケーション320の終了操作が抑制される。ジョブの実行状態「開始」はステップS607~S608においてWebアプリケーション320に通知される。
【0107】
ステップS609において、ジョブ実行部530はジョブの実行を終了する。ステップS610において、本体装置12のジョブ実行状態通知部531はジョブの実行状態として「終了」をWebブラウザ300に通知する。ジョブの実行状態「終了」はステップS611~S612においてWebアプリケーション320に通知される。
【0108】
ジョブの実行状態「終了」を通知されたWebブラウザ300はステップS613において、記憶部410にメニューの表示情報を記憶させる。記憶部410にメニューの表示情報が記憶されている画像処理装置10は、Webアプリケーション320の終了操作が抑制されない。
【0109】
[第三の実施形態]
第一の実施形態及び第二の実施形態はユーザが画像処理装置10の操作装置11を操作する。第三の実施形態はユーザがスマートフォンなどの情報処理端末30を介して画像処理装置10を操作する例である。
図18は本実施形態に係る情報処理システムの一例の構成図である。
【0110】
情報処理端末30はパーソナルコンピュータ、携帯電話、スマートフォン、タブレット端末、ゲーム機、PDA、デジタルカメラ、ウェアラブル端末などのWebブラウザが搭載された装置である。情報処理端末30はネットワークNやBluetooth(登録商標)などの近距離無線通信により画像処理装置10とデータ通信可能である。
【0111】
情報処理端末30は、
図4の操作装置11と同様な構成を有することで、第一及び第二の実施形態の操作装置11の替わりに、処理を行うことができる。第三の実施形態では
図5、
図7、
図8、
図10A、
図10B、
図12及び
図17のシーケンス図のジョブ実行部530以外の機能ブロックが、情報処理端末30に設けられる。
【0112】
本発明は、具体的に開示された上記の実施形態に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。上記で説明した本実施形態の各機能は、一又は複数の処理回路によって実現できる。ここで、本明細書における「処理回路」とは、電子回路により実装されるプロセッサのようにソフトウェアによって各機能を実行するようプログラミングされたプロセッサや、上記で説明した各機能を実行するよう設計されたASIC(Application Specific Integrated Circuit)や、DSP(digital signal processor)や、FPGA(field programmable gate array)や、従来の回路モジュール等のデバイスを含むものとする。
【0113】
なお、ジョブ開始指示部331は特許請求の範囲に記載したジョブ開始指示手段の一例である。ジョブ実行状態通知部531はジョブ実行状態通知手段の一例である。メニューの表示/非表示指示部332は終了操作抑制手段の一例である。
【符号の説明】
【0114】
1 情報処理システム
10 画像処理装置
11 操作装置
12 本体装置
20 Webサーバ
30 情報処理端末
300 Webブラウザ
310 ブラウザ制御部
311 UI部
312 メニューの表示/非表示記憶要求部
313 本体要求部
314 メニューの表示/非表示指示部
320 Webアプリケーション
330 JavaScriptライブラリ
331 ジョブ開始指示部
332 メニューの表示/非表示指示部
410 記憶部
510 WebAPI
530 ジョブ実行部
531 ジョブ実行状態通知部
1000 Webアプリケーション画面
1002 スタートボタン
1003 メニューボタン
1004 メニュー
1005 ジョブエラー画面
1006 キャンセルボタン
1007 パラメータ設定ボタン
1008 ジョブのパラメータ設定画面
N ネットワーク
【先行技術文献】
【特許文献】
【0115】