JP6668601B2 - Apparatus, image forming apparatus, information processing method, information processing program, and information processing system - Google Patents

Apparatus, image forming apparatus, information processing method, information processing program, and information processing system Download PDF

Info

Publication number
JP6668601B2
JP6668601B2 JP2015058799A JP2015058799A JP6668601B2 JP 6668601 B2 JP6668601 B2 JP 6668601B2 JP 2015058799 A JP2015058799 A JP 2015058799A JP 2015058799 A JP2015058799 A JP 2015058799A JP 6668601 B2 JP6668601 B2 JP 6668601B2
Authority
JP
Japan
Prior art keywords
web browser
interface unit
web application
web
connection status
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.)
Active
Application number
JP2015058799A
Other languages
Japanese (ja)
Other versions
JP2016177703A (en
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.)
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 JP2015058799A priority Critical patent/JP6668601B2/en
Publication of JP2016177703A publication Critical patent/JP2016177703A/en
Application granted granted Critical
Publication of JP6668601B2 publication Critical patent/JP6668601B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Description

本発明は、機器、画像形成装置、情報処理方法、情報処理プログラム及び情報処理システムに関する。   The present invention relates to a device, an image forming apparatus, an information processing method, an information processing program, and an information processing system.

近年、Webブラウザに多くの機能が追加されている。これに伴い、HTML(HyperText Markup Language)/CSS(Cascading Style Sheet)/JAVA(登録商標)スクリプトを用いてソリューションを提供するWebアプリケーションも増えている。このような動きは、パーソナルコンピュータ装置(PC)のみならず、スマートデバイスの分野にも広がっている。   In recent years, many functions have been added to Web browsers. Along with this, web applications that provide solutions using HTML (HyperText Markup Language) / CSS (Cascading Style Sheet) / JAVA (registered trademark) scripts are increasing. Such movements are spreading not only in personal computer devices (PCs) but also in the field of smart devices.

特許文献1(特開2011−141684号公報)には、Webブラウザにジョブのフローが記載されたHTMLファイルを格納してユーザに提供する画像形成装置が開示されている。   Japanese Patent Application Laid-Open No. 2011-141684 discloses an image forming apparatus that stores an HTML file in which a job flow is described in a Web browser and provides the HTML file to a user.

しかし、スマートデバイスに設けられるWebブラウザは、パーソナルコンピュータ装置に設けられるWebブラウザとは異なり、ブラウザソフトをアップデートすることなく、Webブラウザに機能を追加することは困難である。また、スマートデバイスに設けられるWebブラウザは、ユーザが開発したプラグインをインストールして機能を追加することは困難である。特許文献1に開示されている画像形成装置も、同様の問題がある。   However, unlike a web browser provided in a personal computer device, it is difficult to add a function to a web browser provided in a smart device without updating browser software. Further, it is difficult for a Web browser provided in a smart device to add a function by installing a plug-in developed by a user. The image forming apparatus disclosed in Patent Document 1 has the same problem.

本発明は、上述の課題に鑑みてなされたものであり、機器のプログラムをアップデートすることなく、簡単に機能を追加可能な機器、画像形成装置、情報処理方法、情報処理プログラム及び情報処理システムの提供を目的とする。   SUMMARY OF THE INVENTION The present invention has been made in view of the above-described problems, and provides an apparatus, an image forming apparatus, an information processing method, an information processing program, and an information processing system that can easily add functions without updating a program of the apparatus. For the purpose of providing.

上述した課題を解決し、目的を達成するために、本発明は、ネットワーク上のサーバ装置で提供されるWebアプリケーションに対して、所定の処理の実行要求を行い、又は、サーバ装置からダウンロードしたWebアプリケーションに対して、所定の処理を実行要求するWebブラウザを備えた機器であって、WebアプリケーションがWebブラウザに対して、機器に接続されたNFCデバイスの接続状況の要求を行うための第1のインタフェース部と、機器に追加インストールされ、機器に接続されたNFCデバイスの接続状況を取得可能な追加プログラムを実行する実行部と、追加プログラムにより取得された、機器に接続されたNFCデバイスの接続状況を、Webブラウザに通知するための第2のインタフェース部と、を備え、WebアプリケーションとWebブラウザとの間において、第1のインタフェース部を介して情報の送受信を行い、Webブラウザと実行部との間において、第2のインタフェース部を介して情報の送受信を行うことで、追加プログラムにより取得されたNFCデバイスの接続状況を、Webアプリケーションが、第1のインタフェース部及び第2のインタフェース部を介して取得することを特徴とする。 In order to solve the above-described problems and achieve the object, the present invention provides a Web application provided by a server device on a network, which requests execution of predetermined processing, or a Web application downloaded from a server device. A device including a Web browser for requesting an application to execute a predetermined process , wherein the Web application requests the Web browser for a connection status of an NFC device connected to the device. An interface unit, an execution unit that is additionally installed in the device and executes an additional program capable of acquiring the connection status of the NFC device connected to the device, and a connection status of the NFC device connected to the device acquired by the additional program And a second interface unit for notifying the Web browser of the By transmitting and receiving information between the web application and the web browser via the first interface unit and transmitting and receiving information between the web browser and the execution unit via the second interface unit, The Web application acquires the connection status of the NFC device acquired by the additional program via the first interface unit and the second interface unit .

本発明によれば、機器のプログラムをアップデートすることなく、簡単に機能を追加できるという効果を奏する。   ADVANTAGE OF THE INVENTION According to this invention, there exists an effect that a function can be easily added, without updating the program of an apparatus.

図1は、実施の形態のMFP及びサーバ装置のハードウェア構成図である。FIG. 1 is a hardware configuration diagram of the MFP and the server device according to the embodiment. 図2は、実施の形態のMFPに設けられているWebブラウザの機能拡張動作を実現するためのソフトウェア構成図である。FIG. 2 is a software configuration diagram for implementing a function expansion operation of a Web browser provided in the MFP according to the embodiment. 図3は、Webアプリケーション、Webブラウザ及び追加スクリプトの標準的な動作の流れを示すシーケンス図である。FIG. 3 is a sequence diagram showing a standard operation flow of the Web application, the Web browser, and the additional script. 図4は、Webブラウザでスクリプト汎用APIの要求を処理する流れを示すフローチャートである。FIG. 4 is a flowchart illustrating a flow of processing a request for a script general-purpose API by a Web browser. 図5は、Webブラウザが対応していないNFCデバイスを利用可能にするためのソフトウェア構成を示す図である。FIG. 5 is a diagram illustrating a software configuration for enabling use of an NFC device that is not supported by the Web browser. 図6は、WebアプリケーションがNFCデバイスの接続状況を取得する流れを示すシーケンス図である。FIG. 6 is a sequence diagram illustrating a flow in which the Web application acquires the connection status of the NFC device. 図7は、NFCデバイスの接続状況の変更を通知する流れを示すシーケンス図である。FIG. 7 is a sequence diagram illustrating a flow of notifying a change in the connection status of the NFC device. 図8は、NFCデバイスの接続状況が変更されたことを複数のWebアプリケーションに通知する流れを示すシーケンス図である。FIG. 8 is a sequence diagram illustrating a flow of notifying a plurality of Web applications that the connection status of the NFC device has been changed.

以下、一例として、本発明を適用した実施の形態となる複合機(MFP)の説明をする。なお、本発明をMFPに適用することは一例であり、Webブラウザを備えた機器であれば、どのような電子機器に適用してもよい。   Hereinafter, a multifunction peripheral (MFP) according to an embodiment to which the present invention is applied will be described as an example. The application of the present invention to an MFP is only an example, and the present invention may be applied to any electronic device that has a Web browser.

図1は、機器の一例となる実施の形態のMFP1のハードウェア構成図である。図1に示すように、MFP1は、コピー機能、スキャナ機能、ファクシミリ機能、プリンタ機能等の各種の機能を備えた本体10と、ユーザの操作に応じた入力を受け付ける操作部20とを備える。本体10と操作部20は、専用の通信路30を介して相互に通信可能に接続されている。通信路30は、例えばUSB(Universal Serial Bus)規格のものを用いることもできるが、有線か無線かを問わず任意の規格のものであってよい。また、本体10は、コピー機能、スキャナ機能、ファクシミリ機能、プリンタ機能等の画像形成機能のうち、一つの機能を有していてもよいし又は複数の機能を有していてもよい。   FIG. 1 is a hardware configuration diagram of an MFP 1 according to an embodiment, which is an example of a device. As shown in FIG. 1, the MFP 1 includes a main body 10 having various functions such as a copy function, a scanner function, a facsimile function, and a printer function, and an operation unit 20 that receives an input corresponding to a user operation. The main body 10 and the operation unit 20 are communicably connected to each other via a dedicated communication path 30. The communication path 30 may use, for example, a USB (Universal Serial Bus) standard, but may use an arbitrary standard regardless of whether it is wired or wireless. Further, the main body 10 may have one function or a plurality of functions among image forming functions such as a copy function, a scanner function, a facsimile function, and a printer function.

