JP6408045B2 - TERMINAL DEVICE, TERMINAL DEVICE CONTROL METHOD, AND COMPUTER PROGRAM - Google Patents

TERMINAL DEVICE, TERMINAL DEVICE CONTROL METHOD, AND COMPUTER PROGRAM Download PDF

Info

Publication number
JP6408045B2
JP6408045B2 JP2017014459A JP2017014459A JP6408045B2 JP 6408045 B2 JP6408045 B2 JP 6408045B2 JP 2017014459 A JP2017014459 A JP 2017014459A JP 2017014459 A JP2017014459 A JP 2017014459A JP 6408045 B2 JP6408045 B2 JP 6408045B2
Authority
JP
Japan
Prior art keywords
user
terminal device
user input
input
predetermined operation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2017014459A
Other languages
Japanese (ja)
Other versions
JP2018124648A (en
Inventor
祥瑞 程
祥瑞 程
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Rakuten Group Inc
Original Assignee
Rakuten Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Rakuten Inc filed Critical Rakuten Inc
Priority to JP2017014459A priority Critical patent/JP6408045B2/en
Publication of JP2018124648A publication Critical patent/JP2018124648A/en
Application granted granted Critical
Publication of JP6408045B2 publication Critical patent/JP6408045B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本願発明は、端末装置、端末装置の制御方法、及び、コンピュータプログラムに関する。   The present invention relates to a terminal device, a control method for the terminal device, and a computer program.

ユーザの操作速度を測定し、平均値よりも速い場合には表示速度を従来よりも速くする技術が提案されている(特許文献1を参照)。   A technique has been proposed in which the user's operation speed is measured and the display speed is higher than the conventional technique when the speed is higher than the average value (see Patent Document 1).

特開2001−22488号公報JP 2001-22488 A

しかし、提案技術では、操作単位に平均値からのずれを検知しているだけで、操作を行なっているユーザの状態とは無関係に、操作が平均値からずれれば常に表示速度が変わることになってしまう。   However, in the proposed technique, only the deviation from the average value is detected in the operation unit, and the display speed always changes if the operation deviates from the average value regardless of the state of the user who is performing the operation. turn into.

そこで、本願発明では、端末を操作しているユーザの状態を判定するための条件をユーザ毎に特定し、当該条件に従ってユーザの端末操作時の状態を判定し、ユーザの状態に応じて端末において実行する処理を制御する技術を提供する。   Therefore, in the present invention, a condition for determining the state of the user who is operating the terminal is specified for each user, the state at the time of the user's terminal operation is determined according to the condition, and the terminal according to the state of the user A technique for controlling a process to be executed is provided.

上記課題を解決するための発明の実施形態の一つに対応する端末装置は、
ユーザ入力を検出する検出手段と、
前記端末装置における所定の動作の開始の後に前記検出手段が検出した前記ユーザ入力を、前記所定の動作と関連づけて記憶部に記憶させる記憶制御手段と、
前記端末装置の前記所定の動作を開始した場合に、前記所定の動作と関連づけて前記記憶部に記憶されたいずれかのユーザ入力が発生したか否かを判定する判定手段と、
前記判定手段が前記いずれかのユーザ入力が発生したと判定したかに応じて、前記所定の動作のために前記端末装置が実行する処理を制御する制御手段と
を備えることを特徴とする。
A terminal device corresponding to one of the embodiments of the invention for solving the above-described problem is
Detecting means for detecting user input;
Storage control means for storing the user input detected by the detection means after the start of a predetermined operation in the terminal device in a storage unit in association with the predetermined operation;
Determining means for determining whether any user input stored in the storage unit in association with the predetermined operation has occurred when the predetermined operation of the terminal device is started;
Control means for controlling processing executed by the terminal device for the predetermined operation according to whether the determination means determines that any one of the user inputs has occurred.

上記課題を解決するための発明の実施形態の他に対応する端末装置は、
ユーザ入力を検出する検出手段と、
前記検出手段が、前記ユーザの平均的な入力とは異なるユーザ入力を所定期間内に複数検出した場合に、該複数のユーザ入力をユーザ入力セットとして記憶部に記憶させる記憶制御手段と、
前記端末装置が所定の動作を実行している間に、前記記憶部に記憶されたいずれかのユーザ入力セットが発生したか否かを判定する判定手段と、
前記判定手段が前記いずれかのユーザ入力セットが発生したと判定したかに応じて、前記所定の動作のために前記端末装置が実行する処理を制御する制御手段と
を備えることを特徴とする。
The terminal device corresponding to the embodiment of the invention for solving the above-described problem is
Detecting means for detecting user input;
Storage control means for storing a plurality of user inputs as a user input set in a storage unit when the detection means detects a plurality of user inputs different from the average input of the user within a predetermined period;
Determination means for determining whether any user input set stored in the storage unit has occurred while the terminal device is performing a predetermined operation;
Control means for controlling processing executed by the terminal device for the predetermined operation according to whether the determination means determines that any one of the user input sets has occurred.

本発明によれば、端末を操作しているユーザの状態を判定するための条件をユーザ毎に特定し、当該条件に従ってユーザの端末操作時の状態を判定し、ユーザの状態に応じて端末において実行する処理を制御する技術を提供することができる。   According to the present invention, a condition for determining the state of a user who is operating a terminal is specified for each user, the state at the time of the user's terminal operation is determined according to the condition, and the terminal according to the user's state A technique for controlling a process to be executed can be provided.

発明の実施形態に対応する、クライアント・サーバ・システム全体の構成例を示す図。The figure which shows the structural example of the whole client server system corresponding to embodiment of invention. 発明の実施形態に対応する、クライアント101のハードウェア構成の一例を示すブロック図。The block diagram which shows an example of the hardware constitutions of the client 101 corresponding to embodiment of invention. 発明の実施形態に対応する、サーバ103のハードウェア構成の一例を示すブロック図。The block diagram which shows an example of the hardware constitutions of the server 103 corresponding to embodiment of invention. 発明の実施形態1に対応する、ユーザ特性テーブル生成処理の流れの一例を示すフローチャート。The flowchart which shows an example of the flow of a user characteristic table production | generation process corresponding to Embodiment 1 of invention. 発明の実施形態に対応する、ユーザ特性テーブルの一例を示す図。The figure which shows an example of the user characteristic table corresponding to embodiment of invention. 発明の実施形態に対応する、クライアント101における処理の流れの一例を示すフローチャート。The flowchart which shows an example of the flow of a process in the client 101 corresponding to embodiment of invention. 発明の実施形態に対応する、クライアント101におけるフラストレーション解消処理の流れの一例を示すフローチャート。The flowchart which shows an example of the flow of the frustration elimination process in the client 101 corresponding to embodiment of invention. 発明の実施形態に対応する、クライアント101における処理結果の出力処理の流れの一例を示すフローチャート。The flowchart which shows an example of the flow of an output process of the process result in the client 101 corresponding to embodiment of invention. 発明の実施形態2に対応する、ユーザ特性テーブル生成処理の流れの一例を示すフローチャート。The flowchart which shows an example of the flow of a user characteristic table production | generation process corresponding to Embodiment 2 of invention. 発明の実施形態3に対応する、平均値テーブルの一例を示す図。The figure which shows an example of the average value table corresponding to Embodiment 3 of invention.

以下、図面を用いて、本願発明に係る実施形態について説明する。なお、以下に示す実施形態は一例であり、これに限定するものではない。そのため、本願発明の特徴的構成を適用できれば他の構成であってもよい。   Embodiments according to the present invention will be described below with reference to the drawings. In addition, embodiment shown below is an example and is not limited to this. Therefore, other configurations may be used as long as the characteristic configuration of the present invention can be applied.

[実施形態1]
以下に、添付する図面を参照して本発明の第1の実施形態を説明する。ただし、この実施の形態に記載されている構成要素はあくまでも例示であり、この発明の範囲をそれらのみに限定する趣旨のものではない。
[Embodiment 1]
Hereinafter, a first embodiment of the present invention will be described with reference to the accompanying drawings. However, the constituent elements described in this embodiment are merely examples, and are not intended to limit the scope of the present invention only to them.

<システム構成>
以下、本実施形態に対応するクライアント・サーバ・システムの構成について説明する。図1は、オンラインショッピングサイトとしてシステムを構築した場合の、本実施形態に対応するシステム全体構成の一例を示すブロック図である。当該システムは、ユーザ端末、サーバがネットワークに接続されて構成されている。サーバは、オンラインショッピングサイトを管理し、サイトで販売される商品の画像情報の他に、店舗及び顧客の各ユーザ情報を管理する。
<System configuration>
The configuration of the client server system corresponding to this embodiment will be described below. FIG. 1 is a block diagram showing an example of the overall system configuration corresponding to this embodiment when a system is constructed as an online shopping site. The system is configured by connecting user terminals and servers to a network. The server manages an online shopping site and manages store and customer user information in addition to image information of products sold on the site.

クライアント101a、101b、101c(以下、これらを総称して「クライアント101」という。)は、ユーザが操作し、サーバによりユーザ認証を受けた後、サーバからサービスの提供を受けることができるユーザ端末である。本実施形態では、当該サービスには、オンラインショッピングサイトで提供されている情報の閲覧を含むことができる。   Clients 101a, 101b, and 101c (hereinafter collectively referred to as “client 101”) are user terminals that can be serviced by the server after being operated by the user and receiving user authentication by the server. is there. In this embodiment, the service can include browsing of information provided on an online shopping site.

サーバ103は、クライアント101のユーザを認証し、認証されたユーザが使用するクライアント101に対して上記サービスを提供する装置である。クライアント101及びサーバ103はそれぞれネットワーク102に接続され、相互通信が可能となっている。ネットワーク102は例えばインターネット、ローカル・エリア・ネットワーク(LAN)、或いは、ワイド・エリア・ネットワーク(WAN)として構築することができる。インターネットは世界中のネットワークが互いに接続されたネットワークであるが、ネットワーク102は、これ以外にもイントラネットのように特定の組織内においてのみ接続可能なネットワークであってもよい。サーバ103には、ユーザ情報データベース104とコンテンツデータベース105とが接続されている。   The server 103 is a device that authenticates the user of the client 101 and provides the service to the client 101 used by the authenticated user. The client 101 and the server 103 are each connected to the network 102 and can communicate with each other. The network 102 can be constructed as, for example, the Internet, a local area network (LAN), or a wide area network (WAN). The Internet is a network in which networks all over the world are connected to each other. However, the network 102 may be a network that can be connected only within a specific organization, such as an intranet. A user information database 104 and a content database 105 are connected to the server 103.

クライアント101は、ユーザが操作することで、サーバ103が提供するサービスを利用することができる。当該サービスには、例えばサーバ103が提供するページ情報の閲覧、情報の検索、絞り込み、並び替え、その他の情報の取得、情報のアップロード等が含まれる。クライアント101は、ユーザ端末、端末装置、情報処理装置、或いは、通信装置であって、例えば、スマートフォン、タブレット端末、ノートパソコン、デスクトップパソコン、携帯情報端末、携帯電話等を含む。クライアント101は、ユーザの状態を検出するための各種センサを搭載しているものとする。当該センサには、映像、触覚、振動、音声等を検出する機能を有するものを含む。クライアント101は、無線LAN、LTE等の無線データ通信手段によってネットワーク102に接続されている。尚、イーサネット(登録商標)等のネットワークケーブルを含むLANにより、ネットワーク102へアクセス可能に更に構成されていてもよい。   The client 101 can use a service provided by the server 103 by a user operation. The service includes, for example, browsing page information provided by the server 103, searching for information, narrowing down, sorting, acquiring other information, uploading information, and the like. The client 101 is a user terminal, a terminal device, an information processing device, or a communication device, and includes, for example, a smartphone, a tablet terminal, a notebook personal computer, a desktop personal computer, a portable information terminal, a mobile phone, and the like. The client 101 is assumed to be equipped with various sensors for detecting the user state. The sensor includes a sensor having a function of detecting video, touch, vibration, voice and the like. The client 101 is connected to the network 102 by wireless data communication means such as a wireless LAN or LTE. The network 102 may be further configured to be accessible by a LAN including a network cable such as Ethernet (registered trademark).

サーバ103は、ユーザ情報データベース104を管理し、クライアント101の各ユーザの登録情報を保持しておき、各ユーザが特定のサービスの提供を受けようとする場合に、当該ユーザが当該サービス提供を受ける権限を有しているか否かを判定するために用いることができる。サーバ103は、また、コンテンツデータベース105に格納されているデータを管理し、クライアント101からの要求に応じて当該データをクライアント101に提供することができる。サーバ103は、例えば、LANによってユーザ情報データベース104やコンテンツデータベース105と接続される。ユーザ情報データベース104及びコンテンツデータベース105は、それぞれ所定のデータベース・ソフトウェアがインストールされた情報処理装置であり、各種データの管理を行う。   The server 103 manages the user information database 104, holds registration information of each user of the client 101, and when each user wants to receive a specific service, the user receives the service provided. It can be used to determine whether or not it has authority. The server 103 can also manage data stored in the content database 105 and provide the data to the client 101 in response to a request from the client 101. The server 103 is connected to the user information database 104 and the content database 105 via, for example, a LAN. Each of the user information database 104 and the content database 105 is an information processing apparatus in which predetermined database software is installed, and manages various data.

ユーザ情報データベース104は、ユーザごとの登録情報を管理する。具体的に、ユーザを一意に識別するためのユーザ識別子(ユーザID)、登録ユーザであるか否かを判定するためのユーザ登録情報(例えば、ユーザ名とパスワードのセット等)等を関連づけて格納する。   The user information database 104 manages registration information for each user. Specifically, a user identifier (user ID) for uniquely identifying a user, user registration information for determining whether or not the user is a registered user (for example, a set of a user name and a password, etc.) are stored in association with each other. To do.

コンテンツデータベース105は、サーバ103からクライアント101に提供されるコンテンツデータを格納し管理する。また、クライアント101がアップロードしたコンテンツを格納し、管理することもできる。コンテンツデータには、テキスト、画像、動画、音声等のデータが含まれる。これらのコンテンツデータには、当該コンテンツデータを一意に識別するためのコンテンツIDが割当てられている。   The content database 105 stores and manages content data provided from the server 103 to the client 101. In addition, content uploaded by the client 101 can be stored and managed. The content data includes data such as text, images, moving images, and sounds. These content data are assigned content IDs for uniquely identifying the content data.

尚、本明細書では、便宜上、サーバ103、ユーザ情報データベース104、及びコンテンツデータベース105は、それぞれ物理的に独立した情報処理装置によって実現されるものとして説明するが、本発明の実施形態はこれに限られるものではない。例えば、これらが単一の情報処理装置によって実現されてもよい。その一方で、サーバ103等の各装置が複数台の情報処理装置により冗長構成、或いは分散構成されても良い。また、ユーザ情報データベース104は、サーバ103とLAN等によって接続されているものとして説明するが、例えば、ネットワーク102や非図示のイントラネット経由でサーバ103と通信可能な形態をとってもよい。サーバ103とコンテンツデータベース105との関係についても同様である。また、ユーザ情報データベース104が管理するユーザ情報と、とコンテンツデータベース105が管理するコンテンツ関連のデータとは一体的に管理されていてもよい。   In the present specification, for convenience, the server 103, the user information database 104, and the content database 105 are described as being realized by physically independent information processing apparatuses, but the embodiment of the present invention is not limited thereto. It is not limited. For example, these may be realized by a single information processing apparatus. On the other hand, each device such as the server 103 may be configured redundantly or distributedly by a plurality of information processing devices. Although the user information database 104 is described as being connected to the server 103 via a LAN or the like, for example, the user information database 104 may be configured to be able to communicate with the server 103 via the network 102 or an intranet (not shown). The same applies to the relationship between the server 103 and the content database 105. The user information managed by the user information database 104 and the content-related data managed by the content database 105 may be managed integrally.

<クライアント101の構成>
図2は、クライアント101のハードウェア構成の一例を示すブロック図である。本実施形態に対応するクライアント101は、例えば、携帯電話、スマートフォン、タブレット端末として構成することができる。以下では、図2を参照して本実施形態に対応するクライアント101を説明するが、図2は、クライアント101をスマートフォンとして構成する例を示している。
<Configuration of client 101>
FIG. 2 is a block diagram illustrating an example of the hardware configuration of the client 101. The client 101 corresponding to this embodiment can be configured as, for example, a mobile phone, a smartphone, or a tablet terminal. Hereinafter, the client 101 corresponding to the present embodiment will be described with reference to FIG. 2, but FIG. 2 illustrates an example in which the client 101 is configured as a smartphone.

図2において、CPU200は、ハードディスク装置(以下、HDと呼ぶ)205に格納されているアプリケーションプログラム(本実施形態に対応する処理を実行するためのアプリケーションプログラムを含む)、オペレーティングシステム(OS)や制御プログラム等を実行し、RAM202にプログラムの実行に必要な情報、ファイル等を一時的に格納する制御を行う。インターフェイス208を介した外部装置とのデータ送受信を制御するとともに、外部装置から受信したデータの分析・処理を実行し、また外部装置へ送信するデータ(処理要求やデータ要求を含む)の生成を行う。   In FIG. 2, a CPU 200 includes an application program (including an application program for executing processing corresponding to the present embodiment) stored in a hard disk device (hereinafter referred to as HD) 205, an operating system (OS), and control. A program or the like is executed, and control for temporarily storing information, files, etc. necessary for executing the program in the RAM 202 is performed. Controls data transmission / reception with an external device via the interface 208, analyzes and processes data received from the external device, and generates data (including processing requests and data requests) to be transmitted to the external device. .

ROM201は、内部に基本I/Oプログラム、本実施形態に対応する処理を実行するためのアプリケーションプログラム等の各種データを記憶する。RAM202は各種データを一時記憶し、CPU200の主メモリ、ワークエリア等として機能する。   The ROM 201 stores various data such as a basic I / O program and an application program for executing processing corresponding to the present embodiment. The RAM 202 temporarily stores various data and functions as a main memory, work area, and the like of the CPU 200.

外部記憶ドライブ203は、記録媒体へのアクセスを実現するための外部記憶ドライブであり、メディア(記録媒体)204に記憶されたプログラム等を本コンピュータシステムにロードすることができる。尚、メディア204は、例えば、SDカード等のフラッシュ(登録商標)メモリ等を利用することができる。   The external storage drive 203 is an external storage drive for realizing access to a recording medium, and can load a program or the like stored in the medium (recording medium) 204 into the computer system. The media 204 can use, for example, a flash (registered trademark) memory such as an SD card.

外部記憶装置205は、本実施形態では大容量メモリとして機能するHD(ハードディスク)を用いている。HD205には、アプリケーションプログラム、OS、制御プログラム、関連プログラム等が格納される。なお、ハードディスクの代わりに、フラッシュメモリ等の不揮発性記憶装置を用いても良い。   In this embodiment, the external storage device 205 uses an HD (hard disk) that functions as a large-capacity memory. The HD 205 stores application programs, OS, control programs, related programs, and the like. Note that a nonvolatile storage device such as a flash memory may be used instead of the hard disk.

指示入力装置206は、ボタン、キーボード、マウス、タッチパネル等がこれに相当する。出力装置207は、指示入力装置206から入力したコマンドや、それに対するクライアント101の応答出力等を出力する。出力装置207にはディスプレイ、スピーカ、ヘッドフォン端子等が含まれる。システムバス209は、端末理装置内のデータの流れを司る。   The instruction input device 206 corresponds to a button, a keyboard, a mouse, a touch panel, or the like. The output device 207 outputs a command input from the instruction input device 206, a response output from the client 101 in response thereto, and the like. The output device 207 includes a display, a speaker, a headphone terminal, and the like. A system bus 209 manages the flow of data in the terminal device.

インターフェイス(以下、I/Fという)208は、外部装置とのデータのやり取りを仲介する送信装置、受信装置、或いは、通信装置としての役割を果たす。具体的に、I/F208は、無線通信モジュールを含むことができ、当該モジュールはアンテナシステム、RF送受信器、1つ以上の増幅器、同調器、1つ以上の発振器、デジタル信号プロセッサ、CODECチップセット、加入者識別モジュールカード、メモリなどを含む、周知の回路機構を含むことができる。また、有線接続のための有線通信モジュールを含むことができる。有線通信モジュールは1つ以上の外部ポートを介して他のデバイスとの通信を可能とする。また、データを処理する様々なソフトウェアコンポーネントを含むことができる。外部ポートは、イーサーネット、USBやIEEE1394等を介して、直接的に、又はネットワークを介して間接的に他のデバイスと結合する。尚、以上の各装置と同等の機能を実現するソフトウェアにより、ハードウェア装置の代替として構成することもできる。   An interface (hereinafter referred to as I / F) 208 serves as a transmission device, a reception device, or a communication device that mediates data exchange with an external device. Specifically, the I / F 208 can include a wireless communication module, which includes an antenna system, an RF transceiver, one or more amplifiers, a tuner, one or more oscillators, a digital signal processor, a CODEC chipset. Well-known circuitry, including a subscriber identity module card, memory, and the like. In addition, a wired communication module for wired connection can be included. The wired communication module enables communication with other devices via one or more external ports. It can also include various software components that process the data. The external port is coupled to another device directly via Ethernet, USB, IEEE1394, or indirectly via a network. In addition, it can also comprise as a substitute of a hardware apparatus with the software which implement | achieves a function equivalent to each above apparatus.

撮像部210は、撮影光学系、撮像素子(CMOSセンサ等)、A/D変換部などを含むことができる。撮像部210から出力された画像信号は、RAM202に格納され、CPU200による圧縮・符号化処理により例えばJPEG画像に変換され、メディア204やHD205に格納されてもよい。また、CPU200が、ユーザの表情からユーザの状態を判定するために撮影画像の解析を行なってもよい。   The imaging unit 210 can include an imaging optical system, an imaging element (such as a CMOS sensor), an A / D conversion unit, and the like. The image signal output from the imaging unit 210 may be stored in the RAM 202, converted to, for example, a JPEG image by compression / encoding processing by the CPU 200, and stored in the medium 204 or the HD 205. In addition, the CPU 200 may analyze the captured image in order to determine the user's state from the user's facial expression.

音声入力部211は、内蔵された無指向性のマイクにより、クライアント101の周囲の音声を集音(収音)し、アナログデジタル変換をしてCPU200に送信する。CPU200は、入力されたデジタル音声信号の処理を行い、必要に応じてメディア204やHD205に格納してもよい。また、CPU200が、ユーザ状態を判定するためにユーザの発生音声の解析を行なってもよいし、クライアント101の周囲環境を判定するための音声解析を行なうこともできる。   The voice input unit 211 collects (collects) the voice around the client 101 using a built-in omnidirectional microphone, performs analog-digital conversion, and transmits the collected voice to the CPU 200. The CPU 200 may process the input digital audio signal and store it in the medium 204 or the HD 205 as necessary. In addition, the CPU 200 may analyze the voice generated by the user in order to determine the user state, or may perform voice analysis to determine the surrounding environment of the client 101.

振動検出部212は、角速度センサや加速度センサによりクライアント101の振動を検出し、CPU200に通知することができる。CPU200は、クライアント101の設置環境や利用状況を判定するために振動情報を解析することができる。   The vibration detection unit 212 can detect the vibration of the client 101 using an angular velocity sensor or an acceleration sensor and notify the CPU 200 of the vibration. The CPU 200 can analyze the vibration information in order to determine the installation environment and usage status of the client 101.

クライアント101は、本実施形態に対応する処理を実行するために対応するプログラムを動作させる度に、既にプログラムがインストールされているHD205からRAM202にロードするようにしてもよい。また、本実施形態に係るプログラムをROM201に記録しておき、これをメモリマップの一部をなすように構成し、直接CPU200で実行することも可能である。さらに、メディア204から対応プログラム及び関連データを直接RAM202にロードして実行させることもできる。   The client 101 may load the program from the HD 205 in which the program is already installed into the RAM 202 every time the corresponding program is operated in order to execute processing corresponding to the present embodiment. It is also possible to record the program according to the present embodiment in the ROM 201, configure it as a part of the memory map, and execute it directly by the CPU 200. Furthermore, the corresponding program and related data can be directly loaded from the medium 204 into the RAM 202 and executed.

また、上述した情報処理装置としてのユーザ情報データベース104及びコンテンツデータベース105も、図2のCPU200からシステムバス209までと同様或いは同等のハードウェア構成を有するように構成しても良い。   Further, the user information database 104 and the content database 105 as the information processing apparatus described above may also be configured to have the same or equivalent hardware configuration from the CPU 200 to the system bus 209 in FIG.

<サーバ103の構成>
図3は、サーバ103のハードウェア構成の一例を示すブロック図である。CPU300、ROM301、RAM302、外部記憶ドライブ303、メディア304、HD305、指示入力装置306、出力装置307、I/F308、システムバス309の機能及び用途、更には、これらの関係は、図2を用いて同一名称の要素について説明したものと同様或いは同等である。
<Configuration of Server 103>
FIG. 3 is a block diagram illustrating an example of a hardware configuration of the server 103. The functions and applications of the CPU 300, ROM 301, RAM 302, external storage drive 303, media 304, HD 305, instruction input device 306, output device 307, I / F 308, system bus 309, and the relationship between them are shown in FIG. It is the same as or equivalent to that described for the element having the same name.

サーバ103はデータベース310を更に備えることができる。データベース310はシステムバス309に接続され、CPU300の制御下において所定のデータを保存、管理する。所定のデータには、クライアント101に提供するコンテンツデータを含むことができる。データベース310は、図1のユーザ情報データベース104及びコンテンツデータベース105を含むことができる。   The server 103 can further include a database 310. The database 310 is connected to the system bus 309 and stores and manages predetermined data under the control of the CPU 300. The predetermined data can include content data provided to the client 101. The database 310 can include the user information database 104 and the content database 105 of FIG.

以下、本実施形態に対応するクライアント・サーバ・システムにおいて実行される、ユーザの操作特性に基づくクライアント101の動作制御について説明する。クライアント101を使用しているユーザは、その時々の精神状態・心理状態によって、操作の仕方が変わることがある。例えば、苛立ったときや、ストレスを感じているときには、操作回数が増加したり、操作速度が速くなったりする。また、クライアント101がタッチパネルを有する場合には、タッチパネルに対する操作圧力が高くなることもある。ユーザがこのような状態にある場合、ユーザは自身が操作する端末が操作に迅速に応答することを要求していると推測される。   Hereinafter, operation control of the client 101 based on the operation characteristics of the user executed in the client server system corresponding to the present embodiment will be described. The user who uses the client 101 may change the way of operation depending on the mental state / psychological state at that time. For example, when annoyed or feeling stressed, the number of operations increases or the operation speed increases. When the client 101 has a touch panel, the operation pressure on the touch panel may be increased. When the user is in such a state, it is assumed that the user is requesting that the terminal operated by the user responds quickly to the operation.

そこで、本実施形態では、このようなユーザの精神状態・心理状態を示す兆候を検知して、表示処理を切替える制御を実行する。その際、精神状態や心理状態の変化の出方はユーザによって異なるため、複数のパラメータのうち、ユーザの精神状態の変化が出やすいパラメータを特定し、当該パラメータの変化に基づいてユーザの現在の状態を判定する。本実施形態では、まずユーザからの操作を継続的に監視しておき、装置がどのような動作を行なったときにユーザがどのように反応するのかを観察し、ユーザの精神状態の変化が出やすいパラメータをテーブル化し、ユーザ特性テーブルを作成する。   Therefore, in the present embodiment, such a sign indicating the mental state / psychological state of the user is detected, and control for switching display processing is executed. At that time, since the manner of change of mental state and psychological state varies depending on the user, a parameter that easily changes the mental state of the user is identified from among a plurality of parameters, and the current state of the user is determined based on the change of the parameter. Determine the state. In this embodiment, first, the operation from the user is continuously monitored, the operation of the device is observed to see how the user reacts, and a change in the mental state of the user is output. Create easy-to-use parameters as a table and create a user characteristics table.

テーブル化の対象となり得るパラメータは、クライアント101がユーザとの関連において検出可能な任意のパラメータを含む。例えば、クライアント101がスマートフォンであって、タッチパネルを有する場合に、タッチパネル上で受け付ける各種操作(タップ圧力、スワイプ速度、タップ回数、タップ位置、ピンチジェスチャ回数等)による入力は全てテーブル登録の対象となり得る。また、音声入力部211により検出されたユーザによる特定の音声入力(舌打ち、発言等)や、振動検出部212により検出されたクライアント101の振動(ユーザが装置を振るなどした場合に発生する振動等)を含むこともできる。   The parameters that can be tabulated include any parameters that the client 101 can detect in the context of the user. For example, when the client 101 is a smartphone and has a touch panel, all input by various operations (tap pressure, swipe speed, tap count, tap position, pinch gesture count, etc.) accepted on the touch panel can be subject to table registration. . In addition, specific voice input (tongue, speech, etc.) by the user detected by the voice input unit 211, vibration of the client 101 detected by the vibration detection unit 212 (vibration generated when the user shakes the device, etc.) ) Can also be included.

