JP2019149132A - Application program - Google Patents

Application program Download PDF

Info

Publication number
JP2019149132A
JP2019149132A JP2018035235A JP2018035235A JP2019149132A JP 2019149132 A JP2019149132 A JP 2019149132A JP 2018035235 A JP2018035235 A JP 2018035235A JP 2018035235 A JP2018035235 A JP 2018035235A JP 2019149132 A JP2019149132 A JP 2019149132A
Authority
JP
Japan
Prior art keywords
browser
application program
authentication
instruction
display
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
JP2018035235A
Other languages
Japanese (ja)
Other versions
JP7081209B2 (en
Inventor
弘和 佐藤
Hirokazu Sato
弘和 佐藤
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.)
Brother Industries Ltd
Original Assignee
Brother Industries 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 Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2018035235A priority Critical patent/JP7081209B2/en
Publication of JP2019149132A publication Critical patent/JP2019149132A/en
Application granted granted Critical
Publication of JP7081209B2 publication Critical patent/JP7081209B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)

Abstract

To provide an application program utilizing a cloud server, with which it is possible to improve the ease of use when authenticating the cloud server.SOLUTION: A scan application 41 causes a PC 1 to function as a local server 43 when an authentication indication to a cloud A is accepted. The local server 43 instructs a browser 42 that the authentication screen of the cloud A be displayed and the local server 43 be designed as a redirect destination, placing the browser 42 in an active state and the scan application 41 in an inactive state. When a redirect request is received via the browser 42, the local server 43 instructs the browser 42 that a finish screen be displayed which indicates the result of authentication to the cloud A and which includes specific information indicating that the scan application 41 be placed in an active state, placing the browser 42 in an active state and the scan application 41 in an inactive state.SELECTED DRAWING: Figure 4

Description

本明細書に開示される技術の技術分野は、クラウドサーバを利用するアプリケーションプログラムに関する技術分野である。   The technical field of the technique disclosed in this specification is a technical field related to an application program that uses a cloud server.

近年、パーソナルコンピュータ(PC)やスマートフォン等の情報処理装置から、インターネット上のクラウドサーバに、データのアップロードないしダウンロードを行う技術が知られている。例えば、特許文献1には、スキャナで読み取った読取データを、サーバにアップロードする構成が開示されている。   In recent years, a technique for uploading or downloading data from an information processing apparatus such as a personal computer (PC) or a smartphone to a cloud server on the Internet is known. For example, Patent Document 1 discloses a configuration in which read data read by a scanner is uploaded to a server.

特開2014−45461号公報JP 2014-45461 A

クラウドサーバを利用するアプリケーションプログラムでは、ユーザに対してクラウドサーバへの認証に必要な操作を要求する。この認証時のアプリケーションプログラムの動作に改善の余地がある。   In an application program that uses a cloud server, the user is requested to perform an operation necessary for authentication to the cloud server. There is room for improvement in the operation of the application program at the time of authentication.

具体的に、クラウドサーバへの認証の際、アプリケーションプログラムからクラウドサーバに対してアクセス許可を要求すると、クラウドサーバによって提供される認証画面を、アプリケーションプログラムとは別のプログラムであるブラウザが表示し、その認証画面を介して、認証に必要な情報がユーザによって入力されると、クラウドサーバでの認証が行われる。その後、ブラウザがアクティブな状態になっているが、ユーザがアプリケーションプログラムを再びアクティブな状態に戻す必要があることがユーザには分かり難く、困惑を生じさせることがある。   Specifically, when requesting access permission from the application program to the cloud server when authenticating to the cloud server, the browser that is a program different from the application program displays the authentication screen provided by the cloud server, When information necessary for authentication is input by the user via the authentication screen, authentication on the cloud server is performed. Thereafter, although the browser is in an active state, it is difficult for the user to understand that the user needs to return the application program to the active state again, which may cause confusion.

本明細書には、クラウドサーバを利用するアプリケーションプログラムであって、クラウドサーバへの認証時の使い勝手を向上させるという課題を解決する技術を開示する。   The present specification discloses a technology that solves the problem of improving the usability at the time of authentication to a cloud server, which is an application program that uses the cloud server.

この課題の解決を目的としてなされたアプリケーションプログラムは、情報処理装置のコンピュータによって実行可能なアプリケーションプログラムであって、前記コンピュータに、前記情報処理装置のユーザインタフェースを介して、前記アプリケーションプログラムがアクティブな状態で、クラウドサーバへの認証指示を受け付ける認証指示受付処理を実行させ、前記コンピュータを、前記認証指示を前記認証指示受付処理で受け付けた場合に、ローカルホストのウェブサーバであるローカルサーバとして機能させ、前記コンピュータに、前記認証指示を前記認証指示受付処理で受け付けた場合に、前記情報処理装置に組み込まれたブラウザに、前記クラウドサーバによって提供される認証画面を表示することと、前記ローカルサーバをリダイレクト要求のリダイレクト先とすることと、を指示するブラウザ指示処理と、前記ブラウザをアクティブな状態にし、前記アプリケーションプログラムを非アクティブな状態にする第1ブラウザアクティブ処理と、を実行させ、前記ローカルサーバは、前記コンピュータに、前記ブラウザ指示処理の後、前記リダイレクト要求を前記ブラウザを介して前記ローカルサーバが受信した場合に、前記クラウドサーバへの認証結果を示す完了画面であって、前記アプリケーションプログラムをアクティブな状態にすることを示す特定情報が含まれる前記完了画面を表示するよう、前記ブラウザに指示する認証結果表示処理と、前記ブラウザをアクティブな状態にし、前記アプリケーションプログラムを非アクティブな状態にする第2ブラウザアクティブ処理と、を実行させ、前記コンピュータに、前記クラウドサーバへの認証に成功している場合、前記ユーザインタフェースを介して、前記アプリケーションプログラムがアクティブな状態で、前記クラウドサーバを利用する処理の実行指示を受け付ける実行指示受付処理を実行させ、前記実行指示を前記実行指示受付処理で受け付けた場合に、前記実行指示に対応する前記処理を実行させる、ことを特徴としている。   An application program made for the purpose of solving this problem is an application program that can be executed by a computer of an information processing apparatus, and the application program is in an active state on the computer via a user interface of the information processing apparatus Then, when an authentication instruction reception process for receiving an authentication instruction to the cloud server is executed, and when the computer receives the authentication instruction in the authentication instruction reception process, the computer functions as a local server that is a web server of a local host, Displaying an authentication screen provided by the cloud server on a browser incorporated in the information processing apparatus when the authentication instruction is received in the authentication instruction receiving process on the computer; and A browser instruction process for instructing to be a redirect destination of a direct request; and a first browser active process for making the browser active and making the application program inactive; Is a completion screen showing an authentication result to the cloud server when the local server receives the redirect request via the browser after the browser instruction processing, and displays the application program on the computer. An authentication result display process for instructing the browser to display the completion screen including specific information indicating that the application program is to be activated, the browser is activated, and the application program is deactivated Second browser If the computer has been successfully authenticated to the cloud server, the execution of the process using the cloud server in the active state of the application program is performed via the user interface. An execution instruction reception process for receiving an instruction is executed, and when the execution instruction is received in the execution instruction reception process, the process corresponding to the execution instruction is executed.

本明細書に開示されるアプリケーションプログラムは、クラウドサーバへの認証指示を受け付けた場合、情報処理装置のコンピュータをローカルサーバとして機能させる。ローカルサーバは、ブラウザに認証画面を表示させ、さらに、ブラウザをアクティブな状態とさせ、アプリケーションプログラムを非アクティブな状態とさせる。ローカルサーバは、リダイレクト要求を受信した場合、クラウドサーバへの認証結果を示す完了画面の表示をブラウザに指示する。この完了画面には、アプリケーションプログラムをアクティブな状態にすることを示す特定情報が含まれる。そのため、ユーザは、アプリケーションプログラムをアクティブな状態にする必要が有ることを認識でき、困惑の軽減が期待できる。   The application program disclosed in this specification causes the computer of the information processing apparatus to function as a local server when receiving an authentication instruction to the cloud server. The local server displays an authentication screen on the browser, further activates the browser, and deactivates the application program. When the local server receives the redirect request, the local server instructs the browser to display a completion screen indicating the authentication result to the cloud server. The completion screen includes specific information indicating that the application program is to be activated. Therefore, the user can recognize that the application program needs to be in an active state, and can expect a reduction in confusion.

上記アプリケーションプログラムが組み込まれた情報処理装置、アプリケーションプログラムを格納するコンピュータにて読取可能な記憶媒体、及びアプリケーションプログラムの機能を実現するための制御方法も、新規で有用である。   An information processing apparatus incorporating the application program, a computer-readable storage medium storing the application program, and a control method for realizing the function of the application program are also novel and useful.

本明細書に開示される技術によれば、クラウドサーバを利用するアプリケーションプログラムであって、クラウドサーバへの認証時の使い勝手を向上させる技術が実現される。   According to the technology disclosed in the present specification, a technology that is an application program that uses a cloud server and that improves usability when authenticating to the cloud server is realized.

PCの電気的構成を示すブロック図である。It is a block diagram which shows the electric constitution of PC. 保存先の選択画面の例を示す説明図である。It is explanatory drawing which shows the example of the selection screen of a preservation | save destination. クラウドの選択画面の例を示す説明図である。It is explanatory drawing which shows the example of the selection screen of a cloud. 認証手順を示すシーケンス図である。It is a sequence diagram which shows an authentication procedure. 認証要求情報の入力画面の例を示す説明図である。It is explanatory drawing which shows the example of the input screen of authentication request information. 認証許可を受け付ける画面の例を示す説明図である。It is explanatory drawing which shows the example of the screen which receives authentication permission. 認証完了時の完了画面の例を示す説明図である。It is explanatory drawing which shows the example of the completion screen at the time of completion of authentication. 認証完了後の画面の例を示す説明図である。It is explanatory drawing which shows the example of the screen after completion of authentication. スキャンアプリ処理の手順を示すフローチャートである。It is a flowchart which shows the procedure of a scan application process. アップロード処理の手順を示すフローチャートである。It is a flowchart which shows the procedure of an upload process. ローカルサーバ処理の手順を示すフローチャートである。It is a flowchart which shows the procedure of a local server process.

本明細書では、アプリケーションプログラム(以下、「アプリ」とする)を具体化した実施の形態について、添付図面を参照しつつ詳細に説明する。本形態は、パーソナルコンピュータ(以下、「PC」とする)にて実行可能なスキャンアプリを開示するものである。   In the present specification, an embodiment embodying an application program (hereinafter referred to as “application”) will be described in detail with reference to the accompanying drawings. The present embodiment discloses a scan application that can be executed by a personal computer (hereinafter referred to as “PC”).

本形態のPC1は、図1に示すように、スキャナ2と接続され、スキャナ2から画像データを受信する。PC1は、情報処理装置の一例である。PC1は、各種のプログラムの実行が可能な装置である。PC1に代えて、例えば、タブレットコンピュータ、スマートフォンであってもよい。スキャナ2は、原稿を読み取って画像データを取得し、取得した画像データをPC1に送信する。PC1に接続されるスキャナ2は、1台に限らず、複数台でも良い。また、PC1には、スキャナに限らず、コピー機、複合機、FAX装置、デジタルカメラ等、画像データを取得して送信できる装置が接続されていればよい。   As shown in FIG. 1, the PC 1 of this embodiment is connected to the scanner 2 and receives image data from the scanner 2. The PC 1 is an example of an information processing apparatus. The PC 1 is a device that can execute various programs. For example, a tablet computer or a smartphone may be used instead of the PC 1. The scanner 2 reads a document, acquires image data, and transmits the acquired image data to the PC 1. The number of scanners 2 connected to the PC 1 is not limited to one, and a plurality of scanners may be used. The PC 1 is not limited to the scanner, but may be connected to a device capable of acquiring and transmitting image data, such as a copier, a multifunction device, a FAX device, and a digital camera.

本形態のPC1は、図1に示すように、インターネット100に接続され、インターネット100を介して、クラウドサーバ101と、クラウドサーバ102と、に接続される。つまり、PC1のユーザは、PC1を使用して、インターネット100を介して提供される各種のクラウドサービスを利用できる。   As shown in FIG. 1, the PC 1 of this embodiment is connected to the Internet 100 and is connected to the cloud server 101 and the cloud server 102 via the Internet 100. That is, the user of the PC 1 can use various cloud services provided via the Internet 100 using the PC 1.

各クラウドサービスは、1以上のストレージサーバや認証用サーバを管理し、管理するストレージサーバへのデータのアップロードやダウンロードのサービスを提供する。ストレージサーバの1つが認証サーバを兼ねていても良い。以下では、1つのクラウドサービスにて管理されるストレージサーバや認証用サーバを区別せず、まとめて「クラウドサーバ」と呼ぶ。なお、図1では、PC1に2つのクラウドサーバ101、102が接続されている状態を例示しているが、アクセス可能なクラウドサーバの数はさらに多く、実際に接続されるクラウドサーバの数は限定されない。   Each cloud service manages one or more storage servers and authentication servers, and provides services for uploading and downloading data to the managed storage servers. One of the storage servers may also serve as the authentication server. Hereinafter, a storage server and an authentication server managed by one cloud service are not distinguished and are collectively referred to as a “cloud server”. 1 illustrates a state in which two cloud servers 101 and 102 are connected to the PC 1, but the number of accessible cloud servers is larger, and the number of cloud servers that are actually connected is limited. Not.

本形態のPC1は、図1に示すように、CPU11と、ROM12と、RAM13と、不揮発性メモリ14と、を含む制御基板10を備えている。さらに、タッチパネル15と、ネットワーク通信インタフェース(以下、「IF」とする)16と、USB−IF17と、を備え、これらが制御基板10に電気的に接続されている。CPU11は、コンピュータの一例である。   As shown in FIG. 1, the PC 1 according to this embodiment includes a control board 10 including a CPU 11, a ROM 12, a RAM 13, and a nonvolatile memory 14. Furthermore, a touch panel 15, a network communication interface (hereinafter referred to as “IF”) 16, and a USB-IF 17 are provided, and these are electrically connected to the control board 10. The CPU 11 is an example of a computer.