操作部20としては、単独で完結した情報処理を実行可能な電子機器を用いることができる。一例として、操作部20としては、スマートフォン又はタブレット型端末等の情報処理端末(スマートデバイス)を用いることができる。この場合、操作部20として用いられるスマートデバイスは、MFP1の操作部として機能する。   As the operation unit 20, an electronic device that can execute complete information processing by itself can be used. As an example, as the operation unit 20, an information processing terminal (smart device) such as a smartphone or a tablet terminal can be used. In this case, the smart device used as operation unit 20 functions as the operation unit of MFP 1.

より詳しくは、操作部20として用いられるスマートデバイスは、従来、MFP1専用の操作部として固定され設置されていた操作パネルの代わりに、MFP1に対して装着及び取り外しが可能に接続される。すなわち、操作部20として用いられるスマートデバイスは、例えばMFP1の操作パネルが配置される位置等の所定の位置に取り外し可能(分離可能)ながらも、MFP1と一体的に設置される。従って、操作部20として用いられるスマートデバイスおよびMFP1は、一台の装置として把握されてもよい。操作部20であるスマートデバイスは、MFP1から取り外されると、MFP1との間で、例えばBluetooth(登録商標)、Wi−Fi(登録商標)又は赤外線通信等の無線通信を行い、MFP1の操作部として機能する。なお、MFP1は、このように本体10から操作部20が取り外し可能となっているが、操作部20が本体10に固定されていてもよい。   More specifically, the smart device used as the operation unit 20 is detachably connected to the MFP 1 instead of the operation panel conventionally fixed and installed as the operation unit dedicated to the MFP 1. That is, the smart device used as the operation unit 20 is installed integrally with the MFP 1 while being detachable (separable) at a predetermined position such as a position where the operation panel of the MFP 1 is arranged. Therefore, the smart device and the MFP 1 used as the operation unit 20 may be grasped as one device. When the smart device as the operation unit 20 is detached from the MFP 1, the smart device performs wireless communication with the MFP 1, such as Bluetooth (registered trademark), Wi-Fi (registered trademark), or infrared communication, as an operation unit of the MFP 1. Function. Although the operation unit 20 of the MFP 1 is detachable from the main body 10 as described above, the operation unit 20 may be fixed to the main body 10.

本体10は、操作部20で受け付けた入力に応じた動作を行う。また、本体10は、クライアントPC(パーソナルコンピュータ)等の外部装置とも通信可能であり、外部装置から受信した指示に応じた動作も行う。   The main body 10 performs an operation according to the input received by the operation unit 20. The main body 10 can also communicate with an external device such as a client PC (personal computer), and also performs an operation according to an instruction received from the external device.

次に、本体10のハードウェア構成について説明する。図1に示すように、本体10は、CPU11と、ROM12と、RAM13と、HDD(ハードディスクドライブ)14とを備える。また、本体10は、通信I/F(インタフェース)15と、接続I/F16と、エンジン部17とを備える。各部11〜17は、システムバス18を介して相互に接続されている。   Next, the hardware configuration of the main body 10 will be described. As shown in FIG. 1, the main body 10 includes a CPU 11, a ROM 12, a RAM 13, and a hard disk drive (HDD) 14. Further, the main body 10 includes a communication I / F (interface) 15, a connection I / F 16, and an engine unit 17. The units 11 to 17 are connected to each other via a system bus 18.

CPU11は、本体10の動作を統括的に制御する。CPU11は、RAM13をワークエリア(作業領域)としてROM12又はHDD14等に格納されたプログラムを実行することで、本体10全体の動作を制御し、上述したコピー機能、スキャナ機能、ファクシミリ機能、プリンタ機能などの各種機能を実現する。   The CPU 11 totally controls the operation of the main body 10. The CPU 11 controls the overall operation of the main body 10 by executing a program stored in the ROM 12 or the HDD 14 using the RAM 13 as a work area (work area), and performs the above-described copy function, scanner function, facsimile function, printer function, and the like. To realize various functions.

通信I/F15は、ネットワーク40上のクライアントPC(パーソナルコンピュータ)又はサーバ装置の一例であるWebサーバ装置37等の外部装置と通信するためのインタフェースである。接続I/F16は、通信路30を介して操作部20と通信するためのインタフェースである。なお、図1において、通信路30は、有線的に図示されているが、上述のように操作部20は、MFP1の本体10に対して装着及び取り外し可能に設けられている。このため、操作部20をMFP1に装着しているときには、通信路30は有線通信路として機能し、操作部20をMFP1から取り外したときには、通信路30は無線通信路として機能するものと理解されたい。   The communication I / F 15 is an interface for communicating with an external device such as a client PC (personal computer) on the network 40 or a Web server device 37 which is an example of a server device. The connection I / F 16 is an interface for communicating with the operation unit 20 via the communication path 30. In FIG. 1, the communication path 30 is illustrated in a wired manner, but the operation unit 20 is provided to be attachable to and detachable from the main body 10 of the MFP 1 as described above. Therefore, it is understood that when the operation unit 20 is attached to the MFP 1, the communication path 30 functions as a wired communication path, and when the operation unit 20 is removed from the MFP 1, the communication path 30 functions as a wireless communication path. I want to.

エンジン部17は、コピー機能、スキャナ機能、ファクシミリ機能及びプリンタ機能を実現させるための、汎用的な情報処理及び通信以外の処理を行うハードウェアである。エンジン部17は、例えば原稿の画像をスキャンして読み取るスキャナ(画像読取部)、用紙等のシート材への印刷を行うプロッタ(画像形成部)、ファクシミリ通信を行うファクシミリ通信部などを備えている。さらに、印刷済みシート材を仕分けるフィニッシャ及び原稿を自動給送するADF(自動原稿給送装置)のような特定のオプションを備えることもできる。   The engine unit 17 is hardware that performs processing other than general-purpose information processing and communication for realizing a copy function, a scanner function, a facsimile function, and a printer function. The engine unit 17 includes, for example, a scanner (image reading unit) that scans and reads an image of a document, a plotter (image forming unit) that prints on a sheet material such as paper, a facsimile communication unit that performs facsimile communication, and the like. . Further, specific options such as a finisher for sorting printed sheet materials and an ADF (automatic document feeder) for automatically feeding documents can be provided.

次に、操作部20のハードウェア構成について説明する。図1に示すように、操作部20は、CPU21と、ROM22と、RAM23と、フラッシュメモリ24と、通信I/F25と、接続I/F26と、操作パネル27とを備え、これらがシステムバス28を介して相互に接続されている。   Next, a hardware configuration of the operation unit 20 will be described. As shown in FIG. 1, the operation unit 20 includes a CPU 21, a ROM 22, a RAM 23, a flash memory 24, a communication I / F 25, a connection I / F 26, and an operation panel 27. Connected to each other.

CPU21は、操作部20の動作を統括的に制御する。CPU21は、RAM23をワークエリア(作業領域)としてROM22又はフラッシュメモリ24等に格納されたプログラムを実行することで、操作部20全体の動作を制御する。   The CPU 21 controls the operation of the operation unit 20 as a whole. The CPU 21 controls the operation of the entire operation unit 20 by executing a program stored in the ROM 22 or the flash memory 24 using the RAM 23 as a work area (work area).

また、例えばROM22等の記憶部に、Webブラウジングアプリケーションプログラム(WebブラウジングAP)が記憶されている。CPU21は、WebブラウジングAPを実行することで、Webブラウザ19を実現する。Webブラウザ19は、Webサーバ装置37のHDD34等の記憶部に記憶されているWebアプリケーション39と連携してブラウジング動作等を行う。詳しくは、後述するが、実施の形態のMFP1は、操作部20のWebブラウザ19に対して、ブラウザソフトをアップデートすることなく、簡単に機能を追加可能となっている。Webアプリケーション39は、第1のプログラムの一例である。Webブラウザ19は、第2のプログラムの一例である。   Further, for example, a Web browsing application program (Web browsing AP) is stored in a storage unit such as the ROM 22. The CPU 21 realizes the Web browser 19 by executing the Web browsing AP. The Web browser 19 performs a browsing operation or the like in cooperation with a Web application 39 stored in a storage unit such as the HDD 34 of the Web server device 37. As will be described in detail later, the MFP 1 of the embodiment can easily add a function to the Web browser 19 of the operation unit 20 without updating the browser software. The Web application 39 is an example of a first program. The web browser 19 is an example of a second program.

なお、この例では、WebブラウジングAPは、MFP1の操作部20のROM22等に記憶されていることとした。しかし、WebブラウジングAPは、例えばROM12、RAM13又はHDD14等の、MFP1の本体10側の記憶部に記憶してもよい。この場合、本体10側のCPU11が、ROM12等に記憶されているWebブラウジングAPを実行することで、Webブラウザ19を実現する。   In this example, it is assumed that the Web browsing AP is stored in the ROM 22 of the operation unit 20 of the MFP 1 or the like. However, the Web browsing AP may be stored in a storage unit on the main body 10 side of the MFP 1, such as the ROM 12, the RAM 13, or the HDD 14. In this case, the Web browser 19 is realized by the CPU 11 of the main body 10 executing the Web browsing AP stored in the ROM 12 or the like.