以下、図4のフローチャートを参照して、本実施形態に対応するクライアント101において実行される、ユーザ特性テーブルの生成処理を説明する。当該フローチャートに対応する処理は、例えば、CPU200が対応するプログラム(ROM102やHD105等に格納)を実行することにより実現できる。   Hereinafter, with reference to the flowchart of FIG. 4, a user characteristic table generation process executed in the client 101 corresponding to the present embodiment will be described. The processing corresponding to the flowchart can be realized, for example, when the CPU 200 executes a corresponding program (stored in the ROM 102, the HD 105, or the like).

まず、S401において、CPU200は、所定の動作指示(或いは、所定の操作入力)を検出したか否かを判定する。検出対象には、例えば、情報の検索、絞り込み、並べ替え、その他の情報の取得、情報のアップロード、新たなリンク先の表示、ウェブページのページ切替え、ウェブページの更新等の動作指示(或いは、当該動作の実行を指示するための操作入力)が含まれる。例えば、情報の検索であれば、検索ボタンに対する操作を検出した場合に、所定の動作指示を検出したと判定できる。新たなリンク先の表示であれば、ページ中に表示されているURLへのタップ操作を検出した場合に、所定の動作指示を検出したと判定できる。同様にしてページ切替えや更新も対応するタップ操作を検出した場合に、所定の動作指示を検出したと判定することができる。   First, in S401, the CPU 200 determines whether or not a predetermined operation instruction (or a predetermined operation input) has been detected. The detection target includes, for example, operation instructions such as information search, narrowing down, sorting, acquisition of other information, information upload, display of a new link destination, page switching of a web page, updating of a web page (or the like) Operation input for instructing execution of the operation). For example, when searching for information, it can be determined that a predetermined operation instruction has been detected when an operation on the search button is detected. If a new link destination is displayed, it can be determined that a predetermined operation instruction has been detected when a tap operation on the URL displayed in the page is detected. Similarly, when a tap operation corresponding to page switching or updating is detected, it can be determined that a predetermined operation instruction has been detected.