ROM12には、MFP100を起動するための起動プログラム等が記憶されている。RAM13は、各種の処理が実行される際の作業領域として、あるいは、データを一時的に記憶する記憶領域として利用される。不揮発性メモリ14は、例えば、HDD、フラッシュメモリであり、各種のプログラムや画像データ等のデータや各種設定を記憶する領域として利用される。   The ROM 12 stores a startup program for starting the MFP 100 and the like. The RAM 13 is used as a work area when various processes are executed or as a storage area for temporarily storing data. The nonvolatile memory 14 is, for example, an HDD or a flash memory, and is used as an area for storing data such as various programs and image data and various settings.

CPU11は、ROM12や不揮発性メモリ14から読み出したプログラムに従って、また、ユーザの指示に基づいて、各種の処理を実行する。なお、図1中の制御基板10は、PC1の制御に利用されるハードウェアやソフトウェアを纏めた総称であって、実際にPC1に存在する単一のハードウェアを表すとは限らない。   The CPU 11 executes various processes according to programs read from the ROM 12 and the nonvolatile memory 14 and based on user instructions. Note that the control board 10 in FIG. 1 is a collective term for hardware and software used for controlling the PC 1 and does not necessarily represent a single piece of hardware that actually exists in the PC 1.

タッチパネル15は、ユーザによる操作を受け付けるとともに情報の表示を行うハードウェアである。すなわち、タッチパネル15は、入力機能と出力機能との両方を備えるユーザインタフェースの一例である。ユーザインタフェースは、タッチパネル15に限らず、ディスプレイとキーボードやマウスとの組み合わせを備えるものであっても良い。   The touch panel 15 is hardware that accepts user operations and displays information. That is, the touch panel 15 is an example of a user interface having both an input function and an output function. The user interface is not limited to the touch panel 15, and may be a combination of a display, a keyboard, and a mouse.

ネットワーク通信IF16は、インターネット100を介して外部装置と通信を行うためのハードウェアを含む。ネットワーク通信IF16の通信方式は、無線でも有線でもよく、LAN、Wi−Fi(登録商標)など、どのような規格の方式でもよい。また、USB−IF17は、スキャナ2との通信を行うためのハードウェアを含む。なお、ネットワーク通信IF16を介して接続されるスキャナがあっても良い。   The network communication IF 16 includes hardware for communicating with an external device via the Internet 100. The communication method of the network communication IF 16 may be wireless or wired, and may be any standard method such as LAN or Wi-Fi (registered trademark). The USB-IF 17 includes hardware for communicating with the scanner 2. There may be a scanner connected via the network communication IF 16.

PC1の不揮発性メモリ14には、オペレーティングシステム(以下、「OS」とする)40と、スキャンアプリ41と、ブラウザ42と、を含む、各種のプログラムが記憶されている。スキャンアプリ41は、ユーザの指示に基づいて、スキャナ2との通信を行い、スキャナ2への読み取り設定や読み取り実行の指示等の送信、スキャナ2にて読み取った画像データの受信や表示、受信した画像データの保存等を行うプログラムである。ブラウザ42は、ウェブページを表示するプログラムである。OS40の一部は、ROM12に含まれていてもよい。   Various programs including an operating system (hereinafter referred to as “OS”) 40, a scan application 41, and a browser 42 are stored in the nonvolatile memory 14 of the PC 1. The scan application 41 communicates with the scanner 2 based on a user's instruction, transmits reading settings to the scanner 2 and instructions for executing reading, and receives, displays, and receives image data read by the scanner 2. A program for storing image data. The browser 42 is a program that displays a web page. A part of the OS 40 may be included in the ROM 12.

スキャンアプリ41が記憶される媒体は、不揮発性メモリ14に限らない。スキャンアプリ41が記憶される媒体は、コンピュータが読み取り可能なストレージ媒体であってもよい。コンピュータが読み取り可能なストレージ媒体とは、non−transitoryな媒体である。non−transitoryな媒体には、上記の例の他に、CD−ROM、DVD−ROM等の記録媒体も含まれる。また、non−transitoryな媒体は、tangibleな媒体でもある。一方、インターネット上のサーバなどからダウンロードされるプログラムを搬送する電気信号は、コンピュータが読み取り可能な媒体の一種であるコンピュータが読み取り可能な信号媒体であるが、non−transitoryなコンピュータが読み取り可能なストレージ媒体には含まれない。   The medium in which the scan application 41 is stored is not limited to the nonvolatile memory 14. The medium in which the scan application 41 is stored may be a computer-readable storage medium. A computer-readable storage medium is a non-transitory medium. Non-transitory media include recording media such as CD-ROM and DVD-ROM in addition to the above examples. A non-transitory medium is also a tangible medium. On the other hand, an electrical signal that carries a program downloaded from a server on the Internet is a computer-readable signal medium that is a kind of computer-readable medium, but a non-transitory computer-readable storage. Not included in the media.

続いて、スキャンアプリ41の動作について説明する。なお、以下の説明における処理およびフローチャートの各処理ステップは、基本的に、スキャンアプリ41などのプログラムに記述された命令に従ったCPU11の処理を示す。すなわち、以下の説明における「判断」、「取得」、「受付」、「制御」等の処理は、CPU11の処理を表している。CPU11による処理は、PC1のOS40の他のモジュールとデータ交換するためのIF(APIとも呼ばれる)を用いたハードウェア制御も含む。本明細書では、OS40の記載を省略して各プログラムの動作を説明する。すなわち、以下の説明において、「プログラムPがハードウェアHを制御する」という趣旨の記載は、「プログラムPがOS40のAPIを用いてハードウェアHを制御する」ことを指してもよい。なお、「取得」は要求を必須とはしない概念で用いる。すなわち、CPU11が要求することなくデータを受信するという処理も、「CPU11がデータを取得する」という概念に含まれる。また、本明細書中の「データ」とは、コンピュータに読取可能なビット列で表される。そして、実質的な意味内容が同じでフォーマットが異なるデータは、同一のデータとして扱われるものとする。本明細書中の「情報」についても同様である。また、「要求する」、「指示する」とは、要求していることを示す情報や、指示していることを示す情報を相手に出力することを示す概念である。また、要求していることを示す情報や指示していることを示す情報のことを、単に、「要求」、「指示」とも記載する。   Next, the operation of the scan application 41 will be described. Note that the processing in the following description and each processing step in the flowchart basically indicate processing of the CPU 11 in accordance with an instruction described in a program such as the scan application 41. That is, processes such as “determination”, “acquisition”, “acceptance”, and “control” in the following description represent processes of the CPU 11. The processing by the CPU 11 includes hardware control using an IF (also referred to as API) for exchanging data with other modules of the OS 40 of the PC 1. In this specification, description of the OS 40 is omitted, and the operation of each program will be described. That is, in the following description, the statement that “the program P controls the hardware H” may refer to “the program P controls the hardware H using the API of the OS 40”. “Acquisition” is used in a concept that does not require a request. That is, the process that the CPU 11 receives data without requesting it is also included in the concept of “the CPU 11 acquires data”. Further, “data” in this specification is represented by a bit string readable by a computer. Data having substantially the same semantic content but different formats are handled as the same data. The same applies to “information” in this specification. Further, “requesting” and “instructing” are concepts indicating that information indicating a request or information indicating an instruction is output to the other party. Information indicating that the request is being made and information indicating that the request is being made are also simply referred to as “request” and “instruction”.

また、プログラムに記述された命令に従ったCPU11の処理を、省略した文言で記載することがある。例えば、「CPU11が行う」、「スキャンアプリ41が行う」のように記載することがある。また、CPU11による処理であって、情報Aが事柄Bであることを示しているか否かを判断する処理を、「情報Aから、事柄Bであるか否かを判断する」のように概念的に記載することがある。また、CPU11による処理であって、情報Aが事柄Bであることを示しているか、事柄Cであることを示しているかを判断する処理を、「情報Aから、事柄Bであるか事柄Cであるかを判断する」のように概念的に記載することがある。   Moreover, the process of CPU11 according to the instruction | indication described in the program may be described by the abbreviation text. For example, it may be described as “performed by CPU 11” or “performed by scan application 41”. Further, the process of determining whether or not the information A indicates the matter B is a process by the CPU 11 such as “determining whether or not the information A is the matter B”. May be described. Further, a process for determining whether the information A indicates the matter B or the matter C, which is a process by the CPU 11, is referred to as “from the information A to the matter C. It may be described conceptually as “determine if there is”.

本形態のスキャンアプリ41は、起動の指示を受け付けると、タッチパネル15にアプリ用のウィンドウを表示させ、ユーザの操作を受け付ける。スキャンアプリ41は、ユーザの指示に基づいて、例えば、スキャナ2に原稿の画像を読み取らせ、スキャナ2から画像データを受信して、受信した画像データを指定された保存場所に保存する。以下、図2〜図8を参照して、画像データをクラウドサーバへアップロードする手順について説明する。   Upon receiving an activation instruction, the scan application 41 according to the present embodiment displays an application window on the touch panel 15 and accepts a user operation. The scan application 41, for example, causes the scanner 2 to read an image of a document based on a user instruction, receives image data from the scanner 2, and stores the received image data in a designated storage location. The procedure for uploading image data to the cloud server will be described below with reference to FIGS.

図2は、画像データの保存の指示を受け付けた場合に、スキャンアプリ41が表示させるアプリ用ウィンドウ411の例を示している。図2では、アプリ用ウィンドウ411のスキャン画像領域81に、スキャナ2から受信した画像データの画像が含まれている。また、保存先の選択肢として、「PCへの保存」ボタン82と、「クラウドサービスへの保存」ボタン83と、「アプリで開く」ボタン84と、が含まれている。そして、スキャンアプリ41は、各ボタン82〜84への操作を受け付ける。   FIG. 2 shows an example of an application window 411 displayed by the scan application 41 when an instruction to save image data is received. In FIG. 2, the scanned image area 81 of the application window 411 includes an image of image data received from the scanner 2. In addition, as save destination options, a “save to PC” button 82, a “save to cloud service” button 83, and an “open with application” button 84 are included. Then, the scan application 41 receives operations on the buttons 82 to 84.

スキャンアプリ41は、ボタン83への操作を受け付けた場合に、アップロード先のクラウドサーバの選択を受け付けるクラウド選択ウィンドウ412を表示させる。図3は、クラウド選択ウィンドウ412の例を示している。クラウド選択ウィンドウ412は、アプリ用ウィンドウ411の前面に表示される。   When the scan application 41 receives an operation on the button 83, the scan application 41 displays a cloud selection window 412 for receiving selection of an upload destination cloud server. FIG. 3 shows an example of the cloud selection window 412. The cloud selection window 412 is displayed in front of the application window 411.

図3では、クラウドサーバの選択肢として、「クラウドA」ボタン85と、「クラウドB」ボタン86と、が表示され、「クラウドA」が選択されている状態の例を示している。クラウドサーバは、それぞれ個別の管理システムを備えている。そのため、クラウドサーバに画像データをアップロードする場合には、スキャンアプリ41は、選択されたクラウドサーバの規定に則って認証を受け、認証情報を取得する必要がある。クラウド選択ウィンドウ412には、図3に示すように、クラウドサーバごとの「サインイン」ボタン851、861も表示されている。   FIG. 3 shows an example in which a “cloud A” button 85 and a “cloud B” button 86 are displayed as options for the cloud server, and “cloud A” is selected. Each cloud server has an individual management system. Therefore, when uploading image data to the cloud server, the scan application 41 needs to be authenticated in accordance with the rules of the selected cloud server and acquire authentication information. In the cloud selection window 412, as shown in FIG. 3, “sign-in” buttons 851 and 861 for each cloud server are also displayed.

スキャンアプリ41は、クラウド選択ウィンドウ412にて、例えば、ボタン85の操作によってクラウドサーバの選択を受け付け、さらに、ボタン851の操作によってサインインの指示を受け付けると、認証情報を取得するための手続を開始する。なお、ボタン851は、そのクラウドサーバへの「サインイン」の指示を受け付けるボタンであり、そのクラウドサーバへ現在サインインしていない、すなわち、サインアウト状態であることを示す機能も兼ねている。   In the cloud selection window 412, for example, the scan application 41 receives a selection of a cloud server by operating the button 85, and further receives a sign-in instruction by operating the button 851, and then performs a procedure for acquiring authentication information. Start. The button 851 is a button for accepting an instruction of “sign-in” to the cloud server, and also has a function of indicating that the user is not currently signed in to the cloud server, that is, a sign-out state.

クラウドサーバでは、例えば、OAuth2.0を用いた認証方式が採用されている。OAuth2.0を用いた認証方式では、例えば、図4のシーケンス図に示す手順で、認証情報であるアクセストークンを取得する。図4では、クラウドサーバへのアカウントを作成済みのユーザによって、クラウドサーバへの認証を要求する場合の手順を示している。なお、クラウドAは、クラウドサーバにて実行されるプログラムである。   In the cloud server, for example, an authentication method using OAuth 2.0 is adopted. In the authentication method using OAuth 2.0, for example, an access token that is authentication information is acquired by the procedure shown in the sequence diagram of FIG. FIG. 4 shows a procedure for requesting authentication to the cloud server by a user who has already created an account to the cloud server. Cloud A is a program executed on the cloud server.

図3に示したボタン851への操作を受け付けた場合、スキャンアプリ41は、図4に示すように、クラウドAへのサインイン手順を実行する。スキャンアプリ41は、サインインの指示を受け付ける(手順51)と、まず、ローカルサーバ43を起動し(手順52)、さらに、ブラウザ42を起動する(手順53)。   When the operation to the button 851 illustrated in FIG. 3 is received, the scan application 41 executes a sign-in procedure to the cloud A as illustrated in FIG. When receiving the sign-in instruction (procedure 51), the scan application 41 first activates the local server 43 (procedure 52) and further activates the browser 42 (procedure 53).

ローカルサーバ43は、PC1自身を、ローカルホストのウェブサーバとして動作させるプログラムである。ローカルホストのウェブサーバとは、ウェブサーバが動作している装置の内部で動作し、クライアントから利用できるように設定されたウェブサーバである。すなわち、ローカルサーバ43は、インターネット100に公開されているウェブサーバがブラウザとHTTP通信をすると同様に、ブラウザ42とPC1内部で、HTTP通信をすることができる。   The local server 43 is a program that causes the PC 1 itself to operate as a web server of the local host. The web server of the local host is a web server configured to operate inside a device on which the web server operates and to be used by a client. That is, the local server 43 can perform HTTP communication within the browser 42 and the PC 1 in the same manner as a web server published on the Internet 100 performs HTTP communication with the browser.