通信I/F25は、例えばネットワーク40上のWebサーバ装置37と通信するためのインタフェースである。接続I/F26は、通信路30を介して本体10と通信するためのインタフェースである。   The communication I / F 25 is an interface for communicating with the Web server device 37 on the network 40, for example. The connection I / F 26 is an interface for communicating with the main unit 10 via the communication path 30.

操作パネル27は、タッチセンサを備えた液晶表示装置(LCD)で構成される。操作パネル27は、ユーザの操作に応じた各種の入力を受け付けると共に、例えば受け付けた入力に応じた情報、MFP1の動作状況を示す情報、設定状態を示す情報等の各種の情報を表示する。なお、操作パネル27は、タッチセンサを備えた有機EL表示装置で構成されてもよい。さらに、これに加えて又はこれに代えて、ハードウェアキー等の操作部やランプ等の表示部を設けることもできる。   The operation panel 27 includes a liquid crystal display (LCD) having a touch sensor. The operation panel 27 receives various inputs according to the operation of the user, and displays various information such as information corresponding to the received input, information indicating the operation status of the MFP 1, and information indicating the setting state. Note that the operation panel 27 may be configured by an organic EL display device having a touch sensor. Further, in addition to or instead of this, an operation unit such as a hardware key or a display unit such as a lamp may be provided.

次に、このようなMFP1とネットワーク40を介して接続されるWebサーバ装置37は、図1のハードウェア構成図に示すように、CPU31、ROM32、RAM33、HDD34、通信I/F35を備えている。CPU31〜通信I/F35は、システムバス38を介して相互に接続されている。HDD34等の記憶部には、ユーザにソリューションを提供するMFP1のメーカにおけるアプリ開発者及びサードベンダで開発されたWebアプリケーション39が記憶されている。Webアプリケーション39は、CPU31により実行され、MFP1のWebブラウザ19と連携して、Webブラウザ19のブラウジング動作等を可能とする。なお、Webサーバ装置37からMFP1にWebアプリケーション39をダウンロードし、MFP1のCPU21又はCPU11が、ダウンロードしたWebアプリケーション39を実行してもよい。   Next, the Web server device 37 connected to the MFP 1 via the network 40 includes a CPU 31, a ROM 32, a RAM 33, an HDD 34, and a communication I / F 35, as shown in the hardware configuration diagram of FIG. . The CPU 31 to the communication I / F 35 are mutually connected via a system bus 38. In a storage unit such as the HDD 34, a Web application 39 developed by an application developer and a third vendor of the manufacturer of the MFP 1 that provides a solution to a user is stored. The Web application 39 is executed by the CPU 31 and cooperates with the Web browser 19 of the MFP 1 to enable the Web browser 19 to perform a browsing operation or the like. Note that the Web application 39 may be downloaded from the Web server device 37 to the MFP 1 and the CPU 21 or the CPU 11 of the MFP 1 may execute the downloaded Web application 39.

なお、実施の形態の例では、機能の独立性を保つために、本体10側のOSと操作部20側のOSが互いに異なる。つまり、本体10と操作部20は、別々のオペレーティングシステムで互いに独立して動作する。例えば、本体10側のOSとしてリナックス(登録商標)(Linux(登録商標))を用い、操作部20側のOSとしてアンドロイド(Android(登録商標))を用いることも可能である。   In the example of the embodiment, the OS of the main unit 10 and the OS of the operation unit 20 are different from each other in order to keep the functions independent. That is, the main body 10 and the operation unit 20 operate independently of each other with different operating systems. For example, it is also possible to use Linux (registered trademark) as the OS on the main body 10 side and to use Android (Android (registered trademark)) as the OS on the operation unit 20 side.

本体10及び操作部20を別々のオペレーティングシステムで動作させることで、本体10と操作部20との間の通信は、共通の装置内のプロセス間通信ではなく、異なる装置間の通信として行われる。操作部20が受け付けた入力(ユーザからの指示内容)を本体10へ伝達する動作(コマンド通信)及び本体10が操作部20へイベントを通知する動作などがこれに該当する。ここでは、操作部20が本体10へコマンド通信を行うことにより、本体10の機能を使用することができる。また、本体10から操作部20に通知するイベントには、本体10における動作の実行状況、本体10側で設定された内容などが挙げられる。   By operating the main unit 10 and the operation unit 20 with different operating systems, communication between the main unit 10 and the operation unit 20 is performed not as inter-process communication in a common device but as communication between different devices. The operation (command communication) of transmitting the input (the instruction content from the user) received by the operation unit 20 to the main body 10 and the operation of the main body 10 notifying the operation unit 20 of an event correspond to the operation. Here, the function of the main body 10 can be used by the operation unit 20 performing command communication to the main body 10. In addition, the event notified from the main body 10 to the operation unit 20 includes an execution state of an operation in the main body 10, contents set on the main body 10, and the like.

次に、実施の形態のMFP1は、操作部20に設けられているWebブラウザ19の機能を、ソフトウェア更新を行うことなく、ユーザが開発した機能をインストールして拡張することができる。図2は、このようなWebブラウザ19の機能拡張動作を実現するためのソフトウェア構成図である。この図2において、「Webブラウザ19」と「スマートデバイス上のOS50」は、例えばMFP1に設けられておりMFP1のメーカにより提供される部分である。また、OS50は、制御プログラムの一例である。これに対して、「Webアプリケーション39」と「スクリプト実行部51」はユーザにソリューションを提供するMFP1のメーカにおけるアプリ開発者及びサードベンダにより開発され提供される部分である。   Next, the MFP 1 of the embodiment can extend the function of the Web browser 19 provided in the operation unit 20 by installing the function developed by the user without updating the software. FIG. 2 is a software configuration diagram for implementing such a function expansion operation of the Web browser 19. In FIG. 2, “Web browser 19” and “OS 50 on smart device” are, for example, provided in MFP 1 and provided by the manufacturer of MFP 1. The OS 50 is an example of a control program. On the other hand, the “Web application 39” and the “script execution unit 51” are parts developed and provided by an application developer and a third vendor of the maker of the MFP 1 that provides a solution to the user.

スクリプト実行部51の追加スクリプト52は、ユーザにより開発され、操作部20等にインストールされる、いわゆるプラグインモジュールである。ユーザは、所望の動作仕様及びスクリプト実行部51で処理をさせるための命令文を記載して追加スクリプト52を生成する。スクリプト実行部51は、実行部の一例である。追加スクリプト52は、追加プログラムの一例である。   The additional script 52 of the script execution unit 51 is a so-called plug-in module developed by the user and installed in the operation unit 20 or the like. The user generates an additional script 52 by describing a desired operation specification and a command sentence for causing the script execution unit 51 to perform processing. The script execution unit 51 is an example of an execution unit. The additional script 52 is an example of an additional program.

また、通常、パーソナルコンピュータ装置(PC)のWebブラウザには、プラグインという形式を利用した機能拡張の方式が採用されており、プラグイン向けのAPIが提供されている。しかし、主に操作部20のようなスマートデバイスに設けられるアンドロイド(Android)又はアイオーエス(iOS(登録商標))等のOSには、プラグインの仕組みが用意されていない。このため、MFP1のメーカにおけるアプリ開発者及びサードベンダ側において、プラグインを利用してWebブラウザの機能を追加(拡張)できない。   Generally, a Web browser of a personal computer (PC) employs a function extension method using a plug-in format, and provides an API for the plug-in. However, an OS such as Android (Android) or IOS (iOS (registered trademark)) provided mainly in a smart device such as the operation unit 20 does not have a plug-in mechanism. For this reason, the application developer and the third vendor on the maker of the MFP 1 cannot add (extend) the function of the Web browser using the plug-in.

このようなことから、実施の形態のMFP1のメーカは、予めWebブラウザ19にWebアプリケーション39及びスクリプト実行部51を接続するための汎用API55a、55b、56a、56b、58a、58bを用意しておく。   For this reason, the manufacturer of the MFP 1 according to the embodiment prepares the general-purpose APIs 55a, 55b, 56a, 56b, 58a, and 58b for connecting the Web application 39 and the script execution unit 51 to the Web browser 19 in advance. .