このようにしてCPU200が当該動作指示を検出すると、処理はS402に進み、CPU200は、指示された動作の実行を遅延させる。例えば、新たなリンク先の表示の場合には、URLに基づいてリンク先のページ情報を、外部のウェブサーバ等から取得してもよいが、ページ情報を取得できた場合であっても、クライアント101の出力装置107のディスプレイには表示しないように動作を制御する。   When the CPU 200 detects the operation instruction in this way, the process proceeds to S402, and the CPU 200 delays execution of the instructed operation. For example, in the case of displaying a new link destination, the page information of the link destination may be acquired from an external web server or the like based on the URL, but even if the page information can be acquired, the client The operation is controlled so as not to be displayed on the display of the output device 107.

動作の遅延には、例えば以下のものも含まれる。ユーザ操作に対して反応しない(例えば、スワイプに対し画面が動かない)、ウェブサイトの表示切替の速度を低下させる、ページのスクロール速度を低下させる、ページの表示を停止する、画面を急に暗くする、起動中のアプリを突然終了する、端末の動作と無関係なコメントを表示する、等である。   The operation delay includes, for example, the following. Does not respond to user operations (for example, the screen does not move in response to a swipe), decreases the display switching speed of the website, decreases the scroll speed of the page, stops the display of the page, suddenly darkens the screen Such as closing a running application suddenly, or displaying a comment unrelated to the operation of the terminal.

次に、処理はS403に進み、CPU200は、所定の動作指示を検出してからの経過時間TpがT1以上となったか否かを判定する。経過時間TpがT1に満たない場合は、処理はS404に進み、経過時間TpがT1以上となった場合は、処理はS406に進む。S404においてCPU200は、入力を検出したか否かを判定する。当該入力は、ユーザがS401において所定の動作指示を行なうための操作を行なった後、当該動作に対応する処理が実行されずにいる間に検出される、タッチパネル入力、音声入力、振動、画像を含むこともできる。これらの入力は、ユーザがフラストレーションを感じていることを表す入力であって、例えば、画面を叩く操作入力や、画面を強く押す入力、素早いスワイプ入力、舌打ちや特定の言葉の発声等の音声入力、画像解析により得られるユーザの不満を表す表情が含まれる。また、ユーザが行なうことが可能な入力の平均値を保持しておき、平均値を比較することにより、ユーザの平均的な入力とは異なるユーザ入力を検出したかどうかを判定することができる。例えば、フリック入力について、指の移動速度の平均値を保持しておき、平均値よりも早い場合には、入力を検出したと判定してもよい。   Next, the process proceeds to S403, and the CPU 200 determines whether or not an elapsed time Tp after detecting a predetermined operation instruction is equal to or greater than T1. If the elapsed time Tp is less than T1, the process proceeds to S404. If the elapsed time Tp is equal to or greater than T1, the process proceeds to S406. In S404, the CPU 200 determines whether an input is detected. The input includes touch panel input, voice input, vibration, and image detected while a process corresponding to the operation is not performed after the user performs an operation for performing a predetermined operation instruction in S401. It can also be included. These inputs indicate that the user feels frustrated. For example, input such as an operation input that strikes the screen, an input that strongly presses the screen, a quick swipe input, a tongue strike, or the utterance of a specific word. Expressions representing user dissatisfaction obtained by input and image analysis are included. In addition, it is possible to determine whether or not a user input different from the average input of the user has been detected by holding an average value of inputs that can be performed by the user and comparing the average values. For example, with respect to flick input, an average value of the moving speed of the finger may be held, and if it is faster than the average value, it may be determined that the input has been detected.

このようにして入力が検出された場合には、処理はS405に進む。一方、入力が検出されない場合、S403に戻って経過時間を監視する。S405においてCPUは、S404で検出した入力の種別を判定して、S401で検出した動作と関連づけてテーブルに仮登録し、S403に戻る。   If an input is detected in this way, the process proceeds to S405. On the other hand, if no input is detected, the process returns to S403 to monitor the elapsed time. In S405, the CPU determines the type of input detected in S404, temporarily registers it in the table in association with the operation detected in S401, and returns to S403.

S406において、CPU200はS402で遅延させていた処理を実行する。続くS407において、テーブルの登録内容を参照し、仮登録されている検出動作と検出入力の組み合わせのうち、同一の組み合わせで所定登録回数(例えば5回)以上登録されているものがあるか否かを判定する。もし、所定登録回数以上登録されている同一の組み合わせが存在する場合は、処理はS408に進む。所定登録回数以上登録されている同一の組み合わせが存在しない場合は、処理はS401に戻って、以上の処理を繰り返す。   In S406, the CPU 200 executes the process delayed in S402. In subsequent S407, with reference to the registered contents of the table, whether or not there is a combination of the temporarily registered detection operation and detection input that is registered more than a predetermined number of registrations (for example, 5 times) in the same combination. Determine. If the same combination registered more than the predetermined number of registrations exists, the process proceeds to S408. If the same combination registered more than the predetermined number of registrations does not exist, the process returns to S401 and the above process is repeated.