スキャンアプリ41は、図4の手順53にて、ブラウザ42に、アクセスしようとしているクラウドサーバの認証ページのURLと、リダイレクト先としてのローカルサーバ43のURLとを指示する。選択可能な各クラウドサーバの認証ページのURLは、予めスキャンアプリ41に登録されている。スキャンアプリ41は、選択されたクラウドサーバの認証ページのURLを読み出して、ブラウザ42の起動オプションに設定する。   In step 53 of FIG. 4, the scan application 41 instructs the browser 42 of the URL of the authentication page of the cloud server to be accessed and the URL of the local server 43 as the redirect destination. The URL of the authentication page of each selectable cloud server is registered in the scan application 41 in advance. The scan application 41 reads the URL of the authentication page of the selected cloud server and sets it as the activation option of the browser 42.

図4の手順53にてブラウザ42が起動されることで、ブラウザ42は、クラウドAに認証手続の開始要求を送信し(手順54)、クラウドAから認証ページのウェブページデータを受信する(手順55)。以下、ページを示すウェブページデータのことを、単に、「ページ」とも記載する。ブラウザ42は、例えば、図5に示すように、クラウドAの認証ページを含むブラウザ表示画面421をタッチパネル15に表示させる。クラウドサーバの認証ページは、認証画面の一例である。   When the browser 42 is activated in the procedure 53 of FIG. 4, the browser 42 transmits an authentication procedure start request to the cloud A (procedure 54), and receives web page data of the authentication page from the cloud A (procedure). 55). Hereinafter, web page data indicating a page is also simply referred to as “page”. For example, as shown in FIG. 5, the browser 42 displays a browser display screen 421 including an authentication page of cloud A on the touch panel 15. The authentication page of the cloud server is an example of an authentication screen.

なお、クラウドサーバは、送信元のアプリの登録情報を表示するサービスを提供している場合がある。例えば、スキャンアプリ41の製造メーカが、予めクラウドサーバのサービス事業者に、アプリの名称やアプリのアイコンなどの登録情報を、スキャンアプリ41の識別情報と対応付けて登録するよう申請しておくことで、サービス事業者は、クラウドサーバに登録情報を登録する。クラウドサーバは、認証手続の開始時にスキャンアプリ41の識別情報を受信すると、対応する登録情報を含むウェブページデータをブラウザ42に送信する。これにより、図5に示すように、認証ページにスキャンアプリ41に関する情報、例えば、アプリの名称やアプリのアイコン91が表示される。アプリのアイコン91は、アプリ情報の一例であり、スキャンアプリ41の識別情報は、コマンドの一例である。   Note that the cloud server may provide a service for displaying registration information of a transmission source application. For example, the manufacturer of the scan application 41 applies in advance to the service provider of the cloud server to register registration information such as the application name and application icon in association with the identification information of the scan application 41. The service provider registers the registration information in the cloud server. When the cloud server receives the identification information of the scan application 41 at the start of the authentication procedure, the cloud server transmits web page data including the corresponding registration information to the browser 42. As a result, as shown in FIG. 5, information related to the scan application 41, for example, the name of the application and the icon 91 of the application are displayed on the authentication page. The application icon 91 is an example of application information, and the identification information of the scan application 41 is an example of a command.

クラウドAの認証ページには、例えば、図5に示すように、IDの入力欄92と、パスワードの入力欄93と、ログインボタン94と、が表示される。そして、ブラウザ42は、図4に示すように、表示中の認証ページにて、認証要求情報の入力操作を受け付ける(手順56)。認証要求情報は、例えば、IDやメールアドレスとパスワードとの組であり、ユーザによって予めクラウドAに登録されたアカウントの情報である。さらに、ブラウザ42は、認証要求情報が入力された状態で、図5に示したログインボタン94への操作を受け付けると、図4に示すように、入力された認証要求情報をクラウドAに送信し、認証を要求する(手順57)。   On the authentication page of cloud A, for example, as shown in FIG. 5, an ID input field 92, a password input field 93, and a login button 94 are displayed. Then, as shown in FIG. 4, the browser 42 accepts an input operation for authentication request information on the authentication page being displayed (procedure 56). The authentication request information is, for example, a set of an ID, an e-mail address, and a password, and is account information registered in the cloud A in advance by the user. Further, when the browser 42 accepts an operation to the login button 94 shown in FIG. 5 in a state where the authentication request information is input, the browser 42 transmits the input authentication request information to the cloud A as shown in FIG. Authentication is requested (procedure 57).

なお、認証ページでは、アカウントの作成のためのボタンが表示される場合もある。アカウントを未作成のユーザは、例えば、認証ページからアカウント作成のページへと移動することで、アカウントを作成してから認証手順を実行することになる。また、ブラウザ42は、キャッシュ機能を有し、過去に入力されたIDやパスワードの情報を保存している場合がある。ブラウザ42は、キャッシュ情報を参照して、IDの入力欄92とパスワードの入力欄93とに初期情報を表示させてもよい。そして、ブラウザ42がキャッシュ情報を有している場合には、手順56の入力操作を省略して、手順57でのログインボタン94への操作を受け付けても良い。   Note that a button for creating an account may be displayed on the authentication page. A user who has not created an account, for example, moves from the authentication page to the account creation page, and executes the authentication procedure after creating the account. Further, the browser 42 may have a cache function and may store ID and password information input in the past. The browser 42 may display the initial information in the ID input field 92 and the password input field 93 with reference to the cache information. If the browser 42 has cache information, the input operation in step 56 may be omitted and the operation on the login button 94 in step 57 may be accepted.

クラウドAは、認証要求情報に基づいて認証処理を行う(手順58)。そして、認証処理の後、認証可能である場合、クラウドAは、ブラウザ42へ確認ページを送信する(手順59)。確認ページの例を図6に示す。ブラウザ42は、確認ページを受信したら、ブラウザ表示画面421に確認ページを表示する。確認ページには、図6に示すように、キャンセルボタン95と、許可ボタン96と、許可ボタン96を操作することで認証が正常に完了することを示す文字列と、が表示される。そして、ブラウザは、確認ページの各ボタン95、96への操作を受け付ける。   Cloud A performs an authentication process based on the authentication request information (procedure 58). If authentication is possible after the authentication process, the cloud A transmits a confirmation page to the browser 42 (procedure 59). An example of the confirmation page is shown in FIG. When the browser 42 receives the confirmation page, the browser 42 displays the confirmation page on the browser display screen 421. As shown in FIG. 6, the confirmation page displays a cancel button 95, a permission button 96, and a character string indicating that authentication is normally completed by operating the permission button 96. Then, the browser accepts operations on the buttons 95 and 96 on the confirmation page.

図4に示すように、ブラウザ42は、許可ボタン96の操作を受け付けたら(手順60)、許可情報をクラウドAに送信する(手順61)。クラウドAは、許可情報を受けて、認可コードとリダイレクト先の情報とをブラウザ42へ送信する(手順62)。手順62にて送信されるリダイレクト先の情報は、手順53にて指定されたローカルサーバ43のURLである。   As shown in FIG. 4, when the browser 42 accepts an operation of the permission button 96 (procedure 60), the browser 42 transmits permission information to the cloud A (procedure 61). Cloud A receives the permission information and transmits the authorization code and the redirect destination information to browser 42 (procedure 62). The redirect destination information transmitted in the procedure 62 is the URL of the local server 43 specified in the procedure 53.

なお、クラウドAへの認証手続き中にエラーが発生した場合や、図6に示した確認ページにてキャンセルボタン95への操作を受け付けた場合、クラウドAは、認可コードを送信しない。この場合、ブラウザ42は、手順62にて、エラーの情報、または、キャンセルの情報を受信する。   Note that if an error occurs during the authentication procedure to the cloud A, or if an operation to the cancel button 95 is accepted on the confirmation page shown in FIG. 6, the cloud A does not transmit an authorization code. In this case, the browser 42 receives error information or cancellation information in step 62.

ブラウザ42は、クラウドAから受信した情報に基づいて、ローカルサーバ43のURLにリダイレクトする(手順63)。つまり、ブラウザ42は、ローカルサーバ43に対して、表示するウェブページの情報を渡すように要求するリダイレクト要求を行う。リダイレクト要求では、ブラウザ42は、クラウドAから受信した情報をローカルサーバ43に渡す。手順63にてローカルサーバ43に渡される情報には、例えば、クラウドAの認可コード、エラーの情報、キャンセルの情報がある。   The browser 42 redirects to the URL of the local server 43 based on the information received from the cloud A (procedure 63). That is, the browser 42 makes a redirect request for requesting the local server 43 to pass information on the web page to be displayed. In the redirect request, the browser 42 passes the information received from the cloud A to the local server 43. The information passed to the local server 43 in the procedure 63 includes, for example, a cloud A authorization code, error information, and cancellation information.

ローカルサーバ43は、手順63にて受信したリダイレクト要求に認可コードが含まれているか否かを判断する(手順64)。ローカルサーバ43は、図4に示すように、認可コードが含まれていると判断した場合、受け取った認可コードをクラウドAに送信する(手順65)。クラウドAは、認可コードを受信すると、認可コードの送信元であるローカルサーバ43へアクセストークンとリフレッシュトークンとの組を送信する(手順66)。これで、クラウドAへの認証手続は完了であり、ローカルサーバ43は、アクセストークンとリフレッシュトークンとの組を受信したことで、認証に成功したと判断する。   The local server 43 determines whether or not the authorization code is included in the redirect request received in the procedure 63 (procedure 64). As shown in FIG. 4, when determining that the authorization code is included, the local server 43 transmits the received authorization code to the cloud A (procedure 65). When the cloud A receives the authorization code, the cloud A transmits a pair of an access token and a refresh token to the local server 43 that is the transmission source of the authorization code (procedure 66). Thus, the authentication procedure for the cloud A is completed, and the local server 43 determines that the authentication is successful by receiving the combination of the access token and the refresh token.

ローカルサーバ43は、認証に成功した場合、認証結果を示す完了画面である認証完了画面のデータを取得する(手順67)。具体的には、例えば、図7に示すような認証完了画面98の場合、PC1は、ウェブページの構成を示すデータと、ページ内に表示される各部品(例えば、図7中の符号981〜984で示すもの)のデータとを、ローカルサーバ43やスキャンアプリ41のプログラムファイル内、または、各プログラムから参照する参照ファイル内に所持している。ローカルサーバ43は、これらのデータを読み出し、組み合わせてウェブページデータを作成する。   When the authentication is successful, the local server 43 acquires data of an authentication completion screen that is a completion screen indicating the authentication result (procedure 67). Specifically, for example, in the case of an authentication completion screen 98 as shown in FIG. 7, the PC 1 displays data indicating the configuration of the web page and each component displayed in the page (for example, reference numerals 981 to 981 in FIG. 7). 984) is stored in the program files of the local server 43 and the scan application 41, or in a reference file referenced from each program. The local server 43 reads out these data and combines them to create web page data.

そして、ローカルサーバ43は、ブラウザ42に認証完了画面のデータを渡して、その表示をブラウザ42に指示する(手順68)。このとき、ブラウザ42がアクティブな状態となり、ブラウザ表示画面421には、例えば、図7に示すように、認証完了画面98が表示される。図7に示す認証完了画面98は、認証が成功した場合にブラウザ42に表示させるウェブページであり、認証手続が完了したことをユーザに知らせるための完了画面である。認証完了画面98の詳細については、後述する。   Then, the local server 43 passes the authentication completion screen data to the browser 42 and instructs the browser 42 to display the data (procedure 68). At this time, the browser 42 becomes active, and an authentication completion screen 98 is displayed on the browser display screen 421, for example, as shown in FIG. An authentication completion screen 98 shown in FIG. 7 is a web page to be displayed on the browser 42 when authentication is successful, and is a completion screen for notifying the user that the authentication procedure has been completed. Details of the authentication completion screen 98 will be described later.

さらに、ローカルサーバ43は、図4に示すように、受信したアクセストークンとリフレッシュトークンとの組をスキャンアプリ41に渡す(手順69)。スキャンアプリ41は、アクセストークンとリフレッシュトークンとを受け取った後、ローカルサーバ43を終了させる(手順70)。   Further, as shown in FIG. 4, the local server 43 passes the received combination of the access token and the refresh token to the scan application 41 (procedure 69). After receiving the access token and the refresh token, the scan application 41 ends the local server 43 (procedure 70).

スキャンアプリ41は、アクセストークンとリフレッシュトークンとを受け取ると、例えば、図8に示すように、クラウド選択ウィンドウ412に保存ボタン87を表示させる。また、ボタン85中に表示されていたボタン851(図3参照)は、図8に示すように、「サインアウト」の指示を受け付けるボタン852に変更される。ボタン852は、クラウドAへサインイン中であることを示す機能も兼ねている。スキャンアプリ41は、ボタン852に代えて、サインアウトを示すアイコン等、サインイン状態であることを示す間接的な情報を表示しても良い。   When the scan application 41 receives the access token and the refresh token, for example, as shown in FIG. 8, the scan application 41 displays a save button 87 in the cloud selection window 412. Also, the button 851 (see FIG. 3) displayed in the button 85 is changed to a button 852 that receives a “sign-out” instruction, as shown in FIG. The button 852 also has a function of indicating that signing in to cloud A is in progress. Instead of the button 852, the scan application 41 may display indirect information indicating the sign-in state, such as an icon indicating sign-out.

そして、スキャンアプリ41は、例えば、ユーザの操作によりアクティブな状態となる。また、スキャンアプリ41は、保存ボタン87への操作を受け付ける。スキャンアプリ41は、保存ボタン87への操作を受け付けると、スキャンアプリ41は、アクセストークンを添付して画像データを送信する(手順71)。これにより、画像データは、クラウドAのストレージサーバに保存される。   For example, the scan application 41 is activated by a user operation. Further, the scan application 41 receives an operation on the save button 87. When the scan application 41 accepts an operation to the save button 87, the scan application 41 transmits the image data with an access token attached (procedure 71). As a result, the image data is stored in the storage server of cloud A.