Webアプリケーション39とWebブラウザ19との間の汎用API55a、55bは、第1のインタフェース部の一例であり、Webアプリケーション39で取り扱い可能な、例えばJAVA(登録商標)スクリプト等の言語で提供される。また、Webブラウザ19とスクリプト実行部51との間の汎用API56a、56b、58a、58bは、第2のインタフェース部の一例であり、スマートデバイス上のOS50が実行可能な言語で提供される。例えば、OS50がアンドロイド(登録商標)の場合、汎用API56a、56b、58a、58bは、JAVA(登録商標)スクリプトの言語で記述され提供される。また、OS50がアイオーエス(iOS(登録商標))の場合、汎用API56a、56b、58a、58bは、オブジェクティブC(Objective−C)の言語で記述され提供される。   The general-purpose APIs 55a and 55b between the Web application 39 and the Web browser 19 are examples of a first interface unit, and are provided in a language such as a JAVA (registered trademark) script that can be handled by the Web application 39. The general-purpose APIs 56a, 56b, 58a, and 58b between the Web browser 19 and the script execution unit 51 are an example of a second interface unit, and are provided in a language that can be executed by the OS 50 on the smart device. For example, when the OS 50 is Android (registered trademark), the general-purpose APIs 56a, 56b, 58a, and 58b are described and provided in the language of JAVA (registered trademark) script. When the OS 50 is IOS (i.e., iOS (registered trademark)), the general-purpose APIs 56a, 56b, 58a, and 58b are described and provided in the language of Objective-C (Objective-C).

また、スクリプト実行部51が起動されると、インストールされている追加スクリプト52は、実行形式にコンパイルされ、実行可能な状態とされる。Webブラウザ19は、汎用API55a、55bを介して、Webアプリケーション39からの要求を取得する。この際、Webアプリケーション39は、要求先となるスクリプト実行部51を示すデータ及びスクリプト実行部51に渡すデータで生成した要求を、汎用API55a、55bを介してWebブラウザ19に通知する。   Further, when the script execution unit 51 is activated, the installed additional script 52 is compiled into an executable form and is made executable. The Web browser 19 acquires a request from the Web application 39 via the general-purpose APIs 55a and 55b. At this time, the Web application 39 notifies the Web browser 19 via the general-purpose APIs 55a and 55b of the request generated by the data indicating the script execution unit 51 to which the request is sent and the data to be passed to the script execution unit 51.

Webブラウザ19は、Webアプリケーション39から取得した要求を、汎用API56a、56bを介して、要求先となる追加スクリプト52がインストールされたスクリプト実行部51に送信する。スクリプト実行部51は、上述のように実行できる状態の追加スクリプト52のスクリプト汎用API57(又はスクリプト汎用API59)を実行する。この一連の流れにより、ユーザが記載した追加スクリプト52による拡張機能をユーザに提供することができる。   The Web browser 19 transmits, via the general-purpose APIs 56a and 56b, the request acquired from the Web application 39 to the script execution unit 51 in which the request destination additional script 52 is installed. The script execution unit 51 executes the script general-purpose API 57 (or the script general-purpose API 59) of the additional script 52 that can be executed as described above. With this series of flows, an extended function by the additional script 52 described by the user can be provided to the user.

なお、追加スクリプト52は、一つでもよいし、複数でもよい。複数の追加スクリプト52が存在する場合でも、Webアプリケーション39が、利用する追加スクリプト52を指定できるため、所望の追加スクリプト52の機能を利用できる。   Note that the number of the additional scripts 52 may be one or more. Even when a plurality of additional scripts 52 exist, the Web application 39 can specify the additional script 52 to be used, so that a desired function of the additional script 52 can be used.

また、追加スクリプト52は、ユーザ毎に設けられている格納領域に格納される。Webブラウザ19は、ユーザに応じて、呼び出す追加スクリプト52を変更する。ユーザ毎の追加スクリプト52の格納領域の判別は、Webブラウザ19が、本体10にログインしているユーザを、本体10から取得して判別する。   The additional script 52 is stored in a storage area provided for each user. The Web browser 19 changes the additional script 52 to be called according to the user. The storage area of the additional script 52 for each user is determined by the Web browser 19 acquiring the user logged in to the main body 10 from the main body 10.

次に、図3のシーケンス図に、Webアプリケーション39、Webブラウザ19及び追加スクリプト52の標準的な動作の流れを示す。前提として、追加スクリプト52は、予めスクリプト実行部51にインストールされており、利用可能な状態となっている。この状態において、ステップS1から処理が開始される。ステップS1では、Webアプリケーション39が、要求先及び送信データを、汎用API55a、55bを介してWebブラウザ19に通知する。要求先は、例えば追加スクリプト52とする。   Next, a standard operation flow of the Web application 39, the Web browser 19, and the additional script 52 is shown in the sequence diagram of FIG. As a premise, the additional script 52 is installed in the script execution unit 51 in advance and is in a usable state. In this state, the process is started from step S1. In step S1, the Web application 39 notifies the Web browser 19 of the request destination and the transmission data via the general-purpose APIs 55a and 55b. The request destination is, for example, the additional script 52.

次に、Webブラウザ19は、ステップS2において、ログインしているユーザの情報を本体10から取得し、ログインしているユーザが利用できる追加スクリプト52を決定する。次に、Webブラウザ19は、ステップS3において、汎用API56a、56bを介して、送信データをスクリプト実行部51に通知する。   Next, in step S2, the Web browser 19 acquires information of the logged-in user from the main body 10, and determines an additional script 52 that can be used by the logged-in user. Next, in step S3, the Web browser 19 notifies the script execution unit 51 of the transmission data via the general-purpose APIs 56a and 56b.

スクリプト実行部51は、ステップS4において、起動時に、実行形式に変換済みの追加スクリプト52に対して、スクリプト汎用API57(又はスクリプト汎用API59)を利用して送信データを通知する。必要であれば、追加スクリプト52は、ステップS5に示すように、スクリプト実行部51に対して処理結果を通知する。また、必要であれば、ステップS6に示すように、スクリプト実行部51は、Webブラウザ19に対して処理結果を通知する。この場合、Webブラウザ19は、ステップS7に示すように、追加スクリプト52からの処理結果をWebアプリケーション39に通知する。   In step S4, the script execution unit 51 notifies the additional script 52, which has been converted into the execution format, of transmission data using the script general-purpose API 57 (or the script general-purpose API 59) at the time of startup. If necessary, the additional script 52 notifies the script execution unit 51 of the processing result as shown in step S5. If necessary, as shown in step S6, the script execution unit 51 notifies the Web browser 19 of the processing result. In this case, the Web browser 19 notifies the Web application 39 of the processing result from the additional script 52 as shown in step S7.

次に、図4は、Webブラウザ19でスクリプト汎用API57の要求を処理する流れを示すフローチャートである。この図4のフローチャートにおいて、まず、ステップS11では、Webブラウザ19が、汎用API55a、55bを介して、Webアプリケーション39から要求先と送信データを受信する。要求先は、例えば追加スクリプト52とする。   Next, FIG. 4 is a flowchart showing a flow in which the Web browser 19 processes a request of the script general-purpose API 57. In the flowchart of FIG. 4, first, in step S11, the web browser 19 receives a request destination and transmission data from the web application 39 via the general-purpose APIs 55a and 55b. The request destination is, for example, the additional script 52.

次に、ステップS12では、Webブラウザ19が、ログインしているユーザの情報を本体10から取得し、ログインしているユーザに対応する追加スクリプト52を、送信データの送信先として決定する。次に、ステップS13では、Webブラウザ19が、Webアプリケーション39から受信した要求先と送信データとを分離する。ステップS14では、スクリプト実行部51が、要求先となる追加スクリプト52の有無を判別する。要求先となる追加スクリプト52が存在しないものと判別した場合(ステップS14:No)、そのまま図4のフローチャートの処理を終了する。   Next, in step S12, the Web browser 19 acquires the information of the logged-in user from the main body 10, and determines the additional script 52 corresponding to the logged-in user as a transmission data transmission destination. Next, in step S13, the Web browser 19 separates the request destination and the transmission data received from the Web application 39. In step S14, the script execution unit 51 determines whether or not there is an additional script 52 to be requested. If it is determined that there is no additional script 52 to be requested (step S14: No), the processing of the flowchart in FIG.

これに対して、要求先となる追加スクリプト52が存在するものと判別した場合(ステップS14:Yes)、ステップS15に処理が進む。ステップS15では、スクリプト実行部51が、要求先の追加スクリプト52から送信された通知の有無を判別する。要求先の追加スクリプト52からの通知が無いものと判別した場合(ステップS15:No)、そのまま図4のフローチャートの処理を終了する。これに対して、要求先の追加スクリプト52から通知があったものと判別した場合(ステップS15:Yes)、ステップS16に処理が進む。   On the other hand, if it is determined that the additional script 52 to be requested exists (step S14: Yes), the process proceeds to step S15. In step S15, the script execution unit 51 determines whether or not there is a notification transmitted from the additional script 52 of the request destination. If it is determined that there is no notification from the additional script 52 of the request destination (step S15: No), the processing of the flowchart in FIG. On the other hand, if it is determined that the notification has been received from the additional script 52 of the request destination (step S15: Yes), the process proceeds to step S16.