CPU200は、S408において所定登録回数以上登録されていると判定された同一の組み合わせについて、ユーザ特性テーブルに本登録を行なう。その後、S401に戻って以上の処理を繰り返す。その際、S408において本登録された組み合わせに関する動作については、S401における検出対象の動作から除外してもよい。例えば、新たなリンク先の表示のための動作について本登録された場合、その後の処理では、新たなリンク先の表示のための動作が検出された場合であっても、S402における処理の遅延も行なわず、リンク先のページが受信できれば直ぐに表示を行なってよい。或いは、一定期間経過後に検出対象の動作に含めるようにしてもよい。また、検索対象の動作から除外しない場合には、同一の動作について複数のユーザ入力の組み合わせが登録されても良い。   The CPU 200 performs the main registration in the user characteristic table for the same combination that is determined to have been registered a predetermined number of times or more in S408. Then, it returns to S401 and repeats the above process. At this time, the operation related to the combination registered in S408 may be excluded from the operation to be detected in S401. For example, when the main registration for the operation for displaying the new link destination is performed, in the subsequent processing, even when the operation for displaying the new link destination is detected, the processing delay in S402 is also delayed. If the link destination page can be received, the display may be performed immediately. Or you may make it include in operation | movement of a detection object after progress for a fixed period. Moreover, when not excluding from the operation | movement of search object, the combination of several user input may be registered about the same operation | movement.

以上により、ユーザのフラストレーションを表す入力と、装置の動作とを関連づけて登録することが可能となる。なお、当該本登録されたユーザ特性テーブルのデータは、クライアント101内のHD205内に保存すると共に、サーバ103内、或いは、ユーザ情報データベース104内に保存してもよい。   As described above, it is possible to register the input representing the frustration of the user and the operation of the apparatus in association with each other. The registered user characteristic table data may be stored in the HD 205 in the client 101 and may be stored in the server 103 or the user information database 104.

また、S402では、動作の実行を意図的に遅延させていたが、通常の動作において偶発的に遅延が生じた場合にも同様の処理を実行しても良い。例えば、S401において動作指示を検出した後、S402は実行せず、S406において処理が実行できる状態になれば処理を実行する。その際、動作指示の検出から処理の実行までの経過時間を測定しておき、一定の経過時間が過ぎても処理の実行ができない場合にS404で検出した入力をS405で仮登録しておく。これにより、偶発的に発生した遅延についても、ユーザのフラストレーションを表す入力と、装置の動作とを関連づけて登録することが可能となる。   In S402, the execution of the operation is intentionally delayed, but the same processing may be executed when a delay occurs accidentally in the normal operation. For example, after the operation instruction is detected in S401, S402 is not executed, and the process is executed when the process is ready in S406. At that time, the elapsed time from the detection of the operation instruction to the execution of the process is measured, and the input detected in S404 is provisionally registered in S405 when the process cannot be executed even after a certain elapsed time has passed. Thereby, it is possible to register an input representing the frustration of the user and the operation of the apparatus in association with the accidentally generated delay.

図5は、ユーザ特性テーブルの一例を示す。ユーザ特性テーブル500には、登録種別501、検出動作502、検出入力503、検出日時504を含む情報が登録される。図5では、省略しているが、ユーザ特性テーブル500は、ユーザを識別するためのユーザ識別子と関連づけておくことができる。   FIG. 5 shows an example of the user characteristic table. In the user characteristic table 500, information including a registration type 501, a detection operation 502, a detection input 503, and a detection date 504 is registered. Although omitted in FIG. 5, the user characteristic table 500 can be associated with a user identifier for identifying the user.

登録種別501には、仮登録と本登録との2種類があり、それぞれについて検出動作502、検出入力503が登録される。仮登録について、検出動作502には、図4のS401において検出された動作が登録される。また、検出入力503には、S404において検出された入力が登録され、経過時間TpがT1に達するまでに検出された入力を登録することができる。検出日時504には、S404において入力を検出した日時が登録され、これは経過時間がT1に達した日時とすることができる。検出日時504が現在の日時と比較して一定期間以上経過している場合、有効な情報ではないとして、ユーザ特性テーブル500から削除してもよい。   There are two types of registration types 501, temporary registration and main registration, and a detection operation 502 and a detection input 503 are registered for each. For temporary registration, the detection operation 502 registers the operation detected in S401 of FIG. In addition, the input detected in S404 is registered in the detection input 503, and the input detected until the elapsed time Tp reaches T1 can be registered. In the detection date and time 504, the date and time when the input is detected in S404 is registered, and this can be the date and time when the elapsed time reaches T1. When the detection date and time 504 has passed for a certain period of time compared to the current date and time, it may be deleted from the user characteristic table 500 as not being valid information.

本登録には、仮登録で登録された動作のうち、所定登録回数以上登録された検出動作と検出入力との同一の組み合わせについて、検出動作502、検出入力503、検出日時504とが登録される。例えば、図5の場合、動作Aについて検出された入力1と入力2とが本登録されている。これらは、仮登録において、例えば5回以上登録されていたために本登録されたものである。検出日時504は、本登録された日時を登録することができる。   In the main registration, the detection operation 502, the detection input 503, and the detection date and time 504 are registered for the same combination of the detection operation and the detection input registered more than the predetermined number of registrations among the operations registered in the temporary registration. . For example, in the case of FIG. 5, the input 1 and the input 2 detected for the operation A are fully registered. These are the main registrations that have been registered, for example, five times or more in the temporary registration. As the detection date and time 504, the date and time of the main registration can be registered.

ユーザ特性テーブル500に本登録された組み合わせは、仮登録の領域からは削除され、それ以降同一の動作については仮登録を行なわなくてもよい。或いは、登録日時から一定期間以上経過した場合には、同一の動作について仮登録を再開し、関連づけられる検出入力の組み合わせが異なる場合には、本登録時に既に登録されている内容を上書きするか、新たに登録してもよい。これは時間の経過と共にユーザの反応が異なってくる場合に対応するためである。   The combination registered in the user characteristic table 500 is deleted from the temporary registration area, and thereafter, the same operation need not be temporarily registered. Alternatively, if a certain period of time has elapsed since the registration date and time, temporary registration is resumed for the same operation, and if the associated detection input combination is different, the content already registered at the time of the main registration is overwritten, You may register newly. This is to cope with the case where the user's reaction varies with time.

仮登録から本登録へ移す場合、同一の検出動作について仮登録されている検出入力503が複数あり、かつ、全てが一致しない場合がある。例えば、図5で仮登録されている動作Bに着目すると、既に5つの仮登録がなされているので、本登録が可能である。仮登録内容の検出入力503のうち、入力3と入力1とは全てに共通しているが、入力2は一度しか検出されていない。したがって、このような場合には入力2は無視して、入力3と入力1のみを動作Bと関連づけて本登録することができる。なお、入力2が所定登録回数の過半数以上であった場合には、本登録の対象としてもよい、或いは、所定登録回数以上となった入力3と入力1のみを本登録した後、引き続き動作Bについて仮登録を継続し、入力2について所定登録回数以上が登録された後に、本登録の対象とすることができる。   When moving from temporary registration to main registration, there are a plurality of detection inputs 503 temporarily registered for the same detection operation, and all of them may not match. For example, paying attention to the operation B that has been temporarily registered in FIG. 5, since five temporary registrations have already been made, the main registration is possible. Of the detection inputs 503 for temporary registration contents, the input 3 and the input 1 are common to all, but the input 2 is detected only once. Therefore, in such a case, the input 2 can be ignored, and only the input 3 and the input 1 can be registered in association with the operation B. When the input 2 is more than a majority of the predetermined number of registrations, it may be the target of the main registration, or after only the input 3 and the input 1 that have exceeded the predetermined number of registrations are registered, the operation B continues. Temporary registration can be continued for the input 2, and after the predetermined number of registrations is registered for the input 2, it can be the target of the main registration.

ここで、所定登録回数をより大きい値にすることにより、ある動作に対してユーザが確実に実行する操作を統計的に絞り込むことが可能となる。これにより、例えば、ある条件下において偶々検出された入力は統計的に除外されることになるので、平均値との比較を行なわずとも、ユーザのフラストレーションを反映する入力を特定することが可能となる。また、図5では、検出入力503として複数の入力を登録しているが、検出入力が複数である必要はなく単数であってもよい。その場合、関連づけられる検出動作502について最も高い頻度で検出された入力を検出入力として登録することができる。   Here, by setting the predetermined number of registrations to a larger value, it is possible to statistically narrow down the operations that the user surely executes for a certain operation. As a result, for example, the input detected by chance under certain conditions is statistically excluded, so it is possible to specify the input that reflects the user's frustration without comparing with the average value. It becomes. In FIG. 5, a plurality of inputs are registered as the detection inputs 503. However, there is no need for a plurality of detection inputs, and a single input may be used. In that case, an input detected with the highest frequency for the associated detection operation 502 can be registered as a detection input.

また、テーブルに登録する入力は、一定時間T1内に検出された入力であるが、検出された複数の同種(又は異種)の入力をまとめて扱うことによりジェスチャ入力として登録してもよい。例えば、一定の間隔を置いてタップを行ない、画面を叩くユーザがいる一方で、一定方向のスワイプを繰り返すユーザもいる。この場合、単体のタップやスワイプ自体を入力として登録することもできるが、一定時間内に入力された複数のタップをまとめて連続タップジェスチャとして、また、繰り返し行なわれたスワイプをまとめて連続スワイプジェスチャとして登録してもよく、この場合はユーザが実行するジェスチャによりユーザの状態を判定することが可能となる。例えば、単にスワイプを単発で行なっている場合は、フラストレーションを感じていないと判定できる一方、連続してタップを繰り返している場合はユーザがフラストレーションを感じている状態にあると判定することができる。   The input to be registered in the table is an input detected within a predetermined time T1, but it may be registered as a gesture input by collectively handling a plurality of detected same type (or different types) inputs. For example, while there are users who tap at a certain interval and tap the screen, there are users who repeat swipes in a certain direction. In this case, a single tap or swipe itself can be registered as an input, but multiple taps input within a certain period of time can be combined as a continuous tap gesture, and repeated swipes can be registered as a continuous swipe gesture. In this case, the state of the user can be determined by a gesture executed by the user. For example, if you are simply swiping in a single shot, you can determine that you are not feeling frustrated, but if you are repeatedly tapping continuously, you can determine that the user is feeling frustrated. it can.

次に、図6を参照して、クライアント101で行なわれる、本実施形態に対応する処理の流れを説明する。図6は、クライアント101で実行される処理のフローチャートの一例を示す。当該フローチャートに対応する処理は、例えば、クライアント101のCPU200が対応するプログラムを実行し、各機能ブロックの動作を制御することにより実現できる。   Next, a flow of processing corresponding to the present embodiment performed by the client 101 will be described with reference to FIG. FIG. 6 shows an example of a flowchart of processing executed by the client 101. The processing corresponding to the flowchart can be realized by, for example, executing a program corresponding to the CPU 200 of the client 101 and controlling the operation of each functional block.

まず、S601では、クライアント101においてユーザからの操作を受付ける。ここで受付ける操作には、例えば、情報検索、絞り込み、並べ替え、その他の情報の取得、情報のアップロード、ページの表示、更新、リンク先の情報の提示、ズームイン、ズームアウトなどを要求するための操作が含まれる。CPU200はユーザからの操作を受付けると、S602において受付けた操作に対応する処理を開始する。クライアント101がサーバ103から情報の取得を要求する操作を受付けた場合には、当該情報の取得のためのWeb API(以下、単にAPIと略す。)を利用して、情報の取得要求を送信する。例えば、情報検索の場合には、サーバ103に対し検索の実行を要求するためのAPIを利用し、検索要求を送信する。このとき、使用可能なAPIが複数ある場合、クライアント101においてデフォルトとして指定されているAPIを利用する。また、クライアント101側で実行可能な処理については、CPU200が当該処理を開始する。例えば、表示されているページのズームインの動作を受付けた場合には、ユーザから受付けた操作量に応じたズームイン動作を実行することができる。   First, in step S601, the client 101 receives an operation from the user. The operations accepted here include, for example, information search, narrowing down, sorting, obtaining other information, uploading information, displaying pages, updating, presenting linked information, zooming in, zooming out, etc. Operations are included. When receiving an operation from the user, the CPU 200 starts a process corresponding to the operation received in S602. When the client 101 receives an operation for requesting acquisition of information from the server 103, the information acquisition request is transmitted using a Web API for acquiring the information (hereinafter simply referred to as API). . For example, in the case of information search, an API for requesting the server 103 to execute search is used to transmit a search request. At this time, if there are a plurality of usable APIs, the API designated as a default in the client 101 is used. For processing that can be executed on the client 101 side, the CPU 200 starts the processing. For example, when a zoom-in operation for the displayed page is accepted, a zoom-in operation corresponding to the operation amount received from the user can be executed.