一方、手順64にて、リダイレクト要求に認可コードが含まれていないと判断した場合、ローカルサーバ43は、図4に示すように、認証が未完了であることを示す完了画面である未認証画面のデータを取得する(手順72)。そして、ローカルサーバ43は、ブラウザ42に未認証画面のデータを渡して、その表示をブラウザ42に指示する(手順73)。このとき、ブラウザ42がアクティブな状態となり、ブラウザ表示画面421には、未認証画面が表示される。未認証画面は、認証手続が未完了である場合にブラウザ42に表示させるウェブページであり、認証できなかったことをユーザに知らせるための完了画面である。   On the other hand, when it is determined in step 64 that the authorization code is not included in the redirect request, the local server 43, as shown in FIG. 4, displays an unauthenticated screen that is a completion screen indicating that the authentication is not completed. (Step 72). Then, the local server 43 passes the unauthenticated screen data to the browser 42 and instructs the browser 42 to display it (procedure 73). At this time, the browser 42 is in an active state, and an unauthenticated screen is displayed on the browser display screen 421. The unauthenticated screen is a web page that is displayed on the browser 42 when the authentication procedure is not completed, and is a completed screen for notifying the user that authentication has failed.

さらに、ローカルサーバ43は、未認証であることを示す情報をスキャンアプリ41に渡す(手順74)。スキャンアプリ41は、未認証であることを示す情報を受け取った後、ローカルサーバ43を終了させる(手順75)。   Furthermore, the local server 43 passes information indicating that it is not authenticated to the scan application 41 (procedure 74). After receiving the information indicating that the scan application 41 is not authenticated, the scan application 41 terminates the local server 43 (procedure 75).

次に、認証完了画面98について説明する。認証完了画面98には、例えば、図7に示すように、カラーバー981と、認証完了の情報982と、操作指示情報983と、切り替えボタン984と、スキャンアプリ41のファビコン985と、が表示される。なお、これらを全て表示する必要はなく、少なくとも1つが表示されるとよい。カラーバー981、認証完了の情報982、操作指示情報983、切り替えボタン984、ファビコン985は、いずれも、スキャンアプリ41をアクティブな状態とすることを示す情報であり、特定情報の一例である。   Next, the authentication completion screen 98 will be described. For example, as shown in FIG. 7, a color bar 981, authentication completion information 982, operation instruction information 983, a switching button 984, and a favicon 985 of the scan application 41 are displayed on the authentication completion screen 98. The In addition, it is not necessary to display all of these, and at least one is good to display. The color bar 981, the authentication completion information 982, the operation instruction information 983, the switching button 984, and the favicon 985 are all information indicating that the scan application 41 is activated, and is an example of specific information.

カラーバー981は、図7に示すように、スキャンアプリ41のテーマ色の帯である。テーマ色は、例えば、アプリ用ウィンドウ411のタイトルバーに用いられている色、アプリ用ウィンドウ411の背景色である。テーマ色は、スキャンアプリ41に固有の色であり、OS40のテーマ色ではない。カラーバー981のみでなく、ページの背景色をテーマ色としたり、ページ中の文字をテーマ色で表示しても良い。スキャンアプリ41のテーマ色を使用したページとすることで、アクティブな状態にする対象がスキャンアプリ41であることをユーザに伝え易い。つまり、テーマ色のカラーバー981を表示させることで、間接的に、スキャンアプリ41をアクティブな状態とすることを示唆できる。   The color bar 981 is a theme color band of the scan application 41 as shown in FIG. The theme color is, for example, the color used for the title bar of the application window 411 and the background color of the application window 411. The theme color is unique to the scan application 41 and is not the OS 40 theme color. In addition to the color bar 981, the background color of the page may be used as the theme color, or the characters in the page may be displayed in the theme color. By setting the page using the theme color of the scan application 41, it is easy to tell the user that the target to be activated is the scan application 41. That is, by displaying the color bar 981 of the theme color, it can be suggested that the scan application 41 is indirectly activated.

認証完了の情報982は、図7に示すように、認証手続が完了したことを示す文字情報である。操作指示情報983は、スキャンアプリ41の表示画面をアクティブな状態とすることを示す文字情報である。操作指示情報983には、例えば、図7に示すように、ブラウザ42を終了させるメッセージ983Aと、スキャンアプリ41の名称983Bと、が含まれる。操作指示情報983によって、ユーザに、ブラウザ42を終了させて、スキャンアプリ41の操作に戻る操作を促すことができる。   As shown in FIG. 7, the authentication completion information 982 is text information indicating that the authentication procedure has been completed. The operation instruction information 983 is character information indicating that the display screen of the scan application 41 is activated. For example, as illustrated in FIG. 7, the operation instruction information 983 includes a message 983 </ b> A for terminating the browser 42 and a name 983 </ b> B of the scan application 41. The operation instruction information 983 can prompt the user to exit the browser 42 and return to the operation of the scan application 41.

操作指示情報983にメッセージ983Aを含むことで、ブラウザ42をユーザによって終了させる必要があることがユーザに伝わり易い。また、操作指示情報983にスキャンアプリ41の名称983Bを明記することで、アクティブな状態とする対象がスキャンアプリ41であることをユーザに伝え易い。   By including the message 983A in the operation instruction information 983, it is easy to inform the user that the browser 42 needs to be terminated by the user. Also, by specifying the name 983B of the scan application 41 in the operation instruction information 983, it is easy to inform the user that the target to be activated is the scan application 41.

なお、スキャンアプリ41は、複数の言語から使用する言語を選択し、例えば、アプリ用ウィンドウ411に表示される各種の文字情報を選択された言語での表記とする。そして、スキャンアプリ41は、認証完了画面として、使用可能な各言語によって認証完了の情報982や操作指示情報983を表記したページを有している。ローカルサーバ43は、手順67にて、認証完了画面の各ページのうち、スキャンアプリ41にて選択されている言語で表記されたページのデータを取得する。認証完了の情報982や操作指示情報983の文字情報を、スキャンアプリ41の使用言語と同じ言語で表記することで、ユーザにとって内容を把握し易い情報となる。   Note that the scan application 41 selects a language to be used from a plurality of languages, and for example, various character information displayed on the application window 411 is expressed in the selected language. The scan application 41 has a page on which authentication completion information 982 and operation instruction information 983 are written in each usable language as an authentication completion screen. In step 67, the local server 43 acquires data of pages written in the language selected by the scan application 41 among the pages on the authentication completion screen. By writing the text information of the authentication completion information 982 and the operation instruction information 983 in the same language as the language used by the scan application 41, the user can easily understand the contents.

切り替えボタン984は、図7に示すように、スキャンアプリ41をアクティブな状態とする入力操作を受け付ける入力エリアである。例えば、認証完了画面98のページデータとして、切り替えボタン984のエリアが操作されたら実行されるJava(登録商標)スクリプトを含むものを用意する。具体的には、スキャンアプリ41の表示画面をアクティブな状態とするようにローカルサーバ43に指示するJavaスクリプトを、認証完了画面98のページデータに含ませる。そして、切り替えボタン984への操作を受け付けた場合、ブラウザ42が、そのJavaスクリプトを実行することで、ローカルサーバ43は、スキャンアプリ41をアクティブな状態とするコマンドをOS40に渡し、スキャンアプリ41の表示画面がアクティブな状態となる。   As shown in FIG. 7, the switching button 984 is an input area for accepting an input operation for making the scan application 41 active. For example, the page data of the authentication completion screen 98 is prepared including a Java (registered trademark) script that is executed when the area of the switching button 984 is operated. Specifically, a Java script that instructs the local server 43 to activate the display screen of the scan application 41 is included in the page data of the authentication completion screen 98. When an operation to the switching button 984 is received, the browser 42 executes the Java script, so that the local server 43 passes a command to activate the scan application 41 to the OS 40, and the scan application 41 The display screen becomes active.

あるいは、ローカルサーバ43が、切り替えボタン984の領域への操作を受け付けたか否かを判断してもよい。そして、受け付けたと判断した場合に、ローカルサーバ43は、スキャンアプリ41をアクティブな状態とするようにOS40に指示してもよい。切り替えボタン984が表示されることで、スキャンアプリ41をアクティブな状態に戻す入力を認証完了画面98の中で受け付けられる。従って、ボタンの操作によって、容易に、表示が切り替えられる。なお、スキャンアプリ41をアクティブな状態とする切り替えボタン984に代えて、ブラウザ42を閉じるボタンを設けてもよい。   Alternatively, it may be determined whether or not the local server 43 has accepted an operation for the area of the switching button 984. If it is determined that the scan application 41 has been received, the local server 43 may instruct the OS 40 to make the scan application 41 active. By displaying the switch button 984, an input for returning the scan application 41 to the active state is accepted in the authentication completion screen 98. Therefore, the display can be easily switched by operating the buttons. Note that a button for closing the browser 42 may be provided instead of the switching button 984 that activates the scan application 41.

認証完了画面98のタブには、図7に示すように、スキャンアプリ41のファビコン985が含まれてもよい。ファビコンは、favorite iconの略称であり、ウェブサイトのシンボルマークを示すアイコンである。ブラウザ42は、タブやブックマークなどにファビコンを表示する。ローカルサーバ43は、ブラウザ42に、ファビコン985のデータを渡して表示させる。ファビコン985は、クラウドサーバのサービス事業者に登録を申請したアプリのアイコンのテイストを残したまま、小さく表示するために作成したアイコンであり、ローカルサーバ43やスキャンアプリ41は、このファビコン985と同様の画像をアイコンとして使用する。   The tab of the authentication completion screen 98 may include a favicon 985 of the scan application 41 as shown in FIG. Favicon is an abbreviation for favorite icon, and is an icon indicating a symbol mark of a website. The browser 42 displays the favicon on a tab, a bookmark, or the like. The local server 43 passes the data of the favicon 985 to the browser 42 for display. The favicon 985 is an icon created to be displayed in a small size while retaining the taste of the icon of the application that has been applied to the cloud server service provider. The local server 43 and the scan application 41 are the same as the favicon 985. Images as icons.

ファビコン985の表示によっても、アクティブな状態にする対象がスキャンアプリ41であることをユーザに伝え易い。そして、認証完了画面98のタブにスキャンアプリ41のファビコン985が含まれることで、間接的に、スキャンアプリ41をアクティブな状態とすることを示唆できる。なお、アプリ用ウィンドウ411のアイコンと、ファビコン985と、の少なくとも一方は、アイコンのテイストを残したまま小さく表示するために、編集されたものでも良い。   The display of the favicon 985 also makes it easy to inform the user that the target to be activated is the scan application 41. Then, by including the favicon 985 of the scan application 41 in the tab of the authentication completion screen 98, it can be suggested that the scan application 41 is indirectly activated. It should be noted that at least one of the icon in the application window 411 and the favicon 985 may be edited so as to be displayed small while leaving the icon taste.

なお、確認ページ(図6参照)でキャンセルの操作を受け付けた場合など、認証手続が未完了でリダイレクト要求を受け付けた場合、前述したように、未認証画面が表示される。本形態では、未認証画面も、認証完了画面98と同様に、スキャンアプリ41をアクティブな状態とすることを示す情報を含む。ただし、未認証画面は、認証完了画面98の認証完了の情報982に代えて、認証未完了であることを示す情報を含む。また、未認証画面は、文字情報として、キャンセルされたこと等、認証未完了となった理由を示す情報を含んでも良い。   Note that, when the authentication procedure is not completed and a redirect request is received, such as when a cancel operation is received on the confirmation page (see FIG. 6), an unauthenticated screen is displayed as described above. In this embodiment, the unauthenticated screen also includes information indicating that the scan application 41 is in an active state, like the authentication completion screen 98. However, the unauthenticated screen includes information indicating that the authentication has not been completed, instead of the authentication completion information 982 on the authentication completion screen 98. In addition, the unauthenticated screen may include information indicating the reason for unauthenticated, such as being canceled, as character information.

認証完了画面98や未認証画面などのウェブページに含まれる各種のデータは、前述したように、ローカルサーバ43やスキャンアプリ41のプログラムファイル内、または、各プログラムから参照する参照ファイル内、すなわち、不揮発性メモリ14の共通の領域に記憶されている。ローカルサーバ43とスキャンアプリ41とは、不揮発性メモリ14に記憶されているデータを共通して参照することで、共通の設定や部品、例えば、共通のアプリの名称、共通のテーマ色、共通のアイコン、共通の言語を使用できる。   As described above, various types of data included in the web page such as the authentication completion screen 98 and the unauthenticated screen are stored in the program files of the local server 43 and the scan application 41, or in the reference files referred to by each program, that is, It is stored in a common area of the nonvolatile memory 14. The local server 43 and the scan application 41 refer to data stored in the nonvolatile memory 14 in common, so that common settings and parts, for example, a common application name, a common theme color, and a common Icons, common language can be used.

なお、共通の領域に記憶する代わりに、スキャンアプリ41がローカルサーバ43を起動する際に、スキャンアプリ41がローカルサーバ43にこれらの共通の情報を渡し、ローカルサーバ43が渡された情報を使用するとしても良い。また、クラウドサーバのサービス事業者に登録を申請するアプリの名称やアプリのアイコンも、ローカルサーバ43やスキャンアプリ41が表示に使用するものと共通にすると良い。   Instead of storing in the common area, when the scan application 41 activates the local server 43, the scan application 41 passes the common information to the local server 43 and uses the information passed by the local server 43. You may do that. In addition, the name of the application and the application icon for which registration is requested from the service provider of the cloud server may be the same as that used by the local server 43 and the scan application 41 for display.

