JP2015176308A - 情報処理装置、機器、情報処理システム、情報処理方法、プログラム、及びインストール方法 - Google Patents

情報処理装置、機器、情報処理システム、情報処理方法、プログラム、及びインストール方法 Download PDF

Info

Publication number
JP2015176308A
JP2015176308A JP2014051849A JP2014051849A JP2015176308A JP 2015176308 A JP2015176308 A JP 2015176308A JP 2014051849 A JP2014051849 A JP 2014051849A JP 2014051849 A JP2014051849 A JP 2014051849A JP 2015176308 A JP2015176308 A JP 2015176308A
Authority
JP
Japan
Prior art keywords
information processing
display data
information
processing apparatus
control unit
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.)
Granted
Application number
JP2014051849A
Other languages
English (en)
Other versions
JP6424440B2 (ja
Inventor
浩樹 浅木森
Hiroki Asakimori
浩樹 浅木森
洋之 井上
Hiroyuki Inoue
洋之 井上
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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2014051849A priority Critical patent/JP6424440B2/ja
Priority to US14/633,409 priority patent/US10146886B2/en
Publication of JP2015176308A publication Critical patent/JP2015176308A/ja
Application granted granted Critical
Publication of JP6424440B2 publication Critical patent/JP6424440B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/957Browsing optimisation, e.g. caching or content distillation
    • G06F16/9577Optimising the visualization of content, e.g. distillation of HTML documents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/542Event management; Broadcasting; Multicasting; Notifications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/543Local
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2370/00Aspects of data communication
    • G09G2370/02Networking aspects

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Multimedia (AREA)
  • Stored Programmes (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer Hardware Design (AREA)

Abstract

【課題】ネットワークを介して取得される表示データが利用可能な機能を増加させるために既存部分を改変する必要性を低減させること。【解決手段】情報処理装置は、ネットワークを介して表示データを取得し、前記表示データに基づいて画面を表示する表示制御部を有し、前記表示制御部は、当該情報処理装置にインストールされたプログラムのうち、前記表示データによって指定される識別情報に係る第一のプログラムに、前記表示データにおいて指定されているデータを入力する。【選択図】図3

Description

本発明は、情報処理装置、機器、情報処理システム、情報処理方法、プログラム、及びインストール方法に関する。
HTML(HyperText Markup Language)、CSS(Cascading Style Sheets)、及びスクリプト等を含むWebページは、当該Webページに基づいて表示される画面に対する操作に応じた処理を、当該Webページのダウンロード先の機器に実行させるアプリケーションとして機能可能である。具体的には、Webページが、Webブラウザに対して要求を行うと、Webブラウザが当該要求に応じた処理を、当該機器に実行させる。
基本的に、WebページがWebブラウザに対して要求できる機能は、Webブラウザが提供しているAPIに係る機能に限定される。例えば、Webページに対して記述可能なスクリプトは、Webブラウザが解釈可能なものに限られる。
したがって、例えば、Webページのダウンロード先の機器等において新機能が実装された場合、当該新機能をWebページから利用可能とするためには、Webブラウザを改変して、当該新機能に対するインタフェースをWebページに対して提供可能とする必要が有る。
Webブラウザに対するプラグインを利用すれば、Webブラウザの改変の必要性を低減させることができる。しかし、スマートフォンやタブレット端末等のスマートデバイスが備えるWebブラウザには、プラグインの機構を有していないものが有る。
本発明は、上記の点に鑑みてなされたものであって、ネットワークを介して取得される表示データが利用可能な機能を増加させるために既存部分を改変する必要性を低減させることを目的とする。
そこで上記課題を解決するため、情報処理装置は、ネットワークを介して表示データを取得し、前記表示データに基づいて画面を表示する表示制御部を有し、前記表示制御部は、当該情報処理装置にインストールされたプログラムのうち、前記表示データによって指定される識別情報に係る第一のプログラムに、前記表示データにおいて指定されているデータを入力する。
ネットワークを介して取得される表示データが利用可能な機能を増加させるために既存部分を改変する必要性を低減させることができる。
本発明の実施の形態における情報処理システムの構成例を示す図である。 本発明の実施の形態における情報処理端末のハードウェア構成例を示す図である。 本発明の実施の形態における情報処理端末のソフトウェア構成例を示す図である。 Webアプリケーションからの追加モジュールの呼び出し時の処理手順の一例を説明するためのシーケンス図である。 追加モジュールからの情報の通知時に実行される処理手順の第一の例を説明するためのシーケンス図である。 追加モジュールからの情報の通知時に実行される処理手順の第二の例を説明するためのシーケンス図である。 追加モジュールの呼び出しに関してブラウザが実行する処理手順の一例を説明するためのフローチャートである。 追加モジュールからの情報の通知に関してブラウザが実行する処理手順の一例を説明するためのフローチャートである。 追加モジュールの具体例を示す図である。
以下、図面に基づいて本発明の実施の形態を説明する。図1は、本発明の実施の形態における情報処理システムの構成例を示す図である。図1に示される情報処理システム1において、画像形成装置10は、情報処理端末20と通信可能に接続される。画像形成装置10と情報処理端末20との通信は、例えば、USB(Universal Serial Bus)、近距離無線通信、又はLAN(有線又は無線の別は問わない)等のネットワークを介して行われる。
画像形成装置10は、印刷、スキャン、コピー、及びFAX送受信等のうちの2以上の機能を一台の筐体によって実現する複合機である。但し、いずれか一つの機能を有する機器が画像形成装置10として用いられてもよい。また、本実施の形態における画像形成装置10は、機器の一例であり、プロジェクタ、テレビ会議システム、又はデジタルカメラ等の機器が、画像形成装置10の代わりに用いられてもよい。
情報処理端末20は、例えば、スマートフォンやタブレット型端末等、単独で完結した情報処理を実行可能なスマートデバイスである。本実施の形態において、情報処理端末20は、画像形成装置10の操作部として機能する。より詳しくは、情報処理端末20は、従来、画像形成装置10の専用の操作部として設置されていた操作パネルの代わりに、画像形成装置10に接続される。以下、単に、「操作パネル」というとき、従来の画像形成装置10において設置されていた操作パネルをいう。
情報処理端末20は、例えば、画像形成装置10の所定の位置(例えば、操作パネルが配置される位置)に固定されて設置される。したがって、情報処理端末20及び画像形成装置10とは、一台の装置として把握されてもよい。または、情報処理端末20は、画像形成装置10から取り外し可能(分離可能)であってもよい。情報処理端末20が取り外された状態において、情報処理端末20は、Bluetooth(登録商標)又は赤外線等の無線通信等を介して、画像形成装置10の操作部として機能可能であってもよい。
図1において、情報処理端末20は、LAN又はインターネット等のネットワークを介してWebサーバ装置30と通信可能である。但し、情報処理端末20とWebサーバ装置30との通信は、画像形成装置10によって仲介されてもよい。Webサーバ装置30は、HTML(HyperText Markup Language)、CSS(Cascading Style Sheets)、及びJava(登録商標)スクリプト等を含むWebページを記憶するコンピュータである。Webページは、表示データとして機能するだけでなく、スクリプト等によって、アプリケーションとしても機能する。そこで、本実施の形態では、Webページを、「Webアプリケーション」という。なお、情報処理端末20は、複数又は不特定のWebサーバ装置30と通信可能であってもよい。
図2は、本発明の実施の形態における情報処理端末のハードウェア構成例を示す図である。図2において、情報処理端末20は、CPU201、メモリ202、補助記憶装置203、タッチパネル204、無線通信装置205、及び機器インタフェース206等を有する。
補助記憶装置203は、情報処理端末20にインストールされたプログラム等を記憶する。メモリ202は、プログラムの起動指示があった場合に、補助記憶装置203からプログラムを読み出して記憶する。CPU201は、メモリ202に記憶されたプログラムに従って情報処理端末20に係る機能を実現する。
タッチパネル204は、入力機能と表示機能との双方を備えた電子部品であり、情報の表示や、ユーザからの入力の受け付け等を行う。タッチパネル204は、表示装置211及び入力装置212等を含む。
表示装置211は、液晶ディスプレイ等であり、タッチパネル204の表示機能を担う。入力装置212は、表示装置211に対する接触物の接触を検出するセンサを含む電子部品である。接触物の接触の検出方式は、静電方式、抵抗膜方式、又は光学方式等、公知の方式のいずれであってもよい。なお、接触物とは、タッチパネル204の接触面(表面)に接触する物体をいう。斯かる物体の一例として、ユーザの指や専用又は一般のペン等が挙げられる。
無線通信装置205は、無線LAN(Local Area Network)又は移動体通信網等における通信を行うために必要とされるアンテナ等の電子部品である。機器インタフェース206は、画像形成装置10と通信するためのインタフェースである。すなわち、機器インタフェース206は、画像形成装置10との通信を行う。
図3は、本発明の実施の形態における情報処理端末のソフトウェア構成例を示す図である。図3において、情報処理端末20は、OS21、追加モジュール22、及びブラウザ23を有する。これらは、CPU201に処理を実行させるプログラムである。
OS21は、一般的な、OS(Operating System)である。追加モジュール22やブラウザ23等、他のプログラムは、OS21上でプロセス又はスレッドとして動作する。
ブラウザ23は、Webブラウザである。すなわち、ブラウザ23は、Webサーバ装置30からWebアプリケーション31を取得(ダウンロード)し、当該Webアプリケーション31に含まれている定義に従って、画面の表示をCPU201及び表示装置211に実行させる。画面に関する定義は、例えば、HTML(HyperText Markup Language)及びCSS(Cascading Style Sheets)等を用いて記述される。ブラウザ23は、また、Webアプリケーション31に含まれている、スクリプトによって呼び出されるAPI(Application Program Interface)に応じた処理を、CPU201に実行させる。すなわち、ブラウザ23には、スクリプトから呼び出される各種のAPIに対する実装(処理の定義)が含まれている。斯かるAPIの一つとして、ブラウザ23は、汎用API231を有する。汎用API231は、特定の機能に特化していない点において、他のAPIと異なる。汎用API231は、Webアプリケーション31から任意の追加モジュール22の機能を利用可能とするための関数群である。すなわち、汎用API231は、Webアプリケーション31に対し、追加モジュール22を透過的に呼び出すための手段又は経路を提供する。例えば、汎用API231のうちの一つの関数は、例えば、以下のようなインタフェース仕様を有している。
<追加モジュール呼び出し関数名>(モジュールID,入力データ)
<追加モジュール呼び出し関数名>は、追加モジュール22を呼び出すための関数(以下、「追加モジュール呼び出し関数」という。)の名前である。モジュールIDは、呼び出し先の追加モジュール22の識別情報である。モジュールIDは、追加モジュール22のファイル名であってもよいし、他の識別情報であってもよい。モジュールIDは、ブラウザ23が、一つの追加モジュール22を特定可能な情報であればよい。入力データは、追加モジュール22に入力されるデータである。例えば、当該データは、文字列型であってもよい。但し、当該データの内容は、文字列でなくてもよい。なお、引数にモジュールIDが指定されることからも明らかなように、汎用API231は、複数の追加モジュール22に対して共通のAPIである。
ブラウザ23は、Webアプリケーション31から追加モジュール呼び出し関数が呼び出されると、引数に指定されたモジュールIDに係る追加モジュール22に対して、引数に指定された入力データを入力する。
また、汎用API231は、以下のような関数を含んでも良い。
<コールバック登録関数名>(モジュールID、コールバック関数アドレス)
<コールバック登録関数名>は、追加モジュール22からの応答又は通知等を受け取るためのインタフェースの一例であるコールバック関数を登録するための関数(以下、「コールバック登録関数」という。)の関数名である。モジュールIDは、コールバック関数の対象とされる追加モジュール22である。コールバック関数アドレスは、コールバック関数のアドレス情報である。
追加モジュール22は、ブラウザ23の機能拡張を図るためにインストールされる追加されるプログラムである。追加モジュール22は、ブラウザ23から入力データを受け付けるために、ブラウザ23が予定している形式のAPIである追加モジュールAPI221を有する。追加モジュール22は、追加モジュールAPI221を介して入力されたデータに従って処理を実行する。図3では、一つの追加モジュール22のみが示されているが、複数種類の追加モジュール22が、情報処理端末20にインストールされてもよい。追加モジュール22がインストールされることにより、ブラウザ23の汎用API231を介して、当該追加モジュール22に係る機能が、擬似的にブラウザ23にプラグインされる。
図3には、また、Webアプリケーション31が示されている。Webアプリケーション31は、情報処理端末20に予めインストールされるものではなく、ユーザによる情報処理端末20の操作に応じて、ブラウザ23によって動的に取得される。Webアプリケーション31は、ブラウザ23の汎用API231を介して、追加モジュール22を呼び出すことができる。一形態としては、Webアプリケーション31と追加モジュール22とが1対1に対応する例が挙げられる。すなわち、或るWebアプリケーション31において、ブラウザ23の既存のAPIでは実現できない機能を利用したい場合に、当該機能を提供可能な追加モジュール22が作成され、情報処理端末20にインストールされる。したがって、追加モジュール22は、Webアプリケーション31の開発者によって開発されてもよい。
なお、一般的に、PCのWebブラウザにはプラグインという形式を利用した機能拡張の方式が採用されており、プラグイン向けのAPIが用意されている。しかし、スマートデバイスのWebブラウザにはプラグインの仕組みが用意されておらず、プラグインを利用した機能拡張を行うことが困難である。そこで、プラグインに代わる手段として、本実施の形態では、汎用API231と追加モジュール22とが利用される。
なお、汎用API231はWebアプリケーション31が扱うことができる言語であるスクリプトによって提供される。また、追加モジュールAPI221は、例えば、OS21上で実行できる形式の言語で提供される。
なお、ブラウザ23や追加モジュール22等は、情報処理端末20が実行するインストール処理によって、情報処理端末20にインストールされる。
以下、情報処理端末20が実行する処理手順について説明する。なお、以降においては、便宜上、各プログラムが処理の実行主体として記述されるが、厳密には、各プログラムは、CPU201に処理を実行させる。
図4は、Webアプリケーションからの追加モジュールの呼び出し時の処理手順の一例を説明するためのシーケンス図である。なお、図4においては、ユーザによる操作に応じて特定されるURLに対応するWebアプリケーション31が、ブラウザ23によって取得されている状態であるとする。また、Webアプリケーション31による処理は、当該Webアプリケーション31内に定義されているスクリプトに基づく。
ステップS101において、Webアプリケーション31は、汎用API231の一つである、コールバック登録関数を呼び出す。すなわち、Webアプリケーション31は、コールバック関数の登録を、ブラウザ23に要求する。コールバック登録関数の引数には、ステップS102において呼び出し先として指定される追加モジュール22のモジュールIDと、登録対象のコールバック関数のアドレス情報とが指定される。ブラウザ23は、コールバック登録関数の呼び出しに応じ、当該関数の引数に指定されているモジュールIDと、アドレス情報とを対応付けて、例えば、メモリ202に記憶する。
続いて、Webアプリケーション31は、汎用API231の一つである。追加モジュール呼び出し関数を呼び出す。すなわち、Webアプリケーション31は、追加モジュール22の呼び出しを、ブラウザ23に要求する。追加モジュール呼び出し関数の引数には、呼び出し先の追加モジュール22のモジュールIDと、当該追加モジュール22に対する入力データとが指定される。
ブラウザ23は、引数に指定されたモジュールIDによって識別される追加モジュール22に対し、追加モジュールAPI221を介して入力データを入力する(S103)。入力データの入力に対し、追加モジュール22は、応答を行う(S104)。ブラウザ23は、当該応答に応じ、追加モジュール呼び出し関数に対する応答を行う(S105)。
応答後、追加モジュール22は、入力データに関して処理を実行する。当該処理が完了すると、追加モジュール22は、処理結果を、ブラウザ23に通知する(S106)。処理結果は、処理の成否等を示す情報であってもよいし、処理によって生成されたデータであってもよい。なお、ブラウザ23は、追加モジュール22から処理結果等の通知を受けるためのインタフェースを有している。
続いて、ブラウザ23は、当該処理結果の通知元のモジュールIDに対応付けられてメモリ202に記憶されているアドレス情報に係るコールバック関数を呼び出す(S107)。コールバック関数の引数には、処理結果が指定される。その結果、Webアプリケーション31に対して、処理結果が通知される。
なお、Webアプリケーション31が、追加モジュール22の処理結果の通知を必要としない場合、ステップS101及びS107は実行されなくてもよい。
また、図4のステップS104及びS105において、追加モジュール22による処理の前に応答が行われるのは、本実施の形態では、追加モジュール22とブラウザ23とは異なるスレッド又はプロセスで動作し、追加モジュール22の処理とブラウザ23の処理とは非同期に行われるからである。したがって、仮に、追加モジュール22からの処理結果が、ステップS103に対して同期的に応答されるのであれば、ステップS104及びS105は実行されなくてよい。また、処理結果を受け付けるためのコールバック関数の登録も行われなくてもよい。ブラウザ23は、追加モジュール呼び出し関数の戻り値として、追加モジュール22の処理結果を返却することが可能だからである。
但し、追加モジュール22からの処理結果が、ステップS103に対して同期的に応答される場合であっても、ブラウザ23が、追加モジュール22側から非同期に通知される情報を取得したい場合、コールバック関数の登録は有効である。
図5は、追加モジュールからの情報の通知時に実行される処理手順の第一の例を説明するためのシーケンス図である。
例えば、追加モジュール22が、何らかのイベントの発生を検知すると、当該イベントに関する情報を、ブラウザ23に通知する(S111)。当該情報は、追加モジュール22の処理結果の通知を受けるためにブラウザ23が有するインタフェースと同じインタフェースを利用して、ブラウザ23に通知されてもよい。または、ブラウザ23は、処理結果の通知を受けるためのインタフェースとは別に、非同期な情報の通知を受けるためのインタフェースを有していてもよい。
続いて、ブラウザ23は、当該情報の通知元の追加モジュール22のモジュールIDに対応付けられてメモリ202に記憶されているアドレス情報に係るコールバック関数を呼び出す(S112)。コールバック関数の引数には、当該情報が指定される。その結果、Webアプリケーション31に対して、当該情報が通知される。
なお、ブラウザ23が、タブを用いて複数のWebアプリケーション31を表示することが可能である場合、複数のWebアプリケーション31によって一つの追加モジュール22に対するコールバック関数が重複して登録されてもよい。
この場合、図5の処理手順は、例えば、図6に示されるようになる。図6は、追加モジュールからの情報の通知時に実行される処理手順の第二の例を説明するためのシーケンス図である。図6中、図5と同一ステップには同一ステップ番号を付している。
図6は、Webアプリケーション31aとWebアプリケーション31bとの二つのWebアプリケーション31が、ブラウザ23の相互に異なるタブにおいて表示対象とされており、それぞれが、同じ追加モジュール22に対するコールバック関数を、ブラウザ23に登録している場合に実行される処理を示す。この場合、ブラウザ23は、追加モジュール22からの情報の通知に応じ(S111)、各Webアプリケーション31から登録されているコールバック関数を呼び出す(S112、S113)。その結果、各Webアプリケーション31に、同じ情報が配信される。
続いて、図4、図5、及び図6においてブラウザ23が実行する処理手順について説明する。図7は、追加モジュールの呼び出しに関してブラウザが実行する処理手順の一例を説明するためのフローチャートである。
ステップS201において、ブラウザ23は、ユーザによる操作によって特定されるURLに係るWebアプリケーション31を、Webサーバ装置30から取得(ダウンロード)する。続いて、ブラウザ23は、取得されたWebアプリケーション31の定義内容に基づいて、操作画面を表示装置211に表示させる(S202)。
続いて、ブラウザ23は、当該Webアプリケーション31から、追加モジュール呼び出し関数の呼び出しを受ける(S203)。換言すれば、ブラウザ23は、Webアプリケーション31の定義内容を解析し、追加モジュール呼び出し関数を検出する。なお、追加モジュール呼び出し関数の呼び出しのタイミングは、Webアプリケーション31の定義に依存する。例えば、Webアプリケーション31の取得に応じて呼び出しが行われてもよいし、Webアプリケーション31に基づいて表示される操作画面に対する操作に応じて呼び出しが行われてもよい。
続いて、ブラウザ23は、呼び出された追加モジュール呼び出し関数の引数に指定されているモジュールIDに係る追加モジュール22に対して、当該関数の引数に指定されている入力データを入力する(S204)。なお、呼び出し先の追加モジュール22が入力データを必要としない場合、追加モジュール呼び出し関数において、入力データの引数が省略されるようにしてもよい。
追加モジュール22の呼び出しに成功した場合(S205でYes)、追加モジュール呼び出し関数に関するブラウザ23による処理は正常終了する(S206)。この場合、例えば、図4のステップS105において、正常終了を示す応答が行われる。追加モジュール22の呼び出しに失敗した場合(S205のNo)、追加モジュール呼び出し関数に関するブラウザ23による処理は異常終了する(S206)。この場合、例えば、図4のステップS105において、異常終了を示す応答が行われる。
図8は、追加モジュールからの情報の通知に関してブラウザが実行する処理手順の一例を説明するためのフローチャートである。
ブラウザ23は、Webアプリケーション31から、コールバック登録関数の呼び出しを受けると(S211)、当該関数の引数に指定されているモジュールIDとコールバック関数のアドレス情報とを、対応付けてメモリ202に記憶する(S212)。
その後、ブラウザ23は、追加モジュール22から処理結果又は非同期の情報の通知を受けると、当該追加モジュール22のモジュールIDに対応付けられてアドレス情報が記憶されているコールバック関数の有無を判定する(S214)。該当するコールバック関数が有る場合(S214でYes)、ブラウザ23は、当該コールバック関数を呼び出す(S215)。当該コールバック関数の引数には、通知された情報が指定される。
続いて、追加モジュール22の具体例について説明する。図9は、追加モジュールの具体例を示す図である。
図9において、情報処理端末20には、NFC(Near field communication)デバイスが追加されている。例えば、当初、NFCデバイス207を有していない情報処理端末20に対して、USB接続等によりNFCデバイス207が追加された状態である。したがって、ブラウザ23は、NFCデバイス207にアクセスするためのスクリプトのAPIを提供していない。このような場合に、Webアプリケーション31から、NFCデバイス207を利用可能とするための方法について説明する。なお、NFCデバイス207は、近距離無線通信を行うハードウェアである。
この場合、例えば、Webアプリケーション31の開発者は、NFCデバイス207を制御するためのNFC制御モジュール22aを作成する。この際、NFC制御モジュール22aは、追加モジュールAPI221を有するように作成される。作成されたNFC制御モジュール22aは、任意のタイミングで、追加モジュール22の一つとして情報処理端末20にインストールされる。図9では、NFC制御モジュール22aが、インストールされた状態が示されている。この状態において、NFC制御モジュール22aは、Webアプリから利用可能となる。すなわち、Webアプリケーション31は、汎用API231の追加モジュール呼び出し関数を介して、NFC制御モジュール22aを利用することができる。
例えば、NFC制御モジュール22aに関して図4の処理が実行される場合、コールバック登録関数及び追加モジュール呼び出し関数の引数には、NFC制御モジュール22aのモジュールIDが指定される。また、追加モジュール呼び出し関数の引数の入力データには、通信相手との接続状況の取得要求を示す情報が指定される。すなわち、入力データには、追加モジュール22において処理対象とされるデータのみならず、追加モジュール22に対する処理要求を示すデータも指定可能である。
NFC制御モジュール22aは、NFCデバイス207による、通信相手との接続状況を確認し、確認結果を、ステップS106においてブラウザ23に通知する。ブラウザ23は、当該確認結果を、コールバック関数を利用して、Webアプリケーション31に通知する(S107)。その結果、Webアプリケーション31は、NFCデバイス207の接続状況を把握することができる。
また、NFC制御モジュール22aに関して、図5及び図6等が実行される場合に、NFC制御モジュール22aから通知される情報の一例として、通信相手との接続状況の変化を示す情報が挙げられる。例えば、通信相手との接続が確立されたこと、又は通信相手との接続が解除されたことが、コールバック関数を介して、NFC制御モジュール22aを利用するWebアプリケーション31に通知される。
上述したように、本実施の形態によれば、Webアプリケーション31は、ブラウザ23の汎用API231を介して、情報処理端末20によってインストールされた追加モジュール22のうちのいずれかを、呼び出すことができる。すなわち、実質的に、ブラウザ23に対して、追加モジュール22に係る機能を追加することができる。その結果、Webアプリケーション31が利用可能な機能を増加させるために既存部分(ブラウザ23)を改変する必要性を低減させることができる。
なお、本実施の形態は、例えば、プロジェクタ、テレビ会議システム、デジタルカメラ、家電製品等、画像形成装置10以外の機器の操作部として機能するスマートデバイスに対して適用されてもよい。また、機器の操作部として機能するのではなく、単独の情報処理端末20として機能するスマートデバイスに、本実施の形態が適用されてもよい。
また、本実施の形態は、PC(Personal Computer)におけるWebブラウザ、すなわち、プラグイン可能なWebブラウザに関して適用されてもよい。
なお、本実施の形態において、情報処理端末20は、情報処理装置の一例である。Webアプリケーションは、表示データの一例である。ブラウザ23は、表示制御部の一例である。
以上、本発明の実施例について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
1 情報処理システム
10 画像形成装置
20 情報処理端末
21 OS
22 追加モジュール
22a NFC制御モジュール
23 ブラウザ
30 Webサーバ装置
31 Webアプリケーション
201 CPU
202 メモリ
203 補助記憶装置
204 タッチパネル
205 無線通信装置
206 機器インタフェース
207 NFCデバイス
211 表示装置
212 入力装置
221 追加モジュールAPI
231 汎用API
特願2010−1470号公報

Claims (18)

  1. 情報処理装置であって、
    ネットワークを介して表示データを取得し、前記表示データに基づいて画面を表示する表示制御部を有し、
    前記表示制御部は、当該情報処理装置にインストールされたプログラムのうち、前記表示データによって指定される識別情報に係る第一のプログラムに、前記表示データにおいて指定されているデータを入力する、
    ことを特徴とする情報処理装置。
  2. 前記表示制御部は、複数のプログラムに対して共通のAPIを介して前記表示データによって指定される識別情報に係る前記第一のプログラムに、前記APIにおいて指定されているデータを入力する、
    ことを特徴とする請求項1記載の情報処理装置。
  3. 前記表示制御部は、入力されたデータに関して前記第一のプログラムが当該情報処理装置に実行させる処理に関する情報を、前記表示データに通知する、
    ことを特徴とする請求項1又は2記載の情報処理装置。
  4. 前記表示制御部は、前記表示データによって登録されたインタフェースを介して、前記処理に関する情報を、前記表示データに通知する、
    ことを特徴とする請求項3記載の情報処理装置。
  5. 前記第一のプログラムは、当該情報処理装置に追加されるハードウェアの制御を、当該情報処理装置に実行させる、
    ことを特徴とする請求項4記載の情報処理装置。
  6. 請求項1乃至4いずれか一項記載の情報処理装置を操作部として有する機器。
  7. 情報処理装置と前記情報処理装置を操作部として有する機器とを含む情報処理システムであって、
    ネットワークを介して表示データを取得し、前記表示データに基づいて画面を表示する表示制御部を有し、
    前記表示制御部は、当該情報処理装置にインストールされたプログラムのうち、前記表示データによって指定される識別情報に係る第一のプログラムに、前記表示データにおいて指定されているデータを入力する、
    ことを特徴とする情報処理システム。
  8. ネットワークを介して表示データを取得し、前記表示データに基づいて画面を表示する表示制御部を有する情報処理装置における情報処理方法であって、
    前記表示制御部が、当該情報処理装置にインストールされたプログラムのうち、前記表示データによって指定される識別情報に係る第一のプログラムに、前記表示データにおいて指定されているデータを入力する、
    ことを特徴とする情報処理方法。
  9. 前記表示制御部は、複数のプログラムに対して共通のAPIを介して前記表示データによって指定される識別情報に係る前記第一のプログラムに、前記APIにおいて指定されているデータを入力する、
    ことを特徴とする請求項8記載の情報処理方法。
  10. 前記表示制御部は、入力されたデータに関して前記第一のプログラムが当該情報処理装置に実行させる処理に関する情報を、前記表示データに通知する、
    ことを特徴とする請求項8又は9記載の情報処理方法。
  11. 前記表示制御部は、前記表示データによって登録されたインタフェースを介して、前記処理に関する情報を、前記表示データに通知する、
    ことを特徴とする請求項10記載の情報処理方法。
  12. 前記第一のプログラムは、当該情報処理装置に追加されるハードウェアの制御を、当該情報処理装置に実行させる、
    ことを特徴とする請求項11記載の情報処理方法。
  13. 情報処理装置を、
    ネットワークを介して表示データを取得し、前記表示データに基づいて画面を表示する表示制御部として機能させ、
    前記表示制御部は、当該情報処理装置にインストールされたプログラムのうち、前記表示データによって指定される識別情報に係る第一のプログラムに、前記表示データにおいて指定されているデータを入力する、
    ことを特徴とするプログラム。
  14. 前記表示制御部は、複数のプログラムに対して共通のAPIを介して前記表示データによって指定される識別情報に係る前記第一のプログラムに、前記APIにおいて指定されているデータを入力する、
    ことを特徴とする請求項13記載のプログラム。
  15. 前記表示制御部は、入力されたデータに関して前記第一のプログラムが当該情報処理装置に実行させる処理に関する情報を、前記表示データに通知する、
    ことを特徴とする請求項13又は14記載のプログラム。
  16. 前記表示制御部は、前記表示データによって登録されたインタフェースを介して、前記処理に関する情報を、前記表示データに通知する、
    ことを特徴とする請求項15記載のプログラム。
  17. 前記第一のプログラムは、当該情報処理装置に追加されるハードウェアの制御を、当該情報処理装置に実行させる、
    ことを特徴とする請求項16記載のプログラム。
  18. 請求項13乃至17いずれか一項記載のプログラムをインストールする手順をコンピュータが実行する、
    ことを特徴とするインストール方法。
JP2014051849A 2014-03-14 2014-03-14 情報処理装置、機器、情報処理システム、情報処理方法及び表示制御プログラム Active JP6424440B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2014051849A JP6424440B2 (ja) 2014-03-14 2014-03-14 情報処理装置、機器、情報処理システム、情報処理方法及び表示制御プログラム
US14/633,409 US10146886B2 (en) 2014-03-14 2015-02-27 Information processing system and method for adding additional modules

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014051849A JP6424440B2 (ja) 2014-03-14 2014-03-14 情報処理装置、機器、情報処理システム、情報処理方法及び表示制御プログラム

Publications (2)

Publication Number Publication Date
JP2015176308A true JP2015176308A (ja) 2015-10-05
JP6424440B2 JP6424440B2 (ja) 2018-11-21

Family

ID=54069485

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014051849A Active JP6424440B2 (ja) 2014-03-14 2014-03-14 情報処理装置、機器、情報処理システム、情報処理方法及び表示制御プログラム

Country Status (2)

Country Link
US (1) US10146886B2 (ja)
JP (1) JP6424440B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7181992B2 (ja) 2019-07-31 2022-12-01 セールスフォース ドット コム インコーポレイティッド ウェブ・アプリケーション実行のためのクライアント・アプリケーション

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10162958B2 (en) 2016-03-15 2018-12-25 Ricoh Company, Ltd. Information processing system, information processing method, and non-transitory computer program product
JP2017167700A (ja) * 2016-03-15 2017-09-21 株式会社リコー 情報処理システム、機器、情報処理端末、情報処理方法、及びプログラム
JP6801544B2 (ja) 2017-03-22 2020-12-16 株式会社リコー 情報処理装置、情報処理方法及びプログラム
CN112835652A (zh) * 2019-11-25 2021-05-25 杭州中天微***有限公司 数据交互方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005153473A (ja) * 2003-11-28 2005-06-16 Kyocera Mita Corp 画像形成装置,オプション構成推定方法,オプション構成提案方法
JP2010009527A (ja) * 2008-06-30 2010-01-14 Toshiba Corp 情報処理装置
JP2013140634A (ja) * 2008-03-02 2013-07-18 Yahoo Inc セキュアなブラウザベースのアプリケーション
JP2013168113A (ja) * 2012-02-17 2013-08-29 Ricoh Co Ltd 機器、情報処理システム、情報処理方法、及び情報処理プログラム

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4822544B2 (ja) * 2006-04-26 2011-11-24 株式会社リコー 複数のモジュール構成情報を管理できる画像形成装置
JP5228420B2 (ja) 2007-09-14 2013-07-03 株式会社リコー 画像形成装置,交換対象部材の情報登録方法,プログラム,および記録媒体
JP2011141684A (ja) 2010-01-06 2011-07-21 Ricoh Co Ltd 画像形成装置、サービス提供方法、プログラム、記憶媒体
JP2011211692A (ja) 2010-03-09 2011-10-20 Ricoh Co Ltd 情報処理装置、プログラム、および記憶媒体
JP5870490B2 (ja) 2011-02-09 2016-03-01 株式会社リコー 情報処理システム、画像形成装置、情報処理方法、及びプログラム
US20130014126A1 (en) * 2011-07-05 2013-01-10 Microsoft Corporation Cross-browser communication between devices on a network
AU2014233175B2 (en) * 2013-03-15 2017-06-22 Server Technology, Inc. Wireless communications capable power distribution unit and techniques for communicating therewith

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005153473A (ja) * 2003-11-28 2005-06-16 Kyocera Mita Corp 画像形成装置,オプション構成推定方法,オプション構成提案方法
JP2013140634A (ja) * 2008-03-02 2013-07-18 Yahoo Inc セキュアなブラウザベースのアプリケーション
JP2010009527A (ja) * 2008-06-30 2010-01-14 Toshiba Corp 情報処理装置
JP2013168113A (ja) * 2012-02-17 2013-08-29 Ricoh Co Ltd 機器、情報処理システム、情報処理方法、及び情報処理プログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
せきぐち くみこ: "WindowsAPIを利用する方法〜VB6.0編", 日経ソフトウエア2003年12月号, vol. 第6巻 第12号, JPN6018026179, 24 November 2003 (2003-11-24), JP, pages 104 - 110 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7181992B2 (ja) 2019-07-31 2022-12-01 セールスフォース ドット コム インコーポレイティッド ウェブ・アプリケーション実行のためのクライアント・アプリケーション

Also Published As

Publication number Publication date
US10146886B2 (en) 2018-12-04
JP6424440B2 (ja) 2018-11-21
US20150262544A1 (en) 2015-09-17

Similar Documents

Publication Publication Date Title
US11921996B2 (en) Information processing terminal and control method
JP5884542B2 (ja) 機器、情報処理システム、情報処理方法、及び情報処理プログラム
US9282211B2 (en) Image forming apparatus, control method, and storage medium in which data is shared between applications
US8976402B2 (en) Method of controlling communication system
JP6424440B2 (ja) 情報処理装置、機器、情報処理システム、情報処理方法及び表示制御プログラム
JP6205861B2 (ja) 情報処理システム、情報処理方法、及びプログラム
JP6295563B2 (ja) 情報処理システム、機器、情報処理方法、及び情報処理プログラム
JP2015176306A (ja) 情報処理システム、情報処理装置、情報処理方法、及びプログラム
JP2017073682A (ja) 機器、情報処理方法、及びプログラム
JP2012171269A (ja) 画像形成装置、情報処理システム、課金方法、プログラム、及び記録媒体
JP2014219759A (ja) 機器、情報処理端末、情報処理システム、表示制御方法、及びプログラム
JP2013191196A (ja) 情報処理装置、機器、情報処理システム、情報処理方法、及び情報処理プログラム
CN102937963A (zh) 使用协议处理程序的模板和服务器内容下载
JP6269006B2 (ja) 情報処理装置、情報処理方法、及び情報処理プログラム
JP2013168129A (ja) 情報処理システム、データ提供装置、電子機器、情報処理方法、データ提供方法、データ取得方法、及びプログラム
EP2843553A2 (en) Information processing terminal and control method therefor, and program
JP2017167700A (ja) 情報処理システム、機器、情報処理端末、情報処理方法、及びプログラム
JP2016119029A (ja) 情報処理装置、機器、情報処理システム、情報処理方法、プログラム、及びインストール方法
US10079873B2 (en) Information processing apparatus and method
JP2017033397A (ja) 操作情報共有装置、アプリ実行装置、操作情報共有システム、情報処理装置、およびプログラム
US11275575B2 (en) Information processing apparatus, method, and recording medium
JP2019053463A (ja) 情報処理装置、情報処理システム、情報処理方法及びプログラム
EP4064027A1 (en) Information processing apparatus, information processing system, information processing method, and carrier means
JP2009048332A (ja) ウェブページ閲覧装置
US10165057B2 (en) Information processing terminal, and controlling method thereof

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170220

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20171113

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20171219

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180208

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180710

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180830

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181008

R151 Written notification of patent or utility model registration

Ref document number: 6424440

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151