クライアント101がAPIを利用してサーバ103に所定の処理の実行を要求した場合、サーバ103側では、クライアント101から要求を受信すると、要求に対応する処理を実行し、処理が完了すると処理結果をクライアント101に要求に対する応答として送信する。   When the client 101 uses the API to request the server 103 to execute a predetermined process, when the server 103 receives the request from the client 101, the server 101 executes the process corresponding to the request. It is transmitted to the client 101 as a response to the request.

S602における処理の実行中において、クライアント101のユーザは処理の完了を待つ待機状態に置かれるが、処理が完了せず、ユーザ操作に対する応答ができない場合に待機中のユーザはフラストレーションを感じることになる。そこで、続くS603においてCPU200は、ユーザがフラストレーションを感じているかどうかを判定する。当該判定は、S601で受付けた操作(所定の処理)と関連づけて、ユーザ特性テーブル500に本登録された検出入力503に該当する入力が検出されたか否かに基づき行なうことができる。このとき、検出された入力のうち、各入力について与えられる平均値からのずれが認められる入力のみについて、本登録された検出入力503に該当する入力かどうかを判定してもよい。また、所定の処理と関連づけて複数の入力がユーザ特性テーブル500登録されている場合、所定の処理との関連で、いずれか1つ以上の入力を検出した場合にフラストレーションを感じていると判定しても良い。或いは、複数の入力が登録されている場合、所定の時間内に複数の入力の少なくとも2つ以上、または、全てが検出された場合にフラストレーションを感じていると判定しても良い。   While the processing in S602 is being executed, the user of the client 101 is placed in a waiting state waiting for the completion of the processing, but the waiting user feels frustration when the processing is not completed and a response to the user operation cannot be made. Become. Therefore, in subsequent S603, the CPU 200 determines whether the user feels frustrated. This determination can be made based on whether or not an input corresponding to the detection input 503 registered in the user characteristic table 500 is detected in association with the operation (predetermined process) received in S601. At this time, among the detected inputs, only the input in which the deviation from the average value given for each input is recognized may be determined as the input corresponding to the registered input 503. Further, when a plurality of inputs are registered in association with a predetermined process in the user characteristic table 500, it is determined that frustration is felt when any one or more inputs are detected in relation to the predetermined process. You may do it. Alternatively, when a plurality of inputs are registered, it may be determined that frustration is felt when at least two or all of the plurality of inputs are detected within a predetermined time.

クライアント101のCPU200が、ユーザのフラストレーションを検出した場合、処理はS604に移行して、クライアント101では、当該フラストレーションを解消するための処理を行なう。例えば、待機時間が長いためにユーザがフラストレーションを感じている場合には処理の高速化を行なう。当該フラストレーション解消処理の詳細は、図7を参照して後述する。続くS605において、処理が完了すると、処理結果を出力する。例えば、S601における操作が、情報検索を要求する操作であった場合に、サーバ103から受信した検索結果をディスプレイに表示する。このとき、ユーザのフラストレーションを解消するように出力処理を実行することができる。詳細は、図8を参照して後述する。   When the CPU 200 of the client 101 detects the frustration of the user, the process proceeds to S604, and the client 101 performs a process for eliminating the frustration. For example, if the user feels frustrated because of a long waiting time, the processing speed is increased. Details of the frustration elimination process will be described later with reference to FIG. In the subsequent S605, when the processing is completed, the processing result is output. For example, when the operation in S601 is an operation for requesting an information search, the search result received from the server 103 is displayed on the display. At this time, the output process can be executed so as to eliminate the frustration of the user. Details will be described later with reference to FIG.

次に、図7を参照して、S604におけるクライアント101におけるフラストレーション解消処理について、より詳細に説明する。ここではAPIを利用する場合に、サーバ103との連携において実行可能な処理を含む。   Next, the frustration elimination processing in the client 101 in S604 will be described in more detail with reference to FIG. Here, when using the API, processing that can be executed in cooperation with the server 103 is included.

まず、S701において、CPU200は、S601で受付けた操作に対応する処理を実行するためのAPIについて、選択済みのデフォルトのAPIよりもサーバ103側でより高速にレスポンスが可能なAPIがあるか否かを判定する。高速にレスポンスが可能なAPIとは、例えば、サーバ側の処理速度を上げることによって高速にサーバ103がレスポンスが可能となるAPIであってもよい。また、例えば、クライアント101から検索を要求する場合に、検索結果に含める情報をより少なくして(例えば、画像を省略する、検索対象に関する説明情報を省略する等)、サーバ103が高速にレスポンスすることを可能とするAPIであってもよい。このような、より高速なレスポンスが可能なAPIがある場合には、S702において当該高速のAPIを利用して要求をサーバ103に対して再度送信する。この時、当該要求が、ユーザ特性テーブル500における、どの動作に基づくものかを示す情報を含めてもよい。より高速なレスポンスが可能なAPIがない場合には、S703に進む。   First, in S701, the CPU 200 determines whether there is an API that can respond faster on the server 103 side than the selected default API for the API for executing the process corresponding to the operation accepted in S601. Determine. The API that can respond at high speed may be, for example, an API that enables the server 103 to respond at high speed by increasing the processing speed on the server side. Further, for example, when a search is requested from the client 101, the server 103 responds at high speed by reducing the information included in the search result (for example, omitting the image, omitting the description information regarding the search target). It may be an API that makes it possible. If there is such an API that can respond at a higher speed, the request is transmitted again to the server 103 using the high-speed API in S702. At this time, information indicating which operation the user characteristic table 500 is based on may be included. If there is no API capable of a faster response, the process proceeds to S703.

S703では、CPU200は、S601で受付けた操作に対応するAPIがあるか否かを判定する。対応APIがある場合にはS704に進み、対応APIが無い場合にはS705に進む。例えば、ある動作をクライアント101側のアプリケーションの機能を用いて実行することができるが、当該ローカルの機能の実行によりユーザがフラストレーションを感ずる場合に、サーバ103側の処理に切り替えることができる。このとき、受付けたユーザ操作に対応するAPIが用意されている場合には、S704で当該APIを利用してサーバ103に処理の実行要求を送信してもよい。これにより、ユーザがフラストレーションを感じていたクライアント101側での処理そのものを、サーバ103側の処理により置き換えることで、フラストレーションを解消することが可能となる。   In step S703, the CPU 200 determines whether there is an API corresponding to the operation accepted in step S601. If there is a corresponding API, the process proceeds to S704, and if there is no corresponding API, the process proceeds to S705. For example, a certain operation can be executed using the function of the application on the client 101 side, but when the user feels frustration by executing the local function, the process can be switched to the processing on the server 103 side. At this time, if an API corresponding to the received user operation is prepared, a processing execution request may be transmitted to the server 103 using the API in S704. Thus, the frustration can be resolved by replacing the processing on the client 101 side, which the user felt frustrated with, the processing on the server 103 side.

また、ユーザが表示形態そのものや、それを変更する過程においてフラストレーションを感じている(例えば、画像表示後の拡大、縮小動作が上手くできないためにフラストレーションを感じている場合等)と推測できる場合には、CSS(Cascading Style Sheets)を切替えることにより、表示画面のレイアウトを変更し、フラストレーションを解消できる可能性がある。そこで、S705では、CSSの変更が可能な状況であるか否かを判定し、変更が可能である場合には、S706においてユーザのフラストレーションを解消する方向にCSSを変更する。例えば、表示が小さいためにユーザがズームイン操作を繰り返している場合や、逆に表示が大きいためにユーザがスクロールを頻繁に繰り返している場合は、ユーザがフラストレーションを感じていると推測できる。このような場合には、CSSの変更が可能な状況と判定し、ページの表示が拡大されるようなレイアウトのCSSに変更する。一方、検索結果の受信に時間がかかっているような場合には、CSSの変更はフラストレーションを解消することに直接関係がないので、CSSの変更が可能な状況には該当しない。   In addition, when the user feels frustration in the display form itself or in the process of changing the display form (for example, when the user feels frustration because the enlargement / reduction operation after image display cannot be performed well) In some cases, switching the CSS (Cascading Style Sheets) can change the layout of the display screen and eliminate frustration. Therefore, in S705, it is determined whether or not it is possible to change the CSS. If the change is possible, the CSS is changed in a direction to eliminate the user's frustration in S706. For example, when the user repeats zoom-in operations because the display is small, or when the user frequently scrolls because the display is large, it can be assumed that the user feels frustrated. In such a case, it is determined that the CSS can be changed, and the CSS is changed to a CSS layout in which the page display is enlarged. On the other hand, if it takes a long time to receive the search result, the CSS change is not directly related to eliminating the frustration.

以上の図7の処理によりサーバ103が新たなAPIに基づく要求を受信すると、サーバ103は対応する処理を実行する。サーバ103側での処理が完了すると、サーバ103から処理結果が要求に対する応答として送信される。   When the server 103 receives a request based on a new API by the process of FIG. 7, the server 103 executes a corresponding process. When the processing on the server 103 side is completed, the processing result is transmitted from the server 103 as a response to the request.

次に、図8を参照して、S605におけるクライアント101における処理結果の出力について、より詳細に説明する。まず、S801において、サーバ103からの送信結果に画像が含まれているか否かを判定する。APIに対する応答結果は、例えば、JSONやXML形式で提供され、クライアント101が受信した応答結果に基づきディスプレイに表示する情報を生成する。例えば、応答結果に表示用画像を取得するためのリンク(URL)が含まれている場合、画像のサイズが大きければ、画像の画質(解像度)が高く、データサイズが大きいためにクライアント101における表示が遅延し、ユーザのフラストレーションを解消できない可能性がある。そこで、画像用のリンクが含まれている場合にはS802に進み、画像用のリンクが含まれない場合にはS803に進む。S802において画像用リンクに含まれる画像のサイズを小さい値に変更し、S803に進む。例えば、128×128の画像サイズを取得するURLが応答結果に記述されていた場合には、これを64×64に変更してもよい。   Next, the output of the processing result in the client 101 in S605 will be described in more detail with reference to FIG. First, in step S <b> 801, it is determined whether an image is included in the transmission result from the server 103. The response result to the API is provided in, for example, JSON or XML format, and generates information to be displayed on the display based on the response result received by the client 101. For example, when a link (URL) for acquiring a display image is included in the response result, if the image size is large, the image quality (resolution) is high, and the data size is large. May be delayed and may not resolve user frustration. Therefore, if an image link is included, the process proceeds to S802, and if an image link is not included, the process proceeds to S803. In S802, the size of the image included in the image link is changed to a small value, and the process proceeds to S803. For example, when a URL for obtaining an image size of 128 × 128 is described in the response result, it may be changed to 64 × 64.

次に、S803において、表示項目の数が所定数以上であるか否かを判定する。もし、項目が多くある場合、全ての項目について表示情報を取得・生成するまでに時間を要し、クライアント101における表示が完了しないため、遅延が発生し、ユーザのフラストレーションを解消できない可能性がある。例えば、検索結果に含まれる項目及び画像の数が所定数以上の場合には、各項目及び画像を受信するまで表示が完了しない。また、表示使用とするページが複数のAPIから取得したデータをマッシュアップしたページであった場合、ページの表示完了は最も反応が遅かったAPIに依存することになる。このような場合には、応答の遅いAPIに対応する項目は削除して、応答の早かったAPIからの応答結果に対応する項目のみを表示してもよい。   Next, in S803, it is determined whether or not the number of display items is a predetermined number or more. If there are many items, it takes time to acquire and generate display information for all items, and the display on the client 101 is not completed. Therefore, there is a possibility that a delay occurs and the user's frustration cannot be solved. is there. For example, when the number of items and images included in the search result is a predetermined number or more, the display is not completed until each item and image are received. Further, when the page to be used for display is a page obtained by mashing up data acquired from a plurality of APIs, the display completion of the page depends on the API with the slowest response. In such a case, the item corresponding to the API with a slow response may be deleted, and only the item corresponding to the response result from the API with a quick response may be displayed.