また、使用言語、テーマ色やアプリのアイコンについて、ユーザによる選択を受け付けても良い。例えば、スキャンアプリ41が、選択メニューからユーザの選択を受け付けても良い。また、スキャンアプリ41は、OS40のテーマ色と比較して違和感のない色をテーマ色として自動的に選択し、選択した色をテーマ色及びアイコンの色として不揮発性メモリ14に記憶させても良い。また、上記の各設定や部品に限らず、スキャンアプリ41は、アプリ用ウィンドウと各ウェブページに共通して表示される情報に関してユーザの選択や入力を受け付け、受け付けた情報を不揮発性メモリ14に記憶させて使用しても良い。   Moreover, you may accept selection by a user about a use language, a theme color, and the icon of an application. For example, the scan application 41 may accept a user selection from a selection menu. Further, the scan application 41 may automatically select a color that is not uncomfortable as compared to the theme color of the OS 40 as the theme color, and store the selected color in the nonvolatile memory 14 as the theme color and the icon color. . In addition to the settings and components described above, the scan application 41 accepts user selection and input regarding information displayed in common in the application window and each web page, and the received information is stored in the nonvolatile memory 14. It may be stored and used.

図4に示したように、手順68または73にてブラウザ42がアクティブな状態となっていることから、認証完了画面98や未認証画面が表示されるタイミングでは、スキャンアプリ41は、非アクティブな状態である。そのため、スキャンアプリ41への操作を継続するためには、スキャンアプリ41をアクティブな状態とする必要がある。認証完了画面98や未認証画面にスキャンアプリ41をアクティブな状態とすることを示す情報が含まれることで、ユーザの注意を喚起できる。   As shown in FIG. 4, since the browser 42 is in an active state in step 68 or 73, the scan application 41 is inactive at the timing when the authentication completion screen 98 or the unauthenticated screen is displayed. State. Therefore, in order to continue the operation on the scan application 41, the scan application 41 needs to be in an active state. The information indicating that the scan application 41 is activated is included in the authentication completion screen 98 and the unauthenticated screen, so that the user's attention can be drawn.

続いて、本形態のスキャンアプリ41の動作を実現するスキャンアプリ処理の手順について、図9のフローチャートを参照して説明する。このスキャンアプリ処理は、PC1にてスキャンアプリ41の起動指示を受け付けたことを契機に、CPU11にて実行される。   Next, the procedure of the scan application process that realizes the operation of the scan application 41 of this embodiment will be described with reference to the flowchart of FIG. This scan application process is executed by the CPU 11 when the activation instruction of the scan application 41 is received by the PC 1.

スキャンアプリ処理では、CPU11は、OS40にて使用されている言語を取得する(S101)。CPU11は、例えば、OS40に問い合わせることで、使用言語を取得できる。そして、CPU11は、スキャンアプリ41のアプリ用ウィンドウ411(図2参照)を開き(S102)、アプリ用ウィンドウ411に表示するページを、OS40にて使用されている言語の文字情報を含むページとする(S103)。   In the scan application process, the CPU 11 acquires the language used in the OS 40 (S101). For example, the CPU 11 can acquire the language used by making an inquiry to the OS 40. Then, the CPU 11 opens the application window 411 (see FIG. 2) of the scan application 41 (S102), and sets the page displayed on the application window 411 to be a page including character information of the language used in the OS 40. (S103).

そして、CPU11は、言語を選択する指示を受け付けたか否かを判断する(S104)。OS40にて使用されている言語とは異なる言語を使用したいユーザは、言語の選択のメニューを用いて、スキャンアプリ41の使用言語を、選択可能な言語のうちから選択して設定できる。言語の選択の指示を受け付けたと判断した場合(S104:YES)、CPU11は、選択された言語を使用言語とし(S105)、アプリ用ウィンドウ411のページを使用言語のページとする。一方、言語の選択の指示を受け付けていないと判断した場合(S104:NO)、CPU11は、OS40の言語を使用言語とする(S106)。なお、CPU11は、使用言語を示す情報を不揮発性メモリ14に記憶させる。S105及びS106は、選択処理の一例である。   And CPU11 judges whether the instruction | indication which selects a language was received (S104). A user who wants to use a language different from the language used in the OS 40 can select and set the language used by the scan application 41 from selectable languages using a language selection menu. If it is determined that a language selection instruction has been received (S104: YES), the CPU 11 sets the selected language as the language used (S105), and sets the page of the application window 411 as the language used. On the other hand, when determining that the language selection instruction has not been received (S104: NO), the CPU 11 sets the language of the OS 40 as the language to be used (S106). The CPU 11 stores information indicating the language used in the nonvolatile memory 14. S105 and S106 are an example of a selection process.

そして、CPU11は、スキャンアプリ41にてクラウドサーバへの保存の指示を受け付けたか否かを判断する(S107)。クラウドサーバへの保存の指示ではない指示を受け付けたと判断した場合(S107:NO)、CPU11は、指示を受け付けた動作を実行する(S108)。   Then, the CPU 11 determines whether or not the scan application 41 has received an instruction to save to the cloud server (S107). When it is determined that an instruction that is not a storage instruction to the cloud server has been received (S107: NO), the CPU 11 executes an operation that has received the instruction (S108).

クラウドサーバへの保存の指示を受け付けたと判断した場合(S107:YES)、CPU11は、アップロード処理を実行する(S109)。なお、アップロード処理は、スキャン指示等によって画像データを取得した後に選択される指示であり、アップロード処理の開始時には、アップロードの対象とされる画像データを取得済みである。アップロード処理の手順について、図10のフローチャートを参照して説明する。   When it is determined that an instruction to save to the cloud server has been received (S107: YES), the CPU 11 executes an upload process (S109). The upload process is an instruction that is selected after image data is acquired by a scan instruction or the like, and image data to be uploaded has already been acquired at the start of the upload process. The procedure of the upload process will be described with reference to the flowchart of FIG.

アップロード処理では、CPU11は、クラウドサーバの選択画面であるクラウド選択ウィンドウ412(図3参照)を、アクティブな状態として、タッチパネル15に表示させる(S201)。本形態のスキャンアプリ41は、複数のクラウドサーバからアップロード先の選択が可能であり、ユーザの選択に基づいて、アップロード先のクラウドサーバを決定する。   In the upload process, the CPU 11 displays the cloud selection window 412 (see FIG. 3), which is a cloud server selection screen, on the touch panel 15 in an active state (S201). The scan application 41 according to the present embodiment can select an upload destination from a plurality of cloud servers, and determines an upload destination cloud server based on the user's selection.

そして、CPU11は、クラウドサーバの選択を受け付けたか否かを判断する(S202)。クラウドサーバの選択を受け付けていないと判断した場合(S202:NO)、CPU11は、キャンセルの指示を受け付けたか否かを判断する(S203)。キャンセルの指示を受け付けていないと判断した場合(S203:NO)、CPU11は、クラウドサーバの選択またはキャンセルの指示を受け付けるまで待機する。   And CPU11 judges whether selection of the cloud server was received (S202). When determining that the selection of the cloud server has not been received (S202: NO), the CPU 11 determines whether or not a cancel instruction has been received (S203). If it is determined that a cancel instruction has not been received (S203: NO), the CPU 11 waits until a cloud server selection or cancel instruction is received.

クラウドサーバの選択を受け付けたと判断した場合(S202:YES)、CPU11は、選択されたクラウドサーバにサインイン中であるか否かを判断する(S204)。サインイン中ではないと判断した場合(S204:NO)、CPU11は、タッチパネル15を介してサインインの指示を受け付けたか否かを判断する(S205)。サインインの指示は、前述したように、アクティブな状態のクラウド選択ウィンドウ412に表示されているボタン(例えば、図3中のボタン851)の操作によって受け付ける。   When determining that the selection of the cloud server has been accepted (S202: YES), the CPU 11 determines whether or not the user is currently signed in to the selected cloud server (S204). If it is determined that the user is not signed in (S204: NO), the CPU 11 determines whether or not a sign-in instruction has been received via the touch panel 15 (S205). As described above, the sign-in instruction is accepted by operating a button (for example, button 851 in FIG. 3) displayed on the active cloud selection window 412.

サインインの指示を受け付けていないと判断した場合(S205:NO)、CPU11は、S202に戻り、クラウドサーバの選択、キャンセルの指示、または、サインインの指示を受け付ける。S205にてサインインの指示を受け付ける処理は、認証指示受付処理の一例であり、サインインの指示は、認証指示の一例である。   If it is determined that a sign-in instruction has not been received (S205: NO), the CPU 11 returns to S202, and receives a selection of a cloud server, a cancel instruction, or a sign-in instruction. The process of accepting a sign-in instruction in S205 is an example of an authentication instruction accepting process, and the sign-in instruction is an example of an authentication instruction.

サインインの指示を受け付けたと判断した場合(S205:YES)、CPU11は、ローカルサーバ43を起動する(S206)(図4の手順52)。さらに、CPU11は、ブラウザ42を起動し(図4の手順53)、S206にて起動したローカルサーバ43をリダイレクト先とするとともに、指定されたクラウドサーバの認証画面を表示する指示を行う(S207)。S207は、ブラウザ指示処理の一例である。   If it is determined that a sign-in instruction has been received (S205: YES), the CPU 11 activates the local server 43 (S206) (step 52 in FIG. 4). Further, the CPU 11 activates the browser 42 (procedure 53 in FIG. 4), designates the local server 43 activated in S206 as a redirect destination, and instructs to display the authentication screen of the designated cloud server (S207). . S207 is an example of browser instruction processing.

S207の指示により、タッチパネル15には、例えば、図5や図6に示したように、ブラウザ42の表示画面がアクティブな状態で表示される。そのため、クラウド選択ウィンドウ412等のスキャンアプリ41の表示画面は、非アクティブな状態となる。つまり、ブラウザ42のウィンドウであるブラウザ表示画面421が最前面に表示され、ブラウザ表示画面421がアプリ用ウィンドウ411と重なって配置された場合には、アプリ用ウィンドウ411の少なくとも一部がユーザから見えない状態となる。S207は、ブラウザアクティブ処理及び第1ブラウザアクティブ処理の一例でもある。   In response to the instruction in S207, the display screen of the browser 42 is displayed on the touch panel 15 in an active state, for example, as illustrated in FIGS. Therefore, the display screen of the scan application 41 such as the cloud selection window 412 is in an inactive state. That is, when the browser display screen 421 that is the window of the browser 42 is displayed in the foreground and the browser display screen 421 is arranged so as to overlap the application window 411, at least a part of the application window 411 is visible to the user. No state. S207 is also an example of browser active processing and first browser active processing.

非アクティブな状態であるウィンドウは、例えば、ウィンドウへのクリック、ウィンドウへのタッチなど、アクティブな状態への変更を指示するユーザ操作に基づいて、OS40によってアクティブな状態に変更される。所定のウィンドウがアクティブな状態であるとは、当該ウィンドウが、アクティブな状態への変更を指示する操作以外のユーザ操作の受け付け対象となっている状態であることを示す。アクティブな状態への変更指示以外のユーザ操作とは、例えば、ボタン入力、文字入力、カーソル移動である。なお、非アクティブな状態のウィンドウに含まれるボタンへのクリックやタッチなどは、アクティブな状態への変更指示と、ボタンへの操作とを兼ねていても良い。アクティブな状態のプログラムは、システムで1つであり、あるプログラムをアクティブな状態とすると、他のプログラムは、非アクティブな状態となるように、OS40によって制御される。   A window that is in an inactive state is changed to an active state by the OS 40 based on a user operation that instructs to change to an active state, such as a click on the window or a touch on the window. The predetermined window being in an active state indicates that the window is a target for accepting a user operation other than an operation instructing a change to the active state. User operations other than an instruction to change to an active state include, for example, button input, character input, and cursor movement. Note that a click or touch on a button included in a window in an inactive state may serve as both an instruction to change to an active state and an operation on the button. There is one program in the active state in the system, and when a certain program is made active, the other programs are controlled by the OS 40 so that they become inactive.

そして、CPU11は、ローカルサーバ43から認証情報を受信したか否かを判断する(S208)。認証情報は、前述したアクセストークンとリフレッシュトークンとの組であってもよいし、1つのトークンや認証キーであってもよい。認証情報を受信していないと判断した場合(S208:NO)、CPU11は、エラー情報を受信したか否かを判断する(S209)。   Then, the CPU 11 determines whether authentication information has been received from the local server 43 (S208). The authentication information may be a combination of the access token and the refresh token described above, or may be a single token or an authentication key. When determining that the authentication information has not been received (S208: NO), the CPU 11 determines whether error information has been received (S209).

例えば、クラウドAへの認証手続き中にエラーが発生した場合や、図6に示した確認ページにてキャンセルボタン95への操作を受け付けた場合、クラウドAは、認可コードを送信しない。この場合、ブラウザ42は、図4の手順62にて、エラーの情報、または、キャンセルの情報を受信する。そして、ローカルサーバ43は、受信した情報が認可コードではないことから、図4の手順65を行わず、認証手続は成功しない。認証が成功しなかった場合、スキャンアプリ41は、ローカルサーバ43から未認証であることを示すエラー情報を受信する。   For example, when an error occurs during the authentication procedure for the cloud A, or when an operation to the cancel button 95 is accepted on the confirmation page shown in FIG. 6, the cloud A does not transmit an authorization code. In this case, the browser 42 receives error information or cancellation information in the procedure 62 of FIG. Then, since the received information is not an authorization code, the local server 43 does not perform the procedure 65 of FIG. 4 and the authentication procedure does not succeed. When the authentication is not successful, the scan application 41 receives error information indicating that the authentication is not performed from the local server 43.

エラー情報を受信していないと判断した場合(S209:NO)、CPU11は、S208に戻り、認証情報またはエラー情報を受信するまで待機する。そして、エラー情報を受信したと判断した場合(S209:YES)、CPU11は、ローカルサーバ43を終了させる(S210)。さらに、S202に戻って、クラウドサーバの選択、キャンセルの指示、または、サインインの指示を受け付ける。   If it is determined that no error information has been received (S209: NO), the CPU 11 returns to S208 and waits until receiving authentication information or error information. If it is determined that error information has been received (S209: YES), the CPU 11 terminates the local server 43 (S210). Further, the process returns to S202, and a cloud server selection, cancellation instruction, or sign-in instruction is accepted.

一方、認証情報を受信したと判断した場合(S208:YES)(図4の手順69)も、CPU11は、ローカルサーバ43を終了させる(S211)(図4の手順70)。なお、ローカルサーバ43にローカルサーバ43自身を終了させても良い。その場合は、S210やS211は不要である。   On the other hand, when it is determined that the authentication information has been received (S208: YES) (step 69 in FIG. 4), the CPU 11 also terminates the local server 43 (S211) (step 70 in FIG. 4). Note that the local server 43 may terminate the local server 43 itself. In that case, S210 and S211 are unnecessary.