ステップS16では、スクリプト実行部51が、追加スクリプト52からの通知を取得する。最後に、ステップS17において、Webブラウザ19がWebアプリケーション39に追加スクリプト52からの通知を送信し、図4のフローチャートの処理を終了する。   In step S16, the script execution unit 51 acquires a notification from the additional script 52. Finally, in step S17, the Web browser 19 transmits a notification from the additional script 52 to the Web application 39, and ends the processing of the flowchart in FIG.

次に、図5に、図2に示した構成をさらに具体化した構成を示す。この図5は、Webブラウザ19が対応していないNFCデバイスを利用可能にするためのソフトウェア構成を示している。今日におけるスマートデバイスには、カメラ部、マイクホン部、GPS(Global Positioning System)等のデバイスが標準的に設けられているが、これらのデバイスにWebブラウザは対応していない。図5に示す例は、スマートデバイス(操作部20)上に設けられたNFC(Near Field Communication:近距離無線通信)デバイス62を、Webブラウザ19でWebアプリケーション39から利用可能とした例である。   Next, FIG. 5 shows a configuration that further embodies the configuration shown in FIG. FIG. 5 shows a software configuration for enabling use of an NFC device that is not supported by the Web browser 19. Devices such as a camera unit, a microphone unit, and a GPS (Global Positioning System) are provided as standard in today's smart devices, but the Web browser does not support these devices. The example illustrated in FIG. 5 is an example in which an NFC (Near Field Communication: Near Field Communication) device 62 provided on a smart device (the operation unit 20) can be used from the Web application 39 by the Web browser 19.

この場合、NFCデバイス62を制御するためのNFC制御プラグイン(NFC制御スクリプト)61を予め操作部20にインストールすると共に、Webブラウザ19で定めているスクリプト汎用API57の対応を行っておく。また、上述のように、Webブラウザ19は、汎用API55b、56aの対応は済んでおり、Webアプリケーション39からいつでも利用可能な状態とする。   In this case, an NFC control plug-in (NFC control script) 61 for controlling the NFC device 62 is installed in the operation unit 20 in advance, and a script general API 57 defined by the Web browser 19 is supported. Further, as described above, the Web browser 19 is compatible with the general-purpose APIs 55b and 56a, and can be used at any time from the Web application 39.

また、Webアプリケーション39は、NFC制御スクリプト61に対して送信するデータの仕様を認識しており、JAVA(登録商標)スクリプト等の所定の言語で要求が可能となっている。また、Webブラウザ19に対して、汎用API55a、55bを介して通知を受け取ることができるように事前に登録を行っている。また、NFC制御スクリプト61は、ログインユーザ毎に期待されている動きが異なるとする。また、上述のように、予めユーザ毎に異なる管理領域に、NFC制御スクリプト61はインストールされる。   Further, the Web application 39 recognizes the specification of data to be transmitted to the NFC control script 61, and can make a request in a predetermined language such as a JAVA (registered trademark) script. Further, registration is performed in advance so that the Web browser 19 can receive a notification via the general-purpose APIs 55a and 55b. Further, it is assumed that the expected movement of the NFC control script 61 differs for each login user. Further, as described above, the NFC control script 61 is installed in a management area different for each user in advance.

図6のシーケンス図に、Webアプリケーション39がNFCデバイス62の接続状況を取得する流れを示す。まず、ステップS21では、Webアプリケーション39が、Webブラウザ19に対し、通信を希望する追加スクリプトの登録を行う。この例では、NFC制御スクリプト61からの通知を受信するように、通知用のJAVA(登録商標)スクリプトの関数登録を行う。Webブラウザ19は、複数の追加スクリプト(複数のNFC制御スクリプト)が存在していても、Webアプリケーション39に対して、予め登録された追加スクリプトに対応する通知(通信)のみを行う。これにより、Webアプリケーション39に掛かる通知処理の負荷を軽減できる。なお、全ての通知を取得する場合、Webアプリケーション39は、ステップS21の処理をスキップする(行う必要はない)。   FIG. 6 is a sequence diagram illustrating a flow in which the Web application 39 acquires the connection status of the NFC device 62. First, in step S21, the Web application 39 registers an additional script with which communication is desired in the Web browser 19. In this example, a function of a JAVA (registered trademark) script for notification is registered so as to receive a notification from the NFC control script 61. Even if a plurality of additional scripts (a plurality of NFC control scripts) exist, the Web browser 19 sends only a notification (communication) corresponding to the pre-registered additional script to the Web application 39. Thereby, the load of the notification processing applied to the Web application 39 can be reduced. When acquiring all the notifications, the Web application 39 skips the process of step S21 (it is not necessary to perform the process).

次に、ステップS22では、Webアプリケーション39が、NFCデバイス62に接続されているデバイスの接続状況を取得するためにAPIを利用する。ステップS23では、Webブラウザ19が、本体10からログインユーザの情報を取得する。例えば、図5に「USER002」で示すユーザが本体10にログインしていた場合、Webブラウザ19は、この「USER002」のユーザのために用意された管理領域に記憶されているNFC制御スクリプト61を要求先として決定する。Webブラウザ19は、NFC制御スクリプト61への要求を汎用API55a、55bを介して取得し、ステップS24において、スクリプト実行部51に相手先接続状況の取得要求を行う。   Next, in step S22, the Web application 39 uses the API to acquire the connection status of the device connected to the NFC device 62. In step S23, the web browser 19 acquires the information of the login user from the main body 10. For example, when the user indicated by “USER002” in FIG. 5 has logged in to the main body 10, the Web browser 19 executes the NFC control script 61 stored in the management area prepared for the user of “USER002”. Determine as the request destination. The Web browser 19 acquires a request to the NFC control script 61 via the general-purpose APIs 55a and 55b, and requests the script execution unit 51 to acquire the connection status of the other party in step S24.

スクリプト実行部51は、ステップS25において、実行形式となっているNFC制御スクリプト61に、スクリプト汎用API57で送信する。NFC制御スクリプト61は、相手先接続状況の取得要求を取得し、NFCデバイス62の状況を確認する。そして、NFC制御スクリプト61は、ステップS26において、スクリプト汎用API57を用いてスクリプト実行部51に相手先接続状況を通知する。スクリプト実行部51は、ステップS27において、汎用API56bを用いてWebブラウザ19に相手先接続状況の通知を行う。最後に、Webブラウザ19は、ステップS28において、NFC制御スクリプト61からの通知に対し、コールバック関数にてWebアプリケーション39に通知を行う。   In step S25, the script execution unit 51 transmits the NFC control script 61 in the execution format to the script general API 57. The NFC control script 61 obtains a request for obtaining the connection status of the other party, and checks the status of the NFC device 62. Then, in step S26, the NFC control script 61 notifies the script execution unit 51 of the destination connection status using the script general-purpose API 57. In step S27, the script execution unit 51 notifies the Web browser 19 of the connection status of the other party using the general-purpose API 56b. Finally, in step S28, the Web browser 19 notifies the Web application 39 of the notification from the NFC control script 61 using a callback function.

次に、図7のシーケンス図に、NFCデバイス62の接続状況の変更を通知する流れを示す。この図7のシーケンス図において、ステップS31では、NFC制御スクリプト61が、相手先接続状況の取得の変更を検出し、スクリプト汎用API57を用いて、スクリプト実行部51に相手先接続状況の変更通知を行う。   Next, a sequence diagram of FIG. 7 shows a flow of notifying a change in the connection status of the NFC device 62. In the sequence diagram of FIG. 7, in step S31, the NFC control script 61 detects a change in acquisition of the other party connection status, and sends a change notification of the other party connection status to the script execution unit 51 using the script general-purpose API 57. Do.

ステップS32では、スクリプト実行部51が、汎用API56bを用いて、Webブラウザ19に相手先接続状況の変更通知を行う。ステップS33では、Webブラウザ19が、変更通知を送信した管理領域のNFC制御スクリプト61を判断する。Webブラウザ19は、現在ログインしているユーザに対応する管理領域のNFC制御スクリプト61からの変更通知であるものと判断した場合、コールバック関数にてWebアプリケーション39に、相手先接続状況の変更通知を行う。   In step S32, the script execution unit 51 uses the general-purpose API 56b to notify the Web browser 19 of a change in the connection status of the other party. In step S33, the Web browser 19 determines the NFC control script 61 of the management area that has transmitted the change notification. If the Web browser 19 determines that the notification is a change notification from the NFC control script 61 of the management area corresponding to the currently logged-in user, the Web browser 19 notifies the Web application 39 of the change in the connection status of the other party using the callback function. I do.

次に、図8のシーケンス図に、NFCデバイス62の接続状況が変更されたことを複数のWebアプリケーション39a、39bに通知する流れを示す。この図8のシーケンス図において、ステップS41では、NFC制御スクリプト61が、相手先接続状況取得の変更を検出し、スクリプト汎用API57を用いて、スクリプト実行部51に相手先接続状況の変更通知を行う。   Next, a sequence diagram of FIG. 8 shows a flow of notifying the plurality of Web applications 39a and 39b that the connection status of the NFC device 62 has been changed. In the sequence diagram of FIG. 8, in step S41, the NFC control script 61 detects a change in the acquisition of the connection status of the other party, and notifies the script execution unit 51 of the change in the connection status of the other party using the script general-purpose API 57. .