なお上記では、ユーザに問い合わせを行なうことなく、クライアント101側で、フラストレーションを解消するために処理の高速化や、情報量の削減を行なった。しかし、ユーザによっては、フラストレーションを感じつつも、速度よりも情報量や品質を優先したい場合もあると考えられる。そこで、S603においてユーザのフラストレーションを検出した場合に、ユーザにS604の処理を実行するか否かの問い合わせを行なってもよい。そして、問い合せに対し、ユーザがS604の処理の実行を希望する場合には、S604以降の処理を実行し、ユーザが当該処理の実行を希望しない場合にはS604以降の処理を行なわず、S602において開始した処理をそのまま継続することができる。   In the above description, the processing speed and the amount of information are reduced on the client 101 side to eliminate frustration without making an inquiry to the user. However, some users may feel frustrated and want to prioritize information volume and quality over speed. Therefore, when the user's frustration is detected in S603, the user may be inquired whether to execute the process of S604. In response to the inquiry, if the user wants to execute the process of S604, the process after S604 is executed. If the user does not want to execute the process, the process after S604 is not executed. The started processing can be continued as it is.

以上のように本実施形態では、クライアント101の特定の動作との関連で発生した入力を監視するので、動作との関連で発生した所定のユーザ入力に基づきユーザがフラストレーションを感じているかどうかを判定し、クライアント101における表示を効率よく制御することができる。   As described above, in this embodiment, since an input generated in relation to a specific operation of the client 101 is monitored, whether or not the user feels frustration based on a predetermined user input generated in connection with the operation is determined. The display on the client 101 can be efficiently controlled.

例えば、表示が切り替るタイミングにおける遅延に対するタップ入力は、端末に対する指示操作ではなくユーザが表示の高速化を催促する合図とみなすことができる。従って、そのような動作とタップ入力とを関連づけておくことで、表示切り替わりのタイミングでタップが発生した際には、表示速度を変更することができる。このように、端末動作とパラメータとを関連づけて記憶しておくことで、装置の動作とは無関係な操作の変化による誤動作を防止することができる。   For example, a tap input for a delay at the timing at which the display is switched can be regarded as a cue for the user to speed up the display rather than an instruction operation on the terminal. Therefore, by associating such an operation with tap input, the display speed can be changed when a tap occurs at the timing of display switching. As described above, by storing the terminal operation and the parameter in association with each other, it is possible to prevent malfunction due to an operation change unrelated to the operation of the apparatus.

また、例えば、舌打ちが癖となっているユーザがいた場合、それは表示コンテンツの内容に対するものであるのか、装置の動作に対するものであるのかが分からない。その場合、舌打ちが発生する度に表示速度を切替えていては、ユーザの意図に反するおそれがある。また、そのたびにAPIを変更してサーバ103に要求を再送していては、サーバ103側の負荷が大きくなってしまう。そこで、舌打ちと他の条件(装置の動作か、他の操作パラメータ)とを組み合わせることで、装置に対するフラストレーションを的確に判定して処理を実行することができる。   Also, for example, if there is a user whose tongue is a habit, it is not known whether it is for the contents of the display content or for the operation of the device. In that case, if the display speed is switched every time a tongue hit occurs, there is a possibility that it is contrary to the user's intention. Further, if the API is changed each time and the request is retransmitted to the server 103, the load on the server 103 side increases. Therefore, by combining the tongue setting and other conditions (operation of the apparatus or other operation parameters), it is possible to accurately determine frustration for the apparatus and execute the processing.

さらに、本実施形態では、タップや、スワイプ等の入力につき、個々の入力ではなく、一定時間内に検出された入力を集合として扱うことにより、ジェスチャを特定することが可能となる。これにより、フラストレーションを感じた際に、特定の入力の組み合わせたジェスチャ入力(例えば、特定のリズムでタップを繰り返したり、数回のタップの後にスワイプを繰り返す等)を行なうユーザについて、当該ジェスチャが発生したか否かによりユーザの状態を判定することが可能となる。   Furthermore, according to the present embodiment, it is possible to specify a gesture by handling not only individual inputs but also inputs detected within a certain period of time for input such as taps and swipes. As a result, when the user feels frustration, for the user who performs a gesture input that is a combination of specific inputs (for example, repeating a tap with a specific rhythm or repeating a swipe after several taps) It becomes possible to determine the state of the user depending on whether or not it has occurred.

さらに、本実施形態では、ユーザの精神状態を複数の入力の組み合わせや、動作と入力との関連性に基づき判定するため、迅速な表示が必要とされる場合を的確に捉えて表示制御を切替えることができる。よって、単なる入力検出や入力の変化の検出に応じて頻繁に高速APIが使用され、結果としてサーバの負荷が高くなってしまうような事態を回避することができるので、システム全体としての処理効率を向上させることができる。   Furthermore, in the present embodiment, since the mental state of the user is determined based on a combination of a plurality of inputs and the relevance between the operation and the input, the display control is switched by accurately capturing a case where a quick display is necessary. be able to. Therefore, a high-speed API is frequently used according to simple input detection or input change detection, and as a result, it is possible to avoid a situation in which the load on the server becomes high. Can be improved.

[実施形態2]
上述の実施形態1では、クライアント101における所定の動作との関連において行なわれるユーザ入力を検出し、ユーザ特性として利用した。これに対し本実施形態では、所定の動作との関連づけを行なうことなく、複数の入力の組み合わせ(ユーザ入力セット)により、ユーザのフラストレーション状態を判定することを可能とする。
[Embodiment 2]
In the first embodiment described above, user input performed in relation to a predetermined operation in the client 101 is detected and used as user characteristics. On the other hand, in the present embodiment, the user's frustration state can be determined by a combination of a plurality of inputs (user input set) without associating with a predetermined operation.

本実施形態では、ユーザ入力を監視して、同時期に検出された入力の変化を関連づけ、それ以外と区別することができる。例えば、表示切替に時間がかかったためにユーザがフラストレーションを感じ、スワイプ操作と、タップ操作とが行なわれた場合、それらのパラメータの組み合わせについて変化を監視する。もし、パラメータがセットで変化した場合、ユーザの精神状態に変化があったとみなして、表示速度を変更する。これにより、たまたまスワイプ速度が速かった、というだけで常に表示解像度が低下してしまうような事態を回避できる。また、特定の装置動作との関連で記憶しておく場合は、動作毎に関連づける必要があるが、パラメータのセットを記憶しておけば、一部の動作との関連で発生する操作の変化に限定されず、広く対応が可能となる。   In this embodiment, it is possible to monitor user input, associate changes in input detected at the same time, and distinguish them from the others. For example, when the user feels frustration because it takes time to switch the display, and a swipe operation and a tap operation are performed, a change is monitored for a combination of these parameters. If the parameter changes as a set, the display speed is changed assuming that the mental state of the user has changed. As a result, it is possible to avoid a situation in which the display resolution is always lowered simply because the swipe speed is accidentally high. In addition, if it is stored in relation to a specific device operation, it is necessary to associate it with each operation. However, if a set of parameters is stored, a change in operation that occurs in connection with a part of the operation will occur. It is not limited, and a wide range of correspondence is possible.

以下、図9のフローチャートを参照して、本実施形態に対応するクライアント101において実行される、ユーザ特性テーブルの生成処理を説明する。当該フローチャートに対応する処理は、例えば、CPU200が対応するプログラム(ROM102やHD105等に格納)を実行することにより実現できる。   Hereinafter, with reference to the flowchart of FIG. 9, a user characteristic table generation process executed in the client 101 corresponding to the present embodiment will be described. The processing corresponding to the flowchart can be realized, for example, when the CPU 200 executes a corresponding program (stored in the ROM 102, the HD 105, or the like).

まず、S901において、CPU200は、ユーザ入力を検出したか否かを判定する。ユーザ入力は、指示入力装置208、音声入力部211、振動検出部212、撮像部210で取得可能な任意の入力を含むことができる。ユーザ入力が検出されると、処理はS802に進み、CPU200は、検出したユーザ入力が、当該ユーザ入力の平均値からずれた入力であるかを判定する。例えば、クライアント101は、タップ入力について、単位時間当たりの操作回数、タップ時の押圧力等について平均値を保持しておくことができる。そして、S901でユーザ入力としてタップ入力が検出された場合であれば、検出されたタップの回数や押圧力の当該平均値からのずれが所定よりも大きいか否かを判定し、ずれが所定よりも大きい場合には、平均からのずれがあると判定できる。平均からのずれがあると判定されると、処理はS903に進み、CPU200は、検出したユーザ入力をユーザ特性テーブルに仮登録する。本実施形態におけるユーザ特性テーブルは、図5に示したユーザ特性テーブル500を転用することができる。但し、本実施形態では検出動作502の項目はブランクとし、検出入力503と検出日時504を登録すればよい。   First, in S901, the CPU 200 determines whether a user input is detected. The user input can include any input that can be acquired by the instruction input device 208, the voice input unit 211, the vibration detection unit 212, and the imaging unit 210. If a user input is detected, the process proceeds to S802, and the CPU 200 determines whether the detected user input is an input deviating from the average value of the user input. For example, the client 101 can hold an average value for the number of operations per unit time, the pressing force at the time of tapping, and the like for tap input. If a tap input is detected as a user input in S901, it is determined whether or not a deviation from the average value of the number of detected taps or the pressing force is larger than a predetermined value. Can be determined that there is a deviation from the average. If it is determined that there is a deviation from the average, the process proceeds to S903, and the CPU 200 provisionally registers the detected user input in the user characteristic table. As the user characteristic table in the present embodiment, the user characteristic table 500 shown in FIG. 5 can be diverted. However, in this embodiment, the item of the detection operation 502 is blank, and the detection input 503 and the detection date 504 may be registered.

次に、処理はS904に進み、CPU200は、平均からのずれがあると判定されたユーザ入力を検出してからの経過時間Tp'がT2以上となったか否かを判定する。ここで、T2の値は、検出されたユーザ入力の内容に応じて変更してもよい。経過時間Tp'がT2に満たない場合は、処理はS901に戻り、処理を繰り返す。この時、経過時間Tp'の計測を開始した後、経過時間T2以内に検出され、平均からずれていると判定された入力は、S903において互いに関連づけて仮登録される。経過時間Tp'がT2以上となった場合は、処理はS905に進む。S905において、テーブルの登録内容を参照し、仮登録されている、互いに関連づけられた検出入力の組み合わせのうち、同一の組み合わせで所定登録回数(例えば5回)以上登録されているものがあるか否かを判定する。もし、所定登録回数以上登録されている同一の組み合わせが存在する場合は、処理はS906に進む。所定登録回数以上登録されている同一の組み合わせが存在しない場合は、処理はS901に戻って、以上の処理を繰り返す。   Next, the process proceeds to S904, and the CPU 200 determines whether or not the elapsed time Tp ′ after detecting the user input determined to have a deviation from the average is equal to or greater than T2. Here, the value of T2 may be changed according to the content of the detected user input. If the elapsed time Tp ′ is less than T2, the process returns to S901 and the process is repeated. At this time, after the measurement of the elapsed time Tp ′ is started, the inputs detected within the elapsed time T2 and determined to deviate from the average are provisionally registered in association with each other in S903. If the elapsed time Tp ′ is equal to or greater than T2, the process proceeds to S905. In S905, referring to the registered contents of the table, among the combinations of detection inputs that are provisionally registered and associated with each other, whether or not there is a combination that is registered more than a predetermined number of registrations (for example, 5 times) with the same combination. Determine whether. If the same combination registered more than the predetermined number of registrations exists, the process proceeds to S906. If the same combination registered more than the predetermined number of registrations does not exist, the process returns to S901 and the above process is repeated.