そして、CPU11は、認証の完了したクラウドサーバについて、クラウド選択ウィンドウ412のボタン851(図3参照)の表示をサインイン中であることを示す表示に変更させる(S212)。S212は、サインイン表示処理の一例である。CPU11は、ボタン851を消去し、例えば、図8に示したように、「サインアウト」を示すボタン852を表示させる。ボタン852を表示させることで、ユーザにサインイン状態であることが伝わり易い。   Then, the CPU 11 changes the display of the button 851 (see FIG. 3) of the cloud selection window 412 to a display indicating that sign-in is being performed for the cloud server that has been authenticated (S212). S212 is an example of a sign-in display process. The CPU 11 deletes the button 851 and displays a button 852 indicating “sign out”, for example, as shown in FIG. By displaying the button 852, it is easy to inform the user that the user is in the signed-in state.

S212の後、または、既にサインイン中であると判断した場合(S204:YES)、CPU11は、クラウドサーバへの保存の指示を受け付けたか否かを判断する(S213)。クラウドサーバへの保存は、クラウドサーバを利用する処理の一例であり、保存の指示は、実行指示の一例であり、S213は、実行指示受付処理の一例である。   After S212 or when it is determined that the user is already signed in (S204: YES), the CPU 11 determines whether or not an instruction to save to the cloud server has been received (S213). Saving to the cloud server is an example of processing using the cloud server, the saving instruction is an example of an execution instruction, and S213 is an example of an execution instruction receiving process.

なお、スキャンアプリ41は、選択されたクラウドサーバがサインイン中であれば、クラウド選択ウィンドウ412に、図8に示したように、保存ボタン87を表示させる。そして、CPU11は、スキャンアプリ41がアクティブな状態で保存ボタン87への操作を受け付ける。ただし、前述したように、S107にてブラウザ42がアクティブな状態となり、ローカルサーバ43を終了させた後も、ユーザ操作を受け付けない限り、ブラウザ42がアクティブな状態のままとなっている。本形態では、認証完了画面98(図7参照)に情報981〜985が含まれることで、スキャンアプリ41をアクティブな状態とするためのユーザ操作を促す。   If the selected cloud server is signed in, the scan application 41 displays a save button 87 in the cloud selection window 412 as shown in FIG. Then, the CPU 11 accepts an operation to the save button 87 while the scan application 41 is active. However, as described above, the browser 42 is in an active state in S107, and even after the local server 43 is terminated, the browser 42 remains in an active state unless a user operation is accepted. In this embodiment, the information 981 to 985 is included in the authentication completion screen 98 (see FIG. 7), thereby prompting a user operation for making the scan application 41 active.

また、スキャンアプリ41は、保存ボタン87への操作を受け付けるに際して、自身がアクティブな状態であるか否かを判断する必要はない。例えば、前述したように、ボタンへのクリックやタッチがアクティブな状態への変更指示を兼ねている場合には、スキャンアプリ41は、アクティブな状態であるか否かに関わらず、保存ボタン87への操作を受け付ける。   The scan application 41 does not need to determine whether or not the scan application 41 is in an active state when accepting an operation on the save button 87. For example, as described above, when a click or touch on a button also serves as an instruction to change to an active state, the scan application 41 proceeds to the save button 87 regardless of whether or not it is in an active state. The operation of is accepted.

クラウドサーバへの保存の指示を受け付けていないと判断した場合(S213:NO)、CPU11は、クラウドサーバへの保存をキャンセルする指示を受け付けたか否かを判断する(S214)。キャンセルの指示を受け付けていないと判断した場合(S214:NO)、CPU11は、S213に戻り、保存の指示またはキャンセルの指示を受け付けるまで待機する。   When it is determined that an instruction to save to the cloud server has not been received (S213: NO), the CPU 11 determines whether an instruction to cancel saving to the cloud server has been received (S214). If it is determined that a cancel instruction has not been received (S214: NO), the CPU 11 returns to S213 and waits until a save instruction or a cancel instruction is received.

クラウドサーバへの保存の指示を受け付けたと判断した場合(S213:YES)、CPU11は、S208にて受信した認証情報を添えて、画像データをクラウドサーバへ送信する(S215)(図4の手順71)。そして、S215の後、または、キャンセルの指示を受け付けたと判断した場合(S214:YES)、または、クラウドの選択がキャンセルされた場合(S203:YES)、CPU11は、アップロード処理を終了する。   If it is determined that an instruction to save to the cloud server has been received (S213: YES), the CPU 11 sends the image data to the cloud server with the authentication information received in S208 (S215) (procedure 71 in FIG. 4). ). Then, after S215, or when it is determined that a cancel instruction has been accepted (S214: YES), or when the cloud selection is canceled (S203: YES), the CPU 11 ends the upload process.

次に、アップロード処理のS206にて起動されるローカルサーバ43の処理であるローカルサーバ処理の手順について、図11のフローチャートを参照して説明する。ローカルサーバ処理は、ローカルサーバ43が起動されたことを契機に、PC1のCPU11にて実行される。   Next, the procedure of the local server process that is the process of the local server 43 activated in S206 of the upload process will be described with reference to the flowchart of FIG. The local server process is executed by the CPU 11 of the PC 1 when the local server 43 is activated.

ローカルサーバ処理では、CPU11は、リダイレクト要求を受信したか否かを判断する(S301)。リダイレクト要求を受信していないと判断した場合(S301:NO)、CPU11は、リダイレクト要求を受信するまで待機する。   In the local server process, the CPU 11 determines whether a redirect request has been received (S301). If it is determined that a redirect request has not been received (S301: NO), the CPU 11 waits until a redirect request is received.

リダイレクト要求を受信したと判断した場合(S301:YES)、CPU11は、受信したリダイレクト要求に認可コードが含まれているか否かを判断する(S302)。認可コードが含まれていると判断した場合(S302:YES)、CPU11は、認可コードをクラウドサーバに送信する(S303)(図4の手順65)。そして、CPU11は、クラウドサーバから、アクセストークンとリフレッシュトークンとの組を受信する(S304)(図4の手順66)。   When determining that the redirect request has been received (S301: YES), the CPU 11 determines whether or not the authorization code is included in the received redirect request (S302). When determining that the authorization code is included (S302: YES), the CPU 11 transmits the authorization code to the cloud server (S303) (step 65 in FIG. 4). Then, the CPU 11 receives a set of an access token and a refresh token from the cloud server (S304) (procedure 66 in FIG. 4).

さらに、CPU11は、認証結果が認証完了であることを示す完了画面のデータを取得する(S305)(図4の手順67)。CPU11は、認証できたことを示す完了画面として、例えば、認証完了画面98(図7参照)のウェブページデータを不揮発性メモリ14から読み出す。   Further, the CPU 11 acquires data of a completion screen indicating that the authentication result is authentication completion (S305) (procedure 67 in FIG. 4). CPU11 reads the web page data of the authentication completion screen 98 (refer FIG. 7) from the non-volatile memory 14, for example as a completion screen which shows having been authenticated.

そして、CPU11は、取得したデータの表示をブラウザ42に指示する(S306)(図4の手順68)。CPU11は、取得した認証完了画面98のデータをブラウザ42に渡す。これにより、ブラウザ42は、アクティブな状態となり、スキャンアプリ41は、非アクティブな状態となる。S307は、認証結果表示処理と第2ブラウザアクティブ処理との一例である。さらに、CPU11は、受信したアクセストークンとリフレッシュトークンとの組を、スキャンアプリ41に渡す(S307)(図4の手順69)。   Then, the CPU 11 instructs the browser 42 to display the acquired data (S306) (procedure 68 in FIG. 4). The CPU 11 passes the acquired data on the authentication completion screen 98 to the browser 42. As a result, the browser 42 is in an active state, and the scan application 41 is in an inactive state. S307 is an example of an authentication result display process and a second browser active process. Further, the CPU 11 passes the received set of access token and refresh token to the scan application 41 (S307) (step 69 in FIG. 4).

一方、受信したリダイレクト要求に認可コードが含まれていないと判断した場合(S302:NO)、CPU11は、認証ができなかったことを示す完了画面のデータを取得する(S308)(図4の手順72)。例えば、認証がキャンセルされた場合には、CPU11は、認証できなかったことを示す完了画面として、キャンセルされた場合の未認証画面のウェブページデータを不揮発性メモリ14から読み出す。   On the other hand, if it is determined that the authorization code is not included in the received redirect request (S302: NO), the CPU 11 acquires data of a completion screen indicating that the authentication could not be performed (S308) (procedure of FIG. 4). 72). For example, when the authentication is canceled, the CPU 11 reads the web page data of the unauthenticated screen when the authentication is canceled from the nonvolatile memory 14 as a completion screen indicating that the authentication could not be performed.

そして、CPU11は、取得したデータの表示をブラウザ42に指示する(S309)(図4の手順73)。S309では、CPU11は、例えば、未完了画面99のデータをブラウザ42に渡す。これにより、ブラウザ42は、アクティブな状態となり、スキャンアプリ41は、非アクティブな状態となる。S310も、認証結果表示処理と第2ブラウザアクティブ処理との一例である。そして、CPU11は、認証結果が認証未完了であることを示すエラー情報をスキャンアプリ41に渡す(S310)(図4の手順74)。   Then, the CPU 11 instructs the browser 42 to display the acquired data (S309) (procedure 73 in FIG. 4). In S309, the CPU 11 passes the data of the incomplete screen 99 to the browser 42, for example. As a result, the browser 42 is in an active state, and the scan application 41 is in an inactive state. S310 is also an example of the authentication result display process and the second browser active process. Then, the CPU 11 passes error information indicating that the authentication result is incomplete authentication to the scan application 41 (S310) (procedure 74 in FIG. 4).

S306またはS309にてブラウザ42に完了画面を表示する指示を行った場合、ブラウザ42は、アクティブな状態となり、スキャンアプリ41は、非アクティブな状態となる。これにより、完了画面が最前面に表示され、ユーザに認証状況が報知される。その一方で、その後の操作をスキャンアプリ41にて行うためには、スキャンアプリ41をユーザ操作によってアクティブな状態とすることが必要になる。本形態のスキャンアプリ41は、完了画面である認証完了画面98や未認証画面に、スキャンアプリ41をアクティブな状態とすることを示す情報が含まれることから、スキャンアプリ41をアクティブな状態とする必要性が認識し易く、ユーザの困惑の軽減が期待できる。   When an instruction to display a completion screen on the browser 42 is issued in S306 or S309, the browser 42 is in an active state, and the scan application 41 is in an inactive state. Thereby, the completion screen is displayed in the foreground, and the authentication status is notified to the user. On the other hand, in order to perform the subsequent operation by the scan application 41, the scan application 41 needs to be activated by a user operation. In the scan application 41 according to this embodiment, the authentication completion screen 98 or the unauthenticated screen that is a completion screen includes information indicating that the scan application 41 is activated. The necessity can be easily recognized, and the user's confusion can be reduced.

そして、CPU11は、ローカルサーバ43を終了させる終了コマンドを受信したか否かを判断する(S311)。終了コマンドを受信していないと判断した場合(S311:NO)、CPU11は、終了コマンドを受信するまで待機する。そして、終了コマンドを受信したと判断した場合(S311:YES)、CPU11は、ローカルサーバ処理を終了し、ローカルサーバ43を終了させる。なお、ローカルサーバ43は、起動された後、所定時間が経過してもリダイレクト要求を受信しなかった場合、タイムアウトとして、自身を終了してもよい。   Then, the CPU 11 determines whether or not an end command for ending the local server 43 has been received (S311). If it is determined that the end command has not been received (S311: NO), the CPU 11 waits until the end command is received. If it is determined that the end command has been received (S311: YES), the CPU 11 ends the local server process and ends the local server 43. Note that the local server 43 may end itself as a time-out if it does not receive a redirect request even after a predetermined time has elapsed after being activated.

上述したローカルサーバ処理では、スキャンアプリ41をアクティブな状態とするよう指示する情報を含む画面を表示するのみであり、ユーザの操作によってスキャンアプリ41がアクティブな状態となる。しかし、ローカルサーバ処理にて、スキャンアプリ41をアクティブな状態としてもよい。その場合、ローカルサーバ処理を、図11のフローチャートにて説明したローカルサーバ処理に、スキャンアプリ41をアクティブな状態とするための処理を加えた処理とする。   In the local server process described above, only a screen including information for instructing the scan application 41 to be in an active state is displayed, and the scan application 41 is in an active state by a user operation. However, the scan application 41 may be activated by local server processing. In this case, the local server process is a process in which the process for making the scan application 41 active is added to the local server process described with reference to the flowchart of FIG.

具体的には、CPU11は、図11のローカルサーバ処理のS311にて終了コマンドを受け付けたと判断した場合、ローカルサーバ処理を終了する前に、スキャンアプリ41をアクティブな状態とするコマンドをOS40に渡す。スキャンアプリ41をアクティブな状態とするコマンドをOS40に渡す処理は、アプリアクティブ処理の一例である。これにより、アプリ用ウィンドウ411がアクティブな状態となって前面に表示されるので、ユーザにスキャンアプリ41の操作に戻ることを促すことができる。スキャンアプリ41を自動的にアクティブな状態に戻すことで、ユーザはアプリをアクティブな状態にする操作が不要になり、困惑の軽減が期待できる。   Specifically, if the CPU 11 determines that an end command has been received in S311 of the local server process of FIG. 11, the CPU 11 passes a command to activate the scan application 41 to the OS 40 before ending the local server process. . The process of passing the command that activates the scan application 41 to the OS 40 is an example of the application active process. As a result, the application window 411 is activated and displayed on the front surface, so that the user can be prompted to return to the operation of the scan application 41. By automatically returning the scan application 41 to the active state, the user does not need to perform an operation to make the application active, and expects reduction of confusion.