次に、ステップS42では、スクリプト実行部51が、汎用API56bを用いて、相手先接続状況の変更通知をWebブラウザ19に送信する。Webブラウザ19は、変更通知を送信した管理領域のNFC制御スクリプト61を判断する。ステップS43では、Webブラウザ19は、現在ログインしているユーザの管理領域のNFCスクリプト61からの変更通知であると判断した場合に、コールバック関数にて第1のWebアプリケーション39aに変更通知を行う。また、Webブラウザ19は、他に通知が必要となる例えば第2のWebアプリケーション39bを検出した場合、ステップS44に示すように、コールバック関数にて変更通知を行う。   Next, in step S42, the script execution unit 51 sends a change notification of the connection status of the other party to the web browser 19 using the general-purpose API 56b. The Web browser 19 determines the NFC control script 61 of the management area that has transmitted the change notification. In step S43, if the Web browser 19 determines that the notification is a change notification from the NFC script 61 of the management area of the currently logged-in user, the Web browser 19 notifies the first Web application 39a of the change using a callback function. . In addition, when the Web browser 19 detects, for example, the second Web application 39b that requires another notification, the Web browser 19 performs a change notification using a callback function as illustrated in step S44.

以上の説明から明らかなように、実施の形態のMFP1は、Webアプリケーション39とWebブラウザ19との間に、例えばJAVA(登録商標)スクリプト等の、Webアプリケーション39が取り扱い可能な言語で記述された汎用API55a、55bを設ける。また、Webブラウザ19とスクリプト実行部51との間に、操作部20のOSが取り扱い可能な言語で記述された汎用API56a、56bを設ける。スクリプト実行部51は、起動時に、インストールされている追加スクリプト52を実行形式にコンパイルし、実行可能な状態とする。   As is apparent from the above description, the MFP 1 according to the embodiment is described between the Web application 39 and the Web browser 19 in a language such as a JAVA (registered trademark) script that can be handled by the Web application 39. General-purpose APIs 55a and 55b are provided. Further, general-purpose APIs 56a and 56b described in a language that can be handled by the OS of the operation unit 20 are provided between the Web browser 19 and the script execution unit 51. The script execution unit 51 compiles the installed additional script 52 into an executable format at the time of startup, and makes it executable.

Webブラウザ19は、汎用API55a、55bを介して、Webアプリケーション39からの要求を取得する。Webブラウザ19は、Webアプリケーション39から通知された要求先であるスクリプト実行部51に対しデータを送信する。スクリプト実行部51は、送信されたデータを、実行可能な状態となっている追加スクリプト52のスクリプト汎用API57で実行する。これにより、ブラウザソフトをアップデートすることなく、ユーザが記述した追加スクリプト52による機能をWebブラウザ19に追加して、Webブラウザ19の機能を簡単に拡張できる。   The Web browser 19 acquires a request from the Web application 39 via the general-purpose APIs 55a and 55b. The Web browser 19 transmits data to the script execution unit 51, which is the request destination notified from the Web application 39. The script execution unit 51 executes the transmitted data using the script general-purpose API 57 of the additional script 52 which is in an executable state. Thus, the function of the additional script 52 written by the user can be added to the Web browser 19 without updating the browser software, and the function of the Web browser 19 can be easily extended.

また、追加スクリプト52は、ユーザ毎に設けられている格納領域に格納される。Webブラウザ19は、本体10にログインしているユーザを問い合わせることで、ログインしているユーザを認識し、ユーザに応じて、呼び出す追加スクリプト52を変更する。これにより、Webアプリケーション39側の無駄な処理の実行を防止でき、レスポンスが低下する不都合を防止できる。   The additional script 52 is stored in a storage area provided for each user. The Web browser 19 recognizes the logged-in user by inquiring the logged-in user of the main body 10, and changes the additional script 52 to be called according to the user. As a result, it is possible to prevent the Web application 39 from executing useless processing, and to prevent the inconvenience of reducing the response.

また、複数の追加スクリプト52が存在する場合は、Webアプリケーション39は、各追加スクリプト52を同時に用いることができる。また、複数の追加スクリプト52が存在する場合において、Webアプリケーション39に対して予め登録された追加スクリプト52が存在する場合、Webブラウザ19は、Webアプリケーション39に対して、予め登録された追加スクリプトに対応する通知のみを行う。これにより、Webアプリケーション39に掛かる通知処理の負荷を軽減できる。   When a plurality of additional scripts 52 exist, the Web application 39 can use each of the additional scripts 52 at the same time. Further, when there are a plurality of additional scripts 52 and there is an additional script 52 registered in advance for the Web application 39, the Web browser 19 transmits the Web application 39 to the additional script registered in advance. Only give the corresponding notification. Thereby, the load of the notification processing applied to the Web application 39 can be reduced.

また、Webブラウザ19からの要求を一つ又は複数のWebアプリケーション39に対して通知できる。このため、Webアプリケーション39は、ポーリングの方式で要求を取得するのではなく、イベント取得の方式で、Webブラウザ19からの要求を取得できる。   Further, a request from the Web browser 19 can be notified to one or a plurality of Web applications 39. For this reason, the Web application 39 can acquire a request from the Web browser 19 by an event acquisition method instead of acquiring a request by a polling method.

このように、操作部20に設けられているWebブラウザ19の機能を、ソフトウェア更新を行うことなく、ユーザが開発した機能をインストールして拡張可能とする情報処理プログラムは、インストール可能な形式又は実行可能な形式のファイルでCD−ROM、フレキシブルディスク(FD)等のコンピュータ装置で読み取り可能な記録媒体に記録して提供してもよい。また、情報処理プログラムは、CD−R、DVD、ブルーレイディスク(登録商標)、半導体メモリ等のコンピュータ装置で読み取り可能な記録媒体に記録して提供してもよい。DVDは、「Digital Versatile Disk」の略記である。また、情報処理プログラムは、インターネット等のネットワーク経由で提供してもよい。また、情報処理プログラムを、ネットワークを介してダウンロードし、操作部20(又は本体10)にインストールして実行してもよい。また、情報処理プログラムを、機器内のROM等に予め組み込んで提供してもよい。また、情報処理プログラムの一部又は全部を、IC(半導体集積回路)等のハードウェアで実現してもよい。   As described above, the information processing program that enables the functions of the Web browser 19 provided in the operation unit 20 to be extended by installing the functions developed by the user without updating the software is in an installable format or an executable form. The file may be provided in a form of a file in a recording medium readable by a computer device such as a CD-ROM or a flexible disk (FD). Further, the information processing program may be provided by being recorded on a computer-readable recording medium such as a CD-R, a DVD, a Blu-ray Disc (registered trademark), and a semiconductor memory. DVD is an abbreviation for “Digital Versatile Disk”. Further, the information processing program may be provided via a network such as the Internet. Further, the information processing program may be downloaded via a network, installed in the operation unit 20 (or the main body 10), and executed. Further, the information processing program may be provided by being incorporated in a ROM or the like in the device in advance. Further, part or all of the information processing program may be realized by hardware such as an IC (semiconductor integrated circuit).

上述の実施の形態は、例として提示したものであり、本発明の範囲を限定することは意図していない。この新規な実施の形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことも可能である。   The above embodiments have been presented by way of example, and are not intended to limit the scope of the invention. This new embodiment can be implemented in other various forms, and various omissions, replacements, and changes can be made without departing from the gist of the invention.

例えば、実施の形態におけるMFP1は、本発明を適用する機器の一例である。このため、本発明を、プロジェクタ装置、テレビ会議システム又はデジタルカメラ装置等のMFP1以外の機器に適用してもよい。   For example, MFP 1 in the embodiment is an example of a device to which the present invention is applied. Therefore, the present invention may be applied to devices other than the MFP 1, such as a projector device, a video conference system, or a digital camera device.

実施の形態及び実施の形態の変形は、発明の範囲や要旨に含まれると共に、特許請求の範囲に記載された発明とその均等の範囲に含まれる。   The embodiments and the modifications of the embodiments are included in the scope and the gist of the invention, and are included in the invention described in the claims and the equivalents thereof.