S906において、CPU200は所定登録回数以上登録されていると判定された同一の組み合わせについて、ユーザ特性テーブル500に本登録を行なう。その後、S901に戻って以上の処理を繰り返す。その際、S906において本登録された組み合わせに関する動作については、S901における検出対象の動作から除外してもよい。例えば、ピンチ入力と、舌打ちの音声入力が本登録された場合、同一の組み合わせについては、仮登録しなくてもよい。或いは、本登録から一定期間経過後に仮登録の対象としてもよい。ここで、本実施形態でも実施形態1と同様に、単体の入力(タップやスワイプ等)を入力として登録することもできるが、一定時間内に入力された複数の入力をまとめてジェスチャ入力として登録してもよい。   In S <b> 906, the CPU 200 performs main registration in the user characteristic table 500 for the same combination that is determined to have been registered a predetermined number of times or more. Then, it returns to S901 and repeats the above process. At this time, the operation related to the combination registered in S906 may be excluded from the operation to be detected in S901. For example, when the pinch input and the tongue input voice are registered as main, the same combination may not be temporarily registered. Alternatively, provisional registration may be performed after a certain period of time has elapsed since the main registration. In this embodiment, as in the first embodiment, a single input (tap, swipe, etc.) can be registered as an input. However, a plurality of inputs input within a predetermined time are collectively registered as a gesture input. May be.

以上により、ユーザのフラストレーションを表すユーザ入力セットをユーザ特性テーブル500に登録することが可能となる。本実施形態においても、図6から図8に対応する処理を実行することで、ユーザ特性テーブル500に登録されたユーザ特性に基づき、ユーザのフラストレーションを検出して、これを効果的に解消することができる。但し、本実施形態では、フラストレーション状態か否かの判定は、S601で受付けた操作と関連づけて実行する必要はなく、処理が開始された後のユーザ入力に基づいて行なうことができる。フラストレーションが検出されれば、そのときに実行している処理についてS604やS605の処理を実行すればよい。   As described above, the user input set representing the frustration of the user can be registered in the user characteristic table 500. Also in the present embodiment, by executing the processing corresponding to FIGS. 6 to 8, the user's frustration is detected based on the user characteristics registered in the user characteristics table 500, and this is effectively eliminated. be able to. However, in the present embodiment, it is not necessary to determine whether or not the frustration state is associated with the operation received in S601, and can be performed based on user input after the process is started. If frustration is detected, the processing of S604 and S605 may be executed for the processing being executed at that time.

[実施形態3]
実施形態1及び実施形態2では、検出したユーザ入力を、当該ユーザ入力の平均値と比較して用いる場合について記載した。そして、これらの実施形態では、ユーザ入力の種類に応じた平均値を使うものの、ユーザがクライアント101を使用している際の使用状況や、使用時間帯に関わらず、一律の平均値を使っていた。しかし、同一のユーザであっても、使用する時間帯によって、或いは、周囲の環境によって、ユーザ入力の態様が異なる可能性があるため、本実施形態では、使用時間帯やクライアント101の周辺環境等の外部情報を考慮して判定を行なう場合について記載する。
[Embodiment 3]
In the first embodiment and the second embodiment, the case where the detected user input is used in comparison with the average value of the user input is described. In these embodiments, although an average value corresponding to the type of user input is used, a uniform average value is used regardless of the usage status and usage period when the user is using the client 101. It was. However, even for the same user, the mode of user input may differ depending on the time zone used or the surrounding environment. In this embodiment, the usage time zone, the surrounding environment of the client 101, etc. The case where the determination is made in consideration of the external information is described.

図10は、ユーザ入力と、周辺環境や使用時間帯といった条件との関連づけにおいて、各ユーザ入力の平均値を管理する平均値テーブル1000の一例を示す。平均値テーブル1000には、検出対象のユーザ入力1001が登録されており、各ユーザ入力に対し条件1002として、複数の条件が登録されている。条件1002には、例えば、ユーザがクライアント101を使用する時間帯に関する条件(例えば、出金時間帯の、朝7時から9時、帰宅時間帯の夕方6時以降等)、或いは、クライアント101の周辺環境に関する条件(電車に乗っている、或いは、周辺が騒がしい環境にいる等)を登録することができる。   FIG. 10 shows an example of an average value table 1000 that manages the average value of each user input in associating the user input with conditions such as the surrounding environment and use time zone. In the average value table 1000, user inputs 1001 to be detected are registered, and a plurality of conditions are registered as conditions 1002 for each user input. The condition 1002 includes, for example, a condition regarding a time period in which the user uses the client 101 (for example, from 7 am to 9 am in the withdrawal time period, after 6 pm in the returning time period), Conditions related to the surrounding environment (such as riding on a train or being in a noisy environment) can be registered.

ユーザによるクライアント101の使用がいずれかの条件に一致するか否かは、例えば、CPU200、撮像部210、音声入力部211、振動検出部212からの出力がいずれかの条件を満たしているかにより判定することができる。例えば、CPU200は、クライアント101内部の時計に基づき、時刻を判定して条件に一致するかを判定することができる。また、音声入力部211により検出される音声や振動検出部212により検出される振動パターンにより、ユーザが電車に乗っているかどうかを判定することができる。また、音声入力部211により検出される音声のレベルにより、クライアント101の周辺環境の騒音の度合いを判定することができる。   Whether or not the use of the client 101 by the user matches any of the conditions is determined by, for example, whether the output from the CPU 200, the imaging unit 210, the audio input unit 211, or the vibration detection unit 212 satisfies any of the conditions. can do. For example, the CPU 200 can determine the time based on the clock inside the client 101 and determine whether the condition is met. Further, whether or not the user is on the train can be determined based on the voice detected by the voice input unit 211 and the vibration pattern detected by the vibration detection unit 212. Further, the level of noise in the surrounding environment of the client 101 can be determined based on the sound level detected by the sound input unit 211.

このようにして、条件1002のいずれかの条件に合致すると判定された場合には、S603の判定において用いる検出されたユーザ入力と比較される平均値に、当該条件と関連づけて平均値テーブル1000に登録されている値を用いる。   In this way, when it is determined that any one of the conditions 1002 is met, the average value compared with the detected user input used in the determination of S603 is associated with the condition in the average value table 1000. Use registered values.

これにより、ユーザがフラストレーションを感じているかどうかについて、ユーザの使用環境に応じた判定が可能となる。例えば、通勤時に使用している場合には、それ以外の時よりも操作圧力が強くなってしまうユーザについては、通勤時間帯であると判定されるか、或いは、電車に乗っていると判定された場合に、平均値を高くして判定の精度を損なわないようにすることができる。このように平均値を適切に設定することにより、クライアント101からサーバ103への不必要なAPIリクエストを制限することが可能となるので、サーバ103側の処理負担を軽減することも可能となる。   This makes it possible to determine whether or not the user feels frustrated according to the user's usage environment. For example, when using during commuting, a user whose operating pressure is stronger than at other times is determined to be in the commuting time zone or determined to be on the train. In this case, it is possible to increase the average value so as not to impair the accuracy of determination. By appropriately setting the average value in this way, it is possible to limit unnecessary API requests from the client 101 to the server 103, so that it is possible to reduce the processing load on the server 103 side.

[その他の実施形態]
本発明は上記実施の形態に制限されるものではなく、本発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、本発明の範囲を公にするために、以下の請求項を添付する。また本発明に係る情報処理装置は、1以上のコンピュータを該情報処理装置として機能させるコンピュータプログラムによっても実現可能である。該コンピュータプログラムは、コンピュータが読み取り可能な記録媒体に記録されることにより、あるいは電気通信回線を通じて、提供/配布することができる。
[Other Embodiments]
The present invention is not limited to the above-described embodiment, and various changes and modifications can be made without departing from the spirit and scope of the present invention. Therefore, in order to make the scope of the present invention public, the following claims are attached. The information processing apparatus according to the present invention can also be realized by a computer program that causes one or more computers to function as the information processing apparatus. The computer program can be provided / distributed by being recorded on a computer-readable recording medium or through a telecommunication line.

Claims (15)