なお、スキャンアプリ41をアクティブな状態とする場合でも、ブラウザ42には、前述した完了画面(認証完了画面98または未認証画面)を表示させることが好ましい。スキャンアプリ41をアクティブな状態にした場合であっても、ブラウザ42をアクティブな状態に戻してしまうユーザもいることから、ブラウザ42に、スキャンアプリ41をアクティブな状態にすることを示す情報を含む完了画面を表示させることで、ユーザは、アプリをアクティブな状態にする必要が有ることを認識でき、困惑の軽減が期待できる。また、完了画面を表示させることで、ユーザは、認証完了を認識できる。   Even when the scan application 41 is activated, it is preferable to display the above-described completion screen (the authentication completion screen 98 or the unauthenticated screen) on the browser 42. Even when the scan application 41 is in an active state, since there is a user who returns the browser 42 to an active state, the browser 42 includes information indicating that the scan application 41 is in an active state. By displaying the completion screen, the user can recognize that the application needs to be in an active state, and can expect a reduction in confusion. Also, by displaying the completion screen, the user can recognize the completion of authentication.

また、CPU11は、図11のローカルサーバ処理のS311にて終了コマンドを受け付けたと判断した場合、ローカルサーバ処理を終了する前に、ブラウザ42を終了させるコマンドをOS40に渡してもよい。ブラウザ42を終了させるコマンドをOS40に渡す処理は、ブラウザ終了処理の一例である。ブラウザ42を終了させることで、ブラウザ42の表示画面であるブラウザ表示画面421が閉じられ、ブラウザ42の後面にあった表示画面がアクティブな状態となる。スキャンアプリ41からブラウザ42を起動していることから、スキャンアプリ41がブラウザ42の後面にある可能性が高く、スキャンアプリ41がアクティブな状態となる可能性が高い。認証が完了した後はブラウザ42が不要になるため、ブラウザ42を終了させる方が、ユーザの手間を省けるとともにメモリの使用効率も高まる。   If the CPU 11 determines that an end command has been received in S311 of the local server process of FIG. 11, the CPU 11 may pass a command to end the browser 42 to the OS 40 before ending the local server process. The process of passing a command for terminating the browser 42 to the OS 40 is an example of a browser termination process. By closing the browser 42, the browser display screen 421 that is the display screen of the browser 42 is closed, and the display screen on the rear surface of the browser 42 becomes active. Since the browser 42 is activated from the scan application 41, there is a high possibility that the scan application 41 is on the rear surface of the browser 42, and there is a high possibility that the scan application 41 becomes active. After the authentication is completed, the browser 42 becomes unnecessary, so that closing the browser 42 saves the user trouble and increases the use efficiency of the memory.

なお、ローカルサーバ43は、認証結果を示す完了画面を表示した後、所定時間の経過を待ってからブラウザ42を終了させてもよい。あるいは、認証に成功した場合に限りブラウザ42を終了させるとしてもよい。   Note that the local server 43 may terminate the browser 42 after waiting for the elapse of a predetermined time after displaying the completion screen indicating the authentication result. Alternatively, the browser 42 may be terminated only when the authentication is successful.

以上、詳細に説明したように、本形態のスキャンアプリ41は、クラウドサーバへのサインインの指示を受け付けた場合、ブラウザ42を起動させて認証ページを表示させ、クラウドサーバへの認証結果がブラウザ42に表示される。そして、認証結果がブラウザ42に表示された際には、ブラウザ42がアクティブな状態となっており、ユーザがスキャンアプリ41での操作を継続するためには、スキャンアプリ41をアクティブな状態とする必要がある。本形態では、認証完了画面98や未認証画面に、スキャンアプリ41をアクティブな状態とすることを示す情報が含まれる。認証結果をブラウザ42に表示させる際、スキャンアプリ41をアクティブな状態にすることを示す特定情報を含めることで、ユーザはスキャンアプリ41をアクティブな状態にする必要が有ることを認識でき、困惑の軽減が期待できる。   As described above in detail, when receiving the sign-in instruction to the cloud server, the scan application 41 according to the present embodiment activates the browser 42 to display the authentication page, and the authentication result to the cloud server indicates that the browser 42. When the authentication result is displayed on the browser 42, the browser 42 is in an active state, and in order for the user to continue the operation on the scan application 41, the scan application 41 is activated. There is a need. In this embodiment, the authentication completion screen 98 and the unauthenticated screen include information indicating that the scan application 41 is activated. When the authentication result is displayed on the browser 42, by including specific information indicating that the scan application 41 is activated, the user can recognize that the scan application 41 needs to be activated. Reduction can be expected.

なお、本実施の形態は単なる例示にすぎず、本発明を何ら限定するものではない。したがって本発明は当然に、その要旨を逸脱しない範囲内で種々の改良、変形が可能である。例えば、PC1に接続されるデバイスは、スキャナ等の画像データを取得する装置に限らず、プリンタ等の画像データに基づく印刷を行う装置であっても良い。つまり、本明細書に開示される技術は、クラウドサーバに画像データをアップロードするアプリに限らず、クラウドサーバから画像データをダウンロードするアプリにおいても、適用可能である。   In addition, this Embodiment is only a mere illustration and does not limit this invention at all. Therefore, the present invention can be variously improved and modified without departing from the scope of the invention. For example, the device connected to the PC 1 is not limited to an apparatus that acquires image data such as a scanner, but may be an apparatus that performs printing based on image data such as a printer. That is, the technique disclosed in this specification is not limited to an app that uploads image data to a cloud server, but can also be applied to an app that downloads image data from a cloud server.

また、例えば、認証完了画面98や未認証画面に含ませる特定情報は、図7に例示したものに限らず、例えば、スキャナ2等のスキャンアプリ41の制御対象となるデバイスの画像、ブラウザ42を閉じる動作などを示す動画、音声メッセージ等でもよい。   Further, for example, the specific information included in the authentication completion screen 98 and the unauthenticated screen is not limited to that illustrated in FIG. 7. For example, the image of the device to be controlled by the scan application 41 such as the scanner 2, the browser 42 It may be a moving image showing a closing operation, a voice message, or the like.

また、例えば、ローカルサーバ43による画面データの取得処理(ローカルサーバ処理のS305、S308、図4の手順67、72)とブラウザ42への表示の指示(ローカルサーバ処理のS306、S309、図4の手順68、73)は、スキャンアプリ41への結果の送信(ローカルサーバ処理のS307、S310、図4の手順69、74)の後でもよい。   Also, for example, screen data acquisition processing by the local server 43 (local server processing S305, S308, steps 67 and 72 in FIG. 4) and display instruction to the browser 42 (local server processing S306, S309, FIG. 4) The procedures 68 and 73) may be after the transmission of the result to the scan application 41 (S307 and S310 of local server processing, procedures 69 and 74 of FIG. 4).

また、例えば、認証方式は、OAuth2.0を用いた認証方式に限らない。スキャンアプリ41は、選択されたクラウドサーバにて採用されている認証方式に基づいて、認証要求を行うと良い。   Further, for example, the authentication method is not limited to the authentication method using OAuth 2.0. The scan application 41 may make an authentication request based on the authentication method employed by the selected cloud server.

また、クラウドサーバへの認証が成功した後、ブラウザによって認証結果が通知されるが、アプリケーションプログラムをアクティブな状態にした後は、ブラウザの終了や、ブラウザがアプリケーションプログラムと重なって後面に配置されることで、認証に成功しているか否か、すなわち、サインイン状態であるか否かが、ユーザに取って分かり難い。   In addition, after successful authentication to the cloud server, the authentication result is notified by the browser, but after the application program is activated, the browser is terminated or the browser overlaps with the application program and is placed on the back side. Thus, it is difficult for the user to determine whether or not the authentication is successful, that is, whether or not the user is in the signed-in state.

本明細書の技術によれば、アプリケーションプログラムが「サインアウト」ボタンを表示するので、ユーザは、アプリケーションプログラムのウィンドウを見るだけで、サインイン状態であることを認識でき、ユーザの困惑を軽減できる。   According to the technology of the present specification, since the application program displays the “sign out” button, the user can recognize that the user is in the sign-in state by simply looking at the window of the application program, and can reduce the user's confusion. .

また、実施の形態に開示されている処理は、単一のCPU、複数のCPU、ASICなどのハードウェア、またはそれらの組み合わせで実行されてもよい。また、実施の形態に開示されている処理は、その処理を実行するためのプログラムを記録した記録媒体、または方法等の種々の態様で実現することができる。   The processing disclosed in the embodiments may be executed by a single CPU, a plurality of CPUs, hardware such as an ASIC, or a combination thereof. Further, the process disclosed in the embodiment can be realized in various modes such as a recording medium or a method in which a program for executing the process is recorded.

1 PC
11 CPU
15 タッチパネル
41 スキャンアプリ
42 ブラウザ
43 ローカルサーバ
1 PC
11 CPU
15 Touch Panel 41 Scan Application 42 Browser 43 Local Server

Claims (15)