1 複合機(MFP)
10 本体
11 CPU
12 ROM
13 RAM
14 HDD
15 通信I/F
16 接続I/F
17 エンジン部
18 システムバス
19 Webブラウザ
20 操作部
21 CPU
22 ROM
23 RAM
24 フラッシュメモリ
25 通信I/F
26 接続I/F
27 操作パネル
28 システムバス
30 通信路
31 CPU
32 ROM
33 RAM
34 HDD
35 通信I/F
38 システムバス
39 Webアプリケーション
40 ネットワーク
51 スクリプト実行部
52 追加スクリプト
55a 汎用API
55b 汎用API
56a 汎用API
56b 汎用API
57 スクリプト汎用API
58a 汎用API
58b 汎用API
59 スクリプト汎用API
61 NFC制御スクリプト
62 NFCデバイス
1 MFP (MFP)
10 body 11 CPU
12 ROM
13 RAM
14 HDD
15 Communication I / F
16 Connection I / F
17 Engine section 18 System bus 19 Web browser 20 Operation section 21 CPU
22 ROM
23 RAM
24 Flash memory 25 Communication I / F
26 Connection I / F
27 operation panel 28 system bus 30 communication path 31 CPU
32 ROM
33 RAM
34 HDD
35 Communication I / F
38 System bus 39 Web application 40 Network 51 Script execution unit 52 Additional script 55a General-purpose API
55b General-purpose API
56a General-purpose API
56b General-purpose API
57 Script General API
58a General-purpose API
58b General-purpose API
59 Script General API
61 NFC control script 62 NFC device

特開2011−141684号公報JP 2011-141684 A

Claims (13)

ネットワーク上のサーバ装置で提供されるWebアプリケーションに対して、所定の処理の実行要求を行い、又は、前記サーバ装置からダウンロードした前記Webアプリケーションに対して、所定の処理を実行要求するWebブラウザを備えた機器であって、
前記Webアプリケーションが前記Webブラウザに対して、前記機器に接続されたNFCデバイスの接続状況の要求を行うための第1のインタフェース部と、
前記機器に追加インストールされ、前記機器に接続されたNFCデバイスの接続状況を取得可能な追加プログラムを実行する実行部と、
前記追加プログラムにより取得された、前記機器に接続されたNFCデバイスの接続状況を、前記Webブラウザに通知するための第2のインタフェース部と、を備え、
前記Webアプリケーションと前記Webブラウザとの間において、前記第1のインタフェース部を介して情報の送受信を行い、前記Webブラウザと前記実行部との間において、前記第2のインタフェース部を介して情報の送受信を行うことで、前記追加プログラムにより取得された前記NFCデバイスの接続状況を、前記Webアプリケーションが、前記第1のインタフェース部及び前記第2のインタフェース部を介して取得すること
を特徴とする機器。
A web browser that requests execution of a predetermined process to a web application provided by a server device on a network, or requests execution of a predetermined process to the web application downloaded from the server device; Equipment
A first interface unit for allowing the web application to request the web browser for a connection status of an NFC device connected to the device;
An execution unit that is additionally installed in the device and executes an additional program capable of acquiring a connection status of an NFC device connected to the device;
A second interface unit for notifying the Web browser of the connection status of the NFC device connected to the device, acquired by the additional program,
Information is transmitted / received between the Web application and the Web browser via the first interface unit, and information is transmitted / received between the Web browser and the execution unit via the second interface unit. The device wherein the Web application acquires the connection status of the NFC device acquired by the additional program via the first interface unit and the second interface unit by performing transmission / reception. .
前記実行部は、複数の前記追加プログラムを個別に記憶し、
前記Webブラウザは、前記実行部において個別に記憶した各追加プログラムのうち、前記Webアプリケーションから指定された前記追加プログラムに対応する通信を、前記Webアプリケーションの間で行うこと
を特徴とする請求項1に記載の機器。
The execution unit separately stores a plurality of the additional programs,
The said Web browser performs communication corresponding to the additional program specified from the Web application among the additional programs individually stored in the execution unit, between the Web applications. Equipment described in.
前記Webアプリケーションは、前記各追加プログラムと、それぞれ通信を行うこと
を特徴とする請求項2に記載の機器。
The apparatus according to claim 2, wherein the Web application communicates with each of the additional programs.
前記Webブラウザは、前記各追加プログラムからの情報を、それぞれ前記Webアプリケーションに送信すること
を特徴とする請求項2に記載の機器。
The apparatus according to claim 2, wherein the Web browser transmits information from each of the additional programs to the Web application.
複数の前記Webアプリケーションを備え、
前記Webブラウザは、前記追加プログラムからの情報を、各前記Webアプリケーションにそれぞれ送信すること
を特徴とする請求項1から請求項4のうち、いずれか一項に記載の機器。
Comprising a plurality of the Web applications,
The device according to any one of claims 1 to 4, wherein the Web browser transmits information from the additional program to each of the Web applications.
前記情報は、前記通信の相手先の接続状況を確認するための情報を含むこと
を特徴とする請求項2又は請求項3に記載の機器。
The device according to claim 2, wherein the information includes information for confirming a connection status of a destination of the communication.
ネットワーク上のサーバ装置で提供されるWebアプリケーションに対して、所定の処理の実行要求を行い、又は、前記サーバ装置からダウンロードした前記Webアプリケーションに対して、所定の処理を実行要求するWebブラウザを備えた画像形成装置であって、
前記Webアプリケーションが前記Webブラウザに対して、前記画像形成装置に接続されたNFCデバイスの接続状況の要求を行うための第1のインタフェース部と、
前記画像形成装置に追加インストールされ、前記画像形成装置に接続されたNFCデバイスの接続状況を取得可能な追加プログラムを実行する実行部と、
前記追加プログラムにより取得された、前記画像形成装置に接続されたNFCデバイスの接続状況を、前記Webブラウザに通知するための第2のインタフェース部と、を備え、
前記Webアプリケーションと前記Webブラウザとの間において、前記第1のインタフェース部を介して情報の送受信を行い、前記Webブラウザと前記実行部との間において、前記第2のインタフェース部を介して情報の送受信を行うことで、前記追加プログラムにより取得された前記NFCデバイスの接続状況を、前記Webアプリケーションが、前記第1のインタフェース部及び前記第2のインタフェース部を介して取得すること
を特徴とする画像形成装置。
A web browser that requests execution of a predetermined process to a web application provided by a server device on a network, or requests execution of a predetermined process to the web application downloaded from the server device; Image forming apparatus,
A first interface unit for allowing the Web application to request the Web browser for a connection status of an NFC device connected to the image forming apparatus;
An execution unit that is additionally installed on the image forming apparatus and executes an additional program capable of acquiring a connection status of an NFC device connected to the image forming apparatus;
A second interface unit for notifying the Web browser of the connection status of the NFC device connected to the image forming apparatus, obtained by the additional program,
Information is transmitted / received between the Web application and the Web browser via the first interface unit, and information is transmitted / received between the Web browser and the execution unit via the second interface unit. By transmitting and receiving, the Web application acquires the connection status of the NFC device acquired by the additional program via the first interface unit and the second interface unit. Forming equipment.
第1のOS及び画像形成機能を備える本体と、
第2のOS及び前記Webブラウザを備え、前記Webアプリケーションを実行する操作部と、をさらに備え、
前記Webアプリケーションが、前記Webブラウザを介して前記接続状況を取得するための前記追加プログラムは、前記第2のOSで動作する前記操作部に追加インストールされること
を特徴とする請求項7に記載の画像形成装置。
A main body having a first OS and an image forming function;
An operation unit that includes a second OS and the Web browser and executes the Web application;
The said additional program for the said Web application to acquire the said connection status via the said Web browser is additionally installed in the said operation part operated by the said 2nd OS. Image forming apparatus.
前記第2のOSを備える操作部が有する前記Webブラウザは、前記画像形成装置にログインしているユーザの情報を、前記第1のOSを有する本体から取得するとともに、ログインしているユーザが利用できる追加スクリプトを決定すること
を特徴とする請求項8に記載の画像形成装置。
The Web browser included in the operation unit including the second OS acquires information of a user who is logged in to the image forming apparatus from the main body having the first OS, and is used by a logged-in user. The image forming apparatus according to claim 8, wherein a possible additional script is determined.
前記第1のインタフェース部は、前記第2のOSを備える操作部において、前記Webブラウザが実行する前記Webアプリケーションが取り扱い可能なJAVA(登録商標)スクリプトで提供され、
前記第2のインタフェース部は、前記第2のOSが実行可能な言語で提供されること
を特徴とする請求項8又は請求項9に記載の画像形成装置。
The first interface unit is provided as a JAVA (registered trademark) script that can be handled by the Web application executed by the Web browser in an operation unit including the second OS;
The image forming apparatus according to claim 8, wherein the second interface unit is provided in a language executable by the second OS.
ネットワーク上のサーバ装置で提供されるWebアプリケーションに対して、所定の処理の実行要求を行い、又は、前記サーバ装置からダウンロードした前記Webアプリケーションに対して、所定の処理を実行要求するWebブラウザを備えた画像形成装置の情報処理方法であって、
前記Webアプリケーションが前記Webブラウザに対して、前記画像形成装置に接続されたNFCデバイスの接続状況の要求を行うための第1のインタフェース部と、
前記画像形成装置に追加インストールされ、前記画像形成装置に接続されたNFCデバイスの接続状況を取得可能な追加プログラムを実行する実行部と、
前記追加プログラムにより取得された、前記画像形成装置に接続されたNFCデバイスの接続状況を、前記Webブラウザに通知するための第2のインタフェース部と、を設け、
前記Webアプリケーションと前記Webブラウザとの間において、前記第1のインタフェース部を介して情報の送受信を行い、前記Webブラウザと前記実行部との間において、前記第2のインタフェース部を介して情報の送受信を行うことで、前記追加プログラムにより取得された前記NFCデバイスの接続状況を、前記Webアプリケーションが、前記第1のインタフェース部及び前記第2のインタフェース部を介して取得すること
を特徴とする情報処理方法。
A web browser that requests execution of a predetermined process to a web application provided by a server device on a network, or requests execution of a predetermined process to the web application downloaded from the server device; Information processing method of the image forming apparatus,
A first interface unit for allowing the Web application to request the Web browser for a connection status of an NFC device connected to the image forming apparatus;
An execution unit that is additionally installed on the image forming apparatus and executes an additional program capable of acquiring a connection status of an NFC device connected to the image forming apparatus;
A second interface unit for notifying the Web browser of the connection status of the NFC device connected to the image forming apparatus, obtained by the additional program,
Information is transmitted / received between the Web application and the Web browser via the first interface unit, and information is transmitted / received between the Web browser and the execution unit via the second interface unit. By transmitting and receiving, the Web application acquires the connection status of the NFC device acquired by the additional program via the first interface unit and the second interface unit. Processing method.
ネットワーク上のサーバ装置で提供されるWebアプリケーションに対して、所定の処理の実行要求を行い、又は、前記サーバ装置からダウンロードした前記Webアプリケーションに対して、所定の処理を実行要求するWebブラウザを備えた画像形成装置のコンピュータを機能させる情報処理プログラムであって、
前記コンピュータを、
前記Webアプリケーションが前記Webブラウザに対して、前記画像形成装置に接続されたNFCデバイスの接続状況の要求を行うための第1のインタフェース部と、
前記画像形成装置に追加インストールされ、前記画像形成装置に接続されたNFCデバイスの接続状況を取得可能な追加プログラムを実行する実行部と、
前記追加プログラムにより取得された、前記画像形成装置に接続されたNFCデバイスの接続状況を、前記Webブラウザに通知するための第2のインタフェース部として機能させ、
前記Webアプリケーションと前記Webブラウザとの間において、前記第1のインタフェース部を介して情報の送受信を行い、前記Webブラウザと前記実行部との間において、前記第2のインタフェース部を介して情報の送受信を行うことで、前記追加プログラムにより取得された前記NFCデバイスの接続状況を、前記Webアプリケーションが、前記第1のインタフェース部及び前記第2のインタフェース部を介して取得すること
を特徴とする情報処理プログラム。
A web browser that requests execution of a predetermined process to a web application provided by a server device on a network, or requests execution of a predetermined process to the web application downloaded from the server device; Information processing program for causing a computer of the image forming apparatus to function,
Said computer,
A first interface unit for allowing the Web application to request the Web browser for a connection status of an NFC device connected to the image forming apparatus;
An execution unit that is additionally installed on the image forming apparatus and executes an additional program capable of acquiring a connection status of an NFC device connected to the image forming apparatus;
Causing the Web browser to function as a second interface unit for notifying the connection status of the NFC device connected to the image forming apparatus acquired by the additional program to the web browser;
Information is transmitted / received between the Web application and the Web browser via the first interface unit, and information is transmitted / received between the Web browser and the execution unit via the second interface unit. By transmitting and receiving, the Web application acquires the connection status of the NFC device acquired by the additional program via the first interface unit and the second interface unit. Processing program.
ネットワーク上のサーバ装置と、前記サーバ装置で提供されるWebアプリケーションに対して、所定の処理の実行要求を行い、又は、前記サーバ装置からダウンロードした前記Webアプリケーションに対して、所定の処理を実行要求するWebブラウザを備えた機器とを有する情報処理システムであって、
前記Webアプリケーションが前記Webブラウザに対して、前記機器に接続されたNFCデバイスの接続状況の要求を行うための第1のインタフェース部と、
前記機器に追加インストールされ、前記機器に接続されたNFCデバイスの接続状況を取得可能な追加プログラムを実行する実行部と、
前記追加プログラムにより取得された、前記機器に接続されたNFCデバイスの接続状況を、前記Webブラウザに通知するための第2のインタフェース部と、を備え、
前記Webアプリケーションと前記Webブラウザとの間において、前記第1のインタフェース部を介して情報の送受信を行い、前記Webブラウザと前記実行部との間において、前記第2のインタフェース部を介して情報の送受信を行うことで、前記追加プログラムにより取得された前記NFCデバイスの接続状況を、前記Webアプリケーションが、前記第1のインタフェース部及び前記第2のインタフェース部を介して取得すること
を特徴とする情報処理システム。
Requests execution of predetermined processing to a server device on a network and a Web application provided by the server device, or requests execution of predetermined processing to the Web application downloaded from the server device An information processing system comprising a device having a Web browser
A first interface unit for allowing the web application to request the web browser for a connection status of an NFC device connected to the device;
An execution unit that is additionally installed in the device and executes an additional program capable of acquiring a connection status of an NFC device connected to the device;
A second interface unit for notifying the Web browser of the connection status of the NFC device connected to the device, acquired by the additional program ,
Information is transmitted / received between the Web application and the Web browser via the first interface unit, and information is transmitted / received between the Web browser and the execution unit via the second interface unit. By transmitting and receiving, the Web application acquires the connection status of the NFC device acquired by the additional program via the first interface unit and the second interface unit. Processing system.
JP2015058799A 2015-03-20 2015-03-20 Apparatus, image forming apparatus, information processing method, information processing program, and information processing system Active JP6668601B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015058799A JP6668601B2 (en) 2015-03-20 2015-03-20 Apparatus, image forming apparatus, information processing method, information processing program, and information processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015058799A JP6668601B2 (en) 2015-03-20 2015-03-20 Apparatus, image forming apparatus, information processing method, information processing program, and information processing system