端末装置であって、
ユーザ入力を検出する検出手段と、
前記端末装置における所定の動作開始したの所定期間内に前記検出手段により検出され同種または異種の複数の前記ユーザ入力を、仮登録として前記所定の動作と関連づけて記憶部に記憶させ、前記仮登録された前記ユーザ入力のうち、所定回数以上前記仮登録されたものを、本登録として前記記憶部に記憶させる記憶制御手段と、
前記端末装置の前記所定の動作の間に、前記所定の動作と関連づけて前記本登録として前記記憶部に記憶されたいずれかのユーザ入力が発生したか否かを判定する判定手段と、
前記判定手段が前記いずれかのユーザ入力が発生したと判定したかに応じて、前記所定の動作のために前記端末装置が実行する処理を制御する制御手段と
を備えることを特徴とする端末装置。
A terminal device,
Detecting means for detecting user input;
Wherein a plurality of said user input is detected same or different by the detecting means within a predetermined period after the start of the predetermined operation in the terminal apparatus, the predetermined operation with associated and stored in the storage unit as the provisional registration, the temporary registered among the user input, those which are a predetermined number of times or more the temporary registration, a storage control unit that Ru is stored in the storage unit as a registration,
A determination unit that determines whether any user input stored in the storage unit as the main registration has occurred in association with the predetermined operation during the predetermined operation of the terminal device;
Control means for controlling processing executed by the terminal device for the predetermined operation according to whether the determination means determines that any one of the user inputs has occurred ;
A terminal device comprising:
前記記憶制御手段は、前記所定期間内に検出された前記複数の前記ユーザ入力の組み合わせに基づくジェスチャ入力を、仮登録として前記所定の動作と関連づけて前記記憶部に記憶させ、前記仮登録された前記ジェスチャ入力のうち、所定回数以上前記仮登録されたものを、本登録として前記記憶部に記憶させ、
前記判定手段は、前記ジェスチャ入力が行なわれたか否かを判定することを特徴とする請求項に記載の端末装置。
It said storage control means, a gesture input based on a combination of said detected plurality of said user input within the predetermined time period, in association with the predetermined operation as provisional registration is stored in the storage unit, which is the temporary registration Of the gesture input, the provisionally registered one or more times is stored in the storage unit as a main registration,
The terminal device according to claim 1 , wherein the determination unit determines whether or not the gesture input is performed.
前記記憶制御手段は、前記所定期間内に検出された前記ユーザ入力のうち、該ユーザ入力の平均的な入力とは異なるユーザ入力を、仮登録として前記所定の動作と関連づけて前記記憶部に記憶させ、前記仮登録された前記ユーザ入力のうち、所定回数以上前記仮登録されたものを、本登録として前記記憶部に記憶させることを特徴とする請求項1または2に記載の端末装置。 Said storage control means, said one of the user input is detected within a predetermined time period, different user input from the average input of the user input, the predetermined operation in association with the storage in the storage unit as the temporary registration is allowed, the temporary registered among the user input, what was said temporarily registered predetermined number of times or more, the terminal device according to claim 1 or 2, characterized in Rukoto is stored in the storage unit as a registration. 前記所定の動作は前記ユーザからの指示に応じて開始され、前記指示を受け付けると、前記端末装置が前記所定の動作に対応する処理の実行の要求をサーバに送信する場合に、
前記制御手段は、前記判定手段が発生したと判定した場合に、前記サーバに実行要求を送信した処理をより高速化するための要求を前記サーバに送信するように制御することを特徴とする請求項1からのいずれか1項に記載の端末装置。
The predetermined operation is started in response to an instruction from the user, and when the instruction is received, the terminal device transmits a request to execute a process corresponding to the predetermined operation to the server.
The control means, when it is determined that the determination means has occurred, performs control so that a request for speeding up the process of transmitting an execution request to the server is transmitted to the server. Item 4. The terminal device according to any one of Items 1 to 3 .
端末装置であって、
ユーザ入力を検出する検出手段と、
前記検出手段が、前記ユーザの平均的な入力とは異なるユーザ入力を所定期間内に複数検出した場合に、該複数のユーザ入力をユーザ入力セットとして記憶部に記憶させる記憶制御手段と、
前記端末装置が所定の動作を実行している間に、前記記憶部に記憶されたいずれかのユーザ入力セットが発生したか否かを判定する判定手段と、
前記判定手段が前記いずれかのユーザ入力セットが発生したと判定したかに応じて、前記所定の動作のために前記端末装置が実行する処理を制御する制御手段と
を備え、
前記記憶制御手段は、
前記所定期間内に検出された複数のユーザ入力を仮登録として互いに関連づけて前記記憶部に記憶させ、
前記仮登録された複数のユーザ入力のうち、所定回数以上、仮登録された複数のユーザ入力を前記ユーザ入力セットの本登録として前記記憶部に記憶させ、
前記判定手段は、前記本登録されたいずれかの前記ユーザ入力セットが発生したか否かを判定する、
ことを特徴とする端末装置。
A terminal device,
Detecting means for detecting user input;
Storage control means for storing a plurality of user inputs as a user input set in a storage unit when the detection means detects a plurality of user inputs different from the average input of the user within a predetermined period;
Determination means for determining whether any user input set stored in the storage unit has occurred while the terminal device is performing a predetermined operation;
Control means for controlling processing executed by the terminal device for the predetermined operation according to whether the determination means determines that any one of the user input sets has occurred,
The storage control means
A plurality of user inputs detected within the predetermined period are associated with each other as temporary registration and stored in the storage unit,
Among the plurality of provisionally registered user inputs, a plurality of provisionally registered user inputs are stored in the storage unit as the main registration of the user input set more than a predetermined number of times,
The determination means determines whether any of the user input sets registered in the main has occurred;
A terminal device characterized by that.
前記所定期間は、前記検出手段が前記ユーザの平均的な入力とは異なるユーザ入力を最初に検出してからの経過期間であることを特徴とする請求項に記載の端末装置。 The terminal device according to claim 5 , wherein the predetermined period is an elapsed period after the detection unit first detects a user input different from an average input of the user. 前記複数のユーザ入力は、同種または異種の複数のユーザ入力を含み、
前記記憶制御手段は、前記所定期間内に検出された前記複数のユーザ入力の組み合わせに基づくジェスチャ入力を前記ユーザ入力セットとして前記記憶部に記憶させることを特徴とする請求項5または6に記載の端末装置。
The plurality of user inputs includes a plurality of user inputs of the same type or different types,
Said storage control means according to claim 5 or 6, characterized in that to store a gesture input based on a combination of the detected plurality of user input within the predetermined time period in the storage unit as the user input set Terminal device.
前記平均的な入力は、前記端末装置の周囲の環境、または、前記端末装置を利用する時帯に応じて、ユーザ入力の種別ごとに定められることを特徴とする請求項からのいずれか1項に記載の端末装置。 The average input, the surrounding environment of the terminal device or, in accordance with the band when using the terminal device, any one of claims 3, characterized in that it is defined for each type of user input 7 of The terminal device according to item 1. 前記所定の動作は前記ユーザからの指示に応じて開始され、前記指示を受け付けると、前記端末装置が前記端末装置内において前記所定の動作に対応する処理を実行する場合に、
前記制御手段は、前記判定手段が発生したと判定した場合に、前記所定の動作に対応する処理の実行の要求をサーバに送信するように制御することを特徴とする請求項1からのいずれか1項に記載の端末装置。
The predetermined operation is started in response to an instruction from the user, and when the instruction is received, the terminal device executes processing corresponding to the predetermined operation in the terminal device.
Wherein, when said determination means determines to have occurred, one of claims 1 8, characterized in that control to transmit a request for execution of the process corresponding to the predetermined operation to the server The terminal device according to claim 1.
前記処理の実行の要求のサーバへの送信は、前記サーバが提供するWeb APIの利用に基づくものであることを特徴とする請求項からのいずれか1項に記載の端末装置。 The transmission to the execution of the processing request server, the terminal device according to any one of claims 5, characterized in that is based on the use of Web API 9 that the server provides. 前記所定の動作が表示手段に表示された情報を操作する動作である場合に、
前記制御手段は、前記判定手段が発生したと判定した場合に、前記表示手段における前記情報の表示形態を変更するために、前記情報に含まれるCSSの記述を編集するように制御することを特徴とする請求項1から10のいずれか1項に記載の端末装置。
When the predetermined operation is an operation of manipulating information displayed on the display means,
The control means controls to edit a CSS description included in the information in order to change a display form of the information on the display means when it is determined that the determination means has occurred. The terminal device according to any one of claims 1 to 10 .
前記所定の動作を実行した結果に、複数の項目の表示が含まれる場合に、
前記制御手段は、前記判定手段が発生したと判定した場合に、表示する項目の数を少なくする、または、項目の品質を下げるように制御することを特徴とする請求項1から11のいずれか1項に記載の端末装置。
When the display of a plurality of items is included in the result of executing the predetermined operation,
Wherein when said determination means determines to have occurred, to reduce the number of items to be displayed, or any one of claims 1 to 11, wherein the controller controls to lower the quality of the item The terminal device according to item 1.
ユーザ入力を検出する検出手段を備える端末装置の制御方法であって、
前記端末装置における所定の動作開始したの所定期間内に検出された同種または異種の複数の前記ユーザ入力を、仮登録として前記所定の動作と関連づけて記憶部に記憶させ、前記仮登録された前記ユーザ入力のうち、所定回数以上前記仮登録されたものを、本登録として前記記憶部に記憶させる記憶制御工程と、
前記端末装置が前記所定の動作の間に、前記所定の動作と関連づけて前記本登録として前記記憶部に記憶されたいずれかのユーザ入力が発生したか否かを判定する判定工程と、
前記判定工程において前記いずれかのユーザ入力かが発生したと判定されたかに応じて、前記所定の動作のために前記端末装置が実行する処理を制御する制御工程と
を含むことを特徴とする端末装置の制御方法。
A control method for a terminal device comprising detection means for detecting user input,
The detected homologous or more of the user input disparate within a predetermined time period after the start of the predetermined operation in the terminal device, wherein the predetermined operation with associated and stored in the storage unit as the temporary registration is the temporary registration wherein among the user input, those which are more than a predetermined number of times the temporary registration, a storage control step of Ru is stored in the storage unit as the registration has,
A determination step of determining whether any user input stored in the storage unit as the main registration has occurred in association with the predetermined operation during the predetermined operation of the terminal device;
And a control step of controlling processing executed by the terminal device for the predetermined operation according to whether it is determined that any one of the user inputs has occurred in the determination step. Control method of the device.
ユーザ入力を検出する検出手段を備える端末装置の制御方法であって、
前記検出手段が前記ユーザの平均的な入力とは異なるユーザ入力を所定期間内に複数検出した場合に、該複数のユーザ入力をユーザ入力セットとして記憶部に記憶させる記憶制御工程と、
前記端末装置が所定の動作を実行している間に、前記記憶部に記憶されたいずれかのユーザ入力セットが発生したか否かを判定する判定工程と、
前記判定工程において前記いずれかのユーザ入力セットが発生したと判定されたかに応じて、前記所定の動作のために前記端末装置が実行する処理を制御する制御工程と
を含み、
前記記憶制御工程では、
前記所定期間内に検出された複数のユーザ入力を仮登録として互いに関連づけて前記記憶部に記憶させ、
前記仮登録された複数のユーザ入力のうち、所定回数以上、仮登録された複数のユーザ入力を前記ユーザ入力セットの本登録として前記記憶部に記憶させ、
前記判定工程では、前記本登録されたいずれかの前記ユーザ入力セットが発生したか否かを判定する、
ことを特徴とする端末装置の制御方法。
A control method for a terminal device comprising detection means for detecting user input,
A storage control step of storing the plurality of user inputs in a storage unit as a user input set when the detection unit detects a plurality of user inputs different from the average input of the user within a predetermined period;
A determination step of determining whether any user input set stored in the storage unit has occurred while the terminal device is performing a predetermined operation;
A control step of controlling processing executed by the terminal device for the predetermined operation according to whether it is determined that any one of the user input sets has occurred in the determination step, and
In the storage control step,
A plurality of user inputs detected within the predetermined period are associated with each other as temporary registration and stored in the storage unit,
Among the plurality of provisionally registered user inputs, a plurality of provisionally registered user inputs are stored in the storage unit as the main registration of the user input set more than a predetermined number of times,
In the determination step, it is determined whether any of the registered user input set has occurred,
A control method for a terminal device.
コンピュータを、請求項1から12のいずれか1項に記載の端末装置の各手段として機能させるためのコンピュータプログラム。 The computer program for functioning a computer as each means of the terminal device of any one of Claim 1 to 12 .
JP2017014459A 2017-01-30 2017-01-30 TERMINAL DEVICE, TERMINAL DEVICE CONTROL METHOD, AND COMPUTER PROGRAM Active JP6408045B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017014459A JP6408045B2 (en) 2017-01-30 2017-01-30 TERMINAL DEVICE, TERMINAL DEVICE CONTROL METHOD, AND COMPUTER PROGRAM

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017014459A JP6408045B2 (en) 2017-01-30 2017-01-30 TERMINAL DEVICE, TERMINAL DEVICE CONTROL METHOD, AND COMPUTER PROGRAM

Publications (2)

Publication Number Publication Date
JP2018124648A JP2018124648A (en) 2018-08-09
JP6408045B2 true JP6408045B2 (en) 2018-10-17

Family

ID=63111503

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017014459A Active JP6408045B2 (en) 2017-01-30 2017-01-30 TERMINAL DEVICE, TERMINAL DEVICE CONTROL METHOD, AND COMPUTER PROGRAM

Country Status (1)

Country Link
JP (1) JP6408045B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6948299B2 (en) * 2018-09-21 2021-10-13 株式会社日立製作所 Data registration device and data registration method

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5884244A (en) * 1997-10-21 1999-03-16 Hewlett-Packard Company Method for measuring quality of service in a computer system
JP2006279796A (en) * 2005-03-30 2006-10-12 Yamaha Corp Cellphone, holder therefor, program therefor, and semiconductor device
JP2008033965A (en) * 2007-10-09 2008-02-14 Sony Corp Electronic device, input device and input method
WO2012094021A1 (en) * 2011-01-07 2012-07-12 Empire Technology Development Llc Quantifying frustration via a user interface
JP2012146219A (en) * 2011-01-13 2012-08-02 Nikon Corp Electronic apparatus and control program therefor
US10049327B2 (en) * 2014-12-12 2018-08-14 Qualcomm Incorporated Application characterization for machine learning on heterogeneous core devices

Also Published As

Publication number Publication date
JP2018124648A (en) 2018-08-09

Similar Documents

Publication Publication Date Title
US11582517B2 (en) Setup procedures for an electronic device
KR102355966B1 (en) Far-field extension for digital assistant services
US10120556B2 (en) Slide to apply
US20190138147A1 (en) Systems and methods for identifying users of devices and customizing devices to users
CN108292304B (en) Cross-application digital ink library
WO2020134744A1 (en) Icon moving method and mobile terminal
US10831440B2 (en) Coordinating input on multiple local devices
US9363417B2 (en) Information processing system, input/output device, and authentication method
JP2012038210A (en) Information processing unit, information processing method, computer program, and content display system
EP3685254B1 (en) Electronic apparatus and operating method of the same
JP5271703B2 (en) Context sensitive data processing methods
KR20150068002A (en) Mobile terminal, devtce and control method thereof
TW201502896A (en) Electronic device and touch control method thereof
US9128608B2 (en) System and method for an electronic reader that allows access to additional content and tools
JP6408045B2 (en) TERMINAL DEVICE, TERMINAL DEVICE CONTROL METHOD, AND COMPUTER PROGRAM
KR102203131B1 (en) Method for management file and electronic device thereof
CN110554880B (en) Setup program for electronic device
JP7214963B2 (en) Information processing device and program
US9979492B2 (en) Method of sharing and receiving information based on sound signal and apparatus using the same
JP6673436B1 (en) Processing device, processing system, processing method and program
US20140289741A1 (en) Cooperation method, image processing device, and medium
WO2024004010A1 (en) Connection control device, connection control method, and non-transitory computer-readable medium
US20170092334A1 (en) Electronic device and method for visualizing audio data
US20160034174A1 (en) System and method for single-touch engagement with social media and other sites
CN110235126A (en) Pen input is captured by sensing type shell

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180604

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180919

R150 Certificate of patent or registration of utility model

Ref document number: 6408045

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250