情報処理装置のコンピュータによって実行可能なアプリケーションプログラムであって、
前記コンピュータに、
前記情報処理装置のユーザインタフェースを介して、前記アプリケーションプログラムがアクティブな状態で、クラウドサーバへの認証指示を受け付ける認証指示受付処理を実行させ、
前記コンピュータを、
前記認証指示を前記認証指示受付処理で受け付けた場合に、ローカルホストのウェブサーバであるローカルサーバとして機能させ、
前記コンピュータに、
前記認証指示を前記認証指示受付処理で受け付けた場合に、
前記情報処理装置に組み込まれたブラウザに、前記クラウドサーバによって提供される認証画面を表示することと、前記ローカルサーバをリダイレクト要求のリダイレクト先とすることと、を指示するブラウザ指示処理と、
前記ブラウザをアクティブな状態にし、前記アプリケーションプログラムを非アクティブな状態にする第1ブラウザアクティブ処理と、
を実行させ、
前記ローカルサーバは、前記コンピュータに、
前記ブラウザ指示処理の後、前記リダイレクト要求を前記ブラウザを介して前記ローカルサーバが受信した場合に、
前記クラウドサーバへの認証結果を示す完了画面であって、前記アプリケーションプログラムをアクティブな状態にすることを示す特定情報が含まれる前記完了画面を表示するよう、前記ブラウザに指示する認証結果表示処理と、
前記ブラウザをアクティブな状態にし、前記アプリケーションプログラムを非アクティブな状態にする第2ブラウザアクティブ処理と、
を実行させ、
前記コンピュータに、
前記クラウドサーバへの認証に成功している場合、前記ユーザインタフェースを介して、前記アプリケーションプログラムがアクティブな状態で、前記クラウドサーバを利用する処理の実行指示を受け付ける実行指示受付処理を実行させ、
前記実行指示を前記実行指示受付処理で受け付けた場合に、前記実行指示に対応する前記処理を実行させる、
ことを特徴とするアプリケーションプログラム。
An application program that can be executed by a computer of an information processing device,
In the computer,
Via the user interface of the information processing apparatus, in a state where the application program is active, execute an authentication instruction reception process for receiving an authentication instruction to the cloud server,
The computer,
When the authentication instruction is accepted in the authentication instruction acceptance process, function as a local server that is a web server of a local host,
In the computer,
When the authentication instruction is received in the authentication instruction reception process,
Browser instruction processing for instructing to display an authentication screen provided by the cloud server on a browser incorporated in the information processing apparatus, and to redirect the local server to a redirect request;
A first browser active process for making the browser active and making the application program inactive;
And execute
The local server is connected to the computer.
After the browser instruction process, when the local server receives the redirect request via the browser,
An authentication result display process for instructing the browser to display the completion screen including specific information indicating that the application program is to be activated, the completion screen indicating an authentication result to the cloud server; ,
A second browser active process for making the browser active and making the application program inactive;
And execute
In the computer,
If the authentication to the cloud server is successful, via the user interface, the application program is in an active state, and an execution instruction reception process for receiving an instruction to execute the process using the cloud server is executed.
When the execution instruction is received in the execution instruction reception process, the process corresponding to the execution instruction is executed.
An application program characterized by that.
請求項1に記載するアプリケーションプログラムにおいて、
前記認証結果表示処理では、
前記ブラウザに、前記アプリケーションプログラムの名称を含む前記完了画面のウェブページデータを渡す、
ことを特徴とするアプリケーションプログラム。
In the application program according to claim 1,
In the authentication result display process,
Passing web page data of the completion screen including the name of the application program to the browser;
An application program characterized by that.
請求項1または請求項2に記載するアプリケーションプログラムにおいて、
前記認証結果表示処理では、
前記ブラウザに、前記アプリケーションプログラムのテーマ色を含む前記完了画面のウェブページデータを渡す、
ことを特徴とするアプリケーションプログラム。
In the application program according to claim 1 or 2,
In the authentication result display process,
Passing web page data of the completion screen including the theme color of the application program to the browser;
An application program characterized by that.
請求項1から請求項3のいずれか1つに記載するアプリケーションプログラムにおいて、
前記コンピュータに、
複数の言語のうちから1つの言語を選択する選択処理を実行させ、
前記認証指示受付処理では、
前記認証指示を受け付ける画面であって、前記選択処理で選択された言語による前記画面を表示し、
前記特定情報のメッセージが複数の言語に対応しており、
前記認証結果表示処理では、
前記ブラウザに、前記選択処理にて選択された言語による前記完了画面のウェブページデータを渡す、
ことを特徴とするアプリケーションプログラム。
In the application program according to any one of claims 1 to 3,
In the computer,
A selection process for selecting one language from a plurality of languages is executed.
In the authentication instruction acceptance process,
A screen for accepting the authentication instruction, displaying the screen in the language selected in the selection process;
The message of the specific information corresponds to a plurality of languages;
In the authentication result display process,
Passing web page data of the completion screen in the language selected in the selection process to the browser;
An application program characterized by that.
請求項1から請求項4のいずれか1つに記載するアプリケーションプログラムにおいて、
前記認証結果表示処理では、
前記ブラウザに、前記ユーザインタフェースを介して入力を受け付ける入力エリアであって、前記ユーザインタフェースを介して入力があった場合に、前記アプリケーションプログラムをアクティブな状態にさせる前記入力エリアを含む前記完了画面のウェブページデータを渡す、
ことを特徴とするアプリケーションプログラム。
In the application program according to any one of claims 1 to 4,
In the authentication result display process,
An input area for accepting input via the user interface to the browser, and when the input is made via the user interface, the completion screen including the input area that activates the application program Pass web page data,
An application program characterized by that.
請求項1から請求項5のいずれか1つに記載するアプリケーションプログラムにおいて、
前記完了画面のファビコンを、前記アプリケーションプログラムのアイコンと同じにする、
ことを特徴とするアプリケーションプログラム。
In the application program as described in any one of Claims 1-5,
The favicon on the completion screen is the same as the icon of the application program.
An application program characterized by that.
請求項1から請求項6のいずれか1つに記載するアプリケーションプログラムにおいて、
前記認証結果表示処理では、
前記ブラウザに、前記ブラウザを終了させるメッセージを含む前記完了画面のウェブページデータを渡す、
ことを特徴とするアプリケーションプログラム。
In the application program according to any one of claims 1 to 6,
In the authentication result display process,
Passing web page data of the completion screen including a message to terminate the browser to the browser;
An application program characterized by that.
請求項1から請求項7のいずれか1つに記載するアプリケーションプログラムにおいて、
前記認証指示受付処理では、
前記認証指示を受け付けている間、前記アプリケーションプログラムの表示画面に、サインアウト状態であることを示す情報を表示させ、
前記コンピュータに、
前記ブラウザ指示処理の後、前記リダイレクト要求を前記ブラウザを介して前記ローカルサーバが受信し、かつ前記クラウドサーバへの認証が成功した場合に、前記アプリケーションプログラムの表示画面に、サインイン状態であることを示す情報を表示させるサインイン表示処理を実行させる、
ことを特徴とするアプリケーションプログラム。
In the application program according to any one of claims 1 to 7,
In the authentication instruction acceptance process,
While accepting the authentication instruction, on the display screen of the application program, information indicating that it is in a sign-out state is displayed,
In the computer,
After the browser instruction processing, when the local server receives the redirect request via the browser and the authentication to the cloud server is successful, the application program display screen is in a signed-in state. Execute sign-in display processing to display information indicating
An application program characterized by that.
請求項1から請求項8のいずれか1つに記載するアプリケーションプログラムにおいて、
前記ブラウザ指示処理では、
前記認証画面を表示させる指示に、前記アプリケーションプログラムを特定するアプリ情報を表示させるコマンドを付加し、
前記認証結果表示処理では、
前記ブラウザに、前記アプリ情報を含む前記完了画面のウェブページデータを渡す、
ことを特徴とするアプリケーションプログラム。
In the application program according to any one of claims 1 to 8,
In the browser instruction process,
Add a command to display application information specifying the application program to the instruction to display the authentication screen,
In the authentication result display process,
Passing web page data of the completion screen including the application information to the browser;
An application program characterized by that.
情報処理装置のコンピュータによって実行可能なアプリケーションプログラムであって、
前記コンピュータに、
前記情報処理装置のユーザインタフェースを介して、前記アプリケーションプログラムがアクティブな状態で、クラウドサーバへの認証指示を受け付ける認証指示受付処理を実行させ、
前記コンピュータを、
前記認証指示を前記認証指示受付処理で受け付けた場合に、ローカルホストのウェブサーバであるローカルサーバとして機能させ、
前記コンピュータに、
前記認証指示を前記認証指示受付処理で受け付けた場合に、
前記情報処理装置に組み込まれたブラウザに、前記クラウドサーバによって提供される認証画面を表示することと、前記ローカルサーバをリダイレクト要求のリダイレクト先とすることと、を指示するブラウザ指示処理と、
前記ブラウザをアクティブな状態にし、前記アプリケーションプログラムを非アクティブな状態にするブラウザアクティブ処理と、
を実行させ、
前記ローカルサーバは、前記コンピュータに、
前記ブラウザ指示処理の後、前記リダイレクト要求を前記ブラウザを介して前記ローカルサーバが受信した場合に、
前記ブラウザを非アクティブな状態にし、前記アプリケーションプログラムをアクティブな状態にするアプリアクティブ処理を実行させ、
前記コンピュータに、
前記クラウドサーバへの認証に成功している場合、前記ユーザインタフェースを介して、前記アプリケーションプログラムがアクティブな状態で、前記クラウドサーバを利用する処理の実行指示を受け付ける実行指示受付処理を実行させ、
前記実行指示を前記実行指示受付処理で受け付けた場合に、前記実行指示に対応する前記処理を実行させる、
ことを特徴とするアプリケーションプログラム。
An application program that can be executed by a computer of an information processing device,
In the computer,
Via the user interface of the information processing apparatus, in a state where the application program is active, execute an authentication instruction reception process for receiving an authentication instruction to the cloud server,
The computer,
When the authentication instruction is accepted in the authentication instruction acceptance process, function as a local server that is a web server of a local host,
In the computer,
When the authentication instruction is received in the authentication instruction reception process,
Browser instruction processing for instructing to display an authentication screen provided by the cloud server on a browser incorporated in the information processing apparatus, and to redirect the local server to a redirect request;
Browser active processing for bringing the browser into an active state and inactivating the application program;
And execute
The local server is connected to the computer.
After the browser instruction process, when the local server receives the redirect request via the browser,
Causing the browser to be in an inactive state and executing an application active process for bringing the application program into an active state;
In the computer,
If the authentication to the cloud server is successful, via the user interface, the application program is in an active state, and an execution instruction reception process for receiving an instruction to execute the process using the cloud server is executed.
When the execution instruction is received in the execution instruction reception process, the process corresponding to the execution instruction is executed.
An application program characterized by that.
請求項10に記載するアプリケーションプログラムにおいて、
前記ローカルサーバは、前記コンピュータに、
前記ブラウザ指示処理の後、前記リダイレクト要求を前記ブラウザを介して前記ローカルサーバが受信した場合に、
前記ブラウザを終了させるブラウザ終了処理を実行させる、
ことを特徴とするアプリケーションプログラム。
In the application program according to claim 10,
The local server is connected to the computer.
After the browser instruction process, when the local server receives the redirect request via the browser,
Causing browser termination processing to terminate the browser;
An application program characterized by that.
請求項10に記載するアプリケーションプログラムにおいて、
前記ローカルサーバは、前記コンピュータに、
前記ブラウザ指示処理の後、前記リダイレクト要求を前記ブラウザを介して前記ローカルサーバが受信した場合に、
前記クラウドサーバへの認証結果を示す完了画面であって、前記アプリケーションプログラムをアクティブな状態にすることを示す特定情報が含まれる前記完了画面を、表示するよう、前記ブラウザに指示する認証結果表示処理を実行させる、
ことを特徴とするアプリケーションプログラム。
In the application program according to claim 10,
The local server is connected to the computer.
After the browser instruction process, when the local server receives the redirect request via the browser,
An authentication result display process for instructing the browser to display the completion screen that includes specific information indicating that the application program is to be activated, which is a completion screen that indicates an authentication result to the cloud server To execute,
An application program characterized by that.
請求項10から請求項12のいずれか1つに記載するアプリケーションプログラムにおいて、
前記認証指示受付処理では、
前記認証指示を受け付けている間、前記アプリケーションプログラムの表示画面に、サインアウト状態であることを示す情報を表示させ、
前記コンピュータに、
前記ブラウザ指示処理の後、前記リダイレクト要求を前記ブラウザを介して前記ローカルサーバが受信し、かつ前記クラウドサーバへの認証が成功した場合に、前記アプリケーションプログラムの表示画面に、サインイン状態であることを示す情報を表示させるサインイン表示処理を実行させる、
ことを特徴とするアプリケーションプログラム。
In the application program according to any one of claims 10 to 12,
In the authentication instruction acceptance process,
While accepting the authentication instruction, on the display screen of the application program, information indicating that it is in a sign-out state is displayed,
In the computer,
After the browser instruction processing, when the local server receives the redirect request via the browser and the authentication to the cloud server is successful, the application program display screen is in a signed-in state. Execute sign-in display processing to display information indicating
An application program characterized by that.
請求項10から請求項13のいずれか1つに記載するアプリケーションプログラムにおいて、
前記ブラウザ指示処理では、
前記認証画面を表示させる指示に、前記アプリケーションプログラムを特定するアプリ情報を表示させるコマンドを付加する、
ことを特徴とするアプリケーションプログラム。
In the application program as described in any one of Claims 10-13,
In the browser instruction process,
A command for displaying application information for specifying the application program is added to the instruction to display the authentication screen.
An application program characterized by that.
情報処理装置のコンピュータによって実行可能なアプリケーションプログラムであって、
前記コンピュータに、
前記情報処理装置のユーザインタフェースを介して、前記アプリケーションプログラムがアクティブな状態で、クラウドサーバへの認証指示を受け付け、前記認証指示を受け付けている間、前記アプリケーションプログラムの表示画面に、サインアウト状態であることを示す情報を表示させる認証指示受付処理を実行させ、
前記コンピュータを、
前記認証指示を前記認証指示受付処理で受け付けた場合に、ローカルホストのウェブサーバであるローカルサーバとして機能させ、
前記コンピュータに、
前記認証指示を前記認証指示受付処理で受け付けた場合に、
前記情報処理装置に組み込まれたブラウザに、前記クラウドサーバによって提供される認証画面を表示することと、前記ローカルサーバをリダイレクト要求のリダイレクト先とすることと、を指示するブラウザ指示処理と、
前記ブラウザをアクティブな状態にし、前記アプリケーションプログラムを非アクティブな状態にする第1ブラウザアクティブ処理と、
を実行させ、
前記コンピュータに、
前記ブラウザ指示処理の後、前記リダイレクト要求を前記ブラウザを介して前記ローカルサーバが受信し、かつ前記クラウドサーバへの認証が成功した場合に、前記アプリケーションプログラムの表示画面に、サインイン状態であることを示す情報を表示させるサインイン表示処理を実行させる、
ことを特徴とするアプリケーションプログラム。
An application program that can be executed by a computer of an information processing device,
In the computer,
Via the user interface of the information processing apparatus, the application program is in an active state, accepts an authentication instruction to a cloud server, and while accepting the authentication instruction, the application program display screen is in a signed-out state. Execute authentication instruction acceptance processing to display information indicating that there is,
The computer,
When the authentication instruction is accepted in the authentication instruction acceptance process, function as a local server that is a web server of a local host,
In the computer,
When the authentication instruction is received in the authentication instruction reception process,
Browser instruction processing for instructing to display an authentication screen provided by the cloud server on a browser incorporated in the information processing apparatus, and to redirect the local server to a redirect request;
A first browser active process for making the browser active and making the application program inactive;
And execute
In the computer,
After the browser instruction processing, when the local server receives the redirect request via the browser and the authentication to the cloud server is successful, the application program display screen is in a signed-in state. Execute sign-in display processing to display information indicating
An application program characterized by that.
JP2018035235A 2018-02-28 2018-02-28 Application program Active JP7081209B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018035235A JP7081209B2 (en) 2018-02-28 2018-02-28 Application program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018035235A JP7081209B2 (en) 2018-02-28 2018-02-28 Application program

Publications (2)

Publication Number Publication Date
JP2019149132A true JP2019149132A (en) 2019-09-05
JP7081209B2 JP7081209B2 (en) 2022-06-07

Family

ID=67850601

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018035235A Active JP7081209B2 (en) 2018-02-28 2018-02-28 Application program

Country Status (1)

Country Link
JP (1) JP7081209B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11582236B2 (en) 2020-09-24 2023-02-14 Toshiba Tec Kabushiki Kaisha Image forming apparatus and controlling method

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140164939A1 (en) * 2012-12-11 2014-06-12 Canon Kabushiki Kaisha Information processing apparatus and method and storage medium
JP2016134043A (en) * 2015-01-20 2016-07-25 コニカミノルタ株式会社 Image processor, content display control method in the image processor, and display control program

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140164939A1 (en) * 2012-12-11 2014-06-12 Canon Kabushiki Kaisha Information processing apparatus and method and storage medium
JP2014115895A (en) * 2012-12-11 2014-06-26 Canon Inc Information processor and control method therefor, and program
JP2016134043A (en) * 2015-01-20 2016-07-25 コニカミノルタ株式会社 Image processor, content display control method in the image processor, and display control program

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11582236B2 (en) 2020-09-24 2023-02-14 Toshiba Tec Kabushiki Kaisha Image forming apparatus and controlling method

Also Published As

Publication number Publication date
JP7081209B2 (en) 2022-06-07

Similar Documents

Publication Publication Date Title
US10628099B2 (en) Multifunctional image processing apparatus with user registration features
JP5231620B2 (en) Server device
JP5875351B2 (en) Information processing system, information processing apparatus, authentication method, and computer program
JP6182904B2 (en) COMMUNICATION TERMINAL DEVICE, COMMUNICATION CONTROL METHOD, AND COMMUNICATION CONTROL PROGRAM
US20140380462A1 (en) Image processing apparatus that performs user authentication, authentication method therefor, and storage medium
JP6487737B2 (en) Information processing apparatus, control method thereof, and program
US11025787B2 (en) Data transmission apparatus and control method for using data transmission functions
US20170019545A1 (en) Display control method, display control apparatus, and storage medium storing display control program
US11523006B2 (en) Information processing method, information processing apparatus, and storage medium
JP2014199658A (en) Information processing system, information processing method and program
US9450922B2 (en) Peripheral apparatus, information processing apparatus, communication control method, and storage medium
JP2019213135A (en) Data transmission device capable of setting configuration data such as mail address, received from external device, on transmission configuration screen
JP7081209B2 (en) Application program
JP5442418B2 (en) MFP, MFP control system, program and recording medium
JP2015114795A (en) Information processor, information processing method, and information processing program
JP7081210B2 (en) Application program
JP7321788B2 (en) Browsing Management Server, Browsing Management Method, and Browsing Management System
JP2006318423A (en) Print system, mobile communication terminal device, and program and storage medium of mobile communication terminal device
JP2015225479A (en) Information processing system, information processing apparatus, information processing method and computer program
JP5694495B2 (en) Compound machine
US20210377250A1 (en) Authentication system, device, and authentication method
JP6743946B2 (en) Mobile terminal and program
JP2023068520A (en) Image reading system, image reading device, server, image reading method, and program
JP2021122128A (en) Image processing device, control method thereof, and program
JP6255855B2 (en) Image processing system, information transmission apparatus, and image processing apparatus

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210115

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20211124

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20211130

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220509

R150 Certificate of patent or registration of utility model

Ref document number: 7081209

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150