Publications (2)

Publication Number Publication Date
JP2016177703A JP2016177703A (en) 2016-10-06
JP6668601B2 true JP6668601B2 (en) 2020-03-18

Family

ID=57070167

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015058799A Active JP6668601B2 (en) 2015-03-20 2015-03-20 Apparatus, image forming apparatus, information processing method, information processing program, and information processing system

Country Status (1)

Country Link
JP (1) JP6668601B2 (en)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5728994B2 (en) * 2011-02-14 2015-06-03 セイコーエプソン株式会社 Network system, interface board, network system print processing method, and client terminal
JP6198511B2 (en) * 2013-08-05 2017-09-20 キヤノン株式会社 Information processing apparatus, information processing apparatus control method, and program

Also Published As

Publication number Publication date
JP2016177703A (en) 2016-10-06

Similar Documents

Publication Publication Date Title
JP6547291B2 (en) INFORMATION PROCESSING SYSTEM AND INFORMATION PROCESSING METHOD
JP6645341B2 (en) Information processing system, information processing apparatus, and information processing method
US10609509B2 (en) Information processing system, information processing apparatus, and information processing method for providing application information
JP6927276B2 (en) Information processing system, information processing device, information processing method and program
JP6631342B2 (en) Apparatus, image forming apparatus, information processing method, information processing program, and information processing system
JP6442976B2 (en) Image forming apparatus, browser control method, and program
US10191698B2 (en) Information processing apparatus, control method, and storage medium
JP6520577B2 (en) INFORMATION PROCESSING SYSTEM, INFORMATION PROCESSING DEVICE, AND INFORMATION PROCESSING METHOD
US9179017B2 (en) Image processing apparatus and method for processing an image which utilizes a first mode for instructions from the image processing apparatus and a second mode for instructions received from an external apparatus and for instructions from the image processing apparatus
JP2016181202A (en) Information processing terminal and program
JP6668601B2 (en) Apparatus, image forming apparatus, information processing method, information processing program, and information processing system
US11521613B2 (en) Communication system, control method, and non-transitory computer-readable storage medium
JP6295745B2 (en) Apparatus provided with operation unit, information processing method, information processing program, and information processing system
JP6302316B2 (en) Recording system, information processing apparatus, and control method thereof
US20190286432A1 (en) Information processing system, apparatus, information processing method, and recording medium
JP6714814B2 (en) Information processing system, information processing apparatus, and information processing method
US10079873B2 (en) Information processing apparatus and method
JP6424441B2 (en) MFP, information processing method, information processing program, and information processing system
JP7342443B2 (en) Information processing device, method, and program
US20150355803A1 (en) Operation unit-equipped device, computer program product, and information processing method
JP7156446B2 (en) Server, system, control method and program
JP6930579B2 (en) Information processing system, information processing device, information processing method and program
JP2016177695A (en) Apparatus, image forming device, information processing method, information processing program, and information processing system
JP2019160170A (en) Information processing system, information processing method, and program
JP2017199216A (en) Information processing system, information processing device, information processing method, and program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180316

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20181030

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20181120

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190115

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190625

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190809

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200210

R151 Written notification of patent or utility model registration

Ref document number: 6668601

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151